朱 冰,李偉男,汪 震,趙 健,何 睿,韓嘉懿
(1.吉林大學,汽車仿真與控制國家重點實驗室,長春 130022; 2.吉林大學,工程仿生教育部重點實驗室,長春 130022)
駕駛人駕駛習性(driving style),是指駕駛人相對穩定的和習慣性的內在駕駛行為傾向,它是個體駕駛人心理思維和行為模式的綜合表征,不同駕駛人之間駕駛習性差異明顯,典型的駕駛習性包括激進型、一般型和保守型等[1-2]。深入理解駕駛人駕駛習性及其表征方法,建立高精度駕駛人駕駛習性辨識模型,對于實現在汽車自動駕駛、輔助駕駛和主動安全等不同控制系統下的人機和諧交互具有重要意義。
早在20世紀70年代,國外學者即開始關注駕駛人駕駛習性的研究。WAHAB A等學者認為,由于駕駛人潛意識工作方式的差異,每個駕駛人從潛意識到有意識的思維轉換是獨一無二的,因此每個駕駛人自然地具有不同的駕駛習性[3]。LU J等人引入模糊控制理論對駕駛人駕駛習性進行了初步的分類[4]。
國內對于駕駛人駕駛習性的研究起步較晚,但經過十余年的積累也有了一定的成果。清華大學王建強教授通過駕駛人釋放加速踏板和開始制動時刻的碰撞時間TTC(time to collision)數據聚類分析,將駕駛人分為謹慎型、正常型和侵略型3類[5]。長安大學毛錦根據真實車輛道路駕駛數據,使用多因素模糊數學分類法,基于跟車時距、最小跟車時距、換道時距、超速頻次和換道過程轉向盤最大轉角與車速的擬合結果等5個參數,將駕駛習性分為冒進型、比較冒進型、比較謹慎型和謹慎型4類[6]。
這些相關研究在駕駛習性表征與辨識等方面已經有所進展,然而,復雜多變的駕駛習性因人與工況而異。傳統研究中往往對駕駛習性進行單純的主觀標定,訓練樣本標簽以及辨識結果的準確性難以保證;此外,駕駛數據變量復雜多樣,需要基于重要性對其進行有效篩選,從而在保障辨識精度的前提下簡化模型結構。
為深入研究駕駛人駕駛習性的有效表征方法及辨識策略,本文中搭建駕駛人駕駛習性實車數據采集平臺,采集駕駛人在典型跟車工況下的駕駛數據;應用凝聚層次聚類方法對駕駛人駕駛習性進行標定;采用隨機森林算法對駕駛數據各個變量的重要性進行分析,選取對模型辨識精度貢獻起主導作用的變量進行隨機森林模型訓練;最后,采用留一法對測試駕駛人進行駕駛習性辨識測試,驗證辨識模型的辨識效果。
為了實時采集駕駛人在實際駕駛狀態下的駕駛數據,搭建了實車數據采集平臺,如圖1所示。采集平臺由一輛主車和一輛交通車組成,兩車內分別布置有相應的儀器設備用于自車、車-車之間運動狀態和運動姿態等駕駛習性相關數據的實時采集。

圖1 實車數據采集平臺
實車數據采集平臺原理如圖2所示。通過主車CAN總線實時采集制動主缸壓力、加速踏板行程和轉向盤轉角等駕駛人操控信息;通過Oxford Technical Solutions公司的RT3002組合導航系統精確測量本車的車速、加速度等狀態信息;通過RT-Range實現兩個車輛之間的相對距離、相對車速等相對狀態信息的精確測量。采集得到的駕駛數據通過CAN總線傳輸到dSpace MicroAutoBox進行時間同步,進而通過以太網電纜傳輸至工控機進行存儲。

圖2 實車數據采集平臺原理
駕駛人駕駛習性數據采集工況應該能夠在最大程度上激勵出不同駕駛人的差異化駕駛習性,經過多組試驗對比,發現當前車車速變化時間歷程表現為“加-減-加”時,后車駕駛人的駕駛數據差異最為明顯。
最終選取單車道直線結構化瀝青道路進行測試。測試時,前車車速變化曲線如圖3所示。前車按照0-70-40-70km/h的速度行駛,期間依次歷經加速、勻速、減速、勻速、加速和勻速等不同的行駛狀況,以盡可能激勵后車駕駛人駕駛習性。后車首先按照被測駕駛人習慣運動至與前車相距一定距離的位置,隨后被測駕駛人按照自己習慣的駕駛方式進行跟車駕駛。

圖3 目標車速度時間歷程曲線
試驗通過社會招募方式,共招募了34名駕駛人進行駕駛習性數據采集試驗,其基本信息如表1所示。其中,男性駕駛人28人,女性駕駛人6人;駕駛人年齡范圍為22-50周歲,平均年齡為34.5周歲;駕齡范圍為1-17年,平均駕齡為4.7年。

