Вы находитесь на странице: 1из 11

A 5-approximation for facility location with non-uniform capacities

, Manisha Bansal2 , Naveen Garg1 , and Neelima Gupta2


1

Indian Institute of Technology Delhi 2 University of Delhi

Abstract. In this paper, we propose and analyse a local search algorithm for approximating non-uniform capacitated facility location problem which is a modication of the algorithm for the same problem by Zhang et al [7]. They showed that the solution obtained by their algorithm is within a factor of (6,5) of the value of an optimal solution. We improve this approximation ratio to (5,5). We modify their close and multi operations such that apart from the demand of facilities being closed, some more demand served by other facilities in the current solution can be reassigned to utilize the facilities opened by the operation in a better/ecient way. The idea of taking linear combinations of inequalities used in Aggarwal et al [1] is crucial in achieving this result. The analysis is tight for this algorithm.

Introduction

In a facility location problem we are given a set of clients C and facility locations F . Each facility i F has a facility cost fi (the facility cost). The cost of servicing a client j by a facility i is given by ci,j (the service cost) and these costs form a metric i.e. for facilities i, i and clients j, j , ci ,j ci ,j +ci,j +ci,j . The objective is to select a subset S F , so that the total cost for opening the facilities and for serving all the clients is minimized. A client can be served by an open facility only. When the number of clients that a facility i can serve is bounded by ui , we have capacitated facility location problem(CFLP). If ui is same for all the facilities then the problem is called Uniform capacitated facility location problem. We are interested in Non-uniform capacitated facility location problem, in which capacity may be dierent for dierent facilities. We do not require that all the demand from a client be served by a single facility. For the problem of uniform capacities Korupolu et al [3] showed that a simple local search heuristic proposed by Kuehn and Hamburger [4] provides a constant factor approximation. Chudak and Williomson [2] improved on the analysis of the same heuristic to show that this local search algorithm gives a 5.83 approximation. Aggarwal et al [1] further improved the factor to 3 in which they
Work done as part of the Approximation Algorithms partner group of MPIInformatik, Germany

introduced a new approach for analysis in which they take a linear combination of ineqalities( capturing local optimality) instead of just taking sum of these ineqalities. We have used similar ideas for the problem of non-uniform capacities. We also modify close and multi operations of Zhang et al such that apart from the demand of facilities being closed, some more demand served by other facilities in the current solution can be reassigned to utilize the facilities opened by the operation in a better/ecient way. Whereas in all prvious work on CFLP with non uniform capacities, reassignment of clients is done for only those clients which were being served by the facilities closed in an operation. Also while analysing the cost of an operation we assign clients fractionally to the facilities. This assignment cannot be better than the optimum assignment. The rst local seacrch heuristic for non-uniform capacities problem was due to Pal, Tardos and Wexler [6] which yeilds an 8.53 factor approximation algorithm for this problem. Mahdian and Pal [5] reduced this upper bound to 7.88 which was further reduced by Zhang et al [7] to 5.83. In this paper, we present a 5-approximation algorithm for this problem. The remainder of this paper is organised as follows. In section 2 we briey describe the algorithm and analysis of Zhang et al. In section 3 we bound the facility cost of our solution. We also present a tight example in section 4.

Preliminaries

For a given subset S F , the optimal assignment of clients to the set of facilities in S can be computed by solving a mincost ow problem. Therefore to solve CFLP with non-uniform capacities we only require to determine a good subset S F of facilities. Let S also denote the solution consisting of facility set S. We denote the cost of solution S by C(S). Pal et al suggested a local search algorithm to nd a good approximate solution for CFLP with non-uniform capacities. Following are the operations in their algorithm: Add(s): For s F , S S + {s} and reassign all clients to S by solving assignment problem. The cost of this operation is C(S ) C(S). open(s,T): Open one facility s F and close a set of facilities T S {s} and reassign all the clients served by facilities in T to s. Clients served by facilities in S \ T are not aected. Cost of reassigning each client j which was being served by t T to s is atmost cts . Therefore cost of the operation is f (s) tT f (t) + , is the total cost of reassigning all the clients of closed facilities. close(s,T): Close one facility s, s S. Open a set of facilities T F {s}. Assign all the clients from s to facilities in T . Clients served by facilities in S \ {s} are not aected. Cost of reassigning a client j which was being served by s to t T is atmost cst . Therefore cost of the operation is tT f (t) f (s) + , is the total cost of reassigning all the clients of closed facility s. 2

