Worst-Case Analysis of the Greedy Algorithm for a Problem

advertisement
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
Download