Introducing SOSTOOLS: A General Purpose Sum of Squares Programming Solver
Stephen Prajna∗,1 , Antonis Papachristodoulou∗,1 , and Pablo A. Parrilo†
∗
Control and Dynamical Systems, California Inst. of Tech., Pasadena, CA 91125 - USA
†
Institut f¨r Automatik, ETH Z¨rich, CH-8092 Z¨rich - Switzerland u u u
Abstract singular value µ. Examples of these problems, as well as several other optimization-related examples, are provided and solved in the demo files that are distributed together with SOSTOOLS. This paper is based on the SOSTOOLS User’s Guide [12], and is organized as follows. In Section 2 a brief review on sum of squares polynomials is given and the notion of sum of squares programs is introduced. Section 3 describes the main features of SOSTOOLS, including the system requirements. To illustrate how SOSTOOLS is used, a step-by-step example in finding a Lyapunov function for a system with a rational vector field is given in Section 4, and finally some additional application examples are presented in Section 5. 2 Sum of Squares Polynomials and Sum of Squares Programs A multivariate polynomial p(x1 , ..., xn ) p(x) is a sum of squares (SOS, for brevity), if there exist polynomials f1 (x), ..., fm (x) such that m SOSTOOLS is a MATLAB toolbox for constructing and solving sum of squares programs. It can be used in combination with semidefinite programming software, such as SeDuMi, to solve many continuous and combinatorial optimization problems, as well as various control-related problems. This paper provides an overview on sum of squares programming, describes the primary features of SOSTOOLS, and shows how SOSTOOLS is used to solve sum of squares programs. Some applications from different areas are presented to show the wide applicability of sum of squares programming in general and SOSTOOLS in particular. 1 Introduction SOSTOOLS is a free, third-party MATLAB2 toolbox for solving sum of squares programs. The techniques behind
References: [1] M. D. Choi, T. Y. Lam, and B. Reznick. Sum of squares of real polynomials. Proceedings of Symposia in Pure Mathematics, 58(2):103–126, 1995. 6