Download presentation
Presentation is loading. Please wait.
Published byLiliana Martin Modified over 6 years ago
1
6.5 Stochastic Prog. and Bendersโ decomposition
Two stage stochastic linear program: Two sets of decisions (๐ฅ,๐ฆ) that are made in consecutive stages. Some exogenous parameters that influence the second stage decision making is uncertain and only can be known after the first set of decisions has been made. Best two stage decisions that minimize the total expected cost? Large linear program if the number of possible second stage scenarios is large. Use Bendersโ decomposition. Bendersโ decomposition was developed to solve mixed integer programs, but it can be applied here too. Use strong duality of LP cleverly. Linear Programming 2014
2
Problem formulation First stage decision vector is ๐ฅ. Second stage decision vector is ๐ฆ. There are ๐พ possible scenarios for the second stage and the true scenario is only revealed after ๐ฅ is chosen. Let ๐ be the index to represent different scenarios and ๐ผ ๐ >0 be the probability of the occurrence of scenario ๐. Second stage decision ๐ฆ depends on the realized scenario, hence use variable ๐ฆ ๐ to make the dependence explicit. Cost vectors ๐ and ๐ for decisions ๐ฅ and ๐ฆ ๐ , respectively. First stage decisions must satisfy the constraints ๐ด๐ฅ=๐ ๐ฅโฅ0 In addition, the first and second stage decisions need to satisfy constraints of the form ๐ต ๐ ๐ฅ+๐ท ๐ฆ ๐ = ๐ ๐ ๐ฆ ๐ โฅ0, for all ๐. Linear Programming 2014
3
minimize ๐ โฒ ๐ฅ+ ๐ผ 1 ๐ โฒ ๐ฆ 1 + ๐ผ 2 ๐ โฒ ๐ฆ 2 +โฆ+ ๐ผ ๐พ ๐โฒ ๐ฆ ๐พ
Every scenario may involve a different set of constraints. The objective is to choose ๐ฅ and ๐ฆ 1 ,โฆ, ๐ฆ ๐พ so that the expected cost ๐ โฒ ๐ฅ+ ๐ผ 1 ๐ โฒ ๐ฆ 1 +โฆ+ ๐ผ ๐พ ๐โฒ ๐ฆ ๐พ is minimized. Master problem: minimize ๐ โฒ ๐ฅ+ ๐ผ 1 ๐ โฒ ๐ฆ 1 + ๐ผ 2 ๐ โฒ ๐ฆ 2 +โฆ+ ๐ผ ๐พ ๐โฒ ๐ฆ ๐พ subject to ๐ด๐ฅ =๐ ๐ต 1 ๐ฅ+ ๐ท ๐ฆ 1 = ๐ 1 ๐ต 2 ๐ฅ ๐ท ๐ฆ 2 = ๐ 2 โฎ โฑ โฎ ๐ต ๐พ ๐ฅ ๐ท ๐ฆ ๐พ = ๐ ๐พ Linear Programming 2014
4
Ex 6.5 (Electric power capacity expansion):
Want to install two generators ๐=1,2 with different fixed and operating costs. Each day is divided into 3 parts ๐=1,2,3 ๐ ๐ : fixed cost per day and per unit capacity of generator ๐. Amortized over its lifetime. ๐ ๐๐ : the operating cost of generator ๐ per unit power during the ๐โ๐กโ part of the day. ๐ ๐ : unit cost of excess capacity that can be purchased when demand exceeds capacity. ๐ ๐ : minimum capacity of generator ๐. Two sources of uncertainty: (1) exact value of the demand ๐ ๐ during each part of the day. (2) the availability ๐ ๐ (between 0 and 1) of generator ๐. Linear Programming 2014
5
There is a total of 4 3 ร4ร5=1280 scenarios ๐.
(1) Demand ๐ ๐ can take one of four values ๐ ๐,1 ,โฆ, ๐ ๐,4 , with probability ๐ ๐,1 ,โฆ, ๐ ๐4 , respectively. (2) Availability of generator 1 is ๐ 1,1 ,โฆ, ๐ 1,4 , with probability ๐ 1,1 ,โฆ, ๐ 1,4 , respectively. Similarly, the availability of generator 2 is ๐ 2,1 ,โฆ, ๐ 2,5 , with probability ๐ 2,1 ,โฆ, ๐ 2,5 , respectively There is a total of 4 3 ร4ร5=1280 scenarios ๐. Let us use ๐ ๐ ๐ and ๐ ๐ ๐ to denote the demands and availabilities, respectively under scenario ๐. Linear Programming 2014
6
min ๐=1 2 ๐ ๐ ๐ฅ ๐ +๐ธ ๐=1 3 ๐=1 2 ๐ ๐๐ ๐ฆ ๐๐ ๐ + ๐ ๐ ๐ฆ ๐ ๐
Introduce the first stage variables ๐ฅ ๐ , ๐=1,2, which represent the installed capacity of generator ๐. Second stage variable ๐ฆ ๐๐ ๐ denoting the operating levels (power output levels) of generator ๐ during the ๐โ๐กโ part of the day and under scenario ๐. ๐ฆ ๐ ๐ : capacity to be purchased under scenario ๐ for unmet demand during the ๐โ๐กโ part of the day. Formulation min ๐=1 2 ๐ ๐ ๐ฅ ๐ +๐ธ ๐=1 3 ๐=1 2 ๐ ๐๐ ๐ฆ ๐๐ ๐ + ๐ ๐ ๐ฆ ๐ ๐ s.t. ๐ฅ ๐ โฅ ๐ ๐ , โ ๐, ๐ฆ ๐๐ ๐ โค ๐ ๐ ๐ ๐ฅ ๐ , โ ๐,๐,๐, ๐=1 2 ๐ฆ ๐๐ ๐ + ๐ฆ ๐ ๐ โฅ ๐ ๐ ๐ , โ ๐,๐, ๐ฅ ๐ , ๐ฆ ๐๐ ๐ , ๐ฆ ๐ ๐ โฅ0, โ ๐,๐,๐ (11522 variables, constraint) Linear Programming 2014
7
Reformulation of the problem
Consider ๐ฅ satisfying ๐ด๐ฅ=๐, ๐ฅโฅ0. Once ๐ฅ is fixed, the optimal second stage decisions ๐ฆ ๐ can be determined separately from each other, by solving for each ๐ the problem min ๐โฒ ๐ฆ ๐ s.t. ๐ต ๐ ๐ฅ+๐ท ๐ฆ ๐ = ๐ ๐ (6.16) ๐ฆ ๐ โฅ0 Let ๐ง ๐ (๐ฅ) be the optimal cost of (6.16). ( ๐ง ๐ ๐ฅ =โ if infeasible) ๏ min ๐ โฒ ๐ฅ+ ๐=1 ๐พ ๐ผ ๐ ๐ง ๐ (๐ฅ) s.t. ๐ด๐ฅ=๐ (6.17) ๐ฅโฅ0 Need to consider only those ๐ฅ for which none of the ๐ง ๐ ๐ฅ =โ. Use duality. Linear Programming 2014
8
Dual of (6.16) when ๐ฅ is fixed: max ๐ ๐ โฒ ๐ ๐ โ ๐ต ๐ ๐ฅ
s.t. ๐ ๐ โฒ๐ทโค๐โฒ (6.18) Let ๐= ๐: ๐ โฒ ๐ทโค๐โฒ . We assume ๐ is nonempty and has at least one extreme point. Let ๐ ๐ , ๐=1,โฆ,๐ผ, be the extreme points, and let ๐ค ๐ , ๐=1,โฆ,๐ฝ be a complete set of extreme rays of ๐. Since ๐ nonempty, either (6.18) has an optimal solution (so ๐ง ๐ (๐ฅ) is finite) or unbounded (primal (6.16) is infeasible, and ๐ง ๐ ๐ฅ =โ, which should be avoided). In particular, ๐ง ๐ ๐ฅ <โ if and only if ๐ค ๐ โฒ ๐ ๐ โ ๐ต ๐ ๐ฅ โค0, โ ๐. (6.19) Whenever ๐ง ๐ ๐ฅ is finite, ๐ง ๐ ๐ฅ = max ๐=1,โฆ,๐ผ ๐ ๐ โฒ ๐ ๐ โ ๐ต ๐ ๐ฅ . Alternatively, ๐ง ๐ ๐ฅ is the smallest number ๐ง ๐ such that ๐ ๐ โฒ ๐ ๐ โ ๐ต ๐ ๐ฅ โค ๐ง ๐ , โ ๐. Linear Programming 2014
9
Use this characterization of ๐ง ๐ (๐ฅ) in the original problem (6
Use this characterization of ๐ง ๐ (๐ฅ) in the original problem (6.17) with the condition (6.19) which is required for ๐ง ๐ (๐ฅ) to be finite. Then the master problem (6.17) can be put in the form min ๐ โฒ ๐ฅ+ ๐=1 ๐พ ๐ผ ๐ ๐ง ๐ s.t. ๐ด๐ฅ=๐ (6.20) ๐ ๐ โฒ ๐ ๐ โ ๐ต ๐ ๐ฅ โค ๐ง ๐ , โ ๐,๐, ๐ค ๐ โฒ ๐ ๐ โ ๐ต ๐ ๐ฅ โค0, โ ๐,๐, ๐ฅโฅ0 The number of variables has been reduced, but the number of constraints can be extremely large. Use cutting plane method. Linear Programming 2014
10
Delayed constraint generation
In a typical iteration, we consider the relaxed master problem, which has the same objective as the problem (6.20), but involves only a subset of constraints. Assume that we have an optimal solution to the relaxed problem, consisting of a vector ๐ฅ โ and a vector ๐ง โ = ๐ง 1 โ ,โฆ, ๐ง ๐พ โ . For ๐=1,โฆ,๐พ, we consider the subproblem min ๐โฒ ๐ฆ ๐ s.t. ๐ท ๐ฆ ๐ = ๐ ๐ โ ๐ต ๐ ๐ฅ โ ๐ฆ ๐ โฅ0 For different iterations or values of ๐, only have different right-hand side, and the dual problems always have the same feasible set, namely, ๐. Hence use dual simplex to solve the subproblems. Linear Programming 2014
11
Different possibilities to consider:
(a) If dual simplex method indicates that a (primal) subproblem is infeasible, can identify an extreme ray ๐ค ๐(๐) of the dual feasible set ๐, such that ๐ค ๐(๐) โฒ ๐ ๐ โ ๐ต ๐ ๐ฅ โ >0 Identified a violated constraint, which can be added to the relaxed master. (b) If a primal subproblem is feasible, dual simplex provides a dual optimal basic feasible solution ๐ ๐(๐) . If we have ๐ ๐(๐) โฒ ๐ ๐ โ ๐ต ๐ ๐ฅ โ > ๐ง ๐ โ , Linear Programming 2014
12
(c) Finally, if the primal subproblems are all feasible and we have
๐ ๐(๐) โฒ ๐ ๐ โ ๐ต ๐ ๐ฅ โ โค ๐ง ๐ โ , for all ๐, then by the optimality of ๐ ๐(๐) , we obtain ๐ ๐ โฒ ๐ ๐ โ ๐ต ๐ ๐ฅ โ โค ๐ง ๐ โ , for all extreme points ๐ ๐ . In addition, ๐ค ๐ โฒ ๐ ๐ โ ๐ต ๐ ๐ฅ โ โค0, for all extreme rays ๐ค ๐ , and no constraints violated. We then have an optimal solution to the master problem (6.20), and the algorithm terminates. See text p.259 for description of Bendersโ decomposition. Also called L-shaped method for two stage stochastic programming problems. Linear Programming 2014
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.