Anda di halaman 1dari 12

Optimization Methods: Dynamic Programming Applications Capacity Expansion

Module 6 Lecture Notes 5 Capacity Expansion Introduction The most common applications of dynamic programming in water resources include water allocation, capacity expansion of infrastructure and reservoir operation. In this lecture, dynamic programming formulation for capacity expansion and a numerical example are discussed. Capacity expansion Consider a municipality planning to increase the capacity of its infrastructure (ex: water treatment plant, water supply system etc) in future. The increments are to be made sequentially in specified time intervals. Let the capacity at the beginning of time period t be St (existing capacity) and the required capacity at the end of that time period be Kt. Let xt be the added capacity in each time period. The cost of expansion at each time period can be expressed as a function of St and xt , i.e. Ct ( St , xt ) . The problem is to plan the time sequence of capacity expansions which minimizes the present value of the total future costs subjected to meet the capacity demand requirements at each time period. Hence, the objective function of the optimization model can be written as,

Minimize

C (S , x )
t =1 t t t

where Ct ( St , xt ) is the present value of the cost of adding an additional capacity xt in the time period t with an initial capacity St . Each periods final capacity or next periods initial capacity should be equal to the sum of initial capacity and the added capacity. Also at the end of each time period, the required capacity is fixed. Thus, for a time period t, the constraints can be expressed as S t +1 = S t + xt S t +1 K t for t = 1,2,..., T for t = 1,2,..., T

D Nagesh Kumar, IISc, Bangalore

M6L5

Optimization Methods: Dynamic Programming Applications Capacity Expansion

In some problems, there may be constraints to the amount of capacity added xt in each time period i.e. xt can take only some feasible values. Thus, xt t . The capacity expansion problem defined above can be solved in a sequential manner using dynamic programming. The solution procedure using forward recursion and backward recursion are explained below. Forward Recursion Consider the stages of the model to be the time periods in which capacity expansion is to be made and the state to be the capacity at the end of each time period t, S t +1 . Let S1 be the present capacity before expansion and f t ( S t +1 ) be the minimum present value of total cost of capacity expansion from present to the time t.

C1 S1 S2 St

Ct

CT St+1 ST ST+1

Stage 1

Stage t

Stage T

x1

xt

xT

Considering the first stage, the objective function can be written as, f1 ( S 2 ) = min C1 ( S1 , x1 ) = min C1 ( S1 , S 2 S1 )

The values of S 2 can be between K1 and K T where K1 is the required capacity at the end of time period 1 and K T is the final capacity required. In other words, f1 ( S 2 ) should be solved for a range of S 2 values between K1 and K T . Then considering first two stages, the suboptimization function is

D Nagesh Kumar, IISc, Bangalore

M6L5

Optimization Methods: Dynamic Programming Applications Capacity Expansion

f 2 ( S 3 ) = min [C 2 (S 2 , x 2 ) + f1 ( S 2 )] = min [C 2 (S 3 x 2 , x 2 ) + f1 ( S 3 x 2 )]
x2 x2 2 x2 x2 2

which should be solved for all values of S 3 ranging from K 2 to K T . Hence, in general for a time period t, the suboptimization function can be represented as f t ( S t +1 ) = min [Ct (S t +1 xt , xt ) + f t 1 ( S t +1 xt )]
xt xt t

with constraint as K t S t +1 K T . For the last stage, i.e. t=T, the function fT ( ST +1 ) need to be solved only for S T +1 = K T . Backward Recursion The expansion problem can also be solved using a backward recursion approach with some modifications. Consider the state S t be the capacity at the beginning of each time period t. Let fT ( ST ) be the minimum present value of total cost of capacity expansion in periods t through T. For the last period T, the final capacity should reach K T after doing the capacity expansions. Thus, the objective function can be written as, f T ( S T ) = min [CT (S T , xT )]
xT xT T

This is solved for all ST values ranging from K T 1 to K T . In general, for a time period t, the function f t ( St ) can be expressed as f t ( S t ) = min [Ct (S t , xt ) + f t +1 ( S t + xt )] which should be solved for all discrete values of St
xt xt t

ranging from K t 1 to K T .

