LibreOffice Module sccomp (master) 1
Public Member Functions | Private Attributes | Static Private Attributes | List of all members
DifferentialEvolutionAlgorithm< DataProvider > Class Template Reference

#include <DifferentialEvolution.hxx>

Collaboration diagram for DifferentialEvolutionAlgorithm< DataProvider >:
[legend]

Public Member Functions

 DifferentialEvolutionAlgorithm (DataProvider &rDataProvider, size_t nPopulationSize)
 
std::vector< double > const & getResult ()
 
int getGeneration ()
 
int getLastChange ()
 
void initialize ()
 
bool next ()
 

Private Attributes

DataProvider & mrDataProvider
 
size_t mnPopulationSize
 
std::vector< IndividualmaPopulation
 
std::random_device maRandomDevice
 
std::mt19937 maGenerator
 
size_t mnDimensionality
 
std::uniform_int_distribution maRandomPopulation
 
std::uniform_int_distribution maRandomDimensionality
 
std::uniform_real_distribution maRandom01
 
Individual maBestCandidate
 
double mfBestFitness
 
int mnGeneration
 
int mnLastChange
 

Static Private Attributes

static constexpr double mnDifferentialWeight = 0.5
 
static constexpr double mnCrossoverProbability = 0.9
 
static constexpr double constAcceptedPrecision = 0.000000001
 

Detailed Description

template<typename DataProvider>
class DifferentialEvolutionAlgorithm< DataProvider >

Definition at line 22 of file DifferentialEvolution.hxx.

Constructor & Destructor Documentation

◆ DifferentialEvolutionAlgorithm()

template<typename DataProvider >
DifferentialEvolutionAlgorithm< DataProvider >::DifferentialEvolutionAlgorithm ( DataProvider &  rDataProvider,
size_t  nPopulationSize 
)
inline

Definition at line 48 of file DifferentialEvolution.hxx.

Member Function Documentation

◆ getGeneration()

template<typename DataProvider >
int DifferentialEvolutionAlgorithm< DataProvider >::getGeneration ( )
inline

◆ getLastChange()

template<typename DataProvider >
int DifferentialEvolutionAlgorithm< DataProvider >::getLastChange ( )
inline

◆ getResult()

template<typename DataProvider >
std::vector< double > const & DifferentialEvolutionAlgorithm< DataProvider >::getResult ( )
inline

◆ initialize()

template<typename DataProvider >
void DifferentialEvolutionAlgorithm< DataProvider >::initialize ( )
inline

◆ next()

template<typename DataProvider >
bool DifferentialEvolutionAlgorithm< DataProvider >::next ( )
inline

Member Data Documentation

◆ constAcceptedPrecision

template<typename DataProvider >
constexpr double DifferentialEvolutionAlgorithm< DataProvider >::constAcceptedPrecision = 0.000000001
staticconstexprprivate

◆ maBestCandidate

template<typename DataProvider >
Individual DifferentialEvolutionAlgorithm< DataProvider >::maBestCandidate
private

◆ maGenerator

template<typename DataProvider >
std::mt19937 DifferentialEvolutionAlgorithm< DataProvider >::maGenerator
private

◆ maPopulation

template<typename DataProvider >
std::vector<Individual> DifferentialEvolutionAlgorithm< DataProvider >::maPopulation
private

◆ maRandom01

template<typename DataProvider >
std::uniform_real_distribution DifferentialEvolutionAlgorithm< DataProvider >::maRandom01
private

◆ maRandomDevice

template<typename DataProvider >
std::random_device DifferentialEvolutionAlgorithm< DataProvider >::maRandomDevice
private

Definition at line 34 of file DifferentialEvolution.hxx.

◆ maRandomDimensionality

template<typename DataProvider >
std::uniform_int_distribution DifferentialEvolutionAlgorithm< DataProvider >::maRandomDimensionality
private

◆ maRandomPopulation

template<typename DataProvider >
std::uniform_int_distribution DifferentialEvolutionAlgorithm< DataProvider >::maRandomPopulation
private

◆ mfBestFitness

template<typename DataProvider >
double DifferentialEvolutionAlgorithm< DataProvider >::mfBestFitness
private

◆ mnCrossoverProbability

template<typename DataProvider >
constexpr double DifferentialEvolutionAlgorithm< DataProvider >::mnCrossoverProbability = 0.9
staticconstexprprivate

◆ mnDifferentialWeight

template<typename DataProvider >
constexpr double DifferentialEvolutionAlgorithm< DataProvider >::mnDifferentialWeight = 0.5
staticconstexprprivate

◆ mnDimensionality

template<typename DataProvider >
size_t DifferentialEvolutionAlgorithm< DataProvider >::mnDimensionality
private

◆ mnGeneration

template<typename DataProvider >
int DifferentialEvolutionAlgorithm< DataProvider >::mnGeneration
private

◆ mnLastChange

template<typename DataProvider >
int DifferentialEvolutionAlgorithm< DataProvider >::mnLastChange
private

◆ mnPopulationSize

template<typename DataProvider >
size_t DifferentialEvolutionAlgorithm< DataProvider >::mnPopulationSize
private

◆ mrDataProvider

template<typename DataProvider >
DataProvider& DifferentialEvolutionAlgorithm< DataProvider >::mrDataProvider
private

The documentation for this class was generated from the following file: