Presentation is loading. Please wait.

Presentation is loading. Please wait.

A polylogarithmic approximation of the minimum bisection Robert Krauthgamer The Hebrew University Joint work with Uri Feige.

Similar presentations


Presentation on theme: "A polylogarithmic approximation of the minimum bisection Robert Krauthgamer The Hebrew University Joint work with Uri Feige."— Presentation transcript:

1 A polylogarithmic approximation of the minimum bisection Robert Krauthgamer The Hebrew University Joint work with Uri Feige

2 2 Graph bisection Let G(V,E) be a graph on n vertices A cut (S,V \ S) is the set of edges with one endpoint in S and one endpoint in V \ S. The cost of a cut is the number of edges in it. SV\SV\S The cut is called a bisection if |S|=|V \ S|=n/2. Let b denote the minimum cost of a bisection.

3 3 The minimum bisection problem No hardness of approximation is known. –Perhaps has a PTAS. (PTAS = approximation within any fixed ratio  >1) We wish to approximate b in polynomial time –I.e., find bisection of cost   ·b. –  > 1 is called the approximation ratio. Computing the minimum bisection cost b –is an NP-hard problem [GJS76] –that has many applications …

4 4 Previous work Bicriteria (or pseudo-) approximation algorithms: –A cut (S,V \ S) is 2/3-balanced if n/3  |S|,|V \ S|  2n/3 –[LR88] can find a 2/3-balanced cut cost O(b·log n). –Useful for many applications, –but does not approximate b. Approximation algorithms: –[SV91] show approximation ratio n/2. –[FKN00] show approximation ratio roughly O(n 1/2 ).

5 5 Where is the problem ? Plausible two phase plan: –Find a nearly balanced cut of low cost. –Move a few vertices to balance the two sides. Problem: moving even one vertex can increase the cut cost by a factor of  (n). 4 cliques example:

6 6 Our results [FK00] Algorithm with approximation ratio O(log 2 n). Our algorithm extends to: Arbitrary (nonnegative) edge costs. Arbitrary (nonnegative polynomial integer) vertex weights. Cutting away an arbitrary number of vertices. Cutting into any fixed number of equal-size parts. Separating (in addition) a given pair of terminals s,t. Techniques relevant also to bicriteria approximation.

7 7 Algorithmic roadmap Min-ratio cut [LR00]  =O(log n) approximation Bicriteria approximation 2/3-balanced cut of cost O(  ·b) Minimum bisection:Tool: Approximation bisection of cost O(  ·log n) · b Amortized cut [FK00] amortization cost  =O(  ) 2/3-balanced cut of cost O(  ·b)

8 8 Min-ratio cut Is a cut (S,V \ S) that minimizes the cut-ratio where S is the smaller side of the cut. (a.k.a. edge-expansion or flux) Interpretation: The cost of the cut is amortized against vertices in smaller side. Finding a min-ratio cut is –NP-hard [GJS76] –Can be approximated within ratio  = O(log n) [LR88]. S V \ S

9 9 2/3-balanced cut by min-ratio cuts Repeat –find (in the graph) approximate min-ratio cut, and –remove the smaller of its two sides (from the graph) Until the graph contains at most 2n/3 vertices. Output the cut that separates all removed vertices.

10 10 Analysis of 2/3-balanced cut The algorithm clearly outputs a 2/3-balanced cut. At every iteration: –the graph has a cut of ratio –we find  approximation to it –the cost amortized against a vertex is –and each such vertex is removed (so  2n/3 vertices). The total number of edges cut is O(  ·b), and so is the cost of the output cut.

11 11 Divide and conquer approach For a general graph problem: Divide input graph G into two parts (using a cut) Solve a subproblem for each part Combine solutions of two subproblems. When applied recursively: The graph is divided into smaller and smaller parts –until each part is a singleton Each part is associated with a subproblem

12 12 Divide and conquer for bisection Apply the above general approach The subproblem associated with a part is to cut from the part an arbitrary number of vertices k. Note that we have here two types of cuts: Divide step cuts. Combined solution cuts. (Can be two different cuts in the same part.)

