A polylogarithmic approximation of the minimum bisection Robert Krauthgamer The Hebrew University...
-
Upload
caitlin-taylor -
Category
Documents
-
view
220 -
download
3
Transcript of A polylogarithmic approximation of the minimum bisection Robert Krauthgamer The Hebrew University...
A polylogarithmic approximationof 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.
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
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).
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
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.
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)
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
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
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
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
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
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
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.
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.
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
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.
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 ?
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
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
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.
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
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
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
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.
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
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 ?
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 .
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.
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).
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)