on bfc-msmip strategies for scenario cluster partitioning, and twin node family branching selection...

16
Computers & Operations Research 37 (2010) 738--753 Contents lists available at ScienceDirect Computers & Operations Research journal homepage: www.elsevier.com/locate/cor On BFC-MSMIP strategies for scenario cluster partitioning, and twin node family branching selection and bounding for multistage stochastic mixed integer programming Laureano F. Escudero a , María Araceli Garín b , María Merino c , Gloria Pérez c, a Dpto. de Estadística e Investigación Operativa, Universidad Rey Juan Carlos, Calle Tulipán, s/n, 28933 Móstoles (Madrid), Spain b Dpto. de Economía Aplicada III, Universidad del País Vasco, Avenida Lehendakari Aguirre, 83, 48015 Bilbao (Vizcaya), Spain c Dpto. de Matemática Aplicada, Estadística e Investigación Operativa, Facultad de Ciencia y Tecnología, Universidad del País Vasco, UPV/EHU, Barrio Sarriena s/n, 48940 Leioa (Vizcaya), Spain ARTICLE INFO ABSTRACT Available online 3 July 2009 Keywords: Multistage stochastic mixed 0–1 programming Branch-and-fix coordination Nonanticipativity constraints Twin node family Scenario cluster partitioning In the branch-and-fix coordination (BFC-MSMIP) algorithm for solving large-scale multistage stochastic mixed integer programming problems, we find it crucial to decide the stages where the nonanticipativity constraints are explicitly considered in the model. This information is materialized when the full model is broken down into a scenario cluster partition with smaller subproblems. In this paper we present a scheme for obtaining strong bounds and branching strategies for the Twin Node Families to increase the efficiency of the procedure BFC-MSMIP, based on the information provided by the nonanticipativity constraints that are explicitly considered in the problem. Some computational experience is reported to support the efficiency of the new scheme. © 2009 Elsevier Ltd. All rights reserved. 1. Introduction A general multistage mixed 0–1 optimization model has the fol- lowing form: min tT a t x t + c t y t s.a. A 1t x 1 + B 1t y 1 +A 2t x 2 + B 2t y 2 +···+A tt x t +B tt y t =b t t T, x t ∈{0, 1} nx , y t R +ny t T, (1) where a t and c t are the vectors of the objective function coefficients, A it and B it are the constraint matrices for the variables from the i th stage related to stage t for i t, t T, where T is the set of stages in a given horizon to consider, b t is the right-hand side vector (rhs) for stage t, and x t and y t are the n x and n y dimensional vectors of the 0–1 and continuous variables, respectively. We will denote with T =|T|, the number of stages, and T = T −{T } will denote the set of stages except the last one. However, in many real cases the model must be extended to consider the uncertainty in some of the main parameters, in our case, the objective function, the rhs and the constraint matrix coefficients. Stochastic programming is a very consolidated discipline for dealing with the uncertainty in the parameters of the optimiza- tion problems, see e.g., the books [6,15,16,20] with a very broad Corresponding author. Tel.: +34 94 6012645; fax: +34 94 6012516. E-mail address: [email protected] (G. Pérez). 0305-0548/$ - see front matter © 2009 Elsevier Ltd. All rights reserved. doi:10.1016/j.cor.2009.06.023 application field, see e.g., the books [25,27,30]. Additionally, the ap- plications of stochastic 0–1 programming are flourishing, see in the companion paper [13] a list of applications that are presented in the references therein. Although most of these applications deal with the optimization of the objective function expected value, e.g., [18], there are some approaches that also deal with mean-risk models, by considering semi-deviations, see [19], excess probabilities, see [23] and conditional value-at-risk, see [21,24], as risk measure-based functions to optimize. See also [8,17,26], among others. In our paper we deal with the optimization of the objective function expected value but only for illustrative purposes. Our approach can be applied perfectly well to the mean-risk measures excess probabilities and conditional value-at-risk, at least. In the general formulation of a multistage program, decisions on each stage have to be made stage-wise. For example, first stage variables are selected before observing the realization of uncertain parameters, the so-called scenarios. After having decided on first stage and having observed each realization of uncertain parameters, the second stage (or recourse) decision has to be made. After having decided on second stage and having observed each realization of un- certain parameters, the next (third) stage decision has to be made, and so on. At each stage, there are variables which correspond to de- cisions that have to be made without anticipation of some of future problem data, i.e., they take the same value under each scenario (i.e., the so-called nonanticipativity constraints must be satisfied). When a finite number of scenarios is considered, a general multistage program can be expressed in terms of the previous stage decision

Upload: laureano-f-escudero

Post on 26-Jun-2016

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: On BFC-MSMIP strategies for scenario cluster partitioning, and twin node family branching selection and bounding for multistage stochastic mixed integer programming

Computers & Operations Research 37 (2010) 738 -- 753

Contents lists available at ScienceDirect

Computers &Operations Research

journal homepage: www.e lsev ier .com/ locate /cor

On BFC-MSMIP strategies for scenario cluster partitioning, and twin node familybranching selection and bounding formultistage stochasticmixed integerprogramming

Laureano F. Escuderoa, María Araceli Garínb, María Merinoc, Gloria Pérezc,∗aDpto. de Estadística e Investigación Operativa, Universidad Rey Juan Carlos, Calle Tulipán, s/n, 28933 Móstoles (Madrid), SpainbDpto. de Economía Aplicada III, Universidad del País Vasco, Avenida Lehendakari Aguirre, 83, 48015 Bilbao (Vizcaya), SpaincDpto. de Matemática Aplicada, Estadística e Investigación Operativa, Facultad de Ciencia y Tecnología, Universidad del País Vasco, UPV/EHU, Barrio Sarriena s/n, 48940 Leioa(Vizcaya), Spain

A R T I C L E I N F O A B S T R A C T

Available online 3 July 2009

Keywords:Multistage stochastic mixed 0–1 programmingBranch-and-fix coordinationNonanticipativity constraintsTwin node familyScenario cluster partitioning

In the branch-and-fix coordination (BFC-MSMIP) algorithm for solving large-scale multistage stochasticmixed integer programming problems, we find it crucial to decide the stages where the nonanticipativityconstraints are explicitly considered in the model. This information is materialized when the full modelis broken down into a scenario cluster partition with smaller subproblems. In this paper we present ascheme for obtaining strong bounds and branching strategies for the Twin Node Families to increasethe efficiency of the procedure BFC-MSMIP, based on the information provided by the nonanticipativityconstraints that are explicitly considered in the problem. Some computational experience is reported tosupport the efficiency of the new scheme.

© 2009 Elsevier Ltd. All rights reserved.

1. Introduction

A general multistage mixed 0–1 optimization model has the fol-lowing form:

min∑

t∈Tatxt + ctyt

s.a. A1tx1 + B1ty1+A2tx2 + B2ty2+ · · ·+Attxt+Bttyt=bt ∀t ∈ T,

xt ∈ {0, 1}nx , yt ∈ R+ny ∀t ∈ T, (1)

where at and ct are the vectors of the objective function coefficients,Ait and Bit are the constraint matrices for the variables from the i thstage related to stage t for i� t, t ∈ T, where T is the set of stagesin a given horizon to consider, bt is the right-hand side vector (rhs)for stage t, and xt and yt are the nx and ny dimensional vectors ofthe 0–1 and continuous variables, respectively. We will denote withT =|T|, the number of stages, and T− =T−{T} will denote the setof stages except the last one.

However, in many real cases the model must be extended toconsider the uncertainty in some of the main parameters, in our case,the objective function, the rhs and the constraint matrix coefficients.

Stochastic programming is a very consolidated discipline fordealing with the uncertainty in the parameters of the optimiza-tion problems, see e.g., the books [6,15,16,20] with a very broad

∗ Corresponding author. Tel.: +34946012645; fax: +34946012516.E-mail address: [email protected] (G. Pérez).

0305-0548/$ - see front matter © 2009 Elsevier Ltd. All rights reserved.doi:10.1016/j.cor.2009.06.023

application field, see e.g., the books [25,27,30]. Additionally, the ap-plications of stochastic 0–1 programming are flourishing, see in thecompanion paper [13] a list of applications that are presented in thereferences therein. Although most of these applications deal withthe optimization of the objective function expected value, e.g., [18],there are some approaches that also deal with mean-risk models,by considering semi-deviations, see [19], excess probabilities, see[23] and conditional value-at-risk, see [21,24], as risk measure-basedfunctions to optimize. See also [8,17,26], among others. In our paperwe deal with the optimization of the objective function expectedvalue but only for illustrative purposes. Our approach can be appliedperfectly well to the mean-risk measures excess probabilities andconditional value-at-risk, at least.

In the general formulation of a multistage program, decisionson each stage have to be made stage-wise. For example, first stagevariables are selected before observing the realization of uncertainparameters, the so-called scenarios. After having decided on firststage and having observed each realization of uncertain parameters,the second stage (or recourse) decision has to be made. After havingdecided on second stage and having observed each realization of un-certain parameters, the next (third) stage decision has to be made,and so on. At each stage, there are variables which correspond to de-cisions that have to be made without anticipation of some of futureproblem data, i.e., they take the same value under each scenario (i.e.,the so-called nonanticipativity constraints must be satisfied). Whena finite number of scenarios is considered, a general multistageprogram can be expressed in terms of the previous stage decision

Page 2: On BFC-MSMIP strategies for scenario cluster partitioning, and twin node family branching selection and bounding for multistage stochastic mixed integer programming

L.F. Escudero et al. / Computers & Operations Research 37 (2010) 738 -- 753 739

variables being equivalent to a large, dual block-angular program-ming problem, introduced in [28] and known as Deterministic Equiv-alent Model (DEM, for short).

An important feature of our approach, the so-called BFC-MSMIP,with respect to other stochastic integer approaches is that itaddresses multistage environments with both continuous and 0–1variables at any stage of the time horizon. Elsewhere [1,11] we havepresented some approaches to address two-stage problems withonly 0–1 variables in the first stage although the second stage canhave 0–1 variables and others which are continuous. We have alsointroduced [3–5] some approaches to address multistage problemswith all 0–1 variables, and where uncertainty appears only in theobjective function coefficients and in the rhs. Moreover, there havefew attempts to solve up to optimality large-scale general mixed0–1 multistage models, where both types of variables appear atany stage of the time horizon, and where uncertainty can appearanywhere in the problem. See in [10] a methodology for an heuris-tic approach to the multistage stochastic integer problem basedon fix-and-relax coordination and Lagrangian decomposition andsubstitution for reinforcing the bounding mechanism.

In this paper we represent the multistage stochastic mixed 0–1problem by a mixture of the compact and splitting variable represen-tations of the DEM of the stochastic problemwith complete recourse,where the 0–1 and the continuous variables appear at any stage.A specialization of the Branch and Fix Coordination (BFC) approachthat we describe elsewhere, see [1,2,4,14], is considered for the ex-act solving of the multistage problem. The new algorithm that wepropose uses the Twin Node Family (TNF) concept, see [1,4,12] and itis specially designed for coordinating and reinforcing the branchingnodes and the branching variable selections at each branch-and-fix(BF) tree. The main contributions of the new algorithm consists ofenhancing the efficiency of the procedure presented in [13] in sev-eral ways, namely, proposing new strategies for TNF branching se-lection, proposing new scenario cluster partitioning and proposingnew schemes for TNF bounding for multistage stochastic mixed inte-ger programming. The combination of the three proposals, togetherwith the innovations introduced in [13], produce a new version of theprocedure that outperforms the performance of its previous version.It also outperforms the state-of-the-art optimization engine againstwhich the new approach has been tested for a bed of small, mediumand large scale sized instances.

