是否存在也適用於真實3D環境的尋路算法,例如真正的建築物與多個樓梯等C++庫或開放實施將是精彩;-) 我看到的一個解決方案是Djikstra,但我想知道是否有更優化的東西。 由於距離啓發式算法效果不好,所以普通A *不會比Djikstra更好(位於目的地一層以上)。 我目前正在思考的另一個解決方案是3D環境在二維圖上的映射。所以如果有這樣一些可用的C++實現/庫,這也會有所幫助。在真實3D環境(例如建築物)中尋找路徑
5
A
回答
2
如果路徑必須考慮到通過障礙物的能力(即運動是具有已知空間體積的某個實體的運動),那麼我建議查看關於機器人運動規劃的文獻。配置空間的概念允許您處理姿勢的變化以應對障礙。見吉恩·克勞德·拉姆
對於一些簡單場景的經典教材,你也許可以湊合着用第一人稱的電腦遊戲所使用的路徑規劃算法,類似於Dijkstra算法,A * (example)
1
對於一個近似算法您可以輕鬆將3d映射到1d曲線,並用灰色代碼遍歷八叉樹。這樣你可以重新排序每條路徑。我不知道是否有最佳解決方案的保證,但它必須比任何啓發式方法更好。
相關問題
- 1. 如何獲得產品環境中的真實文件路徑
- 2. 在AR環境中查找路徑
- 3. 在python中實現無限循環尋找路徑壓縮
- 4. 在Prolog中尋找路徑
- 5. 如何在android中構建3D環境?
- 6. 真實路徑
- 7. 尋找真實世界的Gradle例子
- 8. 如何在銫中顯示帶紋理的3D建築物?
- 9. RUBYLIB環境路徑
- 10. 路徑尋找在序言
- 11. A *在Lua尋找路徑
- 12. 環境中的Python路徑
- 13. Libgdx在3D中創建天空/環境
- 14. 尋找建築物(A *有多個座標)?
- 15. 建築文物多個環境,並將其上傳到S3
- 16. 如何使用循環尋找算法找到歐拉路徑?
- 17. 在JSON代碼中尋找路徑
- 18. 序言:在迷宮中尋找路徑
- 19. 在鄰接矩陣中尋找路徑
- 20. 在Openshift中設置環境路徑
- 21. 3D建築螺旋
- 22. vfsstream路徑和真實路徑
- 23. 在動態有向圖中尋找最小循環路徑
- 24. 在有向非循環圖中尋找最長路徑
- 25. 在linux環境下AS3物理路徑問題
- 26. 幫助尋找路徑
- 27. 尋找路徑計劃
- 28. 尋找關鍵路徑?
- 29. 尋找最短路徑
- 30. 尋找最短路徑
除非你有很多樓梯,否則A *可以很好地工作,不同層次上的點的啓發式算法是到最近的樓梯的距離加上垂直距離的總和。 – biziclop 2012-04-16 16:17:23
@biziclop:這是一個非常好的主意,比任何圖形轉換都簡單得多。我會試試 – Martin 2012-04-16 16:19:05
我相信尋路很容易分而治之。所以,你可以嘗試在2D級別上使用A *,並使用Dijkstra的算法將它們綁定在一起。 – comingstorm 2012-04-16 19:48:51