我们正在开发一个涉及在大地图上运行最短路径算法的项目。
我们现在正在使用AStar与Air Distance heaurstic。
我们的项目涉及接收数据库中链接的更新。 目前,我们重新开始搜索每个链接更新或每隔预定义的时间间隔。 有没有办法更新AStar算法来更新搜索,而无需在收到的每次更新时重新启动搜索?是否有更适合此任务的算法?
披露:这是学生项目的一部分。
谢谢。
答案 0 :(得分:1)
您可能正在寻找一种路由算法(本质上处理不断变化的图形)。
实现它的一种方法是Distance Vector Routing Protocol(Bellman Ford algorithm的分布式版本),其工作原理如下 1 :
但请注意,此算法不知情(但处理图表的情况很好,但有一些限制,仍有count to infinity problem)
(1)算法的解释是基于我在this thread中提供的一些解释,并进行了一些修改。 (毕竟这是相同的建议算法。)