ArmijoLineSearch Class Reference

#include <ql/math/optimization/armijo.hpp>

Inheritance diagram for ArmijoLineSearch:

Inheritance graph
[legend]
List of all members.

Detailed Description

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)


Public Member Functions

 ArmijoLineSearch (Real eps=1e-8, Real alpha=0.05, Real beta=0.65)
 Default constructor.
Real operator() (Problem &P, EndCriteria::Type &ecType, const EndCriteria &, const Real t_ini)
 Perform line search.