multiway cut - rutgers university
TRANSCRIPT
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Multiway Cut
Sean Lowen
Franklin W. Olin College of Engineering
November 22, 2011
1 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Problem
Input
An undirected graph G = (V ,E ) with
◮ Non-negative weights we , ∀e ∈ E
◮ Set of terminals S = {s1, s2, · · · , sk} ⊆ V
Output
Subset of edges at min cost whose removal disconnects allterminals from each other
5
11
7
6
8
3
21
s2
s1
2 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Problem
Input
An undirected graph G = (V ,E ) with
◮ Non-negative weights we , ∀e ∈ E
◮ Set of terminals S = {s1, s2, · · · , sk} ⊆ V
Output
Subset of edges at min cost whose removal disconnects allterminals from each other
5
11
7
6
8
3
21
s2
s1
5
11
7
6
8
3
21
s2
s1
Cost = 14 3 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Problem
Input
An undirected graph G = (V ,E ) with
◮ Non-negative weights we , ∀e ∈ E
◮ Set of terminals S = {s1, s2, · · · , sk} ⊆ V
Output
Subset of edges at min cost whose removal disconnects allterminals from each other
5
11
7
6
8
3
21
s2
s1
5
11
7
6
8
3
21
s2
s1
Cost = 14
5
11
7
6
8
3
21
s2
s1
Cost = 6 4 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Outline
Simple 2-2/k Approximation
LP Relaxation
Understanding the LP Solution
Randomized Rounding Algorithm
Analysis
Modifying LP Solution
5 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Algorithm
Multiway Cut Algorithm
1. S = {s1, · · · , sk}
2. for i ← 1 to k do:ti ← contraction of S \ {si}Zi ← min si -ti cut
3. let w(Z1) ≤ w(Z2) ≤ · · · ≤ w(Zk)
4. return
k−1⋃
i=1Zi
6 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
2-2/k Approx Example
s2
s1
s3
1
5
2
3
4
2
5
2
6
41
7 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
2-2/k Approx Example
s2
s1
s3
1
5
2
3
4
2
5
2
6
41
t1
Z1
1
5
2
3
4
25
2
64
s1
1
8 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
2-2/k Approx Example
t1
Z1
1
5
2
3
4
25
2
64
s1
1
9 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
2-2/k Approx Example
t1
Z1
1
5
2
3
4
25
2
64
s1
1
s2
t2
1
5
2
3
4
2
5
2
6
4
Z2
1
10 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
2-2/k Approx Example
t1
Z1
1
5
2
3
4
25
2
64
s1
1
t3
s3
1
52
3
4
2
5
2
6
41
Z3
s2
t2
1
5
2
3
4
2
5
2
6
4
Z2
1
11 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
2-2/k Approx Example
t1
Z1
1
5
2
3
4
25
2
64
s1
1
t3
s3
1
52
3
4
2
5
2
6
41
Z3
s2
t2
1
5
2
3
4
2
5
2
6
4
Z2
1
s2
s1
s3
Cost = 11
12 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Analysis
◮ A∗: optimal solution◮ A∗
i : edges in A∗ with exactly one endpoint in the partitioncontaining si
w(Z1) ≤ w(A∗
1)
w(Z2) ≤ w(A∗
2)
...
w(Zk) ≤ w(A∗
k)
A1
*
A3
*
A2
*
s1
s2
s3
w(⋃
i
Zi) ≤k∑
i=1w(A∗
i ) = 2 ·OPT
w(k−1⋃
i=1
Zi) ≤ (1− 1k)w(
⋃
i
Zi) ≤ 2(1− 1k) · OPT
13 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Analysis
◮ A∗: optimal solution◮ A∗
i : edges in A∗ with exactly one endpoint in the partitioncontaining si
w(Z1) ≤ w(A∗
1)
w(Z2) ≤ w(A∗
2)
...
w(Zk) ≤ w(A∗
k)
A1
*
A3
*
A2
*
s1
s2
s3
w(⋃
i
Zi) ≤k∑
i=1w(A∗
i ) = 2 ·OPT
w(k−1⋃
i=1
Zi) ≤ (1− 1k)w(
⋃
i
Zi) ≤ 2(1− 1k) · OPT
14 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Theorem
The above gives a (2− 2k)-approximation for multiway cut.
15 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Outline
Simple 2-2/k Approximation
LP Relaxation
Understanding the LP Solution
Randomized Rounding Algorithm
Analysis
Modifying LP Solution
16 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
LP Relaxation
◮ W.l.o.g., any feasible solution will partition the verticesinto C1,C2, · · · ,Ck
◮ si ∈ Ci
◮ δ(Ci ): set of edges leaving Ci
◮ vi =
{
1, if v ∈ Ci
0, otherwise
◮ z ie =
{
1, if e ∈ δ(Ci )
0, otherwise
◮ Obj: min⋃
i
w(δ(Ci ))
◮ In other words:
min 12
∑
e∈E
we
k∑
i=1z ie
Ci
Cj
u
v
si
sj
17 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
LP Relaxation
◮ W.l.o.g., any feasible solution will partition the verticesinto C1,C2, · · · ,Ck
◮ si ∈ Ci
◮ δ(Ci ): set of edges leaving Ci
◮ vi =
{
1, if v ∈ Ci
0, otherwise
◮ z ie =
{
1, if e ∈ δ(Ci )
0, otherwise
◮ Obj: min⋃
i
w(δ(Ci ))
◮ In other words:
min 12
∑
e∈E
we
k∑
i=1z ie
Ci
Cj
u
v
si
sj
18 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
LP Relaxation
◮ W.l.o.g., any feasible solution will partition the verticesinto C1,C2, · · · ,Ck
◮ si ∈ Ci
◮ δ(Ci ): set of edges leaving Ci
◮ vi =
{
1, if v ∈ Ci
0, otherwise
◮ z ie =
{
1, if e ∈ δ(Ci )
0, otherwise
◮ Obj: min⋃
i
w(δ(Ci ))
◮ In other words:
min 12
∑
e∈E
we
k∑
i=1z ie
Ci
Cj
u
si
sj
v
19 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
LP Relaxation
◮ W.l.o.g., any feasible solution will partition the verticesinto C1,C2, · · · ,Ck
◮ si ∈ Ci
◮ δ(Ci ): set of edges leaving Ci
◮ vi =
{
1, if v ∈ Ci
0, otherwise
◮ z ie =
{
1, if e ∈ δ(Ci )
0, otherwise
◮ Obj: min⋃
i
w(δ(Ci ))
◮ In other words:
min 12
∑
e∈E
we
k∑
i=1z ie
Ci
Cj
u
si
sj
v
uj= 0
ui = 1
vi = 0
vj = 1
20 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
LP Relaxation
◮ W.l.o.g., any feasible solution will partition the verticesinto C1,C2, · · · ,Ck
◮ si ∈ Ci
◮ δ(Ci ): set of edges leaving Ci
◮ vi =
{
1, if v ∈ Ci
0, otherwise
◮ z ie =
{
1, if e ∈ δ(Ci )
0, otherwise
◮ Obj: min⋃
i
w(δ(Ci ))
◮ In other words:
min 12
∑
e∈E
we
k∑
i=1z ie
Ci
Cj
u
e ze
i= |u - v|=1
si
sj
v
ui = 1
vi = 0
i i
21 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
LP Relaxation
◮ W.l.o.g., any feasible solution will partition the verticesinto C1,C2, · · · ,Ck
◮ si ∈ Ci
◮ δ(Ci ): set of edges leaving Ci
◮ vi =
{
1, if v ∈ Ci
0, otherwise
◮ z ie =
{
1, if e ∈ δ(Ci )
0, otherwise
◮ Obj: min⋃
i
w(δ(Ci ))
◮ In other words:
min 12
∑
e∈E
we
k∑
i=1z ie
Ci
Cj
u
e ze
i= |u - v|=1
si
sj
v
ui = 1
vi = 0
i i
22 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
LP Relaxation
◮ W.l.o.g., any feasible solution will partition the verticesinto C1,C2, · · · ,Ck
◮ si ∈ Ci
◮ δ(Ci ): set of edges leaving Ci
◮ vi =
{
1, if v ∈ Ci
0, otherwise
◮ z ie =
{
1, if e ∈ δ(Ci )
0, otherwise
◮ Obj: min⋃
i
w(δ(Ci ))
◮ In other words:
min 12
∑
e∈E
we
k∑
i=1z ie
Ci
Cj
u
e ze
i= |u - v|=1
si
sj
v
ui = 1
vi = 0
i i
23 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Constructing the LP
Integer Program
minimize 12
∑
e∈E
we
k∑
i=1z ie (1)
s.t.k∑
i=1
vi = 1, ∀v ∈ V (2)
z ie = |ui − vi |, ∀e = (u, v) ∈ E , 1 ≤ i ≤ k (3)sii = 1, ∀s ∈ S (4)vi ∈ {0, 1}, ∀v ∈ V , 1 ≤ i ≤ k (5)
24 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Constructing the LP
LP Relaxation
minimize 12
∑
e∈E
we
k∑
i=1
z ie (1)
s.t.k∑
i=1
vi = 1, ∀v ∈ V (2)
z ie = |ui − vi |, ∀e = (u, v) ∈ E , 1 ≤ i ≤ k (3)sii = 1, ∀s ∈ S (4)vi ≥ 0, ∀v ∈ V , 1 ≤ i ≤ k (5)
25 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Interpreting the LP
◮ xv = (x1v , x2v , ..., x
kv ), a point in R
k
◮ x iv ← vi
◮ all coordinates of xv sum to 1
◮ xv belongs to the (k − 1)-simplex
◮ xsi : unit vector with i th coordinate equal to 1
◮ Let de = 12
k∑
i=1z ie =
12
k∑
i=1|x iu − x iv |
26 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
∆3 Simplex
27 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Interpreting the LP
◮ xv = (x1v , x2v , ..., x
kv ), a point in R
k
◮ x iv ← vi
◮ all coordinates of xv sum to 1
◮ xv belongs to the (k − 1)-simplex
◮ xsi : unit vector with i th coordinate equal to 1
◮ Let de = 12
k∑
i=1z ie =
12
k∑
i=1|x iu − x iv |
28 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Constructing the LP
LP Relaxation
minimize 12
∑
e∈E
we
k∑
i=1
z ie
s.t.k∑
i=1vi = 1, ∀v ∈ V
z ie = |ui − vi |, ∀e = (u, v) ∈ E , 1 ≤ i ≤ k
sii = 1, ∀s ∈ S
vi ≥ 0, ∀v ∈ V , 1 ≤ i ≤ k
29 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
LP Relaxation
LP
minimize∑
e∈E
wede
s.t.k∑
i=1x iv = 1, ∀v ∈ V
de =12
k∑
i=1|x iu − x iv | ∀e = (u, v) ∈ E
x isi = 1, ∀s ∈ S
x iv ≥ 0, ∀v ∈ V , 1 ≤ i ≤ k
30 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
LP Relaxation
Is this a valid LP relaxation?
ws2
s1
vu
s3
2 2
1
1 12
22
2
31 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
LP Relaxation
Is this a valid LP relaxation?
ws2
s1
vu
s3
2 2
1
1 12
22
2
ws2
s1
vu
s3
2 2
1
1 12
22
2
32 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
LP Relaxation
Is this a valid LP relaxation?
ws2
s1
vu
s3
2 2
1
1 12
22
2
ws2
s1
vu
s3
ws2
s1
vu
s3
2 2
1
1 12
22
2
33 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
LP Relaxation
Is this a valid LP relaxation?
ws2
s1
vu
s3
2 2
1
1 12
22
2
ws2
s1
vu
s3
ws2
s1
vu
s3
2 2
1
1 12
22
2
xw
s2
s1
xv
xu s
3
(0,0,1)(0,1,0)
(1,0,0)
2
2
2
1
1
34 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
LP Relaxation
LP
minimize∑
e∈E
wede
s.t.k∑
i=1x iv = 1, ∀v ∈ V
de =12
k∑
i=1|x iu − x iv | ∀e = (u, v) ∈ E
x isi = 1, ∀s ∈ S
x iv ≥ 0, ∀v ∈ V , 1 ≤ i ≤ k
35 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Outline
Simple 2-2/k Approximation
LP Relaxation
Understanding the LP Solution
Randomized Rounding Algorithm
Analysis
Modifying LP Solution
36 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
LP Solution: Example
ws2
s1
vu
s3
2 2
1
1 12
22
2
OPT = 8
37 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
LP Solution: Example
ws2
s1
vu
s3
2 2
1
1 12
22
2
OPT = 8
xw
s2
s1
xv
xu
s3
(1,0,0)
(.5,0,.5)
(0,0,1)(0,.5,.5)(0,1,0)
(.5,.5,0)
LP-OPT = 7.5
38 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
LP Solution: Example
ws2
s1
vu
s3
2 2
1
1 12
22
2
OPT = 8
xw
s2
s1
xv
xu
s3
(1,0,0)
(.5,0,.5)
(0,0,1)(0,.5,.5)(0,1,0)
(.5,.5,0)
LP-OPT = 7.5
39 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
LP Solution: Example
ws2
s1
vu
s3
2 2
1
1 12
22
2
OPT = 8
xw
s2
s1
xv
xu
s3
(1,0,0)
(.5,0,.5)
(0,0,1)(0,.5,.5)(0,1,0)
(.5,.5,0)
LP-OPT = 7.5
40 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Outline
Simple 2-2/k Approximation
LP Relaxation
Understanding the LP Solution
Randomized Rounding Algorithm
Analysis
Modifying LP Solution
41 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Notation
◮ Assume that the LP gives a solution in which, for anyedge (u,v), its endpoints differ in at most two coordinates.
◮ Ei : edges whose endpoints differ in coordinate i .
◮ Wi :∑
e∈Ei
wede
◮ B(si , ρ): {v ∈ V |x iv ≥ ρ}.
◮ Ci : partition containing si
42 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Algorithm
Algorithm
1. Compute optimum LP solution.
2. Renumber the terminals so that W1 ≤ · · · ≤Wk
3. Pick uniformly at random ρ ∈ (0, 1) andσ ∈ {(1, 2, . . . , k − 1, k), (k − 1, k − 2, . . . , 1, k)}.
4. for i = 1 to k − 1:Cσ(i)
← B(si , ρ)−⋃
j<i
Cσ(j)
5. Ck ← all remaining vertices
6. C : set of edges that run between sets C1, . . . ,Ck
7. return C
43 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Example of Algorithm Partitions
ρ < 12 , σ = (1, 2, 3)
44 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Example of Algorithm Partitions
ρ < 12 , σ = (1, 2, 3)
45 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Example of Algorithm Partitions
ρ < 12 , σ = (1, 2, 3)
46 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Example of Algorithm Partitions
ρ < 12 , σ = (1, 2, 3)
47 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Example of Algorithm Partitions
ρ < 12 , σ = (1, 2, 3)
48 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Outline
Simple 2-2/k Approximation
LP Relaxation
Understanding the LP Solution
Randomized Rounding Algorithm
Analysis
Modifying LP Solution
49 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Analysis
Lemma
If e ∈ E − Ek ,Pr[e ∈ C ] ≤ 1.5deIf e ∈ Ek ,Pr[e ∈ C ] ≤ de
◮ Consider edge e = (u, v), where u and v differ incoordinates i and j
◮ By definition, x iu − x iv = xjv − x
ju = de
◮ Edge e will only be cut if xu and xv end up in differentpartitions, i.e., ρ falls in either the (x iu , x
iv ) or (x
jv , x
ju)
intervals.
◮ Let’s call those intervals α and β, respectively.
50 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Analysis
Lemma
If e ∈ E − Ek ,Pr[e ∈ C ] ≤ 1.5deIf e ∈ Ek ,Pr[e ∈ C ] ≤ de
◮ Consider edge e = (u, v), where u and v differ incoordinates i and j
◮ By definition, x iu − x iv = xjv − x
ju = de
◮ Edge e will only be cut if xu and xv end up in differentpartitions, i.e., ρ falls in either the (x iu , x
iv ) or (x
jv , x
ju)
intervals.
◮ Let’s call those intervals α and β, respectively.
51 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Analysis
Lemma
If e ∈ E − Ek ,Pr[e ∈ C ] ≤ 1.5deIf e ∈ Ek ,Pr[e ∈ C ] ≤ de
◮ Consider edge e = (u, v), where u and v differ incoordinates i and j
◮ By definition, x iu − x iv = xjv − x
ju = de
◮ Edge e will only be cut if xu and xv end up in differentpartitions, i.e., ρ falls in either the (x iu , x
iv ) or (x
jv , x
ju)
intervals.
◮ Let’s call those intervals α and β, respectively.
52 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Analysis
Lemma
If e ∈ E − Ek ,Pr[e ∈ C ] ≤ 1.5deIf e ∈ Ek ,Pr[e ∈ C ] ≤ de
◮ Consider edge e = (u, v), where u and v differ incoordinates i and j
◮ By definition, x iu − x iv = xjv − x
ju = de
◮ Edge e will only be cut if xu and xv end up in differentpartitions, i.e., ρ falls in either the (x iu , x
iv ) or (x
jv , x
ju)
intervals.
◮ Let’s call those intervals α and β, respectively.
53 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Analysis: e ∈ E \ Ek
Edge e = (u, v) differs in coordinates i & j
Pr[e ∈ C ] = Pr[ρ ∈ (α ∪ β)] = |α|+ |β| ≤ 2de
54 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Analysis: e ∈ E \ Ek
Case I: ρ ∈ β and σ = (. . . , j , . . . , i , . . .)
55 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Analysis: e ∈ E \ Ek
Case I: ρ ∈ β and σ = (. . . , j , . . . , i , . . .)
56 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Analysis: e ∈ E \ Ek
Case II: ρ ∈ β and σ = (. . . , i , . . . , j , . . .)
57 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Analysis: e ∈ E \ Ek
Case II: ρ ∈ β and σ = (. . . , i , . . . , j , . . .)
58 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Analysis: e ∈ E \ Ek
Case II: ρ ∈ β and σ = (. . . , i , . . . , j , . . .)
59 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Analysis: e ∈ E \ Ek
Case II: ρ ∈ β and σ = (. . . , i , . . . , j , . . .)
60 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Analysis: e ∈ E \ Ek
Case III: ρ ∈ α and σ = (. . . , i , . . . , j , . . .)
61 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Analysis: e ∈ E \ Ek
Case III: ρ ∈ α and σ = (. . . , i , . . . , j , . . .)
62 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Analysis: e ∈ E \ Ek
Case IV: ρ ∈ α and σ = (. . . , j , . . . , i , . . .)
63 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Analysis: e ∈ E \ Ek
Case IV: ρ ∈ α and σ = (. . . , j , . . . , i , . . .)
64 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Analysis: e ∈ E \ Ek
Pr[e ∈ C ] = Pr[ρ ∈ β] + Pr[(ρ ∈ α) ∧ (σ = (. . . , i , . . . , j , . . .))]
= |β|+|α|
2≤ 1.5de
Lemma
If e ∈ E − Ek ,Pr[e ∈ C ] ≤ 1.5de
65 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Analysis: e ∈ Ek
An edge in Ek can only be cut if ρ ∈ β.
◮ σ always = (. . . , i , . . . , k)
◮ k gets all remaining vertices
◮ Pr[e ∈ C ] = |β| = de
66 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Analysis: e ∈ Ek
An edge in Ek can only be cut if ρ ∈ β.
◮ σ always = (. . . , i , . . . , k)
◮ k gets all remaining vertices
◮ Pr[e ∈ C ] = |β| = de
Lemma
If e ∈ Ek ,Pr[e ∈ C ] ≤ de
67 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Approximation
OPT f =∑
e∈E
wede
Note that every edge belongs to exactly 2 of the Ei sets.
k∑
i=1
Wi = 2 ·OPT f
Since Wk is the largest of the sets:
Wk =∑
e∈Ek
wede ≥2k· OPTf
68 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Approximation
OPT f =∑
e∈E
wede
Note that every edge belongs to exactly 2 of the Ei sets.
k∑
i=1
Wi = 2 ·OPT f
Since Wk is the largest of the sets:
Wk =∑
e∈Ek
wede ≥2k· OPTf
69 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Approximation
OPT f =∑
e∈E
wede
Note that every edge belongs to exactly 2 of the Ei sets.
k∑
i=1
Wi = 2 ·OPT f
Since Wk is the largest of the sets:
Wk =∑
e∈Ek
wede ≥2k· OPTf
70 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Approximation
E[w(C )] =∑
e∈E
wePr[e ∈ C ]
=∑
e∈E−Ek
wePr[e ∈ C ] +∑
e∈Ek
wePr[e ∈ Ek ]
≤ 1.5∑
e∈E−Ek
wede +∑
e∈Ek
wede
= 1.5∑
e∈E
wede − 0.5∑
e∈Ek
wede
= 1.5∑
e∈E
wede − 0.5Wk
≤ (1.5 − 1/k) ·OPT f
71 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Conclusion
Theorem
There is a (1.5− 1k)-approximation for multiway cut.
72 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Outline
Simple 2-2/k Approximation
LP Relaxation
Understanding the LP Solution
Randomized Rounding Algorithm
Analysis
Modifying LP Solution
73 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Modifying the LP
Convert the LP solution to another LP solution of same cost inwhich each edge differs in at most two coordinates.
◮ xu & xv differ in morethan two coordinates.
◮ i : coordinate in which xuand xv differ the least.Let x iv > x iu.
◮ Let α = x iv − x iu
◮ There is a coordinate j
s.t. x ju − xjv ≥ α
◮ ∀k 6= i , j , xkw ← xkv
◮ wuw ,wwv ← wuv
xu
xu( ),... , ......
xu
xv
wuv
, ,i j
xv( ),... , ...... xv
i j
, ,
74 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Modifying the LP
Convert the LP solution to another LP solution of same cost inwhich each edge differs in at most two coordinates.
◮ xu & xv differ in morethan two coordinates.
◮ i : coordinate in which xuand xv differ the least.Let x iv > x iu.
◮ Let α = x iv − x iu
◮ There is a coordinate j
s.t. x ju − xjv ≥ α
◮ ∀k 6= i , j , xkw ← xkv
◮ wuw ,wwv ← wuv
xu
xu( ),... , ......
xu
xv
wuv
, ,i j
xv( ),... , ...... xv
i j
, ,
75 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Modifying the LP
Convert the LP solution to another LP solution of same cost inwhich each edge differs in at most two coordinates.
◮ xu & xv differ in morethan two coordinates.
◮ i : coordinate in which xuand xv differ the least.Let x iv > x iu.
◮ Let α = x iv − x iu
◮ There is a coordinate j
s.t. x ju − xjv ≥ α
◮ ∀k 6= i , j , xkw ← xkv
◮ wuw ,wwv ← wuv
xu
xu( ),... , ......
xu
xv
wuv
, ,i j
xv( ),... , ...... xv
i j
, ,
76 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Modifying the LP
Convert the LP solution to another LP solution of same cost inwhich each edge differs in at most two coordinates.
◮ xu & xv differ in morethan two coordinates.
◮ i : coordinate in which xuand xv differ the least.Let x iv > x iu.
◮ Let α = x iv − x iu
◮ There is a coordinate j
s.t. x ju − xjv ≥ α
◮ ∀k 6= i , j , xkw ← xkv
◮ wuw ,wwv ← wuv
xu
xu( ),... , ......
xu
xv
wuv
, ,i j
xv( ),... , ...... xv
i j
, ,
77 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Modifying the LP
Convert the LP solution to another LP solution of same cost inwhich each edge differs in at most two coordinates.
◮ xu & xv differ in morethan two coordinates.
◮ i : coordinate in which xuand xv differ the least.Let x iv > x iu.
◮ Let α = x iv − x iu
◮ There is a coordinate j
s.t. x ju − xjv ≥ α
◮ ∀k 6= i , j , xkw ← xkv
◮ wuw ,wwv ← wuv
wuv
xu
xu( ),... , ......
xu
xw
xv
,
xv( ),... , ...... xv
i j
, ,
,i j
78 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Modifying the LP
Convert the LP solution to another LP solution of same cost inwhich each edge differs in at most two coordinates.
◮ xu & xv differ in morethan two coordinates.
◮ i : coordinate in which xuand xv differ the least.Let x iv > x iu.
◮ Let α = x iv − x iu
◮ There is a coordinate j
s.t. x ju − xjv ≥ α
◮ ∀k 6= i , j , xkw ← xkv
◮ wuw ,wwv ← wuv
xv
xu( ),... , ...... + α, ,
wuv
wuv
xu
xu( ),... , ......
xu
xw
xv
, ,i j i j
xv( ),... , ...... xv
i j
, ,
79 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Modifying the LP
Convert the LP solution to another LP solution of same cost inwhich each edge differs in at most two coordinates.
◮ xu & xv differ in morethan two coordinates.
◮ i : coordinate in which xuand xv differ the least.Let x iv > x iu.
◮ Let α = x iv − x iu
◮ There is a coordinate j
s.t. x ju − xjv ≥ α
◮ ∀k 6= i , j , xkw ← xkv
◮ wuw ,wwv ← wuv
xv
xu( ),... , ...... + α, ,
wuv
wuv
xu
xu( ),... , ......
xu
xw
xv
, ,i j i j
xv( ),... , ...... xv
i j
, ,
80 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Does wuvduv = wuwduw + wwvdwv?
wuvduv?= wuvduw + wuvdwv
duv?= duw + dwv
Let duv = σ
duw = σ − 2α
dwv = 2α
duw + dwv = 2α+ σ − 2α
duw + dwv = σ = duv
xv
xu( ),... , ...... + α, ,
wuv
wuv
xu
xu( ),... , ......
xu
xw
xv
, ,i j i j
xv( ),... , ...... xv
i j
, ,
81 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Does wuvduv = wuwduw + wwvdwv?
wuvduv?= wuvduw + wuvdwv
duv?= duw + dwv
Let duv = σ
duw = σ − 2α
dwv = 2α
duw + dwv = 2α+ σ − 2α
duw + dwv = σ = duv
xv
xu( ),... , ...... + α, ,
wuv
wuv
xu
xu( ),... , ......
xu
xw
xv
, ,i j i j
xv( ),... , ...... xv
i j
, ,
82 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Does wuvduv = wuwduw + wwvdwv?
wuvduv?= wuvduw + wuvdwv
duv?= duw + dwv
Let duv = σ
duw = σ − 2α
dwv = 2α
duw + dwv = 2α+ σ − 2α
duw + dwv = σ = duv
xv
xu( ),... , ...... + α, ,
wuv
wuv
xu
xu( ),... , ......
xu
xw
xv
, ,i j i j
xv( ),... , ...... xv
i j
, ,
83 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Does wuvduv = wuwduw + wwvdwv?
wuvduv?= wuvduw + wuvdwv
duv?= duw + dwv
Let duv = σ
duw = σ − 2α
dwv = 2α
duw + dwv = 2α+ σ − 2α
duw + dwv = σ = duv
xv
xu( ),... , ...... + α, ,
wuv
wuv
xu
xu( ),... , ......
xu
xw
xv
, ,i j i j
xv( ),... , ...... xv
i j
, ,
84 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Does wuvduv = wuwduw + wwvdwv?
wuvduv?= wuvduw + wuvdwv
duv?= duw + dwv
Let duv = σ
duw = σ − 2α
dwv = 2α
duw + dwv = 2α+ σ − 2α
duw + dwv = σ = duv
xv
xu( ),... , ...... + α, ,
wuv
wuv
xu
xu( ),... , ......
xu
xw
xv
, ,i j i j
xv( ),... , ...... xv
i j
, ,
85 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Does wuvduv = wuwduw + wwvdwv?
wuvduv?= wuvduw + wuvdwv
duv?= duw + dwv
Let duv = σ
duw = σ − 2α
dwv = 2α
duw + dwv = 2α+ σ − 2α
duw + dwv = σ = duv
xv
xu( ),... , ...... + α, ,
wuv
wuv
xu
xu( ),... , ......
xu
xw
xv
, ,i j i j
xv( ),... , ...... xv
i j
, ,
86 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
Does wuvduv = wuwduw + wwvdwv?
wuvduv?= wuvduw + wuvdwv
duv?= duw + dwv
Let duv = σ
duw = σ − 2α
dwv = 2α
duw + dwv = 2α+ σ − 2α
duw + dwv = σ = duv
xv
xu( ),... , ...... + α, ,
wuv
wuv
xu
xu( ),... , ......
xu
xw
xv
, ,i j i j
xv( ),... , ...... xv
i j
, ,
Lemma
There is a way to modify the LP s.t. for any edge e = (u, v),xu and xv differ in 0 or 2 coordinates, at no additional cost.
87 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
References
G. Calinescu, H. Karloff, and Y. Rabani. An Improved
Approximation Algorithm for Multiway Cut. Proc. of 30thACM Symposium on the Theory of Computing (STOC’98),1998.
V. Vazirani. Approximation Algorithms. Berlin: Springer, 2003.
D. Williamson, D. Shmoys. The Design of Approximation
Algorithms. New York: Cambridge University Press, 2011.
88 / 89
Multiway Cut
Sean Lowen
2-2/k Approx
Simplex
UnderstandingLP
Randomization
Analysis
Modifying LPSolution
End
Thank you!
89 / 89