KeyTo9_Fans 发表于 2012-9-17 14:56:41

俄罗斯方块的最佳清障速率

假设我们有一个高度为正无穷大、宽度为10的容器。

容器底部有N行“国际象棋棋盘状”的障碍,如下图所示:



容器顶端出现的方块有$7$种,如下图所示:



其中每种方块出现的概率均为$1/7$。

为了简单起见,我们假设:

??方块不会自动下落;

??我们可以随意左移、右移和旋转方块;

??我们只让方块竖直落下,直到与障碍接触为止;

??我们不使用中途旋转、穿插等复杂动作。

方块落下之后,如果某行的$10$个格子全满,

那么该行会自动消除,并且该行上方的所有方块自动下移一行。

如果将容器底部的最后$1$行消除了,则认为清障完成。

我们将清障速率记为$N/S$,其中$N$是清除障碍的行数,$S$是所使用的方块个数。

我们假设$N$足够大。

问题$1$:如果只知道当前要放置的方块,最佳策略下的清障速率的期望值是多少?

问题$2$:如果还知道下一个进入容器的方块,最佳策略下的清障速率的期望值是多少?

KeyTo9_Fans 发表于 2012-9-17 16:17:52

可以下载以下附件试玩:



仅限Windows操作系统。

操作按键有:

左箭头、右箭头、上箭头、空格键、回车键和Esc键。

如果清障完成,底部会显示清障速率。

KeyTo9_Fans 发表于 2012-9-22 21:30:11

$10$列的状态数可能太多。

为了减小计算的复杂度,我们先考虑$4$列的问题吧。

以下附件是$4$列的俄罗斯方块,可以试玩一下:



#####

经过试玩,发现$4$列的俄罗斯方块无法持续清障(不知是Fans策略不佳,还是本来就没有持续清障的策略)。

如果不能持续清障,那么最小的向上堆积速率是多少?

winxos 发表于 2012-9-25 12:58:33

哈哈,以前玩俄罗斯经常不旋转直接消,console下以前也写过一个贪吃蛇,好熟悉的感觉~有机会要和keyto切磋下俄罗斯方块.
页: [1]
查看完整版本: 俄罗斯方块的最佳清障速率