邢星宇,吳旭陽(yáng),劉力豪,陳君毅,余卓平
(同濟(jì)大學(xué)汽車學(xué)院,上海 201804)
在自動(dòng)駕駛汽車飛速發(fā)展和廣泛應(yīng)用的進(jìn)程中,自動(dòng)駕駛事故屢有發(fā)生,其安全性成為自動(dòng)駕駛技術(shù)發(fā)展的關(guān)鍵。合理的測(cè)試和驗(yàn)證方法是發(fā)現(xiàn)系統(tǒng)缺陷并優(yōu)化系統(tǒng)功能,從而避免類似事故的重要手段[1]。決策規(guī)劃系統(tǒng)位于自動(dòng)駕駛系統(tǒng)信息傳輸與處理過(guò)程的中間部分,它需要處理復(fù)雜的外界環(huán)境信息,并直接影響控制執(zhí)行系統(tǒng)的表現(xiàn),因此決策規(guī)劃系統(tǒng)測(cè)試在系統(tǒng)級(jí)測(cè)試階段占有重要地位。針對(duì)決策規(guī)劃系統(tǒng)的測(cè)試存在諸多挑戰(zhàn)。首先,決策規(guī)劃系統(tǒng)需要根據(jù)周圍環(huán)境變化做出實(shí)時(shí)判斷和決策,因此對(duì)決策規(guī)劃系統(tǒng)進(jìn)行驗(yàn)證只能通過(guò)在環(huán)測(cè)試方案。此外,目前的自動(dòng)駕駛決策規(guī)劃系統(tǒng)大多是基于獨(dú)立功能切換的系統(tǒng)[2],不同的功能單元之間切換邏輯條件繁雜且敏感;部分以機(jī)器學(xué)習(xí)為基礎(chǔ)的決策規(guī)劃系統(tǒng)則具有一定的不可解釋性,其行為具有概率分布的特點(diǎn)。以上問(wèn)題都增加了決策規(guī)劃系統(tǒng)測(cè)試的難度和復(fù)雜性。
為解決上述問(wèn)題,在基于場(chǎng)景測(cè)試方法的基礎(chǔ)上,有學(xué)者提出了基于數(shù)據(jù)優(yōu)化搜索的場(chǎng)景測(cè)試方法。Bühler等[3]利用啟發(fā)式優(yōu)化算法,使用泊車質(zhì)量相關(guān)的評(píng)價(jià)指標(biāo)設(shè)計(jì)成本函數(shù),自動(dòng)迭代修改測(cè)試泊車位形狀,以挑戰(zhàn)自動(dòng)駕駛系統(tǒng)的泊車算法。Abdessalem等[4]采用遺傳算法測(cè)試了行人檢測(cè)系統(tǒng)。Tuncali等[5]采用模擬退火算法,設(shè)計(jì)了基于魯棒性評(píng)價(jià)指標(biāo)的成本函數(shù),對(duì)帶有機(jī)器學(xué)習(xí)模塊的自動(dòng)駕駛系統(tǒng)進(jìn)行了搜索測(cè)試。Klischat等[6]使用進(jìn)化算法,借助可達(dá)性分析方法,通過(guò)改變交通參與者的初始狀態(tài)來(lái)尋找使可達(dá)域更小的關(guān)鍵場(chǎng)景?;谀繕?biāo)優(yōu)化搜索的場(chǎng)景測(cè)試方法針對(duì)性更強(qiáng),結(jié)合仿真測(cè)試平臺(tái)及自動(dòng)化測(cè)試工具能夠高效地完成大規(guī)模測(cè)試,在系統(tǒng)開(kāi)發(fā)階段能夠?yàn)楣δ芸焖俚鷥?yōu)化提供支持,彌補(bǔ)了基于數(shù)據(jù)分析方法的不足。但已有的研究工作較少涉及決策規(guī)劃系統(tǒng)測(cè)試,且在研究多種優(yōu)化搜索算法的具體測(cè)試效果方面仍需深入。
針對(duì)上述問(wèn)題,本文提出一種基于目標(biāo)優(yōu)化搜索的決策規(guī)劃系統(tǒng)自動(dòng)化測(cè)試方法,能夠針對(duì)性地為被測(cè)對(duì)象生成關(guān)鍵場(chǎng)景并實(shí)現(xiàn)自動(dòng)化測(cè)試;本研究基于決策規(guī)劃系統(tǒng)硬件在環(huán)仿真測(cè)試平臺(tái),對(duì)方法的有效性進(jìn)行了驗(yàn)證;并進(jìn)一步對(duì)比分析了貝葉斯優(yōu)化算法(Bayesianoptimization,BO)、遺傳算法(geneticalgorithm,GA)、隨機(jī)搜索算法(random searching,RS)三種搜索算法在生成關(guān)鍵測(cè)試場(chǎng)景時(shí)的效果,探索面向不同實(shí)際測(cè)試需求的最優(yōu)算法。
仿真場(chǎng)景測(cè)試基于真實(shí)交通環(huán)境包含的各類要素及其特征進(jìn)行抽象和簡(jiǎn)化,從而構(gòu)建出滿足測(cè)試需要的仿真測(cè)試場(chǎng)景。但由于場(chǎng)景中要素?cái)?shù)量眾多、要素參數(shù)連續(xù)變化等問(wèn)題,場(chǎng)景數(shù)量呈現(xiàn)爆炸式增長(zhǎng)的趨勢(shì),窮盡式測(cè)試方案是不具備可操作性的。同時(shí),隨機(jī)生成的大多數(shù)測(cè)試場(chǎng)景是“低風(fēng)險(xiǎn)的”正常行駛場(chǎng)景,測(cè)試價(jià)值較低,測(cè)試更應(yīng)關(guān)注使車輛在特定層面出現(xiàn)臨界狀態(tài)的關(guān)鍵場(chǎng)景。本文中的關(guān)鍵場(chǎng)景主要是指安全性相關(guān)的危險(xiǎn)場(chǎng)景。關(guān)鍵場(chǎng)景的產(chǎn)生可能有系統(tǒng)外部和內(nèi)部的原因,一方面,它們可能由外部交通參與者的危險(xiǎn)駕駛行為導(dǎo)致。另一方面,被測(cè)系統(tǒng)自身的缺陷和決策規(guī)劃的非線性邏輯,也會(huì)形成關(guān)鍵場(chǎng)景。
本文將被測(cè)對(duì)象視為黑箱,以場(chǎng)景參數(shù)空間作為輸入,基于被測(cè)對(duì)象行為表現(xiàn)的安全性評(píng)估作為輸出,將關(guān)鍵場(chǎng)景生成與測(cè)試問(wèn)題轉(zhuǎn)化為目標(biāo)優(yōu)化問(wèn)題?;趦?yōu)化算法不斷尋找“最值”的性質(zhì),有目的性地搜索符合需求的測(cè)試場(chǎng)景。同時(shí),基于仿真環(huán)境下的自動(dòng)化測(cè)試工具,可以實(shí)現(xiàn)自動(dòng)化迭代計(jì)算,提高場(chǎng)景測(cè)試效率。
本文的核心思路是將場(chǎng)景測(cè)試問(wèn)題轉(zhuǎn)化為目標(biāo)優(yōu)化問(wèn)題,首先確定問(wèn)題的輸入、輸出以及連接輸入與輸出的場(chǎng)景生成方法。本文在場(chǎng)景描述時(shí),使用功能場(chǎng)景、邏輯場(chǎng)景、具體場(chǎng)景的三層場(chǎng)景結(jié)構(gòu)[7]。關(guān)鍵場(chǎng)景生成與測(cè)試的方法框架如圖1所示。
圖1 關(guān)鍵場(chǎng)景生成與測(cè)試框架Fig.1 Frameworkofcriticalscenariogenerationandtesting
設(shè)D代表邏輯場(chǎng)景參數(shù)空間,基于在環(huán)仿真平臺(tái),定義仿真函數(shù)sim的輸入是D中的場(chǎng)景參數(shù)向量X,輸出為原始仿真結(jié)果,如自車和其他交通參與者的運(yùn)動(dòng)軌跡等。另外,定義成本函數(shù)f,其輸入為原始仿真結(jié)果,輸出為成本函數(shù)值v,σ為設(shè)定的成本函數(shù)危險(xiǎn)閾值。由此,場(chǎng)景參數(shù)向量X和成本函數(shù)值v通過(guò)在仿真平臺(tái)中運(yùn)行的仿真實(shí)驗(yàn)形成了如式(1)所示的映射關(guān)系。由于場(chǎng)景存在復(fù)雜性,且決策規(guī)劃系統(tǒng)存在不確定性,X和v的映射關(guān)系是一個(gè)典型的黑箱問(wèn)題。
綜上,面向決策規(guī)劃系統(tǒng)的關(guān)鍵場(chǎng)景生成問(wèn)題,可以轉(zhuǎn)化為如式(2)所示的在給定的場(chǎng)景參數(shù)空間D下,尋找特定的場(chǎng)景參數(shù)向量X,將成本函數(shù)值v最小化的優(yōu)化問(wèn)題。
對(duì)于該優(yōu)化問(wèn)題,搜索算法表征了尋找關(guān)鍵場(chǎng)景的策略。本文的黑箱存在兩方面特性:其一,仿真軟件的不確定性以及仿真消息可能發(fā)生的隨機(jī)延遲或丟失使成本函數(shù)值存在一定隨機(jī)誤差,降低了成本函數(shù)的導(dǎo)數(shù)計(jì)算的可靠性。其二,實(shí)時(shí)硬件的引入增高了單輪仿真實(shí)驗(yàn)的時(shí)間成本。因此,通過(guò)對(duì)比不同搜索算法的隨機(jī)誤差處理策略和效率,本文最終選擇了貝葉斯優(yōu)化算法和遺傳算法作為搜索算法。
在使用貝葉斯優(yōu)化算法進(jìn)行關(guān)鍵場(chǎng)景搜索時(shí),需要結(jié)合黑箱特性設(shè)計(jì)算法參數(shù)??紤]到模型表征非線性函數(shù)以及處理隨機(jī)誤差的能力,本文選用了如式(3)所示的高斯過(guò)程建模代理模型。其中先驗(yàn)均值函數(shù)μ(x)取默認(rèn)值0,協(xié)方差函數(shù)k(x,x')如式(4)所示選用了5/2內(nèi)核和較大的尺度參數(shù)l,增強(qiáng)了對(duì)非平滑函數(shù)的建模能力。采集函數(shù)α(x)如式(5)所示,采用了基于預(yù)期改進(jìn)的策略,其中ymax是在當(dāng)前測(cè)試中觀察到的評(píng)價(jià)指標(biāo)最大值,f(X)是對(duì)下一個(gè)場(chǎng)景評(píng)估點(diǎn)X的預(yù)期值。該策略在增加提升量的同時(shí)也保證收斂速度,且在當(dāng)目標(biāo)函數(shù)隨機(jī)誤差較大時(shí)可以提高回歸過(guò)程的魯棒性。更新方法選用了邊際估計(jì)方法,通過(guò)使用log邊際似然函數(shù)logp(yi|x i,β,l,σ)進(jìn)行更新,提高了系統(tǒng)處理不確定性的能力。
在使用遺傳算法進(jìn)行關(guān)鍵場(chǎng)景搜索時(shí),需要結(jié)合優(yōu)化問(wèn)題特性選擇具體參數(shù)。對(duì)于編碼方式,傳統(tǒng)的二進(jìn)制編碼以離散方式搜索,可能使歐式距離較小的兩組場(chǎng)景參數(shù)存在著較大的漢明距離,進(jìn)而削弱交叉和突變操作的效果,使算法不能有效探索整個(gè)場(chǎng)景參數(shù)空間,陷入局部?jī)?yōu)化之中。因此本文采用實(shí)數(shù)編碼的方式,以在連續(xù)域上搜索整個(gè)場(chǎng)景參數(shù)空間。對(duì)于交叉方法,本文采用模擬二值交叉方式以結(jié)合二進(jìn)制編碼的搜索特點(diǎn),提升產(chǎn)生新的場(chǎng)景參數(shù)組合的概率。對(duì)于變異方法,考慮場(chǎng)景參數(shù)組合作為染色體的特性,本文采用高斯突變算子,對(duì)染色體上每個(gè)基因即具體的場(chǎng)景參數(shù)都進(jìn)行在一定閾值范圍內(nèi)的概率變異。對(duì)于選擇方法,本文采用了錦標(biāo)賽選擇方法以提高收斂速度。
對(duì)于遺傳算法需要設(shè)置的其他參數(shù),考慮本文中單輪仿真實(shí)驗(yàn)的評(píng)估時(shí)間成本較高,因此種群規(guī)模不宜過(guò)大,代數(shù)也應(yīng)被控制在一定合理范圍內(nèi)。最終選擇的遺傳算法參數(shù)如下。種群規(guī)模:10,進(jìn)化代數(shù):40,交叉概率:0.9,變異概率:0.1。
本文設(shè)計(jì)的自動(dòng)化仿真測(cè)試框架如圖2所示,整體可分為基礎(chǔ)仿真實(shí)驗(yàn)配置和自動(dòng)化測(cè)試兩個(gè)部分。其中基礎(chǔ)仿真實(shí)驗(yàn)配置部分初始化仿真測(cè)試所需要的各個(gè)組件以及靜態(tài)仿真環(huán)境;在自動(dòng)化測(cè)試部分則通過(guò)管理場(chǎng)景的終止條件以及動(dòng)態(tài)對(duì)象的生存銷毀狀態(tài)來(lái)控制仿真實(shí)驗(yàn)的迭代運(yùn)行。
圖2 自動(dòng)化仿真測(cè)試框架Fig.2 Framework of automatic simulation testing
對(duì)于基礎(chǔ)仿真實(shí)驗(yàn)配置部分,首先初始化并連接仿真服務(wù)器和仿真客戶端,其次初始化仿真靜態(tài)環(huán)境等基本仿真配置。
對(duì)于自動(dòng)化測(cè)試部分,首先由優(yōu)化搜索算法選擇特定的場(chǎng)景參數(shù)組合,在已初始化的仿真靜態(tài)環(huán)境中通過(guò)動(dòng)態(tài)對(duì)象生存管理器配置相應(yīng)場(chǎng)景參數(shù)后開(kāi)始進(jìn)行仿真實(shí)驗(yàn),被測(cè)決策規(guī)劃系統(tǒng)不斷從仿真客戶端中訂閱感知信息流,并發(fā)布控制信息流。當(dāng)仿真實(shí)驗(yàn)滿足預(yù)先設(shè)定的場(chǎng)景終止條件時(shí),從仿真實(shí)驗(yàn)中獲取原始仿真結(jié)果,并由對(duì)象生存管理器銷毀動(dòng)態(tài)對(duì)象,由此結(jié)束當(dāng)前輪次仿真實(shí)驗(yàn)。優(yōu)化搜索算法在分析了基于相應(yīng)仿真結(jié)果計(jì)算出的成本函數(shù)值后,給出下一個(gè)建議的場(chǎng)景評(píng)估點(diǎn),即待評(píng)估的場(chǎng)景參數(shù)組合,再通過(guò)動(dòng)態(tài)對(duì)象生存管理器根據(jù)場(chǎng)景參數(shù)重新生成對(duì)象并進(jìn)行新一輪仿真實(shí)驗(yàn)。在整個(gè)過(guò)程中,被測(cè)決策規(guī)劃系統(tǒng)一直維持在運(yùn)行狀態(tài)。
本節(jié)基于自動(dòng)化在環(huán)仿真測(cè)試平臺(tái)進(jìn)行仿真測(cè)試,被測(cè)決策規(guī)劃系統(tǒng)以硬件形式接入測(cè)試環(huán)境?;趯?duì)決策規(guī)劃系統(tǒng)特性的分析,選取典型功能場(chǎng)景,分析場(chǎng)景參數(shù)和參數(shù)范圍得到相應(yīng)的邏輯場(chǎng)景作為測(cè)試輸入。以評(píng)價(jià)指標(biāo)為基礎(chǔ)并結(jié)合規(guī)避無(wú)效場(chǎng)景的條件構(gòu)建成本函數(shù)。接下來(lái)簡(jiǎn)要介紹實(shí)驗(yàn)方案部署情況。
為了提供接近決策規(guī)劃系統(tǒng)實(shí)際運(yùn)行條件的測(cè)試環(huán)境,同時(shí)保證測(cè)試效率,本文設(shè)計(jì)并搭建了基于硬件在環(huán)的決策規(guī)劃系統(tǒng)測(cè)試平臺(tái),能夠?qū)崿F(xiàn)仿真環(huán)境與被測(cè)硬件系統(tǒng)的信息交互,達(dá)到在環(huán)測(cè)試的目的。平臺(tái)包括硬件層、仿真層和數(shù)據(jù)層。硬件層主要包括被測(cè)決策規(guī)劃系統(tǒng)硬件、感知信息輸入接口、控制信息輸出接口。本文所測(cè)試的決策規(guī)劃系統(tǒng)為團(tuán)隊(duì)自行開(kāi)發(fā)的面向城市自動(dòng)駕駛功能的決策規(guī)劃系統(tǒng),具備循跡、跟車、換道、避障等功能,可滿足實(shí)際仿真測(cè)試時(shí)的基本需求,該決策規(guī)劃系統(tǒng)被部署于型號(hào)為ARK-3500的工控機(jī)中。仿真層為面向自動(dòng)駕駛測(cè)試的仿真測(cè)試環(huán)境。考慮決策規(guī)劃系統(tǒng)對(duì)場(chǎng)景輸入信息的多樣性需求,本文采用CARLA開(kāi)源仿真平臺(tái)作為仿真軟件,提供環(huán)境要素模型、車輛動(dòng)力學(xué)模型和傳感器模型。本文主要研究決策規(guī)劃系統(tǒng)性能表現(xiàn),為避免感知系統(tǒng)的影響,本文采用理想傳感器模型,基于仿真數(shù)據(jù)接口構(gòu)建了導(dǎo)航定位和對(duì)象列表等環(huán)境信息輸入方案。數(shù)據(jù)層主要用于仿真層與硬件層之間的信息傳輸,并管理整個(gè)自動(dòng)化仿真測(cè)試過(guò)程。其將來(lái)自仿真層的感知信息和車輛自身狀態(tài)信息通過(guò)軟件的仿真數(shù)據(jù)接口導(dǎo)出,相關(guān)數(shù)據(jù)在被編碼為仿真消息后,通過(guò)邏輯接口和物理接口傳輸至被測(cè)硬件。
在仿真環(huán)境中,對(duì)于環(huán)境車輛的行為實(shí)現(xiàn)方式,主要通過(guò)基于規(guī)則的行為決策和基于PID(proportion-integral-derivative)的軌跡跟蹤實(shí)現(xiàn)。對(duì)于車道保持行為,通過(guò)使用橫向和縱向的PID控制器跟隨特定路徑點(diǎn)實(shí)現(xiàn);對(duì)于換道行為,環(huán)境車需檢測(cè)換道觸發(fā)距離是否滿足設(shè)定閾值,并通過(guò)局部規(guī)劃器,配合PID控制進(jìn)行換道軌跡跟蹤。
所要測(cè)試的功能場(chǎng)景可以通過(guò)多種手段確定,如對(duì)被測(cè)系統(tǒng)進(jìn)行安全分析以獲得潛在的危險(xiǎn)場(chǎng)景[8],或根據(jù)測(cè)試需求確定。本文選取了一個(gè)典型的低速車輛切入場(chǎng)景進(jìn)行方法驗(yàn)證。在晴朗白天的高速公路三車道上,自車跟隨前方車輛行駛,經(jīng)過(guò)一段時(shí)間,相鄰車道車輛切入到自車前方。在該場(chǎng)景中,自車需要在短時(shí)間內(nèi)完成跟車-制動(dòng)避障-跟車的連續(xù)行為切換。針對(duì)選定的功能場(chǎng)景,本節(jié)按照道路拓?fù)浣Y(jié)構(gòu)、環(huán)境信息、自車以及其他交通參與者的順序分析所需的場(chǎng)景參數(shù)。同時(shí)為控制測(cè)試中的影響因素,對(duì)其他環(huán)境要素進(jìn)行適當(dāng)簡(jiǎn)化??紤]具體的測(cè)試需求和不同場(chǎng)景參數(shù)的相關(guān)性,最終確定場(chǎng)景參數(shù)設(shè)置(圖3)。
圖3 鄰車道車輛切入功能場(chǎng)景示意Fig.3 Schematic diagram of functional scenario:cut-in
在確定場(chǎng)景參數(shù)后,需要進(jìn)一步確定每個(gè)場(chǎng)景參數(shù)的取值范圍構(gòu)建邏輯場(chǎng)景。參數(shù)范圍的選取一般基于自然駕駛數(shù)據(jù)的分析獲取參數(shù)范圍及其分布情況,同時(shí)結(jié)合被測(cè)對(duì)象特點(diǎn)和測(cè)試需求進(jìn)行確定??紤]到參數(shù)范圍的選取并不是本文的研究重點(diǎn),且并不影響本方法的有效性,因此本文主要結(jié)合系統(tǒng)的功能需求和一般經(jīng)驗(yàn)制定場(chǎng)景參數(shù)范圍,并設(shè)參數(shù)為均勻分布,最后通過(guò)預(yù)實(shí)驗(yàn)最終確定場(chǎng)景參數(shù)范圍,如表1所示。對(duì)于自車初始速度的設(shè)定,考慮到其具備自主規(guī)劃速度和軌跡的能力,為減少人為干預(yù),同時(shí)壓縮自車由完全靜止啟動(dòng)所需要的時(shí)間,在實(shí)驗(yàn)中將其初始速度設(shè)定為2 m·s-1,測(cè)試啟動(dòng)后,自車將加速跟進(jìn)前車,并保持合理車間距,或擇機(jī)進(jìn)行換道,自車加速度范圍為±3 m·s-2,最高車速可達(dá)到12 m·s-1。
表1 邏輯場(chǎng)景參數(shù)范圍Tab.1 Parameter range of logical scenario
成本函數(shù)作為本方法中搜索算法的優(yōu)化目標(biāo),需要客觀反映測(cè)試的總體目標(biāo)和需求。本文重點(diǎn)關(guān)注決策規(guī)劃系統(tǒng)的安全性,因此成本函數(shù)需要基于安全性評(píng)價(jià)指標(biāo)進(jìn)行設(shè)計(jì),同時(shí)要求有一定連續(xù)性,以量化每個(gè)場(chǎng)景參數(shù)組合的關(guān)鍵程度,進(jìn)而有效地應(yīng)用搜索策略。此外,成本函數(shù)需要考慮排除無(wú)效場(chǎng)景,即期望的系統(tǒng)行為并未發(fā)生的場(chǎng)景,以提高測(cè)試效率。
對(duì)于本文研究的場(chǎng)景,碰撞時(shí)間(time to collision,TTC)是衡量危險(xiǎn)程度的重要指標(biāo),且具有一定的連續(xù)性[9]。在場(chǎng)景動(dòng)態(tài)變化過(guò)程中,自車和切入車TTC的最小值可以認(rèn)為是場(chǎng)景最危險(xiǎn)的時(shí)刻,能夠反映決策規(guī)劃系統(tǒng)在不同具體場(chǎng)景下的行為安全性,因此選擇以最小TTC值為基礎(chǔ)構(gòu)建成本函數(shù)。針對(duì)無(wú)效的場(chǎng)景,在本文中主要指切入車切入到自車后方的場(chǎng)景、切入車與前車發(fā)生碰撞的場(chǎng)景以及TTC一直為負(fù)值的場(chǎng)景。
綜上,本文最終設(shè)計(jì)了如式(6)所示的成本函數(shù)值公式。當(dāng)場(chǎng)景無(wú)效時(shí),對(duì)于GA,成本函數(shù)值設(shè)置為懲罰值α。對(duì)于BO,為了不破壞代理模型模擬的高斯分布,成本函數(shù)值設(shè)置為無(wú)效值。另外,當(dāng)場(chǎng)景有效時(shí),BO算法對(duì)應(yīng)的成本函數(shù)為-min(TTC),從而將最小值優(yōu)化問(wèn)題轉(zhuǎn)化為了最大值優(yōu)化問(wèn)題,進(jìn)而納入BO的算法框架。
Olsen等[10]將切入場(chǎng)景劃為三個(gè)危險(xiǎn)級(jí)別,無(wú)危險(xiǎn)1級(jí)(TTCmin>3 s)、緊急2級(jí)(1 s<TTCmin≤3 s)以及瀕臨碰撞3級(jí)(TTCmin≤1 s),本文將2級(jí)和3級(jí)場(chǎng)景設(shè)為關(guān)鍵場(chǎng)景。分別采用貝葉斯優(yōu)化算法和遺傳算法進(jìn)行100輪迭代優(yōu)化,并與基線算法進(jìn)行了初步比較。本文基線算法選擇隨機(jī)搜索,根據(jù)不同參數(shù)的參數(shù)范圍設(shè)定合適的采樣粒度構(gòu)建參數(shù)空間,之后采用均勻分布在參數(shù)空間中進(jìn)行隨機(jī)采樣。結(jié)果如圖4所示。
圖4 優(yōu)化搜索算法成本函數(shù)值迭代結(jié)果Fig.4 Results of cost function by optimization algorithms
橫軸為迭代輪次,縱軸為成本函數(shù)值。可以看出相比無(wú)優(yōu)化的隨機(jī)搜索,BO算法和GA算法更容易生成使被測(cè)系統(tǒng)發(fā)生緊急或危險(xiǎn)狀況的場(chǎng)景。且隨著迭代次數(shù)增加,成本函數(shù)會(huì)逐步集中于TTCmin≤3 s的范圍內(nèi)。但需要說(shuō)明的是,試驗(yàn)結(jié)果并沒(méi)有顯示出顯著的收斂性,這主要是由于本試驗(yàn)采用了硬件在環(huán)的測(cè)試方式,引入了部分仿真消息隨機(jī)延遲或丟失導(dǎo)致的不確定性;此外,由于被測(cè)決策規(guī)劃系統(tǒng)采用了動(dòng)態(tài)規(guī)劃加二次規(guī)劃的方案進(jìn)行軌跡和路徑規(guī)劃,每次求解的時(shí)間根據(jù)硬件狀態(tài)存在一定波動(dòng),使得系統(tǒng)在相同的參數(shù)輸入下輸出結(jié)果產(chǎn)生波動(dòng)。上述不確定性導(dǎo)致了算法無(wú)法穩(wěn)定的向特定值收斂,但總體而言,優(yōu)化算法相比隨機(jī)搜索,有效地提高了生成危險(xiǎn)場(chǎng)景的效率。未來(lái),可以通過(guò)多次測(cè)試取均值的方式,或引入概率統(tǒng)計(jì)方法,對(duì)不確定性進(jìn)行刻畫(huà)和表征,提高算法的適用性。表2、表3展示了BO、GA算法測(cè)試得到的部分關(guān)鍵場(chǎng)景參數(shù)結(jié)果。
表2 貝葉斯優(yōu)化算法生成的關(guān)鍵場(chǎng)景參數(shù)組合示例Tab.2 Examples of critical scenario parameter combinations generated by the Bayesian optimization algorithm
表3 遺傳算法生成的關(guān)鍵場(chǎng)景參數(shù)組合示例Tab.3 Examples of critical scenario parameter combinations generated by the genetic algorithm
基于本文所提出的關(guān)鍵場(chǎng)景優(yōu)化搜索生成方法,按照硬件在環(huán)仿真測(cè)試的試驗(yàn)方案,分別應(yīng)用貝葉斯優(yōu)化算法、遺傳算法和隨機(jī)搜索算法進(jìn)行了方法驗(yàn)證,并從方法的搜索效率和搜索質(zhì)量?jī)煞矫鎸?duì)算法效果進(jìn)行了比較。
在搜索效率方面,以預(yù)先設(shè)定的最大迭代次數(shù)400輪作為實(shí)驗(yàn)終止條件,并進(jìn)行多次測(cè)試取平均值。4次試驗(yàn)中,BO、GA和RS方法生成場(chǎng)景和測(cè)試所得不同成本函數(shù)的平均頻次分布如圖5所示。以關(guān)鍵場(chǎng)景對(duì)應(yīng)于成本函數(shù)值小于3 s的場(chǎng)景為例,三種算法搜索到的關(guān)鍵場(chǎng)景數(shù)量比值是GA:BO:RS=3.3:2.5:1.0。
對(duì)生成的場(chǎng)景及測(cè)試結(jié)果做進(jìn)一步分析。當(dāng)TTCmin≤0.2 s時(shí),即認(rèn)為自車與切入車發(fā)生了碰撞。在4次400輪迭代測(cè)試中,BO算法共生成了3次碰撞場(chǎng)景,GA算法生成6次碰撞場(chǎng)景,RS算法則沒(méi)有產(chǎn)生碰撞場(chǎng)景。以產(chǎn)生0.2 s<TTCmin≤1 s的關(guān)鍵危險(xiǎn)場(chǎng)景的平均間隔進(jìn)行比較,GA:BO:RS=1.0:5.1:17.3。結(jié)合圖5和表4、表5可以看出,GA在生成關(guān)鍵危險(xiǎn)場(chǎng)景上的效率要高于BO算法,同時(shí)二者均強(qiáng)于沒(méi)有優(yōu)化策略的RS算法。
表4 不同算法生成碰撞場(chǎng)景效率(TTCmin≤0.2 s)Tab.4 Collision scenario generation efficiency of different algorithms(TTCmin≤0.2 s)
表5 不同算法生成關(guān)鍵危險(xiǎn)場(chǎng)景效率(0.2 s<TTCmin≤1 s)Tab.5 Hazardous scenario generation efficiency of different algorithms(0.2s<TTCmin≤1 s)
圖5 場(chǎng)景測(cè)試不同成本函數(shù)值平均頻次分布Fig.5 Average frequency distribution of different cost function values of scenario testing
在搜索質(zhì)量方面,本文主要關(guān)注各算法產(chǎn)生的關(guān)鍵場(chǎng)景的參數(shù)分散程度。由于不同優(yōu)化方法采用的尋優(yōu)策略存在差異性,造成場(chǎng)景參數(shù)分散程度有較大差別。在4次400輪迭代測(cè)試中,選取BO和GA搜索結(jié)果中成本函數(shù)值最小的37個(gè)樣本,分析切入車速度、換道觸發(fā)距離、換道軌跡縱向距離、前車速度4組參數(shù)中任意2組參數(shù)的分散情況,如注:對(duì)貝葉斯優(yōu)化算法與遺傳算法各選取了37個(gè)成本函數(shù)值最小的樣本點(diǎn)進(jìn)行離散程度分析,圖中遺傳算法樣本點(diǎn)數(shù)遠(yuǎn)少于37個(gè),是由于其多個(gè)樣本點(diǎn)完全重疊造成。
圖6所示,可以直觀地看到,貝葉斯優(yōu)化算法生成的場(chǎng)景,參數(shù)較為分散,而遺傳算法的多個(gè)樣本出現(xiàn)了不同程度的重疊。進(jìn)一步以相鄰具體場(chǎng)景參數(shù)組合歐式距離求和來(lái)量化表征參數(shù)的分散程度。結(jié)果表明,在100輪、200輪、400輪實(shí)驗(yàn)中,貝葉斯優(yōu)化算法的該指標(biāo)分別是遺傳算法的28.7倍、62.2倍、31.4倍。即在搜索質(zhì)量方面,貝葉斯優(yōu)化算法優(yōu)于遺傳算法,前者搜索出的關(guān)鍵場(chǎng)景的多樣性更高。圖6中,對(duì)貝葉斯優(yōu)化算法與遺傳算法各選取了37個(gè)成本函數(shù)值最小的樣本點(diǎn)進(jìn)行離散程度分析,圖中遺傳算法樣本點(diǎn)數(shù)遠(yuǎn)少于37個(gè),是由于其多個(gè)樣本點(diǎn)完全重疊造成。
圖6 不同參數(shù)組合的參數(shù)分散情況Fig.6 Parameter dispersion of different parameter combinations
針對(duì)貝葉斯優(yōu)化算法和遺傳算法在搜索效率和搜索質(zhì)量方面的差異,本文分析認(rèn)為主要原因在于二者采用的搜索策略不同。由于貝葉斯優(yōu)化算法本質(zhì)上采用了基于代理模型和采集函數(shù)的優(yōu)化策略,遺傳算法采用了基于啟發(fā)式規(guī)則的優(yōu)化策略,前者相比于后者更傾向于全局優(yōu)化,因此在搜索質(zhì)量方面表現(xiàn)更好,而在搜索效率和搜索速度方面表現(xiàn)相對(duì)較差。在實(shí)際應(yīng)用中,應(yīng)根據(jù)需要選擇不同搜索算法,達(dá)到更好的場(chǎng)景生成和測(cè)試效果。
本文面向自動(dòng)駕駛決策規(guī)劃系統(tǒng)測(cè)試過(guò)程中的關(guān)鍵場(chǎng)景測(cè)試問(wèn)題,以仿真場(chǎng)景測(cè)試方法為基礎(chǔ),基于優(yōu)化思想,將關(guān)鍵場(chǎng)景生成問(wèn)題轉(zhuǎn)化為優(yōu)化搜索問(wèn)題,提出了一種關(guān)鍵場(chǎng)景自動(dòng)化生成方法。并以典型的前車切入場(chǎng)景為例,驗(yàn)證了本文所提方法的有效性,進(jìn)一步對(duì)比了不同優(yōu)化搜索算法的效果。
(1)基于優(yōu)化搜索進(jìn)行關(guān)鍵場(chǎng)景自動(dòng)化生成,能夠有效規(guī)避決策規(guī)劃系統(tǒng)測(cè)試過(guò)程中的場(chǎng)景數(shù)量爆炸問(wèn)題,提高發(fā)現(xiàn)高測(cè)試價(jià)值場(chǎng)景的效率,減少無(wú)意義測(cè)試場(chǎng)景的數(shù)量,從而提高測(cè)試效率。
(2)不同優(yōu)化算法在場(chǎng)景生成效果上存在差異,以本文400輪迭代次數(shù)為例,這種差異較為顯著。在搜索效率方面,遺傳算法的搜索效率最高,隨機(jī)搜索的效率最低。遺傳算法和貝葉斯優(yōu)化算法搜索到的關(guān)鍵場(chǎng)景數(shù)量是隨機(jī)搜索算法的3.3倍和2.5倍;產(chǎn)生關(guān)鍵危險(xiǎn)場(chǎng)景的平均間隔遺傳算法為9.25次每危險(xiǎn)場(chǎng)景,貝葉斯優(yōu)化算法為47.06次每危險(xiǎn)場(chǎng)景,隨機(jī)搜索則為160次每危險(xiǎn)場(chǎng)景。在搜索質(zhì)量方面,貝葉斯優(yōu)化算法優(yōu)于遺傳算法,以相鄰具體場(chǎng)景參數(shù)組合歐式距離之和表征的分散程度,前者是后者的31.4倍。
(3)由于貝葉斯優(yōu)化算法本質(zhì)上采用了基于代理模型和采集函數(shù)的優(yōu)化策略,遺傳算法采用了基于啟發(fā)式規(guī)則的優(yōu)化策略,前者相比于后者更傾向于全局優(yōu)化,因此在搜索質(zhì)量方面表現(xiàn)更好,而在搜索效率方面表現(xiàn)相對(duì)較差。
綜上,在實(shí)際應(yīng)用場(chǎng)景下,結(jié)合不同的測(cè)試需求,選用合適的搜索算法,可以有效提高場(chǎng)景測(cè)試效率,加速測(cè)試過(guò)程。基于本文提出的方法,在后續(xù)研究中將考慮組合不同的優(yōu)化算法以提高關(guān)鍵場(chǎng)景搜索效率和覆蓋率,同時(shí)進(jìn)一步提高算法的穩(wěn)定性,以及對(duì)決策規(guī)劃系統(tǒng)不確定性的適應(yīng)能力;考慮引入離散型參數(shù)并結(jié)合自然駕駛數(shù)據(jù)等分析參數(shù)分布,構(gòu)建更符合真實(shí)情況的多維復(fù)雜場(chǎng)景參數(shù)空間;構(gòu)建成本函數(shù)時(shí)將綜合考慮安全性、舒適性、魯棒性等多維度指標(biāo),以滿足不同功能和性能需求的關(guān)鍵場(chǎng)景測(cè)試。
作者貢獻(xiàn)說(shuō)明:
邢星宇:算法優(yōu)化,測(cè)試結(jié)果分析,論文撰寫(xiě)。
吳旭陽(yáng):算法調(diào)試與仿真測(cè)試,測(cè)試結(jié)果分析,論文修訂。
劉力豪:算法調(diào)試與仿真測(cè)試,論文修訂。
陳君毅:研究命題提出與構(gòu)思,仿真測(cè)試方案制定,論文修訂。
余卓平:論文修訂與審核。