內容無關:最近的課題內容和機器人運動規劃方法有關,我把學習的內容整理成為工具箱上傳到了我的github倉庫,稍後將會發一篇說明介紹使用方法。
XM522706601/robotics_tutorial_for_zhihu?github.com
上一篇文章 小明工坊:【基礎知識】機器人運動規劃原理與實現(一)——概率路線圖(PRM)方法 我們講到了機器人運動規劃中一個比較重要的方法——概率路線圖(PRM)方法,並通過編程進行了演示和分析,下面簡單回顧如下:
- 機器人運動規劃的基本任務為從開始位置運動到目標位置
- 主要難點有二:躲避障礙物(全局約束)和滿足自身運動性能(微分約束)
- 抽樣規劃是解決全局約束問題的重要方法
- 抽樣規劃演算法分為綜合查詢方法和單一查詢方法
- 綜合查詢方法的代表為概率路線圖演算法(PRM),單一查詢方法的代表為快速擴展隨機樹演算法(RRT)
本章我們同樣用一個例子來講解快速擴展隨機樹演算法(RRT)演算法。
其實RRT演算法與PRM演算法十分類似,都是通過抽樣來在已知的地圖上建立無向圖,進而通過搜索方法尋找相對最優的路徑。不同點在於,PRM演算法在一開始就通過抽樣在地圖上構建出完整的無向圖,再進行圖搜索;而RRT演算法則是從某個點出發一邊搜索,一邊抽樣並建圖。
與PRM演算法相同,RRT演算法也是概率完備的:只要路徑存在,且規劃的時間足夠長,就一定能確保找到一條路徑解。注意「且規劃的時間足夠長」這一前提條件,說明了如果規劃器的參數設置不合理(如搜索次數限制太少、採樣點過少等),就可能找不到解。
演算法說明
我們可以把RRT演算法比較形象地看做「樹型演算法」。它從一個起始構型(對於二維圖,就是一個點)出發,不斷延伸樹型數據,最終與目標點相連。先放一張規劃的結果可能更加便於理解: