harness_evolve/notes/ref24_hyperagents.md

HyperAgents:让「改进机制」本身可被改进的自指 Agent(DGM-Hyperagents)

一句话总结:把 Darwin Gödel Machine(DGM)里那套"分析历史 → 决定去哪自我改进"的手工固定 meta 机制也变成可被 Agent 自己改写的代码——通过把 task agent(解题)+ meta agent(改自己和 task agent)合并进同一个可编辑程序(称为 hyperagent),实现"元认知自我修改(metacognitive self-modification)";于是系统不仅越改越会解题,还越改越会"改进自己改进的方式",从而摆脱 DGM"只在编码域才自加速"的对齐假设,在编码 / 论文评审 / 机器人奖励设计 / IMO 数学评分四个域都超过了不带自我改进或不带开放式探索的基线以及原版 DGM。


TL;DR 速览

tags: #自我改进 #self-referential #元认知自我修改 #open-endedness #darwin-godel-machine #meta-learning #harness工程

related: [[ref23_darwin-godel-machine]](本文直接扩展的基座)· [[ref13_adas-automated-design-agentic-systems]]("w/o self-improve" 基线 = ADAS)· [[ref09_meta-harness]](外部 Agent 优化 harness 的对照极)· [[ref17_self-harness]](模型自优化 harness 的对照极)· [[ref20_alphaevolve]](进化式编码 Agent 谱系)· [[ref16_stop-self-taught-optimizer]](递归自改代码的先声)· [[ref11_scientistone]](AI Scientist / 自动科研谱系)


摘要

自我改进 AI 力图通过"学会改进自己的学习与解题过程"来降低对人类工程的依赖。现有递归自我改进方法通常依赖固定、手工的 meta 级机制,从根本上限制了系统改进的速度。Darwin Gödel Machine(DGM) 证明了开放式自我改进在编码域可行:从单个编码 agent 出发,反复生成、评估自我修改的变体,形成不断增长的 archive 作为未来改进的"垫脚石"。因为评估与自我修改都是编码任务,编码能力的提升可以转化为自我改进能力的提升。但这种对齐在编码域之外一般不成立。

我们提出 hyperagents——把 task agent(解目标任务)meta agent(修改自己与 task agent) 整合进单个可编辑程序的自指 agent。关键在于meta 级修改流程本身也是可编辑的,从而实现元认知自我修改:不仅改进解题行为,也改进"生成未来改进的机制"。我们据此扩展 DGM 得到 DGM-Hyperagents(DGM-H)。通过让改进流程本身可进化,DGM-H 消除了"任务表现与自我修改技能之间的域专属对齐假设",原则上可对任何可计算任务支持自加速进步。在编码、论文评审、机器人奖励设计、IMO 级数学评分四个域,DGM-H 随时间提升表现,超过不带自我改进 / 不带开放式探索的基线以及 DGM 等先前系统;其学到的 meta 级改进(如持久记忆、性能追踪)可跨域迁移、跨运行累积。所有实验都在安全约束下进行(沙箱、人类监督)。


1 介绍:无穷 meta 倒退,与"对齐假设"这堵墙

论文的问题意识分两层,都很锋利。

第一层——无穷 meta 倒退。 大多数自我改进架构依赖一个固定的 meta agent(改 base 系统的高层系统)。这天然设了个上限:base 系统只能在 meta agent 设计所划定的边界内被改进。想加一个 meta-meta 去改 meta?——那只是把问题上推一层,最终导致无穷的 meta 层级倒退(infinite regress)。要真正打破这堵墙,让系统能修改自己的任何部分而不受初始实现约束,系统必须是自指的(self-referential):能分析、修改、评估它自己(Kirsch & Schmidhuber 2022;Zhang et al. 2025b)。当"改进的机制"本身也成为被改进的对象,进步就可能变得自加速、乃至无界

