簡體   English   中英

在完整的無向加權圖中找到哈密頓路徑 vs 哈密頓回路

[英]Finding Hamiltonian path vs Hamiltonian circuit in a complete undirected weighted graph

我有一個帶有權重的完整圖(調整矩陣)。 我已經建立了一個解決方案,用於使用分支定界在此圖中找到最小漢密爾頓回路(旅行商問題)。 我現在一直在尋找具有給定起點和終點節點的最佳漢密爾頓路徑。 如果沒有給定的開始和結束節點,最好的解決方案是哈密頓回路——回路中最長的邊。

除了簡單的蠻力尋找具有給定起始和結束節點的最佳漢密爾頓路徑之外,我想不出其他解決方案。 請提供一些有關如何處理此問題的指示。

給定的開始節點和結束節點等價於結束節點和開始節點之間的有向邊必須是 TSP 旅行的一部分的約束。

所以你可以簡單地改變你的鄰接矩陣:

  • 將所需結束節點的所有傳出邊設置為無限權重,除了到起始節點的邊
  • 將所有傳入邊緣到所需的起始節點設置為無限權重,除了來自結束節點的邊緣
  • 還將從開始節點到結束節點的邊設置為無限權重(以確保您不會得到相反的解決方案,如果您的鄰接矩陣不對稱,這可能會有所不同)

這與您的實現使用的分支方法非常相似。

給每條邊的權重添加一個大常數,除了給定的開始和結束節點之間的一條,它應該設置為零。 常數可以選擇為N*maxweight ,其中 N 是頂點數, maxweight是最大邊權重。 這保證了給定的邊將包含在電路中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM