劉志強,楊培培,倪 捷,馮新穎
(1.江蘇大學 汽車與交通工程學院,鎮江 212013;2.南京南車浦鎮城軌車輛有限責任公司,南京 210031)
公安部交通管理局數據顯示:2013年我國車輛和駕駛人數量保持快速增長,截至2013年底,全國機動車數量突破2.5億,機動車駕駛人數量近2.8億;全國有31個城市的汽車數量超過100萬,機動車構成比例發生改變,汽車成為構成主體,我國已快步進入汽車社會[1]。但在我國汽車經濟快速發展的同時,道路交通事故頻發,交通參與者的安全意識、規則意識、文明意識仍比較薄弱,還存在大量安全隱患。
道路交通系統是一個有人參與的復雜系統,人在其中的行為決定了相當一部分系統的性能[2]。所以,為預防和減少交通事故,必須對交通參與者尤其是駕駛人的行為進行規范和教育。近年來,基于虛擬現實技術的駕駛模擬器已經在很多國家的汽車研發、教育研究和駕駛訓練等領域得到了廣泛應用。其中,模擬駕駛訓練是現代培訓方式的一種。模擬器可以仿真危險場景,如車輛碰撞、酒后駕駛等。通過模擬器可綜合分析不利于行車安全的交通要素變化規律,建立相應的虛擬交通場景。利用駕駛模擬試驗平臺能對駕駛人進行有針對性的培訓,有效提高駕駛人技術水平并規范其駕駛行為。但目前的培訓大都是針對特定交通場景等客觀條件,并沒有考慮到駕駛人的主觀駕駛意圖。然而,相關統計表明:90%左右的道路交通事故發生的原因與駕駛人的操作失誤有關[2]。若能將駕駛意圖識別與模擬駕駛培訓結合起來,在進行模擬駕駛訓練時實時識別出駕駛人的駕駛意圖并判斷其是否危險,做到及時提醒,則會加深駕駛人對危險駕駛狀態的認識和理解,提高模擬駕駛訓練的效果。
國內外研究機構和學者也對駕駛意圖識別做了大量研究工作。文獻[3]提出了一個基于概念模糊集合理論(conceptual fuzz set,CFS)的駕駛意圖識別模型,用于識別左轉、右轉及直行3個駕駛意圖。W.Takano等基于隱馬爾可夫理論(hidden markov model)提出了一種用于駕駛員轉向駕駛意圖辨識的智能識別方法,該方法包含數據分段、數據標號、意圖辨識以及產生駕駛行為模式等部分[4]。X.Zou等應用HMM建立了駕駛員在十字交叉路口的操作行為模型,把汽車的運動數據作為可見觀察序列,預測車輛在十字路口的運動[5]。總體來說,目前大部分研究只針對單一的駕駛意圖,很少綜合考慮制動、變速、換道等復合駕駛意圖,也很少將駕駛意圖識別應用于模擬駕駛訓練。
本文提出了一種面向高速公路場景駕駛人操作行為訓練的駕駛意圖識別方案。針對高速公路場景中幾種常見的駕駛意圖,分別建立了對應的隱Markov模型;實時采集駕駛模擬器相關操作數據作為觀察序列;對在進行模擬駕駛訓練的駕駛人意圖進行識別;將識別到的危險駕駛意圖及時反饋給駕駛人,以加深駕駛人對危險駕駛意圖和駕駛行為的認識和理解。在駕駛模擬器上的實驗證明:該復合隱Markov模型能對幾種常見的駕駛意圖進行準確識別,并具有一定的自適應學習能力。
駕駛意圖是一種思維活動,難以直接獲取,只能依靠駕駛操作行為、姿態和車輛自身狀態、車外環境等信息進行間接推測和估計。而一旦識別出駕駛人的駕駛意圖,便可結合當前的車輛狀態和交通環境,判斷當前駕駛行為和駕駛狀態的安全性。反映駕駛意圖的復雜駕駛操作行為能被分割為由多個簡單的短時操作行為片段組成的序列,并且這些片段操作行為是依特定的時間次序先后發生的。把這些順序發生的片段的駕駛操作行為鏈接起來就實現了特定的駕駛人駕駛意圖[6]。
基于貝葉斯理論的隱Markov模型(hidden markov models,HMM)能針對時間矢量序列進行統計決策,近幾年被廣泛應用于駕駛人意圖識別[7]。HMM是一種特殊的貝葉斯網絡,它具有雙重隨機特性,包含了一個Markov鏈和一般隨機過程。其中,Markov鏈表示的狀態序列是不可見的,是模型內部的隱狀態序列;而隱狀態序列通過一般隨機過程產生了可見序列,這樣的二層結構就形成了HMM。基于Baum-Welch算法,利用各類的可見序列樣本進行學習,產生代表每類的HMM參考模型,再基于統計判別理論,運用基于遞歸思想的Baum-Eagon算法、Viterbi算法等,對于可見序列、隱狀態估計和模型參數估計,可對待識別的可見序列進行分類識別[8]。
基于HMM統計決策基礎,適用于處理時間序列的特性,模塊化建模思想以及模式識別的功能[9-16],本文構建了一種復合的隱 Markov 模型(complex hidden markov model,CHMM)。該復合模型包含頂層和底層2個子模型層,分別用來識別駕駛人的駕駛意圖和相應駕駛意圖下的短時段內的駕駛操作行為。該CHMM結構框圖如圖1所示。

