Rebas Daily PERSONAL AI DAILY — 自动选题 · 核查 · 撰写 NO.047 — 2026-08-20
PAPER H 19 约 7 分钟

Twin:让Agent现场写出游戏世界

Agent边玩边写游戏规则:先在数字孪生里试走,再把验证过的动作交给真实游戏。

Twin:让 Agent 现场写出游戏世界

你第一次玩一款没有说明书的游戏,会先按几个键,看看角色怎么动,再猜怎样才算赢。普通 AI Agent 往往缺少这一步:它可以分析眼前画面,却容易一边试一边犯错。Twin 换了个做法。它让编码 Agent 在游玩现场写出一份游戏程序,先在程序里试走,确认计划说得通,再操作真正的游戏。

这份程序就是“数字孪生”——对一个对象及其行为的动态软件表示。Twin 研究的是 ARC-AGI-3:一组由彩色格子组成的未知游戏。操作方式、世界规则和胜利条件都不会直接告诉玩家。论文目前的效果数据均来自作者团队,尚无第三方复现;以下数字应视为单一信源结果。

不是记住游戏,而是现场重写游戏

传统世界模型通常在大量经验上训练,学习“采取这个动作后会发生什么”。Twin 则在测试时构建“可执行世界模型”:它不是用文字模糊描述规则,而是写出一段 Python 程序。程序接收当前格子画面和动作,输出预测的下一幅画面;另一个函数判断当前状态是否可能代表胜利。

这属于测试时学习——系统在实际解题阶段继续利用观察和反馈适应,但不一定更新模型参数。每开始一款新游戏,Twin 的世界模型只是一份原样返回画面的空壳。Agent 按一次键,看到真实变化,再把新规则写进程序。比如点击某块格子后颜色改变,程序就要解释这种改变发生在什么条件下。

它利用了针对格子游戏的“归纳偏置”,也就是证据不足时先采用的一组假设,例如变化往往由明确规则控制,局面可以压缩成程序。合适的假设能减少摸索,但也意味着方法更适合规则清楚、状态离散的世界。

关键不是会写代码,而是代码必须解释全部过去

Twin 的控制循环可以概括为三步:验证、探索、规划。

“验证”会把真实游戏里发生过的每一次状态变化重新播放一遍。世界模型必须逐格复现全部历史记录,系统才允许提交下一个真实动作。它很像在出门前检查地图:地图连已经走过的路都画不对,就不能拿它规划下一段。

一旦预测与现实不一致,这个差异就成为“反例”。系统根据反例修补程序,然后重新检查完整历史,避免修好新问题却破坏旧规则。验证只能证明程序符合已经看过的情况,不能保证它面对新局面仍然正确。因此,Twin 在执行多步计划时仍会逐步核对;出现首次偏差便停下,转回修复。

“探索”处理两种卡住的情况。如果程序解释不了过去,Agent 就优先修规则;如果程序已经通过验证,却找不到通向胜利的路线,它就寻找值得尝试的新状态。论文报告,Twin 的真实动作中有 92.9%来自已经在孪生世界里试过的路线,其余7.1%是为了补充信息而主动探测。

“规划”则在通过验证的程序里运行搜索。系统用广度优先搜索——从当前状态开始,按步数由近到远尝试动作序列——寻找抵达目标的较短路线。这里的模拟不计入基准的动作效率,真正提交给游戏的动作才计分。

会发生什么,和怎样才算赢,是两道题

Twin 最有意思的判断,是把“世界如何变化”和“什么状态算赢”拆开。

每次真实操作都会告诉系统一次状态转移,因此游戏规则可以持续接受检验。胜利条件却不同:在真正过关之前,系统没有正样本。程序即使准确预测每个按钮的效果,也可能完全不知道应该追求什么。

Twin 会从模拟可达的状态中寻找“看起来像进展”的候选,例如某种颜色消失、一个紧凑区域发生变化,或整个场景出现明显改变。编码 Agent 把候选写成暂定的胜利条件,系统再规划一条成本较低的路线去验证。

结果只有三类:如果到达候选状态后关卡结束,假设得到确认;如果准确抵达却没有过关,这个候选会被永久排除;如果途中现实与模拟不符,问题属于世界模型,而不是目标假设,系统先修规则再重新规划。

这使每个真实动作尽量产生明确价值:要么推进已经验证的路线,要么提供一个能修程序的反例,要么检验一个胜利条件。

数字孪生到底带来了多少差别

ARC-AGI-3 以第一次游玩的人类为参照,同时衡量完成度和动作效率,给出0到100分。论文报告,同一个基础模型直接游玩时得分为7.8;放进现成的编码 Agent harness——也就是负责组织模型、工具和游戏交互的运行框架——后升至61.1;加入 Twin 的验证、探索和规划循环后达到93.3。

这里的93.3是综合得分,不是过关率。按完成情况计算,Twin 完成25款游戏中的23款、183个关卡中的179个,关卡完成率为97.8%。在完成的179关里,有158关使用的真实动作比首次游玩的人类更少,占88.3%。

作者还做了同基础模型对照:关闭整个 Twin harness 后,完整通关的游戏从23款降到13款,完成关卡从179关降到148关,平均分从93.3降到61.1。这说明提升不能简单归因于换了一个更强的模型。不过,这是整套系统的整体消融,不能单独回答验证、目标推断和搜索各自贡献了多少。

世界模型也并非总能猜对。论文称,它对第一次出现的“状态—动作”组合能精确预测79.0%,对重复组合则达到94.8%。所有真实动作中仍有20.1%的结果与预测不一致。重要的是,系统会把这些错误留下来修复:论文记录的31种后来再次出现的既往误判情形,修补后的模型全部预测正确。

为什么这条路线值得看

Twin 把世界模型从训练阶段得到的固定能力,变成了 Agent 在现场生成、检查和修改的工具。语言模型不必持续充当每一步的决策者。它先把自己的理解写成一个可执行对象,随后由程序和搜索承担内部试演,真实世界则负责提供反例。

论文的结果还指出一个容易被忽略的瓶颈:写出“世界怎样运转”未必是最难的,猜出“应该追求什么”可能更难。Twin 在完成的179关中,有156关在获得任何奖励前就提出了正确的首个目标假设,占87.2%;其余已完成关卡由搜索发现目标。作者据此认为,目标推断比构建可用世界模型更困难。但这仍是作者基于本基准所得的判断,不能直接推广到其他环境。

局限与未知

  • Twin 假设世界大致确定、规则能够压缩成程序。完全隐藏的内部状态、依赖很长历史的机制,以及连续观测,都不适合目前这种逐格精确回放。
  • 搜索有固定深度和计算预算。目标如果太远,或必须付费检验大量排列假设,数字孪生反而可能拖累效率。论文中一款带隐藏倒计时的游戏就出现了这种情况。
  • 成本很高:25次运行共处理26亿 token,墙钟推理时间为91.4小时;单款游戏从510万到6.25亿 token不等。论文没有给出试验方差,结果也尚待独立复现。

Twin 还没有证明 Agent 能为任意世界现场写出可靠模型。它证明的是一个更具体、也更可检验的命题:面对规则清楚但完全未知的格子游戏,Agent 可以把每次互动变成程序测试,在一个不断修补的副本里先想清楚,再谨慎地作用于真实世界。


供稿材料 SOURCES — 1
01
Twin: Playing an Unknown Game with a Test-Time Digital Twin arXiv (cs.AI+cs.LG+cs.CL+cs.CV+stat.ML) · PAPER
原文 ↗

← 返回 2026-08-20 · 学术板块