Dynamic RRT和Extended RRT一樣,也是用來解決動態(tài)路徑規(guī)劃問題,它們的思想有一點(diǎn)是共通的,那就是不要完全放棄初始RRT生成的樹或初始路徑的信息,而是在此基礎(chǔ)上重新規(guī)劃。Dynamic RRT和Extended RRT的區(qū)別在于,Extended RRT利用的是RRT生成的初始路徑的信息,而Dynamic RRT利用的是RRT生成的初始RRT樹的信息。
思路如下:
在老地圖中,用RRT算法生成了一個(gè)RRT樹,在新地圖中,原始RRT樹的節(jié)點(diǎn)信息(坐標(biāo)、父節(jié)點(diǎn))存儲在一個(gè)節(jié)點(diǎn)集合中。在新地圖中,先檢測新地圖中比老地圖多出的障礙物,然后,以碰撞檢測為評判根據(jù),刪除老節(jié)點(diǎn)集合中與新障礙物無法通過碰撞檢測的節(jié)點(diǎn)和邊。的到一顆修建過后的與新地形無碰撞的修剪后RRT樹,然后再在這顆修剪后的額RRT樹的基礎(chǔ)上,繼續(xù)生長這棵樹,直到這棵樹連接起點(diǎn)和終點(diǎn),然后回溯路徑,得出新路徑。
①從從初始配置到目標(biāo)配置生成的 RRT 開始(圖(a))。
②當(dāng)配置空間發(fā)生變化時(shí)(例如通過接收新信息),將RRT中因這些變化而失效的所有部分標(biāo)記為無效(圖(b)和(c))。
③然后我們修剪樹以去除所有這些無效部分(圖(d))。
④此時(shí),保證樹中剩余的所有節(jié)點(diǎn)和邊都是有效的,但樹可能不再達(dá)到目標(biāo)。最后,我們把樹長出來,直到再次達(dá)到目標(biāo)
加入新的障礙物后,被該障礙物折斷的剩余的圖:
在原來的樹的基礎(chǔ)上,繼續(xù)生長后的圖:
Replanning with RRTs