reformulation and sampling to solve a stochastic network interdiction problem

13
Reformulation and Sampling to Solve a Stochastic Network Interdiction Problem Udom Janjarassuk and Jeff Linderoth Department of Industrial and Systems Engineering, Lehigh University, 200 W. Packer Avenue, Bethlehem, Pennsylvania 18015 The network interdiction problem involves interrupting an adversary’s ability to maximize flow through a capac- itated network by destroying portions of the network. A budget constraint limits the amount of the network that can be destroyed. In this article, we study a stochas- tic version of the network interdiction problem in which the successful destruction of an arc of the network is a Bernoulli random variable, and the objective is to minimize the maximum expected flow of the adversary. Using duality and linearization techniques, an equivalent deterministic mixed integer program is formulated. The structure of the reformulation allows for the application of decomposition techniques for its solution. Using a paral- lel algorithm designed to run on a distributed computing platform known as a computational grid, we give compu- tational results showing the efficacy of a sampling-based approach to solve the problem. © 2008 Wiley Periodicals, Inc. NETWORKS, Vol. 52(3), 120–132 2008 Keywords: interdiction; stochastic programming; sample aver- age approximation; L-shaped method 1. INTRODUCTION The network interdiction problem can be thought of as a game played on a network consisting of two players, a leader and a follower. The leader has a fixed budget that can be used to deteriorate or destroy portions of the network, an action called an interdiction. Examples of interdictions include removing arcs from the network and reducing the capacity of arcs in the network. After the leader has per- formed an interdiction, the follower solves an optimization problem on the modified network. The follower may try to find a shortest path, as in the works of Fulkerson and Hard- ing [9] and Golden [10], or the follower may maximize flow Received January 2006; accepted February 2007 Correspondence to: J. Linderoth; e-mail: [email protected] Contract grant sponsor: US National Science Foundation (NSF); Contract grant numbers: OCI-0330607, CMMI-0522796, DGE-9972780 Contract grant sponsor: US Department of Energy; Contract grant number: DE-FG02-05ER25694 Contract grant sponsor: Thai Government DOI 10.1002/net.20237 Published online 25 February 2008 in Wiley InterScience (www. interscience.wiley.com). © 2008 Wiley Periodicals, Inc. through the network, which is the case studied in this work. The leader’s objective is to thwart the follower; to maximize the follower’s shortest path or minimize the follower’s max- imum flow. Network interdiction is an instance of a static Stackelberg game [29], and the problem has been studied for military application by Wollmer [34] and McMasters and Mustin [24], intercepting illicit materials by Washburn and Wood [32] and Pan, Charlton, and Morton [26], and in designing robust telecommunication networks by Grötschel, Monma, and Stoer [12]. Stochastic Network Interdiction occurs when one or more of the components of the network interdiction problem are not known with certainty. Cormican, Morton, and Wood [5] pro- vide a nice introduction to many variations of stochastic net- work interdiction, including problems in which the interdic- tion attempts may succeed or fail, the arc capacities or topol- ogy of the network are uncertain, and in which multiple inter- diction attempts may take place. To obtain solutions to the problem, Cormican, Morton, and Wood develop a sequential approximation technique. Also in their study, they state that “A large-scale deterministic equivalent binary integer program may be formed by (a) reformulating the prob- lem as a simple minimization problem involving binary interdiction variables and binary second-stage vari- ables ... and (b) enumerating all possible realizations of the [uncertainty]... Unfortunately, solving such mod- els would be computationally impractical for all but the smallest problems.” We intend to test the validity of these statements. Stochas- tic programs with integer recourse (second-stage) variables are nearly intractable, but we will show that there is no need to introduce binary variables in the second stage in such a refor- mulation. Second, recent theoretical and empirical evidence has suggested that a sample average or sample-path approach can be an effective technique for solving two-stage stochas- tic problems with a discrete structure [15, 18, 28]. We will use a sample average approach applied to our formulation, solve the resulting instances, and statistically test bounds on the optimal solution value using a distributed computational platform known as a computational grid. Our approach to solve the problem is akin to that proposed by Cormican in his master’s thesis [4], where NETWORKS—2008—DOI 10.1002/net

Upload: udom-janjarassuk

Post on 15-Jun-2016

225 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Reformulation and sampling to solve a stochastic network interdiction problem

Reformulation and Sampling to Solve a StochasticNetwork Interdiction Problem

Udom Janjarassuk and Jeff LinderothDepartment of Industrial and Systems Engineering, Lehigh University, 200 W. Packer Avenue,Bethlehem, Pennsylvania 18015

The network interdiction problem involves interruptingan adversary’s ability to maximize flow through a capac-itated network by destroying portions of the network. Abudget constraint limits the amount of the network thatcan be destroyed. In this article, we study a stochas-tic version of the network interdiction problem in whichthe successful destruction of an arc of the network isa Bernoulli random variable, and the objective is tominimize the maximum expected flow of the adversary.Using duality and linearization techniques, an equivalentdeterministic mixed integer program is formulated. Thestructure of the reformulation allows for the application ofdecomposition techniques for its solution. Using a paral-lel algorithm designed to run on a distributed computingplatform known as a computational grid, we give compu-tational results showing the efficacy of a sampling-basedapproach to solve the problem. © 2008 Wiley Periodicals, Inc.NETWORKS, Vol. 52(3), 120–132 2008

Keywords: interdiction; stochastic programming; sample aver-age approximation; L-shaped method

1. INTRODUCTION

The network interdiction problem can be thought of asa game played on a network consisting of two players, aleader and a follower. The leader has a fixed budget that canbe used to deteriorate or destroy portions of the network,an action called an interdiction. Examples of interdictionsinclude removing arcs from the network and reducing thecapacity of arcs in the network. After the leader has per-formed an interdiction, the follower solves an optimizationproblem on the modified network. The follower may try tofind a shortest path, as in the works of Fulkerson and Hard-ing [9] and Golden [10], or the follower may maximize flow

Received January 2006; accepted February 2007Correspondence to: J. Linderoth; e-mail: [email protected] grant sponsor: US National Science Foundation (NSF); Contractgrant numbers: OCI-0330607, CMMI-0522796, DGE-9972780Contract grant sponsor: US Department of Energy; Contract grant number:DE-FG02-05ER25694Contract grant sponsor: Thai GovernmentDOI 10.1002/net.20237Published online 25 February 2008 in Wiley InterScience (www.interscience.wiley.com).© 2008 Wiley Periodicals, Inc.

through the network, which is the case studied in this work.The leader’s objective is to thwart the follower; to maximizethe follower’s shortest path or minimize the follower’s max-imum flow. Network interdiction is an instance of a staticStackelberg game [29], and the problem has been studiedfor military application by Wollmer [34] and McMastersand Mustin [24], intercepting illicit materials by Washburnand Wood [32] and Pan, Charlton, and Morton [26], and indesigning robust telecommunication networks by Grötschel,Monma, and Stoer [12].

Stochastic Network Interdiction occurs when one or moreof the components of the network interdiction problem are notknown with certainty. Cormican, Morton, and Wood [5] pro-vide a nice introduction to many variations of stochastic net-work interdiction, including problems in which the interdic-tion attempts may succeed or fail, the arc capacities or topol-ogy of the network are uncertain, and in which multiple inter-diction attempts may take place. To obtain solutions to theproblem, Cormican, Morton, and Wood develop a sequentialapproximation technique. Also in their study, they state that

“A large-scale deterministic equivalent binary integerprogram may be formed by (a) reformulating the prob-lem as a simple minimization problem involving binaryinterdiction variables and binary second-stage vari-ables . . . and (b) enumerating all possible realizationsof the [uncertainty]. . . Unfortunately, solving such mod-els would be computationally impractical for all but thesmallest problems.”

We intend to test the validity of these statements. Stochas-tic programs with integer recourse (second-stage) variablesare nearly intractable, but we will show that there is no need tointroduce binary variables in the second stage in such a refor-mulation. Second, recent theoretical and empirical evidencehas suggested that a sample average or sample-path approachcan be an effective technique for solving two-stage stochas-tic problems with a discrete structure [15, 18, 28]. We willuse a sample average approach applied to our formulation,solve the resulting instances, and statistically test bounds onthe optimal solution value using a distributed computationalplatform known as a computational grid.

Our approach to solve the problem is akin to thatproposed by Cormican in his master’s thesis [4], where

NETWORKS—2008—DOI 10.1002/net

