Semidefinite Program
ming


Introduction

The (linear) semidefinite programming problem (SDP) is essentially an ordinary linear program where the nonnegativity constraint is replaced by a semidefinite constraint on matrix variables. The standard form for the primal problem is

displaymath6

where tex2html_wrap_inline96 and X are all symmetric tex2html_wrap_inline100 matrices, tex2html_wrap_inline102 is a scalar, and the constraint tex2html_wrap_inline104 means that X, the unknown matrix, must lie in the closed, convex cone of positive semidefinite. Here, tex2html_wrap_inline108 refers to the standard inner product on the space of symmetric matrices, i.e. for symmetric matrices A and B, tex2html_wrap_inline114 . The dual version of the problem is

displaymath11

where the dual variable y is an m-vector of Lagrange multipliers corresponding to the equality constraints in the primal, and Z is a symmetric tex2html_wrap_inline100 dual slack matrix.

SDP reduces to LP when all the matrices are diagonal. SDP (indeed, LP too) is a special instance of a more general problem class called conic linear programs, where one seeks to minimize a linear objective function subject to linear constraints and a cone constraint. Both the semidefinite cone (for SDP) and the non-negative orthant (for LP) are homogeneous, self-dual cones - there are only 5 such nonisomorphic categories of cones. Another example of a homogeneous, self-dual cone is the quadratic cone, Q, in n+1 dimensions defined by

displaymath22

which gives rise to quadratically constrained problems.

One of the main aspects in which SDP differs from LP is that the non-negative orthant is a polyhedral cone, whereas the semidefinite cone is not. Thus, developing simplex type algorithms for SDP is a topic of current research. However, it is fairly straightforward to design polynomial time primal-dual interior-point algorithms for these problems. For a tutorial on SDP, see [1].

Interior-Point Algorithms

Interior-point algorithms come in two flavors: (i) potential reduction, and (ii) path-following. Further, an interior-point method can be primal only, dual only, or primal-dual. Primal-dual path-following algorithms are popular and are implemented in many currently available codes.

As with LP, primal-dual algorithms solve SDP by solving the Karush-Kuhn-Tucker (KKT) system

eqnarray30

while simultaneously ensuring that the iterates X and Z are symmetric and strictly positive definite. The last equation is the complementarity condition for SDP. Primal-dual algorithms use Newton's method to solve a relaxed version of this system: they replace the right-hand side of the complementarity condition by tex2html_wrap_inline134 , where tex2html_wrap_inline136 is a parameter that is driven to zero, and generate a sequence that exhibits global convergence to a solution, if one exists. Again, a difference arises with LP in that applying Newton's method to the KKT system usually results in asymmetric corrections for X. A symmetrization of the complementarity condition is thus warranted. Different symmetrizations lead to different Newton corrections (search directions). Once a search direction is computed, a step is taken along this direction so that the new iterate remains strictly positive definite, and the value of tex2html_wrap_inline140 is decreased. This process is repeated until tex2html_wrap_inline140 is sufficiently small. For more details on primal-dual interior-point methods, see [2, 3].

Applications

SDP has many applications, ranging from control theory to structural design. In particular, many hard optimization problems (with integer constraints) can be relaxed to a problem with convex quadratic constraints which, in turn, can be formulated as an SDP. This SDP provides a polynomial time approximation to the original, hard problem. Usually, approximations from SDP relaxations are better than those from linear programming. We illustrate our point with one application from graph theory: the max-cut problem which has been instrumental in the recent surge in SDP research. This application also shows how SDP arises as a relaxation of a problem using quadratic approximations. Suppose that G = (V,E; W) is a weighted, undirected graph with vertices tex2html_wrap_inline156 and edges tex2html_wrap_inline158 with weights tex2html_wrap_inline160 . The max-cut problem consists in finding the index set tex2html_wrap_inline162 such that the weight of the edges with one end point in I and the other end point in tex2html_wrap_inline166 is maximized. This can be formulated as the following optimization problem:

displaymath41

We associate tex2html_wrap_inline168 with tex2html_wrap_inline170 and tex2html_wrap_inline172 otherwise. The max-cut problem is known to be NP-hard. We replace the integer constraints with quadratic constraints of the form tex2html_wrap_inline174 , move these constraints to the objective to obtain a Lagrangian relaxation of the form

displaymath54

where Q is a symmetric tex2html_wrap_inline100 matrix and the tex2html_wrap_inline180 are Lagrange multipliers. The optimal value of (MC-LR) provides an upper bound for the optimal value of (MC), i.e.

displaymath144

In particular, this bound has to hold for the tex2html_wrap_inline182 that minimizes tex2html_wrap_inline184 , so we have

displaymath145

displaymath146

where e is the vector of all ones and tex2html_wrap_inline188 is a diagonal matrix whose i-th diagonal entry is tex2html_wrap_inline180 .

We now note that the inner maximization problem is infinite valued unless the Hessian of the Lagrangian is negative semidefinite, i.e. we have the hidden semidefinite constraint tex2html_wrap_inline194 . Moreover, once we add this semidefinite constraint to the outer minimization problem, the inner maximization is attained at x = 0. We have eliminated the x variable and the maximization part of the problem.

Therefore, the upper bound for MC can be obtained by solving the following SDP

displaymath147

whose dual is

displaymath148

Here, tex2html_wrap_inline200 is a vector whose i-th entry is the i-th diagonal entry of the matrix X. This pair of SDP's can now be solved with a primal-dual interior-point algorithm. For a survey of some applications of SDP, see [4, 5] and references therein.

Software

Unlike LP, SDP software is still in its infancy, and most codes currently available handle moderate sized problems. Here is a list of some SDP packages:

References

1
L. Vandenberghe and S. Boyd, Semidefinite programming. SIAM Review, 38:49-95, 1996.
2
S. J. Wright, Primal-Dual Interior-Point Methods. SIAM, Philadephia, 1996.
3
F. Alizadeh, J.-P. A. Haeberly, and M. L. Overton. Primal-dual interior-point algorithms for semidefinite programming: stability, convergence and numerical results. Technical Report 721, Computer Science Department, New York University, June 1996. To appear in SIAM Journal on Optimization.
4
A. S. Lewis and M. L. Overton, Eigenvalue optimization. Acta Numerica, 5:149-190, 1996.
5
F. Alizadeh, Interior-point methods in semidefinite programming with applications to combinatorial optimization. SIAM Journal on Optimization, 5(1):13-51, 1991.



Up To:

* Constrained Optimization.


 

treesig.gif (5961 bytes)

[ OTC Home Page | NEOS Guide | NEOS Server | Optimization Tree ]


Madhu Nayakkankuppam, Henry Wolkowicz,
Last updated 18 August 1997