Difference between revisions of "Lbfgs.m"
m (Normalise preformatted blank lines in function documentation blocks) |
m (Spot-edit Spinach function page first-line NOTOC and template fields) |
||
| Line 1: | Line 1: | ||
| − | {{DISPLAYTITLE:lbfgs.m}} | + | {{DISPLAYTITLE:lbfgs.m}} __NOTOC__ |
Calculates an approximation to the Newton-Raphson search direction using past gradients to build a serviceable substitute to a Hessian. The Hessian matrix is never explicitly formed or inverted. This function is the implementation from section 4 of http://dx.doi.org/10.1090/S0025-5718-1980-0572855-7 | Calculates an approximation to the Newton-Raphson search direction using past gradients to build a serviceable substitute to a Hessian. The Hessian matrix is never explicitly formed or inverted. This function is the implementation from section 4 of http://dx.doi.org/10.1090/S0025-5718-1980-0572855-7 | ||
Revision as of 18:28, 5 June 2026
Calculates an approximation to the Newton-Raphson search direction using past gradients to build a serviceable substitute to a Hessian. The Hessian matrix is never explicitly formed or inverted. This function is the implementation from section 4 of http://dx.doi.org/10.1090/S0025-5718-1980-0572855-7
Syntax
direction=lbfgs(dx_hist,dg_hist,g)
Arguments
dx_hist - history of x increments, a stack
of column vectors, from the latest
to the earliest
dg_hist - history of gradient increments,
a stack of column vectors, from
the latest to the earliest
g - current gradient
Output
direction - LBFGS approximation to the
search direction
Notes
The L-BFGS algorithm is the default of Fmaxnewton.m, and is a good mix of computational efficiency and fast convergence.
See also
fmaxnewton.m, hessreg.m, bracketing.m, sectioning.m
Version 2.2, authors: Ilya Kuprov, David Goodwin