Solvers

Various state-of-the-art solvers are currently usable with RobOptim. They are integrated to RobOptim as plug-ins. You will have to install the plug-ins for the solvers you will use to solve your problem.

Supported Solvers

These solvers have been used to solve full-scale robotics problem. Bugs may remain but the RobOptim plug-ins are considered stable enough to be used.

Solver name Type Constraints License Upstream Website
CFSQP Nonlinear (Sequential) Proprietary aemdesign.com (down)
IPOPT Nonlinear (Interior Point) EPL COIN-OR
CMinPack Nonlinear Least Squares Proprietary C/C++ MinPack
NAG Nonlinear Proprietary NAG website

Experimental Solvers

These solvers are available as technology preview. Depending on the package, they may be usable or not, and you should probably contact the author before trying to use them.

Solver name Type Constraints License Upstream Website
Eigen Nonlinear Least Squares (Levenberg-Marquardt) MPL2 Eigen
CMA-ES Nonlinear (Evolutionary) LGPL CMA-ES
NLopt Nonlinear LGPL NLopt
PaGMO Nonlinear (Evolutionary) GPLv3 PaGMO
KNITRO Nonlinear Proprietary KNITRO

Wanted Solvers

Writing a new plug-in is relatively easy, please consider contributing to RobOptim by creating a plug-in for one of these popular solvers:

Solver name Type Constraints License Upstream Website
MOSEK Nonlinear Proprietary MOSEK
LANCELOT Nonlinear Free for Academic Use LANCELOT
SNOPT Nonlinear Proprietary SNOPT
Ceres (Google) Nonlinear Least Squares BSD Ceres
qpOASES QP LGPL 2.1 qpOASES
HQP Nonlinear (Sparse SQP) LGPL 2 HQP
comments powered by Disqus