先讲一个故事
教学性场景(非论文记载):想象一支自动程序实验室,连续 100 轮让 coding
model
修改一个算法。排行榜上的最佳分数提高了,研究者却不知道:它真的发明了新结构,还是仅把参数调好?它是否反复加回此前删掉的代码?另一个研究者用原
prompt 重跑,能否得到同一突破?
本文把问题从“最后分数多高”转成“搜索轨迹究竟改变了什么”。关键转折不是再设计一个更聪明的进化器,而是把候选程序、父子关系、提示词、评估结果等完整保存,再对轨迹做重放与受控干预。
故事与技术如何对应
-
实验室日志对应 EvoTrace:121
次运行的程序、分数、prompt/context、parent-child graph 与 evaluator
metadata。
-
“新结构还是调参数”对应 EvoReplay 的 Bayesian
optimization(BO)对照。
-
“是否反复改回去”对应 lineage 内新增行与已删除行的逐字匹配;重跑同一
prompt 对应 breakthrough replay。
故事人物与情境为教学类比;数据规模、工具和结果为论文报告。
先给结论
论文给出的核心贡献是可重放的轨迹分析设施,而不是新一代得分更高的
agent。对所收集的 121 runs,约 30% 新增代码行是同一 lineage
早先删除行的逐字重引入;36 个突破事件的同 prompt
重放中位数能复得原分数的 0.76
倍,却几乎不复现原始字节级程序;数学任务中,24 次 BO 在 36
个中间程序上有 22 个优于原程序,并在 15 个可比对象中有 13
个达到/超过进化终分。结论限于这些任务、框架与运行条件,不能泛化为所有
coding agents。
外部边界:先前工作已证明
LLM+进化搜索可产出有效结果;本文补上的可检验问题是搜索过程机制,而非“进化搜索有效”本身(详见
Reference/Evidence 与内部 grounding anchor)。
研究动机
最终 evaluator score
把不同因果来源混在一起:算法结构创新、既有策略参数调优、模型内知识重组、以及对
evaluator 的过拟合。只保留 score-by-iteration
会丢失区分它们所需的证据。论文因此将 evolutionary coding agent
操作性定义为:任务规格与可执行评估器、候选程序种群/档案、产生变异/重组/精炼的一个或多个
LLM,以及选择未来候选和上下文的搜索程序。
问题可概括为:agent
实际演化了什么?哪些变化推动分数,哪些是循环、不可复现或泛化失败?
数学表示及建模
固定程序结构 \(s\),其可调参数为 \(\theta\in\Theta_s\),则程序写为
\(p=s(\theta)\),任务评估器给出 \(f(p)\)。从中间程序结构 \(s_0\)
出发的调参上限定义为:
\[f^\star_{BO}(s_0)=\max_{\theta} f(s_0(\theta)),\qquad
\Delta(s_0)=f^\star_{evo}-f^\star_{BO}(s_0).\]
这里的 \(\Delta\) 是对该程序暴露参数空间、搜索预算和 evaluator
的相对差距,不是“结构创新”的无偏因果估计。实际 BO 用一次 LLM
找数值旋钮、自动重写为参数区块,再用 24 次 evaluator 调用(8 random +
16 BO acquisition)。
循环指标:对每个 parent-child diff,统计新增行中逐字等于同 lineage
先前删除行的比例。该指标是字面重复,不等于语义上无效,也不证明模型遗忘。
算法流程 / 方法
-
采集与规范化:从 OpenEvolve、GEPA、EvoX、ShinkaEvolve
汇总轨迹为统一 JSONL,保留源码、评分、上下文、边及环境。
-
轨迹静态分析:跨运行计算 lineage、program size、数值常量等。
-
编辑标签:先人工归纳九类 edit,再以 LLM-as-judge 标注所有
parent-child diffs,抽样 200 项盲法人工复标验证。
-
确定性循环检测:追踪 lineage 的删除行,识别后续
byte-identical re-introduction。
-
突破重放:36 个 best-so-far 事件各用原 prompt/context 重采样
10 次;比较可解析、通过评估、字节一致、分数恢复。
-
结构/参数对照:选取 36 个中间程序,提取常数并
BO,比较原分数与该 run 进化最终最佳。
九类编辑:Bug fix、External dependency、Architectural
change、Composition、Local
refinement、Pruning、Refactor、Efficiency、Hyperparameter
tuning;通常多标签而非互斥。
实验设计
-
范围:16 个任务:6 个 Python 数学发现任务,10 个 ALE-bench
Lite C++ heuristic programming 问题;4 框架,5 个生成模型,100 次
search iterations/run,共 121 runs、10,672 个 unique
programs、18,400 次 LLM calls。
-
框架:OpenEvolve(archive/MAP-Elites)、GEPA(reflective
prompt evolution)、EvoX(meta-evolution)、ShinkaEvolve(bandit
search)。模型包括
deepseek-reasoner、claude-sonnet-4-6、claude-haiku-4-5、gemini-3-flash-preview、deepseek-chat。
-
评估:数学任务用各自 evaluator;ALE 公共分数与 AtCoder
private test 分开检查泛化。重放是 36 个事件 × 10 次采样;BO 是 36
个中间程序 × 24 次调用。
-
标注可信度:200 个 edit 的 judge/人工一致性 macro
κ=0.77、micro-F1=0.90、exact match=74.5%。
该集合并非随机抽样的全部 agent 生态;不同 framework/task 的 trace
可观测性与 evaluator 条件也不完全相同。
实验结果
| 诊断 |
论文观察 |
正确解读 |
| 常见 vs. 有效编辑 |
Hyperparameter tuning 最常见;单 edit 正向分数 odds
ratio:External dependency 3.58(n=104)、Efficiency
1.61(n=464)、Architectural change 1.55(n=1,075)。
|
频率与单次效用不等价;编辑多标签,关联不等于因果。 |
| 循环 |
新增行中位约 30% 是早先删除行的逐字重引入;118/121 runs
的比率随迭代单调增长。
|
存在普遍的字面 churn;不是每行都无用。 |
| 重放 |
36 breakthrough 的 parse/eval 中位成功率均 1.00,exact-match
0.00,Replay/Original 中位 0.76。
|
改善可由同 prompt 产生不同程序部分复现;不是确定性程序复刻。
|
| 参数 BO |
36 个目标中 22 个超过原中间程序;与进化 final-best 比,15
个可比项中 13 个持平或更好,中位差 +0.025。
|
样本显示数学任务的部分晚期收益可由参数搜索取得,不能据此抹去结构发现价值。
|
| ALE 泛化 |
四个框架中两个至少在 30% scored problems 过拟合;同一 ahc024
上 OpenEvolve private +1606,而 ShinkaEvolve private
−1610(尽管 public 改善)。
|
public score 不足以作为泛化结论,且结果依框架而异。 |
Math runs 的最佳 lineage 深度中位数 6、ALE 为 4;best-so-far
通常较早出现,之后大量预算落在未进入最终最优 lineage 的分支。
我的评论
价值:把“分数进步”拆成可检验机制,是 benchmark
报分之后重要的测量层;开放 trace 与 replay
让研究者可以提出反事实问题。最扎实的结论是描述性统计与具体 replay/BO
对照。
边界:九类 edit 由 LLM judge 扩展到全量数据,κ/F1
显示可用但仍有错分;24 次 BO 的“tuning
ceiling”受参数提取、范围和预算约束;重放只测所选 36
个突破事件;跨多个系统仍不足以代表整个领域。私测 overfit
的分析也只覆盖论文给出的 run/problem 子集。
审稿判断:作为诊断数据/方法论文,其问题重要、证据具体且复现资源有潜力;我会要求更明确公开可复核的
trace 许可、judge 错误案例及 BO 参数边界。避免将“约 30%”解读为所有
coding agents 的普遍常数。
One More Thing
“可重放轨迹”让 coding agent
的评估对象从一条排行榜曲线扩展为可干预的搜索过程。下一步若要把相关诊断变成方法改进,关键实验应检验:向
agent 提供 lineage-aware
的删改记忆后,是否减少无益循环,同时不压制后来确有价值的回滚;需要在
held-out evaluator 和多任务上做随机对照,而非仅优化循环率。
Other Discussion Roles / 其他讨论角色
以下七个角色使用 MIT MAS.S60 课程原始
prompt,从不同责任位置审视同一篇论文。
Scientific Peer Reviewer
The paper has not been published yet and is currently submitted to a
top conference where you’ve been assigned as a peer reviewer.
Complete a full review of the paper answering all prompts of the
official review form of the top venue in this research area (e.g.,
NeurIPS). This includes recommending whether to accept or reject the
paper.
总结与贡献:提出 EvoTrace(121 runs/16 tasks/4
frameworks)及 EvoReplay,并报告 edit taxonomy、cycling、replay 与
BO 诊断。优点是问题重要、把终分分析推进到轨迹证据;范围覆盖数学与
heuristic programming。
方法与证据:trace 可重放是关键优势;200 项人工复标 macro
κ=.77、micro-F1=.90 支持标签可用。主要风险是 judge
误差、任务/模型覆盖有限、36 个 replay/BO
子样本与参数旋钮选择可能影响结论;多标签 edit 的 odds ratio
不能作因果解释。建议公开足够的逐项证据与失败案例并审慎限定外推。
影响/可复现:若 dataset/package 可直接获取,领域可复用其
schema 与诊断;本环境未能在线核验仓库内容或许可。建议:Weak Accept(置信度:中等),前提是数据与代码发布可验证且版本/指标定义清楚。
Archaeologist
This paper was found buried under ground in the desert. You’re an
archeologist who must determine where this paper sits in the context
of previous and subsequent work. Find and report on one older paper
cited within the current paper that substantially influenced the
current paper and one newer paper that cites this current paper.
前序影响:文章明确把 FunSearch
作为该范式的奠基实例引用;Nature 论文以 LLM
引导的进化程序搜索解决数学构造问题,提供“程序变异 +
可执行评价”的直接先例。链接:Nature 论文(本次外部抓取未成功,影响关系依据当前论文文本的引用与定位)。
后续引用:截至本页检索日,未能成功查询 arXiv/Semantic
Scholar 引用索引(DNS 故障),因此无法核验任何更新论文确实引用
2605.20086;不杜撰 newer
paper。边界是“本次无可核验证据”,不等于不存在。
Academic Researcher
You’re a researcher who is working on a new project in this area.
Propose an imaginary follow-up project not just based on the current
but only possible due to the existence and success of the current
paper.
设想项目:Lineage Memory Intervention Benchmark。本文成功将轨迹保存并显示约三成字面循环,才使“记忆是否能减循环但保留有益回滚”成为可实验问题。用原始
EvoTrace tasks
构造三臂随机实验:无记忆、仅记最近删除代码、按删除原因/后续分数检索的
lineage memory;固定模型预算与
evaluator。主要指标是循环率、held-out
score、有效回滚保留率、成本与多样性。预注册“循环下降且 held-out
不退化”判据,跨 framework 复验。此为新研究设想,非论文已验证结论。
Industry Practitioner
You work at a company or organization developing an application or
product of your choice (that has not already been suggested in a
prior session). Bring a convincing pitch for why you should be paid
to implement the method in the paper, and discuss at least one
positive and negative impact of this application.
产品提案(假想):企业代码优化流水线的 Evolution Trace
Inspector。向负责大型 C++ heuristic/性能代码的团队提供每次变异的可审计
provenance、重复编辑告警、held-out evaluator replay
和参数调优基线。付费价值是减少昂贵的盲目迭代并让工程师区分结构改进与参数变化;论文支持该痛点存在于其任务样本,但并未证明商业
ROI。
正面影响:更可解释的自动优化可节约工程实验预算。负面影响:若只优化可测的
public metric,可能加剧对 hidden test
的过拟合;自动生成代码的安全性、许可与维护负担不能由分数代替。上线前需
sandbox、人工审批、私有评测集和回滚审计。
Hacker
You’re a hacker who needs a demo of this paper ASAP. Implement a
small part or simplified version of the paper on a small dataset or
toy problem. Prepare to share the core code of the algorithm to the
class and demo your implementation. Do not simply download and run
an existing implementation – though you are welcome to use (and give
credit to) an existing implementation for “backbone” code.
可演示的简化版(算法路径,不声称运行过):给一个玩具整数函数的源码候选,每轮生成“修改常量/改一行”的
child,运行 evaluator,保存 parent、diff、score;维护
deleted_lines 集合并检测新增行是否已在本 lineage 删除;再对同一
prompt 重采样,比较是否复得高分而非相同源码。
for parent in population:
child = mutate(parent, prompt, model)
score = evaluate(child)
added, removed = unified_diff(parent.code, child.code)
cycling = added & lineage_deleted[parent.id]
trace.append({"parent": parent.id, "child": child, "score": score, "cycling": cycling})
lineage_deleted[child.id] = lineage_deleted[parent.id] | removed
这是原创教学伪代码,非复刻论文
package;没有下载或运行已有实现。真实 demo
需补充选择器、失败处理及同一 evaluator。
Private Investigator
You are a detective who needs to run a background check on one of
the paper’s authors. Where have they worked? What did they study?
What previous projects might have led to working on this one? What
motivated them to work on this project? Feel free to contact the
authors, but remember to be courteous, polite, and on-topic.
仅根据论文首页公开署名,可确认作者列出的机构:Zuse Institute
Berlin、Technical University of Berlin、Hong Kong Baptist
University、RIKEN Center for Advanced Intelligence
Project。此处不推断个人工作经历、教育背景或私人动机;论文与当前可用来源未充分支持这些履历信息。由于外部网络
DNS
故障,未能核验作者个人主页/机构档案,也未联系作者(无用户授权)。因此“曾参与哪些项目/为何开展研究”明确为未知,而不是按机构或合作者关系猜测。
Social Impact Assessor
Identify how this paper self-assesses its (likely positive) impact
on the world. Have any additional positive social impacts left out?
What are possible negative social impacts that were overlooked or
omitted?
论文自我框架:将 EvoTrace/EvoReplay 描述为帮助研究者诊断
agent
搜索动态、识别高分背后的不同机制;没有在所读正文中提出具体社会影响评估或直接部署承诺。
额外正面可能:轨迹审计可能帮助提高自动代码搜索的可复现性、减少无效算力消耗,并让过拟合更早暴露。负面/遗漏风险:更高效的代码优化也可用于恶意软件/漏洞利用;自动生成代码可能引入安全缺陷;benchmark
过拟合、模型/API
成本与能源开销、评估数据泄漏、数据集许可问题都需单独评估。它们是合理风险推演,不是论文已测量的社会后果。
Reference / Evidence
MIT MAS.S60 Other Discussion Roles 原始 prompt 来源课程讲义 PDF
角色问题原文依据该公开讲义。