The remainder of the paper is organized as follows. Section 2presents the mixed 0–1 DEM in the compact and splitting variablerepresentations. Section 3 deals with the scenario-cluster partition-ing. Section 4 presents several schemes for obtaining the branch-ing node set and the lower bounds to be calculated at each node.Section 5 shows several BFC strategies from combining the branch-ing node selection and bounding schemes for the efficiency of theexecution. Section 6 introduces the new BFC-MSMIP algorithm andthe related implementation procedure. Section 7 reports the com-putational experience. Section 8 concludes. The tables related withthe quantitative results of Section 7 are shown in the Appendix.

2. Mixed 0–1 Deterministic Equivalent Model (DEM)

Without loss of generality and for the sake of simplicity, in thispaper we will consider, in particular, the following multistage mixed0–1 model:

min∑

t∈Tatxt + ctyt

s.t. A′txt−1 + Atxt + B′

tyt−1 + Btyt = bt ∀t ∈ T,

xt ∈ {0, 1}nx , yt ∈ R+ny ∀t ∈ T, (2)

where A′t , At , B′

t and Bt are the constraint matrices.

To extend the deterministic model (2) to introduce uncertainty inthe parameters, we will use a scenario analysis approach. To illustratethis concept and some additional elements consider Fig. 1. Let usconsider the decision tree in the left part of the figure. It correspondsto the compact representation of the stochastic version, see DEM (3).Each node, say g, in the figure represents a point in time where adecision can be made. Once a decision is made, some contingenciesmay occur (e.g., in this example the number of contingencies is twofor each stage t), and information related to these contingencies isavailable at the beginning of each stage. In this context, a stageis a point in time where a decision is made and, in some cases,can be included by a subset of consecutive time periods. We willdenote by T, the set of stages, and by T = |T|, their number. In thisexample, there are T=4 stages. At each stage, there are two types ofdecision variables, namely, x, vector of 0–1 variables, and y, vectorof continuous variables. Let also G denote the set of scenario groups,and Gt the subset of scenario groups that belong to stage t, such thatG= ⋃

t∈TGt .The structure of this information is visualized as a tree, where

each root-to-leaf path represents one specific scenario, �, and corre-sponds to one realization of the whole set of the uncertain parame-ters. In this sense, � will denote the set of scenarios. In the exampleof Fig. 1, there are |�| = 8 root-to-leaf possible paths.

Moreover, each node in the tree can be associated with a scenariogroup, g, where G represents the set of scenario groups.

Note that the scenario group concept corresponds to the nodeconcept in the underlying scenario tree. However, it can sometimesbe useful to work with scenario groups instead of nodes, if for ex-ample, we want to split the set of scenarios into different subsets.Two scenarios belong to the same group in a given stage providedthat they have the same realizations of the uncertain parameters upto the stage. �gdenotes the set of scenarios that belong to group g,for g ∈ G. Following the nonanticipativity principle, see [6,22], bothscenarios should have the same value for the related variables withthe time index up to the given stage.

Let us assume that the vectors of the objective function values, aand c, the rhs vector b and the constraint matrix coefficients, A andB, depend on the scenario groups. So the compact representation ofthe mixed 0–1 DEM of the stochastic version with complete recourseof multistage problem (2) can be expressed

(MIP) zMIP = min∑

g∈Gwg(agxg + cgyg)

s.t. A′gx

�(g) + Agxg + B′gy

�(g) + Bgyg = bg ∀g ∈ G,

xg ∈ {0, 1}nx , yg ∈ R+ny ∀g ∈ G, (3)

wherewg is the likelihood assigned by the modeler to scenario groupg, such that wg =∑

�∈�gw�, A′

g ,Ag , B′g , Bg are the constraint matrices,

�(g) is the scenario group related to the immediate predecessor nodeof node g associated with scenario group g in the scenario tree, suchthat �(g) ∈ Gt(g)−1, for g ∈ G − G1, where t(g) is the stage to whichscenario group g belongs to, such that g ∈ Gt(g), and xg , yg are thecopy of the x, y vector of variables for scenario group g. Without lossof generality, xg and yg will denote the nx and ny dimensional vectorsof the 0–1 and continuous variables, respectively.

The right part of Fig. 1 gives the same information as the compactrepresentation but this time by using a splitting variable scheme.At each stage t we have the presentation of the nonanticipativityconstraints (i.e., imposing the equality) on the variables x�

t , y�t for the

scenarios � that belong to the same group �g , g ∈ Gt , t ∈ T−. Model(4) gives the splitting variable representation where the constraintsexplicitly appear in the model. Then, the nonanticipativity principlecan derive the set

{(x�t , y

�t ) : x

�t = x�′

t , y�t = y�′

t , ∀�,�′ ∈ �g ,���′, g ∈ Gt , t ∈ T−}.

Page 3: On BFC-MSMIP strategies for scenario cluster partitioning, and twin node family branching selection and bounding for multistage stochastic mixed integer programming

740 L.F. Escudero et al. / Computers & Operations Research 37 (2010) 738 -- 753

t = 1 t = 2 t = 3 t = 1 t = 2 t = 3 t = 4

x1, y1

x2, y2

x4, y4

x5, y5

x9, y9

x8, y8

x10, y10

x11, y11

x12, y12

x13, y13

x14, y14

x15, y15

x6, y6

x3, y3

x7, y7

2

1

3

7

15

14

13

6

12

11

5

10

9

4

8

x4, y4� �x3, y3

� �x2, y2� �x1, y1

� �

Fig. 1. Scenarios tree. Compact and splitting variable representations.

So, the splitting variable representation of the mixed 0–1 DEM ofthe stochastic version with complete recourse of the deterministicmultistage problem (2) can be expressed as

(MIP) zMIP = min∑

�∈�

t∈Tw�(a�

t x�t + c�t y

�t )

s.t. A′�t x�

t−1 + A�t x

�t + B′�

t y�t−1 + B�

t y�t = b�

t ∀� ∈ �, t ∈ T,

x�t − x�′

t = 0 ∀�,�′ ∈ �g : ���′, g ∈ Gt , t ∈ T−,y�t − y�′

t = 0 ∀�,�′ ∈ �g : ���′, g ∈ Gt , t ∈ T−,x�t ∈ {0, 1}, y�

t ∈ R+ ∀� ∈ �, t ∈ T, (4)

where w� is the likelihood assigned to scenario �, a�t and c�t are

the row vectors of the objective function coefficients, A�t , A

′�t , B′�

tand B�

t are the constraint matrices, and b�t is the rhs vector, for � ∈

�, t ∈ T, such that a�t = ag for � ∈ �g , g ∈ Gt , t ∈ T, and the

same for the other parameters. Notice that in all of these models x�t

and y�t are the copy of the nx and ny dimensional vector of 0–1 and

continuous variables x, y for scenario �, respectively.We can see that the relaxation of the nonanticipativity constraints

x�t − x�′

t = 0, (5)

y�t − y�′

t = 0, (6)

∀�,�′ ∈ �g : ���′, g ∈ Gt , t ∈ T− in model (4) results in a setof |�| independent mixed 0–1 models, where (7) is the model forscenario � ∈ �.

(MIP�) z� = min∑

t∈Tw�(a�

t x�t + c�t y

�t )

s.t. A′�t x�

t−1 + A�t x

�t + B

′�t y�

t−1 + B�t y

�t = b�

t ∀t ∈ T,

x�t ∈ {0, 1}, y�

t ∈ R+ ∀t ∈ T. (7)

3. Scenario cluster partitioning

In this section we propose a scenario-cluster partitioning to allowa combination of compact and splitting variable representations inthe different stages of the problem, depending on the scenario clusterpartition of choice.

Let q denote the number of scenario clusters to consider. Insteadof solving |�| MIP� scenario-models (q = |�|), or one MIP model(q = 1), we propose to choose an intermediate number of clustersq, with 1<q< |�|, and decompose the MIP problem into the MIPp

cluster-models (8). These submodels are linked by the nonanticipa-tivity constraints (9) and (10).

Let us suppose that we have selected a number of scenario clus-ters, say q. This value q has been selected as a divisor of |�|, thenwe have that 1� |�p| = |�|/q� |�|, where �p gives the set of sce-narios in cluster p for p=1, . . . , q. And, then, the scenario clusters are�1 = {1, . . . , �}, �2 = {1 + �, . . . , 2 · �}, . . . ,�q = {1 + (q − 1) · �, . . . , q · �},where �=|�|/q. We have experimented with different choices of sce-nario cluster partitioning, but the computational results have beensimilar to those presented in this paper.

As an additional notation, let Gp ⊆ G denote the set of scenariogroups for cluster p, such that �g

⋂�p

� ∅ means that g ∈ Gp.The model to consider for each scenario cluster p=1, . . . , q can be

expressed by the compact representation

(MIPp) zp = min∑

g∈Gp

wg(agxg + cgyg)

s.t. A′gx

�(g) + Agxg + B′gy

�(g) + Bgyg = bg ∀g ∈ Gp,

xg ∈ {0, 1}, yg ∈ R+ ∀g ∈ Gp, (8)

Page 4: On BFC-MSMIP strategies for scenario cluster partitioning, and twin node family branching selection and bounding for multistage stochastic mixed integer programming

L.F. Escudero et al. / Computers & Operations Research 37 (2010) 738 -- 753 741

t = 1 t = 2 t = 3 t = 4 t = 1 t = 2 t = 3 t = 4 t = 1 t = 2 t = 3 t = 4

z11

z21

z42

z32

z12

z13

z23

z33

z43

z53

z63

z73

z83

z22

1

1

2

3

q = r q = r 2 q = r 3

7

6

5

4

8

9

10

11

12

13

14

15

1

1

1

1 3

3

2

2 4

5

6

7

15

14

13

12

11

10

9

8 1

1

1

1

1

1

1

1 3

3

3

3

2

2

2

2 4

4

5

5

6

6

7

7 15

14

13

12

11

10

9

8

Fig. 2. Scenario cluster partitioning, for q = r, q = r2, and q = r3, where r = 2.

where wg is the likelihood assigned to scenario group g, such thatwg = ∑

�∈�g∩�p w�. Notice that model (8) for q = 1 is the DEM (3)and it is model (4) for q = �.

The q problems (8) are linked by the nonanticipativity constraints:

xgp − xgp′ = 0, (9)

ygp − ygp′ = 0, (10)

∀g ∈ Gp ∩Gp′, such that p�p′. From here to the end of the paper, wewill use the notation, xgp, only when we want to distinguish betweentwo different clusters p and p′, as in the nonanticipativity constraints,(9) and (10). In other cases, we will use xg or yg , with g ∈ Gp, todenote the vectors of variables for each scenario cluster p.

Then, an equivalent alternative can be given by the mixture of thecompact and the splitting variable representations of the DEM (4). Itcan be given in terms of the scenario-cluster models (8) as follows:

