The goal of the MINPACK-2 project is to produce optimization algorithms and software for high-performance computers. The software includes subroutines for the solution of systems of nonlinear equations, nonlinear least squares problems, and minimization problems.
The initial software development work concentrated on the software for the solution of medium-scale problems on vector and shared-memory architectures. A Levenberg-Marquardt method for nonlinear least squares and a trust region Newton method for minimization problems are available. Current software development work centers on large-scale problems. A variable-storage variable metric method and a trust region Newton method are currently available. Future work will focus on software for distributed-memory architectures, in particular, the SP1.
The Fortran 77 codes use a reverse communication interface for flexibility and ease of use. The codes are accompanied by auxiliary subroutines. For example, subroutines for computing the covariance matrix in least squares problem, for estimating the noise in the function, for estimating the difference parameter, and for estimating sparse Jacobian and Hessian matrices. Documentation is under development.
As part of the MINPACK-2 project, we have developed a collection of significant optimization problems to serve as test problems for the package. The problems in this collection are representative of interesting optimization problems that arise in applications, for example, fluid dynamics, medicine, elasticity, combustion, molecular design, nondestructive testing, chemical kinetics, lubrication, optimal design, and superconductivity. Software is provided to evaluate the function and Jacobian matrices for systems of nonlinear equations and nonlinear least squares, and functions and gradients for minimization problems. We have also developed software to define the sparsity pattern of all the large-scale problems, as well as Jacobian-vector products for systems of nonlinear equations and Hessian-vector products for minimization problems. The MATLAB sockets of Barry Smith provide a graphical interface.
The BLAS and LAPACK routines have been used wherever possible to enhance performance on a variety of architectures.
MINPACK-2 software can be obtained by anonymous ftp from info.mcs.anl.gov. The README file in pub/MINPACK-2 contains further details.
For the MINPACK test problem collection, see "The MINPACK-2 Test Problem Collection (Preliminary Version)" and "User Guide for the MINPACK-2 Test Problem Collection."
For reports about related research in large-scale optimization, see "Evaluation of large-scale optimization problems on vector and parallel architectures," "Exposing Constraints," "Generalizations of the trust region problem," and "Line search algorithms with guaranteed sufficient decrease."
For an interesting discussion of the use of automatic differentiation and optimization techniques, see "Computing large sparse Jacobian matrices using automatic differentiation."
Mathematics and Computer Science Division
Argonne National Laboratory
Argonne, Illinois 60439
more@mcs.anl.gov