#include <armijo.h>
Inheritance diagram for ArmijoLineSearch::
Public Methods | |
ArmijoLineSearch (double eps=1e-8, double alpha=0.5, double beta=0.65) | |
Default constructor. | |
virtual | ~ArmijoLineSearch () |
Destructor. | |
virtual value_type | operator() (OptimizationProblem< V > &P, value_type t_ini, value_type q0, value_type qp0) |
Perform line search. | |
Protected Attributes | |
double | alpha_ |
Armijo paramters. | |
double | beta_ |
Armijo paramters. |
Let alpha and beta be 2 scalars in [0,1]. Let x be the current value of the unknow, d the search direction and t the step. Let f be the function to minimize. The line search stop when t verifies f(x+t*d) - f(x) <= -alpha*t*f'(x+t*d) and f(x+t/beta*d) - f(x) > -alpha*t*f'(x+t*d)/beta
(see Polak. Algorithms and consitent approximations, Optimization, volume 124 of Apllied Mathematical Sciences. Springer-Verlag, N-Y, 1997)
Definition at line 32 of file armijo.h.