Differential Evolution configuration object. More...
#include <ql/math/optimization/differentialevolution.hpp>
Public Member Functions | |
DifferentialEvolution (const Configuration &configuration=Configuration()) | |
virtual EndCriteria::Type | minimize (Problem &p, const EndCriteria &endCriteria) |
minimize the optimization problem P | |
const Configuration & | configuration () const |
Differential Evolution configuration object.
The algorithm and strategy names are taken from here:
Price, K., Storn, R., 1997. Differential Evolution - A Simple and Efficient Heuristic for Global Optimization over Continuous Spaces. Journal of Global Optimization, Kluwer Academic Publishers, 1997, Vol. 11, pp. 341 - 359.
There are seven basic strategies for creating mutant population currently implemented. Three basic crossover types are also available.
Future development: 1) base element type to be extracted 2) L differences to be used instead of fixed number 3) various weights distributions for the differences (dither etc.) 4) printFullInfo parameter usage to track the algorithm
OptimizationMethod using Differential Evolution algorithm