The NEOS Server offers SNOPT for the solution of nonlinearly constrained optimization problems. Problems can be submitted to SNOPT on the NEOS server in AMPL or GAMS format.
SNOPT is a solver for nonlinearly constrained optimization problems; it is suitable for large-scale linear and quadratic programming, for linearly constrained optimization and for general nonlinear programs. SNOPT finds solutions that are locally optimal. SNOPT implements a sequential quadratic programming (SQP) algorithm. Search directions are obtained from quadratic programming subproblems that minimize a quadratic model of the Lagrangian function subject to linearized constraints. An augmented Lagrangian merit function is reduced along each search direction to ensure convergence from any starting point. SNOPT is especially effective for nonlinear programs whose functions and gradients are expensive to evaluate. The functions should be smooth but do not need to be convex.
SNOPT was developed by Philip E. Gill, Walter Murray, and Michael Saunders. Additional information on SNOPT can be found in the User's Guide for SNOPT Version 7. References
The user must submit a model in GAMS format to solve an optimization problem. For security purposes, the model submitted must adhere to the following conventions:
If you are unfamiliar with GAMS, the GAMS Documentation includes a GAMS Tutorial and User's Guide. Examples of models in GAMS format can be found in the GAMS model library.
By default, the NEOS Server limits the amount of output generated in the listing file by turning off the symbol and unique element list, symbol cross references, and restricting the rows and columns listed to zero. This behavior can be changed by specifying the appropriate options in the model file. See the documentation on GAMS output for further information.
You may optionally submit an options file if you wish to override the default parameter settings for the solver. Currently, the NEOS Server can only use optfile=1 with GAMS input. Therefore, any model that specifies a different options file will not work as intended.
<modelname>.optfile = 1 ;
optfile = 1