寻找最短运输路线的图算法

时间:2016-10-18 18:23:15

标签: algorithm graph shortest-path shipping

我有一个简单的网络应用程序,为运输公司信息系统建模。我想实现自动计算给定订单的最短路径的功能。

new order form

订单由一组货物代表,每个货物都有出发/到达点。我在数据库中存储城市和它们之间的距离。问题是找到允许运输所有这些货物的最短路线。开始和结束城市并不重要,唯一有趣的方面是最短的路径,包括装载/卸载每个运输。

是否有适合解决此类问题的图算法?

1 个答案:

答案 0 :(得分:0)

如果商品数量相对较少(如评论所示),您可以将问题减少到Traveling Salesman Problem

首先,如果您没有每对城市之间的最短距离 - 您可以使用Floyd-Warshall algorithm找到它。如果您已经在每对城市之间保持距离,则可以跳过此步骤。

现在,你有一个适当的TSP问题,可以使用强力或更复杂的动态编程解决方案轻松解决少数城市。

如果我是你,我会从天真的解决方案开始,如果还不够 - 实施更复杂的解决方案。
如果稍后城市数量增加到大尺寸,您将需要更复杂的TSP算法,并且由于问题的性质,甚至可能必须满足于非最佳解决方案。也就是说,虽然你只在少数城市的领域 - 现有的解决方案应该做到这一点。