-
Notifications
You must be signed in to change notification settings - Fork 0
Home
Welcome to the CaΣoS wiki! Here you'll find information about polynomial optimization, sum-of-squares and related cones, and general usage of the software.
CaΣoS aims to bring nonlinear optimization into sum-of-squares programming as well as facilitate the integration of pre-computed polynomials into optimal control solutions. CaΣoS is developed by researchers at the Institute of Flight Mechanics and Control of the University of Stuttgart and distributed open-source under the GPL-3.0 license.
The following requirements need to be met in order to use all functionalities of CaΣoS:
-
Download CasADi v3.6.x and add it to your Matlab path.
-
Download and install at least one solver for semidefinite (conic) programs, and add the solver(s) to the Matlab Path.
- Currently supported are Mosek (v10.1), SCS (v3.2.4), and SeDuMi (v1.3).
- Note: Mosek requires a separate license. Academic Licenses are available.
-
Add the CaΣoS root folder (the one that contains the directory
+casos
) to your Matlab path.
Important
CaΣoS requires CasADi version 3.6.0 or newer.
You can check if CaΣoS is ready to go by running the install script in utils/install.m
.
With sossol
, CaΣoS can verify nonnegativity of a polynomial. Consider for example
For which
% Polynomial optimization.
% indeterminate variable
x = casos.Indeterminates('x');
% some polynomial
f = x^4 + 10*x;
% scalar decision variable
g = casos.PS.sym('g');
% define SOS problem:
% min g s.t. (f + g) is SOS
sos = struct('x',g,'f',g,'g',f+g);
% constraint is scalar SOS cone
opts = struct('Kc',struct('sos',1));
% solve by relaxation to SDP
S = casos.sossol('S','sedumi',sos,opts);
% evaluate
sol = S();
fprintf('Minimum is %g.\n', full(sol.f))
TODO: add example (ROA)
- 1. Home
- 2. Polynomials
- 3. Polynomial Data Types (under construction)
- 4. Monomial Sparsity (under construction)
- 5. Polynomial Functions (under construction)
- 6. Matrix‐valued Polynomials (under construction)
- 7. Cones
- 8. Sum‐of‐squares Polynomials
- 9. Convex Optimization (under construction)
- 10. Sum‐of‐squares Optimization (under construction)
- 11. Practical SOS Guide