Computers & Operations Research 34 (2007) 2604–2624www.elsevier.com/locate/cor
On a stochastic sequencing and scheduling problem�
A. Alonso-Ayusoa,∗, L.F. Escuderob, M.T. Ortuñoc, C. Pizarrod
aEscuela de CC. Experimentales y Tecnología, Universidad Rey Juan Carlos, Móstoles (Madrid), SpainbCentro de Investigación Operativa, Universidad Miguel Hernández, Elche (Alicante), Spain
cDepto. de Estadística e Investigación Operativa, Universidad Complutense de Madrid, SpaindEscuela de CC. Experimentales y Tecnología, Universidad Rey Juan Carlos, Móstoles (Madrid), Spain
Available online 2 December 2005
Abstract
We present a framework for solving multistage pure 0–1 programs for a widely used sequencing and scheduling problem withuncertainty in the objective function coefficients, the constraint matrix and the right-hand side. The problem has the following form:given a set of operations to be executed along a time horizon, find a schedule to minimize a function included by the expectedoperations cost over the scenarios under consideration, subject to a set of constraints. Typical elements are: limited availability ofthe resources, multiperiod operations, subsets of operations with exclusivity and implicative constraints, precedence relationshipsin the execution of the operations, etc. The stochasticity is in the resources’ consumption by the operations, their availability and theoperations cost along the time horizon. A multistage scenario analysis with complete recourse is used. Given the high dimensions ofthe problem and its combinatorial nature, it is not realistic to obtain the optimal solution for the problem. Instead, we present the so-called Fix-and-Relax Coordination algorithmic framework to exploit the characteristics of the non-anticipativity constraints for eachscenario group in the stochastic model. This exploitation basically consists of selectively exploring the nodes of the branching treesin which the branch-and-bound tree is decomposed while the non-anticipativity constraints are relaxed. The algorithm is specificallydesigned for coordinating and reinforcing the node pruning, and the branching node and variable selection at each branching tree,such that the non-anticipativity constraints are satisfied. Some computational experience is reported.� 2005 Elsevier Ltd. All rights reserved.
Keywords: Sequencing and scheduling; Multistage scenario tree; Branch-and-fix coordination; Fix-and-relax heuristic
1. Introduction
Sequencing and scheduling problems (SSPs) arise in many practical circumstances when planning the utilization ofa production/manufacturing system. Many are basically optimization problems having the following form: given a setof operations to be executed along a time horizon, find a schedule to minimize the value of a given objective functionsubject to various constraints. Typical elements are: limited availability of the resources, multiperiod operations, subsetsof jobs with exclusivity constraints, precedence relationships in the execution of the operations, etc.
� This research has been partially supported by the Grants TIC2003-05982-C05-05 and SEC2002-00112 from MCyT, BFM2002-00281 fromDGICYT, and GRUPOS04/79 from Generalitat Valenciana, Spain.∗ Corresponding author.
E-mail addresses: [email protected] (A. Alonso-Ayuso), [email protected] (L.F. Escudero), [email protected] (M.T. Ortuño),[email protected] (C. Pizarro).
0305-0548/$ - see front matter � 2005 Elsevier Ltd. All rights reserved.doi:10.1016/j.cor.2005.10.007
A. Alonso-Ayuso et al. / Computers & Operations Research 34 (2007) 2604–2624 2605
This type of problems can be formulated as 0–1 models and fall into the category of NP-hard problems. Traditionalbranch-and-bound methods have proved to be very inefficient to solve them. Instead, heuristic and meta-heuristicapproaches have been found to obtain satisfactory solutions for special classes of this type of problems, such asproblems with single period operations and special objective functions (e.g., makespan minimization). See [1–3] for asurvey and research potentials in project scheduling under uncertainty, among others.
On the other hand, there is a vast literature on the polyhedral analysis of the problem and, then, on tightening 0–1 mod-els and facet defining inequalities identification for the deterministic version of the problem, see e.g., [4,5], among others.
Application cases of the SSP considered in this paper can be found in investment planning, see [6], and production unitsmaintenance planning, see [7], among others, besides the proper application in production/manufacturing, see [4,5,8],among others. All of these works only consider the deterministic version of the problem. However, very frequentlythe resource availability as well as the resource consumption by the operations’ execution and, as a consequence, theirexecution cost are uncertain parameters.
Stochastic 0–1 programming has a broad application field. Some approaches represent the problem by the so-calleddeterministic equivalent model (DEM), and use Benders [9] and Lagrangian decomposition schemes. See [10–14] forBenders approaches and [15–23] for Lagrangian approaches, among others. See also [24]. Most of the approaches dealwith the optimization of the objective function expected value. However, there are some approaches that additionallydeal with mean-risk measures, by considering semi-deviations [25] and excess probabilities [22] as risk measure-basedfunctions to optimize. See also [24,26–29], among others.
Most of the stochastic approaches for production planning only consider tactical decisions (to be modelled by usingcontinuous variables) usually related to supply, production and market shipment of raw materials and products, see e.g.,[30]. There are some schemes, see e.g., [14,22,27,31–37], that address strategic and tactical production planning prob-lems (to be modelled by using continuous and 0–1 variables). See [38] for a work on capacity planning under uncertaintythat uses continuous and integer variables. However, we are not aware of any work dealing with large-scale operationalmultistage sequencing and scheduling problems under uncertainty (to be modelled by using 0–1 variables in the DEM).
In this paper we present a 0–1 model for the stochastic sequencing and scheduling (S3) problem under consideration.It allows exclusivity constraints in the selection of the jobs, implicative constraints in the selection of the operations,exclusivity constraints in the assignment of the operations, min time lag and max time lag precedence relationshipsin the starting of the operations execution, resource constrained capabilities, etc. The stochasticity of the resources’consumption by the operations, their availability and the execution cost along the time horizon will be represented bya multistage scenario tree.
Given the high dimensions of the problem and its combinatorial nature, it is not realistic to obtain an optimalsolution. A heuristic is presented for problem solving, so-called fix-and-relax coordination (FRC). A strategy forvariable partitioning allows to selectively explore the active nodes of the branching trees for obtaining (hopefully)good solutions for the problem. The branching trees result from the decomposition of the branch-and-bound tree byrelaxing certain non-anticipativity constraints. The strategy optimizes a two-stage stochastic mixed 0–1 model at eachscenario group in the scenario tree. The proposed approach favorably compares with a plain utilization of two state-of-the-art optimization engines for large-scale problem solving. (We consider a set of randomly generated cases with dozensof thousands of constraints and 0–1 variables). One of the attractive features of the proposed algorithm is that it can beeasily modified to provide the heuristic solution for a broad set of large-scale stochastic mixed 0–1 dynamic problems.
The remainder of the paper is organized as follows. Section 2 states the S3 problem and the elements of the multistagescenario tree. Section 3 presents the formulation of the DEM to consider in this paper. Section 4 proposes a modeltightening approach due to the implications of the operations exclusivity constraints. Section 5 is devoted to themultistage stochastic programming setting to deal with and to illustrate the twin node family (TNF) concept. Section 6presents the FRC approach for problem solving. Section 7 reports on the computational results. Section 8 concludes.The Appendix presents a pseudo-code for the main parts of the algorithm.
2. Problem statement
A time horizon is a set of consecutive time periods (of equal length, in our case) to execute the operations. Let aset of jobs, each of them comprises a set of operations to be executed along the given time horizon. Each operationhas a time window for its execution. The operations must be executed during a given number of consecutive so-called
2606 A. Alonso-Ayuso et al. / Computers & Operations Research 34 (2007) 2604–2624
t = 1 t = 2 t = 3 t = 4
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
= Ω1 = {8, . . . , 15}; = {8, . . . , 11} = {2, 3}; t(5) = 3; (4) = 2
= {1, 3}; = {2, 4 ,5, 8, . . . ,11}
Fig. 1. Scenario tree.
production time periods without preemption. Some jobs are alternative in the sense that one and only one of these jobscan be executed. Let us call a class to a set of alternative jobs. If a job is executed then the operations of the other jobsthat belong to the same class cannot be executed (i.e., they cannot be assigned).
It is assumed that some operations have assigned a dedicated machine (or working station) for their execution. Let ussay that the operations with the same dedicated machine belong to the same type, such that the simultaneous executionof these operations is not allowed. A setup in a dedicated machine can be required between the consecutive executionof two operations. It is allowed that one operation can belong to more than one type.
There are precedence relationships in the execution of the operations. They can be expressed by a directed acyclicgraph, where the nodes are associated with the operations and the arcs refer to the existence of a direct precedencebetween the execution of the operations represented by the from-nodes and the to-nodes of the arcs. The precedenceshave the transitivity property. Two types of precedences are considered, such that a minimum number (type 1) and amaximum number (type 2) of time periods are required between the starting of the executions.
A set of resources with uncertain availability along the time horizon is considered. The operations’ execution canrequire resource consumption in each of its production periods. The resource amount to be utilized depends on severalfactors and it is also an uncertain parameter. Although the resource availability is uncertain at the planning time period,it is assumed to be known at the (beginning of the) period where the resource is required. However, the resourceconsumption by the operations’ execution is only known at the consumption time, which means that the occurrence ofthe resource consumption scenario at a given time period is not known in advance.
The goal consists of determining the time period at which each operation will start its execution (i.e., assignment),if any, such that a set of constraints is satisfied along the scenario tree. The objective function consists of the expectedexecution cost of the operations over the scenarios.
2.1. Scenario tree representation
The uncertainty in the resources’ availability and consumption and the execution cost is to be treated via a scenarioanalysis approach along the stages of a time horizon. To illustrate this concept, consider Fig. 1. Each node in thefigure represents a point in time where the realization of the uncertain parameters take place and a decision has to be
A. Alonso-Ayuso et al. / Computers & Operations Research 34 (2007) 2604–2624 2607
made. The nodes can be associated with the scenario groups, such that two scenarios belong to the same group in agiven stage provided that they have the same realizations of the uncertain parameters up to the stage. According to thenon-anticipativity principle, see [39], both scenarios should have the same value for the related variables with the timeindex up to the given stage.
Let us consider some notation to be used in the rest of the paper:
T, set of stages, also called time stages, along the time horizon. For the sake of an easy presentation we assumewithout loss of generality that there is only one time period in each stage. However, the computational experiencereported in Section 7 considers fewer stages than time periods.
�, set of scenarios for the resources’ availability and consumption and the execution cost.G, set of scenario groups. Let g = |G|.Gt , set of scenario groups in time period t (Gt ⊂ G).�g , set of scenarios in group g, for g ∈ G (�g ⊆ �).Ng , set of ancestor nodes of scenario group g in the scenario tree.Ng , set of descendant nodes of scenario group g in the scenario tree. For technical reasons, it is assumed that g ∈Ng .t (g), time period for scenario group g, for g ∈ G. Note: g ∈ Gt (g).�(g), immediate ancestor of node g in its path down to the root node, for g ∈ G\{1}. Note: �(g)=Ng ∩ Gt (g)−1.
3. Deterministic equivalent model (DEM)
3.1. Sets and parameters
The following is additional notation for the sets and parameters to be used in the paper.Sets:
R, set of resources.I, set of operations.J, set of jobs. Note: for technical reasons to be given below, let us have different indices in the sets I and J, such
that a new set, K, is included by the indices of the sets I and J.C, set of classes of jobs.Ti , set of feasible time periods to start the execution of operation i, for i ∈ I (Ti ⊆T).Ij , set of operations included in job j, for j ∈ J (Ij ⊆ I).Jc, set of jobs that belong to class c, for c ∈ C (Jc ⊆ J).M, set of types of operations.Im, set of operations that belong to type m, for m ∈M (Im ⊆ I).A1 (resp., A2), set of ordered pairs of operations with precedence relationship type 1 (resp., type 2).
Deterministic parameters:
ei, �i , earliest and latest time periods for starting the execution of operation i, respectively, for i ∈ I. Note: ei, �i ∈Ti
and Ti ⊆ {ei, ei+1, . . . , �i}.di , number of the so-called production time periods that are required for the execution of operation i, for i ∈ I. Note:
t ∈Ti implies that 1� t � |T| − di + 1.dm, setup time between the ending and the starting of the execution of two operations that belong to type m, for m ∈M.p1
ab and p2ab, minimum and maximum number of time periods (so-called time lag) between the starting of the execution
of the operations a and b, for (a, b) ∈A1 and (a, b) ∈A2, respectively.
Uncertain parameters for each scenario group g ∈ G:
wg , weight factor assigned to scenario group g.o
grih, amount of resource r that is required by the execution of operation i during its hth production time period under
scenario group g, for r ∈ R, h= 1, 2, . . . , di, i ∈ I.
2608 A. Alonso-Ayuso et al. / Computers & Operations Research 34 (2007) 2604–2624
Ogr , available capacity of resource r at time period t (g) under scenario group g, for r ∈ R.
cgi , execution cost of operation i under scenario group g, for i ∈ I.
3.2. Mathematical formulation
Among the different alternatives to model the problem, we use the step variable based formulation given in [40], dueto the good results shown in [41].
Strategic variables: They are 0–1 variables, such that
yj ={
1 if job j is selected for execution0 otherwise
∀j ∈ J.
Sequencing and scheduling variables: They are 0–1 variables, such that
zgi =
{1 if operation i starts its execution by time period t (g) under scenario group g,
0 otherwise
∀g ∈ Gt , t ∈T : ei � t, i ∈ I.
The execution time interval for operation i is t (g), t (g)+ 1, . . . , t (g)+ di − 1 for zgi = 1 and z
�(g)i = 0.
The following is a compact representation of the DEM for the multistage stochastic problem with complete recourse.
ObjectiveDetermining the execution sequencing and scheduling of the operations to minimize the expected cost of the opera-
tions’ execution over the scenarios along a time horizon, subject to the constraints (3.2)–(3.12). It can be expressed
min∑i∈I
∑t∈Ti
∑g∈Gt
wgcgi (z
gi − z
�(g)i ). (3.1)
Constraints:∑j∈Jc
yj = 1 ∀c ∈ C, (3.2)
zgi = yj ∀g ∈ G�i , i ∈ Ij , j ∈ J, (3.3)
z�(g)i �z
gi ∀g ∈ Gt , t ∈Ti\{ei}, (3.4)
z�(g)i = z
gi ∀g ∈ Gt , t ∈T\Ti : ei � t < �i, i ∈ I, (3.5)
zg′i = z
gi ∀g′ ∈Ng\{g}, g ∈ G�i , i ∈ I, (3.6)∑
i∈Im
�it (zgi − �it z
g′i )�1 ∀m ∈M, g ∈ Gt , t ∈T, where (3.7)
�it ={
1, ei � t < �i + di + dm,
0 otherwise,
�it ={
1, ei + di + dm � t,
0 otherwise,
g′ =Ng ∩ Gt−di−dm
,
zg′a �z
gb ∀g ∈ Gt , t ∈Tb : t < �a + p1
ab, (a, b) ∈A1, where (3.8)
g′ =Ng ∩ Gt−p1ab ,
A. Alonso-Ayuso et al. / Computers & Operations Research 34 (2007) 2604–2624 2609
zga �z
g′b ∀g′ ∈Ng ∩ Gt+p2
ab , g ∈ Gt , t ∈Ta : t < �b − p2ab, (a, b) ∈A2, (3.9)
∑i∈I
∑k∈Fi
ogrih(z
ki − �it z
�(k)i )�O
gr ∀r ∈ R, g ∈ Gt , t ∈T, where (3.10)
Fi ≡ {k ∈Ng ∪ {g} : t (k) ∈Ti , t − di < t(k)},
�it ={
1, ei < t,
0 otherwise,
h= t − t (k)+ 1,
zgi ∈ {0, 1} ∀g ∈ Gt , t ∈T : ei � t, i ∈ I, (3.11)
yj ∈ {0, 1} ∀j ∈ J. (3.12)
Constraints (3.2) force the assignment (i.e., the execution) of one and only one job for each class.Constraints (3.3) force the execution of all operations that are required by the selected jobs under any scenario, and
prevent the execution of the operations that are required by the jobs that have not been selected. Notice that it is enoughthat g ∈ G�i in the domain of the constraints.
Constraints (3.4) ensure that the value 0 for the variable zgi is propagated through the predecessor path from node g
down to node k for t (k)= ei in the scenario tree, for t (g) ∈Ti − {ei}. The constraints also ensure that the value 1 forthe variable z�(g) is propagated through the subtree with root node �(g) in the scenario tree.
Constraints (3.5) avoid that the operations start their execution in non-feasible time periods, independently of thescenario to consider. Note: from a computational point of view, the constraints (3.5) are not included in the model andthe variable z
gi , g ∈ Gt , t ∈T−Ti : ei � t < �i is replaced by the variable z
gi , g ∈ G�, � ∈Ti in any other constraint,
where �=max t ′ ∈Ti : t ′< t .Constraints (3.6) formally state the propagation of the z-value to the scenario groups in the subtrees whose root
nodes are the latest start of the operations’ execution. Note: from a computational point of view, the constraints (3.6)are not included in the model and the variable z
g′i , g′ ∈Ng\{g} is replaced by the variable z
gi , g ∈ G�i in any other
constraint. Let us name configuration system to the constraint system (3.2)–(3.6).Constraints (3.7), jointly with the configuration system, prevent the assignment of more than one operation of a
given type at the same time period. Notice that the difference zgi − z
g′i equals 1 (and, so, the assignment of operation i
prevents the assignment of any other operation of the same type at time period t (g)) if operation i starts its executionin the time interval given by the periods t (g)− di − dm + 1 and t (g).
Constraints (3.8) and (3.9) ensure that the precedence relationships types 1 and 2 are not violated, respectively. Byconstraints (3.8), if operation b starts at time period t (g), then operation a must start p1
ab periods earlier, at least, under
the given predecessor scenario group from Gt (g)−p1ab , for (a, b) ∈A1. By constraints (3.9), if operation a starts at time
period t (g), then operation b must start p2ab periods later, at most, under any successor scenario group from Gt (g)+p2
ab ,for (a, b) ∈A2.
As an illustration of the constraint system (3.9), let (a, b) ∈A2 and Ta=Tb={1, 2, 3, 4} and represent the parameters’uncertainty by the scenario tree shown in Fig. 1. The constraint system for time period t = 2, scenario group g= 2 andp2
ab = 1 can be expressed as z2a �z4
b and z2a �z5
b.Notice that the constraint system (3.8) is tighter than the more ‘natural’ system
zg′a �z
gb − �bt z
�(g)b ∀g ∈ Gt , t ∈Tb : t < �a + p1
ab (a, b) ∈A1, (3.13)
where
g′ =Ng ∩ Gt−p1ab ,
�bt ={
1, eb < t,
0 otherwise.
2610 A. Alonso-Ayuso et al. / Computers & Operations Research 34 (2007) 2604–2624
Similarly, notice that the constraint system (3.9) is tighter than the more ‘natural’ system
zga − �at z
�(g)a �z
g′b ∀g′ ∈Ng ∩ Gt+p2
ab , g ∈ Gt , t ∈Ta : t < �b − p2ab (a, b) ∈A2, (3.14)
where
�at ={
1, ea < t,
0 otherwise.
Constraints (3.10), jointly with the configuration system, ensure that the availability of the resources is not violatedfor each resource availability and consumption scenario group.
The compact representation (3.1)–(3.12) can also be transformed in an splitting variable representation by replacingthe y- and z-variables by their respective siblings, where yj is replaced by y
j ∀ ∈ � and zgi is replaced by z
it ∀ ∈ �g ,for t = t (g), so that there is a submodel for each scenario ∈ �. The non-anticipativity constraints (3.15)–(3.16) areappended to the new model.
yj − y′
j = 0 ∀, ′ ∈ � : �= ′, j ∈ J, (3.15)
zit − z′
it = 0 ∀, ′ ∈ �g : �= ′, g ∈ Gt , t ∈T : ei � t, i ∈ I. (3.16)
From a practical point of view, and due to its combinatorial nature, the problem cannot be solved up to optimality inaffordable computing time but for moderated size instances, mainly in the number of scenarios. So, efficient heuristicapproaches should be used. We consider an heuristic based on a mixture of a FR approach, see [6,42], for providinggood solutions to the scenario-related sequencing and scheduling problem, and a branch-and-fix coordination (BFC)scheme, see [32,43], for coordinating the branching phase in the scenario cluster-related branch-and-fix trees, so thatthe constraints (3.15)–(3.16) are satisfied, see below.
4. Model tightening based on operations exclusivity constraints
Let us consider the operations exclusivity constraints (3.7), jointly with the configuration system and the precedencerelationship type 1 (3.8). As a result of the analysis, a reduction in the set of feasible time periods to start the executionof the operations can be made as well as the identification of cliques and precedence relationships and the exclusion ofsome jobs for execution.
Let a and b be two operations that belong to the same type (i.e., operations that have exclusivity constraints for theirexecution in the same time period), that is,
∃m ∈M such that a, b ∈ Im.
Let us assume that �a + da + dm �eb, that is, operation a can free the dedicated machine m in a time period at or afterthe earliest starting time period of operation b. (Notice that if �a + da + dm < eb, then the exclusivity constraint isimplicitly considered in the definition of the starting execution time windows of the operations.)
Let us also assume that eb + db + dm > �a , so that operation b cannot free machine m before the starting executiontime period of operation a, provided that both operations are to be executed.
Case 1: ea + da + dm > �b.In this case, operation a cannot free machine m before the starting execution time period of operation b.
Remark 1. Taking into account the hypothesis above, it is easy to see that the simultaneous execution of both operationsa and b is not possible. At most, only one operation can be executed.
• If ∃j ∈ J such that a, b,∈ Ij (that is, both operations belong to the same job), then job j cannot be selected forexecution. Notice that the instance is infeasible if there is only one job in the class.• If ∃j, h ∈ J : j �= h such that a ∈ Ij and b ∈ Ih (that is, the operations do not belong to the same job), then
it is not possible to execute both operations, nor the simultaneous execution of the jobs j and h. So, the following
A. Alonso-Ayuso et al. / Computers & Operations Research 34 (2007) 2604–2624 2611
constraint can be appended to the model:
yj + yh �1. (4.1)
Note: If �c ∈ C such that j, h ∈ Jc, then the appending of the constraints results in a model tightening and,otherwise, it is a redundant one.
Case 2: ea + da + dm ��b.In this case, operation a can free machine m before the starting execution time period of operation b.Case 2a: The operations a and b belong to the same job.By considering the hypothesis above, the precedence relationship type 1 (a, b) can be identified, where the time lag
is p1ab = da + dm. If (a, b) ∈A1 then the time lag can be tightened to
p1ab ← max{p1
ab, da + dm}.In any case, the starting execution time periods of the operations a and b can be tightened by updating
�a ← min{�a, �b − da − dm} and eb ← max{eb, ea + da + dm}.Case 2b: The operations a and b do not belong to the same job.In this case, no precedence relationship between the operations a and b is considered, since any of the related jobs
could not be selected.Let j, h ∈ J : j �= h, such that a ∈ Ij and b ∈ Ih, and consider the constraint system
(1− yj )+ zt−da−dm
a �ztb ∀t ∈Tb : t < �a + da + dm, (4.2)
where ztb is the 0–1 variable, such that its value is 1 if operation b starts its execution by time period t and, otherwise, its
value is zero. Let us name it a conditional precedence relationship type 1 constraint. Note: without loss of generality,for illustrative purposes we have only considered the deterministic version. Notice that the stochastic case is includedby the set of scenario models plus the non-anticipativity constraints.
Remark 2. It is trivial to show that constraints (4.2) are valid inequalities for the original 0–1 problem (3.2)–(3.12).
Proposition 1. If jobs j and h belong to the same class, constraints (4.2) are also valid for the LP relaxation of theoriginal 0–1 problem.
Proof. Note that yj +yk �1, given the assignment constraints (3.2). Then, based on the configuration system, it results
1− yj + zt ′a �1− yj �yh = z
�b
b �ztb ∀t ′ ∈Ta, t ∈Tb. (4.3)
So, the validity of the constraint for any pair of time periods (t ′, t) means that it is also valid for t ′ = t − da − dm. �
Remark 3. The example below shows that if jobs j and h belong to different classes, then constraints (4.2) are notvalid for the LP relaxation of the original 0–1 problem. Then, the original 0–1 problem is tightened by appending theconstraints (4.2).
Let the following example: a ∈ Ij , b ∈ Ih : j �= h, the jobs j and h belong to different classes, ∃m ∈M such thata, b ∈ Im, the sets of feasible periods to start the execution of the operations a and b are Ta = {1, 4} and Tb = {2, 3},respectively, da = 1, db = 2 and dm = 1.
Notice that �a + da + dm = 6�2= eb and eb + db + dm = 5 > 4= �a .Without loss of generality, let us assume that a and b are the unique operations that belong to type m. So, the
deterministic version of the exclusivity constraints (3.7) can be written
t = 1, z1a �1, (4.4)
2612 A. Alonso-Ayuso et al. / Computers & Operations Research 34 (2007) 2604–2624
t = 2, z2a + z1
b �1, (4.5)
t = 3, (z3a − z1
a)+ z3b �1, (4.6)
t = 4, (z4a − z2
a)+ z3b �1, (4.7)
t = 5, (z4a − z3
a)+ (z3b − z2
b)�1. (4.8)
The new constraints (4.2) are
(1− yj )�z2b, (4.9)
(1− yj )+ z1a �z3
b. (4.10)
Let the following fractional solution: z1a = z2
a = z3a = 0.4, z4
a = 0.8, yj = 0.8, z2b = z3
b = 0.6 and yh = 0.6. It is easyto check that the solution satisfies the constraints (4.4)–(4.8) but it is not feasible for the constraint (4.9).
5. Twin node families in branch-and-fix coordination
Recall that the vector K takes the indices of the vectors I and J. They will be the indices of the new variables tobe introduced herein.
Let the synthesized version (5.1)–(5.4) of the splitting variable representation of the DEM (3.1)–(3.12), where w
is the weight assigned to scenario , xit , for i ∈K, t ∈T′i , and ∈ �, is a 0–1 variable, such that,
{xit = y
i ∀t ∈T′i = {0}, i ∈ J, ∈ �,
xit = z
it ∀t ∈T′i = {t ′ ∈T : ei � t ′}, i ∈ I, ∈ �,
cit is the objective function coefficient of the variable x
it , Ai� is the constraint matrix for � ∈ T′i , i ∈K, and b
t isthe right-hand side vector (rhs) for t ∈ T′, where T′ = {0} ∪T, ∈ �. (Notice that the x-variables take the y- andz-variables, and the A-matrix and the b-vector take the constraint matrix and the related rhs of DEM, splitting variablerepresentation, respectively.)
ZIP =min∑∈�
w∑i∈K
∑t∈T′i
cit x
it (5.1)
s.t.∑i∈K
∑�∈T′i
Ai�x
i� = b
t ∀t ∈T′, ∈ �, (5.2)
xit − x′
it = 0 ∀, ′ ∈ �g : �= ′, g ∈ Gt , t ∈T′i , i ∈K, (5.3)
xit ∈ {0, 1} ∀t ∈T′i , i ∈K, ∈ �. (5.4)
We can see that the relaxation of the non-anticipativity constraints (5.3) (i.e., the constraints (3.15)–(3.16) of DEM)results in a set of |�| independent 0–1 models, where (5.5) is the model for scenario ∈ �
ZIP =min
∑i∈K
∑t∈T′i
cit x
it
s.t.∑i∈K
∑t∈T′i
Ai�x
i� = b
t ∀t ∈T′,
xit ∈ {0, 1} ∀t ∈T′i , i ∈K, (5.5)
such that ZIP =∑∈� wZ
IP subject to (5.3).
A. Alonso-Ayuso et al. / Computers & Operations Research 34 (2007) 2604–2624 2613
We can execute a branch-and-bound procedure for ensuring the integrality condition in the models (5.5). Instead ofobtaining independently the optimal solution, elsewhere [32,43] we propose an approach so-called BFC. It is speciallydesigned to coordinate the selection of the branching node and branching variable for each scenario-related so-calledbranch-and-fix (BF) tree, such that the relaxed constraints (5.3) are satisfied when fixing the appropriate variables toeither one or zero. The proposed approach also coordinates and reinforces the scenario-related BF node pruning, thevariable fixing and the objective function value bounding of the subproblems attached to the nodes. There are similardecomposition approaches in the literature. However, those approaches focus more on using Lagrangian relaxation(see some references above) as a replacement of the LP relaxations of the models (5.5) to obtain good lower boundsof ZIP, and less on coordinating the selection of nodes and variables for branching purposes. In any case, Lagrangianrelaxation schemes can be added on top.
For the presentation of the BFC approach to be used in this work, let R denote the BF tree associated with scenario and Q be the set of active nodes in R, for ∈ �.
Definition 1. Two variables, say, xit and x′
it are said to be common variables if , ′ ∈ �g : g ∈ Gt , for �= ′, t ∈T′i , i ∈K. Note: two common variables have non-zero elements in the non-anticipativity constraint related to a givenscenario group.
Definition 2. Any two active nodes, say, r ∈ Q and r ′ ∈ Q′ are said to be twin nodes with respect to a given scenariogroup if the paths from their root nodes to each of them in their own BF trees R and R′, respectively, either theyhave not yet branched on/fixed their common variables or they have the same 0–1 values for their branched on/fixedcommon variables x
it and x′it for , ′ ∈ �, t ∈T′i , i ∈K.
Definition 3. A TNF, say, Hs is a set of nodes such that any node is a twin node to all the other nodes in the family,for s ∈S where S is the set of TNFs.
Definition 4. A candidate TNF is a TNF whose members have not yet branched on/fixed all their common variablesrelated to a given scenario group.
Definition 5. A TNF integer set is a set of TNFs where all x-variables take integer values, there is one node per each BFtree and the non-anticipativity constraints (5.3) are satisfied. Notice that the cardinality of each TNF in the set is one.
Let us consider the scenario tree and the BF trees shown in Fig. 2, where xi denotes a given variable subscripted i
for scenario and xi gives the generic notation for the variable. For illustrative purposes, let the branching orderingx1, x2, . . . , x6. We can see that the first candidate TNF is H1, since the variables from stage 1 are common variablesto any node. Additionally, H2 is a family that has already been branched on the same value of the common variablex1. It is also a candidate TNF since the common variable x2 has not been branched on (and suppose that it has not beenfixed either). In any case, the nodes 4 and 6 also form a TNF, since their common variables x3 and x4 have not yet beenbranched on, nor fixed. For the branching variables x3 and x4, the candidate TNF is {4, 6}, instead of H2 = {4, 6, 8}.Similarly, H3 is another candidate TNF. However, H4 is not a candidate TNF since all the common variables for theirnode members were already branched, but H4 is split into the families H5 and H6 to branch independently on thevariables x3 and x4, since the nodes 10 and 11 are twin nodes for these variables, while node 12 is not. Finally, note thatH7 and H8 are also candidate TNFs, since the variable x4 is not yet branched and, on the other hand, it is a commonvariable for the node members of those families.
It is clear that the relaxation of the non-anticipativity constraints (5.3) is not required for all pairs of scenarios inorder to obtain computational efficiency. The number of scenarios to consider in a given model basically depends onthe dimensions of the scenario-related model (5.5).
Definition 6. A scenario cluster is a set of scenarios whose non-anticipativity constraints are explicitly considered inthe model.
The criterion for scenario clustering in the sets, say, �1, . . . ,�q , where q is a given number of scenario clustersis instance dependent. Moreover, we favor the criterion of assigning to the same cluster the scenarios that have more
2614 A. Alonso-Ayuso et al. / Computers & Operations Research 34 (2007) 2604–2624
ScenarioTree
a
b
c
d
e
f
stage 1 2 3variables x1 , x2 x3 , x4 x5 , x6
scen. 1
scen. 2
scen. 3
BF tree R1
1x1
4 5
10
x2
13 14x3
BF tree R2
2x1
6 7
11
x2
15 16
x3
BF tree R3
3
x1
8 9
12
x2
Branching variables ordering : x1, x2, x3, x4, x5, x6
Some Twin Node Families (TNFs) :
= {1,2,3}, H2= {4,6,8} , H3 = {5,7,9}, H4 = {10,11,12}*,
= {10,11}, H6 = {12}, H7 = {13,15}, H8 = {14,16}
*A non candidate TNF
1
1
1
2
2
2
3
3
Fig. 2. Branch-and-fix coordination scheme.
scenario groups in common. For illustrative purposes, let the scenarios {1, 2, 3} such that the scenarios {1, 2} havemore scenario groups in common than the scenarios {1, 3} and scenarios {2, 3}. In this case, we favor to give higherpriority to the assignment of the scenarios {1, 2} to the same cluster over the cluster assignment of the scenarios {1, 3}and {2, 3}. In any case, notice that �p ∩ �p′ = ∅, p, p′ = 1, . . . , q : p �= p′ and �= ∪q
p=1 �p.By slightly abusing the notation, the model to consider for scenario cluster p = 1, . . . , q can be expressed by the
compact representation (5.6), where for d ∈ G|T| is the unique scenario such that ∈ �d and, on the other hand,Gp = {g ∈ G : �g ∩ �p �= ∅}
min∑
d∈G|T|∩Gp
w∑i∈K
∑g∈Fd
i
cgi x
gi
s.t.∑i∈K
∑k∈Fg
i
Aki x
ki = bg ∀g ∈ Gp,
xgi ∈ {0, 1} ∀g ∈ Gt ∩ Gp, t ∈T′i , i ∈K, (5.6)
where
Fgi ≡ {k ∈Ng ∪ {g} : t (k) ∈T′i} ∀g ∈ Gp, i ∈K, (5.7)
xgi is the 0–1 x-variable for i ∈ K under scenario group g for g ∈ Gt ∩ Gp, t ∈ T′i , c
gi is the objective function
coefficient of the variable xgi , Ak
i is the constraint matrix for k ∈ Fgi , and bg is the rhs for g ∈ Gp. Recall that Ng
gives the set of ancestor nodes in the predecessor path from node g down to the root node.The scenario cluster models (5.6) are linked by the non-anticipativity constraints:
xgp
i − xgp′i = 0 ∀i ∈K, (5.8)
for p, p′ = 1, . . . , q : p �= p′, where gp ∈ Gt ∩ Gp, gp′ ∈ Gt ∩ Gp′ , gp = gp′ and t ∈T′i .
A. Alonso-Ayuso et al. / Computers & Operations Research 34 (2007) 2604–2624 2615
6. Fix-and-relax coordination algorithmic framework
The BFC approach aims at obtaining the optimal solution of the original 0–1 problem (5.1)–(5.4). However, based onthe reasons given above, it is unrealistic to seek for the optimal solution to large-scale S3 problems within an affordablecomputational effort. Alternatively, we propose a modification of the BFC scheme, so-called FRC, that aims to obtain(hopefully) good solutions for the problem by selectively exploring TNFs in the BF trees.
6.1. Fix-and-relax submodels
We first present the extension to the stochastic case of the FR approach introduced in [42], and further explored in[6], for obtaining feasible solutions for the deterministic 0–1 program (5.5). As it is well-known, a branch-and-boundscheme to solve the problem becomes eventually inefficient (as the number of the variables, n, increases) due to theexponential growth in the number of nodes to explore. From a practical point of view, sometimes it is also difficult tofind a feasible solution. FR is a general purpose methodology that alleviates this by solving a set of models of smallercomplexity than the original 0–1 problem.
Let us consider the problem
IP: minx∈X
cx
s.t. x ∈ {0, 1}, (6.1)
where x is the vector of the variables and X is the polytope inRn that defines the feasible set. Let V be the set of (theindices of the) variables in (6.1) and V1, . . . ,VK a partition of K elements of the set V, such that V=∪K
k=1Vk andVk ∩Vk′ = ∅, ∀k, k′ = 1, . . . , K | k �= k′. Problem (6.1) can be rewritten as
IP: minx∈X
cx
s.t. xj ∈ {0, 1} ∀j ∈Vk, k = 1, . . . , K . (6.2)
The FR framework requires to solve a sequence of K 0–1 submodels denoted IPk , such that each one is attached tothe so-called FR level k = 1, . . . , K . IPk is defined as follows:
IPk: minx∈X
cx
s.t. xj = xj ∀j ∈V′k, k′< k,
xj ∈ {0, 1} ∀j ∈Vk ,
xj ∈ [0, 1] ∀j ∈V′k, k < k′, (6.3)
where the values xj for j ∈ V′k , k′< k in FR level k > 1 are retrieved from the solution to the models IPk′ , k′ =1, . . . , k − 1, respectively.
Since only a reduced subset of (non-fixed) 0–1 variables is kept integer at FR level k, it is hoped that IPk can besolved with relative efficiency.
6.2. Branching strategy
We have chosen the depth first based strategy for the branching TNF selection and the smallest deterioration strat-egy for the selection of the branching variables. The latter strategy gives priority to the common variables that arethe closest to satisfy both the integer constraint and the non-anticipativity constraints. See the Appendix for moredetails.
6.3. Partitioning strategy
Given the multistage topology of the scenario tree for the problem (5.1)–(5.4) to solve, we have chosen, in ourapproach, a partition of g elements, where g is the number of scenario groups in the problem (i.e., g = |G|). Let Vg
be included by the (indices of the) z-variables whose superscript in the compact representation is the scenario group g
2616 A. Alonso-Ayuso et al. / Computers & Operations Research 34 (2007) 2604–2624
for g = 1, . . . , g. Additionally, the partition V1 is also included by the y-variables, having them higher branchingpriority than the z-variables.
Notice that the optimization to be carried out at any time stage of the original problem is decomposed, by nature, inas many independent models as the number of scenario groups in the time stage. Each independent model is a two-stagemodel. Moreover, the first stage of the model attached to a given scenario group is included by the constraints andvariables associated with the given scenario group and the second stage is included by the constraints and variablesassociated with the scenario subtree whose root node is the node related to the given scenario group. The integrality ofthe variables is not relaxed for the variables associated with the given scenario group. The variables associated with thescenario groups related to the predecessor path from node g down to root node 1 are fixed to the 0–1 values obtained inthe optimization carried out in the ancestor scenario groups. The non-anticipativity constraints for the scenarios withinthe clusters are explicitly included in the scenario cluster submodels. On the other hand, the FRC approach must satisfythe constraints (5.8) related to the first stage common variables in the same scenario group. Notice that the solving ofthe model attached to scenario group g is called FR level g.
Let the scenario tree shown in Fig. 3. We can express its topology by 1123 such that 23 means that there are threeconsecutive stages where the nodes are pairs of successor nodes from their ancestor nodes in the scenario tree. Thereare g=15 FR levels, their related models are attached to the scenario groups g=1, . . . , 15. Assume that q=4. We havechosen �1={8, 9}, . . . ,�4={14, 15}, such that G1={1, 2, 4, 8, 9}, . . . ,G4={1, 3, 7, 14, 15}. The model for scenariogroup g= 1 has integer 0–1 variables in node 1 and fractional 0–1 variables for the other ones from node 2 to node 15.The model for g = 2 has integer 0–1 variables in node 2, fractional 0–1 variables for the nodes 4, 5, 8, 9, 10, 11, andthe variables for node 1 are fixed to the 0–1 values obtained from the optimization of the model attached to node 1,and so on. The non-anticipativity constraints (5.8) are satisfied by suitable variable branching for the scenario clustersp = 1, 2, 3, 4 in node g = 1, p = 1, 2 in node g = 2 and p = 3, 4 in node g = 3. Notice that the non-anticipativityconstraints for the scenarios = 8, 9 are explicitly satisfied in the models attached to the nodes 1,2 and 4, for thescenarios = 10, 11 in the models attached to the nodes 1, 2 and 5, and similarly for the scenarios = 12, 13 and14, 15.
6.4. FRC algorithm
The hybrid algorithm that we propose is a mixture of the BFC scheme for satisfying the non-anticipativity constraints(5.8) while optimizing the scenario cluster-related submodels (5.6) and the FR scheme to explore promising TNFs. Letus replace the scenario-related notationR andQ,∀ ∈ � by the scenario cluster notationRp andQp,∀p=1, . . . , q,
respectively.The algorithm is so-called FRC and has the following main steps:Step 1: Solve the LP relaxation of the q submodels (5.6). Each model is attached to the root node in the trees Rp,∀p = 1, . . . , q. If the variables take the integer values and the constraints (5.8) are satisfied, then stop; the optimalsolution to the original 0–1 problem (5.1)–(5.4) has been obtained.
Otherwise, set t := 1, g := 1, f := 1 and create the first FR level problem IPg .Step 2: A decision is made in the current FR level g for (a) the selection of the branching common variables, (b) the
selection of the candidate TNF to branch, and (c) the variables’ fixing across the selected TNF for the zero and onevalues of the branching variable.
Step 3: Create and optimize the LP models attached to the two descendant nodes from the members of the chosenTNF by branching on the selected common variables.
Step 4: In case that the solution for the LP models that have been optimized in Step 3 has 0–1 values and it satisfiesthe constraints (5.8), then a new TNF integer set has been found for the given FR level g. Additionally, the updating ofthe sets Qp of the active nodes at the trees Rp, ∀p= 1, . . . , q is also performed for the given FR level. Notice that themembers of the TNF integer set that gives the level optimal solution are not pruned, since they will be the root nodesfor the next FR level in the scenario tree.
Step 5: If the optimal solution has not yet been reached for the given FR level then go to Step 2.Step 6: If g �= f then update g := g + 1 and goto Step 2 to start the optimization of the model attached to the next
FR level for the current stage t.Step 7: Update the FR levels by creating the new problems IPg for g = f + 1, . . . , f + |Gt+1| related to the next
stage t + 1 from the optimal TNF integer set in the current level, reset t := t + 1 and g := f + 1, f := f + |Gt | and
A. Alonso-Ayuso et al. / Computers & Operations Research 34 (2007) 2604–2624 2617
t = 1 t = 2 t = 3 t = 4
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
t = 1 t = 2 t = 3 t = 4
1
1
1
1
2
2
3
3
4
5
6
7
8
9
10
11
12
13
14
15
Cluster 1
Cluster 2
Cluster 3
Cluster 4
t = 1 t = 2 t = 3 t = 4
1
1
1
1
2
2
3
3
4
5
6
7
8
9
10
11
12
13
14
15
Level 1
t = 1 t = 2 t = 3 t = 4
1
1
1
1
2
2
3
3
4
5
6
7
8
9
10
11
12
13
14
15
Level 2
Level 3
t = 1 t = 2 t = 3 t = 4
1
1
1
1
2
2
3
3
4
5
6
7
8
9
10
11
12
13
14
15
Level 4
Level 5
Level 6
Level 7
t = 1 t = 2 t = 3 t = 4
1
1
1
1
1
1
1
1
2
2
2
2
3
3
3
3
4
4
5
5
6
6
7
7
8
9
10
11
12
13
14
15
Level 8
Level 9
Level 10
Level 11
Level 12
Level 13
Level 14
Level 15
Nodes whose non-anticipativity constraints are not relaxed
n Nodes whose variables have been 0-1 fixed
n Nodes whose variables have been 0-1 integer defined
n Nodes whose variables have been 0-1 continuous defined
(a)(b)
Fig. 3. FR levels.
2618 A. Alonso-Ayuso et al. / Computers & Operations Research 34 (2007) 2604–2624
goto Step 2 to start a new iteration unless the gth level has been reached. In this latter case the aimed feasible solutionfor the original 0–1 problem (5.1)–(5.4) has been obtained.
Note 1: The optimization of the problems IPg for g = f + 1, . . . , f + |Gt | for a given stage t can be performed inparallel.
Note 2: The Appendix presents the pseudocode of the algorithm.
7. Computational results
We report the computational experience obtained while optimizing the stochastic sequencing and scheduling problem(3.1)–(3.12) for a set of instances by using the FRC approach. The set of scenarios for the uncertain parameters alongthe time horizon has been randomly generated. Table 1 gives the dimensions of the testbed, the instances have beengrouped in four subsets according to the model’s dimensions. We can notice the large dimensions in the instancesincluded in the last subset.
In order to build the (symmetric) scenario tree, different values of execution cost, and resources consumption andavailability have been combined. The topology of the trees is as follows: Cases c01 to c05: 1125 (6 stages); cases c06 toc10: 112531 (7 stages); and cases c11 to c20: 1127 (8 stages). The time periods have been distributed among the stages.
Our FRC algorithmic approach has been implemented in an experimental C++ code. It uses the Simplex methodimplemented in the optimization engine IBM OSL v3.0 for solving the LP problems at the active nodes in the BFtrees. For comparison purposes we have used two state-of-the-art optimizers, namely, OSL v3.0 and CPLEX v9.0. Thecomputational experiments were conducted on a Pentium Centrino Processor with 1.70 GHz and 1.5 GB of RAM. TheMicrosoft compiler v6.0 has been used.
Table 2 gives the dimensions of the scenario-related model and the DEM of the multistage stochastic version, compactrepresentation. The headings are as follows: m, number of constraints; n, number of variables; and dens, constraintmatrix density.
Table 3 shows the main results of our computational experimentation for solving the original S3 problem. The
headings are as follows: ZLP, solution value of the LP relaxation of the original problem; ZOSLIP , value of the incumbent
solution for the original problem that has been obtained by the plain utilization of OSL; TOSL, elapsed time (s) for
Table 1Testbed dimensions
Case |C| |J| |I| |T| |M| |A1| |A2| |R| |�| |G|c01 5 6 43 40 1 3 2 1 32 63c02 5 9 61 48 3 0 0 1 32 63c03 5 8 56 48 1 9 9 1 32 63c04 5 8 71 48 2 5 9 1 32 63c05 5 9 64 48 1 55 0 1 32 63
c06 10 14 79 60 3 12 22 2 96 159c07 3 7 133 60 2 126 0 2 96 159c08 10 24 109 60 2 0 0 2 96 159c09 8 20 140 60 3 36 27 3 96 159c10 3 7 154 60 2 19 21 2 96 159
c11 3 11 252 60 2 32 19 2 128 255c12 4 10 168 60 2 18 8 2 128 255c13 5 12 247 60 2 20 7 2 128 255c14 4 11 191 60 2 180 0 2 128 255c15 3 11 250 60 2 34 19 2 128 255
c16 8 22 378 70 3 20 11 3 128 255c17 9 24 422 70 3 13 7 3 128 255c18 10 24 437 70 3 24 11 3 128 255c19 10 24 393 70 4 0 0 1 128 255c20 20 31 399 70 3 0 0 1 128 255
A. Alonso-Ayuso et al. / Computers & Operations Research 34 (2007) 2604–2624 2619
Table 2Deterministic equivalent model dimensions
Case Scenario model DEM, compact representation
m n dens (%) m n dens (%)
c01 565 422 1.74 8051 5480 0.15c02 855 619 1.28 12 887 8545 0.10c03 794 557 1.79 15 323 10 198 0.11c04 909 668 1.14 15 311 10 532 0.08c05 2059 1037 0.78 32 205 14 757 0.06
c06 1605 1082 1.36 59 822 36 410 0.04c07 2562 1136 0.75 100 911 42 357 0.03c08 1942 1596 1.08 70 488 53 566 0.04c09 2975 1864 1.92 123 404 70 678 0.05c10 2709 2108 0.73 115 303 82 715 0.02
c11 4171 3470 0.46 181 315 138 411 0.01c12 2973 2382 0.66 141 932 102 546 0.02c13 3819 3364 0.49 159 648 128 042 0.01c14 4853 2322 0.41 176 558 78 381 0.01c15 4029 3355 0.47 151 703 113 343 0.01
c16 6225 5364 0.43 215 528 168 688 0.01c17 6732 6046 0.40 201 661 164 352 0.02c18 7066 6304 0.38 224 788 182 806 0.01c19 6129 5723 0.20 196 342 170 412 0.01c20 6160 5821 0.17 208 170 185 015 0.01
Table 3Stochastic solution. q = 16 scenario clusters
Case ZLP ZOSLIP TOSL Z
CPXIP TCPX ZFRC
LP ZFRCIP GAP GGOSL GGCPX nf nn T FRC
LP T FRCIP T FRC
(s) (s) (%) (%) (%)
c01 5278.58 5346.10 7200 5345.47 377a 5251.13 5517.01 5.06 3.20 3.21 114 224 1 0 1c02 5063.13 5207.07 2052a 5207.07 260a 5030.43 5528.85 9.91 6.18 6.18 176 654 1 5 6c03 4717.79 4764.20 7200 4762.91 136a 4717.76 4917.83 4.24 3.22 3.25 480 602 0 5 5c04 6474.65 6529.82 7200 6529.48 257a 6462.33 6647.98 2.87 1.81 1.81 138 366 0 3 3c05 7196.79 7287.33 7200 7287.17 4896a 7180.56 7352.76 2.34 0.90 0.90 110 222 1 16 17
c06 11204.10 11351.50 7200 11284.00 7200 11194.50 11362.90 1.50 0.10 0.70 198 334 5 128 133c07 11880.00 13044.40 7200 13044.36 2011a 11871.70 13045.20 9.88 0.01 0.01 182 242 7 50 57c08 6169.02 6218.10 7200 6216.72 1464a 6050.92 6300.89 4.13 1.33 1.35 122 646 5 85 90c09 8544.14b +∞ 7200 8593.38 7200 8453.41 8675.13 2.62 – 0.95 118 282 47 975 1022c10 11245.22b +∞ 7200 11704.80 7200 11234.70 11767.50 4.74 – 0.54 80 240 33 746 779
c11 8892.52c 8908.09 7200 +∞ 7200 8855.39 8917.63 0.70 0.11 – 103 329 54 466 520c12 9535.82c 10058.20 7200 +∞ 7200 9504.76 10069.70 5.94 0.11 – 277 487 49 924 973c13 +∞ +∞ 7200 +∞ 7200 16316.20 16342.20 0.16 – – 30 102 199 570 769c14 +∞ +∞ 7200 +∞ 7200 11324.20 11510.10 1.64 – – 10 130 67 387 454c15 9751.95c 9852.84 7200 +∞ 7200 9666.11 9951.65 2.95 1.00 – 114 354 50 379 429
c16 +∞ +∞ 7200 +∞ 7200 18507.10 18849.50 1.85 – – 620 1214 161 3439 3600c17 +∞ +∞ 7200 +∞ 7200 22364.90 22749.30 1.72 – – 146 736 196 3234 3430c18 +∞ +∞ 7200 +∞ 7200 25930.80 26169.40 0.92 – – 122 820 169 2092 2261c19 +∞ +∞ 7200 +∞ 7200 23547.90 23622.00 0.31 – – 272 502 244 1772 2016c20 39065.75b +∞ 7200 +∞ 7200 38816.10 39339.30 1.35 – – 1156 2096 435 2978 3413
aThe optimality of the solution has been proved.bT OSL
LP > 7200 s.cT CPX
LP > 7200 s.
2620 A. Alonso-Ayuso et al. / Computers & Operations Research 34 (2007) 2604–2624
Table 4Scenario cluster model dimensions
Case q = 8 clusters q = 16 clusters q = 32 clusters
m n dens (%) m n dens (%) m n dens (%)
c01 1044 785 1.08 667 513 1.59 532 423 1.84c02 1687 1201 0.75 1069 786 1.10 817 620 1.34c03 1891 1335 0.85 1092 787 1.40 754 558 1.89c04 1970 1438 0.59 1195 895 0.93 866 669 1.20c05 4146 2037 0.44 2588 1308 0.67 2001 1038 0.80
c06 7139 4701 0.36 3872 2576 0.64 2375 1609 1.00c07 12 082 5453 0.18 6487 2946 0.32 3892 1787 0.52c08 8795 6907 0.28 4777 3791 0.50 2941 2381 0.77c09 15 322 9036 0.41 8164 4848 0.76 4857 2933 1.25c10 14 411 10 546 0.16 7590 5595 0.29 4412 3313 0.48
c11 22 386 17 652 0.10 11 796 9379 0.19 6834 5537 0.32c12 17 566 13 032 0.13 9197 6882 0.25 5265 4018 0.42c13 20 161 16 397 0.11 10 725 8799 0.21 6327 5283 0.34c14 21 446 10 118 0.11 11 629 5537 0.20 7103 3433 0.31c15 18 854 14 511 0.13 10 089 7865 0.23 6092 4859 0.37
c16 27 290 21 760 0.12 14 785 11 927 0.21 9107 7516 0.33c17 25 893 21 450 0.12 14 369 12 065 0.22 9246 7949 0.32c18 28 737 23 683 0.11 15 798 13 172 0.20 9974 8491 0.30c19 25 237 22 084 0.07 13 793 12 194 0.12 8645 7784 0.17c20 26 692 23 869 0.05 14 570 13 152 0.09 9056 8307 0.14
obtaining the solution; ZCPXIP , value of the incumbent solution for the original problem that has been obtained by the
plain utilization of CPLEX; TCPX, elapsed time (s) for obtaining the solution; ZFRCLP , solution value of the LP relaxation
in our FRC approach; ZFRCIP , solution value of the original problem that has been obtained by the FRC approach; GAP%,
optimality gap of the FRC approach, defined as (ZFRCIP − ZFRC
LP )/ZFRCLP × 100; GGOSL%, goodness gap between the
OSL solution and our solution, defined as (ZFRCIP −Z
OSLIP )/Z
OSLIP × 100; GGCPX%, goodness gap between the CPLEX
solution and our solution, defined as (ZFRCIP −Z
CPXIP )/Z
CPXIP × 100; nf, number of the explored twin node families; nn,
number of the explored branching nodes for the whole set of BF trees; T FRCLP and T FRC
IP , the elapsed time (s) to obtainthe LP solution and the additional time to obtain the integer solution in our approach, respectively; T FRC, total time.Time limit: 7200 s.
In all cases whose result is reported in Table 3, q = 16 scenario clusters have been used. The first conclusion thatcan be drawn from the results shown in Table 3 is that the proposed approach is very robust since it obtains a solutionfor all cases in the testbed. On the other hand, the optimization engine OSL cannot prove the optimality of the solutionwithin the time limit in 19 out of the 20 cases, and a solution has not been found in nine cases. Using CPLEX theoptimality has been proved in seven out of the 20 cases, but it cannot find a solution in 10 cases. We can also observethe tightness of the model and the goodness of the FRC solution, based on the GAP values, but the cases c02 andc07. (Notice that the FRC LP model is built by also relaxing the non-anticipativity constraints (5.8).) The GGOSL andGGCPX values are relatively small for all cases but the case c02, and the FRC approach gives a good solution for the 10(large-scale) instances where CPLEX does not find any solution, in most of the cases even the LP solution is not found.In all cases, the elapsed time required by our approach is very small, given the dimensions of the models (in fact, thetime required to obtain the FRC incumbent solution is smaller than the time required to obtain the LP solution usingany of the optimization engines). Notice that e.g., the case c20 has m= 208 170 constraints and n= 185 015 variablesand it produces a solution with a gap del 1.35% in less than one hour of elapsed time.
Table 4 shows the dimensions of the models for q= 8, 16 and 32 scenario clusters. We can observe how sensible thedimension of the models is with respect to variations of the q-value.
Table 5 shows the results of applying the FRC approach to the problems by varying the dimensions of the scenarioclusters. We can observe that the solution value is very similar for the different values of the parameter q (with a better
A. Alonso-Ayuso et al. / Computers & Operations Research 34 (2007) 2604–2624 2621
Tabl
e5
Stoc
hast
icso
lutio
nva
ryin
gth
eva
lue
ofth
eq-
para
met
er
Cas
eq=
8cl
uste
rsq=
16cl
uste
rsq=
32cl
uste
rs
ZFR
CL
PZ
FRC
IPG
AP
nfnn
TFR
CZ
FRC
LP
ZFR
CIP
GA
Pnf
nnT
FRC
ZFR
CL
PZ
FRC
IPG
AP
nfnn
TFR
C
(%)
(%)
(%)
c01
5256
.17
5529
.51
5.20
126
170
252
51.1
355
17.0
15.
0611
422
41
noso
lutio
nfo
und
c02
5036
.48
5532
.85
9.86
174
368
650
30.4
355
28.8
59.
9117
665
46
5028
.86
5528
.90
9.94
180
1316
6c0
347
17.7
649
32.0
14.
5441
945
57
4717
.76
4917
.83
4.24
480
602
547
17.2
748
89.6
23.
6547
873
04
c04
6463
.86
6647
.98
2.85
138
222
564
62.3
366
47.9
82.
8713
836
63
6460
.12
6647
.15
2.90
140
658
3c0
571
84.5
073
52.7
62.
3411
015
831
7180
.56
7352
.76
2.34
110
222
17no
solu
tion
foun
d
c06
1120
1.30
1138
5.60
1.65
240
270
389
1119
4.50
1136
2.90
1.50
198
334
133
1118
6.70
1136
2.50
1.57
208
578
48c0
711
872.
7013
045.
209.
8818
621
421
711
871.
7013
045.
209.
8818
224
257
1186
8.20
1304
5.20
9.92
185
309
28c0
860
57.3
862
90.0
53.
8411
434
836
160
50.9
263
00.8
94.
1312
264
690
6050
.05
6300
.89
4.15
126
1414
60c0
984
58.3
285
98.6
31.
6611
819
043
5384
53.4
186
75.1
32.
6211
828
210
2284
45.7
786
76.2
32.
7312
654
837
9c1
011
241.
7011
849.
405.
4156
108
1767
1123
4.70
1176
7.50
4.74
8024
077
911
230.
9011
818.
305.
2310
251
028
5
c11
8856
.65
8937
.89
0.92
9817
273
688
55.3
989
17.6
30.
7010
332
952
088
54.7
289
18.1
30.
7210
360
521
4c1
295
08.4
110
069.
105.
8928
037
138
5695
04.7
610
069.
705.
9427
748
797
395
02.2
710
073.
306.
0128
471
830
5c1
316
316.
2016
342.
200.
1630
6229
8816
316.
2016
342.
200.
1630
102
769
1630
9.40
1634
4.70
0.22
5022
268
2c1
411
328.
8011
510.
201.
6012
6817
6211
324.
2011
510.
101.
6410
130
454
1131
8.40
1151
0.10
1.69
1025
811
9c1
596
73.2
099
51.6
52.
8811
220
614
3496
66.1
199
51.6
52.
9511
435
442
996
64.0
699
51.6
52.
9812
271
221
8
c16
noso
lutio
nfo
und
1850
7.10
1884
9.50
1.85
620
1214
3600
noso
lutio
nfo
und
c17
2236
8.46
+∞–
––
7200
2236
4.90
2274
9.30
1.72
146
736
3430
2236
3.30
2274
9.30
1.73
146
1412
912
c18
2594
3.20
2616
8.50
0.87
2916
438
2725
930.
8026
169.
400.
9212
282
022
6125
925.
4026
170.
600.
9613
416
7014
04c1
923
553.
9023
622.
500.
2926
833
646
3123
547.
9023
622.
000.
3127
250
220
1623
544.
8023
620.
000.
3225
687
265
5c2
038
836.
9039
374.
101.
3893
510
7770
3138
816.
1039
339.
301.
3511
5620
9634
13no
solu
tion
foun
d
Not
e:B
old
num
bers
repr
esen
tthe
best
solu
tion
foun
d.
2622 A. Alonso-Ayuso et al. / Computers & Operations Research 34 (2007) 2604–2624
value for q = 16), but the elapsed time for q = 16 is much smaller than for q = 8. In any case, the strategy q = 16 ismore robust than the other two strategies since the later ones fail to provide a solution in some cases.
8. Conclusions and future work
A tight 0–1 model has been proposed for the multistage sequencing and scheduling problem under uncertainty. Itconsiders a broad set of constraints related to the exclusivity of the jobs within classes, the exclusivity and implicationof the operations within jobs and the exclusivity of the operations within types as well as precedence relationships andmultiperiod operations to share limited resources. The heuristic approach Fix-and-Relax Coordination (FRC) has beenpresented for obtaining (hopefully) good solutions to the original stochastic 0–1 problem. FRC is a hybrid approachof a FR heuristic scheme for deterministic 0–1 models and the BFC scheme for stochastic 0–1 models. So, a variablepartition is used for selecting the sets of Twin node families (TNF) to explore in the branch-and-fix trees. The TNFconcept is used to satisfy the non-anticipativity constraints for each scenario group in the scenario tree. Based onour computational experience with large-scale cases, we can observe that the plain utilization of two state-of-the-artoptimization engines cannot be used for problem solving in reasonable elapsed time. For some cases even they cannotprovide the LP solution for the problem within the time limit (2 h). The approach presented in this paper generallyoffers good solutions (the optimality gap is relatively small) in an astonishing small elapsed time. One of the attractivefeatures of the proposed algorithm is that it is general enough to provide (hopefully) good feasible solutions to a broadset of large-scale stochastic mixed 0–1 dynamic problems.
As a future work we are planning to carry out an exhaustive computational study to analyze the sensitivity of thetarget for the excess probability functional in a mean-risk function, and to asses the parallel optimization of the modelsattached to the FR levels that belong to the same time stage, and the TNF submodels attached to the same scenariogroup.
Appendix
Recall that Vg denotes the set of variables in the model associated with scenario group g. For the presentation of thepseudo-code of the FRC procedure, let the additional notation:
LPpg , LP problem attached to the scenario group g ∈ G for the scenario cluster p = 1, . . . , q.
xgi , ith variable whose index is in set Vg .x
pgi , value of the ith variable obtained as the solution of the LP problem LPp
g .
ZLPg =∑p=1,...,qZ
pLPg , where Z
pLPg is the solution value of the LP problem LPp
g . ZLPg =+∞ if the optimal solutionfor the related problem has not been found.
ZIPg , solution value of the mixed integer problem IPg defined in (6.3).ZFRC
IP , solution value of the original problem given by the proposed approach.
Let us introduce the elements that we have used for selecting the variable and the two descendant TNFs from a givenone, where gi is the selection parameter for the ith variables to branch jointly in the scenario clusters in the problemfor the scenario group g
gi =min
⎧⎨⎩
∑p=1,...,q
xpgi, |Vg| −
∑p=1,...,q
xpgi
⎫⎬⎭ , i ∈Vg .
Additionally, h〈i〉 will denote the ith variable in set Vg in a non-decreasing order of the -parameter.Let the parameter �gi be such that
�gi ={
0 if∑
p=1,...,q
xpgi � |Vg| − ∑
p=1,...,q
xpgi,
1 otherwise.
A. Alonso-Ayuso et al. / Computers & Operations Research 34 (2007) 2604–2624 2623
The FRC procedure is as follows:
ZFRCIP := 0, t := 1
While t � |T| do:For g ∈ Gt , do:
Build the FR level model IPg , so that the values for the set of variables Vg is obtained.Obtain ZIPg by executing the procedure BFC2If ZIPg =+∞ then stopIf t = |T| then ZFRC
IP := ZFRCIP + ZIPg
Endfort := t + 1
EndwhileThe procedure BFC2 for the FR level g is as follows:Step 1: Initialize i := 0 and ZIPg := +∞.Step 2: Solve the LP relaxations of the q models (5.6). It can be done in parallel. If the variables from the set Vg
have 0–1 values xpgi ∀p = 1, . . . , q and the constraints (5.8) are satisfied, then update the solution value ZIPg and the
related solution and return to the main program since the optimal solution for the FR level g has been obtained.Step 3: Set i := i + 1.Step 4: Set h〈i〉 = argmink∈Vg
{gk}, such that k has not been previously branched, nor fixed in the current branchingpath, and branch xgh〈i〉 := �gh〈i〉 , for all scenario clusters p = 1, . . . , q.
Step 5: Solve the LP problems LPpg , ∀p = 1, . . . , q and compute ZLPg . It can be done in parallel.
If ZLPg �ZIPg then goto Step 6.If there is any variable from the set Vg that either takes fractional values or it takes different values x
pgi for some
of the q scenario clusters then goto Step 3.Update ZIPg := ZLPg .
Step 6: Prune the current branch.If xgh〈i〉 = �gh〈i〉 , then goto Step 9.
Step 7: Update i := i − 1.If i = 0 then save the solution value ZIPg and the related solution, if any, and return.
Step 8: If xgh〈i〉 = 1− �gh〈i〉 , then goto Step 7.Step 9: Branch xgh〈i〉 := 1− �gh〈i〉 , for all scenario clusters p = 1, . . . , q.
Goto Step 5.
References
[1] Baptiste Ph, Le Pape C, Nuijten W. Constraint-based scheduling. Dordrecht: Kluwer Academic Publishers; 2001.[2] Hartmann S. Project scheduling under limited resources. Models, methods and applications. Berlin: Springer; 1999.[3] Herroelen W, Leus R. Project scheduling under uncertainty: survey and research potentials. European Journal of Operational Research
2005;165:289–306.[4] Wolsey LA. Valid inequalities for mixed integer programs with generalized and variable upper bounds. Discrete Applied Mathematics
1990;25:251–61.[5] Wolsey LA. MIP modeling of changeovers in production planning and scheduling problems. European Journal of Operational Research
1997;99:154–65.[6] Escudero LF, Salmerón J, Fix-and-Relax Partitioning. An algorithmic framework for large-scale resource constrained project selection and
scheduling. Annals of Operations Research, accepted for publication.[7] Escudero LF. On maintenance scheduling of production units. European Journal of Operational Research 1982;9:264–74.[8] Escudero LF. S3 sets. An extension of the Beale–Tomlin special ordered sets. Mathematical Programming 1988;42:113–23.[9] Benders JF. Partitioning procedures for solving mixed variables programming problems. Numerische Mathematik 1962;4:238–52.
[10] Birge JR, Louveaux FV. Introduction to stochastic programming. Berlin: Springer; 1997.[11] CarZe CC, Tind J. L-shaped decomposition of two-stage stochastic programs with integer recourse. Mathematical Programming 1998;83:
451–64.[12] Laporte G, Louveaux FV. The integer L-shaped method for stochastic integer programs with complete recourse. Operations Research Letters
1993;13:133–42.[13] Laporte G, Louveaux FV. An integer L-shaped algorithm for the capacitated vehicle routing problem with stochastic demands. Operations
Research 2002;50:415–23.
2624 A. Alonso-Ayuso et al. / Computers & Operations Research 34 (2007) 2604–2624
[14] Santoso T, Ahmed S, Goetschalckx M, Shapiro A. A stochastic programming approach for supply network design under uncertainty. EuropeanJournal of Operational Research 2005;167:96–115.
[15] CarZe CC, Schultz R. Dual decomposition in stochastic integer programming. Operations Research Letters 1999;24:37–45.[16] Groewe-Kuska N, Kiwiel K, Nowak MP, Römisch W, Wegner I. Power management in a hydro-thermal system under uncertainty by Lagrangian
relaxation. In: Greengard C, Ruszczynski A, editors. Decision making under uncertainty: energy and power. 2001. p. 39–70.[17] Hemmecke R, Schultz R. Decomposition methods for two-stage stochastic Integer Programs. In: Grötschel M, Krumke SO, Rambau J, editors.
Online optimization of large scale systems. Berlin: Springer; 2001. p. 601–22.[18] Klein Haneveld WK, van der Vlerk MH. Optimizing electricity distribution using integer recourse models. In: Uryasev S, Pardalos PM, editors.
Stochastic optimization: algorithms and applications. Dordrecht: Kluwer Academic Publishers; 2001. p. 137–54.[19] Nowak MP, Schultz R,Westphalen M. Optimization of simultaneous power production and trading by stochastic integer programming. Stochastic
Programming E-Print Series, 〈http://dochost.rz.hu-berlin.de/speps〉, 2002.[20] Römisch W, Schultz R. Multi-stage stochastic integer programs: an introduction. In: Grötschel M, Krumke SO, Rambau J, editors. Online
optimization of large scale systems. Berlin: Springer; 2001. p. 581–600.[21] Schultz R, Nowak M, Westphalen M. A Stochastic Integer Programming model for incorporating day-ahead trading of electricity into hydro-
thermal unit commitment. Optimization and Engineering 2005;6:163–75.[22] Schultz R, Tiedemann S. Risk aversion via excess probabilities in stochastic programs with mixed-integer recourse. SIAM Journal on
Optimization 2004;14:115–28.[23] Takriti S, Birge JR. Lagrangian solution techniques and bounds for loosely coupled mixed-integer stochastic programs. Operations Research
2000;48:91–8.[24] Schultz R. Stochastic programming with integer variables. Mathematical Programming, Series B 2003;97:285–309.[25] Ogryczak W, Ruszczynski A. From stochastic dominance to mean-risk models: semi-deviations as risk measures. European Journal of
Operational Research 1999;116:33–50.[26] Ahmed S. Mean-risk objectives in stochastic programming. Stochastic Programming E-Print Series, 〈http://dochost.rz.hu-berlin.de/speps〉,
2004.[27] Lulli G, Sen S. A branch-and-price algorithm for multi-stage stochastic integer programming with application to stochastic batch-sizing
problems. Management Science 2004;50:786–96.[28] Tsiakis P, Shah N, Pantelides CC. Design of a multiechelon supply chain network under demand uncertainty. Industrial and Engineering
Chemistry Research 2001;40:3585–604.[29] van der Vlerk MH. Integrated chance constraints in an ALM model for pension funds. Stochastic Programming E-Print Series,〈http://dochost.rz.hu-berlin.de/speps〉, 2003.
[30] Escudero LF, Galindo E, García C, Gómez E, Sabau V. SCHUMANN: a modelling framework for supply chain management under uncertainty.European Journal of Operational Research 1999;119:13–34.
[31] Ahmed S, King AJ, Parija G. A multi-stage stochastic integer programming approach for capacity expansion under uncertainty. Journal ofGlobal Optimization 2003;26:3–24.
[32] Alonso-Ayuso A, Escudero LF, Garín A, Ortuño MT, Pérez G. An approach for strategic supply chain planning based on stochastic 0–1programming. Journal of Global Optimization 2003;26:97–124.
[33] Alonso-Ayuso A, Escudero LF, Garín A, Ortuño MT, Pérez G. On the product selection and plant dimensioning problem under uncertainty.OMEGA 2005;33:307–18.
[34] Alonso-Ayuso A, Escudero LF, Pizarro C, Romeijn HE, Romero Morales D. On solving the multi-period single-sourcing problem underuncertainty, Computational Management Science, accepted for publication.
[35] Lucas C, Mirhassani SA, Mitra G, Poojari CA. An application of Lagrangian relaxation to a capacity planning problem under uncertainty.Journal of the Operational Research Society 2001;52:1256–66.
[36] MirHassani SA, Lucas C, Mitra G, Poojari CA. Computational solution of a capacity planning model under uncertainty. Parallel ComputingJournal 2000;26:511–38.
[37] Parija G, Ahmed S, King AJ. On bridging the gap between stochastic integer programming and MIP solver strategies. INFORMS Journal onComputing 2004;16:73–83.
[38] Huang K, Ahmed S. The value of multi-stage stochastic programming in capacity planning under uncertainty. Stochastic Programming E-PrintSeries, 〈http://dochost.rz.hu-berlin.de/speps〉, 2005.
[39] Rockafellar RT, Wets RJ-B. Scenario and policy aggregation in optimisation under uncertainty. Mathematics of Operations Research 1991;16:119–47.
[40] Bertsimas D, Stock-Patterson S. The air traffic flow management problem with enroute capacities. Operations Research 1998;46:406–22.[41] Alonso-AyusoA, Escudero LF, Ortuño MT.A stochastic 0–1 program based approach for air traffic management. European Journal of Operational
Research 2000;120:47–62.[42] Dillenberger Ch, Escudero LF, Wollensak A, Zang W. On practical resource allocation for production planning and scheduling with period
overlapping setups. European Journal of Operational Research 1994;75:275–86.[43] Alonso-Ayuso A, Escudero LF, Ortuño MT. BFC, a Branch-and-Fix Coordination algorithmic framework for solving some types of stochastic
pure and mixed 0–1 programs. European Journal of Operational Research 2003;151:503–19.