21
This article was downloaded by: [137.132.123.69] On: 06 June 2014, At: 04:04 Publisher: Institute for Operations Research and the Management Sciences (INFORMS) INFORMS is located in Maryland, USA Operations Research Publication details, including instructions for authors and subscription information: http://pubsonline.informs.org A Cross Decomposition Algorithm for Capacitated Facility Location Tony J. Van Roy, To cite this article: Tony J. Van Roy, (1986) A Cross Decomposition Algorithm for Capacitated Facility Location. Operations Research 34(1):145-163. http://dx.doi.org/10.1287/opre.34.1.145 Full terms and conditions of use: http://pubsonline.informs.org/page/terms-and-conditions This article may be used only for the purposes of research, teaching, and/or private study. Commercial use or systematic downloading (by robots or other automatic processes) is prohibited without explicit Publisher approval. For more information, contact [email protected]. The Publisher does not warrant or guarantee the article’s accuracy, completeness, merchantability, fitness for a particular purpose, or non-infringement. Descriptions of, or references to, products or publications, or inclusion of an advertisement in this article, neither constitutes nor implies a guarantee, endorsement, or support of claims made of that product, publication, or service. © 1986 INFORMS Please scroll down for article—it is on subsequent pages INFORMS is the largest professional society in the world for professionals in the fields of operations research, management science, and analytics. For more information on INFORMS, its publications, membership, or meetings visit http://www.informs.org

A Cross Decomposition Algorithm for Capacitated Facility Location

  • Upload
    tony-j

  • View
    212

  • Download
    0

Embed Size (px)

Citation preview

Page 1: A Cross Decomposition Algorithm for Capacitated Facility Location

This article was downloaded by: [137.132.123.69] On: 06 June 2014, At: 04:04Publisher: Institute for Operations Research and the Management Sciences (INFORMS)INFORMS is located in Maryland, USA

Operations Research

Publication details, including instructions for authors and subscription information:http://pubsonline.informs.org

A Cross Decomposition Algorithm for Capacitated FacilityLocationTony J. Van Roy,

To cite this article:Tony J. Van Roy, (1986) A Cross Decomposition Algorithm for Capacitated Facility Location. Operations Research34(1):145-163. http://dx.doi.org/10.1287/opre.34.1.145

Full terms and conditions of use: http://pubsonline.informs.org/page/terms-and-conditions

This article may be used only for the purposes of research, teaching, and/or private study. Commercial useor systematic downloading (by robots or other automatic processes) is prohibited without explicit Publisherapproval. For more information, contact [email protected].

The Publisher does not warrant or guarantee the article’s accuracy, completeness, merchantability, fitnessfor a particular purpose, or non-infringement. Descriptions of, or references to, products or publications, orinclusion of an advertisement in this article, neither constitutes nor implies a guarantee, endorsement, orsupport of claims made of that product, publication, or service.

© 1986 INFORMS

Please scroll down for article—it is on subsequent pages

INFORMS is the largest professional society in the world for professionals in the fields of operations research, managementscience, and analytics.For more information on INFORMS, its publications, membership, or meetings visit http://www.informs.org

Page 2: A Cross Decomposition Algorithm for Capacitated Facility Location

A CROSS DECOMPOSITION ALGORITHM FORCAPACITATED FACILITY LOCATION

TONY J. VAN ROYUniversite Catholique de Louvain, Belgium

(Received June 1983; revised March 1984, December 1984; accepted December 1984)

We present an implementation of the Cross Decomposition method to solve the capacitated facility location problem.The method unifies Benders Decomposition and Lagrangean relaxation into a single framework that involves successivesolutions to a transportation problem and a simple plant location problem. Computational tests on problems with asmany as 100 candidate facility locations and 200 customers provide evidence that the approach is superior to severalother methods. The specialized Cross Decomposition program is, on a common set of test problems, about ten timesfaster than several recently developed programs. We also present a simple algorithm to strengthen Benders cuts.

T he capacitated facility location problem is for-mulated as follows:

m m n

{P) minimize Zr /y , + Zi L (1)

subject to

xu =1 all

all

all

j

ij

i

(2)

(3)

(4)

Xij > 0 , y , e jO, 1| all / , ; . (5)

There are m possible facility locations to supply goodsfor shipment to n demand points. The binary variabley, is either 1 or 0 according to whether facility location/' is established or not. The continuous variable x,yrepresents the fraction of customer j \ demand djdelivered by facility /. Appropriate costs for X/y and y,are respectively c,y and f. All demand must be met(constraints (2)), and total supply at facility location /is limited by Si (constraints (4)). Problem formulationP is known as a strong formulation of the capacitatedfacility location problem. The variable upper bounds(3), being redundant in P, yield a much tighter linearprogramming relaxation than the (equivalent) weakformulation without constraints (3).

The capacitated facility location problem P exhibitstwo special structures. The primal structure is givenby the embedded transportation problem that is ob-tained from P by fixing temporarily the y-variables.The generalized upper bounds (2) and the variableupper bounds (3) represent the dual structure which

can be exploited, for instance, via a Lagrangean relax-ation with respect to constraints (4); this techniqueinvolves fixing temporarily the dual variables associ-ated with (4).

Throughout the paper we use the following nota-tion: if Q is an optimization problem, then v{Q) is itsoptimal solution value, and Q is the linear program-ming or continuous relaxation of Q obtained by relax-ing all the integrality restrictions on the variables.

Many algorithms developed to date for solving Pemploy the branch and bound technique. The majordifferences among these algorithms concern the lowerbound computation, that is, (i) the type of relaxation,(ii) the algorithm for solving the relaxation, and (iii)the strengthening of the lower bounds (which are givenby the relaxation).

Sa (1969) starts from the weak formulation toobtain a relaxation by replacing the y, variables by\/Si £y djXjj. It is easy to verify that the relaxedproblem is a transportation problem and provides alower bound on v{P). Rardin and Unger (1976) pro-posed group-theoretic results to strengthen this boundin the context of the more general fixed charge net-work flow problem. Akinc and Khumawala (1977)successfully developed and implemented ad hoc rulesfor tighter lower bounds.

Another approach was initiated by Davis and Ray(1969) and pursued by Schrage (1975), Geoffrion andMcBride (1978), Nauss (1978), Guignard and Spiel-berg (1979) and more recently by Christofides andBeasley (1983). These researchers observed and veri-fied that inclusion of the variable upper bounds (3)gave very tight lower bounds and sparse search trees.Davis and Ray (1969) employed Benders Decompo-sition (1962) to compute the lower bound v{P) so as

Subject ctassificalion: 185 facility location, 625 cross decomposition for mixed integer programming.

Operations ResearchVol. 34, No. 1, January-February 1986 145

0030-364X/86/3401-0145 $01.25© 1986 Operations Research Society of America

Dow

nloa

ded

from

info

rms.

org

by [

137.

132.

123.

69]

on 0

6 Ju

ne 2

014,

at 0

4:04

. Fo

r pe

rson

al u

se o

nly,

all

righ

ts r

eser

ved.

Page 3: A Cross Decomposition Algorithm for Capacitated Facility Location

146 / VAN ROY

to exploit the primal structure. Schrage developed asimplex-based algorithm with specific pivoting rulesand a compact basis-inverse representation to handlethe variable upper bounds implicitly. Geoffrion andMcBride proposed Lagrangean relaxation relative tothe customer demand constraints (2). The Lagrangeanproblem then decomposes into m continuous knap-sack problems, one for each facility. They proved thatthis Lagrangean problem even without (3) yields alower bound as tight as v{P) if optimal Lagrangeanmultipliers are used. Nauss used the same Lagrangeanrelaxation augmented by the surrogate constraintEl •S/y. > Sj dj, which ensures that the total supplycapacity meets total demand in any subproblem so-lution. The Lagrangean relaxation still decomposesinto m continuous knapsack problems but, in addi-tion, a (binary) knapsack problem must be solved.Nauss implemented subgradient optimization to ob-tain good Lagrangean multipliers and stronger lowerbounds. He reported his method to be roughly 3 timesfaster than the method by Akinc and Khumawala.Christofides and Beasley developed a similar approachand obtained slightly better results than Nauss. Guig-nard and Spielberg developed a dual ascent methodto solve P, but did not report numerical comparisonswith other approaches.

In this paper we present a different approach, basedon the Cross Decomposition method developed inVan Roy (1980, 1983). The method unifies Bendersdecomposition and Lagrangean relaxation into a sin-gle framework that, when applied to P, involves suc-cessive solutions to a transportation problem and asimple plant location problem. This approach allowsus to exploit simultaneously the primal and the dualstructure of the problem. In Section 1, we review theCross Decomposition method and present its imple-mentation to solve P. The algorithm to solve the dualsubproblem is given in Section 2. Section 3 gives a cutgeneration algorithm that is used within the CrossDecomposition algorithm to improve the efficiency ofthe "master system." In Section 4 we present a simplealgorithm to derive strong Benders cuts and discussits use in Benders and in Cross Decomposition. Com-putational tests on problems with as many as 100candidate facility locations and 200 customers provideevidence that the Cross Decomposition approach issuperior to several other methods developed to date.The specialized Cross Decomposition procedure is, ona common set of test problems, roughly 10 timesfaster than several recently developed procedures.Finally, we compare computationally Cross Decom-position and standard approaches via Lagrangean re-laxation (viz. Dantzig-Wolfe Decomposition andsubgradient optimization).

For all the problems solved so far, we obtained tightlower and upper bounds, with a gap not exceeding0.5% in just a few iterations of the Cross Decompo-sition algorithm. Consequently, a truncated Cross De-composition algorithm can be used as a heuristic thatproduces not just a feasible solution, but also a confi-dence interval to measure the quality of this solution.

1. The Cross Decomposition Method

In this section we review the Cross Decompositionmethod (Van Roy 1980, 1983) and, in particular, itsimplementation to solve the capacitated facility loca-tion problem. The method is designed to exploit theprimal and the dual structure simultaneously, whichis accomplished by using two different restrictions ofthe problems, yielding respectively the primal and thedual subproblem.

