skip to main content

Algorithm 778: L-BFGS-B: Fortran subroutines for large-scale bound-constrained optimization

Published:01 December 1997Publication History
Skip Abstract Section

Abstract

L-BFGS-B is a limited-memory algorithm for solving large nonlinear optimization problems subject to simple bounds on the variables. It is intended for problems in which information on the Hessian matrix is difficult to obtain, or for large dense problems. L-BFGS-B can also be used for unconstrained problems and in this case performs similarly to its predessor, algorithm L-BFGS (Harwell routine VA15). The algorithm is implemented in Fortran 77.

Skip Supplemental Material Section

Supplemental Material

References

  1. BERTSEKAS, D.P. 1982. Projected Newton methods for optimization problems with simple constraints. SIAM J. Contr. Optim. 20, 221-246.]]Google ScholarGoogle ScholarCross RefCross Ref
  2. BONGARTZ, I., CONN, A. R., GOULD, N., AND TOINT, PH. L. 1995. CUTE: Constrained and unconstrained testing environment. ACM Trans. Math. Softw. 21, 1 (Mar.), 123-160.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. BUCKLEY, A. 1989. Remark on Algorithm 630. ACM Trans. Math. Softw. 15, 3 (Sept.), 262-274.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. BUCKLEY, A. AND LENIR, A. 1985. ALGORITHM 630: BBVSCG--a variable-storage algorithm for function minimization. ACM Trans. Math. Softw. 11, 2 (June), 103-119.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. BYRD, R. H., Lu, P., NOCEDAL, J., AND ZHU, C. 1995. A limited memory algorithm for bound constrained optimization. SIAM J. Sci. Comput. 16, 5 (Sept.), 1190-1208.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. BYRD, R. g., NOCEDAL, J., AND SCHNABEL, R. B. 1994. Representations of quasi-Newton matrices and their use in limited memory methods. Math. Program. 63, 2 (Jan. 31), 129-156.]]Google ScholarGoogle ScholarCross RefCross Ref
  7. CONN, A. R., GOULD, N. I. M., AND TOINT, PH. L. 1988. Testing a class of methods for solving minimization problems with simple bounds on the variables. Math. Comput. 50, 182, 399-430.]]Google ScholarGoogle ScholarCross RefCross Ref
  8. CONN, A. R., GOULD, N. I. M., AND TOINT, PH. L. 1992. LANCELOT: A FORTRAN Package for Large-Scale Nonlinear Optimization (Release A). Springer Series in Computational Mathematics, vol. 17. Springer-Verlag, New York, NY.]] Google ScholarGoogle ScholarCross RefCross Ref
  9. DENNIS, J. E. AND SCHNABEL, R.B. 1983. Numerical Methods for Unconstrained Optimization and Nonlinear Equations. Prentice-Hall, Inc., Upper Saddle River, NJ.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. GILBERT, J. C. AND LEMARI~CHAL, C. 1989. Some numerical experiments with variablestorage quasi-Newton algorithms. Math. Program. 45, 3 (Dec.), 407-435.]]Google ScholarGoogle ScholarCross RefCross Ref
  11. GILL, P. E., MURRAY, W., AND WRIGHT, M.H. 1981. Practical Optimization. Academic Press Ltd., London, UK.]]Google ScholarGoogle Scholar
  12. LEVITIN, E. S. AND POLYAK, B.T. 1966. Constrained minimization problems. USSR Comput. Math. Math. Phys. 6, 1-50.]]Google ScholarGoogle ScholarCross RefCross Ref
  13. LIU, D. C. AND NOCEDAL, J. 1989. On the limited memory BFGS method for large scale optimization. Math. Program. 45, 3 (Dec.), 503-528.]]Google ScholarGoogle ScholarCross RefCross Ref
  14. MOR}~, J. J. AND THUENTE, D.J. 1994. Line search algorithms with guaranteed sufficient decrease. ACM Trans. Math. Softw. 20, 3 (Sept.), 286-307.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. MOR}~, J. J. AND TORALDO, G. 1989. Algorithms for bound constrained quadratic programming problems. Numer. Math. 55, 377-400.]]Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. SIEGEL, D. 1992. Implementing and modifying Broyden class updates for large scale optimization. Rep. DAMPT 1992/NA12. Cambridge University, Cambridge, MA.]]Google ScholarGoogle Scholar
  17. ZHU, C., BYRD, R. H., Lu, P., AND NOCEDAL, J. 1995. L-BFGS-B: Fortran subroutines for large-scale bound constrained optimization. EECS Tech. Rep. NAM12. Northwestern University, Evanston, IL.]]Google ScholarGoogle Scholar

Index Terms

  1. Algorithm 778: L-BFGS-B: Fortran subroutines for large-scale bound-constrained optimization

        Recommendations

        Reviews

        Michael Minkoff

        The authors provide an excellent algorithmic description of the software known as L-BFGS-B, an extension of a well-known limited-memory BFGS algorithm and software (due to Liu and Nocedal), L-BFGS. Bound constraints are often not treated thoroughly, yet the effective handling of simple bounds requires addressing most of the issues that arise in general linear constraints. The treatment of constrained optimization, even in the bound constrained case, provides an important practical tool for the application of optimization techniques to a wide range of application areas, such as simulation and optimization. Thus, this software provides a much-needed quality tool. Additionally, the authors provide theoretical, implementation, and benchmarking treatments of the software development process. After the problem statement, a summary of related algorithms clarifies the relative position of the limited-memory BFGS within the literature. The paper also relates the unconstrained algorithm to the simple bound version of the algorithm. The paper presents three drivers for the software, which appear to be well designed. A thorough presentation of termination criteria follows. Implementation aspects include details regarding the bound algorithm (its predecessor unconstrained algorithm). The use of a line search is then presented. In order to obtain high accuracy in nonlinear optimization, attention in adapting algorithms to treat optimization techniques in the presence of rounding errors is necessary. The authors address this issue and summarize implementation aspects. The implementation section also includes a treatment of machine constants and scale dependency, including limitations on scale dependency. The paper concludes with numerical results. The testing presented is quite thorough (something I do not always see). A comparison with the LANCELOT package is presented, and the results are analyzed. The paper concludes with issues for future study.

        Access critical reviews of Computing literature here

        Become a reviewer for Computing Reviews.

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in

        Full Access

        • Published in

          cover image ACM Transactions on Mathematical Software
          ACM Transactions on Mathematical Software  Volume 23, Issue 4
          Dec. 1997
          137 pages
          ISSN:0098-3500
          EISSN:1557-7295
          DOI:10.1145/279232
          • Editor:
          • Ronald Boisuert
          Issue’s Table of Contents

          Copyright © 1997 ACM

          Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

          Publisher

          Association for Computing Machinery

          New York, NY, United States

          Publication History

          • Published: 1 December 1997
          Published in toms Volume 23, Issue 4

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • article

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader