B2BFSC

来自俄罗斯方块中文维基
T-exclamation.png 这是一篇文章,与百科条目有所不同,保留作者个人风格,请读者注意。
本文由 gap 撰写。

B2BFSC(背靠背自由式连击,Back-to-Back Free Style Combo)是一种专门侧重 B2BFSCSRS 对战方块玩法。
该玩法由 ZZZTOJ v0.12 通过非专家指导(不人为预设消行权重,只调参数)对局训练总结而得,集混乱攻击、抵消、挖掘为一体。
相较 ZZZTOJ v0.8 采取的 4T2FSC 玩法,B2BFSC 更侧重 B2B 的总次数和 FSC 大连击的频率,往往会有更多的 T1
有一种说法认为,该玩法是理性程度仅次于 c4w 的 Guideline 对战玩法。

B2BFSC 重 T1 的相关原理

B2BFSC 的 T1 权重比 4T2FSC 高。
相较 T2,T1 与 FSC 的相性更好。

T2 的 APL 差在第二行

从攻击当量的角度来看:T2 的第二行攻 2,如果拆成 T1 延长一次连击,只要能上 4–5 连,这个差值就扳回来了。
亦即,将 T2 成功拆成 T1 + 消一得到 FSC 大连击,攻击效率将会更高。

T1 的砖格需求比 T2 小

Tet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.png
GG----L---
GTet.pngTet.pngTet.pngLLLGGG
GGTet.pngGGGGGGG
GGTet.pngGGGGGGG
GGTet.pngGGGGGGG
GGGGGGGGTet.pngG
Tet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngTet.pngITet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngTet.pngITet.pngTet.pngGG
Tet.pngTet.pngTet.pngTet.pngTet.pngITet.pngTet.pngTet.pngG
GGGGGISSTet.pngG
GGGGGSSTet.pngTet.pngG
GGGGGGGTet.pngTet.pngG
Tet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.png
STet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.png
SSTet.pngTet.pngTet.pngTet.pngTet.pngGGTet.png
GSTet.pngTet.pngTet.pngTet.pngGGGG
GTet.pngTet.pngTet.pngSSGGGG
GGTet.pngSSGGGGG
GGTet.pngTet.pngGGGGGG
Tet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngGGTet.pngTet.pngTet.pngTet.pngTet.pngTet.png
GGGTet.pngTet.pngTet.png-GGG
GGGGTet.pngGGGGG
GGGGGGTet.pngGGG
GGGGGGTet.pngGGG

T2 砖格需求大,它必须补满 2 行,很容易出现某些 T 完全不消行的情况,T 的利用率往往比 T1 玩法更低。
而且,为了凑满最后一手,T2 可能会诱导空域分割(形成双空,妨碍 FSC)、构成不良形状、产生重复需求、妨碍挖掘连击。

GGGGGG---Tet.png
GGGGGGGG-Tet.png
GGGGGGGGTTet.png
GGGGGGGTTTet.png
GGGGGGGGTG
GGGGGGGGTet.pngG
Tet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngZZTet.png
Tet.pngTet.pngTet.pngTet.pngTet.png-Tet.pngTZZ
GGTet.pngGG--TTG
GGGGGGGTGG
GGGGGG-GGG
Tet.pngGGGGGGGGG
Tet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngSSTet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngSSTet.pngTet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngGGTet.pngGGG
GGTet.pngGGGGGGG
GGGGGGGGGTet.png
GTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngGG
GGGGT---GG
GGGTT-Tet.pngTet.pngGG
GGGGTGGGGG
GGTet.pngGGGGGGG
GGGGGGGTet.pngGG

T1 砖格需求小,能把更多的砖格留给消四和 FSC;
砖格需求小,形状调整也就更灵活,T 块使用率更高,能为 FSC 留出合适的打连方案。

T1 直接 +4/5 更少

每当第一消的 T2 改成 T1,B2BFSC 就少送一次 +4/5 垃圾行,对手可直接反打的消四也就更少,其防御难度将会增加
如果是算力和持久力充足的 AI 对打,它们还能够承受;
如果是人打 B2BFSC 的 AI,人类一方就困难了:一旦不能跟上 T1 + FSC 系垃圾行的算力需求,虚了下来,离死也就不远了。

人类玩家采用 B2BFSC 玩法的要点

  • 放宽心态,不要觉得只消 T1 是自己吃亏
  • 能用较少的手数自然完成和通路的 T2 不要去病态 T1,该 T2 还是要 T2
  • 多使用地表特征形引导的 T2 及其对应的 T1,少使用悬空 T2 等很容易妨碍 FSC 的手法
  • 直觉 T2 会有困难的,弄出 T1 的壳子就不要再算了,把算力投入到 FSC 上面
  • 相较 T 的单次攻击当量,更重视 T 的利用率,把打爆发的任务交给 FSC
  • 降低散消二三的权重,T1 剩余部分瞄准消四和 FSC
  • 特别关注 T2 没补满的部分与 FSC 的联系

