機器人路徑規劃 A*與D*機器人路徑規劃演算法詳述
移動這一簡單動作,對於人類來說相當容易,但對機器人而言就變得極為複雜,說到機器人移動就不得不提到路徑規劃,路徑規劃是移動機器人導航最基本的環節,指的是機器人在有障礙物的工作環境中,如何找到一條從起點到終點適當的運動路徑,使機器人在運動過程中能安全、無碰撞地繞過所有障礙物。這不同於用動態規劃等方法求得的最短路徑,而是指移動機器人能對靜態及動態環境作出綜合性判斷,進行智慧決策。
總的來說,路徑規劃主要涉及這3大問題:①明確起點位置及終點;②規避障礙物;③儘可能的做到路徑上的優化。
機器人路徑規劃有全域性與區域性規劃之分
根據對環境資訊的掌握程度不同,機器人路徑規劃可分為全域性路徑規劃和區域性路徑規劃。
全域性路徑規劃是在已知的環境中,給機器人規劃一條路徑,路徑規劃的精度取決於環境獲取的準確度,全域性路徑規劃可以找到最優解,但是需要預先知道環境的準確資訊,當環境發生變化,如出現未知障礙物時,該方法就無能為力了。它是一種事前規劃,因此對機器人系統的實時計算能力要求不高,雖然規劃結果是全域性的、較優的,但是對環境模型的錯誤及噪聲魯棒性差。
而區域性路徑規劃則環境資訊完全未知或有部分可知,側重於考慮機器人當前的區域性環境資訊,讓機器人具有良好的避障能力,通過感測器對機器人的工作環境進行探測,以獲取障礙物的位置和幾何性質等資訊,這種規劃需要蒐集環境資料,並且對該環境模型的動態更新能夠隨時進行校正,區域性規劃方法將對環境的建模與搜尋融為一體,要求機器人系統具有高速的資訊處理能力和計算能力,對環境誤差和噪聲有較高的魯棒性,能對規劃結果進行實時反饋和校正,但是由於缺乏全域性環境資訊,所以規劃結果有可能不是最優的,甚至可能找不到正確路徑或完整路徑。
全域性路徑規劃和區域性路徑規劃並沒有本質上的區別,很多適用於全域性路徑規劃的方法經過改進也可以用於區域性路徑規劃,而適用於區域性路徑規劃的方法同樣經過改進後也可適用於全域性路徑規劃。兩者協同工作,機器人可更好的規劃從起始點到終點的行走路徑。
A*與D*機器人路徑規劃演算法介紹
在實際情況中,機器人路徑規劃除了考慮已知環境和未知環境地圖,還要考慮到動態和靜態環境下的路徑規劃。
A*(A-Star)演算法是一種靜態路網中求解最短路徑最有效的直接搜尋方法,也是解決許多搜尋問題的有效演算法。演算法中的距離估算值與實際值越接近,最終搜尋速度越快。但是,A*演算法同樣也可用於動態路徑規劃當中,只是當環境發生變化時,需要重新規劃路線。
而D*演算法則是一種動態啟發式路徑搜尋演算法,它事先對環境位置,讓機器人在陌生環境中行動自如,在瞬息萬變的環境中游刃有餘。D*演算法的最大優點是不需要預先探明地圖,機器人可以和人一樣,即使在未知環境中,也可以展開行動,隨著機器人不斷探索,路徑也會時刻調整。
綜上所述,移動機器人路徑規劃技術已經取得了可觀的成績,但是,在其全域性與區域性路徑規劃方法中仍然存在諸多不足之處,為此,國內已有針對這類演算法的改進,例如思嵐科技的SLAMWARE模組化自主定位導航,SLAMWARE內採用改良的D*演算法進行路徑規劃,這也是美國火星探測器採用的核心尋路演算法。是一種動態啟發式路徑搜尋演算法,它可以讓機器人在未知環境中行走自如,在環境多變的情況下游刃有餘。
相關文章
- 路徑規劃: 淺談路徑規劃演算法演算法
- V-rep學習筆記:機器人路徑規劃1筆記機器人
- 【2018.04.19 ROS機器人作業系統】機器人控制:運動規劃、路徑規劃及軌跡規劃簡介之一ROS機器人作業系統
- 機器人路徑規劃其一 Dijkstra Algorithm【附動態圖原始碼】機器人Go原始碼
- 機器人路徑規劃其二 A-Star(A*) Algorithm【附動態圖原始碼】機器人Go原始碼
- 路徑規劃之A*演算法演算法
- RRT路徑規劃演算法演算法
- PRM路徑規劃演算法演算法
- 基礎路徑規劃演算法(Dijikstra、A*、D*)總結演算法
- 遊戲AI研究(三):路徑規劃遊戲AI
- 起伏地形環境多機器人編隊運動控制與路徑規劃研究_2016年中小結機器人
- 機器人移動的規劃和導航機器人
- 簡單的路徑規劃案例分享
- 高德地圖導航和路徑規劃地圖
- 路徑規劃演算法 - 求解最短路徑 - Dijkstra(迪傑斯特拉)演算法演算法
- 移動機器人運動規劃及運動模擬機器人
- 應用內路徑規劃的簡單實現
- 2.基於取樣的路徑規劃:RRT
- 網頁 UI 設計模型 — 導航和路徑規劃網頁UI模型
- 六軸機器人軌跡規劃之五次多項式插值機器人
- 動態規劃求解矩陣累計和最大的路徑動態規劃矩陣
- 機器人學之運動學筆記【7】—— 機械手臂軌跡規劃例項機器人筆記
- 基於禁忌搜尋演算法的TSP路徑規劃matlab模擬演算法Matlab
- 動態規劃如何輸出路徑?動態規劃
- 多車軌道路徑規劃演算法設計演算法
- 網路規劃與設計
- 【路徑規劃】基於蟻群的多無人機攻擊排程無人機
- 機器視覺之外,機器人的感知補全計劃視覺機器人
- 動態規劃之最短路徑和動態規劃
- IT人的職業素養與規劃
- 【優化求解】基於蟻群演算法柵格地圖路徑規劃matlab優化演算法地圖Matlab
- canvas路徑與子路徑詳解Canvas
- oracle常規與直接路徑插入區別Oracle
- Wireless_網路規劃
- 對話機器人ChatBot綜述機器人
- Oracle 執行計劃 訪問路徑Oracle
- 「分散式技術專題」基於代價解析的最優路徑規劃分散式
- 元規劃:使用規劃器解決數學問題