0% found this document useful (0 votes)
368 views

The Integer L-Shaped Method For Stochastic Integer Programs With Complete Recourse PDF

Uploaded by

Roger Rodríguez
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
368 views

The Integer L-Shaped Method For Stochastic Integer Programs With Complete Recourse PDF

Uploaded by

Roger Rodríguez
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 10

Operations Research Letters 13 (1993) 133-142 April 1993

North-Holland

The integer L-shaped method for stochastic


integer programs with complete recourse
Gilbert Laporte
Centre de recherche sur les transports, Universit~ de Montreal, C.P. 6128, succursale A, Montreal, Quebec, Canada H3C M7

Francois V. Louveaux
Facult~s Universitaires Notre-Dame de la Paix, Facult~ des Sciences Economiques et Sociales, 8 Rempart de la Vierge,
5000 Namur, Belgium.

Received February 1992


Revised September 1992

In this paper, a general branch-and-cut procedure for stochastic integer programs with complete recourse and first stage binary
variables is presented. It is shown to provide a finite exact algorithm for a number of stochastic integer programs, even in the
presence of binary variables or continuous random variables in the second stage.

stochastic integer programming; L-shaped method; branch-and-cut

I. Introduction

Stochastic integer programs have a well-deserved reputation for being computationally intractable. In
fact, they combine two types of programs which by themselves are often difficult to solve. Stochastic
programs are modeled in two stages. In the first stage, a decision has to be taken without full information
on some random variable. When the value taken by the random variable is known, corrective or recourse
actions can be taken in the second stage. Stochastic integer programs are those for which some variables
are restricted to be integer, either in the first stage or in the second stage.
To the best of our knowledge, the first proposed solution method was a cutting plane algorithm by
Wollmer (1980) for the case where second stage decision variables are continuous and the random
variables are discrete. In a similar vein, Louveaux (1986) has shown that multistage programs having the
block-separability property are equivalent to two-stage problems with first stage discrete variables only.
When block-separability does not hold, it is still possible to construct an extended first stage problem by
including the extensive form of the second stage discrete variables. An example of this procedure is
provided by Bienstock and Shapiro (1988). It is only applicable to problems with a limited number of
realizations of the random variables. Other authors have studied properties of the expected value of the
second stage program when it involves integer decision variables. General results concerning the
continuity of this function have been obtained by Stougie (1985). This type of research has also been
done for specific applications: e.g., Jaillet (1988), or Laporte and Louveaux (1990) for the analysis of
some vehicle routing problems. Several studies have addressed the behavior of various heuristics for
specific problems (see, e.g., Chapters 8 and 21 in Ermoliev and Wets (1988), also containing general
results on stochastic programming). One line of research is the study of the asymptotic optimality of
some heuristics, based on the probabilistic analysis of algorithms. However, Psaraftis (1984) has shown
through an example that optimality is truly asymptotic in the sense that it only holds for problems of
extremely large scale. The need for a practical solution method of general applicability still exists.

0167-6377/93/$06.00 © 1993 - Elsevier Science Publishers B.V. All rights reserved 133
Volume 13, Number 3 OPERATIONS RESEARCH LETTERS April 1993

The object of this paper is to provide such an algorithm for problems with first stage binary decision
variables. The random vectors and the second stage decision variables may be discrete or continuous,
and the application of the method varies accordingly.
The structure of the paper is as follows. In Section 2, we review the definition of two-stage stochastic
linear programs with recourse. We also provide a simple taxonomy for the various types of stochastic
integer programs. The general branch-and-cut procedure, called 'Integer L-shaped' due to its similarity
with the well-known methods of Van Slyke and Wets (1969) for continuous programs, or Benders'
decomposition (1962), is presented in Section 3. We prove its finite convergence in the case of first stage
binary decision variables. In Section 4, we discuss the implementation of the proposed method to
problems with various types of random vectors and second stage decision variables. Improvements are
proposed in Section 5 and an example is provided in Section 6.

2. Two-stage stochastic linear programs with recourse