Page 2: Reformulation and sampling to solve a stochastic network interdiction problem

he proposes using Benders’ decomposition to solve adeterministic version of the problem. Held, Hemmecke, andWoodruff [13] also suggest using a decomposition algorithmto maximize the probability of sufficient disruption of theadversary’s flow. The duality-based approach we take in thiswork is also similar to that appearing in the work of Israeli andWood [14], who solve the maximize-shortest-path version ofthe network interdiction problem.

A main contribution of this work is to show there is aformulation of the stochastic network interdiction problemas a mixed integer linear program. The formulation, arrivedat via duality and linearization techniques, is amenable to adecomposition-based solution approach. The algorithm weuse to solve the problem has been implemented to run on anovel distributed computational platform known as a com-putational grid. Using our distributed algorithm on the newformulation allows us to get accurate solutions to instances insignificantly less time than previously reported. Further, bycombining our approach with simple heuristic ideas, we areable to get accurate solutions to instances orders of magnitudelarger than have previously appeared in the open literature.We hope that this work will inspire other authors to considersimilar duality-based reformulation techniques for interdic-tion problems and to realize the utility of the computationalgrid for stochastic programs.

The remainder of the article is divided into three sections.In Section 2, we present a mixed integer linear programfor the deterministic equivalent of the stochastic networkinterdiction problem. Section 3 contains a review of sam-ple average approximation and describes a decomposition-based algorithm for solving sampled versions of the model.Computational results are presented in Section 4.

2. FORMULATION

The stochastic network interdiction problem (SNIP) isdefined on a capacitated directed network G = (V , A), withspecified source node r ∈ V and sink node t ∈ V . The capac-ity of arc (i, j) ∈ A is uij. The realizations of uncertainty arecaptured in a countable set of scenarios S, in which each ele-ment s ∈ S occurs with probability ps. There is a finite budgetK available for interdiction, and the cost of interdicting onany arc (i, j) ∈ A is hij. To write a mathematical program forSNIP, we define the binary decision variables