1.1. The Cross Decomposition Principle

The primal subproblem, denoted SPy, is obtained byfixing in P the primal variables y, to either 0 or 1: it isprecisely the subproblem that would be used ifBenders Decomposition were applied to solve P. Thissubproblem is a transportation problem and can besolved, for instance, by the primal simplex methodwith the basis represented by an arborescense so as toreduce the computations to simple additions and com-parisons (Glover et al. 1974; Bradley, Brown andGraves 1977).

The dual subproblem, denoted SD/i, is obtained byfixing in P the dual variables n corresponding to thecapacity constraints (4); SD^ is known as the Lagran-gean subproblem or the Lagrangean relaxation of Prelative to (4):

(SD^) minimize ^ {fi - i +

subject to = 1

c/y + tn

all 7

0 =s y, all /, j

s,yi

y ,e |O , 1) all /.

Note that we have included in SD/i the surrogateconstraint E, i,y, ^ Ej dy, moreover, SD/x without thesurrogate constraint is a simple plant location prob-lem. In the next section, we discuss the choice of thistype of relaxation and demonstrate that SD/i can besolved by a dual ascent method exploiting the (dual)structure given by the generalized and variable upperbounds (2) and (3).

We next investigate how we can use both subprob-

Dow

nloa

ded

from

info

rms.

org

by [

137.

132.

123.

69]

on 0

6 Ju

ne 2

014,

at 0

4:04

. Fo

r pe

rson

al u

se o

nly,

all

righ

ts r

eser

ved.

Page 4: A Cross Decomposition Algorithm for Capacitated Facility Location

A Cross Decomposition Algorithm / 147

lems in one single decomposition framework. Theanalysis is concise; the interested reader may find moredetails and supplementary results in Van Roy (1983).

The problem of interest, P, is relatively easy to solvewhen either the primal variables y or the dual variables^l are fixed. Consequently, starting from some guessat y, one may attempt to reach a solution by ping-ponging between the following two steps:

(i) Fix y at its current value and solve the restrictedproblem SPj' to produce a new value for n.

(ii) Fix /i at its current value and solve the Lagrangeanrelaxation SD/i to produce a new value for y.

These steps produce successive upper and lowerbounds, respectively, on the optimal value. They mayyield tight bounds, and possibly—if there is no dualitygap—equal bounds that prove an optimal solution.However, convergence cannot be guaranteed, nor canmonotonic improvement of the bounds.

To ensure progress toward an optimum, cross de-composition incorporates these ping-ponging stepsinto a standard decomposition scheme. When theping-ponging phase ceases to make progress, solutionsto both SPy and SD^ are used to generate new cutsfor a Benders or Lagrangean master problem (MP orMD). The master is then solved to give a new y or nfrom which the ping-pong steps can be restarted.

The main motivation for Cross Decomposition isthe fact that subproblems for Dantzig-Wolfe (1960)and Benders Decomposition, i.e., SPj' and SD^ re-spectively, turn out to be, in some sense, masterproblems for each other, as we now demonstrate.

1.2. How to Use the Lagrangean Subproblem inBenders Decomposition

Benders Decomposition is a primal decompositionsince it exploits the primal structure (by fixing primalvariables). We do so by writing P as follows:

minimize X c,jx,j +3K>

or

minimize= 1 all J

« yi all /, j

« Siyi all /

subject to S Siyi X dj• J

or, replacing the inner minimization problem by itslinear programming dual.

minimize maximize 2J>«|0.l| I^Tp^ j

' +

minimize p

subject to 2i M + Z U - M/.s. - Y v'ijjyi ^ P'.

Siyi 3= S 4all i E

