Algorithm 778: L-BFGS-B: Fortran Subroutines for Large-Scale Bound-Constrained Optimization

Ciyou Zhu*, Richard H. Byrd, Peihuang Lu, Jorge Nocedal

*Corresponding author for this work

Research output: Contribution to journalArticlepeer-review

2241 Scopus citations


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 predecessor, algorithm L-BFGS (Harwell routine VA15). The algorithm is implemented in Fortran 77.

Original languageEnglish (US)
Pages (from-to)550-560
Number of pages11
JournalACM Transactions on Mathematical Software
Issue number4
StatePublished - Dec 1997


  • Algorithms
  • D.3.2 [Programming Languages]: Language Classifications - Fortran 77
  • G.1.6 [Numerical Analysis]: Optimization - Gradient methods
  • G.4 [Mathematics of Computing]: Mathematical Software
  • Large-scale optimization
  • Limited-memory method

ASJC Scopus subject areas

  • Software
  • Applied Mathematics


Dive into the research topics of 'Algorithm 778: L-BFGS-B: Fortran Subroutines for Large-Scale Bound-Constrained Optimization'. Together they form a unique fingerprint.

Cite this