# 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 & A x & \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 F x + c^T x \\ & \\ s/t & \begin{array}{lcccl} x_{L} & \leq & x & \leq & x_{U}, \\ b_{L} & \leq & A x & \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 & A x & \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} || C x - d || \\ & \\ s/t & \begin{array}{lcccl} x_{L} & \leq & x & \leq & x_{U}, \\ b_{L} & \leq & A x & \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 & A x & \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.5Sparse linear and nonlinear programming with linear and nonlinear constraints.
LP-MINOSA special version of the MINOS 5.5 MEX-file interface for sparse linear programming.
QP-MINOSA special version of the MINOS 5.5 MEX-file interface for sparse quadratic programming.
LPOPT 1.0-10Dense linear programming.
QPOPT 1.0-10Non-convex quadratic programming with dense constraint matrix and sparse or dense quadratic matrix.
LSSOL 1.05-4Dense linear and quadratic programs (convex), and constrained linear least squares problems.
NLSSOL 5.0-2Constrained nonlinear least squares. NLSSOL is based on NPSOL. No reference except for general NPSOL reference.
NPSOL 5.02Dense linear and nonlinear programming with linear and nonlinear constraints.
SNOPT 7.1-1Large, sparse linear and nonlinear programming with linear and nonlinear constraints.