BFGS
update for appromation of the Hessian matrix
@cf. @broyden70; @fletcher70; @goldfarb70; @shanno70sqp
in its damped version proposed by powell78;textualsqp.
The approximation is based on first-order information
(parameter values & gradients) only.
bfgs_update(
hessian,
old_y,
new_y,
old_gradient,
new_gradient,
constraint_adjustment = TRUE
)
Dense matrix
of size \(N \times N\):
Current approximation of the Hessian matrix, which is
updated by reference.
Needs to be symmetric positive definite.
A common starting point for the BFGS
algorithm is the identity matrix.
Numeric vectors
of size N
:
parameters old_y,new_y and
corresponding gradients old_gradient,new_gradient
from previous and current iteration.
Boolean: Whether to enforce positive definiteness (mainly for constrained optimization).
Nothing. Argument 'hessian' is updated by reference.