考虑使用A *算法,其中启发式可以高估几米的剩余距离。可能会发生最终路径比最短路径长几公里吗?你能给出一个图形的例子,它会发生什么样的图形? 欧几里德(直线)距离可能高估剩余距离的情况是:
是否存在一个公式,该公式表明最终路径的次优性的上限给出了A *启发式高估剩余距离的上限?
答案 0 :(得分:3)
A *在它检索到的部分答案时返回(这是到达目标的最小估计总距离的部分答案)实际上达到了目标。标准A *保证找到正确答案,因为通过启发式的定义,到达目标的所有估计总距离都是下限,因此其他答案都不能做得更好。
假设答案的启发式实际上将以总距离T结束,可以达到KT,其中K> 1。 1.如果A *以成本KT检索答案并认为答案已成功,因为答案达到目标,则可能不是最佳答案。我们知道仍然在池中的每个部分答案至少花费KT,但是由于启发式,启发式KT的答案实际上可能变成总成本T <1的答案。 KT(但不能以任何更便宜的成本变成答案)。因此,使用这种启发式方法,A *返回的答案可能是最佳答案的K倍,但不会更多。
这实际上总结在维基百科条目http://en.wikipedia.org/wiki/A _search_algorithm #Bounded_relaxation中 - 故意使用这种启发式方法来加速A ,但代价是返回更糟糕的答案。