圖1 復合隱Markov模型結構框圖
圖1中,底層即駕駛操作行為層為隱Markov模型,包含3個HMM模型庫,分別對應駕駛人對加速、制動踏板的操作,對轉向盤的操作和汽車轉向燈信號。對于庫中的每個HMM,Markov鏈用來描述短時駕駛操作行為的狀態轉移,它的狀態序列是不可見的。一般隨機過程則是描述操作行為與車輛相關部件動作實時數據和信號的關系,用短時操作行為的狀態對可見狀態的產生概率進行描述,即觀察到的車輛動作數據與短時駕駛操作行為通過一組概率分布相聯系。
頂層即駕駛意圖層為隱Markov模型,包含6個HMM,分別對應高速公路駕駛環境中6種不同的駕駛意圖,也構成一個模型庫。在這些HMM中,Markov鏈用來描述駕駛意圖的狀態轉移;一般隨機過程則是描述駕駛意圖與短時段駕駛操作行為間的關系;用駕駛意圖狀態對駕駛操作行為狀態的產生概率進行描述。在頂層HMM中,作為觀察值的短時駕駛操作行為序列是底層HMM的識別結果。即在CHMM中,底層HMM的識別結果將作為頂層HMM的可見狀態序列。
把數據處理后的加速、制動踏板和轉向盤數據以及轉向燈信號作為觀察序列,在不同短時駕駛操作行為下,分別訓練4個單涉及加速和制動的HMM模型和3個單涉及轉向的HMM模型。在對一定駕駛時間內的觀察序列進行分段、數據預處理后,輸入到上述訓練好的HMM模型庫里,逐段識別,計算出各模型對該段觀察序列的產生概率,基于最大似然法得到對應上述駕駛時間內觀察序列的制動與加速操作、轉向盤操作和轉向燈信號處理3組駕駛操作行為的識別結果。
根據駕駛人在高速公路駕駛環境的駕駛規律,在不同駕駛意圖情形下,把CHMM底層(駕駛操作行為層)HMM的這3組識別結果作為頂層(駕駛意圖層)HMM的觀察序列,分別離線訓練高速環境下對應正常從左側超車、正常駛離高速公路、非正常從右側超車A(開啟轉向燈情況)、非正常從右側超車B(不開啟轉向燈情況)、非正常從左側超車和加速跟車行駛6個HMM模型。這樣就形成了復合的隱Markov模型結構,用于識別高速公路駕駛場景下的駕駛人駕駛意圖,進而判斷當前駕駛狀態危險與否,是培養和提高駕駛人安全意識的訓練方案的前提和核心。
正常駕駛時,制動踏板和加速踏板的操作行為相互獨立,并按時間順序先后進行。采集駕駛人對2個踏板的操作數據,構建踩加速踏板、松加速踏板、保持加速踏板位置、踩制動踏板共4個單一涉及制動與加速操作行為的HMM,用于識別駕駛人的制動與加速操作行為。對于制動與加速操作模型庫中每個HMM,可見序列都可用下列向量來描述[8]:

其中x1(t)和x2(t)分別為加速踏板行程和制動踏板行程。
采集方向盤轉角和方向盤角速度的數據構建左轉方向盤向左變道、右轉方向盤向右變道、直線行駛3種情況下的轉向操作行為的HMM,每個HMM的觀察序列也可用向量形式描述:

其中:y1(t)為方向盤轉角;y2(t)方向盤角速度。
在Matlab軟件中導入HMM工具包,并利用該工具包中的Baum-Welch算法,通過遞歸方式對模型庫中每個HMM的更新參數進行估計,得到駕駛人對兩踏板和轉向盤的單一操作行為HMM的模型參數。
對于這些單一駕駛操作行為的HMM,Baum-Welch算法中的前向和后向遞歸式如下:

