这一轮做 50 关的过程里,最有用的结论是一个否定结论:原计划的「agent 打分 → 拟合权重 → 重选关卡」这个闭环合不上,而且不是样本量的问题。下面是它为什么合不上,以及流程该改成什么样。
机械面干净,说明生成期的闸门是有效的:「动了很多次没结果」这类结构缺陷已经被挡在关卡集之外。难度评分那一格是这两轮真正的发现:机械上差着三倍的关卡,它一律给 2 分。更早的记录里这项的复测可信度是 0.93,那是个更小的样本——在这一批 99 对复测上实测是 0.46,所以它既不区分、也不像以为的那么稳。
第一轮唯一可用的读数是「整批偏易」,加上抱怨里反复出现的「转了没反应」。据此只改了两件事:给连续空转设闸门(最多一次转动没反应,此前有 11 关能连着两次),以及把难度曲线写成旋转深度的配额而不是指望它从排序里自己长出来。第三轮又只改了一件:桶内改按反差取。每轮一个变量,才看得出是哪个变量起的作用。
| 同一个规则机器人,三套关卡集 | 第一版 | 第二版 | 第三版 |
|---|---|---|---|
| 盲转 / 关 | 0.24 | 0.12 | 0.14 |
| 最长连续盲转 | 4 | 1 | 1 |
| 空点 / 关 | 0.00 | 0.00 | 0.00 |
| 决策 / 关(要做的事) | 10.3 | 10.3 | 9.8 |
要做的事一样多,浪费掉的动作少了一半,而且第三版保住了这个成绩。这是同一个玩家的对照,所以变的是关卡不是模型的心情——一次 50 关的全量验收 1 秒跑完,这也是为什么全量验收该交给它而不是 agent。
| grok 实测,按档(每关计一次,与它自己玩的那一版对齐) | R1 | R2 | R3 | |||
|---|---|---|---|---|---|---|
| 难度 | 无解感 | 难度 | 无解感 | 难度 | 无解感 | |
| 前档 L1–L12 | 2.00 | 1.33 | 2.00 | 1.21 | 2.00 | 1.17 |
| 中档 L13–L32 | 2.10 | 1.35 | 2.05 | 1.15 | 2.05 | 1.20 |
| 后档 L33–L50 | 2.17 | 1.61 | 2.39 | 1.72 | 2.19 | 1.64 |
| 后档的关卡参数 | 3.5 转 | 反差 21.7 | 4.1 转 | 反差 27.9 | 4.0 转 | 反差 28.5 |
第一轮三档几乎是一条平线。第二轮把后档的旋转深度从 3.5 提到 4.1 转,后档评分随之升到 2.39——评分第一次表现出梯度,但只在按档平均之后。
第三轮是一个被自己的数据否掉的假设,已经回退。第二轮显示打 3 分的关比打 2 分的关反差高 59%,于是第三轮改成按反差选关——只动这一个变量,后档反差从 27.9 提到 28.5,旋转深度不变。
结果是后档更简单了:2.39 ± 0.10 对 2.19 ± 0.08,约两个标准误;平均分到 2.5 以上的关从 11 关掉到 8 关。评分复测只有 0.46,但那限制的是逐关排序,不妨碍组间均值——两轮各 100 与 100 局,这个差距站得住。
所以交付的是第二版。反差仍然是策划点名的好玩机制,也确实和「被评得更难」相关,但按它选关并不能造出更难的关——相关不等于可操纵。这条写进规则 4:每个新做法都要能在数据里看到它挡掉/换来了什么,看不到就撤回。
下面的 r 是在这一批关卡上现算的:同一个 agent 把每关玩了两次,99 对。不是引用更早、更小的样本。
| 信号 | 复测 r | n | 怎么用 |
|---|---|---|---|
| 盲转次数 | 1.00 | 99 | 可用:驱动了真实修复 |
| 转错方向次数 | 1.00 | 99 | 可用 |
| 实际旋转数 | 1.00 | 99 | 可用 |
| 步数 | 1.00 | 99 | 可用 |
| 决策数 | 0.93 | 99 | 可用 |
| 无解感评分 | 0.47 | 99 | 只按档看 |
| 难度评分 | 0.46 | 99 | 只按档看,约 20 局起 |
| 好玩评分 | 0.10 | 99 | 不可用 |
| 清晰度评分 | 0.28 | 99 | 不可用 |
机械指标全部 r ≈ 1.00,但那多半是因为 agent 88% 的情况下重放了完全相同的动作序列——这本身才是有用的那条结论:重复跑同一关买不到新信息。评分则相反:同一条轨迹,12 对给出了不同的难度分。
| 指标 | 可用 | 依据 |
|---|---|---|
| 盲转 / 多余转 / 转错方向 | 可用 | 本批复测 r = 1.00;驱动了真实修复(盲转 1.17 → 0.12) |
| 是否通关、空点次数 | 可用 | 直接观察,无主观成分 |
| 自由文本抱怨 | 可用 | 33 条里两个主题高度重复,指标抓不到;但须对照基线(规则 5) |
| 难度评分 | 只按档看 | 逐关复测 r = 0.46,且同一条轨迹会打出不同分;按档平均约 20 局才显出梯度 |
| 无解感评分 | 只按档看 | 复测 r = 0.47;按档看时与难度同向抬升,可当挫败感的代理 |
| 好玩 / 清晰度评分 | 不可用 | 复测 r = 0.10 / 0.28,是模型噪声 |
select-50.mjs 按特征打分并均匀铺开,家族上限防止一套模板占满(上一版 1000 关实际只有 30 套模板)。| 试过什么 | 结果 |
|---|---|
| 拟合 difficulty ~ 机械特征,用来重选关卡 | 响应几乎无方差(84/100 同分),回归的是常数 |
| legibility(一眼看穿的成本)解释难度评分 | 相关 -0.02,无效;降级为纯测量 |
| 路线交叠度当难度轴 | 中位已达 89%,没有上升空间 |
| 换开局朝向来提高判断成本 | 127 个候选里只有 7 个变好 |
| 「插入端多朝向出口」过滤器 | 对漏斗零效果,已删除 |
| 把锁住比例当难度主轴排序 | 方向反了:它奖励「开局什么都做不了」 |