Zhang et al added the following operation to the above set of operations: multi(r,R,t,T): 1. Close a set of facilities R {r} S where r R and / R may be empty. 2. Open a set of facilities ({t} T ) (F R {r}) 3. Assign all the demand from r to T {t} and from R to t . As described in open and close operations, the cost of reassigning a client j served by r to a facility t T {t} is atmost crt and the cost of reassigning a client from a facility s R to t is atmost cst . Therefore cost of the operation is t {t}T f (t ) sR{r} f (s) + , is the total cost of reassigning all the clients of closed facilities to the opened facilities. S is locally optimum if none of the four operations are possible and at this point the algorithm stops. Polynomial running time can be ensured at the expense of an additive in the approximation factor by doing a local search operation only if the cost reduces by more than an 1 /n factor, for > 0. Let S F be a local optimal solution and O F be a global optimal solution. Cost of a solution A F , C(A) = Cf (A) + Cs (A), where Cf (A) is the facility cost of solution A and Cs (A) is the service cost of solution A. The bound on the service cost is well established now as in Korupolu et al [3] and Mahdian et al [5]. Following lemma from Mahdian et al states the bound on service cost. Lemma 1. The service cost Cs (S) of a local optimal solution S is bounded by the optimal total cost C(O), where O is a global optimal solution. Pal, Tardos and Wexler [6] bound the cost of minimum cost ow in the exchange graph and also show the existence of an optimal ow which is acyclic. We reproduce their result without proof in the following lemmas. Lemma 2. There is a ow in the exchange graph with cost atmost cs (O)+cs (S). Lemma 3. There is a minimum cost ow y in the exchange graph whose nonzero edges form a forest. To bound the facility cost of S, Zhang et al used the optimal solution of a transshipment graph (as is also used by Pal et al)to identify the set of operations which provide desirable inequalities. Zhang et al in their analysis described a set of close and multi operations to get an upper bound on facility cost of their local optimal solution. We next briey sketch the analysis of Zhang et al. Consider a minimum cost ow y in exchange graph whose non zero edges form a forest say G. Reorient each tree in this forest so that some vertex r O is the root. For a vertex t, denote children of t by K(t). A vertex t O is either weak, if sK(t) y(s, t) > 1/2y(., t) or strong otherwise. Consider a tree r rooted at some vertex r O. Consider a subtree of atmost two levels rooted at t O as in gure 1. A vertex s K(t) is heavy if y(s, t) 1/2y(., t) or light otherwise. A light facility is nondominant, if tK(s) y(s, t) > 1/2y(s, .) and dominant otherwise. Let KN D (t) be light-nondominant children of t and KD (t) be light-dominant children of t. Similarly Kw (s) denotes the weak children of s S and Kst (s) denotes strong children of s. 3

Fig. 1. Classication of facilities

To handle light non-dominant facilities KN D (t) they arrange these facilities according to the nondecreasing order of rem(si ) values, where rem(si ) = max{0, y(si , t)
t Kw (si )

y(si , t )}

