Quasi-Newton Hessian Update Methods
Four update formulas are available via HessianUpdateMethod, selected with the
Update keyword in the OPT section:
OPT
Update bfgs | psb | ms | bofill | sr1 | dfp | bfgs_powell | ts-bfgs
END
MSP (Mixed Symmetric Powell — default for minimisations)
Adaptively blends BFGS and Murtagh–Sargent updates via a mixing parameter where :
BFGS (Broyden–Fletcher–Goldfarb–Shanno)
The classic rank-2 update:
Preserves positive-definiteness when ; unsuitable for TS searches.
TS-BFGS (Transition-State BFGS — default for saddle-point searches)
Standard BFGS drives the Hessian positive-definite, which destroys the negative curvature direction needed for TS optimization. TS-BFGS replaces the curvature metric with (using the absolute-value Hessian , obtained by diagonalizing and flipping negative eigenvalues to their absolute values) so that the negative eigenvalue directions are maintained across steps.
The rank-2 single-step formula:
where is the IC-space displacement and is the gradient change.
Properties:
- The quasi-Newton secant condition is approximately satisfied
- Negative eigenvalues are preserved, not destroyed
- Reduces exactly to standard BFGS when is positive-definite
SR1 (Symmetric Rank-1)
SR1 can build indefinite Hessian approximations naturally (no positive-definite constraint). Can be unstable if is small, so a skip condition is applied.
DFP (Davidon–Fletcher–Powell)
DFP is the inverse-Hessian analogue of BFGS. It preserves positive-definiteness but can be slow to converge on ill-conditioned surfaces.
Bofill (Bofill Weighted Update — default for TS searches)
The Bofill update blends the Powell-Symmetric-Broyden (PSB) and Murtagh-Sargent (MS) updates with a weight that measures how well the secant condition is satisfied:
Properties:
- When : pure PSB (good for TS, preserves curvature information)
- When : pure MS (good for minima, rank-1 correction)
- Automatically adapts between PSB and MS based on the local surface curvature
PSB (Powell-Symmetric-Broyden)
PSB is a symmetric rank-2 update that does not preserve positive-definiteness. It is used as part of the Bofill update and is suitable for TS searches where the Hessian must remain indefinite.
MS (Murtagh-Sargent)
MS is a rank-1 update that can produce indefinite Hessians naturally. It is used as part of the Bofill update and is the simplest update that allows negative eigenvalues.
BFGS/Powell Mixed
if is_ts:
H_new = Bofill(H,s,y) # φ·PSB + (1-φ)·MS
else:
H_new = BFGS(H,s,y) # Standard BFGS
This method automatically selects BFGS for minima and Bofill for TS searches, providing a seamless transition between the two regimes.
Summary
| Method | Formula | Preserves PD | TS-Suitable | Default For |
|---|---|---|---|---|
| MSP | No | Yes | Minima | |
| BFGS | Yes | No | — | |
| TS-BFGS | Uses in metric | No | Yes | TS (Sella) |
| SR1 | No | Yes | — | |
| DFP | Yes | No | — | |
| Bofill | No | Yes | TS (Berny) | |
| PSB | No | Yes | — | |
| MS | No | Yes | — | |
| BFGS/Powell | BFGS or Bofill based on mode | Auto | Auto | — |