Skip to content

LES, Distributed ES & Fixes 🚀

Compare
Choose a tag to compare
@RobertTLange RobertTLange released this 06 Mar 16:07
· 53 commits to main since this release
adece30
Added
  • Adds exponential decay of mean/weight regularization to ES that update mean (FD-ES and CMA variants). Simply provide mean_decay != 0.0 argument at strategy instantiation to strategy. Note that covariance estimates may be a bit off, but this circumvents constant increase of mean norm due to stochastic process nature.

  • Adds experimental distributed ES, which sample directly on all devices (no longer only on host). Furthermore, we use pmean-like all reduce ops to construct z-scored fitness scores and gradient accumulations to update the mean estimate. So far only FD-gradient-based ES are supported. Major benefits: Scale with the number of devives and allow for larger populations/number of dimensions.

    • Supported distributed ES:
      • DistributedOpenES
    • Import via: from evosax.experimental.distributed import DistributedOpenES
  • Adds RandomSearch as basic baseline.

  • Adds LES (Lange et al., 2023) and a retrained trained checkpoint.

  • Adds a separate example notebook for how to use the BBOBVisualizer.

Changed
  • Sep_CMA_ES automatic hyperparameter calculation runs into int32 problems, when num_dims > 40k. We therefore clip the number to 40k for this calculation.
Fixed
  • Fixed DES to also take flexible fitness_kwargs, temperature, sigma_init as inputs.
  • Fixed PGPE exponential decay option to account for sigma update.