Example: barber

Introduction to Semidefinite Programming

Introduction to Semidefinite Programming (SDP) Robert M. Freund 1 Introduction Semidefinite Programming (SDP) is the most exc iting development in math ematical Programming in the 1990 s. SDP has applications in such diverse fields as traditional convex constrained optimization, control theory, and combinatorial optimization. Because SDP is solvable vi a interior point methods, most of these applications can usually be solved very efficiently in practice as well as in theory. 2 Revi ew of Linear Programming Consider the linear Programming problem in standard form: LP : minimize c x ai x = bi, i = 1, .. , m n +.x Here x is a vector of n variables, and we write c x for the inner-product P jn =1 cjxj , etc. Also, n + n x 0}, and we call n + the nonnegative orthant.

Introduction to Semidefinite Programming (SDP) Robert M. Freund 1 Introduction Semidefinite programming (SDP) is the most exciting development in math­ ematical programming in the 1990’s. SDP has applications in such diverse fields as traditional convex constrained optimization, control theory, and combinatorial optimization.

Tags:

  Programming

Information

Domain:

Source:

Link to this page:

Please notify us if you found a problem with this document:

Other abuse

Transcription of Introduction to Semidefinite Programming

1 Introduction to Semidefinite Programming (SDP) Robert M. Freund 1 Introduction Semidefinite Programming (SDP) is the most exc iting development in math ematical Programming in the 1990 s. SDP has applications in such diverse fields as traditional convex constrained optimization, control theory, and combinatorial optimization. Because SDP is solvable vi a interior point methods, most of these applications can usually be solved very efficiently in practice as well as in theory. 2 Revi ew of Linear Programming Consider the linear Programming problem in standard form: LP : minimize c x ai x = bi, i = 1, .. , m n +.x Here x is a vector of n variables, and we write c x for the inner-product P jn =1 cjxj , etc. Also, n + n x 0}, and we call n + the nonnegative orthant.

2 N := {x |In fact, is a closed convex cone, where K is called a closed a convex cone + if K satisfies the following two conditions: 1 P P P3 If x, w K, then x+ w K for all nonnegative scalars and . K is a closed set. In words, LP is the following problem: Minimize the linear function c x, subject to the condition that x must solve m given equations ai x = bi, i = 1, .. , m, and that x must lie in the closed convex cone K = n . + We will write the standard linear Programming dual problem as: m LD : maxi mize yibi i=1 m yiai + s = c i=1 n +.s Given a feasible solution x of LP and a feasible solution (y, s) of LD, the duality gap is simply c x Pmi=1 yibi = (c Pmi=1 yiai)x = s x 0, because x 0 and s 0. We kn ow from LP duality theory that so long as the pri mal problem LP is feasible and has bounded optimal objective value, then the primal and the dual both attain their optima with no duality gap.}

3 That is, there exi sts x and (y , s ) feasible for the primal and dual, respectively, m such that c x i=1 yi bi = sx = 0. Facts about Matrices and the Semidefinite Cone If X is an n n matrix, then X is a positive Semidefinite (psd) matrix if n v TXv 0 for any v . 2 If X is an n n matrix, then X is a positive definite (pd) matrix if n v TXv > 0 for any v , v =60. Let Sn nmatrices, and let Sn +the set of positive Semidefinite (psd) n n sym metric matrices. Similarly let Sn denote the set of positive definite (pd)n n sym metric matrices. ++ Let X and Y be any sym metric matrices. We write X 0 to denote that X is sym metric and positive Semidefinite , and we write X Y to denote that X Y 0. We write X 0 to denote that X is sym metric and positive definite, etc.

4 2 Remark 1 Sn + denote the set of sym metric n denote {X Sn | X 0} is a closed convex cone in n (n + 1)/2. of = dimension n nTo see why this remark is true, suppose that X, W S + , 0. For any v n, we have: v T( X + W)v = vTXv + vTW v 0, . Pick any scalars whereby X nn W SThis shows that S+ +++forward to show that Sn Recall the following properties of sym metric matrices: If X Sn, then X = QDQT for some orthonormal matrix Q and some diagonal matrix D. (Recall that Q is orthonormal means that Q 1 = QT, and that D is diagonal means that the off- diagonal entries of D are all zeros.) 3 is a cone. It is also straight . is a closed set. X X 4 If X = QDQT as above, then the columns of Q form a set of n orthogonal eigenvectors of X, whose eigenvalues are the corresponding diagonal entries of D.

5 X 0 if and only if X = QDQT where the eigenvalues ( , the diagonal entries of D) are all nonnegative. X 0 if and only if X = QDQT where the eigenvalues ( , the diagonal entries of D) are all positive. If X 0 and if Xii = 0, then Xij = Xji = 0 for all j= 1, .. , n. Consider the matrix M defined as follows: Pv M = T , vd where P 0, v is a vector, and d is a scalar. Then M 0 if and only if d vTP 1v > 0. Semidefinite Programming Let X Sn . We can think of X as a matrix, or equ ivalently, as an array of n2 components of the form (x11, .. , xnn). We can also just think of X as an object (a vector) in the space Sn . All three diffe rent equ ivalent ways of looki ng at X will be useful. What will a linear function of X look like?

