Sum-of-squares optimization

From HandWiki

A sum-of-squares optimization program is an optimization problem with a linear cost function and a particular type of constraint on the decision variables. These constraints are of the form that when the decision variables are used as coefficients in certain polynomials, those polynomials should have the polynomial SOS property. When fixing the maximum degree of the polynomials involved, sum-of-squares optimization is also known as the Lasserre hierarchy of relaxations in semidefinite programming.

Sum-of-squares optimization techniques have been applied across a variety of areas, including control theory (in particular, for searching for polynomial Lyapunov functions for dynamical systems described by polynomial vector fields), statistics, finance and machine learning.[1][2][3][4]

Optimization problem

Given a vector cn and polynomials ak,j for k=1,Ns, j=0,1,,n, a sum-of-squares optimization problem is written as

maximizeuncTusubject toak,0(x)+ak,1(x)u1++ak,n(x)unSOS(k=1,,Ns).

Here "SOS" represents the class of sum-of-squares (SOS) polynomials. The quantities un are the decision variables. SOS programs can be converted to semidefinite programs (SDPs) using the duality of the SOS polynomial program and a relaxation for constrained polynomial optimization using positive-semidefinite matrices, see the following section.

Dual problem: constrained polynomial optimization

Suppose we have an n-variate polynomial p(x):n , and suppose that we would like to minimize this polynomial over a subset An. Suppose furthermore that the constraints on the subset A can be encoded using m polynomial equalities of degree at most 2d, each of the form ai(x)=0 where ai:n is a polynomial of degree at most 2d. A natural, though generally non-convex program for this optimization problem is the following: minxnC,xd(xd) subject to:

Ai,xd(xd)=0 i[m],

 

 

 

 

(1)

x=1, where xd is the nO(d)-dimensional vector with one entry for every monomial in x of degree at most d, so that for each multiset S[n],|S|d, xS=iSxi, C is a matrix of coefficients of the polynomial p(x) that we want to minimize, and Ai is a matrix of coefficients of the polynomial ai(x) encoding the i-th constraint on the subset An. The additional, fixed constant index in our search space, x=1, is added for the convenience of writing the polynomials p(x) and ai(x) in a matrix representation.

This program is generally non-convex, because the constraints (1) are not convex. One possible convex relaxation for this minimization problem uses semidefinite programming to replace the rank-one matrix of variables xd(xd) with a positive-semidefinite matrix X: we index each monomial of size at most 2d by a multiset S of at most 2d indices, S[n],|S|2d. For each such monomial, we create a variable XS in the program, and we arrange the variables XS to form the matrix X[n]d×[n]d, where [n]d×[n]dis the set of real matrices whose rows and columns are identified with multisets of elements from n of size at most d. We then write the following semidefinite program in the variables XS: minX[n]d×[n]dC,X subject to: Ai,X=0 i[m],Q X=1, XUV=XST U,V,S,T[n],|U|,|V|,|S|,|T|d, and UV=ST, X0,

where again C is the matrix of coefficients of the polynomial p(x) that we want to minimize, and Ai is the matrix of coefficients of the polynomial ai(x) encoding the i-th constraint on the subset An.

The third constraint ensures that the value of a monomial that appears several times within the matrix is equal throughout the matrix, and is added to make X respect the symmetries present in the quadratic form xd(xd).

Duality

One can take the dual of the above semidefinite program and obtain the following program: maxymy0, subject to: Cy0ei[m]yiAiST=UVyS,T,U,V(eS,TeU,V)0.

We have a variable y0 corresponding to the constraint e,X=1 (where e is the matrix with all entries zero save for the entry indexed by (,)), a real variable yifor each polynomial constraint X,Ai=0s.t.i[m], and for each group of multisets S,T,U,V[n],|S|,|T|,|U|,|V|d,ST=UV, we have a dual variable yS,T,U,Vfor the symmetry constraint X,eS,TeU,V=0. The positive-semidefiniteness constraint ensures that p(x)y0 is a sum-of-squares of polynomials over An: by a characterization of positive-semidefinite matrices, for any positive-semidefinite matrix Qm×m, we can write Q=i[m]fifi for vectors fim. Thus for any xAn, p(x)y0=p(x)y0i[m]yiai(x)since xA=(xd)(Cy0ei[m]yiAiST=UVyS,T,U,V(eS,TeU,V))xdby symmetry=(xd)(ififi)xd=ixd,fi2=ifi(x)2,

where we have identified the vectors fi with the coefficients of a polynomial of degree at most d. This gives a sum-of-squares proof that the value p(x)y0 over An.

The above can also be extended to regions An defined by polynomial inequalities.

Sum-of-squares hierarchy

The sum-of-squares hierarchy (SOS hierarchy), also known as the Lasserre hierarchy, is a hierarchy of convex relaxations of increasing power and increasing computational cost. For each natural number d the corresponding convex relaxation is known as the dth level or d-th round of the SOS hierarchy. The 1st round, when d=1, corresponds to a basic semidefinite program, or to sum-of-squares optimization over polynomials of degree at most 2. To augment the basic convex program at the 1st level of the hierarchy to d-th level, additional variables and constraints are added to the program to have the program consider polynomials of degree at most 2d.