其中:αj(t)為前向變量,表示系統在時刻t處于隱狀態uj,同時產生可見狀態序列v前t個可見狀態的概率;βi(t)為后向變量,表示系統在時刻t位于隱狀態ui,并產生了時刻t之后(不包括t時刻)可見狀態序列v的概率;m為隱狀態的個數;aij為隱狀態vi轉移到uj的轉移概率;bjk為隱狀態uj產生可見狀態vk的概率。
模型參數都優化完成后的7個僅涉及單一駕駛操作的HMM便構成了駕駛操作行為層的HMM模型庫。基于最大似然估計思想,應用前向算法(Baum-Eagon算法),針對實時采集的駕駛操作相關數據序列,分別計算模型庫每個HMM產生這些可見序列的概率,選擇產生概率最大的那個模型,即似然度最大的HMM作為識別結果。
同時,采集轉向燈信號,分左右側,按開啟和關閉標注實時狀態,構成一段時間序列,作為轉向燈操作識別結果。這樣,便得到了駕駛行為層的識別結果,即一定時間內,駕駛人對制動與加速踏板、轉向盤和轉向燈的操作行為序列,也用向量形式表示:

其中:u1(t)為制動與加速操作行為識別結果;u2(t)為轉向盤操作行為識別結果;u3(t)為轉向燈信號操作識別結果。
通常在特定駕駛環境中,實現駕駛意圖的駕駛行為呈現一定的規律性。例如,高速公路上正常從左側超車的駕駛意圖,有以下駕駛操作行為序列:先開啟左轉向燈,然后左轉方向盤,踩油門踏板加速行駛,在左側車道完成超車后,再開啟右轉向燈,再右轉方向盤回到原車道,松油門踏板,再關閉轉向燈。高速公路駕駛環境下的幾種常見駕駛意圖和對應的駕駛行為序列如表1所示。

表1 高速公路環境中幾種常見駕駛意圖及其對應駕駛操作行為序列
對高速公路場景下不同的駕駛意圖,把前面得到的駕駛操作行為層HMM的識別結果u(t)(制動與加速、轉向盤和轉向燈操作行為操作序列),作為駕駛意圖層HMM的觀察序列,分別訓練相應的HMM。
由于底層將操作行為分割為短時操作行為片段,使得駕駛意圖層HMM為離散模型。對于頂層HMM,前向變量αi(i)和后向變量βi(i)的迭代公式可修改為:

同時,在Baum-Welch遞歸算法中,狀態轉移矩陣的重估公式和初始概率無需修改,只將可見序列概率矩陣的計算公式修改為

這樣,駕駛意圖層中的HMM可由式(9)表示。

式(9)中:P為駕駛意圖層中相應HMM的初始概率;A2為相應HMM的狀態轉移矩陣;B1為制動與加速操作可見序列概率矩陣;B2為方向盤操作可見序列概率矩陣;B3為轉向燈操作可見序列概率矩陣。在高速公路駕駛場景下對應正常從左側超車、正常駛離高速公路、非正常從右側超車A(開啟轉向燈情況)、非正常從右側超車B(不開啟轉向燈情況)、非正常從左側超車和加速跟車行駛6種情況的模型參數,可通過上述Baum-Welch算法遞歸迭代優化分別得到。
綜上,復合隱Markov模型(CHMM)的訓練過程如圖2所示。

圖2 復合隱Markov模型的訓練過程
借助江蘇大學汽車工程研究院實驗室的動感型汽車駕駛模擬器(QJ-4B1型6自由度交通工程模擬試驗機),模擬我國標準雙向6車道高速公路場景,如圖3所示。
選取7名駕駛員在模擬器上以初始速度分別為80、90和100 km/h的車速做正常從左側超車、正常駛離高速公路、非正常從右側超車A(開啟轉向燈情況)、非正常從右側超車B(不開啟轉向燈情況)、非正常從左側超車、加速跟車行駛6個駕駛場景的模擬駕駛試驗,每個場景每人重復做10次試驗。在每名駕駛員的試驗數據中隨機選擇7組作為復合隱Markov模型的訓練樣本,余下的3組作為待識別檢驗樣本。

圖3 江蘇大學QJ-4B1動感型汽車駕駛模擬器試驗平臺及試驗場景
對于每組采集到的數據,分別截取6種駕駛意圖場景下的數據并對其進行分段;然后,對這些段時片段內的駕駛操作數據進行濾波;再用t-檢驗法剔除異常的操作數據[17],即計算每個短時片段內的駕駛操作數據相對于該段數據的統計量Tm。當Tm大于臨界值Tp時,則認為該操作數據為異常并將其剔除。Tm和Tp的計算公式分別為:

