Linear Programming问题的数学模型:
使用简单的符号变换,引入松弛变量,将约束变为等式形式,LP问题的标准形式可写作:
max
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
)
\begin{aligned} \max \ & z=\sum_{j=1}^n c_j x_j \\ \text { s.t. } & \left\{\begin{array}{l} \sum_{j=1}^n a_{i j} x_j=b_i, \quad(i=1,2, \ldots, m) \\ x_j \geq 0, \quad(j=1,2, \ldots, n) \end{array}\right. \end{aligned}
max s.t. z=j=1∑ncjxj{∑j=1naijxj=bi,(i=1,2,…,m)xj≥0,(j=1,2,…,n)
或
max
z
=
c
T
x
s.t.
{
A
x
=
b
x
≥
0
\begin{aligned} \max \ & z=\mathbf{c}^T \mathbf{x} \\ \text { s.t. } & \left\{\begin{array}{l} \mathbf{A x}=\mathbf{b} \\ \mathbf{x} \geq 0 \end{array}\right. \end{aligned}
max s.t. z=cTx{Ax=bx≥0
LP问题相应术语:
-
超平面 (hyperplane):
约束方程任一等式约東: a i x = b i \mathbf{a}_i \mathbf{x}=b_i aix=bi, 称 H i = { x ∣ a i x = b i } \mathscr{H}_i=\left\{\mathbf{x} \mid \mathbf{a}_i \mathbf{x}=b_i\right\} Hi={x∣aix=bi} 为超平面 (hyperplane), 其中 a \mathbf{a} a为决定平面的法线.
超平面 H i \mathscr{H}_i Hi 将空间 R n \mathbb{R}^n Rn 分成三个部分: ( a i x = b i ) \left(\mathbf{a}_i \mathbf{x}=b_i\right) (aix=bi)
H i U (开): a i x > b i 上半空间 (Upper halfspace) H i : a i x = b i 超平面 (hyperplane) H i L ( 开): a i x < b i 下半空间 (Lower halfspace) \begin{array}{rll} \mathscr{H}_i^U \text { (开): } & \mathbf{a}_i \mathbf{x}>b_i & \text { 上半空间 (Upper halfspace) } \\ \mathscr{H}_i: & \mathbf{a}_i \mathbf{x}=b_i & \text { 超平面 (hyperplane) } \\ \mathscr{H}_i^L(\text { 开): } & \mathbf{a}_i \mathbf{x}<b_i & \text { 下半空间 (Lower halfspace) } \end{array} HiU (开): Hi:HiL( 开): aix>biaix=biaix<bi 上半空间 (Upper halfspace) 超平面 (hyperplane) 下半空间 (Lower halfspace) -
LP问题解的可能情况:
唯一解;无穷多解;无界解;无解 -
LP问题一些解的概念:
可行解:标准形式的线性规划问题中, 凡满足所有约束条件的解 x \mathbf{x} x 称为问题的可行解,将这些可行解构成的集合称为可行解集或可行域.
基:约束方程的矩阵形式中, 等式约束所对应的系数矩阵 A \mathbf{A} A 中线性独立的列向量称为基.
[ 1 0 1 0 1 1 0 0 0 ] [ x 1 x 2 x 3 ] = [ b 1 b 2 b 3 ] \left[\begin{array}{lll} 1 & 0 & 1 \\ 0 & 1 & 1 \\ 0 & 0 & 0 \end{array}\right]\left[\begin{array}{l} x_1 \\ x_2 \\ x_3 \end{array}\right]=\left[\begin{array}{l} b_1 \\ b_2 \\ b_3 \end{array}\right] 100010110 x1x2x3 = b1b2b3
此时前两列可以被视作基;
基变量:约束方程的矩阵形式中,系数矩阵的列向量与变量一一对应. 当取定基以后, 与基对应的决策变量称为基变量, 其它的决策变量称为非基变量.
对上式而言, x 1 x_1 x1与 x 2 x_2 x2为基变量, x 3 x_3 x3为非基变量;
基解:令非基变量全部取零,由等式约束解出的基变量的唯一解, 称为基解.
基可行解:满足非负约束的基解称为基可行解.
可行基:对应基可行解的基称为可行基.
上述概念的包含关系如下:
-
上述概念In Depth:
设矩阵 A \boldsymbol{A} A 的秩为 m m m, 又假设 A = [ B , N ] \boldsymbol{A}=[\boldsymbol{B}, \boldsymbol{N}] A=[B,N], 其中 B \boldsymbol{B} B 是 m m m 阶可逆矩阵. 如果 A \boldsymbol{A} A 的前 m m m 列是线性相关的, 可以通过列调换, 使前 m m m 列成为线性无关的, 因此关于 B \boldsymbol{B} B 可逆的假设不失一般性. 同时记作
x = [ x B x N ] x=\left[\begin{array}{l} x_B \\ x_N \end{array}\right] x=[xBxN]
故等式约束可进一步写为:
[ B , N ] [ x B x N ] = b , B x B + N x N = b , x B = B − 1 b − B − 1 N x N . \begin{aligned} & [\boldsymbol{B}, \boldsymbol{N}]\left[\begin{array}{l} x_B \\ x_N \end{array}\right]=b, \\ &\boldsymbol{ B} x_B+\boldsymbol{N} x_N=b , \\ &\boldsymbol{x}_{\boldsymbol{B}}=\boldsymbol{B}^{-1} {b}-\boldsymbol{B}^{-1} \boldsymbol{N} {x}_{N}. \end{aligned} [B,N][xBxN]=b,BxB+NxN=b,xB=B−1b−B−1NxN.
进一步地,令 x N = 0 x_N = \bf{0} xN=0,得到的
x = [ x B x N ] = [ B − 1 b 0 ] \boldsymbol{x}=\left[\begin{array}{l} x_B \\ x_N \end{array}\right]=\left[\begin{array}{c} B^{-1} b \\ 0 \end{array}\right] x=[xBxN]=[B−1b0]
即称为基解, B \boldsymbol{B} B 称为基矩阵,简称为基. x B x_B xB 的各分量称为基变量( x B x_B xB可逆),基变量的全体 x B 1 , x B 2 , ⋯ , x B m x_{B_1}, x_{B_2}, \cdots, x_{B_m} xB1,xB2,⋯,xBm 称为一组基。 x N x_{N} xN 的各分量称为非基变量.
更进一步地,若 B − 1 b ⩾ 0 \boldsymbol{B}^{-1} b \geqslant 0 B−1b⩾0,则为基可行解, B \boldsymbol{B} B 为可行基矩阵, x B 1 , x B 2 , ⋯ , x B m x_{B_1}, x_{B_2}, \cdots, x_{B_m} xB1,xB2,⋯,xBm 为一组可行基。 -
一般地, 当 A \boldsymbol{A} A 是 m × n m \times n m×n 矩阵, A \boldsymbol{A} A 的秩为 m m m 时, 基本可行解的个数不会超过
( n m ) = n ! m ! ( n − m ) ! . \binom{n}{m}=\frac{n!}{m!(n-m)!} . (mn)=m!(n−m)!n!.
LP问题的性质:
极点: x ∈ D \mathbf{x} \in \mathscr{D} x∈D 且 x = [ x B T , x N T ] T \mathbf{x}=\left[\mathbf{x}_B^T, \mathbf{x}_N^T\right]^T x=[xBT,xNT]T,其中 x B \mathbf{x}_B xB 为基可行解, x N = 0 \mathbf{x}_N=\mathbf{0} xN=0
- 定理:令 K = { x ∣ A x = b , x ⩾ 0 } , A K=\{\boldsymbol{x} \mid \boldsymbol{A} \boldsymbol{x}=\boldsymbol{b}, \boldsymbol{x} \geqslant 0\}, \boldsymbol{A} K={x∣Ax=b,x⩾0},A是 m × n m \times n m×n 矩阵, A \boldsymbol{A} A 的秩为 m m m, 则 K K K 的极点集与 A x = b , x ⩾ 0 A x=b, x \geqslant 0 Ax=b,x⩾0 的基本可行解集等价.
单纯形法理论基础:
- 线性规划问题的可行域是凸集.
- 线性规划问题的基可行解是可行域 (凸集) 的顶点.
- 线性规划问题若存在最优解, 则一定存在一个基可行解是最优解.
- 故总体思路为:通过迭代求解:从初始的某个基可行解开始,依次寻找更优(使目标函数值增加)的基可行解, 直至最优.
单纯形法:
因为线性规划问题若存在最优解, 则一定存在一个基可行解是最优解。根据前述基变量/非基变量的想法,将原问题进一步写为:
c
=
[
c
B
c
N
]
,
x
=
[
x
B
x
N
]
,
A
=
[
A
B
A
N
]
\mathbf{c}=\left[\begin{array}{c} \mathbf{c}_B \\ \mathbf{c}_N \end{array}\right], \quad \mathbf{x}=\left[\begin{array}{c} \mathbf{x}_B \\ \mathbf{x}_N \end{array}\right], \quad \mathbf{A}=\left[\begin{array}{ll} \mathbf{A}_B & \mathbf{A}_N \end{array}\right]
c=[cBcN],x=[xBxN],A=[ABAN]
max
z
=
c
T
x
=
c
B
T
x
B
+
c
N
T
x
N
s.t.
{
A
B
x
B
+
A
N
x
N
=
b
x
B
≥
0
,
x
N
≥
0
\begin{aligned} \max \ & z=\mathbf{c}^T \mathbf{x}=\mathbf{c}_B^T \mathbf{x}_B+\mathbf{c}_N^T \mathbf{x}_N \\ \text { s.t. } & \left\{\begin{array}{l} \mathbf{A}_B \mathbf{x}_B+\mathbf{A}_N \mathbf{x}_N=\mathbf{b} \\ \mathbf{x}_B \geq \mathbf{0}, \quad \mathbf{x}_N \geq \mathbf{0} \end{array}\right. \end{aligned}
max s.t. z=cTx=cBTxB+cNTxN{ABxB+ANxN=bxB≥0,xN≥0
此处仍假设
A
\mathbf{A}
A的秩为
m
m
m
寻找初始基可行解:
若系数矩阵
A
\mathbf{A}
A 中存在
m
m
m 个列向量, 恰好构成单位矩阵, 即存在
p
i
1
,
p
i
2
,
…
,
p
i
m
\mathbf{p}_{i_1}, \mathbf{p}_{i_2}, \ldots, \mathbf{p}_{i_m}
pi1,pi2,…,pim 构成的矩阵为:
[
p
i
1
p
i
2
⋯
p
i
m
]
=
[
1
0
⋯
0
0
1
⋱
⋮
⋮
⋱
⋱
0
0
⋯
0
1
]
\left[\begin{array}{llll} \mathbf{p}_{i_1} & \mathbf{p}_{i_2} & \cdots & \mathbf{p}_{i_m} \end{array}\right]=\left[\begin{array}{cccc} 1 & 0 & \cdots & 0 \\ 0 & 1 & \ddots & \vdots \\ \vdots & \ddots & \ddots & 0 \\ 0 & \cdots & 0 & 1 \end{array}\right]
[pi1pi2⋯pim]=
10⋮001⋱⋯⋯⋱⋱00⋮01
将这些向量作为基向量, 相应的决策变量 x i 1 , x i 2 , … , x i m x_{i_1}, x_{i_2}, \ldots, x_{i_m} xi1,xi2,…,xim 为基变量, 其它为非基变量, 则 x B = 0 , x N = 0 \mathbf{x}_B=\mathbf{0}, \mathbf{x}_N=\mathbf{0} xB=0,xN=0 就是一个基可行解.
进一步地,两阶段法与大M法提供了求初始基本可行解方法:
两阶段法
当矩阵
A
\mathbf{A}
A不包含
m
m
m阶单位矩阵,为使约束方程的系数矩阵中含有
m
m
m阶单位矩阵,把每个方程增加一个非负变量,令
A
x
+
x
a
=
b
,
x
⩾
0
,
x
a
⩾
0
,
\begin{aligned} & \boldsymbol{A} \boldsymbol{x}+\boldsymbol{x}_a=\boldsymbol{b}, \\ & \boldsymbol{x} \geqslant \mathbf{0}, \quad \boldsymbol{x}_a \geqslant \mathbf{0}, \end{aligned}
Ax+xa=b,x⩾0,xa⩾0,即
[
A
,
I
m
]
[
x
x
a
]
=
b
,
x
⩾
0
,
x
a
⩾
0.
\begin{aligned} & \left[\boldsymbol{A}, \mathbf{I}_m\right]\left[\begin{array}{l} \boldsymbol{x} \\ \boldsymbol{x}_a \end{array}\right]=\boldsymbol{b}, \\ & \boldsymbol{x} \geqslant \mathbf{0}, \quad \boldsymbol{x}_a \geqslant \mathbf{0} . \end{aligned}
[A,Im][xxa]=b,x⩾0,xa⩾0.
[
A
,
I
m
]
∈
R
m
∗
(
m
+
n
)
\left[\boldsymbol{A}, \mathbf{I}_m\right]\in\mathcal{R}^{m*(m+n)}
[A,Im]∈Rm∗(m+n).
显然,
[
x
x
a
]
=
[
0
b
]
\left[\begin{array}{l} \boldsymbol{x} \\ x_a \end{array}\right]=\left[\begin{array}{l} 0 \\ b \end{array}\right]
[xxa]=[0b]是基本可行解。
但要注意此时原约束
A
x
=
b
Ax=b
Ax=b已不满足, 思路为从上面的基本可行解出发,能够求出一个使
x
a
=
0
\boldsymbol{x}_a=0
xa=0 的基本可行解, 那么就可得到原问题的一个基本可行解:这个问题可以被表述为(第一阶段问题):
min
e
T
x
a
s. t.
A
x
+
x
a
=
b
,
x
⩾
0
,
x
a
⩾
0.
\begin{array}{ll} \min & \boldsymbol{e}^{\mathrm{T}} \boldsymbol{x}_a \\ \text { s. t. } & \boldsymbol{A} \boldsymbol{x}+\boldsymbol{x}_a=\boldsymbol{b}, \\ & \boldsymbol{x} \geqslant \mathbf{0}, \quad \boldsymbol{x}_a \geqslant \mathbf{0} . \end{array}
min s. t. eTxaAx+xa=b,x⩾0,xa⩾0. 其中
e
=
(
1
,
1
,
⋯
,
1
)
T
e=(1,1, \cdots, 1)^{\mathrm{T}}
e=(1,1,⋯,1)T,由于
x
=
0
,
x
a
=
b
\boldsymbol{x}=\mathbf{0}, \boldsymbol{x}_{\boldsymbol{a}}=\boldsymbol{b}
x=0,xa=b 是上述问题一个基本可行解, 目标函数值在可行域上有下界,则其必存在最优基本可行解. 所取得最优基本可行解
(
x
‾
T
,
x
‾
a
T
)
T
\left(\overline{\boldsymbol{x}}^{\mathrm{T}}, \overline{\boldsymbol{x}}_a^{\mathrm{T}}\right)^{\mathrm{T}}
(xT,xaT)T存在如下情形:
(1)
x
‾
a
≠
0
\overline{\boldsymbol{x}}_{\boldsymbol{a}} \neq \mathbf{0}
xa=0. 这时原问题无可行解. 因为如果其存在可行解
x
^
\hat{\boldsymbol{x}}
x^, 则
[
x
x
a
]
=
[
x
^
0
]
\left[\begin{array}{l} \boldsymbol{x} \\ x_a \end{array}\right]=\left[\begin{array}{l} \hat{x} \\ 0 \end{array}\right]
[xxa]=[x^0]是线性规划 (3.2.4) 的可行解. 在此点的目标函数值
f
=
0
⋅
x
^
+
e
T
⋅
0
=
0
<
e
⊤
x
‾
a
,
f=\mathbf{0} \cdot \hat{\boldsymbol{x}}+\boldsymbol{e}^{\mathrm{T}} \cdot \mathbf{0}=0<\boldsymbol{e}^{\top} \overline{\boldsymbol{x}}_a,
f=0⋅x^+eT⋅0=0<e⊤xa,而
e
T
x
ˉ
a
\boldsymbol{e}^{\mathrm{T}} \bar{x}_a
eTxˉa 是目标函数的最优值,矛盾.
(2)
x
‾
a
=
0
\overline{\boldsymbol{x}}_a=\mathbf{0}
xa=0 且
x
a
\boldsymbol{x}_a
xa 的分量都是非基变量. 这时,
m
m
m 个基变量都是原来的变量, 则
[
x
x
a
]
=
[
x
ˉ
0
]
\left[\begin{array}{l} x \\ x_a \end{array}\right]=\left[\begin{array}{l} \bar{x} \\ 0 \end{array}\right]
[xxa]=[xˉ0]
是第一阶段的基本可行解,因此
x
=
x
‾
\boldsymbol{x}=\overline{\boldsymbol{x}}
x=x 是原问题一个基本可行解.
(3)
x
ˉ
a
=
0
\bar{x}_a=0
xˉa=0 且
x
a
\boldsymbol{x}_{a}
xa 的某些分量是基变量. 这时, 可用主元消去法,把原来变量中的某些非基变量引进基,替换出基变量中的人工变量,再开始两阶段法的第二阶段. 应指出, 为替换出人工变量而采用的主元消去,在主元的选择上,并不要求遵守单纯形法确定离进基变量的规则,这个问题在后面的例题中还要说明.
两阶段法的第二阶段, 就是从得到的基本可行解出发, 用单纯形方法求原问题的最优解.
大M法
在约束中增加人工变量 x a x_a xa, 同时修改目标函数, 加上罚项 − M e T x a -M e^{\mathrm{T}} x_a −MeTxa, 其中 M M M 是很大的正数, 这样, 在极小化目标函数的过程中, 由于大 M M M 的存在, 将迫使人工变量离基.
寻找改进的基可行解:
当前基可行解为:
x
B
=
A
B
−
1
b
,
x
N
=
0
{\mathbf{x}}_B=\mathbf{A}_B^{-1} \mathbf{b}, {\mathbf{x}}_N=\mathbf{0}
xB=AB−1b,xN=0
相应的目标函数值:
z
ˉ
=
c
T
x
=
c
B
T
x
B
+
c
N
T
x
N
=
c
B
T
A
B
−
1
b
\bar{z}=\mathbf{c}^T {\mathbf{x}}=\mathbf{c}_B^T {\mathbf{x}}_B+\mathbf{c}_N^T {\mathbf{x}}_N=\mathbf{c}_B^T \mathbf{A}_B^{-1} \mathbf{b}
zˉ=cTx=cBTxB+cNTxN=cBTAB−1b
同时
A
B
x
B
+
A
N
x
N
=
b
x
B
=
A
B
−
1
[
b
−
A
N
x
N
]
\begin{aligned} &A_B x_B+A_N x_N =b \\ & x_B =A_B^{-1}\left[b-A_N x_N\right] \end{aligned}
ABxB+ANxN=bxB=AB−1[b−ANxN]为了使当前值进一步变大(max z),可以通过扰动当前的基可行解, 任取
j
∈
N
j \in \mathscr{N}
j∈N, 让非基变量
x
j
x_j
xj 从 0 变成大于零, 则原基变量的解变化为
x
B
′
\mathbf{x}_B^{\prime}
xB′, 扰动后还必须是可行解, 即:
z
′
=
c
B
⊤
x
B
+
c
N
⊤
x
N
=
c
B
⊤
A
B
−
1
[
b
−
A
N
x
N
]
+
c
N
⊤
x
N
=
c
B
⊤
A
B
−
1
b
⏟
z
ˉ
+
[
c
N
⊤
−
c
B
⊤
A
B
−
1
A
N
]
x
N
=
z
ˉ
+
∑
j
[
c
j
−
c
B
⊤
A
B
−
1
p
j
]
x
j
\begin{aligned} z^{\prime} & =c_B^{\top} x_B+c_N^{\top} x_N \\ & =c_B^{\top} A_B^{-1}\left[b-A_N x_N\right]+c_N^{\top} x_N \\ & =\underbrace{c_B^{\top} A_B^{-1} b}_{\bar{z}}+\left[c_N^{\top}-c_B^{\top} A_B^{-1} A_N\right] x_N \\ & =\bar{z}+\sum_j\left[c_j-c_B^{\top} A_B^{-1} {p}_j\right] x_j \end{aligned}
z′=cB⊤xB+cN⊤xN=cB⊤AB−1[b−ANxN]+cN⊤xN=zˉ
cB⊤AB−1b+[cN⊤−cB⊤AB−1AN]xN=zˉ+j∑[cj−cB⊤AB−1pj]xj即当每个
x
j
x_j
xj取值相同时,
c
j
−
c
B
⊤
A
B
−
1
p
j
c_j-c_B^{\top} A_B^{-1} {p}_j
cj−cB⊤AB−1pj越大,目标函数值增加越多,进一步假定
c
k
−
c
B
⊤
A
B
−
1
p
k
=
max
j
{
c
j
−
c
B
⊤
A
B
−
1
p
j
}
>
0
c_k-c_B^{\top} A_B^{-1} {p}_k = \max_j \{ c_j-c_B^{\top} A_B^{-1} {p}_j \} > 0
ck−cB⊤AB−1pk=jmax{cj−cB⊤AB−1pj}>0,此时等式约束
A
B
x
B
+
A
N
x
N
=
b
(
x
N
=
0
)
A_B x_B+A_N x_N =b \ (x_N = 0)
ABxB+ANxN=b (xN=0)变为:
A
B
x
B
+
p
k
x
k
=
b
x
B
=
A
B
−
1
b
−
A
B
−
1
p
k
x
k
A_B x_B + p_k x_k = b \\ x_B = A_B^{-1}b - A_B^{-1}p_k x_k
ABxB+pkxk=bxB=AB−1b−AB−1pkxk称
c
j
−
c
B
⊤
A
B
−
1
p
j
c_j-c_B^{\top} A_B^{-1} {p}_j
cj−cB⊤AB−1pj为检验数.
令
b
‾
=
A
B
−
1
b
,
y
k
=
A
B
−
1
p
k
\overline{\boldsymbol{b}}=\boldsymbol{A}_B^{-1} \boldsymbol{b}, \boldsymbol{y}_k=\boldsymbol{A}_B^{-1} \boldsymbol{p}_k
b=AB−1b,yk=AB−1pk,
x
B
=
b
‾
−
y
k
x
k
x_B = \overline{\boldsymbol{b}}-\boldsymbol{y}_kx_k
xB=b−ykxk,此时
x
B
x_B
xB与
x
N
x_N
xN的形式为:
x
B
=
[
x
B
1
x
B
2
⋮
x
B
m
]
=
[
b
ˉ
1
b
ˉ
2
⋮
b
ˉ
m
]
−
[
y
1
k
y
2
k
⋮
y
m
k
]
x
k
\boldsymbol{x}_{\boldsymbol{B}}=\left[\begin{array}{c}x_{B_1} \\ x_{B_2} \\ \vdots \\ x_{B_m}\end{array}\right]=\left[\begin{array}{c}\bar{b}_1 \\ \bar{b}_2 \\ \vdots \\ \bar{b}_m\end{array}\right]-\left[\begin{array}{c}y_{1 k} \\ y_{2 k} \\ \vdots \\ y_{m k}\end{array}\right] x_k
xB=
xB1xB2⋮xBm
=
bˉ1bˉ2⋮bˉm
−
y1ky2k⋮ymk
xk,
x
N
=
(
0
,
⋯
,
0
,
x
k
,
0
,
⋯
,
0
)
T
\boldsymbol{x}_N=\left(0, \cdots, 0, x_k, 0, \cdots, 0\right)^{\mathrm{T}}
xN=(0,⋯,0,xk,0,⋯,0)T,
z
′
=
z
ˉ
+
[
c
k
−
c
B
⊤
A
B
−
1
p
k
]
x
k
z^{\prime} =\bar{z}+\left[c_k-c_B^{\top} A_B^{-1} {p}_k\right] x_k
z′=zˉ+[ck−cB⊤AB−1pk]xk
随后,需要确定
x
k
x_k
xk的取值. 因为需保证
x
k
x_k
xk取任意非负值时,
x
B
=
b
‾
−
y
k
x
k
=
A
B
−
1
b
−
A
B
−
1
p
k
x
k
≥
0
x_B = \overline{\boldsymbol{b}}-\boldsymbol{y}_kx_k=\boldsymbol{A}_B^{-1} \boldsymbol{b}-\boldsymbol{A}_B^{-1} \boldsymbol{p}_kx_k\geq0
xB=b−ykxk=AB−1b−AB−1pkxk≥0,即每个元素都大于0,又因为
x
B
=
[
b
ˉ
1
−
y
1
k
x
k
b
ˉ
2
−
y
2
k
x
k
⋮
b
ˉ
m
−
y
m
k
x
k
]
\mathbf{x}_{\mathbf{B}}=\left[\begin{array}{c}\bar{b}_1-y_{1 k} x_k \\ \bar{b}_2-y_{2 k} x_k \\ \vdots \\ \bar{b}_m-y_{m k} x_k\end{array}\right]
xB=
bˉ1−y1kxkbˉ2−y2kxk⋮bˉm−ymkxk
于是得到: x k = min { b ˉ i y i k ∣ y i k > 0 } = b ˉ r y r k , x_k=\operatorname{min}\left\{\left.\frac{\bar{b}_i}{y_{i k}} \right\rvert\, y_{i k}>0\right\}=\frac{\bar{b}_r}{y_{r k}}, xk=min{yikbˉi yik>0}=yrkbˉr,