1. 自動駕駛仿真平臺的關鍵構成
自動駕駛仿真平臺需支持車輛動力學仿真、環境感知傳感器仿真、交通場景仿真等;
車輛動力學仿真:基于多體動力學搭建的模型,將車體、轉向、懸架、輪胎、制動、I/O硬件接口等在內的多個真實部件進行參數化建模,來實現車輛模型運動過程中的姿態和運動學仿真模擬;雖然是比較傳統的一部分,卻是構建自動駕駛仿真測試系統的不可或缺的重要基礎。
環境感知傳感器仿真:主要包括攝像頭、激光雷達、毫米波雷達、GPS/IMU等傳感器的建模仿真,它是構建自動駕駛仿真系統的關鍵技術和重要環節;
交通場景仿真:包括靜態場景還原和動態場景仿真兩部分,靜態場景還原主要通過高精地圖和三維建模技術來實現;動態場景仿真既可通過把真實路采數據經過算法抽取后,再結合已有高精地圖進行創建,也可通過對隨機生成的交通流基于統計學的比例,經過人工設置相關參數后自動生成復雜的交通環境。交通場景仿真是構建自動駕駛仿真系統的重要保障。
由于車輛動力學仿真比較傳統,并且相對來說已經比較成熟,這里便不再做過多介紹。下面重點講一下傳感器仿真和交通場景仿真。
1.1 傳感器仿真
1.1.1 傳感器仿真的三個層級
環境感知傳感器仿真是自動駕駛系統仿真測試中至關重要一部分,主要包括:攝像頭仿真、激光雷達仿真、毫米波雷達仿真、定位仿真(GPS、IMU)。依據仿真的難易程度,傳感器仿真的又可分為三個層級:物理信號仿真、原始信號仿真和目標級信號仿真。
1)物理信號仿真:直接仿真傳感器接收到的信號 —— 光學信號就是攝像頭的物理信號;電磁波和聲波信號分別是毫米波雷達和超聲波雷達的物理信號。
2)原始信號仿真:把傳感器探測的單元拆掉,直接仿真數字處理芯片的輸入單元。對于攝像頭-通過視頻注入來實現;毫米波雷達-把信號直接注入FPGA/DSP 信號處理模塊或PC 信號處理程序;激光雷達-通過點云信號來實現。
3)目標級信號仿真:直接將傳感器檢測的理想目標仿真到決策層的輸入端;這種信號的形式一般是CAN總線輸入信號或其它通訊協議格式輸入信號;對于攝像頭、激光雷達以及毫米波雷達等傳感器,均可通過CAN總線來實現。
那么,主流傳感器的物理信號仿真又是怎么實現的?對于攝像頭-通過視頻暗箱來實現;毫米波雷達-通過毫米波雷達模擬器來實現;超聲波雷達 - 通過超聲波雷達仿真盒來實現;然而,對于激光雷達的物理信號仿真,目前尚無有效解決方案。
1.1.2 傳感器仿真的基本思路
1)激光雷達仿真思路:參照真實激光雷達的掃描方式,模擬出激光雷達發射出和接收到的每一條射線,并且還要對發射出的射線與場景中所有物體求交。
激光雷達反射強度與障礙物的距離、激光發射角度以及障礙物本身的物理材質相關。并且激光雷達探測范圍大,發射出去的激光線束又十分密集,且在環境中存在多次反射、遮蔽等影響,計算返回的激光束比較復雜;很難較為真實對激光雷達信號的回波進行模擬,F有激光雷達模型,多是根據每一種物理材質的激光反射率直接計算回波信號,如此計算必然會與現實中的回波信號存在一定的誤差。
另外,激光雷達仿真需要支持的參數配置包括安裝位置和角度、工作頻率,最大探測距離,線數和水平分辨率,垂直視場角和水平視場角。
2)攝像頭仿真的思路:基于環境物體的幾何空間生成逼真的圖像,再根據物體的真實材質與紋理,通過計算機圖形學對三維模型添加顏色和光學屬性等,來仿真模擬圖像合成。
對于顏色和光學屬性等元素,一般情況下使用物理渲染引擎來實現。比如騰訊TAD Sim 、巴塞羅那自治大學CARLA以及微軟AirSim采用虛幻引擎UE(Unreal Engine),百度Apollo仿真平臺和LG的LGSVL Simulator采用Unity引擎。
攝像頭仿真需要支持相機的鏡頭的結構和光學特性,比如焦距、畸變、亮度調節、色彩空間等;支持內/外參及畸變參數的調整,比如攝像頭安裝位置、分辨率、工作頻率、視場角和畸變參數等;需能夠要模擬大雪、大雨、大霧等各種復雜天氣以及不同時間段和不同天氣下的光線條件。
3)毫米波雷達仿真思路:根據測試車輛所配置雷達的視場角和分辨率信息,向不同方向發射一系列虛擬連續調頻毫米波,并接收目標的反射信號。由于受多徑反射,干涉,反射表面,離散單元和衰減等影響,反射信號模擬較為困難。
毫米波雷達仿真支持的功能:安裝位置,角度,探測距離,探測角度,角度和距離分辨率等參數的調整。另外對于某些兼有長距和中距探測功能的毫米波雷達,仿真時則需要同時支持兩者的參數設置。
1.2 交通流仿真
交通流仿真是先通過環境感知傳感器采集真實交通場景,經處理后導入到仿真平臺,再基于數據驅動的方法,直接復現或泛化構建出更多的交通場景。例如Waymo的交通流仿真便是采用了此方法,通過合理地更改真實場景的某些數據特征,便可泛化生成新的交通流場景。
構建高置信度的交通流環境是自動駕駛仿真測試能夠順利開展的首要條件。 交通流仿真模型根據仿真模型的大小又可分為:宏觀模型、微觀模型和中觀模型。
宏觀模型是模擬大規模交通的有效工具,研究對象是多個車輛的集合,將車輛集合視為一個連續的流動。用流量密度和交通流量等集體量測量的聚集行為,比如車流平均速度以及平均密度等集體屬性。然而它的局限性在于其應用僅限于高速公路網絡,不適合模擬包含了汽車之間豐富交互行為的城市交通。
離散道路(圖片來源于網絡)
中觀模型介于宏觀模型和微觀模型之間,它結合了兩者的優點,可以模擬不同層次的交通細節。
微觀模型主要研究對象是單個車輛,模擬每輛車在其它周圍車輛或行人影響下的動態行為。建立微觀模型的目的是描述特定的車輛行為,適合于城市交通仿真,可以用來模擬多車道以及交叉路口的交通情況。
必須換道的情況(圖片來源于網絡)
自動駕駛仿真測試中交通流仿真主要是微觀交通流仿真,主要研究單個車輛與駕駛員單元的之間的行為交互。在傳統交通工程領域,微觀交通流仿真主要是為了分析人類駕駛行為而建立的解析模型。隨著從人類駕駛轉向機器駕駛,機器學習方法開始發揮作用,對于自動駕駛系統仿真系統而言,微觀交通流仿真的作用主要是通過擬合真實駕駛數據學習人類駕駛行為或通過強化學習得到最優駕駛策略。
2. 自動駕駛仿真測試平臺類型和核心能力
2.1 不同的類型
根據被測對象的不同,自動駕駛仿真平臺實可分為:模型在環(MIL)、軟件在環(SIL)、硬件在環(HIL)、駕駛員在環(DIL)以及車輛在環(VIL)。
1)模型在環(MIL):適用于控制器開發的初期階段及建模階段,全是虛擬的對象,沒有硬件參與系統測試,通過輸入一系列的測試用例來驗證模型是否滿足設計的功能需求。用于自動駕駛系統感知算法、決策與規劃算法以及控制執行算法的驗證與迭代。
2)軟件在環(SIL):軟件在環測試沒有真實部件,測試結果依賴于傳感器模型、車輛動力學模型以及環境模型的逼真程度,仿真的置信度相對較低。
適用于自動駕駛算法迭代初期,對算法模型進行代碼轉換,形成代碼后需要進行代碼與算法模型的等效測試。
軟件在環測試是為了驗證自動生成的代碼的正確性,即自動生成的代碼和用于生成代碼的模型行為上是否一致。
當前SIL主要用于感知識別算法的驗證測試,且需要大量的數據集來進行機器學習算法訓練,比較主流的數據集有Cityscapes、ImageNet(ILSVRC),COCO,PASCAL VOC,KITTI等。
注:SIL測試是MIL的一種等效測試,等效分析的目的是為了防止代碼生成的過程中出現錯誤,SIL 的測試用例都是借用的MIL,一旦前面的測試用例錯誤,后面必然將會一錯再錯。
3)硬件在環(HIL):硬件在環通過將需要驗證的真實的物理硬件(一般是控制器)引入到閉環系統中,控制器接收被控對象(仿真模型)的狀態并發出控制指令,然后得到被控對象(仿真模型)反饋并再次發出控制指令。
4)駕駛員在環(DIL):基于駕駛員和硬件在環的實時仿真技術,利用動態駕駛員模擬器、環境視聽模擬設備及相關人車檢測設備模擬“人-車-環境”在實際車輛駕駛中的信息交互。它能夠采集駕駛員行為數據并分析駕駛員行為特征,也可以完成HMI測試以及駕駛員對自動駕駛系統的主觀評價。
駕駛員在環仿真測試示意圖(圖片來源于網絡)
5)車輛在環(VIL):由實車代替車輛動力學模型引入至虛擬環境中進行測試,主要目的是驗證整車相關電控系統的匹配及集成測試。它主要包括兩種形式:封閉場地車輛在環和轉轂平臺車輛在環。一般是在封閉實驗室或者在空曠的測試場地中,通過構建多種復雜的虛擬駕駛場景,如惡劣的天氣、極端的工況等,來測試和驗證整車的功能和性能。
車輛在環仿真測試示意圖(圖片來源于網絡)
2.2 仿真平臺的核心能力
1)測試場景的高逼真還原:包括場景的幾何還原、物理還原和邏輯還原。幾何還原指現實世界中三維場景中物體的形狀、大小及相互位置關系的還原;物理還原指對現實世界中各物體物理屬性的還原,讓其在仿真時間里重現真實世界的物理運動規律,比如雨雪天道路的摩擦系數會降低,剎車距離會加大;邏輯還原指還原場景內的各種元素的邏輯行為,讓其都遵循其現實世界中的一般運動規律。
2)基于路采數據的場景自動化生成:為了保證測試場景的真實度,需要以大量的路采數據作為基礎;
直接將采集數據回放一遍以驗證自動駕駛算法的這種以回放式仿真是最簡單、最常見的一種方式。這方式僅適用于開環仿真,并且數據的利用率太低。而自動駕駛仿真測試需要海量的測試場景的支撐,單純依靠路采數據將會耗費大量的人力成本和時間成本。因此能夠基于有限的路采數據能夠智能化、自動化的泛化出無限的場景,快速構建場景庫,是自動駕駛仿真平臺是必備核心能力之一。
3)具備云端并行加速計算:ADAS系統驗證僅需要滿足特定場景下的功能需求即可,而證明高階自動駕駛算法的完備性,至少需要對數十萬的測試場景進行回歸測試。依靠本地測試存在算力不足,測試周期長,效率低等問題。以分布式架構為特征的云計算憑借其強大的并行加速計算能力,從根本上解決了自動駕駛仿真測試的效率問題,是自動駕駛仿真平臺的核心競爭力之一。
3. 自動駕駛仿真技術趨勢分析
3.1 云仿真
ADAS功能僅需要在有限特定的場景下進行仿真測試便可驗證功能的性能,而高階自動駕駛系統需要面對海量的測試場景。
相比于傳統ADAS功能仿真測試,自動駕駛系統仿真測試對服務器的數據存儲能力以及算力需求呈現較快增長趨勢。
傳統的單機仿真測試呈現出算力不足,且無法實現加速測試的問題,導致測試周期長,效率低;而云計算憑借其強大算力以及并行加速計算能力,是實現自動駕駛大規模仿真場景的有效解決方案,大大提升系統研發和測試效率。
“八爪魚”云仿真服務(圖片來源于網絡)
云仿真有兩種常見的加速計算方式:
1) 并行計算 - 空間加速
對于大規模的仿真任務,這個時候單機仿真測試就存在性能上的瓶頸;單個計算節點無法很好的完成任務。需要采用一種機制將仿真任務分配到多個機器上,進行協同工作。云仿真的分布式框架可以將存儲和計算任務進行拆分,讓每個計算節點單獨承擔一小部分任務,這樣多個機器便可協同完成一件巨大的任務,既能降低對個單個節點的性能需求,又很好的保證了系統整體的計算能力和存儲容量。
2) 引入虛擬時間 - 時間加速
引入虛擬時間,并根據當前仿真任務的完成情況隨時調控整個仿真平臺系統的運轉速度,在保證各個仿真節點加速程度保持同步的基礎上,讓各個仿真節點能夠以高于真實時間的節奏運行,從而大大縮短整個仿真任務的完成時間。
云仿真計算常見的分布式框架有:Hadoop,Apache Storm,Apache Spark。
Apache Storm 是一個免費開源、分布式、高容錯的實時大數據處理系統,設計用于在容錯和水平可擴展方法中處理大量數據,擅長實時大數據流處理。
Apache Spark 基于 MapReduce 分布式計算框架,專為大規模數據處理而設計的快速通用的計算引擎,但它并不會像Storm那樣一次一個地處理數據流,而是在處理前按時間間隔預先將其切分為一段一段的批處理作業;同時加入了緩存機制保存中間計算結果, 相比Hadoop,優化了因為I/O帶來的計算性能瓶頸問題。
Hadoop 基于MapReduce 分布式計算框架和Nutch Distributed File System (NDFS)存儲框架,擅長處理靜態數據;它也屬于分批處理系統,不擅長實時計算。
3.2 數字孿生
當前的的自動駕駛仿真測試存在以下問題:a. 復雜交通場景搭建的難度大、成本高、安全風險大,如隧道、多車沖突、預期功能安全場景等;b. 軟硬件在環測試依賴車輛動力學模型,但模型難以復現真實車輛動力學,其精度對測試有較大影響;c. 開放道路中的交通參與物、交通流等不易復現,不便開展大量的重復測試,等等。
數字孿生技術通過“虛實結合”,將真實車輛動力學和虛擬復雜交通場景緊密聯系,并在測試過程中實時交互,可有效解決現有測試方法的不足。數字孿生技術是自動駕駛仿真測試的增效利器,是自動駕駛車輛快速實現商業化落地道路上的一大助力。那么,究竟什么是數字孿生呢?
美國國防軍需大學(Defense Acquisition University)對數字孿生的定義是:數字孿生是充分利用物理模型、傳感器更新、運行歷史等數據,集成多學科、多物理量、多尺度、多概率的仿真過程,在虛擬空間中完成映射,從而反映相對應的實體裝備的全生命周期過程。
數字孿生也叫“數字雙胞胎”,以數字化方式拷貝一個物理對象,模擬對象在現實環境中的行為;即創造出一個有效的“復制品”出來。就像西游記里的真假“美猴王”,兩個對象屬性相差無幾,不僅外觀相貌相同,甚至連法術技能都一樣。
對于自動駕駛仿真測試來講,數字孿生技術的典型應用是自動駕駛數字孿生測試VRIL(Virtual Reality in the Loop);就是利用數字孿生技術創造出和現實世界一致的虛擬環境模型,真實的車輛在真實的測試場地或道路中進行測試的同時,將同步映射到虛擬的測試環境中去,從而形成一個虛實結合的整車閉環測試。
基于場景庫的自動駕駛測試體系(圖片來源于網絡)
虛擬環境中有與真實世界中一樣的道路、交通參與者、測試車輛及其配置的傳感器模型。真實世界的測試車輛在現實環境中的各種運動狀態信息以及傳感器采集到的環境信息,都會在虛擬環境里同步更新。
同時,虛擬環境中的傳感器模型探測到的目標信息也可以反饋給現實世界中的測試車輛進行信息融合與輔助決策。因此,現實世界和虛擬環境之間就實現了信息和狀態的交互,實現了數字孿生系統的閉環實時仿真測試。
3.3 混合交通流仿真
自動駕駛車輛取代傳統汽車不是一蹴而就的事情,必然在相當的一段時間內處于兩者共存的局面,因此傳統汽車與自動駕駛汽車混行將是一種常見的交通場景。國家信息中心主任徐長明曾在一個會議上指出,中國發展L4、L5級自動駕駛最大的困境是“混合交通”,即自動駕駛汽車跟非自動駕駛混行。
城市混合交通流微觀仿真系統示例(圖片來源于網絡)
有相關專家提出,解決這一問題的關鍵是實現自動駕駛車輛由單體智能向群體智能轉變,即我國主導的車-路-云一體化的網聯協同智能 —— 通過聯網實現超視距感知和提前預知,進而減輕單個車輛在環境感知層面的壓力;通過云端大腦集中決策,減輕單個車輛在決策層面的壓力,并提升決策的效率和可靠性。
能否解決好自動駕駛車輛在混合交通條件下的安全問題,將成為決定自動駕駛車輛能否實現商業化落地的關鍵因素;诨旌辖煌ㄏ聴l件下的測試場景(尤其是混合交通條件下的V2X場景測試)將是未來自動駕駛仿真測試的重要研究方向,甚至需要針對自動駕駛車輛在不同滲透率下的混合交通模型進行仿真測試。
本文內容不用于商業目的,如涉及知識產權問題,請權利人聯系51Testing小編(021-64471599-8017),我們將立即處理