表1 被測駕駛人基本信息
駕駛人駕駛習性具有很強的不確定性,本文中采用層次聚類方法對駕駛人駕駛數據進行分析,以期將駕駛習性相近的被測駕駛人凝聚為關系緊密的簇[7-8],并利用簇的關系實現駕駛習性的準確表征。
選取與縱向跟車行為密切相關的制動主缸壓力最大值X1、加速踏板位置最大值X2、縱向加速度最大值X3、相對距離平均值X4、相對速度平均值X5、相對速度最大值X6和車頭時距平均值X7等7組參數進行分析。其中車頭時距表示前后兩輛車的前端通過同一地點的時間差,可通過兩車相對距離除以后車速度計算得到。
得到的原始駕駛數據樣本集T為

式中:p=34,q=7。
為便于聚類分析,首先對駕駛習性數據進行歸一化處理,歸一化后的樣本集為
Y=(yij)p×q

式中:i=1,2,…,34;j=1,2,…,7;xjmin和xjmax分別為第j列駕駛數據的最大值和最小值。
采用基于離差平方法的凝聚層次聚類方法對同類駕駛習性原子簇進行合并,即具有相似特征的駕駛習性數據樣本之間的離差平方和應較小,而駕駛習性特征差別較大的樣本之間的離差平方和應較大。
假定在凝聚層次聚類過程中,將p個駕駛習性數據樣本分成k個類別G1,G2,…,Gk,用 Yti(1≤t≤k)表示類別Gt中的第i個駕駛習性數據樣本向量,nt表示類別Gt中數據樣本的個數,表示類別Gt中數據樣本的向量均值,則類別Gt中數據樣本的離差平方和St的計算公式為

對p個駕駛習性數據樣本進行凝聚層次聚類遍歷求解,選擇使離差平方和增加最小的兩類(即駕駛習性最為相似的兩類)進行合并,直到所有的樣本歸為一類,聚類過程如圖4所示。駕駛習性相近的被測駕駛人不斷被凝聚到同一個簇中,每個簇對應不同風格的駕駛習性。
對應圖4中3個最大的簇,將駕駛習性數據樣本最終凝集聚類為3組,結合3個簇內部駕駛數據的共性特征,層次聚類結果如表2所示。

表2 層次聚類結果

圖4 駕駛習性數據樣本層次聚類過程
分別繪制3類不同駕駛習性駕駛人相對車速-相對距離統計分布如圖5所示。
可見,保守型駕駛人由于駕駛行為較為謹慎,跟車過程中相對距離較大,相對距離在20m以上的占比達96%,同時,保守型駕駛人的相對速度大部分為正值(即本車速度小于前車速度),占比達64%。
激進型駕駛人則跟車距離較近,相對速度多為負值,占比達71%;一般型駕駛人的駕駛數據位于二者之間。
在對駕駛人駕駛習性進行準確表征的基礎上,引入隨機森林算法構建駕駛人駕駛習性辨識模型。隨機森林模型(random forest model)是利用多棵決策樹對樣本進行訓練并預測的一種分類器,其對異常值和噪聲有很強的容忍度,并可以在分析數據的同時給出各個變量重要性的評分(variable importance measure, VIM)[9-10]。
采用Gini指數分析各駕駛習性數據變量對駕駛人駕駛習性辨識精度的影響。對于駕駛數據樣本集T,其Gini指數定義為


圖5 不同駕駛習性駕駛人相對車速-相對距離統計分布
式中:N為駕駛習性類別,取N=3,分別代表保守型、一般型和激進型駕駛習性;Cn表示樣本集T中屬于第n類駕駛習性的樣本子集。
如果依照某一駕駛數據變量Xj(1≤j≤7)將駕駛數據樣本集 T 分為b個部分,即 T1,T2,…,Tb。那么在屬性變量Xj的條件下,集合T的Gini指數定義為

駕駛數據變量Xj在隨機森林模型中任一節點m處的重要性可以用節點m分枝前后Gini指數變化量來表示:

式中:GIm,GIm1和GIm2分別為節點m分裂前和分裂成2個新節點的Gini指數。
如果駕駛數據變量Xj在隨機森林模型中的第e棵樹中出現過M次,則變量Xj在第e棵樹中的重要性為

因此,駕駛數據變量Xj在整個隨機森林模型中的重要性可以表示為

式中z為隨機森林模型中決策樹的棵數,即分類器的數量。
計算、繪制駕駛人駕駛習性數據集中各個變量參數的Gini重要性散點圖,如圖6所示。

