自動(dòng)駕駛規(guī)劃方法綜述
最近看到一篇非常好的關(guān)于自動(dòng)駕駛規(guī)劃方法的綜述(A Review of Motion Planning Techniques for Automated Vehicles),寫(xiě)的非常好,總結(jié)了近幾十年來(lái)總動(dòng)駕駛規(guī)劃的發(fā)展之路,引用了許多經(jīng)典的文章。覺(jué)得可能對(duì)做規(guī)劃的小伙伴會(huì)有幫助,所以分享出來(lái)。
這篇文章的一個(gè)觀點(diǎn)非常好,他把自動(dòng)駕駛的運(yùn)動(dòng)規(guī)劃分成四大類(lèi):graph search 圖搜索,采樣,插值和數(shù)值優(yōu)化。下面展開(kāi)論述。
A. Graph search based planners
這種方法把狀態(tài)空間表達(dá)成網(wǎng)格或者lattice的形式,然后在這些狀態(tài)里面找到一個(gè)可達(dá)的path。這類(lèi)方法主要有A* D* Dijkstra algorithm 算法。值得一提的還有state lattice算法,雖然這個(gè)圖看起來(lái)和Apollo里面的lattice不一樣,但是這個(gè)是爸爸,在這篇文章[1]里面提出了時(shí)空l(shuí)attice,這個(gè)也就是后來(lái)Apollo算法里面用的。
B. Sampling based planners
這個(gè)主要介紹了RRT算法,嗯非常經(jīng)典好用,如果有感興趣的可以單獨(dú)開(kāi)講。
C. Interpolating Curve Planners
這里介紹了幾種曲線生成的方法,主要有羊角螺旋線(Clothoid Curves)多項(xiàng)式曲線(Polynomial Curves) 貝塞爾曲線(Be ́zier Curves)
分別介紹了這幾類(lèi)樣條曲線在路徑規(guī)劃的優(yōu)化過(guò)程中作用。
clothoid curves 是個(gè)比較神奇的曲線,天生適合車(chē)輛規(guī)劃,因?yàn)樗那适蔷€性變化的,又因?yàn)檐?chē)輛運(yùn)行軌跡的曲率和方向盤(pán)基本上成正比,也就是說(shuō)這種線型出來(lái)的結(jié)果方向盤(pán)會(huì)非常順滑。
貝塞爾曲線 計(jì)算簡(jiǎn)單 速度快。
多項(xiàng)式擬合也是一個(gè)比較好的方法。
D. Numerical Optimization:
數(shù)值優(yōu)化的方法講的比較粗略,基本上只是講了下勢(shì)能場(chǎng)法的應(yīng)用。
在這一段的結(jié)束,作者給出了一個(gè)大的表格,比較不同方法的優(yōu)劣,感覺(jué)這個(gè)比較強(qiáng)大,不是大佬很難總結(jié)的如此精辟。
各種規(guī)劃算法的優(yōu)劣對(duì)比
下面這幅圖,作者闡述了不同項(xiàng)目/公司的motion planning的技術(shù)方案,從下面這個(gè)圖可以看出來(lái),各家公司很少會(huì)依賴(lài)單一的規(guī)劃方法進(jìn)行規(guī)劃,而是根據(jù)使用場(chǎng)景,結(jié)合兩個(gè)甚至更多種的規(guī)劃方法來(lái)進(jìn)行規(guī)劃。比如斯坦福大學(xué)和合作機(jī)構(gòu)采用了AL算法,基于優(yōu)化的算法甚至用羊角螺旋線進(jìn)行插值。
大多數(shù)企業(yè)采用了基于樣條曲線,羊角螺旋線的方法,主要是考慮可以獲取細(xì)致的道路信息。采用search 方法的主要原因是這樣的速度快,在復(fù)雜場(chǎng)景下而且可以搜索到比較好的曲線。目前規(guī)劃存在的挑戰(zhàn)在于實(shí)時(shí)性,由于越來(lái)越多的障礙物,感知留給規(guī)劃的時(shí)間窗口越來(lái)越小。下一步的motion planning的研究,應(yīng)該考慮感知的不確定性以及控制的約束。這樣會(huì)更加安全,舒適。