|
LBFGS++
|
#include <LBFGSB.h>
Public Member Functions | |
| LBFGSBSolver (const LBFGSBParam< Scalar > ¶m) | |
| template<typename Foo > | |
| int | minimize (Foo &f, Vector &x, Scalar &fx, const Vector &lb, const Vector &ub) |
| const Vector & | final_grad () const |
| Scalar | final_grad_norm () const |
L-BFGS-B solver for box-constrained numerical optimization
|
inline |
Constructor for the L-BFGS-B solver.
| param | An object of LBFGSParam to store parameters for the algorithm |
|
inline |
Minimizing a multivariate function subject to box constraints, using the L-BFGS-B 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. |
| lb | Lower bounds for x. |
| ub | Upper bounds for x. |
|
inline |
Returning the gradient vector on the last iterate. Typically used to debug and test convergence. Should only be called after the minimize() function.
|
inline |
Returning the infinity norm of the final projected gradient. The projected gradient is defined as \(P(x-g,l,u)-x\), where \(P(v,l,u)\) stands for the projection of a vector \(v\) onto the box specified by the lower bound vector \(l\) and upper bound vector \(u\).