朱 冰,孫宇航,趙 健,張培興,范天昕,宋東鑒
(吉林大學,汽車仿真與控制國家重點實驗室,長春 130022)
準確可靠的測試技術是自動駕駛汽車安全上路的重要保障[1],但海量測試里程、超長測試周期等因素導致傳統(tǒng)基于里程的測試手段不再適用于自動駕駛汽車,基于場景的測試方法成為當前的研究熱點[2]。
自然駕駛數據庫是測試場景的重要來源之一。最傳統(tǒng)的場景化測試方法是研究人員根據測試場景類型和定義,從自然駕駛數據庫中手動和主觀地提取感興趣的特定測試場景,對汽車進行測試[3]。然而,隨著自動駕駛汽車智能化等級的提高,相機、毫米波雷達、激光雷達、GPS、V2X等先進環(huán)境感知設備提供了豐富的交通場景信息,自然駕駛數據庫的數據長度和維度爆炸式增長,通過手工提取測試場景不僅費時費力[4],并且難以滿足測試場景的覆蓋性。
對自然駕駛數據庫中的場景序列進行抽象和聚類是測試場景提取的基礎。Li等[5]通過自編碼器和k-means聚類方法,將自然駕駛數據庫中的測試場景分成了4類。Lenard等[6]針對9 360例汽車與行人碰撞事故,應用系統(tǒng)聚類分析,挖掘出能夠代表86%事故案例的6類典型邏輯場景。但是,交通場景具有復雜性和不確定性,一段場景序列可能包含多種行駛特征,直接對自然駕駛場景序列進行聚類會降低聚類的典型性和準確性。因此,需要根據場景序列中主車、交通參與者等動態(tài)要素的運動特征對場景序列進行基元提取。
場景基元是自然駕駛場景序列中有限的、不重疊的、時間連續(xù)的子集,是場景序列的基礎組成部分,不同種類的場景基元反映了場景序列中要素之間的不同特性,例如:主車加速且前車減速、主車加速且前車勻速場景子序列分別代表兩種不同類型的場景基元。
通過規(guī)則判斷的方法可以對場景基元進行提取劃分[7-9]。Kilicarslan等[8]分析了車載相機傳感器中視頻流信息的運動發(fā)散特征,制定了復雜的判定規(guī)則,從而從圖像數據中識別判定安全、危險和碰撞3種場景。但是基于規(guī)則的方法不可避免會引入主觀規(guī)則和閾值設置,不僅對不同的自然駕駛數據庫不具有通用性,并且結果包含主觀誤差。Wang等[10]采用黏性層次狄利克雷過程-隱馬爾科夫模型(sticky hierarchical Dirichlet process hidden Markov model,Sticky HDP-HMM)自動提取跟車場景序列的場景基元,但是Sticky HDP-HMM模型中車輛的運動特征獨立性與場景基元持續(xù)時間具有耦合性,并且模型采用的多維高斯分布難以精確描述車輛運動狀態(tài)在時間維度的變化,導致場景基元的可解釋性和合理性相對較差。
針對上述問題,本文中提出基于解耦黏性-層次狄利克雷過程-隱馬爾科夫模型(disentangled sticky hierarchical Dirichlet process hidden Markov model,DS-HDP-HMM)的自然駕駛數據庫場景基元自動提取方法。以隱馬爾科夫模型(hidden Markov model,HMM)作為框架,將車輛的運動狀態(tài)視為隱馬爾科夫過程,并采用向量自回歸模型(vector autoregressive process,VAR)作為隱馬爾科夫模型的觀測概率分布函數,描述車輛運動狀態(tài)與隱馬爾科夫模型隱狀態(tài)之間的映射關系;將自然駕駛數據庫的多維場景時間序列作為隱馬爾科夫模型的觀測序列,作為模型的輸入;將隱馬爾科夫模型的隱狀態(tài)作為模型的輸出,不同的隱狀態(tài)類型代表不同類型的場景基元。為了實現隱馬爾科夫模型的求解,采用層次狄利克雷過程(hierarchical Dirichlet process,HDP)為隱馬爾科夫模型提供先驗分布和后驗更新方法,采用解耦過程和黏性過程抑制隱馬爾科夫模型隱狀態(tài)的頻繁切換。最后,采用HighD自然駕駛數據庫對算法進行驗證。
本文中提出的DS-HDP-HMM方法的架構如圖1所示,將車輛的運動狀態(tài)視為隱馬爾科夫過程。觀測序列Y={y1,y2,y3,…}為自然駕駛數據庫中的一段車輛運動狀態(tài)序列,其中yt∈R1×d,yt為t時刻的觀測向量,表示由前車相對距離、主車速度等組成的d維車輛狀態(tài)向量。模型輸出為隱狀態(tài)序列,Z={z1,z2,z3,…},zt為t時刻的隱狀態(tài),表示觀測向量對應的場景基元類型。求解HMM模型首先需要確定模型的初始狀態(tài)概率向量α、狀態(tài)轉移概率矩陣π和觀測概率分布函數的參數θ等模型參數。為了準確表征車輛的運動狀態(tài),采用VAR模型作為隱馬爾科夫模型的觀測概率分布函數。為了實現HMM模型的求解,本文中基于貝葉斯理論采用HDP賦予模型參數先驗分布和后驗更新方法,并加入解耦過程和黏性過程抑制隱狀態(tài)的頻繁切換,通過吉布斯(Gibbs)采樣方法對模型參數進行迭代更新,得到隱狀態(tài)序列Z,將隱狀態(tài)zt相同的觀測向量yt標記為相同類型的場景基元。自然駕駛數據庫中每一段場景序列都由一個或多個場景基元構成。
圖1 DS-HDP-HMM整體流程示意圖
隱馬爾可夫模型(HMM)描述通過馬爾可夫鏈生成不可觀測的狀態(tài)隨機序列,再由各個狀態(tài)生成觀測隨機序列的過程[11]。隱馬爾可夫模型由初始狀態(tài)概率向量、狀態(tài)轉移概率矩陣和觀測概率分布函數確定。
給定一個測試場景的車輛運動狀態(tài)序列Y=Y∈Rd×T,構建HMM模型,觀測概率分布函數 參 數 集 合 為隱狀態(tài)序列為Z=其中zt=k,表示在t時刻的隱狀態(tài)zt對應第k類觀測概率分布函數,其參數為θk。
定義初始狀態(tài)概率向量a為t=1時刻狀態(tài)z1=k的概率:
式中ak=P(z1=k),k=1,2,…,K。
定義狀態(tài)轉移概率矩陣中每個元素πzt-1,zt表示隱狀態(tài)在t-1時刻處于zt-1的條件下在t時刻轉移到zt的概率。則可以得到隱狀態(tài)zt-1下一時刻的狀態(tài)轉移概率向量:
定義觀測概率分布函數F(θzt)為向量自回歸模型,模型由兩個參數矩陣[ ]A,Σ確 定,即θzt=
因此,隱馬爾可夫模型可簡化描述為
自然駕駛數據庫場景復雜多變,難以窮盡。隱馬爾科夫模型的初始狀態(tài)概率向量α、狀態(tài)轉移概率矩陣π和觀測概率分布函數的參數θ難以確定。本文中引入層次狄利克雷過程(HDP)為HMM模型參數提供先驗分布和后驗更新方法。
狄利克雷過程(Dirichlet process,DP)是一種應用于非參數貝葉斯模型的隨機過程[12-13],表示為
式(4)的含義為:G服從由基分布H和集中參數γ組成的狄利克雷過程。其Stick-breaking構造表示為
式中δθ是θ點的概率測度。通常用β~GEM(γ)表示權重系數的構造關系。
HDP是對DP的層次性拓展。首先,以基分布H和集中參數γ構造DP模型,G0~DP(γ,H)。然后以G0為基分布,以α0為集中參數,對每一組數據構造狄利克雷混合模型,Gj~DP(α0,G0)。
HDP-HMM模型在特征提取、模式識別、狀態(tài)預測等方面[14-15]已經得到了廣泛的應用,但是當HDPHMM模型應用于自然駕駛數據庫場景基元提取時,很容易引起模型隱狀態(tài)的快速頻繁切換[13],導致提取的場景基元時序過短,難以應用。狀態(tài)轉移概率矩陣π的特性對隱狀態(tài)zt轉換有很大影響,從而影響場景基元序列的時序長度。文獻[16]中分析了狀態(tài)轉移概率矩陣π的3點特征:(1)狀態(tài)轉移概率矩陣每行值與基分布H的相似性;(2)狀態(tài)轉移概率矩陣對角線元素均值的大小;(3)狀態(tài)轉移概率矩陣對角線元素的相似性。
其中,HDP-HMM模型通過集中參數α0只能實現對特征1的控制,然而狀態(tài)轉移矩陣對角線元素反映了隱狀態(tài)自轉移的概率,模型無法對特征2和特征3的控制導致了隱狀態(tài)的快速頻繁切換。黏性HDP-HMM模型[17]是對其的改進,通過加入一個p參數,實現p∕(α0+p)參數控制特征2,(α0+p)參數同時控制特征1和特征3??紤]到在自然駕駛數據庫中,不同的場景基元的車輛運動特性具有較高的獨立性,特征1較大,而不同場景基元的持續(xù)時間不盡相同,特征3較小。為了實現特征1和特征3的解耦,本文采用了解耦黏性-層次狄利克雷-隱馬爾科夫模型(DS-HDP-HMM)進行場景基元的提取。相比于HDP-HMM模型,DS-HDP-HMM模型增加兩個超參數ρ1、ρ2,如圖2所示,在相鄰時間序列下,模型表示為
圖2 DS-HDP-HMM模型結構示意圖
式中:δzt-1為第zt-1個元素為1、其余元素為0的向量;超參數ρ1、ρ2為狀態(tài)自轉移概率κzt-1的控制端參數;超參數γ、a0為集中參數,反映了狀態(tài)轉移概率πzt-1與基分布的相似性;超參數λ為基分布H的參數,基分布H表示VAR模型的參數分布;參數β、κzt-1、wt為中間變量。
目前場景基元提取所用的觀測概率分布函數大多采用多維高斯分布[10],計算復雜度較低,但是難以精確描述車輛運動狀態(tài)變化,降低了場景基元提取的準確性。本文中引入向量自回歸模型(VAR)作為觀測概率分布函數。VAR模型認為當前時刻的觀測向量與過去時刻的觀測向量線性相關,VAR模型不僅適用于描述機動車輛的運動狀態(tài)變化[18],并且與隱馬爾科夫模型的假設有較好的一致性。VAR(r)模型可表示為
式中r為歷史時刻的步長數量??紤]到在離散時間下,汽車t時刻的相對位置xt可以近似表征為
式中:xt-1表示t-1時刻的相對位置觀測值;vt-1表示t-1時刻的相對速度觀測值;Δt表示離散步長;ε表示誤差值。式(8)與式(7)具有一致的表征形式,其它觀測維度也類似,所以VAR模型適用于描述車輛的運動狀態(tài)。
定義{t1,...,tNk}={t|zt=k},Nk表示屬于第k類場景基元的離散時刻數量。將式(7)寫成矩陣的形式:
式(9)可以簡寫為
從式(10)可以看出,A(k)和Σ(k)為VAR(r)模型的核心參數,反映了車輛的運動狀態(tài)。需要對參數{A(k),Σ(k)}進行先驗賦值和后驗更新,其共軛先驗分布為矩陣正態(tài)-逆威沙特(matrix-normal inverse-Wishart)分布[19]。在給定參數Σ(k)下參數A(k)∈Rd×m的矩陣正態(tài)分布先驗MN(A(k);M,Σ(k))為
式中:M為均值矩陣,M∈Rd×m;Σ(k)為按行計算的協方差矩陣,Σ(k)∈Rd×d;V-1為按列計算的協方差矩陣,V-1∈Rm×m。設置初始參數為:M=0,V=Im×m。
參數Σ(k)的逆威沙特分布先驗IW(S0,n0)為
式 中Γd(·)為 多 元 伽 馬 函 數(multivariate Gamma function)。設 置 初 始 參 數 為:n0=d+2,S0=
在給定參數Σ(k)下參數A(k)的后驗為
其中
參數Σ(k)的后驗為
其中
本節(jié)介紹DS-HDP-HMM模型關鍵參數的后驗更新規(guī)則,但是其規(guī)則具有高度的抽象性,學者們巧妙地采用中國餐館過程(Chinese restaurant franchise,CRF)[12-13]表征變量的含義及變量之間的關系。
CRF由多家餐廳構成,如圖3所示,每家餐廳包含多張桌子,所有餐廳公用相同的菜單,用符號j表示餐廳序號,符號q表示餐桌序號,符號k表示菜品序號。菜單象征觀測概率分布函數參數集合θ*,菜品序號k象征從觀測概率分布函數參數集合θ*中取第k個參數θk。餐廳j與菜品k組成的方陣象征狀態(tài)轉移概率矩陣,表示在t-1時刻處于狀態(tài)j在t時刻轉移到狀態(tài)k的概率。客人象征不同時刻的觀測值yt??腿讼朦c的菜品象征不同時刻觀測值yt對應的觀測概率分布函數的參數?t,定義每張桌子只有一道菜ψjq,一個餐館不同桌子菜品可以相同,所以一張桌子的多位客人?t對應一個ψjq,不同桌子的菜品ψjq可以對應一個θk。新增統(tǒng)計變量mjk表示第j個餐廳里所有享用第k道菜的餐桌數,njk表示第j個餐廳享用第k道菜的所有客人總數,njqk表示第j個餐廳第q張餐桌上享用第k道菜的人數,“.”表示全部。DSHDP-HMM模型的變量更新要遵循中國餐館過程。
圖3 CRF構造示意圖
首先,根據DS-HDP-HMM模型定義(即式(6))初始化CRF模型。然后,計算模型參數的后驗分布。
因為二項分布b(n,θ)的成功概率θ的共軛先驗分布為貝塔分布,所以κ的后驗概率滿足:
根據圖2所示的DS-HDP-HMM模型結構示意圖,nw為第k類場景基元對應的隱狀態(tài)中wt=1的數量。n.k為第k類場景基元對應的隱狀態(tài)數量。
β的后驗概率為
π的后驗概率為
q的后驗概率為
式中:Qj表示第j個餐館的桌子總數表示在第j個餐館第q張桌子除了第t位客人外的人數;q-jt表示除了第j個餐館第t位客人外的餐桌分配;k-jq表示除了第j個餐館第q張餐桌外的菜品分配。
m的后驗概率可以通過對餐桌q后驗概率的數學統(tǒng)計得出,即mjk為在j餐館中,統(tǒng)計菜品為菜單上第k道菜的餐桌的數量。m的后驗概率符合如下分布:
式中s(njk,m)為無符號斯特林數。
zt的后驗概率由兩部分組成,表示為
式中:z 表示除時間t以外所有狀態(tài);y 表示除時間t以外的所有觀測向量。
對于HDP-HMM,第1部分可具體表示為
式中:δ(z,k)表示克羅內克δ函數表示從狀態(tài)k到任意狀態(tài)的數目,其中不包括原來從zt到zt+1,其它變量含義類似。式(23)表示在t時刻的隱狀態(tài)概率分布,其中,第1式表示zt屬于當前模型已存在的隱狀態(tài)類型的概率,第2式表示zt屬于一個新的隱狀態(tài)類型的概率。當zt屬于當前模型已存在的隱狀態(tài)類型時,設zt-1=j,zt+1=l,第1式兩個中括號[]分別為由隱狀態(tài)j到隱狀態(tài)zt的概率g(j)和由隱狀態(tài)zt到狀態(tài)l的概率g(l)。
對于DS-HDP-HMM模型,考慮到式(6)定義的解耦黏性過程,從隱狀態(tài)j到隱狀態(tài)zt再到隱狀態(tài)l必須考慮到隱狀態(tài)自轉移概率κ,根據下一時刻隱狀態(tài)是否保持不變,此過程會產生5種情況:①jjl(l=j),表示隱狀態(tài)zt-1到隱狀態(tài)zt和隱狀態(tài)zt到隱狀態(tài)zt+1皆為狀態(tài)自轉移;②jjl,表示隱狀態(tài)zt-1到隱狀態(tài)zt為狀態(tài)自轉移,隱狀態(tài)zt到隱狀態(tài)zt+1遵循狀態(tài)轉移概率矩陣πzt;③jll,表示隱狀態(tài)zt-1到隱狀態(tài)zt遵循狀態(tài)轉移概率矩陣πzt-1,隱狀態(tài)zt到隱狀態(tài)zt+1為狀態(tài)自轉移;④jkl,k∈[1,…K],表示隱狀態(tài)zt-1到隱狀態(tài)zt遵循狀態(tài)轉移概率矩陣πzt-1,隱狀態(tài)zt到隱狀態(tài)zt+1遵循狀態(tài)轉移概率矩陣πzt;⑤jk?l,表示隱狀態(tài)zt為新的狀態(tài),zt=k?。此時式(23)可以改寫為
第2部分可具體表示為
式(25)的實質為1.4節(jié)正態(tài)-逆威沙特共軛先驗的似然函數。其中,I為單位矩陣。
DS-HDP-HMM采用Gibbs采樣算法,基于1.4節(jié)CRF模型初始化和參數后驗更新規(guī)則,經過多輪迭代模型收斂,模型更新流程如表1所示。
表1 基于Gibbs采樣的模型更新流程
DS-HDP-HMM模型的超參數先驗設置如表2所示。
表2 超參數設置
其中,?=ρ1∕(ρ1+ρ2),η=(ρ1+ρ2)13。
為了驗證本文提出的場景基元自動提取方法,選取隨機自然駕駛數據庫進行場景基元自動提取。
本文針對HighD數據集進行場景基元提取測試,HighD數據集提供了來自德國高速公路的自然車輛軌跡數據[20]。HighD數據集使用配備高分辨率攝像頭的無人機從空中測量每輛車的位置和運動,在6個不同的位置制作了60條記錄,路段的平均長度大約為420 m,每條記錄長約17 min(總計16.5 h),其中包含了11萬輛車,總行駛距離約4.5萬km,含有多種場景工況。
基于HighD高速公路數據集,本文將測試場景抽象成圖4所示工況。測試場景包括主車所在車道和主車左右兩側車道。主車在縱向自動駕駛算法的控制下在本車道進行加減速運動,只有縱向速度vx一維觀測量;每個車道只選取主車前方距離主車最近的至多1輛車,可以按照交通法規(guī)自由換道行駛。主車兩側車道的目標車分別有縱向速度vx、相對縱向距離Δdx和相對側向距離Δdy三維觀測量,與主車同車道的前面車輛有縱向速度vx、相對縱向距離Δdx二維觀測量。如果對應車道沒有車輛,則對應的觀測量置0。測試場景多維數據向量輸入到模型前,首先要對每一維數據進行[-1,1]標準化,避免不同維度數據范圍不同對試驗結果產生影響。
圖4 測試場景工況
為了確定模型收斂的迭代次數,本文從HighD數據庫隨機選擇5組測試場景序列作為模型輸入,計算其觀測向量的對數似然函數,結果如圖5所示??梢钥闯?,隨著迭代次數增加,5組隨機測試場景序列觀測向量的對數似然函數結果快速收斂。但是較少的迭代次數可能使輸出的場景基元持續(xù)時間過短,適當增加迭代次數可以使具有相似特征的場景基元自動合并,使場景基元序列的長度更長,物理含義更加明確。所以,綜合考慮計算效率與模型性能,本文最終選擇模型迭代次數為100。
圖5 5組隨機場景觀測向量對數似然
從HighD自然駕駛數據庫中隨機選取某段測試場景,采用DS-HDP-HMM模型提取場景基元。為了證明采用的模型效果,對比采用基于多維高斯分布作為觀測概率分布函數的Sticky HDP-HMM模型提取場景基元,其結果如圖6所示,上面9幅圖片是測試場景不同維度的觀測值輸入,下面兩幅圖片狀態(tài)序列的不同狀態(tài)值輸出代表了不同類型的場景基元。兩種模型在場景基元提取方面存在差異,相比于DS-HDP-HMM,Sticky HDP-HMM場景基元的時間長度更均勻,難以根據車輛的運動特性對場景基元進行不同時長的劃分,證明了1.2節(jié)中Sticky HDP-HMM模型特征1和特征3不能解耦對場景基元提取造成了影響。并且,由于Sticky HDP-HMM模型采用多維高斯分布作為觀測概率分布函數,不能很好地描述車輛的運動。例如在主車縱向速度維度,19.2~22.8和22.8~24.92 s(紅色點劃線部分)的測試場景分別代表主車加速和主車減速,物理意義上應該為兩種類型場景基元,但是在Sticky HDPHMM模型中被分成了隱狀態(tài)14代表的一種場景基元類型。因為多維高斯分布的邊緣分布為高斯分布,這兩段場景子序列在主車縱向速度維度均可以用相同參數的高斯分布表示,而高斯分布只能表示主車的速度范圍,不能表示速度隨時間的變化關系,從而對基元提取結果產生了影響。而本文提出的DS-HDP-HMM模型采用了VAR模型,認為當前時刻的觀測值與過去時刻的觀測值線性相關,表征了時間屬性對觀測值的影響,使場景基元提取結果更為精確。
圖6 隨機測試場景序列基元提取結果
對DS-HDP-HMM模型提取的場景基元的物理含義進行總結,如表3所示,表中的場景基元類別為模型輸出的隱狀態(tài)值。例如,結合圖6中的DSHDP-HMM狀態(tài)序列輸出,表中第2行的含義是:模型隱狀態(tài)為2對應的場景基元時間為0.72~4.36 s,左前車的運動狀態(tài)為減速未換道,與主車的相對距離近似不變,右前車的運動狀態(tài)為勻速未換道,與主車的相對距離逐漸減小,前車的運動狀態(tài)為加速,與主車的相對距離逐漸增大,主車加速。不同類別的場景基元根據主車和周圍車輛的運動狀態(tài)都具有不同的物理含義,具有較強的可解釋性。
表3 DS-HDP-HMM模型場景基元物理含義
綜上所述,本文中采用的基于VAR作為觀測概率分布函數的DS-HDP-HMM模型可以在Gibbs迭代過程中通過后驗更新自動優(yōu)化模型參數,從而實現從自然駕駛數據庫中非參數地、可解釋地、全自動地提取測試場景基元,與Sticky HDP-HMM相比,DS-HDP-HMM提取測試場景基元具有更好的解釋性和更高的合理性,具有優(yōu)良的性能。
本文中提出了一種基于自然駕駛數據庫的測試場景基元自動提取方法,其結合DS-HDP-HMM模型和VAR模型,將車輛運動狀態(tài)視為隱馬爾科夫過程,采用VAR模型精確擬合車輛運動狀態(tài),并加入DS-HDP過程為HMM模型參數提供先驗分布和后驗更新,最后通過Gibbs采樣方法求解HMM模型隱狀態(tài),進而實現測試場景基元的非參數、可解釋、全自動提取。從HighD自然駕駛數據庫中隨機選取一段場景序列進行測試驗證的結果表明,本文提出的模型可以自動提取自然駕駛數據庫場景序列中的場景基元,場景基元具有較強的可解釋性。與現有的Sticky HDP-HMM方法相比,本文提出的方法在提取測試場景基元方面具有更高的準確性和合理性。