Stochastic Programming Modeling

Stochastic Programming Modeling

Stochastic Programming Modeling IMA New Directions Short Course on Mathematical Optimization Jeff Linderoth Department of Industrial and Systems Engineering University of Wisconsin-Madison August 8, 2016 Jeff Linderoth (UW-Madison) Stochastic Programming Modeling Lecture Notes 1 / 77 Week #2 The first week focused on theory and algorithms for continuous optimization problems where problem parameters are known with certainty. This week we will focus on two different topics: 1 Stochastic Programming: Used for Optimization under data uncertainty 2 Integer Programming: Used for modeling discrete decisions Jeff Linderoth (UW-Madison) Stochastic Programming Modeling Lecture Notes 2 / 77 Stochastic Programming What is it?/Why Should we Do it? A Newsvendor Recourse Models and Extensive Form How to implement in a modeling language Today's Outline About This Week About Us About You Jeff Linderoth (UW-Madison) Stochastic Programming Modeling Lecture Notes 3 / 77 Today's Outline About This Week About Us About You Stochastic Programming What is it?/Why Should we Do it? A Newsvendor Recourse Models and Extensive Form How to implement in a modeling language Jeff Linderoth (UW-Madison) Stochastic Programming Modeling Lecture Notes 3 / 77 This Week Resources Our exercises will be done with AMPL:AMathematicalProgramming Language We added you all to a Dropbox: There you can get AMPL, templates for the exercises, and the lecture slides. Jeff Linderoth (UW-Madison) Stochastic Programming Modeling Lecture Notes 4 / 77 This Week The Dream Team Jeff Linderoth (UW-Madison) Stochastic Programming Modeling Lecture Notes 5 / 77 This Week The Dream Team Jeff Linderoth (UW-Madison) Stochastic Programming Modeling Lecture Notes 5 / 77 This Week Optimization \Dream Team" Monday: Dave Morton, Northwestern, Sample Average Approximation Tuesday: Shabbir Ahmed, Georgia Tech, Multistage Stochastic Programming Wednesday: Robert Hildebrand, IBM, Lenstra's Algorithm Thursday: Santanu Dey, Georgia Tech, Cutting Plane Theory Friday: Dan Bienstock, Columbia, Mixed Integer Nonlinear Programming Jeff Linderoth (UW-Madison) Stochastic Programming Modeling Lecture Notes 6 / 77 This Week Week Overview|Social Events! Monday: Stub and Herb's Wednesday: Twins Game Thursday: Surly Brewing Company Jeff Linderoth (UW-Madison) Stochastic Programming Modeling Lecture Notes 7 / 77 Integer Programming ?: Classic reference. ?: A more gentle treatment ?: Very nice geometric intuition ?: My (new) favorite book This Week Recommended Texts Stochastic Programming ?: Very good. Requires strong math background ?: A more gentle introduction, but still covers the whole field quite well. ?: FREE!. It's in the Dropbox Jeff Linderoth (UW-Madison) Stochastic Programming Modeling Lecture Notes 8 / 77 This Week Recommended Texts Stochastic Programming ?: Very good. Requires strong math background ?: A more gentle introduction, but still covers the whole field quite well. ?: FREE!. It's in the Dropbox Integer Programming ?: Classic reference. ?: A more gentle treatment ?: Very nice geometric intuition ?: My (new) favorite book Jeff Linderoth (UW-Madison) Stochastic Programming Modeling Lecture Notes 8 / 77 This Week Course Level/Expectations We will use AMPL (www.ampl.com) to solve problems and prototype algorithms: If nothing else, you can get to learn a new language for modeling and solving mathematical optimization problems We will do a few proofs, but we will not require significant mathematical sophistication beyond a reasonable understanding of LP duality We assume some basic background in probability theory (no measure theory required) { what is a random variable, expected value, law of large numbers, some basic statistics (CLT) We will expect some basic linear algebra knowledge Jeff Linderoth (UW-Madison) Stochastic Programming Modeling Lecture Notes 9 / 77 This Week About us... B.S. (G.E.), UIUC, 1992. M.S., OR, GA Tech, 1994. Ph.D., GA Tech, 1998 1998-2000 : MCS, ANL 2000-2002 : Axioma, Inc. 2002-2007 : Lehigh University Research Areas: Large Scale Optimization, High Performance Computing. Married. One child, Jacob. Now 13. He is awesome. Hobbies: Golf, Integer Programming, Human Pyramids. Jeff Linderoth (UW-Madison) Stochastic Programming Modeling Lecture Notes 10 / 77 This Week About Jim... B.S. (I.E.), UW-Madison, 2001 M.S., OR, GA Tech, 2004. Ph.D., GA Tech, 2007 2007-2008 : IBM 2008-2016 : UW-Madison Research Areas: Discrete Optimization, Stochastic Optimization, Applications Married. Three children: Rowan, Camerson, Remy. They are awesome Hobbies: Boxing, Integer Programming, Human Pyramids. Jeff Linderoth (UW-Madison) Stochastic Programming Modeling Lecture Notes 11 / 77 This Week Picture Time Jeff Linderoth (UW-Madison) Stochastic Programming Modeling Lecture Notes 12 / 77 This Week About You { Quiz #1! 1 Name 2 Nationality 3 Education Background. 4 Research Interests/Thesis Topic? 5 (Optimization) Modeling Languages you know: (AMPL, GAMS, Mosel, CVX, ::: 6 Programming Languages you know: (C, Python, Matlab, Julia, FORTRAN, Java, :::) 7 Anything specific you hope to accomplish/learn this week? 8 One interesting fact about yourself you think we should know. 9 Do you like human pyramids? :-) Jeff Linderoth (UW-Madison) Stochastic Programming Modeling Lecture Notes 13 / 77 A. Planning. Mathematical Programming (Optimization) is about decision making, or planning. Stochastic Programming is about decision making under uncertainty. View it as \Mathematical Programming with random parameters" Introduction to SP Background Stochastic Programming $64 Question What does \Programming" mean in \Mathematical Programming", \Linear Programming", etc...? Jeff Linderoth (UW-Madison) Stochastic Programming Modeling Lecture Notes 14 / 77 Introduction to SP Background Stochastic Programming $64 Question What does \Programming" mean in \Mathematical Programming", \Linear Programming", etc...? A. Planning. Mathematical Programming (Optimization) is about decision making, or planning. Stochastic Programming is about decision making under uncertainty. View it as \Mathematical Programming with random parameters" Jeff Linderoth (UW-Madison) Stochastic Programming Modeling Lecture Notes 14 / 77 Introduction to SP Background Dealing With Randomness In most applications of optimization, randomness is ignored Otherwise, it is dealt with via: Sensitivity analysis For large-scale problems, sensitivity analysis is useless \Careful" determination of instance parameters No matter how careful you are, you can't get rid of inherent randomness. Stochastic Programming is the way!1 1This is not necessarily true, but we will assume it to be so for the next two days Jeff Linderoth (UW-Madison) Stochastic Programming Modeling Lecture Notes 15 / 77 Newsvendor Profit ( (s − c)x if x ≤ D F (x; D) = sD + r(x − D) − cx if x > D Introduction to SP Newsvendor Hot Off the Presses A paperboy (newsvendor) needs to decide how many papers to buy in order to maximize his profit. He doesn't know at the beginning of the day how many papers he can sell (his demand). Each newspaper costs c. He can sell each newspaper for a price of s. He can return each unsold newspaper at the end of the day for r. (Note that s > c > r). The demand (unknown when we purchase papers) is D Jeff Linderoth (UW-Madison) Stochastic Programming Modeling Lecture Notes 16 / 77 Introduction to SP Newsvendor Hot Off the Presses A paperboy (newsvendor) needs to decide how many papers to buy in order to maximize his profit. He doesn't know at the beginning of the day how many papers he can sell (his demand). Each newspaper costs c. He can sell each newspaper for a price of s. He can return each unsold newspaper at the end of the day for r. (Note that s > c > r). The demand (unknown when we purchase papers) is D Newsvendor Profit ( (s − c)x if x ≤ D F (x; D) = sD + r(x − D) − cx if x > D Jeff Linderoth (UW-Madison) Stochastic Programming Modeling Lecture Notes 16 / 77 Introduction to SP Newsvendor Pictures of Function Marginal profit: (s − c) if can sell all: x ≤ D Marginal loss: (c − r) if have to salvage F (x; D) x x = D Jeff Linderoth (UW-Madison) Stochastic Programming Modeling Lecture Notes 17 / 77 This problem does not make sense! You can't optimize something random! http://en.wikipedia.org/wiki/ Chewbacca_defense Introduction to SP Newsvendor What Should We Do? Optimize, silly: max F (x; D): x≥0 Jeff Linderoth (UW-Madison) Stochastic Programming Modeling Lecture Notes 18 / 77 Introduction to SP Newsvendor What Should We Do? Optimize, silly: max F (x; D): x≥0 This problem does not make sense! You can't optimize something random! http://en.wikipedia.org/wiki/ Chewbacca_defense Jeff Linderoth (UW-Madison) Stochastic Programming Modeling Lecture Notes 18 / 77 Introduction to SP Newsvendor The Function is \Random" F (x; D1) F (x; D2) x x x = D1 x = D2 One x can't simultaneously optimize both functions Jeff Linderoth (UW-Madison) Stochastic Programming Modeling Lecture Notes 19 / 77 Introduction to SP Newsvendor (Silly) Idea #1 def Suppose D is a random variable with cdf H(t) = P(D ≤ t) \Silly" Idea: Plan for Average Case def Let µ = E[D] be the mean value of demand In this case: (proof by picture) max F (x; µ) ) x∗ = µ. x≥0 In this case, the optimal policy is to purchase µ We will see that this can be far from optimal when your problem takes more uncertainty into account Jeff Linderoth (UW-Madison) Stochastic Programming Modeling Lecture Notes 20 / 77 Note that we can write: F (x; D) = minf(s − c)x; D(s − r) + (r − c)xg max min F (x; D) = max min minf(s − c)x; D(s − r) + (r − c)xg x≥0 D2[`;u] x≥0 D2[`;u]

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    110 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us