Discrete Optimization Lecture 3

```Discrete Optimization
Lecture 4 – Part 3
M. Pawan Kumar
[email protected]
Outline
• Maximum Cut
• Semidefinite Programming Relaxation
• Randomized Rounding
• Analysis
Cut
G = (V, E)
10
v1
3
v3
Let U be a subset of V
v2
2
5
v4
C is a set of edges such that
• (u,v)  E
• uU
• v  V\U
C is a cut in the graph G
Cut
U
10
v1
3
v3
v2
2
5
V\U
C = {(v1,v4), (v2,v3)}
v4
Cut
V\U
U
10
v1
3
v3
v2
2
5
C = {(v1,v2), (v3,v4),
(v1,v4), (v2,v3)}
v4
Capacity of Cut
10
v1
3
v3
v2
2
5
v4
Sum of capacity of all
edges in C
Capacity of Cut
U
10
v1
3
v3
v2
2
5
V\U
5
v4
Capacity of Cut
V\U
U
10
v1
3
v3
v2
2
5
20
v4
Maximum Cut
10
v1
3
v3
Find the cut with the
maximum capacity !!
v2
Assume non-negative
capacities cij.
2
5
v4
What about s (the source) and t (the sink)?
Outline
• Maximum Cut
• Semidefinite Programming Relaxation
• Randomized Rounding
• Analysis
Semidefinite Program
maxX A  X
s.t.
Bi  X = di, i = 0,1, …, m
X
0
Convex
Why?
Maximum Cut
For each vertex vi, variable xi  {-1,1}
If xi = 1, vi  U
If xi = -1, vi  V\U
Maximum Cut
max Σi<j cij (1 - xixj)/2
s.t.
xi  {-1,1}
Maximum Cut
max Σi<j cij (1 - Xij)/2
s.t.
xi  {-1,1}
X = xxT
X
0
Xii = 1
Rank(X) = 1
Non-convex
Semidefinite Relaxation
max Σi<j cij (1 - Xij)/2
s.t.
X
0
Xii = 1
Outline
• Maximum Cut
• Semidefinite Programming Relaxation
• Randomized Rounding
• Analysis
Rounding
Optimum solution of relaxation X*
Cholesky decomposition X* = YYT
Row vectors yi such that yiyiT = 1
Why?
Rounding
Row vectors yi
Rounding
U
V\U
rTyi ≥ 0
rTyi < 0
Random hyperplane r
Rounding
U
V\U
rTyi ≥ 0
rTyi < 0
Random hyperplane r
Rounding
U
rTyi ≥ 0
V\U
rTyi < 0
Use K hyperplanes. Choose best answer.
Outline
• Maximum Cut
• Semidefinite Programming Relaxation
• Randomized Rounding
• Analysis
Rounding
Probability of vi and vj getting separated
P(sign(rTyi) ≠ sign(rTyj))
2P(rTyi ≥ 0 & rTyj < 0)
2arccos(yiTyj)/2Π
arccos(yiTyj)/Π
Multiplicative Bound
arccos(yiTyj)/Π
(1-yiTyj)/2
Multiplicative Bound
min0≤θ≤Π
θ/Π
(1-cos(θ))/2
> 0.87856
```