高级优化理论与方法(十一)
Simplex
Matrix form of Simplex
min
c
T
x
c^Tx
cTx
s.t.
A
x
=
b
Ax=b
Ax=b
x
≥
0
x\geq 0
x≥0
Assume: the first
m
m
m columns of
A
A
A form a basis
B
B
B.
A
=
[
B
,
D
]
,
c
=
[
c
B
,
c
D
]
T
,
x
=
[
x
B
,
x
D
]
T
A=[B,D],c=[c_B,c_D]^T,x=[x_B,x_D]^T
A=[B,D],c=[cB,cD]T,x=[xB,xD]T
⇒
\Rightarrow
⇒ min
c
B
T
x
B
+
c
D
T
x
D
c_B^Tx_B+c_D^Tx_D
cBTxB+cDTxD
s.t.
B
x
B
+
D
x
D
=
b
Bx_B+Dx_D=b
BxB+DxD=b
x
B
,
x
D
≥
0
x_B,x_D\geq 0
xB,xD≥0
For basic solution
x
=
[
x
B
,
0
]
T
x=[x_B,0]^T
x=[xB,0]T
⇒
x
B
=
B
−
1
b
,
x
=
[
B
−
1
b
,
0
]
T
,
z
0
=
c
B
T
B
−
1
b
\Rightarrow x_B=B^{-1}b,x=[B^{-1}b,0]^T,z_0=c_B^TB^{-1}b
⇒xB=B−1b,x=[B−1b,0]T,z0=cBTB−1b
If
x
D
≠
0
x_D\neq 0
xD=0, then
x
B
=
B
−
1
b
−
B
−
1
D
x
D
x_B=B^{-1}b-B^{-1}Dx_D
xB=B−1b−B−1DxD
⇒
z
=
c
B
T
(
B
−
1
b
−
B
−
1
D
x
D
)
+
c
D
T
x
D
=
z
0
+
(
c
D
T
−
c
B
T
B
−
1
b
)
x
D
\Rightarrow z=c_B^T(B^{-1}b-B^{-1}Dx_D)+c_D^Tx_D=z_0+(c_D^T-c_B^TB^{-1}b)x_D
⇒z=cBT(B−1b−B−1DxD)+cDTxD=z0+(cDT−cBTB−1b)xD
Define r D T = c D T − c B T B − 1 b ⇒ z = z 0 + r D T x D r_D^T=c_D^T-c_B^TB^{-1}b \Rightarrow z=z_0+r_D^Tx_D rDT=cDT−cBTB−1b⇒z=z0+rDTxD
[ A b c T 0 ] = [ B D b c B T c D T 0 ] \begin{bmatrix} A&b\\ c^T&0 \end{bmatrix}=\begin{bmatrix} B&D&b\\ c_B^T&c_D^T&0 \end{bmatrix} [AcTb0]=[BcBTDcDTb0]
[ B − 1 0 0 T 1 ] ⋅ [ B D b c B T c D T 0 ] = [ I m Y y 0 c B T c D T 0 ] = [ B − 1 B B − 1 D B − 1 b c B T c D T 0 ] \begin{bmatrix} B^{-1}&0\\ 0^T&1 \end{bmatrix}\cdot \begin{bmatrix} B&D&b\\ c_B^T&c_D^T&0 \end{bmatrix}=\begin{bmatrix} I_m&Y&y_0\\ c_B^T&c_D^T&0 \end{bmatrix}=\begin{bmatrix} B^{-1}B&B^{-1}D&B^{-1}b\\ c_B^T&c_D^T&0 \end{bmatrix} [B−10T01]⋅[BcBTDcDTb0]=[ImcBTYcDTy00]=[B−1BcBTB−1DcDTB−1b0]
[ I m 0 − c B T 1 ] ⋅ [ I m Y y 0 0 c D T − c B T B − 1 D − c B T B − 1 b ] = [ I m Y y 0 0 r D T − z 0 ] \begin{bmatrix} I_m&0\\ -c_B^T&1 \end{bmatrix}\cdot \begin{bmatrix} I_m&Y&y_0\\ 0&c_D^T-c_B^TB^{-1}D&-c_B^TB^{-1}b \end{bmatrix}=\begin{bmatrix} I_m&Y&y_0\\ 0&r_D^T&-z_0 \end{bmatrix} [Im−cBT01]⋅[Im0YcDT−cBTB−1Dy0−cBTB−1b]=[Im0YrDTy0−z0]
Example
max
7
x
1
+
6
x
2
7x_1+6x_2
7x1+6x2
s.t.
2
x
1
+
x
2
≤
3
2x_1+x_2\leq 3
2x1+x2≤3
x
1
+
4
x
2
≤
4
x_1+4x_2\leq 4
x1+4x2≤4
x
1
,
x
2
≥
0
x_1,x_2\geq 0
x1,x2≥0
⇒
\Rightarrow
⇒ min
−
7
x
1
−
6
x
2
-7x_1-6x_2
−7x1−6x2
s.t.
2
x
1
+
x
2
+
x
3
=
3
2x_1+x_2+x_3=3
2x1+x2+x3=3
x
1
+
4
x
2
+
x
4
=
4
x_1+4x_2+x_4=4
x1+4x2+x4=4
x
1
,
x
2
,
x
3
,
x
4
≥
0
x_1,x_2,x_3,x_4\geq 0
x1,x2,x3,x4≥0
[ A b c T 0 ] = [ 2 1 1 0 3 1 4 0 1 4 − 7 − 6 0 0 0 ] \begin{bmatrix} A&b\\ c^T&0 \end{bmatrix}=\begin{bmatrix} 2&1&1&0&3\\ 1&4&0&1&4\\ -7&-6&0&0&0 \end{bmatrix} [AcTb0]= 21−714−6100010340
B = [ a 3 , a 4 ] B=[a_3,a_4] B=[a3,a4]
x = [ 0 0 3 4 ] x=\begin{bmatrix} 0\\ 0\\ 3\\ 4 \end{bmatrix} x= 0034
r B T = [ − 7 , − 6 ] ⇒ q = 1 r_B^T=[-7,-6]\Rightarrow q=1 rBT=[−7,−6]⇒q=1
z 0 = 0 z_0=0 z0=0
p
=
a
r
g
m
i
n
{
y
i
0
y
i
q
:
y
i
q
>
0
}
p=argmin\{\frac{y_{i0}}{y_{iq}}:y_{iq}>0\}
p=argmin{yiqyi0:yiq>0}
3
2
\frac{3}{2}
23 v.s.
4
1
⇒
p
=
1
\frac{4}{1}\Rightarrow p=1
14⇒p=1
B ′ = [ a 1 , a 4 ] B'=[a_1,a_4] B′=[a1,a4]
[ 1 1 2 1 2 0 3 2 0 3 1 2 − 1 2 1 5 2 0 − 5 2 7 2 0 21 2 ] \begin{bmatrix} 1&\frac{1}{2}&\frac{1}{2}&0&\frac{3}{2}\\ 0&3\frac{1}{2}&-\frac{1}{2}&1&\frac{5}{2}\\ 0&-\frac{5}{2}&\frac{7}{2}&0&\frac{21}{2} \end{bmatrix} 10021321−2521−21270102325221
x = [ 3 2 , 0 , 0 , 5 2 ] T x=[\frac{3}{2},0,0,\frac{5}{2}]^T x=[23,0,0,25]T
z 0 = − 21 2 z_0=-\frac{21}{2} z0=−221
r D T = [ − 5 2 , 7 2 ] ⇒ q = 2 r_D^T=[-\frac{5}{2},\frac{7}{2}]\Rightarrow q=2 rDT=[−25,27]⇒q=2
y i 0 y i q : 3 2 1 2 = 3 \frac{y_{i0}}{y_{iq}}: \frac{\frac{3}{2}}{\frac{1}{2}}=3 yiqyi0:2123=3 v.s. 5 2 7 2 = 5 7 ⇒ p = 2 \frac{\frac{5}{2}}{\frac{7}{2}}=\frac{5}{7}\Rightarrow p=2 2725=75⇒p=2
[ 1 0 4 7 − 1 7 8 7 0 1 − 1 7 2 7 5 7 0 0 22 7 5 7 86 7 ] \begin{bmatrix} 1&0&\frac{4}{7}&-\frac{1}{7}&\frac{8}{7}\\ 0&1&-\frac{1}{7}&\frac{2}{7}&\frac{5}{7}\\ 0&0&\frac{22}{7}&\frac{5}{7}&\frac{86}{7} \end{bmatrix} 10001074−71722−7172757875786
B = [ a 1 , a 2 ] , x = [ 8 7 , 5 7 , 0 , 0 ] T , z = − 86 7 , r D T = [ 22 7 , 5 7 ] ≥ 0 B=[a_1,a_2],x=[\frac{8}{7},\frac{5}{7},0,0]^T,z=-\frac{86}{7},r_D^T=[\frac{22}{7},\frac{5}{7}]\geq 0 B=[a1,a2],x=[78,75,0,0]T,z=−786,rDT=[722,75]≥0
x x x optimal !
Degenerated Basic Solutions
Example
min
−
3
4
x
1
+
20
x
2
−
1
2
x
3
+
6
x
4
-\frac{3}{4}x_1+20x_2-\frac{1}{2}x_3+6x_4
−43x1+20x2−21x3+6x4
s.t.
1
4
x
1
−
8
x
2
−
x
3
+
9
x
4
+
x
5
=
0
\frac{1}{4}x_1-8x_2-x_3+9x_4+x_5=0
41x1−8x2−x3+9x4+x5=0
1
2
x
1
−
12
x
2
−
1
2
x
3
+
3
x
4
+
x
6
=
0
\frac{1}{2}x_1-12x_2-\frac{1}{2}x_3+3x_4+x_6=0
21x1−12x2−21x3+3x4+x6=0
x
3
+
x
7
=
1
x_3+x_7=1
x3+x7=1
x
1
,
⋯
,
x
7
≥
0
x_1,\cdots,x_7\geq 0
x1,⋯,x7≥0
[ 1 4 − 8 − 1 9 1 0 0 0 1 2 − 12 − 1 2 3 0 1 0 0 0 0 1 0 0 0 1 1 − 3 4 20 − 1 2 6 0 0 0 0 ] \begin{bmatrix} \frac{1}{4}&-8&-1&9&1&0&0&0\\ \frac{1}{2}&-12&-\frac{1}{2}&3&0&1&0&0\\ 0&0&1&0&0&0&1&1\\ -\frac{3}{4}&20&-\frac{1}{2}&6&0&0&0&0 \end{bmatrix} 41210−43−8−12020−1−211−2193061000010000100010
B
=
[
a
5
,
a
6
,
a
7
]
,
x
=
[
0
,
0
,
0
,
0
,
0
,
0
,
1
]
T
,
z
=
0
,
q
=
1
,
p
=
1
B=[a_5,a_6,a_7],x=[0,0,0,0,0,0,1]^T,z=0,q=1,p=1
B=[a5,a6,a7],x=[0,0,0,0,0,0,1]T,z=0,q=1,p=1
注:此时,选
p
=
1
p=1
p=1和
p
=
2
p=2
p=2都可以,这里不妨选
p
=
1
p=1
p=1
[ 1 − 32 − 4 36 4 0 0 0 0 4 3 2 − 15 − 2 1 0 0 0 0 1 0 0 0 1 1 0 − 4 − 7 2 33 3 0 0 0 ] \begin{bmatrix} 1&-32&-4&36&4&0&0&0\\ 0&4&\frac{3}{2}&-15&-2&1&0&0\\ 0&0&1&0&0&0&1&1\\ 0&-4&-\frac{7}{2}&33&3&0&0&0 \end{bmatrix} 1000−3240−4−4231−2736−150334−203010000100010
B = [ a 1 , a 6 , a 7 ] , x = [ 0 , 0 , 0 , 0 , 0 , 0 , 1 ] T , z = 0 , q = 2 , p = 2 B=[a_1,a_6,a_7],x=[0,0,0,0,0,0,1]^T,z=0,q=2,p=2 B=[a1,a6,a7],x=[0,0,0,0,0,0,1]T,z=0,q=2,p=2
[ 1 0 8 − 84 − 12 8 0 0 0 1 3 8 − 15 4 − 1 2 1 4 0 0 0 0 1 0 0 0 1 1 0 0 − 2 18 1 1 0 0 ] \begin{bmatrix} 1&0&8&-84&-12&8&0&0\\ 0&1&\frac{3}{8}&-\frac{15}{4}&-\frac{1}{2}&\frac{1}{4}&0&0\\ 0&0&1&0&0&0&1&1\\ 0&0&-2&18&1&1&0&0 \end{bmatrix} 100001008831−2−84−415018−12−21018410100100010
B = [ a 1 , a 2 , a 7 ] , x = [ 0 , 0 , 0 , 0 , 0 , 0 , 1 ] T , z = 0 , q = 3 , p = 1 B=[a_1,a_2,a_7],x=[0,0,0,0,0,0,1]^T,z=0,q=3,p=1 B=[a1,a2,a7],x=[0,0,0,0,0,0,1]T,z=0,q=3,p=1
[ 1 8 0 1 − 21 2 − 3 2 1 0 0 − 3 64 1 0 3 16 1 16 − 1 8 0 0 − 1 8 0 0 21 2 3 2 − 1 1 1 1 4 0 0 − 3 − 2 3 0 0 ] \begin{bmatrix} \frac{1}{8}&0&1&-\frac{21}{2}&-\frac{3}{2}&1&0&0\\ -\frac{3}{64}&1&0&\frac{3}{16}&\frac{1}{16}&-\frac{1}{8}&0&0\\ -\frac{1}{8}&0&0&\frac{21}{2}&\frac{3}{2}&-1&1&1\\ \frac{1}{4}&0&0&-3&-2&3&0&0 \end{bmatrix} 81−643−814101001000−221163221−3−2316123−21−81−1300100010
B = [ a 3 , a 2 , a 7 ] , x = [ 0 , 0 , 0 , 0 , 0 , 0 , 1 ] T , z = 0 , q = 4 , p = 2 B=[a_3,a_2,a_7],x=[0,0,0,0,0,0,1]^T,z=0,q=4,p=2 B=[a3,a2,a7],x=[0,0,0,0,0,0,1]T,z=0,q=4,p=2
[ − 5 2 56 1 0 2 − 6 0 0 − 1 4 16 3 0 1 1 3 − 2 3 0 0 5 2 − 56 0 0 − 2 6 1 1 − 1 2 16 0 0 − 1 1 0 0 ] \begin{bmatrix} -\frac{5}{2}&56&1&0&2&-6&0&0\\ -\frac{1}{4}&\frac{16}{3}&0&1&\frac{1}{3}&-\frac{2}{3}&0&0\\ \frac{5}{2}&-56&0&0&-2&6&1&1\\ -\frac{1}{2}&16&0&0&-1&1&0&0 \end{bmatrix} −25−4125−2156316−561610000100231−2−1−6−326100100010
B = [ a 3 , a 4 , a 7 ] , x = [ 0 , 0 , 0 , 0 , 0 , 0 , 1 ] T , z = 0 , q = 5 , p = 1 B=[a_3,a_4,a_7],x=[0,0,0,0,0,0,1]^T,z=0,q=5,p=1 B=[a3,a4,a7],x=[0,0,0,0,0,0,1]T,z=0,q=5,p=1
[ − 5 4 28 1 2 0 1 − 3 0 0 1 6 − 4 − 1 6 1 0 1 3 0 0 0 0 1 0 0 0 1 1 − 7 4 44 1 2 0 0 − 2 0 0 ] \begin{bmatrix} -\frac{5}{4}&28&\frac{1}{2}&0&1&-3&0&0\\ \frac{1}{6}&-4&-\frac{1}{6}&1&0&\frac{1}{3}&0&0\\ 0&0&1&0&0&0&1&1\\ -\frac{7}{4}&44&\frac{1}{2}&0&0&-2&0&0 \end{bmatrix} −45610−4728−404421−6112101001000−3310−200100010
B = [ a 5 , a 4 , a 7 ] , x = [ 0 , 0 , 0 , 0 , 0 , 0 , 1 ] T , z = 0 , q = 6 , p = 2 B=[a_5,a_4,a_7],x=[0,0,0,0,0,0,1]^T,z=0,q=6,p=2 B=[a5,a4,a7],x=[0,0,0,0,0,0,1]T,z=0,q=6,p=2
[ 1 4 − 8 − 1 9 1 0 0 0 1 2 − 12 − 1 2 3 0 1 0 0 0 0 1 0 0 0 1 1 − 3 4 20 − 1 2 6 0 0 0 0 ] \begin{bmatrix} \frac{1}{4}&-8&-1&9&1&0&0&0\\ \frac{1}{2}&-12&-\frac{1}{2}&3&0&1&0&0\\ 0&0&1&0&0&0&1&1\\ -\frac{3}{4}&20&-\frac{1}{2}&6&0&0&0&0 \end{bmatrix} 41210−43−8−12020−1−211−2193061000010000100010
B
=
[
a
5
,
a
6
,
a
7
]
,
x
=
[
0
,
0
,
0
,
0
,
0
,
0
,
1
]
T
,
z
=
0
,
q
=
1
,
p
=
1
B=[a_5,a_6,a_7],x=[0,0,0,0,0,0,1]^T,z=0,q=1,p=1
B=[a5,a6,a7],x=[0,0,0,0,0,0,1]T,z=0,q=1,p=1
注:此时回到了初始的结果,算法陷入了死循环。这个例子用于解释退化基本解会导致单纯形法陷入死循环的情况。
Bland’s Method
①The entering variable should be the lowest index variable with negative r j r_j rj.
②The leaving variable (in case p p p a tie in the min ratio) should be the lowest index variable.
注:该方法给出了避免产生死循环的方法,即当 p p p和 q q q有多个选法时,选择下标较小的变量。Bland声称自己有证明,但是找不到了。该方法在实践中证明有效,但是缺乏理论证明。其理论证明是一个数学界的公开问题。
Remarks
若 n > > m n>>m n>>m,那么用上面的算法计算起来计算量非常大,为了减小计算量,我们要找到一些简便方法。
Claim
Claim: E B − 1 = B n e w − 1 EB^{-1}=B_{new}^{-1} EB−1=Bnew−1, where B n e w = B [ a p ↔ a q ] B_{new}=B [a_p\leftrightarrow a_q] Bnew=B[ap↔aq]
Revised Simplex
- Form the matrix [ B − 1 , y 0 ] ( [ B , I m , b ] → [ I m , B − 1 , y 0 ] ) [B^{-1},y_0]([B,I_m,b]\rightarrow[I_m,B^{-1},y_0]) [B−1,y0]([B,Im,b]→[Im,B−1,y0])
- Calculate r D T = c D T − λ T D , λ T = c B T B − 1 r_D^T=c_D^T-\lambda^TD, \lambda^T=c_B^TB^{-1} rDT=cDT−λTD,λT=cBTB−1
- If ∀ j ≥ m + 1 : r j ≥ 0 \forall j\geq m+1:r_j\geq 0 ∀j≥m+1:rj≥0, then return the current basic solution.
- Select q q q with r q < 0 r_q<0 rq<0
- Compute y q = B − 1 a q y_q=B^{-1}a_q yq=B−1aq
- If no
y
i
q
>
0
y_{iq}>0
yiq>0, then return “no solution”
else p = a r g m i n { y i 0 y i q : y i q > 0 } p=argmin\{\frac{y_{i0}}{y_{iq}}:y_{iq}>0\} p=argmin{yiqyi0:yiq>0} - Form [ B − 1 , y 0 , y q ] [B^{-1},y_0,y_q] [B−1,y0,yq] and compute E B − 1 , E y 0 EB^{-1},Ey_0 EB−1,Ey0
- Goto 2
Example
min
−
3
x
1
−
5
x
2
-3x_1-5x_2
−3x1−5x2
s.t.
x
1
+
x
2
+
x
3
=
4
x_1+x_2+x_3=4
x1+x2+x3=4
5
x
1
+
3
x
2
−
x
4
=
8
5x_1+3x_2-x_4=8
5x1+3x2−x4=8
x
1
,
x
2
,
x
3
,
x
4
≥
0
x_1,x_2,x_3,x_4\geq 0
x1,x2,x3,x4≥0
Phase I {\rm I} I
min
x
5
x_5
x5
s.t. x_1+x_2+x_3=4$
5
x
1
+
3
x
2
−
x
4
+
x
5
=
8
5x_1+3x_2-x_4+x_5=8
5x1+3x2−x4+x5=8
x
1
,
⋯
,
x
5
≥
0
x_1,\cdots,x_5\geq 0
x1,⋯,x5≥0
[ 1 1 1 0 0 5 3 0 − 1 1 ] \begin{bmatrix} 1&1&1&0&0\\ 5&3&0&-1&1 \end{bmatrix} [1513100−101]
B = [ a 3 , a 5 ] , B − 1 = [ 1 0 0 1 ] , c B = [ 0 , 1 ] , [ B − 1 , y 0 ] = [ 1 0 4 0 1 8 ] B=[a_3,a_5],B^{-1}=\begin{bmatrix} 1&0\\ 0&1 \end{bmatrix},c_B=[0,1],[B^{-1},y_0]=\begin{bmatrix} 1&0&4\\ 0&1&8 \end{bmatrix} B=[a3,a5],B−1=[1001],cB=[0,1],[B−1,y0]=[100148]
Compute
r
:
λ
T
=
c
B
T
B
−
1
=
[
0
,
1
]
r:\lambda^T=c_B^TB^{-1}=[0,1]
r:λT=cBTB−1=[0,1]
r
T
=
c
B
T
−
λ
T
D
=
[
0
,
0
,
0
]
−
[
0
,
1
]
[
1
1
0
5
3
−
1
]
=
[
5
−
3
1
]
r^T=c_B^T-\lambda^TD=[0,0,0]-[0,1]\begin{bmatrix} 1&1&0\\ 5&3&-1 \end{bmatrix}=\begin{bmatrix} 5\\ -3\\ 1 \end{bmatrix}
rT=cBT−λTD=[0,0,0]−[0,1][15130−1]=
5−31
q = 1 , y 1 = B − 1 a 1 = [ 1 5 ] q=1,y_1=B^{-1}a_1=\begin{bmatrix} 1\\ 5 \end{bmatrix} q=1,y1=B−1a1=[15]
y
i
0
y
i
q
=
4
\frac{y_{i0}}{y_{iq}}=4
yiqyi0=4 v.s.
8
5
\frac{8}{5}
58
p
=
2
p=2
p=2
E = [ 1 − 1 5 0 1 5 ] E=\begin{bmatrix} 1&-\frac{1}{5}\\ 0&\frac{1}{5} \end{bmatrix} E=[10−5151]
y 0 ′ = E y 0 = [ 12 5 8 5 ] y_0'=Ey_0=\begin{bmatrix} \frac{12}{5}\\ \frac{8}{5} \end{bmatrix} y0′=Ey0=[51258]
B n e w − 1 = E B − 1 = [ 1 − 1 5 0 1 5 ] B_{new}^{-1}=EB^{-1}=\begin{bmatrix} 1&-\frac{1}{5}\\ 0&\frac{1}{5} \end{bmatrix} Bnew−1=EB−1=[10−5151]
B n e w = [ a 3 , a 1 ] , c B = [ 0 , 0 ] B_{new}=[a_3,a_1],c_B=[0,0] Bnew=[a3,a1],cB=[0,0]
λ n e w T = c B T B n e w − 1 = [ 0 , 0 ] \lambda_{new}^T=c_B^TB_{new}^{-1}=[0,0] λnewT=cBTBnew−1=[0,0]
r n e w = c B T − λ n e w T D = [ 0 , 0 , 1 ] − [ 0 , 0 ] [ 1 0 0 3 − 1 1 ] = [ 0 , 0 , 1 ] ⇒ r_{new}=c_B^T-\lambda_{new}^TD=[0,0,1]-[0,0]\begin{bmatrix} 1&0&0\\ 3&-1&1 \end{bmatrix}=[0,0,1]\Rightarrow rnew=cBT−λnewTD=[0,0,1]−[0,0][130−101]=[0,0,1]⇒ optimal
Phase I I {\rm II} II
B = [ a 3 , a 1 ] , y 0 = [ 12 5 , 8 5 ] , c B = [ 0 , − 3 ] B=[a_3,a_1],y_0=[\frac{12}{5},\frac{8}{5}],c_B=[0,-3] B=[a3,a1],y0=[512,58],cB=[0,−3]
B − 1 = [ 1 − 1 5 0 1 5 ] B^{-1}=\begin{bmatrix} 1&-\frac{1}{5}\\ 0&\frac{1}{5} \end{bmatrix} B−1=[10−5151]
[ 1 1 1 0 4 5 3 0 − 1 8 − 3 − 5 0 0 0 ] \begin{bmatrix} 1&1&1&0&4\\ 5&3&0&-1&8\\ -3&-5&0&0&0 \end{bmatrix} 15−313−51000−10480
c D = [ − 5 , 0 ] c_D=[-5,0] cD=[−5,0]
Compute
r
:
λ
T
=
c
B
T
B
−
1
=
[
0
,
−
3
]
[
1
−
1
5
0
1
5
]
=
[
0
,
−
3
5
]
r:\lambda^T=c_B^TB^{-1}=[0,-3]\begin{bmatrix} 1&-\frac{1}{5}\\ 0&\frac{1}{5} \end{bmatrix}=[0,-\frac{3}{5}]
r:λT=cBTB−1=[0,−3][10−5151]=[0,−53]
r
D
T
=
c
D
T
−
λ
T
D
=
[
−
5
,
0
]
−
[
0
,
−
3
5
]
[
1
0
3
−
1
]
=
[
−
16
5
−
3
5
]
r_D^T=c_D^T-\lambda^TD=[-5,0]-[0,-\frac{3}{5}]\begin{bmatrix} 1&0\\ 3&-1 \end{bmatrix}=\begin{bmatrix} -\frac{16}{5}\\ -\frac{3}{5} \end{bmatrix}
rDT=cDT−λTD=[−5,0]−[0,−53][130−1]=[−516−53]
q
=
2
q=2
q=2
y 2 = B − 1 a 2 = [ 1 − 1 5 0 1 5 ] [ 1 3 ] = [ 2 5 3 5 ] y_2=B^{-1}a_2=\begin{bmatrix} 1&-\frac{1}{5}\\ 0&\frac{1}{5} \end{bmatrix}\begin{bmatrix} 1\\ 3 \end{bmatrix}=\begin{bmatrix} \frac{2}{5}\\ \frac{3}{5} \end{bmatrix} y2=B−1a2=[10−5151][13]=[5253]
y i 0 y i q : 12 5 2 5 \frac{y_{i0}}{y_{iq}}:\frac{\frac{12}{5}}{\frac{2}{5}} yiqyi0:52512 v.s. 8 5 3 5 ⇒ p = 2 \frac{\frac{8}{5}}{\frac{3}{5}}\Rightarrow p=2 5358⇒p=2
E = [ 1 − 2 3 0 5 3 ] E=\begin{bmatrix} 1&-\frac{2}{3}\\ 0&\frac{5}{3} \end{bmatrix} E=[10−3235]
B n e w − 1 = E B − 1 = [ 1 − 1 3 0 1 3 ] , y n e w = E y 0 = [ 4 3 8 3 ] , B n e w = [ a 3 , a 2 ] B_{new}^{-1}=EB^{-1}=\begin{bmatrix} 1&-\frac{1}{3}\\ 0&\frac{1}{3} \end{bmatrix},y_{new}=Ey_0=\begin{bmatrix} \frac{4}{3}\\ \frac{8}{3} \end{bmatrix},B_{new}=[a_3,a_2] Bnew−1=EB−1=[10−3131],ynew=Ey0=[3438],Bnew=[a3,a2]
Compute r n e w : r n e w T = [ 16 3 − 5 3 ] ⇒ q = 4 r_{new}:r_{new}^T=\begin{bmatrix} \frac{16}{3}\\ -\frac{5}{3} \end{bmatrix}\Rightarrow q=4 rnew:rnewT=[316−35]⇒q=4
y 4 = B n e w − 1 a 4 = [ 1 − 1 3 0 1 3 ] [ 0 1 ] = [ 1 3 − 1 3 ] ⇒ p = 1 y_4=B_{new}^{-1}a_4=\begin{bmatrix} 1&-\frac{1}{3}\\ 0&\frac{1}{3} \end{bmatrix}\begin{bmatrix} 0\\ 1 \end{bmatrix}=\begin{bmatrix} \frac{1}{3}\\ -\frac{1}{3} \end{bmatrix}\Rightarrow p=1 y4=Bnew−1a4=[10−3131][01]=[31−31]⇒p=1
B n e w ′ = [ a 4 , a 2 ] B_{new}'=[a_4,a_2] Bnew′=[a4,a2]
E = [ 3 0 1 1 ] E=\begin{bmatrix} 3&0\\ 1&1 \end{bmatrix} E=[3101]
B n e w ′ − 1 = E B n e w = [ 3 − 1 1 0 ] , y n e w ′ = E y n e w = [ 4 4 ] {B'_{new}}^{-1}=EB_{new}=\begin{bmatrix} 3&-1\\ 1&0 \end{bmatrix},y_{new}'=Ey_{new}=\begin{bmatrix} 4\\ 4 \end{bmatrix} Bnew′−1=EBnew=[31−10],ynew′=Eynew=[44]
Compute r n e w ′ = [ 2 , 5 ] > 0 r_{new}'=[2,5]>0 rnew′=[2,5]>0
OPT: [ 0 , 4 , 0 , 4 ] [0,4,0,4] [0,4,0,4]
Duality of LP
Normal Form
Primal LP:
min
c
T
x
c^Tx
cTx
s.t.
A
x
≥
b
Ax\geq b
Ax≥b
x
≥
0
x\geq 0
x≥0
Dual LP:
min
y
T
b
y^Tb
yTb
s.t.
y
T
A
≤
c
T
y^TA\leq c^T
yTA≤cT
y
≥
0
y\geq 0
y≥0
symmatric form of duality(对偶的对称形式)
Claim
Claim: Dual of dual = primal
Standard Form
primal:
min
c
T
x
c^Tx
cTx
s.t.
A
x
=
b
Ax=b
Ax=b
x
≥
0
x\geq 0
x≥0
⇒
\Rightarrow
⇒ min
c
T
x
c^Tx
cTx
s.t.
A
x
≥
b
Ax\geq b
Ax≥b
−
A
x
≥
−
b
-Ax\geq -b
−Ax≥−b
x
≥
0
x\geq 0
x≥0
⇒
\Rightarrow
⇒ min
c
T
x
c^Tx
cTx
s.t.
[
A
−
A
]
x
≥
[
b
−
b
]
\begin{bmatrix} A\\ -A \end{bmatrix}x\geq \begin{bmatrix} b\\ -b \end{bmatrix}
[A−A]x≥[b−b]
x
≥
0
x\geq 0
x≥0
⇒
\Rightarrow
⇒ max
u
T
b
−
v
T
b
u^Tb-v^Tb
uTb−vTb
s.t.
[
u
v
]
T
[
A
−
A
]
≤
c
T
\begin{bmatrix} u\\ v \end{bmatrix}^T\begin{bmatrix} A\\ -A \end{bmatrix}\leq c^T
[uv]T[A−A]≤cT
u
,
v
≥
0
u,v\geq 0
u,v≥0
Define
y
=
u
−
v
y=u-v
y=u−v
⇒
\Rightarrow
⇒ max
y
T
b
y^Tb
yTb
s.t.
y
T
A
≤
c
T
y^TA\leq c^T
yTA≤cT
Asymmetric form of duality(对偶的不对称形式)
Example
max
2
x
1
+
5
x
2
+
x
3
2x_1+5x_2+x_3
2x1+5x2+x3
s.t.
2
x
1
−
x
2
+
7
x
3
≤
6
2x_1-x_2+7x_3\leq 6
2x1−x2+7x3≤6
x
1
+
3
x
2
+
4
x
3
≤
9
x_1+3x_2+4x_3\leq 9
x1+3x2+4x3≤9
3
x
1
+
6
x
2
+
x
3
≤
3
3x_1+6x_2+x_3\leq 3
3x1+6x2+x3≤3
⇒
\Rightarrow
⇒ min
[
6
,
9
,
3
]
y
[6,9,3]y
[6,9,3]y
s.t.
[
2
−
1
7
1
3
4
3
6
1
]
y
≥
[
2
5
1
]
\begin{bmatrix} 2&-1&7\\ 1&3&4\\ 3&6&1 \end{bmatrix}y\geq \begin{bmatrix} 2\\ 5\\ 1 \end{bmatrix}
213−136741
y≥
251
y
≥
0
y\geq 0
y≥0
Theorem
Thm(Week LP duality): If x x x is any feasible solution to the primal LP and y y y is any feasible solution to the dual c T x ≥ y T b c^Tx\geq y^Tb cTx≥yTb.
总结
前几节课讲的单纯形法侧重于对方法的推导,这节课比较侧重于实践。一上来先规范了单纯形法的解法,并给出例子予以说明。然后讨论了退化基本解的问题,给出例子说明按照之前推导的方法不一定收敛,可能产生死循环。于是给出了Bland’s Method,可有效避免死循环的问题,但是该方法的正确性在理论上还没有得到证明。接着,对于 n n n远大于 m m m的情况,为了减少计算量,又介绍了修正单纯形法。至此,单纯形法基本介绍完毕。后面开始介绍关于线性规划的对偶性问题,不加证明地给出了两种形式下的对偶线性规划,并且两种对偶体现为对偶的对称形式和对偶的不对称形式。最后给出了线性规划的弱对偶定理。下节课将进一步介绍对偶线性规划的相关知识。