我知道A *比Dijkstra的算法更好,因爲它考慮了啓發式值,但是從A *和跳轉點搜索這是找到最短路徑的最有效算法在有障礙的環境中?有什麼區別?路徑查找算法:A * Vs跳轉點搜索
7
A
回答
1
跳點搜索是基於圖上某些條件的改進的A *。因此,如果你滿足這些條件(主要是統一成本電網),JPS嚴格優於A *(相同的最優性,最好的情況可以是更好的數量級,更糟糕的情況可能具有相同的複雜性,但是具有稍差的常數) ,但如果你不符合條件,你就不能使用它。
JPS超過A *的改進基本上是,如果你有一個均勻的成本函數(它的成本從A轉到B和從B到C相同的,以相同的方向)的曲線圖,可以跳過某些步驟在某些情況下直接從A到C而不擴展B中的節點。
JPS是A *上的修剪技術,您可以移除不需要評估的案例,因爲您知道它們將不是最優的。你知道這是因爲統一成本的網格條件。
從概念上講,這相當於在非均勻網格上使用A *,其中相鄰節點表示在沒有遇到障礙的情況下您可以沿該方向行進多遠,並執行跳躍代價。因此,如果您可以在沒有遇到障礙的情況下前往10個節點,則可以以10 * c爲代價減少(或直接跳轉到)單個節點,其中c是從一個節點到另一個在右邊。
原文可以找到here.
相關問題
- 1. 跳轉點搜索jn JavaScript
- 2. 查找路徑使用算法A *
- 3. 跳搜索算法
- 4. A *跳轉點搜索比XNA中的常規A *慢?
- 5. 「標題搜索路徑」與Vs. 「庫搜索路徑」
- 6. A *查找路徑無效
- 7. 3維跳點搜索算法
- 8. 搜索K-first短路徑算法
- 9. 具有A * JPS的未探測節點(跳轉點搜索)
- 10. 如何使用A *算法查找所有最短路徑?
- 11. C中的路徑查找算法
- 12. A *搜索算法卡住
- 13. 實現A *搜索算法
- 14. 使用A *搜索算法
- 15. 用A *算法找出幾條最短路徑
- 16. 錯誤的A *路徑代碼搜索
- 17. 路徑查找應用算法
- 18. 查找與廣度的最短路徑節點首先搜索
- 19. 「跳躍」,在A *搜索
- 20. A-星算法。獲取最佳路徑
- 21. 尋路 - 跳轉點搜索 - 打開和關閉列表
- 22. 運行路徑搜索路徑甚至無法使用@ rpath/library.dylib查找庫
- 23. 迷宮算法路徑查找器
- 24. 查找無向圖路徑的算法
- 25. 查找從A點到B點的路徑(n個循環)
- 26. 從肋骨點A到肋緣點B查找路徑
- 27. A *搜索算法確定循環變量時,不存在路徑
- 28. 條紋搜索vs AI中的A *算法
- 29. 查找分散點列表中的路徑的算法
- 30. 考慮節點和邊的圖上的路徑查找算法
謝謝! 它解決了我的問題,直到某一點 –
@ Thilan.L你完全錯過了什麼?也許我可以更新我的答案以更好地回答你。 – Leherenn
提前感謝它解決了:) –