Solving Stochastic Programs with Simple Integer Recourse
using the Convex Hull of the Objective Function
Master’s Thesis Econometrics, Operations Research & Actuarial Studies Supervisor: Prof. M.H. van der Vlerk
Solving Stochastic Programs with Simple Integer Recourse
using the Convex Hull of the Objective Function
Bram de Jonge
June 21, 2011
Abstract
Contents
1 Introduction 5
2 An alternative representation of the problem 6
3 Properties of the objective function 7
4 The convex hull of the objective function 8
5 The one-dimensional problem 10
5.1 Simple Continuous Recourse . . . 11
6 The higher-dimensional problem 15 6.1 The separable higher-dimensional problem . . . 15
6.2 The general higher-dimensional problem . . . 15
6.2.1 A link to the one-dimensional problem . . . 16
6.2.2 An algorithm to solve the higher-dimensional problem . . . 17
7 Summary and conclusion 25
1
Introduction
We study the simple integer recourse model with fixed technology matrix, defined as min
x cx + Q(x) : Ax ≤ b, x ∈ R n
+ , (1)
where the expected value function Q is Q(x) = Eξ v(ξ− T x),
and v is the value function of the second-stage problem v(s) = min y {q +y++ q−y−: y+≥ s, y− ≥ −s, y+, y−∈ Zm +}, s∈ Rm.
Here c, A, b, q+, q− and the technology matrix T are vectors and matrices of the appropriate size,
q+
≥ 0 and q− ≥ 0, implying that the function v is finite, and ξ is a random vector in Rm. We
assume that for i = 1, . . . , m, Eξ|ξi| < +∞, implying that the expected value function Q is finite.
Where the objective function of a continuous recourse problem, in which the second-stage decision variables y = (y+, y−) are nonnegative reals, is Lipschitz continuous and convex, the objective
function of an integer recourse problem does in general not have these properties. This latter function is continuous only if the distribution of ξ is absolutely continuous, and is convex only under very special conditions on the distribution of ξ, see [4] and [6]. Because we restrict our analysis to models with discretely distributed right-hand sides, we obtain discontinuous, and therefore nonconvex objective functions cx + Q(x).
In Section 2 we give an alternative representation of the problem. Here we use the fact that the expected value function Q of simple recourse models is separable, implying that the higher-dimensional objective function cx+Q(x) can be written as the sum of m one-higher-dimensional functions, that we will denote by R1 up to Rm, respectively. In Section 3 we list some elementary properties
of these one-dimensional functions Ri.
Section 4 refers to the algorithm presented in [3] that provides us with the convex hulls R∗∗ i of
the functions Ri. Our notation f∗∗ for the convex hull of a function f reflects that, for the class
of functions considered, the convex hull may be obtained as the biconjugate function f∗∗, see [5].
Furthermore, a result that is important for the subsequent analysis is proven. Under the additional assumption that the matrix T is invertible, the one-dimensional convex hulls easily provide us with the convex hull of the higher-dimensional objective function. Although standard methods can be used to minimize this convex hull restricted the feasible region, this minimum does in general not correspond to an optimal solution of (1). This is only the case if the convex hull attains its minimum at an interior point of the feasible region. The main contribution of this thesis is to describe how we can find an optimal solution of the simple integer recourse problem in the general case, i.e., also if the convex hull of the objective function attains its minimum on the feasible region at a boundary point of this region.
We start our main analysis of the simple integer recourse problem in Section 5 with the one-dimensional version of the problem. It is described how the convex hull R∗∗
i of the function Rican
be used to find the minimum of the function Ri restricted to the feasible region. Furthermore, we
will show that we can solve the one-dimensional constrained simple integer recourse problem by solving a related one-dimensional unconstrained simple continuous recourse problem.
2
An alternative representation of the problem
The expected value function Q of a simple integer recourse problem, see [4], is separable and can be expressed as Q(x) = m X i=1 Qi(x), x∈ Rn, with Qi(x) = qi+Eξidξi− Tixe ++ q− i EξidTix− ξie + ,
where ξiis the ith element of the random vector ξ, qi+and qi− the ith elements of the second-stage
objective coefficients vectors q+and q−respectively, and T
ithe ith row of the matrix T . We define
the vector z ∈ Rmof tender variables as z = T x, and we define for i = 1, . . . , m, the functions on
R:
gi(zi) = Eξdξi− zie+,
hi(zi) = Eξdzi− ξie+,
ˆ
Qi(zi) = q+i gi(zi) + q−i hi(zi).
We define the function ˆQ on Rmas
ˆ Q(z) = m X i=1 ˆ Qi(zi).
We now have the following equivalent formulations of the expected value function Q:
Q(x) = m X i=1 Qi(x) = m X i=1 ˆ Qi(zi) = ˆQ(z).
We assume that the matrix T is invertible, and we let T−1 denote the inverse of T . It follows
that x = T−1z solves z = T x for x for each z ∈ Rm. Notice that the assumed invertibility of the
matrix T implies that T is a square matrix. Therefore, the dimension n of the vector x equals the dimension m of the vector z = T x. In the sequel, we will use m to refer to the dimension of the vector z, thereby using the standard notation for the dimension of this vector within existing literature about simple recourse models. We define ˆc and ˆA as
ˆc = cT−1, and
ˆ
A = AT−1,
respectively. This allows us to state the objective function of (1) as ˆcz + ˆQ(z),
the lineair constraints Ax ≤ b as ˆ
Az≤ b,
and the nonnegativity constraints x ∈ Rn + as
T−1z≥ 0.
We denote the feasible region of the vector z ∈ Rmby C:
C =nz∈ Rm: ˆAz
It follows that (1) is equivalent to min
z nˆcz + ˆQ(z) : z∈ C
o .
For ease of notation, we define for i = 1, . . . , m, the functions Rion R as
Ri(zi) = ˆcizi+ ˆQi(zi),
and we define the function R on Rmas
R(z) =
m
X
i=1
Ri(zi) = ˆcz + ˆQ(z).
This allows us to give a second equivalent formulation of our initial problem (1): min
z {R(z) : z ∈ C} . (2)
In the sequel, we will mainly focus on this representation to study the problem.
3
Properties of the objective function
From now on, we will assume that ξ is a discretely distributed random vector with a finite number of mass points. This allows us to determine the convex hull of the objective function R, see [3]. We note that any distribution can be approximated by a discrete distribution, see [6] for stability results with respect to such approximations. We denote the support of ξ by Ξ = ξ1, . . . , ξp . For i = 1, . . . , m, we denote the p mass points of the ith element of the random vector ξ by ξ1
i, . . .,
ξip, with ξi1< . . . < ξ p
i. Even though a specific element of the random vector ξ does not necessarily
have p different mass points, we use, for ease of notation, p to refer to the number of mass points of a specific element of ξ. The following properties of the one-dimensional functions Ri follow
immediately from the properties of the one-dimensional functions ˆQi stated in [3].
(a) Ri is a finite function, with discontinuity points in Di∞, where
D∞i = [ ξj i∈Ξ n ξij+ Z o , i = 1, . . . , m;
(b) Ri is linear in between neighbouring discontinuity points with slope ci;
(c) Ri is lower semicontinuous;
(d) Riis semi-periodic with period 1 on the intervals (−∞, ξi1] and [ξ p
i, +∞), where the notion of
semi-periodicity is defined equivalent to its definition in [3], i.e., a function on a real interval is semi-periodic with period π if it is the sum of an affine function and a function that is periodic with period π.
We continue with an assumption that implies that the lower level sets of the functions Ri, and
therefore also the lower level sets of the function R, are bounded. Assuming in addition that C 6= ∅, we may conclude that (2) always has a solution.
Assumption 1. We assume that for i = 1, . . . , m, it holds that −qi−< ˆci< q+i .
4
The convex hull of the objective function
An algorithm for the construction of the convex hull ˆQ∗∗
i of the one-dimensional expected value
functions ˆQi of simple integer recourse problems with fixed technology matrix and discretely
dis-tributed right-hand sides is presented by [3]. The convex hull f∗∗ of a function f is defined as
the (pointwise) greatest convex function that is majorized by f. Using the convex hulls ˆQ∗∗i , we
readily obtain the convex hulls R∗∗
i of the functions Ri as defined in the previous section:
R∗∗i (z) = ˆciz + ˆQ∗∗i (z), z∈ R.
The following properties of the one-dimensional convex hulls R∗∗
i follow immediately from the
properties of the convex hulls Q∗∗
i presented in [3]:
(i) The convex hull R∗∗
i is a continuous piecewise-linear function with ‘knots’ in the set Di∞,
where we define a knot as a point ¯z ∈ R where R∗∗
i is not differentiable.
(ii) The convex hull R∗∗
i is affine with slope −q+i + ˆci on the interval (−∞, ψ1] and affine with
slope q−
i + ˆci on the interval [ψs, +∞), where ψ1 is a knot in [ξi1− 1, ξ1] and ψs is a knot
in [ξp i, ξ
p
i + 1]. Assumption 1 ensures us that all lower level sets of the convex hulls R∗∗i are
bounded.
(iii) The convex hull R∗∗
i of the function Riequals the convex hull of the piecewise-linear function
Rpli that is obtained by connecting neighbouring points (d, Ri(d)), d ∈ Di∞.
We continue with two lemmas. Lemma 2 is important for our further analysis and tells us that the maximum distance between two neighbouring discontinuity points of Ri at which Ri equals its
convex hull R∗∗
i equals 1. Lemma 1 will be used to prove Lemma 2. From now on, we assume that
the number 0 is not contained in the set N.
Lemma 1. Fora, b∈ R with a < b and for n ∈ N, it holds that Ri(b + n) − Ri(a + n) ≥ Ri(b) − Ri(a).
Proof. Using the alternative representations
gi(zi) = ∞ X k=0 Pr {ξi> zi+ k} , and hi(zi) = ∞ X k=0 Pr {ξi< zi− k} ,
of the respective functions gi and hi, see [4] for details, it can be verified that for fixed n ∈ N,
Ri(zi+ n) − Ri(zi) = ˆcin− qi+ n−1 X k=0 Pr {ξi> zi+ k} + q−i n X k=1 Pr {ξi< zi+ k} ,
which is non-decreasing as a function of zi. Hence, Ri(b + n) − Ri(b) ≥ Ri(a + n) − Ri(a), which
proves the claim.
Lemma 2. Let ¯D∞i denote the set of discontinuity pointsd∈ D∞
i at whichRi equalsR∗∗i ,
¯ D∞
i = {d ∈ Di∞: Ri(d) = R∗∗i (d)} .
Letd1 andd2 be neighbouring points in ¯D∞i , i.e.,
d1∈ ¯Di∞,
d2= inf d ∈ ¯Di∞: d > d1 .
Proof. Take an arbitrary d1∈ ¯Di∞and let d2= inf d ∈ ¯Di∞: d > d1 . It follows from the
semiperi-odicity of R on [ξp
i, +∞), see (d) in Section 3, and from the fact that R∗∗ is affine on [ψs, +∞),
see (ii) above, that {ψs+ N} ⊂ ¯
D∞
i . This implies that d2< +∞. Let s = (R∗∗i )0+(d1) denote the
right derivative of the function R∗∗
i at d1 and consider the linear function f defined as
f (zi) = R∗∗i (d1) + s(zi− d1), zi∈ R.
We have by construction that f(zi) = R∗∗i (zi) for zi ∈ [d1, d2]. Now assume to the contrary that
d2− d1> 1. According to Lemma 1 we have, for arbitrary n∈ N, that
Ri(d1+ n + 1) − Ri(d1+ n) ≥ Ri(d1+ 1) − Ri(d1),
implying that
Ri(zi) > f(zi), for zi∈ {d1+ N} . (3)
Also according to Lemma 1 we have, for arbitrary n ∈ N and α ∈ [0, 1], that Ri(d1+ n + α) − Ri(d1+ n) ≥ Ri(d1+ α) − Ri(d1),
implying that
Ri(zi) > f(zi), for zi∈ [d1+ n, d1+ n + 1], (4)
if Ri(d1+ n) > f(d1+ n). Because this condition is fulfilled for each n ∈ N, see (3), it follows that
Ri(zi) > f(zi) = R∗∗i (zi) for zi ∈ (d1, +∞), implying that d2 = +∞. Because d2 is known to be
finite, the assumption that d2− d1> 1 leads to a contradiction, implying that d2− d1≤ 1.
This proof is illustrated by Figure 1. This figure shows the objective function Ri(zi) of a simple
integer recourse problem and a function f(zi) with f(d1) = Ri(d1) for d1 = 0.8, and such that
d2− d1> 1, implying that Ri(zi) > f(zi) for zi∈ (0.8, 1.8]. It follows from (3) that Ri(zi) > f(zi)
for zi∈ {0.8 + N}. Combining this with (4) we have that Ri(zi) > f(zi) on the intervals [1.8, 2.8],
[2.8, 3.8], . . ., implying that Ri(zi) > f(zi) for zi∈ (d1,∞), and that d2= +∞.
0 0.5 1 1.5 2 2.5 3 3.5 4 1 1.5 2 2.5 3 3.5 4 4.5 5
Figure 1: The function Ri(zi) of a simple integer recourse problem and a function f(zi) with
f (0.8) = R(0.8) and f (zi) < Ri(zi) for zi ∈ (0.8, 1.8].
The convex hull R∗∗(z) of the function R(z) = Pm
This function is a convex polyhedral function on Rm. Minimizing this function on the convex set C
boils down to solving a convex piecewise-linear programming problem that is, from a computational point of view, not too difficult to solve. However, the optimal solution of this problem does in general not correspond to an optimal solution of (2). This is only the case if the minimum of R∗∗ is attained in an interior point of the feasible region C. This problem will be addressed in
the following sections. We will start with the one-dimensional problem in Section 5, the higher-dimensional problem follows in Section 6.
5
The one-dimensional problem
We will study the one-dimensional version of problem (2), min
z∈R{R(z) : z ∈ C} , (6)
with C = [a, b] ⊆ R and a < b. In this one-dimensional setting we have that R(z) = R1(z). This
constrained minimization problem is equivalent to the unconstrained minimization of the extended real function ¯R that we define as
¯ R(z) =
(
R(z), z∈ C, +∞, z /∈ C.
Obviously, minimization of the function ¯R in turn is equivalent to minimization of its convex hull ¯
R∗∗. Section 4 refers to an algorithm that determines the convex hull R∗∗ of the function R.
However, on the interval [a, b], the convex hull ¯R∗∗of ¯R does not necessarily equal the convex hull
R∗∗. This is caused by the fact that the convex hull R∗∗ restricted to the interval [a, b] is also
affected by the definition of the function R outside this interval. We continue with a method to determine the convex hull ¯R∗∗, which will be illustrated by Example 1 in Section 5.1.
Restricted to the interval [a, b], we have that the convex hull R∗∗ equals the convex hull of the
piecewise-linear function that is obtained by connecting neighbouring points (d, R(d)), d ∈ D∞∩
[a, b], the point (a, R∗∗(a)), and the point (b, R∗∗(b)), while the latter two points should be replaced
by the points (a, R(a)) and (b, R(b)) in order to determine the convex hull ¯R∗∗. Notice that
R(a)≥ R∗∗(a) and R(b) ≥ R∗∗(b), which implies that ¯R∗∗(z) ≥ R∗∗(z) for z ∈ R.
We might use the convex hull R∗∗ as the first step to determine the convex hull ¯R∗∗. We will
denote by D the set of discontinuity points of R in the interval [a, b] at which R equals its convex hull R∗∗,
D ={z ∈ D∞∩ [a, b] : R(z) = R∗∗(z)} .
These points easily follow from applying the algorithm that is mentioned before. In between each pair of neighbouring points d1, d2∈ D the convex hull R∗∗ is linear. Combined with the fact that
¯
R∗∗(z) ≥ R∗∗(z) for z ∈ R, we have that ¯R∗∗(z) = R∗∗(z) for z ∈ [d1, d2]. Because this holds for
each interval [d1, d2] between neighbouring points d1, d2 ∈ D, we have that ¯R∗∗(z) = R∗∗(z) for
z∈ [dmin, dmax], with
dmin= inf D,
dmax= sup D.
Furthermore, because the maximum distance between two neighbouring points z where R∗∗(z) =
R(z) equals 1, it follows from Lemma 2 that dmin∈ [a, a + 1),
In particular, the point a + 1 is excluded from the first interval above, because inf D = a + 1 would imply that there exists a z ∈ [a, a + 1) with z ∈ D, leading to a contradiction. With a similar reasoning we have that sup D 6= b − 1. On the intervals [a, dmin] and [dmax, b], the convex hull
¯
R∗∗ can, for example, be determined by applying the Graham scan, see [1]. For completeness, we
observe that ¯R∗∗(z) = +∞ for z /∈ C. The following corollary is an immediate consequence of the
previous analysis.
Corollary 1. If the convex hullR∗∗ restricted to the set[a, b] attains its minimum z∗∗ at the point
a, the interval [a, a + 1) contains an optimal solution ˆz of (6). Similarly, if R∗∗ restricted to[a, b]
attains its minimumz∗∗ at the pointb, the interval (b− 1, b] contains an optimal solution ˆz of (6). In Section 6.2.1 we will generalize this corollary to the higher-dimensional problem.
5.1
Simple Continuous Recourse
In this section we will show that we can solve the one-dimensional constrained simple integer recourse problem (6) by solving a related one-dimensional unconstrained simple continuous recourse problem. This is worthwhile because very efficient algorithms exist for solving simple continuous recourse problems, see for example [7]. The one-dimensional unconstrained simple continuous recourse problem is defined as
min
z∈R{¯cz + S(z)} , (7)
where the expected value function S is S(z) = ϕ+E
θ(θ − z)++ ϕ−Eθ(z − θ)+, z∈ R, (8)
with ϕ+
≥ 0, ϕ− ≥ 0, and θ is a random variable with E
θ|θ| < +∞, implying that the expected
value function S is finite. If the random variable θ is discretely distributed, the expected value function S is a convex piecewise-linear function, see for example [2]. Each knot of this function corresponds to a mass point of the distribution of θ, and the corresponding probabilities are
Pr {θ = z} = S+0 (z) − S−0 (z)
ϕ++ ϕ− , (9)
where S0
+ denotes the right derivative and S−0 denotes the left derivative of S. In the previous
section we obtained the convex hull ¯R∗∗ of the function ¯R. This convex hull is piecewise-linear
on the interval [a, b], and has value +∞ outside this interval. In order to obtain a function that equals the expected value function of an unconstrained simple continuous recourse problem (7) we let the convex piecewise-linear function ˜R∗∗ be defined as
˜ R∗∗(z) = ¯ R∗∗(a) + ϕ+(a − z), z ≤ a, ¯ R∗∗(z), a≤ z ≤ b, ¯ R∗∗(b) + ϕ−(z − b), z ≥ b.
To ensure that the function ˜R∗∗ is convex we should choose ϕ+ and ϕ− in such a way that
ϕ+
≥ −( ¯R∗∗)0
+(a), and that ϕ−≥ ( ¯R∗∗)0−(b). In addition, we should choose the values of ϕ+ and
ϕ− stricly positive, to be sure that the minimum of the function ¯R∗∗ equals the minimum of the
function ˜R∗∗.
We now have that the function ˜R∗∗ equals, up to a constant, the expected value function S of the unconstrained simple continuous recourse problem (7) with θ a discretely distributed random variable with mass points and corresponding probabilities determined by the knots of the function
˜ R∗∗,
Pr {θ = z} = ( ˜R∗∗)0+(z) − ( ˜R∗∗)0−(z)
If the feasible region C is only bounded at the right, we let ϕ+equal minus the slope of the function
R∗∗on the interval (−∞, ψ1]. Similarly, if C is only bounded at the left, we let ϕ−equal the slope
of R∗∗ on the interval [ψs, +
∞). Assumption 1 in Section 3 ensures that, in these cases, we end up with a strictly positive value of ϕ+ or ϕ−, respectively. Both ψ1and ψsare specified by (ii) in
Section 4.
Observing that R(z) = ˆcz + ˆQ(z), we note that the slopes of the function ˜R∗∗ depend on the
slope ˆc. Thus, in determining the simple continuous recourse representation ¯cz + S(z) we may either incorporate ˆc in S and set ¯c = 0, or choose ¯c = ˆc. The function ˜R∗∗ as constructed above
incorporates ˆc, we should therefore set ¯c = 0. In order to choose ¯c = ˆc, we should increase ϕ+
with ˆc and decrease ϕ− with ˆc. To show the equivalence of the two representations, we define the
extended real function ¯Q on R as
¯ Q(z) = (ˆ Q(z), z∈ C, +∞, z /∈ C. It follows that ¯ R∗∗(z) =((ˆcz + ¯Q(z))∗∗= ˆcz + ¯Q∗∗(z), z ∈ C, +∞, z /∈ C,
implying that S(z) can be written as
S(z) = ˆca + ¯Q∗∗(a) + ϕ+(a − z), z ≤ a, ˆcz + ¯Q∗∗(z), a≤ z ≤ b, ˆcb + ¯Q∗∗(b) + ϕ−(z − b), z ≥ b, = ˆcz + ¯ Q∗∗(a) + (ϕ++ ˆc)(a − z), z ≤ a, ¯ Q∗∗(z), a≤ z ≤ b, ¯ Q∗∗(b) + (ϕ−− ˆc)(z − b), z≥ b. = ˆcz + ˜S(z),
where ˜S equals the expected value function ˜
S(z) = ˆϕ+Eθ(θ − z)++ ˆϕ−Eθ(z − θ)+, z∈ R,
of a simple continuous recourse problem, with ˆϕ+ = ϕ++ ˆc, and ˆϕ− = ϕ−− ˆc, and where θ has the same distribution as in (8).
We continue with an example that illustrates the relation between the one-dimensional constrained simple integer recourse problem (6) and the one-dimensional unconstrained simple continuous recourse problem (7).
Example 1. We consider the simple integer recourse program min
z∈R{R(z) : z ≥ 2.2} , (10)
R(z) = 0.2z + Eξdξ − ze++ Eξdz − ξe+,
where the random variable ξ has support Ξ = {1, 3.4, 3.7} with respective probabilities 0.5, 0.3, and 0.2. We denote the feasible region of the decision variable z by C:
C ={z ∈ R : z ≥ 2.2} = [2.2, ∞).
The graph of the function R and its convex hull R∗∗ are shown in Figure 2. Restricted to the
feasible region C, the convex hull R∗∗ attains its minimum at z∗∗= 2.2. However, this is not the
optimal solution ˆz of (10). The set of points z ∈ D∞∩ C where the function R equals its convex
hull R∗∗ is given by
giving dmin:= inf D = 2.7, and dmax:= sup D = +∞. This implies that on the interval [2.7, ∞),
the convex hull ¯R∗∗of the function ¯R equals the convex hull R∗∗of the function R. On the interval
[2.2, 2.7], we apply the Graham scan to determine the convex hull ¯R∗∗. We choose ϕ+equal to 1.8
to ensure that ϕ+ > ( ¯R∗∗)0
+(2.2)= 1.3 as required. Because ¯R∗∗(2.2) = 2.44, the function ˜R∗∗ that follows is
˜
R∗∗(z) =(2.44 + 1.8(2.2 − z), z ≤ a,¯
R∗∗(z), z≥ a.
Figure 3 shows the functions R and ˜R∗∗. The latter function is, up to a constant, equal to the
expected value function
S(z) = 1.8Eθ(θ − z)++ 1.2Eθ(z − θ)+, z∈ R,
of the simple continuous recourse problem (7), with θ a discretely distributed random variable with support Θ = {2.2, 2.4, 2.7, 3, 3.7, 4}, each mass point corresponding to a knot of the function
˜
R∗∗. The corresponding probabilities are given by (9) and are equal to 1 6, 5 18, 2 9, 1 7, 5 63, and 1 9,
respectively. The value ϕ− = q−+ ˆc = 1.2 equals the slope of the function R∗∗ on the interval
[4, +∞). We choose, as explained before, ¯c equal to 0. The optimal solution of the obtained simple continuous recourse problem, and therefore also the optimal solution of the simple integer recourse problem (10), is ˆz = 2.7. The corresponding optimal value of the simple integer recourse problem equals R(2.7) = 2.04. 0 0.5 1 1.5 2 2.5 3 3.5 4 1.5 2 2.5 3
0 0.5 1 1.5 2 2.5 3 3.5 4 1.5
2 2.5 3
6
The higher-dimensional problem
We will now study the higher-dimensional problem (2), min
z {R(z) : z ∈ C} . (11)
We have, similar to the one-dimensional setting, that this constrained minimization problem is equivalent to the unconstrained minimization of the extended real function ¯R defined as
¯ R(z) =
(
R(z), z∈ C, +∞, z /∈ C.
We will start this section with a special case in which the higher-dimensional problem is separable, which allows to follow the same approach as in the one-dimensional case. Subsequently, we consider the general non-separable case that requires a different approach.
6.1
The separable higher-dimensional problem
We recall from Section 2 that the objective function R of (11) is separable, i.e.,
R(z) =
m
X
i=1
Ri(zi), z∈ Rm.
In the previous section, we came up with a procedure to find the optimal solution of the one-dimensional problem (6). However, in general, we can not apply this procedure to minimize each function Ri, and thus the function R, in this higher-dimensional setting. This is caused by the fact
that the variables zi are linked by the constraints z ∈ C. Only if the constraints are also separable,
i.e., if each constraint involves only one of the variables zi, we can minimize each function Ri
separately in order to find the optimal solution of (11). Let us state the feasible region C as formulated in Section 2 again,
C =nz∈ Rm: ˆAz≤ b, T−1z≥ 0o.
The constraints ˆAz≤ b, T−1z≥ 0, are separable if and only if each row of the matrix ˆA and each
row of the matrix T−1 has at most one element unequal to zero. Knowing that ˆA is defined as
ˆ
A = AT−1, and that T−1 denotes the inverse of the matrix T , this is for example the case if both
A and T are identity matrices. If the constraints z∈ C are separable, the feasible region C can be written as
C ={z ∈ Rm: ai ≤ zi≤ bi, i = 1, . . . , m} .
By solving the one-dimensional problems min
zi∈R{R
i(zi) : ai≤ zi≤ bi} , i = 1, . . . , m,
with respective resulting optimal solutions ˆz1, . . . , ˆzm, we immediately obtain the optimal solution
ˆz = (ˆz1, . . . , ˆzm) of (11) in this setting.
6.2
The general higher-dimensional problem
6.2.1 A link to the one-dimensional problem
An immediate consequence of Corollary 1 in Section 5 is that if the one-dimensional function R∗∗
restricted to the set [a, b] attains its minimum at a point z∗∗ that is a boundary point of the set
[a, b], then the distance ˆz − z∗∗ between the optimal solution ˆz of (6) and the point z∗∗ is strictly
smaller than 1. Or, equivalently, that the distance between ˆz and the boundary bd[a, b] = {a, b} of the feasible region [a, b] is strictly smaller than 1. The following lemma generalizes the latter result to the higher-dimensional problem.
Lemma 3. Let ˆz be an optimal solution of (11). If the function R∗∗ restricted to the feasible regionC attains its minimum at a point z∗∗ that is a boundary point ofC, i.e. if z∗∗ ∈ bd C, then the infinity norm distance
inf
z∈bd Ckz − ˆzk∞< 1.
Proof. Let z∗∗ ∈ bd C be an optimal solution of R∗∗ restricted to C. Let ¯z ∈ C be arbitrarely chosen such that the infinity norm distance between ¯z and bd C is greater than or equal to 1. We will show that ¯z is not an optimal solution of (11). This proof is illustrated by Figure 4. Although this figure shows a situation with only one constraint, this is a general lemma that holds under the presence of any number of constraints.
Let ¯D∞
i denote the set of discontinuity points d ∈ D∞i at which Ri equals R∗∗i ,
¯ D∞
i = {d ∈ Di∞: Ri(d) = R∗∗i (d)} , i = 1, . . . , m.
Let ¯D∞ denote the set of points in Rm at which R equals R∗∗,
¯ D∞= d ∈ Rm: d i∈ ¯Di∞, i = 1, . . . , m . Let dl i and dui, i = 1, . . . , m, be defined as dli= max d ∈ ¯D∞i : d < ¯zi , dui = min d ∈ ¯Di∞: d > ¯zi .
It follows from Lemma 2 that dl
i ∈ [¯zi− 1, ¯zi), and that dui ∈ (¯zi, ¯zi+ 1], for i = 1, . . . , m. Let B
be defined as the following neighbourhood of ¯z: B =z ∈ Rm: dl
i≤ zi≤ dui, i = 1, . . . , m .
The set B is a box with ¯z ∈ int B. Because the infinity norm distance between ¯z and bd C is greater than or equal to 1, we have the crucial property that B ⊂ C. Let ¯Dbd denote the set of
points in ¯D∞that are on the boundary bd B of the set B,
¯
Dbd= ¯D∞∩ bd B.
Because R∗∗(d) = R(d) for d ∈ ¯D∞, we obviously have that R∗∗(d) = R(d) for d ∈ ¯D
bd. Let
dmin∈ ¯Dbdbe a point that minimizes R∗∗ on ¯Dbd, i.e.,
min R∗∗(d) : d ∈ ¯D
bd = R∗∗(dmin).
We let L = conv {z∗∗, ¯z} denote the set of points on the line segment between z∗∗ and ¯z and let ˜z
denote the unique point that is both on the boundary bd B of the set B, and on the line segment between z∗∗ and ¯z, i.e.,
˜z ∈ bd B ∩ L = {˜z} . We will now show that
implying that ¯z is not an optimal solution of (11).
Inequality (1) holds because R∗∗is a lower bound for R. Because z∗∗minimizes R∗∗on C, we have
that R∗∗(˜z) > R∗∗(z∗∗). Because ˜z is on the line segment between z∗∗ and ¯z, and because R∗∗
is convex, inequality (2) follows. The point ˜z can be written as a convex combination of a set of points d1, . . . , dk
∈ ¯Dbdsuch that R∗∗is linear on conv d1, . . . , dk . In Figure 4 we have that ˜z ∈
conv d1, d2 and that R∗∗is linear on conv d1, d2
. Because ˜z ∈ conv d1, . . . , dk , and because R∗∗ is linear on conv d1, . . . , dk , we have that R∗∗
(˜z) ≥ R∗∗( ¯d) for some ¯d∈ convd1, . . . , dk . Because dmin minimizes R∗∗ on ¯Dbd, it follows that R∗∗( ¯d)≥ R∗∗(dmin), implying inequality (3).
Equality (4) follows from the fact that dmin∈ ¯Dbd, and that R equals R∗∗ on ¯Dbd. Inequality (5)
follows from the optimality of ˆz.
Notice that we do not restrict this lemma to the neighbourhood of the constraints that are binding at z∗∗. This is caused by the fact that, under the presence of the non-binding constraints, the
optimal solution ˆz of (11) might be different from the optimal solution ˆz in the case that these constraints are absent.
B L az = b d1 d2 z∗∗ ˜z ¯z
Figure 4: The plane R2with the feasible region C at the right of the line az = b, a point z∗∗where
the convex hull R∗∗restricted to C attains its minimum, and a point ¯z that can not be an optimal
solution of (11), points where R∗∗ equals R are indicated by •.
6.2.2 An algorithm to solve the higher-dimensional problem
Before we present an algorithm to solve the general higher dimensional problem (11), we introduce some terminology. For each one-dimensional function Ri, i = 1, . . . , m, we define the set Wi of
closed bounded intervals [d1, d2] as
Wi= [d1, d2] ⊆ R : d1∈ D∞i , d2= min d ∈ D∞i , d > d1 .
The endpoints of each interval in the set Wi are neighbouring discontinuity points of the function
Ri, the function R∗∗i is linear on each interval, and the function Ri is linear on the interior of each
interval. We define the set W of closed bounded sets in Rmas the Cartesian product
W = W1× . . . × Wm.
Because the m-dimensional function R(z) equals the sum of the one-dimensional functions Ri(zi),
the function R is linear on the interior of each set w ∈ W . All sets w ∈ W are boxes, and the union of all sets w ∈ W equals the Euclidean space Rm, i.e.,
and only the boundaries of the sets w ∈ W are overlapping, i.e., (int w1) ∩ (int w2) = ∅, w1, w2∈ W, w16= w2.
The following lemma is crucial for our algorithm and tells us that an optimal solution ˆz of (11) equals an optimal solution of the linear program min {ˆcz : z ∈ ¯w∩ C} for some set ¯w∈ W . Lemma 4. There exists a setw¯∈ W such that there is an optimal solution ˆz of the simple integer recourse problem (11) that corresponds to an optimal solution of the linear program
min {ˆcz : z ∈ ¯w∩ C} . (12)
Proof. If each element ˆziof the vector ˆz is a discontinuity point of the corresponding function Ri,
i.e., if ˆzi ∈ Di∞ for i = 1, . . . , m, the proof is obvious. See Figure 5 (a) for an illustration: the
linear program (12) always has ˆz as an optimal solution for one of the sets w1, . . ., w4as shown in
the figure. However, other situations are more complicated, see for example Figure 5 (b) and (c). To prove the lemma in general, we let W denote the collection of sets w ∈ W for which it holds that ˆz ∈ w,
W = {w ∈ W : ˆz ∈ w} ,
and we let M denote the intersection of the sets w ∈ W, intersected with the feasible region C,
M = \ w∈W w ! \ C. (13)
The examples shown in Figure 5 also indicate the respective sets M. We will first show that ˆz is optimal for ˆcz on M, i.e.,
ˆcz ≥ ˆcˆz, z∈ M.
We distinguish, for each dimension i = 1, . . . , m, two cases:
If ˆzi is a discontinuity point of the function Ri, i.e., if ˆzi ∈ D∞i , then both a set w1 with
zi≤ ˆzi for z ∈ w1, and a set w2 with zi≥ ˆzi for z ∈ w2 are included in the set W, implying
that zi= ˆzi for all z ∈ M, since M is (a subset of) w1∩ w2. Thus, these dimensions are fixed
in the set M.
If ˆzi is not a discontinuity point of Ri, i.e., if ˆzi ∈ D/ ∞i , then ˆzi ∈ (d1i, d2i), with d1i, d2i ∈ Di∞
neighbouring discontinuity points of Ri. In this case we have that zi ∈ [d1i, d2i] for all z ∈ M.
Thus, these dimensions are not fixed in the set M. Since Ri(zi) = ˆcizi+ ˆQi(zi), we have
that ˆQi is constant on (d1i, d2i), i.e., ˆQi(zi) = ˆQi(ˆzi) for zi ∈ (d1i, d2i). Furthermore, because
of the lower semicontinuity of the function ˆQi, we have that ˆQi(d1i) < ˆQi(ˆzi) and that
ˆ
Qi(d2i) < ˆQi(ˆzi).
It follows that, for ˜z ∈ M, ˆc˜z < ˆcˆz implies that R(˜z) < R(ˆz) which contradicts the assumed optimality of ˆz. Hence, such ˜z do not exist, so that ˆz indeed minimizes the linear function ˆcz on M .
It remains to show that there always exists a set ¯w∈ W ⊂ W , constituting the set M in the sense of (13), such that ˆz minimizes ˆcz on ¯w. To this end, we introduce some terminology. We let ˆZw,
w∈ W, denote the set of points that minimize ˆcz on w ∩ C, ˆ
Zw= argmin {ˆcz : z ∈ w ∩ C} , w∈ W,
and we let ˆZW denote the union of these sets of optimal solutions,
We will now show that ˆz ∈ ˆZW, which proves our claim. Subsequently, we will illustrate that ˆz /∈ ˆZW gives a contradiction.
Take an arbitrary zM ∈ (conv ˆZW) ∩ M. The set M is nonempty by construction, and it has a
nonempty intersection with conv ˆZW because, for each w ∈ W, there exists a z ∈ ˆZW with z ∈ w.
Because ˆz is optimal for ˆcz on M, and because zM ∈ M, we have that
ˆczM ≥ ˆcˆz. (14)
Take a ˜z ∈ ˆZW such that
ˆc˜z ≥ ˆczM. (15)
Such a ˜z exists because zM ∈ conv ˆZW. Combining (14) and (15) gives
ˆc˜z ≥ ˆcˆz. (16)
Because ˜z ∈ ˆZW by definition, we have that ˜z is optimal for ˆcz on ˜w∩ C for a specific set ˜w∈ W. Because ˆz is by construction also contained in the set ˜w, it follows that (16) holds with equality. Indeed, ˆc˜z > ˆcˆz would imply that ˜z is not optimal for ˆcz on ˜w∩ C. Recall that ˆZw˜ is defined as the
set of points z that minimize ˆcz on ˜w∩ C. Because ˜z and ˆz are both contained in the set ˜w∩ C, because ˜z ∈ ˆZw˜, and because ˆc˜z = ˆcˆz, we have that ˆz also minimizes ˆcz on ˜w∩ C, and therefore
that ˆz ∈ ˆZw˜. Because ˆZW is defined as the union of the sets ˆZw, w ∈ W, we obviously have that
ˆz ∈ ˆZW.
Figure 6 illustrates that ˆz /∈ ˆZW gives a contradiction. The figure shows an optimal solution ˆz of
a two-dimensional simple integer recourse problem. We assume that the linear program (12) has a unique optimal solution both for w1 and w2, that we will denote by ˆzw1 and ˆzw2, respectively. This implies that ˆZW= {ˆzw1, ˆzw2}. These points are located as shown in the figure, and are both unequal to ˆz. Because (conv ˆZW) ∩ M = {ˆzw2}, we should choose zM = ˆzw2. It follows that choosing ˜z equal to ˆzw2 satisfies (15), hence allowing this choice. According to (16), we have that ˆcˆzw2 ≥ ˆcˆz, which contradicts with the assumption that ˆzw2 is the unique optimal solution of (12) for w2.
The foregoing illustration suggests that the introduction of zM is superfluous. However, since we do
not prove that the set ˆZWhas a nonempty intersection with the set M in general, the introduction
of zM is essential for the proof.
ˆz w1 w2 w3 w4 M ={ˆz} (a) ˆz1∈ D1∞, ˆz2∈ D∞2 . ˆz w1 w2 M (b) ˆz1∈ D1∞, ˆz2∈ D/ ∞2 . ˆz M (c) ˆz1∈ D/ 1∞, ˆz2∈ D/ 2∞.
Figure 5: Examples of an optimal solution ˆz of a two-dimensional simple integer recourse problem, together with the corresponding sets M.
ˆz
w1 w2
M
ˆzw1 ˆzw2=zM=˜z
Figure 6: Example of an optimal solution ˆz of a two-dimensional simple integer recourse problem, illustrating that ˆz /∈ ˆZW gives a contradiction.
sets w ∈ W in a structured way. To that end, we denote by Ω(w), w ∈ W , the smallest value the function R∗∗ attains on the set w ∩ C,
Ω(w) = inf {R∗∗(z) : z ∈ w ∩ C} , w∈ W.
Notice that Ω(w) = +∞ if w ∩ C = ∅.
During a run of the algorithm, the set G2 contains the sets ¯w ∈ W for which we have solved
the corresponding linear program (12) and evaluated the value of the function R at the optimal solution ¯z of this linear program. Each iteration of the algorithm starts with the selection of the set ¯w ∈ W that has the lowest corresponding value Ω( ¯w) and that we did not select during an earlier iteration, i.e., we will select ¯w such that ¯w∈ argmin {Ω(w) : w ∈ W \G2}.
Because the infinite number of elements of the set W causes problems in determining the set ¯
w∈ W \G2 such that Ω( ¯w) is minimal, we let, for each set w∈ W , the set N(w) denote the set of
neighbouring sets ˜w∈ W of w,
N (w) ={ ˜w∈ W : w ∩ ˜w6= ∅} , w∈ W.
We maintain the set G1as the set of neighbouring sets ˜w∈ W of the sets in G2, i.e.,
G1= { ˆw∈ N( ˜w) : ˜w∈ G2} .
It follows from the convexity of the function R∗∗ that
argmin
w∈W \G2
Ω(w) = argmin
w∈G1\G2 Ω(w).
This implies that, in order to find the set ¯w∈ W \G2that minimizes Ω( ¯w), we only have to consider
the set G1\G2. Because each set w ∈ W has a finite number of neighbouring sets, and because
only a finite number of sets w ∈ W is added to the set G2 during a run of the algorithm, as will
be explained later, the set G1\G2 has a finite number of elements at any time during a run of the
algorithm. This allows us to determine a set w ∈ G1\G2 that minimizes Ω(w), which boils down
to solving a collection of convex linear problems.
At each moment during a run of the algorithm, the best solution that is found until then is denoted by zopt, with corresponding current best value R(zopt). This solution is the result of solving the
linear program (12) for each set ¯w∈ G2. If this current best solution zopt does not correspond to
As mentioned before, ¯w ∈ W \G2 is selected such that Ω(w) ≥ Ω( ¯w) for w ∈ W \G2. Therefore
Ω( ¯w)≥ R(zopt) implies that
Ω(w) ≥ R(zopt), w∈ W \G2.
Because Ω(w) is a lower bound for the function R∗∗ restricted to the set w, it follows that
R∗∗(z) ≥ R(zopt), z∈ w, w ∈ W \G2.
If we realize that the function R∗∗ is in turn a lower bound for the function R, we conclude that
we will not find a solution better than our current best solution zopt on each set ¯w ∈ W \G2.
Therefore, zopt equals an optimal solution ˆz of (11) and we terminate the algorithm.
We will now explain why the described algorithm always terminates in finite time. We obtain R(z∗∗) as the first upper bound for the optimal value of (11). It follows from Assumption 1 and (ii) in Section 4 that all lower level sets of the functions R∗∗
i are bounded. Therefore, also all
lower levels sets of the function R∗∗ are bounded. In each dimension, the number of discontinuity
points d ∈ D∞
i on a bounded interval is finite. Therefore, the number of sets ¯w∈ W for which
Ω( ¯w)≤ R(z∗∗) is finite.
The complete algorithm is shown below.
Initialization
Take an arbitrary ¯w∈ W such that z∗∗∈ ¯w.
G1:= N( ¯w) G2:= ∅ zopt:= z∗∗ Iteration Take ¯w∈ argmin w∈G1\G2 Ω(w).
If Ω( ¯w)≥ R(zopt), then stop; zopt is an optimal solution.
Let ¯z denote the solution of min {ˆcz : z ∈ ¯w∩ C}. If R(¯z) < R(zopt), then zopt:= z.
G1:= G1∪ N(¯z)
G2:= G2∪ {¯z}
Start a new iteration.
We will illustrate the introduced algorithm with an example. This example is constructed in such a way that a number of steps is required by the algorithm before it will find an optimal solution. Example 2. We consider the simple integer recourse program
min
z∈R2{R(z) : z1+ z2≥ 2.6} , (17)
R(z) = R1(z1) + R2(z2),
R1(z1) = 0.12z1+ Eξdξ1− z1e++ Eξdz1− ξ1e+,
R2(z2) = 0.1z2+ 3Eξdξ2− z2e++ 3Eξdz2− ξ2e+.
The random vector ξ is discretely distributed with marginal distributions Pr {ξ1= 0.2} = 0.8,
Although multiple joint distributions of ξ result in these marginal distributions, the actual joint distribution is not relevant here due to the structure of the simple integer recourse problem. We denote the feasible region of the decision vector z by C:
C =z ∈ R2: z1+ z2≥ 2.6 .
The graphs of the function R1 and R2 are shown in Figure 7 and Figure 8, respectively. The
convex hulls of these functions are also shown. Restricted to the feasible region C, the convex hull R∗∗ of the two-dimensional function R attains its minimum at z∗∗ = (0.6, 2). We will now apply the presented algorithm to find an optimal solution ˆz of (17).
Figure 9 shows the plane R2. Each box in this figure corresponds to a box w ∈ W , the values in
these boxes are the corresponding values of Ω(w). The number of the iteration at which a specific set w is added to the set G2 by the algorithm is shown in superscript. Each box wj ∈ W can be
written as wj=nz∈ Rm: aj1≤ z1≤ bj1, a j 2≤ z2≤ bj2 o .
For ease of notation, we refer to a set wj
∈ W using the notation W(aj1, a j
2). Table 1 shows for
each set w ∈ W that is added to the set G2by the algorithm the number of the iteration at which
this set is added, the corresponding value of Ω(w), the optimal solution ¯zw of the corresponding
linear program (12), and the value of the objective function R at this optimal solution ¯zw.
There are two sets w ∈ W , namely W(0.4, 1.7) and W(0.4, 2), for which we have that z∗∗∈ w. We
choose one of these sets arbitrarely as the set ¯w during the initialization phase of the algorithm. The sets w ∈ W that are added to the set G1 during the initialization phase of the algorithm
depend on this choice. If we choose ¯w for example equal toW(0.4, 1.7), then we have that G1= {W(0.2, 1.3), W(0.4, 1.3), W(1, 1.3), W(0.2, 1.7), W(0.4, 1.7), W(1, 1.7),
W(0.2, 2), W(0.4, 2), W(1, 2)}
after the initialization phase of the algorithm. We set zopt equal to z∗∗ = (0.6, 2) and we obtain
R(z∗∗) = 4.272 as a first upper bound of the optimal value of (17).
During the first iteration of the algorithm we again have that we might choose W(0.4, 1.7) or W(0.4, 2) as the set ¯w. The set W(0.4, 1.7) has ¯zw = z∗∗ as the optimal solution of the
corre-sponding linear program (12). The optimal solution of the linear program (12) correcorre-sponding to the set W(0.4, 2) is ¯zw= (0.4, 2.2). Because R(0.4, 2.2) = 5.068 is greater than the current upper
bound 4.272 of the optimal value of (17), we have that (0.4, 2.2) is not an optimal solution of this problem. As can be seen from Table 1, also during the iterations 3 up to 7 we do not obtain a solution that is better than our current best solution z∗∗ = (0.6, 2). During iteration 8 or 9, the
set ¯w is chosen equal toW(0.2, 2.7) The optimal solution of the corresponding linear program (12) equals ¯zw¯ = (0.2, 2.7) and because R(0.2, 2.7) = 4.094 < R(0.4, 1.7) = 4.272, we have that (0.2, 2.7)
ï1 ï0.5 0 0.5 1 1.5 2 2.5 0 0.5 1 1.5 2 2.5
Figure 7: The function R1(z1) and its convex hull.
0 0.5 1 1.5 2 2.5 3 3.5 2.5 3 3.5 4 4.5 5 5.5
-0.6 0.0 0.2 0.4 1.0 1.2 1.3 1.7 2.0 2.3 2.7 3.0 z∗∗ ˆz z1+ z2= 2.6 z1 z2 5.200 5.024 5.024 5.208 4.207 4.0948,94.0948,9 4.278 4.830 4.174 3.8075 3.8034 3.8956 4.447 ∞ ∞ 3.7993 3.7921,2 4.160 ∞ ∞ 3.7921,2 4.130 ∞ 4.0387 4.130 ∞ ∞ ∞
Figure 9: The plane R2with the feasible region C at the right of the line z
1+z2= 2.6, the respective
values Ω(w), w ∈ W , and in superscript the number of the iteration at which the corresponding set w is added to the set G2 by the algorithm.
Table 1: The sets w ∈ W that are selected by the algorithm.
7
Summary and conclusion
We studied the simple integer recourse model with fixed technology matrix and discretely dis-tributed right-hand side parameters. Previous research provides us with the convex hull of the objective function of the one-dimensional problem, and under the additional assumption that the technology matrix is invertible, also with the convex hull of the higher-dimensional objective func-tion. We are able to minimize these convex hulls using standard methods. However, this minimum does not necessarily correspond to an optimal solution of the simple integer recourse problem if there are constraints present on the first-stage decision variables. We came up with methods to solve the constrained simple integer recourse model using the convex hull of the objective function as a starting point.
We started our analysis with the one-dimensional problem, describing the required adjustments to the convex hull of the objective function in order to guarantee that the minimum of this function corresponds to an optimal solution of the simple integer recourse problem. Furthermore, we showed that we can solve the dimensional simple integer recourse problem by solving a related one-dimensional simple continuous recourse problem, for which efficient special-purpose algorithms exist, see [7].
Our analysis of the higher-dimensional problem started with a special case that can be solved analogous to the one-dimensional problem. After generalizing a property of the one-dimensional problem to the higher-dimensional case, we came up with an algorithm that always yields an optimal solution within finite time. This algorithm is illustrated by an example.
Further research can be directed to a more elaborate study on the performance of the algorithm, for example by applying the algorithm to a large set of random problem instances. The introduced algorithm goes along the sets w ∈ W in a specific order, each time determining the candidate(s) for an optimal solution within the set w, and checking whether the algorithm may terminate. An interesting question is whether using other criteria to determine the order in which the sets w ∈ W are selected results in a better performance of the algorithm.
References
[1] Graham, R.L. (1972). An efficient algorithm for determining the convex hull of a finite planar set. Information Processing Letters 1, 132–133.
[2] Klein Haneveld, W.K., L. Stougie, and M.H. van der Vlerk (1995). On the convex hull of the simple integer recourse objective function. Annals of Operations Research 56, 209–224.
[3] Klein Haneveld, W.K., L. Stougie, and M.H. van der Vlerk (1996). An algorithm for the construction of convex hulls in simple integer recourse programming. Annals of Operations Research 64, 67–81.
[4] Louveaux, F.V. and M.H. van der Vlerk (1993). Stochastic programming with simple integer recourse. Math. Programming 61 (3, Ser. A), 301–325.
[5] Rockafellar, R.T. (1970). Convex Analysis. Princeton University Press, Princeton, New Jersey. [6] Schultz, Ruediger (1992). Continuity and stability in two-stage stochastic integer programming. In Stochastic optimization. Numerical methods and technical applications, Proc. GAMM/IFIP-Workshop, Neubiberg/Ger. 1990, Lect. Notes Econ. Math. Syst. 379, 81-92.