where TPA is the index set of all dual feasible basicsolutions (X', v', fi') of SPy and X, p and n correspondto the constraints (2), (3) and (4). The constraintsindexed by / E TPA are called Benders or primal cuts.Since the number of primal cuts is enormous. Bendersproposed to solve a relaxation MP of MP^ by takingonly a subset of primal cuts, and to generate cuts whennecessary. More precisely, let MP = (MP :tE Tp)denote the relaxation of MP^ for the subset 7> C TPA,and let {y, p) be an optimal solution of MP. Then thenext cut to be included in MP is generated, using thedual optimal solution of SPj>. At each iteration, a newcut is added to MP. Benders showed that this algo-rithm is finite and produces an optimal solution to P.

In the Appendix, the Example Part A illustratesBenders Decomposition.

To find a relationship between the Benders Decom-position algorithm and the dual subproblem (SD/i),we consider the following subset of TPA :

f^-l/er;.. :(x',.', M')with n' = n defines a primal cut),

i.e., (X', v', fi) is a dual feasible basic solution of SPyfor all ; G Tfi. In addition, we let

Tii=\t: (X', I/', fi') with ^' = ^ is a feasible basicsolution of the restriction of the dual of SPywhere n is fixed|.

and(MP : / E Tfi), i.e., the relaxationfor the subset TuQ TPA.

It is easy to verify that T/i C Tp. and hence

i;(MP : / E f t) =S v{MPp) « i;(MP^).

We now have

Theorem 1. (Van Roy 1980, 1983). The Benders mas-ter problem MPfi is equivalent to the Lagrangeanrelaxation SDn with respect to the primal variables y,and v(MPn) = v{SDti). (A problem Q is equivalent toQ' with respect to a subset of (primal and dual)variables, say z, if the solutions in Q for z are optimalin Q' and vice versa.)

subject toThus SDM can be used as a master problem thatimplicitly accounts for all of the cuts of T/i, that is, all

Dow

nloa

ded

from

info

rms.

org

by [

137.

132.

123.

69]

on 0

6 Ju

ne 2

014,

at 0

4:04

. Fo

r pe

rson

al u

se o

nly,

all

righ

ts r

eser

ved.

Page 5: A Cross Decomposition Algorithm for Capacitated Facility Location

148 / VAN ROY

the Benders cuts defined by (X', v', n') with n' = n,augmented by the cuts belonging to Tn\Tfi.

In the Appendix, Example Part B illustrates theequivalence between the Lagrangean Problem SD/tand the (relaxed) Benders Master Problem

1.3. How to Use the Benders Subproblem inDantzig-Wolfe Decomposition

Paralleling the Benders approach, we now derive thedual master problem for the Lagrangean method. Wetherefore write the dual problem of P with respect tothe capacity constraints (4) as follows:

(D) maximize

minimize - l^i^dyi + cij + M.

subject to

yi all /, j

or

maximize

subject to

y'i - 1 djx' b.

where TDA is the index set of feasible solutions (x', y')G |0, 1) of SD/i. We call the constraints / e TDA thedual cuts. Note that MD^ is the Dantzig-Wolfe masterproblem, which usually is written in its dual form:

minimize

subject to

/>x!v +

4- 17 - 0 all /

Let

and

: {x', y) with / = y is a feasible solution of SD/t|

MD;; = (MD : t e Ty), i.e., the relaxation of MD^ forthe subset Ty Q TDA •

Theorem 2. (Van Roy 1980, 1983). The dual masterproblem MDy is equivalent to the Benders subproblem

SPy with respect to the dual variables n, and v(MDy)= v(SPy).

1.4. The Cross Decomposition Algorithm

Theorems 1 and 2 show that the primal subproblemSPy and the dual subproblem SD/i are relaxed masterproblems for each other. This observation motivatesthe ping-ponging procedure introduced earlier. Thefollowing theorem indicates that such a procedureunder specific conditions will terminate and that op-timality can be verified after solving just one primaland one dual subproblem.

Theorem 3. (Van Roy 1980, 1983). Let (x*, y*) be anoptimal solution of P, and n* an optimal solution ofD. Then the following are equivalent:

(a) The Lagrangean relaxation relative to the ca-pacity constraint (4) has no duality gap, that isv(P) = v(Dy,

(b) There is an optimal dual solution (X*, v'^, n'*') ofSPy* with viSDfi^) = viSPy*);

(c) There is an optimal solution (x*, y*)with viSPy*) = v(SDti*).

One possible interpretation of the theorem is asfollows: v(P) = v{D) implies that for some optimal /J"^of SP>'*, v{SDfi^) = v{D) = v(P) = v{SPy*). Unfortu-nately, it is not correct to change some to every in thelast clause. However, as we will demonstrate, it ispossible to select one from among multiple, dualoptimal solutions with the desired properties. Ourexcellent computational results confirm the validityof our strategy.

In the Appendix, Example Part D illustrates thestrength of Theorem 3 for the verification of optimal-ity of a given solution.

The Cross Decomposition method incorporates theping-ponging procedure introduced earlier and is mo-tivated by Theorems 1 through 3. Theorem 3 givesconditions under which the procedure can produce anoptimal solution to P. Van Roy (1983) shows that thesame y cannot be regenerated within two consecutiveping-pong iterations unless y is optimal in P. Unfor-tunately this condition is not sufficient for the proce-dure to be finite in general, i.e., cycles of three or moreiterations might exist. Therefore, after solving eachsubproblem, we will carry out some convergence teststo decide whether or not to continue the ping-pongprocedure. If the tests fail, we solve a standard masterproblem such as MD or MP to ensure convergence.In the current implementation we solve the dual mas-ter problem MD, which includes all the cuts derivedfrom dual subproblems and all the cuts of the sets Tyderived from primal subproblems. In Section 4 we

Dow

nloa

ded

from

info

rms.

org

by [

137.

132.

123.

69]

on 0

6 Ju

ne 2

014,

at 0

4:04

. Fo

r pe

rson

al u

se o

nly,

all

righ

ts r

eser

ved.

Page 6: A Cross Decomposition Algorithm for Capacitated Facility Location

A Cross Decomposition Algorithm / 149

show that it is sufficient to include only small subsetsof Ty, and we present an algorithm to derive thesecuts from a given primal subproblem solution. Then,Theorem 2 implies immediately that

3.4. Dual master problem: IF PCT = false or DCT= false thenSOLVE (MD :teTD)

v(SDfi) viSPy)

where ^l and y are the current best or incumbent dualand primal solutions. We next present the Cross De-composition Algorithm to solve P:

At a generic iteration, Tp and To denote the currentset of primal and dual cuts generated so far. Op andVD denote the current best (or incumbent) upperand lower bound on v(P), and y and /i denote theincumbent solutions.

1. INITIALIZE/=1 ;VD = ( - °°).

2. SOLVE primal subproblem SP / fo r (X',«/',M');

GENERATE dual cuts form SPy° and store indi-ces in r % ;

INITIALIZE TD = 7-% and Tp = {0};vp = v{SPy°) and y = y".

3. REPEAT forA:= 1,2, . . .3.1. INITIALIZE the switches DCT = true, PCT

= true.3.2. Dual subproblem:

3.2.1. SOLVE dual subproblem SD/i*for ( x y ) ;ADD dual cut: TD^^TD + IC;

UPDATE dual incumbent : if VD <I;(SDM*) then A = M*and V = t;(SD/i*);IF Dp ^ VD then EXIT LOOP.

3.2.2. primal convergence test:IF

Ij xj + Ii ifi - Mi - - Ij v'u)y'^ > Opfor some / G Tp then PCT = false.

3.3. Primal subproblem: IF PCT = true then:3.3.1. SOLVE primal subproblem S P / for

ADD primal cut: T/. <- 7> + (A: + 1);UPDATE primal incumbent: if Op >viSPy'') then j> = y* and Op = v{SPy'');IF Op =s OD then EXIT LOOP.

3.3.2. Dual convergence test:IF

for some t e TD then DCT = false.3.3.3. GENERATE dual cuts from SP* and

store indices in T°y''\UPDATE TD-^TD

IFthen EXIT LOOP.

4. CALL branch-and-bound procedure.

Remarks

• In the Appendix, Example Part C illustrates theCross Decomposition algorithm.

• The convergence tests prevent the algorithm fromcycling between Steps 3.2 and 3.3, and from solvingMD in Step 3.4 at each iteration.

• The convergence tests in Step 3.2.2 and 3.3.2 verifywhether y* and M* are feasible in the master prob-lems MP and MD augmented with the restrictionp<Op and 5 > Uc- In other words, the convergencetests are necessary conditions for improving thecurrent incumbent solution values Op and Op.

• In Step 3.3.3 we generate dual cuts from the optimalsolution of SPj ' , such that i;(MD : t G T V U TD)< i;(SP; *). In Section 4 we give a dual cut generationalgorithm that runs in O[mn + {m + n)\o%{m + n)].As a result, the dual master problem takes intoaccount the information given by both the primaland the dual subproblems.

• As is well known, the transportation problem SPy*yields multiple optimal dual solutions. Thereforeone must choose carefully which solution to use toconstruct a primal (Benders) cut. Section 5 gives asimple algoirthm to derive a "strong" Benders cut.The algorithm runs in O(mn log n).

• The Cross Decomposition algorithm can be used asa heuristic. When truncated at some iteration ityields a feasible solution, and a lower bound thatmeasures the solution quality. One could also usesubgradient optimization in lieu of MD.

• MD is solved by a simplex algorithm; at each passof Step 3.4 MD is reoptimized from the last basicsolution, unless the primal incumbent solution waschanged meanwhile, in which case a feasible basisis given by T^y. A tolerance level T is used toterminate.

• Alternatively one may proceed in Step 4 withBenders Decomposition.

2. Solving the Dual Subproblem

The dual subproblem SD^, as introduced in Section2, is the Lagrangean relaxation with respect to thecapacity constraints (4). If we ignore the surrogateconstraint X/ Siyi > X; 4 , SD/i becomes a simple plantlocation problem. Although this problem is NP-hard,

Dow

nloa

ded

from

info

rms.

org

by [

137.

132.

123.

69]

on 0

6 Ju

ne 2

014,

at 0

4:04

. Fo

r pe

rson

al u

se o

nly,

all

righ

ts r

eser

ved.

Page 7: A Cross Decomposition Algorithm for Capacitated Facility Location

150 / VAN ROY

it is well known that the dual ascent method usuallyyields excellent computational results provided a par-ticular multiplier adjustment scheme is utilized. Inparticular, tight lower bounds on u(SD^) can be ob-tained in polynomial time, viz. in 0{nm^). (See Erlen-kotter 1978 and Van Roy and Erlenkotter 1982.)

An alternative dual subproblem SDX could be ob-tained by relaxing the customer demand constraints(2) in (/•), and by setting X to the vector of dualvariables associated with (2). Geoffrion and McBride,Nauss, and Christofides and Beasley all used thatapproach. Both SD/i and SDX have their advantages.Our motivation in choosing SD/x is threefold. First,practical experience (Van Roy and Gelders 1981) hasindicated that capacity constraints for new facilitiestend to be weak, since capacity is yet to be established.Existing facilities, though critically capacitated, do notcreate a duality gap if they are not subject to closingdecisions (i.e., fixed to one). As such, relaxing capacityconstraints is a natural approach. Second, as Geoffrionand McBride pointed out, SDX without the surrogateconstraint is equivalent to the linear programmingrelaxation oi P. Thus, we have

(;(SDX*) v{P)

where X* and n* are optimal dual multipliers of (2)and (4) respectively in the corresponding generalizeddual problem of P. In other words, the duality gap ofthe Lagrangean relaxation given by SD^ is not largerthan that corresponding to SDX. Third, the search foroptimal n* is likely to be easier than the search for X*since usually m«.n.

To solve SD/i, the dual ascent method uses branch-and-bound with lower bounds obtained via a dual/ascent adjustment procedure that constructs dual fea-sible solutions to the linear programming relaxationof SD/i. In many cases this relaxation yields a zeroduality gap and hence solves the problem; otherwise,computational experience indicates that usually onlya few branches are required to terminate. The dualascent/adjustment method effectively exploits thedual structure as we next show. The dual of SD/n is

maximize X \ + 7 S 4K-.^ j j

subject to X — Vij < Cij all /, j

X Vij + Sty « fi all /j

Vij SiO, 7 ^ 0 a l l / , ; ,

where Cy = C/j + ni dj for all /, j , and ]'i=fi- fi/Si forall /. This dual problem can be condensed into

maximize S \ + T S 4J J

subject to S maxjO, X; - Cij\ ^ fi - s,-y all /.

If 7; < 0, y, is fixed to 1; for simplicity we now assumefi>0 for all /. If 7 is fixed, we obtain the samecondensed dual as for the simple plant location prob-lem (i.e., SD/t without the surrogate constraint), andwe can apply the dual ascent/adjustment procedure.Furthermore, it is easy to verify that a feasible solutionof the condensed dual remains feasible if we decreasey. We have used these two observations to modify thedual ascent/adjustment procedure as follows:

1. INITIALIZE: 7 = 0, 7* = min|7;A,, all /|,

6_= 0 ,7 = 7 ^Xj = minjc/;, all /), for a l l /

2. REPEAT:2.1. CALL the dual ascent procedure (Erlenkot-

ter), with X as a starting solution; let X" be theresult.

2.2. CALL the primal procedure (Erlenkotter); let(x^y*^) be the solution.

2.3. Check feasibility of the surrogate constraint:SET A = liSiyr-Ij dj-IF A = A" or A = A" , set 6 = 5 + 1, otherwiseset 5 = 0;IF A 2= 0, set 7" = 7, A"" = A;IF A < 0, set 7" = 7, A" = A;IF A = 0 or 5 = 3, EXIT LOOP.

2.4. COMPUTE a new 7 value (binary search):

IF 7 = 7 - or 7 = y*, EXIT LOOP.2.5. UPDATE starting solution for dual ascent

method:IF A > 0, set 7 = 7*.

3. CALL the dual-based algorithm (Erlenkotter),where 7 is kept fixed.

3. A Dual Cut Generation Algorithm

In this section we present an algorithm for generatingdual subproblem solutions and dual cuts from a so-lution of the primal subproblem SP>'; i.e., step 3.3.3.of the Cross Decomposition algorithm. In particular,we want a solution of SPy to be written as a convexcombination of simple plant location problem solu-tions. Each of these solutions yields a dual cut. We letT°y denote the set of optimal basic dual cuts of MDj),that is T°y = \t : a, is basic dual optimal in MDyj.Hence by Theorem 2:

viSPy) = v(MDy) = D(MD •.teTy) = t;(MD: t e T^y)

where T°y C Ty and Ty is the set of all dual cuts ofMDy. Since in the Cross Decomposition algorithmT^y is included in the set To of the dual cuts generated

Dow

nloa

ded

from

info

rms.

org

by [

137.

132.

123.

69]

on 0

6 Ju

ne 2

014,

at 0

4:04

. Fo

r pe

rson

al u

se o

nly,

all

righ

ts r

eser

ved.

Page 8: A Cross Decomposition Algorithm for Capacitated Facility Location

A Cross Decomposition Algorithm / 151

so far, at any iteration

u(MD v(SPy)

where /i and y are the incumbent dual and primalsolutions. Although we could construct a dual cutusing (xy) directly, this cut is weak since it is domi-nated by the dual cuts of T^y (in particular it is aconvex combination of these cuts).

We now present an algorithm for constructing theset T'^y given a primal solution x of SPy. Let P^ be thenumber of basic x variables.

Dual Cut Generation Algorithm

1. INITIALIZE: /, = j / : x^j basic in SPy\ for ally;SORT the P^ value of {xtj : i G Ij,j= \,...,n\.

2. REPEAT for7= 1 ,2 , . . .2.1. FOR each j : COMPUTE Xnjy = min|X/;,

2.2. COMPUTE: a, = x^'y y ^UPDATE Ir *- / / - i(j').

2.3. Construct the vector x' with x'lj = 1 if/ = i(j) and = 0 otherwise, and y' = y.

2.4. UPDATE x: set x^y *— Xnjy = a,, allj.2.5. If/;. = 0 , then t = t, T^y = \l, 2, ..., t]

and EXIT LOOP.

The SORT operation is intended to improve the effi-ciency of the algorithm and is discussed later.

Example

Let X be a basic solution of SPy, with n = 2, m = 4.The elements of the sets Ij are encircled.

0 01 00 00 1

-1-

0 0

0100

0001

-1. r\

0001

0001

"*"

00

©©

00

©00100

0001

+ 0

0001

0001

^-4

0001

0010

-1-

00

©0

00

©00100

0001

+ 0

0001

0001

0001

0010

10010

0010

The example yields t = 4, and a - ('A, 0, 'A, '/:, 0, 0,. . . , 0).

Proposition 4. The Dual Cut Generation Algorithmterminates after exactly {Px — n + 1) iterations wherePx is the number of basic x variables in the solution ofSPy.

Proof. At the initial iterations, the algorithm elim-inates (in Step 2.2) all basic zeros. Since initially21 Xij = 1 for all j , we may assume that at somenonterminating iteration, say t', all basic zeros areeliminated. That is, at iteration t' we have Xij ¥= 0 forall j , i G Ij and \Ij\ > 1 for all j . If the procedurecreates a zero at an iteration ; > / ' for some (or more)customers, j , we will first eliminate these zeros beforecreating new ones. Thus at any iteration t> t', eachof the sets [xtj: i G Ij\ for each customer^' contains nomore than one single zero element. Suppose at ter-mination (Step 2.5) I /;. I = 0 and \Ij\ = I for ally #

j ' . Then i = Px- n+ Ihy construction. Now supposethat at termination the conclusion is violated, i.e.,\Ij\ = 0 but I / /1 > 1 for some 7 ". Since, by construc-tion, the sum X/e/, Xij is identical for all j at anyiteration, we also have t, /e/y> Xij = 0, implying customerj " has more than one zero, which is a contradiction.

Special data structures are used to execute eachiteration efficiently, as is illustrated in the followingexample. First, sorting the p^ basic x values yields, inOipAog Px) operations, the arrays XIJ, I and J, whichrepresent the values Xtj, i and 7 respectively. Next, in0{px) operations we construct two auxiliary arraysHRST and NEXT, where FIRST (7) gives the addressof i(j) as needed in step 2.1, and NEXT ( ) is usedto fmd the next smallest element in {Xij'.i G /;), andequals 0 when Ij becomes empty, as needed in Steps2.2 and 2.5.

XIJ

I

J

NEXT

1

'A

2

1

2

2

'A

4

1

4

3

'A

4

2

5

4

'A

3

1

0

5

3/4

3

2

0

FIRST 1 3

In the first iteration, we find Xmi, and x,(2),2 as XIJ(nRST)(l)) and XIJ (nRST(2)) respectively. L e t ; '= 1, and update A7y(nRST(l)) = 0, X//(nRST(2))•^ XIJ (nRST(2)) - XIJ (nRST(l)), and nRST(l)•e- NEXT (FIRST(l)). Thus, at the end of the first

Dow

nloa

ded

from

info

rms.

org

by [

137.

132.

123.

69]

on 0

6 Ju

ne 2

014,

at 0

4:04

. Fo

r pe

rson

al u

se o

nly,

all

righ

ts r

eser

ved.

Page 9: A Cross Decomposition Algorithm for Capacitated Facility Location

152 / VAN ROY

iteration, the arrays have become

XIJ

I

J

NEXT

1

0

2

1

2

2

VA

4

1

4

3

0

4

2

5

4

'/2

3

1

0

5

3/4

3

2

0

HRST 2 3

We continue until some FIRST ( ) becomes zero.

Proposition 5. The running time of the Dual CutGeneration Algorithm is O[{mn + {m + n)log(m + «)].(The running time of an algorithm is defined as thenumber of elementary operations (such as additions,multiplications and comparisons).)

Proof. Step 1 requires O{px\oi,Px) or 0[(m + n)\o%{m+ «)] running time for sorting since Px^m + n. Eachiteration of step 2 runs in 0{n) time, and hence all{Px- n + 1) iterations in step 2 (see Proposition 4)are executed in 0{mn) time.

Careful analysis of the algorithms and Propositions4 and 5 reveals that we never require the simple formof constraints (4). Thus the dual cul generation algo-rithm can be applied—without any modification—tothe following extension of the capacitated facility lo-cation problem:

minimize ex + fy + hz

subject toand (2), (3), (5).

where A, B and D are matrices and c, f, h, e, x, y andz are vectors of conformable dimensions. This gener-alized problem has been used in a real life applicationstudy (Van Roy and Gelders).

By construction, the | Ty\ vector a = {a\, a2, ...,a;, 0, 0, . . . , 0) is a feasible dual solution of MDj).Moreover, KSPp) = S;=i a,(cx' -^ fy'\ hence

i;(SPy) > y(MD:

t;(MD: t e Ty)

The second inequality follows from T^y C Ty byconstruction. Using Theorem 2 we obtain u(SP>') =t;(MD: / G Vy) = t;(MDj)). We have proved that

Theorem 6. The Dual Cut Generation Algorithm re-quires O(mn + (m + n)log(m + «)) running time and

produces the set T'^y of dual cuts which form a basisfor the cuts of Ty and such that i (SPi>) = t;(MD: t GT°y). (See Proposition 5 for the definition of runningtime.)

4. Deriving Strong Benders (or Primal) Cuts

When the Benders (or primal) subproblem has mul-tiple dual optimal solutions, one must choose one (ormore) of these solutions to construct a Benders cut. Itturns out that this choice is very important and cru-cially determines the efficiency of Benders Decom-position and of Cross Decomposition as well. In par-ticular, multiple dual optimal solutions happen to bethe rule rather than the exception, due to the massiveprimal degeneracy of the transportation problem SP; .In the Cross Decomposition algorithm we must selectone dual optimal solution /i* for constructing a primalcut and for using in the next dual subproblem (seeTheorem 3!).

A cut TTy + Tz^y ^ 0 dominates TJ + XO « 0 ifTT '>> -I- 7ri =s 0 implies v^y + for all |0, 1 jand TT^y + wl < 0 for some y G jO, 1|. Deriving astrong cut means deriving from a particular dual op-timal solution a cut that is not dominated by a cutderived from any other dual optimal solution. In theremainder of this section we present an algorithm tostrengthen a Benders cut. An alternative algorithm isgiven in Magnanti and Wong (1981).

Rather than working with the transportation prob-lem formulation of SPj>, we wish to keep the (redun-dant) constraints (3). The dual of SPj> is

maximize -Jl "o -

subject to X; - Vij - all /, j

where X , v/j and /i, are the dual variables for theconstraints (2), (3) and (4) respectively. Let (X, i>, ji)denote a dual optimal solution, then the following cutis constructed:

+ S (/ - 2 ''u -

Observe that if y, = 0 one can modify /u, and v/j withoutchanging the objective function value, as long as fea-sibility is maintained. Hence, to make the cut stronger,we modify jx, and v/j so that the y, coefficient becomeslarger. This is done by solving the following linearprogram for each / with p, = 0, and for a given X :

Dow

nloa

ded

from

info

rms.

org

by [

137.

132.

123.

69]

on 0

6 Ju

ne 2

014,

at 0

4:04

. Fo

r pe

rson

al u

se o

nly,

all

righ

ts r

eser

ved.

Page 10: A Cross Decomposition Algorithm for Capacitated Facility Location

A Cross Decomposition Algorithm j 153

maximize f - msi - ^ v^j

subject to \j - Vij - djfii ^ c,j, for all j

or

m a x i m i z e / — /i,5, — / ] max|O, X, — Cjj — dju,],

which is solved by sorting | ( \ - c,>)/4, for all 7). Sincethis computation needs to be carried out for eachfacility, the running time is 0{mn log n).

For completeness we now give the detailed algo-rithm:

Algorithm for Strengthening Benders Cuts

Let Ji, X be an optimal dual solution of the transpor-tation problem SPy (without constraints (3)).

REPEAT for /= 1 ,2 , . . . , «INITIALIZE h = O,Ji = ^ and P.j = 0 for; G 7;IF j>, = 0 then REPEAT:

ASSIGN j ' = arg min|(Xj - Cy)/4,7 G 7 \ 7,);UPDATE 7 ,<- / ,U 1;');IF Eye/, dj > Si then J X I T LOOP;ASSIGN A = min|(X;. - c,y.)M' - h, /I,};UPDATE Vij <- Vij + djA;UPDATE M, iii - A;ASSIGN h = (Xj-- dj.ydr;IF M, = 0 then EXIT LOOP.

The algorithm can easily be extended to general net-works.

In the Appendix, the Example Part E illustrates theefTect of strong cuts on Benders Decomposition.

5. Computational Results

The Cross Decomposition algorithm as presented inSection 2 was implemented in FORTRAN, and runon an IBM 3033U and a Data General MV8000. Thedual subproblem of the Cross Decomposition algo-rithm is solved by the dual ascent method of (Erlen-kotter) modified as in Section 2 and as in Van Royand Erlenkotter. The solution of the primal subprob-lem is computed by a primal transportation programas in (Glover et al. and Bradley, Brown and Graves).The master problem is solved by the program de-scribed in Clasen (1965). A rudimentary branch-and-bound procedure is initiated to close the duality gapwhen the relative difference between the value of theincumbent lower bound 6D and the value of the in-cumbent upper bound Op or the value of the dualmaster problem (;(MD) is less than the tolerance levelT, which is set equal to 0.05% in all the test runs. Thebranch-and-bound procedure uses the following

simple rules:

1. no adjustment of the incumbent dual solution /I;2. branching on the variable with smallest

f - ii,s,) - - H max 0, Xj - (c,, + /I, dj) \J J

which is the slack of the /th constraint of thecondensed dual of (SD/2), where (X, 7) is the incum-bent solution obtained in step 2 of the modifieddual ascent/adjustment procedure (see Section 3);

3. the 0-branch is taken first;4. a depth-first/LIFO backtracking strategy is

adopted;5. nodes are fathomed if the lower bound exceeds the

upper bound, or if all y variables are fixed, or if thepartially fixed j;-vector cannot pass the primal con-vergence test.

In Table I we summarize the computational resultsfor the Kiihn-Hamburger problems that are custom-arily used to perform numerical tests. Each of theseproblems has 50 demand locations representing majorcities in the United States. Two sets of test problemsare created with, respectively, 16 and 25 candidatewarehouse locations, selected among the 50 cities. Byconsidering three levels of warehouse capacities andfour levels of fixed costs, we obtained a total of 24 testproblems. Further details of these problems can befound in, e.g., Akinc and Khumawala.

Table I shows that, for these test problems,

1. the Lagrangean relaxation with respect to the ca-pacity constraints turns out to be very tight;

2. the Cross Decomposition Algorithm finds (near)optimal Lagrangean multipliers within just a fewiterations.

Before initiating the branch-and-bound procedure(Step 4), Cross Decomposition produces a duality gap(«) that is at most 0.5% and on the average 0.09%,and which is obtained after at most 26 iterations orafter 4.6 iterations on the average. For all problemsexcept Problem 16, the Cross Decomposition itera-tions (Step 3), rather than the branch-and-bound (Step4), found the optimal solution; the duality gap forProblem 16 turned out to be 0.41 %. As is well known,these problems tend to be more difficult when capacitylimits decrease and/or fixed charges increase. Thisobservation, however, only partly explains the relativeperformance on Problem 24. When we used a slightlydifferent strategy (T = 0.5% instead of 0.05%), weperformed only 18 Cross Decomposition iterations,which produced a gap (e) of 0.53% in 9.3 MV 8000

Dow

nloa

ded

from

info

rms.

org

by [

137.

132.

123.

69]

on 0

6 Ju

ne 2

014,

at 0

4:04

. Fo

r pe

rson

al u

se o

nly,

all

righ

ts r

eser

ved.

Page 11: A Cross Decomposition Algorithm for Capacitated Facility Location

154 / VAN ROY

TABLE I

Computation Results for the Kuhn-Hamburger Problems

ProblemNr>

123456789

10II12131415161718192021222324GrandGrand

m X n

16x50

25x50

total CPLtotal Eq.

Supply

15,000

10,000

5,000

15,000

10,000

5,000

Fixed

7,50012,50017,50025,0007,500

12,50017,50025,0007,500

12,50017,50025,0007,500

12,50017,50025,0007,500

12,50017,50025,0007,500

12,50017,50025,000

seconds' :

%/O

000.130000.040.2200.010.010.0100.090.200.4700.020.110.180.180.040.250.18

BM 3033-CPU seconds

ITER

113422651333135

10136828

II26

d.

Cross Decomposition''

herseconds

IBM3033U

0.050.050.200.210.080.080.250.430.060.280.250.220.060.170.290.550.060.130.470.630.160.601.213.087.697.69

MV8000

0.240.251.030.970.380.391.351.780.251.10'1.191.120.331.041.963.090.311.182.422.520.804.805.70

22.9248.11

7.69

Nodes

—3

———

615

—222

—1226

118—

01041385

34132

TotalSeconds

MV 8000

0.240.251.500.970.380.391.922.710.251.331.431.37.33

2.263.536.370.311.663.094.932.465.477.55

26.4463.6710.1

Akincand

KhumawalaTotal

SecondsIBM

370/165*

0.20.4

38.734.4

19.7—10.29.29.39.60.87.8

>120>120

———

0.2>120>120>120>740.5>448.8

NaussTotal

SecondsIBM

370/168"

1.61.96.33.1

6.6—7.61.76.8

10.82.29.2

18.127.2——

18.418.114.273.4

227.2151.5

ChristofidesBeasleyTotal

SecondsCDC 7600*

0.50.52.81.3

3.1—8.76.96.74.91.34.16.68.7——

7.36.35.8

12.087.596.3

" f = percentage tolerance between best primal and best dual bound obtained before branch-and-bound. ITER = total number ofmaster Cross Decomposition iterations (see k in the Cross Decomposition algorithm).

*Total CPU time as reported in, respectively, Akinc and Khumawala (1977), Nauss (1978), Christofides and Beasley (1983).'Grand total for all runs except runs 5-6, 8, and 17-20.''Performance ratios for FORTRAN programs are with respect to IBM 3O33U: IBM 370/168 = 1/1.50, CDC 7600 = Ul. l ,

MV8000: 1/6.3, IBM 370/165 = 1/1.65 (see Connors, Florkowski and Patton 1979; Bradley, Brown and Graves 1977).

seconds; the enumeration required 247 nodes andtotal MV8000 CPU time was 16.1 seconds, i.e., morethan 10 seconds less than the time listed in Table I.One may reasonably except that Cross Decompositioniterations during the enumeration of Step 4 will fur-ther reduce the number of nodes. We did not furtherinvestigate these and other strategies. Taking intoaccount the performance ratios of different computersfor optimized FORTRAN programs, the Cross De-composition algorithm is more than 10 times fasterthan the alternative algorithms for solving these testproblems. Significant variations (±10%) on CPUtimes of the IBM 3033U and the Data GeneralMV8000 computers, due to, e.g., computer workload,were eliminated by skipping during the timing mostof the input/output instructions (such as reading data,printing results).

The algorithms proposed both by Nauss and byChristofides and Beasley employ a different Lagran-gean relaxation (with respect to constraints (2)) inconcert with subgradient optimization and branch-and-bound. We therefore did some additional com-putational tests to verify the incremental value ofCross Decomposition over a standard approach viaLagrangean relaxation, viz. the standard Dantzig-Wolfe decomposition (or dual decomposition: see Sec-tion 2) and subgradient optimization. To this end weincluded in the original Cross Decomposition pro-gram a few FORTRAN instructions so that thesealternative methods were implemented using the samesubprograms and the same Lagrangean relaxation, i.e.,with respect to (4).

The standard Dantzig-Wolfe (or dual) decomposi-tion algorithm is obtained by skipping Steps 3.2.2.

Dow

nloa

ded

from

info

rms.

org

by [

137.

132.

123.

69]

on 0

6 Ju

ne 2

014,

at 0

4:04

. Fo

r pe

rson

al u

se o

nly,

all

righ

ts r

eser

ved.

Page 12: A Cross Decomposition Algorithm for Capacitated Facility Location

A Cross Decomposition Algorithm / 155

and 3.3 in the Cross Decomposition algorithm whilesetting DCT false in Step 3.1. Hence each iterationsolves the dual subproblem SD/i and the dual masterproblem MD. Since Steps 1 and 2 are kept intact, weactually start with one Cross Decomposition iterationfollowed by Dantzig-Wolfe decomposition andbranch-and-bound. In this improved dual decompo-sition procedure, the first master problem to solve isnot unbounded (or equivalently the dual of this MDis feasible). We did so since in the original CrossDecomposition program we did not implement aphase-one simplex procedure. Table II shows the re-sults for all the Kuhn-Hamburger test problems. Thequality of the lower bound, measured by e°^, isroughly identical to the bound obtained by CrossDecomposition (see Table I). However, about fivetimes as much CPU time is required by the improveddual decomposition method to find a lower bound ofthis quality. Moreover, at this point no (good) upperbound is available (see « in Table II). The presentbranch-and-bound procedure is fairly simple, and the

required number of nodes could be decreased if, e.g.,more effect (and time) were spent on evaluating eachnode, and a good primal solution were known at thestart of the branch-and-bound procedure (compare tand t°^).

Alternatively, we tested Lagrangean relaxation withsubgradient optimization, and give results in TableIII. In these experiments, the multipliers are set usingthe following simple expression:

*., _ * . . [^o - i;(SD/)] ,

where

VD is an overestimate ofgk = {g\, . • •, gm) is a subgradient in fi'', i.e.

g^ = E>=i djxfj - Siyf;(x*, >•*) is an optimal solution of the dual subprob-

lem SD^*;Ak is a scalar of appropriate value (see below).

We set VD = V*, the optimal solution value, in order

TABLE II

Solution of Kuhn-Hamburger Test Problems by One Cross Decomposition Iteration Followed by DualDecomposition (Dantzig-Wolfe) and Branch-and-Bound"

ProblemNo.

123456789

10II12131415161718192021222324

Total

(%

1.94.78.0

13.81.84.67.6

XIA1.02.54.05.94.3

10.216.624.84.39.7

15.623.23.67.8

11.917.1

Total except Nos. 5, 6, 7,

ITER

11

41731745414021493544

1162280

21098762935

117136

17-20

Seconds

0.30.34.1

12.53.06.85.05.23.58.26.0

16.40.43.13.7

21.40.51.9

32.517.96.66.9

51.468.9

286.5218.7

Nodes

5136

3491364254

b

*

21509073

294957

C

c

297c

c

c

933c

c

c

TotalSeconds

2.21.3

11.616.44.89.0

>68.3>67.4

4.711.010.720.09.1

24.156.0

>65.99.4

>46.1>94.1>56.6

40.5>215.9>253.8>194.9

> 1006.4

^OPT

%

000.130.0010.00010.00020.040.1800.0060.0050.00500.080.200.4100.0130.070.180.180.0330.0330.21

" Seconds = CPU time in seconds to compute lower bound on Data General MV8000; total seconds = total solution time in secondson Data General MV8000; f percentage gap between last upper and lower bound before branch-and bound; and i°" percentage gapbetween optimal solution value and lower bound after branch-and-bound.

* Branch-and-bound is truncated after 1000 nodes.' Branch-and-bound is truncated after 2000 nodes.

Dow

nloa

ded

from

info

rms.

org

by [

137.

132.

123.

69]

on 0

6 Ju

ne 2

014,

at 0

4:04

. Fo

r pe

rson

al u

se o

nly,

all

righ

ts r

eser

ved.

Page 13: A Cross Decomposition Algorithm for Capacitated Facility Location

156 / VAN ROY

TABLE III

Computational Results of Subgradient Optimization on the Ktihn-Hamburger Problems"

ProblemNo.

910111221222324

ITER

133328

1126

Cross Decomposition

%

00.320.740.860.601.793.676.01

fITER%

00.010.010.010.180.040.250.18

TotalCPUtime"*

s

0.251.331.431.372.465.477.55

26.44

,OPT

%

8.658.057.468.204.085.216.397.11

ePA%

10.288.057.466.344.082.821.811.55

Subgradient Optimization*Ao = 2.0, /so = 20

,OPTf 100

%

3.582.742.872.342.550.990.680.31

,OPTf200

%

3.45NA2.682.082.510.890.680.20

OPT'300

%

NANANANANANA0.68NA

time*

14.6NR19.119.617.925.649.132.1

Nodes*

—«70

TotalCPUtime-'

s

>7236.5

" NA = not attempted, NR = not registered, CPU seconds on Data General MV8000.* At is halved whenever the lower bound failed to increase with Igo iterations as in Fisher (1981);

upper bound (optimal solution value) and lower bound obtained after n iterations.' Alt and li) are halved every I^ iterations as in Nauss (1978).

percentage gap between

to test subgradient optimization in an ideal situation.This value is also used to fathom the nodes in thebranch-and-bound procedure. We proposed variousstrategies to set AA. One such way was to set Ao = 2,and then halve AA whenever the lower bound fails toincrease in some fixed number of iterations /:so (seeFisher 1981). For the Kuhn-Hamburger Problems 9and 10, we tried /^ = 5, 10, 20, 30, 50, 65; /,o = 20proved to be best. Nauss used a slightly differentapproach: Ao = 0.2 and Ilo = {m + n + 2), the AA and1% are halved after / ^ iterations, etc.; whenever / ^becomes smaller than 10, it is fixed to 10.

Both variants do not guarantee convergence butworked well (see, e.g.. Fisher, and Nauss). Table IIIgives computational results for a subset of the Kuhn-Hamburger problems. These results demonstrate, bycomparison of the different « values, the poor initialand global convergence rates of subgradient optimi-zation with respect to Cross Decomposition. Subgra-dient optimization is also very sensitive to the param-eter setting (e and IM), which is reasonable to expectsince this method uses only the last subproblemsolution to construct a new set of multipliers; forinstance, the first parameter set fails on Problem23, whereas the second parameter set fails on Prob-lem 24, where it takes 6 times as much CPU timethan does the first parameter set. Notice in TableIII that the time per iteration is not uniform andvaries with the degree of difficulty of the subproblem.

In particular, more dual ascent iterations are re-quired when fixed charges are high and variable costslow (Erlenkotter).

Finally, the percentage duality gap after one subgra-dient iteration (i.e., €°^, obtained with all multipliersat zero) is on the average 1% larger than t?*^ andgives some idea of the tightness of the capacityconstraints.

In order to evaluate the efficiency of special purposealgorithms with respect to general purpose mixed in-teger programming software, we solved some of the"more difficult" Kuhn-Hamburger problems usingSCICONIC (a program produced by Scicon ComputerServices, Ltd). The results are shown in Table IV, andindicate that Cross Decomposition is 25 to 80 timesfaster that SCICONIC for problems on which CrossDecomposition did not perform so well.

Table V presents computational results using CrossDecomposition for solving 50 facility x 100 customerand 100 facility x 200 customer problems. To the bestof our knowledge, these problem sizes are significantlybeyond the maximum sizes addressed in other publi-cations to date. We generated these problems usingthe generally available NETGEN code (Klingman,Napier and Stutz 1974). The two problem sets weregenerated using the following parameters: sources50/100; sinks 100/200; total number of arcs 1000/4000; cost range 0-10,000; total supply 100,000;random seed numbers 135 and 2460; all other pa-

Dow

nloa

ded

from

info

rms.

org

by [

137.

132.

123.

69]

on 0

6 Ju

ne 2

014,

at 0

4:04

. Fo

r pe

rson

al u

se o

nly,

all

righ

ts r

eser

ved.

Page 14: A Cross Decomposition Algorithm for Capacitated Facility Location

A Cross Decomposition Algorithm / 157

TABLE III

(Continued)

ProblemNo.

910111221222324

^OPT

%

8.928.668.247.694.495.285.956.45

,OPTfiTER

%

10.287.637.266.784.493.403.462.77

Subgradient Optimization'Ao = 0.2 Ii, = m + n + 2

,OPT<100

%

4.433.613.232.432.601.290.801.20

,OPT£200

%

4.433.412.782.152.550.950.440.67

OPTf300

%

NANANANANANA0.280.47

CPUtime''

s

NRNRNRNR17.2NR92.0

202.0

Nodes*

241689

TotalCPUtime-*

s

99.6224

''Total solution time, including time for branch-and-bound.'' Lower bound computing time, excluding time for branch-and-bound.•'^Excluding the search for the optimal solution, whose value was entered at the outset.» Branch-and-bound tree truncated after 1000 nodes.

rameters are zero. These two data sets, one for the50 X 100 problem size and the other for 100 x200 problem size, were used in combination withvarious supply limits and fixed costs as shown inTable V.

A stability failure (the simplex subroutine (Clasen1965) failed to perform a rein version of desired accu-racy) occurred in problem 8 when solving the masterproblem; then the Cross Decomposition iterationswere stopped and the branch-and-bound procedurewas started, apparently with a rather poor bound.Except for this problem (which clearly is not thelargest), the Cross Decomposition algorithm producedfeasible solutions within a guaranteed optimality levelof 0.5% in no more than one minute on an MV 8000(roughly equivalent to 10 seconds on an IBM 3033).All problems except 8 and 16 were solved to optimalitywithin 1 minute on an MV 8000.

We conducted some experiments in order to com-pare our approach with that of Guignard and Spiel-berg, since they did not report computational resultsfor the Kuhn-Hamburger problems. The dual ascentmethod of Guignard and Spielberg can be regarded asa dual heuristic procedure to solve the linear program-ming relaxation of the (strong) formulation P. Thevalue so obtained, even if not optimal, is a lowerbound on v(P) by virtue of its dual feasibility. TheGuignard-Spielberg algorithm requires a dual ascentprocedure for each iteration, a simplex algorithm tosolve an auxiliary linear programming problem of sizem, and a dual labeling technique to solve a modifiedtransportation problem (not to be confused with aBenders subproblem). Thus this amount of work canreasonably be compared with one Cross Decomposi-tion iteration. We solved some of the problems pre-sented by Guignard and Spielberg, and Table VI gives

TABLE IV

Kiihn-Hamburger Problems Using SCICONIC

ProblemNo.

Cross Decomposition SCICONIC

Sizem X n Rows Columns Best

lower bound NodesTotal

secondsMV8000

LPsol.value Nodes

TotalsecondsMV8000

101624

16x5025x5025x50

80313011252

83112991299

109,801,417.094,228,900.8

106,746,692.9

2118132

1.336.37

26.44

109,801,417.594,228,971.7

106,750,366.1

31211

88.6510.3639.2

Dow

nloa

ded

from

info

rms.

org

by [

137.

132.

123.

69]

on 0

6 Ju

ne 2

014,

at 0

4:04

. Fo

r pe

rson

al u

se o

nly,

all

righ

ts r

eser

ved.

Page 15: A Cross Decomposition Algorithm for Capacitated Facility Location

158 / VAN ROY

TABLE V

Cross Decomposition—Computational Results for NETGEN Problems

ProblemNo.

Sizemy. n Supply Fixed

Cost ITER SecondsMV8000' Nodes

TotalSeconds

MV8000*

1234

5678

9101112

13141516

50 X 100

100 X 200

10,000

5,000

10,000

5,000

50,000100,000200,000500,000

50,000100,000200,000500,000

50,000100,000200,000500,000

50,000100,000200,000500,000

0000

0.050.130.290.80

0000

0.030.040.010.12

1112

29

116

1111

2225

0.970.931.441.85

4.0816.8733.1310.42

6.466.846.15

16.61

7.638.157.94

70.71

————

0650793

[1000]'

————

502809

253

0.970.931.441.85

4.6630.4963.34

[32.19]

6.496.846.15

16.61

37.2331.1717.43

425.86

" I = percentage gap between lower and i upper bound beforetree search.

*MV8000 performance ratio: 6.3 seconds on MV8000 =1 second on IBM 3033U.

" Search is truncated. Stability failure occured in last masterproblem.

the results. After only one Cross Decomposition iter-ation, the remaining gap (eO is considerably smallerthan the one obtained with the dual ascent method ofGuignard and Spielberg that required several itera-tions.

6. Conclusion

This research provides evidence to show that the CrossDecomposition method yields substantial computa-

TABLE VI

Computational Results for Test Problems ofTable IV (Guignard and Spielberg 1979)"

ProblemNo.

12345

Cross

6

0.00.040.120.00.0

DecompositionAlgorithm

ITER

14921

0.02.84.10.30.0

Guignardand

SpielbergI

0.010.410.21.60.0

" ( = percentage duality gap; ci = percentage difference be-tween lower and upper bound after one Cross Decompositioniteration.

tional savings and allows for solving large capacitatedfacility location problems.

In particular, we give good computational resultsfor problems involving up to 100 candidate facilitylocations and 200 customers. We show that on acomparative set of test problems, the Cross Decom-position algorithm runs at least 10 times faster on theaverage than other approaches reporting on these testproblems. Additional computational tests verified thesubstantial value (at least 10 times in running time)of the Cross Decomposition method over a standardapproach using the same Lagrangean relaxation inconcert with Dantzig-Wolfe Decomposition orsubgradient optimization.

These results do not imply that Cross Decomposi-tion is a panacea that will solve all possible probleminstances. The capacitated facility location problem isNP-hard and hence one may reasonably expect thatthe method will fail on some problem instance. Inparticular, the duality gap of the Lagrangean relaxa-tion must be small, in which case Cross Decomposi-tion converges very rapidly to optimal or near optimalsolutions. Otherwise, after converging quickly duringthe initial iterations, the method boils down toBenders Decomposition or branch-and-bound, de-pending on the approach taken in step 4. However,

Dow

nloa

ded

from

info

rms.

org

by [

137.

132.

123.

69]

on 0

6 Ju

ne 2

014,

at 0

4:04

. Fo

r pe

rson

al u

se o

nly,

all

righ

ts r

eser

ved.

Page 16: A Cross Decomposition Algorithm for Capacitated Facility Location

whenever the problem does not have a suitable La-grangean relaxation with small duality gap, it is gen-erally recognized that the latter two approaches fail aswell. Further research to tighten problem formula-tions—for instance, by including facet-defming ine-qualities—is required in these circumstances.

Finally, we feel that a truncated Cross Decomposi-tion algorithm (without Step 4) can be useful as aheuristic method to solve various practical problems:it yields a feasible solution and a confidence intervalto measure this solution's quality.

Appendix

The following example will serve to illustrate variousalgorithms:

m = 4« - 3

1. 2' 3

4

demand

Per unit

1

1133

15

cost c!j

j2

0303

15

= Ci/d

33013

15

supplySi

25252525

fixedcost

f.404040

0

In the optimal solution, facilities 1 and 2 are open,and the optimal solution value is 95. Note that nofacility can be ruled out by elementary dominancerelations. So, for instance, each facility is the "least-cost-facility" for some customer, i.e., it minimizes thetotal assignment cost (variable plus fixed cost) if onlythis customer were to be assigned; e.g., the least-costfacility for customer 1 is facility 4 since the saidassignment cost of customer 1 for facilities 1, 2, 3 and4 is, respectively, 55, 55, 95 and 45.

Notation. We denote c/, = Cijdj, Xj = Xj/dj, vtj =Vij/dj and n' = Hi, which is the standard normalizationin transportation problems, obtained by substitutingXij/dj for Xij.

Example Part A: Benders Decomposition(See Section 1.2)

Iteration 1. Start with the primal subproblem with allfacilities open. The cells in the tableau give the unit

A Cross Decomposition Algorithm / 159

cost and the solution value.

Si 11'i

dj

15

-LJu3j

15

1

9l3j

15

15

0

oJ15

il3j

15

0

10

oJ10

0]10

oJ25

55

0

25

25

25

25

0

0

0

0

Cost= 120+ 15= 135Cut: 15 + 40yi + 40y2 +Here, we have v'ij = 0 for all ij in the optimal dualsolution. In the Example Part E we show how tostrengthen the Benders cut.

Master problem:minimize psubject to 15 + 40j'i + 40j'2 + 40y3 + 0^4 ^ P

25^1 + 25^2 + 25^3 + 25^4 > 45solution: (ties are broken lexicographically)y, = ; ' 4 = 1 , ^2 = ^3 = 0; p = 55.

Iteration 2. Primal Subproblem with facilities 1 and4 open.

ll10

ll

213j

5

15

3

oj15

iJ

oJ0

21

15

2

21

oJ0

ll

2115

15

3

oJ

oJfil

5

5

0

25

0

0

25

2

3

2

0

Cost = 40 + 70 = 110Cut: 120 - lOy, - 35^2 - 10^3 + 0^4 ^ P

As before, all vlj = 0.

Master problem:minimize psubject to 15 + 40y, + 40^2 + 40^3 + 0^4 =s p

120 - lOy, - 35y2 - 10y3 + Oy4 p25y, + 25y2 + 25y3 + 25y4 ^ 45

solution: y2 = y4 = 1, yi = y3 = 0, p = 85.

Dow

nloa

ded

from

info

rms.

org

by [

137.

132.

123.

69]

on 0

6 Ju

ne 2

014,

at 0

4:04

. Fo

r pe

rson

al u

se o

nly,

all

righ

ts r

eser

ved.

Page 17: A Cross Decomposition Algorithm for Capacitated Facility Location

160 / VAN ROY

Iteration 3. Primal Subproblem with facilities 2 and4 open.

iJ

IJ10

3j

3|5

15

3

oJ0

3j

oJ0

3j15

15

3

3j

oJ15

iJ3j

15

2

oJ

oJ

oJ

oJ5

5

0

0

25

0

25

3

2

3

0

Cost = 40-I-70 = 100Cut*: 120 - 35y, - 10y2 - 35^ + 0y4^pAs before all vlj = 0.

Master Problem:minimize psubject to 15 -I- 40yi + 40y2 + 40^3 -I- 0 4 « p120 - lOy, - 35y2 - lOyj + 0y4^p120 - 35yi - 10^2 - 35^3 + 0^4 < p25^1 -I- 25j;2 + 25^3 + 253 4 > 45

solution: yi = 32 = 1, >'3 = y4 = 0, p = 95.

Iteration 4. Primal Subproblem with facilities 1 and2 open.

ij10

iJ5

3j

3j

15

1

oJ15

3j

0

15

0

3j

oJ15

iJ

U

15

0

oJ

oj5

o|

o|0

5

0

25

25

0

0

0

0

0

0

Stop since p = 9.5Cost =80-1- 15 = 95.

Example Part B: Equivalence between theLagrangean Problem SD/t and the (Relaxed)Benders Master Problem MP/t (See Section 1.2)

Consider, for instance, /I = (0, 0, 0, 0). The cuts ofMP/2 are constructed using points (X, v, fi) with ^ = 0

that are dual feasible in SPj' for some y, i.e., pointsthat satisfy

X; ^ dj + Vij + djfii all /, j

fii = 0 a l l /•;

or

Xj ^ c!j + v'ij, and n! = 0 all /, j .

Some examples of cuts of this kind are:

1 ) fi' = 0 , v ' = 0 , X [ = 1 , X ^ = X ^ = O

cut: 15 + 40^1 + 40y2 + 40^3 + 0;;4 =s P

2) fi' = 0, vjj = 0 for all ij except j'23 = 1, X,' = X = 1,X = 0

cut: 30 -I- 40^1 -I- 25^2 + 40^3 + 0y4^ p

3) M' = 0, v'ij = 0 for all ij except V23 = " a = "32 = 1,x; = 1 for ally

