魔方吧·中文魔方俱乐部
标题: 推箱子关卡最佳答案的步数 [打印本页]
作者: skyivben 时间: 2012-4-19 22:51:40 标题: 推箱子关卡最佳答案的步数
我在“只有一个箱子的关卡的最佳答案的步数”的15楼中提到:
进一步,我们定义以下函数:
- P(n, m, k) 表示大小为 (n + 2) x (m + 2) 的可解的最复杂的最多 k 个箱子的关卡的最佳答案的步数。
- Q(n, m, k) 表示大小为 (n + 2) x (m + 2) 的可解的最复杂的刚好 k 个箱子的关卡的最佳答案的步数。
- R(n, m) = P(n, m, n * m),表示大小为 (n + 2) x (m + 2) 的可解的最复杂的关卡的最佳答案的步数。
- S(n, m) = Q(n, m, 1),表示大小为 (n + 2) x (m + 2) 的可解的最复杂的只有一个箱子的关卡的最佳答案的步数。
显然,R(n, m) ≥ S(n, m),也更值得研究。
- R(1, 2) = 0
- R(2, 2) = 0
- R(1, 3) = 1 : D
- R(2, 3) = 5 : ruulD
- R(3, 3) = 10 : drruulDrdL
- R(1, 4) = 2 : DD
- R(2, 4) = 7 : uruulDD
- R(3, 4) ≥ 17 : RluUdrruulDrdLulD
- R(4, 4) ≥ 25 : luUrurrdddLLrruLruulDDrdL
上述结论还有很大的改进余地。
请参阅:再谈推箱子关卡最佳答案的步数
作者: xiaopo18 时间: 2012-4-19 22:58:31
推箱子这玩意太复杂了。。。我这智商也就我小游戏上推箱子前几关了
作者: sokoban 时间: 2012-4-19 23:21:03 标题: 回复 2# 的帖子
目前步数最多的关卡(箱子个数没有限制)可能暂时还是利用 Fibo 系列关卡来构造。参看此帖:(34楼 金优先生的回帖)
http://bbs.mf8-china.com/viewthr ... mp;page=4#pid621511
作者: lietice 时间: 2012-4-20 01:12:08
好厉害,虽然看不懂。。
作者: skyivben 时间: 2012-4-20 21:43:44 标题: 更正: R(3, 4) 的最小值
1楼的 R(3, 4) 不对,应该是:
R(3, 4) ≥ 13 : uURdrdLuuurDD
作者: skyivben 时间: 2012-4-20 21:48:13 标题: 新的 R(3, 4) 关卡
R(3, 4) ≥ 21 : rrddlldRuruullDDrUruL
不知是否有更好的解答。
[ 本帖最后由 skyivben 于 2012-4-20 21:50 编辑 ]
作者: skyivben 时间: 2012-4-21 16:52:16
我在“推箱子关卡最佳答案的步数”中定义了 B(n, m) 函数:
- B(1, m) = m - 2, when m > 0
- B(n, m) = B(m, n), when m > 0, n > m
- B(n, m) = B(n - 1, m - 1) + B(n - 1, m), when m > 1, n > 1, n ≤ m
并提出SB猜想:S(n, m) ≥ B(n, m)。
现在我们提出RB猜想:R(n, m) ≥ B(n, m)。
由于R(n, m) ≥ S(n, m),所以如果SB猜想成立的话,RB猜想也就一定成立。
由于B(n, m)增长得非常快,所以SB猜想未必成立。虽然目前还没有找到SB猜想的反例。
但是RB猜想是非常有可能成立的。
作者: sokoban 时间: 2012-4-21 17:07:38 标题: 回复 7# 的帖子
除了n很小的情况,一般地,我猜测 R(n,n) < 2^n
即50x50的关卡,步数不会超过 R(48,48) < 2^48 = 281474976710656 步
[ 本帖最后由 sokoban 于 2012-4-21 17:17 编辑 ]
作者: skyivben 时间: 2012-4-21 17:56:39 标题: 回复 8# 的帖子
根据“[url=http://bbs.mf8-china.com/viewthread.php?tid=30733&page=4]解法步数随关卡大小成指数增长的关卡[/url]”贴子第34楼和36楼jinyou(金优)先生的说法,我们有:
- R(5, 5) ≥ 48 : rDrddlLUlldRdrUrruulDuullDDRUdddlUluRurrrddLUruL
- R(5, 7) ≥ 170 : rDDDLUdrrddlLUlldRdrUrruulDuullDDRUdddlUluRurrrddLLUlldRdrUrruulDuuuullDDRUldDDRUdddlUluRurrrddLLUdrruulDlddlUluRuuurrDDLUdrrddLLUlldRdrUrruulDuullDDRUdddlUluRurrrddLUruL
- R(5, 9) ≥ 494 : rDDDLUdrDDLUdrrddlLUlldRdrUrruulDuullDDRUdddlUluRurrrddLLUlldRdrUrruulDuuuullDDRUldDDRUdddlUluRurrrddLLUdrruulDlddlUluRuuurrDDLUdrrddLLUlldRdrUrruulDuullDDRUdddlUluRurrrddLLUlldRdrUrruulDuuuuuullDDRUldDDRUldDDRUdddlUluRurrrddLLUdrruulDlddlUluRuuurrDDLUdrrddLLUlldRdrUrruulDuullDDRUdddlUluRurrrddLLUdrruulDlddlUluRuuuuurrDDLUdrDDLUdrrddLLUlldRdrUrruulDuullDDRUdddlUluRurrrddLLUlldRdrUrruulDuuuullDDRUldDDRUdddlUluRurrrddLLUdrruulDlddlUluRuuurrDDLUdrrddLLUlldRdrUrruulDuullDDRUdddlUluRurrrddLUruL
此外,我们还有 R(5, 2 * m + 1) ≥ R(5, 2 * m - 1) * 2.618。
由于 R(5, 2 * 2 + 1) ≥ 48 ≥ 2.618[sup]2 + 2[/sup]。
所以我们有以下R5定理:R(5, 2 * m + 1) ≥ 2.618[sup]m + 2[/sup]。
[ 本帖最后由 skyivben 于 2012-4-21 18:01 编辑 ]
作者: skyivben 时间: 2012-4-21 18:09:21
根据R5定理,我们有:R(5, 47) = R(5, 2 * 23 + 1) ≥ 2.618[sup]23 + 2[/sup] > 2.813 x 10[sup]10[/sup]。
而 sokoban 兄在8楼猜测 R(48, 48) < 2[sup]48[/sup] < 2.815 x 10[sup]14[/sup]。
看来这个猜测有点危险。
如果 R(48, 48) > R(5, 47) x 10008 的话,这个猜测就不成立了。
[ 本帖最后由 skyivben 于 2012-4-21 18:22 编辑 ]
作者: sokoban 时间: 2012-4-21 18:44:59 标题: 回复 10# 的帖子
感谢银河兄的计算。的确比较悬,呵呵。
如果直接是把几个 5x47 的 fibo 关卡拼接成 48 x 48 (加墙50 x 50),不太容易达到乘上一个10008 的因子的效果。
要突破 2^48 大关。有两种可能:
(1)巧妙地利用 5x47 关卡来构造 48x48 关卡(加墙50 x 50);
(2)找到比 fibo 关卡增长速度更快的新的关卡模式。
欢迎光临 魔方吧·中文魔方俱乐部 (http://bbs.mf8-china.com/) |
Powered by Discuz! X2 |