Skip to content
A header-only C++ library for mathematical optimization --
Branch: master
Clone or download
zoq Merge pull request #106 from greatsharma/codeCorrection
Correct code in momentum_sgd_test.cpp.
Latest commit 4e848ad Apr 13, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github/ISSUE_TEMPLATE Add issue templates. Mar 10, 2019
CMake Flesh out CMake configuration. It installs the headers now. Oct 5, 2018
doc fix internal links for differentiable separable functions Mar 14, 2019
include Update and release version 1.14.2. Mar 14, 2019
tests correct code Apr 11, 2019
CMakeLists.txt Enable ParallelSGD and autodetect OpenMP. Oct 19, 2018 Build and run the tests directly in the build directory. Oct 19, 2018
COPYRIGHT.txt Update version for release. Feb 20, 2019 Update history with latest changes. Mar 14, 2019
UPDATING.txt Clarify versioning policy in the root directory. Oct 18, 2018

ensmallen is a C++ header-only library for mathematical optimization.

Documentation and downloads:

ensmallen provides a simple set of abstractions for writing an objective function to optimize. It also provides a large set of standard and cutting-edge optimizers that can be used for virtually any mathematical optimization task. These include full-batch gradient descent techniques, small-batch techniques, gradient-free optimizers, and constrained optimization.


  • C++ compiler with C++11 support
  • Armadillo:
  • OpenBLAS or Intel MKL or LAPACK (see Armadillo site for details)


Unless stated otherwise, the source code for ensmallen is licensed under the 3-clause BSD license (the "License"). A copy of the License is included in the "LICENSE.txt" file. You may also obtain a copy of the License at


Please cite the following paper if you use ensmallen in your research and/or software. Citations are useful for the continued development and maintenance of the library.

Developers and Contributors

  • Ryan Curtin
  • Dongryeol Lee
  • Marcus Edel
  • Sumedh Ghaisas
  • Siddharth Agrawal
  • Stephen Tu
  • Shikhar Bhardwaj
  • Vivek Pal
  • Sourabh Varshney
  • Chenzhe Diao
  • Abhinav Moudgil
  • Konstantin Sidorov
  • Kirill Mishchenko
  • Kartik Nighania
  • Haritha Nair
  • Moksh Jain
  • Abhishek Laddha
  • Arun Reddy
  • Nishant Mehta
  • Trironk Kiatkungwanglai
  • Vasanth Kalingeri
  • Zhihao Lou
  • Conrad Sanderson
  • Dan Timson
  • N Rajiv Vaidyanathan
You can’t perform that action at this time.