(MIP) ZMIP = minq∑

p=1

g∈Gp

wg(agxg + cgyg)

s.t. A′gx

�(g)+Agxg+B′gy

�(g)+Bgyg=bg , ∀g ∈ Gp, p=1, . . . , q,

xgp − xgp′ = 0, ∀g ∈ Gp ∩Gp′, p�p′,

ygp − ygp′ = 0, ∀g ∈ Gp ∩Gp′, p�p′,

xg ∈ {0, 1}, yg ∈ R+, ∀g ∈ Gp, p = 1, . . . , q. (11)

In general, without loss of generality, let us consider a symmetricand balanced scenario tree, with |�| = rT−1, where r is the numberof contingencies for each stage. In the examples of Figs. 1 and 2, weconsider r=2 and |�|=23=8. So, we can consider at least T−1 choicesfor the number of scenario-clusters to consider, say q, in the decom-position of the DEM problem (11), where q ∈ {r, r2, . . . , rT−2, rT−1}.

For each selection of q, the problem (11) is decomposed into thesubmodels (8). They have equal dimensions if the branching fac-tor of the original scenario tree is constant at each node. In anycase, they are explicitly linked by the nonanticipativity constraints(9)–(10). Notice that the MIPp submodels are expressed in compactrepresentation, for each p ∈ {1, 2, . . . , q}, and contain |�p| = |�|/q

scenarios. That is, fixing the q scenario clusters to decompose theproblem implies fixing the stages where the nonanticipativity con-straints are to be explicitly modeled and then, it implies fixing the di-mensions of each cluster that themselves are modeled by a compactrepresentation.

As an illustrative example, let us consider again the left tree inFig. 1, where T = 4 and r = 2 outcomes in each stage, such that wehave |�|=23=8 scenarios and |G|=15 scenario groups. Fig. 2 showsthe problem decomposition in q = 21 (left tree), q = 22 = 4 (centraltree) and q = 23 (right tree) scenario clusters.

Let us analyze its left part, where there are two clusters,namely p = 1 where G1 = {1, 2, 4, 5, 8, 9, 10, 11} and p = 2 whereG2 = {1, 3, 6, 7, 12, 13, 14, 15}, linked only by the nonanticipativityconstraints related to stage t = 1, x1, y1, i.e., xg , yg for g ∈ G1, whereg=1=G1 ∩G2, in constraints (9)–(10). The objective function valuefor cluster p in model (8) is zp1.

The central part of the figure gives the problem decompositionrelated to q=22; four clusters are considered, namely, p=1, definedby the nodes G1 ={1, 2, 4, 8, 9}; p=2, defined by G2 ={1, 2, 5, 10, 11},p = 3, defined by G3 = {1, 3, 6, 12, 13}; and p = 4, defined by G4 ={1, 3, 7, 14, 15}. The objective function value of cluster p in model(8) is zp2. The clusters are linked by the nonanticipativity constraintsrelated to stages t = 1, 2, such that xg , yg for g ∈ G1 ∪ G2; we noticethat the constraints are imposed for g= 1=G1 ∩G2 ∩G3 ∩G4 ∈ G1,g = 2 =G1 ∩G2 ∈ G2 and g = 3 =G3 ∩G4 ∈ G2.

Finally the right part of the figure gives the problem decompo-sition for q = 23 = 8 clusters, where each cluster is included by onescenario, being linked by the nonanticipativity constraints related tothe stages t = 1, 2, 3 such that xg , yg for g ∈ G1 ∪ G2 ∪ G3; again wenotice that the constraints are imposed for g=1=G1 ∩· · ·∩G8 ∈ G1,g=2=G1∩· · ·∩G4 ∈ G2, g=3=G5∩· · ·∩G8 ∈ G2 and g=4=G1∩G2,g = 5 = G3 ∩ G4, g = 6 = G5 ∩ G6 and g = 7 = G7 ∩ G8 ∈ G3. Theobjective function value for cluster p in model (8) is zp3.

Given each decomposition, and instead of obtaining indepen-dently the optimal solution for the models (8), for p = 1, . . . , q, wepropose elsewhere [1,4] the algorithmic framework BFC. Our spe-cialization is designed for a better coordination of the selectionof the branching node and branching variable for each scenario

Page 5: On BFC-MSMIP strategies for scenario cluster partitioning, and twin node family branching selection and bounding for multistage stochastic mixed integer programming

742 L.F. Escudero et al. / Computers & Operations Research 37 (2010) 738 -- 753

cluster-related BF tree, such that the relaxed constraints (9) are sat-isfied when fixing the appropriate variables to either one or zero.The proposed approach also coordinates and reinforces the scenariocluster related BF node pruning, the variable fixing and the objectivefunction value bounding of the subproblems attached to the nodes.

We have computationally proved that it is better to use the tradi-tional branch-and-bound (BB) scheme instead of the BFC scheme forthe stages where the nonanticipativity constraints do not explicitlyappear in the model for a given q scenario cluster partition, i.e., thestages where a compact representation of the model is performed.However, the BFC scheme gives better results (in computing timeand storage) for the stages where the nonanticipativity constraintsare explicitly considered in the model.

4. TNF branching and bounding

We refer to [29] for the branching and bounding, pruning and theother concepts in integer programming that we will use in the restof this paper.

4.1. Introduction and definitions

Let Rp be the branch-and-fix (BF) tree associated with scenariocluster p, generated by branching on/fixing at 0 or 1 the xg variables,where g ∈ Gp and p = 1, . . . , q. Let also Ap denote the set of activenodes, i.e., those nodes in which there still exist x-variables not fixedto 0–1 and whose solution value is better than the value of theincumbent solution. Also, we denote by I the set of indices of the0–1 variables x, over which the algorithm proceeds by branching on,and by (xgp)i the i th variable of the vector xg , for g ∈ Gp, p= 1, . . . , q.

We use the tree in Fig. 3 to illustrate the concepts presentedbelow. The figure corresponds to the scenario tree in Fig. 1, withthe scenario cluster partitioning given in the central tree of Fig. 2.There are three decision variables: x1 in the first stage, and x2 andx3 in the second stage. Notice that, in this cluster partitioning, q= r2,with r = 2, and then, q = 4. These four scenario clusters are linkedby the nonanticipativity constraints related to stages t = 1, 2. In theBFC strategies BFC2 and BFC3, see below, the set I corresponds tothe set of indices of the 0–1 variables x for these two stages, t=1, 2.In the bottom section of the figure the development of the branch-and-fix trees for each scenario cluster is depicted, p = 1, . . . , 4. Asan illustration, let the variable branching order be x1p , x

2p , and x3p , for

p = 1, . . . , 4.

Definition 1. Given index i ∈ I, scenario group g ∈ Gp ∩ Gp′, and

two scenario clusters p, p′ in the same group �g , variables (xgp)i and(xgp′ )i are said to be common variables for scenario clusters p and p′.

Notice that two common variables both have nonzero coefficientsin the nonanticipativity constraint related to a given scenario group.

For convenience, let us delete the subindex i in the variablesshown in Fig. 3. As an example, variables x21 and x22 in the figure arecommon variables for scenario clusters 1 and 2, since x2 must be fixedto the same 0–1 value in those two scenario clusters (notice that theyevolve identically up to stage 2). Variables x2 and x3 correspondingto time (or stage) t = 2 are not common to scenario clusters 1 and3, since these scenario clusters belong to different scenario groups,namely groups 2 and 3, at time 2, see scenario tree in Fig. 1.

Definition 2. Given index i ∈ I, scenario group g ∈ Gp ∩ Gp′, and

two scenario clusters p,p′ ∈ {1, . . . , q}, nodes a ∈ Ap and a′ ∈ Ap′

are said to be twin nodes with respect to scenario group g if on thepaths from the root node to these nodes in each of the two BF treesRp and Rp′

, the common variables, if any, (xgp)i and (xgp′ )i, have beenbranched on at the same 0–1 value.

For example, nodes 13 and 15 in Fig. 3 are twin nodes with re-spect to scenario group 2 because both have fixed the values of theircommon variables x1 and x2 to 0. Nodes 13 and 16, however, arenot twin, because their common variable x2 has been branched onat opposite values. Nodes 13 and 17 are not twin either, since al-though variable x2 has been branched on at the same value, scenarioclusters 1 and 3 do not belong to the same scenario group at stage 2(scenario cluster 1 belongs to scenario group 2 and scenario cluster3 belongs to scenario group 3).

Definition 3. A twin node family (TNF), say,Jf , is a set of nodes suchthat any node is a twin node to all other nodes in the family. F willdenote the set of all such families, with f ∈ F.

As an example, nodes 1–4 in Fig. 3 constitute a twin node family.

Definition 4. A candidate TNF is a TNF whose members have not yetfixed all of their common variables.

As an example nodes 5 and 7 in Fig. 3 constitute a candidate TNF,since their scenario cluster trees have in common variables x21 andx22 that have not yet been branched on. On the other hand, the TNFconsisting of nodes 5, 7, 9 and 11 is not a candidate TNF, since thenodes do not have any variable in common that has not yet beenbranched on: the only common variable is x1 and it has already beenbranched on.

Definition 5. Given g ∈ Gp, a TNF integer set is a set of TNFswhere allx variables take integer values, there is one node in each BF clustertree and the nonanticipativity constraints (9) xgp −xgp′ =0 are satisfied,

∀g ∈ Gp ∩Gp′, such that p�p′.

As an example the nodes 21, 23, 26 and 28 in Fig. 3 constitute aTNF integer set, since all their (integer) variables have taken integervalues, the common variables have taken the same values (x11 = x12 =x13 = x14 =0, x21 = x22 =1, x33 = x34 =1) and there is one node per BF tree.Nodes 25 and 28 are not a TNF integer set, since the common variablex33 and x34 have taken different values (0 and 1, respectively).

Some of the TNFs are: J1 = {1, 2, 3, 4}, J2 = {5, 7, 9, 11} (noncan-didate), J3 = {5, 7}, J4 = {9, 11}, J5 = {6, 8, 10, 12} (noncandidate),J6 = {13, 15}, J7 = {17, 19}, J8 = {21, 23}, etc.

We can see that themain difference between a traditional branch-and-bound (BB) scheme and the branch-and-fix coordination (BFC)approach lies in the fact that the latter has as many BB trees as thenumber of scenario clusters, coordinating the branching nodes (TNFs)and the branching variables (integer common variables) so that therelated nonanticipativity constraints are satisfied. See [1,4].

4.2. Auxiliary submodels

The BFC-MSMIP approach proceeds by branching on a subset, sayI, of xg variables, g ∈ Gp (to be defined below depending uponthe TNF branching strategy to select), coordinating the execution ofmixed 0–1 submodels under each of the scenario clusters p, wherep = 1, . . . , q.

Note that I is the set of indices of the 0–1 variables over whichthe algorithm proceeds by branching on, and the cardinality of thisset depends upon the branching strategy to be selected. For example,in strategy BFC1, see below, this set contains the indices of the 0–1variables from the scenario groups of all the stages, except the last.In strategies BFC2 and BFC3, this set contains the indices of the 0–1variables from the scenario groups of the stage where the nonan-ticipativity constraints appear in an explicit form, see Fig. 2. Giventhe set I, we have chosen to branch the 0–1 variables according