D Nagesh Kumar, IISc, Bangalore

M6L5

Optimization Methods: Dynamic Programming Applications Capacity Expansion For period 1, the above equation must be solved only for the actual value of S1 given.
Numerical example (Loucks et al., 1981)

Consider a five stage capacity expansion problem. The minimum capacity to be achieved at the end of each time period is given below.
Table 1

t 1 2 3 4 5

Kt 5 10 20 20 25

The expansion costs for each combination of expansion for each stage are shown in the corresponding links in the form of a figure below.

D Nagesh Kumar, IISc, Bangalore

M6L5

Optimization Methods: Dynamic Programming Applications Capacity Expansion Solution Using Forward Recursion The capacity at the initial stage is given as S1 = 0.

Consider the first stage, t =1. The final capacity for stage 1, S2 can take values between K1 to K5. Let the state variable can take discrete values of 5, 10, 15, 20 and 25. The objective function for 1st subproblem with state variable as S2 can be expressed as f1 ( S 2 ) = min C1 ( S1 , x1 ) = min C1 ( S1 , S 2 S1 ) The computations for stage 1 are given in the table below.
Table 2

Stage 1 State Variable, S2 5 10 15 20 25 Added Capacity, x1 = S2 S1 5 10 15 20 25 C1(S2) 9 11 15 21 27 f1*(S2) 9 11 15 21 27

Considering the 1st and 2nd stages together, the state variable S3 can take values from K2 to K5. Thus, the objective function for 2nd subproblem is f 2 ( S 3 ) = min [C 2 (S 2 , x 2 ) + f1 ( S 2 )] = min [C 2 (S 3 x 2 , x 2 ) + + f 1 ( S 3 x 2 )]
x2 x2 2 x2 x2 2

The value of x2 should be taken in such a way that the minimum capacity at the end of stage 2 should be 10, i.e. S3 10 . D Nagesh Kumar, IISc, Bangalore M6L5

Optimization Methods: Dynamic Programming Applications Capacity Expansion The computations for stage 2 are given in the table below.
Table 3

Stage 2 State Variable, S3 10 Added Capacity, x2 0 5 0 15 5 10 0 20 5 10 15 0 5 25 10 15 20 S2= S3 x2 10 5 15 10 5 20 15 10 5 25 20 15 10 5 f1*(S2) f2(S3)=C2(S3)+f1*(S2) f2*(S3)

C2(S3)

0 8 0 8 10 0 7 10 13 0 7 9 14 20

11 9 15 11 9 21 15 11 9 27 21 15 11 9

11 17 15 19 19 21 22 21 22 27 28 24 25 29

11

15

21

24

Like this, repeat this steps till t = 5. For the 5th subproblem, state variable S6 = K5.

D Nagesh Kumar, IISc, Bangalore

M6L5

Optimization Methods: Dynamic Programming Applications Capacity Expansion The computations for stages 3 to 5 are shown in tables below.
Table 4

Stage 3 State Variable, S4 Added Capacity, x3 0 20 5 10 0 25 5 10 15 S3= S4 x3 20 15 10 25 20 15 10 f2*(S3) f3(S4)=C3(S4)+f2*(S3) f3*(S4)

C3(S4)

0 6 9 0 6 9 12

21 15 11 24 21 15 11

21 21 20 24 27 34 23 23 20

Table 5

Stage 4 State Variable, S5 20 25 Added Capacity, x4 0 0 5 S4= S5 x4 20 25 20 f3*(S4) f4(S5)=C4(S5)+f3*(S4) f4*(S5)

C4(S5)

0 0 5

20 23 20

20 23 25

20 23

D Nagesh Kumar, IISc, Bangalore

M6L5

Optimization Methods: Dynamic Programming Applications Capacity Expansion


Table 6

Stage 5 State Variable, S6 25 Added Capacity, x5 0 5 S5= S6 x5 25 20 f4*(S5) f5(S6)=C5(S6)+f4*(S5) f5*(S6)

C5(S6)

0 4

23 20

23 24

23

The figure below shows the solutions with the cost of each addition along the links and the minimum total cost at each node.

