a polylogarithmic approximation of the minimum bisection robert krauthgamer the hebrew university...

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

Upload: caitlin-taylor

Post on 17-Dec-2015

220 views

Category:

Documents


3 download

TRANSCRIPT

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

A polylogarithmic approximationof the minimum bisection

Robert Krauthgamer

The Hebrew University

Joint work with Uri Feige

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

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. S V\S

• The cut is called a bisection if |S|=|V \ S|=n/2 .• Let b denote the minimum cost of a bisection.

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

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 …

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

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(n1/2).

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

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:4n

4n

14n

14n

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

6

Our results [FK00]

Algorithm with approximation ratio O(log2 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.

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

7

Algorithmic roadmap

Min-ratio cut [LR00]=O(log n) approximation

Bicriteria approximation2/3-balanced cut of cost O(·b)

Minimum bisection:Tool:

Approximationbisection of cost O(·log n) · b

Amortized cut [FK00]amortization cost =O()

2/3-balanced cut of cost O(·b)

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

8

Min-ratio cut

Is a cut (S,V \ S) that minimizes the cut-ratiowhere S is the smaller side of the cut.

(a.k.a. edge-expansion or flux)

• Interpretation: The cost of thecut 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].

( , \ )| |

e S V SS

S V \ S

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

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.

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

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.

/ 6b

n

/ 6b

n

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

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

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

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.)

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

13

Divide and conquer – illustration

Cutting k vertices from a part U:

• Divide the part U using a cut (U1,U2)

• Recursively cut ki vertices from Ui

where k1+ k2 = k

• Denote solution cut as (Ci,Fi) with |Ci| = ki

C1C2

F1F2

• Combine solutions into cut (C1C2, F1F2)

C1C2

F1F2

U1 U2

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

14

Combined cut – actual cost

Cost of combined cut of U is:cut(U,k)=icut(Ui,ki)+e(C1,F2)+e(C2,F1)

C1C2

F1F2

C1C2

F1F2

U1 U2

Problem: Two last terms depend on both subproblems (of U1 and of U2).We want two separate subproblems !

Solution: Use an upper bounde.g. cut(U,k) i cut(Ui,ki) + e(U1,U2) .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.

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

15

Combined cut – upper bound

Cost of combined cut of U is:cut(U,k)=icut(Ui,ki)+e(C1,F2)+e(C2,F1)

icut(Ui,ki)+e(C1,U2)+e(C2,U1)

C1C2

F1F2

C1C2

F1F2

U1 U2

Excess over actual cost is 2e(C1,C2) .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 tominimize cut(Ui,ki)+e(Ci,U3-i) ,i.e. cost of cut in Ui + edges to other part.

Call the vertices of C charged, and of F free.

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

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.

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

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(C1,C2) .

– cost is the sum, over all divide steps, of e(C,F) .

• Goal: steps e(C1,C2) polylog · steps e(C,F)

• Interpretation: amortize (all) charged-charged edges cut against (all) charged-free edges cut.

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

18

Desired amortization scheme

Goal: amortize e(C1,C2) against e(C,F) .

• Suppose that we amortize inside a divide step– assume amortization of e(C1,C2) 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 ?

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

19

Two amortization methods

We scale amortization cost according to imbalance in one of two methods (assume wlog |V1| |V2|):

1. Scale by , i.e. require

2. Scale by , i.e. require

1 1( , )( , )

e C Fe C F

1 11 2

( , )( , ) ( , )

( , )e C F

e C C e C Fe C F

1| || |CC

11 2

| |( , ) ( , )

| |C

e C C e C FC

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

20

Definition of amortized cut

A cut (V1, V2) with |V1| |V2| is called -amortized if for every partition V=C F with |C| 0.9 |V|,

we either have

or

where Ci= C Vi and Fi= F Vi .

Remark: is not an approximation ratio.

1 2 1 1( , ) ( , )e C C e C F 1

1 2| |

( , ) ( , )| |C

e C C e C FC

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

21

Approximating bisection

Lemma. Assume divide steps are -amortized cuts. Then for optimal bisection,

e(C1,C2) 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.

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

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 .

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

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.

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

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 !

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

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(C1,F1) .– 2nd amortization method is , because

|C| n/6 , steps|C1| n/2 and so |C1|/|C| O(1) . We conclude that the algorithm outputs 2/3-balanced

cut of cost (1+O()) · b, proving Theorem 2.

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

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 ?

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

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 .

( , \ )( )

| |e S V S

r SS

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 ?

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

28

Finding locally optimal approximate min-ratio cut

1. Find a -approximate min-ratio cut (V1,V2) with |V1| |V2| .

V1

V2

\ SpSp

s...p

...

t

3. Add a vertex s that is connected to all vertices of V1 by edges whose cost is a parameter p>0.

2. Merge all vertices of V2 into a single vertex t.

6. Output the cut (Sp,V \ Sp).

4. Let Sp denote the vertices of V2 that are on the same side with s in a minimum (s,t)-cut.

5. Find (by binary search) the

minimum p>0 with Sp .

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

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 · |V1| < p · |V1 \ S| + e(S,V \ S)

V1

V2

\ SpSp

s...p

...

t( , \ )

( )| |

e S V Sp r S

S

When p < p* = min{r(S): S V}

we get Sp = .

When p = p* + we get Sp with r(Sp)=p*, as required.

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

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(log2 n).

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

31

Summary

Min-ratio cut [LR00]=O(log n) approximation

Bicriteria approximation2/3-balanced cut of cost O(·b)

Minimum bisection:Tool:

Approximationbisection of cost O(·log n) · b

Amortized cut [FK00]amortization cost =O()

2/3-balanced cut of cost O(·b)