Page 6: On BFC-MSMIP strategies for scenario cluster partitioning, and twin node family branching selection and bounding for multistage stochastic mixed integer programming

L.F. Escudero et al. / Computers & Operations Research 37 (2010) 738 -- 753 743

BF tree R1 BF tree R2 BF tree R3 BF tree R4

1

5

13 14 15

23 24

16

7 8

21 22

6

2

17 18

25 26

109

3 4

11 12

2019

27 28

x = 011

x = 121

x = 111

x = 031

x = 131 x = 13

2x = 03

2

x = 022 x = 12

2

x = 012 x = 11

2x = 01

3x = 11

3

x = 023 x = 12

3

x = 033 x = 13

3

x = 024

x = 014

x = 114

x = 124

x = 034

x = 134

x = 021

Fig. 3. Branch and fix trees, Rp , for p = 1, . . . , q, for BFC2 and BFC3 strategies, q = r2, r = 2, and scenario tree of Fig. 1. Variables branching order: x1p , x2p , x

3p .

to the (input) natural order. See in [13] for an analysis of efficiencyof the BFC-MSMIP procedure in terms of the starting branching andbranching order analysis.

See a description of the BFC-MSMIP approach in Section 6. In min-imization problems, such as those defined in this work, the schemecomputes a chain of lower bounds, say, Zi = ∑q

p=1 zpi where, now,

zpi denotes the optimal solution value of the MIPp model, where thefirst i variables xg have been fixed to 0 or 1, say, xgj , such that g ∈ Gp,i.e., the solution of the following problem:

(MIPpi )

MIPp

s.t. xgj = xgj , 1� j� i : g ∈ Gp,

xgj ∈ {0, 1}, i + 1� j�n : g ∈ Gp,

xgj ∈ {0, 1}, n + 1� j�nx : g ∈ Gp,

(12)

for i ∈ I, where n= |I| and Z0 denotes the lower bound associatedwith the root node, say i = 0.

Moreover, we know that, in minimization problems,Z0 � Z1 � · · · � Zn, and notice that n is the number of nodes forbranching and fixing the xg-variables.

In the case where the optimal solution that has been obtained ina TNF i, such that the x variables satisfy the integrality and nonan-ticipativity constraints, any of the two following situations have oc-curred:

1. The nonanticipativity constraints (10) have been satisfied and,then, a new feasible solution has been found for the original prob-lem (11). The relative incumbent solution must be updated andin any case, the TNF is pruned. The optimality of the incumbentsolution has been proved if the set of active nodes is empty in theBF Rp trees.

2. The nonanticipativity constraints (10) have not been satisfied. Inthis case we must optimize two submodels, MIPTNF and MIPf ofthe original one, see below, resulting from fixing the xg-variablesto the branched on/fixed at values in the integer TNF whose as-sociated models have been solved. If these submodels are feasi-ble, the incumbent solution is updated and, if the TNF cannot bepruned, continue with the BF trees examination. The definition ofeach of these submodels is as follows. The first can be defined asfollows:

(MIPTNFi )

MIPs.t. xj = xj, 1� j� i (from the branching process),

xj = xj, i + 1� j�n (from MIPpi ),xj ∈ {0, 1}, n + 1� j�nx, (13)

whose solution value is denoted by zTNFi , being an upper boundof the solution value of the original problem. And the second onecan be defined as follows:

(MIPfi )

MIPs.t. xj = xj, 1� j� i (from the branching process),

xj ∈ [0, 1], i + 1� j�n (from MIPpi ),xj ∈ {0, 1}, n + 1� j�nx, (14)

whose solution value is denoted by zfi .Notice also that the solution to be obtained by solving the mixed0–1 model, (13) attached to a TNF integer set could be the incum-bent solution, since all the x and y variables satisfy the nonan-ticipativity constraints and the x variables also satisfy integrality.However, it does not necessarily mean that it should be pruned,except if all 0–1 variables have been branched on for the fam-ily. Otherwise, a better solution can still be obtained by branch-ing on the nonyet branched on 0–1 variables. Recall that zTNFi isthe solution value in (13) that satisfies the nonanticipativity con-straints (9) by fixing the x variables to their 0–1 values (where theconstraints (9) are already satisfied). The family can be prunedif zTNFi = zfi , where zfi is the solution value of model (14), whereboth constraint types (9) and (10) are satisfied, but the nonyetbranched on x variables are allowed to take fractional values. Inthis case, there is no better solution than zTNF to be obtained fromthe descendant TNF integer sets. Hence, if zTNFi > zfi and zfi < Z, thebranching follows deep to the (i + 1)th node, since it is possibleto find a better feasible solution in the BFC tree.

Along this branch-and-fix coordination (BFC) procedure, 2n feasiblesolutions are obtained at most, and the smallest solution value of allof them is the solution value of the original problem (11).

Although the traditional BFC scheme has been widely compu-tationally tested in two-stage models with satisfactory results, seefor example [11], the number of BF nodes to examine in multistagemodels for middle and large-scale instances can be very large sincethe lower bounds that are obtained could not be strong enough and,then, they do not sufficiently cut the BF trees. In this section, we pro-pose an approach for obtaining strong lower bounds, whose compu-tational results are reported in Section 7.

4.3. Branching nodes

Our first proposal (strategy BFC1) consists of BF branching on the0–1 variables from the scenario groups of all stages, except the lastone (to be BB branched). LetG∗

t denote the cumulated set of scenario

Page 7: On BFC-MSMIP strategies for scenario cluster partitioning, and twin node family branching selection and bounding for multistage stochastic mixed integer programming

744 L.F. Escudero et al. / Computers & Operations Research 37 (2010) 738 -- 753

groups until stage t, i.e., G∗t =⋃t

�=1G� for t ∈ T, so we branch on xg

for g ∈ G∗T−1.

Our second proposal (strategies BFC2 and BFC3) consists ofbranching on the 0–1 variables from the scenario groups of thestages where the nonanticipativity constraints appear in an explicitform as (9)–(10), see Fig. 2. So, depending on the choice of q, say r,r2 o r3 in Fig. 2, we will branch on xg for g ∈ G∗

1, G∗2, G

∗3, respectively.

In general, we will branch on xg for q= rt , g ∈ G∗t , t ∈ {1, 2, . . . , T −1}.

4.4. Lower bounds

Let us define some lower bounds on the solution value of theoriginal problem for the root node, i = 0.

Definition 6. For each t ∈ {1, . . . , T}, let Zt0,MIP denote the solutionvalue of problem MIP, where the integrality of the x variables fromstages 1 to t has been relaxed, and the integrality constraints for theother x variables is considered.

In particular, ZT0,MIP = ZLP , i.e., the solution value of the linearrelaxation of original problem MIP.

Proposition 1. The following inequalities are satisfied:

ZT0,MIP � ZT−10,MIP � · · · � Z20,MIP � Z10,MIP � zMIP .

Definition 7. For each t ∈ {1, . . . , T − 1}, and assuming that q = q(t),where q(t) = rt:

1. Let Zt0,0 = ∑q(t)p=1 z

p0,0 ≡ ∑q(t)

p=1 zpMIP , that is, the sum of the solution

values zp0,0 for each scenario cluster related model (8), where thex variables take 0–1 values in all stages.

2. Let Zt0,t = ∑q(t)p=1 z

p0,t , that is, the sum of the solutions values zp0,t ,

for each scenario cluster related model (8), where the integralityconstraints of the 0–1 variables have been relaxed from stages 1until t and the other x variables take the 0–1 values.

3. Let Zt0,T = ∑q(t)p=1 z

p0,T ≡ ∑q(t)

p=1 zpLP , that is, the sum of the solution

values zp0,T , obtained from the linear relaxation of each scenariocluster model (8).

It is clear that Zt0,0, Zt0,t and Zt0,T are lower bounds of the solution

value zMIP of the original problem MIP.

Proposition 2. The following inequalities are satisfied:

1. For any t ∈ {1, 2, . . . , T − 1}, and q(t) = rt it results thatZt0,T � Zt0,t � Zt0,0 � zMIP .

2. For the extreme values j = 0 and j = T, it results thatZT−10,j � ZT−2

0,j � · · · � Z20,j � Z10,j � zMIP .

3. And ZT−10,T−1 � ZT−2

0,T−2 � · · · � Z20,2 � Z10,1 � zMIP .4. For any t ∈ {1, 2, . . . , T − 1}, and q(t) = rt it results that

Zt0,t � Zt0,MIP � zMIP .

Proof. Notice that the chains of the related problems only differ onthe relaxation of the integrality constraints of some variables and thenonanticipativity constraints of some scenario groups. So the prooffollows. �

Given the above propositions, all bounds are lower bounds ofzMIP and, thus, any of them can be considered as a lower bound Z0of the root node. On the other hand, the closer the lower boundis to ZMIP , probably the smaller number of BF nodes will be re-quired to obtain it. However, some lower bounds can be costly to

compute and its computation may not be worth the effort. A balancebetween the goodness of the lower bound and its computing effort isneeded.

For estimating the goodness of each lower bound and the relatedcomputing effort, we have experimented with the instances thatare included in our testbed, and the results for the bounds Zt0,MIP(Table 4), Zt0,0 (Table 5) and Zt0,t (Table 6) are shown in Appendixfor different choices of q(t) = rt , t ∈ {1, 2, . . . , T − 1}. From the resultsshown in the three tables we can conclude that the lower boundwith the cheapest computing effort is Zt0,t , a better lower boundis Zt0,0, although with a bigger but still affordable cost. The lowerbound Zt0,MIP can be discarded, since the computing cost cannot beaffordable (in some cases the time exceeds the limit, 6 h) and, on theother hand, the results are not very good. So, we select Zt0,0 as thelower bound to use for the root node and, so, Z0 := Zt0,0, for a givenchoice q(t) = rt , t ∈ {1, 2, . . . , T − 1}.

Similar definitions and results to those obtained for the lowerbounds of the root node can be extended to any node i�1 for i ∈ I.In this case, we have replaced the subindex 0 with the subindex ito point out the TNF under consideration. It means that the first i xvariables have been branched on/fixed at 0–1. Let zi,MIP denote theoptimal solution value.

Definition 8. For a given i�1, i ∈ I and for each t ∈ {1, . . . , T}, letZti,MIP denote the solution value of problem MIP, where the first i xvariables have been branched on/fixed at 0–1, the integrality of the0–1 variables from stages 1 to t has been relaxed for the variablesfrom i + 1 until n, and the other x variables from n + 1 until nx takethe 0–1 values.

Proposition 3. For all i�1, i ∈ I, the following inequalities are sat-isfied:

ZTi,MIP � ZT−1i,MIP � · · · � Z2i,MIP � Z1i,MIP � zi,MIP .

Definition 9. For a given i�1, i ∈ I and for each t ∈ {1, . . . , T − 1},and assuming that q = q(t), where q(t) = rt:

1. Let Zti,0 = ∑q(t)p=1 z

pi,0, that is, the sum of the solutions values zpi,0

for each scenario cluster related model (8), where the first i xvariables have been branched on/fixed at 0–1, and the rest of xvariables take 0–1 values in all stages.