The SOS hierarchy derives its name from the fact that the value of the objective function at the d-th level is bounded with a sum-of-squares proof using polynomials of degree at most 2d via the dual (see "Duality" above). Consequently, any sum-of-squares proof that uses polynomials of degree at most 2d can be used to bound the objective value, allowing one to prove guarantees on the tightness of the relaxation.

In conjunction with a theorem of Berg, this further implies that given sufficiently many rounds, the relaxation becomes arbitrarily tight on any fixed interval. Berg's result[5][6] states that every non-negative real polynomial within a bounded interval can be approximated within accuracy ε on that interval with a sum-of-squares of real polynomials of sufficiently high degree, and thus if OBJ(x) is the polynomial objective value as a function of the point x, if the inequality c+εOBJ(x)0 holds for all x in the region of interest, then there must be a sum-of-squares proof of this fact. Choosing c to be the minimum of the objective function over the feasible region, we have the result.

Computational cost

When optimizing over a function in n variables, the d-th level of the hierarchy can be written as a semidefinite program over nO(d) variables, and can be solved in time nO(d) using the ellipsoid method.

Sum-of-squares background

Main page: Polynomial SOS

A polynomial p is a sum of squares (SOS) if there exist polynomials {fi}i=1m such that p=i=1mfi2. For example, p=x24xy+7y2 is a sum of squares since p=f12+f22 where f1=(x2y) and f2=3y. Note that if p is a sum of squares then p(x)0 for all xn. Detailed descriptions of polynomial SOS are available.[7][8][9]

Quadratic forms can be expressed as p(x)=xTQx where Q is a symmetric matrix. Similarly, polynomials of degree ≤ 2d can be expressed as p(x)=z(x)TQz(x), where the vector z contains all monomials of degree d. This is known as the Gram matrix form. An important fact is that p is SOS if and only if there exists a symmetric and positive-semidefinite matrix Q such that p(x)=z(x)TQz(x). This provides a connection between SOS polynomials and positive-semidefinite matrices.

Software tools

  • SOSTOOLS, licensed under the GNU GPL. The reference guide is available at arXiv:1310.4716 [math.OC], and a presentation about its internals is available here.
  • CDCS-sos, a package from CDCS, an augmented Lagrangian method solver, to deal with large scale SOS programs.
  • The SumOfSquares extension of JuMP for Julia.
  • TSSOS for Julia, a polynomial optimization tool based on the sparsity adapted moment-SOS hierarchies.
  • For the dual problem of constrained polynomial optimization, GloptiPoly for MATLAB/Octave, Ncpol2sdpa for Python and MomentOpt for Julia.

References

  1. Sum of squares : theory and applications : AMS short course, sum of squares : theory and applications, January 14-15, 2019, Baltimore, Maryland. Parrilo, Pablo A.; Thomas, Rekha R.. Providence, Rhode Island: American Mathematical Society. 2020. ISBN 978-1-4704-5025-0. OCLC 1157604983. https://www.worldcat.org/oclc/1157604983. 
  2. Tan, W., Packard, A., 2004. "Searching for control Lyapunov functions using sums of squares programming". In: Allerton Conf. on Comm., Control and Computing. pp. 210–219.
  3. Tan, W., Topcu, U., Seiler, P., Balas, G., Packard, A., 2008. Simulation-aided reachability and local gain analysis for nonlinear dynamical systems. In: Proc. of the IEEE Conference on Decision and Control. pp. 4097–4102.
  4. A. Chakraborty, P. Seiler, and G. Balas, "Susceptibility of F/A-18 Flight Controllers to the Falling-Leaf Mode: Nonlinear Analysis," AIAA Journal of Guidance, Control, and Dynamics, vol. 34 no. 1 (2011), pp. 73–85.
  5. Berg, Christian (1987). Landau, Henry J.. ed. "The multidimensional moment problem and semigroups". Proceedings of Symposia in Applied Mathematics 37: 110–124. doi:10.1090/psapm/037/921086. ISBN 9780821801147. https://books.google.com/books?id=IEo2Iu_uogUC&dq=%22The+multidimensional+moment+problem+and+semigroups%22&pg=PA110. 
  6. Lasserre, J. (2007-01-01). "A Sum of Squares Approximation of Nonnegative Polynomials". SIAM Review 49 (4): 651–669. doi:10.1137/070693709. ISSN 0036-1445. http://epubs.siam.org/doi/abs/10.1137/070693709. 
  7. Parrilo, P., (2000) Structured semidefinite programs and semialgebraic geometry methods in robustness and optimization. Ph.D. thesis, California Institute of Technology.
  8. Parrilo, P. (2003) "Semidefinite programming relaxations for semialgebraic problems". Mathematical Programming Ser. B 96 (2), 293–320.
  9. Lasserre, J. (2001) "Global optimization with polynomials and the problem of moments". SIAM Journal on Optimization, 11 (3), 796{817.