摘要

公平 AI v59 是项目里只用公开信息的规则型对战 AI。在 36 道精确战术题(见实验 0044)上它答对 24 道,错的 12 道里全部选了攻击,其中 10 道最优是等待、移动或跳过。本实验逐题拆开 v59 的评分分项,判断错误来源。事前冻结的 go 线是:12 道中至少 8 道能明确归因于“公开信息下的估值缺陷”。结果 12/12 都能归因,其中 5 道由“只改反击项”的反事实重排直接证实,另 7 道由分项与参考线对照归因。实验达到 go 线,可以进入估值修改原型(实验 0064)。

要回答的问题

12 道错题里,有多少能仅靠现有公开信息和更合理的动作估值改对?主要错在哪个评分分项?

方法

  1. 跨版本基线:12 道错题(实际对全部 36 道)分别在规则版本 Core449 和 Core450 下构建,比较公开观察、合法菜单、逐动作分数和最终选择,应完全一致。
  2. 分项记录:用只读包装器记录 v59 每个候选动作的评分分项(每个钩子调用原方法、原样返回),并让引擎实际执行所选攻击,得到真实伤害与反击;参考答案用题库同一参考求解器重算。
  3. 反事实重排:只改攻击的反击项、其他分数沿用 v59 原值,看能改对多少题、回归多少题。这是纯分析,不是策略。

设置

只用 36 道开发题,68 道留出题未打开;不改默认 AI、不改规则、不训练、不跑新比赛。预算 90 分钟,实际约 6 分钟。

结果

跨版本:36/36 道题在两个版本下完全一致,v59 答对 24/36。

12 道错题(反击惩罚与损失都是 v59 自己的评分数值,“引擎实际反击”是执行后的真实反击伤害):

题 最优类别 v59 所选 正确动作排名 v59 反击惩罚 v59 估计反击损失 引擎实际反击 原因
p0003 移动/跳过/等待 攻击巨蛙 2/16 0 16.2 47 A(反事实已证)
p0013 移动/跳过/等待 攻击巨蛙 2/16 11.3 24.3 81 B(反事实已证)
p0019 等待 攻击神射手 3/17 14.3 32.4 38 C 次序
p0030 等待 攻击牛头人 2/16 8.1 16.2 37 B(反事实已证)
p0036 移动 攻击羊人射手 7/17 0 62.1 114 A + C 站位
p0043 换目标攻击 攻击渗透者 2/17 0 33.8 38 A + D 目标
p0046 等待 攻击穴居人 9/16 0 22.1 36 A + C 次序
p0050 换目标攻击 射击牛头人 2/15 0(远程) — 0 D 目标
p0056 移动/跳过/等待 攻击巨蛙 2/16 0 32.4 108 A(反事实已证)
p0060 移动 攻击羊人射手 8/17 0 62.1 96 A + C 站位
p0062 移动 攻击羊人射手 7/10 0 41.9 91 A + C 站位
p0077 等待 攻击小跳兵 2/16 24.4 52.2 104 B(反事实已证)

四类原因(都只依赖公开信息;正确动作都在候选里,排名 2–9):

  • A 反击暴露按攻击前位置判定:v59 只在攻击者“当前位置”与目标相邻时算反击惩罚。需要先移动再近战的 7 道题惩罚全是 0,而引擎实际反击 36–114。
  • B 反击损失低估:估计 = 目标数量 × 平均伤害 × 0.45,不含攻防差;比引擎实际低 1.1–3.3 倍,有反击的 11 道题全部偏低。
  • C 不攻击的动作没有机会价值:等待固定 0.1、跳过 0、移动只看接近距离和很小的邻接危险;看不到“让对方先打进来吃我方反击”(站位)和“让别人先行动削弱反击”(次序)的价值。
  • D 选目标只看本次扣血,不考虑削弱下一个行动的敌人。

反事实重排:

变体 错题改对 原对题变错 36 道合计
v59 — — 24
V1:暴露按攻击落点判定 2(p0003、p0056) 0 26
V2:V1 + 用引擎实际反击作损失(精确估计的上界) 5(另加 p0013、p0030、p0077) 3(p0048、p0071、p0078) 26

V2 的回归说明:只把攻击一侧的反击代价算准、却不算“不攻击时对方打过来”的代价,会推翻余量很小的正确攻击(例如 p0048 惩罚从 7.1 变为 9.3 即翻转)。A 可以单独修;B 必须与 C 一起修。

失败与负结果

没有发现 Simulator 规则错误或标签争议。V2 的 3 道回归是有价值的负结果,提示单边修正的风险。

局限

  • 只有 12 道小题、一回合视野;开发题已暴露,不能作为棋力证据。
  • 只有 5 道由反事实证实,另 7 道是分项归因。
  • V2 用了引擎真值,不是可上线的估计。

结论与下一步

达到 go 线(12 ≥ 8)。建议的最小原型:A 反击暴露按实际攻击位置判定;B 用公开攻防的反击估计替代 ×0.45;C 给等待和移动加上对称的“对方下一个行动打我、我方反击”机会项。原型须保证开发题不回归(p0048/p0071/p0078 作为哨兵)、留出题只开一次、排位不降,见实验 0064。