局部搜索和全局搜索算法有什么区别?

人工智能 算法 搜索 定义 比较 本地搜索
2021-11-03 03:56:06

局部搜索和全局(或完整)搜索算法有什么区别?

1个回答

在大多数情况下,局部搜索算法(如波束搜索)和完整搜索算法(如 A*)之间的差异很小。

如果存在,局部搜索算法并不总是能找到正确或最优的解决方案。例如,对于波束搜索(不包括无限波束宽度),它通过一些启发式预测部分解决方案与完整解决方案的接近程度来排序部分解决方案,从而牺牲完整性以获得更高的效率。束搜索是一种贪心算法。

只要有足够的时间,完整的搜索算法总会找到正确或最优的解决方案。像 A* 这样的算法使用启发式方法来修剪树,但它不会收敛到次优解决方案。在很多实际情况下,这是低效的,但多少取决于问题。