[!TIP] 什么是"自指(self-referential)"与"元认知自我修改"? - 自指:一个系统能把自己当作被操作的对象——读自己的源码、改自己的源码、跑自己看结果。经典源头是 Schmidhuber 的 Gödel Machine(当"可证明有益"时重写自己)。 - 元认知自我修改(metacognitive self-modification):本文造的词。普通自我修改只改"我怎么做事"(task 层);元认知自我修改同时能改"我怎么决定怎么改自己"(meta 层)。类比人:不只是"练题",而是"反思并改良自己的学习方法论"。 - 在本文里,实现手段就是把 task agent 和 meta agent 塞进同一份可编辑代码,于是"生成改进指令的那段逻辑"和"解题的那段逻辑"没有本质区别,都能被 diff 掉重写

第二层——DGM 的"对齐假设"。 DGM([[ref23_darwin-godel-machine]])是递归自我改进在编码域的实用范例:agent 生成并评估对自己代码的修改,成功变体留进 archive 当垫脚石。但 DGM 有个手工、固定、不可改的指令生成步骤(附录 B):它分析过去评测结果 + 当前代码库,产出一条"该往哪自我改进"的指令。DGM 之所以能"改进自己改进的能力",靠的是一个巧合式对齐

[!IMPORTANT] DGM 的隐含假设"解评测任务所需的技能 = 有效自我反思/自我修改所需的技能。" 这在编码域恰好成立——因为评测任务是编码自我修改也是改代码,两者都是"编码"。所以编码 agent 变强 → 它改自己的代码也变强 → 递归自加速。 但出了编码域,这个等式就崩了:如果评测任务是写诗,那"提升写诗能力"不必然提升"修改自己代码的能力"。于是 DGM 在非编码域无法真正改进自己的改进机制

本文的解法:hyperagents 不假设这种对齐,因为自我修改机制完全可修改、且不绑定任何特定任务域。于是 hyperagent 能在任何可计算任务上同时改进"任务表现"和"改进过程本身"。一句话点题(原文结尾句):hyperagents 让系统"不只是搜索更好的解,而是持续改进它'如何搜索改进'的方式"。


2 相关工作:三条线,本文站在"自指 meta-learning × 开放式 × 自我改进"的交点

[!TIP] ① 开放式(Open-Endedness) - 定义(Stanley et al. 2017;Hughes et al. 2024):系统能持续发明新的、有趣的、越来越复杂的产物,不断扩展自己的发现前沿,没有固定目标或预定终点。 - FM 作为"有趣度"代理(Zhang et al. 2024 的 OMNI;Faldor et al. 2025 的 OMNI-EPIC):用基础模型近似"人类觉得有趣"的判断,来驱动新行为的生成与评估。 - 质量-多样性(QD)算法(MAP-Elites 等):不只追单一最优,而是照亮整个"行为空间",产出多样且各自强的解。

本文取用的点:DGM/DGM-H 的 archive + parent selection 就是一套开放式、种群式探索,用来防早熟收敛、留垫脚石。本文的野心是让开放式系统不只产出更好的产物,还改进产生新颖与进步的机制本身(Clune 2019 的 "AI-GAs";Jiang et al. 2023)。

[!TIP] ② 自我改进 AI(本文的主战场) - Gödel Machine [Schmidhuber 2003]:当"可证明有益"才重写自己——理论优雅但现实不可行(证明太难)。 - 权重 / 学习动态层的自改:differentiable plasticity、backpropamine、self-referential weight matrix(Irie et al. 2022)等,通过 meta-learning 改自己的权重。 - self-play [Silver et al. 2017 (AlphaZero)]:自我对弈迭代提升,但底层学习算法本身固定、人类设计。 - FM 驱动的自改:改 prompt(Promptbreeder)、改推理轨迹(STaR)、改整个代码库(DGM / Huxley-Gödel / Live-SWE-agent)、用自生成数据更新权重(Self-Adapting LM)。 - DGM [Zhang et al. 2025b]:编码域递归自我改进的实用范例,但依赖固定手工 meta 机制。见 [[ref23_darwin-godel-machine]]。