2. Let Zti,t = ∑q(t)p=1 z

pi,t , that is, the sum of the solution values zpi,t ,

for each scenario cluster related model (8), where the first i xvariables have been branched on/fixed at 0–1, the integrality ofthe 0–1 variables from stages 1 until t has been relaxed for thevariables from i + 1 until n, and the other x variables from n + 1until nx take the 0–1 values.

3. Let Zti,T = ∑q(t)p=1 z

pi,T ≡ ∑q(t)

p=1 zpi,LP , that is, the sum of the solution

values zpi,T , obtained from the linear relaxation of each scenariocluster model (8), where the first i x variables have been branchedon/fixed at 0–1.

It is clear that Zti,0, Zti,t and Zti,T are lower bounds of the solu-

tion value Zti,MIP of the problem attached to the original problemwhere the first i variables have already been branched on/fixedat 0–1.

Proposition 4. For a given i�1, i ∈ I, the following inequalities aresatisfied:

1. For any t ∈ {1, 2, . . . , T − 1}, and q(t) = rt it results that

Zti,T � Zti,t � Zti,0 � zi,MIP .

Page 8: On BFC-MSMIP strategies for scenario cluster partitioning, and twin node family branching selection and bounding for multistage stochastic mixed integer programming

L.F. Escudero et al. / Computers & Operations Research 37 (2010) 738 -- 753 745

2. For the extreme values j = 0 and j = T, it results that

ZT−1i,j � ZT−2

i,j � · · · � Z2i,j � Z1i,j � zi,MIP .

3. And

ZT−1i,T−1 � ZT−2

i,T−2 � · · · � Z2i,2 � Z1i,1 � zi,MIP .

4. For any t ∈ {1, 2, . . . , T − 1}, and q(t) = rt it results that

Zti,t � Zti,MIP � zi,MIP .

5. Combining TNF branching and bounding in the BFC-MSMIPmethodology

In this section we combine the two alternatives for selecting theTNF branching from the set I, that is

• we BF branch on the xg variables with g ∈ G∗T−1, i.e., for all the

stages except the last one for strategy BFC1, and• we BF branch on the xg variables, just for stages where there are

explicitly nonanticipativity constraints, i.e., for stages 1 until t, forBFC2 and BFC3

with the two lower bounds of choice,

• Zi = Zti,0 for BFC1 and BFC3, and• Zi = Zti,t for strategy BFC2.

According to Proposition 4, the lower bounds used in strategies BFC1and BFC3 are tighter than the lower bounds used in strategy BFC2. Itis worth pointing out the differences in the submodels MIPTNF andMIPf , in particular the value zf , that is computed as ZT−1

i,MIP for BFC1and Zti,MIP for BFC2 and BFC3.

At root node, i=0, the lower bound is computed in all the strate-gies, BFC1, BFC2 and BFC3, as Z0 := Zt0,0, following the good resultsfor this bound shown in Table 5, see Appendix.

5.1. BFC1

Let us select the number of clusters q as q(t)=rt for t ∈ {1, . . . , T−1}to compute the lower bounds Zti,0 and we consider a TNF where i xvariables have already been branched on/fixed at for i ∈ I relatedto a group g ∈ G∗

T−1 in the |T − 1| stages. In this case, we BF branchon the xg variables with g ∈ G∗

T−1, i.e., for all the stages except thelast one, since there are not nonanticipativity constraints in the laststage and, then, the resulting model is solved by BB means.

At each TNF, we compute the lower bound, say, Zi=Zti,0=∑qp=1 z

pi,0,

for q = rt , where zpi,0 denotes the optimal solution value of the MIPp

model, where the first i variables xg have been fixed to 0 or 1, it isthe solution of the following problem:

(MIP1pi,0)

MIPp

s.t. xgj = xgj , 1� j� i : g ∈ Gp ∩G∗T−1,

xgj ∈ {0, 1}, i + 1� j�n : g ∈ Gp ∩G∗T−1,

xgj ∈ {0, 1}, n + 1� j�nx : g ∈ Gp −G∗T−1.

(15)

Observe that, in the computation of each lower bound Zi, q mixed0–1 submodels must be solved, one per each scenario cluster p, with0–1 variables in all the stages, given the definition of zpi,0.

When we have branched on/fixed at all the xg variables, withg ∈ G∗

T−1, and in case that the x variables satisfy the integrality and

nonanticipativity constraints, but the continuous y variables do notsatisfy nonanticipativity, the problems (16) and (17) must be solved:

(MIPTNFi,T−1)

MIPTNFT−1s.t. xgj = xgj , 1� j� i : g ∈ G∗

T−1

(from the branching process),xgj = xgj , i + 1� j�n : g ∈ G∗

T−1

(from MIP1pi,0),

xgj ∈ {0, 1}, n + 1� j�nx : g ∈ GT ,

(16)

whose optimal solution value is denoted by zTNFi , being an upperbound of the solution value of the original problem.

(MIPfi,T−1)

MIPfT−1s.t. xgj = xgj , 1� j� i : g ∈ G∗

T−1

(from the branching process),xgj ∈ [0, 1], i + 1� j�n : g ∈ G∗

T−1,

xgj ∈ {0, 1}, n + 1� j�nx : g ∈ GT ,

(17)

whose solution value is denoted by zfi .Observe that, in strategy BFC1, the two submodels (16) and (17)

only have the 0–1 variables corresponding to the last stage. In par-ticular, zfi coincides with ZT−1

i,MIP . Moreover, both of them, MIPTNFi,T−1 and

MIPfi,T−1, are problems with a similar dimension to the original one,but they have fixed at in the first model and relaxed in the secondmodel the integrality constraints for the integer variables for stages1 until T − 1.

5.2. BFC2

Let us select the number of clusters q as q(t)=rt for t ∈ {1, 2 . . . , T−1}, and consider a TNFwhere i x variables have already been branchedon/fixed at for i ∈ I related to a group g ∈ G∗

t for t ∈ {1, 2 . . . , T − 1}.In this case, we BF branch on the xg variables, just for stages wherethere are explicitly nonanticipativity constraints, i.e., for stages 1until t, given the selection of the number of clusters q = rt .

At each TNF, we compute the lower bound, say, Zi=Zti,t=∑q

p=1 zpi,t ,

where zpi,t denotes the optimal solution value of the MIPp modelwhere the first i variables xg have been fixed to 0 or 1 such thatg ∈ Gp ∩G∗

t , it is the solution of the following problem:

(MIP2pi,t)

MIPp

s.t. xgj = xgj , 1� j� i : g ∈ Gp ∩G∗t ,

xgj ∈ [0, 1], i + 1� j�n : g ∈ Gp ∩G∗t ,

xgj ∈ {0, 1}, n + 1� j�nx : g ∈ Gp −G∗t .

(18)

Observe that, in the computation of each lower bound Zi, q mixed0–1 submodels must be solved, one per each scenario cluster p, with0–1 variables in the stages t+1 until the last one, given the definitionof zpi,t .

When we have branched on/fixed at all the xg variables, withg ∈ G∗

t , and in case that the x variables satisfy the integrality andnonanticipativity constraints, but the continuous y variables do notsatisfy nonanticipativity, the problems (19) and (20) must be solved:

(MIPTNFi,t )

MIPTNFts.t. xgj = xgj , 1� j� i : g ∈ G∗

t

(from the branching process),xgj = xgj , i + 1� j�n : g ∈ G∗

t (from MIP2pi,t),

xgj ∈ {0, 1}, n + 1� j�nx : g ∈ G−G∗t ,

(19)

Page 9: On BFC-MSMIP strategies for scenario cluster partitioning, and twin node family branching selection and bounding for multistage stochastic mixed integer programming

746 L.F. Escudero et al. / Computers & Operations Research 37 (2010) 738 -- 753

whose optimal solution value is denoted by zTNFi , being an upperbound of the solution value of the original problem.

(MIPfi,t)

MIPfts.t. xgj = xgj , 1� j� i : g ∈ G∗

t

(from the branching process),xgj ∈ [0, 1], i + 1� j�n : g ∈ G∗

t ,

xgj ∈ {0, 1}, n + 1� j�nx : g ∈ G−G∗t ,

(20)

whose solution value is denoted by zfi .Observe that, in strategy BFC2, the two submodels (19) and (20)

have 0–1 variables in stages t+1 until the last stage, T. In particular,zfi coincides with Zti,MIP . Moreover, both of them, MIPTNFi,t and MIPfi,t ,are problems with a similar dimension to the original one, but theyhave fixed at in the first model and relaxed in the second modelthe integrality constraints for the integer variables for stages 1 untilt, where t is the value such that q = rt . In general, the solution ofthese two problems becomes computationally costlywhen t becomessmaller since, in this case, the number of 0–1 variables increases.

5.3. BFC3

Let us select the number of clusters q as q(t) = rt for t ∈ {1, 2 . . . ,T − 1}, and consider a TNF where i x variables have already beenbranched on/fixed at for i ∈ I related to a group g ∈ G∗

t for t ∈{1, 2 . . . , T − 1}. In this case as in the strategy BFC2, we BF branchon the xg variables, just for those stages where there are explicitlynonanticipativity constraints, i.e., for stages 1 until t, given the valuet in the selection of the number of clusters q = rt .

At each TNF, we compute a lower bound for BFC3 in a similar wayas for strategy BFC1, say, Zi = Zti,0 = ∑q

p=1 zpi,0, where zpi,0 denotes the

optimal solution value of the MIPp model where the first i variablesxg have been fixed to 0 or 1 such that g ∈ Gp ∩G∗

t , it is the solutionof the following problem:

(MIP3pi,0)

MIPp

s.t. xgj = xgj , 1� j� i : g ∈ Gp ∩G∗t ,

xgj ∈ {0, 1}, i + 1� j�n : g ∈ Gp ∩G∗t ,

xgj ∈ {0, 1}, n + 1� j�nx : g ∈ Gp −G∗t .

(21)

Notice that the lower bounds for BFC1 and BFC3 are tighter than thelower bounds for BFC2, from Proposition 4.

Observe also that, in the computation of each lower bound Zi, qmixed 0–1 submodels must be solved, one per each scenario clusterp, with 0–1 variables in all the stages, given the definition of zpi,0.

When we have branched on/fixed at all the xg variables, withg ∈ G∗

t , and in case that the x variables satisfy the integrality andnonanticipativity constraints, but the continuous y variables do notsatisfy nonanticipativity, the problems that must be solved are againthe submodels (19) and (20), whose solution values are zTNFi and zfi ,respectively.

Then, in strategy BFC3, the situation for these two submodels isthe same as for strategy BFC2. They have 0–1 variables in stages t+1until the last stage, T, and the value zfi coincides with zti,MIP . Noticethat for t = T − 1, strategy BFC3 coincides with strategy BFC1.

5.4. Upper bounds

We have seen that the solution values zTNFi,t of submodel (19) and

zfi,tof submodel (20) are obtained for each node i of the BF tree andfor each stage, depending on how to branch on xg for g ∈ G∗

t .

Proposition 5. The following inequalities are satisfied:

1. For any t ∈ T−, i ∈ I, it results that zfi,t � zTNFi,t .

