# SOL Solver Reference

The SOL solvers are a set of Fortran solvers that were developed by the Stanford Systems Optimization Laboratory (SOL). #Table: The SOL optimization solvers in TOMLAB /SOL. 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 $x,x_{L},x_{U}\in \mathbb {R} ^{n}$ , $f(x)\in \mathbb {R}$ , $A\in \mathbb {R} ^{m_{1}\times n}$ , $b_{L},b_{U}\in \mathbb {R} ^{m_{1}}$ and $c_{L},c(x),c_{U}\in \mathbb {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 $c,x,x_{L},x_{U}\in \mathbb {R} ^{n}$ , $F\in \mathbb {R} ^{n\times n}$ , $A\in \mathbb {R} ^{m_{1}\times n}$ , and $b_{L},b_{U}\in \mathbb {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 $c,x,x_{L},x_{U}\in \mathbb {R} ^{n}$ , $A\in \mathbb {R} ^{m_{1}\times n}$ , and $b_{L},b_{U}\in \mathbb {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 $x,x_{L},x_{U}\in \mathbb {R} ^{n}$ , $d\in \mathbb {R} ^{M}$ , $C\in \mathbb {R} ^{M\times n}$ , $A\in \mathbb {R} ^{m_{1}\times n}$ , $b_{L},b_{U}\in \mathbb {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 $x,x_{L},x_{U}\in \mathbb {R} ^{n}$ , $r(x)\in \mathbb {R} ^{M}$ , $A\in \mathbb {R} ^{m_{1}\times n}$ , $b_{L},b_{U}\in \mathbb {R} ^{m_{1}}$ and $c_{L},c(x),c_{U}\in \mathbb {R} ^{m_{2}}$ .

## Contents

#### Table: The SOL optimization solvers in TOMLAB /SOL.

Function Description
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.