X-Git-Url: https://git.dlugolecki.net.pl/?a=blobdiff_plain;f=src%2Fmain.cpp;h=958c2410403fe2017250815208a807a0179e0875;hb=971fed67ac2e5a01b5232853c08e03ed05bebbe0;hp=8d30c3b94171b1584aa6653076714349e3e2e3bb;hpb=a590537eb07fb1e7b6c4ad6fe2434f3b21d11e9d;p=genetic.git diff --git a/src/main.cpp b/src/main.cpp index 8d30c3b..958c241 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -6,11 +6,14 @@ #include "gene.h" #include "chromosome.h" +#include "fitness/wsti.h" + using namespace std; using namespace genetic; int main() { typedef Gene _Gene; + typedef Chromosome<_Gene> _Chromosome; time_t t; srand((unsigned)time(&t)); @@ -18,11 +21,21 @@ int main() { vector<_Gene> genes; for (int i = 0; i < 20; i++) { - _Gene gene(rand() % 255); - cout << "Generated gene: " << gene.get() << "\n"; + _Gene gene(rand() % 2); + cout << "Generated gene: " << (int)gene.get() << "\n"; genes.push_back(gene); } - Chromosome<_Gene> chromosome(genes); + + _Chromosome chromosome(genes); + + cout << "Entire chromosome: "; + for (int i = 0; i < 20; i++) { + cout << chromosome.get()[i].get(); + } + cout << endl; + WSTI<_Chromosome> fitness(chromosome, 0.5, 2.5); + + cout << "Fitness is equal to: " << (double)fitness.calculate() << "\n"; return 0; }