Examensarbete Stockholm, 2012 HENRIK SJÖSTRÖM
Pivoting methods for
linear programming
AK A K AK
A K
Aij i j A
xi i x
ei i x ≥ 0
x
xB x B x
xB xN
x =!xB
xN
"
.
xi≥k x i i ≥ k
ker(A) A v
Av = 0
Bin(p, q) Bin(p, q) = q!(p−q)!p!
0 ≤ q ≤ p p q
cTx Ax = b x ≥ 0.
A n×m cTx c b
m n
bTy
ATy + s = c s ≥ 00.
C ∀ x, y ∈ C λ ∈ [0, 1]
(1 − λ)x + λy ∈ C
B A |B| = n
AB AB i A i ∈ B
B N N = BC
x
Ax = b B xB ABxB = b
AB x B xN
xN = 0
x ≥ 0
C x
C x ∈ C y, z ∈ C λ ∈ (0, 1)
x = (1 − λ)y + λz y, z '= x
x C
x
x xN xB
x =!xB
xN
"
x = (1 − λ)y + λz z, y '= x λ ∈ (0, 1)
y z y ≥ 0 z ≥ 0
x x =!xB
xN
"
= (1 − λ)y + λz = (1 − λ)!yB
yN
"
+ λ!zB
zN
"
. xN = 0
0 = xN = (1 − λ)yN+ λzN. λ > 0 yN ≥ 0 zN ≥ 0
yN = zN = 0.
y, z ∈ C ABx = ABy = ABz = b A−1B
ABxB = AByB = ABzB= b =⇒ xB = yB = zB = A−1B b.
x = y = z y, z '= x x
y z
x x
x x0 = 0
xD > 0 A A0 AD
AD = AB x AD
ADxD = b.
AD y
z x = 12y + 12z x = y = z x
AD p
ADp = 0.
"
AD(x ± "p) = ADxB± "ADp = ADxB= b.
xD > 0 "
xD+ "p > 0,
xD− "p > 0.
y = xD + "p z = xD − "p x
x AD
AD
x #yT sT$T
cTx − bTy = sTx ≥ 0 cTx − bTy
Ax = b ATy + s = c cTx − bTy
cTx − bTy = (ATy + s)Tx − (Ax)Ty = (yTA + sT)x − xTATy.
xTATy xTATy = yTAx (yTA + sT)x − xTATy = yTAx + sTx − yTAx = sTx
cTx − bTy = sTx sTx ≥ 0 s ≥ 0 x ≥ 0
Ax = b, ATy + s = c, x ≥ 0, s ≥ 0, xjsj = 0 ∀j.
B
x s xN = 0 sB= 0
B AB
Ax =#AB AN
$!xB
xN
"
= b.
xN = 0
ABxB = b =⇒ xB= A−1B b.
B x
xisi= 0 sB= 0 sB= 0 ATBy = cB
y = A−TB cB ATNy + sN = cN =⇒
ATNA−TB cB+ sN = cN =⇒ sN = cN − ANy = cN − ANA−TB cB. sN
z w
ziwi = 0, w = M z + q,
z ≥ 0, w ≥ 0,
q M
B B# xB = xB!
B s s ≥ 0
t t
s
pB = −A−1B ANet
v x
pB xv
v
B
xB = A−1B b sN = cN − ATNA−TB cB
sN ≥ 0
t = argmin
i
(si|si< 0).
pB= −A−1B ANet pB ≥ 0 B v = argmini%
xi
−pi|i ∈ B pi < 0&
. t ∈ B v ∈ N
x ≥ 0 ABxB = b
xj =' xB,j j ∈ B 0 j '∈ B
(
sN
sN ≥ 0 xB ≥ 0
si ≥ 0 t = argmini(si)
1 Ax = b
x
!AB AN
0 I
"
p = et
Ax = c pt= 1
pj =
pB,j j ∈ B 0 j '∈ B + {t}
1 j = t
pB = −A−1B ANet
cTp < 0 p st< 0
!ATB 0 ATN I
" ! y sN
"
=!cB
cN
"
cTp =!!ATB 0 ATN I
" ! y sN
""T
p
=#yT sTN$!AB AN
0 I
" !AB AN
0 I
"−1
et
=#yT sTN$ et= st.
st< 0 cTp < 0.
xB+kpB k
k kpB = −xB =⇒ k = −−xpBB
pi > 0
k k = mini%
xi
−pi|i ∈ B pi < 0&
i pi < 0 i ∈ B
k
(t, v) B
pB
k
st< 0
#−2 −1 0 0$ x,
!1 1 1 0 1 0 0 1
"
x =!2 1
"
, x ≥ 0.
B = 3, 4 AB = I
AN =!1 1 1 0
"
xB sN
xB = I−1!2 1
"
=!2 1
"
,
sN = cN− ATNA−TB cB =!−2
−1
"
. x1
pB=
! −1 −1
−1 0
" !1 0
"
=!−1
−1
"
. min(−xi/pi) = min(2, 1) x4
(1, 3)
η c
t
B
xB = A−1B b η =!−A−1B AN
I
"
IN
ηi η c|ηTηi
i| ≥ 0 ∀i η
t = argmin
i
! cTηi
|ηi|
"
.
s = argmin
i
! −xi
ηi,t |ηi,t < 0 i ∈ B
"
. i ηi,t < 0
(t, s) s t
B
ηi i
ηi
|ηi| c
pi= cTηi
|ηi|.
pi≥ 0 ∀i
t pt
−c
pB = ηt ηt η
n ≥ 1 n
0 ≤ x1≤ 1,
βxj−1 ≤ xj ≤ δj− βxj−1 = 2, ..., n.
β = 0 δi= 1
x1≤ 1,
βxj−1− xj ≤ 0, j > 1, βxj−1+ xj ≤ δj, j > 1,
x ≥ 0
θ > 2 β ≥ 2 δj = (θβ)j−1 ci = −βi. θ > 2 β ≥ 1
xi
0 0.2 0.4 0.6 0.8 1 0
1 2 3 4 5 6
y1
y2
β = 2 θ = 3
βxi−1< δi− βxi−1 θ
δi = (θβ)i−1
βxi−1 ≤ xi≤ δi− βxi−1 =⇒ 2βxi−1 < δi, xi−1< δi
2β = (θβ)i−1 2β =! θ
2
"
(θβ)i−2. x1≤ 1 i = 2
x1<! θ 2
"
(θβ)0 =! θ 2
"i
. βxi−1 < δi− βxi−1 x1 ≤ 1 <#θ
2
$i
∀i > 1 θ > 2
a n ai = 1 xi
ai = 0 xi
a B
B x
xi =' βxi−1 ai = 0, δi− βxi−1 ai = 1.
(
xi
B B#
a
a# k x
x#
x#i− xi =
0 if i < k,
(δk− 2βxk−1)(1 − 2ak) i = k, βi−k(δk− 2βxk−1)/i
j=k(1 − 2aj) i > k.
xi xj<i i < k
x#i = xi x#i− xi = 0 ai = a#i
x#k− xk =
' −(δk− 2βxk−1) ak= 1, (δk− 2βxk−1) ak= 0.
ak = 1 1 − 2ak = −1 ak = 0 1 − 2ak = 1 x#k− xk= (δk− 2βxk−1)(1 − 2ak).
i > k ai= a#i x#i− xi =
' (δi− βx#i−1) − (δi− βxi−1) = −β(x#i−1− xi−1) ai = 1, βx#i−1− βxi−1= β(x#i−1− xi−1) ai = 0.
x#k− xk
x#i− xi = β(x#i−1− xi−1)(1 − 2ai).
x#i− xi= βi−k(x#k− xk)
i
0
j=k+1
(1 − 2aj).
x#k− xk x#i − xi
xk−1
x#i− xi= βi−k(δk− 2βxk−1)(1 − 2ak)
i
0
j=k+1
(1 − 2aj)
= βi−k(δk− 2βxk−1)
i
0
j=k
(1 − 2aj).
x#− x
|x#− x|.
x!i−xi
|x!−x| = 0 i < k x#i− xi
|x#− x| = βi−k(δk− 2βxk−1)/i
j=k(1 − 2aj) 1
2n
j=kβ2(j−k)(δk− 2βxk−1)2/j
w=k(1 − 2aw)2, if i ≥ k.
/i
j=k(1 − 2aj)2 = 1 aj
(δk− 2βxk−1)2β−2k x#i− xi
|x#− x| = βi−k(δk− 2βxk−1)/i
j=k(1 − 2aj) β−k(δk− 2βxk−1)1
2n j=kβ2j
= βi/i
j=k(1 − 2aj) 12n
j=kβ2j .
c·(x!−x)
|x!−x| ci = −βi
ci(x#i− xi)
|x#i− xi| = −βiβi/i
j=k(1 − 2aj) 12n
j=kβ2j
= −β2i/i
j=k(1 − 2aj) 12n
j=kβ2j .
c · (x#− x)
|x#− x| = − 2n
i=kβ2i/i
j=k(1 − 2aj) 12n
j=kβ2j
.
2n
i=kβ2i/i
j=k(1 − 2aj) /n
j=k(1 − 2aj)
wp =/p
j=k(1 − 2aj) wi = ±1 wn= 1
n
3
i=k
β2i−1
i
0
j=k
(1 − 2aj) > 0
β−1
n
3
i=k
β2iwi= β2n+
n−1
3
i=k
β2i−1wi.
wi<n= −1 k = 1
β2n+
n−1
3
i=k
β2iwi ≥ β2n−
n−1
3
i=1
β2i 2n−1
i=1 y2i= −y(y2−y2−1)2n
β2n+
n−1
3
i=k
β2iwi ≥ β2n+β2− β2n (β2− 1)
β2n+ β(β2−β2−1)2n > 0 β
β2n(β2− 1) + β2− β2n > 0, β2− 1 + β2
β2n − 1 > 0, β2+ β2
β2n > 2, β2+ 1
β2(n−1) > 2 =⇒ β2 > 2.
β2> 2 2n
i=kβ2i−1wi> 0 wn= 1 wn= −1
n
3
i=k
β2i
i
0
j=k
(1 − 2aj) < 0.
wi<n= 1 k = 1
−β2n+
n−1
3
i=k
β2iwi ≤ −β2n+
n−1
3
i=1
β2i
β2n − 2n−1
i=k β2i > 0
−β2n−1+
n−1
3
i=1
β2i−1< 0,
−
β ≥ 2 m /n
j=m(1 −
2aj) = 1 k > m /n
j=k(1 − 2aj) = 1
c·(xm−x)
|xm−x| < c·(x|xkk−x|−x) xm x m
β
− 2n
i=mβ2i/i
j=m(1 − 2aj) 12n
j=mβ2j < − 2n
i=kβ2i/i
j=k(1 − 2aj) 12n
j=kβ2j
.
Φ =
k−1
3
i=m
β2i∀i
i
0
j=m
(1 − 2aj) = 1,
Ψ =
k−1
3
i=m
β2i∀i
i
0
j=m
(1 − 2aj) = −1,
Ω =
n
3
i=k
β2i∀i
i
0
j=m
(1 − 2aj) = 1,
Λ =
n
3
i=k
β2i∀i
i
0
j=m
(1 − 2aj) = −1.
Φ, Ω > 0 Ψ, Λ ≥ 0
−√Φ − Ψ +Ω − Λ
Φ + Ψ + Ω + Λ < −√Ω − Λ Ω +Λ.
(Φ − Ψ +Ω − Λ)2(Ω + Λ) − (Ω − Λ)2(Φ + Ψ + Ω + Λ) > 0 (Φ − Ψ + Ω − Λ)2(Ω + Λ) − (Ω − Λ)2(Φ + Ψ + Ω + Λ)
= (Φ − Ψ)2(Ω + Λ) + 2(Φ − Ψ)(Ω2− Λ2) − (Ω − Λ)2(Φ + Ψ)
= (Φ − Ψ)2(Ω + Λ) + (Ω − Λ)[Ω(Φ − 3Ψ) + Λ(3Φ − Ψ)].
(Φ − Ψ)2> 0 (Ω + Λ) > 0 (Ω − Λ)[Ω(Φ − 3Ψ) + Λ(3Φ − Ψ)]
(Φ−Ψ)2(Ω+Λ)+(Ω−Λ)[Ω(Φ−3Ψ)+Λ(3Φ−Ψ)] > (Ω−Λ)[Ω(Φ−3Ψ)+Λ(3Φ−Ψ)].
Ω > Λ (Ω −
Λ)[Ω(Φ − 3Ψ) + Λ(3Φ − Ψ)] Ω(Φ − 3Ψ) + Λ(3Φ − Ψ) (Φ − 3Ψ) ≥ 0
(3Φ − Ψ) > 0
n
0
j=k
(1 − 2aj) = 1
1 =
n
0
j=m
(1 − 2aj) =
k−1
0
j=m
(1 − 2aj)
n
0
j=k
(1 − 2aj) =⇒
k−1
0
j=m
(1 − 2aj) = 1.
/k−1
j=m(1−2aj) = 1 /j≤k−2
j=m (1−2aj) = −1
Ψ Φ
(Φ − 3Ψ) ≥ β2k− 32k−2
i=mβ2i
= β2k−2(β2− 32k−2
i=mβ−2(k−i−1))
≥ β2k−2(β2−β3β2−12 ).
β2−β3β2−12 ≥ 0 β ≥ 2
2n− 1
m
n
0
j=m
(1 − 2aj) = 1
am
n = 2 ai = 0 ∀i a0 = [0, 0]
/n
j=i(1 − 2aj) = 1∀i a1 = [1, 0]
a m
0 [0, 0] 1
1 [1, 0] 2
2 [1, 1] 1
3 [0, 1] −
n − 1 2n−1− 1 n
1 − 2an= 1|an=0
n − 1
an−1 = [0...0, 1n−1, 0]
i /n
j=i(1 − 2aj) = 1 n an= [0...0, 1n−1, 1n]
1 − 2an= −1|an=1 n−1
0
j=i
(1 − 2aj)|an=1= −
n−1
0
j=i
(1 − 2aj)|an=0. n − 1
n − 1
2 ∗ (22−1− 1) an= 1
2 ∗ (22−1− 1) + 1 = 2n− 1.
r
c·(x!−x)+cslack·(r!−r))
|x!−x+r!−r| cslack = 0
c·(x!−x)
|x!−x+r!−r|
d cTx,
Ax +Idrd= b, x, r ≥ 0.
B
x r d r = drd
c · (x#− x)
|x#− x + r#− r| = c · (x#− x)
|x#− x + d(r#changed− rchanged)|.
d 0
d→0lim
c · (x#− x)
|x#− x + d(r#d− rd)| = c · (x#− x)
|x#− x| .
d
cTx
dAx + rd= db, x, r ≥ 0,
c b
ci =
' βi i ≤ n 0 i > n
( ,
bi=' δi i ≤ n 0 i > n
( .
n A n −1
A =
1 0 0 ... 0
β 1 ... 0
0 β 1 ... 0
0 ... 0 β 1
β −1 ... 0
0 β −1 ... 0
0 0 ... β −1
.
β ≥ 2 θ > 2 d > 0 d
2n− 1 xi>1 rn≤i≤2n−1
0 0.2 0.4 0.6 0.8 1 0
1 2 3 4 5 6
y1
y2
1
2 3 4
β = 2 θ = 3
cTηiki
s
x x# = x + ktηt B
xB = A−1B b η =!−A−1B AN
I
"
IN
ηi η c|ηTηi
i| ≥ 0 ∀i
ηi ki
ki = min
j
! xj∈B
ηij |ηij < 0
"
.
t = argmini(cTηiki) s s = argmin
j
! xj∈B
ηtj |ηtj< 0
"
.
(t, s) s t B
ηi i
xj∈B− ηijki = 0 j xj∈B− ηijki≥ 0 j
ki = min
j
! xj
ηij|ηij < 0, j ∈ B
"
.
cTηiki ηi ki
ηi
p cTx
ψ(p) p ψ(p) ∈ [1, 0]
y
0 0.2 0.4 0.6 0.8 1
0 0.2 0.4 0.6 0.8 1
x1
y1
p1
y1
y1
y1 y1
v w
pi ∈ p [(1 − ψ(pi))v + ψ(pi)w, pi]∀i [v1, p1] v1
[v1, p1] p [w1, pmax]
[w2, pmax] w [w3, pmax]
p w v pmax
p1 p v
v w v
w
p
v w
p
0 2 4 6 8 10 12 14
−0.5 0 0.5 1 1.5 2 2.5 3 3.5
x2
y2
v1 w1
v w
y2
B
i xi < 0 si < 0 t
t ∈ B
ηN v ηv < 0
t ∈ N v
pB v
pv< 0 t v B
N
B B
xB = A−1B b sN = cN − ATNA−TB cB xB≥ 0 sN ≥ 0
t = min
i ({i|xi < 0orsi < 0}).
t ∈ B ηN = ATNA−TB et ηN ≥ 0 B v = mini(i|ηi < 0)
t ∈ N pB = −A−1B ANet pB ≥ 0 B
v = mini(i|pi < 0 i ∈ B)
(t, v) B
t
x s x s
t v
t ∈ B xB
sN
t xi < 0 si< 0
t ∈ B
t ∈ N
(t, v) t ∈ B t ∈ N v ∈ B t ∈ N t ∈ B v ∈ N
t ∈ N
t ∈ B
x# x## s∗ s∗∗ (s∗− s∗∗)T(x#− x##) = 0
K = ker(A) AK = 0
x Ax = b Ax#− Ax##= b − b = 0 A(x#− x##) = 0 x#− x##∈ K
s ATy + s = c
ATy∗+ s∗− ATy∗∗+ s∗∗= c − c = 0.
AK = 0 KTAT = 0 KT
KTAT(y∗− y∗∗) + KT(s∗− s∗∗) = KT(s∗− s∗∗) = 0.
(KT(s∗− s∗∗))T = (s∗ − s∗∗)TK = 0 (s∗− s∗∗)T K
x# − x## ∈ K (s∗ − s∗∗)T K (s∗− s∗∗)T(x#− x##) = 0
t
B t B# t
k t t t t
(s1− s2)T(x3− x4) = 0 s1 s2
x3 x4 x3 x B#
x4
x3 x3− x4 = lp# l l
p# p
p#k= 1
p#j =
−A−1B!ANej j ∈ B#
1 j = k
0 j ∈ N#\k
i sixi = 0
s s# B B# s s#
t
sj =' ≥ 0 j < t
< 0 j = t (
,
s#j =
f ree j > t
0 j = t
< 0 j = k
.
0 = (s − s#)Tp# = skp#k+ stpt# − s#kp#k− s#tp#t+ 3
i∈N ∩B!\t,k
sip#i− s#ip#i.
p#i∈N!\k= 0 s#i∈B! = 0 s#i)=kp#i)=k= 0 p#k= 1
0 = (s − s#)Tp#= sk+ stp#t− s#k+ 3
i∈N ∩B!\t,k
sip#i.
sk≥ 0 st< 0 p#t< 0 s#k< 0 si∈N ∩B!\t,k ≥ 0 p#i∈N ∩B!\t,k ≥ 0
0 = (s − s#)Tp#= sk+ stp#t− s#k+ 3
i∈N ∩B!\t,k
sip#i> 0.
t
p# η
s# s x# x
0 = (s − s#)T(x − x#) sTx = s#Tx# = 0
0 = (s − s#)T(x − x#) = −sTx#− s#Tx.
sj =' ≥ 0 j < t
< 0 j = t (
,
xj =
' ≥ 0 j < t
0 j = t
( ,
s#j =' ≥ 0 j < t
0 j = t
( ,
x#j =
' ≥ 0 j < t
< 0 j = t (
.
0 = −sTx#− s#Tx = −si<tx#i<t− stx#t− s#i<txi<t− s#txt. s#t= 0 xt= 0
0 = −sTx#− s#Tx = −si<tx#i<t− stx#t− s#i<txi<t. si<tx#i<t ≥ 0 stx#t > 0 s#i<txi<t ≥ 0
0 = −sTx#− s#Tx = −si<tx#i<t− stx#t− s#i<txi<t< 0.
t
n ≥ 1 n
0 ≤ y1 ≤ 1,
εyj−1≤ yj ≤ 1 − εyj−1 2 ≤ j ≤ n.
ε = 0 ε#0,12$
0 0.2 0.4 0.6 0.8 1 0
0.2 0.4 0.6 0.8 1
y1
y2
The klee−minty polytope in 2 dimensions with ε=0.2
ε = 0.2
−y1 ≤ 0, y1 ≤ 1, εyj−1− yj ≤ 0, εyj−1+ yj ≤ 1.
yi
yi
ATy =
−1 0 0 ... 0
1 0 0 ... 0
ε −1 0 ... 0
ε 1 0 ... 0
0 ... 0 ε −1
0 ... 0 ε 1
y1 y2
y3 y4 yn−1
yn
≤
0 1 0 1 0 1
.
yn
yn,
−y1≤ 0, y1≤ 1,
εyj−1− yj ≤ 0 2 ≤ j ≤ n, εyj−1+ yj ≤ 1 2 ≤ j ≤ n.
2n i=1xui,
Ax =
−1 1 ε ε 0 0 0 ... 0
0 0 −1 1 ε ε 0 ... 0
0 0 0 0
0 0 0 0 0 0 0 −1 1
xl1 xu1 xl2 xu2 xln xun
=
0 0 0 0 0 1
,
x ≥ 0.
x xu xl xu
y xl
y1 = 1 xu1
xl xu i xli xui
xui yi
εyj−1+ yj = 1 xli εyj−1− yj = 0
yi−1 ∈ [0, 1] yi yi = 1 − εyi−1
εyj−1 ≤ yj
εyj−1 ≤ 1 − εyi−1 2εyj−1 ≤ 1
ε ∈ (0,12)
yi−1 ∈ [0, 1] yi yi = εyi−1
yi ≤ 1 − εyi−1 εyi−1 ≤ 1 − εyi−1 =⇒ 2εyj−1 ≤ 1 ε ∈ (0,12)
0 ≤ y1 ≤ 1 yi−1 ∈ [0, 1] i yi ∈ [εyi−1, 1 − εyi−1] ⊆ [0, 1]
i xli xui
xli xui i
xli xui
AB AN A−1B
AB =
±1 ε 0 . . . 0
0 ±1 ε 0
0 0 0
0 0 0 ±1 ε
0 0 0 0 ±1
.
AB,i,i = 1 xli ∈ B AB,i,i = −1 xui ∈ B
A−1B diag(AB) = diag(A−1B ) AB
±1 A−TB
diag(A−TB ) = diag(AB)
AN,i,j = AB,i,j ∀i '= j AN,i,i = −AB,i,i diag(AN) = − diag(AB)
AN =
∓1 ε 0 . . . 0
0 ∓1 ε 0
0 0 0
0 0 0 ∓1 ε
0 0 0 0 ∓1
.
ATN
ATNA−TB
diag(ATNA−TB ) = diag(ANT) diag(A−TB ) = − diag(AB) diag(AB) = −1.
ATNA−TB diag(ATNA−TB ) < 0
ηN = ATNA−TB ei=
01
0i−1
−1i ηN,j>i
.
ηj < 0 i : th
N xli xui
xui xli ∈ B xui xli xui < 0 xli < 0
xB,i < 0 |{j|xuj ∈ B ∀j ≥ i}|
xuj≥i xB,i < 0
AB=
±1 ε 0 ... 0
0 ±1 ε 0 ...
0 0 0
0 0 0 ±1 ε
0 0 0 0 ±1
,
AB,i,i= −1 xli ∈ B AB,i,i= 1 xui ∈ B b = en ABxB= b = en.
AB xB,i= xli xB,i = εxB,i+1
xB,n = xln xB,n= −1
xB,i = xui xB,i = −εxB,i+1 xB,n = xun xB,n = 1 xB,i = −εn−i/n
j=i|xuj∈B−1 xB,i < 0 xuj ∈ B ∀j ≥ i
2n− 1
xB,i< 0 {j|xuj ∈ B ∀j ≥ i}| = 0 xli xui
xB = xl
xB < 0 |{j|xuj ∈ B ∀j ≥ i}| = 0 2n− 1
xui
xli i u
l u xB,i= xui l xB,i = xli (l, u, u, l, l, u) (xl1, xu2, xu3, xl4, xl5, xu6)
n = 2
(l, l)
xu1 1 u#s
(u, l), (u, u), (l, u).
n = 2 n
2n− 1
(−, ..., −, un).
l
|{j|xuj ∈ B ∀j ≥ i}|
n + 1 l
(l, ..., ln−1, un, ln+1).
n + 1 u
|{j|xuj ∈ B ∀j ≥ i}|
(l, ..., ln−1, un, un+1).
n
2n− 1 (l, ..., l, un+1)
(2n− 1) + 1 + (2n− 1) = 2n+1− 1
0 0.2 0.4 0.6 0.8 1 0
0.2 0.4 0.6 0.8 1
y1
y2
The klee−minty polytope in 2 dimensions with ε=0.2
1
2 3 4
ε = 0.2
ziwi = 0 ∀i
w = M z + q,
w ≥ 0,
z ≥ 0,
wizi = 0.
M n × n w z q
n
cTx, Ax ≥ b, x ≥ 0, bTy,
−ATy ≥ −c, y ≥ 0,
aTx = c aTx ≥ c −aTx ≥ −c
cTx
Ax − r = b x, r ≥ 0, bTy
ATy + s = c y, s ≥ 0.
r = Ax − b s = −ATy + c
x ≥ 0
y ≥ 0
s ≥ 0
r ≥ 0
riyi = 0 sixi = 0
!s r
"
= ! 0 −AT
A 0
" !x y
"
+! c
−b
"
,
!x y
"
≥ 0,
!s r
"
≥ 0,
#x y$!s r
"
= 0.
A n × m n '= m det! 0 −AT
A 0
"
= 0.
j zjwj '= 0 ziwi= 0
∀i '= j
ziwi = 0 z0w0 = 0,
! w w0
"
=!M 0
"
z +!q 0
"
+!1 1
"
z0,
! z z0
"
≥ 0,
! w w0
"
≥ 0,
q M
w0 = z0 w0z0 = 0 w0= z0
z0 = 0 w0
z0 = 0 z0 = 0
ziwi = 0,
P =#I −M −1$ −1
−1 P
w
z z0
= q,
! z z0
"
≥ 0, w ≥ 0, z0 = 0,
q M
w
z0 = −min(q) w = z0+ q w
0
z0 ∈ B
p z0
w P PB PN
q ≥ 0 w = q z0
z0 = −min(q) w w = z0+ q wi
t wt = 0 zt = 0
w
z z0
B
= PB−1q.
et t
p p = −PB−1PNet.
s s = argmin
j∈B (−xj
pj|pj < 0).
j ∈ B −xpjj < 0 pj < 0
(s, t) z0 = 0
z0 > 0 wt= 0 zt= 0
z0
z0
wi
z0
i
wi zi zi
wi
z0 = 0 z0
(s, t)
#−1 −1 −1$ x
#−10 −10 −1$ x ≥ #−10$
x ≥ 0
ziwi = 0,
w =
0 0 0 10
0 0 0 10
0 0 0 1
−10 −10 −1 0
z +
−1
−1
−1 10
,
z ≥ 0, w ≥ 0.
M =
0 0 0 10
0 0 0 10
0 0 0 1
−10 −10 −1 0
,
q =
−1
−1
−1 10
.
P
w
z z0
=
1 0 0 0 0 0 0 −10 −1 0 1 0 0 0 0 0 −10 −1
0 0 1 0 0 0 0 −1 −1
0 0 0 1 10 10 1 0 −1
w
z z0
=
−1
−1
−1 10
.
z0 = −min
−1
−1
−1 10
= 1 w = q + z0 =
0 0 0 11
w1 = w2 = w3 = 0
w1 (w2, w3, w4, z0)
w1 z0 0
z1 w1 w1 z1
PB=
0 0 0 −1 1 0 0 −1 0 1 0 −1 0 0 1 −1
,
PNe1 =
0 0 0 10
, .
p = −PB−1PNez1 =
0 0
−10 0
,
w
z z0
B
=
w2 w3 w4 z0
=
0 0 11
1
.
j pj < 0 j = 3 w4
(w2, w3, z1, z0) 1
w4 z4
PB=
0 0 0 −1 1 0 0 −1 0 1 0 −1 0 0 10 −1
,
PNez4 =
−10
−10
−1 0
,
p = −PB−1PNez4 =
0
−9
−1
−10
,
w
z z0
B
=
w2
w3 z1 z0
=
0 0
11 10
1
.
0
−9 w3 z0
M
M x = λx t x M =! 0 −AT
A 0
"
x =!x1 x2
"
M x =! 0 −AT
A 0
" !x1
x2
"
=!−ATx2 Ax1
"
.
λxT = xTM =#x1 x2$! 0 −AT
A 0
"
=#x2A −x1AT$ . λx = λ(xT)T
!−ATx2 Ax1
"
=! ATx2
−Ax1
"
.
B κ > 0
Ki Ki κ
B Ki
B Ki
f (Ki, A, b, c) Ki f (Ki, A, b, c)
B f (Ki, A, b, c)
f (B, A, b, c) Ki f (Ki, A, b, c) < f (B, A, b, c) B
f (Ki, A, b, c) f (Ki, A, b, c)
B
κ > 0
Ki 0 < |B ∩ Ki| ≤ |B| − κ |Ki| = |B|
Ki f (Ki, A, b, c)
vi
B St t = argmini(vi)
vt vt
B Ki
K1 A |A ∩ S| = |A| − 1
Kκ κ A |A ∩ K| = |A| − κ
κ B
B
f (K, A, b, c)
κ
p q
κ
2
t=1
Bin(p, t) Bin(q, t)
B |B| = p N
|N| = q
1...κ 1...κ
t antout(t) =
Bin(p, t) antin(t) = Bin(q, t)
t B Bin(p, t) Bin(q, t)
0 < t ≤ κ
κ
3
t=1
Bin(p, t) Bin(q, t).
κ (κ = 2)
p = 50 q = 50
≈ 1.5 ∗ 106 κ = 3
385 ∗ 106 κ = 5
4.5 ∗1012 κ
f (K, A, b, c) B
f (Ki, A, b, c) =
' ∞ A−1K
ib '≥ 0 cTK
iA−1K
ib A−1K
ib ≥ 0 (
.
κ A−1K
ib = xB f (Ki, A, b, c) = ∞
cTK
iA−1K
ib κ = |B|
Ki
cTxnonslack
#A I$!xnonslack
xslack
"
= b
!xnonslack
xslack
"
≥ 0.
A, b 1 : 100 A p p
2p c
−100 : −1 xslack = b
|{i|xi < 0 si< 0}|
−2
i(xi+ si)|xi < 0 si < 0
−2
i(x2i + s2i)|xi< 0 si < 0
−min(x√! i+ si)|xi < 0 si< 0
ix2i
|x| +
√!
is2i
|s| |xi< 0 si< 0
√!
ix2i+s2i
√|x|2+|s|2 |xi < 0 si < 0
f (Ki, A, b, c)
κ ≤ 3 κ
B A b
A cT
A b c
Examensarbete E361 i Optimeringslära och systemteori Juni 2012
www.math.kth.se/optsyst/