自改进 Coding Agent 的故事已经讲了好几轮。Gödel Machine 的理论框架在 2003 年就提出了,但直到 LLM 和 coding agent 成熟,才有了真正能"自己改自己代码"的系统。Robeyns 等人证明了一个 coding agent 可以自主重构代码库、提升性能;Zhang 等人的 DGM 把这个过程扩展为开放式进化,维护一个不断膨胀的 Agent 变体档案;Wang 等人的 HGM 进一步用 Thompson 采样优化档案扩展策略。
但所有这些工作的焦点都在档案管理和采样策略上,自修改过程本身始终是同一个模式:选一个 Agent,看它在某个任务上的失败轨迹,让编辑器改代码。
问题来了:一次失败轨迹能告诉你什么?你只知道"在任务 τ 上失败了",但不知道是定位错了、编辑策略不对、环境理解有偏差、还是验证流程有 bug。候选缺陷集太大,编辑器像在黑暗中瞄准。
核心洞见:自改进 Agent 的瓶颈不在算法复杂度,而在诊断证据质量。单条轨迹的诊断空间太大,比较式证据能压缩它。
MGM 的灵感来自孟德尔遗传学的核心方法论:通过控制性比较分离可遗传效应。如果你想知道某个基因变异是否真正有用,你不能只看一个个体在一个环境下的表现——你要在多个环境下观察同一个个体的反应,或者在不同个体之间做同环境的对比。
克隆变异 ΦCM是标准操作——看一条失败轨迹就改。这是 HGM/DGM 已经有的,MGM 保留它作为兜底,确保档案还很小时进化不会卡住。
反应规范变异 ΦRM是第一层升级。当同一个 Agent 已经在多个任务上跑了轨迹后,MGM 给编辑器看多条轨迹,让它在比较中识别跨任务的共性问题。如果一个 Agent 在 localization 任务和 editing 任务上犯的是同一种错误模式,那大概率是代码层面的系统性缺陷,不是任务特定的偶然。
跨谱系杂交 ΦCH是最有信息量的操作。当两个不同谱系的 Agent 都跑过同一个任务时,MGM 把它们的轨迹放在一起比较。如果 A 失败了而 B 成功了,差异本身就是修复信号——B 的轨迹充当了一个对比控制组,帮助过滤掉非因果的任务相关因素。
关键设计:杂交不是直接把 A 的代码片段拼到 B 里。而是让 B 自己去看 A 的轨迹,提取可迁移的行为特征,然后适配到自己的代码库。这保证了修改的连贯性,也避免了基因级"拼接"可能带来的兼容性问题。
论文提出了一个加性适应度景观模型来严格分析为什么比较式证据更好。每个 Agent 的基因型是 L 个二值基因座的向量,一个 oracle 基因型代表最优程序。每个任务检查基因型的一个子集,全部正确才算通过。
核心逻辑链条:
单轨迹编辑只知道自己在任务 τt 上失败了,候选缺陷集是 Rτt(该任务检查的所有基因座)。
反应规范变异知道自己还在任务 τr 上失败了,候选缺陷集压缩到 Rτt ∩ Rτr——交集更小,命中真正缺陷的概率更高。
跨谱系杂交看的是同任务下自己失败 vs 对方成功。对方成功的轨迹起到对比控制作用,进一步过滤掉"虽然相关但不是原因"的基因座。
Proposition 1 证明:在合理假设下,ΦRM 和 ΦCH 的有效修复概率严格大于 ΦCM。这不依赖于编辑器本身变强了,而是诊断空间被压缩了——编辑器在更小、更干净的候选集上搜索。
比较式证据不是让编辑器更聪明,而是让它搜索更小更精准的候选缺陷集。本质是信息论,不是算法。
理论需要实验检验。论文用蒙特卡洛模拟在受控环境下验证 Proposition 1。引入一个"诊断优势比" ρ = pRMf / pCMf,控制比较算子相对单轨迹的修复概率提升。
结果清晰:当 ρ > 1(比较式证据确实提供诊断优势),MGM 在所有初始难度设定下都严格优于 DGM 和 HGM。当 ρ = 1(无额外诊断优势),MGM 退化为与 HGM 相当——这说明优势确实来自比较证据,不是来自算法框架的其他部分。
理论说得通,实战如何?论文在两个真实编程基准上评估 MGM,使用 Qwen3.6-35B-A3B 作为骨干 LLM,固定 200 次 φ-评估 + 24 次 Φ-扩展的预算。
| 基准 | 初始 | HGM | MGM | MGM 提升 |
|---|---|---|---|---|
| SWE-bench Verified-60 | 68.3% | 73.3% | 78.3% | +10.0pp |
| Polyglot-60 | 50.8% | 77.9% | 93.2% | +42.4pp |
| 平均 | 59.6% | 75.6% | 85.8% | +26.2pp |
Polyglot 上的 +42.4pp 提升令人印象深刻。注意两个方法用的是完全相同的评估和扩展次数,性能差异只能归因于证据质量的不同。Token 消耗分析也确认,MGM 的各种操作与 HGM 的成本在同一量级,增益不是靠多花钱堆出来的。
自改进 Agent 最怕的是过拟合到进化用的基准。MGM 的泛化实验给出了令人信服的证据。
| 迁移设置 | 初始 | HGM | MGM |
|---|---|---|---|
| Polyglot → SWE-bench Pro | 16.7% | 13.3% | 26.7% |
| Polyglot → SWE-bench Multilingual | 41.7% | 43.3% | 55.0% |
HGM 在 SWE-bench Pro 上反而下降了(-3.4pp),说明它过拟合了 Polyglot 的特定模式。MGM 在两个迁移基准上都实现了正向迁移——这暗示比较式证据帮助发现的是真正的工作流级改进,不是针对特定基准的窄修复。
| 骨干模型 | 初始 | HGM scaffold | MGM scaffold |
|---|---|---|---|
| Qwen3.6-35B-A3B(原始) | 68.3% | 73.3% | 78.3% |
| DeepSeek-V4-Flash | 50.0% | 60.0% | 66.7% |
| DeepSeek-V4-Pro | 45.0% | 70.0% | 75.0% |
跨模型迁移结果同样稳健。MGM 进化的 scaffold 换上完全不同的骨干后仍然保持优势,平均 70.8% vs HGM 的 65.0%。
| 变体 | Polyglot-60 | 提升幅度 |
|---|---|---|
| 初始 Agent | 50.8% | — |
| MGM 完整版 | 93.2% | +83.5% |
| 去掉 ΦRM | 79.7% | +56.9% |
| 去掉 ΦCH | 74.6% | +46.9% |
ΦCH(跨谱系杂交)的贡献最大——去掉它后性能下降最多。ΦRM(反应规范变异)也贡献显著。两者都去掉后性能从 93.2% 降到 74.6%,接近 HGM 的 77.9%。训练时间几乎相同,确认增益不是来自额外计算。
这篇论文的价值可以用一句话总结:它重新定义了自改进 Agent 的瓶颈。之前的工作在比谁的管理策略更好、谁的多臂老虎机采样更优,MGM 说——这些都不是核心问题,核心问题是每次自修改时给编辑器的证据不够好。
孟德尔遗传学的类比不仅有趣,而且精确。控制性比较分离可遗传效应——这正是比较式自修改在做的:用多任务、多谱系的对比,从噪音中分离出真正可继承的改进。
对工程实践的启示很直接:任何维护 Agent 变体档案的系统,都可以在不增加评估预算的情况下,通过比较式证据提升自修改质量。这个思路不限于 coding agent,但 coding agent 因为有可执行的代码和清晰的 pass/fail 信号,是最天然的落地场景。
进化实验仍然昂贵(8×H100,40-96 小时 CPU 时间),限制了独立种子数和超参扫描范围。MGM 依赖档案积累——冷启动期比较证据稀少,优势不明显。编辑器本身还是 LLM,高质量证据不等于高质量修改,失败的编辑仍会浪费预算。理论分析基于加性适应度模型,不能完全捕捉真实 Agent scaffold 的复杂性。