如何及时找到24个难题的最佳解决方案



问题:

在不到 5 秒的时间内计算随机 24 (5x5( 滑动谜题的最佳解决方案(在普通计算机上(。

我尝试过:

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

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

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

在 Russel 和 Norvig 的 AI 书中提到,5x5 滑动拼图具有如此巨大的状态空间,即使是最好的 AI 搜索算法也需要数小时才能摆脱困境。(第3版第71页(

最新更新