PERSLIS DEFENSE · 第三章 · 组合
约束彼此组合得很糟。
每一条交战规则、每一个禁入空域、每一条冲突消解规则单独看都成立。无人测量的问题是它们合起来会做什么 —— 答案是:一个只会增长的规则集,最终会拒绝一切。
测量,而非断言
在一个智能体真实遭遇过的 91 个情境上,我们统计了每个情境中有多少动作能在规则集下幸存。
| 规则集 | 规则数 | 死局 | 被迫 |
|---|---|---|---|
| 有界工作集 | 30 | 6 | 9 |
| 无界 | 50 | 12 | 15 |
规则翻倍,死局也翻倍。其中每一条规则都由真实失败换来,单独看都正确。在无界情况下,智能体的表现比完全不学习更差 —— 不是因为哪条规则错了,而是因为可容许集合只会不断收缩。
这正是安全层在现场被关掉的原因。它很少被写下来,因为只有当你测量集合而非单条规则时,它才会显现。
覆盖度感知的规则退休
常见的缓解办法是按每条规则自身的证据质量打分,保留最好的 N 条。我们一开始就是这么做的,而它依然是盲的:它只给单条规则打分,从不追问合取之后会怎样。
于是我们为集合打分。对智能体真实遭遇过的每个情境:
actions_seen(S) − actions_blocked(S) = choices_left(S) 0 → 死局 所有选项被拒;地板变成了一堵墙 1 → 被迫 只剩一个选项;智能体在此不再决定任何事
一条规则的保护是它所解释的失败次数,代价是它把多少情境推入死局或被迫。退休按「代价/保护」最差的顺序丢弃规则,直到选择空间恢复。在实测集合上:死局 6 → 0,代价是交还 29 次已记录的失败,同时被迫从 9 升到 14 —— 情境从没有选择变为一个选择。
退休让可容许集合能够重新长回来。纯粹的累积永远做不到,而这种不对称正是班组规模的约束系统需要它、而不只是需要一份更长规则清单的全部理由。
为什么这是班组问题
一个平台配三十条约束,是一个可处理的规则集。一个班组则是这个集合乘以单元数量,再加上只存在于单元之间的约束 —— 间距、区域纪律、火力消解、通信窗口。在那个规模上,组合问题不是细节,而是主导项。
一个无法测量自身瘫痪程度的系统,最终只会被唯一可得的信号调参 —— 操作员把它关掉。我们宁愿把数字先交出来。