0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Apollo 2.5自動駕駛規(guī)劃控制系統(tǒng)詳細(xì)介紹

YB7m_Apollo_Dev ? 來源:未知 ? 作者:李倩 ? 2018-07-16 11:06 ? 次閱讀

在第4期Apollo自動駕駛公開課中,來自Apollo團(tuán)隊(duì)的資深架構(gòu)師-朱帆老師對Apollo 2.5自動駕駛規(guī)劃控制系統(tǒng)進(jìn)行了詳細(xì)介紹。

這里,我們將整理后的公開課視頻資料分享給大家,沒能到達(dá)現(xiàn)場的開發(fā)者可以通過視頻和PPT資料來詳細(xì)了解課程內(nèi)容。

Apollo 2.5自動駕駛規(guī)劃控制

技術(shù)難點(diǎn)

規(guī)劃模塊所面臨的技術(shù)難點(diǎn)有三點(diǎn)。

第一,車輛所處的環(huán)境復(fù)雜度高。因此傳感器檢測返回的數(shù)據(jù)復(fù)雜,障礙物個(gè)數(shù)種類多;路況信息復(fù)雜,在高速上一秒鐘車輛能跑出30米,情況瞬息萬變。

第二,系統(tǒng)對規(guī)劃模塊的要求高。規(guī)劃模塊需要覆蓋所有的ADAS場景,對模塊計(jì)算的實(shí)時(shí)性和穩(wěn)定性有著很高的要求。

第三,這是一個(gè)全新的未知領(lǐng)域,能夠從外界獲得的信息有限。雖然有過去長期的積累,但是依然有多重難題需要解決。

整體思路

下面來看一下規(guī)劃模塊是如何實(shí)現(xiàn)的。

想象一個(gè)人在開車,要從A點(diǎn)開到B點(diǎn);他有多種方式可以完成這一任務(wù),但是不同的方式,成本是不一樣的。

那么如何去找一個(gè)成本最低的規(guī)劃曲線呢?開發(fā)者面臨的是一個(gè)三維空間中的優(yōu)化問題,包括路面的二維平面,也包括時(shí)間維度。這是一個(gè)N立方難度的問題,Apollo 2.5的解決方法是,把這個(gè)N立方級別的問題,分拆成兩個(gè)N平方級別的問題。也就是在x-y維度上求解,進(jìn)行路徑規(guī)劃;在路徑規(guī)劃的基礎(chǔ)上,以規(guī)劃出來的路徑為s軸,在s-t維度上進(jìn)行速度規(guī)劃。

這種降低維度,以退為進(jìn)的方法,是對規(guī)劃模塊認(rèn)識上的一個(gè)飛躍。通過放棄最優(yōu)解的追求轉(zhuǎn)而追求較優(yōu)解,換來系統(tǒng)運(yùn)算速度、穩(wěn)定性的極大提高,同時(shí)滿足無人駕駛系統(tǒng)的整體需求。這一點(diǎn)可以類比機(jī)器學(xué)習(xí)中SGD的思路,放棄對精確梯度方向的尋找,轉(zhuǎn)而尋找近似梯度的方向,從而換來學(xué)習(xí)速率上的提升。

整體架構(gòu)

規(guī)劃模塊的架構(gòu)從整體上來說,可以分為兩個(gè)部分:一部分負(fù)責(zé)對數(shù)據(jù)的監(jiān)聽、獲取和預(yù)處理;另一部分負(fù)責(zé)管理各個(gè)優(yōu)化模塊。數(shù)據(jù)進(jìn)入后,對其綜合處理為規(guī)劃模塊的內(nèi)部數(shù)據(jù)結(jié)構(gòu),由任務(wù)管理器調(diào)度合適的優(yōu)化器進(jìn)行各個(gè)優(yōu)化任務(wù)。綜合優(yōu)化的結(jié)果,經(jīng)過最終的驗(yàn)證后,輸出給控制模塊。

在設(shè)計(jì)上,實(shí)現(xiàn)了策略的可插拔,使得各個(gè)優(yōu)化器可以靈活配置不同策略,提升迭代效率。

相對于Apollo 2.0,規(guī)劃模塊在延續(xù)了其架構(gòu)上統(tǒng)一、靈活、快捷的優(yōu)點(diǎn)上,在保持已開發(fā)算法持續(xù)更新優(yōu)化的同時(shí),又新增了局部坐標(biāo)系以及一種新的速度和路徑同時(shí)優(yōu)化的Lattice planner。

規(guī)劃器

Apollo的規(guī)劃模塊目前有三種類型的規(guī)劃器:

Apollo 1.0中開始開放的RTK,也就是循跡Planner;Apollo 1.5中開始開放的EM Planner,也就是基于動態(tài)規(guī)劃Dynamic Programming和二次規(guī)劃Quadratic Programming的路徑規(guī)劃器與速度規(guī)劃器;以及Apollo 2.5中開始開放的Lattice Planner,一種路徑和速度同時(shí)規(guī)劃的規(guī)劃器。

RTK Planner

RTK Planner是規(guī)劃預(yù)先設(shè)置的軌跡,為循即算法使用。

EM Planner

EM Planner可以通過動態(tài)規(guī)劃進(jìn)行路徑和速度規(guī)劃。比如說,路徑規(guī)劃會在范圍內(nèi)進(jìn)行機(jī)動撒點(diǎn),離散化解空間進(jìn)行求解。

要想合理的選擇采樣點(diǎn),首先應(yīng)該直觀的感受一下車輛和道路。以最常用的林肯MKZ 2016款車款為例,此車寬度2米1,那么假設(shè)道路寬度為3.5米,在當(dāng)前道路行駛的時(shí)候就留下了一共1.4米左右的機(jī)動范圍。

比如說,采樣器在垂直于Lane的方向選擇5個(gè)點(diǎn),這種選法每兩個(gè)點(diǎn)間隔0.35米,對于車輛調(diào)節(jié)來說是合適的;而在沿著道路方向,點(diǎn)的選取不需要特別密集,過于密集的選擇白白浪費(fèi)了計(jì)算資源,并且在下一步使用光滑曲線連接點(diǎn)的時(shí)候,造成求解的不穩(wěn)定。所以,往往會根據(jù)當(dāng)前的車速和路況進(jìn)行選擇,比如每隔15-20米選一組點(diǎn),共選擇4-5組。這樣選點(diǎn),結(jié)合了車輛與道路的特點(diǎn),并且所有參數(shù)是可以配置的,具有高度的靈活性。

撒點(diǎn)后,通過Cost Function一層一層的進(jìn)行動態(tài)規(guī)劃,從而對問題進(jìn)行了有效的簡化。然后再通過平滑的曲線連接各層采樣點(diǎn)得到最終的路徑。其優(yōu)勢是明顯的:

靈活性:采樣點(diǎn)從左到右覆蓋了整個(gè)可行區(qū)間,避免陷入局部最優(yōu)

可靠性:其利用Cost Function 避免無解

可拓展:低速到高速全覆蓋

EM Planner中的速度規(guī)劃,也可以采用和路徑規(guī)劃相似的方法。對解空間進(jìn)行離散化以后,然后通過動態(tài)規(guī)劃進(jìn)行求解。從圖中可以看到,在將與主車軌跡有重疊的障礙物映射到ST圖以后,速度規(guī)劃可以通過加速減速勻速等操作,從ST圖中搜索到一條可通行區(qū)間并生成速度規(guī)劃。從最后生成出來的圖里面,可以解讀出來相對于每一個(gè)障礙物的縱向決策。

比如說,需要避讓或者跟隨一個(gè)障礙物,車輛就從障礙物ST圖中下方通過如果需要超越一個(gè)障礙物,那么在ST中車輛就從其上方通過。

Lattice Planner

接下來看一下Apollo 2.5中開放的新算法Lattice Planner。

Lattice Planner和EM Planner在設(shè)計(jì)上最大的區(qū)別在于,Lattice是橫向縱向綜合求解的,而EM是分開求解的。Lattice Planner源于斯坦福大學(xué)參加DARPA無人駕駛大賽的規(guī)劃算法,Apollo 2.5吸收了其精華,并針對原有算法進(jìn)行了改進(jìn)和升級。

和EM planner一樣,Lattice Planner也將軌跡規(guī)劃問題分解成橫向和縱向兩個(gè)1維空間的獨(dú)立的軌跡規(guī)劃問題, 降低規(guī)劃難度。橫向仍然是SL問題,也就是Station Lateral,縱向上也還是ST,也就是Station Time問題。

Lattice Planner會根據(jù)起點(diǎn)和終點(diǎn)的狀態(tài),在位置空間和時(shí)間上同時(shí)進(jìn)行撒點(diǎn)。撒點(diǎn)的起始狀態(tài)和終止?fàn)顟B(tài)各有6個(gè)參數(shù),包括了3個(gè)橫向參數(shù),即橫向位置、橫向位置的導(dǎo)數(shù)也就是Heading、Heading的導(dǎo)數(shù);3個(gè)縱向參數(shù),即縱向位置、縱向位置的一階導(dǎo)數(shù)也就是速度、縱向位置的二階導(dǎo)數(shù)(也就是加速度)。

