Lecture 22
Lecture 22
Pablo A. Parrilo
Laboratory for Information and Decision Systems
Massachusetts Institute of Technology
Cambridge, MA 021394307, USA
[email protected]
1
other polynomials, i.e., astonishing variety of applications. By now there are
� several excellent introductions to SDP; among them
p(x) = qi2 (x), qi (x) ∈ R[x]. we mention the wellknown work of Vandenberghe
i and Boyd [44] as a wonderful survey of the basic the
If p(x) is SOS then clearly p(x) ≥ 0 for all x. In ory and initial applications, and the handbook [45]
general, SOS decompositions are not unique. for a comprehensive treatment of the many aspects
of the subject. Other survey works, covering differ
Example 1 The polynomial p(x1 , x2 ) = x21 − x1 x22 + ent complementary aspects are the early work by Al
x42 + 1 is SOS. Among infinite others, it has the de izadeh [2], Goemans [15], as well as the more recent
compositions: ones due to Todd [43], De Klerk [9] and Laurent and
3 1 Rendl [25].
p(x1 , x2 ) = (x1 − x22 )2 + (x1 + x22 )2 + 1
4 4
1 2 2 2 2 From SDP to SOS The main object of interest in
= (3 − x2 ) + x2 + semidefinite programming is
9 3
1 23 Quadratic forms, that are positive semi
+ (9x1 − 16x22 )2 + x21 .
288 32 definite.
When attempting to generalize this construction to
The sum of squares condition is a quite natural suf homogeneous polynomials of higher degree, an un
ficient test for polynomial nonnegativity. Its rich surmountable difficulty that appears is the fact that
mathematical structure has been analyzed in detail in deciding nonnegativity for quartic or higher degree
the past, notably by Reznick and his coauthors [6, 38], forms is an NPhard problem. Therefore, a computa
but until very recently the computational implica tional tractable replacement for this is the following:
tions have not been fully explored. In the last few
years there have been some very interesting new de Even degree polynomials, that are sums
velopments surrounding sums of squares, where sev of squares.
eral independent approaches have produced a wide Sum of squares programs can then be defined as op
array of results linking foundational questions in al timization problems over affine families of polynomi
gebra with computational possibilities arising from als, subject to SOS contraints. Like SDPs, there are
convex optimization. Most of them employ semidef several possible equivalent descriptions. We choose
inite programming (SDP) as the essential computa below a free variables formulation, to highlight the
tional tool. For completeness, we present in the next analogy with the standard SDP dual form discussed
paragraph a brief summary of SDP. above.
Semidefinite programming SDP is a broad gen Definition 1 A sum of squares program has the
eralization of linear programming (LP), to the case form
of symmetric matrices. Denoting by S n the space of maxy b 1 y 1 + · · · + bm y m
n × n symmetric matrices, the standard SDP primal s.t. Pi (x, y) are SOS, i = 1, . . . , p
dual formulation is:
� where Pi (x, y) := Ci (x) + Ai1 (x)y1 + · · · + Aim (x)ym ,
Ai • X = bi , i = 1, . . . , m
minX C • X s.t. and the Ci , Aij are given polynomials in the variables
X�0
xi .
2
forms, we recover standard SDP. On the other hand, SOS and convexity The connection between sum
as we will see in the next section, it is possible to of squares decompositions and convexity can be
exactly embed every SOS program into a larger SDP. traced back to the work of N. Z. Shor [39]. In this
Nevertheless, the rich algebraic structure of SOS pro 1987 paper, he essentially outlined the links between
grams will allow us a much deeper understanding of Hilbert’s 17th problem and a class of convex bounds
their special properties, as well as enable customized, for unconstrained polynomial optimization problems.
more efficient algorithms for their solution [26]. Unfortunately, the approach went mostly unnoticed
Furthermore, as illustrated in later sections, there for several years, probably due to the lack of the con
are numerous questions related to some foundational venient framework of SDP.
issues in nonconvex optimization that have simple
and natural formulations as SOS programs.
3 Algebra and optimization
SOS programs as SDPs Sum of squares pro
A central theme throughout convex optimization is
grams can be written as SDPs. The reason is the
the idea of infeasibility certificates (for instance, in
following theorem:
LP via Farkas’ lemma), or equivalently, theorems of
Theorem 1 A polynomial p(x) is SOS if and only the alternative. As we will see, the key link relating
if p(x) = z T Qz, where z is a vector of monomials in algebra and optimization in this approach is the fact
the xi variables, Q ∈ S N and Q � 0. that infeasibility can always be certified by a partic
ular algebraic identity, whose solution is found via
In other words, every SOS polynomial can be written
convex optimization.
as a quadratic form in a set of monomials of cardinal
We explain some of the concrete results in The
ity N , with the corresponding matrix being positive
orem 5, after a brief introduction to two algebraic
semidefinite. The vector of monomials z (and there
concepts, and a comparison with three wellknown
fore N ) in general depends on the degree and sparsity
infeasibility certificates.
pattern of p(x). If p(x) has n variables and total de
gree 2d, then z can always be chosen as a subset of
the set of monomials �of degree less than or equal to Ideals and cones For later reference, we define
n+d
d, of cardinality N = d .
� here two important algebraic objects: the ideal and
the cone associated with a set of polynomials:
Example 2 Consider again the polynomial from Ex
ample 1. It has the representation Definition 2 Given a set of multivariate polynomi
⎡ ⎤T ⎡ ⎤⎡ ⎤ als {f1 , . . . , fm }, let
1 6 0 −2 0 1
m
1 ⎢ x2 ⎥ ⎥ ⎢ 0 4
⎢ 0 0 ⎥
⎥ ⎢ x22 ⎥ , ideal(f1 , . . . , fm ) := {f | f =
⎢ ⎥ �
p(x1 , x2 ) = ⎢ 2 ti fi , ti ∈ R[x]}.
6 ⎣ x2 ⎦ ⎣ −2 0 6 −3 ⎦ ⎣ x2 ⎦
i=1
x1 0 0 −3 6 x1
Definition 3 Given a set of multivariate polynomi
and the matrix in the expression above is positive
als {g1 , . . . , gm }, let
semidefinite.
�
In the representation f (x) = z T Qz, for the right cone(g1 , . . . , gm ) := {g | g = s0 + si gi +
and lefthand sides to be identical, all the coefficients {i}
of the corresponding polynomials should be equal.
� �
+ sij gi gj + sijk gi gj gk + · · · },
Since Q is simultaneously constrained by linear equa {i,j} {i,j,k}
tions and a positive semidefiniteness condition, the
problem can be easily seen to be directly equivalent where each term in the sum is a squarefree product of
to an SDP feasibility problem in the standard primal the polynomials gi , with a coefficient sα ∈ R[x] that is
form (2). a sums of squares. The sum is finite, with a total of
Given a SOS program, we can use the theorem 2m − 1 terms, corresponding to the nonempty subsets
above to construct an equivalent SDP. The conversion of {g1 , . . . , gm }.
step is fully algorithmic, and has been implemented,
for instance, in the SOSTOOLS [36] software pack These algebraic objects will be used for deriving valid
age. Therefore, we can in principle directly apply inequalities, which are logical consequences of the
all the available numerical methods for SDP to solve given constraints. Notice that by construction, every
SOS programs. polynomial in ideal(fi ) vanishes in the solution set
3
of fi (x) = 0. Similarly, every element of cone(gi ) is Theorem 4 (Farkas lemma)
clearly nonnegative on the feasible set of gi (x) ≥ 0. �
The notions of ideal and cone as used above are Ax + b = 0
is infeasible
standard in real algebraic geometry; see for instance Cx + d ≥ 0
[5]. In particular, the cones are also referred to as a �
preorders. Notice that as geometric objects, ideals are � T
A µ + CT λ = 0
affine sets, and cones are closed under convex com ∃ λ ≥ 0, µ s.t.
bT µ + dT λ = −1.
binations and nonnegative scalings (i.e., they are ac
tually cones in the convex geometry sense). These
convexity properties, coupled with the relationships Although not widely known in the optimization com
between SDP and SOS, will be key for our develop munity until recently, it turns out that similar cer
ments in the next section. tificates do exist for arbitrary systems of polynomial
equations and inequalities over the reals. The result
Infeasibility certificates If a system of equations essentially appears in this form in [5], and is due to
does not have solutions, how do we prove this fact? Stengle [40].
A very useful concept is that of certificates, which
are formal algebraic identities that provide irrefutable Theorem 5 (Positivstellensatz)
evidence of the inexistence of solutions. �
We briefly illustrate some wellknown examples be fi (x) = 0, (i = 1, . . . , m)
is infeasible in Rn
low. The first two deal with linear systems and poly gi (x) ≥ 0, (i = 1, . . . , p)
nomial equations over the complex numbers, respec �
tively. ⎧
⎨ F (x) + G(x) = −1
Theorem 2 (Range/kernel) ∃ F (x), G(x) ∈ R[x] s.t. F (x) ∈ ideal(f1 , . . . , fm )
G(x) ∈ cone(g1 , . . . , gp ).
⎩
Ax = b is infeasible
�
∃ µ s.t. A µ = 0, bT µ = −1.
T The theorem states that for every infeasible system
of polynomial equations and inequalities, there ex
ists a simple algebraic identity that directly certifies
Theorem 3 (Hilbert’s Nullstellensatz) Let the inexistence of real solutions. By construction,
fi (z), . . . , fm (z) be polynomials in complex variables the evaluation of the polynomial F (x) + G(x) at any
z1 , . . . , zn . Then, feasible point should produce a nonnegative number.
However, since this expression is identically equal to
fi (z) = 0 (i = 1, . . . , m) is infeasible in Cn the polynomial −1, we arrive at a contradiction. Re
� markably, the Positivstellensatz holds under no as
sumptions whatsoever on the polynomials.
−1 ∈ ideal(f1 , . . . , fm ).
The use of the German word “Positivstellensatz”
is standard in the field, and parallels the classical
“Nullstellensatz” (roughly, “theorem of the zeros”)
Each of these theorems has an “easy” direction. For
obtained by Hilbert in 1901 and mentioned above.
instance, for the first case, given the multipliers µ the
In the worst case, the degree of the infeasibility
infeasibility is obvious, since
certificates F (x), G(x) could be high (of course, this
Ax = b ⇒ µT Ax = µT b ⇒ 0 = −1, is to be expected, due to the NPhardness of the
original question). In fact, there are a few explicit
which is clearly a contradiction. counterexamples where large degree refutations are
The two theorems above deal only with the case of necessary [16]. Nevertheless, for many problems of
equations. The inclusion of inequalities in the prob practical interest, it is often the case that it is pos
lem formulation poses additional algebraic challenges, sible to prove infeasibility using relatively lowdegree
because we need to work on an ordered field. In other certificates. There is significant numerical evidence
words, we need to take into account special properties that this is the case, as indicated by the large num
of the reals, and not just the complex numbers. ber of practical applications where SDP relaxations
For the case of linear inequalities, LP duality pro based on these techniques have provided solutions of
vides the following characterization: very high quality.
4
Degree \ Field Complex Real
Linear Range/Kernel Farkas Lemma
Linear Algebra Linear Programming
Polynomial Nullstellensatz Positivstellensatz
Bounded degree: Linear Algebra Bounded degree: SDP
Groebner bases
Of course, we are concerned with the effective com For instance, for D = 4 we find the certificate
putation of these certificates. For the cases of Theo
t1 = −3x21 + x1 − 3x22 + 6x2 − 2,
rems 2–4, the corresponding refutations can be ob
tained using either linear algebra, linear program s1 = 3, s2 = 1, s12 = 0,
ming, or Groebner bases techniques (see [8] for a su
perb introduction to Groebner bases). s0 = 3x41 + 2x13 + 6x21 x22 − 6x21 x2 − x21 − x1 x22 +
+3x42 + 2x23 − x22 − 3x2 + 3
For the Positivstellensatz, we notice that the cones ⎡ ⎤
6 −3 −3 0 0 −3
and ideals as defined above are always convex sets in ⎢ −3 4 2 0 1 1 ⎥
the space of polynomials. A key consequence is that 1 T⎢⎢ −3 2 6 −2 0 −3 ⎥
⎥
the conditions in Theorem 5 for a certificate to ex = z ⎢ ⎥z,
2 ⎢ 0 0 −2 4 −7 2 ⎥
ist are therefore convex, regardless of any convexity ⎣ 0 1 0 −7 18 0 ⎦
property of the original problem. Even more, the −3 1 −3 2 0 6
same property holds if we consider only bounded
where
degree sections, i.e., the intersection with the set of �T
z = 1 x2 x22 x1 x1 x2 x21
�
polynomials of degree less than or equal to a given .
number D. In this case, the conditions in the P
The resulting identity (3) thus certifies the inconsis
satz have exactly the form of a SOS program! Of
tency of the system {f1 = 0, g1 ≥ 0, g2 ≥ 0}.
course, as discussed earlier, this implies that we can
find boundeddegree certificates, by solving semidefi As outlined in the preceding paragraphs, there is a
nite programs. In Table 1 we present a summary of direct connection going from general polynomial op
the infeasibility certificates discussed, and the associ timization problems to SDP, via Psatz infeasibility
ated computational techniques. certificates. Pictorially, we have the following:
Polynomial systems
⇓
Psatz certificates
⇓
SOS programs
Example 3 Consider again the system (1). We will ⇓
show that it has no solutions (x1 , x2 ) ∈ R2 . By the P SDP
satz, the system is infeasible if and only if there exist
polynomials t1 , s0 , s1 , s2 , s12 ∈ R[x1 , x2 ] that satisfy Even though we have discussed only feasibility prob
lems, there are obvious straightforward connections
with optimization. By considering the emptiness of
the sublevel sets of the objective function, sequences
f1 · t1 + s0 + s1 · g1 + s2 · g2 + s12 · g1 · g2 ≡ −1, of converging bounds indexed by certificate degree
� �� � � �� �
ideal(f1 ) cone(g1 ,g2 ) can be directly constructed.
(3)
where s0 , s1 , s2 and s12 are SOS.
4 Further developments and
A SOS relaxation is obtained by looking for solu applications
tions where all the terms in the lefthand side have
degree less than or equal to D. For each fixed integer We have covered only the core elements of the
D > 0 this can be tested by semidefinite programming. SOS/SDP approach. Much more is known, and even
5
more still remains to be discovered, both in the theo here is to provide the reader with some good starting
retical and computational ends. Some specific issues points to this growing literature.
are discussed below. In systems and control theory, the techniques have
provided some of the best available analysis and de
Exploiting structure and numerical computa sign methods, in areas such as nonlinear stability and
tion To what extent can the inherent structure in robustness analysis [30, 28, 35], state feedback control
SOS programs be exploited for efficient computa [19], fixedorder controllers [18], nonlinear synthesis
tions? Given the algebraic origins of the formulation, [37], and model validation [34]. Also, there have been
it is perhaps not surprising to find that several intrin interesting recent applications in geometric theorem
sic properties of the input polynomials can be prof proving [33] and quantum information theory [12, 13].
itably used [29]. In this direction, symmetry reduc
tion techniques have been employed by Gatermann Acknowledgments: The author would like to thank
and Parrilo in [14] to provide novel representations Etienne de Klerk and Luis Vicente for their helpful
for symmetric polynomials. Kojima, Kim and Waki comments and suggestions.
[20] have recently presented some results for sparse
polynomials. Parrilo [31] and Laurent [23] have ana References
lyzed the further simplifications that occur when the
inequality constraints define a zerodimensional ideal. [1] K. Aardal and R. Thomas (eds.), Algebraic and geo
metric methods in discrete optimization, Springer
Verlag, Heidelberg, 2003, Math. Program. 96 (2003),
Other relaxations Lasserre [21, 22] has indepen
no. 2, Ser. B. MR 1 993 044
dently introduced a scheme for polynomial optimiza
tion dual to the one described here, but relying on [2] F. Alizadeh, Interior point methods in semidefinite
programming with applications to combinatorial op
Putinar’s representation theorem for positive poly
timization, SIAM J. Optim. 5 (1995), no. 1, 13–51.
nomials rather than the Psatz. There are very inter
esting relationship between SOSbased methods and [3] D. Bertsimas, G. Perakis, and S. Tayur, A new al
gebraic geometry algorithm for integer programming,
earlier relaxation and approximation schemes, such
Management Science 46 (2000), no. 7, 999–1008.
as LovászSchrijver and SheraliAdams. Laurent [24]
analyzes this in the specific case of 01 programming. [4] D. Bertsimas and I. Popescu, Optimal inequal
ities in probability: A convex optimization ap
proach, INSEAD working paper, available at
Implementations The software SOSTOOLS [36] http://www.insead.edu/facultyresearch/tm/popescu/,
is a free, thirdparty MATLAB1 toolbox for formu 19992001.
lating and solving general sum of squares programs. [5] J. Bochnak, M. Coste, and MF. Roy, Real algebraic
The related sofware Gloptipoly [17] is oriented to geometry, Springer, 1998.
ward global optimization problems. In their current
[6] M. D. Choi, T. Y. Lam, and B. Reznick, Sums of
version, both use the SDP solver SeDuMi [41] for nu squares of real polynomials, Proceedings of Symposia
merical computations. in Pure Mathematics 58 (1995), no. 2, 103–126.
[7] P. Conti and C. Traverso, Buchberger algorithm and
Approximation properties There are several im integer programming, Applied algebra, algebraic al
portant open questions regarding the provable qual gorithms and errorcorrecting codes (New Orleans,
ity of the approximations. In this direction, De Klerk LA, 1991), Lecture Notes in Comput. Sci., vol. 539,
and Pasechnik [11] have established some approxima Springer, Berlin, 1991, pp. 130–139. MR 1 229 314
tions guarantees of a SOSbased scheme for the ap [8] D. A. Cox, J. B. Little, and D. O’Shea, Ideals, va
proximation of the stability number of a graph. Re rieties, and algorithms: an introduction to computa
cently, De Klerk, Laurent and Parrilo [10] have shown tional algebraic geometry and commutative algebra,
that a related procedure based on a result by Pólya Springer, 1997.
provides a polynomialtime approximation scheme [9] E. de Klerk, Aspects of semidefinite programming:
(PTAS) for polynomial optimization over simplices. Interior point algorithms and selected applications,
Applied Optimization, vol. 65, Kluwer Academic
Publishers, 2002.
Applications There are many exciting applica
tions of the ideas described here. The descriptions [10] E. de Klerk, M. Laurent, and P. A. Parrilo, A
that follow are necessarily brief; our main objective PTAS for the minimization of polynomials of fixed
degree over the simplex, Submitted, available at
1A registered trademark of The MathWorks, Inc. http://www.mit.edu/~parrilo, 2004.
6
[11] E. de Klerk and D.V. Pasechnik, Approximating the [27] Y. Nesterov, Squared functional systems and opti
stability number of a graph via copositive program mization problems, High Performance Optimization
ming, SIAM Journal on Optimization 12 (2002), (J.B.G. Frenk, C. Roos, T. Terlaky, and S. Zhang,
no. 4, 875–892. eds.), Kluwer Academic Publishers, 2000, pp. 405–
[12] A. C. Doherty, P. A. Parrilo, and F. M. Spedalieri, 440.
Distinguishing separable and entangled states, Phys [28] A. Papachristodoulou and S. Prajna, On the con
ical Review Letters 88 (2002), no. 18. struction of Lyapunov functions using the sum of
[13] , Complete family of separability criteria, squares decomposition, Proceedings of the 41th IEEE
Physical Review A 69 (2004), 022308. Conference on Decision and Control, 2002.
[14] K. Gatermann and P. A. Parrilo, Symmetry groups, [29] P. A. Parrilo, Exploiting algebraic structure in sum
semidefinite programs, and sums of squares, Journal of squares programs, In Positive Polynomials in
of Pure and Applied Algebra 192 (2004), no. 13, Control, D. Henrion and A. Garulli, eds., LNCIS,
95–128. Springer, forthcoming.
[15] M. X. Goemans, Semidefinite programming in com [30] , Structured semidefinite programs and
binatorial optimization, Math. Programming 79 semialgebraic geometry methods in robustness
(1997), no. 13, 143–161. MR 98g:90028 and optimization, Ph.D. thesis, California In
stitute of Technology, May 2000, Available at
[16] D. Grigoriev and N. Vorobjov, Complexity of Null http://resolver.caltech.edu/CaltechETD:
and Positivstellensatz proofs, Annals of Pure and Ap etd05062004055516.
plied Logic 113 (2002), no. 13, 153–160.
[31] , An explicit construction of distin
[17] D. Henrion and J.B. Lasserre, Glop guished representations of polynomials non
tiPoly global optimization over polynomi negative over finite sets, Tech. Report IfA
als with Matlab and SeDuMi, Available from Technical Report AUT0202. Available from
http://www.laas.fr/~henrion/software/gloptipoly/. http://control.ee.ethz.ch/~parrilo, ETH
[18] D. Henrion, M. Sebek, and V. Kucera, Positive poly Zürich, 2002.
nomials and robust stabilization with fixedorder con [32] , Semidefinite programming relaxations for
trollers, IEEE Transactions on Automatic Control semialgebraic problems, Math. Prog. 96 (2003),
48 (2003), no. 7, 1178–1186. no. 2, Ser. B, 293–320.
[19] Z. JarvisWloszek, R. Feeley, W. Tan, K. Sun, and [33] P. A. Parrilo and R. Peretz, An inequality for circle
A. Packard, Some controls applications of sum of packings proved by semidefinite programming, Dis
squares, Proceedings of the 42th IEEE Conference crete and Computational Geometry 31 (2004), no. 3,
on Decision and Control, 2003, pp. 4676–4681. 357–367.
[20] M. Kojima, S. Kim, and H. Waki, Sparsity in sum of [34] S. Prajna, Barrier certificates for nonlinear model
squares of polynomials, Research report B391, Dept. validation, Proceedings of the 42th IEEE Conference
of Mathematical and Computing Sciences, Tokyo In on Decision and Control, 2003, pp. 2884–2889.
stitute of Technology, 2003.
[35] S. Prajna and A. Papachristodoulou, Analysis of
[21] J. B. Lasserre, Global optimization with polynomials switched and hybrid systems – beyond piecewise
and the problem of moments, SIAM J. Optim. 11 quadratic methods, Proceedings of the American
(2001), no. 3, 796–817. MR 1 814 045 Control Conference, 2003.
[22] , Polynomials nonnegative on a grid and dis [36] S. Prajna, A. Papachristodoulou, and P. A.
crete optimization, Trans. Amer. Math. Soc. 354 Parrilo, SOSTOOLS: Sum of squares optimiza
(2002), no. 2, 631–649. MR 1 862 561 tion toolbox for MATLAB, 200204, Available
[23] M. Laurent, Semidefinite representations for finite from http://www.cds.caltech.edu/sostools and
varieties, Preprint. http://www.mit.edu/~parrilo/sostools.
[24] , A comparison of the SheraliAdams, Lovász [37] S. Prajna, P. A. Parrilo, and A. Rantzer, Nonlin
Schrijver, and Lasserre relaxations for 01 program ear control synthesis by convex optimization, IEEE
ming, Math. Oper. Res. 28 (2003), no. 3, 470–496. Transactions on Automatic Control 49 (2004), no. 2,
MR 1 997 246 310–314.
[25] M. Laurent and F. Rendl, Semidefinite programming [38] B. Reznick, Some concrete aspects of Hilbert’s
and integer programming, Tech. Report PNAR0210, 17th problem, Contemporary Mathematics, vol. 253,
CWI, Amsterdam, April 2002. American Mathematical Society, 2000, pp. 251–272.
[26] J. Löfberg and P. A. Parrilo, From coefficients to [39] N. Z. Shor, Class of global minimum bounds of poly
samples: a new approach in SOS optimization, Pro nomial functions, Cybernetics 23 (1987), no. 6, 731–
ceedings of the 43th IEEE Conference on Decision 734, (Russian orig.: Kibernetika, No. 6, (1987), 9–
and Control, 2004. 11).
7
[40] G. Stengle, A Nullstellensatz and a Positivstellensatz
in semialgebraic geometry, Math. Ann. 207 (1974),
87–97.
[41] J. Sturm, SeDuMi version 1.05,
October 2001, Available from
http://fewcal.uvt.nl/sturm/software/sedumi.html.
[42] R. Thomas and R. Weismantel, Truncated Gröbner
bases for integer programming, Appl. Algebra En
grg. Comm. Comput. 8 (1997), no. 4, 241–256. MR
98i:90055
[43] M. Todd, Semidefinite optimization, Acta Numerica
10 (2001), 515–560.
[44] L. Vandenberghe and S. Boyd, Semidefinite program
ming, SIAM Review 38 (1996), no. 1, 49–95.
[45] H. Wolkowicz, R. Saigal, and L. Vandenberghe
(eds.), Handbook of semidefinite programming,
Kluwer, 2000.