cut: 45 + 25y, + 25^2 + 25^3 -I- 0^4 ^ P

4) fi' =0, v'ij = 0 for all ij except 1/23 = 3, v^ = 2, '32 =

5)

cut: 75 -I- 25yi - 5^2 - 5^3 + Oy4 < p

' = 0, v'ij = 0 for all ij except V32 = " 12 = 3, j'23 = 1,i = X3 = 1, X2 ^ 3

cut: 75 - 5yr + 25^2 - 5^3 -(- 0^4 « p

= 2, V23 =6) fi' = 0, v'ij = 0 for all ij except vi, ="32 = v',2 = I, X[ = 3, X2 = X3 = 1

cut: 75 - 5y, - 5^2 + 25^3 + 0^4 ^ p

. . . and many more.

Note that cut 2 dominates cut 1, and this is the onlydominance relation between cuts 1-6. Solving aBenders Master problem including the cuts 1-6, andthe surrogate constraint 2i 25y, > 45 yields p = 95. Inthis solution, the cuts 2 through 6 are active. More-over, for no solution is the left-hand sides of all thesecuts equal; in ther words, we need more than oneBenders subproblem to obtain these cuts. See alsoExample Part D.

Example Part C: Cross Decomposition (SeeSection 1.4)

Start. Solve primal subproblem with all facilitiesopen. Solution (see Example Part A, iteration 1):M = 0, cost = 135.

