Optimization Methods

Optimization methods are defined as subtypes AbstractOptBuffer type. The structs holding the data required for core iteration logic should subtype OptBuffer <: AbstractOptBuffer. Stopping criteria, logging, step limitations etc. are implemented as subtypes of Wrapper <: AbstractOptBuffer.

Core Optimization Methods

Downhill.FixedRateDescent — Type
FixedRateDescent

Descent method which minimizes the objective function in the direction of antigradient at each step.

source
Downhill.MomentumDescent — Type
MomentumDescent

Descent method which minimizes the objective function in the direction of antigradient at each step.

source
Downhill.NesterovMomentum — Type
NesterovMomentum

Descent method which minimizes the objective function in the direction of antigradient at each step.

source
Downhill.SteepestDescent — Type
SteepestDescent

Descent method which minimizes the objective function in the direction of antigradient at each step.

source
Downhill.HyperGradDescent — Type
HyperGradDescent

Descent method which minimizes the objective function in the direction of antigradient at each step.

source
Downhill.CGDescent — Type
CGDescent

Conjugate gradient method (Hager-Zhang version [W.Hager, H.Zhang // SIAM J. Optim (2006) Vol. 16, pp. 170-192])

source