Options
All
  • Public
  • Public/Protected
  • All
Menu

Armijo line search.

Let $ \alpha $ and $ \beta $ be 2 scalars in $ [0,1] $. Let $ x $ be the current value of the unknown, $ d $ the search direction and $ t $ the step. Let $ f $ be the function to minimize. The line search stops when $ t $ verifies $$ f(x + t \cdot d) - f(x) \leq -\alpha t f'(x+t \cdot d) $$ and $$ f(x+\frac{t}{\beta} \cdot d) - f(x) > -\frac{\alpha}{\beta} t f'(x+t \cdot d) $$

(see Polak, Algorithms and consistent approximations, Optimization, volume 124 of Applied Mathematical Sciences, Springer-Verlag, NY, 1997)

Hierarchy

Implements

Index

Constructors

constructor

Properties

Private _alpha

_alpha: Real

Private _beta

_beta: Real

Protected _gradient

_gradient: Real[]

Protected _qpt

_qpt: Real

Protected _qt

_qt: Real

Protected _searchDirection

_searchDirection: Real[]

Protected _succeed

_succeed: boolean

Protected _xtd

_xtd: Real[]

Accessors

searchDirection

  • get searchDirection(): Real[]
  • set searchDirection(v: Real[]): void
  • current value of the search direction

    Returns Real[]

  • current value of the search direction

    Parameters

    Returns void

Methods

f

lastFunctionValue

  • lastFunctionValue(): Real

lastGradient

  • lastGradient(): Real[]

lastGradientNorm2

  • lastGradientNorm2(): Real

lastX

  • return last x value

    Returns Real[]

succeed

  • succeed(): boolean
  • Returns boolean

update