训练过程

  1. 创建 64 个 AI 个体,赋予以下规则信息:
    1. 胜利/失败条件(追加规则:可使用的总方块数为 1000,如果双方都不死,APM 高的一方胜出)
    2. SRS 方块运动规则
    3. B2B、T 槽、T-Spin、连击
    4. 各消行状态的攻击当量
  2. 根据游戏规则,赋予 AI 相关的落块评分指标:
    1. 生存指标(中间四列最高砖格所在的行数,方块堆的总砖格数和总边长,死格,空列宽度,挖掘手数,防御当量)
    2. 攻击指标(B2B、T槽(如果盖上,生存扣分,攻击补分持平),连击,T/I 距离当前方块的手数,暂存区是否为 T/I,消行的种类)
  3. 有限展开落块计算:
    1. 优先计算生存指标,套用额外的算法计算攻击指标(评价序列和场地)
    2. 将场地中的 n 个可以摆放的位置分别求值计算落块评分,取最高分的位置摆放方块
    3. 预览块一路展开,每放一块就多展开一层
    4. n^7 算不完,只挑拣一部分展开,降低算力需求
  4. 不向这些 AI 提供其他专家指导(不指明侧重 T2 等任意一种攻击),令这 64 个 AI 在 TOJ 环境下随机两两等速对局
  5. 每个对局节点打 256 局,用 ELO 评分衡量胜负情况,记下第一名的配置,同时也根据人类经验适当修改,清零重打
  6. 重打时,AI 用仿生学的方法继续动态调整相关配置,寻找自己最优的方法和全局最优的方法,得到新的第一名配置
  7. 继续重复前两步,利用胜率驱动训练出胜率高的参数配置
  8. 观察发现,第一名往往是“沙包”(怎么也打不死,但也不太能打死对方),此时适当在攻击指标上添加人为干预,继续对局
  9. 结果发现,手调过攻击效率参数的 AI 的 ELO 评分先涨到 1750 后跌到 1300,因为它被干预了之后就不会迭代了,在训练过程中逐渐被淘汰
  10. 最后,总结胜率高的参数配置的做法和特点:
    1. 消行时,把计算力选往一边倾斜分配(比如生存(FSC)或 B2B)
    2. 如果方块放下去不知道能否加大攻击,就偏向生存
    3. 不消行的方块不计算生存,节约算力
    4. 在合适的时候,放大生存或攻击,负责混合二者
    5. 单独拎出空列宽度的权重
    6. 把 T 槽的计算问题转化为纯粹的特征寻找
    7. T3 次数几乎总是 0

以上特点合在一起执行,得到的就是 B2BFSC 玩法。
这种玩法的计算细节可能存在非常复杂的部分,但有一点是十分明显的:它会大量地故意 T1 节约砖格,争取扩大 FSC。

B2BFSC 与 4T2FSC 的数据比较

二者总体攻防差距不大,但长期的胜负情况和 APP 情况都是 B2BFSC 更胜一筹(比较时间:2020 年 3 月)。
下表数据选自一个最迟文件配置时间为 2020 年 3 月 15 日的 AI 对局:

ZZZTOJ v0.8_02(4T2FSC) ZZZTOJ v0.12_0315(B2BFSC)
0 1
方块数 931 908
PPS 2.10 2.05
APM 116.3 119.7
攻击当量 861 886
送出垃圾行 597 630
接受垃圾行 366 341
APL 1.26 1.33
APP 0.924 0.975
最大连击数 11 12
全清次数 0 1
 连击攻击当量  241 315
B2B 次数 56 65
T-mini 次数 16 23
T1 次数 12 45
T2 次数 64 34
T3 次数 4 0
消一次数 209 211
消二次数 33 53
消三次数 32 15
消四次数 36 42

但这并不意味着 B2BFSC 玩法就绝对更强。
此处的 ZZZTOJ v0.8 采用的是早期(2016 年 5 月 16 日)的专家指导,消三和 T 槽的权重偏高,可能会为了保留 T2 的 T 槽而放弃 6–8 连部分的 FSC。
B2BFSC 的 AI 在发展的过程中逐渐自然形成了一种“不是 T 块就不软降”的游戏风格,有得有失,对局结果大体上很好。
4T2FSC 的 AI 属专家指导型玩法,如果 AI 作者能赋予它更强的专家指导方案,它的胜负情况和 APP 情况依然有机会继续改善。