实现运动轨迹_【自动驾驶】运动规划丨速度规划丨时间维度
運(yùn)動(dòng)規(guī)劃是自動(dòng)駕駛技術(shù)棧中的關(guān)鍵一步,負(fù)責(zé)把上游的孤立、異構(gòu)、模糊的多方面信息整合成自洽的運(yùn)動(dòng)軌跡(trajectory);好的軌跡需要滿足多方面的要求,其中最重要的方面包括安全性(safety)和舒適性(comfort)。對(duì)于車輛自動(dòng)駕駛來說,車輛的控制是限制在地面這個(gè)二維世界里。但軌跡并不在這個(gè)空間中,因?yàn)檐壽E并不僅是簡(jiǎn)單的一個(gè)瞬時(shí)的狀態(tài),也需要考慮時(shí)間這一維度。因此,它是一條在二維空間和一維時(shí)間組成的三維空間中的曲線。軌跡的時(shí)間跨度,稱為時(shí)域(horizon),通常要達(dá)到8-10秒這個(gè)范圍(這個(gè)時(shí)間也跟算法的優(yōu)化結(jié)果相關(guān)),才能滿足公開道路產(chǎn)品級(jí)自動(dòng)駕駛的需求。
大方:「QBlog 03」運(yùn)動(dòng)軌跡僅僅是2D的?——論運(yùn)動(dòng)規(guī)劃的維度?zhuanlan.zhihu.com為什么要在比較長(zhǎng)的時(shí)間跨度上規(guī)劃完整的運(yùn)動(dòng),而不能只是簡(jiǎn)單地規(guī)劃當(dāng)前瞬間的動(dòng)作(油門、剎車、轉(zhuǎn)向)呢?目前很多基于端到端學(xué)習(xí)的規(guī)劃方法都是這么做的,畢竟人類司機(jī)駕駛時(shí),很多時(shí)候也只考慮眼前需要的動(dòng)作而已。進(jìn)行長(zhǎng)時(shí)程的完整規(guī)劃主要是為了保證未來的規(guī)劃問題仍然可解。車輛從動(dòng)力學(xué)上來說,慣性很大;從運(yùn)動(dòng)學(xué)上來說,又屬于非完整系統(tǒng)(non-holonomic,即車輛不能瞬間改變朝向),所以如果只考慮當(dāng)前位姿,是不能作出有前瞻性的駕駛動(dòng)作的。缺乏前瞻性的駕駛動(dòng)作雖然目前看來不錯(cuò),但很容易把自己開進(jìn)死胡同,造成一段時(shí)間之后無解。如果觀察到路口的紅燈,無人車必須根據(jù)當(dāng)前速度提前剎車才能保證不闖紅燈;如果只考慮眼前,會(huì)發(fā)現(xiàn)在到達(dá)路口之前都沒有剎車的必要(不會(huì)立刻違反交通規(guī)則),而到了路口,再剎車就來不及了。這就是為什么模塊的名字叫做運(yùn)動(dòng)規(guī)劃(motion planning)——規(guī)劃就是計(jì)劃未來。端到端學(xué)習(xí)的方法只輸出當(dāng)前駕駛動(dòng)作,實(shí)際上相當(dāng)于把控制(control)也囊括在內(nèi)了,但通常模型內(nèi)部還是需要通過輔助損失函數(shù)(auxiliary loss)等方式對(duì)未來有一個(gè)預(yù)測(cè)和考量的(比如Waymo的ChauffeurNet)。在時(shí)空的三維空間中的軌跡,可以完整地描述未來一段時(shí)間之內(nèi)的運(yùn)動(dòng)的全貌。因此,對(duì)這個(gè)完整運(yùn)動(dòng)的最優(yōu)解算就可以實(shí)現(xiàn)有前瞻性的運(yùn)動(dòng)規(guī)劃。這就是為什么我們要在運(yùn)動(dòng)規(guī)劃的時(shí)候考慮未來時(shí)間這個(gè)維度。為什么自動(dòng)駕駛運(yùn)動(dòng)規(guī)劃的更新周期那么短,卻要規(guī)劃出那么長(zhǎng)的一段軌跡??www.zhihu.com總結(jié)如下:
- 駕駛感受:駕駛員的大腦在時(shí)刻的運(yùn)轉(zhuǎn),我們每看一次道路其實(shí)就是重新做了一次規(guī)劃Replan,我們看的足夠遠(yuǎn)我們的規(guī)劃才足夠穩(wěn)定。如果我們的視線只盯著車前2m,車開的大概率是左沖右撞的,因?yàn)橹挥械礁傲宋覀儾胖狼斑呌袀€(gè)障礙物,慌忙打方向或緊急剎車。
- 算法優(yōu)化:在簡(jiǎn)單靜態(tài)環(huán)境中,運(yùn)動(dòng)規(guī)劃完全可以使用初始時(shí)刻規(guī)劃好未來的一段路徑和對(duì)應(yīng)的速度,直到到達(dá)規(guī)劃的終點(diǎn)再重新規(guī)劃Replan。但現(xiàn)實(shí)環(huán)境是,1)場(chǎng)景很可能復(fù)雜,只使用一次規(guī)劃耗時(shí)長(zhǎng),導(dǎo)致計(jì)算效率低;2)由于其他交通參與者的存在導(dǎo)致周圍環(huán)境是隨著時(shí)間變化的。所以在這樣的場(chǎng)景下,為了是規(guī)劃的路徑質(zhì)量更高,需要不斷迭代來適應(yīng)環(huán)境,規(guī)劃的路徑越長(zhǎng),則越好地避免陷入局部最優(yōu)解,不影響規(guī)劃的整體質(zhì)量。
- 規(guī)劃的軌跡長(zhǎng)
- 更新的周期短
不考慮誤差的話,多周期規(guī)劃的軌跡在大地坐標(biāo)下應(yīng)是一致的。滿足這個(gè)一致性條件,就可以定周期規(guī)劃,更短周期去跟蹤,最終行駛出一條符合預(yù)期的軌跡(位置和速度)。
運(yùn)動(dòng)規(guī)劃考慮空間和未來時(shí)間這三個(gè)維度,就夠了嗎?要回答這個(gè)問題,繞不開體感這個(gè)話題。體感也就是物理舒適度(physical comfort),是駕駛舒適度的一個(gè)重要方面,反映了車輛運(yùn)動(dòng)的不平滑性。體感與舒適度的其他方面一樣,比較主觀,評(píng)估需要從多種指標(biāo)考慮。常用的指標(biāo)包括橫向和縱向(lateral and longitudinal)的加速度(acceleration)和加加速度(jerk)等。從這些指標(biāo)可以看出,對(duì)于體感來說,運(yùn)動(dòng)軌跡對(duì)時(shí)間的導(dǎo)數(shù)是非常重要的,理想的運(yùn)動(dòng)軌跡在時(shí)間上必須足夠平滑。圖:平滑的速度(v-t)曲線。軌跡的平滑性是舒適體感的核心。
上面說到,在運(yùn)動(dòng)規(guī)劃給出的軌跡(對(duì)未來運(yùn)動(dòng)的規(guī)劃)里,可以清楚地評(píng)估和優(yōu)化未來運(yùn)動(dòng)的平滑性,但過去的運(yùn)動(dòng)軌跡則是另一番景象。過去是不可改寫的,更重要的是,過去的軌跡是在過去每一個(gè)時(shí)間點(diǎn)的未來軌跡的初始段積累而成的,類似于控制中的滾動(dòng)時(shí)域優(yōu)化(receding horizon control)。過去某時(shí)刻對(duì)當(dāng)時(shí)的未來的規(guī)劃,也可以因時(shí)間推移,感知預(yù)測(cè)等信息的更新而更改;比如,兩秒鐘之前規(guī)劃的軌跡中預(yù)計(jì)行駛兩秒后到達(dá)的位置,可以不同于一秒前規(guī)劃的軌跡中預(yù)計(jì)行駛一秒后到達(dá)的位置,而二者又皆可不同于當(dāng)前實(shí)際所在位置。因此過去這個(gè)時(shí)間維度不僅僅是未來時(shí)間向相反方向的延伸。尤其是這兩個(gè)時(shí)間維度的接合處,也就是當(dāng)前時(shí)刻,是需要額外細(xì)致處理的。體感的效果,必須這些地方每一處都精心優(yōu)化,才能得以保證。
就縱向的速度規(guī)劃而言,時(shí)間維度是平衡橫縱向控制的關(guān)鍵因素。針對(duì)不同場(chǎng)景規(guī)劃出的軌跡線需要與之匹配出最優(yōu)的速度和加速度。例如,對(duì)于前方靜止障礙物,無人車需要實(shí)時(shí)地根據(jù)不同的當(dāng)前車速,規(guī)劃出減速曲線。其中,安全上能保證任何速度下,都能在障礙物前方幾米內(nèi)穩(wěn)定剎?;蛘吒?#xff1b;舒適上開始切入減速的沖擊度連續(xù);另外最好不觸發(fā)AEB緊急制動(dòng),這是在感知融合后識(shí)別前方靜止物后。
那么實(shí)際在縱向的速度規(guī)劃中,時(shí)間維度和速度位置維度需要進(jìn)行反復(fù)優(yōu)化,相關(guān)的問題如:
ACC自適應(yīng)巡航為什么不能識(shí)別靜止物體??www.zhihu.com總結(jié)
以上是生活随笔為你收集整理的实现运动轨迹_【自动驾驶】运动规划丨速度规划丨时间维度的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 浦发信用卡取现手续费和利息 知晓收费标准
- 下一篇: 广发信用卡对比 真情卡与车主信用卡哪个更