2. For any t ∈ T−, i ∈ I, it results that zMIP � zTNFi,t and, so, an up-per bound on the solution value of the original problem has beenobtained.

3. For any t ∈ T−, i ∈ I, if xj ∈ {0, 1} ∀j ∈ {i + 1, . . . ,n}, it results thatzMIP � zfi,t and, so, another upper bound on the solution value of theoriginal problem has been obtained.

4. For any i ∈ I, it results that zTNFi,T−1 � zTNFi,T−2 � · · · � zTNFi,2 � zTNFi,1 .

5. For any i ∈ I, it results that zfi,T−1 � zfi,T−2 � · · · � zfi,2 � zfi,1.

6. Algorithm BFC-MSMIP

In this section we present the algorithm BFC-MSMIP for using thethree strategies presented above, BFC1, BFC2 and BFC3. We have cho-sen the depth first strategy for the TNF branching selection. Whenthere is a guarantee that the incumbent solution could not be pro-duced by the successor TNFs in both branches, then a backtrackingto the immediate ancestor TNF is performed.

Rough algorithm

Step 1: Solve the scenario cluster related models MIPp, p=1, . . . , q.If all nonanticipativity and all integrality constraints aresatisfied then stop; the optimal solution to the originalproblem has been obtained. Otherwise, a lower bound Z0for the optimal solution has been found.

Step 2: Selection of the branching common x variable for a givenscenario group, according to a given criterion (see below).

Step 3: Depth first strategy to use. Selection of the candidate TNFby branching on the chosen 0–1 variable in a given stage,according to a given criterion (see below) and, later, theother branch.

Step 4: Bound the just created TNF, by optimizing the mixed 0–1scenario cluster submodels MIPp, p = 1, . . . , q associatedwith its nodes. If any model is infeasible or the solutionvalue is not better than the incumbent one, then the TNFis pruned and so, go to Step 10.

Step 5: If, by considering the solution of the relaxed problem inStep 4, the TNF is not an integer TNF, then go to Step 2(i.e., selection of a new common x branching variable) forcontinuing the branching phase.If the nonanticipativity constraints are satisfied by thecommon y variables, then go to Step 8. Otherwise, go toStep 6.

Step 6: Optimize the mixed 0–1 models of choice (model (16) forBFC1 and model (19) for BFC2 and BFC3) that results fromfixing the common x variables to their 0–1 values obtainedin Step 4. If the current solution is better than the incum-bent solution, then update the incumbent solution and theactive node sets.If all 0–1 variables have been branched on, then discard theTNF integer set (otherwise a better solution can be found bybranching on the not-yet branched on common x variables)and go to Step 9; otherwise, go to Step 7.

Step 7: Optimize the mixed 0–1 models of choice (model (17) forBFC1 and model (20) for BFC2 and BFC3). If the solutionvalue is not better than the value of the incumbent solution,then the current TNF should be pruned and so, go to Step 8.Analyze if the current TNF should be pruned based on thesolution values of the models of choice that have beenoptimized in Steps 6 and 7. If it should be pruned, then goto Step 8; otherwise, go to Step 2.

Page 10: On BFC-MSMIP strategies for scenario cluster partitioning, and twin node family branching selection and bounding for multistage stochastic mixed integer programming

L.F. Escudero et al. / Computers & Operations Research 37 (2010) 738 -- 753 747

Step 8: The current TNF is pruned. If the current solution is feasibleand better than the incumbent solution, then update theincumbent solution and the active node sets.

Step 9: If the sets of active nodes are empty (i.e., there is no anyactive node with a fractional x variable), then STOP, sincethe incumbent solution is optimal.

Step 10: If the current branching variable x has been branched on inboth directions, then backtrack and go to Step 9. Otherwise,“branch on x at one” if it has been “branched on at zero”,and vice versa and, in any case, go to Step 4.

Notice that the algorithm always branches on a TNF, that is, itbranches on a set of nodes as a unique identity so that the branch-ing variables automatically satisfy the related nonanticipativity con-straints. Taking out these constraints from the model and consider-ing them in the algorithm is the main difference of a BFC approachwith respect to the traditional BB schemes. The numerical resultsshow it outperforms a state-of-the-art BB scheme implementation,see Section 7.

We have performed numerous experiments (not reported in thepaper) with different TNF starting branching and variables branchingordering for a given TNF. Based on the numerical results, we havechosen the best pair of strategies that, additionally, are the simplestones, namely, start branching on the 0-value of the x variables and,afterwards, branching on the 1-value, and ordering the branchingvariables according to the (input) natural ordering.

Notice that in the Steps 4, 7, 9 and 10 of the procedure, the up-perindex g, with g ∈ Gp denotes the set of common variables, xgi ofcluster p, that must be fixed to the same value, 0 or 1. In these samesteps, the subindex i denotes the index in |I|, i.e., the correspondingset over which the algorithm proceeds by branching on. The cardi-nality of this last set depends upon the branching strategy to select.The procedure for which we have obtained the results reported inSection 7 is as follows.

Procedure

Step 0: Initialize ZMIP := +∞.Step 1: Solve the scenario-cluster related mixed 0–1 prob-

lems, MIPp, ∀p = 1, . . . , q, and compute the lowerbound Z0 = Zt0,0, for the choice of q(t)= rt , to use forthe root node.If there is any (0–1) x variable that takes differentvalues in the scenario-related clusters, then go toStep 2.If there is any (continuous) y-variables that takesdifferent values in the scenario-related clusters, thengo to Step 6.Otherwise, the optimal solution to the original prob-lem has been found and, so, ZMIP := Z0 and stop.

Step 2: Initialize i := 1 and go to Step 4.Step 3: Reset i := i + 1.

If i=|I|+1 where I is the subset of variables untilstage T − 1 in BFC1 or until stage t with t� T − 1 inBFC2 or BFC3 then go to Step 8.

Step 4: Branch xgi := 0, ∀g ∈ Gp, p = 1, . . . , q.Step 5: Solve the mixed 0–1 scenario-cluster related sub-

models, MIPp, ∀p=1, . . . , q, for the choice of q(t)= rt ,t = 1, . . . , T − 1 and compute the bound Zi = Zti,0, forBFC1 and BFC3, and Zi = Zti,t , for BFC2, see models(15), (21), and (18).If Zi � ZMIP then go to Step 7.If there is any x variable that either takes fractionalvalues or takes different values for some of the qscenario clusters then go to Step 3.

If all the y variables take the same value for all sce-nario clusters p = 1, . . . , q then update ZMIP := Zi andgo to Step 7.

Step 6: Solve the mixed 0–1 submodel (16) for BFC1 and(19) for BFC2 and BFC3 to satisfy the nonanticipativ-ity constraints for the y variables in the given TNFinteger set. Notice that the solution value is denotedby zTNFi .Update ZMIP := min{zTNFi , ZMIP}.If i = |I|, then go to Step 7.Solve themixed 0–1 submodel (17) for BFC1 and (20)for BFC2 and BFC3, where the fractional x variablesare the nonyet BF branched on at the current TNF.Notice that the solution value is denoted by zfi .If zfi < zTNFi and zfi < ZMIP and all the fractional x vari-ables take 0–1 values in the solution of the model(17) or (20) update ZMIP := zfi and go to Step 7.If zTNFi = zfi or z

fi � ZMIP , then go to Step 7, otherwise

go to Step 3.Step 7: Prune the branch.

If xgi = 0, ∀g ∈ Gp, p = 1, . . . , q, then go to Step 10.Step 8: Reset i := i − 1.

If i=0 then stop, since the optimal solution ZMIP hasbeen found.

Step 9: If xgi = 1, ∀g ∈ Gp, p = 1, . . . , q, then go to Step 8.Step 10: Branch xgi := 1, ∀g ∈ Gp, p = 1, . . . , q.

go to Step 5.

7. Computational results

In this section we present the results of the computational expe-rience while optimizing a general multistage stochastic mixed 0–1problem. The instances have been generated as a perturbation of thelarge-scale instances presented in [7], where all the coefficients havebeen randomly generated. As a result small, medium and large scalesized instances have been generated.

Our algorithmic approach has been implemented in a C + +experimental code. It uses the optimization engine COIN-OR for solv-ing the mixed-integer submodels (15)–(21). The computational ex-periments were conducted in a Workstation Sun FIRE v245, underSolaris 10, with 2 CPU of 1.5GHz and 4Gb of RAM.

Table 1 gives the dimensions of the DEM (4), in compact repre-sentation and the scenario related models (7), and Table 2 gives thedimensions of the q= r and q= r2 scenario cluster related models (8)for T = 4 periods. The headings are as follows: m, number of con-straints; nx, number of 0–1 variables; ny, number of continuous vari-ables; nel, number of nonzero coefficients in the constraint matrix;and dens, constraint matrix density (in %).

Table 3 shows the main results of our computational experimen-tation. The headings are as follows: |�|, number of scenarios; |G|,number of scenario groups; ZLP = ZT0,MIP , solution value of the LP re-laxation of the original problem (4); zMIP , solution value of the orig-inal problem; GAP, optimality gap defined as (zMIP − ZLP)/ZLP (in %)and TLP , elapsed time (in seconds) to obtain the ZLP solution. We canobserve in the table the very big gap that the problem has when ZLPis taken as the lower bound of the optimal solution value. Usually itis an indication of the difficulty of the problem. In any case, we arenot basing our approach on this bound.

We will use the Log2 Scaled Performance Profile (LSPP) describedin [9], for comparing the various strategies presented in Section 5.

For each problem p ∈ {P1, P2, . . . , P16} and strategy s, we define:

Tp,s computing time required to solve problem p by strategy s.rp,s performance ratio, rp,s = Tp,s/mins {Tp,s}, and rp,s = rM iff strategy

s does not solve problem p, where rM is a big number, say 12.

Page 11: On BFC-MSMIP strategies for scenario cluster partitioning, and twin node family branching selection and bounding for multistage stochastic mixed integer programming

748 L.F. Escudero et al. / Computers & Operations Research 37 (2010) 738 -- 753

Table 1Testbed dimensions.

Instance DEM, compact representation Scenario model dimensions (q = r3)

m nx ny nel dens m nx ny nel dens

P1 330 75 225 13 200 13.3 88 20 60 3520 50.0P2 630 150 450 50 400 13.3 168 40 120 13 440 50.0P3 645 150 450 51 600 13.3 172 40 120 13 760 50.0P4 645 150 450 51 600 13.3 172 40 120 13 760 50.0P5 880 200 600 35 200 5.0 88 20 60 3520 50.0P6 920 200 600 36 800 5.0 92 20 60 3680 50.0P7 1230 300 900 196 800 13.3 328 80 240 52 480 50.0P8 1680 400 1200 134 400 5.0 168 40 120 13 440 50.0P9 1720 400 1200 137 600 5.0 172 40 120 13 760 50.0P10 3655 850 2550 292 400 2.4 172 40 120 13 760 50.0P11 8806 1554 4662 422 688 0.8 136 24 72 6528 50.0P12 10 619 2072 6216 679 616 0.8 164 32 96 10 496 50.0P13 11 200 2400 7200 537 600 0.5 112 24 72 5376 50.0P14 18 860 4100 12 300 754 400 0.2 92 20 60 3680 50.0P15 28 886 5555 16 665 1 155 440 0.2 104 20 60 4160 50.0P16 38 885 6666 19 998 1 866 480 0.2 140 24 72 6720 50.0

