SRDef syten::GradientOpt::linesearch | ( | Hp | h_hp, |
SRDef | lower, | ||
SRDef | upper, | ||
Index const | max_steps | ||
) |
Attempt at a bisecting line search.
Hp | Type of the function returning f(x-a*g) and f'(x-a*g) with respect to a |
h_hp | function object evaluating f(x-a*g) and f'(x-a*g) |
lower | lower end of the line search |
upper | upper end of the line search |
max_steps | maximal number of steps |
a
minimising f(x-a*g) if it is found in the range [lower,upper]
or NAN if the initial condition is not fulfilled, i.e. f'(x-a*g) is not negative at a=0 or zero if no good step size was found. References syten::abs(), and std::tie().
Referenced by gradient_descent_linesearch().