Remove some not used namespace declarations.
[genetic.git] / include / crossover / crossover.h
index d2eada8efb0bfe46b2d0a3edbdf6311c8bd7907b..3befaed60c50698b904ba945afe18230f3aabf2b 100644 (file)
@@ -1,6 +1,8 @@
 #ifndef __CROSSOVER_CROSSOVER_H
 #define __CROSSOVER_CROSSOVER_H
 
+#include <vector>
+
 #include "chromosome.h"
 #include "generation.h"
 
@@ -14,7 +16,7 @@ namespace genetic {
             /**
              * Type of probability of crossover chance
              */
-            typedef double CrossoverChanceType;
+            typedef float CrossoverChanceType;
 
             /**
              * Type representing Chromosome Gene
@@ -34,7 +36,7 @@ namespace genetic {
              * @param splitPlace Gene number on which the Genes should be swapped
              * @return new Chromosome crossed between given two
              */
-            _Chromosome do_cross(_Chromosome first, _Chromosome second, unsigned int splitPlace) {
+            _Chromosome do_cross(_Chromosome& first, _Chromosome& second, const unsigned int splitPlace) {
                 const unsigned int chromosomeSize = first.size();
 
 //                 cout << "        ";
@@ -55,7 +57,7 @@ namespace genetic {
 //                     }
 //                 }
 
-                vector<GeneType> crossedChromosome;
+                std::vector<GeneType> crossedChromosome;
                 for (unsigned int i = 0; i < chromosomeSize; i++) {
                     if (i < splitPlace) {
                         crossedChromosome.push_back(first[i].get());
@@ -80,7 +82,7 @@ namespace genetic {
              *
              * @param chance probability of Crossover (0 = 0%, 1 = 100%)
              */
-            Crossover(CrossoverChanceType chance) :
+            Crossover(const CrossoverChanceType& chance) :
                 chance(chance) {
             }
 
@@ -90,9 +92,9 @@ namespace genetic {
              * @param _generation Generation for which the crossover should be applied
              * @return new Generation of Chromosome's after the Crossover
              */
-            Generation<_Chromosome> cross(Generation<_Chromosome> _generation) {
+            Generation<_Chromosome> cross(Generation<_Chromosome>& _generation) {
                 const unsigned int generationSize = _generation.size();
-                vector<_Chromosome> newGeneration;
+                std::vector<_Chromosome> newGeneration;
 
                 for (unsigned int i = 0; i < generationSize; i++) {
                     CrossoverChanceType random = (rand() + 1 % 10000) / 10000.0;