1. 方程组的解个数 :
2. 单纯形法引入 : 在线性规划中 , 约束方程个数 , 一般情况下会小于变量个数 , 因此会有多个解 , 单纯形法就是针对这种情况求解的方法 , 可以得到符合要求的线性规划的最优解 ;
单纯形法原理 :
单纯形法 执行方案 :
线性规划标准形式 : 使用单纯形法 求解 线性规划问题 , 这里要求线性规划数学模型必须是标准形式 , 有如下要求 :
线性规划标准形式转换方式 : 【运筹学】线性规划数学模型标准形式 ( 标准形式 | 目标函数转化 | 决策变量转化 | 约束方程转化 | 固定转化顺序 | 标准形式转化实例 ) , 参考上一篇博客内容 ;
线性规划标准形式公式 : n n n 个变量 , m m m 个约束方程 , n > m n > m n>m 变量数大于方程数 , 解有多个 ;
m a x Z = ∑ j = 1 n c j x j s . t { ∑ j = 1 n a i j x j = b i i = 1 , 2 , ⋯ , m x j ≥ 0 j = 1 , 2 , ⋯ , n b i ≥ 0 i = 1 , 2 , ⋯ , m \begin{array}{lcl}max Z = \sum_{j = 1}^{n} c_j x_j \\ \\ s.t \begin{cases} \sum_{j = 1}^{n} a_{ij} x_j = b_i & i = 1,2,\cdots,m \\ \\ x_j \geq 0 & j= 1, 2,\cdots,n \\ \\ b_i \geq 0 & i= 1, 2,\cdots,m \end{cases}\end{array} maxZ=∑j=1ncjxjs.t⎩⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎧∑j=1naijxj=bixj≥0bi≥0i=1,2,⋯,mj=1,2,⋯,ni=1,2,⋯,m
线性规划标准形式 展开式 : n n n 个变量 , m m m 个约束方程 , n > m n > m n>m 变量数大于方程数 , 解有多个 ;
m a x Z = c 1 x 1 + c 2 x 2 + ⋯ + c n x n s . t { a 11 x 1 + a 12 x 2 + ⋯ + a 1 n x n = b 1 a 21 x 1 + a 22 x 2 + ⋯ + a 2 n x n = b 2 ⋯ ⋯ ⋯ a m 1 x 1 + a m 2 x 2 + ⋯ + a m n x n = b m x 1 , x 2 , ⋯ , x n ≥ 0 b 1 , b 2 , ⋯ , b n ≥ 0 \begin{array}{lcl}max Z = c_1 x_1 + c_2 x_2 + \cdots + c_n x_n \\ \\ s.t \begin{cases} a_{11} x_1 + a_{12} x_2 + \cdots + a_{1n}x_n = b_1 \\ \\ a_{21} x_1 + a_{22} x_2 + \cdots + a_{2n}x_n = b_2 \\ \\ \cdots\cdots\cdots \\ \\ a_{m1} x_1 + a_{m2} x_2 + \cdots + a_{mn}x_n = b_m \\ \\ x_1, x_2 , \cdots , x_n \geq 0 \\ \\ b_1 , b_2 , \cdots , b_n \geq 0 \end{cases}\end{array} maxZ=c1x1+c2x2+⋯+cnxns.t⎩⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎧a11x1+a12x2+⋯+a1nxn=b1a21x1+a22x2+⋯+a2nxn=b2⋯⋯⋯am1x1+am2x2+⋯+amnxn=bmx1,x2,⋯,xn≥0b1,b2,⋯,bn≥0
1. 线性规划标准形式 矩阵形式 : n n n 个变量 , m m m 个约束方程 , n > m n > m n>m 变量数大于方程数 , 解有多个 ;
m a x Z = C X A X = b , X ≥ 0 \begin{array}{lcl} maxZ = CX \\\\ AX = b , X \geq 0 \end{array} maxZ=CXAX=b,X≥0
2. 矩阵 C C C : 该矩阵是行向量 , 代表了目标函数中的系数 ;
C = [ c 1 , c 2 , ⋯ , c m ] C = \begin{bmatrix} &c_1 , &c_2 , & \cdots , & c_m & \end{bmatrix} C=[c1,c2,⋯,cm]*
3. 矩阵 X X X : 该矩阵是列向量 , 表示目标函数中的变量 ;
X = [ x 1 x 2 ⋮ x m ] X=\begin{bmatrix}\\\\ x_1\\\\ x_2\\\\ \vdots\\\\ x_m\\\\ \end{bmatrix} X=⎣⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎡x1x2⋮xm⎦⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎤
4. 矩阵 b b b : 该矩阵是列向量 , 表示约束方程的右侧常数 ;
b = [ b 1 b 2 ⋮ b m ] b=\begin{bmatrix}\\\\ b_1\\\\ b_2\\\\ \vdots\\\\ b_m\\\\ \end{bmatrix} b=⎣⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎡b1b2⋮bm⎦⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎤
5. 矩阵 A A A : 该矩阵是 m × n m \times n m×n 矩阵 , 有 m m m 行 n n n 列 , m m m 表示约束方程个数 , n n n 表示变量个数 ; ( n > m n > m n>m )
m m m 同时也是 矩阵 A A A 的秩 ; 该矩阵是 m m m 个 约束方程的每个变量前的 系数 矩阵 ;
A = [ a 11 a 12 ⋯ a 1 n a 21 a 22 ⋯ a 2 n ⋮ ⋮ ⋱ ⋮ a m 1 a m 2 ⋯ a m n ] A=\begin{bmatrix}\\\\ & a_{11} & a_{12} & \cdots & a_{1n} &\\\\ & a_{21} & a_{22} & \cdots & a_{2n} &\\\\ & \vdots & \vdots & \ddots & \vdots &\\\\ & a_{m1} & a_{m2} & \cdots & a_{mn} &\\\\ \end{bmatrix} A=⎣⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎡a11a21⋮am1a12a22⋮am2⋯⋯⋱⋯a1na2n⋮amn⎦⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎤
1. 向量概念 : 向量是特殊的矩阵 , m m m 行 1 1 1 列的矩阵 , 就是向量 ;
2. 线性规划 向量形式 : 其中 矩阵 C C C , 矩阵 X X X , 矩阵 b b b 与上面的矩阵形式内容一致 , 本公式之比上个公式多了一个 向量 P j P_j Pj ;
m a x Z = C X s . t { ∑ j = 1 n P j x j = b X ≥ 0 \begin{array}{lcl}max Z = CX \\ \\ s.t \begin{cases} \sum_{j = 1}^{n} P_j x_j = b \\ \\ X \geq 0 \end{cases}\end{array} maxZ=CXs.t⎩⎪⎨⎪⎧∑j=1nPjxj=bX≥0
3. 向量 P j P_j Pj 表示 : 该向量是 m m m 行 1 1 1 列的矩阵 , 表示 约束方程 A A A 中的第 j j j 行的列向量 , 其中 j = 1 , 2 , ⋯ , n j = 1 , 2, \cdots , n j=1,2,⋯,n ;
P j = [ a 1 j a 2 j ⋮ a m j ] P_j=\begin{bmatrix}\\\\ a_{1j}\\\\ a_{2j}\\\\ \vdots\\\\ a_{mj}\\\\ \end{bmatrix} Pj=⎣⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎡a1ja2j⋮amj⎦⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎤
4. 矩阵 A A A 与 向量 P j P_j Pj 关系 :
A = [ a 11 a 12 ⋯ a 1 n a 21 a 22 ⋯ a 2 n ⋮ ⋮ ⋱ ⋮ a m 1 a m 2 ⋯ a m n ] = [ P 1 P 2 ⋯ P n ] A = \begin{bmatrix}\\\\ & a_{11} & a_{12} & \cdots & a_{1n} &\\\\ & a_{21} & a_{22} & \cdots & a_{2n} &\\\\ & \vdots & \vdots & \ddots & \vdots &\\\\ & a_{m1} & a_{m2} & \cdots & a_{mn} &\\\\ \end{bmatrix} = \begin{bmatrix} & P_1 & P_2 & \cdots & P_n & \end{bmatrix} A=⎣⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎡a11a21⋮am1a12a22⋮am2⋯⋯⋱⋯a1na2n⋮amn⎦⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎤=[P1P2⋯Pn]
5. 系数替换方案 : 在线性规划 普通公式中 , 约束方程系数 a i j a_{ij} aij 可以使用 P j P_j Pj 进行替换 ;
∑ j = 1 n a i j x j = b i i = 1 , 2 , ⋯ , m j = 1 , 2 , ⋯ , n \sum_{j = 1}^{n} a_{ij} x_j = b_i \\\\ i = 1,2,\cdots,m \\\\ j= 1, 2,\cdots,n j=1∑naijxj=bii=1,2,⋯,mj=1,2,⋯,n
向量 P j P_j Pj 代替其中的 a i j a_{ij} aij , 替换完毕后为 :
∑ j = 1 n P j x j = b i j = 1 , 2 , ⋯ , n \sum_{j = 1}^{n} P_j x_j = b_i \\\\ j= 1, 2,\cdots,n j=1∑nPjxj=bij=1,2,⋯,n