Except for sk for all other si KN D (t) Zhang et al perform close(si , T ) operation where T = K(si ) Kst (si+1 ). In this operation strong children of si and si+1 i.e. t Kst (si ) Kst (si+1 ) get atmost y(si , t ) clients from si . Weak children of si i.e t Kw (si ) get atmost 2y(si , t ) clients in this operation. Figure 2 illustrates this operation. For the remaining facilities in K(t) Zhang et al consider three cases depending upon whether t is weak or strong. Case 1: t is strong. t being strong doesnt have a heavy child. Zhang et al close facilities in KD (t)sk in a multi opetation multi(sk , KD (t), t, T ) where T = K(sk ), refer gure 3. A facility in s KD (t) sends all its clients to t thus using the edge (s, t) to send atmost 2y(s, t) clients in the operation. Facility sk sends y(sk , t ) clients to each t T {t}. Case2: t is weak, and has a heavy child t has exactly one heavy child say sh , refer gure ??. They perform close(sh , T ) where T = k(sh ) {t} to close heavy facility and send y(sh , t ) clients from sh to t T . For the remaining facilities in K(t) they close facilities in KD (t) sk in a multi opetation multi(sk , KD (t), t, T ) where T = K(sk ). A facility in s KD (t) sends all its clients to t thus using the edge (s, t) to send atmost 2y(s, t) clients in the operation. Facility sk sends y(sk , t ) clients to each t T {t}. Case 3: t is weak and doesnt have a heavy child For this case they partition facilities in KD (t) {sk } into two subsets such that the facilities 4

Fig. 2. Illustration of close(si , Kst (si ) Kst (si+1 ))

Fig. 3. Illustration of multi(sk , KD (t), t, K(sk ))

Fig. 4. Illustration of case 2

in each of these subsets can be closed in a multi operation, thus needing two multi operations to handle facilities in KD (t) {sk }. Figure ?? depicts how the facilities are partitioned. For facilities s Di {i },i = 1, 2, they perform multi(i , Di , t, Ti ) where Ti = k(i ). By dening the operations in above manner for dierent types of facilities of S, Zhang et al achieve the following: Lemma 4. (i) Each facility s S is closed exactly once. (ii) Each facility o O is opened atmost thrice. (iii) The total cost of reassignment of all the operations is bounded by 2 sSO tO c(s, t)y(s, t). We observe that in all the operations described above, a facility of t O which is opened in an operation is not being utilized to its full capacity, but every time it is opened it pays facility cost in full. Infact the total extent upto which a facility t O is going waste is atleast equal to its capacity in many cases. We have used this observation to modify their close operation such that this modied close operation mclose(s,T) uses each facility opened to maximum possible extent thus not wasting any capacity. Thus whenever a facility of O is opened it pays full facility cost and is also utilized upto the full capacity.

3
In section 2 we briey discussed the analysis of Zhang et al and also observed that the operations that they used for their analysis did not utilize full capacity of a facility of optimum when it was opened in an operation. We modied their close 6

Fig. 5. Illustration of case 3

operation and called it mclose which was able to utilize every facility opened in an operation to the full capacity. We also modied their multi operation which generalized their open and close operations by assuming it now to be a generalization of open and mclose operations, and this way multi operation is also able to utilize every facility opened in the new multi operation to the full capacity. Let R O be the set of facilities which were considered exactly thrice over all the inequalities and O R be the set of facilities considered atmost twice. Lemma 5. The total number of clients of NO (t)t R which are assigned to t is greater than or equal to ut . Proof. Case 1: If t is strong: t participates in close/multi operations w.r.t. three sets of facilities of S. 1. t participates in close operations w.r.t. closing of facilities in set {si }. 2. t participates in close operations w.r.t. closing of facilities in set {si1 }. 3. t participates in close operations w.r.t. closing of facilities in set KD (t) {sk }. In the previous section we showed that if Es,t is the amont of ow that t received from s then t also receives ut Es,t amount of clients from NO (t). 1. t receives Esi ,t = y(si , t) from si 2. t receives Esi1 ,t y(si , t) from si1 3. t receives s {sk }KD (t) Es ,t = y(sk , t)+2 s KD (t) y(s , t)from {sk } KD (t) Therefore total clients t receives from NO (t) in three operations is atleast ut y(si , t) + ut y(si , t) + ut y(sk , t) 2
s KD (t)

y(s , t)

= 3ut 2y(si , t) y(sk , t) 2


s KD (t)

y(s , t)

(1)

Also note that y(si , t) + y(sk , t) +


s KD (t)

y(s , t) y(., t) ut .

Fig. 6. Operations for strong facility

therefore 1 can be written as

