我已经实现了一个用于解决15-puzzle的A *算法。我进行了一项研究,寻找一些可行的或可接受的启发式方法,寻找快速解决方案,我发现使用4 * Manhattan Distance作为启发式方法总能在不到一秒的时间内解决任何15个难题。我试过这个并且有效地工作了。我试图找到答案,但我找不到。
任何人都能解释一下吗?
答案 0 :(得分:3)
这个想法类似于A*-Epsilon中发生的事情,你允许A *在没有最佳节点的情况下发展到某个界限,以加快你的算法速度。实际上 - 我怀疑你会得到同样的结果(或者类似的结果)如果你运行曼哈顿距离和epsilon = 3
的A * -Epsilon。 (如果我是正确的,这会使您在4*OPTIMAL
限定的修改启发式中找到解决方案,其中OPTIMAL是最佳路径的长度)