起點(diǎn)的參數(shù)是車輛當(dāng)時(shí)真實(shí)的狀態(tài),或者Stitch的狀態(tài)來進(jìn)行設(shè)計(jì),終止?fàn)顟B(tài)則是撒點(diǎn)枚舉的各個(gè)情況。在確定了終點(diǎn)和起點(diǎn)狀態(tài)以后,再通過五階或者四階的多項(xiàng)式連接起始狀態(tài)和終止?fàn)顟B(tài),從而得到規(guī)劃的橫向和縱向軌跡。

這個(gè)步驟是Lattice算法的精髓所在,它直接決定了算法的效率以及解空間。舉個(gè)例子來說,在撒點(diǎn)的時(shí)候可以的加入車輛物理動力學(xué)性能的約束,同時(shí)根據(jù)障礙物進(jìn)行可行域的預(yù)篩選等,有效的裁剪無效空間,從而達(dá)到更優(yōu)的性能。

在生成所有橫向和縱向的一維軌跡以后,將其排列組合起來,合成大量的二維軌跡,然后根據(jù)損失函數(shù)篩選出最好的合成軌跡。和EM Planner類似,Lattice Planner的損失函數(shù)也可以分為,安全相關(guān)、體感相關(guān)以及目標(biāo)完成度相關(guān)三類。

下面來看一下Lattice Planner在模擬器中的效果。

Lattice Planner在Apollo模擬器Azure中場景通過率達(dá)到了100%。

Planner 對比

Lattice Planner的優(yōu)點(diǎn)是很明顯的,同時(shí)產(chǎn)生軌跡的幾何形狀與速度分配,直接考慮到車輛的動力學(xué)狀態(tài),尤其是橫向動力學(xué)狀態(tài),產(chǎn)生更適合高速運(yùn)動的軌跡,簡單可靠,參數(shù)少于10個(gè)。它利用了撒點(diǎn)算法避免了軌跡陷入局部最優(yōu),性能也非常的優(yōu)秀,生成超過1000軌跡,軌跡的生成加上選擇,用時(shí)少于100ms,確保了能做到10赫茲的Planning規(guī)劃。

Planner 軌跡后處理

在軌跡生成以后,往往還可以通過一些后處理,對軌跡進(jìn)行平滑和驗(yàn)證。可以通過幾何的算法或者更加高粒度的采樣,對于生成軌跡每個(gè)點(diǎn),進(jìn)行額外的碰撞檢查。也可以同時(shí)驗(yàn)證規(guī)劃的軌跡是否符合車輛的物理學(xué)動力特性,比如看其是否有超過車輛加減速度上下界限,以及轉(zhuǎn)彎半徑界限的時(shí)候。

回退保障機(jī)制

秉著安全第一的原則,Apollo 2.5同時(shí)提供冗余機(jī)制以保證整個(gè)系統(tǒng)的穩(wěn)定性。車輛在路上行駛的過程中,遇到的情況千差萬別,如果真的遇到了無論是人工駕駛還是機(jī)器駕駛都無法解決的特殊惡劣情況,如何保證Planning不會崩潰,并且輸出一條相對最安全的軌跡,以保證生命和財(cái)產(chǎn)的安全,就顯得尤其的重要了。

因此,無論是使用DP還是QP的EM planner,還是同時(shí)進(jìn)行速度和路徑優(yōu)化的Lattice Planner,Apollo 2.5針對路徑規(guī)劃和速度規(guī)劃都加入了后備規(guī)劃。在正常的邏輯并不能在給定假設(shè)情況下計(jì)算出一條合理的路徑的時(shí)候,針對當(dāng)時(shí)的情況,對車輛進(jìn)行合理的減速最后停車,以確保安全。

高效的測試與迭代

如何幫助大家進(jìn)行能夠高效的迭代也是Apollo所關(guān)心的一個(gè)重要問題。因此,Apollo的Planning有一套推薦的測試迭代流程。即單元測試,單周期的集成測試,模擬器測試,最后再實(shí)車測試的流程。讓開發(fā)者可以在開發(fā)迭代的過程中,隨時(shí)進(jìn)行回歸,保證開發(fā)的質(zhì)量以及效率。

