安全性,一直都是自動駕駛研發的關鍵問題。前幾天,美國官方判定2019年3月全球首個自動駕駛汽車撞死行人事故中,Uber無罪又引起了廣泛關注。無疑,自動駕駛安全性依舊是業內外人士關注的重點。近日,伊利諾伊大學香檳分校(CSL)的研究人員公佈了如何使用AI和ML,通過軟件和硬件的改進來提高自動駕駛技術的安全性,開發自動駕駛可擴展安全性測試平台DriveFI。
解決自動駕駛安全性,這是一個基於跨學科、跨技術、跨領域的攻堅問題。此次CSL的可擴展的安全性測試平台也是彙集了多家公司,包括三星、NVIDIA,還有灣區的一些初創公司。
該研究小組開發的這個平台,使自動駕駛汽車能夠在複雜多變的環境中更快、更經濟的解決安全性的問題。
挑戰
這項研究如此具有挑戰性的原因之一是,自動駕駛汽車是基於AI和ML集機械、電子、計算機技術以及實時駕駛決策為一體的複雜系統。典型的自動駕駛汽車可以說是一部“帶輪子的超級計算機”,擁有50多個處理器和加速器,可運行超過1億行代碼以支持計算機視覺和其他ML任務。
當自動駕駛汽車以每小時70英里的速度行駛時,故障會給駕駛員帶來重大的安全隱患。一方面,在這樣的速度下,除非有針對性的對自動駕駛汽車進行學習培訓,否則無法預測其行為軌跡。另一方面,從傳統意義上講,如果在計算機或者智能手機遇到軟件故障時,最常見的處理方式是重啟,但這種方式並不適合自動駕駛汽車,並不能讓車隨時停下,否則會造成更嚴重甚至致命的事故。
目前的現行法規,要求Uber和Waymo之類的公司在公共道路上對車輛進行測試,並且每年向加利福尼亞州DMV報告其車輛的安全性。
基於現狀,研究團隊希望可以探索自動駕駛常見的安全問題、汽車的表現以及其理想的安全指標是什麼。所以他們研發了這個可擴展測試平台。
項目簡介
CSL研究小組分析了2014-2017年提交的所有安全報告,涵蓋了144輛自動駕駛汽車,累計行駛了1116605英里。他們發現,在行駛相同里程的情況下,人類駕駛汽車發生事故的可能性比自動駕駛汽車少4000倍。這意味著自動駕駛汽車未能以驚人的速度適當地處理情況並脫離技術設定,而常常依靠駕駛員來接管。
研究人員和多家公司在研究過程中發現,在自動駕駛汽車系統出現特定問題之前,很難訓練該軟件來克服這些問題。而該團隊正在使用計算機仿真和人工智能來加快這一過程。
本文介紹的平台叫做DriveFI,它通過識別可能導致碰撞和事故的危險情況來解決上述挑戰。DriveFI包括(a)一個FI引擎,可以修改一個自主駕駛系統的軟件和硬件狀態來模擬故障的發生,和(b) ML-based故障選擇引擎,我們稱之為貝葉斯故障注入,可以找到最可能的情況和故障導致違反安全條件。相比之下,傳統的FI技術往往不關注安全違規,在實踐中表現率較低,需要大量的測試時間。
DriveFI的框架能夠通過對自動駕駛車輛在故障狀態下的行為進行因果和反事實推理,發現安全關鍵情況和故障。它通過(a)以車輛運動學和AV架構的形式整合領域知識,(b)基於橫向和縱向停車距離的安全建模,(c)使用真實的故障模型來模擬軟錯誤和軟件錯誤。(a)、(b)和(c)項被集成到一個貝葉斯網絡(BN)中。BN提供了一種良好的形式化方法,用可解釋的模型來模擬故障在自動駕駛系統組件之間的傳播。BN支持快速概率推理,這使得DriveFI能夠快速找到安全關鍵的故障。貝葉斯FI框架可以擴展到其他安全關鍵系統(如手術機器人)。該框架需要安全約束和系統軟件體系結構的規範來建模系統子組件之間的因果關係。
該平台使用ADS技術來支持和代替人類駕駛員來完成控制車輛轉向、加速和監視周圍環境(如其他車輛/行人)的任務。ADS架構由5個基本層組成:
傳感器抽象層(上圖中的1):傳感器抽象層負責根據傳感器類型對輸入數據進行預處理、噪聲濾波、增益控制、色調映射、去霧化和感興趣區域的提取。ADS支持多種傳感器,如全球定位系統(GPS)、慣性測量單元(IMU)、聲納、雷達、激光雷達和相機傳感器。研究人員只使用了兩個攝像頭(安裝在車輛的頂部和前部),還有一個激光雷達。
感知層(上圖中的2):傳感器抽象層將數據輸入感知層,感知層使用計算機視覺技術(包括深度學習)檢測靜態對象(如車道、交通標誌、障礙物)和出現在駕駛場景中動態對象(例如:乘用車、卡車、騎自行車的人、行人)。感知層還負責對象和車道的時間跟蹤。跟蹤是必要的,以確保一個對象不會因為分類錯誤或檢測失敗而突然從框架中消失。
定位層(上圖中的3):定位層負責從各種來源收集數據,在地圖中定位自動駕駛車輛。地圖中的定位可以使用GPS傳感器或使用攝像機/激光雷達輸入來完成。本文中描述的研究工作僅使用攝像機/激光雷達和地圖來實現定位,不使用GPS。
預測層(上圖中的4):預測層負責利用模型中的信息(如位置、標題、速度、加速度)生成探測目標的軌跡。因此,它可以概率性地識別自動駕駛汽車路徑中的障礙。
規劃/控制層(上圖中的5):規劃控制層負責根據車輛的起點和終點生成導航計畫,並向自動駕駛汽車發送控制信號(驅動、制動、轉向)。路由模塊根據請求生成高級導航信息,路由模塊需要知道起點和終點,以計算通道的車道和道路。規劃模塊利用定位輸出、預測輸出和路由輸出來規劃安全無碰撞的軌跡。控制模塊以規劃的軌跡為輸入,生成控制命令傳遞給CAN總線,CAN總線將信息傳遞給機械部件。監視系統監視車輛包括硬件在內的所有模塊,並將其傳遞到人機界面,供人工驅動程序查看,以確保所有模塊都在正常運行。在模塊或硬件發生故障時,監視器在監護模塊中觸發警報,然後監護模塊選擇要採取的行動來防止事故。
該研究小組目前正在構建技術和工具,以產生最大程度影響安全性的駕駛條件和問題。他們發現大量的安全關鍵情況,在這些情況下錯誤可能導致事故,而不必枚舉道路上的所有可能性,從而節省了大量的時間和金錢。
總結
NVIDIA架構研究副總裁Steve Keckler表示:“自動駕駛汽車的安全性對其在市場和社會中的成功至關重要。”我們希望伊利諾伊州研究團隊正在開發的技術將使工程師能夠更輕鬆地以較低的成本開發更安全的汽車系統。