#include <LBFGS.h>
Public Member Functions | |
LBFGSSolver (const LBFGSParam< Scalar > ¶m) | |
template<typename Foo > | |
int | minimize (Foo &f, Vector &x, Scalar &fx) |
Private Types | |
typedef Eigen::Map< Vector > | MapVec |
typedef Eigen::Matrix< Scalar, Eigen::Dynamic, Eigen::Dynamic > | Matrix |
typedef Eigen::Matrix< Scalar, Eigen::Dynamic, 1 > | Vector |
Private Member Functions | |
void | reset (int n) |
Private Attributes | |
Vector | m_alpha |
Vector | m_drt |
Vector | m_fx |
Vector | m_grad |
Vector | m_gradp |
const LBFGSParam< Scalar > & | m_param |
Matrix | m_s |
Vector | m_xp |
Matrix | m_y |
Vector | m_ys |
LBFGS solver for unconstrained numerical optimization
|
private |
|
private |
|
private |
|
inline |
Constructor for LBFGS solver.
param | An object of LBFGSParam to store parameters for the algorithm |
|
inline |
Minimizing a multivariate function using LBFGS algorithm. Exceptions will be thrown if error occurs.
f | A function object such that f(x, grad) returns the objective function value at x , and overwrites grad with the gradient. |
x | In: An initial guess of the optimal point. Out: The best point found. |
fx | Out: The objective function value at x . |
|
inlineprivate |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |