A topic in the Open Knowledge Graph — a free, open map of 15,290 topics and the order to learn them in.

Semidefinite Programming Relaxation

Research Depth 106 in the knowledge graph ☐ I know this ☆ Set as goal
535prerequisites beneath it
See this on the map →
Approximation Algorithms (LP Relaxation and Primal-Dual)Linear Programming Algorithms+1 more→
sdp semidefinite-programming max-cut goemans-williamson

Core Idea

Semidefinite programming (SDP) extends linear programming by optimizing a linear objective over the cone of positive semidefinite matrices. SDP relaxations produce tighter bounds than LP relaxations for many combinatorial optimization problems. The landmark result is the Goemans-Williamson algorithm for MAX-CUT: relax binary variables to unit vectors, solve the SDP to find an optimal vector configuration, then round using a random hyperplane. This achieves an approximation ratio of ~0.878, which is optimal assuming the Unique Games Conjecture. SDP relaxations also yield the best known approximations for graph coloring, MAX-SAT, and constraint satisfaction problems, and the integrality gaps of SDP hierarchies (Lasserre, Sum-of-Squares) connect to fundamental questions in computational complexity.

Explainer

Linear programming relaxation, which you studied in approximation algorithms, replaces integer variables with continuous ones. Semidefinite programming relaxation is a more powerful generalization that replaces scalar variables with matrix variables constrained to be positive semidefinite. This extra structure captures pairwise relationships between variables — correlations, angles, inner products — that linear constraints cannot express. The result is tighter relaxations and better approximation ratios for many combinatorial problems.

The Goemans-Williamson algorithm for MAX-CUT is the most celebrated application. The integer program assigns each vertex a value in {-1, +1}, and the cut value is sum_{(i,j)} (1 - x_i * x_j) / 2. The SDP relaxation replaces scalars x_i with unit vectors v_i in Rn and optimizes sum_{(i,j)} (1 - v_i dot v_j) / 2 subject to |v_i| = 1. This can be reformulated as optimizing over a positive semidefinite matrix Y with Y_ii = 1 and Y_ij = v_i dot v_j. The SDP optimum is at least the integer optimum. The rounding step chooses a random hyperplane through the origin and assigns vertices to sides based on which side their vector falls on. The probability of separating v_i and v_j is arccos(v_i dot v_j) / pi, and the worst-case ratio of this probability to the SDP contribution (1 - v_i dot v_j)/2 is approximately 0.878.

The 0.878 ratio is remarkable because it is optimal under the Unique Games Conjecture: no polynomial-time algorithm can do better unless the conjecture fails or P = NP. This creates a tight connection between the algebraic structure of the SDP relaxation (its integrality gap) and the computational complexity of the problem (its hardness of approximation). For MAX-CUT, these match at ~0.878. For MAX-2SAT, the optimal ratio is ~0.940, again achieved by SDP rounding. The Unique Games Conjecture predicts this pattern extends broadly: the SDP integrality gap is the correct answer for many constraint satisfaction problems.

SDP hierarchies — the Lasserre hierarchy, Sum-of-Squares (SoS) — systematically strengthen SDP relaxations by adding higher-order moment constraints. After O(n) levels, the Lasserre hierarchy captures the integer hull exactly (but at exponential cost). The research frontier asks: how many levels suffice for good approximations? The Sum-of-Squares hierarchy has emerged as a unifying framework connecting approximation algorithms, proof complexity, and machine learning, with applications ranging from planted clique detection to tensor decomposition.

Practice Questions 4 questions

Prerequisite Chain

Understanding Zero → The Number Zero → Counting to Five → Counting to 10 → Counting to 20 → Counting a Set of Objects Up to 20 → Cardinality: The Last Number Counted → Matching Numerals to Quantities → Subitizing Small Quantities → Addition Within 10 → Number Bonds to 10 → Addition Within 20 → Doubles and Near Doubles → Doubles Facts Within 10 → Near Doubles Facts Within 20 → Mental Math Strategies for Addition → Mental Math: Adding and Subtracting Tens → Addition Within 100 → Repeated Addition as Multiplication → Multiplication as Equal Groups → Multiplication: Arrays → Basic Multiplication Facts (0s, 1s, 2s, 5s, 10s) → Multiplication Facts Within 100 → Division as Equal Sharing → Division as Grouping (Measurement Division) → Division: Grouping (Repeated Subtraction) Model → Division: Fair Sharing Model → Division as Equal Sharing → Division as Grouping → Basic Division Facts → Division Facts Within 100 → Multiplication and Division Fact Families → Relationship Between Multiplication and Division → Division Facts as Inverse of Multiplication → Remainders and Quotients in Division → Division Word Problems → Multi-Step Word Problems → Solving Multi-Step Word Problems → Multiplication Word Problems → Division Word Problems → Introduction to Long Division → Factors and Multiples → Prime and Composite Numbers → Equivalent Fractions → Relating Fractions and Decimals → Decimal Place Value → Integers and the Number Line → Comparing and Ordering Integers → Absolute Value → Adding Integers → Subtracting Integers → Multiplying Integers → Introduction to Exponents → Order of Operations → Integer Order of Operations → Variable Expressions → The Distributive Property → Variables and Expressions Review → Introduction to Polynomials → Adding and Subtracting Polynomials → Multiplying Polynomials → Factorial → Permutations → Combinations → Counting Principles: Addition and Multiplication Rules → Introduction to Graph Theory → Propositional Logic Foundations → Logical Equivalences → Boolean Algebra → Boolean Type and Truth Values → Comparison Operators and Boolean Tests → Logical Operators and Boolean Algebra → Boolean Algebra and Fundamental Laws → Logic Gates Fundamentals → Implementing Boolean Functions with Gates → Karnaugh Map Simplification → Combinational Circuit Design → Flip-Flops and Latches → Finite State Machines (FSMs) → Deterministic Finite Automata (DFA) → Nondeterministic Finite Automata (NFA) → Two-Way Finite Automata → NFA to DFA Conversion (Subset Construction) → DFA Properties and Minimization Algorithms → Regular Languages: Definition and Characterization → Context-Free Grammars (CFGs) → Pushdown Automata (PDA) → Equivalence of CFGs and Pushdown Automata → Closure Properties of Context-Free Languages → Limitations of Context-Free Languages → Pumping Lemma for Context-Free Languages → Turing Machines → Variants of Turing Machines and Equivalence → Nondeterministic Time Complexity and NP → The P vs. NP Problem → Complexity Class P: Polynomial Time → Complexity Class NP: Nondeterministic Polynomial Time → NP-Completeness and Cook-Levin Theorem → The Cook-Levin Theorem → Boolean Satisfiability, Cook-Levin, and Reductions → 3-SAT and k-SAT Variants → Partition and Subset Sum Problems → Vertex Cover and Clique Problems → Approximation Algorithms and Approximation Ratios → Hardness of Approximation → Approximation Algorithms (LP Relaxation and Primal-Dual) → Semidefinite Programming Relaxation

Longest path: 107 steps · 535 total prerequisite topics

Prerequisites (3)

Leads To (0)

No topics depend on this one yet.