OpenEvolve

An open-source take on AlphaEvolve: LLMs mutate programs, your evaluator scores them, and a MAP-Elites and island database keeps diverse winners.

Read the source

The loop

  1. Proposes

    Code changes in marked EVOLVE-BLOCK regions, written by an ensemble of LLMs from any compatible API

  2. Judged by

    A user-written evaluator that scores each program; errors and other evaluator output are kept as artifacts

  3. Steers

    Scores place programs in a MAP-Elites grid across island populations; errors and evaluator output feed the next prompt

Headline result

The project reports 2-3x speedups on GPU kernels (MLX Metal) and a circle packing for n=26 that its README calls state of the art, plus sorting and signal-processing examples. These are the project's own claims; the README gives no numeric circle-packing score.

What this does not prove

All results are project-reported and not independently replicated here. The README gives no numbers for most examples. It is an engineering framework, not a paper.

How it generalizes the harness

The evolutionary loop with its MAP-Elites and island database does the search, and the evolved program is a plain artifact usable without the model.

Classification

Classification of OpenEvolve
What it proposesProgram
Generative modelPluggable LLM ensemble, frozen (any OpenAI-compatible API or supported CLI)
Algorithmic authorityUser-defined evaluator (tests, benchmarks, profilers)
FeedbackScore
What gets updatedPrompt context and population of candidates
When it runsAt inference time
ValidityEmpirical (measured)
EvidenceCode released
LineageDerivative