Iteration 1. Dual subproblem SDjj. with /i = 0. Solu-tion: y, = y2= 1, y3 = y4 = 0, cost = 80 -I- 15 = 95

Dow

nloa

ded

from

info

rms.

org

by [

137.

132.

123.

69]

on 0

6 Ju

ne 2

014,

at 0

4:04

. Fo

r pe

rson

al u

se o

nly,

all

righ

ts r

eser

ved.

Page 18: A Cross Decomposition Algorithm for Capacitated Facility Location

A Cross Decomposition A Igorithm / 161

(note that ties were broken lexicographically; there isan alternative optimal solution with facilities 2 and 3open).

Iteration 2. Primal subproblem with facilities 1 and 2open. Solution (see the example of Benders Decom-position, iteration 4): M = 0, cost = 95. Stop sincelower bound = upper bound.

Note: Suppose ties were broken differently in iteration1, with solution y2 = y-i = \, y\ = yA = 0. Then thereader may verify that the primal subproblem withfacilities 2 and 3 open yields M = (1, 1, 0, 0), at a costof 100, and the next dual subproblem with ii = {\, 1,0, 0) yields as an optimal solution y\= y2= ^,y3 = y*= 0 at a cost of 90 and fmally, the primal subproblemwith facilities 1 and 2 open yields M = 0 at a cost of95, so that the algorithm is stopped since lower bound= upper bound = 95.

