-
Notifications
You must be signed in to change notification settings - Fork 3
Sum‐of‐squares Optimization
A polynomial sum-of-squares optimization problem takes the form
where
General, nonconvex sum-of-squares optimization problems with nonlinear objective and constraints functions are solved by the nonconvex/nonlinear interface.
S = casos.nlsossol('S','sequential',struct('x',xi,'f',F,'g',G,'p',pi),opts)
initializes the nonconvex/nonlinear solver named 'S' using a sequential optimization algorithm reminiscent of a generalized Newton method[CL2023]. Options are provided as structure opts including optional fields opts.Kx and opts.Kc describing, respectively, the cones
sol = S('lbx',lbx,'ubx',ubx,'lbg',lbg,'ubg',ubg)
evaluates the SOS solver S providing (optional) arguments to describe
A sum-of-squares problem is affine if
S = casos.sossol('S','solver',struct('x',xi,'f',F,'g',G,'p',pi),opts)
initializes the SOS solver named 'S' by relaxation to a convex optimization problem using the convex solver 'solver'. See Conic optimization for supported solvers. Options are provided as structure opts including optional fields opts.Kx and opts.Kc describing, respectively, the cones
A quasiconvex sum-of-squares problems takes the form
where
S = casos.qcsossol('S','bisection',struct('x',xi,'f',±t,'g',G,'p',pi),opts)
initializes the quasiconvex SOS solver named 'S' by bisection over convex sum-of-squares optimization problems. Options are provided as structure opts including optional fields opts.Kx and opts.Kc describing, respectively, the cones
[SB2010]: P. Seiler and G. J. Balas, ‘Quasiconvex sum-of-squares programming’, in 49th IEEE Conference on Decision and Control, Atlanta, GA, 2010, pp. 3337–3342. doi: 10.1109/CDC.2010.5717672.
[CL2023]: T. Cunis and B. Legat, ‘Sequential sum-of-squares programming for analysis of nonlinear systems’, in 2023 American Control Conference, San Diego, CA, 2023, pp. 756–762. doi: 10.23919/ACC55779.2023.10156153.
- Getting started
- Available conic solvers
- Convex and nonconvex sum-of-squares optimization
- Supported vector, matrix, and polynomial cones
- Some practical tipps for sum-of-squares
- Transitioning from other toolboxes
- Example code snippets
If you use CaΣoS, please cite us.