Approximation Algorithm for Multicut

Slides:



Advertisements
Similar presentations
Routing Complexity of Faulty Networks Omer Angel Itai Benjamini Eran Ofek Udi Wieder The Weizmann Institute of Science.
Advertisements

Iterative Rounding and Iterative Relaxation
The Primal-Dual Method: Steiner Forest TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A AA A A A AA A A.
Chapter 4 Partition I. Covering and Dominating.
Graph Partitioning Problems Lecture 18: March 14 s1 s3 s4 s2 T1 T4 T2 T3 s1 s4 s2 s3 t3 t1 t2 t4 A region R1 R2 C1 C2.
1 Matching Polytope x1 x2 x3 Lecture 12: Feb 22 x1 x2 x3.
Lecture 5 Graph Theory. Graphs Graphs are the most useful model with computer science such as logical design, formal languages, communication network,
Linear Programming (LP) (Chap.29)
Approximation Algoirthms: Graph Partitioning Problems Lecture 17: March 16 s1 s3 s4 s2 T1 T4 T2 T3.
Approximation, Chance and Networks Lecture Notes BISS 2005, Bertinoro March Alessandro Panconesi University La Sapienza of Rome.
1 EE5900 Advanced Embedded System For Smart Infrastructure Static Scheduling.
Approximation Algorithms Chapter 5: k-center. Overview n Main issue: Parametric pruning –Technique for approximation algorithms n 2-approx. algorithm.
Discussion #34 1/17 Discussion #34 Warshall’s and Floyd’s Algorithms.
Combinatorial Algorithms
Computability and Complexity 23-1 Computability and Complexity Andrei Bulatov Search and Optimization.
Introduction to Approximation Algorithms Lecture 12: Mar 1.
Graph Clustering. Why graph clustering is useful? Distance matrices are graphs  as useful as any other clustering Identification of communities in social.
Approximation Algorithms: Combinatorial Approaches Lecture 13: March 2.
Semidefinite Programming
A Constant Factor Approximation Algorithm for the Multicommodity Rent-or-Buy Problem Amit Kumar Anupam Gupta Tim Roughgarden Bell Labs CMU Cornell joint.
Randomized Algorithms and Randomized Rounding Lecture 21: April 13 G n 2 leaves
Primal Dual Method Lecture 20: March 28 primaldual restricted primal restricted dual y z found x, succeed! Construct a better dual.
Approximation Algorithm: Iterative Rounding Lecture 15: March 9.
Approximation Algorithms Lecture for CS 302. What is a NP problem? Given an instance of the problem, V, and a ‘certificate’, C, we can verify V is in.
Approximation Algorithms
An Approximation Algorithm for Requirement cut on graphs Viswanath Nagarajan Joint work with R. Ravi.
CSE 421 Algorithms Richard Anderson Lecture 4. What does it mean for an algorithm to be efficient?
Job Scheduling Lecture 19: March 19. Job Scheduling: Unrelated Multiple Machines There are n jobs, each job has: a processing time p(i,j) (the time to.
Tirgul 13. Unweighted Graphs Wishful Thinking – you decide to go to work on your sun-tan in ‘ Hatzuk ’ beach in Tel-Aviv. Therefore, you take your swimming.
Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy under contract.
1 Introduction to Approximation Algorithms Lecture 15: Mar 5.
A General Approach to Online Network Optimization Problems Seffi Naor Computer Science Dept. Technion Haifa, Israel Joint work: Noga Alon, Yossi Azar,
1 Spanning Tree Polytope x1 x2 x3 Lecture 11: Feb 21.
Minimum Spanning Trees. Subgraph A graph G is a subgraph of graph H if –The vertices of G are a subset of the vertices of H, and –The edges of G are a.
Daniel Kroening and Ofer Strichman Decision Procedures An Algorithmic Point of View Deciding ILPs with Branch & Bound ILP References: ‘Integer Programming’
Decision Procedures An Algorithmic Point of View
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
C&O 355 Mathematical Programming Fall 2010 Lecture 19 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A.
Design Techniques for Approximation Algorithms and Approximation Classes.
Approximating Minimum Bounded Degree Spanning Tree (MBDST) Mohit Singh and Lap Chi Lau “Approximating Minimum Bounded DegreeApproximating Minimum Bounded.
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
Topics in Algorithms 2005 Constructing Well-Connected Networks via Linear Programming and Primal Dual Algorithms Ramesh Hariharan.
Approximation Algorithms Department of Mathematics and Computer Science Drexel University.
 2004 SDU Lecture 7- Minimum Spanning Tree-- Extension 1.Properties of Minimum Spanning Tree 2.Secondary Minimum Spanning Tree 3.Bottleneck.
CSE332: Data Abstractions Lecture 24.5: Interlude on Intractability Dan Grossman Spring 2012.
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
Flows in Planar Graphs Hadi Mahzarnia. Outline O Introduction O Planar single commodity flow O Multicommodity flows for C 1 O Feasibility O Algorithm.
1 EE5900 Advanced Embedded System For Smart Infrastructure Static Scheduling.
Graphs Definition: a graph is an abstract representation of a set of objects where some pairs of the objects are connected by links. The interconnected.
C&O 355 Lecture 19 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A A A A A A A A A.
Approximation Algorithms by bounding the OPT Instructor Neelima Gupta
1 On MultiCuts and Related Problems Michael Langberg Joint work with Adi Avidor On MultiCuts and Related Problems Michael Langberg California Institute.
COSC 3101A - Design and Analysis of Algorithms 14 NP-Completeness.
Approximation Algorithms based on linear programming.
::Network Optimization:: Minimum Spanning Trees and Clustering Taufik Djatna, Dr.Eng. 1.
TU/e Algorithms (2IL15) – Lecture 8 1 MAXIMUM FLOW (part II)
COMP 6/4030 ALGORITHMS Prim’s Theorem 10/26/2000.
1.3 Modeling with exponentially many constr.
CS154, Lecture 16: More NP-Complete Problems; PCPs
Randomized Algorithms CS648
Analysis of Algorithms
Graph Partitioning Problems
3.4 Push-Relabel(Preflow-Push) Maximum Flow Alg.
András Sebő and Anke van Zuylen
1.3 Modeling with exponentially many constr.
Flow Feasibility Problems
CS154, Lecture 16: More NP-Complete Problems; PCPs
Lecture 19 Linear Program
Winter 2019 Lecture 11 Minimum Spanning Trees (Part II)
Autumn 2019 Lecture 11 Minimum Spanning Trees (Part II)
Presentation transcript:

Approximation Algorithm for Multicut s1 s4 t1 t3 C1 t2 C2 A region s3 s2 t4 Lecture 18: Mar 21

Multiway Cut Given a set of terminals S = {s1, s2, …, sk}, a multiway cut is a set of edges whose removal disconnects the terminals from each other. The multiway cut problem asks for the minimum weight multiway cut. s1 s2 s3 s4

Multiway Cut Algorithm (Multiway cut 2-approximation algorithm) For each i, compute a minimum weight isolating cut for s(i), say C(i). Output the union of C(i). T2 s1 s2 T1 T3 s3 T4 s4

Multicut Given k source-sink pairs {(s1,t1), (s2,t2), ...,(sk,tk)}, a multicut is a set of edges whose removal disconnects each source-sink pair. The multicut problem asks for the minimum weight multicut. s1 s4 t1 t3 t2 s3 s2 t4

Bad Example Algorithm: take the union of minimum si-ti cut. s1 t1 1 1 2.0001 …….. 1 …….. 1 sk tk OPT = 2.0001 ALG = 2k

Linear Program for each path p connecting a source-sink pair Intuitively, we would like to take edges with large d(e), but they may not form a multicut. How can we “round” this linear program?

Strategy s1 s4 0.3 t1 Let the edges in this multicut be C. t3 0.007 t2 0.2 0.01 s3 s2 t4 Given the fractional value of d(e), how can we compare a multicut with the optimal value of the LP? It would be good if d(e) ≥ 1/2 (or 1/k) for every edge in C. Then we would have a 2-approximation algorithm (or k-approximation algorithm). But this is not true.

Strategy s1 s4 0.3 t1 Let the edges in this multicut be C. t3 0.007 t2 0.2 0.01 s3 s2 t4 Given the fractional value of d(e), how can we compare a multicut with the optimal value of the LP? It would also be good if ∑c(e) ≤ k∑c(e)d(e) for edges in C. Then we would have a k-approximation algorithm. But this is also not true.

Strategy s1 s4 0.3 t1 Let the edges in this multicut be C. t3 0.007 t2 0.2 0.01 Observation: we haven’t considered the edges inside the components. s3 s2 t4 Analysis strategy: If we can prove that then we have a f(n)-approximation algorithm. We’ll use this strategy. How to find such a multicut C?

Algorithm R1 s1 s4 Goal: Find a cut with t1 t3 C1 t2 C2 A region s3 s2 (Multicut approximation algorithm) For each i, compute a s(i)-t(i) cut, say C(i). Remove C(i) and its component R(i) (its region) from the graph Output the union of C(i).

Requirements s1 s4 Goal: Find a cut with t1 t3 t2 A region s3 s2 What do we need for C(i)? t4 Cost requirement: Feasibility requirement: There is no source-sink pair in each R(i).

Cost Requirement Goal: Find a cut with Cost requirement: A region R1 R2 C1 C2 Goal: Find a cut with Cost requirement: Cost requirement implies the Goal: It is important that every edge is counted at most once, and this is why we need to remove C(i) and R(i) from the graph.

Linear Program Question: How to find the cut, i.e. R(i) and C(i), to satisfy the requirements? for each path p connecting a source-sink pair A useful interpretation is to think of d(e) as the length of e. So the linear program says that each source-sink pair is of distance at least 1.

Distance Key: think of d(e) as the length of e. Define the distance between two vertices as the length of their shortest path. Given a vertex v as the center, define S(r) to be the set of vertices of distance at most r from v. Idea: Set R(i) be to be S(r) with s1 as the center. R1 s1 Then, naturally, set C(i) to be the set of edges with one endpoint in R(i) and one endpoint outside R(i). C1

A region defined by a ball Feasibility Requirement Feasibility requirement: There is no source-sink pair in each R(i). This is because we’ll remove R(i) from the graph. The linear program says that each source-sink pair is of distance at least 1. Idea: Only choose S(r) with r ≤ ½. Radius ≤ ½ Since the distance between s(i) and t(i) is at least 1, they cannot be in the same R(j), and hence the feasibility requirement is satisfied. A region defined by a ball

Where are we? (Multicut approximation algorithm) For each i, compute a s(i)-t(i) cut, say C(i). Remove C(i) and its component R(i) (its region) from the graph Output the union of C(i). Use the idea of ball to find R(i) and C(i) The ball has to satisfy two requirements: Cost requirement: Feasibility requirement: There is no source-sink pair in each R(i). By choosing the radius at most ½

Finding Cheap Regions Ri Cost requirement: si Want: f(n) to be as small as possible. Ci Region growing: search from S(0) to S(1/2)! Continuous process: think of dges as infinitely short. set R(i) = S(r); initially r=0. check if cost requirement is satisfied. if not, increase r and repeat.

Exponential Increase Ri Cost requirement: si Ci If the cost requirement is not satisfied, we make the ball bigger. Note that the right hand side increases in this process, and so the left hand side also increases faster, and so on. In fact, the right hand side grows exponentially with the radius.

Logarithmic Factor Let , the optimal value of the LP. We only need to grow k regions, where k is the number of source-sink pairs. Set wt(S(0)) = F/k. In other words, we assign some additional weights to each source, but the total additional weight is at most F. Maximum weight a ball can get is F + F/k, from all the edges and the source. Set f(n) = 2ln(k+1).

Logarithmic Factor To summarize: By using the technique of region growing, we can find a cut (a ball with radius at most ½) that satisfies: Cost requirement: Feasibility requirement: There is no source-sink pair in each R(i). The cost requirement implies that it is an O(ln k)-approximation algorithm. The analysis is tight. The integrality gap of this LP is acutally Ω(ln k).

The Algorithm (Multicut approximation algorithm) Solve the linear program. For each i, compute a s(i)-t(i) cut, say C(i). Remove C(i) and its component R(i) (its region) from the graph Output the union of C(i). (Region growing algorithm) Assign a weight F/k to s(i), and set S={s(i)}. Add vertices to S in increasing order of their distances from s(i). Stop at the first point when c(S), the total weight of the edges on the boundary, is at most 2ln(k+1)wt(S). Set R(i):=S, and C(i) be the set of edges crossing R(i).

The Algorithm R1 s1 s4 t1 t3 C1 t2 C2 A region s3 s2 t4 R2

The Algorithm R1 s1 s4 t1 t3 C1 t2 C2 A region s3 s2 t4 Important ideas: Use linear program. Compare the cost of the cut to the cost of the region. Think of the variables as distances. Growing the ball to find the region. R2 The idea of region growing can also be applied to other graph problems, most notably the feedback arc set problem, and also many applications.