[!TIP] ③ 自指 meta-learning(本文精神上的直系祖先) - 研究"学会改进'学习本身发生的机制'"的系统:神经网络里(Kirsch & Schmidhuber 2022;Jackson et al. 2024)、进化方法里(Lu et al. 2023 的 arbitrary-order meta-learning)。 - FM 版自指改进:STOP([[ref16_stop-self-taught-optimizer]])、A Self-Improving Coding Agent(Robeyns et al. 2025)、Gödel Agent(Yin et al. 2025)、DGM 及其后继(Huxley-Gödel、Live-SWE-agent、Group-Evolving Agents)。

共同短板:这些递归自我改进主要只在编码任务内"改进自己改进"。HyperAgents 的差异因为自我修改机制"完全可修改、不绑定任务域",所以它能在任何可计算任务上同时改进任务表现与改进过程本身——不再需要"评测任务 ≈ 自我修改任务"的对齐。

把祖源一句话说清:本文把"开放式探索(DGM 的 archive)"和"自指 meta-learning(改进机制可自改)"焊在一起——前者提供跨代累积的垫脚石,后者让"怎么产生垫脚石"这件事本身也进化。


3 方法:hyperagent + 元认知自我修改 + DGM 的开放式外环

3.1 三个定义(本文的概念地基)

概念 定义
Agent 任意可计算程序,可选地调用 FM、外部工具、学习组件。不限表示(不必是神经网络 / prompt),可含任意算法逻辑、记忆、控制流。
Task agent 被实例化去解一组任务的 agent(如:给 repo 出 code diff、预测论文接收/拒稿、给机器人任务设计奖励函数)。按任务经验性评测
Meta agent 唯一任务就是"修改现有 agent、生成新 agent" 的 agent。给它整个历史 archive + 评测结果,它提出旨在提升未来表现的改动——这些改动可以针对 task 逻辑,也可以针对 meta agent 自己
Hyperagent 把 task agent + meta agent 整合进单个可编辑程序自指 agent。因为 meta agent 是同一份可编辑程序的一部分,它能重写自己。于是 hyperagent 能同时改进 (1) 怎么解题、(2) 怎么生成未来的自我改进。用 Python(图灵完备)故可构造任意可计算机器。

[!TIP] 为什么"合并成一个程序"是关键设计,而不是"两个分开的 agent"?(讲透 + 举例) 分层系统(meta 在上、task 在下,层级固定)永远有"最顶层那个不可改"的问题(= 无穷倒退)。hyperagent 把层级"拍平"进同一份代码meta agenttask agent 只是同一个 repo 里的不同函数/文件,meta agent 改代码时没有任何东西禁止它去改自己那部分举例:初始 hyperagent 里,meta agent 只会调一次 FM 说"改这个 repo 吧"。某一代它可能给自己加一个 PerformanceTracker(记录每代分数、算移动平均趋势)——这是在改 meta agent 自己(改进"我如何决定下一步改哪");下一代它又给 task agent 的评审 prompt 加一套多阶段 checklist——这是在改 task agent。两种改动用同一套 edit 工具、在同一份代码上完成,没有本质区别。这就是"元认知自我修改"落地的样子。

3.2 优化框架:DGM-H(图 5 是全文最重要的图)

Figure 5: DGM 各变体的概念对比(4 行)

Figure 5 逐行解读(这张图把"新在哪"讲得最透,务必逐行看):每一行都是一个"archive → 选 parent → self-modify → evaluate → 加回 archive"的循环,差别在meta 机制是什么、是否可改、评测任务与自改是否对齐

