王琳虹,李世武,高振海,冀秉魁(.吉林大學交通學院,3005長春;.吉林大學汽車工程學院,3005長春)
基于粒子群優化與支持向量機的駕駛員疲勞等級判別
王琳虹1,2,李世武1,高振海2,冀秉魁1
(1.吉林大學交通學院,130025長春;2.吉林大學汽車工程學院,130025長春)
為客觀、準確地判別駕駛員的疲勞程度,采用多項駕駛員生理指標、基于粒子群與支持向量機(SVM)算法建立駕駛疲勞等級判別模型,首先將駕駛員疲勞狀態分為清醒、輕度疲勞、重度疲勞和睡意4個等級,然后將駕駛員的心電RR間期標準差、心率均值、呼吸潮氣量、腦電的α波、β波和δ波功率譜密度積分等作為SVM的輸入變量,駕駛疲勞等級作為輸出變量,引入粒子群算法優化SVM的懲罰系數和核函數參數對判別模型進行標定,采用吉琿高速公路上的實車實驗數據對模型有效性進行驗證.結果表明:本模型對4項疲勞等級的判別準確率均高于85%,對于駕駛員疲勞預警具有重要意義.通過對模型各個輸入變量的敏感性分析,證明基于多項生理指標的疲勞判別較基于單生理指標的疲勞判別更加有效.
駕駛員生理指標;疲勞判別;支持向量機;粒子群;敏感性分析
當駕駛員處于疲勞狀態時極易出現觀察、判斷以及操縱上的失誤,進而導致交通事故的發生.據美國國家交通安全協會統計,28%的交通事故由駕駛疲勞造成.因此,及時辨識駕駛員疲勞狀態并進行預警對于預防交通事故具有重要意義.
在駕駛員狀態由清醒變為疲勞的過程中,其生理指標如腦電、心電等會產生一定的變化,因此,許多學者嘗試基于生理指標研究駕駛疲勞的判別方法,并取得了一定成果[1-3].李默涵等[4]基于腦電信號參數,依托灰色模型GM(1,1)建立了駕駛疲勞灰色判別系統.趙春臨等[5]提取前額、頂葉、枕葉等6個通道的多維腦電信號特征組成特征向量,基于核主分量分析和優化支持向量機建立了駕駛員精神疲勞等級判別模型.Hu Shuyan等[6]根據KSS分類法將駕駛疲勞分為3個等級,并選擇眼瞼相關參數最小持續時間、最小睜眼速度和睜眼高度作為判別指標,基于支持向量機建立了駕駛員疲勞判別算法;Yang Guosheng等[7]對心電ECG、腦電EEG信息進行融合,并利用動態貝葉斯網絡判別駕駛員疲勞的概率,之后對比只有ECG或者EEG以及兩參數皆有時的判別率,實驗結果表明ECG與EEG的綜合信息在表征駕駛員疲勞狀態方面更加有效.
綜上,國內外學者在基于生理指標判別駕駛員疲勞方面進行了大量研究,促進了疲勞判別技術的快速發展.然而目前國內外學者通常選取相對比較單一的生理指標作為疲勞判別模型的輸入參數,而在駕駛員狀態由清醒到疲勞的過程中,其多項生理指標如腦電、心電、呼吸等均會不同程度地發生變化,上述生理指標如何綜合反應駕駛員疲勞狀態并未見報道.因此本文嘗試選擇多項生理指標的不同特征參數作為判別駕駛疲勞的特征變量,基于粒子群優化與支持向量機建立駕駛疲勞判別模型.
影響駕駛員疲勞的因素包括駕駛時間、交通環境等.若駕駛時間過長或交通環境過于單調均會弱化駕駛員對于外界的感知能力、交通狀況的判別能力及對車輛的操縱能力,這種弱化會體現在駕駛員的各項生理指標中.駕駛員生理指標可以客觀準確地反應駕駛員的生理及精神狀態,本文參照幾類生理指標對疲勞等級進行參數選擇.
1)腦電.人體任何細微的動作及心理變化均可以在腦電中有所體現,利用腦電(EEG)監測駕駛員是相對客觀、精確的方法之一.高速公路上路側景觀、交通狀況、標志標線等均可以對駕駛員產生視覺及心理刺激,進而反映在腦電波中.人類腦電圖中腦波頻率一般在1~30 Hz,根據腦電中的不同頻帶可以將腦電波劃分為α、β、θ、δ4個節律.α波的頻率為8~13 Hz,通常駕駛員較放松時的腦電圖以α波為主;β波的頻率為14~30 Hz,在駕駛員處于清醒狀態時β波會大量出現;θ波的頻率為4~7 Hz,δ波的頻率為1~4 Hz,多在駕駛員疲勞時出現[8].以往研究結果表明,δ波較θ波對疲勞狀態敏感性更強.腦電圖不同節律的功率譜密度均能夠不同程度地表征駕駛員的感知、判斷能力的準確性,因此選擇腦電的α波、β波和δ波功率譜密度積分(即能量)作為判別駕駛員疲勞程度的生理指標參數.
2)心電.心電反映的是心臟的活動情況,心臟同時受交感神經和副交感神經的支配,而交感神經系統的主要功能在于提高有機體的喚醒水平;副交感神經系統的功能是使興奮起來的軀體返回到較低的喚醒水平.駕駛員的疲勞程度與機體的喚醒水平密切相關,因此心電可以在一定程度上反映駕駛員的疲勞程度.一次完整的心跳包括P、Q、R、S、T 5種波,如圖1所示.R波的峰值遠高于其他波(P、S等)峰值,因此心率等于單位計數時間內R波的數量.RR間期即為相鄰兩個R波之間的間隔時間,單位時間內一系列RR波時間間隔的標準差即為RR間期標準差.心率可反應作業強度及心理生理負擔程度,隨著工作負荷的變化而變化;心電RR間期的標準差可以反映心率變異性,因此選擇心率以及RR間期標準差作為判別駕駛員疲勞程度的生理指標.

