![](/img/trans.png)
[英]Efficiently Finding all paths between 2 nodes in a directed graph - RGL Gem
[英]The shortest combination of paths that starts and ends with a single node and covers all points in an undirected graph
我需要一个algorithm(k, s)
其中
k
是路径数 s
是起点和终点 在给定n
个节点的无向图中,其中所有节点都相互链接,则返回k
条路径以遍历所有节点,这些节点的k
路径所覆盖的距离之和最短。
例如,给定n
= 10
, algorithm(2,5)
可能会给我一个包含两个数组的数组,以使两条路径所覆盖的距离之和最短,并且遍历所有节点。
[[5,1,2,3,10,5],[5,4,6,7,8,9,5]]
Djikstra的算法找到从一个节点到另一节点的最短路径,但找不到k
路径的最短组合。
日元的算法找到k
数目的从一个节点到另一个的最短路径,但不是最短的组合k
路径。
哪种算法可以帮助我找到以节点s
开始和结束以覆盖所有n
节点的k
条路径的最短组合?
上面描述的是经典的旅行商问题,还有许多优化技术。 一种就是蚁群优化 。
有许多实现ACO的库,就目前而言,您可以找到一个针对Ruby的库,没有经典(数学)方法解决Traveling Salesman问题的简单解决方案。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.