This repository contains a C++20 port of the Limited-memory BFGS implementation from LBFGS-Lite, with a number of usability improvements:
- error handling using the outcome library
- a simplified API similar to the Eigen Levenberg-Marquardt module
- the ability to specify the scalar type (e.g.
float
ordouble
)
- no step bounds
- no progress report
- no cancellation
These will be addressed in the future.
The user must define a functor which computes the function and its gradient. Please have a look at https://github.com/foolnotion/lbfgs/blob/main/test/source/lbfgs_test.cpp