From bd64901ebac92f3cc9e4737368b814916b05a741 Mon Sep 17 00:00:00 2001 From: KOSMOGOR Date: Mon, 14 Apr 2025 19:25:08 +0300 Subject: [PATCH] add: fitness best values --- genetic_alg.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/genetic_alg.py b/genetic_alg.py index 4ed99f5..c5f0bbd 100644 --- a/genetic_alg.py +++ b/genetic_alg.py @@ -22,6 +22,9 @@ class GeneticAlgorithm: self.percentageBest = percentageBest self.percentageNew = percentageNew self.inputSize = inputSize + + self.fitnessBest = [] + self.device = torch.device("cuda" if torch.cuda.is_available() else "cpu") print(self.device) self.initialize_population() @@ -53,7 +56,10 @@ class GeneticAlgorithm: return model def learn(self, fitness: list): - self.population = [self.population[x] for x in np.argsort(fitness)[::-1]] + sortedFitnessArg = np.argsort(fitness)[::-1] + self.fitnessBest.append(fitness[sortedFitnessArg[0]]) + print(self.fitnessBest[-1]) + self.population = [self.population[x] for x in sortedFitnessArg] numBest = int(self.populationSize * self.percentageBest) self.population = self.population[:numBest] while len(self.population) < self.populationSize - self.populationSize * self.percentageNew: