SNOPT (for 'Sparse Nonlinear OPTimizer') is a software package for solving large-scale optimization problems written by Philip Gill, Walter Murray and Michael Saunders.
It is especially effective for nonlinear problems whose functions and gradients are expensive to evaluate. The functions should be smooth but need not be convex.