我在 23:14 通过http://youtu.be/gGQ-vAmdAOI?t=23m14s工作时,我觉得带有“扩展列表”的分支和绑定与 Dijkstra 的算法非常相似。稍后在讲座中,当算法再次用可接受的启发式扩展时,我们得到 A*。
这让我想到 Dijkstra 的算法就是这个分支与界限的子类。是对的吗?
总结讲座:
探索了搜索算法。特别是,它们从一个简单的分支定界解决方案开始:
直到目标节点被访问(扩展),访问距离源节点最近的节点,并将其后继节点加入优先访问节点队列(按最小距离排序)。这还没有检测到周期(例如多次访问节点)并且由于组合爆炸而效率很低。
一个简单的扩展使算法执行得更好:记住哪些节点已经被访问过(扩展,因此扩展列表)。现在没有节点被访问两次,并且算法的性能要好得多。
在最后一部分中,将一个可接受的启发式添加到混合中以获得 A*。
我希望这是足够的信息,并且我不必复制讲座中的示例。如果不是,请告诉我,我会做的!