找到覆蓋圓中最小距離的所有點的路徑的最佳算法。從(0,0)開始,不需要返回(0,0),不像TSP以最短距離覆蓋圓中所有點的最佳算法
回答
您可以使用動態編程。它使用所有組合來檢查所有AZ距離。然後你可以檢查最短的AZ路線。我在gebweb tsp solver的javascript中找到了一個工作示例。
夥計,蠻力解決方案需要n!時間 –
對不起。我的意思是AZ路線是所有組合。 – Bytemain
如果不需要返回,那麼它不是一個循環/循環,而是一條路徑。
通過圖中所有頂點的路徑稱爲哈密爾頓路徑,您所描述的問題是「最小權重哈密爾頓路徑」,它與TSP一樣硬。所以你不會找到比任何可用的TSP算法更好的算法(但你可以使用已知的TSP算法進行小的調整來解決這個問題,例如動態規劃和分支和界限)。
不是*循環*一個圓圈。在二維空間中,這意味着沒有兩條線相互交叉。 (我認爲)。如果我是正確的,那麼TSP可能更容易出現問題,並且可能是多項式求解的。 – amit
阿米特,我認爲多項式解決方案不可能 –
我想你的意思是遍歷一個圓內的所有點(夫妻x,y),並可以選擇包含或排除圓(等高線)。我在這裏回顧這些定義。 CIRCLE:與點C(中心)的距離爲R> 0的平面上的點。DISK:與中心的距離爲< = R> 0的平面的點。 從這種意義上講,您希望移動所有點的DISK。
有很多方法可以「觸摸」一個圓圈內的所有點(不是圓的所有點,這是另一個問題)。我認爲「最好」意味着:不要重複一個觀點並且走最短的路線。
如果這是問題,我可以建議啓發式算法。
- 1. 尋找最短距離覆蓋最小單元數的算法
- 2. 從點到橢圓弧的最短距離的算法
- 3. 到點的最短距離
- 4. 計算最短距離
- 5. 距離(最短)
- 6. 找到距離地點最小總距離的點的算法
- 7. 兩點之間的最短距離。蠻力算法
- 8. 追蹤一組點中最大距離的最佳方法?
- 9. 根據距離在點之間分配最佳值的算法
- 10. 多點之間的最短距離
- 11. POSTGIS ST_Distance(最短距離計算)
- 12. 如何修改BFS算法以找到最短距離
- 13. 如何計算距離路徑的最短距離?
- 14. Python的最短距離
- 15. ř的igraph最短距離
- 16. 尋找到所有建築物的最短距離的優化算法
- 17. 在K-Nearest算法(Java)中獲得最短的'K'距離
- 18. 在android中找到最短路徑/距離的算法?
- 19. 最佳最短路徑算法
- 20. 計算網格中目標的距離的最佳方法
- 21. Java的最短路徑和距離算法?
- 22. 加權圖的BFS算法 - 查找最短距離
- 23. 圓分離距離 - 最近鄰問題
- 24. Android:尋找Point和Rect之間最短距離的最佳方法?
- 25. 讀取多個記錄時出錯以計算點之間的最短距離
- 26. 你能解釋單源最短路徑距離嗎? (圖算法)
- 27. 最大 - 最小距離的計算
- 28. 計算2個座標之間的距離iphone - 最佳做法
- 29. Android:計算兩個位置之間距離的最佳方法
- 30. 3D平面算法中點與線的最小垂直距離
看起來像一些任務? – Miller
建議您在math.stackexchange.com上發佈此信息?你有選擇或要求的編程語言嗎? – robnick
「最佳算法」在哪?你到目前爲止嘗試過什麼? –