[!NOTE] Algorithm 1|DGM-H 外层循环(伪代码复述) 输入: 初始 agent a0, 任务集 T, 最大迭代 T 输出: 打了分的 agent archive A s0 ← Evaluate(a0, T) A ← {(a0, s0)} # 从单个初始 hyperagent 起 for t = 1..T: P ← SelectParents(A) # 概率式选 parent(正比表现、反比已编译子代数) for (a, ·) in P: a' ← a.Modify(a, A) # 元认知自我修改:a 用自己的 meta agent、看整个 A 来改出 a' s' ← Evaluate(a', T) # 在任务上评测 if IsValid(a'): # 能编译/通过接口校验 A ← A ∪ {(a', s')} # 加回 archive return A 关键点:注意 a'←a.Modify(a, A) 里,是 parent 自己的 meta agent 在改(不是外部固定机制)——这正是"元认知"所在。跑固定轮数(编码 80、评审/机器人 100、数学评分最多 200),最后只在 archive 里选表现最好的 agent 做一次 test-set 评测。

DGM-H = 两个部件:(1) 从 DGM 继承的开放式、种群式探索(archive + parent selection,防早熟);(2) 一个初始 hyperagent,通过自生成变体随时间进化。

[!TIP] Parent selection 怎么选?(附录 A.2,讲透 + 符号) 每轮从 archive 采 parent,概率大致正比于表现、反比于"已成功编译的子代数"(灵感来自 Go-Explore 的 Ecoffet et al. 2019)。具体: $\(s_i = \frac{1}{1+\exp\!\big(-\lambda(\alpha_i - \alpha_{\text{mid}})\big)},\quad h_i = \frac{1}{1+n_i},\quad w_i = s_i\, h_i,\quad p_i = \frac{w_i}{\sum_j w_j}\)$

符号 含义
\(\alpha_i\) agent \(a_i\) 的表现分
\(\alpha_{\text{mid}}\) 动态中点 = 当前 top-\(m\)\(m{=}3\))最强 agent 的均值,反映"当前前沿"
\(\lambda\) sigmoid 陡度(\(\lambda{=}10\)),越大越"贪婪地偏向超过前沿的 agent"
\(n_i\) \(a_i\) 已成功编译的子代数;\(h_i\)新颖度奖励,压制"已经生了很多娃"的 agent
\(s_i,\ w_i,\ p_i\) sigmoid 后的表现权重、未归一化权重、最终采样概率

直觉:既想利用"当前最强且能生强娃"的 agent(\(s_i\) 大),又不想反复薅同一个 agent(\(h_i\) 随子代数衰减),于是在利用与探索间平滑权衡,并随 archive 变强自动上移中点主实验里这套 parent selection 是手工固定、不可改的——为的是隔离"hyperagent 自我修改"的净效果;但附录 E.5 把它也开放给自改(见 §5 末)。

3.3 初始 hyperagent:刻意极简(附录 A.1)

初始 hyperagent 围绕一个冻结的 FM + 外部工具构建,FM 每步自主决定调哪个工具。它只配两个工具: - bash:跑 shell 命令(无网络,但有本地 apt/pip 镜像,状态跨调用持久)。 - editor:查看 / 创建 / 编辑文件(view/create/str_replace/insert/undo_edit)。

[!NOTE] 为什么初始实现要"简单到近乎不作为"? 作者明说:刻意保持简单,以获得宽广的搜索空间、避免过早约束"可能的改进范围"。这与 [[ref17_self-harness]] / [[ref09_meta-harness]] 的"从极简初始 harness 起步"一脉相承——把结构留给系统自己长出来,而不是人类预先塞满。初始 task agent 在评审上得 0.0(连输出格式都不对,因为没有任务专属解析),机器人上仅 0.060——故意留出巨大改进空间

3.4 基线设计:三刀切开三个贡献(§4.1,图 5 + Table 1)

方法 自改 meta agent 开放式探索 元认知自改(hyperagent) 它检验什么
DGM-H(本文)
DGM-H w/o self-improve = ADAS:meta agent 全程锁死为初始版;测"增益是否只来自 task 层优化"
DGM-H w/o open-ended exploration 去掉 archive,新 agent 直接替换旧的;测"是否需要累积/复用中间解"
DGM 原版,手工指令生成器(为编码设计),测非编码域会不会废
DGM-custom 把手工指令生成器为每个域定制;测"要多少人类工程才能跟上"