Table 2Scenario cluster model dimensions.

Instance q = r cluster model dimensions q = r2 cluster model dimensions

m nx ny nel dens m nx ny nel dens

P1 176 40 120 7040 25.0 110 25 75 4400 40.0P2 336 80 240 26 880 25.0 210 50 150 16 800 40.0P3 344 80 240 27 520 25.0 215 50 150 17 200 40.0P4 344 80 240 27 520 25.0 215 50 150 17 200 40.0P5 308 70 210 12 320 14.3 132 30 90 5280 33.3P6 322 70 210 12 880 14.3 138 30 90 5520 33.3P7 656 160 480 104 960 25.0 410 100 300 65 600 40.0P8 588 140 420 47 040 14.3 252 60 180 20 160 33.3P9 602 140 420 48 160 14.3 258 60 180 20 640 33.3P10 946 220 660 75 680 9.1 301 70 210 24 080 28.6P11 1496 264 792 71 808 4.5 306 54 162 14 688 22.2P12 1804 352 1056 115 456 4.5 369 72 216 23 616 22.2P13 1624 348 1044 77 952 3.4 280 60 180 13 440 20.0P14 2116 460 1380 84 640 2.2 276 60 180 11 040 16.7P15 2912 560 1680 116 480 1.8 338 65 195 13 520 15.4P16 3920 672 2016 188 160 1.8 455 78 234 21 840 15.4

Table 3Stochastic solution.

Instance Tree |�| |G| ZLP zMIP GAP TLP

P1 23 8 15 4116.3 408 827 9831.9 0.0P2 23 8 15 11 753.2 624 636 5214.6 0.0P3 23 8 15 11 994.4 664 294 5438.4 0.0P4 23 8 15 5262.5 356 204 6668.7 0.1P5 33 27 40 4952.5 436 517 8714.0 0.1P6 33 27 40 4577.7 335 477 7228.5 0.1P7 23 8 15 24 622.6 1 398 840 5581.1 0.1P8 33 27 40 10 811.9 617 938 5615.3 0.1P9 33 27 40 11 781.1 612 964 5102.9 0.1P10 43 64 85 13 089.5 810 074 6088.7 0.3P11 63 216 259 6126.2 604 693 9770.6 0.7P12 63 216 259 8758.5 763 052 8612.1 1.3P13 73 343 400 6245.6 544 014 8610.4 1.6P14 93 729 820 5263.66 473 741 8900.2 3.0P15 103 1000 1111 4973.9 468 610 9321.3 8.6P16 103 1000 1111 6117.4 654 229 10 594.5 10.5

�s(�) performance profile, �s(�)=P(rp,s � �)=Card{p : rp,s � �}/Card{p}.Function �s : R → [0, 1] for a strategy s is a nondecreasing,piecewise constant function, continuous from the right at eachbreakpoint. The value of �s(1) is the probability that the strategy

will win over the rest of the strategies. In particular, 1 − �s(�) isthe fraction of problems that the strategy s cannot solve withina factor � of the best solver, including problems for which thestrategy in question fails.

Page 12: On BFC-MSMIP strategies for scenario cluster partitioning, and twin node family branching selection and bounding for multistage stochastic mixed integer programming

L.F. Escudero et al. / Computers & Operations Research 37 (2010) 738 -- 753 749

0 2 4 6 8 10 120

0.10.20.30.40.50.60.70.80.9

1

τ

π s (τ

)

BFC1 (q = r)BFC1 (q = r2)BFC1 (q = r3)BFC2 (q = r)BFC2 (q = r2)BFC2 (q = r3)BFC3 (q = r)BFC3 (q = r2)BFC3 (q = r3)COIN

Log2 Scaled Performance Profile

BFC1 BFC2 BFC3 COINq = r q = r2 q = r3 q = r q = r2 q = r3 q = r q = r2 q = r3 q = 1

Efficiency 68.8 12.5 0.0 31.3 6.3 0.0 62.5 12.5 0.0 6.3Stability 87.5 56.3 56.3 93.8 81.3 43.8 87.5 75.0 56.3 56.3

Fig. 4. LSPP for BFC1, BFC2 and BFC3. Comparison in terms of CPU time.

0 5 10 150

0.10.20.30.40.50.60.70.80.9

1

τ

π s (τ

)

BFC1 (q = r)BFC1 (q = r2)BFC1 (q = r3)BFC2 (q = r)BFC2 (q = r2)BFC2 (q = r3)BFC3 (q = r)BFC3 (q = r2)BFC3 (q = r3)

Log2 Scaled Performance Profile

BFC1 BFC2 BFC3q = r q = r2 q = r3 q = r q = r2 q = r3 q = r q = r2 q = r3

Efficiency 75.0 6.3 0.0 25.0 6.3 0.0 87.5 6.3 0.0Stability 87.5 56.3 56.3 93.8 81.3 43.8 87.5 75.0 56.3

Fig. 5. LSPP for BFC1, BFC2 and BFC3. Comparison in terms of number of nodes.

�s(�) log2 scaled performance profile, �s(�) = P(log2(rp,s)� �) =Card{p : log2(rp,s)� �}/Card{p}.

In the figures related to LSPP, we can observe and compare theefficiency of the strategies (at � = 0), and also their stability (at � =rM). Based on Fig. 4 the most stable strategy is BFC2, q = r, andthe most efficient strategy is BFC1, q = r for the CPU time. Basedon Fig. 5 strategy BFC2, q = r continues being the most stable, andstrategy BFC3, q= r is the most efficient for the number of branchednodes. Based on Fig. 6 strategy BFC2, q = r is the most stable andefficient for the number of TNFs that are branched. In any case, theBFC strategies outperform the plain use of the optimization engine ofchoice.

In Appendix we exhibit in detail the number of TNFs, the numberof nodes and the CPU time (in seconds) of the BFC-MSMIP procedurefor all the instances. We would like to point out that the procedurealways finds the optimal solution.

8. Conclusions

Several TNF branching and bounding strategies and scenario clus-tering partitioning have been proposed for the multistage stochasticmixed integer programming BFC-MSMIP algorithm. The uncertaintyof the problem lies in the objective function, rhs and constraint ma-trix coefficients. These strategies have been tested in a bed of small,middle and large-scaled instances. Balancing the goodness of thesolution and the computing effort, the global strategy with betterresults is BFC2, q = r for stability and it is not clear for efficiency.In any case, all the strategies that have been proposed obtain theoptimal solution in most cases, and outperform a state-of-the-artoptimization engine. Some important topics remain for further in-vestigation, namely, the Benders Decomposition for solving the sub-models related to integer and fractional TNFs in the BFC-MSMIP al-gorithm, and the parallelization of the scenario-cluster related sub-models solving.

Page 13: On BFC-MSMIP strategies for scenario cluster partitioning, and twin node family branching selection and bounding for multistage stochastic mixed integer programming

750 L.F. Escudero et al. / Computers & Operations Research 37 (2010) 738 -- 753

Acknowledgments

This research has been partially supported by the grant Grupo deInvestigación IT-321-07 from the Basque Government, the projectECO2008-00777/ECON from the Spanish Ministry of Education andScience and the projects URJC-CM-2007-CET-1622 and URJC-CM-2008-CET-3703 from the Comunidad de Madrid, Spain.

Appendix

In this appendix we exhibit in detail the number of nodes andCPU time (in seconds) required by the BFC-MSMIP procedure for

0 5 10 150

0.10.20.30.40.50.60.70.80.9

1

τ

π s (τ

)

BFC1 (q = r)BFC1 (q = r2)BFC1 (q = r3)BFC2 (q = r)BFC2 (q = r2)BFC2 (q = r3)BFC3 (q = r)BFC3 (q = r2)BFC3 (q = r3)

Log2 Scaled Performance Profile

BFC1 BFC2 BFC3q = r q = r 2 q = r 3 q = r q = r 2 q = r 3 q = r q = r 2 q = r 3

Efficiency 68.8 18.8 0.0 87.5 31.3 0.0 75.0 31.3 0.0Stability 87.5 56.3 56.3 93.8 81.3 43.8 87.5 75.0 56.3

Fig. 6. LSPP for BFC1, BFC2 and BFC3. Comparison in terms of number of TNFs.

Table 4Zt0,MIP at the root node.

Instance q = r q = r2 q = r3

Z10,MIP T1

0 Z20,MIP T2

0 Z30,MIP T3

0

P1 193 992 0.3 128 314.0 0.2 61 402.4 0.1P2 342 929 52.0 235 157.0 3.3 108 936.0 0.3P3 393 929 137.8 284 544.0 11.2 127 165.0 0.3P4 144 909 2.9 94 607.4 1.2 55 667.0 0.3P5 227 414 5.7 149 291.0 1.4 75 761.4 0.6P6 212 207 6.8 145 614.0 1.4 71 175.6 0.6P7 797 265 1390.4 524 604.0 47.4 237 208.0 0.9P8 413 371 2518.5 303 600.0 214.9 148 690.0 1.9P9 422 423 7204.6 289 262.0 254.8 144 316.0 2.0P10 – – 351 949.0 5127.9 176 960.0 10.1P11 375 685 19 316.8 241 122.0 11 237.0 120 270.0 70.0P12 – – – – 160 942.0 117.3P13 367 678 9756.5 250 224.0 470.6 126 100.0 142.1P14 333 660 3434.0 215 122.0 1014.7 108 394.0 473.4P15 – – – – 109 668.0 1114.3P16 – – 227 338.0 18 373.9 137 822.0 1952.6

the instances presented in Section 7. The results are organized insix tables: Tables 4, 5 and 6 correspond to the submodels solvedat root node for Zt0,MIP (see Definition 6), Zt0,0 (see Definition 7.1)and Zt0,t (see Definition 7.2), respectively, for t=1, 2, 3. The headingsare as follows: Zt0,∗ is the lower bound of the solution value of theoriginal problem at root node 0, and Tt0 is the related elapsed time(in seconds). Tables 7, 8 and 9 corresponds to the cluster analysis forBFC1, BFC2 and BFC3, respectively. The headings are as follows: nn,number of BF branching nodes; nTNF , number of MIPTNF models thatare solved; TBFC and TCOIN , the elapsed time (in seconds) to obtain theoptimal solution by using the BFC-MSMIP procedure and the plainuse of the optimization engine for solving the DEM, respectively; −,results are not available due to running out of memory or exceedingthe time limit (6h).

Page 14: On BFC-MSMIP strategies for scenario cluster partitioning, and twin node family branching selection and bounding for multistage stochastic mixed integer programming

L.F. Escudero et al. / Computers & Operations Research 37 (2010) 738 -- 753 751

Table 5Zt0,0 at the root node.

Instance q = r q = r2 q = r3

Z10,0 T1

0 Z20,0 T2

0 Z30,0 T3

0

