在学习《线性规划与目标规划》的过程中,课程的主讲老师郭韧给出了对于基概念的定义如下图
图片来源:运筹学(中国大学mooc网)
由此我产生了几个疑惑:1.如何理解B是线性规划问题的一个基?2.为什么说最多有
C
n
m
C_n^m
Cnm个基呢?
1. 如 何 理 解 B 是 线 性 规 划 问 题 的 一 个 基 ? 1.如何理解B是线性规划问题的一个基? 1.如何理解B是线性规划问题的一个基?
在回答第一个问题前,首先需要理解,什么是非奇异子矩阵?为什么B要是非奇异子矩阵?
奇异矩阵与非奇异矩阵
奇异矩阵的判定方法:
行列式|A|是否等于0,若等于0,称矩阵A为奇异矩阵;
非奇异矩阵的判定方法:
一个矩阵非奇异当且仅当它的行列式不为零。
一个矩阵非奇异当且仅当它代表的线性变换是个自同构。
一个矩阵非奇异当且仅当它的秩为n。 (R(A)<n则行列式为0)
可逆矩阵就是非奇异矩阵,非奇异矩阵也是可逆矩阵。
这篇博文的内容对“什么是非奇异子矩阵”的描述比较易于理解。
也就是说,其实非奇异子矩阵是为了保证|B |不等于0。|B|不等于0才可以让基解可求,因为根据克拉默法则,求基解的公式为
x
i
=
∣
B
i
∣
/
∣
B
∣
x_i=|B_i |/|B|
xi=∣Bi∣/∣B∣如果|B|等于0,则无解,所以|B|等于0的时候不是基解,为什么B要是非奇异子矩阵的问题也迎刃而解了。
图片来源:https://www.icourse163.org/course/HQU-1205834834?from=study
明确了上述内容后,“B是线性规划问题的一个基”就更好理解了,说白了就是从n列中选m列组合成一个矩阵,满足条件“行列式不等于0”,那这样一个矩阵就是行列式的一个基(也就是说线性规划问题中的基是可以有很多个的)。
在理解了基和基解以后,我们自然而然也可以延伸解决另一个问题可行解和基解有什么区别?
我们知道,所谓基解,就是对应基向量的非基变量为零,基变量不为零;而可行解是满足约束条件的解。所以,基解不一定为可行解,可行解也不一定为基解。既是可行解又是基解的解是基本可行解,最优解是基本可行解中使目标函数达到最优的解。
2. 为 什 么 说 最 多 有 C n m 个 基 呢 ? 2.为什么说最多有C_n^m个基呢? 2.为什么说最多有Cnm个基呢?
明白了第一个问题以后,第二个问题也很好理解了,我们已经知道了,“B是线性规划问题的一个基”说白了就是从n列中选m列组合成一个矩阵,满足条件“行列式不等于0”,那这样一个矩阵就是行列式的一个基。那最多有多少个基其实就是一个简单的组合问题,总共有
C
n
m
C_n^m
Cnm种组合情况,其中可能有几个基是不满足条件的,所以说最多有这么多。
文末附上郭韧老师关于基变量和非基变量的解读PPT
以上是我在学习线性规划问题中对于“基”概念的理解,如果表述有误,欢迎批评指正。