Semidefinite Programming, Duality Theorems & SDP Relaxations

Background on Symmetric Matrices

A matrix ARm×m is symmetric if A=AT. We denote the set of symmetric matrices as Sm. We can think of Sm as a vector space with the inner product A,B:=tr(ATB)=tr(AB)=i,jAijBij. This is the Frobenius inner product, which corresponds to the usual Euclidean inner product when we vectorize the matrices. From the inner product above, we can also define the Frobenius norm |A|F:=A,A=tr(ATA).


Standard Form of SDP

Just as with linear programs, we can write semidefinite programs in standard form. The standard form of an SDP is minimizeC,X subject toAi,X=bi,i=1,,t X0,XSm.

In the above program, the variables are the entries of the symmetric matrix XSm. Note the similarity to the standard form of a linear program. We can obtain the LP standard form by making X,C,Ai diagonal matrices.

However, this does not look like the way in which we defined SDPs in the previous lecture (via LMIs). So, how is the above program equivalent to the LMIs we saw in the previous lecture?


Equivalence of SDP Standard Form and LMIs

We can write the SDP standard form as a system of linear matrix inequalities (LMIs), and vice-versa.

SDP Standard Form as LMIs

Suppose we have an SDP in standard form minimizeC,X subject toAk,X=bk,k=1,,t X0,XSm.

Note that we can consider the equality constraints as two inequalities, i.e., Ai,Xbi and Ai,Xbi. Now, we can group all of these constraints into one LMI by putting these constraints in a diagonal of a matrix.

Let BijS2t be a diagonal matrix given by $$ (B_{ij}){kk} = \begin{cases} 2 \cdot (A_k){ij}, & k \leq t \ -2 \cdot (A_k){ij}, & k > t. \end{cases} andlet$ΓS2t$beadiagonalmatrixgivenby (\Gamma){kk} = {bk,kt bk,k>t. $$

Then, we can write the SDP standard form as follows minimizeC,X subject toijxijBijΓ X0,XSm.

LMIs in SDP Standard Form

Now, suppose that we have an SDP with constraints given as an LMI: minimizei=1ncixi subject toi=1nxiBiΓ xRn. where Bi,ΓSm are symmetric matrices.

Before we convert it to the standard form, we can write xi=uivi, where ui,vi0. Then, we can rewrite the above program as minimizei=1nci(uivi) subject toi=1n(uivi)BiΓ ui,vi0,i=1,,n.

Now, we can write the above SDP in standard form by defining the variable symmetric matrix YS2n+m and equality constraints given by AijS2n+m as follows: Y0, Eij+Eji,Y=0,ij[2n] Ei,iE(n+i),(n+i),Y=0,i[n] Aij,X=Γij,ij.


Duality Theorems

We will now discuss the duality theory for semidefinite programs.

Weak Duality

Consider the primal SDP minimizeC,Xsubject toAi,X=bi,i=1,,tX0,XSm.

If we look at what happens when we multiply the ith constraint by yi and sum over all constraints, we get i=1tyiAi,X=i=1tyibii=1tyiAi, X=yTb.

Thus, if i=1tyiAiC, then we have yTb=i=1tyiAi, XC,X. this is telling us that yTb is a lower bound on the optimal value of the primal SDP.

Thus, if we define the dual SDP as maximizeyTbsubject toi=1tyiAiCyRt, then we have the following weak duality theorem:


Weak Duality Theorem: For any primal feasible solution X and dual feasible solution y, we have yTbC,X.


Strong Duality

In a similar way to linear programs, strong duality holds for semidefinite programs, albeit with some additional conditions, known as Slater’s conditions.

In the homework, you will see that strong duality may not hold for all feasible primal and dual SDPs.

However, if we assume that both the primal and dual SDPs are strictly feasible (this is Slater’s condition), then strong duality holds.

  • The primal SDP is strictly feasible if there exists an X0 such that Ai,X=bi for all i.
  • The dual SDP is strictly feasible if there exists a y such that i=1tyiAiC.

Strong Duality Theorem: If the primal and dual SDPs are strictly feasible (i.e., if Slater’s condition holds), then the optimal values of the primal and dual SDPs are equal.


Complementary Slackness

Just as with linear programs, we have complementary slackness for SDPs.


Complementary Slackness Theorem: If X and y are primal and dual feasible solutions, respectively, then X and y are optimal if and only if the complementary slackness condition hold: (Ci=1tyiAi)X=0.


SDP Relaxations

In a similar manner that we used LP relaxations to obtain approximate solutions to NP-hard problems, via the formulation of such problems as integer linear programs, we can use SDP relaxations to obtain approximate solutions to NP-hard problems.

Since we can formulate any NP-complete problem as an integer linear program, given a combinatorial optimization problem coming from an NP-complete problem, we can always cast it as an ILP. Hence, a question arises: why use SDP relaxations instead of LP relaxations? Do we gain anything by using SDP relaxations, instead of LP relaxations?

Today, and in the next lecture, we will see that SDP relaxations can be more powerful than LP relaxations! Moreover, this has been a very fruitful area of research in the last 30 years, with many beautiful results (for those looking for a final project).

Quadratic Programming

A quadratic program (QP) is an optimization problem of the form minimize12xTQx+cTxsubject toqi(x)0,i=1,,txRn. where QSn is a symmetric matrix, and qi(x) are quadratic functions of x.

An advantage of studying QPs is that they are a very expressive class of optimization problems (generalizing 0,1-ILPs). However, a disatvantage is that they are NP-hard to solve in general.

Nevertheless, we can relax QPs to SDPs, and thus we can use the same template as we used for LP relaxations to obtain approximate solutions to QPs! And as we will see in this and the next lecture, SDP relaxations can be more powerful than LP relaxations.

Main Example: Max-Cut

The Max-Cut problem is defined as follows:


Max-Cut Problem: Given a graph G=(V,E), find a cut (S,VS) that maximizes the number of edges between S and VS, i.e., the number of edges across the cut, which is denoted by |E(S,VS)|.


While the minimum cut problem can be solved in polynomial time, the Max-Cut problem is NP-hard.

Previous
Next