坐標(biāo)系

Apollo 2.5又為大家打開了另外一扇窗--相對坐標(biāo)系。此前的絕對坐標(biāo)系是以世界為背景的一種全局定位,世界上每一個(gè)點(diǎn),都會有一個(gè)相應(yīng)的唯一的坐標(biāo)。它的好處很明顯,因?yàn)槭侨治ㄒ?,所以說表達(dá)一個(gè)物體的真實(shí)位置的時(shí)候非常的容易,做多時(shí)刻位置對齊的時(shí)候也會比較的容易。

車身相對坐標(biāo)系也是一種常見的坐標(biāo)系,它是以車輛自身位置坐標(biāo)原點(diǎn),以車輛的朝向?yàn)閤,車輛左方為y的坐標(biāo)系。其優(yōu)點(diǎn)也是非常明顯的,可以去除開發(fā)者們對于地圖定位的強(qiáng)依賴,反饋的數(shù)值也更加的直觀方便開發(fā)者的理解。

相對坐標(biāo)系

助力于相對坐標(biāo)系這個(gè)新feature,在Apollo 2.5中同時(shí)推出了L3的高速方案。也就是基于車道線的感知方案和不基于地圖和定位的規(guī)劃方案??梢岳斫獬蔀槭穷愃朴?a href="http://ttokpm.com/tags/te/" target="_blank">Tesla Autopilot或者M(jìn)obileye的方案,利用相對坐標(biāo)系下的車道線代替全局坐標(biāo)系的地圖與定位,進(jìn)行L3級別的自動駕駛功能。

就像John Kennedy說的:“We choose to go to the moon in this decade and do the other things,not because they are easy,but because they are hard.”

這是Apollo的口號,也是我們一直以來的信念。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • adas
    +關(guān)注

    關(guān)注

    309

    文章

    2131

    瀏覽量

    208336
  • 自動駕駛
    +關(guān)注

    關(guān)注

    781

    文章

    13455

    瀏覽量

    165288
  • Apollo
    +關(guān)注

    關(guān)注

    5

    文章

    337

    瀏覽量

    18356

原文標(biāo)題:自動駕駛公開課 | Apollo 2.5自動駕駛規(guī)劃控制

