
發布
注冊
/
登錄RRT算法的案例
58基于matlab的采樣的運動規劃算法-RRT ¥35.9
基于matlab的采樣的運動規劃算法-RRT(Rapidly-exploring Random Trees),3D和2D,原始的RRT算法中將搜索的起點位置作為根節點,然后通過隨機采樣增加葉子節點的方式,生成一個隨機擴展樹,當隨機樹的葉子節點進入目標區域,就得到了從起點位置到目標位置的路徑。程序已調通,可直接運行。
39基于matlab的全局路徑規劃算法中的快速擴展隨機樹RRT路徑規劃算法及其改進方法RRT Sta ¥25.9
基于matlab的全局路徑規劃算法中的快速擴展隨機樹RRT路徑規劃算法及其改進方法RRT Star、RRT_Conncet是一種具有狀態約束的非線性系統生成開環軌跡的技術,相比于其他算法可以輕松處理障礙物的問題。程序中的各參數已進行詳細說明,起點坐標,終點坐標,步長,迭代數等均可根據需求進行更改,程序已調通。
路徑規劃算法總結
如為了提高搜索效率采用雙向隨機搜索樹(Bi~RRT),從起始點和目標點并行生成兩棵RRT,直至兩棵樹相遇,算法收斂。由于這個算法相比于原始RRT有更好的收斂性,因此在目前路徑規劃中是很常見的。NikAMelchior提出的粒子RRT算法,考慮了地形的不確定性,保證了在不確定性環境下搜索樹的擴展。Kuffner和Lavane又提出RRT-connectlv,使得節點的擴展效率大大提高。運動規劃中,距離的定義非常復雜,Pengcheng研究了在RRT生長過程中距離函數不斷學習的算法以降低距離函數對環境的敏感性。考慮到基本RRT規劃器得到的路徑長度一般是最優路徑的1.3~1.5倍,英國的J.desmithl研究了變分法技術使其達到最優。Amna A引入KD樹作為二級數據結構加速查找距離從環境中取出的隨機點最近的葉節點,降低了搜索成本。該算法在動態障礙物、高維狀態空間和存在運動學、動力學等微分約束的環境中的運動規劃已經得到廣泛的應用。
關于改進RRT算法詳情可參考:路徑規劃——改進RRT算法:https://zhuanlan.zhihu.com/p/51087819
2.3
滾動在線RRT算法
基本RRT算法傾向于遍歷整個自由空間直到獲得可行路徑,這使其不可能用于未知或動態環境中的機器人在線運動規劃。利用滾動規劃的思想可以將RRT算法進行改進,使其具備在線規劃能力。
2.3.1 滾動規劃
機器人在未知或動態環境中運動時,只能探知其傳感器范圍內有限區域內的環境信息。機器人利用局部信息進行局部運動規劃,并根據一定的評價準則得到局部目標。
展開 詳解路徑規劃算法
雙向規劃思想也被采用,衍生出RRTExtExt,RRTExtCon,RRTConCon等多種算法。
基本RRT算法收斂到終點位姿的速度可能比較慢。為了提高算法的效率和性能,需不斷對該算法進行改進。如為了提高搜索效率采用雙向隨機搜索樹(Bi~RRT),從起始點和目標點并行生成兩棵RRT,直至兩棵樹相遇,算法收斂。由于這個算法相比于原始RRT有更好的收斂性,因此在目前路徑規劃中是很常見的。NikAMelchior提出的粒子RRT算法,考慮了地形的不確定性,保證了在不確定性環境下搜索樹的擴展。Kuffner和Lavane又提出RRT-connectlv,使得節點的擴展效率大大提高。運動規劃中,距離的定義非常復雜,Pengcheng研究了在RRT生長過程中距離函數不斷學習的算法以降低距離函數對環境的敏感性。考慮到基本RRT規劃器得到的路徑長度一般是最優路徑的1.3~1.5倍,英國的J.desmithl研究了變分法技術使其達到最優。Amna A引入KD樹作為二級數據結構加速查找距離從環境中取出的隨機點最近的葉節點,降低了搜索成本。該算法在動態障礙物、高維狀態空間和存在運動學、動力學等微分約束的環境中的運動規劃已經得到廣泛的應用。
滾動在線RRT算法
基本RRT算法傾向于遍歷整個自由空間直到獲得可行路徑,這使其不可能用于未知或動態環境中的機器人在線運動規劃。
利用滾動規劃的思想可以將RRT算法進行改進,使其具備在線規劃能力。
滾動規劃
機器人在未知或動態環境中運動時,只能探知其傳感器范圍內有限區域內的環境信息。
展開 
算法解析:自動駕駛實時路徑規劃
所開發的算法(稱為RRT-Reach)搜索整棵樹中的威脅,假設每個策略都從障礙物中獲得了完美的知識,并且僅用兩輛車進行了仿真測試。在障礙處理方面,CL-RRT的另一個改進是由Aoude等人實施的。其中,高斯過程的最優性估計需要進一步的研究,但需要在實際時間范圍內進行偏差估計。
Karaman和Frazzoli(2011)開發了RRT*算法,以保證所提出路徑的最優性。在RRT*中,所有可行連接都是根據其去代價來評估的,并且只在最小代價路徑上添加頂點到樹中。由RRT*找到的解決方案更有可能是最佳方案。Jeon等人(2013)采用RRT*算法,并通過半車動態模型計算出路徑,使用該動態模型可在U形轉彎處產生動態可行的軌跡,并在無障礙的環路環境中實現。雖然使用動態模型會導致更多的計算工作用于樹邊緣的可行性檢查,但與RRT*的組合會導致在給定控制輸入間隔內(即由路線規劃師提供)最優的解決方案,但不一定是全局最優的。
Garrote等人(2014)也使用RRT*,但使用兩個額外的例程對其進行修改(一個用于碰撞檢查,另一個用于展開)。在碰撞檢查方面,對于每一個探測到的節點,都要測量碰撞檢查的時間,以限定規劃所需的時間。懲罰例程負責檢查從每個新節點生長樹是否可行或不可行。利用這兩個額外的特征增強RRT*算法的思想是根據動態障礙物的運動來擴展樹。在Garrote等的工作(2014),ego車輛模擬為矩形,障礙物為圓形。該算法僅在靜態障礙物和動態障礙物的模擬環境中進行了測試,沒有對仿真性能進行統計測試。
Reyes Castro等人(2013)給出了更先進的技術。車輛和路網的動力學系統被形成Kripke結構(Kripke,1963),并使用非確定性有限自動機來捕捉交通規則。
展開 自動駕駛規劃方法綜述
這類方法主要有A* D* Dijkstra algorithm 算法。值得一提的還有state lattice算法,雖然這個圖看起來和Apollo里面的lattice不一樣,但是這個是爸爸,在這篇文章[1]里面提出了時空lattice,這個也就是后來Apollo算法里面用的。
B. Sampling based planners
這個主要介紹了RRT算法,嗯非常經典好用,如果有感興趣的可以單獨開講。
C. Interpolating Curve Planners
這里介紹了幾種曲線生成的方法,主要有羊角螺旋線(Clothoid Curves)多項式曲線(Polynomial Curves) 貝塞爾曲線(Be ?zier Curves)
分別介紹了這幾類樣條曲線在路徑規劃的優化過程中作用。
clothoid curves 是個比較神奇的曲線,天生適合車輛規劃,因為它的曲率是線性變化的,又因為車輛運行軌跡的曲率和方向盤基本上成正比,也就是說這種線型出來的結果方向盤會非常順滑。
貝塞爾曲線 計算簡單 速度快。
多項式擬合也是一個比較好的方法。
D. Numerical Optimization:
數值優化的方法講的比較粗略,基本上只是講了下勢能場法的應用。
在這一段的結束,作者給出了一個大的表格,比較不同方法的優劣,感覺這個比較強大,不是大佬很難總結的如此精辟。
展開 無人駕駛汽車局部路徑規劃算法研究
基于圖搜索的方法中常用的有A*[7-12]和 D*算法[13],此類算法雖然在機器人領域得到廣泛應用,但其規劃的路徑未能滿足車輛的非完整性約束,且路徑平滑性較差。辛煜等[7]提出了一種改進的A*算法,對柵格地圖中的柵格進行線性插值,增加了A*算法的可搜索鄰域和搜索的方向,改善了傳統A*算法平滑性較差的問題;齊堯等[8]提出了新式的啟發式函數并結合了車輛非完整性約束進行三維規劃,提高了路徑的安全性和舒適性;Boroujeni等[9]基于 A*算法提出了 FU-A*算法,該算法根據車輛的速度調節柵格的大小,提高了規劃路徑的平滑性;城市交通環境中的最優路徑受諸多因素影響[10],胡林等[11-12]在城市道路網的最短路徑規劃中,在傳統的A*算法的估價函數中分別考慮了信號交叉口的等待時間和能源消耗,有效降低了等待時間和能耗。基于采樣的方法有概率路圖法(probabilistic road map,PRM)[14]和快速隨機擴展樹法(rapidly random tree,RRT)[15-17],該類算法具備搜索速度快、無須對環境進行建模等優點,但其隨機采樣的特性導致路徑不平滑。Taheri等[15]基于RRT算法提出了模糊貪婪快速探索隨機樹算法,減少了節點的數量,降低了算法的計算復雜度;宋曉琳等[16]利用高斯分布函數結合期望路徑模型,在RRT算法中引入啟發式搜索機制尋找合適的避障路徑,最后用B樣條曲線插值的方法進行光滑化處理,解決了RRT算法規劃的路徑不平滑的問題;杜明博等[17]在RRT算法基礎上結合了環境約束和車輛自身的約束,實現了復雜的低速環境的路徑規劃。基于離散優化的路徑規劃方法是用數值積分和微分等方程來描述車輛的運動,從而產生數量有限的候選路徑,并通過設計代價函數,從候選路徑中選擇最優路徑[18-19]。該方法計算量小,實時性好,在近年來得到了廣泛應用[20]。
展開 低空無人機自主避障算法綜述
針對同一高度上兩機沖突問題,宋雪倩等[27]提出利用Dubins曲線結合A*算法分別為工作區域內的無人機構建最短避障路徑,當出現兩機沖突情況時,通過矢量共享法求解航向偏離量,實時重規劃兩機的飛行路徑避免發生碰撞。該算法綜合了Dubins曲線、矢量共享法和A*算法的優點,保證了路徑的光滑和可飛性。但是該算法需要將障礙物建模為圓形,并且無人機之間的避障依賴于一個集中式的規劃器,在高密度多機沖突情景下,其規劃器的實時性將面臨巨大挑戰。
2.2 采樣法
針對搜索類算法在多維狀態空間下容易出現“維數災難”的問題,可采取基于采樣的方法,例如快速擴展隨機樹(Rapidly-exploring Random Tree,RRT)[28]及其改進算法RRT*[29]以實現漸近最優。
AGUILAR等[30]提出RRT* GL算法,其結合了RRT*目標算法以及RRT*限制算法的特點,在降低尋找可靠解計算成本的同時,增加了路徑周圍的樹枝密度,從而產生一個更短的路徑而不會增加迭代次數。但是該算法僅能實現漸近最優,即在有限的時間內僅能得到次優解。
LIN等[31]提出閉環快速擴展隨機樹算法(Closed-Loop RRT),其采用了簡化節點連接策略并利用軌跡上的中間點來提高算法規劃效率。其次,該算法采用了可達集的方法來預測碰撞,從而有效實現在線重規劃。但是,對于無人機之間的碰撞情形,該算法被簡化成二維平面,因此無法應用于三維空間避障。
MECHALI等[32]提出對RRT*算法生成的最終路徑進行平滑和修正,以降低飛行過程中的能量消耗。但是,該算法在通過多次迭代實現全局最優的同時,消耗了大量的時間。其次,環境改變會導致迭代次數增加,進一步降低算法效率。因此,該算法無法應用于動態環境下的無人機避障。
展開