圖6 Gini重要性散點圖
可見,在縱向跟車工況下,不同的駕駛習性數據變量對于隨機森林模型辨識精度的重要性會有所差別,各個變量參數對駕駛人駕駛習性辨識模型辨識精度的重要性依次為:加速踏板位置最大值X2>車頭時距平均值X7>相對距離平均值X4>相對速度最大值X6>縱向加速度最大值X3>主缸壓力最大值X1>相對速度平均值X5。
其中,加速踏板位置最大值X2、車頭時距平均值X7和相對距離平均值X43個變量對模型辨識精度的影響相對其它幾個變量要更加明顯,說明這3組參數更能體現駕駛人在跟車過程中的駕駛習性。
在盡可能不影響辨識精度的前提下,選用更少的變量訓練隨機森林模型可以有效降低模型的復雜度,縮短運算時間。因此,基于變量重要性分析,選取加速踏板位置最大值、車頭時距平均值和相對距離平均值3個變量建立隨機森林模型,其訓練原理如圖7所示[11]。

圖7 隨機森林模型訓練原理
隨機森林模型具體實現流程如下。
步驟1:在p個駕駛習性數據樣本中,有放回地隨機選擇p個樣本(即允許其中存在重復的樣本)形成1個自動樣本集,利用這個樣本集訓練1棵決策樹。
步驟2:在決策樹的每個節點需要分裂時,隨機從加速踏板位置最大值、車頭時距平均值和相對距離平均值3個屬性變量中選取出r個屬性(r<3),針對選出的每一個屬性遍歷所有可能的分裂方法,并分別求取其Gini指數,最終選擇具有最小Gini指數的屬性作為該節點分裂屬性。按此方法確定決策樹的每個節點,直到不能夠再分裂為止。
步驟3:重復步驟1和步驟2,得到z棵決策樹,構成用于駕駛習性辨識的隨機森林模型。
這里,步驟1中有放回地隨機選取樣本以及步驟2中隨機選取r個屬性會使得決策樹的相關性顯著降低。這兩個過程中的隨機性和不確定性,可以使隨機森林模型不會隨著分類樹數目的增加而產生過度擬合的問題。
利用訓練得到的隨機森林模型可以進行駕駛人駕駛習性辨識。辨識時,模型中每一棵決策樹對輸入的駕駛數據進行投票,計算各類駕駛習性(保守型、一般型和激進型)獲得的投票數,最終得票數最高的即為所輸入的駕駛數據對應的駕駛人駕駛習性。
采用留一法(leave-one-out)對提出的駕駛人駕駛習性辨識模型進行測試驗證分析,即逐一將34個駕駛習性數據樣本劃分為兩個子集,第一個子集包含33個樣本用來訓練辨識模型,另一個子集包含1個樣本用來測試驗證,如此,從001到034號被測駕駛人的駕駛數據都可以得到有效的辨識測試,測試驗證原理如圖8所示。

圖8 留一法測試驗證原理
取300棵決策樹建立隨機森林模型進行測試,測試結果如表3所示。針對保守型、一般型和激進型駕駛習性所建立的隨機森林模型辨識的正確率分別為100%,100%和87.5%;隨機森林模型整體精準度達到97.1%。可見,所建立的基于變量重要性的隨機森林模型可以有效辨識駕駛人駕駛習性。

表3 測試結果
為進一步分析隨機森林模型辨識性能,分別采用基于Gini重要性分析獲取的3個特征變量以及全部的7個特征變量訓練隨機森林模型,并從5棵開始逐漸增加隨機森林模型中決策樹的數目進行測試,得到模型整體精準度隨決策樹數量變化的結果,如圖9所示。
可見,當隨機森林模型中決策樹的數目較少時,模型整體精準度會隨著決策樹棵數的增加而提升。但當決策樹超過300棵后,模型整體精準度不但不會繼續提升,還會使模型過于復雜、增加計算量。此外,當隨機森林模型中決策樹的數目較少時,采用7個特征變量訓練的駕駛習性辨識模型的整體精準度會略高,但當決策樹超過200棵后,兩種模型的精度幾乎一致,采用基于變量重要性的隨機森林模型會更加簡單易行。
本文中提出了一種基于隨機森林模型的駕駛人駕駛習性辨識策略。首先,搭建了實車數據采集平臺,并設計了能最大程度激勵出不同駕駛人差異化駕駛習性的試驗工況,采集了駕駛人跟車過程中的典型駕駛數據。然后,采用層次聚類方法,將駕駛習性相近的被測駕駛人駕駛數據凝聚為關系緊密的3個簇,對應3種類型:保守型、一般型和激進型。在此基礎上,引入隨機森林模型理論,基于Gini指數對各屬性變量重要性進行了分析,建立了基于變量重要性的隨機森林模型。最后,采用留一法對辨識模型進行了測試驗證分析。結果表明,本文中建立的辨識模型可以有效地辨識駕駛人駕駛習性,模型整體精準度可以達到97.1%。當隨機森林模型中決策樹的數目較少時,模型整體精準度會隨著決策樹棵數和特征變量的增加而提升;但當決策樹超過一定數量后,這些影響將顯著降低,采用基于變量重要性的隨機森林模型會更加簡單易行。