依存手数

来自俄罗斯方块中文维基

依存手数(Dependency Move Count,DMC)是使关键方块按特定摆法就位而需提前摆好的其他方块的个数。
这个数值是人类玩家判断 Guideline 方块复合形组法的重要依据,它围绕三个基本原理:
一、俄罗斯方块不允许悬空锁定方块,高位方块要依存低位砖格。
二、俄罗斯方块不允许方块直接缩地或穿墙,高位方块会阻挡低位空格。
三、Guideline 俄罗斯方块使用包随机器,可确定每七个方块必是各出一种,只有出块顺序不确定。

人类计算依存手数,AI 计算依存比率

严格地说,判断特定复合形组法成功率的关键依据并不是依存手数,而是依存比率(Dependency Move Ratio,DMR)。
其具体做法,就是穷举出块顺序的排列组合中的所有依存情况计算出比率,必要时还要加以考虑暂存
但是,复合形组法涉及的总块数越多,出块顺序的排列组合总数也就越多,人类也就越难正确地口算依存比率。
人类玩家的算力是很有限的,而且实战中常常会出现替代的组法和消法,通常应当估算依存手数以满足速度的需要;
俄罗斯方块 AI 的作者命令 AI 计算依存性时,如果愿意分配足够的算力,就可以取依存比率。

依存距离

依存距离(Dependency Distance,DD)是一个来源于句法学的概念。
俄罗斯方块中的依存距离等于被依存块在预览块中的序号。
判例:第一包的 I 最后出现,横 I 的 TKI 开局就有了长达 6 的依存距离,超出了承受范围,需要更换开局方法。
暂存(Hold)能把特定方块的依存距离保持在零的水平,进而大幅提高严格连续的成功率。

依存的种类

铺垫依存

Tet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.png
GGGGGGGG-Tet.png
GGGGGGG--Tet.png
GGGGGGTet.pngTet.png-Tet.png
GGGGGGGTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.png
GGGGGGGG-Tet.png
GGGGGGG--Tet.png
GGGGGGZZ-Tet.png
GGGGGGGZZTet.png

例一:为凑满消四形状,此例的 T 必须先垫好 Z 才能成功到位,依存手数 = 1。

Tet.pngTet.pngTet.pngTet.pngTTet.pngTet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTTTITet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngSSIZZTet.png
OOTet.pngSSLIJZZ
OOTet.pngLLLIJJJ

例二:DT 炮经典开局摆法。
出块顺序需求:J > Z,L > S > T。
此例中,J、L、S 这三个方块是被依存块,依存手数 = 3。
若要严格地完成这个摆法,开局第一包不可同时冲突其中的任意两手依存。

卡位依存

Tet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.png
-Z-ZTet.pngGGGGGGTet.png
Tet.png-Z-ZGGGGGGTet.png
Tet.pngGGGGGGGGTet.png
Tet.pngGGGGGGGGTet.png
Tet.pngGGGGGGGGTet.png
GGGGGGGGGTet.png

例一:若要完成此处边列消四完整堆叠,Z 就不能先卡 I 的位,依存手数 = 1。

Tet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.png
--O-OJGGTet.pngTet.pngTet.pngTet.png
--O-OJGGGTet.pngTet.pngTet.png
--JJGGGTet.pngTet.pngTet.png

例二:墙边 4×3 盒子使用 LOJ 组合(已经竖好了 J)。
若要严格地完成这个摆法,O 就不能先卡 L 的位,依存手数 = 1。

Tet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.png
-J-J--GGTet.pngTet.pngTet.pngTet.png
-J--LGGGTet.pngTet.pngTet.png
-JLLLGGGTet.pngTet.pngTet.png

例三:墙边 4×3 盒子使用 LSJ 组合(已经躺好了 L)。
由于 SRS 有 S-Spin 钻地突破卡位限制,J 和 S 顺序任意,依存手数 = 0。
相较例二,例三的复合形组法依存手数更少,能适应更多种块序。

挖掘依存

Tet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngGTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngTet.pngTet.pngGGTet.pngTet.png
GGGGGGGTet.pngGG

例一:为了快速挖通最下方的垃圾行,此处需要填 17 个空格,至少需要 5 个方块,挖掘依存手数 = 5,非常危险。

GGTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngG
GTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngGG
GGTet.pngGGGGGGG
GGGGTet.pngGGGGG
GGGGTet.pngGGGGG
GGGGTet.pngGGGGG
GGGGTet.pngGGGGG

例二:已知此处暂存了 T,挖掘依存距离 = 0,非常安全。
根据实际场况决定 T 的使用时机,打造更好的攻防形势。