把一个老游戏当成实时考场,19 个编码代理打了 171 场循环赛

有一份基准把一款老即时战略游戏当成封闭的实时对局环境,让 19 个模型与推理档位配置两两对战,171 场对局全部跑完,折合 342 个玩家侧 run、318,388 条引擎快照行。成绩包括胜负、操作频率、每局美元成本和游戏里的经济、军事、科技指标。关心编码代理在边观察边动手的长任务里能走多远的人,可以拿它当实测材料。它不测硬件、编译器和帧率,名次只在代理之间有效。

为什么用一个老游戏给编码代理出题

这款游戏的规则十几年没有大改,自带成熟的程序接口。单位和建筑叫什么、能做哪些动作都有固定名目,代理写出的代码直接对着接口生效。对局双方都是代理,输赢由引擎判定,不靠人打分。

更难替的是实时性。游戏时钟按帧走,一秒等于 24 帧,代理思考期间画面不暂停。平时写代码,模型可以慢慢想;这里每一帧都在结算,采集、建造、出兵各按自己的速度走。想得久,兵力落后一截,长上下文补不回这个差距。

24 帧一秒的游戏时钟怎么变成成绩单

接口用的是 BWAPI 的形状。每一帧给一次 onFrame 快照,也就是当下的全局状态;代理通过 issue_commands 下指令,训练、建造、攻击移动、采集、研究都作用在快照里的单位编号上。每条命令返回结果,被拒的下轮重发。

记录分两侧落盘。引擎侧按帧记状态、事件和回放数据,代理侧记每次工具调用的意图、工具名、状态和用量。两边按同一帧号归档,可按任意帧区间回放一小段。趋势曲线按三十秒游戏秒采样、十五秒容差聚合,图上均值只覆盖仍在局里的 run。

同样想得多为什么有的赢有的死在思考里

榜首配置 18 胜 0 负,操作频率 12.6,每局 10.54 美元。末位配置 0 胜 16 负,操作频率 4.2,每局 1.26 美元。每局成本从 0.16 到 21.07 美元,横跨一百多倍。

有一局里,某个配置烧掉 11,138 个推理 token,只发出 6 个命令批次,43 分钟没造出任何作战单位。系统提示写得很清楚,游戏实时运行,思考期间不暂停,必须观察、决策、发令、验证结果再重复,失败指令要重发。接得上这条循环的靠推理赢,接不上的死在思考里。

操作频率高等于打得好吗

排行榜直接给出反例。操作频率最高的那一档 48.3,排在 12 名开外;榜首的 12.6 拿下 18 战全胜。

口径得先看清。它算每游戏分钟执行过的指令数,只取过去六十秒,自动选择、后台自动采矿和被拒的命令都不计入,一次编组算一个动作。高数值说明指令刷得勤,常是同一个动作反复下发、大批指令被拒后的重试。把局势推向胜利的判断,比如何时扩张、何时升级,一局只做几回。

一场比赛的账除了胜负还记下什么

中位时长按模型合并后分别是 8 分 10 秒、10 分 37 秒、9 分 15 秒;四局拖到时间上限,记为不计胜负的平局,最长一局跑了 44 分 11 秒。经济、军事、科技三类指标按时间序列记,存活工人、军队规模、完成建筑、未花费的矿物与气体、已用 supply、研究进度都在内。

五分钟时刻的三组均值能说明差距。存活工人 14.7、16.7、7.4,库存矿物 240.6、248.6、536.6。矿堆最多的那一家,钱花不出去。单场报告还带工具调用流水、开局顺序和战斗事件,能导出成表格。

读这组成绩前先记住三条局限

  • 全部对局都是代理打代理,没有人类新手基线,名次不能直接换算成人类水平。
  • 模型、harness、推理档位、上下文窗口、推理预算都由代理自报,报告本身声明这类元数据不可信,跨配置比较无法验证口径是否一致。
  • 循环矩阵每个组合只打一局,没有多局重复,也没有换地图和随机种子,单场方差直接进入胜率。

拿它做判断分三种情况。挑候选,每美元胜率和成本上限一起看,0.16 到 21.07 美元就是预算区间。研究失败模式,帧级回放和工具调用流水比名次有用,失败长什么样,看一局就够。要据此宣称代理超过人类玩家,材料差得远。