P1 408 827 0.2 408 827 0.2 391 794 0.3P2 621 378 7.5 598 676 4.4 542 389 10.1P3 660 438 4.9 646 836 2.4 609 057 5.1P4 350 771 1.1 332 891 0.8 318 103 1.2P5 436 517 0.7 429 853 0.6 411 849 1.2P6 335 477 1.1 333 964 0.8 312 269 1.9P7 1 367 450 474.0 1 360 463 151.3 1 283 200 543.7P8 598 318 27.5 542 802 11.2 476 727 42.4P9 607 779 39.7 552 141 9.4 489 479 32.4P10 768 733 100.3 686 894 31.0 565 947 139.0P11 488 637 58.0 431 403 18.1 364 686 51.6P12 615 089 225.6 535 718 51.3 443 286 193.8P13 450 014 65.3 378 396 24.2 324 966 67.7P14 404 240 136.1 327 922 42.1 267 389 135.9P15 385 627 458.8 317 157 50.7 241 328 178.8P16 540 888 392.6 458 866 78.5 390 626 260.0

Table 6Zt0,t at the root node.

Instance q = r q = r2 q = r3

Z10,1 T1

0 Z20,2 T2

0 Z30,3 T3

0

P1 193 992 0.2 114 160.0 0.1 41 222.6 0.2P2 337 181 1.6 207 525.0 0.4 62 310.7 0.4P3 367 440 2.1 245 933.0 0.4 100 768.0 0.4P4 122 799 0.6 63 823.9 0.3 22 173.7 0.4P5 212 609 0.7 134 349.0 0.4 45 587.1 0.6P6 179 640 0.7 119 965.0 0.4 34 744.5 0.6P7 720 153 14.6 451 851.0 1.3 149 026.0 0.9P8 361 195 5.6 235 104.0 1.2 71 764.2 1.3P9 371 849 10.3 227 205.0 1.2 68 331.3 1.4P10 455 485 32.2 274 271.0 2.7 82 471.2 3.7P11 306 220 23.6 173 241.0 5.7 43 828.9 11.5P12 415 186 67.7 237 108.0 9.8 64 032.3 16.4P13 311 247 33.2 190 969.0 9.7 48 620.7 19.2P14 278 271 53.2 152 851.0 15.8 38 561.1 45.1P15 255 675 276.2 144 726.0 34.1 33 686.9 90.8P16 338 152 216.3 190 049.0 43.2 46 922.0 141.4

Table 7Cluster analysis for BFC1.

Instance q = r q = r2 q = r3 TCOIN

nn nTNF TBFC nn nTNF TBFC nn nTNF TBFC

P1 1 0 0.2 1 0 0.2 38 3 1.7 0.3P2 11 0 32.8 1431 594 416.2 23 402 151 1310.7 268.3P3 9 0 15.9 333 134 106.7 2621 234 315.9 279.3P4 132 62 53.6 153 41 32.8 745 15 31.9 4.8P5 1 0 0.7 10 0 1.3 851 13 63.7 5.9P6 1 0 1.1 114 49 63.7 1269 36 117.5 7.6P7 782 371 3722.0 5237 2078 5314.5 100 938 182 13 646.3 –P8 27 0 194.8 5962 2606 10 459.7 69 531 902 10 222.5 7034.1P9 423 210 1204.5 – – – – – – –P10 12 0 482.9 – – – – – – –P11 – – – – – – – – – –P12 15 0 1043.2 – – – – – – –P13 12 0 271.4 – – – – – – 13 910.1P14 – – – – – – 3337 9 12 401.3 3790.0P15 8 0 1942.5 – – – – – – –P16 10 0 1327.6 133 0 443.6 – – – –

Page 15: On BFC-MSMIP strategies for scenario cluster partitioning, and twin node family branching selection and bounding for multistage stochastic mixed integer programming

752 L.F. Escudero et al. / Computers & Operations Research 37 (2010) 738 -- 753

Table 8Cluster analysis for BFC2.

Instance q = r q = r2 q = r3 TCOIN

nn nTNF TBFC nn nTNF TBFC nn nTNF TBFC

P1 1 0 0.2 1 0 0.2 84 2 3.1 0.3P2 69 0 67.2 1185 21 183.7 186 295 151 8935.2 268.3P3 29 0 36.1 609 8 136.5 54 505 71 2642.0 279.3P4 33 2 19.9 155 1 16.7 1607 15 79.6 4.8P5 1 0 0.7 75 0 7.0 2023 13 113.7 5.9P6 1 0 1.1 71 2 12.6 2277 30 138.5 7.6P7 257 8 7413.6 18 947 31 5744.1 – – – –P8 107 0 372.1 1937 26 6360.1 – – – 7034.1P9 – – – 5051 52 18 022.8 – – – –P10 35 0 569.5 – – – – – – –P11 23 1 13 230.5 201 2 19 849.0 –P12 21 0 926.8 – – – – – – –P13 15 0 313.2 1235 26 12 585.5 – – – 13 910.1P14 17 1 1680.8 335 4 4515.7 5174 9 8351.2 3790.0P15 11 0 2119.8 – – – – – – –P16 13 0 1581.6 211 0 581.7 – – – –

Table 9Cluster analysis for BFC3.

Instance q = r q = r2 q = r3 TCOINnn nTNF TBFC nn nTNF TBFC nn nTNF TBFC

P1 1 0 0.2 1 0 0.2 38 3 1.7 0.3P2 11 0 32.8 347 50 330.0 23 402 151 1310.7 268.3P3 9 0 15.9 93 14 255.1 2621 234 315.9 279.3P4 12 2 14.1 73 1 6.5 745 15 31.9 4.8P5 1 0 0.7 10 0 1.3 851 13 63.7 5.9P6 1 0 1.1 24 4 14.8 1269 36 117.5 7.6P7 68 14 10 945.5 1279 99 5412.9 100 938 182 13 646.3 –P8 27 0 194.8 822 26 12 051.4 69 531 902 10 222.5 7034.1P9 – – – 2223 52 17 339.0 – – – –P10 12 0 482.9 – – – – – – –P11 – – – – – – – – – –P12 15 0 1043.2 – – – – – – –P13 12 0 271.4 776 26 12 433.3 – – – 13 910.1P14 13 1 1582.9 225 4 8541.0 3337 9 12 401.3 3790.0P15 8 0 1942.5 – – – – – – –P16 10 0 1327.6 133 0 443.6 – – – –

References

[1] Alonso-Ayuso A, Escudero LF, Garín A, Ortuño MT, Pérez G. An approach forstrategic supply chain planning based on stochastic 0–1 programming. Journalof Global Optimization 2003;26:97–124.

[2] Alonso-Ayuso A, Escudero LF, Guignard M, Quinteros M, Weintraub A.Forestry management under uncertainty. Annals of Operations Research 2009,doi:10.1007/s10479-009-0561-0.

[3] Alonso-Ayuso A, Escudero LF, Ortuño MT. A stochastic 0–1 program basedapproach for air traffic management. European Journal of Operational Research2000;120:47–62.

[4] Alonso-Ayuso A, Escudero LF, Ortuño MT. BFC, a Branch-and-Fix Coordinationalgorithmic framework for solving some types of stochastic pure and mixed0–1 programs. European Journal of Operational Research 2003;151:503–19.

[5] Alonso-Ayuso A, Escudero LF, Ortuño MT, Pizarro C. On a stochastic sequencingand scheduling problem. Computers & Operations Research 2007;34:2604–24.

[6] Birge J, Louveaux F. Introduction to stochastic programming. Berlin: Springer;1997.

[7] Cristóbal MP, Escudero LF, Monge J. On stochastic dynamic programmingfor solving large-scale planning problems under uncertainty. Computers &Operations Research 2009;36:2418–28.

[8] Dert C. A dynamic model for asset liability management for defined benefitpension funds. In: Ziemba W, Mulvey J, editors. Worldwide asset and liabilitymodeling. Cambridge: Cambridge University Press; 1998. p. 501–36.

[9] Dolan E, Moré J. Benchmarking optimization software with performanceprofiles. Mathematical Programming Series A 2002;91:201–13.

[10] Escudero LF. On a mixture of fix-and-relax coordination and Lagrangiansubstitution schemes for multistage stochastic mixed integer programming.TOP 2009;17(1):5–29.

[11] Escudero LF, Garín A, Merino M, Pérez G. A two-stage stochastic integerprogramming approach as a mixture of branch-and-fix coordination andbenders decomposition schemes. Annals of Operations Research 2007;152:395–420.

[12] Escudero LF, Garín A, Merino M, Pérez G. A general algorithm for solvingtwo-stage stochastic mixed 0–1 first-stage problems. Computers & OperationsResearch 2009;36:2590–2600.

[13] Escudero LF, Garín A, Merino M, Pérez G. BFC-MSMIP: an exact branch-and-fixcoordination approach for solving multistage stochastic mixed 0–1 problems.TOP 2009;17(1):96–122.

[14] Escudero LF, Garín A, Merino M, Pérez G. On multistage stochastic integerprogramming model and algorithm for incorporating logical constraintsin assets and liabilities management under uncertainty. ComputationalManagement Science 2009, doi:10.1007/s10287-006-0035-7.

[15] Higle J, Sen S. Stochastic decomposition. Dordrecht: Kluwer AcademicPublishers; 1996.

[16] Kall P, Wallace S. Stochastic programming. New York: Wiley; 1994.[17] Lulli G, Sen S. A heuristic procedure for stochastic integer programming with

complete recourse. Management Science 2006;171:879–90.[18] Ntaimo L, Sen S. The million variable “march” for stochastic combinatorial

optimization. Journal of Global Optimization 2005;32:385–400.[19] Ogryczak W, Ruszczynski A. From stochastic dominance to mean-risk models:

semi-deviations as risk measures. European Journal of Operational Research1999;116:33–50.

[20] Prekopa A. Stochastic programming. Dordrecht: Kluwer Academic Publishers;1995.

[21] Rockafellar R, Uryasev S. Optimization of conditional value-at-risk. Journal ofRisk 2000;2:21–41.

[22] Rockafellar R, Wets RJB. Scenario and policy aggregation in optimisation underuncertainty. Mathematics of Operations Research 1991;16:119–47.

[23] Schultz R, Tiedemann S. Risk aversion via excess probabilities in stochasticprograms with mixed-integer recourse. SIAM Journal on Optimization2003;14:115–38.

[24] Schultz R, Tiedemann S. Conditional value-at-risk in stochastic programs withmixed integer recourse. Mathematical Programming Series B 2006;105:365–86.

[25] Uryasev S, Pardalos P, editors. Stochastic optimization: algorithms andapplications. Dordrecht: Kluwer Academic Publishers; 2001.

Page 16: On BFC-MSMIP strategies for scenario cluster partitioning, and twin node family branching selection and bounding for multistage stochastic mixed integer programming

L.F. Escudero et al. / Computers & Operations Research 37 (2010) 738 -- 753 753

[26] Valente P. Software tools for the investigation of stochastic programmingproblems. PhD thesis, Department of Mathematics and Computation, BrunelUniversity, UK; 2002.

[27] Wallace S, Ziemba W, editors. Applications of stochastic programming. MPS-SIAM-Series in optimization, 2005.

[28] Wets R. Programming under uncertainty: the equivalent convex program. SIAMJournal on Applied Mathematics 1966;14:89–105.

[29] Wolsey LA. Integer programming. New York: Wiley-Interscience; 1998.[30] Ziemba W, Mulvey J, editors. Worldwide asset and liability modeling.

Cambridge: Cambridge University Press; 1998.