有聪明的旅行推销员吗?


12

除了笑话,我遇到的路由问题几乎是旅行商问题(TSP):

  • 定义起点
  • 终点与起点重合
  • 每个节点都必须被访问
  • 总成本应降至最低

两年前,我认为TSP将是一个完美的选择,因此我通过tsp_solve和协和式处理了一些示例数据。幸运的是,很快就很明显,TSP最短路径不是真正的最短路径,因为通过不切实际地要求对节点进行一次精确访问就使问题变得更加容易。这张图片只是一步一步地尝试优化计算解决方案,并且已经节省了最长使用边缘的距离。

当我试图找到通往地图/监视站点子集的最佳路由时,问题再次浮出水面。位置和道路网络数据非常准确和精确,因此这样的练习很有意义。

我已经看过TSP的概括,但是没有找到合适的算法。最小的生成树不考虑分支返回(这里的第一个解决方案要多花费3个)。据我了解,最短路径问题最终仅关心两个节点,而那些不在最佳路径中的节点将被忽略。车辆路径问题的一个特例似乎最合适,尽管我不知道它是否考虑非直接路径。

我的问题:是否有解决此问题(家庭)的名称,定义?您将使用什么算法和工具来解决它?

我敢肯定这会占用大量计算资源,但我对常规(无限资源)和实用答案都感兴趣。


您是否研究过图论?
nagytech 2012年

大约和上面的Wikipedia链接相同,而更深一些。在uni,我们只做过一些琐碎的LP和决策理论。
lynxlynxlynx 2012年

Answers:


4

这就是TSP。您只是没有定义有效的距离度量,因为它不满足三角不等式:如果从A到C到B的路线比指定的从A到C的距离短,那么从A到C的指定距离很简单,就是错。解决方案是通过将从A到C的长度设置为所有从A到C的路线中的最短长度来更新距离矩阵。


太好了,这很容易。对于小图,预先计算新的距离矩阵甚至不值得iz来进行,而是即时进行。
lynxlynxlynx 2012年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.