Sie sind auf Seite 1von 5

Optimization Methods: Dynamic Programming Applications Water Allocation

Module 6 Lecture Notes 3 Water Allocation as a Sequential Process Recursive Equations Introduction As discussed in previous lecture notes, in dynamic programming, a problem is handled as a sequential process or a multistage decision making process. In this lecture, we will explain how a water allocation problem can be represented as sequential process and can be solved using backward recursion method of dynamic programming. Water allocation problem Consider a canal supplying water to three fields in which three different crops are being cultivated. The maximum capacity of the canal is given as Q units of water. The three fields can be denoted as i=1,2,3 and the amount of water allocated to each field as xi.

Field 3 x3

x1 Field 1 x2 Field 2

The net benefits from producing the crops in each field are given by the functions below.
NB1 ( x1 ) = 5 x1 0.5 x1 NB3 ( x3 ) = 7 x3 x3
2 2 2

NB2 ( x2 ) = 8 x2 1.5 x2

D Nagesh Kumar, IISc, Bangalore

M6L3

Optimization Methods: Dynamic Programming Applications Water Allocation

The problem is to determine the optimal allocations xi to each field that maximizes the total net benefits from all the three crops. This type of problem is readily solvable using dynamic programming. The first step in the dynamic programming is to structure this problem as a sequential allocation process or a multistage decision making procedure. The allocation to each crop is considered as a decision stage in a sequence of decisions. If the amount of water allocated from the total available water Q, to crop i is xi, then the net benefit from this allocation is NBi(xi). Let the state variable Si defines the amount of water available to the remaining (3-i) crops. The state transformation equation can be written as Si +1 = Si xi defines the state in the next stage. The figure below shows the allocation problem as a sequential process. Remaining Quantity, S4 = S3- x3

Available Quantity, S1 = Q

S2 = S1- x1

S3 = S2- x2

x1

x2

x3

Crop 1

Crop 2

Crop 3

Net Benefits, NB1 (x1)

Net Benefits, NB2 (x2)

Net Benefits, NB3 (x3)

The objective function for this allocation problem is defined to maximize the net benefits, i.e., max NBi ( xi ) . The constraints can be written as
i =1 3

x1 + x2 + x3 Q 0 xi Q for i = 1,2,3

D Nagesh Kumar, IISc, Bangalore

M6L3

Optimization Methods: Dynamic Programming Applications Water Allocation

Let f1 (Q) be the maximum net benefits that can be obtained from allocating water to crops 1,2 and 3. Thus,
3 max NB i ( xi ) x1 + x 2 + x 3 Q x1 , x 2 , x 3 0 i =1

f1 (Q ) =

Transforming this into three problems each having only one decision variable,

f1 (Q) = max NB1 ( x1 ) + max NB2 ( x2 ) + max NB3 ( x3 ) x1 x2 x3 0 x1 Q 0 x2 Q x1 = S 2 0 x3 S 2 x 2 = S 3

Backward recursive equations

Considering the last term of this equation, let f 3 ( S3 ) be the maximum net benefits from crop 3. The state variable for this stage is S 3 which can vary from 0 to Q. Therefore,
f 3 ( S 3 ) = max NB3 ( x3 )
x3 0 x3 S 3

Since S 3 = S 2 x2 , f 3 ( S3 ) = f 3 ( S 2 x2 ) . Thus f1 (Q) can be rewritten as f1 (Q) = max NB1 ( x1 ) + max {NB2 ( x2 ) + f 3 ( S 2 x2 )} x1 x2 0 x1 Q 0 x2 Q x1 = S 2

Now, let f 2 ( S 2 ) be the maximum benefits derived from crops 2 and 3 for a given quantity S 2 which can vary between 0 and Q. Therefore f 2 ( S 2 ) can be written as,
f 2 (S2 ) = max

x2 0 x2 Q x1 = S 2

{NB2 ( x2 ) + f 3 ( S 2 x2 )}

Again, since S 2 = Q x1 , f1 (Q) which is the maximum total net benefit from the allocation to the crops 1, 2 and 3, can be rewritten as

D Nagesh Kumar, IISc, Bangalore

M6L3

Optimization Methods: Dynamic Programming Applications Water Allocation f1 (Q) = max [NB1 ( x1 ) + f 2 (Q x1 )]
x1 0 x1 Q

Now, once the value of f 3 ( S3 ) is calculated, the value of f 2 ( S 2 ) can be determined, from which f1 (Q) can be determined.
Forward recursive equations

The procedure explained above can also be solved using a forward proceeding manner. Let the function f i ( Si ) be the total net benefit from crops 1 to i for a given input of Si which is allocated to those crops. Considering the first stage alone,
f1 ( S1 ) = max NB1 ( x1 )
x1 x1 S1

Since, the value of S1 is not known (excepting that S1 should not exceed Q), the equation above has to be solved for a range of values from 0 to Q. Now, considering the first two crops together, with S 2 units of water available to these crops, f 2 ( S 2 ) can be written as,
f 2 ( S 2 ) = max[NB2 ( x2 ) + f1 ( S 2 x2 )]
x2 x2 S 2

This equation also should be solved for a range of values for S 2 from 0 to Q. Finally, considering the whole system i.e., crops 1, 2 and 3, f 3 ( S3 ) can be expressed as,
f 3 ( S 3 ) = max [NB3 ( x3 ) + f 2 ( S 3 x3 )]
x3 x3 S 3 = Q

Here, if it is given that the whole Q units of water should be allocated, then the value of S 3 can be taken as equal to Q. Otherwise, f 3 ( S3 ) should be solved for a range of values from 0 to Q.

D Nagesh Kumar, IISc, Bangalore

M6L3

Optimization Methods: Dynamic Programming Applications Water Allocation

The basic equations for the water allocation problem using both the approaches are discussed. A numerical problem and its solution will be described in the next lecture.

D Nagesh Kumar, IISc, Bangalore

M6L3

Das könnte Ihnen auch gefallen