NOT
FOR QUOTATIONWITHOUT
PERMISSION OFTHE
AUTHORTHE
DUALFOREST
KEXATION &EI'I-IODFOR
THE STOCHASl'IC TRANSPORTATIONPROBLEM
Liqun Qi
August 1984 WP-84-59
Working Papers are interim reports on work of the International Institute for Applied Systems Analysis and have received only limited review. Views or opinions expressed herein do not necessarily represent those of the Institute or of its National Member Organizations.
INTERNATIONAL INSTITUTE FOR
APPLIED
SYSTEMS ANALYSIS 2381 Laxenburg, AustriaIn this paper, the author develops a dual forest iteration method for the stochastic transportation problem.
The algorithm described in this paper iterates from one dual forest to another with t h e values of t h e dual objective function strictly increas- ing. A t most two one-dimensional monotonic equations have to be solved a t each step. In this sense it is simple compared with the primal forest iteration method. which may require t h e solution of more- t h a n two such equations a t each step. The use of the algorithm is illustrated by appli- cation to a numerical example.
This research was undertaken a s part of the Adaptation and Optimi- zation Project in t h e System and Decision Sciences Program.
ANDRZEJ WIERZBICKI Chairman
System and Decision Sciences
This paper p r e s e n t s a dual forest iteration algorithm for solving t h e stochastic t r a n s p o r t a t i o n problem. The algorithm i t e r a t e s f r o m one dual forest t o a n o t h e r with t h e values of t h e dual objective function strictly increasing i n t h e n o n d e g e n e r a t e case. It therefore converges i n a finite n u m b e r of steps. A t e a c h s t e p it is necessary t o solve a t m o s t two one- dimensional monotone equations. If t h e computation i s i n t e r r u p t e d before completion, a primal feasible solution, a n d u p p e r a n d lower bounds t o t h e optimal value of t h e objective function c a n be obtained. A numerical example is also presented.
THE DUAL FOREST ITERATION METHOD FOR THE STOCHASTIC TRANSPORTATION PROBLEM
Liqun
Qi
International I n s t i t u t e for Applied Systems Analysis. A-2361 Laxenburg, Austria
The forest iteration m e t h o d for solving t h e stochastic transportation prob- l e m
( S F )
was Arst presented in [12].h he
major advantage of this method, a n d o n e which distinguishes i t from o t h e r approaches (see [1,4,5,6,7.8,10,11,15, 16,18,19,20,21,22,23]), i s i t s finite convergence.The forest iteration m e t h o d i t e r a t e s from one base forest triple t o a n o t h e r with t h e values of t h e objective function strictly decreasing. At each s t e p i t is necessary t o solve a small n u m b e r of one-dimensional monotone equations.
I t
is interesting t o consider whether i t is possible t o c o n s t r u c t a polynomial-time algorithm capable of solving t h eST.
Looking a t t h e deter- ministic case, we see t h a t t h e r e i s still no known polynomial-time primal sim- plex method For t h e transportation problem (TP), b u t t h a t a polynomial-time dual simplex algorithm for t h e transportation problem h a s been given by Ikura a n d Nemhauser [9], a n d some of t h e special properties of dual transportation polyhedra have been explored by Balinski [2,3]. A &st s t e p in t h e direction of a polynomial-time algorithm for solving t h e STP would therefore s e e m t o be t o establish a finitely convergent dual f o r e s t iteration method €or solving t h i s problem.This paper p r e s e n t s such a method for solving t h e
STP.
It i t e r a t e s from o n e dual forest t o a n o t h e r with t h e values of t h e dual objective function strictly increasing. A t most two one-dimensional monotone equations m u s t be solved a t each step. In t h i s sense i t is simple compared with t h e primal forest iteration method, which may require t h e solution of more t h a n two one-dimensional monotone equations a t each step.Since t h e graph of a basic optimal solution of a n
SIT
is a forest [12], it is clear t h a t t h e r e a r e a t l e a s t t h r e e possible iteration techniques: splitting, pivot- ing a n d connecting. However, they a r e quite different from t h e i r primalcounterparts. The primal forest iteration m e t h o d uses some primally infeasible points and a technique called cutting t o pull these infeasible points back into t h e feasible region. In our dual algorithm we keep t h e whole process in t h e dual feasible region, a n d i t i s therefore also m o r e direct.
Section 2 presents t h e dual f o r m of t h e STP. The dual forest a n d t h e basic dual forest solution a r e defined i n Section 3. We prove t h a t t h e values of t h e dual objective function corresponding t o all basic dual forest solutions associ- a t e d with a particular dual forest a r e t h e s a m e . In Section 4 we define t h e almost basic dual forest solution. a generalization of t h e basic dual forest solu- tion which allows u s t o change t h e implicit prices in order t o increase t h e value of t h e dual objective function. The iteration techniques used in t h r e e different c a s e s a r e described in Sections 5, 6 a n d 7. Section 0 is concerned with t h e dual forest iteration algorithm a n d t h e associated finite convergence theorem. In Section 9, we illustrate t h e use of t h e algorithm by applying i t t o an example first considered in [12].
If t h e computation is i n t e r r u p t e d , we have a lower bound t o t h e optimal value of t h e objective function b u t no primal feasible solutions. However, we have an approximation of t h e c e r t a i n t y equivalent, which in t u r n yields a pri- m a l feasible approximation solution a n d an upper bound t o t h e optimal value of t h e objective function. This is discussed in Section 10.
The concept of forests i s n o t simply a convenient computational tool; it is i n h e r e n t in t h e s t r u c t u r e of t h e STP. We go i n t o this more deeply in Section 11.
2. THE DUAL
FOKM OF THE SIT
The s t a n d a r d formulation of t h e stochastic transportation problem with a d u m m y node is a s follows [4,12,15,19,20,21,22]:
m n n
m i n
C C
cijzij+ C
pj(wj)t w i=] j = ] j =1
where n +1 is t h e d u m m y node and
The variables a n d p a r a m e t e r s a r e defined in t h e following way:
a, -
total n u m b e r of items available a t i,a, >
0cij
-
cost of shipping one item from i t o j, cij 2 0 zij-
n u m b e r of i t e m s shipped from i t o jw -
-
total n u m b e r of i t e m s supplied t o j ( t o be determined),
I-
observed value of&
tj -
r a n d o m variable reflecting demand at jP f -
m a r g i n a l distribution function off, (known)qj-
-
salvage c o s t per unit excessat
j , 0 q?-
penalty c o s t per unit shortage a t j, qj+> 0Assume t h a t
5
is coitinuous for all j . We know from [10.18] t h a t (pj is continuously differentable and convex and t h a twhere qj
=
qj+ +
pi-.Since t h e feasible region is compact a n d t h e objective function is continu- ous, (2.1) always h a s a solution.
In t h e g e n e r a l case some a r c s ( r o u t e s between points) m a y not b e available (see t h e n u m e r i c a l example given in Section 9). This may be overcome by con- sidering such a r c s t o be available, b u t with very large cost coefficients.
From convex programming theory [13,14] and t h e duality theory of sto- chastic programming [17], t h e dual form of (2.1) is:
where c ~ , , + ~
=
0 for i=
1,...,
m . Our aim in t h i s p a p e r is t o solve (2.4). Once we have done this, we also have t h e solution of (2.1).If
5
is not continuous, we c a n use a p j i n s t e a d of p' a s in [12]. We shall 1 'n o t consider this case a n y f u r t h e r here.
3. BASIC DUAL
FOREST
SOLUTIONSIt is shown in [12] t h a t (2.1) h a s a n optimal forest solution ( 2 , ~ ) with m u l - tiplier ( u , v ) s u c h t h a t
where f is a forest. This is also a sufficient condition. In [12] we defined a forest a s a union of t r e e s i n t h e t r a n s p o r t a t i o n tableau, where t h e t r e e s con- c e r n e d a r e n o t c o n n e c t e d t o e a c h o t h e r a n d t h e row index s e t of t h e f o r e s t i s 11,
...,
m j. The properties of t h e forest a r e described i n some detail in [12]. The duality t h e o r y of stochastic programming [I?] implies t h a t the optimal f o r e s t solution of (2.1) is also an optimal solution of (2.4).We divide (3.1) i n t o t h r e e hierarchical levels:
1. Dual forest feasibility condition
(DFF):
2. Primal forest feasibility condition and complementary condition (PFC):
j
=
1,...,
n f l3. Primal non-negativity condition (PNN):
Dellnition 3.1. Suppose t h a t we have a forest f on t h e m x ( n + l ) transportation
tableau and a vector ( z , w , u , v ) E
~ m ~ ( ~ + ~ ) + ( ~ ~ ~ ) ~ ~ ~ ( ~ + ~ )
such t h a t t h e DFF and t h e PFC a r e satisfied. Then we call f a dual forest of (2.1) a n d ( z , w , u , v ) abasic d u d forest solution of (2.1).
Clearly, t h e optimal forest is a dual forest and t h e optimal forest solution (together with i t s multiplier) is a basic dual forest solution of (2.1).
Theorem 3.1. m e v a l u e s of the dual objective function corresponding to basic
.
d dforest solutions associated with a given dual forest f a r e the s a m e .
Proof. Assume t h a t ( z , w , u . v ) is a basic dual forest solution associated with f From (2.3), we know t h a t
We also know t h a t t h e value of ( u , v ) is determined by
together with a p a r a m e t e r at on each component t r e e t o f f , i.e.,
where Mt a n d Nt a r e t h e row index s e t and the column index set of t , respec- tively, a n d ( u O , v O ) is uniquely determined by f . We can use t h e fact t h a t v , + ~
=
0 t o evaluate t h e p a r a m e t e r on t h e t r e e with t h e dummy node n f l . For o t h e r component t r e e s , we know from (3.2) and (3.3) t h a t w j is a strictlydecreasing function of a t , since
5
is a nondecreasing function. However, t h e PFC implies t h a tfor e a c h component t r e e
t .
This determines a t . Therefore, ( u , v ) is uniquely determined on f.
Now suppose t h a t ( Z , G , u , v ) is a n o t h e r basic dual f o r e s t solu- tion associated with f . From ( 3 . 2 ) a n d t h e fact t h a t5
is nondecreasing, we havefor 0
s <
s 1. The difference between t h e dual objective function valuescorresponding t o ( Z , Z , u , v ) a n d ( z , w , u , v ) is given by ( 2 . 4 ) a s
t h u s proving t h e t h e o r e m .
We can therefore talk about t h e dual objective function value of a dual forest f , a n d shall denote i t by S ( f ).
4. ALMOSf BASIC
DUAL FOREST SOLUTIONS
Assume t h a t we h a v e a dual forest
f
with a basic dual forest solution ( 5 , G .Z,
C). Assume also t h a t i t is not optimal, i.e., t h e r e exists a pair of indices ( k , l ) s u c h t h a tGl <
0, ( k , 1 ) E f . Is i t possible t o find a n o t h e r dual forestr
with a basic dual forest solution (Z, & ,fi, v^)
s u c h t h a ts(?) > ~ ( f
)?If t h i s can b e done t h e n we c a n develop an algorithm which i t e r a t e s from o n e dual forest t o a n o t h e r with strictly increasing dual objective function values; this algorithm converges in finitely many s t e p s since t h e n u m b e r of dual forests is finite.
The following definition generalizes t h e above question:
Definition 4.1. Suppose t h a t we have a forest f on t h e m x ( n + l ) transportation tableau a n d a vector (z ,w ,IL . v ) E
Rm
X ( n + l ) + ( n + l ) + m + ( n + l ) s u c h t h a t t h ePFC
is satisfled and t h eDFF
is partially satisfied, i.e.,ui + v - < C i j ,
I all o t h e r ( i , j )
where ( k , l ) E f and zkl
<
0. Then we call f a n a l m o s t d u a l f o r e s t of ( 2 . 1 ) , ( z , w , u , v ) a n a l m o s t b a s k d u a l f o r e s t s o l u t i o n of ( 2 . 1 ) , a n d ( k , 1 ) t h e s i n g u l a r a m o f f .We s e e t h a t a dual forest i s also a n a l m o s t dual forest. Notice t h a t t h e r e a r e m a n y a l m o s t basic dual forest solutions associated with f
.
Suppose t h a t
7
is a n almost dual forest of (2.1) with an almost basic dual forest solution (5, G , G . C) a n d singular a r c ( k , l ) . Suppose t h a t ( k . 1 ) Et ,
wheret
i s a component t r e e of7.
After deleting a r c (k , 1 ) fromt ,
we g e t two t r e e st l
a n dt z .
Let M, MI a n dM 2
b e t h e row index s e t s oft , t l
andt 2 ,
a n d N , N 1 andN 2
be t h e column index s e t s oft ,
t a n dt 2
( s e e Figure 1 ) .Let
w h e r e H
=
I1,...,
m ] \ M ,N =
I1,...,
n + l ] \ N .If one of A ,
B,
or C is zero, t h e n we have a d e g e n e r a t e situation.Suppose t h a t
w h e r e p E M 2 . q E
8.
Then we simply l e t a r c ( p , q ) e n t e r t h e basis, i.e., we have a new a l m o s t dual forest= 7 u
I ( p , q ) ] with a n a l m o s t basic dual forest solu- tion(F,
G , 21, ZI) a n d singular a r c ( k , 1 ) . We have t h u s c a r r i e d o u t a d e g e n e r a t e c o n n e c t i n g o p e r a t i o n (see Figure 2 ) . The n u m b e r of t r e e s inr
is one l e s s t h a n t h e n u m b e r of t r e e s in7.
This m e a n s t h a t t h e s e t s M2 a n dN
a r e now different,Figure 1. Almost basic dual forest solutions
so t h a t t h e value of A may also have changed. If not, i.e., if A is still zero, we can have another degenerate connecting process. Since t h e number of t r e e s in a forest is no more than n , we m u s t have a positive A after a t most (n-1) such operations.
We obtain similar results if B is zero.
Fwure 2. Connecting
However, the situation with C
=
0 is more complicated, and results in d e g e n e r a t e p i v o t i n g . We avoid this by assumption:Nondegeneracy assumption. We shall n o t encounter the case C
=
0. 8Thus, in general, we can suppose t h a t A , B, C
>
0. We now discuss the methods used to remove the singular a r c from t h e basis. There a r e t h r e e cases, which will be treated separately.5.
CASE I,
n + l EN1
In t h i s case, we decrease vl by a positive quantity a, a n d modify t h e o t h e r components of (5, G , Z,
2r)
in s u c h a way t h a t i t i s still a n a l m o s t basic dual forest solution associated with f a n d t h e value of t h e dual objective function is strictly increased.It is c l e a r t h a t we m u s t modify t h e components of (Z, G ) a s follows:
The components of (Z,
G)
should also be a l t e r e d usinga n d t h e PFC.
To r e t a i n dual feasibility, we m u s t have
It i s easy t o s e e t h a t
We know from (3.2), (5.1) a n d (5.3) t h a t zw is a function of a a n d i n c r e a s e s with increasing a.
The following l e m m a s t a t e s t h a t whenever zw is negative, a n i n c r e a s e in a results in a n i n c r e a s e in t h e value of t h e dual objective function.
Lemma 5.1. Let
G
d e n o t e t h e v a l u e o f t h e o b j e c t i v e f u n c t i o n in p r o b l e m (2.4) a n d c o n s i d e rG
as a f u n c t i o n ofa.
m e nProof.
From Definition 4.1 a n d t h e convexity of qj we have
for all j E N z . Now we have
Assume t h a t D
=
min (A,c), and l e tWe c a n t h e n d e t e r m i n e
ZkL
using (5.3).If
ZH
1 0 , t h e n t h e value of t h e dual objective function is strictly increas- ing. We havewhere N *
=
N\ [ n + l j .When D = A , we c a r r y out a connecting operation. This is as described in Section 4 except t h a t i t is nondegenerate in t h e sense t h a t we have modified (w ,u ,u ) (see also F'igure 2).
When
D =
C, we c a r r y o u t a pivoting operation, which is again nondegen- e r a t e . Suppose t h a twhere T E
M z ,
s E N1. Then we let a r c ( r , s ) e n t e r t h e basis and a r c ( k , ~ ) leave t h e basis, i.e., we have a new dual forestfn = if u
l ( r , s ) ] l \ t ( k , L ) j withzkL =
0(see Figure 3).
In both cases, t h e other components of
E
c a n be determined using t h ePFC.
In fact, only t h e components of z in t z a r e changed in t h e connecting process;
in the pivoting process we also modify components in t h e cycle consisting of ( r , s ) and m e m b e r s of t .
Figure 3. Pivoting
If ZM
>
0, t h e n we have increased t h e value too m u c h . We should r a t h e r s t o p a tZkl =
0 t o e n s u r e t h a t t h e value of t h e dual objective function is strictly increasing. Then (3.2). (5.1), (5.3) a n dform a one-dimensional monotone equation in a. Suppose t h e solution i s
E.
Replacing D in (5.4) by Z yields t h e value of (z",G.C,v"). Let
= T\
f ( k , l ) j . We now have a splitting process with a r c ( k , l ) leaving t h e basis (see Figure 4).According t o Lemma 5.1, we have a s t r i c t i n c r e a s e in t h e value of t h e dual objective function.
In a pivoting o r splitting process, we remove t h e negative flow a r c (k ,1) and increase t h e value of t h e dual objective function. Therefore,
7
a n d(z",G,G,v")
a r e , respectively, t h e new dual forest
f
a n d t h e new basic d u a l forest solution ( 2 , 6 , 6 , 5 ) which we sought a t t h e beginning of Section 4.If only connecting occurs, we may r e p e a t t h e procedure. Since t h e number of t h e t r e e s in
7
is o n e less than in7
when we have a connecting pro- cess, we should have e i t h e r a pivoting or a splitting process a f t e r a t most (n-1) connecting processes. We t h e n have a dual forest with a n i n c r e a s e d dual objec- tive function value.Notice t h a t we n e e d t o solve a one-dimensional monotone equation only when splitting occurs.
6. CASE 11. n + l E
N2
This i s similar t o Case I, so we shall not go i n t o so m u c h detail here.
In this case, we decrease uk by a positive quantity
8,
a n d modify t h e o t h e r components of(2,
G , Z, G ) in s u c h a way t h a t i t i s still a n almost basic dual forest solution associated with f a n d t h e value of t h e dual objective function is strictly increased.We have
To retain dual feasibility, we r e q u i r e
We have
F i i4. Splitting
and know that z~ is a function of @ and i n c r e a s e s with increasing @.
Lemma 6.1. Lef G denote fhe v a l u e of the objective f u m f i n n in problem ( 2 . 4 ) a n d c o n s i d e r G as a f u n c t i o n of
8 .
ThenAssume t h a t E
=
min ( B , C ) . Letand determine
Fkl
using (6.3).If ZM 4 0, then we get a s t r i c t increase in t h e value of t h e dual objective function. When E
=
B , we c a r r y out a connecting operation; whenE =
C , we carry out a pivoting operation.If
Zkl >
0, t h e n we have a splitting process.In this case (3.2), ( 6 . I ) , (6.3) and
form a one-dimensional monotone equation in
p.
Suppose t h e solution isp.
Replacing
E
in ( 6 . 4 ) by yields t h e value of (E,G,c,v"). The additional com- ments made in Section 5 also hold i n this case.7. CASEIIl,n+l
E N
In this case, we add a r c ( k , n + l ) to
7:
f '= 7
u t ( k , n + l ) j .This is then t h e s a m e as Case I except t h a t we have two singular arcs: ( k , l ) and ( k , n + l ) (see Figure 5 ) . However, all t h e remarks made in Section 5 still hold here since ( k , n + 1 ) is only a dummy arc, with a flow which does not affect t h e value of t h e dual objective function. The flow balance is given by
- 'k , n + l
=
Zkl-
'klThus,
Zk,,+l
is negative after t h e process outlined in Section 5. We then have an almost dual forest with a singular a r c ( k , n + l ) , i.e., Case 11. Applying t h e approach described in Section 6, we obtain a dual forest with a n increased objective function value.Therefore, we have t o solve a t most two one-dimensional monotone equa- tions in Case 111.
auxiliary arc
F i5. Case 111
8. THE DUAL FOHESL' ITERATION METHOD
We can now outline the dual forest iteration algorithm.
Algorithm 8.1.
1. Start from a dual forest f 0 with a basic dual forest solution ( 2 0 , wO, u O , v O ) .
2. Having obtained a dual forest f with a basic dual forest solution ( z k , w k , u k . v k ) , check its optimality. If the PNN is satisfied, t h e n i t is optimal and we stop. Otherwise, go t o Step 3.
3. Using the iteration techniques discussed in Sections 4-7, find a new dual forest f k + l with a basic dual Forest solution ( z k + ' . wk+', u k + ' , v k + ' ) . k + l + k . Go t o S t e p 2 .
Theorem
8.1. Under the n o n d e g e n e r a c y a s s u m p t i o n g i v e n in S c t i o n 4 , Algo- rithm 8.1 c o n v e r g e s i n f i n i f e l y m a n y s t e p s .Proof. Since the value of the dual objective function is strictly increasing a t each step and the number of dual forests is finite, the theorem is proved. rn
We shall now give one way of initiating a r u n of this algorithm. Note that if we have
f <
mini l c i j l for some j , then we do not send any goods to j because the shipping cost is not less than the penalty cost. We can delete all such demands. Now l e tup =
0 for all i and Y?=
mini [ c v ] for all j . Since -q;h 0 Sv? Sgt.
we can solve w: using (3.2), where j=
1.....
n . We obtain w i c l by subtracting the sum of t h e other wj's from the sum of t h e 4 ' s . The value of z 0 can be found from t h ePFC.
Clearly, (zO.wO,uO,vO) is a basic dual forest solution.In Cases I and I1 i t is only necessary t o solve a one-dimensional monotone equation if we have splitting a t t h a t iteration. In Case I11 it may be necessary to solve two one-dimensional monotone equations.
We illustrate the use of the dual forest iteration algorithm by applying i t to an example first considered in [12].
In this example m
=
4, n=
5 , and cells (2, I ) , ( 3 , l ) and ( 3 , 3 ) a r e not avail- able. We take column 0 r a t h e r than column 6 as our dummy node column. The other data are given i n Table 1.-
18-Table 1
The j - t h r a n d o m d e m a n d is uniformly distributed on [0, Dj] and 9,-
=
6Dj, gf=
0. Thereforeand
pj (w,)
= '
i f w j < O
-
D ) if w j E[o.
D,]if w j
> Dj
f
3Dj!
-
6Djwj if wj<
03(Dj
-
wj)2 if wj E [O. D,]0 if UJ,
>
Dj4
for j
=
1,2.3,4,5.0. Initial Step
To obtain an initial dual forest and a n initial s t a r t i n g basic dual forest solu- tion, we l e t
u,
=
min [cijI
i=
1,...,
rn j.
V jThe corresponding values of
(u, +
v j-
cij) a r e given in Table 2.We have
f =
[(1,0),(2,0),(2.3),(3,0),(3,2),(3,4),(3,5).(4,0),(4,1)]. From (3.1) a n d (9.2), we deduce t h a tSolving t h e PFC, we obtain t h e values of z given in Table 3 (see also f i g u r e 6).
F i
6 . Initial dual forest Table 2Table 3
We see t h a t ( z , w , u , v ) i s a basic dual forest solution. The value of t h e dual objective function is 870.5.
1 . Step 1 : Pivoting
From Table 3 , we s e e t h a t e i t h e r ( 3 , 0 ) o r ( 4 , 0 ) c a n be taken a s t h e singular arc. We choose a r c (3,0).
We now have ( k , l )
=
( 3 , 0 ) , M 1=
133, M 2=
11,2,4j, N1=
12,453, N2=
10,1T3j.From Table 2, we know t h a t c 2 5
-
u2-
v 5= C =
3.We then decrease
lug]
f r o m 101 t o 1-33, and increase 1 v 2 , v 4 , v 5 ] from 110,9,6j t o 113,12,9j. This decreases 1w2.w4. w5j t o U 7 f .8.11+{. From (6.3).we now have ~3~
=
-1234We therefore have a pivoting process: a r c (3,O) leaves t h e basis a n d a r c ( 2 , 5 ) e n t e r s t h e basis (see Figure 7 ) . The new values of ( z , w , u , v ) a n d
(I+ +
v j-
ci,) a r e given in Tables 4 a n d 5 .The corresponding value of t h e dual objective function is 909.75.
2. Step 2: Pivoting
We choose a r c ( 4 , 0 ) a s t h e singular a r c (see Table 5 ) .
We now have ( k , l )
=
( 4 , 0 ) , M 1=
143, M 2=
11,2,3j, N1=
t l j , N2=
10,2,3,4,53, a n d c l l - u l - v l= C =
1.We t h e n d e c r e a s e lulj from 1 O j t o 1-lj, and increase 1v
l j
from 1173 t o 1183.This decreases l u l l ] t o 119j. From (6.3). we now have z40
=
4.We therefore have a pivoting process: a r c ( 4 , 0 ) leaves t h e basis a n d a r c ( 1 , l ) e n t e r s t h e basis (see Figure 8 ) . The new values of ( z , w , u , v ) and (%
+
v j-
c i j ) a r e given in Tables 6 and 7 .The corresponding value of t h e dual objective function is 913%
3. Step 3: Pivoting
Following t h e s a m e procedure a s before, we choose ( k , l )
=
(2,O). We now h a v e M l=
12,3j, M 2=
11,4j, N 1=
12,3,4,5). N 2 = tO,lj, a n d c 1 5 - u 1 - u s=
C=
1.We t h e n decrease 1u2,u3{ f r o m 10,-3) t o - 1 - 4 , a n d i n c r e a s e 1 v 2 , v 3 , v 4 , v5j f r o m 113,16,12,9j t o 1 4 , 1 7 1 3 1 0 . This d e c r e a s e s 1 w 2 , w 3 , w 4 , w 5 j t o 1175,9+, 7 $ . l l f j . From (6.3), we now have z20
=
-2.We therefore have a pivoting process: a r c ( 2 , 0 ) leaves t h e basis a n d a r c (1.5) e n t e r s t h e basis (see Figure 9 ) . The new values of ( z , w , u , v ) a n d
(y +
v,-
cii) a r e given i n Tables 8 a n d 9 .Figure 7 . Step 1: Pivoting Table 4
Table 5
Figure 8. Step 2: Pivoting Table 6
Table 7
F I
9. Step 3: Pivoting Table 8Table 9
The corresponding value of t h e dual objective function is 916+
4. Step 4: @lilting
We s e t (k.1)
=
(3,5). We now haveM I =
!3],M 2 =
11,2,4],N 1 =
12.41,N2 =
!0,1,3,5], and c22 - u 2
-
v 2=
C=
2.We then decrease 1u3j from 1-41 to !-61, and increase ! v 2 , v 4 ] from f 14,131 t o 116,151. This decreases [ w 2 , w q ] to 1 1 7 + , 7 3 . From (6.3), we have z35
= +
This shows t h a t t h e value of z35 h a s been increased too much. We have a splitting process: a r c (3,5) leaves t h e basis (see f i g u r e 10). Relations (9.3), (6.1), (6.3) and (6.4) now yield a one-dimensional equation in
B:
We have /3
=
1.5. The new values of ( z , w , u , v ) and (%+
v j-
cjj) a r e given in Tables 10 and 11.The values of z given in Table 11 a r e non-negative, i.e., this is t h e optimal solution. The value of t h e optimal (dual) objective Function value is 916%, i.e., t h e same result as in [12].
In this example we had t o solve only one one-dimensional monotone equa- tion. In [12], we solved two s u c h equations.
10. INTERRUFTING
THE
COMl'UTATIONSuppose t h e computation is interrupted before completion. We then have a lower bound to t h e optimal value of the objective function b u t no primal feasi- ble solution of z. However, we have an approximation of w , i.e., an approxima- tion of t h e certainty equivalent
[
11,10]. Flxing ur and solving t h e deterministic TP leads t o a primal feasible solution a n d an upper bound t o t h e optimal value of t h e objective function.For example, suppose t h a t t h e computation in Section 9 is i n t e r r u p t e d after t h e first step. We have 909.75 as a lower bound t o t h e optimal value of t h e objective function. Fixing w and solving t h e
TP,
we obtain t h e primal feasible solution given in Table 12.The value of t h e objective Function is 910.25, which is an upper bound to the optimal value of t h e objective function.
Figure 10. Step 4: Splitting Table 1 0
Table 11
-
26-
Table 12
11.
REwuzn
We have s e e n t h a t t h e concept of forests is a convenient methodological tool. However, this is not all: i t is i n h e r e n t in t h e s t r u c t u r e of t h e problem. A transportation problem will always have an optimal t r e e . In t u r n , this spanning t r e e will always have u a n d u such t h a t ui
+
v j=
c i j , even if t h e r e a r e some zero flows. In t h e c a s e of t h e STP, however, t h e r e is generally no s u c h spanning t r e e s i n c e t h i s would require t h a t --vj be a subgradient of pi a t w j . For exam- ple, we s e e from Table 10 t h a t all t h e values of (ui+
uj-
c i j ) outside t h e optimal forest a r e strictly negative, which m e a n s t h a t we c a n n o t make an optimal spanning t r e e .Another interesting point is t h a t l k u r a a n d Nemhauser also use t h e t e r m
"forest" in t h e i r discussion of a polynomial-time dual simplex algorithm for t h e TP. This m a y not be accidental.
If ul is k e d t h e n t h e problem becomes a
TP.
In this case t h e r e is n o split- ting a n d t h e proposed m e t h o d becomes t h e dual simplex method for the TP. In t h i s s e n s e , t h e method m a y be seen a s a stochastic extension of t h e dual sim- plex m e t h o d for t h eT I ' .
This is different from t h e primal forest iteration m e t h o d for t h e STP.ACKNOWLEDGEMENTS
I
am grateful t o Professor Roger Wets for inviting m e t o visit IIASA in t h e s u m m e r of 1984. During this visit I wrote t h e draft of this paper, benefiting greatly from discussions with Professor Wets. D r . Larry Nazareth a n d M r . Alan King. Ms. Helen Gasking assisted m e with editing a n d t e x t processing. 1 also wish t o t h a n k Professor Korte and his colleagues f o r t h e i r help a t t h e Vth Bonn Combinatorial Optimization Workshop, where m y i n t e r e s t in t h e dual method was first aroused.1. V. Balachandran. Generalized transportation networks with stochastic demands: an operator theoretic approach. N e t w o r k s 9(1979) 169-184.
2.
M. L.
Balinski. The Hirsch conjecture for dual transportation polyhedra.Collaborative Paper CP-83-9, International Institute for Applied Systems Analysis, Laxenburg, Austria, 1983. To appear in M a t h e m a t i c s of @ e r a t i o n s Research.
3.
M.L.
Balinski. Signatures des points extremes du polyedre dual du probleme de transport. C. R. Acad. Sci. P a r i s 296(1983)457-459.4.
L.
Cooper and L.J. LeBlanc. Stochastic transportation problems and other network related convex problems. ~Nmlal R e s e a r c h Logistics Q u a r t e r l y 24(1977)327-336.5.
L.
Cooper. The stochastic transportation-location problem. C o m p u t e r s &M a t h e m a t i c s w i t h Applications 4(1978)265-275.
6. G.B. Dantzig. L i n e a r P r o g r a m m i n g a n d E z t e n s i o n s . Princeton University Press, Princeton, NJ, 1963.
7. S. Elmaghraby. Allocation under uncertainty when the demand has a con- tinuous distribution function. M a n a g e m e n t S c i e n c e 6(1960)270-294.
8. AR. Ferguson and G.B. Dantzig. The allocation of aircraft to routes.
M a n a g e m e n t S c i e n c e 3(1957)45-73.
9. Y. lkura and G. Nemhauser. A polynomial-time dual simplex algorithm for t h e transportation problem. Technical Report 602, School of Operations Research and Industrial Engineering, Cornell University, Ithaca.
M I .
1983.10. P. Kall. S o c h u s t i c L i n e a r P r o g r a m m i n g . Springer-Verlag, Berlin, 1976.
11.
L.
Qi. An alternating method t o solve stochastic programming with simple recourse. Technical Report 515, Computer Sciences Department. Univer- sity of Wisconsin-Madison, Madison,WI,
1983. To appear in Mathematical P r o g r a m m i n g S t u d y .12.
L.
Qi. Forest iteration method for stochastic transportation problem.Technical Report 522, Computer Sciences Department, University of Wisconsin-Madison, Madison, WI, 1983. To appear in Mathematical Pro- g r a m m i n g S t u d y .
13. S.M. Robinson. Convex Programming. Unpublished notes, University of Wisconsin-Madison, Madison. WI, 1981.
14. R.T. Rockafellar. C o n v e z Analysis. Princeton University Press, Princeton, NJ, 1981.
15. W. Szwarc. The transportation problem with stochastic demands. Manage- m e n t Science 11(1964)33-50.
16. S.W. Wallace. On network s t r u c t u r e d stochastic optimization problems.
Unpublished manuscript, Chr. Michelsen Institute, Fantoft, Norway, 1984.
17. RJ.-B. Wets. Duality relations in stochastic programming. a m p o s i c r M a f h e m a t i c a 19(1976) 341-355.
18. R.J.-B. Wets. Solving stochastic programs with simple recourse. S o c h a s - tics 10(1983)219-242.
19. AC. Williams. A stochastic transportation problem. Operations R e s e a c h 11(1963)759-770.
20.
D.
Wilson. An a priori bounded model for transportation problem with sto- chastic demand and integer solutions. AlEE 7kansactions 4(19?2) 186-193.21.
D.
Wilson. Tighter bounds for stochastic transportation problems. AlEE 7kansactions 5(19?3) 180-185.22.
D.
Wilson.A
mean cost approximation for transportation problems with stochastic demand. Naval Research Logistics Quarterly 22(19?5)181-187.23. W.T. Ziemba. Computational algorithms for convex stochastic programs with simple recourse. @eratiom Research 18(19?0)414-431.