Multistage Stochastic Programming - CAE...
Transcript of Multistage Stochastic Programming - CAE...
![Page 1: Multistage Stochastic Programming - CAE Usershomepages.cae.wisc.edu/~linderot/classes/ie495/lecture21.pdf · IE 495 Lecture 21 Multistage Stochastic Programming Prof. Jeff Linderoth](https://reader031.fdocuments.net/reader031/viewer/2022022013/5b2c22127f8b9a6d188bc78b/html5/thumbnails/1.jpg)
IE 495 Lecture 21
Multistage Stochastic Programming
Prof. Jeff Linderoth
April 16, 2003
April 16, 2002 Stochastic Programming Lecture 21 Slide 1
![Page 2: Multistage Stochastic Programming - CAE Usershomepages.cae.wisc.edu/~linderot/classes/ie495/lecture21.pdf · IE 495 Lecture 21 Multistage Stochastic Programming Prof. Jeff Linderoth](https://reader031.fdocuments.net/reader031/viewer/2022022013/5b2c22127f8b9a6d188bc78b/html5/thumbnails/2.jpg)
Outline
• HW Fixes
• Multistage Stochastic Programming¦ Modeling¦ Nested Decomposition Method
April 16, 2002 Stochastic Programming Lecture 21 Slide 2
![Page 3: Multistage Stochastic Programming - CAE Usershomepages.cae.wisc.edu/~linderot/classes/ie495/lecture21.pdf · IE 495 Lecture 21 Multistage Stochastic Programming Prof. Jeff Linderoth](https://reader031.fdocuments.net/reader031/viewer/2022022013/5b2c22127f8b9a6d188bc78b/html5/thumbnails/3.jpg)
Homework Fixes
• Problem 2...¦ ΩI = ω1 × ω2|1 ≤ ω1 ≤ 5/2, 1/3 ≤ ω2 ≤ 2/3¦ ΩII = ω1 × ω2|5/2 ≤ ω1 ≤ 4, 1/3 ≤ ω2 ≤ 2/3
• Problem 3...¦ The constraints with ω should be equality constraints
• Problem 4...¦ Should be a maximization problem
Grade Data Collection
April 16, 2002 Stochastic Programming Lecture 21 Slide 3
![Page 4: Multistage Stochastic Programming - CAE Usershomepages.cae.wisc.edu/~linderot/classes/ie495/lecture21.pdf · IE 495 Lecture 21 Multistage Stochastic Programming Prof. Jeff Linderoth](https://reader031.fdocuments.net/reader031/viewer/2022022013/5b2c22127f8b9a6d188bc78b/html5/thumbnails/4.jpg)
Stochastic Integer Programming (Please Don't Call On Me!)
• How would you solve a really small instance?
• How would you solve an instance with integer variables only inthe rst stage?
• What is an optimality cut in the context of the integerL-Shaped Method?
• For what problem are the optimality cuts we showed last timevalid?
• Name one manner in which we might obtain lower and upperbounds to use in the stochastic branch and bound method
April 16, 2002 Stochastic Programming Lecture 21 Slide 4
![Page 5: Multistage Stochastic Programming - CAE Usershomepages.cae.wisc.edu/~linderot/classes/ie495/lecture21.pdf · IE 495 Lecture 21 Multistage Stochastic Programming Prof. Jeff Linderoth](https://reader031.fdocuments.net/reader031/viewer/2022022013/5b2c22127f8b9a6d188bc78b/html5/thumbnails/5.jpg)
Jacob and MIT
• We are given a universe N of investment decisions
• We have a set T = 1, 2, . . . T of investment periods
• Let ωit, i ∈ N, t ∈ T be the return of investment i ∈ N in periodt ∈ T .
• If we exceed our goal G, we get an interest rate of q that Helenand I can enjoy in our golden years
• If we don't meet the goal of G, Helen and I will have to borrowmoney at a rate of r so that Jacob can go to MIT.
• We have $b now.
April 16, 2002 Stochastic Programming Lecture 21 Slide 5
![Page 6: Multistage Stochastic Programming - CAE Usershomepages.cae.wisc.edu/~linderot/classes/ie495/lecture21.pdf · IE 495 Lecture 21 Multistage Stochastic Programming Prof. Jeff Linderoth](https://reader031.fdocuments.net/reader031/viewer/2022022013/5b2c22127f8b9a6d188bc78b/html5/thumbnails/6.jpg)
Variables
• xit, i ∈ N, t ∈ T : Amount of money to invest in vehicle i duringperiod t
• y : Excess money at the end of horizon
• w : Shortage in money at the end of the horizon
April 16, 2002 Stochastic Programming Lecture 21 Slide 6
![Page 7: Multistage Stochastic Programming - CAE Usershomepages.cae.wisc.edu/~linderot/classes/ie495/lecture21.pdf · IE 495 Lecture 21 Multistage Stochastic Programming Prof. Jeff Linderoth](https://reader031.fdocuments.net/reader031/viewer/2022022013/5b2c22127f8b9a6d188bc78b/html5/thumbnails/7.jpg)
(Deterministic) Formulation
maximizeqy + rw
subject to∑
i∈N
xi1 = b
∑
i∈N
ωitxi,t−1 =∑
i∈N
xit ∀t ∈ T \ 1
∑
i∈N
ωiT xiT − y + w = G
xit ≥ 0 ∀i ∈ N, t ∈ Ty, w ≥ 0
April 16, 2002 Stochastic Programming Lecture 21 Slide 7
![Page 8: Multistage Stochastic Programming - CAE Usershomepages.cae.wisc.edu/~linderot/classes/ie495/lecture21.pdf · IE 495 Lecture 21 Multistage Stochastic Programming Prof. Jeff Linderoth](https://reader031.fdocuments.net/reader031/viewer/2022022013/5b2c22127f8b9a6d188bc78b/html5/thumbnails/8.jpg)
One Way to Model
• One way to model this is to create copies of the variables forevery scenario at every time period.
• Then we need to enforce nonanticipativity...
• Dene Sts as the set of scenarios that are equivalent (or
indistinguishable) to scenario s at time t
April 16, 2002 Stochastic Programming Lecture 21 Slide 8
![Page 9: Multistage Stochastic Programming - CAE Usershomepages.cae.wisc.edu/~linderot/classes/ie495/lecture21.pdf · IE 495 Lecture 21 Multistage Stochastic Programming Prof. Jeff Linderoth](https://reader031.fdocuments.net/reader031/viewer/2022022013/5b2c22127f8b9a6d188bc78b/html5/thumbnails/9.jpg)
A Stochastic Version Explicit Nonanticipativity
maximize Xs∈S
ps(qys − rws)
subject to Xi∈N
xi1 = bXi∈N
ωitsxi,t−1,s =Xi∈N
xits ∀t ∈ T \ 1, ∀s ∈ SXi∈N
ωiT xiTs − ys + ws = G ∀s ∈ S
xits = xits′ ∀i ∈ N, ∀t ∈ T, ∀s ∈ S, ∀s′ ∈ Sts
xits ≥ 0 ∀i ∈ N, t ∈ T , ∀s ∈ S
ys, ws ≥ 0 ∀s ∈ S
April 16, 2002 Stochastic Programming Lecture 21 Slide 9
![Page 10: Multistage Stochastic Programming - CAE Usershomepages.cae.wisc.edu/~linderot/classes/ie495/lecture21.pdf · IE 495 Lecture 21 Multistage Stochastic Programming Prof. Jeff Linderoth](https://reader031.fdocuments.net/reader031/viewer/2022022013/5b2c22127f8b9a6d188bc78b/html5/thumbnails/10.jpg)
Another Way
• We can also enforce nonanticipativity by just not creating thewrong variables
• We have a vector of variables for each node in the tree.
• This vector corresponds to what our decision would be giventhe realizations of the random variables we have seen so far.
• Index the nodes l = 1, 2, . . .L.
• We will need to know the parent of any node.
• Let A(l) be the ancestor of node l ∈ L in the scenario tree.
April 16, 2002 Stochastic Programming Lecture 21 Slide 10
![Page 11: Multistage Stochastic Programming - CAE Usershomepages.cae.wisc.edu/~linderot/classes/ie495/lecture21.pdf · IE 495 Lecture 21 Multistage Stochastic Programming Prof. Jeff Linderoth](https://reader031.fdocuments.net/reader031/viewer/2022022013/5b2c22127f8b9a6d188bc78b/html5/thumbnails/11.jpg)
Jacob-MIT Event Tree
1
2
3
4
5
21
6
April 16, 2002 Stochastic Programming Lecture 21 Slide 11
![Page 12: Multistage Stochastic Programming - CAE Usershomepages.cae.wisc.edu/~linderot/classes/ie495/lecture21.pdf · IE 495 Lecture 21 Multistage Stochastic Programming Prof. Jeff Linderoth](https://reader031.fdocuments.net/reader031/viewer/2022022013/5b2c22127f8b9a6d188bc78b/html5/thumbnails/12.jpg)
Another Multistage formulation
maximize ∑
s∈S
ps(qys − rws)
subject to∑
i∈N
xi1 = b
∑
i∈N
ωilxi,A(l) =∑
i∈N
xil ∀l ∈ L \ 1
∑
i∈N
ωiA(s)xiA(s) − ys + ws = G ∀s ∈ S
xil ≥ 0 ∀i ∈ N, ∀l ∈ Lys, ws ≥ 0 ∀s ∈ S
April 16, 2002 Stochastic Programming Lecture 21 Slide 12
![Page 13: Multistage Stochastic Programming - CAE Usershomepages.cae.wisc.edu/~linderot/classes/ie495/lecture21.pdf · IE 495 Lecture 21 Multistage Stochastic Programming Prof. Jeff Linderoth](https://reader031.fdocuments.net/reader031/viewer/2022022013/5b2c22127f8b9a6d188bc78b/html5/thumbnails/13.jpg)
Multistage Stochastic LPImplicit Nonanticipativity
minx1
c1x1 + Eω2
c2x2 + Eω3|ω2
minx3
+ · · ·+ EωT |ω2,...ωT−1
minxT
cT xT
A1x1 = h1
A2(ω2)x1 +W2x2(ω2) = h2(ω2)
A(ω3)x2(ω2) +W3x3(ω3) = h3(ω3)
. . ....
A(ωT )xT−1(ωT−1) +WT xT (ωT ) = hT (ωT )
x1 ≥ 0
x2(ω2) ≥ 0
. . . ≥ 0
xT (ωT ) ≥ 0
April 16, 2002 Stochastic Programming Lecture 21 Slide 13
![Page 14: Multistage Stochastic Programming - CAE Usershomepages.cae.wisc.edu/~linderot/classes/ie495/lecture21.pdf · IE 495 Lecture 21 Multistage Stochastic Programming Prof. Jeff Linderoth](https://reader031.fdocuments.net/reader031/viewer/2022022013/5b2c22127f8b9a6d188bc78b/html5/thumbnails/14.jpg)
Nested Decomposition Procedure
• A (The?) method for solving multistage stochastic programs
• Just like a recursive version of the L-Shaped Method
• Parent nodes send proposals for solutions to their childrennodes
• Child nodes send cuts to their parents
• There are different sequence procedures that tell in whichorder the problems corresponding to different nodes in thescenario tree are solved.
April 16, 2002 Stochastic Programming Lecture 21 Slide 14
![Page 15: Multistage Stochastic Programming - CAE Usershomepages.cae.wisc.edu/~linderot/classes/ie495/lecture21.pdf · IE 495 Lecture 21 Multistage Stochastic Programming Prof. Jeff Linderoth](https://reader031.fdocuments.net/reader031/viewer/2022022013/5b2c22127f8b9a6d188bc78b/html5/thumbnails/15.jpg)
Nested Decomposition
• Fast Forward-Fast Back¦ Most common sequencing procedure¦ Do all nodes at a time period¦ If you nd a problem infeasible, create the feasibility cut
and reverse direction¦ If problem has (relatively) complete recourse, it amounts to
breadth-rst search of on the scenario tree
April 16, 2002 Stochastic Programming Lecture 21 Slide 15
![Page 16: Multistage Stochastic Programming - CAE Usershomepages.cae.wisc.edu/~linderot/classes/ie495/lecture21.pdf · IE 495 Lecture 21 Multistage Stochastic Programming Prof. Jeff Linderoth](https://reader031.fdocuments.net/reader031/viewer/2022022013/5b2c22127f8b9a6d188bc78b/html5/thumbnails/16.jpg)
Nested Decomposition
• Cuts have the form (θ ≥ e− Ex), where
e =∑
k∈D(pk|pj)
[πT
k hk + σTk ek
]
E =∑
k∈D(pk|pj)πT
k Tk
April 16, 2002 Stochastic Programming Lecture 21 Slide 16
![Page 17: Multistage Stochastic Programming - CAE Usershomepages.cae.wisc.edu/~linderot/classes/ie495/lecture21.pdf · IE 495 Lecture 21 Multistage Stochastic Programming Prof. Jeff Linderoth](https://reader031.fdocuments.net/reader031/viewer/2022022013/5b2c22127f8b9a6d188bc78b/html5/thumbnails/17.jpg)
Hot! Hot! Hot! From B&L Section 7.1
• Planning Production of Air Conditioners (ACs) for next threemonths
• In each month we can produce at most 200 ACs for $100 each• We can use overtime workers if the demand is heavy, but then
the cost per unit is $300• The demand in the rst month is 100• The demand in the second and third months is random. With
50% probability it will be either 100 or 300.• We can store ACs at a cost of $50/month• We must meet all demand• No salvage/disposal costs at the end of the horizon
April 16, 2002 Stochastic Programming Lecture 21 Slide 17
![Page 18: Multistage Stochastic Programming - CAE Usershomepages.cae.wisc.edu/~linderot/classes/ie495/lecture21.pdf · IE 495 Lecture 21 Multistage Stochastic Programming Prof. Jeff Linderoth](https://reader031.fdocuments.net/reader031/viewer/2022022013/5b2c22127f8b9a6d188bc78b/html5/thumbnails/18.jpg)
Hot! Hot! Hot! Model
Variables
• xtNumber of ACs to produce (regular) in time t
• wtNumber of ACs to produce (overtime) in time t
• ytNumber of ACs to carry over in inventory at the end of timet
• dtDemand for ACs in time t
April 16, 2002 Stochastic Programming Lecture 21 Slide 18
![Page 19: Multistage Stochastic Programming - CAE Usershomepages.cae.wisc.edu/~linderot/classes/ie495/lecture21.pdf · IE 495 Lecture 21 Multistage Stochastic Programming Prof. Jeff Linderoth](https://reader031.fdocuments.net/reader031/viewer/2022022013/5b2c22127f8b9a6d188bc78b/html5/thumbnails/19.jpg)
Model at node l
min xt + 3wt + 0.5yt + θl
subject to
xt ≤ 2
yt−1 + xt + wt − yt = dl
θl ≥ ek − Ek(x,w, y)T ∀cuts at this nodeAll vars ≥ 0
April 16, 2002 Stochastic Programming Lecture 21 Slide 19
![Page 20: Multistage Stochastic Programming - CAE Usershomepages.cae.wisc.edu/~linderot/classes/ie495/lecture21.pdf · IE 495 Lecture 21 Multistage Stochastic Programming Prof. Jeff Linderoth](https://reader031.fdocuments.net/reader031/viewer/2022022013/5b2c22127f8b9a6d188bc78b/html5/thumbnails/20.jpg)
Scenario Tree
d=100
d=100
d=300
d=300
d=100
d=300
0
1
2
3
4
5
6
• We're going to do a couple iterations of Nested Decomposition.
• Pay Attention, it will probably be on the nal
April 16, 2002 Stochastic Programming Lecture 21 Slide 20
![Page 21: Multistage Stochastic Programming - CAE Usershomepages.cae.wisc.edu/~linderot/classes/ie495/lecture21.pdf · IE 495 Lecture 21 Multistage Stochastic Programming Prof. Jeff Linderoth](https://reader031.fdocuments.net/reader031/viewer/2022022013/5b2c22127f8b9a6d188bc78b/html5/thumbnails/21.jpg)
April 23 Presentations...
(Only going to do ve people, since you will have to ll outevaluations on that day too...)
• Banu Gemici
• Rui Kang
• Jen Rogers
• Jerry Shen
• Clara Novoa
• Next timeProbabilistic Constraints
April 16, 2002 Stochastic Programming Lecture 21 Slide 21