Skip to content
Extraits de code Groupes Projets
Valider 6e047fbe rédigé par Jonathan CROUZET's avatar Jonathan CROUZET
Parcourir les fichiers

Implemented binary tournament for Population

parent 74f9bf69
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
#include "../coco/coco.h"
#include "population.h" #include "population.h"
#include "tournament.h" #include "tournament.h"
void binary_tournament(Population pop_in, Population pop_out){ void binary_tournament(Population population_in,
&Population population_out,
int mu,
coco_random_state_t *random_generator)
{
int size_in = population_in.getCurrentSize();
int size_out = population_out.getCurrentSize();
int i,j
for (int k = 0; k<mu; k++){
i = (int) coco_random_uniform(random_generator)*size_in
j = (int) coco_random_uniform(random_generator)*size_in
if (population_in.getFit(i) > population_in.getFit(j)) {
for (int m = 0; m<population_out.getDim(); m++){
population_out.setIndiv(size_out + k, m, population_in.getIndiv(i,m))
}
}
else {
for (int m = 0; m<population_out.getDim(); m++){
population_out.setIndiv(size_out + k, m, population_in.getIndiv(j,m))
}
}
}
} }
#ifndef TOURNAMENT_H #ifndef TOURNAMENT_H
#define TOURNAMENT_H #define TOURNAMENT_H
void binary_tournament(Population pop_in, Population pop_out); void binary_tournament(Population population_in,
Population population_out,
int mu,
coco_random_state_t *random_generator);
#endif #endif
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter