Added functions to control crossover rate and type

This commit is contained in:
2018-04-14 01:07:56 -07:00
parent 5f0b8a4c13
commit b0da515139
5 changed files with 92 additions and 10 deletions

View File

@ -20,6 +20,7 @@ namespace BitEvolver
std::shared_ptr<class Chromosome> Breed(
std::shared_ptr<class Chromosome> mama,
std::shared_ptr<class Chromosome> papa,
Enums::CrossoverType crossover_type,
double crossover_rate,
double mutation_rate
);
@ -35,7 +36,12 @@ namespace BitEvolver
//
int PickRandomCrossoverPoint(std::shared_ptr<class Chromosome> chromosome, double crossover_rate);
void ApplyCrossover(std::shared_ptr<class Chromosome> kiddo, std::shared_ptr<class Chromosome> parent, double crossover_rate);
void ApplyCrossover(
std::shared_ptr<class Chromosome> kiddo,
std::shared_ptr<class Chromosome> parent,
Enums::CrossoverType crossover_type,
double crossover_rate
);
};
};