-
Fix numerical precision issues for small-gradient L-BFGS scaling factor computations (#392).
-
Ensure the tests are built with optimisation enabled (#394).
-
Clarify return values for different callback types (#383).
-
Fix return types of callbacks (#382).
-
Minor cleanup for printing optimization reports via
Report()
(#385).
-
Implementation of Active CMAES (#367).
-
LBFGS: avoid generation of NaNs, and add checks for finite values (#368).
-
Fix CNE test tolerances (#360).
-
Rename
SCD
optimizer, toCD
(#379).
- Avoid deprecation warnings in Armadillo 11.2+ (#347).
-
Added DemonSGD and DemonAdam optimizers (#211).
-
Fix bug with Adam-like optimizers not resetting when
resetPolicy
istrue
. (#340). -
Add Yogi optimizer (#232).
-
Add AdaBelief optimizer (#233).
-
Add AdaSqrt optimizer (#234).
-
Bump check for minimum supported version of Armadillo (#342).
-
Accelerate SGD test time (#330).
-
Fix potential infinite loop in CMAES (#331).
-
Fix SCD partial gradient test (#332).
-
Add gradient value clipping and gradient norm scaling callback (#315).
-
Remove superfluous CMake option to build the tests (#313).
-
Bump minimum Armadillo version to 9.800 (#318).
-
Update Catch2 to 2.13.7 (#322).
-
Remove redundant template argument for C++20 compatibility (#324).
-
Fix MOEAD test stability (#327).
-
CheckArbitraryFunctionTypeAPI extended for MOO support (#283).
-
Add Indicators for Multiobjective optimizers (#285).
-
Make Callback flexible for MultiObjective Optimizers (#289).
-
Add ZDT Test Suite (#273).
-
Add MOEA-D/DE Optimizer (#269).
-
Introduce Policy Methods for MOEA/D-DE (#293).
-
Add Das-Dennis weight initialization method (#295).
-
Add Dirichlet Weight Initialization (#296).
-
Improved installation and compilation instructions (#300).
-
Disable building the tests by default for faster installation (#303).
-
Modify matrix initialisation to take into account default element zeroing in Armadillo 10.5 (#305).
-
Fix CNE test trials (#267).
-
Update Catch2 to 2.13.4 (#268).
-
Add clarifying comments in problems/ implementations (#276).
-
Fix test compilation issue when
ENS_USE_OPENMP
is set (#255). -
Fix CNE initial population generation to use normal distribution (#258).
-
Fix compilation warnings (#259).
-
Remove
AdamSchafferFunctionN2Test
test from Adam test suite to prevent spurious issue on some aarch64 (#265).
-
Expand README with example installation and add simple example program showing usage of the L-BFGS optimizer (#248).
-
Refactor tests to increase stability and reduce random errors (#249).
- Fix include order to ensure traits is loaded before reports (#239).
-
Make a few tests more robust (#228).
-
Add release date to version information. (#226)
-
Fix typo in release script (#236).
- Fix implementation of fonesca fleming problem function f1 and f2 type usage and negative signs. (#223)
-
Fix release script (remove hardcoded information, trim leading whitespaces introduced by
wc -l
in MacOS) (#216, #220). -
Adjust tolerance for AugLagrangian convergence based on element type (#217).
-
Add NSGA2 optimizer for multi-objective functions (#149).
-
Update automatic website update release script (#207).
-
Clarify and fix documentation for constrained optimizers (#201).
-
Fix L-BFGS convergence when starting from a minimum (#201).
-
Add optimizer summary report callback (#213).
-
Fix total number of epochs and time estimation for ProgressBar callback (#181).
-
Handle SpSubview_col and SpSubview_row in Armadillo 9.870 (#194).
-
Minor documentation fixes (#197).
-
Correction in the formulation of sigma in CMA-ES (#183).
-
Remove deprecated methods from PrimalDualSolver implementation (#185.
-
Update logo (#186).
- Change "mathematical optimization" term to "numerical optimization" in the documentation (#177).
-
Require new HISTORY.md entry for each PR. (#171, #172, #175).
-
Update/fix example documentation (#174).
-
Prevent spurious compiler warnings (#161).
-
Fix minor memory leaks (#167).
-
Revamp CMake configuration (#152).
-
Allow callback instantiation for SGD based optimizer (#138).
-
Minor test stability fixes on i386 (#156).
-
Fix Lookahead MaxIterations() check. (#159).
- Fix Lookahead Synchronization period type (#153).
-
SGD callback test 32-bit safety (big number) (#143).
-
Use "arbitrary" and "separable" terms in static function type checks (#145).
-
Remove 'using namespace std' from
problems/
files (#147).
-
All
Optimize()
functions now take any matrix type; so, e.g.,arma::fmat
orarma::sp_mat
can be used for optimization. See the documentation for more details (#113, #119). -
Introduce callback support. Callbacks can be appended as the last arguments of an
Optimize()
call, and can perform custom behavior at different points during the optimization. See the documentation for more details (#119). -
Slight speedups for
FrankWolfe
optimizer (#127).
- Fix PSO return type bug (#126).
-
Update HISTORY.md to use Markdown links to the PR and add release names.
-
Fix PSO return type bug (#124).
-
Add option to avoid computing exact objective at the end of the optimization (#109).
-
Fix handling of curvature for BigBatchSGD (#118).
-
Reduce runtime of tests (#118).
-
Introduce local-best particle swarm optimization,
LBestPSO
, for unconstrained optimization problems (#86).
-
Fix
-Wreorder
inqhadam
warning (#115). -
Fix
-Wunused-private-field
warning inspsa
(#115). -
Add more warning output for gcc/clang (#116).
- Added QHAdam and QHSGD optimizers (#81).
- Fixes for BigBatchSGD (#91).
- Handle
eig_sym()
failures correctly (#100).
-
SPSA test tolerance fix (#97).
-
Minor documentation fixes (#95, #98).
-
Fix newlines at end of file (#92).
-
Fixes for SPSA (#87).
-
Optimized CNE and DE (#90). Changed initial population generation in CNE to be a normal distribution about the given starting point, which should accelerate convergence.
- Minor documentation fixes (#82).
- Fix -Wreorder warning (#75).
- Fix list of contributors.
- Make sure all files end with newlines.
-
Add link to ensmallen PDF to README.md.
-
Minor documentation fixes. Remove too-verbose documentation from source for each optimizer (#61).
-
Add FTML optimizer (#48).
-
Add SWATS optimizer (#42).
-
Add Padam optimizer (#46).
-
Add Eve optimizer (#45).
-
Add ResetPolicy() to SGD-like optimizers (#60).
- Minor documentation fixes.
-
Add WNGrad optimizer.
-
Fix header name in documentation samples.
-
Fixes for GridSearch optimizer.
-
Include documentation with release.
-
Initial release.
-
Includes the ported optimization framework from mlpack (http://www.mlpack.org/).