IPOPT
Interior Point Optimizer [Supplied]
IPOPT solves smooth, twice differentiable, nonlinear programs. While the objective need not be convex, IPOPT will only find local solutions. However for convex NLPs it is probably the best open source solver available!
Category | Open Source |
Manager | Dr. Andreas Wächter |
License | Eclipse Public License |
Home Page | IPOPT Home Page |
Download Page | IPOPT Tarball Directory |
MEX Interface | Supplied with IPOPT (by Dr. Peter Carbonetto) |
Pre-Requisites | MA571, MUMPS1, MKL2 |
Version Supplied | 3.12.7 |
Sparse Linear Solver
1As of OPTI Toolbox v1.71 the HSL solver MA57 has been dynamically linked to the IPOPT Interface. This has been achieved as MA57 is supplied with MATLAB, thus OPTI simply uses the version of MA57 already on your computer! MA57 appears to solve all problems via IPOPT faster than MUMPS, and should also be more robust.
2In addition, from OPTI v2.05 MKL PARDISO is available as a sparse linear solver. PARDISO is parallelized and can substantially speedup solving large problems. It is however a little 'sensitive', so ensure you have specified derivatives and sparsity patterns correctly. As below, select PARDISO via the linear_solver option.
Note it is possible to still use MUMPS. This is achieved by changing the 'linear_solver' option in ipoptset().
Citation
A. Wächter and L. T. Biegler, "On the Implementation of a Primal-Dual Interior Point Filter Line Search Algorithm for Large-Scale Nonlinear Programming," Mathematical Programming 106(1), pp. 25-57, 2006