ensmallen
ensmallen
flexible C++ library for efficient numerical optimization
  • ensmallen is a high-quality C++ library for non-linear numerical optimization
  • provides many types of optimizers that can be used for virtually any numerical optimization task
  • examples of included optimizers: L-BFGS, SGD, CMAES and Simulated Annealing
  • allows optional callbacks to customize the optimization process

requirements

  • recent C++ compiler with C++11 support
  • Armadillo (>= 9.800)
  • OpenBLAS or Intel MKL or LAPACK (see Armadillo site for details)

license

  • ensmallen is open source software, licensed under the permissive 3-clause BSD license.

download

example optimization

  • see example.cpp for example usage of the L-BFGS optimizer in a linear regression setting

citation

see also