Worst-Case Analysis of the Greedy Algorithm for a Generalization of the Maximum P-Facility Location Problem M.I. Sviridenko∗ Sobolev Institute of Mathematics, Novosibirsk, Russia Basic Research Institute in Computer Science, University of Aarhus, Denmark e-mail: sviri@brics.dk, svir@math.nsc.ru Abstract In this work we consider the maximum p-facility location problem with k additional resource constraints. We prove that the simple greedy algorithm has performance guarantee (1 − e−(k+1) )/(k + 1). In the case k = 0 our performance guarantee coincides with bound due to Nemhauser, Wolsey and Fisher [4]. keywords: approximation algorithm, facility location, submodular functions. 1 Introduction Let I = {1, . . . , n} and J = {1, . . . , m}. In this work we consider the following optimization problem: max{f (S) : |S| = P }, (1) S⊆I where f (S) is a polynomially computable set function. Nemhauser, Wolsey and Fisher [4] consider this problem with nonnegative nondecreasing submodular functions f (S) (function is submodular if f (S) + f (T ) ≥ f (S ∪ T ) + f (S ∩ T ) for all S, T ⊆ I). They prove that the simple greedy algorithm has performance guarantee 1 − e−1 . The main property used in their proof is that nondecreasing set function f (S) is submodular if and only if f (T ) ≤ f (S) + X (f (S ∪ {p}) − f (S)) p∈T \S This research was partially supported by the Russian Foundation for Basic Research, grants 99-0100601, 99-01-00510 ∗ 1 for all S, T ⊆ I. Wolsey [5] studies the problem (1) with the following objective function: f (S) = max xij ≥0 XX fij xij ; (2) i∈S j∈J subject to X xij ≤ Aj , j ∈ J; (3) X xij ≤ Bi , i ∈ S. (4) i∈S j∈J Wolsey proves that the function (2)–(4) is a submodular set function and, consequently, the greedy algorithm has performance guarantee 1 − e−1 . In this work we study more general class of objective functions. We prove that the greedy algorithm gives a (1 − e−(k+1) )/(k + 1)-approximation solution for the problem (1) with nonnegative nondecreasing objective function satisfying the following inequality: f (T ) ≤ (k + 1)f (S) + X (f (S ∪ {p}) − f (S)) (5) p∈T \S for all S, T ⊆ I. We introduce the natural members of this class of functions and prove that the function (2)-(4) with k additional resource constraints: f (S) = max xij ≥0 XX fij xij ; (6) i∈S j∈J subject to X xij ≤ Aj , j ∈ J; (7) X xij ≤ Bi , i ∈ S; (8) l = 1, . . . , k, (9) i∈S j∈J XX cijl xij ≤ Cl , i∈S j∈J satisfies the inequality (5). Let us denote the function (6)–(9) by f (S; A; C) (or f (S) for short) where A = (A1 , . . . , Am ) and C = (C1 , . . . , Ck ). We assume that all input numbers of the problem, i.e. (fij , cijl , Aj , Bi , Cl ), are nonnegative. Notice that we may only conP sider the feasible solutions S of the problem (6)–(9) satisfying the equality i∈S xij = Aj . This can be done by introducing a dummy facility q such that fqj = 0, Bq = m, cqjl = 0 for all j ∈ J, l = 1, . . . , k. We also assume that q ∈ S for any feasible solution S and |S| = P + 1. The value of the function f (S) can be computed in polynomial time by any known polynomial algorithm for linear programming. If k = 1 and all Bi ≥ m then the problem (6)–(9) is the continuous multiple-choice knapsack problem and f (S) can be computed by the algorithm with running time O(m|S|) [1, 6]. 2 2 Algorithm and its analysis We now describe the greedy algorithm for solving the problem (1). Set S 0 = {q}, t = 1. At the step t we have a partial solution S t−1 . Find θt = maxt−1 (f (S t−1 ∪ {i}) − f (S t−1 )). (10) i∈I\S Let the maximum in (10) is attained on the index it . Set S t = S t−1 ∪ {it }. If |S t | < P + 1, set t = t + 1 and do the next step, otherwise, stop. In the proof of the performance guarantee we will use the inequality due to Wolsey [5]: if P and D are arbitrary positive integers, ρi , i = 1, . . . , P are arbitrary nonnegative reals and ρ1 > 0 (notice that Wolsey uses slightly more general conditions), then min t=1,...,P PP i=1 ρi Pt−1 ( i=1 ρi 1 ≥1− 1− D + Dρt ) P P > 1 − e− D . (11) Theorem 1 The worst-case ratio of the greedy algorithm for solving the problem (1) with objective function satisfying condition (5) is equal (1 − e−(k+1) )/(k + 1). Proof. The proof is a straightforward modification of the Nemhauser’s, Wolsey’s and Fisher’s one. Let S t , t = 0, . . . , P be the sets defined in the description of the algorithm and let S ∗ be an optimal solution of the problem (1). For all t = 0, . . . , P − 1 we have f (S ∗ ) ≤ (k + 1)f (S t ) + X (f (S t ∪ {i}) − f (S t )) ≤ (k + 1)f (S t) + P θt+1 . (12) i∈S ∗ \S t The last inequality follows from the facts that f (S t ∪{i})−f (S t) ≤ θt+1 and |S ∗ \S t | ≤ P . P Using the inequalities (11), (12) and the fact that f (S t ) = ti=1 θi we obtain P f (S P ) 1 i=1 θi ≥ · (1 − e−(k+1) ). ≥ Pt−1 ∗ f (S ) k+1 mint=1,...,P {(k + 1) i=1 θi + P θt } P 2 We now give an upper and lower bounds of the numbers (1 − e−(k+1) )/(k + 1) for k ≥ 0: k+1 ke−(k+1) + 1 k + ek+1 e k+1< =k+ = k + k+1 ≤k+ ≈ k + 1.58. −(k+1) −(k+1) 1−e 1−e e −1 e−1 The last inequality is equivalent to the following one: ek ≥ k(1 − e−1 ) + 1 and therefore holds for all k ≥ 0. 3 3 Properties of the function f (S; A; C) We will prove the inequality f (S; A; C1 − ∆, C2 , . . . , Ck ) ∆ ≥1− . f (S; A; C) C1 (13) for all ∆ ∈ [0, C1]. At first, consider the continuous knapsack problem: G(B) = max X gi xi , i∈I X ci xi ≤ B, i∈I 0 ≤ xi ≤ bi , i ∈ I. Without loss of generality, we assume that g1 /c1 ≥ g2 /c2 ≥ . . . ≥ gn /cn and i∈I ci bi > B. If the input data violate the second assumption then, trivially, xi = bi for all i ∈ I. The optimal solution of this problem has the following property: xi = bi for i = 1, . . . , s − 1, Ps−1 xi = 0 for i = s + 1, . . . , n and xs = B − i=1 ci bi for some index s (See the proof of this property in the case when all bi = 1 in [3], Theorem 2.1. The general case can be treated in the same way). Using this property we obtain that for any ∆ ∈ [0, B] the following inequality holds: G(B − ∆)/(B − ∆) ≥ G(B)/B and therefore G(B − ∆)/G(B) ≥ 1 − ∆/B. Moreover we may assume that the optimal solution of the knapsack problem with budget B − ∆ is not bigger in each coordinate then the optimal solution of the problem with budget B. Using the same argument we now can prove the inequality (13). Let (yij ), i ∈ S, j ∈ J be an optimal solution of the problem (6)-(9) corresponding the function f (S; A; C). Consider the following knapsack problem P G(B) = max XX fij xij , i∈S j∈J XX cij1xij ≤ B, i∈S j∈J 0 ≤ xij ≤ yij , i ∈ S, j ∈ J. The optimal solution of this problem with B = C1 −∆ is a feasible solution of the problem (6)-(9) corresponding the function f (S; A; C1 − ∆, . . . , Ck ). Since f (S; A; C) = G(C1 ) we have f (S; A; C1 − ∆, C2 , . . . , Ck ) G(C1 − ∆) ∆ . ≥ ≥1− f (S; A; C) G(C1 ) C1 The next theorem is the main statement of this paper. It generalizes the property of the capacitated maximum p-facility location problem proved by Wolsey [5]. 4 Theorem 2 . The function f (S; A; C) satisfies the following inequality for all S, T ⊆ I f (T ) ≤ (k + 1)f (S) + X (f (S ∪ {p}) − f (S)) , p∈T \S where k is a number of constraints (9). Proof. We will prove an equivalent inequality (k + 1)f (S; A; C) + X f (S ∪ {p}; A; C) ≥ f (T ; A; C) + |T |f (S; A; C). p∈T Let xpj (T ), p ∈ T, j ∈ J be an optimal solution of the problem (6)-(9) corresponding P the function f (T ; A; C). Let ∆pl = j∈J cpjlxpj (T ), ∆p = (∆p1 , . . . , ∆pk ) and Xp = (xp1 (T ), . . . , xpm (T )) then f (S ∪ {p}; A; C) ≥ f (S; A − Xp ; C − ∆p ) + X fpj xpj (T ). (14) j∈J The inequality (14) holds since from the optimal solution (yij ), i ∈ S, j ∈ J of the problem (6)-(9) corresponding the function f (S; A−Xp ; C−∆p ) one can obtain the feasible solution (xij ), i ∈ S ∪{p}, j ∈ J of the problem (6)-(9) corresponding the function f (S ∪{p}; A; C) with objective value equal the value of the righthand side of (14). This solution is defined as follows: xij = yij for i ∈ S, j ∈ J and xij = xij (T ) for i = p, j ∈ J. Summing (14) over p ∈ T and adding (k + 1)f (S) we have (k + 1)f (S) + X f (S ∪ {p}) ≥ (k + 1)f (S) + f (T ) + p∈T X f (S; A − Xp ; C − ∆p ). p∈T Therefore, it is sufficient to prove the inequality (k + 1)f (S) + X f (S; A − Xp ; C − ∆p ) ≥ |T |f (S) p∈T for proving the statement of the theorem. Using the inequality (13) we obtain f (S; A − Xp ; C − ∆p ) ≥ (1 − ∆pk )f (S; A − Xp ; C1 − ∆p1 , . . . , Ck−1 − ∆pk−1 , Ck ). Ck Summing this inequalities over p ∈ T and using the facts that f (S; A − Xp ; C1 − ∆p1 , . . . , Ck−1 − ∆pk−1, Ck ) ≤ f (S; A; C) we have f (S; A; C) + X f (S; A − Xp ; C − ∆p ) ≥ p∈T X P p∈T f (S; A − Xp ; C1 − ∆p1 , . . . , Ck−1 − ∆pk−1 , Ck ). p∈T Applying the same argument k times we obtain kf (S) + X ∆pl ≤ Cl and f (S; A − Xp ; C − ∆p ) ≥ p∈T X p∈T 5 f (S; A − Xp ; C). Hence, it is sufficient to prove the following inequality f (S; A; C) + X f (S; A − Xp ; C) ≥ |T |f (S; A; C). (15) p∈T n Let ||z|| be the rectilinear norm of a vector z ∈ R+ , i.e. ||z|| = prove the following proposition. Pn i=1 zi . At first we n k Proposition 1 If z ∈ R+ , δ ∈ R+ , ||z|| = ||δ|| = a then we can find vectors z 1 , . . . , z k ∈ n i R+ such that z ≤ z (a ≤ b if ai ≤ bi for each coordinate i), ||z i || = a − δi for all P i = 1, . . . , k and ni=1 z i = (k − 1)z. Proof. We partition the vector z into k vectors y 1 , . . . , y k with nonnegative components P such that ||y i || = δi and ki=1 y i = z. Then we define z i = z − y i . It’s easy to see that all properties of the claim are hold for the vectors z i . By using Proposition 1 we will find a feasible solutions of the problems in the lefthand side of (15) such that the inequality will hold. Therefore the inequality will hold for the optimal solutions too. Let (xij (S)) be an optimal solution of the problem (6)-(9) corresponding the function f (S; A; C). Recall that Xp = (xp1 (T ), . . . , xpm (T )). Define vectors x1j (S) x1j (T ) . and xj (T ) = .. . xj (S) = . . x|S|j (S) x|T |j (T ) By assumptions made in introduction, ||xj (S)|| = ||xj (T )|| = Aj ≥ 0. We construct (by proposition 1) vectors xjp , p = 1, . . . , |T | such that ||xjp || = Aj − xpj (T ), xjp ≤ xj (S) and P jp = (|T | − 1)xj (S). Therefore the matrix (x1p , . . . , xmp ) = (xpij ), i ∈ S, j ∈ J is a p∈T x feasible solution of the problem (6)-(9) corresponding the function f (S; A − Xp ; C) and XXX fij xpij = (|T | − 1) p∈T i∈S j∈J XX fij xij (S). i∈S j∈J Consequently, X f (S; A − Xp ; C) ≥ (|T | − 1)f (S; A; C). 2 p∈T 4 Discussion We have given the performance guarantee of the greedy algorithm for generalization of the maximum capacitated p-facility location problem. There are a number of interesting questions raised by this work. Clearly, that analysis of the section 2 can be applied to the set functions satisfying the following condition: for all S, T ⊆ I X f (T ) ≤ (k + 1)f (S) + L (f (S ∪ {p}) − f (S)) , (16) p∈T \S 6 where L > 0 is a some constant. Are there natural members of this class of functions? Does there exist a characterization of set functions satisfying conditions (5) or (16)? Are another results from the theory of submodular set functions generalized to these classes of set functions? Another open question concerns the hardness of the approximation of the considered problems. Feige [2] proves that 1 − e−1 is the best possible performance guarantee for the Max p-Cover unless P = NP . Max p-Cover is a special case of the problem (1) with the functions (2)-(4), i.e. the case k = 0. We conjecture that the result of Feige can be extended to the case of general integer k ≥ 0. References [1] M. E. Dyer, An O(n) Algorithm for the Multiple Choice Knapsack Problem, Mathematical Programming 29 (1984), pp.57–63. [2] U. Feige, A Threshold of ln n for Approximating Set Cover, Journal of ACM 45 (1998), pp.634–652. [3] S. Martello and P. Toth, Knapsack Problems: Algorithms and Computer Implementations, Wiley&Sons (1990). [4] G. L. Nemhauser, L. A. Wolsey and M. L. Fisher, An Analysis of Approximations for Maximizing Submodular Set Functions-1, Mathematical Programming 14 (1978), 265–294. [5] L. A. Wolsey, Maximising Real-Valued Submodular Functions: Primal and Dual Heuristics for Location Problems, Mathematics of Operations Research 7 (1982), pp.410–425. [6] E. Zemel, An O(n) Algorithm for the Linear Multiple Choice Knapsack Problem and Related Problems, Information Processing Letters 18 (1984), pp.123–128. 7