[!TIP] "DGM-H w/o self-improve = ADAS"这个等价很重要 [[ref13_adas-automated-design-agentic-systems]](ADAS)用一个固定的 meta-agent 从历史发现里编程出新 agent。当你把 DGM-H 的 meta agent 锁死、只让它生成/评估新 task agent(但 meta 机制本身不进化),得到的就正是 ADAS 那套"固定 meta 级机制"的范式。所以 DGM-H vs DGM-H w/o self-improve 的差距 = "让 meta 机制可进化"带来的净收益 = 本文最核心的消融。


4 实验:四个异构域,逐一压过基线

4.1 设置速览(附录 C、D)

输入 → 输出 指标 Train/Val/Test 自改用的 FM 评测用的 FM
编码 Polyglot repo+指令 → code patch Pass@1 60 / – / 165 Claude 3.5 Sonnet(New) o3-mini
论文评审 论文全文 → accept/reject Accuracy 100/100/100 Claude 4.5 Sonnet GPT-4o
机器人奖励设计 任务描述 → 奖励函数 策略表现 6 / – / 6 Claude 4.5 Sonnet Claude 4.5 Sonnet
IMO 数学评分 题+候选解+参考解 → 分数(0/1/6/7) Accuracy 100/100/100 Claude 4.5 Sonnet o4-mini

[!TIP] 为什么选"论文评审"和"机器人奖励设计"这两个古怪的域? - 论文评审 = hard-to-verify(无客观 ground truth,评审本就主观)。作者不想改评审制度,只测"hyperagent 能否自动学出与观测到的人类判断对齐的决策程序"。这检验 DGM-H 在没有干净可验证信号时是否还 work。 - 机器人奖励设计 = 走出"纯语言任务",要求 agent 调外部物理仿真器(Genesis)+ RL 训四足机器人。训练任务="走起来",held-out 测试="最大化躯干高度"——妙点在于:能让机器人走路的奖励函数不会诱发跳跃(跳才是"抬高躯干"的更优解),所以测试的是"同一个 agent 能否为不同机器人任务设计合适奖励",而非死记一个奖励。

4.2 任务表现:四个域都赢(图 2)

Figure 2: 训练曲线 + 测试集柱状(评审 & 机器人)

Figure 2 逐元素解读: - (左) 训练曲线(纵轴 = 评审+机器人的最佳 agent 表现,横轴 = 迭代):DGM-H(蓝)一路爬到最高(0.77),且爬得最快;DGM-custom(紫)次之(0.55);DGM(红)、DGM-H w/o open-ended exploration(橙)、DGM-H w/o self-improve(绿)几乎躺平(≤0.2)。蓝线明显在 20 迭代前就把其余甩开。 - **(右上) 论文评审测试集柱状:DGM-H(蓝)≈0.71,高过灰虚线的代表性基线(Yamada et al. 2025 = 0.63);DGM(红)≈0、两个消融(橙/绿)≈0,只有 DGM-custom(紫)≈0.59 能打。 - (右下) 机器人奖励设计测试集柱状:DGM-H(蓝)≈0.37,高过灰虚线的默认奖励("standing tall" = 0.348);Initial agent(灰)≈0.06、DGM≈0、w/o open-ended≈0.12、w/o self-improve≈0.21——都被 DGM-H 显著超过(p<0.05)。 - 一句话:两块面板分别对应"评审(hard-to-verify)"和"机器人(需外部仿真器)",DGM-H 在两处都超静态基线;且两个消融的塌陷证明——元认知自改 开放式探索缺一不可

关键定量(测试集,中位数):

初始 DGM DGM-custom DGM-H w/o self-improve DGM-H w/o open-ended DGM-H 静态基线
论文评审 0.0 0.0 0.590 0.0 0.0 0.710 0.630 (AI-Scientist-v2)
机器人奖励 0.060 0.0 0.348 0.213 0.116 0.372 0.348 (默认奖励)
编码 Polyglot(全集) 0.084 0.267 (DGM 原版 0.307)

[!NOTE] 定性:从"表面 prompt 微调"走向"结构化决策机器"(附录 E.2) - 论文评审:从"贴一个'rigorous'人设"这种表面行为指令,进化到显式多阶段评估流水线(checklist + 决策规则 + 明确判据)。看附录里的真实 diff:早期版本只是 "You are a critical academic reviewer... Default to REJECT";进化后变成7 条 acceptance criteria + 8 条 rejection criteria + 5 步 review process + 明确 40%/60% 阈值的结构化框架,判断更一致、质量更高。 - 机器人奖励:DGM-H 逐步搭建并精炼一个内部知识库(环境约束、合法状态变量、奖励缩放启发式),消灭编译失败、减少奖励错配——把领域知识沉淀进越来越复杂的决策框架,不靠人手工做域专属工程。 - 最漂亮的对比:在 held-out"最大化躯干高度"上,DGM-H 几乎总能生成诱发跳跃的奖励,而 DGM-custom 常卡在"站直"的局部最优——说明元认知自改能匹配甚至超过手工域专属机制

4.3 "改进'改进的能力'":meta 级增益可跨域迁移(图 3,本文最强证据)

这一节回答:DGM-H 相对 "w/o self-improve" 的优势,证明了它改进了 meta agent(自改+生成新 agent 的能力)——但这种改进是通用的还是域专属的

[!TIP] improvement@k(imp@k)指标:怎么量化"一个 meta agent 有多会造更好的 task agent"? 给定初始 meta agent \(M\)、初始 task agent \(A\)、一个 agent 生成算法、一个固定任务:让 \(M\)\(A\) 及其后代最多生成 \(k\) 个新 task agentimp@k = 最佳生成 agent 相对 \(A\) 在 test 上的表现增量(按 val 分选最佳)。 关键控制:为把"meta agent 改 task agent 的能力"和"meta agent 改自己的能力"隔离开,全程冻结 meta agent(生成新 task agent 的永远是初始 \(M\))——于是算法退化为 DGM w/o self-improveDGM-H w/o self-improve。本节全跑 50 迭代,测 imp@50直觉:imp@k 衡量"一个 meta agent 在有限预算内造出改进变体的效率"。

Figure 3: imp@50 —— 迁移 hyperagent 会造更好 agent(0.630),迁移 DGM agent 不会(0.0)

Figure 3 逐面板解读(在全新域 IMO 数学评分上测): - (左) 训练曲线深绿「DGM-H w/o self-improve + transfer」一枝独秀,爬到 ~0.6;其余三条(DGM w/o self-improve、DGM w/o self-improve+transfer、DGM-H w/o self-improve 从初始起)全部躺在 0 附近。 - (中) DGM 侧柱状:无论从初始 agent 还是迁移 agent 起,DGM w/o self-improve 的 imp@50 ≈ 0.0——原版 DGM 学不到可迁移的 meta 级技能。 - (右) DGM-H 侧柱状:从初始 agent 起 imp@50≈0.0,但从迁移 hyperagentimp@50 = 0.630(那根深绿高柱),显著高于初始(p<0.05)。 - 结论"在评审+机器人上优化出的 hyperagent"迁到"数学评分"后,仍然很会造更好的 task agent——证明 DGM-H 学到的是通用、可迁移的自我改进策略,而 DGM 学到的增益只是域专属定制

