NPSOL

Minimization of smooth nonlinear functions


NPSOL is a Fortran package designed to solve the nonlinear programming problem: the minimization of a smooth nonlinear function subject to a set of constraints on the variables. The problem is assumed to be stated in the following form:

where f(x) is a smooth nonlinear function, A is an mL matrix, and c(x) is an mN-vector of smooth nonlinear constraint functions.

The user must supply an initial estimate of the solution of the problem, subroutines that evaluate f(x), c(x), and as many first partial derivatives as possible. Unspecified derivatives are approximated by finite differences.

If the problem is large and sparse, the MINOS package should be used, since NPSOL treats all matrices as dense.

NPSOL is a sequential quadratic programming method incorporating an augmented Lagrangian merit function and a BFGS quasi-Newton approximation to the Hessian of the Lagrangian. If there are no nonlinear constraints, the gradients of the bound and linear constraints are never recomputed, and NPSOL will function as a specialized algorithm for linearly constrained optimization.

It can be arranged that the problem functions are evaluated only at points that are feasible with respect to the bounds and linear constraints.

NPSOL uses subroutines from the LSSOL constrained linear least squares package, which is distributed together with NPSOL.

Availability

NPSOL contains approximately 16,500 lines of Fortran, of which about 75% are comments. The source code and example program for NPSOL are distributed on a floppy disk. The code is also available via Internet using ftp. A MATLAB interface for NPSOL is also available.

NPSOL includes calls to both Level-1 (vector) and Level-2 (matrix-vector) Basic Linear Algebra Subroutines (BLAS). They may be replaced by versions of the BLAS routines that have been tuned to a particular machine.

NPSOL is written in ANSI Fortran 77 and should run without alteration on any machine with a Fortran 77 compiler. The code was developed on a DECstation 3100 using the MIPS f77 compiler and has been installed on most types of PC, workstation, and mainframe.

NPSOL is distributed on floppy disk, jointly with LSSOL. Fortran 77 source code is provided, along with test problems and makefiles for Unix, VMS and DOS systems.

One-time license fees for individual use for the NPSOL+LSSOL combination are $350 (academic or non-profit), $4000 (commercial, in-house). Department, Site and World licenses are also available.

Need more info?

Visit the homepage for Stanford Systems Optimization Laboratory Software, or contact:

Stanford Business Software, Inc.
2672 Bayshore Parkway, Suite 304
Mountain View, CA 94043
Phone: (415) 962-8719
Fax: (415) 962-1869

Reference:

P.E. Gill, W. Murray, M.A. Saunders, and M.H. Wright, Some theoretical properties of an augmented Lagrangian merit function, in Advances in Optimization and Parallel Computing, P.M. Pardalos, ed., North Holland, 1992, pp. 101--128.

P.E. Gill, W. Murray, M.A. Saunders, and M.H. Wright, User's Guide for NPSOL (Version 4.0): A Fortran package for nonlinear programming, SOL 86-2, 1986.

NAG Fortran Library Manual, Mark 15, NAG Ltd., 1991.


[ Optimization Software Guide | OTC Home Page | NEOS Server | NEOS Guide ]