3 #include <geneial/namespaces.h>
4 #include <geneial/core/population/builder/BuilderSettings.h>
6 geneial_private_namespace(geneial)
8 geneial_private_namespace(population)
10 geneial_private_namespace(chromosome)
13 geneial_export_namespace
16 template<
typename VALUE_TYPE,
typename FITNESS_TYPE>
17 class MultiValueBuilderSettings:
public BuilderSettings<FITNESS_TYPE>
20 VALUE_TYPE _random_max;
22 VALUE_TYPE _random_min;
24 unsigned int _numberallee;
28 static constexpr
const VALUE_TYPE DEFAULT_RANDOM_MAX = 100;
30 static constexpr
const VALUE_TYPE DEFAULT_RANDOM_MIN = 0;
32 static constexpr
const unsigned int DEFAULT_NUM = 2;
34 MultiValueBuilderSettings(
const typename FitnessEvaluator<FITNESS_TYPE>::ptr fitnessEvaluator,
35 const unsigned int num = DEFAULT_NUM,
36 const VALUE_TYPE random_max = DEFAULT_RANDOM_MAX,
37 const VALUE_TYPE random_min = DEFAULT_RANDOM_MIN ) :
38 BuilderSettings<FITNESS_TYPE>(fitnessEvaluator),
39 _random_max(random_max),
40 _random_min(random_min),
45 virtual ~MultiValueBuilderSettings()
49 inline unsigned int getNum()
const
54 inline void setNum(
unsigned int num)
59 inline VALUE_TYPE getRandomMax()
const
64 inline void setRandomMax(VALUE_TYPE randomMax)
66 _random_max = randomMax;
69 inline VALUE_TYPE getRandomMin()
const
74 inline void setRandomMin(VALUE_TYPE randomMin)
76 _random_min = randomMin;