<<

Max Coverage—Randomized LP Rounding

CS 4820—April 2014

David Steurer

Maximum Coverage Problem

• given: subsets S ,..., Sm of a ground set U = u ,..., un , parameter k N 1 { 1 } ∈ • find: collection of k sets so as to maximize the number of covered elements C This problem is NP-complete. In this lecture, we will develop an approximation for this problem based on .

LP relaxation for Max Coverage

Given an instance of Max Coverage, we construct the following LP instance LP( ). I I • variables: x1,..., xm and y1,..., yn • constraints: Xm xi = k , (cardinality constraint) i=1 X xi yj for j 1,..., n , (coverage constraints) ≥ ∈ { } i: u S j∈ i 0 xi 1 for i 1,..., m , ≤ ≤ ∈ { } 0 yj 1 for j 1,..., n . ≤ ≤ ∈ { } Pn • objective: maximize j=1 yj Claim 1. Opt LP( ) Opt . I ≥ I Proof. Let be an optimal solution for , that is, a collection of k sets that cover Opt C I I elements of U. We are to construct a solution of LP( ) with objectie value at least Opt . I I Consider the following solution to LP( ), I   S 1 if S 1 if u S  i  j Si i xi =  ∈ C and yj =  ∈ ∈C 0 otherwise, 0 otherwise.

This solution satisfies the cardinality constraint because exactly k of the variables x1,..., xm are set to 1 and the rest are set to 0. The solution also satisfies the coverage constraints for all j 1,..., n . If yj = 0, then the corresponding coverage constraint is satisfied because ∈ { } all xi values are nonnegative. Otherwise, if yj = 1, then uj is covered by , which means C P that one of the sets Si contains uj. Therefore, at least one of terms of the sum i: u S xi ∈ C j∈ i is equal to 1, which is enough to satisfy the inequality. Claim 2 (Randomized rounding algorithm). There exists a that, given an optimal solution to LP( ), outputs a collection of k sets that in expectation I C covers at least (1 1/e) Opt LP( ) elements of U. − · I

1 We defer the proof of Claim 2 to the next section. At this point, let us note that Claim 1 and Claim 2 together give a (1 1/e)- for Max Coverage. − LP-based Approximation Algorithm for Max Coverage. Given an instance I of Max Coverage, we construct the linear-programming instance LP( ). Using I a polynomial-time algorithm for linear-programming, we compute an optimal solution for LP( ). We apply the randomized rounding algorithm from Claim I 2 to this LP solution to obtain a solution for the original problem instance I that covers at least (1 1/e) Opt LP( ) elements, which, by Claim 1, is within − · I a 1 1/e factor of Opt( )—the maximum number of elements that k sets can − I cover.

Randomized Rounding—Proof of Claim 2

Let be an instance of MC and let x ,..., xm and y ,..., yn be a solution to LP( ) with I 1 1 I value Opt LP( ). The following efficient randomized algorithm turns this LP solution into I a collection of k sets that covers at least (1 1/e) Opt LP( ) elements in expectation. C − · I • Interpret the numbers x1/k,..., xm/k as probabilities for the sets S1,..., Sm. (Notice that these numbers are nonnegative and add up to 1 according to the constraints of LP( ).) I • Choose k sets independently at random according to these probabilities. • Output the collection consisting of the k chosen sets. C Claim. For every element uj U, the probability that the collection produced by the ∈ C rounding algorithm covers uj is at least (1 1/e) yj − · Proof. If we choose a random set according to the probabilities x /k,..., x /k, it covers P 1 m element uj with probability i: u S xi/k yj/k. (Here, we use the coverage constraints.) j∈ i ≥ Therefore, the probability that none of the k sets chosen by the rounding algorithm covers k uj is at most (1 yj/k) . Thus, the element uj is covered by the collection with probability − k k C at least 1 (1 yj/k) . It remains to verify that 1 (1 yj/k) (1 1/e) yj. In the interval − − − − ≥ − · [0, 1], the function on the left is concave and the function on the right is linear. Since the inequality is satisfied at the end points of the interval (i.e., yj = 0 and yj = 1), it follows that the inequality holds in the entire interval. (A good way to verify this argument is to plot the two functions in the interval [0, 1].) Claim. The expected number of elements covered by is at least (1 1/e) Opt LP( ). C − · I Proof. Let Zj be the 0/1-valued random variable such Zj = 1 indicates the event that Pn C covers uj. Then, the number of elements that covers is equal to Zj. Therefore, by C j=1 linearity of expectation, the expected number of elements covered by is equal to C Xn Xn E Zj = E Zj j=1 j=1

Since Zj is a 0/1-valued random variable, the expectation of Zj is equal to the probability that Zj = 1. Hence, the expected number of elements covered by is equal to C X X X Pr Zj = 1 = Pr covers uj (1 1/e) yj = (1 1/e) Opt LP( ) . { } {C } ≥ − − · I j j j

2