6 If C(X) is a linear function of X, then C(X) can be written as CX, where nn CX := CijXij. i=1 j=1 If X is a sym metric matrix, there is no loss of generality in assuming that 4 the matrix C is also sym metric. With this notation, we are now ready to define a Semidefinite program. A Semidefinite program (SDP) is an opti mization problem of the form: SDP : minimize CX Ai X = bi , i = 1, .. , m, X 0, Notice that in an SDP that the variable is the matrix X, but it might be helpful to think of X as an array of n2 numbers or simply as a vector in Sn . The objective function is the linear function CX and there are m linear equ ations that X must satisfy, namely Ai X = bi , i = 1, .. , m. The variable X also must lie in the (closed convex) cone of positive semidef inite sym metric matrices Sn Note that the data for SDP consists of the +.

7 Sym metric matrix C (which is the data for the objective function) and the m sym metric matrices A1, .. , Am, and the m vector b, which form the m linear equ ations. Let us see an exa mple of an SDP for n = 3 and m = 2. Define the following matrices: 1 0 1 0 2 8 1 2 3 A1 = 0 3 7 ,A2 = 2 6 0 , and C = 2 9 0 , 1 7 5 8 0 4 3 0 7 and b1 = 11 and b2 = 19. Then the variable X will be the 3 3 sym metric matrix: 5 x11 x12 x13 X = x21 x22 x23 , x31 x32 x33 and so, for exa mple, CX = x11 + 2x12 + 3x13 + 2x21 + 9x22 + 0x23 + 3x31 + 0x32 + 7x33 = x11 + 4x12 + 6x13 + 9x22 + 0x23 + 7x33. since, in particular, X is sym metric. Therefore the SDP can be written as: SDP : minimize x11 + 4x12 + 6x13 + 9x22 + 0x23 + 7x33 x11 + 0x12 + 2x13 + 3x22 + 14x23 + 5x33 = 11 0x11 + 4x12 + 16x13 + 6x22 + 0x23 + 4x33 = 19 x11 x12 x13 X = x21 x22 x23 0.

8 X31 x32 x33 Notice that SDP looks remarkably similar to a linear program. However, the standard LP constraint that x must lie in the nonnegative orthant is re placed by the constraint that the variable X must lie in the cone of positive Semidefinite matrices. Just as x 0 states that each of the n components of x must be nonnegative, it may be helpful to think of X 0 as stating that each of the n eigenvalues of X must be nonnegative. 6 It is easy to see that a linear program LP is a special instance of an SDP. To see one way of doing this, suppose that (c, a1, .. , am, b1, .. , bm) comprise the data for LP. Then define: ai1 0 .. 0 c1 0 .. 0 0 ai2 .. 0 0 c2 .. 0 Ai = .. , i = 1, .. , m, and C = .. 0 0.

9 Ain 0 0 .. cn Then LP can be written as: SDP : minimize CX Ai X = bi , i = 1, .. , m, Xij = 0, i = 1, .. , n, j= i+ 1, .. , n, X 0, with the association that x1 0 .. 0 0 x2 .. 0 X = .. 00 .. xn Of course, in practice one would never want to convert an instance of LP into an instance of SDP. The above construction merely shows that SDP includes linear Programming as a special case. 7 P P PX X 5 Semidefinite Programming Duality The dual problem of SDP is defined (or derived from first principles) to be: m SDD : maxi mize yibi i=1 m yiAi + S = C i=1 S 0. One convenient way of thinki ng about this problem is as follows. Given mul mtipliers y1, .. , ym, the objective is to maxi mize the linear function i=1 yibi. The constraints of SDD state that the matrix S defined as m S = C yiAi i=1 must be positive Semidefinite .

10 That is, m C yiAi 0. i=1 We illustrate this construction with the exa mple presented earlier. The dual problem is: SDD : maxi mize 11y1 + 19y2 1 0 1 0 2 8 1 2 3 y1 0 3 7 +y2 2 6 0 +S = 2 9 0 1 7 5 8 0 4 3 0 7 S 0, 8 Pwhich we can rewrite in the following form: SDD : maxi mize 11y1 + 19y2 1 1y1 0y2 2 0y1 2y2 3 1y1 8y2 2 0y1 2y2 9 3y1 6y2 0 7y1 0y2 0. 3 1y1 8y2 0 7y1 0y2 7 5y1 4y2 It is often easier to see and to work with a Semidefinite program when it is presented in the format of the dual SDD, since the variables are the m multipliers y1, .. , ym. As in linear Programming , we can switch from one format of SDP (pri mal or dual) to any other format with great ease, and there is no loss of generality in assuming a particular specific format for the primal or the dual.


Related search queries