清华用12款游戏测试AI改代码学习 最强配置仅登顶6个榜单
要点
清华大学计算机科学与技术系团队在arXiv公开了一项研究:把AI智能体放进一场持续了近三十年的真实编程对抗赛里,让它在模型权重始终冻结的前提下,靠阅读规则、挑选对手、复盘录像、重写代码,逐步爬上人类选手留下的排行榜。论文题为《Can AI Agents Learn Their …
清华大学计算机科学与技术系团队在arXiv公开了一项研究:把AI智能体放进一场持续了近三十年的真实编程对抗赛里,让它在模型权重始终冻结的前提下,靠阅读规则、挑选对手、复盘录像、重写代码,逐步爬上人类选手留下的排行榜。论文题为《Can AI Agents Learn Their Way to the Top?》,通讯作者Hongning Wang的署名单位为清华大学计算机科学与技术系,项目同时以”AAArena”之名公开了评测基准与代码。
这一思路被命名为对抗性启发式学习(Adversarial Heuristic Learning)。与传统强化学习靠梯度更新参数不同,这里的学习引擎是智能体本身:它读懂规则后写出一个可执行的策略程序,跑对局、看回放、再回头改写程序,改进的成果落在可读、可回滚的代码里,而不是沉进一层不可解释的权重。评测环境取自清华大学计算机系学生科协主办的智能体大赛,该赛事1997年创办,对战平台名为Saiblo,学生自己设计游戏、后端与选手SDK。团队从历届赛事的档案里挑出12款真实对抗游戏,连同1920份人类存档程序组成冻结的对手池——这些程序是历史真实参赛作品,而非为基准新写的靶子。
协议设计上,每款游戏给智能体两类互相独立的预算:128个小规模定向比赛单位,用来自主挑对手、打小局并取回密集回放;16次完整对手池评测,把当前策略扔进全部人类程序里跑一遍,只返回Elo、排名与胜负分布。成绩取整个运行过程中正式评测过的最佳快照,因此一次失败的改动不会抹掉已有的最好成绩。评测共跑了7种模型与工具链组合,统一开到最高推理强度;其中Opus5.5搭配Claude Code,其余六种均使用Codex。
结果是六金六铁。Opus5.5与Claude Code的组合拿下6枚金牌,也就是在12个榜单中有6个登顶人类榜首,并在9款游戏上取得最高或并列最高的Elo;剩余6个榜单没有任何一种已测配置能够登顶,最好名次分别是Dorado第2、AntWar第5、AntWar2第5、Miracle第6、Generals第10、LOTA第15。分界线出现在规则规模上。团队用统一的形式化伪代码描述各游戏规则,再以抽象语法树节点数衡量复杂度:最简单的是Pacman的1127个节点,最复杂的AntWar2达到6368个,作为参照的国际象棋是1551个、围棋是501个——最复杂的几款游戏规则体量已是国际象棋的四倍多。按节点数排序靠前的6款简单规则游戏中有5款被登顶,靠后的6款复杂规则游戏中只有1款被登顶。
几组消融实验把机制讲得更细。反馈的详细程度影响很大,在统一使用GLM-5.3的对照下,Pacman拿到密集回放时Elo为2236.1、排名第1,只给胜负二值信号则退到1710.1、第11名;AntWar是1118.7对880.6,Miracle是1528.2对1461.1。信息量差在智能体分析历史录像时会被放大成排名差。对手选择同样关键:自主挑选对手在三个代表游戏里都优于随机抽样和只打排行榜最强的对手,阶梯式逐级挑战在Pacman与AntWar上最好,但在Miracle上竟落后于随机选择;测试批大小则存在中间最优,每批2到4个对手优于1个或8个。
真正构成矛盾解读的是预算与素材的对照。三倍交互预算的续跑实验里,Generals与LOTA两款的最好成绩分毫未动,Miracle从第26位前进到第19位,AntWar2从第9位前进到第6位,四个卡住的榜单没有一个被突破。而只改回放来源、完全不动预算的off-policy实验却给出了更好的结果:让智能体去读人类对手之间的对局录像,Pacman从第10位升到第1位,AntWar从第41位升到第19位,Miracle从第27位升到第15位,其中Miracle甚至优于靠自身对局拿到的第26名。两组数据放在一起指向一个不太直觉的结论:停滞的瓶颈不在交互次数,而在素材是否陷入了同质化循环——不断加练只是反复打磨同一套自打记录,换一批别人走过的路反而能提供自己没试过的策略假设。
另一层线索藏在最终胜出的代码里。团队把84份胜出策略按算法类型分类,平均79%的代码靠规则判断与启发式打分撑起,图搜索占13%,前瞻搜索、组合优化、推理随机化四类合计只占8%。表现最好的Opus5.5恰好是规则代码占比最低的一组,为47%,启发式打分与前瞻搜索占比更高。这与规则越复杂表现越差的现象互相呼应:面对多变量交织的复杂局面,智能体倾向于用简单规则应付,而不是构建需要多步推演的搜索策略。论文对此的措辞也很谨慎,指出这只是相关性观察,不能直接推出写复杂算法就能赢。
论文在Dorado这款两人资源竞争游戏上留下了一条完整的修改轨迹,可以看清这种学习是怎么发生的。GLM-5.3在这款游戏上从第41位起步,最终保留的第2名对应2210.3的Elo分数。第一轮修订集中在采矿逻辑上:中央矿井始终开放,其余矿井只在有限时段开放,且同一矿井按单次最高效率计产、多名英雄同时开采并不叠加,因此代码先要在统计占用人数时排除已阵亡矿工,再对重复分配同一矿井施加惩罚,并跟踪每个矿井的开放窗口优先派工,这一轮把排名推到第14位。第二轮把资源从雨露均沾改为集中供养两名核心英雄、同时保留采矿收入,排名直接跳到第3位、Elo增加147.7,是全程相邻评测中幅度最大的一次跃升。第三轮收紧反击条件,要求先观察到持续的近距离进攻压力才允许单个英雄推进,最终停在第2位。轨迹里也有走错的时候:尝试四英雄阵容与无条件使用牺牲技能,分别让排名掉到第46和第43位,但每次失败后系统都会恢复此前保留的最佳版本再继续试。
这套基准的边界同样需要交代清楚,且论文自己写得很直白。对手池是冻结的历史程序,对手的评级与游戏资源在各次运行中被固定,智能体无法读取其他对手的源码或评测器内部信息;由于全池评测的反馈参与了优化过程,报告出的成绩并不测量对未见对手的泛化能力。”金牌”指的是在这套评级协议下取得第一名,并不等于直接击败人类榜首或达到最优策略。同样受限的是几项口径:七种配置比较的是模型与工具链的组合而非七个纯模型,同一交互预算下各配置的token消耗相差五倍以上,预算本身也不限制模型调用与词元用量;此外规则复杂度只是所选形式化语言下的规则描述规模,不等于最优博弈难度。而在论文之外被引用最多的下一步方向,是把分层式启发式学习与梯度优化结合,让智能体在更高层次调整解题思路的同时,在更细粒度上优化具体策略——这为自我改进从写代码走向更宽的任务域留出了接口。