圖1 心電圖簡圖
3)呼吸.呼吸可一定程度表征駕駛員的情緒、疲勞程度,每次呼出或吸入的空氣量定義為潮汐量(潮氣量).呼吸潮氣量作為呼吸深度的量化指標,可有效地反映駕駛員的精神及體力狀態.
綜合分析駕駛員的駕駛行為與各項生理指標的相關性,選擇如下6個生理參數作為判別駕駛員疲勞程度的依據:腦電的α波、β波和δ波功率譜密度積分,心電RR間期標準差,心率均值,呼吸潮氣量.
支持向量機(support vectormachine,SVM)是Corinna Corte等于1995年首先提出的,在解決小樣本、非線性、高維模式識別中表現出許多特有的優勢,并能夠推廣應用到函數擬合等其他機器學習問題中[9].受實驗條件的限制,駕駛員的生理數據的數據采集量有限,且選擇的生理指標特征參數較多,而支持向量機可以較好地解決樣本有限及高維模式問題,因此本文選擇支持向量機作為駕駛疲勞判別模型.
2.1 SVM原理
SVM是從線性可分情況下的最優分類面發展而來的,其基本思想可用圖2所示的二維情況表明.

圖2 可分數據點集與分類超平面
圖2 為兩個可分的數據點集與分類超平面,圖中存在多個分類超平面,需找到最優分類超平面.設有兩類線性可分的樣本集合[10](xi,yi),i=1,…,n,xi∈Rn,yi∈{+1,-1},線性判別函數的一般形式為f(x)=ωTx+b,對應的分類超平面方程為ωTx+b=0.
將判別函數進行歸一化,使兩類所有樣本滿足|f(x)|≥1,此時離分類面最近的樣本為|f(x)|=1,要求分類面對所有樣本都能正確分類,即滿足

此時分類間隔等于2/‖ω‖,間隔最大等價于‖ω‖2最小.滿足式(1)、且使‖ω‖2最小的分類面就是圖2的最優分類面[10].
SVM是從線性可分情況下的最優分類面提出的.對于線性不可分情況,當用一個超平面不能把兩類點完全分開時,可以引入松弛變量ξj(ξj≥0,i=1,2,…,n),允許錯分樣本的存在,此時的分類面ωTx+b=0滿足

當ξi<1時樣本點xi被正確分類,而當ξi≥1時樣本點xi被錯分.為此引入目標函數

