NLPQLB: A Fortran
Implementation of an SQP Algorithm with Active Set Strategy for Solving
Optimization Problems with a Very Large Number of Nonlinear Constraints -
User's Guide, Version 2.0
K. Schittkowski, Report, Department of Computer Science, University of Bayreuth (2008)
The Fortran subroutine NLPQLB solves smooth nonlinear programming problems with a large number of constraints, but a moderate number of variables. The underlying algorithm applies an active set method proceeding from a given bound m_w for the maximum number of expected active constraints. A quadratic programming subproblem is generated with m_w linear constraints, the so-called working set, which are internally exchanged from one iterate to the next. Only for active constraints, i.e., a certain subset of the working set, new gradient values must be computed. The line search takes the active constraints into account. In case of computational errors as for example caused by inaccurate function or gradient evaluations, a non-monotone line search is activated. Numerical results are included for some academic test problems, which show that nonlinear programs with up to 200,000,000 nonlinear constraints can be efficiently solved within a few minutes on a standard PC. The usage of the code is documented and illustrated by an example.
To download the report, click here: NLPQLB.pdf