SNOPT, for Sparse Nonlinear OPTimizer, is a software package for solving large-scale nonlinear optimization problems written by Philip Gill, Walter Murray and Michael Saunders. SNOPT is mainly written in Fortran, but interfaces to C, C++, Python and MATLAB are available.
It employs a sparse sequential quadratic programming (SQP) algorithm with limited-memory quasi-Newton approximations to the Hessian of Lagrangian. It is especially effective for nonlinear problems with functions and gradients that are expensive to evaluate. The functions should be smooth but need not be convex.
SNOPT is used in several trajectory optimization software packages, including AeroSpace Trajectory Optimization and Software (ASTOS), General Mission Analysis Tool, and Optimal Trajectories by Implicit Simulation (OTIS).
- P.E. Gill; W. Murray; M.A. Saunders (2005). "SNOPT: An SQP algorithm for large-scale constrained optimization" (PDF).