Interfaced solvers
YALMIP supports a number of external solvers and these are briefly introduced
here. To understand the tables below, here are some explanations.
|
Version |
Solver version which has been successfully tested
together with YALMIP. Other versions might work. |
Specialized for |
This essentially states the problem classes that
can be solved without YALMIP performing any internal conversions of
the problem.
EQ |
Linear equality constraints. |
LP |
Linear element-wise inequality constraints. |
QP |
Convex quadratic objective function. |
SOCP |
Second order cone constraint. |
SDP |
Linear semidefinite constraints. |
BMI |
Bilinear and quadratic semidefinite constraints. |
GP |
Geometric programming (with posynomials) |
PP |
Polynomial programming |
NP |
General nonlinear programming |
MAXDET |
logdet objective and linear semidefinite constraints. |
I |
Integer (and/or binary) variables. |
M |
Multi-parametric |
|
Also handles |
Problem classes that can be solved after internal
problem conversions by YALMIP. Most importantly, equality constraints
are written as double-sided inequalities (or a reduced basis is derived),
convex quadratic performance objectives are rewritten using second
order cones, and second order cones are rewritten to semidefinite
constraints. |
Tag |
This is the tag used in
sdpsettings to select solver. |
|
|
Version |
8.1, 9.0 |
Specialized for |
EQ, LP, QP, I |
Also handles |
|
Homepage |
www.ilog.com |
Tag |
'cplex' |
Comments |
Interfaced through the MATLAB interfaces
CPLEXINT or
CPLEXMEX. |
|
|
Version |
4.9 |
Specialized for |
LP, SDP |
Also handles |
EQ, SOCP, QC, QP |
Homepage |
http://www.nmt.edu/~borchers/csdp.html |
Tag |
'csdp' |
Comments |
You must stand in the CSDP directory in MATLAB
when using CSDP, or have CSDP in your system path (having CSDP in
the MATLAB path is not sufficient). |
|
|
Version |
|
Specialized for |
SDP, |
Also handles |
EQ, LP, SOCP, QP |
Homepage |
http://www.mathworks.com/products/robust/ |
Tag |
'lmilab' |
Comments |
Commercial. Please note that LMILAB often is terribly
slow on general problems. LMILAB is efficient when control
specific
structure is explicitely stated, but YALMIP
cannot exploit this feature and LMILAB will thus run much slower compared
to when the problem is modelled directly in LMILAB. Hence, if you
insist on using LMILAB, YALMIP will cause efficiency problems. Of-course,
a simple solution is to switch solver and use any of the other SDP
solvers supported by YALMIP. To summarize,
do not use LMILAB together with YALMIP except if you really have to. |
|
|
Version |
3 |
Specialized for |
EQ, LP, QP, SOCP, GP, I |
Also handles |
|
Homepage |
http://www.mosek.com |
Tag |
'mosek' |
Comments |
Commercial solver (limited trial version available).
This solver has only been minimally tested. If you want to
purchase MOSEK for usage with YALMIP, then you always need product
PTS. You may also need one of the extensions
PTOC - If you solve problems with cones.
PTOM - If you solve problems with general nonlinear constraints such as
GPs.
PTOC - If you solve problems with integer variables. |
|
|
Version |
|
Specialized for |
EQ, LP, QP |
Also handles |
|
Homepage |
http://www.nag.co.uk |
Tag |
'nag' |
Comments |
Commercial. |
|
|
Version |
1.1 |
Specialized for |
LP, SDP, BMI |
Also handles |
EQ, SOCP, QC, QP |
Homepage |
http://www.penopt.com |
Tag |
'penbmi' |
Comments |
Commercial solver with free developer licenses
for academics. |
|
|
Version |
1.1 |
Specialized for |
LP, SDP |
Also handles |
EQ, SOCP, QC, QP |
Homepage |
http://www.penopt.com |
Tag |
'pensdp' |
Comments |
Commercial solver with free developer licenses
for academics. |
|
|
Version |
|
Specialized for |
SDP |
Also handles |
EQ, LP, SOCP, QC, QP |
Homepage |
http://dollar.biz.uiowa.edu/~burer/software/SDPLR/ |
Tag |
'sdplr' |
Comments |
SDPLR is specialized for problems with a low
rank dual solution (dual in YALMIPs notation). The solver can
additionally also exploit low rank data matrices. For information
on how this can be done using YALMIP, see the command
lowrank. |
|
|