xij ={

1 if interdiction occurs on arc (i, j) ∈ A,0 otherwise.

With these definitions, SNIP can be written as the formula-tion F1:

(F1) zSNIP = min∑s∈S

ps fs(x)

subject to∑

(i,j)∈A

hijxij ≤ K ,

xij ∈ {0, 1} ∀(i, j) ∈ A,

where fs(x) is the maximum flow from node r to node t inscenario s if interdictions occur on the arcs indicated by the{0, 1}-vector x. The maximum flow value fs(x) is the solutionof a different optimization problem, which can be stated withthe help of the following definitions:

• A′ = A ∪ {(t, r)},

• ξijs =

1 if interdiction on arc (i, j) ∈ A in scenarios ∈ S would be successful,

0 otherwise,• yij: flow on arc (i, j).

We focus for the time-being on the case in which interdic-tion success is a Bernoulli random variable (ξ), postponingextensions and additional formulations to later in the section.The maximum flow from node r to node t in scenario s withinterdictions on arcs indicated by x can be expressed as thesolution to the optimization problem PMFs(x):

PMFs(x) fs(x) = max ytr

subject to yij ≤ uij(1 − ξijsxij) ∀(i, j) ∈ A, (1)

ytr +∑

j∈V |(j,r)∈A

yjr −∑

j∈V |(r,j)∈A

yrj = 0, (2)

− ytr +∑

j∈V |(j,t)∈A

yjt −∑

j∈V |(t,j)∈A

ytj = 0, (3)

∑j∈V |(j,i)∈A

yji −∑

j∈V |(i,j)∈A

yij = 0 ∀i ∈ V \ {r ∪ t}, (4)

yij ≥ 0 ∀(i, j) ∈ A′.

Constraints (1) force the flow on arc (i, j) to be zero if it waschosen for interdiction and if the interdiction was successful.Constraints (2)—(4) are simply the flow balance constraintsof the max flow problem.

Note that y = 0 is a feasible solution to the linear programPMFs(x) for any interdiction choice x and scenario s. We fur-ther assume the primal problem PMFs(x) has a finite optimalobjective value for every interdiction x and scenario s, a suf-ficient condition for this being that there exists some finitecapacity cut in the network G. Then by the strong dualitytheorem of linear programming, the value of the maximumflow fs(x) is also equal to the value obtained by solving thedual of PMFs(x), which we denote as DMFs(x):

DMFs(x) fs(x) = min∑

(i,j)∈A

uij(1 − ξijsxij)ρij

subject to πr − πt ≥ 1,

ρij − πi + πj ≥ 0 ∀(i, j) ∈ A, (5)

ρij ≥ 0 ∀(i, j) ∈ A.

With this insight, the original “min/max” formulation F1

becomes a “min/min” formulation. To write this formulation,which we call F2, we define vectors of dual variables ρs, πs

for each scenario and write constraints enforcing the dual

NETWORKS—2008—DOI 10.1002/net 121

Page 3: Reformulation and sampling to solve a stochastic network interdiction problem

feasibility conditions for each scenario.

(F2) zSNIP = min∑s∈S

ps

(i,j)∈A

uij(1 − ξijsxij)ρijs

subject to∑

(i,j)∈A

hijxij ≤ K , (6)

πrs − πts ≥ 1 ∀s ∈ S, (7)

ρijs − πis + πjs ≥ 0 ∀(i, j) ∈ A, ∀s ∈ S, (8)

xij ∈ {0, 1} ∀(i, j) ∈ A,

ρijs ≥ 0 ∀(i, j) ∈ A, ∀s ∈ S.

Inequality (6) is the budget constraint, and constraints (7) and(8) are the dual feasibility constraints on the flow.

The objective function in F2 contains nonlinear terms ofthe form xijρijs. Because xij may take only the value 0 or 1 in afeasible solution, the terms can be linearized by introducinga variable zijs and enforcing the relationship zijs = xijρijs

through the equivalence

xij ∈ {0, 1}, zijs = xijρijs ⇔ zijs ≤ Mxij, zijs ≤ ρijs, zijs

≥ ρijs + M(xij − 1), zijs ≥ 0, (9)

where M is an upper bound on ρijs in an optimal solutionto SNIP. A derivation of this linearization is given in thetextbook of Williams [33]. Typically, “big Ms” are to beavoided in formulations, however, because the variables ρijs

are simply the dual variables on arcs in a maximum flowproblem, a well-known upper bound on these variables isρijs ≤ 1∀(i, j) ∈ A, ∀s ∈ S. Further, because the term xijρijs

appears solely in the objective function, and its coefficient(−uijξijs) is always nonpositive, we only require the con-straints in (9) that limit the largest value that zijs can take,namely zijs ≤ xij and zijs ≤ ρijs.

Introducing this linearization to the formulation F2 givesa mixed integer linear programming formulation of SNIP,which we label F3.

(F3) zSNIP = min∑s∈S

ps

(i,j)∈A

uijρijs −∑

(i,j)∈A

uijξijszijs

subject to zijs − xij ≤ 0 ∀(i, j) ∈ A, ∀s ∈ S,

zijs − ρijs ≤ 0 ∀(i, j) ∈ A, ∀s ∈ S,∑(i,j)∈A

hijxij ≤ K ,

πrs − πts ≥ 1 ∀s ∈ S,

ρijs − πis + πjs ≥ 0 ∀(i, j) ∈ A, ∀s ∈ S,

xij ∈ {0, 1} ∀(i, j) ∈ A,

zijs, ρijs ≥ 0 ∀(i, j) ∈ A, ∀s ∈ S.

Formulation F3 is a mixed integer linear program whosesolution gives an optimal solution to the stochastic network

interdiction problem. A desirable feature of this formulationis that if x is fixed, then the formulation decouples into |S|independent linear programs. The decomposable structure ofthe formulation is exploited by the solution algorithm givenin Section 3.2.

Cormican, Morton, and Wood [5] introduce several vari-ants of the SNIP. The variant we have modeled, with uncer-tain, binary interdiction success, is called SNIP(IB) in Ref.[5]. The formulation F3 can easily be extended to model allthe other SNIP variants introduced by Cormican, Morton,and Wood. To model the variants where both interdictionsand arc capacities are random (what Cormican, Morton, andWood call SNIP(CB), SNIP(CD), and SNIP(ICB)), we canreplace the arc capacity uij in F3 with a random variable uijs,which represents the (random) capacity of arc (i, j) ∈ A inscenario s ∈ S. The remaining portions of the formulationremain unchanged.

When the probabilities of interdiction success are low,it may be useful to consider allowing multiple interdictionsper arc. This problem is called SNIP(IM) in Ref. [5]. If thenumber of attempts on an arc is limited to two, and the suc-cess or failure of the first attempt and the second attempt isindependent, we can modify F3 by adding binary decisionvariables for the second interdiction attempt and parame-ters (random variables) for the second interdiction success.With these definitions, the extension is straightforward. How-ever, the resulting formulation contains many more nonlinearterms that must be linearized with the equivalence (9), lead-ing to a formulation with significantly more binary variablesfor SNIP(IM).

3. SOLUTION APPROACH

This section contains a description of our approach tosolve the large-scale MIP formulation (F3) of the SNIP.The approach is based on a combination of sampling,decomposition, and parallel computing.

3.1. Sample Average Approximation

If there are R arcs on which the leader can interdict, andthe probability that an interdiction is successful on one arcis independent of its success on other arcs, then there are2R = |S| realizations of the uncertainty. This exponentialgrowth in the number of scenarios precludes using the for-mulation F3 for all but the smallest instances. However, therehas been a wealth of recent theoretical and empirical researchshowing that a sample average approach can often accuratelysolve stochastic programs, even in the case that the numberof scenarios is prohibitively large [8, 15, 18, 28, 31].

In the sample average approach to solve SNIP, instead ofminimizing the true expected maximum flow

F(x)def=

∑s∈S

ps fs(x),

122 NETWORKS—2008—DOI 10.1002/net

Page 4: Reformulation and sampling to solve a stochastic network interdiction problem

we instead minimize a sample average approximation FT(x)to this function,

FT(x)def=

∑s∈T

|T |−1fs(x).

Here, the set T ⊂ S is drawn from the same probabilitydistribution that defines the original set of scenarios S sothat FT(x) is an unbiased estimator for F(x) for all x, i.e.EFT(x) = F(x)∀x. In the sample average approach to solveSNIP, if

X = {x ∈ {0, 1}|A||∑

(i,j)∈A

hijxij ≤ K} (10)

is the set of feasible interdictions, then instead of solving theproblem

zSNIPdef= min

x∈XF(x),

the approximating problem

vTdef= min

x∈XFT(x) (11)

is solved. The value vT will approach zSNIP as the numberof scenarios considered in the sample average problem (|T |)approaches |S| [6]. However, the solution to vT is biased inthe sense that EvT ≤ zSNIP [22, 25].

The value vT is a random variable, as it depends on therandom sample T . However, a confidence interval on vT, alower bound on zSNIP, can be approximated in the followingmanner. First, independent samples T1, T2, . . . , TM, each withthe same cardinality (Tj = N) are drawn. Next, the associatedsample average approximating problems (11) are solved foreach sample. The random variables vT1 , vT2 , . . . vTM are allindependent and identically distributed, and their mean (L)

and standard error (sL) are computed as

L = 1

M

M∑j=1

vTj , and

sL = 1

M − 1

M∑j=1

(vTj − L)2

1/2

.

An approximate 100(1 − α)% confidence interval for thevalue of vT is computed as

[L − κsL√

M, L + κsL√

M

], (12)

where we use κ = tα/2,M−1 as the 100(1 − α/2) per-centile of the Student’s t-distribution with M − 1 degreesof freedom. The confidence interval is approximate, as thepopulation from which we are drawing the random sam-ple vT1 , vT2 , . . . vTM may not be normally distributed. Mak,Morton, and Wood were the first to suggest such a construc-tion [22].

For each solution to the sample average approximation(11) with a sample of size |Tj| = N ,

x∗j ∈ arg min

x∈XFTj (x),

the value F(x∗j ) is the actual expected maximum flow if the

interdictions are specified from the solution to an approxi-mating instance (11) of size N . This quantity AN is a randomvariable (as it depends on the random sample Tj of size N),and it is undoubtedly larger than the minimum expected maxflow, i.e. AN ≥ zSNIP. Further, F(x∗

j ) is an unbiased estimatorof AN , and the random values F(x∗

1), F(x∗2), . . . , F(x∗

M) areindependent and identically distributed, so we can use thesevalues to obtain a confidence interval for the value AN , anupper bound on zSNIP, in the following manner. First, take asample Uj ⊂ S and compute

wUj

(x∗

j

) def=∑s∈Uj

|Uj|−1fs(x∗

j

). (13)

Again, the sample Uj ⊂ S must be drawn from the sameprobability distribution that defines S so that wUj (x

∗j ) is an

unbiased estimator of F(x∗j ) and AN . With the definitions

U = 1

M

M∑j=1

wUj

(x∗

j

), and

sU = 1

M − 1

M∑j=1

(wUj

(x∗

j

) − U)2

1/2

,

an approximate 100(1−α)% confidence interval for the valueof AN is [

U − κsU√M

, U + κsU√M

], (14)

where again we useκ = tα/2,M−1 as in (12). Freimer, Thomas,and Linderoth [8] give a similar construction for a statisti-cal upper bound on a sampled approximation to a stochasticprogram.

In order for the confidence interval formulae (12) and (14)to be valid, the elements within the samples Tj and Uj neednot be independent, only distributed like S. Thus, variancereduction techniques such as Latin Hypercube sampling orAntithetic variates can be used to construct the samples. InSection 4.5 we give an example of the variance and biasreduction that may be achieved by using a more sophisticatedsampling procedure.

3.2. Decomposition Algorithm

3.2.1. Justification. Initial attempts at solving sampledversions of F3 relied on solving the instance directly witha commercial MIP solver. Details of the test instances aregiven subsequently in Section 4. For the three smallest ofthe test instances, 10 different sampled approximations werebuilt for different sample sizes N and solved with CPLEXv9.1. Table 1 shows the average solution times, the aver-

NETWORKS—2008—DOI 10.1002/net 123

Page 5: Reformulation and sampling to solve a stochastic network interdiction problem

TABLE 1. CPLEX solution times.

Sample Average CPU Average number Integer solutionInstance size time (S) of nodes at root node (%)

SNIP4×4 50 0.58 1.0 100100 2.22 1.0 100200 25.40 1.0 100500 87.68 1.0 100

SNIP4×9 50 8.86 1.2 90100 37.52 1.0 100200 196.45 2.0 60500 1289.22 2.2 40

SNIP7×5 50 10.58 1.2 90100 46.90 1.3 90200 171.97 1.3 90500 1387.63 1.0 100

age number of nodes of the branch and bound tree, and thepercentage of instances whose initial linear programmingrelaxation yielded an integer solution.

The results of this initial experiment are encouraging,because for most instances, the solution to the initial lin-ear programming relaxation of the formulation F3 of SNIPwas integer-valued. However, the initial results make it clearthat for large-scale instances, the time required to solve thelinear programming relaxation using a sequential simplexmethod would be prohibitive. For example, CPLEX requiredmore than 20 min simply to solve the LP relaxation of theinstance SNIP7×5 with N = 500. For these reasons, inthe next section, we describe a method for solving sampledapproximations to SNIP based on decomposing the problemby scenario and solving the independent portions on a parallelcomputing architecture.

3.3. L-Shaped Method

The formulation F3 (or a sampled approximation to F3)can be viewed as a two-stage stochastic integer program inwhich the integer interdiction variables appear only in the firststage. More specifically, if the interdictions x are fixed, thenthe formulation F3 decomposes into |S| independent linearprograms, one for each scenario:

(LPs(x)) fs(x) = min∑

(i,j)∈A

−uijξijszij +∑

(i,j)∈A

uijρij

subject to zij ≤ xij ∀(i, j) ∈ A,

zij − ρij ≤ 0 ∀(i, j) ∈ A,

πr − πt ≥ 1,

ρij − πi + πj ≥ 0 ∀(i, j) ∈ A,

ρ, z ≥ 0.

Changing x changes the right-hand side of the linear programLPs(x). It follows from linear programming duality theoryand elementary convex analysis that F(x) = ∑

s∈S ps fs(x)is a piecewise-linear convex function of x. The L-shapedmethod of Van Slyke and Wets [30] is a method for solving

stochastic programs that exploits the decomposable struc-ture of the original formulation and the convexity of F(x).However, the L-shaped method is most typically employedto solve problems in which the first-stage decision variablesx are real-valued, i.e. not constrained to be integers.

We first discuss the variant of the L-shaped method thatwe employ, then we describe how this method is modified tosolve stochastic programs that have integer variables in thefirst stage. For purposes of this discussion, it is important tonote that the stochastic program F3 has relatively completerecourse; that is, for any value of the first-stage variablesx ∈ X , there exists a feasible solution to the second stageproblem LPs(x) for every scenario s. For ease of notation,we describe the algorithm in terms of minimizing the trueexpected maximum flow F(x), whereas in reality, we are oftenminimizing some sample average approximation to F(x).

The version of the L-shaped method we employ is a multi-cut version that proceeds by finding subgradients of partialsums of the terms that make up F(x), as suggested by Birgeand Louveaux [1]. Suppose that the scenarios S are parti-tioned into C clusters denoted by N1, N2, . . . , NC. Let F[c]represent the partial sum of F(x) corresponding to the clusterNc; that is,

F[c](x) =∑i∈Nc

pifi(x). (15)

The algorithm maintains a model function mk[c], which is apiecewise linear lower bound on F[c] for each cluster Nc. Wedefine this function at iteration k of the algorithm by

mk[c](x) = inf{θc|θce ≥ Ok[c]x + ok[c]

}, (16)

where e = (1, 1, . . . , 1)T and Ok[c] is a matrix whose rowsare subgradients of F[c] at previous iterates of the algorithm.The constraints in (16) are called optimality cuts. Optimal-ity cuts are obtained as a byproduct of solving the linearprograms LPs(x). Solving the |S| linear programs LPs(x) isnecessary simply to evaluate the function F(x), so obtainingthe optimality cuts adds very little computational burden tothe algorithm.

Iterates of the multi-cut L-shaped method are obtained byminimizing an aggregate model function

mk(x)def=

C∑c=1

mk[c](x)

over the linear relaxation of the feasible region:

LP(X)def=

[0, 1]|A|

∣∣∣∣∑

(i,j)∈A

hijxij ≤ K

.

The iterate-finding master problem takes the form

minx∈LP(X)

mk(x). (17)

124 NETWORKS—2008—DOI 10.1002/net

Page 6: Reformulation and sampling to solve a stochastic network interdiction problem

By substituting from (16), the problem (17) is transformedto a master linear program (MLPk):

(MLPk) minC∑

c=1

θc

subject to∑

(i,j)∈A

hijxij ≤ K ,

θce ≥ Ok[c]x + ok[c] ∀c ∈ {1, 2, . . . , C},(18)

θc ≥ L ∀c ∈ {1, 2, . . . , C}, (19)

xij ≥ 0 ∀(i, j) ∈ A.

An artificial lower bound L on the value of the θc is requiredby inequalities (19) to ensure that the minimum in (16) isachieved.

Algorithm 1 is a description of the L-shaped method. Thealgorithm solves the linear programming relaxation of theformulation F3, with two small enhancements. First, the iter-ates of the algorithm that are integer-valued are recorded.Second, the optimal dual multipliers from the final masterlinear program are stored.

Algorithm 1 The L-shaped method1. Choose x0 ∈ X . Set k = 0, uIP = ∞, uLP = ∞2. repeat3. Evaluate F(xk). Collect and create elements Ok[c], ok[c]

for updating model functions mk[c].4. uLP = min{uLP, F(xk)}5. if xk ∈ X and F(xk) < uIP then6. uIP = F(xk)

7. xIP = xk

8. end if9. Solve MLPk , obtaining solution xk+1 ∈ LP(X) with

optimal value � = mk(xk+1).10. k ← k + 111. until uLP − � ≤ ε1(1 + |uLP|)12. Let λ∗ be the (final) optimal dual multipliers for

optimality cuts (18).

Choosing x0 ∈ X in step (1) is trivial due to the simpleform of the constraints defining X in (10). The evaluation ofF(xk) in step (3) is performed in parallel. That is, differentscenarios are assigned to different computational proces-sors, and the processors simultaneously solve LPs(xk) forthe scenarios assigned to them. More discussion of the spe-cific parallel platform is given in Section 4.2. The value uIP,the corresponding integer solution xIP, the final optimal dualmultipliers λ∗, and the master linear program MLPk∗ (for thelast iteration k∗) are all retained and used later in the solu-tion process. The basic L-shaped method of Algorithm 1 isfurther enhanced with a trust-region mechanism for regular-izing the steps taken by iterations of the algorithm and withthe ability to consider multiple iterates in an asynchronous

fashion, which is indispensable for our parallel implementa-tion. The algorithm is instrumented to run on a computationalgrid using the Master-Worker (MW) runtime library [11]. Acomplete description of the algorithm is out of the scope ofthis article. For the full details of our implementation, pleaserefer to the paper of Linderoth and Wright [19].

Algorithm 1 solves the linear programming relaxation ofthe MILP formulation (F3) of SNIP. If it turns out that thesolution to the LP relaxation is integer-valued (i.e. x∗

LP ∈ X),then the problem is solved. Otherwise, a mechanism toenforce integrality is required. A well-known method forenforcing integrality is branch-and-bound. Applied here, wecould simply branch on a fractional component in x∗

LP andrepeat Algorithm 1 with the additional necessary bound con-straints on the LP relaxation added to the master linearprogram MLPk . Laporte and Louveaux [17] suggest a dif-ferent approach in which the recourse function is evaluated(and the model function m(x) is improved) only at points xin which a branch-and-bound procedure has x ∈ {0, 1}|A|.

The approach in this work is a combination of these twoapproaches. Initial computational experiments detailed inSection 3.2.1 indicated that the solution of the linear pro-gramming relaxation of F3 was often nearly integer-valued.This fact might also imply that the model function m∗

k (x)that was created during the solution of the linear program-ming relaxation by Algorithm 1 would be a good startingapproximation to the function F(x) evaluated at feasible(integer-valued) points. Therefore, the solution approach sug-gested here solves the linear programming relaxation of F3 tooptimality, retains (tight) optimality cuts (18) from the finalmaster linear program MLP∗

k , then resorts to the method ofLaporte and Louveaux, using a known upper bound to speedthe branch-and-bound process at each iteration.

The algorithm solves a series of integer-restricted versionsof the master linear program MLPk . That is, at iteration kof the algorithm, the method will solve the integer programMIPk :

(MIPk) minC∑

c=1

θc

subject to∑

(i,j)∈A

hijxij ≤ K ,

θce ≥ Ok[c]x + ok[c] ∀c ∈ {1, 2, . . . , C},C∑

c=1

θj ≤ uIP, (20)

xij ∈ {0, 1} ∀(i, j) ∈ A.

The upper bound on the solution value that the master prob-lem seeks is imposed by constraint (20). Algorithm 2 is adescription of the method employed to find integer-valuedsolutions to SNIP. An advantage of using optimality cuts fromMLP∗

k for the solution of MIPk was that we did not need tostabilize the iterates of Algorithm 2 with a trust region, assuggested by Santoso et al. [27].

NETWORKS—2008—DOI 10.1002/net 125

Page 7: Reformulation and sampling to solve a stochastic network interdiction problem

4. COMPUTATIONAL EXPERIMENTS

This section contains a description of the empirical behav-ior of the algorithm developed in Section 3.2 on the for-mulation F3 for the stochastic network interdiction problemderived in Section 2.

4.1. Test Problems

The test set consists of randomly generated probleminstances that have the same structure as the instances ofCormican, Morton, and Wood [5]. The instances are on anetwork grid with a specified number of rows and columns.Our naming convention is SNIPi×j, where i is the number ofrows in the grid and j is the number of columns in the grid.The source node is connected to all nodes in the first column,and the sink node is connected to all nodes in the last column.All horizontal arcs are oriented forward, whereas the direc-tion of the vertical arcs can be either up or down, and thisdirection is chosen randomly with probability 1/2. The arcsconnected to the source and sink nodes and the arcs in thefirst and last columns are not interdictable and have unlimitedcapacities. A random subset of roughly 35% of the arcs arechosen to be interdictable. The capacitated arcs have capac-ities ranging uniformly between 10 and 100 at multiples of10. The interdiction cost of each arc is hij = 1, and the bud-get K will be varied in the instances. The probability of asuccessful interdiction was set to 75% on each interdictablearc, and these random variables are all pairwise-independent.Further characteristics of the test instances are summarizedin Table 2. The instances SNIP7×5 and SNIP4×9 are takendirectly from Ref. [5], and the instance SNIP7×5 is depictedin Figure 1. In Figure 1, the arcs upon which interdictionmay occur are indicated by parentheses around the capac-ity value. The small instance SNIP4×4 was used only fordebugging purposes and for the initial computational tests

Algorithm 2 Adaptation of L-shaped method for integervariablesRequire: MLPk , uIP, xIP, λ∗ from solution to linear

programming relaxation (Algorithm 1).1. k = 02. MIP0 = MLPk

3. Remove all optimality cuts i from MIP0 such that λ∗i > 0

4. repeat5. Solve MIPk , obtaining solution xk+1 ∈ X with value

� = mk(xk+1). If no solution exists, exit. xIP is theoptimal solution.

6. Evaluate F(xk+1). Collect and create elementsOk+1

[c] , ok+1[c] for updating model functions mk+1

[c]7. if F(xk+1) < uIP then8. uIP = F(xk+1)

9. xIP = xk+1

10. end if11. k ← k + 112. until uIP − � ≤ ε2(1 + |uIP|)

TABLE 2. Characteristics of test instances.

NumberNumber of Number interdictable Number of

Instance Budget of nodes of arcs arcs scenarios

SNIP4×4 4 18 32 9 512SNIP7×5 6 37 72 22 4.2 × 106

SNIP4×9 6 38 67 24 1.7 × 107

SNIP10×10 10 102 200 65 3.7 × 1019

SNIP20×20 20 402 800 253 1.4 × 1076

summarized in Table 1. It will not be included in the additionalcomputational tests.

The models were built using the XPRESS-SP mod-ule in Dash Optimization’s Mosel environment. A recentlyadded feature of XPRESS-SP allows the user to write outinstances in SMPS format. These SMPS files were usedas input to the decomposition-based solver described inSection 3.2. The instances are available from the web sitehttp://coral.ie.lehigh.edu/sp-instances. To read the stochasticprogram specified in the SMPS file and to sample and manip-ulate the instance, the sutil stochastic programming utilitylibrary was used. sutil is available under an open-sourcelicense from the web site http://coral.ie.lehigh.edu/sutil. Tosolve the master linear programs MLPk and master integerprograms MIPk required by Algorithms 1 and 2, the com-mercial optimization package CPLEX (v9.1) was employed.To solve the linear programs LPs(x) required to evaluatethe objective function, the open-source linear program-ming solver Clp from COIN-OR (www.coin-or.org) wasused. Unless otherwise specified, the experiments were donewith a full multi-cut version of the algorithm, in whichthere is one model function m[·](x) for every scenario.The initial linear programming relaxation was solved to anaccuracy of ε1 = 10−6 by Algorithm 1, and the integerprograms were solved to an accuracy of ε2 = 10−2 byAlgorithm 2.

FIG. 1. Instance of SNIP7×5.

126 NETWORKS—2008—DOI 10.1002/net

Page 8: Reformulation and sampling to solve a stochastic network interdiction problem

4.2. Computational Platform

As mentioned in Section 3.3, the evaluation of the objec-tive function F(x) can be done efficiently using parallelprocessors. The parallel computational platform employedhere is known as a computational grid [7]. Computationalgrids can be quite different than traditional parallel com-puting platforms. One fundamental difference is that theprocessors making up a computational grid are often hetero-geneous and non-dedicated. That is, a processor participatingin a grid computation may be reclaimed at any time by theowner of the processor or by a central scheduling mecha-nism. Our computational grid was built using the Condorsoftware toolkit [21], which is available form the Condorweb site http://www.cs.wisc.edu/condor. The default behav-ior of Condor is to vacate running jobs on a processor ifthe machine is being used interactively or if a job with ahigher priority requests the processor. Thus, the computingenvironment is quite dynamic, and algorithms running in thisenvironment must be able to cope with faults. Algorithms 1and 2 were implemented to run on this dynamic computa-tional platform using the run-time library MW [11]. MW isa C++ class library that can help users write master-workertype parallel algorithms to run on computational grids. WithMW, the user (re)-implements abstract classes to specify theoperations of the master and the worker and to define thecomputational tasks. MW then interacts with the lower-levelgrid scheduling software, such as Condor, to find availableresources on which to run the computational tasks, and MWensures that all tasks are run, even if processors leave the com-putation. Source code for MW is available from the web sitehttp://www.cs.wisc.edu/condor/mw. For a longer discussionon computational grids and their use for stochastic program-ming, the reader is directed to the paper of Linderoth andWright [20].

The majority of our experiments were run on the idlecycles harvested from roughly 40 processors in the Center forOptimization Research @ Lehigh (COR@L). The processorsin the COR@L Condor pool are all Intel-based processorsrunning the Linux Operating System and ranging in clockspeed from 400 MHz to 2.4 GHz. Because processors on thiscomputational grid are heterogeneous and dynamic, statisticsrelating to computational time are difficult to interpret. Forinstance, the time required to solve the same instance can varyby an order of magnitude based on the availability of proces-sors in the Condor pool. For our results, we will present theaverage wall clock time required to solve the instance and theaverage number of worker processors that were available tothe algorithm.

4.3. Effectiveness of Method

The first experiment was aimed at determining the effec-tiveness of our solution approach to SNIP. Can an accuratesolution to the true instance be obtained via sampled approx-imations of the new formulation F3? How many samples are

required to obtain an accurate solution? Are the computingtimes with the parallel decomposition approach reasonable?

To answer these questions, we estimated the optimal valueof each large instance in Table 2 using sampled approxi-mations of various sizes ranging from |T | = N = 50 to|T | = N = 5, 000. For each sample size N , M = 10 replica-tions were solved to obtain an approximate 95% confidenceinterval for a lower bound and an upper bound on the opti-mal solution value via (12) and (14). The value κ = 2.262was used in both (12) and (14). A sample of size |Uj| = 105

was used to compute wUj (x∗j ) in (13). Monte Carlo (uniform

random) sampling was used to generate the samples in allinstances.

Table 3 shows how the lower and upper bounds on optimalsolution value vary as a function of the sample size for eachinstance. The average wall clock time and average number ofprocessors used to achieve the solution x∗

j to the sample aver-age approximation is also listed for each instance and samplesize, as are the average number of iterations required to solvethe initial linear programming relaxation by Algorithm 1 andthe average number of integer programs necessary to solvethe instance via Algorithm 2. Estimating F(x∗

j ), by solving100,000 linear programs, took roughly 10 min for the instanceSNIP7×5, 15 min for SNIP4×9, 22 min for SNIP10×10, and62 min for SNIP20×20 on our computational platform.

The solution time for most instances is quite moderateand shows a relatively low dependence on the number of sce-narios N . The low dependence on N is primarily accountedfor by the fact that the number of LP iterations and IP solvesremains nearly constant regardless of N . Instances with largervalues of N require more computational effort, but they canalso be parallelized to a higher degree, as there are more sce-nario linear programs to solve at each iteration. Cormican,Morton, and Wood report solving an instance of the size ofSNIP10×10 to 1% accuracy in 23,970 s on an RS/6000 Model590 [5]. This is the largest instance attempted in their work.It is not our intention to directly compare our computationalresults with theirs. Indeed, any comparison is inherentlyskewed, because the sequential approximation algorithm in[5] produces guaranteed bounds on the solution, whereasthe bounds here are statistical and require the repeated solu-tion of sampled instances of the problem. Nevertheless, afair conclusion to draw from this experiment is that a sampleaverage approximation with a moderate number of scenarios(<5,000) is likely to produce a solution that is close to thetrue optimal zSNIP, and for reasonably sized instances, thetime required to achieve this solution is relatively small. Forlarger instances (like SNIP20×20), the CPU time becomesmuch larger. We will discuss mechanisms for improvingthe time to achieve an accurate solution in Sections 4.5and 4.6.

4.4. Effect of Budget Size

Cormican, Morton, and Wood noted that the approxima-tion method they employed started to take significant CPUtime as the budget K was increased for instances of the

NETWORKS—2008—DOI 10.1002/net 127

Page 9: Reformulation and sampling to solve a stochastic network interdiction problem

TABLE 3. Statistical bounds on optimal solution value and required computational effort.

Avg. sol Avg. no. of Avg. no. of LP Avg. no. of IPInstance N LB UB time (S) workers iterations solves

SNIP7×5 50 76.42 ± 4.24 80.87 ± 0.91 227.39 1.39 12.10 1.00SNIP7×5 100 77.31 ± 3.14 80.87 ± 0.79 136.83 0.94 12.80 1.40SNIP7×5 200 78.51 ± 3.12 80.85 ± 0.75 118.96 1.21 12.30 0.00SNIP7×5 500 78.62 ± 1.37 80.50 ± 0.52 118.92 1.32 12.50 0.00SNIP7×5 1000 80.10 ± 0.70 79.99 ± 0.21 149.78 2.05 13.20 0.00SNIP7×5 2000 79.50 ± 1.09 80.42 ± 0.53 218.65 3.29 12.10 0.70SNIP7×5 5000 80.34 ± 0.45 80.14 ± 0.31 630.75 7.17 10.10 0.00

SNIP4×9 50 9.96 ± 1.02 11.16 ± 0.26 328.22 0.66 9.20 2.00SNIP4×9 100 9.47 ± 0.81 10.95 ± 0.12 273.13 1.17 9.90 2.00SNIP4×9 200 10.92 ± 0.55 11.02 ± 0.17 129.03 0.99 10.40 4.90SNIP4×9 500 10.45 ± 0.38 10.94 ± 0.05 580.33 1.42 9.60 6.70SNIP4×9 1000 10.70 ± 0.24 10.91 ± 0.03 567.63 1.84 10.00 11.50SNIP4×9 2000 10.55 ± 0.18 10.90 ± 0.05 787.59 2.35 10.10 11.60SNIP4×9 5000 10.89 ± 0.15 10.82 ± 0.16 501.64 5.51 10.10 5.30

SNIP10×10 50 88.28 ± 1.86 88.75 ± 0.34 133.44 5.02 26.00 3.20SNIP10×10 100 88.09 ± 2.92 88.52 ± 0.38 140.34 6.75 20.90 2.60SNIP10×10 200 87.08 ± 1.83 88.55 ± 0.33 141.34 7.60 17.70 1.60SNIP10×10 500 88.39 ± 0.85 88.20 ± 0.21 210.54 12.02 17.40 2.20SNIP10×10 1000 87.90 ± 0.40 88.15 ± 0.12 362.42 21.47 17.80 1.80SNIP10×10 2000 88.03 ± 0.41 88.09 ± 0.21 960.40 30.79 16.40 0.60

SNIP20×20 50 173.82 ± 3.88 192.03 ± 7.41 1098.74 24.03 86.50 2.30SNIP20×20 100 180.36 ± 4.09 188.51 ± 3.25 2640.75 33.03 71.60 3.00SNIP20×20 200 180.81 ± 2.87 187.00 ± 4.67 4767.96 36.47 66.60 3.50SNIP20×20 500 182.38 ± 1.72 184.67 ± 3.28 21253.54 38.38 39.00 3.60

size of SNIP10×10 [5]. The second experiment was aimedat determining the effect of the budget on the difficulty ofthe SNIP instance. To test this, the instance SNIP10×10with budgets of size K = 10, 15, and 20 was solved. Wesolved each instance approximately using the sample averagedecomposition-based approach on the formulation F3 withM = 10 trials. Table 4 shows the convergence of lower boundand upper bounds on the optimal solution value, the averageCPU time required to solve the sampled formulation, and theaverage number of LP iterations and IP solves necessary tosolve the instance for different budgets and sample sizes.

Instances with a budget size of K = 15 are significantlymore difficult to solve than the K = 10 or K = 20 instances.The difficulty arises on two fronts. First, the bias in the sam-pled approximation is worse. For a sample of size N = 2,000,there is still a gap between the statistical lower and upperbounds on the optimal objective function value zSNIP forK = 15, but for K = 10 and K = 20, this gap is neg-ligible. Second, the average CPU time required to solve theK = 15 instances is significantly larger than for the K = 10 orK = 20 instances. The increase in CPU time is nearly entirelydue to the increased number of IPs that need to be solved forthe K = 15 instances. Often, especially at the later itera-tions of the algorithm, an integer program can take hours tosolve. This is highly undesirable, and we will discuss heuristicmechanisms addressing this liability in Section 4.6. An inter-esting (and promising) point to be made about this experiment

is that even though the K = 15 instances with samples of sizeN = 1,000, 2,000 took a long time to solve, instances withmuch smaller sample sizes were producing high-quality solu-tions, as evidenced by the fact that the statistical upper boundremains nearly constant as N increases.

4.5. Variance Reduction

The third experiment was designed to demonstrate theeffect of selecting the elements within the sample T usingLatin Hypercube Sampling (LHS), a well-known variancereduction technique [23]. To generate a Latin Hypercubesampled approximation to SNIP, for each interdictable arc, adistribution consisting of pN “success” events and (1 − p)N“failure” events is built. The scenarios are created by sam-pling from these distributions without replacement. Thus, ina Latin Hypercube Sample with N = 100, if the probabil-ity of a successful interdiction is p = 75%, exactly 75 ofthe scenarios will have a successful interdiction for each arc.It is insightful to contrast this sample with the one drawnfrom Monte Carlo (uniform random) sampling, which canbe viewed as sampling with replacement. In a Monte Carlosample, there are not necessarily 75 successful interdictionson each arc; rather, the number of successful interdictionsis a random variable with expected value pN = 75. Ele-ments within a sample are not independent in LHS; it isprecisely this negative covariance between the elements that

128 NETWORKS—2008—DOI 10.1002/net

Page 10: Reformulation and sampling to solve a stochastic network interdiction problem

TABLE 4. Effect of budget on convergence of solution bounds for SNIP10×10 instance.

Avg. sol. Avg. no. of Avg. no. of LP Avg. no. of IPK N LB UB time (S) workers iterations solves

10 50 88.28 ± 1.86 88.75 ± 0.34 133.44 5.02 26.00 3.2010 100 88.09 ± 2.92 88.52 ± 0.38 140.34 6.75 20.90 2.6010 200 87.08 ± 1.83 88.55 ± 0.33 141.34 7.60 17.70 1.6010 500 88.39 ± 0.85 88.20 ± 0.21 210.54 12.02 17.40 2.2010 1000 87.90 ± 0.40 88.15 ± 0.12 362.42 21.47 17.80 1.8010 2000 88.03 ± 0.41 88.09 ± 0.21 960.40 30.79 16.40 0.60

15 50 76.46 ± 2.39 78.97 ± 1.10 120.63 6.08 33.00 3.6015 100 75.98 ± 1.66 78.26 ± 0.20 192.32 7.59 26.20 4.0015 200 76.88 ± 1.03 78.27 ± 0.22 219.90 12.28 22.70 3.9015 500 77.09 ± 0.90 78.29 ± 0.16 658.39 23.38 21.70 4.3015 1000 77.66 ± 0.30 78.21 ± 0.27 3023.90 35.00 22.90 5.0015 2000 77.75 ± 0.42 78.26 ± 0.14 23587.25 31.43 20.40 6.90

20 50 71.34 ± 1.74 71.06 ± 0.49 84.50 5.54 33.90 2.4020 100 70.51 ± 2.67 70.60 ± 0.30 102.87 6.83 30.30 3.2020 200 70.04 ± 1.12 70.42 ± 0.29 129.07 8.09 25.20 3.1020 500 69.98 ± 0.75 70.20 ± 0.19 222.20 15.77 23.50 3.4020 1000 69.75 ± 0.45 70.16 ± 0.23 445.44 22.12 25.10 3.4020 2000 70.26 ± 0.26 70.18 ± 0.11 2044.28 32.97 22.30 3.60

can lead to variance reduction. Sampling “more intelligently”via variance reduction techniques has shown considerablepromise in obtaining more accurate solutions to stochasticprograms [8,16,18]. The sutil stochastic programming util-ity we employ can automatically generate Latin Hypercubesamples of the true instance specified in SMPS format.

Tables 5 and 6 detail the computational results obtainedby repeating the experiments from Sections 4.3 and 4.4, onlyusing LHS in all cases. The results show that the bias isreduced by creating the sample average approximation withLHS. Namely, for a fixed instance and fixed value of N , thestatistical lower bound obtained in the Latin Hypercube caseis nearly always larger than the lower bound when computedusing Monte Carlo sampled approximations. The reader willalso note that in nearly all cases, the variance (and hence con-fidence interval) of the estimates is smaller when using LHSas opposed to Monte Carlo sampling.

4.6. Heuristic Algorithms

For large and difficult instances, such as SNIP20×20 orthe SNIP10×10 instance with a budget of K = 15, the com-putational times of the exact algorithm for solving the sampleaverage approximation to F3 are prohibitively long. In thissection, we explore two simple heuristic ideas for obtainingsolutions to SNIP. Both ideas are based on the observationthat often nearly all of the components of the solution to thelinear programming relaxation x∗

LP ∈ arg minx∈LP(X) F(x) areinteger-valued.

Because the instances in these experiments are more dif-ficult, the experiments were run in a larger Condor pool.For these tests, a Condor pool consisting of three differentBeowulf clusters at Lehigh University was used. In total, 260processors were available for computation, but due to the

nature of the Condor scheduling software, only a fractionwere available to use at any one time.

4.6.1. Rounding. Because the constraint set X is simple,an LP solution x∗

LP can be easily rounded to obtain a feasiblesolution xR ∈ X. Further, ‖xR−x∗

LP‖ is typically small, so onemight hope that F(xR)−F(x∗

LP), which is an (expected) upperbound on F(xR)−zSNIP, the suboptimality of the solution xR,is also small.

To test this hypothesis, the linear programming relaxationof an instance of SNIP20×20 with N = 500 scenarios wassolved, resulting in an optimal solution x∗

LP with objectivefunction value v∗ = 181.63. In the solution x∗

LP, 13 compo-nents had a value of one, 14 were fractional, and the remainingcomponents had value zero. As the budget for SNIP20×20was K = 20, we simply took as the rounded integer solutionxR the 13 arcs whose value was one, and the seven fractionalarcs whose value in x∗

LP was largest. Using a new sample, thefunction F(xR) was estimated to be 195.14 ± 0.03. From thecomputational results presented in Table 3, it seems likelythat the optimal solution value of SNIP20×20 is less than184, so xR is not a good solution. From this, we conclude thatby simply rounding (naively) the solution of the LP relaxationto F3, one cannot expect to get a good solution to SNIP.

4.6.2. Variable Fixing. The second heuristic idea forreducing solution time is to restrict the master integer pro-gram MIPk by fixing the variables that take integral valuesin the solution to the linear programming relaxation. That is,before beginning Algorithm 2, the constraints

xij = 0 ∀(i, j) | x∗ij = 0, xij = 1 ∀(i, j) | x∗

ij = 1,

(21)

NETWORKS—2008—DOI 10.1002/net 129

Page 11: Reformulation and sampling to solve a stochastic network interdiction problem

TABLE 5. Convergence of solution bounds with LHS.

Avg. sol. Avg. no. of Avg. no. of LP Avg. no. of IPInstance N LB UB time (S) workers iterations solves

SNIP7×5 50 79.82 ± 1.08 80.23 ± 0.27 204.20 0.79 13.50 1.10SNIP7×5 100 79.96 ± 0.88 80.31 ± 0.43 135.92 0.86 13.20 0.40SNIP7×5 200 80.32 ± 0.32 80.12 ± 0.02 324.21 0.24 13.40 0.30SNIP7×5 500 80.03 ± 0.21 80.11 ± 0.01 335.58 1.06 12.20 0.00SNIP7×5 1000 80.15 ± 0.17 80.12 ± 0.02 314.92 1.06 12.80 0.00SNIP7×5 2000 80.25 ± 0.12 80.11 ± 0.02 352.18 1.80 12.40 0.00SNIP7×5 5000 80.14 ± 0.06 80.12 ± 0.02 645.20 3.69 12.50 0.00

SNIP4×9 50 10.00 ± 0.67 10.98 ± 0.10 190.33 0.66 9.30 0.00SNIP4×9 100 10.06 ± 0.53 10.94 ± 0.02 259.21 0.34 8.70 1.90SNIP4×9 200 10.19 ± 0.36 10.91 ± 0.02 198.41 0.79 9.30 2.50SNIP4×9 500 10.49 ± 0.23 10.91 ± 0.03 144.75 1.51 10.10 6.40SNIP4×9 1000 10.84 ± 0.16 10.91 ± 0.02 204.31 1.97 9.40 11.00SNIP4×9 2000 10.78 ± 0.13 10.92 ± 0.02 326.47 2.94 10.40 9.70SNIP4×9 5000 10.85 ± 0.05 10.91 ± 0.02 496.62 5.66 9.00 7.90

SNIP10×10 50 88.62 ± 0.60 88.50 ± 0.57 201.92 1.23 18.80 1.40SNIP10×10 100 88.21 ± 0.70 88.41 ± 0.32 147.95 3.03 17.20 1.40SNIP10×10 200 88.16 ± 0.31 88.12 ± 0.02 436.03 1.42 16.40 1.40SNIP10×10 500 88.24 ± 0.22 88.13 ± 0.01 466.75 2.73 15.70 0.00SNIP10×10 1000 88.16 ± 0.08 88.13 ± 0.02 582.20 4.30 15.80 0.00SNIP10×10 2000 88.12 ± 0.09 88.13 ± 0.02 959.02 6.20 15.30 0.00

where x∗ is the solution of linear programming relaxationfrom Algorithm 1, are added to MIP0.

The idea was first tested on an instance of SNIP10×10with budget size K = 15, one of the most computation-ally challenging instances we encountered. Solving the linearprogramming relaxation of this instance took 68 iterations,and of the 200 variables in the problem, all but eight vari-ables were fixed according to the criteria (21). Only oneinteger program, with two nodes in the branch-and-boundtree, was necessary for Algorithm 2 to produce a solution

once the variables were fixed. In total, finding this solu-tion took 1,851 s on an average of 98 processors in theCondor pool. The objective value of the solution was esti-mated using a new sample and found to be 78.03 ± 0.03.Comparing this result with the results in Tables 4 and 6reveals that the solution obtained in this manner is of highquality.

As a final test, an instance of SNIP20×20 with N = 104

scenarios was solved. This is the largest instance thatwe attempted to solve, and the sampled version of the

TABLE 6. Convergence of solution bounds with LHS for SNIP10×10.

Avg. sol. Avg. no. of Avg. no. of LP Avg. no. of IPK N LB UB time (S) workers iterations solves

10 50 88.62 ± 0.60 88.50 ± 0.57 201.92 1.23 18.80 1.4010 100 88.21 ± 0.70 88.41 ± 0.32 147.95 3.03 17.20 1.4010 200 88.16 ± 0.31 88.12 ± 0.02 436.03 1.42 16.40 1.4010 500 88.24 ± 0.22 88.13 ± 0.01 466.75 2.73 15.70 0.0010 1000 88.16 ± 0.08 88.13 ± 0.02 582.20 4.30 15.80 0.0010 2000 88.12 ± 0.09 88.13 ± 0.02 959.02 6.20 15.30 0.00

15 50 77.04 ± 0.50 78.31 ± 0.25 164.55 1.92 24.10 9.5015 100 78.09 ± 0.48 78.20 ± 0.08 237.22 3.83 21.80 20.6015 200 77.41 ± 0.43 78.18 ± 0.06 3998.76 6.66 20.10 21.1015 500 77.95 ± 0.31 78.05 ± 0.06 24122.11 14.51 17.80 29.1015 1000 77.98 ± 0.17 78.05 ± 0.08 5070.12 20.14 17.70 12.6015 2000 78.07 ± 0.10 78.07 ± 0.08 15358.83 22.75 17.10 13.00

20 50 71.06 ± 0.87 71.11 ± 0.38 165.65 2.16 24.50 1.4020 100 70.38 ± 0.69 70.68 ± 0.48 234.01 1.99 22.30 4.0020 200 69.93 ± 0.71 70.39 ± 0.19 228.50 3.57 20.10 3.5020 500 70.30 ± 0.32 70.38 ± 0.21 492.42 4.43 20.10 4.1020 1000 70.05 ± 0.34 70.25 ± 0.19 630.94 5.08 19.50 2.9020 2000 70.42 ± 0.24 70.36 ± 0.20 1237.80 6.97 19.90 4.70

130 NETWORKS—2008—DOI 10.1002/net

Page 12: Reformulation and sampling to solve a stochastic network interdiction problem

formulation F3 for this problem has over 24 million rows andover 20 million columns. To solve this instance, we used acluster size |Nj| = 200, rather than the full multi-cut method(|Nj| = 1) that we had used in all previous experiments.Solving the LP relaxation of this instance took 384 iterations,718 out of 800 variables were fixed based on their solutionin the LP relaxation, and 4 IP iterations were necessary forAlgorithm 2 to terminate with a solution. The wall clocktime required to find this solution was 7,487 s on an aver-age of 80 processors. The objective value of the best solutionfound by the heuristic was estimated with a new sample tobe 183.16 ± 0.10. Examining the statistical bounds obtainedin Table 3, we see that this solution is likely of high quality.In just over 2 h on a reasonably sized computational grid,the decomposition algorithm applied to the new formulationwas able to produce a good solution to a SNIP instance muchlarger than any previously attempted in the literature. Fur-ther, fixing variables suggested by the LP relaxation to F3

appears to be an effective mechanism for reducing solutiontimes, while sacrificing little in the way of solution quality.

5. CONCLUSIONS AND FUTURE DIRECTIONS

We have given a MILP formulation of a stochastic networkinterdiction problem aimed at minimizing an adversary’sexpected maximum flow. Because the integer variables in theformulation appear only in the first stage, a combination ofdecomposition, sampling, parallel computing, and heuristicsallowed us to solve very accurately instances of larger sizesthan have been previously reported in the literature.

Continuing work is aimed at increasing the size ofinstances that can be solved with this method. In particu-lar, we will investigate more sophisticated mechanisms forswitching between solving the master linear program MLPk

and the master integer program MIPk . Also, because thesoftware is already instrumented to run in parallel on a com-putational grid, it is natural to consider parallelizing thesolution of the integer master problem MIPk . Grid-enabledsolvers for mixed integer programming have already beendeveloped in [2, 3]. We also plan to investigate the impactof adding cover inequalities from relaxed optimality cuts,of regularizing the integer master-problem, and of generat-ing non-dominated optimality cuts. These ideas have beenapplied to a stochastic program arising from a supply chainplanning application by Santoso et al. [27]. A long-term goalis to enhance the decomposition algorithm to become aneffective approach for general two-stage stochastic integerprograms in which the integrality restrictions are limited tothe first-stage variables.

Acknowledgments

The authors thank the development team of Condor, thedevelopers and maintainers of the COIN-OR suite of open-source operations research software tools, and the developersat Dash Optimization for providing the software, withoutwhich this research could not have been accomplished. In

particular, Nitin Verma from Dash Optimization was mosthelpful in answering our questions about SMPS file genera-tion from within the XPRESS-SP environment. The authorsthank Shabbir Ahmed for bringing Ref. [27] to their attention.The work was significantly improved thanks to the helpfulcomments of two referees and the editor.

REFERENCES

[1] J.R. Birge and F.V. Louveaux, A multicut algorithm for two-stage stochastic linear programs, Eur J Oper Res 34 (1988),384–392.

[2] Q. Chen and M.C. Ferris, FATCOP: A fault tolerant Condor-PVM mixed integer program solver, SIAM J Optim 11(2001), 1019–1036.

[3] Q. Chen, M.C. Ferris, and J.T. Linderoth, FATCOP 2.0:Advanced features in an opportunistic mixed integer pro-gramming solver, Ann Oper Res 103 (2001), 17–32.

[4] K.J. Cormican, Computational methods for deterministicand stochasic network interdiction problems, OperationsResearch Department, Naval Postgraduate School, Mon-terey, CA, 1995.

[5] K.J. Cormican, D.P. Morton, and R.K. Wood, Stochasticnetwork interdiction, Oper Res 46 (1998), 184–197.

[6] J. Dupacová and R.J.B. Wets, Asymptotic behavior of sta-tistical estimators and of optimal solutions of stochasticoptimization problems, Ann Stat 16 (1988), 1517–1549.

[7] I. Foster and C. Kesselman, “Computational grids,” TheGrid: Blueprint for a new computing infrastructure, I. Fos-ter and C. Kesselman (Editors), Morgan Kaufmann, SanFranisco, CA, 1999, pp. 15–52, Chapter 2.

[8] M. Freimer, D. Thomas, and J. Linderoth, Reducing biasin stochastic linear programming with sampling meth-ods, Technical report 05T-002, Department of Industrialand Systems Engineering, Lehigh University, Bethlehem,Pennsylvania, 2005.

[9] D.R. Fulkerson and G.C. Harding, Maximizing the mini-mum source-sink path subject to a budget constraint, MathProgram 13 (1977), 116–118.

[10] B. Golden, A problem in network interdiction, Naval ResLogist Q 25 (1978), 711–713.

[11] J.P. Goux, S. Kulkarni, J.T. Linderoth, and M. Yoder,Master-Worker: An enabling framework for master-workerapplications on the computational grid, Cluster Comput 4(2001), 63–70.

[12] M. Grötschel, C. Monma, and M. Stoer, Computationalresults with a cutting plane algorithm for designing commu-nication networks with low-connectivity constraints, OperRes 40 (1992), 309–330.

[13] H. Held, R. Hemmecke, and D. Woodruff, A decompositionapproach applied to planning the interdiction of stochasticnetworks, Naval Res Logist 52 (2005), 321–328.

[14] E. Israeli and R.K. Wood, Shortest-path network interdic-tion, Networks 40 (2002), 97–111.

[15] A. Kleywegt, A. Shapiro, and T. Homem-de-Mello, Thesample average approximation method for stochastic dis-crete optimization, SIAM J Optim 2 (2001), 479–502.

NETWORKS—2008—DOI 10.1002/net 131

Page 13: Reformulation and sampling to solve a stochastic network interdiction problem

[16] M. Koivu, Variance reduction in sample approximations ofstochastic programs, Math Program (2005), 463–485.

[17] G. Laporte and F.V. Louveaux, The integer L-shaped methodfor stochastic integer programs with complete recourse,Oper Res Lett 13 (1993), 133–142.

[18] J.T. Linderoth, A. Shapiro, and S.J. Wright, The empiricalbehavior of sampling methods for stochastic programming,Ann Oper Res 142 (2006), 219–245.

[19] J.T. Linderoth and S.J. Wright, Implementing a decom-position algorithm for stochastic programming on a com-putational grid, Comput Optim Appl 24 (2003), 207–250.Special Issue on Stochastic Programming.

[20] J.T. Linderoth and S.J. Wright, “Computational grids forstochastic programming”, Applications of stochastic pro-gramming, S. Wallace and W. Ziemba (Editors), SIAM,Philadelphia, PA, 2005, pp. 61–77.

[21] M. Livny, J. Basney, R. Raman, and T. Tannenbaum,Mechanisms for high throughput computing, SPEEDUP 11(1997).

[22] W.K. Mak, D.P. Morton, and R.K. Wood, Monte Carlobounding techniques for determining solution quality instochastic programs, Oper Res Lett 24 (1999), 47–56.

[23] M.D. McKay, R.J. Beckman, and W.J. Conover, A com-parison of three methods for selecting values of inputvariables in the analysis of output from a computer code,Technometrics 21 (1979), 239–245.

[24] A.W. McMasters and T.M. Mustin, Optimal interdictionof a supply network, Naval Res Logist Q 17 (1970),261–268.

[25] V. Norkin, G. Pflug, and A. Ruszczynski, A branch andbound method for stochastic global optimization, MathProgram 83 (1998), 425–450.

[26] F. Pan, W.S. Charlton, and D.P. Morton, “A stochastic pro-gram for interdicting smuggled nuclear material,” Networkinterdiction stochastic integer program, Kluwer Academic,Boston, 2003, pp. 1–20.

[27] T. Santoso, S. Ahmed, M. Goetschalckx, and A. Shapiro,A stochastic programming approach for supply chain net-work design under uncertainty, Eur J Oper Res 167 (2005),96–115.

[28] A. Shapiro and T. Homem-de-Mello, On the rate of conver-gence of optimal solutions of Monte Carlo approximationsof stochastic programs, SIAM J Optim 11 (2000), 70–86.

[29] M. Simaan and J.B. Cruz, On the Stackelberg strategyin nonzero-sum games, J Optim Theor Appl 11 (1973),533–555.

[30] R. Van Slyke and R. Wets, L-shaped linear programs withapplications to control and stochastic programming, SIAMJ Appl Math 17 (1969), 638–663.

[31] B. Verweij, S. Ahmed, A. Kleywegt, G. Nemhauser, andA. Shapiro, The sample average approximation methodapplied to stochastic routing problems: A computationalstudy, Comput Optim Appl 24 (2003), 289–333.

[32] A. Washburn and K. Wood, Two-person zero-sum gamesfor network interdiction, Oper Res 42 (1994), 243–251.

[33] H.P. Williams, Model building in mathematical program-ming, Wiley, New York, 1999.

[34] R.D. Wollmer, Removing arcs from a network, J Oper ResSoc Am 12 (1964), 934–940.

132 NETWORKS—2008—DOI 10.1002/net