|
LBFGS++
|
#include <LineSearchBracketing.h>
Static Public Member Functions | |
| template<typename Foo > | |
| static void | LineSearch (Foo &f, const LBFGSParam< Scalar > ¶m, const Vector &xp, const Vector &drt, const Scalar &step_max, Scalar &step, Scalar &fx, Vector &grad, Scalar &dg, Vector &x) |
The bracketing line search algorithm for L-BFGS. Mainly for internal use.
Definition at line 17 of file LineSearchBracketing.h.
|
inlinestatic |
Line search by bracketing. Similar to the backtracking line search except that it actively maintains an upper and lower bound of the current search range.
| f | A function object such that f(x, grad) returns the objective function value at x, and overwrites grad with the gradient. |
| param | Parameters for the L-BFGS algorithm. |
| xp | The current point. |
| drt | The current moving direction. |
| step_max | The upper bound for the step size that makes x feasible. Can be ignored for the L-BFGS solver. |
| step | In: The initial step length. Out: The calculated step length. |
| fx | In: The objective function value at the current point. Out: The function value at the new point. |
| grad | In: The current gradient vector. Out: The gradient at the new point. |
| dg | In: The inner product between drt and grad. Out: The inner product between drt and the new gradient. |
| x | Out: The new point moved to. |
Definition at line 47 of file LineSearchBracketing.h.