*/
Algorithm(
generator::Generator<_Chromosome>& _generator,
- _Fitness& _fitness,
+ _Fitness& _fitness,
float crossoverChance,
float mutationChance) :
generator(_generator),
* \attention Method is currently not in use.
*/
void showGeneration() {
- unsigned int generationSize = this->generation.size();
- unsigned int chromosomeSize = this->generation[0].size();
+ const unsigned int generationSize = this->generation.size();
+ const unsigned int chromosomeSize = this->generation[0].size();
for (unsigned int i = 0; i < generationSize; i++) {
cout << "# " << i << ") ";
*/
void showAvgFitness() {
float avg = 0;
- unsigned int generationSize = this->generation.size();
+ const unsigned int generationSize = this->generation.size();
+ std::map<string, string> arguments = fitness.getArguments();
for (unsigned int i = 0; i < generationSize; i++) {
_Fitness fit(this->generation[i]);
- fit.parseArguments(fitness.getArguments());
+ fit.parseArguments(arguments);
avg += fit.calculate();
}
cout << " " << avg / generationSize;
*/
void showBestFitness() {
float best = -100000;
- unsigned int generationSize = this->generation.size();
+ const unsigned int generationSize = this->generation.size();
+ std::map<string, string> arguments = fitness.getArguments();
for (unsigned int i = 0; i < generationSize; i++) {
_Fitness fit(this->generation[i]);
- fit.parseArguments(fitness.getArguments());
+ fit.parseArguments(arguments);
float tmp = fit.calculate();
if (tmp > best) {
best = tmp;
}
}
- cout << " " << best << endl;
+ cout << " " << best << "\n";
}
};
}