论文链接:arXiv:2608.07645 代码仓库:github.com/RealLcz/MGM · 项目主页 发表时间:2026 年 8 月 机构:慕尼黑大学(LMU Munich)—— 数据科学与工程实验室。作者:Changzhi Liu(刘长治,第一作者,对应 GitHub ID RealLcz)、Yilun Liu、Sikuan Yan、Volker Tresp(资深作者,LMU 教授,德国 AI 领域代表人物之一)、Yunpu Ma(马韵璞,共同资深作者) 领域标签:cs.AI / cs.LG(人工智能 / 机器学习)
机构说明:本文是纯学术机构(LMU Munich)出品,无企业合著。第一作者 Changzhi Long 为 LMU 研究生,资深作者 Volker Tresp 与 Yunpu Ma 师徒组合长期从事知识图谱、神经符号系统与 Agent 学习研究。注意这是「学校学者主导」的研究,而非「学校学生 + 企业合著」类型。
一、论文背景
要理解这篇论文到底好在哪儿,得先弄懂它站在一个什么样的"长时序愿望"上——让 AI 自己改写自己的源代码,越改越好。
1.1 从 Gödel Machine 说起:一个 20 多年的愿景
“AI 递归地重写自身以变得更好"这个想法,最早可以追溯到 Jürgen Schmidhuber 在 1987 年的工作。他在 2003 年正式提出 Gödel Machine(哥德尔机) 的构想:
一种数学上严谨的、自指涉(self-referential) 的修改过程——机器自己审视自己的源代码,只有当它能证明(可推导、可测量)某次修改会带来收益时,才执行这次修改。
这听起来很美——“严格保证每一次自我修改都是变好的”。但现实中,“证明某次修改有益"这件事本身几乎不可计算。真实软件系统的行为太复杂,没法用形式化证明来判断"改这行代码会不会让 Agent 更强”。
所以 Gödel Machine 长期是一个理论玩具。直到 2024 年起,大语言模型(LLM)+ 编程智能体的兴起,让人们终于可以在实验上近似这个想法:让一个能读代码、写代码的 LLM Agent,去改它自己的脚手架代码,再用一组编程基准来经验性测量改完之后变好没变好,好的就留下来。这就是论文里反复出现的 self-improving coding agent(自改进编码智能体) 方向。
1.2 关键概念:基因型、表型、脚手架
论文借用了演化生物学的语言来描述这件事,我们先把这三个核心术语对齐:
| 术语 | 生物学含义 | 本文对应物 | 类比解释 |
|---|---|---|---|
| 基因型(Genotype) | 生物的遗传信息(DNA) | 编码智能体本身的源代码 + 辅助脚手架(prompt、工具、工作流) | “岗位操作手册的文本” |
| 表型(Phenotype) | 基因在环境里表达出的实际性状 | 智能体在某个具体任务上跑出来的轨迹 + 成败结果 | “按手册干一个具体活儿的实际表现” |
| 自修改(Self-modification) | 基因突变 | Agent 编辑自己的脚手架代码 | “改写操作手册本身” |
这里说的 脚手架(scaffolding) 是 Agent 领域的一个关键概念:LLM 本身只是一个能生成 token 的模型,真正让它成为"能干活的 Agent"的,是包在外面的一层程序性结构——系统提示、工具定义、工具调用流程、记忆机制、错误恢复策略等等。你可以把它理解成:
LLM 是工人,脚手架是操作手册 + 工具箱 + 工艺流程。同一个工人,给他不同的手册和工具,干出来的活儿天差地别。
所以"自改进编码智能体"本质上是:让 Agent 自动改写它自己的"操作手册 + 工具箱”,让干活流程本身越来越好。注意,这不是在微调 LLM 的权重,而是在优化外层那层脚手架代码——这是搜索一个"程序空间",比训练权重便宜得多,也解释了后面为什么 35B 小模型能打过 4100B 的 GPT-5。
1.3 现有路线与核心瓶颈
这个方向在 2024–2026 年快速演进,主要里程碑是:
- SICA / Robeyns et al. (2025):最早证明"一个配了基本文件编辑工具的 Agent,能自主重构自己的代码库并变强"。它走的是贪心单线改进:每次基于最近一次失败,改一版,留下更好的。
- DGM(Darwin Gödel Machine,Zhang et al. 2026a,来自 UBC / Vector Institute / Sakana AI 的 Jeff Clune 团队):把单线改进重新框架化为开放式进化——不再只留一个最新版本,而是维护一棵不断生长的"Agent 变体档案树",每次从树里采样一个作为下一次自我修改的种子。这让探索从"一条独木桥"变成"一片分叉的森林"。
- HGM(Huxley-Gödel Machine,Wang et al. 2026,来自 Schmidhuber 团队):把 DGM 的开放式进化进一步形式化为一个固定预算的树搜索问题,用 Thompson 采样(一种经典的探索-利用平衡算法)来决定每一步是"评估"还是"扩展",并引入"clade 级(演化支级)聚合性能"来估计每个分支的自改进潜力。
这三代工作共同的关键瓶颈在哪里? 论文一句话点破:
现有进展几乎全集中在改进**「存档案」和「选下一个改谁」这两件事上,而「真正动手编辑代码的自我修改过程本身」基本没被研究过**。
具体到每一次自我修改,DGM / HGM 的做法都是:拿这一个 Agent、在最近一个任务上、那一条失败轨迹作为唯一依据,让 LLM 改代码。档案里明明已经攒了一堆 Agent 在一堆任务上的成败记录,却只被当成"排行榜"用来选种子,档案里丰富的"比较信息"被完全浪费了。
这就像一个学生做错了一道题,老师只看这一道题就改学习方法;但其实这个学生在 100 道题里的成败模式、以及另一个学生在同一道题上的解法,才是更值钱的诊断信号。MGM 要解决的就是这个瓶颈:怎么把档案里已经存在的比较证据,喂给自我修改过程。
二、论文定位和关联工作
2.1 研究脉络图谱
把这条线画出来:
Schmidhuber 1987/2003 Gödel Machine(理论:可证明的自改进)
│
├─ 理论近似 ─────────→ HGM (Wang et al. 2026, Schmidhuber 团队)
│ 固定预算树搜索 + clade 级 Thompson 采样
│ 但自我修改只用 Φ_CM(单轨迹)
│
├─ 开放进化近似 ─────→ DGM (Zhang et al. 2026a, Jeff Clune 团队)
│ 档案树 + 开放式探索
│ 自我修改同样只用单轨迹
│
└─ 早期单线工作 ─────→ SICA / Robeyns et al. 2025
贪心单线,无档案
│
▼
MGM (Liu et al. 2026, LMU Munich) ← 本文
沿用 HGM 的树搜索框架,
但把自我修改从 1 个算子(Φ_CM)扩展到 3 个:
Φ_CM(克隆突变,单轨迹,= HGM 基线)
Φ_RM(反应规范突变,跨任务比较同一基因型)★ 新增
Φ_CH(跨谱系杂交,跨谱系比较同一任务)★ 新增
所有算子都重用档案里已有的轨迹,不产生额外评估成本。
2.2 三种可比方向的关联工作
(A)自改进编码智能体线(直接前序)
| 工作 | 来源 | 核心思想 | 与 MGM 的关键区别 |
|---|---|---|---|
| SICA (Robeyns 2025) | — | Agent 自评、自改、迭代 | 无档案、贪心单线;MGM 用档案 + 比较证据 |
| DGM (Zhang 2026a) | UBC/Sakana | 档案树 + 开放式进化 | 自我修改仍只用单轨迹;MGM 改的是自我修改算子本身 |
| HGM (Wang 2026) | Schmidhuber 团队 | 固定预算树搜索 + clade 采样 | 同上,仅 Φ_CM;MGM 在其上叠加 Φ_RM 和 Φ_CH |
MGM 明确定位为"与 DGM/HGM 互补":前人优化"存什么、选谁",MGM 优化"选定了之后怎么改"。
(B)自动化 Agent 设计线(同源但不同问题设定)
ADAS(Hu et al. 2025)、MetaGPT(Hong et al. 2024)等"元智能体"工作也让 LLM 提出新 Agent 设计,但它们的搜索空间是"从零定义一个新 Agent",目标是发现新设计;而 DGM/HGM/MGM 这条线是"继承式自修改"——Agent 改的是它自己,子代继承父代的大部分代码只做局部修改。两者都把"Agent 脚手架"当成可搜索的程序空间,但起点和约束不同。
(C)基础工具与基准
- Gödel Agent (Arvid-pku 2024):自指涉框架,monkey patching 实现递归自改进——更偏机制演示。
- SWE-bench / SWE-bench Verified (Jimenez 2024):真实 GitHub Python 仓库的 issue 修复任务,是当前评估仓库级 Agent 能力的主流基准。
- Polyglot (Gauthier 2024 / Aider-AI):多语言(Python/Go/Rust/Java/JavaScript/C++)编程练习基准,比 SWE-bench 更能暴露"Python 偏科"问题,是检验脚手架是否学到通用工作流级改进的关键试金石。
2.3 本论文的定位结论
| 维度 | 之前的路线(DGM/HGM) | 本论文(MGM)的突破 |
|---|---|---|
| 改进对象 | 档案结构 + 采样策略 | 自我修改算子本身(被忽视的瓶颈) |
| 证据使用 | 单 Agent × 单任务 × 单轨迹 | 比较证据:跨任务 / 跨谱系 |
| 额外成本 | — | 零额外评估成本(全部重用已有轨迹) |
| 理论支撑 | 主要是经验性 | 加性适应度景观下的收敛性证明 |
一句话定位:MGM 是自改进编码智能体这条线上第一个系统性地把"比较证据"作为自我修改输入的工作,它把孟德尔遗传学里"通过受控比较分离遗传效应"的方法论,翻译成了 Agent 自进化的算法。
三、问题定义
3.1 从具体场景到最本质的抽象
具体问题:怎么让一个能改自己代码的 Agent,每次改完都比改之前更好?
这个问题表面上问的是"怎么改代码",但论文洞察到一个更深的结构——它其实问的是:给定一堆历史成败记录,怎么从里面榨取足够强的"诊断信号"来指导下一次编辑?
换成最本质的抽象:
抽象问题:自改进是一个"用有限证据去定位缺陷并修复"的过程。每次编辑器(LLM)只能基于一组诊断证据 $E$ 来猜"我哪儿有问题、应该怎么改"。证据越干净、越能定位到真正的缺陷位点,编辑器一次改对的概率就越高。
3.2 形式化定义(论文 §2)
论文用了一套很漂亮的生物学-数学对应:
- 基因型:智能体 $a \in \mathcal{A}$(含脚手架代码)
- 运行轨迹 + 结果:在任务 $\tau$ 上跑智能体,得到轨迹 $\varphi(a, \tau)$ 和二元成败 $r(a,\tau) \in \{0,1\}$(即表型)
- 期望效用:$U(a) = \mathbb{E}_{\tau \sim \mathcal{D}}[r(a, \tau)]$
- 自我修改过程:$\Phi$ 让父代 Agent 利用诊断证据 $E$ 编辑自身代码: $$a' \leftarrow \Phi(a, E), \quad E \subseteq \{(\varphi(a, \tau), r(a, \tau))\}$$
关键观察:公式 (2) 里那个 $E$ 就是所有问题的核心。$E$ 是一段"证据集"——它告诉编辑器"这个 Agent 在这些任务上有这些轨迹和结果"。DGM/HGM 的 $E$ 永远只含一条记录:$\{(\varphi(a_i, \tau), r(a_i, \tau))\}$,即一次失败。MGM 要问的就是:$E$ 还可以装什么?
3.3 类比对偶表:把"自改进"映射到"诊断修复"
为了抓住本质,论文在理论分析里建立了一个极具启发性的类比——把 Agent 自改进类比为在二进制向量上定位并修复错误位点:
| 深度学习/诊断修复概念 | 本文 Agent 概念 | 含义 |
|---|---|---|
| 二进制向量 $\mathbf{g} \in \{0,1\}^L$ | Agent 基因型(脚手架代码) | $L$ 个"能力位点",每个位点是某项最小的工作流选择 |
| Oracle 基因型 $\mathbf{g}^*$ | 最优 Agent | 所有位点都选对的理想程序 |
| Hamming 距离 $d(\mathbf{g})$ | Agent 与最优的差距 | 错误位点数 |
| 任务 $\tau$ 检查位点子集 $R_\tau$ | 一个编程任务考验的能力子集 | 任务要求"定位+推理+编辑+验证"等若干能力同时正确 |
| 错误位点集合 $M(a)$ | Agent 真正的缺陷 | 需要被改的那些脚手架能力 |
| 候选缺陷集 $C_\sigma(E)$ | 编辑器从证据里推断的"可疑位点" | 证据越干净,$C$ 越小越准 |
| 修复概率 $p_f^\sigma = s \cdot \Pr[\ell \in M(a)]$ | 编辑器一次改对的概率 | $C$ 里真错误的密度越高,越可能修对 |
这个抽象的精妙之处:
- 它剥离了所有实现细节(用什么 LLM、什么 prompt、什么基准),只留下"用证据猜缺陷"这个最本质的逻辑结构;
- 它把"为什么比较证据更强"这件事,转化为一个可证明的数学命题——候选集 $C$ 的"真错误密度"在比较证据下严格更高(见第六部分);
- 它直接对应了生物学的"孟德尔受控比较"——通过控制变量(同一基因型 vs 同一环境),分离出真正的遗传效应。
抽象后的核心问题:给定一个距离 Oracle 有 $d$ 个错误位点的基因型,设计一组自我修改算子 $\{\Phi_\sigma\}$,使得每次编辑的有效修复概率 $p_f^\sigma$ 最大化,从而最小化收敛到 Oracle 所需的期望步数。
四、问题解法
MGM 的解法可以一句话概括:在 HGM 的树搜索框架上,把单一的"克隆突变"扩展成三种算子,其中两种新算子通过比较档案里已有的轨迹来获得更干净的诊断证据,从而提升每次编辑的修复概率——而且完全不花额外的任务评估成本。
4.1 整体框架:沿用 HGM,但替换扩展算子
MGM 完整继承了 HGM 的"档案树 + Thompson 采样"搜索框架(这部分是 HGM 的贡献,不是本文重点,简述如下):
- 维护一棵档案树 $\mathcal{G}_t$,每个节点是一个 Agent $a_i$,记录它被评估过的任务集 $S_i$、失败任务集 $F_i$、成功/失败次数 $n_s(a_i)/n_f(a_i)$。
- 每一步在"评估(给某个 Agent 跑一个新任务)“和”扩展(让某个 Agent 自我修改生成子代)“之间分配预算。
- 采样用 Thompson 采样:从 $\text{Beta}(\kappa(1+n_s), \kappa(1+n_f))$ 后验里抽每个 Agent 的成功率,抽到最高的就去评估/扩展它。$\kappa$ 控制探索-利用权衡。
Thompson 采样是什么? 用一个通俗类比:它就像一个聪明的采购员,既不会只买"目前销量最高"的商品(那是纯利用),也不会瞎买(那是纯探索),而是根据每个商品的历史销量分布抽个签——卖得好的商品被抽中概率大,但卖得少的不完全没机会。数学上就是用 Beta 分布对伯努利成功率做贝叶斯后验采样。它保证了探索和利用的优雅平衡,是 HGM/MGM 决定"改谁、评估谁"的核心策略。
MGM 的改动只在"扩展"环节:当 Thompson 采样决定要扩展某个父节点 $a_i$ 时,HGM 永远只用 $\Phi_{\text{CM}}$;而 MGM 会先看档案里有什么比较证据可用,构造一个"合格算子集合” $\Omega_i$,然后按权重 $\lambda_\sigma$ 随机选一个算子来执行扩展。
4.2 三种自我修改算子
这是本文的核心创新。三种算子的区别,本质上是给编辑器看的"证据集 $E$“不一样。
4.2.1 克隆突变 $\Phi_{\text{CM}}$(= HGM 基线)
机制:拿选定 Agent $a_i$ 的一条失败轨迹作为证据:
$$E_{\text{CM}}(i, \tau) = \{(\varphi(a_i, \tau), r(a_i, \tau))\}$$让编辑器诊断这次失败并改代码,避免类似失败。
什么时候用:档案小、没足够多轨迹来构造比较证据时,兜底使用。这保证了 MGM 在冷启动时退化成 HGM,不会比 HGM 差。
4.2.2 反应规范突变 $\Phi_{\text{RM}}$(跨任务比较同一基因型,★ 新增)
机制:拿同一个 Agent 在两个不同任务上的轨迹当证据:
$$E_{\text{RM}}(a_i, \tau_t, \tau_r) = \{(\varphi(a_i, \tau_t), r(a_i, \tau_t)), (\varphi(a_i, \tau_r), r(a_i, \tau_r))\}$$其中 $\tau_t$ 是目标任务(至少一条轨迹要是失败的),$\tau_r$ 是参考轨迹。编辑器被要求:识别两条轨迹里共享的、循环出现的失败模式,然后做一个通用改进。
生物学类比——“反应规范"是什么? 这个名字来自遗传学家 Richard Woltereck 1909 年提出的概念(Reaktionsnorm)。他用水蚤(Daphnia)做实验发现:同一个基因型,在不同环境下会表达出不同的表型——这条"基因型 → 跨环境的表型轮廓"就叫反应规范。如果一种基因型在很多环境下都失败于相似的环节,那大概率是基因型层面的共性缺陷,而不是某个环境的偶然事故。
翻译回 Agent:如果同一个 Agent 在好几个不同的编程任务上,都犯了类似的错(比如都忘了校验、都读错了文件路径),那这就不是"任务特定的偶然错误”,而是脚手架本身的工作流缺陷。比较同一 Agent 的多条轨迹,能把这种"基因型层面的共性缺陷"凸显出来。
触发条件:该 Agent 至少被评估过 $m_{\text{RM}}$ 个不同任务(公式 10)。
4.2.3 跨谱系杂交 $\Phi_{\text{CH}}$(跨谱系比较同一任务,★ 新增)
机制:拿两个不同谱系的 Agent($a_t$ 目标、$a_r$ 参考)在同一个任务 $\tau_t$ 上的轨迹当证据:
$$E_{\text{CH}}(a_t, a_r, \tau_t) = \{(\varphi(a_t, \tau_t), r(a_t, \tau_t)), (\varphi(a_r, \tau_t), r(a_r, \tau_t))\}$$分两种情形:
- 情形 A:$a_r$ 成功而 $a_t$ 失败 → 用 $a_r$ 在 $\tau_t$ 上的成功轨迹作为对照,指导 $a_t$ 改自己的代码。
- 情形 B:两者都失败 → 比较两条失败轨迹,识别互补的失败模式。
生物学类比——孟德尔受控杂交:这是论文起名 Mendel 的由来。孟德尔遗传学的精髓就是"通过受控比较来分离遗传效应”——要让两个品系在同一环境下比较,才能把"基因型差异"从"环境噪声"里分离出来。跨谱系杂交正是这个思路:固定任务(环境),比较两个 Agent(基因型)的行为差异,差异部分就是可迁移的能力。
关键设计原则——是诊断不是拼接:MGM 不会把参考 Agent 的源代码直接拼接到目标 Agent 里(那不是"继承改进",是"复制")。相反,它要求目标 Agent 自己:
- 从参考轨迹里提取可迁移的行为特征(“哦,原来应该先做 X 再做 Y”);
- 把这个特征适配进自己的代码库。
这保证了目标谱系获得的是真正的能力继承,而不是任务特定的行为复制。
触发条件:存在两个不同谱系的 Agent 尝试过至少一个共同任务 $\tau_t$,且该任务未被两者都解决(公式 13)。
4.2.4 三种算子全景对比
| 维度 | $\Phi_{\text{CM}}$ 克隆突变 | $\Phi_{\text{RM}}$ 反应规范突变 | $\Phi_{\text{CH}}$ 跨谱系杂交 |
|---|---|---|---|
| 证据里的 Agent 数 | 1 个 | 1 个 | 2 个(不同谱系) |
| 证据里的任务数 | 1 个 | 2 个(不同任务) | 1 个(共同任务) |
| 生物学对应 | 基因突变 | 反应规范(基因型 × 环境) | 孟德尔受控杂交 |
| 诊断目标 | 单点失败 | 识别基因型共性缺陷 | 迁移可复用工作流特征 |
| 候选缺陷集 $C$ | $R_{\tau_t}$(较大) | $R_{\tau_t} \cap R_{\tau_r}$(更小更准) | 从 $R_\tau$ 过滤掉非因果位点 |
| 额外评估成本 | 0 | 0(重用已有轨迹) | 0(重用已有轨迹) |
| 触发条件 | 有失败即可 | 该 Agent 跑过 ≥ $m_{\text{RM}}$ 任务 | 两谱系有共享任务 |
4.3 配套机制:失败任务池 + 算子选择
光有三个算子还不够,MGM 还加了一个配套设计来主动制造比较机会:
失败任务池 $\mathcal{P}_t$:把所有曾经让任何 Agent 失败过的任务收集起来(公式 16)。给新 Agent 分配任务时,对池子里的任务加权 $\beta_{\text{fail}}$ 优先采样(公式 17)。注意这本身不产生新的评估——只是让现有的评估预算更倾向于"已知能暴露弱点"的任务。
两个目的:
- 提升每次评估的诊断价值:让 Agent 多在"难"任务上暴露问题。
- 故意制造跨谱系任务重叠:$\Phi_{\text{CH}}$ 需要两个 Agent 跑过同一任务,失败池加权采样能增加这种重叠,否则两个不同谱系的 Agent 很难自然碰到同一个任务。
算子选择:当 Thompson 采样决定扩展 $a_i$ 时,先构造合格算子集 $\Omega_i \subseteq \{\Phi_{\text{CM}}, \Phi_{\text{RM}}, \Phi_{\text{CH}}\}$(看各自触发条件是否满足),然后按权重 $\lambda_\sigma$ 采样:
$$\Pr(\sigma \mid i) = \frac{\lambda_\sigma}{\sum_{\sigma' \in \Omega_i} \lambda_{\sigma'}}, \quad \sigma \in \Omega_i$$若 $\Omega_i = \emptyset$(三种算子都不合格),MGM 跳过扩展,改做一次评估——这避免了"没证据硬改"的浪费。
4.4 整体算法流程(简化版)
初始化档案树 G₀、初始 Agent a₀、失败任务池 P₀
重复:
1. Thompson 采样决定:评估还是扩展?
2. 如果扩展:
a. 从 clade 级 Beta 后验采样父节点 a_i
b. 构造合格算子集 Ω_i
c. 若 Ω_i 空则改做评估;否则按 λ_σ 选一个算子 σ
d. 构造证据 E_σ(从档案里已有的轨迹里拿)
e. 生成子代 a' ← Φ_σ(a_t, E_σ),挂到主谱系下
3. 如果评估:
a. 从 node 级 Beta 后验采样 Agent a
b. 从失败池加权采样新任务 τ
c. 跑评估 φ(a, τ),记录轨迹和结果
d. 失败则把 τ 加入 P_t
直到预算(评估次数 + 扩展次数)耗尽,输出档案里最优的 Agent
关键点:所有算子的证据都来自档案里常规评估已经攒下的轨迹,不花额外任务评估预算——这是 MGM"零成本加成"的核心。
五、评估指标与实验证据
论文设计了三个研究问题(RQ),逐层证明 MGM 的核心主张:
- RQ1:MGM 是否展现更好的性能和效率?(主实验)
- RQ2:MGM 进化的 Agent 能否泛化到其他任务和其他模型?(迁移实验)
- RQ3:MGM 各关键组件的贡献是什么?(消融)
5.1 评估指标体系
| 指标 | 含义 | 衡量的本质能力 |
|---|---|---|
| 准确率(Accuracy %) | 在基准上通过的任务比例 | Agent 的绝对能力 |
| 绝对/相对提升 | 进化前后准确率差值 | 自改进的幅度(核心论点) |
| 墙钟时间(小时) | 进化过程总耗时 | 效率(是否靠堆算力) |
| Token 消耗 | 进化策略的平均 token 成本 | 是否靠多花 token 换性能 |
为什么这些指标能证明论点:MGM 的核心主张是"在相同预算下,用比较证据获得更快的收敛和更高的天花板"。要证明这点,必须同时控制:相同预算(200 次 φ-评估 + 24 次 Φ-扩展)、相同初始 Agent、相同骨干 LLM、相同硬件(8× H100),只让"自我修改算子"这个变量变化。只有在这种情况下 MGM 比 HGM 高出多少,才是算子改进的纯收益。
5.2 数据集与基线
基准:
- SWE-bench Verified-60:真实 Python 仓库的 issue 修复,60 题子集(与 HGM/DGM 对齐)。
- Polyglot-60 / Polyglot-225:多语言编程练习(6 种语言),60 题进化子集 + 225 题完整集。Polyglot 是检验"工作流级通用改进"的关键——因为多语言任务不能靠 Python 偏科过拟合。
- SWE-bench Pro / Multilingual:用于零样本迁移测试,看进化出的脚手架会不会过拟合训练分布。
骨干 LLM:主要用 Qwen3.6-35B-A3B(开源小模型,约 35B 参数);迁移实验用 DeepSeek-V4-Flash / Pro。
基线:
- Initial:未经进化的初始 Agent(起点)。
- DGM(Zhang 2026a):均匀分配预算的开放式进化。
- HGM(Wang 2026):自适应预算 + 仅用 $\Phi_{\text{CM}}$,是 MGM 的直接前序和最强基线。
5.3 RQ1:主实验——性能与效率(Table 1)
| 指标 | SWE-bench Verified-60 | Polyglot-60 | 平均 |
|---|---|---|---|
| Initial | 68.3% | 50.8% | 59.6% |
| HGM | 73.3%(+5.0) | 77.9%(+27.1) | 75.6%(+16.0) |
| MGM | 78.3%(+10.0) | 93.2%(+42.4) | 85.8%(+26.2) |
| 相对初始提升 | MGM ↑14.6% | MGM ↑83.5% | MGM ↑44.0% |
| 墙钟时间(HGM / MGM) | 93.02h / 96.11h | 44.20h / 40.14h | 68.61h / 68.12h |
结论:
- Polyglot 上 MGM 把 50.8% 拉到 93.2%(+42.4 个百分点,相对提升 83.5%);HGM 只到 77.9%。
- SWE-bench Verified 上 MGM 78.3% vs HGM 73.3%,优势 +5 个百分点。
- 时间成本几乎一致——MGM 没有靠堆算力,Figure 5.1 显示 token 消耗也在同一数量级。
这个实验为什么有证明力:起点、预算、骨干、硬件全控住,唯一变量是算子。MGM 在两个差异很大的基准(Python 真实仓库 vs 多语言练习)上都赢了,且 Polyglot 这种"最难靠偏科取巧"的基准上赢得最猛(+42.4)——这强力支撑了"比较证据能发现通用工作流级改进"的主张。
5.4 超越 GPT-5:完整 Polyglot-225
| 模型 / Agent | 参数量 | Polyglot-225 |
|---|---|---|
| Qwen3.6-35B-A3B(初始) | ~35B | 50.8% |
| Qwen3.6 + MGM 进化 | ~35B | 93.3% |
| GPT-5(闭源,参考) | ~4,100B(估) | 被 MGM 超越 |
| MGM(Qwen) 脚手架 → 迁移到 DeepSeek-V4-Pro | — | 96.9% |
最关键的数字:仅靠进化脚手架,35B 的 Qwen 在 Polyglot 上达到 93.3%,超越闭源 GPT-5,参数量约为其 1/117。这不是靠更大的模型,而是靠更优的工作流——直接证明了"脚手架级进化"这条路线的可扩展性。
5.5 RQ2:泛化实验
5.5.1 跨基准迁移(Table 2)
设置:在 Polyglot-60 上进化的脚手架,零样本迁移到 SWE-bench Pro 和 SWE-bench Multilingual。
| 指标 | SWE-bench Pro | SWE-bench Multilingual | 平均 |
|---|---|---|---|
| Initial | 16.7% | 41.7% | 29.2% |
| HGM | 13.3%(−3.4) | 43.3%(+1.6) | 28.3%(−0.9) |
| MGM | 26.7%(+10.0) | 55.0%(+13.3) | 40.9%(+11.7) |
| 相对初始 | MGM ↑59.9% | MGM ↑31.9% | MGM ↑40.1% |
关键发现:HGM 在 SWE-bench Pro 上出现负迁移(−3.4,相对下降 20.4%)——说明 HGM 进化的脚手架在训练分布上过拟合了。而 MGM 在两个目标基准上都实现了正向迁移,平均相对提升 40.1%。
这个对比的证明力极强:它直接回答了"MGM 是真的学到了通用工作流,还是只是刷题刷得多"。答案很清楚——比较证据让 MGM 学到的是跨基准可迁移的改进,而单轨迹基线学到的部分是任务特定的补丁。
5.5.2 跨模型迁移(Table 3)
设置:在 SWE-bench Verified-60 上用 Qwen3.6 进化的脚手架,冻结后替换骨干为 DeepSeek-V4-Flash / Pro。
| 骨干 | Initial | HGM | MGM |
|---|---|---|---|
| Qwen3.6-35B-A3B(原始) | 68.3% | 73.3%(+5.0) | 78.3%(+10.0) |
| DeepSeek-V4-Flash(迁移) | 50.0% | 60.0%(+10.0) | 66.7%(+16.7) |
| DeepSeek-V4-Pro(迁移) | 45.0% | 70.0%(+25.0) | 75.0%(+30.0) |
| DeepSeek 平均相对提升 | — | ↑36.8% | ↑49.1% |
结论:MGM 进化的脚手架不绑定特定模型,迁移到完全不同的 DeepSeek 系列后仍然保持对 HGM 的优势。而且迁移到更强的 DeepSeek-V4-Pro 后,在完整 Polyglot-225 上达到 96.9%——这揭示了一条实用的工程路线:在小/便宜模型上进化脚手架,再部署到大/强模型上。
5.6 RQ3:消融实验(Polyglot-60)
| 变体 | 准确率 | 相对完整 MGM 损失 |
|---|---|---|
| 初始 Agent | 50.8% | — |
| 完整 MGM | 93.2% | — |
| MGM w/o $\Phi_{\text{RM}}$ | 79.7% | −13.5 |
| MGM w/o $\Phi_{\text{CH}}$ | 74.6% | −18.6 |
| HGM(仅 $\Phi_{\text{CM}}$) | 77.9% | −15.3 |
关键发现:
- 去掉 $\Phi_{\text{CH}}$(跨谱系杂交)损失最大(−18.6)——这是 MGM 最重要的创新,跨谱系比较对有效自改进最关键。
- 去掉 $\Phi_{\text{RM}}$ 损失 −13.5,说明跨任务比较也独立贡献显著。
- 注意"HGM(仅 $\Phi_{\text{CM}}$)77.9%“反而比"MGM w/o $\Phi_{\text{CH}}$ 74.6%“还高——这不是矛盾,因为去掉 $\Phi_{\text{CH}}$ 后整个算子选择权重会失衡,导致搜索质量下降。这进一步说明三个算子是协同设计的。
5.7 理论与模拟证据(§4)
论文不止于经验结果,还给了形式化证明 + 蒙特卡洛模拟:
命题 1(收敛性):在加性适应度景观模型下,只要比较证据有效:
$$p_f^{\text{RM}} > p_f^{\text{CM}}, \quad p_f^{\text{CH}} > p_f^{\text{CM}}$$即两种新算子的有效修复概率严格高于单轨迹基线。
蒙特卡洛模拟验证:通过参数 $\rho = p_f^{\text{RM}} / p_f^{\text{CM}}$ 控制比较证据的诊断优势($\rho=1$ 为零设置),跑大量种子:
- $\rho=1$ 时 MGM 退化为类似 HGM——确认模拟增益直接来自诊断质量,不是别的副作用。
- $\rho>1$ 时 MGM 在所有 $d_0$(初始难度)设置下都更快收敛、最终性能更高、跨种子分布更紧凑。
这部分的双重意义:(1)理论证明"比较证据更强"不是经验巧合而是结构必然;(2)在剥离一切实现细节的纯模型里验证,排除了"是不是某个 LLM 厉害"这种混淆因素。
六、效果优势的根源解释
为什么 MGM 在所有指标上都赢?答案不是"因为它多了两个算子”——这是表面归因。我们要追到第一性原理:比较证据到底改变了自我修改过程的什么本质?
6.1 baseline(HGM/$\Phi_{\text{CM}}$)的根本局限
HGM 的自我修改 $\Phi_{\text{CM}}$ 做的事是:拿一条失败轨迹,让编辑器猜哪里错了并改掉。
用第三部分的诊断修复类比,这相当于:候选缺陷集 $C_{\text{CM}} = R_{\tau_t}$——这次失败涉及的所有能力位点。问题是,一次失败可能涉及"定位、推理、编辑、验证"等很多环节,编辑器不知道真正的错误在哪个环节。它只能在很大的 $C$ 上盲猜,所以真错误位点的密度低,修复概率 $p_f^{\text{CM}} = s \cdot \Pr[\ell \in M(a)]$ 就低。
这就是单轨迹的根本瓶颈:证据粒度太粗,诊断不确定性大。再强的编辑器,喂给它噪声证据也改不对——论文在 Limitations 里特别强调:“比较证据仅在骨干模型能从轨迹中诊断失败机制时有效”,说明诊断质量是编辑器能力的乘性瓶颈。
6.2 MGM 两种新算子的机制因果
6.2.1 $\Phi_{\text{RM}}$ 的根源:候选集压缩
机制差异:$\Phi_{\text{RM}}$ 比较同一基因型在两个任务上的轨迹。
因果链:
- 如果同一个 Agent 在任务 $\tau_t$ 和 $\tau_r$ 上都失败于同一个循环性的脚手架缺陷(比如两次都漏了类型检查),
- 那么这个缺陷的位点必然在两个任务的需求子集的交集里:$C_{\text{RM}} = R_{\tau_t} \cap R_{\tau_r}$。
- 两个独立任务的位点子集期望交集远小于单个子集——所以 $C_{\text{RM}}$ 在期望上比 $C_{\text{CM}}$ 小得多。
- 候选集变小、真错误密度变高 → 修复概率 $p_f^{\text{RM}}$ 严格上升 → 收敛更快。
关键洞察:$\Phi_{\text{RM}}$ 并没有让编辑器变聪明,而是通过"两次失败取交集"过滤掉了任务特定的偶然因素,把编辑器的注意力强制聚焦到"跨任务反复出现"的基因型共性缺陷上。这是信息流的净化——同样的编辑器,喂更干净的证据。
6.2.2 $\Phi_{\text{CH}}$ 的根源:对照控制
机制差异:$\Phi_{\text{CH}}$ 比较两个不同基因型在同一任务上的轨迹。
因果链(情形 A:参考 Agent 成功,目标失败):
- 同一任务 $\tau_t$,两个 Agent 面对完全相同的"环境考验”,
- $a_r$ 成功而 $a_t$ 失败 → 失败的根因必然在两个基因型的差异里,而不在任务本身。
- 参考轨迹扮演了科学实验里的"对照组"——把"任务本身带来的固有困难"从"基因型差异带来的可修复缺陷"里分离出来。
- 编辑器被告知"另一个 Agent 是这么解决的"→ 它能直接从 $R_\tau$ 里过滤掉非因果的任务相关位点,$C_{\text{CH}}$ 更精确指向真正的可修复缺陷。
关键洞察:这是把孟德尔受控实验的设计翻译到了代码进化里——固定环境(任务)比较基因型,是分离因果效应的金标准。消融实验里 $\Phi_{\text{CH}}$ 贡献最大(−18.6)正是因为它提供的对照信号最干净。
6.3 完整因果链总结
| 方法差异 | 机制变化 | 缓解的瓶颈 | 体现的指标提升 |
|---|---|---|---|
| $\Phi_{\text{CM}}$ 只有一条轨迹 | 候选集 $C=R_{\tau_t}$ 大、噪声高 | — | baseline |
| $\Phi_{\text{RM}}$ 同基因型跨任务 | $C=R_{\tau_t}\cap R_{\tau_r}$ 交集压缩 | 任务偶然因素干扰 | Polyglot +13.5(消融) |
| $\Phi_{\text{CH}}$ 跨基因型同任务 | 对照控制过滤非因果位点 | 任务固有困难与可修复缺陷混叠 | Polyglot +18.6(消融) |
| 失败池加权采样 | 制造更多跨谱系任务重叠 | $\Phi_{\text{CH}}$ 触发条件稀疏 | 间接放大 $\Phi_{\text{CH}}$ 收益 |
6.4 反事实验证
论文的消融实验本身就是一个反事实验证:
- 去掉 $\Phi_{\text{RM}}$ → 性能掉到 79.7%(−13.5)
- 去掉 $\Phi_{\text{CH}}$ → 性能掉到 74.6%(−18.6)
- 两者都去掉(= HGM)→ 77.9%
结构上必然更好:这不是"调参调得好",而是"证据净化 → 修复概率提升 → 收敛加快“这条数学上可证明的因果链的必然结果。蒙特卡洛模拟在 $\rho=1$(关掉诊断优势)时 MGM 退化为 HGM,反证了所有增益都来自诊断质量的提升。
6.5 局限性的诚实交代
论文在 Limitations 里诚实说明了几个结构性的边界条件:
- 冷启动退化:档案小、任务重叠稀疏、信息性失败未积累时,MGM 缺乏比较证据,会退化到接近 HGM 的行为——这是该方法结构性无法绕过的起步阶段。
- 编辑质量不保证:MGM 改进的是输入证据,但"证据好 ≠ 编辑一定对”。骨干模型自身推理能力弱时,再干净的证据也救不回来。
- 形式分析的简化:加性适应度模型是理想化代理,真实 Agent 脚手架的位点之间有复杂耦合,不能被完全捕捉。
这些限制恰恰反向印证了根源解释:MGM 的全部魔法都在"诊断证据的净化"上,一旦证据无法被净化(冷启动)或编辑器无法利用净化后的证据(弱模型),优势就会消退。
七、必要知识反推
假设找一个完全没有相关知识的人来做这件工作,他最少必须掌握什么?
7.1 领域知识层(研究对象的基本运作机制)
- LLM Agent 的脚手架结构:必须理解 LLM 只是 token 生成器,真正让它成为"能干活的 Agent"的是外层的 prompt / 工具 / 工作流。不理解这点,就不知道"自改进"到底改的是什么。
- 编程基准的评估机制:SWE-bench、Polyglot 这类基准是基于真实仓库/多语言练习的执行型评估(跑测试看通过率),不是文本相似度。不理解这点,就设计不出有证明力的实验。
- 进化计算与树搜索:档案树、Thompson 采样、Beta 后验、探索-利用权衡——这是 HGM/MGM 搜索框架的数学语言。不理解 Thompson 采样,就无法理解预算分配和 clade 级聚合。
7.2 方法论知识层(研究脉络与优化理论)
- Gödel Machine 的历史与近似路线:必须知道 Schmidhuber 2003 的理论原版,以及 DGM / HGM 的近似思路。不读懂这条线,就识别不出"自我修改算子本身是被忽视的瓶颈"这个机会。
- 演化遗传学的核心概念:基因型 vs 表型、反应规范(Woltereck 1909)、孟德尔受控比较、谱系(lineage/clade)。这是论文命名的来源,也是 $\Phi_{\text{RM}}$ 和 $\Phi_{\text{CH}}$ 设计灵感的直接来源——不懂这些就不会想到"比较证据"这个维度。
- 诊断推理与因果推断:对照实验、控制变量、候选集压缩、有效修复概率——这套数学语言让作者能把"比较证据更强"翻译成可证明的命题。没有这套语言,命题 1 写不出来。
7.3 工程知识层(系统实现与评估)
- 沙盒化与安全边界:自修改 Agent 必须在隔离容器、只读文件系统、无网络访问下运行——论文 Ethical Considerations 专门讨论。不懂安全边界,无法合规地做这类实验。
- 大规模 Agent 评估的工程:8× H100、200 次 φ-评估、跨模型迁移的脚手架冻结与替换——这些工程细节决定了实验能不能跑出来。
7.4 知识融合的关键节点
最有创造性的是三个节点的知识融合:
- 节点 1:遗传学 × Agent 自改进。把"基因型/表型/反应规范/孟德尔杂交"这一整套生物学方法论,映射到"Agent 脚手架/任务轨迹/跨任务模式/跨谱系对比"。这个映射让作者从生物学借来了"受控比较"这套成熟的方法论工具,直接转化为两个新算子。
- 节点 2:诊断推理 × 形式化证明。把"比较证据让编辑更准"这个直觉,用"候选缺陷集压缩 → 有效修复概率提升"这套数学严格证明出来。这让论文从"经验性改进"升级为"理论可证明的改进"。
- 节点 3:树搜索 × 多算子协同。把 HGM 的单一算子搜索扩展为"合格算子集 + 加权采样"的多算子搜索,并配套失败池机制主动制造比较机会。这是系统工程层面的融合——三个算子不是简单叠加,而是通过共享档案和失败池协同放大彼此的价值。
八、通用性灵感
从这篇论文里能提取出几条可推广到其他领域的普适性原理:
灵感 1:档案里未被利用的"比较信号"往往比"排行榜信号"更值钱
核心思想:DGM/HGM 把档案当成"谁是当前最好的 Agent"的排行榜,只用它来选种子。但档案里真正值钱的是比较结构——同一对象在不同条件下的行为差异、不同对象在同一条件下的行为差异。排行榜只用了档案 10% 的信息,比较信号才是另外 90%。
论文证据:MGM 零额外评估成本(所有证据都来自已有轨迹),仅靠"用档案做比较而不是做排行榜",就把 Polyglot 从 77.9%(HGM)拉到 93.2%(MGM)——这是纯信息利用方式改变带来的 +15.3 个百分点。
推广场景:
- RAG 系统:检索到的文档档案除了"按相关性排序喂给 LLM",还可以做"跨文档对比"来提炼更干净的答案证据。
- 推荐系统的用户历史:用户行为档案除了"算 CTR 排序",还可以做"同一用户跨场景的行为模式比较"和"不同用户在同一场景的对比"来诊断偏好。
- 代码 review 系统:代码仓库的提交历史除了"找最近 bug",还可以做"同一模块跨 commit 的回归模式"和"不同模块类似改动的对比"。
- 科研文献管理:已读论文档案除了"按引用数排序",还可以做"同一作者跨论文的思想演变"和"不同作者在同一问题上的思路对比"。
灵感 2:受控比较是分离因果效应的金标准,可跨域迁移
核心思想:孟德尔遗传学的精髓是"固定一个变量、变化另一个变量"来分离遗传效应。这个方法论可以翻译到任何需要"定位真因"的场景:比较的结构(同对象跨条件 vs 跨对象同条件)比比较本身更重要。
论文证据:$\Phi_{\text{RM}}$(同基因型跨任务)和 $\Phi_{\text{CH}}$(跨基因型同任务)是两种正交的比较结构,前者分离共性缺陷、后者分离可迁移特征。两者缺一不可(消融显示各自独立贡献 −13.5 和 −18.6)。
推广场景:
- A/B 测试设计:除了经典的"同用户群跨版本",还可以引入"跨用户群同版本"来分离用户群体效应。
- 模型 debugging:同一模型跨输入的失败模式 + 不同模型同一输入的失败对比,能更快定位是模型缺陷还是输入固有难度。
- 教学系统:同一学生跨科目的错题模式(找能力短板)+ 不同学生同一题目的错法对比(找题目陷阱)。
- 医学诊断:同一病人跨时间的症状演变 + 不同病人同一疾病的表现对比,是鉴别诊断的核心方法论。
灵感 3:诊断质量是乘性瓶颈——净化输入比增强引擎更划算
核心思想:自我修改(或任何"基于证据的决策")的效果 = 编辑器能力 × 证据质量。当编辑器能力固定时,净化证据的边际收益远大于堆算力。MGM 不增强 LLM 编辑器,只净化喂给它的证据,就获得了巨大提升。
论文证据:MGM 和 HGM 用完全相同的骨干 LLM、相同的 token 预算、相同的墙钟时间,唯一差别是"喂给编辑器的证据更干净"——结果 Polyglot 上 +15.3 个百分点的纯收益。论文 Limitations 里"比较证据仅在骨干模型能从轨迹中诊断失败机制时有效"这句话反证了:诊断质量是乘性瓶颈,不是加性瓶颈。
推广场景:
- LLM 工具调用:与其让 LLM 自己从海量噪声里找信息,不如先用检索/过滤/对比净化输入——同样的 LLM 效果能翻倍。
- 数据标注:标注员准确率的上限是数据质量决定的,先清洗数据再标注比训练更强的标注员更划算。
- 人类决策:决策者的判断力是固定的,提升决策质量最有效的方式是改善信息净化环节(对比、过滤、去噪)而不是换决策者。
- 代码生成:给 LLM 更干净的上下文(精确检索 + 对比相关代码段)比换更大的代码模型更高效。
灵感 4:在便宜模型上进化,在强模型上部署——可分离的优化路线
核心思想:脚手架进化与模型能力是可分离的两个维度。脚手架(外层工作流)的优化可以冻结后迁移到任何骨干模型上。这揭示了一条实用路线:在小型/便宜模型上做昂贵的进化搜索,把搜到的好脚手架直接用在大型/强模型上。
论文证据:MGM 在 Qwen3.6-35B 上进化的脚手架,迁移到 DeepSeek-V4-Pro 后在完整 Polyglot-225 上达到 96.9%——比原始 Qwen 进化的 93.3% 还高 3.6 个百分点。迁移到 DeepSeek-V4-Flash(更小)也有 66.7%(vs HGM 60.0%)。
推广场景:
- Prompt 工程:在小模型上做大规模 prompt 搜索(便宜),把最优 prompt 部署到大模型上(强)。
- Agent 工作流设计:在便宜模型上搜索工具组合/调用顺序/记忆策略,部署到生产环境的强模型上。
- 超参数优化:在小规模/便宜配置上做 HPO,迁移到大规模训练。
- 机器人技能学习:在仿真/便宜硬件上学技能参数,部署到昂贵的真机上。
灵感 5:冷启动退化的诚实承认比掩盖更可信
核心思想:论文在 Limitations 里诚实承认"档案小、任务重叠稀疏时 MGM 会退化到接近 HGM"——这种对方法边界条件的诚实刻画反而让可信度大增。一个能清楚说明"什么时候不 work"的方法,比一个号称"到处都 work"的方法更值得信任。
论文证据:蒙特卡洛模拟在 $\rho=1$(关掉诊断优势)时让 MGM 退化为 HGM,反证了所有增益都来自诊断质量——这种"自己证伪自己"的实验设计是科研诚信的典范。
推广场景:
- 方法论文写作:主动设计"关掉自己核心机制"的零设置实验,反证增益来源。
- 产品 A/B 测试报告:主动说明"在什么条件下效果会消失",比只报喜更有说服力。
- 投资决策:清楚知道"什么情况下策略会失效"比"预期收益高"更重要。
附录:关键公式速查
| 编号 | 公式 | 含义 |
|---|---|---|
| (1) | $U(a) = \mathbb{E}_{\tau \sim \mathcal{D}}[r(a, \tau)]$ | Agent 期望效用 |
| (2) | $a' \leftarrow \Phi(a, E)$ | 自我修改过程 |
| (5) | $\pi_a \sim \text{Beta}(\kappa(1+n_s), \kappa(1+n_f))$ | Thompson 采样(节点级) |
| (18) | $\Pr(\sigma\|i) = \lambda_\sigma / \sum_{\sigma' \in \Omega_i} \lambda_{\sigma'}$ | 算子加权采样 |
| (23) | $P(r=1\|d) = ((L-d)/L)^k$ | 单任务成功率 |
| (24) | $p_f^\sigma = s \cdot \Pr_{\ell \sim C_\sigma(E)}[\ell \in M(a)]$ | 有效修复概率 |
| (25) | $p_f^{\text{RM}} > p_f^{\text{CM}},\ p_f^{\text{CH}} > p_f^{\text{CM}}$ | 命题 1:比较算子严格更优 |
一句话总结:MGM 把孟德尔遗传学"受控比较分离遗传效应"的方法论,翻译成了自改进 Agent 的两个新算子(跨任务比较 + 跨谱系比较),在零额外评估成本的前提下,把档案里被浪费的比较信号变成了更干净的诊断证据,从而让 35B 小模型以 1/117 的参数量超越闭源 GPT-5——并从理论和模拟双重证明了"比较证据必然带来更快收敛"这件事不是巧合,而是结构必然。