13 13 Divide and conquer – illustration Cutting k vertices from a part U: Divide the part U using a cut (U 1,U 2 ) Recursively cut k i vertices from U i where k 1 + k 2 = k Denote solution cut as (C i,F i ) with |C i | = k i C1C1 C2C2 F1F1 F2F2 Combine solutions into cut (C 1  C 2, F 1  F 2 ) C1C1 C2C2 F1F1 F2F2 U1U1 U2U2

14 14 Combined cut – actual cost Cost of combined cut of U is: cut(U,k)=  i cut(U i,k i )+e(C 1,F 2 )+e(C 2,F 1 ) C1C1 C2C2 F1F1 F2F2 C1C1 C2C2 F1F1 F2F2 U1U1 U2U2 Problem: Two last terms depend on both subproblems (of U 1 and of U 2 ). We want two separate subproblems ! Solution: Use an upper bound e.g. cut(U,k)   i cut(U i,k i ) + e(U 1,U 2 ). We obtain two separate subproblems, with additional cost that depends only on divide step. Problem: This bound is not sensitive to cases where k is small.

15 15 Combined cut – upper bound Cost of combined cut of U is: cut(U,k)=  i cut(U i,k i )+e(C 1,F 2 )+e(C 2,F 1 )   i cut(U i,k i )+e(C 1,U 2 )+e(C 2,U 1 ) C1C1 C2C2 F1F1 F2F2 C1C1 C2C2 F1F1 F2F2 U1U1 U2U2 Excess over actual cost is 2e(C 1,C 2 ). We may want C to be the smaller side, i.e. |C|  |F|. Actually, it suffices to assume that |C|  0.9|U|. Each subproblem requires to minimize cut(U i,k i )+e(C i,U 3-i ), i.e. cost of cut in U i + edges to other part. Call the vertices of C charged, and of F free.

16 16 Upper bound on bisection cost Consider an arbitrary bisection of the input graph. –Fix the divide steps and the “charged” sides. –Think of this bisection as the solution obtained by recursively combining cuts of smaller parts. Applying our upper bound recursively gives a value that we call the charge of this bisection. –For every bisection: cost  charge. Our algorithm minimizes charge rather than cost. For optimal bisection, we want: charge approximates cost.

17 17 Devising a divide step Fix one optimal bisection (i.e. cost=b) Consider its charge vs. cost. –or, alternatively, excess = charge - cost vs. cost. –we want that excess  polylog · cost. –excess is the sum, over all divide steps, of 2e(C 1,C 2 ). –cost is the sum, over all divide steps, of e(C,F). Goal:  steps e(C 1,C 2 )  polylog ·  steps e(C,F) Interpretation: amortize (all) charged-charged edges cut against (all) charged-free edges cut.

18 18 Desired amortization scheme Goal: amortize  e(C 1,C 2 ) against  e(C,F). Suppose that we amortize inside a divide step –assume amortization of e(C 1,C 2 ) against e(C,F) is  . If divide steps are roughly balanced –then divide steps’ depth is O(log n) –each edge receives amortized cost only O(log n) times. –then total cost amortized against an edge is O(  ·log n). What to do when divide steps are not balanced ?

19 19 Two amortization methods We scale amortization cost according to imbalance in one of two methods (assume wlog |V 1 |  |V 2 |): 1. Scale by, i.e. require 2. Scale by, i.e. require

20 20 Definition of amortized cut A cut (V 1, V 2 ) with |V 1 |  |V 2 | is called  -amortized if for every partition V=C  F with |C|  0.9 |V|, we either have or where C i = C  V i and F i = F  V i. Remark:  is not an approximation ratio.

21 21 Approximating bisection Lemma. Assume divide steps are  -amortized cuts. Then for optimal bisection,  e(C 1,C 2 )  O(  ·log n) ·  e(C,F) = O(  ·log n) · b Theorem 1. An algorithm that finds  -amortized cut implies algorithm that approximates minimum bisection within ratio 1+O(  ·log n). For more details and proofs see the paper.

22 22 Bicriteria approximation for bisection By using amortized cuts instead of min-ratio cuts in the algorithm of [LR88], we obtain: Theorem 2. An algorithm that finds  -amortized cut implies 1+O(  ) bicriteria approximation, namely, an algorithm that finds 2/3-balanced cut of cost (1+O(  )) · b.

