Phase 15: Autonomous Systems

AlphaEvolve Evrimsel Kodlama Ajanları

Devrimsel bir döngü ve makine kontrol edilebilir bir değerlendirici ile sınır kodlama modeli eşleştirin. Çubuk yeterince uzun sürsün. Bu, 48 skalar çarpımı kullanan 4x4 kompleks-matris çarpma prosedürünü keşfeder. 56 yıl içinde Strassen'in ilk gelişimi. Ayrıca, üretimde bulunan klüster hesaplamalarının %0,7'ini geri alan Google genelinde bir Borg programlama heuristik bulur. Mimarlık kasten sıkıcı. Kazançlar değerlendirici'nin katılamasından kaynaklanmaktadır.

Type: Learn

Languages: Python (stdlib, evolutionary-loop toy)

Prerequisites: Phase 15 · 01 (long-horizon framing), Phase 15 · 02 (self-taught reasoning)

Time: ~60 minutes

Sorun

Büyük dil modelleri kod yazabilir. Evrimsel algoritmalar kod üzerinde arama yapabilir. Her ikisi de on yıllardır ayrı olarak denedilir; her ikisi de tavanlara çarptır. LLM tavanı bir konfabulatsiyondur: model iddia ettiği şeyi yapmayan makul kod yazar. Evrimsel tavan arama maliyetidir: sentaks üzerinde rastgele mutasyonlar nadiren kompile edilebilir programlar üretir, daha iyi programları bile söylemeyiz.

AlphaEvolve (Novikov et al., DeepMind, arXiv:2506.13131, Haziran 2025) bunları birleştirir. LLM bir program veritabanına hedeflenmiş düzenlemeler önerir; otomatik bir değerlendirici her variansı puanlar; yüksek puanlı varianlar gelecek nesiller için ebeveyn olur. LLM makul kod yazmanın pahalı adımı ele alır; değerlendirici konfabulasiyonları yakalar.

