Title: MS
1MSE 348
- The L-Shaped Method
- Theory and Example
- 2/5/04 Lecture
2Review Dantzig-Wolfe (DW) Decomposition
- We recognize delayed column generation as the
centerpiece of the decomposition algorithm - Even though the master problem can have a huge
number of columns, a column is generated only
after it is found to have a negative reduced cost
and is about to enter the basis - The subproblems are smaller LP problems that are
employed as an economical search method for
discovering columns with negative reduced costs - A variant can be used whereby all columns that
have been generated in the past are retained
3Review Benders Decomposition
- Benders decomposition uses delayed constraint
generation and the cutting plane method, and
should be contrasted with DW that uses column
generation - Benders is essentially the same as DW applied to
the dual - Similarly as for DW, we have the option of
discarding all or some of the constraints in the
relaxed primal that have become inactive
4Review Two-Stage Problemwith Fixed Recourse
As defined by Dantzig (1955) and Beale (1955)
min z cTxEwmin q(w)Ty(w)
Scenario
s.t. Axb
T(w)xWy(w)h(w)
Technology Recourse matrices
y(w) 0
x 0
In extensive form (EF) for a discrete finite
set of scenarios
min cTx?kpkqkTyk
k1,,K scenarios
s.t. Axb
TkxWykhk
Technology Recourse matrices
yk 0
x 0
5Why the L-Shaped Method?
Block structure of the 2-stage extensive form
A
T1
W
T2
Hence the name L-shaped method!
W
TK
W
AT
T1
T2
TK
Block structure of the 2-stage dual
WT
WT
WT
6Connection betweenBenders/DW and the L-Shaped
Method
- Given this block structure, it seems natural to
exploit the dual structure by performing a DW
(1960) decomposition (inner linearization) of the
dual - or a Benders (1962) decomposition (outer
linearization) of the primal - The method has been extended in stochastic
programming to take care of feasibility questions
and is known as Van Slyke and Wets (1969)
L-shaped method - It is a cutting plane technique
7Comments on the L-Shaped Method
- The method consists of solving an approximation
of the recourse function - by using an outer linearization of Q. Two types
of constraints are sequentially - added
- (i) feasibility cuts determining x Q(x) lt
8 and - (ii) optimality cuts that are linear
approximations to Q on its - domain of finiteness
- Observe that solving P1 is equivalent to
solving P2
P1
P2
min cT x Q(x)
min cT x ?
s.t. x ? K1 n K2
Q(x) ?
K1 x Axb, x0
s.t. x ? K1 n K2
K2 x Q(x) lt 8
8The L-Shaped Algorithm
Step 0. Set r s v 0 (these are indices
initially set at zero)
Step 1. Set v v1 (v is the iteration index)
and solve the LP (1) - (3)
min z cTx ?
(1)
s.t. Axb
Dlx dl
(2)
l1,,r feasibility cuts
Gsx ? gs
(3)
l1,,s optimality cuts
x 0 and ? is a free real number
Let (xv, ?v) be an optimal solution. Detail for
Initialization if no constraint (3) is present,
?v is set equal to -8 and is not
considered in the computation of xv.
9The L-Shaped Algorithm (Contd)
Step 2. For k 1, , K solve the LP (Phase I
Simplex)
min wk eTu eTu-
(4)
?! these are obviously ?
s.t. W y I u- I u- hk - Tk xv
(5)
Identity matrix
y 0, u 0, u- 0
where eT (1, ,1) until for some k, the
optimal value wk gt 0
In this case, let sv be the associated simplex
multipliers and define
(6)
Dr1 (sv)T Tk
and
(7)
dr1 (sv)T hk
to generate a feasibility cut of type (2). Set r
r 1, add to the constraint set (2), and
return to Step 1.
If for all k, wk 0, go to step 3
10The L-Shaped Algorithm (Contd)
Step 3. For k 1, , K solve the LP
min wk qkT y
(8)
s.t. W y hk - Tk xv
y 0
Let ?kv be the simplex multipliers associated
with the optimal solution of problem k of type
(8). Define
Gs1 ?kpk (?kv)T Tk
(9)
and
gs1 ?kpk (?kv)T hk
(10)
Let wv gs1 Gs1xv
If ?v wv, stop as xv is an optimal solution.
Otherwise, set s s 1, add to the constraint
set (3) and return to Step 1.
11Example
min z 0 Q(x,?k) (we assume cT 0)
? - x if x ?
where Q(x,?)
x - ? if x ?
We also assume 0 x 10
1 w.p. 1/3
and
?
2 w.p. 1/3
4 w.p. 1/3
Solve this example
(i) directly
(ii) by using the L-shaped algorithm
12Direct Solution
Q(x,?k)
?11
?22
?34
x
w.p. 1/3 1/3 1/3
Q(x) ?pk Q(x,?k) can be constructed
directly
7/3
Slope 1
5/3
4/3
1
1
2
4
x
13Using the L-Shaped Algorithm
- There are no feasibility cuts as K1 R (there
is no Axb constraint) - and K2 R (Q(x) is defined
everywhere)
- We can reformulate this problem to fit the
notation previously used - Each subproblem can be formulated as
min y1
s.t. y1 y2 ? - x
y1 y3 - ? x
which is equivalent to
min wk qkT y
? -?
1 -1
1 -1 0 1 0 -1
hk
Tk
,
,
s.t. W y hk - Tk xv
W
with
y 0
14Iteration by Iteration
Iteration 1
We solve min ?
s.t. 0 x 10
Since at initialization, we assume ?1 -8
Since x is undetermined, we assume we start at
x10
Theres no feasibility issue, we go to Step 3 of
the algorithm
Simplex multipliers are the same for all three
scenarios
We find G1 ?k ? 1 0 1
1 -1
g1 ?k ? 1 0 7/3
?k -?k
w1 g1 G1x1 1 and w1 gt ?1 and (x1 0, ?1
-8) is not optimal
We add the cut of type (3) ? 7/3 - x
15Graphically
Q(x)
7/3
5/3
4/3
1
1
2
4
x
First Optimality Cut
16Iteration by Iteration (Contd)
Iteration 2
We solve min ?
s.t. ? 7/3 x 0 x 10
We find (x2 10, ?2 -23/3)
Theres no feasibility issue, we go to Step 3 of
the algorithm
Simplex multipliers are the same for all three
scenarios
We find G2 ?k ? 0 1 -1
1 -1
g2 ?k ? 0 1 -7/3
?k -?k
w2 g2 G2x2 23/3 and w2 gt ?2 and (x2 10,
?2 -23/3) is not optimal
We add the optimality cut ? x 7/3
17Graphically
Q(x)
7/3
5/3
Second Optimality Cut
4/3
1
1
2
4
x
First Optimality Cut
18Iteration by Iteration (Contd)
Iteration 3
We solve min ?
s.t. ? 7/3 x ? x - 7/3 0 x
10
Simplex multipliers are NOT the same for all
three scenarios
We find (x3 7/3, ?3 0)
We find G3 ? 0 1 ? 0 1
? 1 0 -1/3
1 -1
1 -1
1 -1
g3 1/3
w3 g3 G3x3 10/9 and w3 gt ?3 and (x3 7/3,
?3 0) is not optimal
We add the optimality cut ? (x1)/3
19Iteration by Iteration (Contd)
Iteration 4
We find (x4 3/2, ?4 5/6) which is not optimal
We add the optimality cut ? (5-x)/3
Iteration 5
We find (x5 2, ?5 1) which is OPTIMAL
20Graphically
(x2, ?51) OPTIMAL
OC 2
Q(x)
7/3
OC 3
5/3
4/3
1
Optimality Cut (OC)
OC 4
1
2
4
x
OC 1