Linear programming lets you optimize a linear goal over variables boxed in by linear inequalities — and we can solve it in polynomial time. Semidefinite programming (SDP) is its bigger cousin: instead of a vector of numbers, the unknown is a whole matrix, and the one extra rule is that this matrix must be positive-semidefinite — geometrically, it must describe a valid set of vectors and angles between them.
That sounds abstract, but it buys something remarkable. The set of positive-semidefinite matrices is convex — a smooth, bowl-shaped region with no traps — so we can still optimize over it efficiently. SDP sits squarely between the easy linear world and the brutal combinatorial one.
Its most famous use is a magic trick on a hard problem: take Max-Cut, an NP-hard problem, relax it into an SDP, solve that exactly, then round the answer back. The result is a cut provably at least 87.8% as good as the impossible-to-find best.
Comments
Loading comments...