Example Part D: Verification of Optimality byBenders and Cross Decomposition (SeeSection 1.4)

Given the optimal primal subproblem solution forfacilities 1 and 2 open:

10

iJ5

3j

3j

15

1

oJ15

oJ0

15

0

3j

oJ15

iJ3j

15

0

oJ

oJ5

oJ0

5

0

25

25

0

0

0

0

0

0

Cost = 80+ 15 = 95.

The question is whether we can verify optimality.

a) Verification of optimality by cross decomposition:Solving (SD/i) with fi = (0, 0, 0, 0) yields v{SDn)

= 95, and demonstrates optimality.b) Verification of optimality by Benders decomposi-

tion without strengthening of cuts:Example Part A shows that optimality is verified

after 3 iterations (3 master problems to be solved).c) Verification of optimality by Benders decomposi-

tion with strengthening of cuts:Below we list the nondominated cuts derived

from all optimal dual basic solutions (X, v, n) ofthe primal subproblem with facilities 1 and 2 open.All solutions have M = 0. Notice that the 6th cutof Example Part B does not correspond to anoptimal solution and hence is not in the followinglist.

30 + 40j;, + 25y2 + 40: 3 + 0 4 ^ p for X' = (101)45604560756075759090

105

+ 40.V1 + \0y+ 40yi - 5^2+ 25^1 + 25y