3ut 2ut = ut If t is weak: If t has a heavy child say sh = 2 then D2 is empty. As discussed in case when t is strong, in this case also t participates in close/multi operations w.r.t. three sets of facilities of S. 1. t participates in close operations w.r.t. closing of facilities in set {s}. 2. t participates in close operations w.r.t. closing of facilities in set D1 {1 }. 3. t participates in close operations w.r.t. closing of facilities in set D2 {2 }. Next we specify Es,t values for edges adjacen to t in G. 8

Fig. 7. Operations for weak facility

1. t receives Es,t 2y(s, t) from s. 2. t receives s {1 }D1 Es ,t y(1 , t) + 2 s D1 y(s , t)from D1 {1 }. 3. t receives s {2 }D2 Es ,t y(2 , t) + 2 s D2 y(s , t)from D2 {2 } Therefore total clients t receives from NO (t) in three operations is atleast ut 2y(s, t) + ut y(1 , t) 2
s D1

y(s , t) + ut y(2 , t) 2
s D2

y(s , t) (2)

= 3ut 2y(s, t) y(1 , t) y(2 , t) 2


s D1

y(s , t) 2
s D2

y(s , t)

Also note that y(s, t) + y(1 , t) + y(2 , t) +


s D1 D2

y(s , t) y(., t) .

Therefore 2 can be written as 3ut 2ut = ut . (3)

Tight example

Zhang et al in [7] claimed that their analysis is tight by giving a tight example. We rst describe that example given in gure 8 and then show that their claim 9

is not true. The example given in gure has 2n square facilities each with facility cost 4 and capacity n, 2n circle facilties each with facility cost 0 and capacity n 1 and one circle facility with facility cost 4 and capacity 2n. There are total 2n clients with n 1 demand each and 2n clients with 1 demand each. Numbers on the edges represent per unit service costs. Current local optimal solution is represented by the set of all the square facilities and the optimal solution is represented by the set of all the circle facilities. Cost of the current solution is 8n + 2n = 10n and cost of the optimal solution is 4 + 2n. Ratio of the costs of these two solutions turns out to be 5 as n goes to . If we decrease the per unit costs on edges even slightly, then the set of square facilities no longer is a local optimal solution. Note that closing one square facility and opening two circle facilities, where one circle facility is exactly below the square facility closed and another circle facility next to this circle facility(before or after), will improve the solution consisting of all the square facilities by bringing reduction in the cost of the current solution. Zhang et al claim that the per unit service costs in the gure are scaled up by a factor = 1+2 2 and they compare the cost of the two solutions w.r.t. prescaled service costs. However with prescaled service costs the current solution is not local optimal. Thus with this example they can only claim the lower bound of their algorithm to be 5. Hence their claim is not true. The set of square facilities forms a local optimal solution w.r.t. mclose operation.

References
1. Ankit Aggarwal, L. Anand, Manisha Bansal, Naveen Garg, Neelima Gupta, Shubham Gupta, and Surabhi Jain. A 3-approximation for facility location with uniform capacities. In IPCO, pages 149162, 2010. 2. Fabian Chudak and David P. Williamson. Improved approximation algorithms for capacitated facility location problems. Math. Program., 102(2):207222, 2005. 3. Madhukar R. Korupolu, C. Greg Plaxton, and Rajmohan Rajaraman. Analysis of a local search heuristic for facility location problems. J. Algorithms, 37(1):146188, 2000. 4. A. A. Kuehn and M. J. Hamburger. A heuristic program for locating warehouses. Management Science, 9(9):643666, July 1963. 5. Mohammad Mahdian and Martin Pl. Universal facility location. In ESA, pages a 409421, 2003. 6. M. Pl, E. Tardos, and T. Wexler. Facility location with nonuniform hard capacities. a In FOCS 01: Proceedings of the 42nd IEEE symposium on Foundations of Computer Science, page 329, Washington, DC, USA, 2001. IEEE Computer Society. 7. Jiawei Zhang, Bo Chen, and Yinyu Ye. A multiexchange local search algorithm for the capacitated facility location problem. Math. Oper. Res., 30(2):389403, 2005.

10

Fig. 8. Tight example

11

Вам также может понравиться