Download presentation
Presentation is loading. Please wait.
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?
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.