Optimal Algorithms and Inapproximability Results for Every CSP? Prasad Raghavendra University of Washington Seattle Constraint Satisfaction Problem A Classic Example : Max-3-SAT ( x1 x 2 x3 )( x2 x3 x5 )( x 2 x3 x5 )( x5 x4 x1 ) Equivalently the largest fraction of clauses Given a 3-SAT formula, Find an assignment to the variables that satisfies the maximum number of clauses. Constraint Satisfaction Problem Problem : Domain : Predicates : Pi : Instance : Max-3-SAT {0,1,.. q-1} {P1, P2 , P3 … Pr} [q]k Domain : Predicates : {0,1} P1(x,y,z) = x ѵ y ѵ z -> {0,1} ( x1 x 2 x3 )( x2 x3 x5 )( x 2 x3 x5 )( x5 x4 x1 ) • Set of variables. • Predicates Pi applied on variables Find an assignment that satisfies the largest fraction of constraints. Variables : {x1 , x2 , x3 ,x4 , x5} Constraints : 4 clauses Generalized CSP (GCSP) Replace Predicates by Payoff Functions (bounded real valued) Problem : Domain : Pay Offs: Objective : {0,1,.. q-1} {P1, P2 , P3 … Pr} Pi : [q]k -> [-1, 1] Pay Off Functions can be Negative Find an assignment that maximizes the Average Payoff Can model Minimization Problems like Multiway Cut, Min-Uncut. Examples of GCSPs Max-3-SAT Max Cut Max Di Cut Multiway Cut Metric Labelling 0-Extension Unique Games d- to - 1 Games Label Cover Horn Sat Unique Games A Special Case x-y = 11 (mod 17) x-z = 13 (mod 17) … …. z-w = 15(mod 17) E2LIN mod p Given a set of linear equations of the form: Xi – Xj = cij mod p Find a solution that satisfies the maximum number of equations. Unique Games Conjecture [Khot 02] An Equivalent Version [Khot-Kindler-Mossel-O’Donnell] For every ε> 0, the following problem is NP-hard for large enough prime p Given a E2LIN mod p system, distinguish between: • There is an assignment satisfying 1-ε fraction of the equations. • No assignment satisfies more than ε fraction of equations. Unique Games Conjecture A notorious open problem, no general consensus either way. Algorithm [Khot 02] On (1-Є) satisfiable instances 1 O( p 2 1/ 5 log( 1 / ) ) [Trevisan] 1 O(3 log n ) [Gupta-Talwar] 1 – O(ε logn) [Charikar-Makarychev-Makarychev] [Chlamtac-Makarychev-Makarychev] [Arora-Khot-Kolla-Steurer-Tulsiani-Vishnoi] p /(2 ) 1 O( log n log p ) 1 1 log Hardness Results: No constant factor approximation for unique games. [FeigeReichman] Why is UGC important? Problem Vertex Cover Max CUT Max 2- SAT SPARSEST CUT Max k-CSP Best Approximation Algorithm 2 0.878 0.9401 log n k / 2k NP Hardness 1.36 0.941 0.9546 1+ε O 2 k / 2k Unique Games Hardness 2 0.878 0.9401 Every Constant O k / 2k UG hardness results are intimately connected to the limitations of Semidefinite Programming Semidefinite Programming Max Cut Input : a weighted graph G 10 15 7 1 1 3 Find a cut that maximizes the number of crossing edges Max Cut SDP Quadratic Program Semidefinite Program -1 10 1 15 -1 1 7 1 1 1 3 -1 -1 -1 -1 Variables : vx1 , xv2 … xvn x|i =vi1|2or= -1 1 Maximize 1 2 w ( | x v v x ) | ij ij ii j 4 (i , j )E Relax all the xi to be unit vectors instead of {1,-1}. All products are replaced by inner products of vectors MaxCut Rounding v2 v1 v3 Cut the sphere by a random hyperplane, and output the induced graph cut. - A 0.878 approximation for the problem. v5 v4 General Boolean 2-CSPs In Integral Solution vi = 1 or -1 V0 = 1 Total PayOff Triangle Inequality 2-CSP over {0,..q-1} Total PayOff Arbitrary k-ary GCSP •SDP is similar to the one used by [Karloff-Zwick] Max-3-SAT algorithm. •It is weaker than k-rounds of Lasserre / LS+ heirarchies Results Fix a GCSP Two Curves Integrality Gap Curve If UGC is false: true: U(c) U(c)≥ S(c) is meaningless! S(c) = smallest value of the integral solution, given SDP value c. UGC Hardness Curve U(c) S(c) 0 Optimum Solution 1 U(c) = The best polytime computable solution, assuming UGC given an instance with value c. UG Hardness Result Theorem 1: For every constant η > 0, and every GCSP Problem, U(c) < S(c+ η) + η U(c) U(c) S(c) 0 Optimum Solution c = SDP Value S(c) = SDP Integrality Gap U(c) = UGC Hardness Curve 1 Roughly speaking, Assuming UGC, the SDP(I), SDP(II),SDP(III) give best possible approximation for every CSP Consequences If UGC is true, then adding more constraints does not help for any CSP Lovasz-Schriver, Lasserre, Sherali-Adams heirarchies do not yield better approximation ratios for any CSP in the worst case. Efficient Rounding Scheme U(c) S(c) 0 Optimum Solution 1 c = SDP Value S(c) = SDP Integrality Gap U(c) = UGC Hardness Curve Roughly speaking, There is a generic polytime rounding scheme that is optimal for every CSP, assuming UGC. Theorem: For every constant η > 0, and every GCSP, there is a polytime rounding scheme that outputs a solution of value U(c-η) – η If UGC is true, then for every Generalized Constraint Satisfaction Problem : If UGC is false?? NP-hard •Hardness result doesn’t make sense. U(c) S(c) algorithm 0 Optimum Solution 1 •How good is the rounding scheme? S(c) = SDP Integrality Gap Unconditionally Roughly Speaking, For 2-CSPs, the Approximation ratio obtained is at least the red curve S(c) The rounding scheme achieves the integrality gap of SDP for 2-CSPs (both binary and q-ary cases) Theorem: Let A(c) be rounding scheme’s performance on input with SDP value = c. For every constant η > 0 S(c) 0 Optimum Solution 1 A(c) > S(c- η) - η As good as the best SDP(II) and SDP(III) are the strongest SDPs used in approximation algorithms for 2-CSPs The Generic Algorithm is at least as good as the best known algorithms for 2-CSPs Examples: Max Cut Max-2-SAT Unique Games [Goemans-Williamson] [Lewin-Livnat-Zwick] [Charikar-Makarychev-Makarychev] Computing Integrality Gaps S(c) 0 Theorem: For any η, and any 2-CSP, the curve S(c) can be computed within error η. (Time taken depends on η and domain size q) Optimum Solution 1 Explicit bounds on the size of an integrality gap instance for any 2-CSP. Related Work Problem Vertex Cover Max CUT Max 2- SAT SPARSEST CUT Max k-CSP Best Approximation Algorithm 2 0.878 0.9401 log n k / 2k Unique Games Hardness 2 [Khot-Regev] 0.878 [Khot-Kindler-Mossel-O’donnell] 0.9401 [Per Austrin] Every Constant [Chawla-Krauthgamer-..] [Trevisan-Samorodnitsky] O k / 2k [Austrin 07] Assuming UGC, and a certain additional conjecture: ``For every boolean 2-CSP, the best approximation is given by SDP(III)” [O’Donnell-Wu 08] Obtain matching approximation algorithm, UGC hardness and SDP gaps for MaxCut Proof Overview Dictatorship Test F is a dictator function F(x1 ,… xR) = xi Pr[ACCEPT ] = Completeness Given a function F : {-1,1}R {-1,1} •Toss random coins •Make a few queries to F •Output either ACCEPT or REJECT F is far from every dictator function (No influential coordinate) Pr[ACCEPT ] = Soundness Connections SDP Gap Instance SDP = 0.9 OPT = 0.7 [Khot-Vishnoi] For sparsest cut, max cut. [This Paper] UG Hardness Dictatorship Test 0.9 vs 0.7 Completeness = 0.9 Soundness = 0.7 [Khot-Kindler-Mossel-O’Donnell] All these conversions hold for every GCSP A Dictatorship Test for Maxcut A dictatorship test is a graph G on the hypercube. A cut gives a function F on the hypercube Completeness Value of Dictator Cuts F(x) = xi Hypercube = {-1,1}100 Soundness The maximum value attained by a cut far from a dictator v2 10 15 1 1 7 v1 v3 3 Graph G v5 v4 SDP Solution An Example : Maxcut Completeness Value of Dictator Cuts = SDP Value (G) Soundness Given a cut far from every dictator : It gives a cut on graph G with the same value. 100 dimensional hypercube In other words, Soundness ≤ OPT(G) From Graphs to Tests 10 15 7 1 1 3 Graph G (n vertices) H v2 v1 v3 Constant independent of size of G 100 dimensional hypercube : {-1,1}100 v5 v4 SDP Solution For each edge e, connect every pair of vertices in hypercube separated by the length of e -1 v2 v1 v3 -1 Completeness -1 v5 1 v4 1 1 100 dimensional hypercube Echoice of edge e=(u,v) in G For each edge e, connect every pair of vertices in hypercube separated by the length of e Set F(X) = X1 [EX,Y in 100 dim hypercube with dist |u-v|^2 [ (F(X)-F(Y)) (X1 – Y1)2 2 ] X1 is not equal to Y1 with probability |u-v|2 , hence completeness = SDP Value (G) ] The Invariance Principle Invariance Principle for Low Degree Polynomials [Rotar] [Mossel-O’Donnell-Oleszkiewich], [Mossel 2008] “If a low degree polynomial F has no influential coordinate, then F({-1,1}n) and F(Gaussian) have similar distribution.” A generalization of the following fact : ``Sum of large number of {-1,1} random variables has similar distribution as Sum of large number of Gaussian random variables.” From Hypercube to the Sphere F : 100 Dimensional hypercube [-1,1] Express F as a multilinear polynomial using Fourier expansion, thus extending it to the sphere. P : 100 dimensio nal sphere Nearly Real numbers always [-1,1] Since F is far from a dictator, by invariance principle, its behaviour on the sphere is similar to its behaviour on hypercube. A Graph on the Sphere 10 15 7 1 1 3 Graph G (n vertices) S v2 v1 v3 100 dimensional sphere v5 v4 SDP Solution For each edge e, connect every pair of vertices in sphere separated by the length of e Hypercube vs Sphere H S P : sphere -> Nearly {-1,1} F:{-1,1}100 -> {-1,1} is a cut far from every dictator. Is the multilinear extension of F By Invariance Principle, MaxCut value of F on H ≈ Maxcut value of P on S. v2 v1 Soundness v3 v5 G v4 S For each edge e in the graph G connect every pair of vertices in hypercube separated by the length of e Alternatively, generate S as follows: Take the union of all possible rotations of the graph G S consists of union of disjoint copies of G. Thus, MaxCut Value of S < Max cut value of G. Hence MaxCut value of F on H is at most the max cut value of G. Soundness ≤ MaxCut(G) Algorithmically, Given a cut F of the hypercube graph H • Extend F to a function P on the sphere using its Fourier expansion. • Pick a random rotation of the SDP solution to the graph G • This gives a random copy Gc of G inside the sphere graph S • Output the solution assigned by P to GC Given the Polynomial P(y1,… y100) Roughly Formally Sample R Random Sample R independent vectors : g(1), g(2) ,.. g(100) Directions Each with i.i.d Gaussian components. Project each vi along all directions g(1), g(2) ,.. Project along g(100) them Yi(j) = v0∙vi + (1-ε)(vi – (v0∙vi)v0) ∙ g(100) Compute P on projections Compute xi = P(Yi(1) , Yi(2) ,.. Yi(100)) Round the output If xi > 1, xi = 1 of P If xi < -1, xi = -1 If xi is in [-1,1] xi = 1 with probability (1+xi)/2 -1 with probability (1-xi)/2 Key Lemma 1) Tests of the verifier are same as the constraints in instance G 2) Completeness = SDP(G) DICTG Any CSP Instance G Dictatorship Test on functions F : {-1,1}n ->{-1,1} Any Function F: {-1,1}n → {-1,1} RoundF If F is far from a dictator, RoundF (G) Rounding Scheme on CSP Instances G ≈ DICTG (F) UG Hardness Result Worst Case Gap Instance Dictatorship Test Completeness = c Soundness <= s Instance SDP = c OPT = s UG Hardness Completeness = c Soundness <= s Theorem 1: For every constant η > 0, and every GCSP Problem, U(c) < S(c+ η) + η Generic Rounding Scheme Solve SDP(III) to obtain vectors (v1 ,v2 ,… vn ) Add little noise to SDP solution (v1 ,v2 ,… vn ) For all multlinear polynomials P(y1 ,y2, .. y100) do Round using P(y1 ,y2, .. y100) Output the best solution obtained P is Multilinear polynomial in 100 variables with coefficients in [-1,1] Algorithm Soundness of any Dictatorship Test ≥ U(c) Any Dictatorship Dictatorship Test (I) Test = c Completeness UG Hardness Completeness = c Completeness = c Instance I SDP = c OPT = ? There is some function F : {0,1}R -> {0,1} that has Pr[F is accepted] ≥ U(c) By Key Lemma, Performance of F as rounding polynomial on instance I = Pr[F is accepted] > U(c) Related Developments • Multiway Cut and Metric Labelling problems. [Manokaran, Naor, Schwartz, Raghavendra] • Maximum Acyclic Subgraph problem [Guruswami,Manokaran, Raghavendra] • Bipartite Quadratic Optimization Problem (Computing the Grothendieck constant) [Raghavendra,Steurer] Conclusions Unique Games and Invariance Principle connect : Integrality Gaps, Hardness Results ,Dictatorship tests and Rounding Algorithms. These connections lead to new algorithms, and hardness results unifying several known results. Thank You Rounding Scheme (For Boolean CSPs) Rounding Scheme was discovered by the reversing the soundness analysis. This fact was independently observed by Yi Wu MaxCut Rounding Cut the sphere by a random hyperplane, and output the induced graph cut. v2 v1 v3 v5 v4 Equivalently, •Pick a random direction g. •For each vector vi , project vi along g yi = vi . g •Assign xi = 1 if yi > 0 xi = 0 otherwise. SDP Rounding Schemes SDP Vectors (v1 , v2 .. vn ) Random Projection Projections (y1 , y2 .. yn ) For any CSP, it is enough to do the following: Instead of one random projection, pick sufficiently many (say 100) projections Process the projections Use a multi linear polynomial P to process the projections Assignment UG Hardness Results Worst Case Gap Instance Dictatorship Test Completeness = c Soundness <= s Instance SDP = c OPT = s UG Hardness Completeness = c Soundness <= s Theorem 1: For every constant η > 0, and every GCSP Problem, U(c) < S(c+ η) + η Multiway Cut and Labelling Problems [Manokaran, Naor, Schwartz, Raghavendra] 10 15 7 1 1 3 3-Way Cut: Separate the 3-terminals while separating the minimum number of edges Theorem: Assuming Unique Games Conjecture, The earthmover linear program gives the best approximation. Theorem: Unconditionally, the simple SDP does not give better approximations than the LP. Maximum Acyclic Subgraph [Guruswami,Manokaran, Raghavendra] Theorem: Assuming Unique Games Conjecture, The best algorithm’s output is as good as a random ordering. Given a directed graph, order the vertices to maximize the number of forward edges. Theorem: Unconditionally, the simple SDP does not give better approximations than random. The Grothendieck Constant [Raghavendra,Steurer] The Grothendieck constant is the smallest constant k(H) for which the following inequality holds for all matrices : The constant is just the integrality gap of the SDP for bipartite quadratic optimization. Value of the constant is between 1.6 and 1.7 but is unknown yet. Grothendieck Constant [Raghavendra,Steurer] Theorem: There is an algorithm to compute arbitrarily good approximations to the Grothendieck constant. Theorem: There is an efficient algorithm that solves the bipartite quadratic optimization problem to an approximation equal to Grothendieck constant. If all this looks deceptively simple, then it is because there was deception Working with several probability distributions at once. UG Hardness Results Worst Case Gap Instance Dictatorship Test Completeness = c Soundness <= s Instance SDP = c OPT = s Best UG Hardness = Integrality Gap U(c) < S(c+η) + η UG Hardness Completeness = c Soundness <= s Algorithm Soundness of any Dictatorship Test ≥ U(c) Any Dictatorship Dictatorship Test (I) Test = c Completeness UG Hardness Completeness = c Completeness = c Instance I SDP = c OPT = ? There is some function F : {0,1}R -> {0,1} that has Pr[F is accepted] ≥ U(c) By Key Lemma, Performance of F as rounding polynomial on instance I = Pr[F is accepted] > U(c) Unconditional Results For 2-CSPs On some instance I with SDP value = c , algorithm outputs a solution with value s. For every function F far from dictator , Performance of F in rounding I ≤ s By Key Lemma, For every such F Pr[ F is accepted by Dict(I) ] ≤ s Thus the Dict(I) is a test with soundness s. Unconditional Results For 2-CSPs Algorithm’s performance matches the integrality gap of the SDP Dictatorship Test(I) Completeness = c Soundness = s Integrality Gap instance SDP = c OPT ≤ s UG Hardness Completeness = c Soundness = s [Khot-Vishnoi] UG Integrality Gap instance Computing Integrality Gaps Integrality gap of a SDP relaxation = Worst case ratio of Integral Optimum SDP Optimum Worst Case over all instances - an infinite set Due to tight relation of integrality gaps/ dictatorship tests for 2-CSPs Integrality gap of a SDP relaxation = Worst case ratio of Soundness Completeness This time the worst case is along all dictatorship tests on {-1,1}R - a finite set that can be discretized. Key Lemma : Through An Example SDP: Variables : v1 , v2 ,v3 |v1|2 = |v2|2 = |v3|2 =1 1 2 3 Maximize 1 | v1 v2 |2 | v2 v3 |2 | v3 v1 |2 3 Local Random Variables c = SDP Value v1 , v2 , v3 = SDP Vectors Fix an edge e = (1,2). 1 A13 A12 2 A23 3 There exists random variables a1 a2 taking values {-1,1} such that: For every edge, E[a thereais ]a local distribution over = v ∙ v 1 2 1 2 integral solutions such that: All the moments of order at most2 2 match the 2 2 E[a1 ] = |v1| E[a2 ] = |v2|2 inner products. Dictatorship Test Pick an edge (i,j) Generate ai,aj in {-1,1}R as follows: The kth coordinates aik ,ajk come from distribution Aij Add noise to ai,aj Accept if F(ai) ≠ F(aj) c = SDP Value v1 , v2 , v3 = SDP Vectors A12,A23,A31 = Local Distributions Input Function: F : {-1,1}R -> {-1,1} 1 Max Cut Instance A12 2 3 Analysis Pick an edge (i,j) Generate ai,aj in {-1,1}R as follows: The kth coordinates aik,ajk come from distribution Aij Add noise to ai,aj Accept if F(ai) ≠ F(aj) A12,A23,A31 = Local Distributions Max Cut Instance 1 2 3 Input Function: F : {-1,1}R -> {-1,1} 1 1 1 1 2 2 2 E A12 [( F (a1 ) F (a2 )) ] E A23 [( F (a2 ) F (a3 )) ] E A31 [( F (a3 ) F (a1 )) ] 3 4 4 4 A12,A23,A31 = Local Distributions Completeness Input Function is a Dictator : F(x) = x1 1 11 1 2 2 11 2 2 2 2 1 1 E A12 [(EFA12(a[(1 )a11F (aa2 ))21 )] ] E AE [( F[((aa221) Fa(31a3)))] ] EE A3131[([(Fa(31a3) a11F)(a]1 )) ] 23 A23 3 43 4 44 44 Suppose (a1 ,a2) is sampled from A12 then : E[a11 a21] = v1∙ v2 E[a112] = |v1|2 E[a212] = |v2|2 EA12 [(a1 a2 ) ] | v1 v2 | 2 2 Summing up, Pr[Accept] = SDP Value(v1 , v2 ,v3) Global Random Variables g = random Gaussian vector. (each coordinate generated by i.i.d normal variable) 1 B 3 2 c = SDP Value v1 , v2 , v3 = SDP Vectors b1 = v1 ∙ g b2 = v2 ∙ g b3 = v3 ∙ g There is =a global distribution B=(b ,b ,bb3)]over real 1 2 E[b b ] v ∙ v E[b b ] = v ∙ v E[b = v 1 2 1 2 2 3 2 3 3 1 3∙ v1 numbers such that: All the moments of order at most 2 match the 2 2 2 2 2 E[b1 ] = |v1| E[b2 ] = |v2| E[b3 ] = |v3|2 inner products. Rounding with Polynomials Input Polynomial : F(x1 ,x2 ,.. xR) 2 Generate b1 = (b11 ,b12 ,… b1R) b2 = (b21 ,b22 ,… b2R) b3 = (b31 ,b32 ,… b3R) with each coordinate (b1t ,b2t ,b3t) according to global distribution B 1 B 3 Compute F(b1),F(b2) ,F(b3) Round F(b1),F(b2),F(b3) to {-1,1} Output the rounded solution. 1 1 1 1 2 2 2 EB [( F (b1 ) F (b2 )) ] EB [( F (b2 ) F (b3 )) ] EB [( F (b3 ) F (b1 )) ] 3 4 4 4 Invariance Suppose F is far from every dictator then since A12 and B have same first two moments, F(a1),F(a2) has nearly same distribution as F(b1),F(b2) • 1 1 2 E A12 [( F (a1 ) F (a2 )) ] EB [( F (b1 ) F (b2 )) 2 ] 4 4 • F(b1), F(b2) are close to {-1,1} From Gap instances to Gap instances Instance SDP = c OPT = s A Gap Instance for the Strong SDP for CSP Dictatorship Test Completeness = c Soundness = s UG Hardness Completeness = c Soundness = s UG Gap instance for a Strong SDP 2-CSP over {0,..q-1} For each variable u in CSP, Introduce q variables : {u0 , u1 ,.. uq-1 } uc = 1, u=c ui = 0 for i≠c Payoff for u,v : P(u,v) = ∑a ∑b P(a,b)ua vb 2-CSP over {0,..q-1} Total PayOff Arbitrary k-ary GCSP SDP is similar to the one obtained by k-rounds of Lasserre Rounding Scheme (For Boolean CSPs) Rounding Scheme was discovered by the reversing the soundness analysis. This fact was independently observed by Yi Wu SDP Rounding Schemes SDP Vectors (v1 , v2 .. vn ) Random Projection Projections (y1 , y2 .. yn ) For any CSP, it is enough to do the following: Instead of one random projection, pick sufficiently many projections Process the projections Assignment Use a multilinear polynomial P to process the projections Rounding By Polynomial P(y1,… yR) Roughly Formally Sample R Random Sample R independent vectors : w(1), w(2) ,.. w(R) Directions Each with i.i.d Gaussian components. Project each vi along all directions w(1), w(2) ,.. Project along w(R) them Yi(j) = v0∙vi + (1-ε)(vi – (v0∙vi)v0) ∙ w(j) Compute P on projections Compute xi = P(Yi(1) , Yi(2) ,.. Yi(R)) Round the output If xi > 1, xi = 1 of P If xi < -1, xi = -1 If xi is in [-1,1] xi = 1 with probability (1+xi)/2 -1 with probability (1-xi)/2 Algorithm R is a constant parameter Solve SDP(III) to obtain vectors (v1 ,v2 ,… vn ) Smoothen the SDP solution (v1 ,v2 ,… vn ) For all multlinear polynomials P(y1 ,y2, .. yR) do Round using P(y1 ,y2, .. yR) Output the best solution obtained Discretization “For all multilinear polynomials P(y1 ,y2, .. yR) do” - All multilinear polynomials with coefficients bounded within [-1,1] - Discretize the set of all such multi-linear polynomials There are at most a constant number of such polynomials. Smoothening SDP Vectors Let u1 ,u2 .. un denote the SDP vectors corresponding to the following distribution over integral solutions: ``Assign each variable uniformly and independently at random” Substitute vi* ∙ vj* = (1-ε) (vi ∙ vj) + ε (ui∙ uj) Non-Boolean CSPs There will be q rounding polynomials instead of one polynomial. Projection is in the same fashion: Yi(j) = v0∙vi + (1-ε)(vi – (v0∙vi)v0) ∙ w(j) To Round the Output of the polynomial, do the following: From Gap instances to Gap instances Instance SDP = c OPT = s Worst Case Instance Dictatorship Test Completeness = c Soundness = s A Gap Instance for the Strong SDP for CSP UG Hardness Completeness = c Soundness = s UG Gap instance for a Strong SDP Backup Slides Rounding for larger domains Remarks For every CSP and every ε > 0, there is a large enough constant R such that • Approximation achieved is within ε of optimal for all CSPs if Unique Games Conjecture is true. • For 2-CSPs, the approximation ratio is within ε of the integrality gap of the SDP(I). Rounding Schemes Very different rounding schemes for every CSP. with often complex analysis. Max Cut - Random hyperplane cutting Multiway cut - Complicated Cutting the simplex. • Our algorithm is a generic rounding procedure. • Analysis does not compute the approximation factor, but indirectly shows that it is equal to the integrality gap. “Sample R independent vectors : w1, w2 ,.. wR each with i.i.d Gaussian components. For all multlinear polynomials P(y1 ,y2, .. yR) do Compute xi = P(vi∙ w1 , vi∙ w2 ,.. vi∙ wR)” Goemans-Williamson rounding uses one single random projection, this algorithm uses a constant number of random projections. Semidefinite Programming • Linear program over the inner products • Strongest algorithmic tool in approximation algorithms • Used in a large number of algorithms. Integrality gap of a SDP relaxation = Worst case ratio of Integral Optimum SDP Optimum More Constraints? Most SDP algorithms use simple relaxations with few constraints. [Arora-Rao-Vazirani] used the triangle inequalities to get sqrt(log n) approximation for sparsest cut. Can the stronger SDPs yield better approximation ratios for problems of interest? Max Cut Input : a weighted graph G 10 15 7 1 1 3 Find a cut that maximizes the number of crossing edges Max Cut SDP Quadratic Program Semidefinite Program -1 10 1 15 -1 1 7 1 1 1 3 -1 -1 -1 -1 Variables : vx1 , xv2 … xvn x|i =vi1|2or= -1 1 Maximize 1 2 w ( | x v v x ) | ij ij ii j 4 (i , j )E Relax all the xi to be unit vectors instead of {1,-1}. All products are replaced by inner products of vectors Max Cut SDP Semidefinite Program -1 10 1 15 -1 1 7 1 1 1 3 -1 -1 -1 -1 Variables : v1 , v2 … vn | v i |2 = 1 Maximize 1 2 w | v v | ij i j 4 (i , j )E