式(10)和(11)中:xm為數據片段中的一個樣本值;ˉx為該數據片段中不含xm的所有數據樣本的平均值;s為不含xm的所有數據樣本的標準差;n為數據片段中的樣本個數;tp(n-2)為自由度為n-2的t分布的p分位數,可通過查表獲得。
復合隱Markov模型(CHMM)的底層和頂層HMM的所有參數訓練完成后,將得到的參數導入Matlab軟件,對剩下的3組試驗數據進行識別驗證。即對采集到的制動、加速踏板和轉向盤、轉向燈的操作數據序列,應用前向算法(Baum-Eagon算法),分別計算底層和頂層模型庫中的每個HMM產生該可見序列的概率值,再選擇似然度最大的作為識別結果。其中,底層的識別結果為頂層的待識別序列,而頂層的識別結果即為當前的駕駛意圖。
經過實驗對比,在底層HMM訓練和識別中,按0.5 s為時間片段單位來分割駕駛操作數據,得到的識別率相對較高。以正常從左側超車駕駛情形為例,圖4為采集并進行預處理后的駕駛操作數據,駕駛行為層HMM和駕駛意圖層HMM的識別結果如圖5所示。

圖4 預處理后的駕駛操作數據

圖5 復合隱Markov模型的識別結果
1)底層HMM的識別結果為短時間片段內駕駛人對車輛的操作行為;頂層HMM的識別結果為一段時間內的駕駛意圖。在駕駛人完成駕駛意圖對應操作的同時,復合隱Markov模型識別出駕駛意圖類型,根據識別結果可判斷在當前駕駛環境下該駕駛狀態是否危險,并應用于模擬駕駛訓練,實時提示危險駕駛狀態。
2)當識別結果為加速跟車行駛時,可結合安全車距模型,通過車距來實時判斷當前駕駛狀態的安全性,這樣可以訓練并增強駕駛人保持安全車距的意識。
3)復合隱Markov模型可擴展到其他駕駛環境,在考慮新駕駛環境中的駕駛意圖時,如需要采集另外的數據,只需在底層中增加相應的HMM模塊,而無需重新訓練整個模型,從而節省工作量。
4)在進一步的研究中,可以考慮與其他算法相結合并進行改進,縮短識別時間,實現對后續駕駛操作行為的預測,并將模型應用于車載預警系統的研究開發中。
[1]公安部交通管理局.2013年道路交通安全形勢總體平穩[EB/OL].[2014 -01 -28].http://www.mps.gov.cn/n16/n1252/n1837/n2557/3986343.html.
[2]王武宏,孫逢春.道路交通系統中駕駛行為理論與方法[M].北京:科學出版社,2001.
[3]Ohashi K,YAMAGUCHI T,Tamai I.Humane automotive system using driver intention recognition[C]//SICE annual conference.USA:[s.n.],2004:1164 -1167.
[4]Takano W,Matsushita A,Iwao K,et al.Recognition of human driving behaviors based on stochastic symbolization of time series signal[C]//Intelligent Robots and Systems.USA:[s.n.],2008:167 -172.
[5]Zou X,Levinson D M.Modeling Pipeline Driving Behaviors:Hidden Markov Model Approach[J].Transportation Research Record:Journal of the Transportation Research Board,2006,1980(1):16 -23.
[6]宗長富,王暢,何磊,等.基于雙層隱式馬爾科夫模型的駕駛意圖辨識[J].汽車工程,2011(8):701-706.
[7]Berndt H,Emmert J,Dietmayer K.Continuous driver intention recognition with hidden markov models[C]//Intelligent Transportation Systems.USA: [s.n.],2008:1189-1194.
[8]孫即祥.現代模式識別[M].2版.北京:高等教育出版社,2002.
[9]史笑興,王太君.二階隱馬爾可夫模型的學習算法及其與一階隱馬爾可夫模型的關系[J].應用科學學報,2001,19(1):29 -32.
[10]李榮,胡志軍,鄭家恒.基于遺傳算法和隱馬爾可夫模型的Web信息抽取的改進[J].計算機科學,2012,39(3):196-199.
[11]朱旭東,劉志鏡.基于主題隱馬爾科夫模型的人體異常行為識別[J].計算機科學,2012(3):251 -255,275.
[12]余龍華,王宏,鐘洪聲.基于隱馬爾科夫模型的人臉識別[J].計算機技術與發展,2012(2):25-28.
[13]黃靜,孔令富,李海濤.基于傅里葉-隱馬爾科夫模型的人體行為識別[J].計算機仿真,2011(7):245-248.
[14]何邵燦,高宏力,許明恒.基于隱馬爾科夫模型的機床部件故障預警技術[J].機械設計與制造,2012(8):159-161.
[15]刁進軍,曾靜,趙海龍.基于馬爾科夫鏈的導彈部隊生存狀態分析[J].四川兵工學報,2011(7):141-142.
[16]謝鋒云.基于隱馬爾科夫模型的機床軸承熱誤差狀態表征[J].機床與液壓,2012(17):31-34.
[17]劉國偉,尹洪宗,何錫文.不確定度評定中離群值的檢驗及計算機編程[J].冶金分析,2004,24(4):1 -1.