【问题标题】:Precalculate Result of A*预先计算 A* 的结果
【发布时间】:2018-03-03 05:39:59
【问题描述】:

目前正在学习A* 搜索算法,并使用它来找到N-Puzzle 的最快解决方案。对于初始起始状态的一些随机种子,难题可能无法解决,这将导致算法搜索整个搜索空间并确定给定起始状态没有解决方案之前的非常长的等待时间。

我想知道是否有一种方法可以预先计算A* 算法是否无法避免这种情况。我已经阅读了一些关于它是如何可能的,但找不到关于执行它的方法的直接答案。

感谢任何指导或选择。

【问题讨论】:

    标签: algorithm search a-star sliding-tile-puzzle


    【解决方案1】:

    我认为 A* 并没有为您提供了解问题是否可以解决的机制。专门针对N-Puzzle,我认为这可以帮助您检查是否可以解决:

    http://www.geeksforgeeks.org/check-instance-8-puzzle-solvable/

    似乎如果您处于奇数反转的状态,您肯定知道该排列的问题是不可行的。

    【讨论】:

      【解决方案2】:

      具体来说,对于 N-puzzle,只有两个可能的奇偶校验,所以你只需要检查当前拼图是哪个奇偶校验。

      math stackexchange 上有关于如何做到这一点的深入解释

      对于一般的 A* 问题,不,如果图是可解的,则无法预先计算。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-05-26
        • 1970-01-01
        • 2015-10-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多