At first glance the following changes come to mind:
use custom HOF instead of the HOF from DEAP (related #85)
use custom stats-object instead the stats-object from DEAP
implement all optimizer with ask/tell:
this would require some changes to mulambda-ES, most notably changes/difficulties: it must keep track of strategy-parameters and the mapping from fitnesses to population
I am not 100% if this wouldn't limit us for new optimizers in the future. maybe it would be better to make an ask/tell super-class for optimizers that implement that strategy?
the source-code on https://github.com/neuroevolution-ai/Canonical_ES looks very clean. I think some things from there could be applied here, too, so that this repo becomes more readable as well.
At first glance the following changes come to mind: