Dream-RSI:基于历史回放的递归策略改进
论文:arXiv:2609.14858
机构:Google、Google DeepMind、马里兰大学、弗吉尼亚大学
第一作者:Tong Zheng
内容来源:用户提供的论文解读报告
整理日期:2026-09-23
核心思路
这篇论文的核心可以概括为一句话:把已经跑完的探索历史当成一个“可回放的世界”,让 Agent 在这个世界里“做梦”去试错和改进探索策略,从而绕开 RSI 里最贵的一环——在线评估策略本身。
论文的开篇句也点明了主旨:
To recursively self-improve, agents need to dream. History is the world they dream in.
一、问题动机:RSI 卡在哪
递归自我改进(RSI)的典型形态是发现循环:Agent 提出候选方案 → 评估 → 吸收反馈 → 再提出下一轮。这个循环在算法工程、数学优化、GPU kernel 等领域已经能挖出人类没想到的解(如 AlphaEvolve)。但作者指出瓶颈不在“生成候选”,而在怎么编排探索:
- 固定策略不适应:现有系统大多用人工写死的探索策略(在哪分支、开多少并行、何时剪枝、何时停),搜索空间一大就把算力砸进死胡同,而且不会从历史里长记性。
- 在线优化策略太贵:评估一段候选代码,跑一次就知道好坏;但评估一套探索策略,得让它带着 Agent 完整跑几百上千轮才给得出一个分数——反馈延迟、成本高昂,且元策略空间巨大。
也就是说,对象层(解题)的资源投入已经很多,元层(决定怎么搜)的改进却被评估成本锁死了。
二、关键洞察:累积历史 = 回放模拟器
这是全文最核心的贡献。一次在线探索会留下一棵结构化的发现树(discovery tree):每个节点是一次候选方案的生成与评估,包含分支决策点、产物、执行结果、评测分数、计算成本等。这棵树就是“Agent 实际走过的搜索空间地图”。
由此得到两个推论:
- 零成本的异策略(off-policy)评估:不同探索策略在同一棵树上会走出完全不同的轨迹(有的深挖当前最佳分支,有的早开新方向,有的大批量并行,有的早停)。只要节点已在树中,直接读记录即可,不用重调 coding Agent、不用重跑评估器,执行成本≈0。一次昂贵的在线发现,因此能支撑海量离线策略比较。
- 反馈从“等一轮跑完”变成“即时”:不用等新策略跑完长程探索才知道好坏,直接从历史记录里读出结果。作者把这一过程称为 “做梦”(dreaming):在把策略部署到真实环境前,先在由历史构成的世界里模拟各种选择。
这里与基于模型的 RL / world model 有相似之处,但有一个重要区别:模拟器不是学出来的近似模型,而是精确的记录——它只覆盖“已经到过的”状态,没有外推误差,也没有幻觉风险,代价是覆盖范围受限(见局限部分)。
另外作者强调,这与“把历史总结成 prompt 建议”完全不同:prompt 级方法把历史压缩成语义先验,容易引入偏置、压缩掉关键上下文;Dream-RSI 保留分支结构和真实结果,让策略通过交互式重放自己判断哪些路径值得继续。
三、方法:两层架构 + 三阶段闭环
架构分层(object level / meta level)
- 对象层:固定的 discovery agent(Gemini 3.1 Pro / 3.7 Flash)、固定的 evaluator、固定的执行接口,负责具体任务(改 Lasso 求解器、构造数学不等式、优化 kernel)。
- 元层:在 coding agent 之上加一层轻量、显式、可编程的编排层,里面是一段可执行的 exploration policy 代码,决定从哪个已有结果继续、何时开新分支、并行多少、何时终止。自我改进的对象只有这段策略代码,底层模型权重一字不改。
三阶段循环
- 在线探索(Online Explore):当前策略驱动 agent 扩展发现树,保存完整轨迹;
- 构建回放模拟器(Construct Replay Simulator):把新树并入历史集合,形成不断扩大的 simulator pool;
- 基于做梦的策略改进(Dreaming-based Policy Improvement):policy-development agent 在模拟器里生成大量候选策略,靠重放打分比较,选出优胜者重新上线。
上线后产生新的在线结果 → 扩充模拟器池 → 下一轮离线比较覆盖更大区域,如此往复。
不降级保证与目标函数
一个重要的工程保障:不降级保证(non-degradation guarantee)。 候选策略集合里始终包含当前正在使用的策略,因此在固定历史上选出的新策略,其平均回放得分不会低于旧策略。自我改进在设计上是“只增不减”的(注意:这是在回放意义上的保证,不代表真实环境一定单调提升)。
目标函数方面,replay score 用若干系数权衡质量、成本、并行度/轮次等(β₁、β₂、λ 一类),这也是后面被讨论较多的超参敏感点。
四、实验结果
在算法工程、数学优化、GPU kernel 工程三个领域、多个任务上,以 Recursive Fixed Exploration 为受控基线(相同的 discovery agent、evaluator、初始化策略和资源约束,唯一区别是后续轮次的探索方式):
| 领域 | 结果 |
|---|---|
| 算法工程(Lasso 正则化路径求解器) | 生成的算法在多个 hold-out 数据集上优于 sklearn、glmnet 等标准库;相比 SimpleTES 最多节省约 162× 的 agent 调用(SimpleTES 需约 51200 代,Dream-RSI 约数百次调用达到同等水平);相比固定探索基线省约 1.7× |
| 数学优化(Sum–Difference、自相关不等式、圆堆叠) | Sum–Diff 上最佳,Circle Packing 上追平/并列 AlphaEvolve V2 最强纪录;约 1000 代内追平或超过强基线,相比 SimpleTES 省 50× 以上预算 |
| GPU Kernel(KernelBench) | VGG16、LayerNorm 上用 2.43× / 1.79× 更少的 generations 达到可比性能;ConvDiv、ConvMax 在相似预算下取得约 2.09× / 1.44× 更高分数 |
消融和行为分析还显示:把历史当交互式 replay simulator 明显优于仅当 guidance;且在递归执行中,探索行为会自适应地在“节约计算”和“扩大探索”之间切换。
五、两个值得注意的额外发现
- “人指路反而更差”:把人类提供的高层经验总结加进策略后,表现不升反降。原因是任何总结都是信息压缩,会丢失关键上下文,还可能把噪声监督信号注入一个本来在收敛的自迭代过程。这对“人在环里”的价值提出了重新审视。
- 模型无关:不改权重,Gemini 3.1 Pro 和 3.7 Flash 都能直接套用,说明这套机制是 harness 层的,不是模型层的。
六、局限与边界
这部分很重要,别被“破解 RSI”的标题带偏。
- 梦不到没去过的地方:模拟器只能覆盖 observed support,即历史真正到达过的搜索空间。所以它必须是循环而非一锤子买卖,要靠每轮在线探索不断扩充世界池;对完全未触及的区域无法仿真。
- 改进范围受限:只改 exploration policy 代码,discovery agent、evaluator、执行接口全部固定。需要改底层模型能力或评估器设计的任务,Dream-RSI 不提供直接机制。
- 控制器表达能力有限:prefix-only 式的决策结构、有限的信息约束,可能限制策略的上限。
- 超参手工设定:目标函数里的权衡系数(β、λ 等)是手写的,公开材料里缺乏完整的敏感性分析。
- 并非所有单点指标都占优:Auto Correlation 上不如 SimpleTES / AlphaEvolve;Lasso 在某些数据集、某些模型配置下不如 Recursive Fixed Exploration;递归过程中的某些中间指标也不单调。优势主要体现在平均的质量–算力 trade-off 和部分任务的效率上。
七、我的评价
这篇工作的实质贡献,是把“元策略优化”从一个必须在线试错的昂贵黑箱,变成了一个可在静态历史上反复做 A/B 测试的可编程控制问题。它没有走“AI 深夜改写自己权重”那条路,而是走了一条更工程化、也更立刻可用的路:不动模型,动 harness。
它的遗产在于确立了一个范式——用静态历史评估动态探索,让策略层实现零成本进化。而它尚未跨过的门槛也很清楚:只能重放已到达的状态,不能仿真未知状态。未来如果能把 replay simulator 扩展到 observed support 之外(例如结合不确定性建模或轻量环境模型),或者把 object-level 组件和 meta-level 策略联合改进,这条路线才算真正闭合。
顺带一提:论文挂出后社区反响很大(有人喊“谷歌可能刚破解了递归自我改进”),但也应注意到,同期 OpenAI 正提议把 RSI 纳入前沿 AI 全球技术标准讨论,并明确表示目前尚无完全自主的 RSI、安全条件不具备时不应推动。Dream-RSI 是 RSI 的一个具体且可审计的工程实现,但它改进的是“怎么用算力和智能”,而不是智能本身的上限——这两件事要分开看。
评论(0)