23 23 2/3-balanced cut by amortized cuts Repeat –find (in the graph) a  -amortized cut, and –remove the smaller of its two sides (from the graph) Until the graph contains at most 2n/3 vertices. Output the cut that separates all removed vertices.

24 24 Analysis of 2/3-balanced cut The algorithm clearly outputs a 2/3-balanced cut. Fix an optimal bisection and call it red-blue. –Total cost of red-blue edges cut is  b. –Need to bound total cost of red-red (similarly blue- blue) edges cut by O(  · b). Let the red vertices be charged C and the blue vertices be free F in all iterations. –The amortization scheme upper bounds the total cost of charged-charged (i.e. red-red) edges cut !

25 25 Analysis of 2/3-balanced cut Lemma. Cost of charged-charged edges cut  O(  ·b) Proof. The total cost amortized against an edge in –1st amortization method is  , because an edge appears at most once in e(C 1,F 1 ). –2nd amortization method is  , because |C|  n/6,  steps |C 1 |  n/2 and so  |C 1 |/|C|  O(1).  We conclude that the algorithm outputs 2/3-balanced cut of cost  (1+O(  )) · b, proving Theorem 2.

26 26 Connections between approximate min-ratio cuts and amortized cuts Lemma. An optimal min-ratio is O(1)-amortized cut. Proof appears in the paper. From the existence of an optimal min-ratio cut we obtain: Corollary. Every graph has O(1)-amortized cut. Goal: Extend lemma to approximate min-ratio cuts. Problem: An O(1)-approximate min-ratio cut might be  (n)-amortized cut (and vice versa). What additional properties are used in our proof ?

27 27 Locally optimal cuts Denote the ratio of a cut (S,V \ S) by Definition. A cut (S,V \ S) with |S|  |V \ S| is called locally optimal if r(S’)  r(S) for every S’  S. Our previous lemma extends as follows. Lemma. A locally optimal  -approximate min-ratio cut is an O(  )-amortized cut. How do we guarantee that a cut is locally optimal ?

28 28 Finding locally optimal approximate min-ratio cut 1. Find a  -approximate min-ratio cut (V 1,V 2 ) with |V 1 |  |V 2 |. V1V1 V2V2 \ S p SpSp s... p t 3. Add a vertex s that is connected to all vertices of V 1 by edges whose cost is a parameter p>0. 2. Merge all vertices of V 2 into a single vertex t. 6. Output the cut (S p,V \ S p ). 4. Let S p denote the vertices of V 2 that are on the same side with s in a minimum (s,t)-cut. 5. Find (by binary search) the minimum p>0 with S p  .

29 29 Algorithm analysis Lemma. The algorithm finds a cut (S,V \ S) that is a locally optimal  -approximate min-ratio cut. Proof. The empty set  gives a better cut than S   whenever p · |V 1 | < p · |V 1 \ S| + e(S,V \ S) V1V1 V2V2 \ S p SpSp s... p t When p < p* = min{r(S): S  V} we get S p = . When p = p* +  we get S p with r(S p )=p*, as required. 

30 30 Finding an amortized cut Recall that a locally optimal  -approximate min-ratio cut is O(  )-amortized cut. We obtain: Theorem 3. An algorithm that finds  -approximate min-ratio cut implies an algorithm that finds O(  )- amortized cut. Recall that [LR88] achieve  = O(log n)   = O(log n). Combined with our Theorem 1, we obtain: Corollary. Minimum bisection can be approximated within ratio O(log 2 n).

31 31 Summary Min-ratio cut [LR00]  =O(log n) approximation Bicriteria approximation 2/3-balanced cut of cost O(  ·b) Minimum bisection:Tool: Approximation bisection of cost O(  ·log n) · b Amortized cut [FK00] amortization cost  =O(  ) 2/3-balanced cut of cost O(  ·b)


Download ppt "A polylogarithmic approximation of the minimum bisection Robert Krauthgamer The Hebrew University Joint work with Uri Feige."

Similar presentations


Ads by Google