You are on page 1of 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

NB2 ( x2 ) = 8 x2 1.5 x2
NB3 ( x3 ) = 7 x3 x3

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 S i +1 = Si xi defines the state in
the next stage. The figure below shows the allocation problem as a sequential process.

Available
Quantity,
S1 = Q

S3 = S2- x2

S2 = S1- x1

x1

Crop 1

Net Benefits,
NB1 (x1)

x2

Crop 2

Net Benefits,
NB2 (x2)

Remaining
Quantity,
S4 = S3- x3

x3

Crop 3

Net Benefits,
NB3 (x3)

Backward recursive equations


The objective function for this allocation problem is defined to maximize the net benefits,
3

i.e., max NBi ( xi ) . The constraints can be written as


i =1

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,

f1 (Q ) =

3
max NB i ( xi )
x1 + x 2 + x3 Q

x1 , x 2 , x 3 0 i =1

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

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 ( S3 ) = max NB3 ( x3 )
x3
0 x3 S 3

Since S3 = 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 values of S1 is not known, 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 ( S3 ) = max [NB3 ( x3 ) + f 2 ( S3 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 S3
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

You might also like