# SOL TOMLAB /SOL Solver Reference

The SOL solvers are a set of Fortran solvers that were developed by the Stanford Systems Optimization Laboratory (SOL). <xr id="tab:solSolvers" /> lists the solvers included in TOMLAB /SOL. The solvers are called using a set of MEX-file interfaces developed as part of TOMLAB. All functionality of the SOL solvers are available and changeable in the TOMLAB framework in Matlab.

Detailed descriptions of the TOMLAB /SOL solvers are given in the following sections. Also see the M-file help for each solver.

The solvers reference guides for the TOMLAB /SOL solvers are available for download from the TOMLAB home page http://tomopt.com. There is also detailed instruction for using the solvers in SOL Using the SOL Solvers in TOMLAB. Extensive TOMLAB m-file help is also available, for example help snoptTL in Matlab will display the features of the SNOPT solver using the TOMLAB format.

TOMLAB /SOL solves nonlinear optimization problems (con) defined as

${\begin{array}{ll}\min \limits _{x}&f(x)\\&\\s/t&{\begin{array}{lcccl}x_{L}&\leq &x&\leq &x_{U},\\b_{L}&\leq &Ax&\leq &b_{U}\\c_{L}&\leq &c(x)&\leq &c_{U}\\\end{array}}\end{array}}$ where $\displaystyle x, x_L, x_U \in \MATHSET{R}^n$ , $\displaystyle f(x) \in \MATHSET{R}$ , $\displaystyle A \in \MATHSET{R}^{m_1 \times n}$ , $\displaystyle b_L,b_U \in \MATHSET{R}^{m_1}$ and $\displaystyle c_L,c(x),c_U \in \MATHSET{R}^{m_2}$ .

quadratic programming (qp) problems defined as

${\begin{array}{ll}\min \limits _{x}&f(x)={\frac {1}{2}}x^{T}Fx+c^{T}x\\&\\s/t&{\begin{array}{lcccl}x_{L}&\leq &x&\leq &x_{U},\\b_{L}&\leq &Ax&\leq &b_{U}\\\end{array}}\end{array}}$ where $\displaystyle c, x, x_L, x_U \in \MATHSET{R}^n$ , $\displaystyle F \in \MATHSET{R}^{n \times n}$ , $\displaystyle A \in \MATHSET{R}^{m_1 \times n}$ , and $\displaystyle b_L,b_U \in \MATHSET{R}^{m_1}$ .

linear programming (lp) problems defined as

${\begin{array}{ll}\min \limits _{x}&f(x)=c^{T}x\\&\\s/t&{\begin{array}{lcccl}x_{L}&\leq &x&\leq &x_{U},\\b_{L}&\leq &Ax&\leq &b_{U}\\\end{array}}\end{array}}$ where $\displaystyle c, x, x_L, x_U \in \MATHSET{R}^n$ , $\displaystyle A \in \MATHSET{R}^{m_1 \times n}$ , and $\displaystyle b_L,b_U \in \MATHSET{R}^{m_1}$ .

linear least squares (lls) problems defined as

${\begin{array}{ll}\min \limits _{x}&f(x)={\frac {1}{2}}||Cx-d||\\&\\s/t&{\begin{array}{lcccl}x_{L}&\leq &x&\leq &x_{U},\\b_{L}&\leq &Ax&\leq &b_{U}\\\end{array}}\end{array}}$ where $\displaystyle x, x_L, x_U \in \MATHSET{R}^n$ , $\displaystyle d \in \MATHSET{R}^M$ , $\displaystyle C \in \MATHSET{R}^{M \times n}$ , $\displaystyle A \in \MATHSET{R}^{m_1 \times n}$ , $\displaystyle b_L,b_U \in \MATHSET{R}^{m_1}$ .

and constrained nonlinear least squares problems defined as

${\begin{array}{ll}\min \limits _{x}&f(x)={\frac {1}{2}}r(x)^{T}r(x)\\&\\s/t&{\begin{array}{lcccl}x_{L}&\leq &x&\leq &x_{U},\\b_{L}&\leq &Ax&\leq &b_{U}\\c_{L}&\leq &c(x)&\leq &c_{U}\\\end{array}}\end{array}}$ where $\displaystyle x, x_L, x_U \in \MATHSET{R}^n$ , $\displaystyle r(x) \in \MATHSET{R}^M$ , $\displaystyle A \in \MATHSET{R}^{m_1 \times n}$ , $\displaystyle b_L,b_U \in \MATHSET{R}^{m_1}$ and $\displaystyle c_L,c(x),c_U \in \MATHSET{R}^{m_2}$ .

<figtable id="tab:solSolvers">

Function Description
The SOL optimization solvers in TOMLAB /SOL.
MINOS 5.5 Sparse linear and nonlinear programming with linear and nonlinear constraints.
LP-MINOS A special version of the MINOS 5.5 MEX-file interface for sparse linear programming.
QP-MINOS A special version of the MINOS 5.5 MEX-file interface for sparse quadratic programming.
LPOPT 1.0-10 Dense linear programming.
QPOPT 1.0-10 Non-convex quadratic programming with dense constraint matrix and sparse or dense quadratic matrix.
LSSOL 1.05-4 Dense linear and quadratic programs (convex), and constrained linear least squares problems.
NLSSOL 5.0-2 Constrained nonlinear least squares. NLSSOL is based on NPSOL. No reference except for general NPSOL reference.
NPSOL 5.02 Dense linear and nonlinear programming with linear and nonlinear constraints.
SNOPT 7.1-1 Large, sparse linear and nonlinear programming with linear and nonlinear constraints.
SQOPT 7.1-1 Sparse convex quadratic programming.

</figtable>