+ IO.V1 + 25y- 5.F1 + 25^2+ 25>', + 10.V+ 25^1 - 5:t 2+ 10>'i + \Qy+ lOyi — 5^2- 5yi + 10;;2— 5yi — 5>'2 -

'2 + 25,+ \0y•2 + 25,

2 + 10

- 5 ^ 32 + 10

- 53 3

'2 - 5y

- 2 0 y- 20>'

-35^3

y-i + y>y

3 + 0>'4

^3 + Oyy-i + Oy

+ 0^4*

+ 0>'4 S

3 + 0>'4

3 + 0^4

3 + O.F4

+ 0^4*

4 ^ P« P

4 « P4 « P= P

4 ^ P

= P« P

^ P

^ P

' P

(102)(103)(111)(121)(131)(112)(113)(122)(123)(132)(133)

A feasible solution is given by yi = 2 = 1, ) 3 = J'4 =0 and yields 95 as the left-hand side for each of thelisted cuts. However, the master problem

minimize psubject to 25yi + 25^2 + 25^3 + 45 and (6)

yields as an optimal solution j i = 2 = 0, ^3 = >'4 = 1,with p = 70. This result is not sufficient to verifyoptimality, since there is still a significant gap betweenthe lower bound (70) and the current upper bound(95). Thus more than one iteration is needed here byBenders Decomposition, even when loading all theBenders cuts of the current subproblem.

