把大语言模型嵌入进化算法循环,不是让 AI 写一次代码就完事,而是让它写上千轮、每轮自动评分反馈,最终进化出人类数十年未能发现的新算法。
让 AI 反复写代码、每次自动跑测试打分、只留下跑得更好的版本、再把好版本喂回去让它继续改——经过上千轮进化,最终代码可以超越人类专家数十年的成果。
发现新算法(比如更快的矩阵乘法、更优的数学构造)需要反复试错、逐步逼近。LLM 虽然有创造力,但单次输出不可靠——它无法验证自己的代码是否正确,更无法系统性地搜索巨大的解空间。
在 AlphaEvolve 之前,已有三类典型方案尝试解决这个问题,但各有明显局限:
Devin 是 2024 年引起轰动的 AI 编程智能体。它有一个完整的开发环境(编辑器 + 终端 + 浏览器),可以自主阅读代码库、写代码、跑测试、修 bug。底层用多个子 agent 协作:代码编辑 agent、命令行 agent、错误处理 agent、浏览器 agent。
用户给一个任务描述 → Devin 扫描代码库 → 制定计划 → 用户审批 → 执行 + 动态调整。如果测试失败,会自动重试修复。本质是一条对话链上的迭代,用人工审查和测试反馈来纠错。
SWE-bench 上 13.86% 的解决率(此前 SOTA 仅 1.96%);生产环境中 67% 的 PR 被合并。
Devin 是「对话式」的——一次任务一条链,依赖人工审查。AlphaEvolve 是「进化式」的——数千个候选方案并行评估、优胜劣汰,无需人工参与。Devin 适合日常开发,AlphaEvolve 适合在巨大搜索空间中发现全新算法。
AlphaTensor 是 DeepMind 2022 年发表在 Nature 上的工作。它把发现矩阵乘法算法的问题建模为一个单人博弈游戏:目标是找到 3D 张量的低秩分解。用 AlphaZero 的方法(蒙特卡洛树搜索 + 深度神经网络)来下这盘棋。
把张量分解的每一步(选择一个秩一分量)视为一个「动作」,当前张量残差视为「状态」,分解完成时的秩作为「奖励」。用 Transformer 网络评估局面并指导搜索。还用随机生成的合成数据来做 bootstrap 训练。
在多个矩阵规模上超越了已知最优算法,发现了 14,236 个不等价的 4×4 矩阵乘法算法。对于 F2(二元域)上的 4×4 矩阵乘法找到了 rank-47 的算法。
AlphaTensor 只能做张量分解这一个问题——状态空间、动作空间、奖励函数都是为矩阵乘法量身定制的。换一个问题就要从头设计 RL 环境。AlphaEvolve 不需要建模问题结构,只要用户提供评估函数就行——同一套系统可以做矩阵乘法、数学证明、调度优化、芯片设计。
FunSearch 是 AlphaEvolve 的直系前作,名字来自「在函数空间中搜索」(Function Search)。它是第一个证明 LLM + 进化可以做出真正数学发现的系统——不是从训练数据中检索,而是发现全新的、可验证超越 SOTA 的构造。
用小 LLM(如 PaLM 2)反复生成单个 Python 函数的变体,用自动评估器打分,高分版本存入进化数据库,再采样给 LLM 继续改。与经典进化算法的区别:用 LLM 代替随机突变,可以做语义级别的修改。
在极值组合学的 cap set 问题上发现了超越已知最优的新构造;在在线装箱问题(bin packing)上找到了超越经典算法基线的新启发式。这两个结果都发表在 Nature 上。
FunSearch 只能改 10-20 行的单个函数,需要百万次 LLM 调用,用大模型反而没有收益。AlphaEvolve 能进化整个代码文件(数百行、多函数、多语言),只需数千次调用,且越强的模型效果越好。这使得 AlphaEvolve 能处理真实世界的复杂工程问题,而不仅仅是数学小品。
AlphaEvolve 的核心是一个进化循环:LLM 提出代码改动 → 自动评估器打分 → 好的方案存入数据库 → 从数据库采样组装下一轮 prompt → 重复。先看论文原图,再逐步拆解:
下面用论文 Figure 3 中的图像分类任务作为具体例子,展示 prompt 的完整拼接过程和 LLM 的输出:
告诉 LLM:「之前有人用这个简单 CNN,准确率 79.6%」
告诉 LLM:「有人后来改成了 ResNet,准确率提到了 86.2%,你在这个基础上继续改」
这段 diff 会被自动应用到 Part 3 的当前程序上,生成一个新的候选程序,然后送去评估。如果评分比 0.624 高,就会被存入数据库,成为下一轮 prompt 中的「当前程序」。
除了核心进化循环之外,论文中有几个设计选择特别值得关注:
AlphaEvolve 面对同一个问题(比如「找到一个满足某性质的数学对象」),可以选择三种截然不同的进化策略:
在数学发现实验中,策略 C(进化搜索算法)被证明是最强的——AlphaEvolve 会自动发现多阶段搜索策略:早期启发式擅长快速大幅改进,后期启发式擅长精细调优。这种自动发现的多阶段策略人类很难手工设计。
AlphaEvolve 有两条并行的进化链:
代码数据库存储进化中的代码版本,Prompt 数据库存储进化中的提示策略——两者共同进化。这意味着 AlphaEvolve 不仅学会了写更好的代码,还学会了「怎么提更好的要求」,可以超越人类 prompt 工程师的能力。
论文中最引人注目的发现之一:AlphaEvolve 的工程成果形成了一个自我改进的正向飞轮:
目前自我改进的反馈周期还以月为单位,但方向清晰:随着基础模型变强、硬件变快,AlphaEvolve 能发现更好的优化 → 基础设施更强 → 下一代 AlphaEvolve 更强。论文将此称为 AI 发现的「正向飞轮」。
以下是关键数字——感兴趣的读者可以看原文的完整数据表和消融实验:
数学方面:在 50+ 个开放问题中,约 75% 匹配已知最优,约 20% 发现了新的更优构造(包括 Kissing Number、Erdos 最小重叠等经典问题)。所有结果均经过自动验证,数学结果可在 Google Colab 中复现。
论文 Figure 8:消融实验。去掉进化机制损失最大(说明核心价值不只是「让 LLM 多试几次」),去掉 prompt 上下文次之。完整系统(蓝线)始终领先。