Self-Improving Language Models for Evolutionary Program Synthesis: A Case Study on ARC-AGI

Julien Pourcel, Cédric Colas, Pierre-Yves Oudeyer
7/10/2025
cs.LGcs.AIcs.NE

Official code: flowersteam/SOAR (57 stars, MIT, last commit 2025-09-17).

Abstract

Many program synthesis tasks prove too challenging for even state-of-the-art language models to solve in single attempts. Search-based evolutionary methods offer a promising alternative by exploring solution spaces iteratively, but their effectiveness remain limited by the fixed capabilities of the underlying generative model. We propose SOAR, a method that learns program synthesis by integrating language models into a self-improving evolutionary loop. SOAR alternates between (1) an evolutionary search that uses an LLM to sample and refine candidate solutions, and (2) a hindsight learning phase that converts search attempts into valid problem-solution pairs used to fine-tune the LLM's sampling and refinement capabilities\, -- \,enabling increasingly effective search in subsequent iterations. On the challenging ARC-AGI benchmark, SOAR achieves significant performance gains across model scales and iterations, leveraging positive transfer between the sampling and refinement finetuning tasks. These improvements carry over to test-time adaptation, enabling SOAR to solve 52\% of the public test set. Our code is open-sourced at: https://github.com/flowersteam/SOAR

View on arXivView PDF

Code Implementations(1)

flowersteam/SOAROfficial100%
MIT

Implementation of SOAR

5711Shell, PythonJun 4, 20251 years agoMIT

Similar Papers

Cite this paper

@article{pourcel2025selfimproving,
  title  = {Self-Improving Language Models for Evolutionary Program Synthesis: A Case Study on ARC-AGI},
  author = {Julien Pourcel and Cédric Colas and Pierre-Yves Oudeyer},
  year   = {2025},
  eprint = {2507.14172},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2507.14172v1},
  journal = {ICML 2025 2025}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2507.14172.svg)](https://codeofpaper.com/paper/2507.14172)

Discussion