![](/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.