黃 江,李雨涵,吳盛斌,丁代林,羅 華,何 渝
(重慶理工大學 車輛學院, 重慶 400054)
駕駛風格是指在不同駕駛環(huán)境下駕駛員表現出的不同的駕駛特性[1]。激進型的駕駛風格車輛加速度變化較為劇烈,對速度收益的追求程度更高,而保守型的駕駛風格車輛運行更加平穩(wěn),對安全收益的追求程度更高??傊?,不同駕駛員的駕駛風格對車輛換道有很大的影響,因此,對駕駛風格進行準確識別是有必要的。
傳統(tǒng)的駕駛風格識別往往傾向于采用問卷調查得到的數據或車載傳感器采集的數據進行[2-3],本文通過對車輛真實的歷史軌跡數據進行提取處理,搭建基于多元特征參數的駕駛風格識別模型。
支持向量機(SVM)結構簡單,有極強的學習能力和泛用性,可有效避免“維度災難”,在數據分類、線性回歸以及模式識別等方面被廣泛應用[4-6]。為對駕駛風格進行識別,郝景賢等[7]利用支持向量機搭建識別模型,得到了較高的識別率,為自適應優(yōu)化奠定了基礎。但在實際應用中,由于傳統(tǒng)的SVM模型按固定步長選取參數,可能會導致錯過最優(yōu)解,且當分類類別較多時存在局限性。為了解決上述問題,國內外學者對其進行了改進。在優(yōu)化支持向量機方面,楊帆等[8]引入了粒子群算法,結果表明,粒子群算法對實時數據處理具有良好的分類效果,但分類的準確性還不夠;Xue等[9]也采用了類似的方法,但由于選取參數的離散性,易導致局部最優(yōu)。李捷輝等[10]利用蝙蝠算法對支持向量機進行優(yōu)化,建立了預測模型,提高了識別的準確率,但是仍存在運行時間過長的問題;Li等[11]通過遺傳算法的自適應性對SVM模型進行參數優(yōu)化,結果表明該方法準確性較高,但未考慮樣本缺失數據的影響;張向東等[12]通過交叉驗證對支持向量機的參數進行優(yōu)化,但未考慮到樣本數據較大的情況。
本文在粒子群算法的基礎上加入自適應慣性權重ω以優(yōu)化SVM模型參數。改進的粒子群算法(IPSO)克服了標準粒子群算法(PSO)的缺點,同時也使SVM算法相關參數的選取更加準確,對駕駛風格的識別精度更高。
支持向量機是一種在處理非線性、高緯度等問題時有明顯優(yōu)勢的機器學習算法[13],其核心思想是確定一個超平面,使數據點到超平面的距離盡量大,如圖1所示。
圖1 SVM最佳分類超平面
(1)
式中:ω為權重向量;b為偏差;ξi為松弛變量;C為懲罰參數,對模型復雜度和模型訓練誤差影響較大。
對于非線性數據,SVM算法可以通過非線性變換將其映射到高維度的線性特征空間,以此來構造最佳分類超平面[14]。將有約束的原始目標函數轉換為無約束的拉格朗日目標函數,構造拉格朗日方程,得到式(2)所示的對偶拉格朗日算子:
(2)
式中:αi為拉格朗日乘子,且αi>0。最優(yōu)分類決策函數如式(3)所示。
(3)
式中,sgn(·)代表符號函數,通過函數值的正負可判定樣本x的類別。
選擇合適的核函數會大大縮短SVM模型的收斂速度、更易得到最優(yōu)參數。高斯徑向基核函數(RBF)可將有限維數據映射到高維空間,其定義如式(4)所示:
(4)
式中:γ為核函數主要參數,影響模型的學習能力,可以反映訓練樣本數據的范圍特性。當γ處于較大值時,SVM模型對訓練數據的作用范圍較廣、識別能力較強,但對于新樣本的識別準確性會降低;當γ處于較小值時,SVM模型對樣本的作用范圍變窄,識別準確性較差,容易造成局部最優(yōu),此時的識別函數近似于一個常數。通過RBF核函數,可以得到決策函數,如式(5)所示:
(5)
粒子群算法源自對鳥群覓食行為的研究,其基本思想是將種群中的每個個體都看成沒有大小和質量的質點,通過摸擬自然界生物個體之間的信息共享以尋求最優(yōu)解所產生的一種智能算法,具備和遺傳算法相似的優(yōu)化能力[15]。
傳統(tǒng)PSO算法通過跟蹤局部最優(yōu)點和全局最優(yōu)點來對速度和位置進行更新,如式(6)、式(7)所示。
vi(t+1)=ω(t)×vi(t)+
c1×rand×(pb(t)-xi(t))+
c2×rand×(gb(t)-xi(t))
(6)
xi(t+1)=xi(t)+vi(t+1)
(7)
式中:vi為當前粒子的速度,代表粒子移動的快慢;xi為當前粒子所在的位置,代表粒子移動的方向;ω為慣性權重,通常取值都大于0;pb為局部最優(yōu)解;gb為全局最優(yōu)解;c1和c2為兩種學習因子,代表每個粒子向pb、gb運動的加速項的權重;隨機數rand∈[0,1]。
在全局搜索時需要一個較大的慣性權重,反之,局部搜索需要的慣性權重較小。上述粒子群算法屬于全局范疇,具有較快的收斂性,但易造成局部最優(yōu),尋找全局最優(yōu)解的能力較弱。針對上述問題,相關學者展開了研究。部分學者在迭代過程中引入了線性遞減的慣性權重,相比于固定的慣性權重,該方法可以較好地提高算法的性能,對全局尋優(yōu)和局部尋優(yōu)能力進行調節(jié),但是該方法存在一定的局限性,由于PSO算法的尋優(yōu)過程是非線性的,所以線性的慣性權重不能真實地反應粒子的尋優(yōu)過程,使最終效果并不理想。還有學者引入了非線性遞減的慣性權重,如指數形、S形等,這種方法可以有效平衡迭代過程中全局搜索和局部搜索的能力,但是忽略了算法后期震蕩嚴重的缺陷,會對算法后期的收斂速度造成一定的影響。
1) 當f(xi)>f(pb)時,在迭代初期理論上粒子處于局部最優(yōu)狀態(tài)。此時需要賦予粒子一個較大的慣性權重,當搜索面積較大時,最大化地進行全局尋優(yōu),加快其收斂速度,有助于確定最優(yōu)解的大概區(qū)域,慣性權重計算如式(8)所示:
(8)
(9)
3) 當f(xi) (10) 式中:ωmax和ωmin分別為最大與最小慣性權重;K為最大迭代次數;k為當前迭代次數;隨機數rand∈[0,1];f(xi)為粒子當前的適應度值;f(pb)為粒子處于局部最優(yōu)解時的適應度值;f(gb)為粒子處于全局最優(yōu)解時的適應度值。粒子適應度越小,粒子距離最優(yōu)解越遠,此時需要進行全局尋優(yōu)。與基本粒子群算法相比,現在的慣性權重與迭代次數和每個粒子的適應度都有關。 針對非線性數據的識別,支持向量機模型增加了松弛變量ξi以減小輕微誤差帶來的影響,通過懲罰參數C可以調節(jié)松弛變量ξi。C增大時,ξi減小,對錯誤的容忍度減小,泛化能力變弱,對樣本的識別準確率增加,但當其過大時會由于樣本極端化造成過擬合;C減小時,ξi增大,對錯誤的容忍度增大,泛化能力增強,可以得到較大的分類間隔,但當其過小時可能由于無法得到最優(yōu)解而造成欠擬合。因此,為了避免懲罰參數C達到極值造成算法的過擬合或欠擬合,同時兼顧分類間隔最大化與樣本識別的準確率,對懲罰參數C的適當選取是非常有必要的。 當使用高斯徑向基核函數時,其參數γ承擔主要映射作用。當γ越大時,映射維度越高,映射樣本空間越分散,識別的準確率越高,但由于其支持向量減少,造成模型的訓練和測試速度降低;反之,當γ越小時,映射維度越低,支持向量增多,模型訓練和測試速度越快,但由于映射樣本空間過于集中,導致樣本識別的準確率降低。因此,為了平衡識別準確率與模型訓練速度之間的關系,必須要選擇恰當的核參數γ。 綜上所述,需要著重考慮懲罰函數C和核函數參數γ的取值問題,確定最優(yōu)參數組合(C,γ),以提高SVM模型的收斂速度和識別準確性。本文采用改進的粒子群算法對SVM模型進行優(yōu)化,具體如下所示: 步驟1:初始化SVM模型參數、IPSO算法參數。隨機初始化待優(yōu)化參數懲罰函數C和核參數γ參數組合(C,γ),隨機初始化其位置和速度信息,初始化種群數量N=20,最大迭代次數K=150。 步驟2:計算粒子尋優(yōu)的適應度值。將粒子位置、速度等信息代入適應度函數f(xi),通過適應度函數來評定SVM模型的收斂性和準確性,本文選取均方誤差作為其適應度函數。 步驟3:確定最優(yōu)值。找到初始信息下個體粒子的最優(yōu)位置和整個粒子群的最優(yōu)位置。 步驟4:更新位置和速度。引入自適應慣性權重ω*,比較當前粒子適應度f(xi)與粒子處于局部最優(yōu)解時的適應度值f(pb)及粒子處于全局最優(yōu)解時的適應度值f(gb)的大小,根據式(8)—(10)進行更新調整。按照式(11)更新粒子的速度信息,其中,個體學習因子c1=1.5,社會學習因子c2=1.7,最大慣性權重ωmax=0.91,最小慣性權重ωmin=0.39。 vi(t+1)=ω*(t)×vi(t)+ c1×rand×(pb(t)-xi(t))+ c2×rand×(gb(t)-xi(t)) (11) 步驟5:更新最優(yōu)值。通過位置和速度的最新狀態(tài)來更新當前粒子的最優(yōu)位置Pi和整個群體的最優(yōu)位置Pg,找到個體最優(yōu)和全局最優(yōu)粒子。 步驟6:判斷是否達到最大迭代次數。當達到K時結束循環(huán),輸出最優(yōu)參數組合(C,γ),反之,重復上述步驟直至滿足條件。 步驟7:利用最優(yōu)參數組合(C,γ)建立SVM識別模型。 具體流程如圖2所示。 圖2 IPSO-SVM算法流程框圖 通常為了驗證優(yōu)化后SVM模型的各項性能,都會采用UCI公共數據集進行測試[16-17]。選擇UCI數據集的wine、iris、seeds、breast-tissue 作為樣本對其進行驗證。對應各數據集信息如表1所示。 表1 各數據集相關信息 通過與文獻[16,18]中交叉驗證優(yōu)化的支持向量機模型(CV-SVM)、標準粒子群算法優(yōu)化的支持向量機模型(PSO-SVM)相比較的方法來驗證改進粒子群算法優(yōu)化支持向量機模型(IPSO-SVM)的識別效果。其中,懲罰函數C的取值范圍為(0.1,100],核函數參數γ的取值范圍為[0.1,10]。各模型的識別精度、均方誤差及運行時間如表2所示,適應度曲線如圖3所示。 根據表2中各結果數據分析可知,對于數量、維度均不同的數據集,IPSO-SVM識別模型的準確率均高于其他2種,均方誤差均小于其他2種,平均運行時間均有所減少,證明了優(yōu)化后的IPSO-SVM模型相比于傳統(tǒng)的CV-SVM模型和改進前的PSO模型都有更好的識別效果,且時效性更好。 表2 各模型識別準確率與均方誤差 根據圖3可知,優(yōu)化后的SVM模型在迭代初期下降得更快,說明模型是從全局最優(yōu)解附近開始尋優(yōu),加快了前期的收斂速度;尋優(yōu)時的迭代次數明顯少于其他模型,使模型的收斂速度更快,收斂精度更高;同時迭代過程中曲線變化更為平坦,說明改進后的模型穩(wěn)定性更好。 圖3 各數據集適應度曲線 選取NGSIM(next generation simulation)數據[19]進行研究,該數據集采集了通過目標區(qū)域所有車輛的時空信息,并以0.1 s間隔進行輸出,具有較高的準確性。 本文設定以下條件對車輛軌跡數據進行篩選:僅選用小汽車作為研究對象;僅考慮自由換道、單次換道的車輛;僅提取換道車輛目標車道后車的相關數據;排除兩車相對距離大于30 m小于5 m的數據信息。以ID=15的車輛為例,篩選數據如表3所示。 表3 NGSIM部分篩選數據 由于NGSIM數據集中的車輛行駛數據是通過視頻處理技術獲得的,存在大量噪聲和異常點,如果不進行數據清洗,在計算速度和加速度時誤差會被放大,影響模型的準確性。針對上述問題,采用對稱指數移動平均法對數據進行平滑處理[20]。在篩選得到的行車數據的基礎上,通過反復對平滑窗口進行測試對比其平滑效果,獲取最終平滑表達式。以ID=15的車輛行駛數據為例進行平滑處理,其縱向位置、速度、加速度的平滑效果如圖4所示。 通過圖4平滑處理前后車輛的運動數據對比可以看出,相比于原始數據,平滑后的數據在完整保留車輛駕駛行為特性的同時,劇烈抖動衰減明顯,車輛行駛狀態(tài)更為平穩(wěn),更符合車輛實際的運行狀態(tài)。 圖4 數據平滑處理曲線 為了對駕駛風格進行更好的描述,需要選取駕駛風格相關特征數據。通過對與駕駛行為相關的多元特征參數進行統(tǒng)計學分析,最終選取6個作為評價指標,如表4所示。 表4 評價指標選取 降維是主成分分析法的主要思想,可將高維空間的數據點映射到低維空間。采用主成分分析法將8個評價指標降維成幾個主成分,每個主成分都可以綜合反映8個評價指標的信息并且每個主成分都線性不相關,一定程度上減少了信息重疊,大大縮短了訓練時間。 在主成分求解之前,對數據進行歸一化處理可以有效地消除量綱之間的差異,將每個特征參數對應的數據都轉換到0~1之間。將歸一化處理后的數據作為主成分分析的輸入。數據進行線性映射之后,需要根據各成分的重要度排序,并根據累計方差貢獻率判定主成分[21],計算如式(12)所示。 (12) 式中:G(k)為累計方差貢獻率;λ為特征值。 圖5為各主成分的方差貢獻率和累計方差貢獻率。方差貢獻率排名前三的主成分的累計方差貢獻率超過了85%,因此,可以選擇前3維數據作為6個評價指標的線性組合,進行后續(xù)的分析。 圖5 方差貢獻率及累計方差貢獻率 得到的3個主成分能夠很好地反映原始指標所代表的信息,將其作為聚類分析及識別模型的輸入。主成分Y1、Y2、Y3可以通過評價指標Xi(i=1,2,…,6)計算得到,如式(13)所示。 (13) K-means算法是一種將歐式距離作為數據相似性評價指標的非監(jiān)督學習算法,使用數據驅動的方法,獲得駕駛員在駕駛風格類別上的歸屬性,聚類得到的結果可以作為識別模型的標簽使用[22]。 為得到理想的聚類效果,依次將聚類中心設置為2中心、3中心和4中心,聚類結果如表5所示。 表5 K-means聚類結果 當聚類數目為2時,兩類樣本數量之間相差較大,且第一類簇的樣本數量達到了總樣本數量的87%,超過了60%,造成了欠分類問題;當聚類數目為3時,各類簇之間的差距開始變小,且各類簇的樣本數量都較為合理;當聚類數目為4時,類簇間的差距進一步變小,但是第一類簇和第三類簇的樣本數量相比總樣本數量都已經少于15%,造成了過分類問題。綜上所述,將駕駛風格分為3類聚類效果最優(yōu),結合人們對駕駛風格的定性認知以及3種駕駛風格對應特征參數值的大小,可以判斷3種駕駛風格依次為保守型、普通型和激進型。 如圖6所示,為3種駕駛風格的聚類結果。各主成分可以清晰地被劃分為3類,第一類為保守型,聚類中心坐標為(-0.23,0.27,0.49);第二類為普通型,聚類中心坐標為(0,0.08,0.48);第三類為激進型,聚類中心坐標為(0.21,0.4,0.05)。針對于不同的數據,K-means算法可以實現有效地聚類,將聚類結果作為后續(xù)識別模型的輸出。 圖6 K-means聚類結果 從NGSIM數據庫中選取Peachtree數據集作為仿真樣本,對改進的IPSO-SVM識別模型進行訓練和測試,其中Peachtree數據集是美國佐治亞州亞特蘭大市的城市道路數據。具體樣本數據如表6所示。 表6 樣本數據 IPSO-SVM模型對駕駛風格進行識別的過程如圖7所示。 圖7 IPSO-SVM模型駕駛風格識別過程框圖 1) 對樣本數據進行處理,確定模型的輸入和輸出。將主成分分析法得到的主成分[Y1、Y2、Y3]作為模型的輸入,將K-means聚類算法得到的駕駛風格類型作為模型的輸出。 2) 核函數選擇。本文選取高斯徑向基核函數作為模型的核函數。 3) 數據集劃分。按7∶3將樣本數據劃分為訓練集和測試集。選取70%的樣本數據作為SVM的訓練樣本,選取剩余數據作為驗證樣本,對未訓練的軌跡數據進行測試。 4) 參數優(yōu)化。采用IPSO算法對SVM模型的懲罰函數C和核參數γ進行優(yōu)化,得到最優(yōu)參數組合(C,γ)。 5) 模型訓練。分別對采用傳統(tǒng)交叉驗證方法的CV-SVM模型、未改進的支持向量機模型PSO-SVM和改進的支持向量機模型IPSO-SVM進行訓練,使用帶類別標簽的特征[Y1、Y2、Y3、sort],其中sort為不同駕駛風格的類別標簽,其中1為保守型,2為普通型,3為激進型。 6) 模型驗證。為了驗證所建模型的精度和可靠性,將測試結果與實際值相比較,采用識別精度、均方誤差(MSE)、平均絕對誤差(MAE)、運行時長和ROC曲線作為評價標準來評判模型的效果。MSE和MAE計算如式(14)(15)所示。 (14) (15) 對改進的IPSO-SVM識別模型進行仿真分析,得到如圖8—10所示的分類結果。從圖中可以直觀地看出:CV-SVM、PSO-SVM、IPSO-SVM 3種模型的錯誤識別樣本。 圖8 CV-SVM識別模型識別結果 如圖8所示,CV-SVM識別模型錯誤識別樣本較多,主要集中在第二類即普通型駕駛風格區(qū)域。與該模型相比,PSO-SVM模型錯誤識別樣本相對減少,如圖9所示。IPSO-SVM模型錯誤識別樣本最少,準確率最高,如圖10所示。 圖9 PSO-SVM識別模型識別結果 圖10 IPSO-SVM識別模型識別結果 表7是關于各識別模型的相關結果,圖11是各識別模型的適應度曲線。從圖表中可以看出:在識別精度方面,IPSO-SVM模型的識別精度最高,平均可達97.96%,相比CV-SVM模型識別精度提高11%,與PSO-SVM模型相比識別精度提高4%;在誤差方面,IPSO-SVM模型的均方誤差比CV-SVM模型降低88%,比PSO-SVM模型降低80%;平均絕對誤差比CV-SVM模型降低87%,比PSO-SVM模型降低75%;在運行時間方面,IPSO-SVM模型的平均耗時相比于CV-SVM和PSO-SVM模型分別減少了32%、28%,收斂速度最快,時效性最好;在收斂性方面,IPSO-SVM模型能夠更加快速地完成收斂,減少迭代次數,曲線也較為平穩(wěn),使其收斂速度、收斂精度及穩(wěn)定性方面均優(yōu)于其他2種模型。 表7 各模型識別駕駛風格的結果 圖11 各模型識別駕駛風格的適應度曲線 根據上述分析,可以得到3種模型駕駛風格識別時關于準確性、時效性及收斂性等方面的差異,其中本文搭建的IPSO-SVM模型效果均最優(yōu)。對于不同類型的駕駛風格,分類討論其識別效果,如表8所示。 表8 不同駕駛風格下各模型的識別精度 由表8可知,無論是保守型、普通型或激進型駕駛風格,IPSO-SVM模型的識別精度都優(yōu)于其他2種模型,收斂速度更快,尤其是保守型和激進型駕駛風格,識別精度甚至達到了100%,但由于本文在選取數據時一系列篩選條件的限制,使實驗樣本數量偏少,導致結果的差異性不是很明顯,在后續(xù)的研究中會進行改進。 進一步通過ROC曲線和AUC值對不同駕駛風格下識別模型的性能和可靠性進行分析。 如圖12—14所示,在進行駕駛風格識別時,無論是保守型、普通型或激進型,IPSO-SVM模型的AUC值都最大,PSO-SVM模型次之,CV-SVM模型最小,說明與CV-SVM算法和PSO-SVM算法相比,IPSO-SVM模型的識別性能都更優(yōu),識別能力更強,可靠性更好。 圖12 保守型駕駛風格下各模型的ROC曲線 通過對不同模型及不同駕駛風格類型的識別精度、誤差率、運行時間和ROC曲線的AUC值對比分析可知,相比于交叉驗證和未改進的支持向量機模型而言,本文搭建的改進粒子群算法優(yōu)化支持向量機模型的準確性最高,時效性和收斂性最好,有更強的識別能力和更好的可靠性。 圖13 普通型駕駛風格下各模型的ROC曲線 圖14 激進型駕駛風格下各模型的ROC曲線 本文通過優(yōu)化粒子群算法,提出了一種基于改進PSO算法優(yōu)化SVM參數的駕駛風格識別模型。通過對NGSIM數據庫多元特征數據處理,進行仿真對比實驗。結果表明:與CV-SVM模型和PSO-SVM模型相比,IPSO-SVM模型克服了易陷入局部最優(yōu)的缺點,有效提高了識別準確率,減小了誤差,加快了收斂速度,其準確率可達97.96%,均方誤差減小約88%,平均絕對誤差降低約87%,運行耗時平均減小30%,同時通過ROC曲線和AUC值更一步證明了模型的性能和可靠性。綜上,在駕駛風格識別方面,本文搭建的IPSO-SVM模型是可行的。1.3 IPSO算法對SVM模型的優(yōu)化
1.4 模型驗證
2 數據處理
2.1 數據來源
2.2 數據清洗
2.3 主成分分析法
2.4 K-means聚類
3 駕駛風格識別模型研究
3.1 基于IPSO-SVM的駕駛風格識別模型
3.2 結果分析
4 結論