From 8ea4b82c0d262fda8d84cdf53445dca1391d3a5d Mon Sep 17 00:00:00 2001 From: George Lacey Date: Sat, 23 Sep 2017 19:09:38 +0100 Subject: [PATCH] Calculate and return total fitness separately --- src/population.py | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/population.py b/src/population.py index 4448dea..4463f4e 100644 --- a/src/population.py +++ b/src/population.py @@ -9,8 +9,19 @@ class Population(object): self.members.append(Individual()) def fitness_function(self): + for member in self.members: + member.fitness_function() + + def total_fitness(self): total = 0 for member in self.members: - total += member.fitness_function() + total += member.fitness return total + def roulette(self): + total = self.total_fitness() + for member in self.members: + total -= member.fitness + if total <= 0: + pass + # todo: add to crossover list