式中:c為懲罰因子,是一個正常數.
此時SVM可以通過二次規劃(對偶規劃)來實現,即

用核函數K(xi,xj)代替最優分類平面中的點積j,相當于把原特征空間變換到了某一新的特間,最終得到相應的分類判別函數式為

2.2 SVM結構設計
核函數.核函數是SVM算法的一個關鍵組成部分,常見的核函數有線性、多項式、徑向基和sigmoid函數.本文采用最為常見的徑向基(RBF)函數,即

其中:γ為核函數參數,γ也可寫為gamma,簡寫為g.
本文中支持向量機的輸入變量是駕駛員的6項生理指標:腦電的α波、β波、δ波功率譜密度積分,心電RR間期標準差,心率均值,呼吸潮氣量.
支持向量機的輸出變量為駕駛員的疲勞等級,本文將駕駛員的疲勞等級分為4個等級,包括清醒狀態、輕度疲勞、重度疲勞和睡意狀態.國際上較為流行的KSS以及皮爾遜疲勞分級法分別將駕駛員疲勞等級劃分為7個、13個等級,這種劃分方法雖然能夠精確地反映駕駛員的各種疲勞狀態,然而在進行實車實驗時,駕駛員的實際疲勞等級主要通過調查人員詢問獲得,這種詢問應該以盡量保證駕駛員狀態的持續性以及駕駛安全性為前提.如果對于疲勞等級劃分過細,那么駕駛員在回答詢問時必將仔細考慮其當前所處的最佳疲勞等級,思考過程將消耗較多時間,對其疲勞狀態以及駕駛安全性造成影響.因此,為了能夠使駕駛員輕松地判別出自身狀態、且又能夠準確反映其疲勞等級,本文將駕駛員疲勞狀態劃分為清醒狀態、輕度疲勞、重度疲勞和睡意狀態4個等級.其中清醒狀態為駕駛員駕駛之初反應能力、操縱能力均非常強的階段,可以對外界環境變化作出快速響應.輕度疲勞狀態為駕駛員駕駛一段時間后,因體力減弱,導致的輕微疲勞.重度疲勞為駕駛較長時間后,駕駛員出現反應能力、操縱能力迅速下降,身體極度疲憊的狀態.睡意狀態為駕駛員已經不可控的經常會出現瞌睡的階段,行駛路線多為曲線的階段(此時已接近高速公路的服務區,駕駛員必須要馬上休息).為后續表述方便,將其依次簡化為疲勞等級1、2、3、4.
2.3 基于粒子群算法的SVM改進
利用支持向量機作分類預測時需要調整相關的參數(主要包括懲罰參數c和核函數參數g)才能得到比較理想的預測分類準確率,且對初始值依賴較大,而粒子群算法搜索速度快、效率高,算法簡單,可以更好地提升分類器的性能.因此,本文采用粒子群算法對SVM的關鍵參數c、g進行優化,以提高分類效率.
粒子群優化算法[10]最早由Kennedy和Eberhaert于1995年提出.假設在一個D維的搜索空間中,由n個粒子組成的種群X=(X1,X2,…,Xn),其中第i個粒子表示成為一個D維的向量Xi=(xi1,xi2,…xiD)T,代表第i個粒子在D維搜索空間中的位置,亦代表問題的一個潛在解.在SVM中需優化兩個參數(懲罰因子c和核函數參數g),因此D=2,即每個粒子是二維向量;而一般種群數量為粒子維數的5~10倍,因此定義n=20.
根據目標函數即可計算出每個粒子位置Xi對應的適應度值.粒子群中所有粒子適應度的整體變化可以跟蹤粒子群的狀態,本文將粒子群的群體適應度方差δ2作為適應度函數,δ2=,其中n為粒子群的粒子數目,f為i第i個粒子的適應度,favg為粒子群目前的平均適應度,δ2為粒子群的群體適應度方差,δ2越小越收斂.第i個粒子的速度為Vi=(Vi1,Vi2,…ViD)T,其個體極值為Pi=(Pi1,Pi2,…PiD)T,種群的全局極值為Pg=(Pg1,Pg2,…PgD)T.在每一次迭代過程中,粒子通過個體極值和全局極值更新自身的速度和位置,更新公式可得

