Exemplo n.º 1
0
 // Calculate inidividuals fittness by comparing it to our candidate solution
 public static int getFitness(Individual individual)
 {
     int fitness = 0;
     // Loop through our individuals genes and compare them to our cadidates
     for (int i = 0; i < individual.size() && i < solution.Length; i++) {
         if (individual.getGene(i) == solution[i]) {
             fitness++;
         }
     }
     return fitness;
 }
Exemplo n.º 2
0
        // Calculate inidividuals fittness by comparing it to our candidate solution
        public static int getFitness(Individual individual)
        {
            int fitness = 0;

            // Loop through our individuals genes and compare them to our cadidates
            for (int i = 0; i < individual.size() && i < solution.Length; i++)
            {
                if (individual.getGene(i) == solution[i])
                {
                    fitness++;
                }
            }
            return(fitness);
        }
Exemplo n.º 3
0
        // Crossover individuals
        private static Individual crossover(Individual indiv1, Individual indiv2)
        {
            Individual newSol = new Individual();

            // Loop through genes
            for (int i = 0; i < indiv1.size(); i++)
            {
                // Crossover
                if (Rnd.NextDouble() <= UniformRate)
                {
                    newSol.setGene(i, indiv1.getGene(i));
                }
                else
                {
                    newSol.setGene(i, indiv2.getGene(i));
                }
            }
            return(newSol);
        }
Exemplo n.º 4
0
 // Crossover individuals
 private static Individual crossover(Individual indiv1, Individual indiv2)
 {
     Individual newSol = new Individual();
     // Loop through genes
     for (int i = 0; i < indiv1.size(); i++) {
         // Crossover
         if (Rnd.NextDouble() <= UniformRate) {
             newSol.setGene(i, indiv1.getGene(i));
         } else {
             newSol.setGene(i, indiv2.getGene(i));
         }
     }
     return newSol;
 }