5 #include "chromosome.h"
6 #include "generation.h"
7 #include "generator/bitGenerator.h"
10 using namespace genetic;
13 typedef Gene<int> _Gene;
14 typedef Chromosome<_Gene> _Chromosome;
15 typedef Generation<_Chromosome> _Generation;
16 typedef generator::BitGenerator<_Chromosome> _Generator;
18 const unsigned int chromosomeSize = 20;
19 const unsigned int generationSize = 100;
21 _Generator generator(generationSize, chromosomeSize);
22 _Generation generation = generator.breed();
24 if (generation.size() != generationSize) {
25 cout << "Generation contained incorrect size after breeding\n";
29 for (unsigned int i = 0; i < generation.size(); i++) {
30 if (generation[i].size() != chromosomeSize) {
31 cout << "Chromosome contained bad size after breeding\n";
34 for (unsigned int j = 0; j < generation[i].size(); j++) {
35 if ((generation[i][j].get() != 0) &&
36 (generation[i][j].get() != 1)) {
37 cout << "Chromosome breeded by BitGenerator does not have bit Genes\n";
42 cout << "BitGenerator breeded correctly\n";