The general formulation of a two-stage stochastic linear program with fixed recourse is find
man z = c x +E6 min{q(~o)ylWy=h(w) - T ( w ) x , y ~ Y }
s.t. Ax = b, (1)
X ~X,
where c is a known vector in R n~, b a known vector in ~ml, ~ a random N-vector defined on the
probability space (/-2, A, P ) and A and W are known matrices of size m I X n 1 and m 2 × n2, respectively.
For each to, T(co), q(o~) and h(~o) have conformable sizes. Piecing together the stochastic components of
the problem, we obtain a vector ~(~) = (q(oJ), h(w), Tl(~o)..... Tm2(OJ))with N = n 2 + m 2 + (m 2 × n 1)
components, where Ti(w) is the i th row of T(oJ). Transposes have been eliminated for simplicity. E~
represents the mathematical expectation with respect to s~. Let also E __c_~N be the support of ~:, i.e. the
smallest closed subset in R N such that P(~ ~ E ) = 1. If ~: has finite support, there exists a discrete
probability distribution which describes ~.
The above problem is equivalent to the so-called deterministic equivalent program
min z=cx+Q(x) (2)
s.t. Ax=b, x~X,
where
Q( x) = E~Q( x, ~(~o)) (3)
and
Q(x, ~(~o)) = m i n { q ( o J ) y I Wy = h ( o J ) - T(oJ)x, y ~ Y}. (4)
r
The function Q(x) is called the second stage value function. The computation of Q(x) when Q(x, ~)
is unbounded or infeasible for some ~ is similar to the continuous case. We also assume relatively
complete recourse, i.e, {x I Ax = b, x ~ X } ___{x I Q ( x ) < ~} or more simply, complete recourse {Wy, y
Y} = R m~. Of particular interest in this paper are the cases when the sets X or Y define restrictions
requiring some variables to be integer.
In order to characterize the various possible situations, we use the notation a / b / c to represent a
particular class of two-stage programs. The first letter characterizes the first stage variables, and is either
C if all first stage variables are continuous, B if they are all binary, or M when some first stage variables
are continuous and others are binary (mixed integer problems). Similarly, the second letter characterizes
the second stage variables with an identical representation. The third letter is either D when ~ has a
finite support (discrete distribution), or C when ~: is a continuous random variable. Thus, C / C / D
represents a two-stage continuous stochastic program with a discrete distribution. For this case,
well-known characterization theorems and solution algorithms exist (see, e.g., Wets, 1983). For some

134
Volume 13, Number 3 OPERATIONS RESEARCH LETrERS April 1993

classes of problems, it is also useful to know whether or not they possess the block-separable property
(see Louveaux, 1986) and this is denoted by an a d d i t i o n a l / s . For example, M / M / D / s is a stochastic
program with mixed integer first and second stage variables, discrete random variables and block
separable second stage. Note that here, no distinction is made between integer and binary variables,
since integer variables can be transformed into binary variables.

3. The integer L-shaped method