From the figure, the optimal cost of expansion is 23 units. By doing backtracking from the last stage (farthest right node) to the initial stage, the optimal expansion to be done at 1st stage = 10 units, 3rd stage = 15 units and rest all stages = 0 units.

D Nagesh Kumar, IISc, Bangalore

M6L5

Optimization Methods: Dynamic Programming Applications Capacity Expansion Solution Using Backward Recursion

The capacity at the final stage is given as S6 = 25. Consider the last stage, t =5. The initial capacity for stage 5, S5 can take values between K4 to K5. The objective function for 1st subproblem with state variable as S5 can be expressed as f 5 ( S 5 ) = min
xT xT T

[ f 5 (S 5 , x5 )]

The computations for stage 5 are given in the table below


Table 7

Stage 5 State Variable, S5 20 25 5 0 4 0 4 0 Added Capacity, x5 C5(S5) f5*(S5)

Following the same procedure for all the remaining stages, the optimal cost of expansion is achieved. The computations for all stages 4 to 1 are given below.
Table 8

Stage 4 State Variable, S4 20 25 Added Capacity, x4 0 5 0 f5*(S5) f4(S4)=C4(S4)+f5*(S5) f4*(S4)

C4(S4)

S5 = S4+ x4

0 5 0

20 25 25

4 0 0

4 5 0

4 0

D Nagesh Kumar, IISc, Bangalore

M6L5

Optimization Methods: Dynamic Programming Applications Capacity Expansion


Table 9

10

Stage 3 State Variable, S3 10 Added Capacity, x3 10 15 15 5 10 20 25 0 5 0 C3(S3) 9 12 6 9 0 6 0 S4= S3 + x3 20 25 20 25 20 25 25 f4*(S4) 4 0 4 0 4 0 0 f3(S3)=C3(S3)+ f4*(S4) 13 12 10 10 4 5 0 0 4 10 f3*(S3)

12

Table 10

Stage 2 State Variable, S2 Added Capacity, x2 5 5 10 15 20 0 10 5 10 15 0 15 5 10 20 25 0 5 0 C2(S2) 8 10 13 20 0 8 10 14 0 7 9 0 7 0 S3= S2 + x2 10 15 20 25 10 15 20 25 15 20 25 20 25 25 f3*(S3) 12 10 4 0 12 10 4 0 10 4 0 4 0 0 f2(S2)=C2(S2)+ f3*(S3) 20 20 17 20 12 18 14 14 10 11 9 4 7 0 0 4 9 12 17 f2*(S2)

D Nagesh Kumar, IISc, Bangalore

M6L5

Optimization Methods: Dynamic Programming Applications Capacity Expansion


Table 11

11

Stage 2 State Variable, S1 Added Capacity, x1 5 10 0 15 20 25 C1(S1) 9 11 15 21 27 S2= S1 + x1 5 10 15 20 25 f2*(S2) 17 12 9 4 0 f1(S1)=C1(S1)+ f2*(S2) 26 23 24 25 27 23 f1*(S2)

The solution is given by the figure below with the minimum total cost of expansion at the nodes.

D Nagesh Kumar, IISc, Bangalore

M6L5

Optimization Methods: Dynamic Programming Applications Capacity Expansion

12

The optimal cost of expansion is obtained from the node value at the first node i.e. 23 units which is the same as obtained from forward recursion. The optimal expansions at each time period can be obtained by moving forward from the first node to the last node. Thus, the optimal expansions to be made are 10 units at the first stage and 15 units at the last stage. Hence the final requirement of 25 units is achieved. Although this type of expansion problem can be solved, the future demand and the future cost of expansion are highly uncertain. Hence, the solution obtained cannot be used for making expansions till the end period, T. It can be very well used to make decisions about the expansion to be done in the current period. For this to be done, the final period T should be selected far away from the current period, so that the uncertainty on current period decisions is much less. It may be note that, generally water supply projects are planned for a period of 25-30 years to avoid undue burden to the present generation. In addition, change of value of money in time (due to inflation and other aspects) is not considered in the examples above.

D Nagesh Kumar, IISc, Bangalore

M6L5

Anda mungkin juga menyukai