An Extension of the Multicut L-Shaped Method Svyatoslav Trukhanov Texas-2005, College Station

advertisement
Outline
An Extension of the Multicut L-Shaped Method
Svyatoslav Trukhanov
Industrial Engineering
Texas A&M University
College Station, TX
Texas-2005, College Station
S. Trukhanov
An Extension of the Multicut L-Shaped Method
Outline
Outline
1
Problem formulation
2
Multicut L-shaped with partial cut aggregation
3
Results
S. Trukhanov
An Extension of the Multicut L-Shaped Method
Problem formulation
Multicut L-shaped with partial cut aggregation
Results
Two-stage stochastic linear program with recourse
min c T x +
|S|
X
ps qsT ys
s=1
s.t. Ax = b
Ts x + Ws y = rs , ∀s = 1, · · · , |S|
x ≥ 0, ys ≥ 0, ∀s = 1, · · · , |S|
where x ∈ Rn1 , ys ∈ Rn2 are decision variables,
c ∈ Rn1 , qs ∈ Rn2 , b ∈ Rm1 , rs ∈ Rm2 are given vectors and
A ∈ Rm1 xn1 , Ts ∈ Rm2 xn1 , Ws ∈ Rm2 xn2 are given matrices. S is
the set of possible outcomes (scenarios) and ps is the probability of
scenario s.
S. Trukhanov
An Extension of the Multicut L-Shaped Method
Problem formulation
Multicut L-shaped with partial cut aggregation
Results
L-shaped method for SLP
Algorithm steps:
Initialization: k = 0, x 0
Solve subproblem
min qsT y
s.t. Ws y = rs − Ts x k
y ≥ 0, for each scenario s ∈ S, obtain πks (µk )
Compute Bender’s cut coefficients:
feasible case αk =
P
s∈S
T
ps πks
rs , βkT =
P
s∈S
T
ps πks
Ts
T
T
infeasible case αk = µT
k rs , βk = µk Ts ;
S. Trukhanov
An Extension of the Multicut L-Shaped Method
Problem formulation
Multicut L-shaped with partial cut aggregation
Results
L-shaped method for SLP (cont.)
Master problem
Add cut to master problem. If subproblem was feasible then
cut is βkT x + η ≥ αk - optimality cut, otherwise βkT x ≥ αk feasibility cut;
Solve the master problem, to get (x k+1 , η k+1 );
update lower bound to optimal objective value of master
problem.
Check stopping criterion: if not satisfied then k = k + 1, go
to step 2.
Output the results.
S. Trukhanov
An Extension of the Multicut L-Shaped Method
Problem formulation
Multicut L-shaped with partial cut aggregation
Results
Multicut L-shaped method for SLP
Differences from L-shape:
1 Master problem:
introduce additional variables ηs ∀s ∈ S
objective
X
min c T x +
ηs
s∈S
2
Each iteration, after solving subproblems:
all subproblems are feasible - add family of cuts:
T
βks
x + ηs ≤ αks , where βks = ps (πsk )T Ts , αks = ps (πsk )T rs
otherwise - add feasibility cut exactly as L-shape method
S. Trukhanov
An Extension of the Multicut L-Shaped Method
Problem formulation
Multicut L-shaped with partial cut aggregation
Results
Method comparison
Multicut L-shaped
L-shaped
Information loss due to
cut aggregation.
All possible information is
used.
Small master problem
(n1 + 1)x(m1 + k) at
iteration k
Huge master problem
(n1 + |S|)x(m1 + k|S|) at
iteration k
S. Trukhanov
An Extension of the Multicut L-Shaped Method
Problem formulation
Multicut L-shaped with partial cut aggregation
Results
Method comparison
L-shaped
Multicut L-shaped
Information loss due to
cut aggregation.
All possible information is
used.
Small master problem
(n1 + 1)x(m1 + k) at
iteration k
Huge master problem
(n1 + |S|)x(m1 + k|S|) at
iteration k
S. Trukhanov
An Extension of the Multicut L-Shaped Method
Problem formulation
Multicut L-shaped with partial cut aggregation
Results
Main rules
Decrease the information losses
Avoid master problem size growth
S. Trukhanov
An Extension of the Multicut L-Shaped Method
Problem formulation
Multicut L-shaped with partial cut aggregation
Results
Main rules
Decrease the information losses
⇒ add more then one cut each iteration
Avoid master problem size growth
S. Trukhanov
An Extension of the Multicut L-Shaped Method
Problem formulation
Multicut L-shaped with partial cut aggregation
Results
Main rules
Decrease the information losses
⇒ add more then one cut each iteration
Avoid master problem size growth
⇒ number of cuts added each iteration must be small
S. Trukhanov
An Extension of the Multicut L-Shaped Method
Problem formulation
Multicut L-shaped with partial cut aggregation
Results
Algorithm
Differences from L-shape:
1
2
Initialization: create scenario space partition:
S = S1 ∪ S2 ∪ · · · ∪ SD , Si ∩ Sj = ∅, i 6= j
Master problem:
introduce additional variables ηd ∀d = 1, 2, · · · , D
objective
D
P
min c T x +
ηd
d=1
3
Each iteration, after solving subproblems:
all subproblems are feasible - add family of aggregated cuts:
T
βkd
x +P
ηd ≤ αkd ∀d = 1, 2, · · ·P
, D, where
βkd =
ps (πsk )T Ts , αkd =
ps (πsk )T rs
s∈Sd
s∈Sd
otherwise - add feasibility cut exactly as L-shape method
S. Trukhanov
An Extension of the Multicut L-Shaped Method
Problem formulation
Multicut L-shaped with partial cut aggregation
Results
Algorithm
Differences from L-shape:
1
2
Initialization: create scenario space partition:
S = S1 ∪ S2 ∪ · · · ∪ SD , Si ∩ Sj = ∅, i 6= j
Master problem:
introduce additional variables ηd ∀d = 1, 2, · · · , D
objective
D
P
min c T x +
ηd
d=1
3
Each iteration, after solving subproblems:
all subproblems are feasible - add family of aggregated cuts:
T
βkd
x +P
ηd ≤ αkd ∀d = 1, 2, · · ·P
, D, where
βkd =
ps (πsk )T Ts , αkd =
ps (πsk )T rs
s∈Sd
s∈Sd
otherwise - add feasibility cut exactly as L-shape method
S. Trukhanov
An Extension of the Multicut L-Shaped Method
Problem formulation
Multicut L-shaped with partial cut aggregation
Results
Algorithm
Differences from L-shape:
1
2
Initialization: create scenario space partition:
S = S1 ∪ S2 ∪ · · · ∪ SD , Si ∩ Sj = ∅, i 6= j
Master problem:
introduce additional variables ηd ∀d = 1, 2, · · · , D
objective
D
P
min c T x +
ηd
d=1
3
Each iteration, after solving subproblems:
all subproblems are feasible - add family of aggregated cuts:
T
βkd
x +P
ηd ≤ αkd ∀d = 1, 2, · · ·P
, D, where
βkd =
ps (πsk )T Ts , αkd =
ps (πsk )T rs
s∈Sd
s∈Sd
otherwise - add feasibility cut exactly as L-shape method
S. Trukhanov
An Extension of the Multicut L-Shaped Method
Problem formulation
Multicut L-shaped with partial cut aggregation
Results
Notes
D = 1 – L-shaped algorithm (full aggregation)
D = |S| – Multicut L-shaped algorithm (no aggregation)
How to choose D?
How to partition S?
S. Trukhanov
An Extension of the Multicut L-Shaped Method
Problem formulation
Multicut L-shaped with partial cut aggregation
Results
Notes
D = 1 – L-shaped algorithm (full aggregation)
D = |S| – Multicut L-shaped algorithm (no aggregation)
How to choose D?
How to partition S?
S. Trukhanov
An Extension of the Multicut L-Shaped Method
Problem formulation
Multicut L-shaped with partial cut aggregation
Results
Notes
D = 1 – L-shaped algorithm (full aggregation)
D = |S| – Multicut L-shaped algorithm (no aggregation)
How to choose D?
How to partition S?
S. Trukhanov
An Extension of the Multicut L-Shaped Method
Problem formulation
Multicut L-shaped with partial cut aggregation
Results
Notes
D = 1 – L-shaped algorithm (full aggregation)
D = |S| – Multicut L-shaped algorithm (no aggregation)
How to choose D?
How to partition S?
S. Trukhanov
An Extension of the Multicut L-Shaped Method
Problem formulation
Multicut L-shaped with partial cut aggregation
Results
Partition, independent random variable case
Scenario s = (s (1) , s (2) , · · · , s (t) )
Fix 0 ≤ l ≤ t
Aggregation criterion:
(j)
(j)
s1 ∈ Si and s2 ∈ Si ⇐⇒ ∀ 0 ≤ j ≤ l s1 = s2
Number of cuts: D =
l
Q
|s̃ (j) |
j=0
S. Trukhanov
An Extension of the Multicut L-Shaped Method
Problem formulation
Multicut L-shaped with partial cut aggregation
Results
Partition, independent random variable case
Scenario s = (s (1) , s (2) , · · · , s (t) )
Fix 0 ≤ l ≤ t
Aggregation criterion:
(j)
(j)
s1 ∈ Si and s2 ∈ Si ⇐⇒ ∀ 0 ≤ j ≤ l s1 = s2
Number of cuts: D =
l
Q
|s̃ (j) |
j=0
S. Trukhanov
An Extension of the Multicut L-Shaped Method
Problem formulation
Multicut L-shaped with partial cut aggregation
Results
Partition, independent random variable case
Scenario s = (s (1) , s (2) , · · · , s (t) )
Fix 0 ≤ l ≤ t
Aggregation criterion:
(j)
(j)
s1 ∈ Si and s2 ∈ Si ⇐⇒ ∀ 0 ≤ j ≤ l s1 = s2
Number of cuts: D =
l
Q
|s̃ (j) |
j=0
S. Trukhanov
An Extension of the Multicut L-Shaped Method
Problem formulation
Multicut L-shaped with partial cut aggregation
Results
Partition, independent random variable case
Scenario s = (s (1) , s (2) , · · · , s (t) )
Fix 0 ≤ l ≤ t
Aggregation criterion:
(j)
(j)
s1 ∈ Si and s2 ∈ Si ⇐⇒ ∀ 0 ≤ j ≤ l s1 = s2
Number of cuts: D =
l
Q
|s̃ (j) |
j=0
l = 0 ⇒ D = 1 ⇒ L-shaped
l = t ⇒ D = |S| ⇒ Multicut L-shaped
S. Trukhanov
An Extension of the Multicut L-Shaped Method
Problem formulation
Multicut L-shaped with partial cut aggregation
Results
Numerical results
Problem 4node from SLPLIB (A. Felt,
http://www.uwsp.edu/math/afelt/slptestset/download.html) with
12 independent r.v. and 8192 scenarios.
Table: Results of experiments, problem 4node
Level
0
1
2
3
4
5
6
Num. of cuts
1
2
8
16
32
64
128
S. Trukhanov
Major iter.
243
114
76
66
60
51
44
Runtime
145.22
66.53
43.39
39.39
40.94
42.11
45.78
An Extension of the Multicut L-Shaped Method
Problem formulation
Multicut L-shaped with partial cut aggregation
Results
Number of iterations plot
S. Trukhanov
An Extension of the Multicut L-Shaped Method
Problem formulation
Multicut L-shaped with partial cut aggregation
Results
Runtime plot
S. Trukhanov
An Extension of the Multicut L-Shaped Method
Problem formulation
Multicut L-shaped with partial cut aggregation
Results
Upper and lower bounds plot
S. Trukhanov
An Extension of the Multicut L-Shaped Method
Problem formulation
Multicut L-shaped with partial cut aggregation
Results
Conclusions
Multicut L-shaped algorithm with cut aggregation was
developed
General framework for cut aggregation was implemented
One of the aggregation criteria was implemented
Numerical results were obtained
S. Trukhanov
An Extension of the Multicut L-Shaped Method
Problem formulation
Multicut L-shaped with partial cut aggregation
Results
Future works
More numerical experiments
Rigorous proof of algorithm convergence
Other aggregation criteria
Adaptive aggregation (Ntaimo, Schaefer)
S. Trukhanov
An Extension of the Multicut L-Shaped Method
Problem formulation
Multicut L-shaped with partial cut aggregation
Results
Questions?
S. Trukhanov
An Extension of the Multicut L-Shaped Method
Download