Presentation is loading. Please wait.

Presentation is loading. Please wait.

Prize Collecting Cuts Daniel Golovin Carnegie Mellon University Lamps of ALADDIN 2005 Joint work with Mohit Singh & Viswanath Nagarajan.

Similar presentations


Presentation on theme: "Prize Collecting Cuts Daniel Golovin Carnegie Mellon University Lamps of ALADDIN 2005 Joint work with Mohit Singh & Viswanath Nagarajan."— Presentation transcript:

1 Prize Collecting Cuts Daniel Golovin Carnegie Mellon University Lamps of ALADDIN 2005 Joint work with Mohit Singh & Viswanath Nagarajan

2 2 The Problem Input: Undirected graph G = (V,E), root vertex r, and integer K, 0 < K < |V| Goal: find a set of vertices S, not containing the root, minimizing cap(∂S), subject to the constraint |S| ≥ K, (∂S := edges out of S) root S

3 3 Motivation Protect at least K nodes (servers, cities, etc) from an infected node in a network. root S

4 4 Motivation, continued Separate at least K enemy units from your base. root S

5 5 Related Work “A polylogarithmic approximation of the minimum bisection”, Feige & Krauthgamer, SIAM Journal on Computing 2002 “On cutting a few vertices from a graph”, Feige, Krauthgamer, & Nissim, Discrete Applied Mathematics 2003 “Global min-cuts in RNC, and other ramifications of a simple min-cut algorithm”, Karger, SODA 1993

6 6 Related Work Hayrapetyan, Kempe, Pál and Svitkina claim a (2,2) bicriteria approx for the problem of minimizing the number of vertices on the root side of the cut, subject to cap(∂S) ≤ B, though we have not seen the manuscript. We can get a (2,2) approx via Lagrangian relaxation and Markov’s inequality

7 7 What was known Feige & Krauthgamer consider the problem of removing exactly K vertices from a graph, obtain an O(log 3/2 (n)) approx for all values of K. F.K.N. consider this problem for small K, obtain a (1+ εK/log(n)) approx, for any fixed ε > 0. They use ideas from Karger’s min-cut algorithm.

8 8 Results For K = Ω(n), we obtain an (const, const) bi-criteria approx For small K, we match the F.K.N. result (i.e. an (1+ εK/log(n)) approx)

9 9 PTAS for K = O(log(n)) First run the FKN PTAS for all K’ in [K,8K]. At all times, keep the best solution cut around. While G still has edges, contract an edge uniformly at random, compute the minimum cost root-cluster cut for the new cluster, and continue. Output the best solution cut seen.

10 10 Contraction Contract (u,v): Keep parallel edges vu {u,v}

11 11 PTAS for K = O(log(n)) First run the FKN PTAS for all K’ in [K,8K]. At all times, keep the best solution cut around. While G still has edges, contract an edge uniformly at random, compute the minimum cost root-cluster cut for the new cluster, and continue. Output the best solution cut seen.

12 12 Analysis Suppose OPT has cost B, and cuts away S. If FKN returns a solution of cost (1+ε)B, we are done. Otherwise, |S| > 8K, and for every subset R of size between K and 8K, cap(∂R) > B. root S R3R3 R2R2 R1R1 R4R4

13 13 Analysis Suppose OPT has cost B, and cuts away S. If FKN returns a solution of cost (1+ε)B, we are done. Otherwise, |S| > 8K, and for every subset R of size between K and 8K, cap(∂R) > B. root S R3R3 R2R2 R1R1 R4R4 Lots of inter-cluster edges

14 14 Analysis, cont. If we generate a cluster of size at least K in S, its min-cut from the root has cost at most B, and we will return it (or some better solution). Safe to assume each cluster in S has at most K vertices root S C ∂S is a min root to C cut

15 15 Analysis, cont. Each cluster in S has at most K vertices Partition the clusters of S into groups such that each group has between K and 2K vertices. Node Cluster Group

16 16 Analysis, cont. There are at least |S|/2K groups in S, each has at least B edges leaving it. Each edge is counted at most twice, so there are at least (|S|B)/(4K) edges incident on vertices of S. At most B of these edges leave S. If we contract such an edge, we abort the run.

17 17 Analysis: Pr[Abort] Pr[e red, given e is not blue]: root S R3R3 R2R2 R1R1 R4R4 S Probability of Aborting: exactly B red (bad) edges, at least |S|B/4K red & black edges

18 18 Analysis: Pr[Abort] root S R3R3 R2R2 R1R1 R4R4 At each step, Pr[abort] ≤ 4K/|S|, so we succeed with probability at least 1-4K/|S|: Pr[e black, given e is not blue]: S

19 19 Analysis: Pr[Success] We may run only |S|-1 contractions of edges in (∂S)U(SxS) (i.e. red & black edges) before either aborting or contracting S into a single node The probability of generating a cluster of size at least K in S before aborting is

20 20 Analysis: Pr[Success] If x ≥ 2, (1-1/x) x ≥ 1/4 (via Bernoulli’s ineq.) Since |S| > 8K: (1-4K/|S|) |S|/4K ≥ 1/4 Raise both sides to the 4K power (1-4K/|S|) |S| ≥ (¼) 4k = 4 -O(log(n)) = n -O(1)

21 21 Analysis, cont. So either the FKN preprocessing gives us an (1+ε)B solution, or with high probability in polynomial many independent runs we obtain the optimal solution.

22 22 Bi-criteria approx for K = Ω(n) For large K, prize collecting cut starts to look like sparsest cut with demands D(root,v) = 1 for all vertices v, and the constraint that at least K vertices are cut away. Note: we can solve sparsest cut exactly on inputs with a single ``source’’ of demands.

23 23 Bi-criteria approx for K = Ω(n) Idea: Iteratively run sparsest cut with these demands, chopping off more and more of the graph, until at least K/2 vertices have been removed. root

24 24 Analysis At each step, we know the sparsest cut has sparsity at most 2B/K. Thus the cost per vertex separated is at most 2B/K. root The shaded region has at least K/2 vertices, and can be separated from the root at cost at most B. OPT cut

25 25 Analysis Cost per vertex separated is at most 2B/K. If the output separates L vertices from the root, its cost is at most L(2B/K). Since L ≤ n and K = Ω(n), L(2B/K) = O(B).

26 26 Ongoing Work The middle ground: log(n) << K << n Strictly enforcing the budget constraint and approximating the prize collected

27 27 Thank You Questions?


Download ppt "Prize Collecting Cuts Daniel Golovin Carnegie Mellon University Lamps of ALADDIN 2005 Joint work with Mohit Singh & Viswanath Nagarajan."

Similar presentations


Ads by Google