260 likes | 402 Views
Discrete Optimization Lecture 4 – Part 3. M. Pawan Kumar pawan.kumar@ecp.fr. Outline. Maximum Cut Semidefinite Programming Relaxation Randomized Rounding Analysis. Cut. G = (V, E). Let U be a subset of V. 10. v 1. v 2. 3. 2. C is a set of edges such that ( u,v ) E u U
E N D
Discrete OptimizationLecture 4 – Part 3 M. Pawan Kumar pawan.kumar@ecp.fr
Outline • Maximum Cut • Semidefinite Programming Relaxation • Randomized Rounding • Analysis
Cut G = (V, E) Let U be a subset of V 10 v1 v2 3 2 • C is a set of edges such that • (u,v) E • u U • v V\U v3 v4 5 C is a cut in the graph G
Cut U 10 v1 v2 3 2 C = {(v1,v4), (v2,v3)} v3 v4 5 V\U
Cut V\U U 10 v1 v2 3 2 C = {(v1,v2), (v3,v4), (v1,v4), (v2,v3)} v3 v4 5
Capacity of Cut 10 v1 v2 3 2 Sum of capacity of all edges in C v3 v4 5
Capacity of Cut U 10 v1 v2 3 2 5 v3 v4 5 V\U
Capacity of Cut V\U U 10 v1 v2 3 2 20 v3 v4 5
Maximum Cut Find the cut with the maximum capacity !! 10 v1 v2 3 Assume non-negative capacities cij. 2 v3 v4 5 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. BiX = 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<jcij (1 - xixj)/2 s.t. xi {-1,1}
Maximum Cut max Σi<jcij (1 - Xij)/2 s.t. xi {-1,1} X = xxT X 0 Non-convex Xii = 1 Rank(X) = 1
Semidefinite Relaxation max Σi<jcij (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 V\U rTyi ≥ 0 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