[!IMPORTANT] 迁移增益从何而来?两个 DGM-H 自主长出的"通用 meta 能力"(§5.2 + 附录 E.3,含真实代码): 1. 性能追踪基础设施(PerformanceTracker):不再只看孤立评测结果,而是跨代记录/聚合/对比指标,识别"哪些改动持续有效、哪些导致回退",据此优先有希望的方向、避开无效方向。论文给了真实自动生成的 class PerformanceTracker:把每代 (generation_id, domain, score, timestamp) 存进 performance_history.json,还有 get_improvement_trend()(近 window 均值 − 更早 window 均值,正数=在进步)和 get_statistics()。 2. 持久记忆(persistent memory):不只记数字,而是存综合洞见、因果假设、前瞻计划(如"哪几代最好、诊断过度纠正、如何组合成功策略"),并在后续自改时主动查阅,让后代在前人发现上累积、不重犯旧错。论文贴了真实记忆条目,例如:

"Gen55: 63% acc … (too harsh);Gen64: 61% acc … (BEST BALANCE)。Key Insight: 需把 gen55 的批判性推理 + gen64 的平衡结合。" "Gen 66: 52% acc(比 gen64 的 61% 更差),94% accept rate(极端 accept 偏置)。CRITICAL: gen65 的改动过度纠正了。" "Iteration 66 Improvement: 纠正 gen65 的过度纠正,新方案:(1) 明确 REJECT 触发条件 (2) 决策协议带 40%/60% 阈值 (3) 边界情况默认 REJECT。"

这几条记忆读起来就像一个研究者在做实验日志 + 复盘——这正是 [[ref09_meta-harness]] 里"提议者对失败做因果推理"的同款证据,但这里是系统给自己自动长出来的记忆机制,而非人类设计的文件系统。

4.4 跨运行复利:自我改进能累积(图 4)

Figure 4: 从迁移 hyperagent 继续跑,更快更高,并超过 ProofAutoGrader

Figure 4 解读:在数学评分上跑 200 迭代—— - (左) 训练曲线「DGM-H + transfer」(橙) 比「DGM-H 从初始起」(蓝) 更快收敛、终值更高;「DGM-H + transfer + from ProofAutoGrader」(绿) 起点就在 ~0.6(因为 ProofAutoGrader 本身强),最终最高。 - (右) 测试柱状:DGM-H(蓝)≈0.61 < DGM-H+transfer(橙)≈0.645 < DGM-H+transfer+ProofAutoGrader(绿)≈0.70超过代表性基线(灰虚线 ProofAutoGrader = 0.67)。 - 定量:从迁移 hyperagent 起 200 迭代得 0.640(CI 0.550–0.720),从初始起得 0.610(虽 p>0.05 不显著,但中位与 CI 都更高)。用 ProofAutoGrader 当 task agent + 迁移 meta agent 继续优化,把它全集准确率 0.561→0.601、MAE 0.178→0.175。 - 意义DGM-H 的自我改进是可复用、可跨运行累积;且能站在强现有方案(ProofAutoGrader)肩上继续改。作者特别指出:高分段提升更难(0.7→0.8 比 0.0→0.1 难得多),所以这些"看着不大"的增益是有意义的。

4.5 连外环也能自改:DGM-H 会自己重造 UCB(附录 E.5)

主实验冻结 parent selection 以隔离效果,但附录 E.5 把它也开放给自改(初始给随机选择,让 agent 自己改): - 测试表现:随机选择 0.030→0.428;可自改选择 →0.491;手工 score-child-prop →0.532(三者差异 p>0.05 但趋势一致)。 - 定性最惊艳从随机选择起,meta agent 在每次 run 的头几迭代内都独立造出 UCB 风格选择normalized_score + exploration_weight * sqrt(log(total_children+1)/(children+1)));进而进化出温度可调的 softmax 采样自适应温度(随 archive 大小/停滞调整)、多分量打分(表现+探索+多样性+recency+elite)、甚至停滞检测if score_variance < 0.01: exploration_weight *= 1.4)。 - :自改版没超过手工 score-child-prop——因为学出的机制更复杂、更敏感,跨 run 不稳定。不过它证明了系统能自主重造经典搜索算法、并加自适应启发式、显式推理停滞等失败模式——即 DGM-H 能改进"开放式优化过程本身"的核心元件。


