evosax: JAX-based Evolution Strategies

12/08/2022
by   Robert Tjarko Lange, et al.
0

The deep learning revolution has greatly been accelerated by the 'hardware lottery': Recent advances in modern hardware accelerators and compilers paved the way for large-scale batch gradient optimization. Evolutionary optimization, on the other hand, has mainly relied on CPU-parallelism, e.g. using Dask scheduling and distributed multi-host infrastructure. Here we argue that also modern evolutionary computation can significantly benefit from the massive computational throughput provided by GPUs and TPUs. In order to better harness these resources and to enable the next generation of black-box optimization algorithms, we release evosax: A JAX-based library of evolution strategies which allows researchers to leverage powerful function transformations such as just-in-time compilation, automatic vectorization and hardware parallelization. evosax implements 30 evolutionary optimization algorithms including finite-difference-based, estimation-of-distribution evolution strategies and various genetic algorithms. Every single algorithm can directly be executed on hardware accelerators and automatically vectorized or parallelized across devices using a single line of code. It is designed in a modular fashion and allows for flexible usage via a simple ask-evaluate-tell API. We thereby hope to facilitate a new wave of scalable evolutionary optimization algorithms.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
12/12/2022

PyPop7: A Pure-Python Library for Population-Based Black-Box Optimization

In this paper, we present a pure-Python open-source library, called PyPo...
research
03/10/2023

Multiple Hands Make Light Work: Enhancing Quality and Diversity using MAP-Elites with Multiple Parallel Evolution Strategies

With the development of hardware accelerators and their corresponding to...
research
02/02/2022

Accelerated Quality-Diversity for Robotics through Massive Parallelism

Quality-Diversity (QD) algorithms are a well-known approach to generate ...
research
02/10/2022

EvoJAX: Hardware-Accelerated Neuroevolution

Evolutionary computation has been shown to be a highly effective method ...
research
08/07/2023

QDax: A Library for Quality-Diversity and Population-based Algorithms with Hardware Acceleration

QDax is an open-source library with a streamlined and modular API for Qu...
research
02/24/2023

EvoTorch: Scalable Evolutionary Computation in Python

Evolutionary computation is an important component within various fields...
research
10/11/2018

Multi-Strategy Coevolving Aging Particle Optimization

We propose Multi-Strategy Coevolving Aging Particles (MS-CAP), a novel p...

Please sign up or login with your details

Forgot password? Click here to reset