式中:ω為慣性權重;d=1,2,…,D;i=1,2,…,8;k為當前迭代次數;Vid為粒子的速度;c1、c2為加速度因子,為非負的常數;r1、r2為分布于[0,1]的隨機數.為防止粒子的盲目搜索,一般建議將其位置和速度分別限制在[-Xmax,Xmax]和[-Vmax,Vmax],進化次數為200次,其位置在[-5,5],速度在[-1,1],具體的流程見圖3.

圖3 粒子群優化流程
3.1 數據采集
通過在吉琿高速公路長春—琿春段進行為期1周的實車道路試驗,采集駕駛員生理數據并記錄駕駛員疲勞狀態.吉琿高速始于吉林省吉林市,途徑蛟河、敦化、安圖、延吉,終止于琿春市,是吉林省內的一條重要交通通道.因東西距離較長,且跨越吉林省中部平原、東部山地等不同地形,駕駛難度較大,適合于駕駛疲勞研究的數據采集.
該實車道路試驗選擇15名實驗駕駛員(12男和3女),年齡在30~45歲之間,駕齡均為3 a以上.要求駕駛員在實驗前一天具有充足的睡眠、精神狀態良好,不可飲酒、咖啡及服用藥物等,以免對其生理指標產生影響.本實驗采用美國Biopac公司的MP100 16導生理記錄儀對駕駛員的生理指標進行采集.每天的實驗時間為8:00—18:00.實驗時沿途保持車內安靜,調查員在副駕駛位置上每隔15 min向駕駛員詢問其疲勞狀態并進行記錄,同時在Biopac記錄軟件中設置標記點,便于之后的數據處理.具體的實驗道路狀況及駕駛員生理指標曲線見圖4.
3.2 數據分析處理
提取關鍵時間節點(問詢駕駛員時的時間節點)附近1 min的生理數據,共計300組.利用Biopac軟件分析模塊對提取出的駕駛員各節點生理指標數據進行分析,駕駛員部分生理數據見表1.

圖4 實驗道路環境以及生理指標曲線示例

表1 駕駛員部分生理數據
3.3 判別結果及誤差分析
將駕駛員300組生理指標及其對應的疲勞等級作為實例驗證的數據.利用180組數據作為訓練集進行SVM訓練,訓練誤差設為10-4,最大迭代次數為500.然后通過粒子群尋優得到最優的懲罰因子c=1.272 7,核函數g=0.002 1.將剩余的120組數據作為測試集,利用最優的懲罰因子及核函數參數進行驗證,判別結果見表2,其分類準確率均85%以上.

表2 駕駛疲勞判別結果
根據表中數據可以看出疲勞等級1、4的準確率較高,疲勞等級2、3較低.因為疲勞等級1、4為駕駛員的兩個極端狀態(清醒狀態和有睡意),因此生理指標比較明顯,判別準確率較高.而疲勞等級2、3的生理指標聚類效果則相對較差,尤以疲勞等級2最低,這是因為當駕駛員處于疲勞等級2、3時已經稍微疲勞,但為了安全駕駛仍然強迫自己趨于清醒狀態,導致生理指標曲線波動幅度較大,所以判別率稍低.但整體基于粒子群優化的SVM算法判別率達到了85%以上,判別效果較好.
3.4 敏感性分析
本文采用多項生理指標判別駕駛疲勞,能夠取得較好的判別率.然而使用多個生理指標是否可以有效提高疲勞等級判別的準確率是本文需要回答的另一個問題,下面采用敏感性分析的方法進行研究.
判別準確率和判別時間是衡量模型性能的兩個關鍵指標,其中判別時間用以反映模型的收斂速度和魯棒性.在研究中,分別選擇4、5、6個生理參數作為SVM模型的輸入變量,具體輸出指標見表3.