Example Part E: Benders Decomposition withStrong Cuts (See Section 4)

Iteration 1. Start with the primal subproblem with allfacilities open.

15

iJ

u3J

15

1

oJ

UoJ

15

U

15

0

3j

oJ15

iJ

3J

15

0

oJ10

oJ10m10

B25

55

0

25

25

25

25

0

0

0

0

Cost= 120+ 15= 135Cut: 15 + 40^1 + 40>'2 + +

Dow

nloa

ded

from

info

rms.

org

by [

137.

132.

123.

69]

on 0

6 Ju

ne 2

014,

at 0

4:04

. Fo

r pe

rson

al u

se o

nly,

all

righ

ts r

eser

ved.

Page 19: A Cross Decomposition Algorithm for Capacitated Facility Location

162 / VAN ROY

Master problem:minimize psubject to 15 + 40yi + 40^2 + 40j'3 + 0 4 < p

25y, + 25^2 + 25y3 + 25^4 > 45solution: y\= yi= 1, 2 = y3 = 0, p = 55.

Iteration 2. Primal subproblem with facilities 1 and 4open.

]110

iJ3j

3j5

15

3

2JI 1 53j

oJ0

3j

15

2

3j

2J0

iJ3j

15

15

3

oJ2J2J

5

5

0

25

0

0

25

2

3

2

0

Cost = 40+ 70= 110Cut: 120 - lOy, - 35j;2 - lOys + 0 4 ^ Pafter strengthening with i'23 = 1, M2 = 2:120 - lOy, - 25^2 - 10y3 + 0 4 « p.

Master problem:minimize psubject to 15 + 40yi + 40>'2 + 40y3 + Oy4 ^ p

120 - lOy, - 25y2 - 10y3 + Oy4 < p25y, + 25y2 + 25y3 + 25y4 ^ 45

solution: yi = y2 = 1, y3 = y4 = 0, p = 95.

(Note that ties were broken lexicographically. There isan alternative optimal solution with facilities 2 and 4open, and another one with facilities 2 and 3 open.)

Iteration 3. Primal subproblem with facilities 1 and 2open. Cost = 95 (see the example of Benders Decom-position, iteration 4). Stop since lower bound = upperbound.

Note:1. Suppose ties were broken differently in the mas-

ter problem of iteration 2 with solution y2 = y-i= 1, yi = ^4 = 0. Then the reader may verifythat the primal subproblem with facilities 2 and3 open yields y.' = {\ 1 0 0), X' = (2 0 1 0),y' = 0, or after strengthening ^ ' = (1 1 0 0),X' = (2 0 1 0), v'ij = 0 for all ij except vU = 1,yielding the cut

45 + 15yi + 15^2 + 40y3 + Oy^ « p;

then the next master problem yields yi = y2 = 1,y3 = y4 = 0, p = 95 as a unique minimizer, and,

fmally, the primal subproblem with facilities 1and 2 open yields a cost of 95, so the algorithmcan be stopped.

2. One iteration is saved with respect to the Bendersmethod without strengthening of cuts (see Ex-ample Part A).

Acknowledgment

The author gratefully acknowledges the constructivecomments of Professors D. Erienkotter and A. M.Geoffrion, and two anonymous referees.

A first version of this paper was presented at theORSA/TIMS meeting in Washington, D.C., May1980. Part of this work was done while the author wasat the University of California at Los Angeles, and atthe Katholieke Universiteit Leuven, Belgium. Themain algorithm and computational results as shownin Table I (except for the results by Christofides andBeasley 1983) appeared in the two earlier versions ofthis paper: in May 1980 as Report 80-8a, KatholiekeUniversiteit Leuven, Department of Industrial Man-agement, and in March 1983 as CORE DiscussionPaper 8320, Universite Catholique de Louvain.

References

AKINC, U., AND B. M. KHUMAWALA. 1977. An EfficientBranch and Bound Algorithm for the CapacitatedWarehouse Location Problem. Mgmt. Sci. 23,585-594.

BENDERS, J. F. 1962. Partitioning Procedures for SolvingMixed Variables Programming Problems. Numer.Math. 4, 238-252.

BRADLEY, G. H., G. G. BROWN AND G. W. GRAVES.1977. Design and Implementation of Large ScalePrimal Transshipment Algorithms. Mgmt. Sci. 24,1-34.

CHRISTOFIDES, N. , AND J. E. BEASLEY. 1983. Extensionsto a Lagrangean Relaxation Approach for the Ca-pacitated Warehouse Location Problem. Eur. J.Opns. Res. 12, 19-28.

CLASEN, R. J. 1965. Using Linear Programming as aSimplex Subroutine, Paper 3267. The RAND Cor-poration, Santa Monica, Calif.

CONNORS, W. D., J. H. FLORKOWSKI AND S. K. PATTON.1979. The IBM 3033: An Inside Look. Datamation25, 198-218.

DANTZIG, G. B., AND P. WOLFE. 1960. DecompositionPrinciple for Linear Programs. Opns. Res. 8,101-111.

DAVIS, P. S., AND T. L. RAY. 1969. A Branch and BoundAlgorithm for the Capacitated Facilities LocationProblem. Naval Res. Logist. Quart. 16, 331-343.

Dow

nloa

ded

from

info

rms.

org

by [

137.

132.

123.

69]

on 0

6 Ju

ne 2

014,

at 0

4:04

. Fo

r pe

rson

al u

se o

nly,

all

righ

ts r

eser

ved.

Page 20: A Cross Decomposition Algorithm for Capacitated Facility Location

A Cross Decomposition Algorithm / 163

ERLENKOTTER, D. 1978. A Dual-based Procedure forUncapacitated Facility Location. Opns. Res. 26,992-1009.

FISHER, M. L. 1981. The Lagrangean Relaxation Methodfor Solving Integer Programming Problems. Mgmt.Sci. 27, 1-18.

GEOFFRION, A. M., AND R. MCBRIDE. 1978. LagrangeanRelaxation Applied to Capacitated Facility LocationProblems. AIIE Transact. 10, 40-47.

GLOVER, F., D . KARNEY, D . KLINGMAN AND A. NAPIER.1974. A Computation Study on Start Procedures,Basic Change Criteria, and Solution Algorithms forTransportation Problems. Mgmt. Sci. 20, 793-813.

GUIGNARD, M., AND K. SPIELBERG. 1979. A Direct DualMethod for the Mixed Plant Location Problem withSome Side Constraints. Math. Program. 17,198-228.

KLINGMAN, D., A. NAPIER AND J. STUTZ. 1974. NET-GEN—A Program for Generating Large Scale(Un)capacitated Assignment, Transportation andMinimum Cost Network Flow Problems. Mgmt. Sci.20,814-822.

MAGNANTI, T. L., AND R. T. WONG. 1981. AcceleratingBenders Decomposition: Algorithmic Enhancementand Model Selection Criteria. Opns. Res. 29,464-484.

NAUSS, R. M. 1978. An Improved Algorithm for the

Capacitated Facility Location Problem. / Opns.Res. 29, 1195-1202.

RARDIN, R. L , AND V. E. UNGER. 1976. Some Compu-tationally Relevant Group Theoretic Structuresof Fixed Charge Problems. Math. Program. 10,379-400.

SA, G. 1969. Branch-and-Bound and Approximate So-lutions to the Capacitated Plant-Location Problem.Opns. Res. 17, 1005-1016.

ScHRAGE, L. 1975. Implicit Representation of VariableUpper Bounds in Linear Programming. Math. Pro-gram. Study 4, 118-132.

SCICONIC/VM, User Manual, Scicon Computer Ser-vices Ltd.

VAN ROY, T . J. 1980. Cross Decomposition for Large-Scale, Mixed Integer Linear Programming withApplication to Facility Location on DistributionNetworks. Doctoral thesis, Katholieke UniversiteitLeuven.

VAN ROY, T . J. 1983. Cross Decomposition for MixedInteger Programming. Math. Program. 25, 46-63.

VAN ROY, T. J., AND D. ERLENKOTTER. 1982. A DualBased Procedure for Dynamic Facility Location.Mgmt. Sci. 28, 1091-1105.

VAN ROY, T . J., AND L. GELDERS. 1981. Solving aDistribution Problem with Side Constraints. Eur. J.Opnl. Res. 6, 61-66.

Dow

nloa

ded

from

info

rms.

org

by [

137.

132.

123.

69]

on 0

6 Ju

ne 2

014,

at 0

4:04

. Fo

r pe

rson

al u

se o

nly,

all

righ

ts r

eser

ved.

Page 21: A Cross Decomposition Algorithm for Capacitated Facility Location

Dow

nloa

ded

from

info

rms.

org

by [

137.

132.

123.

69]

on 0

6 Ju

ne 2

014,

at 0

4:04

. Fo

r pe

rson

al u

se o

nly,

all

righ

ts r

eser

ved.