Closed samuelkim16 closed 2 weeks ago
I think I have found the fix, just by setting the parameters
keep_parents=5,
keep_elitism=0,
It would be nice if there was more flexibility in being able to have keep_parents
be dynamic so that it just keeps the Pareto front.
I have a multi-objective optimization problem where my batched fitness function returns a result in the shape of
(30, 2)
(so 2 objectives). The settings for the optimizer are as follows:where in each generation I am printing out the first Pareto front:
The printed results look like this:
The problem is that several of the points in the Pareto front are being thrown out in subsequent generations. For example, going from generation 3 to 4, the point corresponding to fitness
array([-5.79790117, 10.84784921])
disappears, even though it is at one extreme of the Pareto front. The algorithm seems to bias towards the second objective since it is a larger scale, although I would hope that the entire Pareto front is kept due to the multi-objective problem. Is there some setting to keep the entire Pareto front?