表3 敏感性分析結果
從表3中可以看出,隨著輸入變量的增加,判別率有所提高,證明模型所選取的6個輸入變量在判別率方面優于較少數量的輸入變量.在判別時間方面,隨著輸入變量的增加,判別時間減少,這是由于多個變量能夠更加全面地反應駕駛員疲勞狀態,所以模型收斂速度快.而輸入參數減少時,模型優化時間較長,所以判別時間也隨之延長.
此外,通過對比不同實驗的輸出指標可以分析各個變量在模型中的重要程度.比如將輸入變量中的呼吸潮氣量換作心率均值后模型判別率有所提高,說明在本模型中后者較前者更為重要.同理可得,RR間期標準差較心率均值更能反映駕駛員疲勞等級.
1)為有效判別駕駛員的疲勞程度,建立了基于粒子群與支持向量機的判別模型.選取駕駛員的心電RR間期標準差、心率均值、腦電的α波、β波和δ波功率譜密度積分、呼吸潮氣量等作為疲勞等級的判別指標.
2)以吉琿高速公路的實車道路實驗數據對模型有效性進行驗證,結果表明模型判斷準確率達到85%以上.通過對模型中的各個輸入變量進行敏感性分析,獲取了各個參數對疲勞判別的貢獻程度.
[1]馬艷麗,裴玉龍.連續駕駛時間對駕駛特性測評指標的影響[J].中國公路學報,2009,22(1):84-88.
[2]CHENG Bo,ZHANG Wei,LIN Yingzi,et al.Driver drowsiness detection based on multisource information[J].Human Factors and Ergonomics in Manufacturing&Service Industries,2012,22(5):450-467.
[3]CRAIG A,TRAN Y,WIJESURIYA N,et al.Regional brain wave activity changes associated with fatigue[J]. Psychophysiology,2012,49(4):574-582.
[4]李默涵,江朝暉,馮煥清.腦電的灰建模和駕駛疲勞特征提取[J].生物醫學工程學雜志,2009,26(4):258-263.
[5]趙春臨,鄭崇勛,趙敏.基于核學習算法的駕駛精神疲勞分級研究[J].數據采集與處理,2009,24(3):335-339.
[6]HU Shuyan,ZHENG Gangtie.Driver drowsiness detection with eyelid related parameters by support vector machine[J].Expert Systemswith Applications,2009,36(4):7651 -7658.
[7]YANG Guosheng,LIN Yingzi,BHATTACHARYA P.A driver fatigue recognition model based on information fusion and dynamic Bayesian network[J].Information Sciences,2010,180(10):1942-1954.
[8]李影潔,邱意弘,朱貽盛.腦電信號分析方法及其應用[M].北京:科學出版社,2009.
[9]白鵬,張喜斌,張斌,等.支持向量機理論及工程應用實例[M].西安:西安電子科技大學出版社,2008.
[10]史峰,王小川,郁磊,等.Matlab神經網絡30個案例分析[M].北京:北京航空航天大學出版社,2010.
(編輯 魏希柱)
A driver fatigue level recognition model based on particle swarm optim ization and support vector machine
WANG Linhong1,2,LIShiwu1,GAO Zhenhai2,JIBingkui1
(1.College of Transportation,Jilin University,130025 Changchun,China;2.College of Automotive Engineering,Jilin University,130025 Changchun,China)
To recognize driver′s fatigue level accurately and objectively,a driver fatigue level recognition model that employsmultiple psychological featureswas developed based on particle swarm optimization(PSO)and support vectormachine(SVM).Firstly,the driver fatigue was divided into four levels,which were alert,mild fatigue,deep fatigue and drowsiness.Then alpha rhythm,beta rhythm,delta rhythm,mean of heart rate,and standard deviation of R-R intervalwere selected as input variables of the SVM model.The PSO was introduced into the model to optimize the penalty parameter and kernel function parameter of SVM. Experimental data collected in Ji-Hun freeway was used to validate the effectiveness of the recognition model. Results show that the recognition precision of the four fatigue levels are higher than 85%.Sensitive analysis of themode is also conducted and the results prove that themodel usingmultiple features outperforms themodel using fewer features.
driver′s psychological features;fatigue recognition;support vector machine;particle swarm optimization;sensitive analysis
U491.2
A
0367-6234(2014)12-102-06
2013-11-05.
國家自然科學基金(51308251);中國博士后科學基金(2013M541306).
王琳虹(1984—),女,博士,講師;李世武(1971—),男,教授,博士生導師.
李世武,shiwu@jlu.edu.cn.