如何及时找到24拼图的最佳解决方案?

时间:2018-01-28 00:29:23

标签: algorithm graph-algorithm heuristics

问题:

在不到5秒的时间内(在普通计算机上)计算随机24(5x5)sliding puzzle的最佳解决方案。

我尝试过的事情:

使用具有曼哈顿距离/线性冲突的IDA*算法作为解释here的启发式算法,我的Java实现可以在不到2秒的时间内解决4x4(15)难题。

在5x5(24)拼图上运行相同的实现会在5分钟后生成解决方案的路径。

我想我可以减少搜索空间,从而减少执行时间,首先解决顶行和左列,然后继续解决剩余的4x4框。事实证明这很困难,因为我无法想到/设计一种能够使IDA *及时解决顶部和左部的启发式方法。

1 个答案:

答案 0 :(得分:2)

在russel和norvig撰写的AI书中,提到了5x5滑动拼图具有如此巨大的状态空间,即使是最好的AI搜索算法也可能需要数小时才能解决。 (第71页,第3版)