Comput. & Indus. Engng Vol. 10, No. 4, pp. 283-290, 1986
0360-8352/86 $3.00 + 0.00 Pergamon Journals Ltd
Printed in Great Britain
A CROSS DECOMPOSITION PROCEDURE FOR THE FACILITY LOCATION PROBLEM WITH A CHOICE OF FACILITY TYPE
CHUN-BEON YOO and
DONG-WAN TCHA
Korea A d v a n c e d Institute of Science and Technology, P. O. Box 150, Cheongryang, Seoul, S. Korea
(Received for publication 15 April 1986) Abstract - - Consider a capacitated facility location problem in which each customer is a s s u m e d to have a unit d e m a n d , and each facility capacity has to be chosen from the given set of admissible levels. U n d e r the restriction that each customer's unit d e m a n d be met by exactly one facility, the objective is to select a set of facilities to open, along with their capacities, and to assign customer's d e m a n d to them so as to minimize the total cost which includes fixed costs of opening facilities as well as variable assignment costs. The problem is modelled as a pure 0-1 program which extends the scope of applicability significantly over that by conventional location models. Based on Cross Decomposition recently developed by Van Roy, a solution procedure is proposed, which exploits the special structure of the problem. Computational results with a set of test problems shows the superiority of our solution procedure to other related ones.
1. I N T R O D U C T I O N
1.1. Formulation of the problem Consider a set of customers indexed by I = {1 . . . . , n}, each with a unit demand, and a set of possible facility sites indexed by J = {1, . . . , m} where the capacity of facility j can be chosen from among {bjk: k e K = {1 . . . . . p}}. Each customer's unit demand is fulfilled by exactly one facility, and the total demand assigned to each facility does not exceed its capacity. Our problem is then to select a subset of facility sites to open, along with their capacities, and to assign customers' demand to them, so as to minimize the cost of opening facilities and assigning customers' demand. Let cq denote the cost of assigning customer i to facility j, and )~k denote the fixed cost of opening facility j with capacity bjk. With the decision variables defined as 1 if customer i is assigned to facility j, Xij =
YJl"=
0 otherwise;
{1
if facility j with capacity bjk is opened,
0 otherwise,
the location problem with a choice of facility capacity can be formulated as a pure 0-1 integer linear programming problem: (P)Min E Z
cOxij+ Z E fjkYik
i~Ij~J
s.t.
(1)
j~Jk~K
~ xij = 1
V
icl,
(2)
j~J
Z xij <~ Z bjk Yjk i~I
V j c J,
(3)
k~K
Yjk ~< 1 k~K
283
V j ~ J,
(4)
284
('ltl ~,-L~I~N YOO zlnd I)f.)N(I-V¢;\NT(IIA
x,je {0,1}
V i6l, jcJ,
(5)
))k 6 {0,1}
V ]6J, k~K.
(6)
Constraints (2) require that each customer be assigned to one facility; constraints (3) ensure that the total number of customers assigned to each facility does not exceed its capacity; and constraints (4) require that at most one capacity be selected for each established facility ]. Note that the formulation P is different from most other capacitated facility location models in that the allocation variables are restricted to be 0-1. As observed by Barcelo and Casanovas [2], such 0-1 formulation generally increases problem complexity, which may not be the case here. However it can reflect the commonly occurring real-world situations that each customer's demand should be met from only one facility, or a task must be completed by only one agent. It is also noteworthy that the formulation P is sufficiently general to accommodate the fixed cost variation in relation to facility capacities or types, which has been rather neglected in the literature as compared to its practical significance.
1.2. Related works and applications Though there exist many works closely related to P in the literature, most of them have dealt with simpler formulations. Only a limited number of researchers mentioned formulations similar to P, but without showing solution procedures and/or computational results. Among them, we will introduce only several studies which seem to be most related to our problem. Mirzaian[6], using Lagrangean techniques, has dealt with essentially the same problem as ours, but with the limited scope of fixed facility capacities. Neebe and Rao[7] considered what they call "the fixed-charge assigning users to sources problem" whose model is equal to P. Their branch and bound algorithm was initially developed to solve the simple case of a given fixed-charge, or the problem with fixed facility capacities in our terminology. They then showed that the algorithm can also be applied to the more general case of variable fixed charge, or our problem with a choice of facility capacities, without providing any computational results. Another interesting study was made by Ross and Zoltner[8] who presented a general formulation of the weighted assignment problem, along with a list of a variety of integer programming models which can be viewed as its application. The list includes what they call "a variable agent-variable capacity location model" which is slightly more general than the model P. This implies that P can be solved as a weighted assignment problem. Recall that the model P, unlike the usual capacitated facility location problem, has 2 outstanding properties: (1) Ability to choose facility capacities, and (2) single assignment of a customer to a facility. This makes the model P well suited for a variety of practical application areas such as facility siting, capacity expansion, task assignment, scheduling, etc. Now we shall emphasize its versatility by presenting one illustrative example in computer network design. Given a large number of terminal locations, potential concentrator locations and one central site, consider the problem of designing a minimal cost tree network which connects all terminals to the central site, either directly or via a concentrator. This problem has been referred to as a concentrator location problem, and has been studied for the case of fixed concentrator capacities by many researchers[I, 3, 6, 9]. Although some researchers[l, 3], observing the practice that the use of concentrators of different capacities is rather common, stressed the need for the consideration of the general case with multiple capacities, a good algorithm for it has not been reported as yet. 2. CROSS D E C O M P O S I T I O N S O L U T I O N M E T H O D
The Cross Decomposition (CD) method developed by Van Roy[10] unifies Benders' decomposition and Lagrangean relaxation into a single framework that involves succes-
A cross decomposition procedure for the facility location problem
285
sive solutions to a Benders' (primal) subproblem and a Lagrangean (dual) subproblem. Since its announcement, it has received increasing research attention as a powerful tool for solving a class of mixed integer programs with special structures. As in several cases[5, 11] for which CD has been successfully implemented, P has the primal substructure of a transportation problem and the dual substructure exploitable via Lagrangean relaxation. In the following 2 subsections, we will show how both primal and dual subproblems are derived in the form well suited for CD implementation by exploiting the special structure of P.
2.1. Primal (Benders') decomposition A primal subproblem is obtained by fixing in P the variables Yjk at 0 or 1. For given feasible {)7jk}, the primal subproblem can be written as: (SP)
Min 2 2 cax~j+ • i~ljeJ
• fi, Yik
(7)
jEJk~K
g iel,
s.t. ~ xa= 1
(8)
jeJ
2 x~j~< Z bjzqj, i6l
V j ~ J,
(9)
k~K
xij6 {0,1}
V i~l,j~J.
(10)
which is a transportation problem. Among several well-known solution methods for transportation problems, the out-of-kilter algorithm is employed to solve SP in our procedure, mainly due to its computational efficiency in obtaining a dual solution by slightly modifying that of the preceding iteration. Note that in CD implementation, the solution of SP provides an upper bound for the optimal objective function value of P as well as Lagrangean (dual) multipliers with which the primal (Benders') cuts and the dual (Lagrangean) subproblem are generated.
2.2 Lagrangean relaxation (dual decomposition) Consider the following generalized variable upper bound constraints:
xa ~ Z Yj,
V i-l,j-J,
(11)
kEK
requiring that no user be served from closed facilities. Note that the constraints are redundant to P; but they, if added to P, bring forth a tightening effect on the linear programming relaxation. Thus in this section, we deal with the alternative, but equivalent, form of P in which the above constraint is included. Associating Lagrangean multipliers v4 with the constraints (3), we obtain the following dual subproblem: (SD)
Min Z Z (c,j + ~) x~i + 2 i~lj~.J
s.t. ~
Z ~k - bjk vj) Yik
(12)
j6Jk~K
Xij =
1
V iel,
(13)
jEJ
xiJ <~ ~ Yik
V i~l, jeJ,
(14)
k~K
Z yj, ~< 1
v j~j,
(15)
k6K
Z Z bjkYjk >- n, j~Jk~-K
(16)
286
( ' l i t X-BI()N Y o o and DON(;-\\AN T('IIA
V i6l, j6J,
(17)
V j~J,k~K.
(18)
xii6 {0,1 } yjk ~ {(),1}
SD contains the surrogate constraint (16) which enforces the solution {xq, Yjk} of SD to meet the feasibility condition that total supply should not be less than total demand. Recall that in Cross Decomposition the solution of SD, besides providing a lower bound, is used to generate the associated primal subproblem which should be feasible, and a set of dual master cuts. Excluding the surrogate constraint (16), SD takes the form of an ordinary uncapacitated facility location problem (UFLP), for which the dual-based solution method in [4] is to date known to be most powerful. Now associating the dual variables ui, wq and r with the constraints (13), (14) and (16) respectively, and by letting wq = max{0, ui - (c0 + vj)), we have the following condensed dual of the linear programming relaxation of SD: (DSD)
Max )~ ui+nr
(19)
i~l
s.t. )~ max{O, ui-6q} <~k--bjkr
vj6J, keK,
(20)
iel
ui:unrestricted
V iE1, r I> 0.
(21)
where fj, = fjk - bjkvj V j 6 J , k e K and cij = cq + vj V i6l, j6J. Once r is given, the above dual problem ~ reduces to a condensed dual of a relaxed linear programming of an ordinary UFLP for which the well known dual-based method is directly applicable. Based on this observation, we let our solution method consists of 2 phases: the first determining the value of r which satisfies the surrogate constraint (16), and the second implementing dual-based method with given r. The first phase is similar to the binarytype search by Van R o y [ l l ] , which is based on the property, due to the constraints (20), that the number of open facilities increases (decreases) as r increases (decreases). Once r is given upon the completion of phase 1, the size of the resulting UFLP is drastically reduced to that with fixed facility capacity by the following transformation: If min {fjk} < 0 for_some j~J, then Yih is fixed to 1 where h = arg min{fjk}. Otherwise, set ~ = min {fjk - bjkr} V jEJ and eliminate row k~ { K \ k ' } for each jEJ from the constraints (20) where k' = arg min ~ k - bikr} for each jeJ.
2.3. Outline of the cross decomposition algorithm We now have 2 subproblems with special structure along with the solution procedures exploiting those special structures. The flowchart of Fig. 1 shows how the CD solution method iterates between the 2 types of subproblems. A solution {Yjk} to SD is used for constructing the corresponding primal subproblem SP, while the dual solution {v/} to SP is used for the corresponding dual subproblem SD. Both subproblems thus generated are solved successively until the optimality criterion is achieved or a convergent test fails. If the latter case happens, the dual master problem is chosen to be dealt with so as to give a new set of dual multipliers {v~} with which the next dual subproblem is generated. Note that while the primal master problem is a mixed integer program which is difficult to solve, the dual of the dual master problem is a so-called Dantzig-Wolfe master problem:
(DMD)
Min ~ )~,{ )~ ~ cqx~.+ )~ )~ £ky/kI t~Tql~
iEIj~J
je.lkEK
)
(22)
A cross decomposition procedure for the facility location problcna
287
Initialization ] V.
i" Solve the Dual
J
Subproblem : SD
Yjk
No ~.P~ LI~ ~.~nvergenc/%> ~Tes~- / Yes Solve the primal Subproblem : SP
Dual
Yes
'I No
V~o
Solve the Dual MD Master Problem :
Yea
@''
I Branch and Bound Phase] xiJ'Yjk
Fig. 1. Conceptual flow chart for the algorithm.
E
k,= 1,
(24)
t 6 TSI)
k~ i> 0,
V t e ~t).
(25)
which is a linear programming problem. When the gap between upper and lower bounds obtained from both subproblems remains persistent after a certain number of iterations, the branch and bound (b&b) phase is activated to close the gap. For the forthcoming computational experience, we shall distinguish the solution procedure before the b&b phase by calling it "the CD heuristic". In the b&b phase, branching is made on the variable fj with the smallest ~ - ~max{0,. /~/i -- C~[}] V jeJ where //i is the best dual subproblem solution on hand. As fo~"node selection rule, the last-in-first-out (LIFO) rule is used, which generally requires less storage space. The flowchart of Fig. 1 sketches briefly our CD method. For details, refer to [11]. 3. COMPUTATIONAL RESULTS
The CD procedure suggested in Section 2 was coded in FORTRAN IV and run on the CYBER 174-016 at KAIST. The main constituents of the program are the following 3 subroutines: an out-of-kilter procedure for solving the transportation subproblem, a dual based procedure for the Lagrangean subproblem, which is obtained by slightly modifying that of Van Roy[ll], and a revised simplex code for the dual master problem. The code consists of approximately 1300 lines, and its listing will be provided upon request.
288
CIILIN-BI!ON Y o o a n d DONG-W,XN T ( I I A
Since we could not find the standard set of test problems available in the literature, a number of randomly generated problems were set up. The dimension (n x m x p) of test problems range from 20 × 10 × 1 to 50 × 20 x 5, so that its scale is comparable to that of single capacity problems in Mirzaian[6]. Fixed costs, ~k, of opening facilities were generated in the range of $100-$200 by taking into account the economy of scale factor. All the variable costs, Cgi, which are the costs of assigning a customer to a facility, were also randomly generated in the range of $10-$100. This assignment of positive costs implies that the density of arcs is 100% full in each test problem. Test runs with our code were made with 2 types of problems: the first with a choice of facility capacities, and a second with fixed facility capacities. The second type was included simply for the purpose of comparison with other existing computational result. Table 1. C o m p u t a t i o n a l results for multiple capacity cases
Dimcnsion (n x rn x p)
Facility t capacities bik's
CD-hcuristic Lower Upper bound bound
20 × 10 × 3 211 × 10 × 3 20 x 10 x 4
3, 5, 7 5, 7, 9 3, 5, 7, 9
906 888 91X)
411 x 10 x 3 40 x 111 x 3 40 x 10 x 4
5, 7, 9 7, 9, 11 3, 5, 7, 9
40 × 15 × 3 40 × 15 × 3 40 x 15 x 4
Branch & bound Optimal CPU wduc time e
CPU time z
c (°A)~
924 899 924
0.18 0.19 I).18
1.95 1.22 2.59
924 899 924
7.71 8.45 8.117
15911 1484 1485
1641 1543 1580
1.58 1.57 2.53
3.10 3.82 6.1111
1633 1543 1525
8.31 9.117 12.91
3, 5, 7 5, 7, 9 3, 5, 7, 9
17112 15111 1552
1746 1576 16111
1.91 1.69 1.71
2.52 4.18 3.60
1738 1576 161(1
14.112 13.67 14.76
41/ x 20 x 3 40 × 20 x 3 40 x 20 x 4
3, 5, 7 5, 7, 9 3, 5, 7, 9
15/17 1412 1454
1544 1484 1536
2.79 2.72 2.77
2.39 4.85 5.33
1544 1483 1493
13.57 11.04 13.87
50 x 10 x 3 50 × 10 × 3 50 × 1(1 x 4
5, 7, 9 7, 9, 11 5, 7, 9, l l
1851 1784 1826
1895 1858 1916
3.93 4.112 3.99
2.32 3.98 4.69
1884 1858 1846
17.53 16.84 16.72
50 × 15 x 3 50 x 15 x 3 50 × 15 x 4
5, 7, 9 7, 9, 11 5, 7, 9, 11
t899 1738 1868
201/) 1863 2001
4.29 4.20 4.17
5.52 6.70 6.64
1944 1863 1885
18.34 21.46 18.65
50 x 211 x 3 50 x 20 x 3 5(I x 20 × 4
3, 5, 7 5, 7, 9 3, 5, 7, 9
1915 1795 1768
1953 1839 1861
3.79 4.34 4.34
1.94 2.39 4.99
19211 1832 1829
20.33 22.52 22.68
~Set of admissible levels of facility capacity. 2CPU time in seconds on C Y B E R 174-(116 excluding 1/O time. 3Accuracy m c a s u r e of ( [ U B - L B ] / U B x 100%).
Table 1 shows a brief summary of the first type test problems. For each problem, the lower bound (LB) and the upper bound (UB) generated by the CD heuristic are listed along with its running time. The accuracy measure of [ ( U B - L B ) / U B ] x 100% is also included to demonstrate the effectiveness of the heuristic. These measures reported show that the performance of the CD heuristic seems to be somewhat affected by the problem structure while indifferent to its size. Also provided in Table 1 are the optimal solutions and running times reported by the branch and bound procedure which employs both bounds generated by the CD heuristic. Note that the tightness of both bounds by the heuristic results in a relatively moderate amount of increase in CPU time for the branch and bound phase over that for the heuristic. In fact, for the branch and bound phase, the majority of CPU time is spent on verifying the optimality of the solution already obtained in its early stage for each test problem. Unfortunately, we were unable to find other published computational results for the problem P with which the performance of our method can be compared. However we may conclude that the performance of our CD method is quite satisfactory considering the solution quality and the computational requirement. For the second type problems with fixed facility capacities, there exists a work by Mirzaian[6] with which our computational results can at least be partially compared. Table 2 shows a brief summary of the second type problems and the same kinds of results as in Table 1. In the last column of Table 2, listed for some test problems are the
A cross decomposition
289
procedure for the facility location p r o b l e m
magnitudes of accuracy measure that Mirzaian has shown for his test problems of corresponding dimension in his paper[6]. Since our problems are structurally different from his problems, direct comparison of both methods based on the reported magnitudes of accuracy measure may not be fully justified. However,Table 2 shows that the magnitudes with our CD heuristic are consistently smaller than those with Mirzaian's method[6] except in one case. We thus claim that the quality of solutions by our CD heuristic is generally superior to that by Mirzaian. Table 2. Computational results for fixed capacity cases
n x m
b~
Branch & bound
CD-hcuristic
Optimal
CPU
Lower
value
time 2
Mirzaian heuristic 3
bound
Upper bound
CPU timc 2
c (%)
c (%)
20 x 10
3 5 7 9
1391 993 884 884
1.34 0.48 11.32 11.33
1381! 993 884 884
1391 993 884 884
0.42 0.48 11.32 /I.33
0.79 0.00 0.00 0.111i
0.00 0.00 0.00 I
40 x 10
5 7 9
1906 1696 1539
2,95 4.20 3,71
1883 1646 1522
1910 1650 1545
1.25 1.37 1.411
1.41 0.24 1.49
-I --
40 x 20
3 5 7 9
2533 1688 1473 1402
11.48 7,83 9.08 1,84
2530 1680 1465 14112
2544 1688 1473 1402
3.56 1.91 2.45 1.84
0.55 0.47 0.54 0.00
2.79 2.42 0.86 --
50 x 10
6 7 9
2245 2099 1854
4.45 6.01 3.84
2244 2097 1853
2266 2099 1863
1.58 2.57 1.37
0.97 11.01 0.54
----
50 x 15
5 7 9
2299 2037 1889
12.24 7.77 1.89
2295 2037 1889
2299 2(161 1889
6.01 2.17 1.89
11.17 1.16 0.00
I -I
50 × 20
3 5 7 9
32118 2157 1923 1709
16.23 13.19 17.01 10.99
3196 2134 19(19 17115
3211 2157 1923 171/9
5.25 3.114 3.1t11 3.01
0.47 1.117 0.72 0.23
0.54 2.35 0.72 --
~The capacity given fixed for all facilities. 2CPU time in seconds on C Y B E R 174-1116 excluding 1/O time. 3The magnitude of accuracy mcasurc (c%) that Mirzaian has shown for his tcst problem of the same dimension in his paper [6].
Dashes indicate that corresponding information is not available.
Mirzaian did not mention the computational requirement, and thus there seems to be no means to illustrate the computational efficiency of our method. But from the complexity of the problem P we are dealing with and the relatively small CPU times, the CD method is certainly one of the most efficient approaches for handling the problem P and others with similar structures. 4. C O N C L U D I N G
REMARKS
We have considered a capacitated facility location problem wherein facility capacities can be chosen from a set of predetermined levels, and each customer's demand should be met by exactly one facility. This general formulation offers a new range of applications such as task assignment, scheduling, computer network design, etc., which was not allowed by most of the conventional facility location models. Exploiting the special primal and dual structure of the problem, we have proposed a solution procedure based on the Cross Decomposition by Van Roy[10]. Computational experiments with a randomly generated set of test problems has been conducted. The results were generally satisfactory considering the complexity of our problem. Finally, consider an extended version of our model wherein the seemingly restrictive assumption that all customens' demands are unitary or uniform is relaxed. It is interesting to point out that our CD solution method can be effectively applied for this general problem with few modifications by introducing as many dummy customers as the amount exceeding one unit of each customer's demand.
290
( ' l l t r g - I I I o ~, Y o o a n d I)()Y(;-\'~ ~,N "I'~ It \
REFERENCES 1. L. R. Bahl and D. T. Tang. Optimization of concentrator locations in teleprocessing networks. Symp. on Computer-Communications Networks and Teletraffic, 355-362, Polytechnic Institute of Brooklyn (1972). 2. J. Barcelo and J. Casanovas. A heuristic Lagrangean algorithm for the capacitated plant location problem. Eur. J. Opl Res. 15,212-226 (1984). 3. H. G. Dysart and N. D. Georganas. NEWCLUST: an algorithm ti)r the topological design of two-level, multi-drop teleprocessing networks. 1. E. E.E. Treaty Commun. COM-26(I), 55-62 (1978). 4. D. Erlenkotter. A dual-based procedure for uncapacitated facility location. Ops Res. 26(6), 992-1(109 (1978). 5. K. Holmberg and K. O. Jornsten. Cross decomposition applied to the stochastic transportation problem. Eur. J. Opl Res. 17,361-368 (1984). 6. A. Mirzaian. Lagrangean relaxation for the star-star concentrator location problem: approximation algorithm and bounds. Networks 15, 1-20 (1985). 7. A. W. Neebe and M. R. Rao. An algorithm for the fixed-charge assigning users to sources problem, J. Opl Res. Soc. 34(11), 1107-1113 (19831. 8. G. T. Ross and A. A. Zoltners. Weighted assignment models and their application. Mgmt Sci. 25(7), 683-696 (1979). 9. D. T. Tang, L. S. Woo and L. R. Bahl. Optimization of teleprocessing networks with concentrators and multiconnected terminals. 1. E. E.E. Treat), Comput. C-27(7), 594-604 (1978). 10. T. J. Van Roy. Cross decomposition for mixed integer programming. Mathl Prog. 25, 46-63 (1983). 11. T. J. Van Roy. A cross decomposition algorithm for capacitated facility location. Ops Res. 34(1), 145-163 1986).