2014-05-04 99 views
2

我一直在网上搜索关于条纹搜索的空间和时间复杂度,但没有成功。任何人都可以告诉我相同的几点,为什么我们更喜欢在人工智能中使用对A *算法的边缘搜索。条纹搜索vs AI中的A *算法

回答

2

我没有探索边缘搜索算法,直到看到这篇文章,所以采取这一粒盐。 根据维基百科的说法,Fringe Search基于IDA*,后者基于A*

利弊/ IDA *的利弊在A *:

  • IDA *旨在减少内存使用某些性能的成本。
  • IDA *将检查瓷砖不止一次,而A *不会
  • A *跟踪所有砖,而不只是一小部分,像IDA *

所以,你会选择IDA *超过A *,如果你更担心内存消耗,而不是返回路径的原始速度。

附带搜查VS IDA */A *:

  • 附带搜查的目的是解决一些与IDA *最糟糕的问题,把它介于两个算法之间的性能VS内存使用方面。
  • 应该执行比IDA *快,但性能比A *
  • 使用更多内存比IDA *慢,但低于A *

因此,它似乎穗搜索将是一个很好的选择,如果您正在使用有限的内存,但仍需要比IDA *提供的更多性能。总的来说,我会建议仅使用A *来启动,如果您发现有任何特定问题,请找到替代算法。

+4

根据[研究论文](http://www.ru.is/~yngvi/pdf/BjornssonEHS05.pdf),实验结果显示Fringe Search运行速度比高度优化的A *快大约10-40%在他们的网格路径查找应用领域。 – HelloGoodbye