文章出處:【微信號:Apollo_Developers,微信公眾號:Apollo開發(fā)者社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    FPGA在自動駕駛領(lǐng)域有哪些應(yīng)用?

    數(shù)據(jù)的實(shí)時(shí)處理和反饋,為自動駕駛汽車的決策提供實(shí)時(shí)、準(zhǔn)確的數(shù)據(jù)支持。 三、控制系統(tǒng)優(yōu)化自動駕駛汽車的控制系統(tǒng)是復(fù)雜的,需要實(shí)現(xiàn)對車速、轉(zhuǎn)向、剎車等多種信息的實(shí)時(shí)
    發(fā)表于 07-29 17:09

    自動駕駛真的會來嗎?

    技術(shù)本身是死亡事件的主要原因?! ∷蛐吕丝萍冀忉尫Q,特斯拉在對外宣傳上也是表明其并不是完全獨(dú)立自主的自動駕駛系統(tǒng)。但對于用戶而言,當(dāng)特斯拉將這個(gè)功能開放出來后,用戶在使用了一段時(shí)間后容易形成依賴感
    發(fā)表于 07-21 09:00

    自動駕駛的到來

    得益于2025規(guī)劃,中國整車廠與Tier1目前對于自動駕駛有極大的熱忱及投入,有機(jī)會在這個(gè)領(lǐng)域?qū)崿F(xiàn)彎道超車。目前的顧慮在于法規(guī)政策的制定,以及中國特色的交通情況帶給自動駕駛的挑戰(zhàn)。安全問題  目前主要
    發(fā)表于 06-08 15:25

    3天造出自動駕駛汽車的百度Apollo,背后竟有50多個(gè)后臺

    主要對外開放的是封閉場地循跡自動駕駛能力,在云端服務(wù)方面,會發(fā)布開放平臺和智能車載系統(tǒng)DuerOS;軟件平臺則開放了自定位、控制、HMI等多項(xiàng)技術(shù);在硬件開放層次,對外開放了自動駕駛
    發(fā)表于 07-07 18:28

    UWB主動定位系統(tǒng)自動駕駛中的應(yīng)用實(shí)踐

    3萬美元以上,相當(dāng)于一輛中級車的價(jià)格。自動駕駛四大核心技術(shù)分別為環(huán)境感知、高精度定位、路徑規(guī)劃控制執(zhí)行。其中環(huán)境感知技術(shù)是最基礎(chǔ)、最重要的一環(huán)。通過環(huán)境感知,可實(shí)時(shí)、可靠且準(zhǔn)確地識別出車輛行駛路徑
    發(fā)表于 12-14 17:30

    中國自動駕駛行業(yè)前景看好,國產(chǎn)技術(shù)迅速發(fā)展

    系統(tǒng)、定位導(dǎo)航系統(tǒng)、路徑規(guī)劃系統(tǒng)、中央處理單元、輔助駕駛系統(tǒng)與運(yùn)動控制系統(tǒng)六大
    發(fā)表于 04-03 05:36

    如何讓自動駕駛更加安全?

    開放道路測試牌照,許可在公共道路上測試自動駕駛技術(shù),參與測試的企業(yè)將通過道路測試來不斷驗(yàn)證自動駕駛技術(shù)的成熟度。專家介紹,從自動化程度角度看,自動駕
    發(fā)表于 05-13 00:26

    轉(zhuǎn)發(fā):聊聊邊緣計(jì)算在自動駕駛中的應(yīng)用場景

    的工作量和成本也非常高。隨著電動汽車和自動駕駛汽車的發(fā)展,包括 AI、云計(jì)算、車聯(lián)網(wǎng) V2X 等新技術(shù)不斷應(yīng)用于汽車行業(yè)中,使得汽車控制系統(tǒng)的復(fù)雜度愈來愈高。同時(shí),人們對于數(shù)字化生活的需求也逐漸擴(kuò)展到汽車
    發(fā)表于 07-21 14:12

    如何打造自動駕駛「自行車」的呢

    」自行車項(xiàng)目,自行車化身「自動行走」的車!視頻講解詳細(xì),網(wǎng)友直呼:666666那么,稚暉君是如何打造自動駕駛「自行車」的呢?第一步當(dāng)然是最基本的讓車子跑起來,這就需要硬件改造,加入自動控制系統(tǒng)
    發(fā)表于 08-26 09:23

    自動駕駛系統(tǒng)設(shè)計(jì)及應(yīng)用的相關(guān)資料分享

    作者:余貴珍、周彬、王陽、周亦威、白宇目錄第一章 自動駕駛系統(tǒng)概述1.1 自動駕駛系統(tǒng)架構(gòu)1.1.1 自動駕駛
    發(fā)表于 08-30 08:36

    自動駕駛技術(shù)的實(shí)現(xiàn)

    的帶寬有了更高的要求。從而使用以太網(wǎng)技術(shù)及中央域控制(Domain)和區(qū)域控制(Zonal)架構(gòu)是下一代車載網(wǎng)絡(luò)的發(fā)展方向。然而對于自動駕駛技術(shù)的實(shí)現(xiàn),涉及到感知、規(guī)劃、執(zhí)行三個(gè)層面。
    發(fā)表于 09-03 08:31

    自動駕駛線控底盤VCU功能介紹

    滿足自動駕駛遠(yuǎn)程遙控的線控底盤整車控制器VCU1 自動駕駛線控底盤VCU功能介紹滿足自動駕駛及遙控駕駛
    發(fā)表于 09-07 06:30

    淺析Apollo 2.5限定場景低成本技術(shù)方案

    本文來自Apollo團(tuán)隊(duì)的資深架構(gòu)師-朱帆老師對Apollo 2.5自動駕駛規(guī)劃控制系統(tǒng)進(jìn)行了
    的頭像 發(fā)表于 07-19 09:56 ?3381次閱讀

    Apollo開發(fā)套件加速自動駕駛研發(fā)

    百度Apollo自動駕駛開發(fā)套件是全球首款自動駕駛開發(fā)套件,也是國內(nèi)首個(gè)適配Apollo整套硬件傳感器的自動駕駛硬件集成平臺。
    的頭像 發(fā)表于 05-15 15:59 ?8114次閱讀

    自動駕駛之路徑規(guī)劃

    路徑規(guī)劃自動駕駛技術(shù)中最重要的部分,之前的文章有一些這方面的介紹,但是并不全面和系統(tǒng): 初探路徑規(guī)劃:主要從? 帶約束的多項(xiàng)式擬合;貝賽爾
    發(fā)表于 06-01 15:12 ?0次下載
    <b class='flag-5'>自動駕駛</b>之路徑<b class='flag-5'>規(guī)劃</b>