Sonuçlar bildirildi: 48-skala-koşul-koşul 4x4 kompleks matris çarpımı (Strassen'in 1969 sınırı 49 idi), Google üretiminde bir Borg programlama heuristik, %32,5 FlashAttention çekirdek hızlandırması, Gemini eğitim geçiş gelişimleri.

Arsitektur çalışır çünkü değerlendirici makine kontrol edilebilir. değerlendirici olmayan yerde çalışmaz. Bu asimetri ders.

Anlaşım

Çubuk

  1. Tohum programından başla P_0Bu doğru ama optimum değil.
  2. Değişiklik programlarının bir veritabanını tutmak, her biri değerlendirici tarafından puanlanmıştır.
  3. Veritabanın (MAP-elite tarzı veya ada tabanlı) bir veya daha fazla ebeveyn örneği.
  4. LLM'yi (Biri Flash birçok aday için, İkiz Pro zor olanlar için) değiştirilmiş bir ana variansı üretmek için çağırın.
  5. Sürekli değerlendirme cihazında variansı oluştur, çalıştır ve değerlendirin.
  6. Skor ve özellik vektörü ile anahtarlanmış veritabanına ekle.
  7. Tekrar ediyorum.

İki detay önemlidir. Birincisi, LLM ana programdan daha fazlasıyla genellikle veritabanından birkaç üst varyant ile teşvik edilir.

Değerlendiriciyi pazarlık edilemez kılan şey

AlphaEvolve'in kazançları, değerlendirici hızlı, belirleyici ve zor oynadığı alanlardan gelir:

  • Matrix multiplication algorithm: matrisleri çarpıtan ve eşitliği bit-tıpkı bir şekilde kontrol eden birim testi.
  • Borg scheduling heuristic: tarihi küme yükünü yeniden oynayan ve boşa harcanmış hesaplama ölçümlerini yapan üretim derecesi simülatörü.
  • FlashAttention kernel: gerçek donanım üzerinde doğrulık testi ve duvar saati referans göstergesi.
  • Gemini training throughput: adım başına GPU saniye ölçülmüştür.

Her durumda değerlendirici, öte yandan üstünlük sağlayacak LLM hataları sınıfını yakalar: konfabulated doğruluk iddiaları, donanım üzerinde kaybolan performans iddiaları ve kenar durum hataları.

Ödül hackeri bu ifadeye karşı bir yönüdür.

Değerlendirici ölçümleri için evrim optimize eder. Eğer değerlendirici kusurlu ise, döngü kusurlu bulur. Doğrulanmamış bir alanda döngü, amaçlanan davranış için değil yüzey özelliği için optimize eder. DeepMind bu açıkça kağıda işaretler: AlphaEvolve'un başarıları yalnızca değerlendirici sıkıntısının arama hedeflerine uyduğu alanlara aktarılır.

2025-2026 yılları arasında kod arama döngüslerinde ödül hackleme örnekleri:

  • "Bütünleşme zamanı" ödülünü veren optimizasyon hedefleri boş çözümler göndermekle ödüllendirildi.
  • Benchmark puanları doğruluk testi altındaki hatırlarlık testleri ve aşırı uygunlukları ödüllendirir.
  • "Kod kalitesi" proxy, yorumları kaldırmak ve semantik bir değişiklik olmadan değişken isimleri yeniden yazmakla ödüllendirildi.

AlphaEvolve'de çözüm: LLM'nin hiç görmediği bir değerlendirmeci gönderir ve değerlendirme sırasında üretilen girişler.

Neden LLM + arama tek başına ya da

LLM, kompüle edilebilir, anlamsal olarak makul değişiklikler üretebilir. 2000 satırlı Python dosyasında rastgele mutasyon GA neredeyse her zaman sözcük hatası üretir. LLM ayrıca rastgele komşularda aramaları yoğunlaştırır (herhangi bir fonksiyonu değiştir, rastgele bayt değil), bu da değerlendirmeci çağrıları çarpıcı bir şekilde azaltır.

Değerlendirici, LLM'nin konfabulasiyonlarını yakalar. LLM'ler, aslında O(n^2) olduğu halde bir fonksiyonun "O(n log n) sınırında olduğunu güvenle iddia eder; bir duvar saati referans sorunu çözür.

AlphaEvolve sınırda yer alırken

SystemGeneratorEvaluatorDomainExample win
AlphaEvolveGeminicorrectness + benchmarkalgorithms, kernels, schedulers48-mul 4x4 matmul
FunSearch (DeepMind, 2023)PaLM / Codeycorrectnesscombinatorial mathcap-set lower bounds
AI Scientist v2 (Sakana, L5)GPT/ClaudeLLM critique + experimentML researchICLR workshop paper
Darwin Godel Machine (L4)agent scaffoldingSWE-bench / Polyglotagent code20% → 50% SWE-bench

Dörtü de aynı tarifin değişikliği: jeneratör artı değerlendirici, döngü. Farklılıklar değerlendirici notlarının ne kadar sıkı olduğu.

Kullan

code/main.pyOyuncak simbolik gerileme sorunu üzerinde minimal AlphaEvolve benzeri bir döngü uyguluyor. "LLM" bir hedef işlevi hesaplayan bir programa küçük sentaksik mutasyonlar öneren bir stdlib proxy. "Değerleyicisi" ölçümleri, tutulan test noktalarında karelerden bir hata anlamına gelir.

  • Gözleyin.
  • En iyi notun nesiller boyunca nasıl geliştiğini.
  • Bir MAP elit şebekesi çeşitli çözümleri nasıl canlı tutar ki bu da halka yerel minimumlara doğru birleştiği için değil.
  • Nasıl bir şekilde, beklenmedik bir denemeyi (tekrar eğitimli değerlendirmeci) kaldırmak, döngüyi çarpıcı bir şekilde uyumlandırır.

Gönder

outputs/skill-evaluator-rigor-audit.mdYeni bir alanda AlphaEvolve tarzında bir döngü düşünmenin ön koşuludur: değerlendirici gerçekten önem verdiğiniz başarısızlıkları algılar mı?

Egzersizler

  1. Çık .code/main.py. En iyi puan çizgisini not edin.--no-holdout) ve tekrar çalıştırmak.
  1. MAP-elite grid'deki AlphaEvolve makalesinin 3. bölümünü okuyun. Aramaları çeşitlilikte tutmak için yeni bir sorun için bir özellik vektörü tanımlayıcısı tasarlayın (örneğin, kompiliör optimizasyonu geçişleri).
  1. Strassen'in 49-mul sınırında 48 çarpma 4x4 sonucu 56 yıl sonra iyileşti. Kağıtın F ekini okuyun ve bu sorunun değerlendirici neden özellikle doğru olmak için kolay olduğunu ve çoğu alanın neden bu şekilde olmadığını üç cümleyle açıklayın.
  1. AlphaEvolve'in başarısız olduğu bir alan önerin.
  1. Bildiğiniz bir alan için kullanmak istediğiniz değerlendirmeci imzasını yazın. (a) doğruluk koşulları, (b) performans metrikleri, (c) devamlı giriş üretimi kuralları, (d) en az bir ödül saldırısına karşı kontrolü ekleyin.

Anahtar Terimler

TermWhat people sayWhat it actually means
AlphaEvolve"DeepMind's evolutionary coding agent"Gemini + program database + machine-checkable evaluator
MAP-elites"Diversity-preserving archive"Grid keyed by feature vectors; each cell holds the best variant with that descriptor
Island model"Parallel evolution subpopulations"Independent populations that migrate periodically; prevents premature convergence
Machine-checkable evaluator"Deterministic oracle"A unit test, simulator, or benchmark the LLM cannot fake — a prerequisite for this loop
Reward hacking"Optimizing the measure, not the goal"Loop finds a way to maximize score without doing the intended task
Seed program"The starting point"An initial correct-but-suboptimal program the loop evolves from
Held-out evaluator"Evaluation data the LLM never saw"Inputs generated at evaluation time to prevent memorization

Daha Fazla Okumak

This free lesson is part of the AI Engineering from Scratch curriculum. Read the full explanation, run the lesson code, and verify the result in the interactive reader or from the repository source.

Browse the complete course catalog or open this lesson on GitHub.