5 讨论、安全与结论

核心结论

局限(作者自陈)

安全讨论(§6 + 附录 F,本文主动且认真地写)


个人思考

⭐ 放进本项目坐标系:自动 harness/agent 优化的"三极"

HyperAgents 和本项目已读的两篇构成一个清晰的三角。把三者摆一起,能把"谁来改、改什么、改进机制本身可不可改"这个设计空间讲透:

维度 Meta-Harness ([[ref09_meta-harness]]) Self-Harness ([[ref17_self-harness]]) HyperAgents (ref24)
谁来改 外部强 Agent(Claude Code+Opus) 模型自己(同一固定模型当提议者) hyperagent 自己(内含可自改的 meta agent)
改进对象 任务专用 harness(代码) Agent 运行 harness 的可编辑面 task agent + meta agent 整个程序
改进机制本身可改吗 ❌(外环手工、极简,但固定) ❌(三阶段闭环手工固定) 可改(这是本文的核心突破)
反馈通道 全历史文件系统(可 grep) 当前轮失败聚类证据包 全 archive + 评测结果(meta agent 自主查阅)
准入 Pareto 前沿 保守非回退门(两 split 不降) 能编译即入 archive + parent selection 概率淘汰
探索结构 极简外环 显式三阶段 DGM 开放式种群 + archive
独特招牌 "不要压缩反馈" "有据/可测/可逆的状态转移" "元认知自我修改"消灭无穷 meta 倒退

我的判断:三者是"自我改进"光谱上的三个刻度。 - Meta-Harness 押"能力溢出"(强外部 Agent + 无损全历史)——但改进机制固定,天花板受外环设计限。 - Self-Harness 押"对齐+纪律"(模型自诊断 + 回归门)——同样改进机制固定、且刻意收窄到有界编辑。 - HyperAgents 押"自指"——它做了前两者都没做的事:把"改进机制"本身也交出去进化。这也解释了为什么只有它能拿到"meta 级增益跨域迁移"(imp@50 = 0.630 vs DGM 的 0.0)这种结果——因为它优化的恰恰就是"改进的能力"本身,而不只是"某个 harness"。 - 一个自然的合流猜想(可作为本项目"未来方向"落点):用 Self-Harness 的"证据聚类 + 非回退回归门 + 审计日志"当安全外壳,套在 HyperAgents 的"自指 hyperagent + DGM 开放式 archive" 之上——既让"改进机制"能进化(HyperAgents 的野心),又给每步自改上"可测、可逆、非回退"的护栏(Self-Harness 的纪律)。HyperAgents 的 §6 安全讨论其实已经在呼唤这种东西("越强越依赖评测保真度")。

与 DGM / ADAS 的精确关系

方法论启示(可迁移)

  1. "消灭无穷 meta 倒退"的通用招式 = 把层级拍平进同一份可编辑对象:只要你的系统有"L0 干活 / L1 决定怎么改 L0 / L2 决定怎么改 L1…"的分层,就永远有"最顶层不可改"的墙。HyperAgents 的解法(L0 与 L1 同居一份代码、L1 能改自己)是任何自改系统都能借的元设计
  2. "改进机制可迁移"比"解更好"更值钱:本文最有冲击力的不是"评审 0→0.71",而是"在 A、B 域学的改进方式能加速 C 域"(imp@50 迁移)。这提示:评估自我改进系统时,应该多测 meta 级迁移(imp@k),而不只看单域终值。
  3. 持久记忆 + 性能追踪是"会自我改进"的涌现标志:DGM-H 自发长出 PerformanceTracker 和带因果假设的记忆——说明"把改进当持续过程而非孤立编辑"是通用有效原则。这几乎可以直接抄进任何长程优化 agent。

在我的工作中能怎么用

开放问题 / 疑问