Let X be the polytope defined by the set of constants in X, other than those defining the first stage
variables type. Hence X = . ~ n R+~ for C / * / * problems, X = X n Z+ 1 for B / * / * problems, and
similarly for M / * / * problems. In this section, we assume that at least some first stage variables are
binary. For simplicity, all variables are non-negative.
At a given stage of the method, we consider the so-called current problem
(CP) man cx + 0 (5)
s.t. Ax = b, (6)
DkX >__dk, k = 1 . . . . , s, (7)
Ekx+O>ek, k = l . . . . . t, (8)
x>_O, 0 ~ . (9)
In this current problem, constraints (7) are used to give an appropriate representation of .,g. Usually, ,Y
is relaxed at the initial stage, and additional constraints (7) are added when needed. These constraints
are referred to as feasibility cuts. A set of feasibility cuts is said to be valid if there exists some finite
value s such that x ~,Y if and only if {Dkx > dk, k = 1. . . . . s}. Examples of such relaxed constraints are
induced constraints for second stage feasibility, or subtour elimination constraints in vehicle routing
problems.
Variable 0, along with constraints (8), are used to express 0 as an appropriate approximation of Q(x).
Constraints (8) are referred to as optimality cuts. A set of t optimality cuts is said to be valid if for all
x ~ X , (x, 0) ~ {(x, 0) l E k x + 0 >_ e k, k = 1. . . . . t} implies 0 > Q(x). In practice, it is not required to have
0 >_Q ( x ) for all feasible (x, 0), but simply for the optimal ( x * , 0").
We first present the Integer L-shaped method in general terms.

Step O. Set s := t =: v := 0, ~, := ~. The value of 0 is set equal to - ~ or to an appropriate lower bound


and is ignored in the computation. The only pendant node corresponds to the initial current
problem.
Step 1. Select some pendant node in the list; if none exists, stop.
Step 2. Set v := u + 1; solve the current problem. If the current problem has no feasible solution, fathom
the current node; go to Step 1. Otherwise, let (x ~, 0 ~) be an optimal solution.
Step 3. Check for any relaxed constraint violation. If one exists, add one feasibility cut (7), set s := s + 1,
and return to Step 2. If cx ~ + 0 ~ > ~,, fathom the current problem and return to Step 1.
Step 4. Check for integrality restrictions. If one is violated, create two new branches following the usual
branch and cut procedure; append the new nodes to the list of pendant nodes; return to Step 1.
Step 5. Compute Q ( x ~) and z ~ = cx ~ + Q(x~). If z" < 2 , the update 2.
Step 6. If 0~_> Q(x~), then fathom the current node and return to Step 1. Otherwise impose one
optimality cut (8), set t := t + 1 and return to Step 2.

Bender's decomposition has long been applied to deterministic mixed integer programs or to
stochastic programs with continuous variables. The proposed algorithm is an extension to the case of
stochastic mixed integer programs. It differs from the classical L-shaped method since first-stage binary
variables are now taken into account. Moreover, it can be seen that the fathoming rules are also different
from what is usually done in branch-and-bound. In particular, nodes are not necessarily fathomed when

135
Volume 13, Number 3 OPERATIONS RESEARCH LETTERS April 1993

integrality conditions are satisfied. The following proposition follows immediately from the fathoming
rules and from the definitions of valid sets of cuts.

Proposition 1. For any problem for which a valid set of feasibility cuts and a valid set of optimality cuts
exist, the Integer L-shaped method yields an optimal solution (when one exists) in a finite number of steps.

For most combinatorial problems of interest, valid feasibility cuts can be borrowed directly from the
deterministic setting. As for optimally cuts, a valid set is known to exist for two-stage stochastic linear
programs in continuous decision variables with discrete random variables. In the L-shaped method (Van
Slyke and Wets, 1969), these are defined using the optimal simplex multipliers of the second stage
recourse problem. If follows that the Integer L-shaped method is applicable to all problems belonging to
the * / C / D class. If offers an interesting alternative to the cutting planes method used by Wollmer
(1980). Moreover, as a consequence of a Proposition by Louveaux (1986, Section 5), the method is valid
for * / M / D / s problems when the integer variables belong to the aggregated level decisions. Note that
this property also applies to multistage programs. For several families of deterministic integer problems,
branch-and-bound techniques are known to perform better than cutting planes and we can therefore
expect the same to hold for stochastic integer problems.
However, our purpose here is not to make further developments in that direction, but rather to derive
optimality cuts for problems with first stage binary decision variables. Since these optimality cuts can be
applied in cases where some second-stage variables are also binary, and in cases where the second-stage
random variables are continuous, their use in the integer L-shaped method covers a wider class of
applications than do existing methods. Two assumptions are required.

Assumption 1. Given a binary first stage vector of decision variables x, the function Q ( x ) is computable
from x. (This is frequently the case in location and routing problems, for example).

Assumption 2, There exists a finite value L satisfying L < minx{Q(x)l Ax = b, x ~ {0, 1}hi}. (This is
clearly the case if the original problem is bounded).

Since the first stage decision variables are binary, there are only a finite number of feasible first stage
solutions. Let r = 1. . . . . R, index these feasible solutions.

Proposition 2. Let x i = 1, i ~ S r and x i "~- O, i ~ S r be the r-th feasible solution, and Or the corresponding
expected second-stage value. Define the optimality cut as

O>-(Or-g)( i ~Srxi -- i ~srXi )-(Or-g)([Srl-1)+g , (10)

where I Sr { is the cardinality of S r. Then, the set of optimality cuts (10) defined for all first stage feasible
solutions is a valid set of optimality cuts.

Proof. The quantity Y"i ~ sr xi - Ei ~ sr xi is always less than or equal to I Sr I. It takes the value I Sr I only
when x is the r th feasible solution. Now, when Ei~sr x~ - E ~ S r X~ is equal to I Sr l, the right-hand side
takes the value Or, and otherwise the right-hand side takes a value less than or equal to L. A set of valid
cuts is therefore obtained by imposing one such constraint for each first-stage feasible solution. []
It follows from the proof of Proposition 2 that the procedure is finite as Proposition 1 applies.

4. Implementation

The applicability of the Integer L-shaped method is directly related to Assumptions 1 and 2 being
satisfied. Also, as for all branch-and-cut methods, its efficiency is greatly improved if in addition to

136
Volume 13, Number 3 OPERATIONS RESEARCH LETTERS April 1993

optimality cuts, valid constraints can be generated to provide a lower bounding functional on Q(x). This
is now discussed.
The validity of Assumption 1 is obviously problem dependent. It generally holds when the random
vector has a discrete support of small cardinality, especially if only a limited number of scenarios are
considered in the second stage. When the random vector is continuous, one can resort to approximation
methods normally used in continuous stochastic optimization (Birge and Wets, 1987), such as discretizing
continuous random variables. Moreover, there exists a wide variety of problems for which Q(x) can be
easily computed. Several interesting examples are found in the literature on vehicle routing problems
(VRPs). These include the VRP with stochastic demands (Dror and Trudeau, 1986), the probabilistic
traveling salesman problem (Jaillet, 1988), and the VRP with stochastic travel times (Laporte, Louveaux
and Mercure, 1992).
We now discuss Assumption 2 and the derivation of a lower bounding functional on Q(x). Let
Q ( x , ~) = min {qy I Wy = h - Tx, y > 0 and integer}. (11)
y
As usual, ~ = (q, h, T), Q(x, ~) is set equal to infinity if no second stage solution exists, and to minus
infinity if the problem is unbounded. Also define
R ( x , ~) = m i n { q y l W y = h - Tx, y > 0 } , (12)
y
the solution to the continuous relaxation of Q(x, ~), with similar conventions for the infeasible and
unbounded cases. The expectations of these two functions are
O ( x ) = E e O ( x , ~) (13)
and
R ( x ) = E ~ R ( x , ~), (14)
respectively, with the classical convention '( + ~) + ( - oo) = ( + ~)'.

Proposition 3. Any continuous L-shaped optimality cut is a lower bound on Q( x ).

Proof. First note that Q(x, ~) >_R(x, ~) holds for all x and ~:. Indeed, any feasible solution for (11) is
feasible for (12), so that R(x, sc) = ~ only if Q(x, ~:) = ~. If Q(x, ~) is finite, so is R(x, ~) and the result
holds. Taking expectations on both sides yields Q(x)>_ R(x). The conclusion follows by applying the
continuous L-shaped optimality cut to R(x), namely
Q ( x ) > R ( x ) > R ( x k) + b R ( x k ) ( x - - x k ) , (15)
where x k is any feasible first stage solution, and ~R(x k) is a subgradient of R at x k. []

Corollary 4. A cut for Q(x) is given by


0 > r ( x k) + O R ( x k ) ( x - - x k ) . (16)
Corollary 5. A lower bound on Q( x ) is given by
L = m i n { 0 1 A x = b , 0 < x _ < 1 and (0, x) satisfies (16) for k = 1 , . . . , s } . (17)
x,O

for any finite value s >__1.

Note that (17) defines a finite lower bound on Q(x) for any s _> 1, as long as a feasible x k exists.
Indeed, in such a case, R(x k) is finite and the last term of (16) is bounded below since 0 _<x < 1.
Another observation is that (16) plays a different role from (10). An optimality cut ensures that
0 >_Q(xk), but only at the particular point x* at which it has been defined. For any other integer point,
it reduces to the weaker constraint 0 >_L. On the other hand, the cut defined by (16) is more general in

137
Volume 13, Number 3 OPERATIONS RESEARCH LETTERS April 1993

that it may provide a non-trivial lower bound on Q(x), for several values x. However, when applied to
the point x k, at which it has been defined, it only guarantees that 0 >_ R ( x k ) . In general, R ( x k) < Q ( x k)
since these two values coincide only if the solution to (11) and (12) at x k reveals no integrality gap for all
values of ~:. As such, cuts (16) do not provide a valid finite set of optimality cuts.
Finally, as for the computation of Q ( x ) , there also exist several problems for which the lower bound L
and a lower bounding functional can easily be determined by arguments other than those used to obtain
Corollaries 4 and 5. Applications of these principles and implementation details can be found in two
recent studies on the VRP with stochastic travel times (Laporte, Louveaux and Mercure, 1992) and on a
location problem with stochastic demands (Laporte, Louveaux and Van hamme, 1992).

5. Improved optimality cuts

The optimality cut defined by (10) can be improved by examining bounds on the value of the recourse
function associated with neighbors of the current solution. As in Proposition 2, consider S r, the set of
variable indices for which xi = 1 in the current solution. Define the set N r ( s ) of so-called s-neighbors as
the set of solutions such that ( F . i ~ s X i - ~.i,~sXi)= IS r [ - s . Thus for s = 1, either for one i ~ S r the
variable x,. becomes 0, or for one i ~ Sr it becomes 1. Also define hr(S) as a lower bound on
minx ~ N,o){O(x)} •

Proposition 6. Consider the r-th feasible solution, Or the expected value o f the second-stage f u n c t i o n , a n d the
set Nr(1) o f 1-neighbors. A l s o define a = m a x (0 r - hr(1) , (0 r -- L ) / 2 ) . Then the f o l l o w i n g optimality cut
holds:

O>a( ~_~x i - ~.,xi}+Or-alSrl. (18)


~iESr iq~S r I

Proof. L e t 3 = ( ~ i ~ sX i - Ei ~ srX i) • The right-hand side of (18) is equal to 0 r - a s for an s-neighbor, i.e.,
when 8 = I Sr I - s . This is valid lower bound on Q ( x ) . It is obvious for s = 0. When s = 1, 0 r - a is by
construction bounded above by 0 r - (0 r - A t ( l ) ) =Ar(1). When s = 2, O r - - 2 a is bounded above by
Or -- 2(0 r -- L ) / 2 = L . Now, 0r - sa < L for s > 3 since a > 0. []

Convergence is again guaranteed by 0 > 0 r if 3 = I S r I, and (18) improves on (10) for all 1-neighbors.
Moreover, a further improvement for s-neighbors (s > 1) is sometimes possible.

Proposition 7. Consider the r-th feasible solution, Or the expected value o f the second-stage f u n c t i o n , a n d
l~r(S). I f
( O r -- t ~ r ( $ ) ) ~_~ S ( O r - - A~(1)) (19)
holds f o r all s < (0 r - L ) / ( O r - At(l)), with At(l) < 0 r, then (18) holds with a = 0 r - Ar(1).

Proof. For an s-neighbor, (18) becomes 0 _ a(I Sr I --S) + 0 r -- a l Sr I = Or -- as. The right-hand side is a
valid lower bound on Q ( x ) where x E Nr(S) since (19) implies 0r - a s < 0 r - ( 0 r - A t ( s ) ) = A,(s) for
a = 8r - Xr(1) and s < (0 r - L ) / ( O r - X(1)). When s > (0 r - L ) / ( O r - ar(1)), then Or -- as < L and (18)
remains valid. []

6. Example

The implementation of (18) rests on the computation of Ar(1) (and possibly of Ar(S) , s __>2) and is
therefore problem dependent. It is now illustrated on the following problem: let i = 1. . . . . n, denote n
inputs, and j = 1. . . . . m, denote m outputs. Each input can be used to produce any output. First-stage

138
Volume 13, N u m b e r 3 OPERATIONS RESEARCH LETTERS April 1993

decisions are represented by binary variables xij with costs cq, and equal to 1 if j is produced by i, and
equal to 0 otherwise. Other first stage variables are binary zi, with costs fi, equal to 1 if and only if input
i is used for at least one output. The level of output j obtained when x~j = 1 is a random variable ~ij- A
penalty pj is incurred whenever the level of output j falls below a required treshold d j; in such a case the
binary second-stage variable y] takes the value 1. The problem is then a B / B / * program of the form:

min fizi + ci~xij + Ee min pjy (20)


i=l i=1 j=l j=
n
s.t. ~_, ~i:xij +djyfi > dj, j = 1,...,m, (21)
i=l
xij<zi, =1 ..... n, j= l ..... rn, (22)
xi/,y~{0,1}, i = 1 .... ,n, j = l ..... m, ~ e ~ . (23)

In this problem,
m / )
Q(x)= ~&P ~ ~ij<d r , (24)
j=l 'i•l(j)

where I(j) = {i : xir = 1}. (Similar closed form expressions for Q(x) are often encountered in problems
with binary first-stage variables such as vehicle routing problems, for example). A first possibility is to use
Proposition 7 for Q(x). Define the set N~+(1) as the subset of 1-neighbors for which all current positive
xi/s remain unchanged and one xir currently equal to 0 becomes equal to 1. Observe that among all
1-neighbors of the current solution, only those in Nr+(1) can reduce Q(x). From (24),

Or-Ar(1)<mgx(prP ( ~ ,ij<dj) (25)


J i~l(j)

Also observe that in this example, condition (19) applies. Indeed, 0r - At(s) is determined as the sum of
the s largest values of {prP(Ei E lo)scir < d)}. It follows that A r ( S - 1) - A r ( S ) is non-increasing in s, which
is sufficient for (19) to hold. A second possibility is to use the separability of Q(x) in (24) as

Q( x) = ~ Qj( x), (26)


j=l

with

Qr(x)=prP( Y'~ ~ir<dr). (27)


i ~ l(j)

Using a multicut approach as in Birge and Louveaux (1988), we define

0 = ~ Or (28)
j=l

Table 1

i i
1 2 3 4 5 6
1 10 12 8 6 5 14
2 8 5 10 15 9 12
3 7 14 4 11 15 8
4 5 8 12 10 10 10

139
Volume 13, N u m b e r 3 OPERATIONS RESEARCH LETTERS April 1993

Table 2

i j
1 2 3 4 5 6
1 4 4 5 3 3 8
2 5 .2 4 8 5 6
3 2 8 3 4 7 5
4 3 5 6 4 6 5

and use Proposition 6 to define a valid set of cuts for each 0j separately. Indeed,

Orj=pjP(i ~l(j,,iy<dj) (29)

and

Arj(l) =p:',*,(i)
min P[([t y' ~ij} + ~tj <djl " (30)
i~l(j)
N o t e that in practice, finding t can be relatively easy. F o r instance, if all r a n d o m variables are Poisson
and i n d e p e n d e n t , t is given simply by the r a n d o m variable ~it(t q~I(j)) with the largest p a r a m e t e r value.
Similarly, we m a y use Corollary 4 separately for each c o m p o n e n t j. F o r a given x k,
+

iEl(j)
Using again the notation I(j) = {i : x k. = 1}, the i th component of bR~(xk) is equal to

(-PJ/dj)E['iYP([ i~l(j)
y'~ 'iy <dJ)] if i~I(j)'
and to
(--pJdj)EDj(~ii) if i 4zI( j),
with

Dj=(~ij: E ~ij<d) •
i ~ l(j)
To illustrate, consider the following numerical example. Let n = 4, m = 6, fi= 10 for all i and pj = 40
for all j. T h e cij coefficients are given in Table 1. T h e ~iy are i n d e p e n d e n t Poisson variables with
p a r a m e t e r s as given in Table 2, and, finally, the d e m a n d s d r are given in Table 3.
W e illustrate the g e n e r a t i o n of the cuts for j = 1. First, a lower b o u n d is obtained by letting X~l = 1 for
all i. This gives L 1 = 1.265. A s s u m e a starting solution x~y = 0 for all i, j. Cut (18) b e c o m e s 01 > 40 -
19.368 (Xll "]-X21"~-X31-{'-X41) , with the coefficient a = 19.368 obtained f r o m ~(Orl-L 1 O,while the
continuous cut is 01 __ 40 - 20x n - 25x21 - 1 0 x 3 1 - 15x41. T h e next iterate point includes x n = 1, xzl =
0, X31 = 0, X41 = 1. C u t ( 1 8 ) b e c o m e s 01 >_ - 16.788 + 20.368 ( X l l -- X21 -- X31 "t- X41), with the coefficient a

Table 3

J
1 2 3 4 5 6
dj 8 4 6 3 5 8

140
Volume 13, Number 3 OPERATIONS RESEARCH LETTERS April 1993

now obtained from Ort - Arl(1) , while the continuous cut (16) is 01 > 29.164 - 11.974Xll - 14.968x21 -
5.987x31 - 8.981x4v Cut (18) is stronger than (16) at the current iterate point, with value 23.948 instead
of 8.309. Also, as the coefficient a comes from 0rl - Arl(1) and Arl(l) is obtained when x 2 t becomes 1,
inequality (18) gives an exact bound on the solution x H = 1, x21 = 1, x31 = 0, x4~ = 1. It provides a
non-trivial but non-binding bound for other cases, such as X~l = 0, x2~ =x31 =x4t = 1. On the other
hand, (18) provides a non-trivial but non-binding bound for some cases such as Xtl = 0, x21 = 1, x31 = 1,
Xal = 0, whereas (16) does not.
Cuts (16) and (18) were added each time the amount of violation exceeded 0.1. T h e number of iterate
points is dependent on the branch-and-bound strategies. For this example, the largest number of iterate
points was 21. In that case, the m e a n number of cuts per component was 6.833 cuts of type (16) and 2.5
cuts (18). As extreme cases, 10 integrality cuts were imposed for output 1 and only 4 for output 2, while 4
continuous cuts were imposed for output 3 and only 1 for output 5.
The algorithm was simulated by adding cuts each time a new iterate point was found, then restarting
the branch-and-bound. An estimate of the time needed is obtained by summing up the incremental times
between consecutive iterate points. This yielded a total of 44 minutes on a 386 PC, 16 Mhz with
coprocessor.
The optimal solution is Xll =X13 = X I 5 =X16 =X21 =X22 =X24 =X41 =X42 =X43 =X45 =X46 = 1 and all
other x i / s are 0 with first-stage cost 140, and penalty 13.261, for a total of 153.261. It strongly differs
from the solution of the deterministic problem where outputs equal expected values: x 11 X 12 X 13 X 14 = = =

=X~6 = X21 = X 2 3 =X25 = 0 with first-stage cost 97 and no penalty. The reason is that in the stochastic
case, even if the expected output exceeds demand, there still exists a probability that demand will not be
met.

Acknowledgements

This work was partially supported by the Canadian Natural Sciences and Engineering Research
Council (grant OGP0039682) and by the Centre Interuniversitaire dans les Sciences doctorales du
Management, Belgium. Thanks are due to an anonymous referee for his valuable comments.

References

J.F. Benders, "Partitioning procedures for solving mixed-variables programming problems", Number Math. 4, 238-252 (1962).
D. Bienstock and J.F. Shapiro, "Optimizing resource acquisition decisions by stochastic programming", Management Sci. 34,
215-229 (1988).
J.R. Birge and F.V. Louveaux, "A multicut algorithm for tw¢, stage stochastic linear programs", European J. Oper. Res. 34, 384-392
(1988).
J.R. Birge and R.J.-B. Wets, "Designing approximation schemes for stochastic optimization problems, in particular for stochastic
programs with recourse", Math. Programming Stud. 27, 54-102 (1986).
M. Dror and P. Trudeau, "Stochastic vehicle routing with modified savings algorithm", European J. Oper. Res. 23, 228-235 (1986).
Y. Ermoliev and R.J.-B. Wets (eds.), Numerical Techniques for Stochastic Optimization, Springer-Verlag, Berlin, 1988.
P. Jaillet, "A priori solution of a travelling salesman problem in which a random subset of the customers are visited", Oper. Res. 36,
929-936 (1988).
G. Laporte and F.V. Louveaux, "Formulation and bounds for the stochastic capacitated vehicle routing problem with uncertain
supplies", in: J.J. Gabszewicz, J.F. Richard and L.A. Wolsey (eds.), Economic Decision Making." Games, Econometrics and
Optimization, North-Holland Amsterdam, 1990, 443-455.
G. Laporte, F.V. Louveaux and H. Mercure, "The vehicle routing problem with stochastic travel times", Transportation Sci. 26,
161-170 (1992).
G. Laporte, F.V. Louveaux and L. Van hamme, "Exact solution of a stochastic location problem by an integer L-shaped
algorithm", C.R.T. #716, Universit6 de Montr6al, 1992.
F.V. Louveaux, "Multistage stochastic programs with block-separable recourse", Math. Programming Stud. 28, 48-62 (1986).
H.N. Psaraftis, "On the practical importance of asymptotic optimality in certain heuristic algorithms", Networks 14, 587-596.
Stougie, L., "Design and analysis of algorithms for stochastic integer programming", Ph.D. Thesis, Centre for Mathematics and
Computer Science, Amsterdam, 1985.

141
Volume 13, Number 3 OPERATIONS RESEARCH LE'Iq'ERS April 1993

R. Van Slyke and R.J.-B. Wets, "L-shaped linear programs with applications to optimal control and stochastic programming",
SIAM J. Appl. Math. 17, 638-663 (1969).
R.J.-B. Wets, "Stochastic programming: Solution techniques and approximation schemes", in: A. Bachem, M. Gr6tschel and B.
Korte (eds.), Mathematical Programming: The State of the Art, Springer-Verlag, Berlin, 1983, 566-603.
R.D. Wollmer, "Two-stage linear programming under uncertainty with 0-1 integer first-stage variables", Math Programming 19,
279-288 (1980).

142

You might also like