LBFGS++
Loading...
Searching...
No Matches
LBFGSpp::LineSearchBacktracking< Scalar > Class Template Reference

#include <LineSearchBacktracking.h>

Static Public Member Functions

template<typename Foo >
static void LineSearch (Foo &f, const LBFGSParam< Scalar > &param, const Vector &xp, const Vector &drt, const Scalar &step_max, Scalar &step, Scalar &fx, Vector &grad, Scalar &dg, Vector &x)
 

Detailed Description

template<typename Scalar>
class LBFGSpp::LineSearchBacktracking< Scalar >

The backtracking line search algorithm for L-BFGS. Mainly for internal use.

Definition at line 16 of file LineSearchBacktracking.h.

Member Function Documentation

◆ LineSearch()

template<typename Scalar >
template<typename Foo >
static void LBFGSpp::LineSearchBacktracking< Scalar >::LineSearch ( Foo &  f,
const LBFGSParam< Scalar > &  param,
const Vector &  xp,
const Vector &  drt,
const Scalar &  step_max,
Scalar &  step,
Scalar &  fx,
Vector &  grad,
Scalar &  dg,
Vector &  x 
)
inlinestatic

Line search by backtracking.

Parameters
fA function object such that f(x, grad) returns the objective function value at x, and overwrites grad with the gradient.
paramParameters for the L-BFGS algorithm.
xpThe current point.
drtThe current moving direction.
step_maxThe upper bound for the step size that makes x feasible. Can be ignored for the L-BFGS solver.
stepIn: The initial step length. Out: The calculated step length.
fxIn: The objective function value at the current point. Out: The function value at the new point.
gradIn: The current gradient vector. Out: The gradient at the new point.
dgIn: The inner product between drt and grad. Out: The inner product between drt and the new gradient.
xOut: The new point moved to.

Definition at line 44 of file LineSearchBacktracking.h.


The documentation for this class was generated from the following file: