Supported Algorithms

The following table lists algorithms that are currently supported in pyribs. We list the components that are required to create each algorithm, the tutorial or example that describes it, and the paper where the algorithm originated. The algorithms are ordered alphabetically. We encourage interchanging these components to create new algorithms :)

Algorithm

Archive

Emitters

Result Archive

Scheduler

Tutorial or Example

Paper

BOP-Elites

GridArchive

BayesianOptimizationEmitter

GridArchive

BayesianOptimizationScheduler

BOP-Elites

Kent 2024

CMA-MAE

GridArchive or CVTArchive

EvolutionStrategyEmitter

GridArchive or CVTArchive

Scheduler

Upgrading CMA-ME to CMA-MAE on the Sphere Benchmark; Sphere Function with Various Algorithms

Fontaine 2023

CMA-MAEGA

GridArchive or CVTArchive

GradientArborescenceEmitter

GridArchive or CVTArchive

Scheduler

Generating Tom Cruise Images with DQD Algorithms; Sphere Function with Various Algorithms

Fontaine 2023

CMA-ME

GridArchive or CVTArchive

EvolutionStrategyEmitter

N/A

Scheduler

Using CMA-ME to Land a Lunar Lander Like a Space Shuttle; Illuminating the Latent Space of an MNIST GAN; Learning a Repertoire of Robot Arm Configurations; Sphere Function with Various Algorithms

Fontaine 2020

CMA-MEGA

GridArchive or CVTArchive

GradientArborescenceEmitter

N/A

Scheduler

Generating Tom Cruise Images with DQD Algorithms; Sphere Function with Various Algorithms

Fontaine 2021

CVT-MAP-Elites

CVTArchive

GaussianEmitter or IsoLineEmitter

N/A

Scheduler

Sphere Function with Various Algorithms

Vassiliades 2018

DDS

DensityArchive

EvolutionStrategyEmitter

GridArchive or CVTArchive

Scheduler

Sphere Function with Various Algorithms

Lee 2024

DMS

DiscountArchive

EvolutionStrategyEmitter

GridArchive or CVTArchive

Scheduler

Sphere Function with Various Algorithms

Tjanaka 2026

MAP-Elites

GridArchive

GaussianEmitter

N/A

Scheduler

Generating Images to Fool an MNIST Classifier; Sphere Function with Various Algorithms

Mouret 2015

MAP-Elites (line)

GridArchive

IsoLineEmitter

N/A

Scheduler

Sphere Function with Various Algorithms

Vassiliades 2018

MAP-Elites with Sliding Boundaries

SlidingBoundariesArchive

GaussianEmitter

N/A

Scheduler

Fontaine 2019

Multi-Emitter MAP-Elites

GridArchive

EvolutionStrategyEmitter, GaussianEmitter, and IsoLineEmitter

N/A

ribs.schedulers.BanditScheduler

Sphere Function with Various Algorithms

Cully 2021

Novelty Search

ProximityArchive

EvolutionStrategyEmitter, GaussianEmitter, or IsoLineEmitter

GridArchive (optional)

Scheduler

Exploring Deceptive Mazes with Novelty Search; Sphere Function with Various Algorithms

Lehman 2011

OG-MAP-Elites

GridArchive

GradientOperatorEmitter

N/A

Scheduler

Sphere Function with Various Algorithms

Fontaine 2021

OMG-MEGA

GridArchive

GradientOperatorEmitter

N/A

Scheduler

Sphere Function with Various Algorithms

Fontaine 2021

QDAIF

GridArchive

(custom)

N/A

Scheduler

Orchestrating LLMs to Write Diverse Stories with Quality Diversity through AI Feedback

Bradley 2024

QDHF

GridArchive

GaussianEmitter

N/A

Scheduler

Incorporating Human Feedback into Quality Diversity for Diversified Text-to-Image Generation

Ding 2024

Scalable CMA-MAE

GridArchive or CVTArchive

EvolutionStrategyEmitter (with es parameter)

GridArchive or CVTArchive

Scheduler

Scaling CMA-MAE on the Sphere Benchmark

Tjanaka 2023