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