Skip to content

Commit

Permalink
circumventing a memory leak with bingocpp by duplicating training dat…
Browse files Browse the repository at this point in the history
…a and fitness function
  • Loading branch information
gbomarito committed Apr 10, 2024
1 parent 9a4bce1 commit bb61b56
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions bingo/evolutionary_optimizers/fitness_predictor.py
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@ def __init__(self, training_data, full_fitness_function,
self._next_trainer_to_update = 0
self.point_eval_count = 0
self._fitness_function = deepcopy(full_fitness_function)
self._full_fitness_function = deepcopy(full_fitness_function)
self._trainers, self._true_fitness_for_trainers = \
self._make_initial_trainer_population(potential_trainers,
num_trainers)
Expand Down Expand Up @@ -129,8 +130,7 @@ def get_true_fitness_for_trainer(self, trainer):
fitness : numeric
true (full) fitness of trainer
"""
self._fitness_function.training_data = self.training_data
predicted_fitness = self._fitness_function(trainer)
predicted_fitness = self._full_fitness_function(trainer)
self.point_eval_count += len(self.training_data)
return predicted_fitness

Expand Down

0 comments on commit bb61b56

Please sign in to comment.