楊鵬飛,孫先波
(湖北民族大學(xué) 信息工程學(xué)院,湖北 恩施 445000)
道路結(jié)冰預(yù)測(cè)系統(tǒng)對(duì)預(yù)防或減少道路交通事故的發(fā)生具有重要的作用,可以為交通、路政等部門提供技術(shù)支持.例如,交通部門可以根據(jù)預(yù)測(cè)系統(tǒng)提供的技術(shù)參數(shù)對(duì)交通進(jìn)行合理的調(diào)度;路政部門也可以根據(jù)道路、氣象參數(shù)確定路面的養(yǎng)護(hù)時(shí)間和除冰劑的用量,避免除冰劑的浪費(fèi)和對(duì)環(huán)境的污染.道路結(jié)冰預(yù)測(cè)系統(tǒng)也能為大眾的交通出行提供路況信息,降低交通事故發(fā)生率和改善道路交通通行狀況等[1].
在道路的結(jié)冰預(yù)測(cè)問(wèn)題上,國(guó)內(nèi)外學(xué)者做了大量的研究.一方面是基于視頻照片信息分析建模,該方法存在一些不足,即如果采集路面有汽車等遮擋物會(huì)造成識(shí)別的準(zhǔn)確率不高,另外如果系統(tǒng)圖像處理不及時(shí),會(huì)導(dǎo)致路況信息更新延誤和信息采集不充分等問(wèn)題.在采用最小波去噪提取路面特征向量的基礎(chǔ)上,李頎等[2]利用支持向量機(jī)算法搭建基于圖像處理的路面結(jié)冰預(yù)測(cè)模型,解決了傳統(tǒng)的圖像識(shí)別提取路面信息不充分的問(wèn)題.但是,由于該預(yù)測(cè)模型對(duì)圖像信息的處理時(shí)間過(guò)長(zhǎng),導(dǎo)致道路信息上傳不及時(shí)的問(wèn)題.
另一方面是基于氣象數(shù)據(jù)和數(shù)據(jù)處理算法,搭建數(shù)據(jù)處理分析模型.史達(dá)偉等[3]采用C4.5決策樹(shù)算法構(gòu)建道路結(jié)冰預(yù)報(bào)模型,將數(shù)據(jù)抽象處理成規(guī)則集,利用構(gòu)建的結(jié)冰規(guī)則判斷路面情況.但是,決策樹(shù)算法最大的問(wèn)題是前級(jí)規(guī)則的誤差會(huì)直接影響到結(jié)果的準(zhǔn)確度,造成模型分類的經(jīng)驗(yàn)性太高,預(yù)測(cè)結(jié)果準(zhǔn)確度誤差過(guò)大.白永清等[4]利用溫度傳感器和回歸算法搭建了高速橋(路)面的結(jié)冰預(yù)警系統(tǒng),但單一的選用溫度參數(shù),忽視了其他氣象因子對(duì)道路結(jié)冰情況的影響,使模型的誤差較大.董天翔等[5]通過(guò)分析道路結(jié)冰規(guī)律,利用支持向量機(jī)、多元線性回歸和樸素貝葉斯算法搭建路面低溫預(yù)測(cè)模型,通過(guò)對(duì)江蘇南部路網(wǎng)的數(shù)據(jù)分析,發(fā)現(xiàn)相比較其他算法,支持向量機(jī)的預(yù)測(cè)效果最佳.邱欣等[6]利用支持向量機(jī)算法構(gòu)建以降水量、氣溫和地表溫度為變量的路面結(jié)冰預(yù)測(cè)模型,發(fā)現(xiàn)模型具有較高的準(zhǔn)確率,展示了支持向量機(jī)算法在預(yù)測(cè)模型方面的優(yōu)越性.雷建軍等[7]利用遺傳微粒群算法優(yōu)化了支向量機(jī)的參數(shù)和引進(jìn)其他氣象因子綜合考慮,搭建了一種用遺傳算法優(yōu)化的支持向量機(jī)預(yù)測(cè)模型,該系統(tǒng)改進(jìn)了支持向量機(jī)算法造成的參數(shù)選擇誤差,提高了模型的準(zhǔn)確度.實(shí)際道路結(jié)冰情況是受多個(gè)氣象因子綜合結(jié)果的結(jié)果,單一的利用某一個(gè)或兩個(gè)氣象因子進(jìn)行建模會(huì)造成模型的通用性和魯棒性較差.
支持向量機(jī)就是構(gòu)建分類條件將正分類和負(fù)分類樣本區(qū)分開(kāi),因此在二分類問(wèn)題上,支持向量機(jī)算法具有獨(dú)特的優(yōu)勢(shì).但因?yàn)槠鋮?shù)選擇經(jīng)驗(yàn)性太強(qiáng),因此在支持向量機(jī)算法搭建的道路結(jié)冰預(yù)測(cè)模型中,不同的經(jīng)驗(yàn)參數(shù)得到的結(jié)果會(huì)出現(xiàn)較大的誤差波動(dòng).利用交叉驗(yàn)證算法、遺傳算法和粒子群算法對(duì)預(yù)測(cè)模型的經(jīng)驗(yàn)參數(shù)進(jìn)行尋優(yōu)優(yōu)化,可以有效提高預(yù)測(cè)模型的準(zhǔn)確性和魯棒性.只需要比較不同優(yōu)化算法下的準(zhǔn)確率,就可以得到優(yōu)化效果最好的預(yù)測(cè)模型,預(yù)測(cè)模型的準(zhǔn)確率越高,對(duì)更好的預(yù)防道路交通事故發(fā)生的意義越大.
本文氣象數(shù)據(jù)來(lái)源于某氣象數(shù)據(jù)中心地面氣象站2019-12-07日的逐小時(shí)觀測(cè)資料,從地理上選取貴陽(yáng)、南昌、長(zhǎng)沙、武漢、合肥、鄭州、長(zhǎng)春、邯鄲、濟(jì)南、石家莊、天津、北京、沈陽(yáng)、資陽(yáng)等地氣象站的數(shù)據(jù)資料,數(shù)據(jù)中心總共有25種特征值,本文選取其中7種作為道路結(jié)冰模型的特征值,為保證數(shù)據(jù)集的科學(xué)性,首先對(duì)數(shù)據(jù)集進(jìn)行錯(cuò)誤數(shù)據(jù)和不良數(shù)據(jù)的篩選和剔除操作.
支持向量機(jī)(support vector machine,SVM)是建立在機(jī)器學(xué)習(xí)上的結(jié)構(gòu)風(fēng)險(xiǎn)最小化的理論,它是Vapnik和Cortest在1995年提出來(lái)的,主要用來(lái)解決非線性回歸和分類問(wèn)題[8].支持向量機(jī)原理圖如圖1所示,其解決問(wèn)題的主要思想是通過(guò)分類條件,在空間中構(gòu)造一個(gè)決策面將正分類和負(fù)分類分離開(kāi)來(lái)并使得正例和負(fù)例之間的間隔最大化[9-11].
圖1 支持向量機(jī)原理圖Fig.1 Support vector machine schematic
通過(guò)設(shè)置分類條件,在數(shù)據(jù)集空間中構(gòu)造分類超平面,使得條件不同的正例和負(fù)例之間的間隔λ最大化,其中λ可表示為:
(1)
通過(guò)間隔最大化原則,在數(shù)據(jù)集空間中尋找分類超平面,滿足支撐向量到分類超平面的間隔最大.
(2)
通過(guò)構(gòu)造拉格朗日函數(shù)和對(duì)偶原理解決帶約束的分類超平面優(yōu)化問(wèn)題,分類間隔最大化問(wèn)題可簡(jiǎn)化為:
(3)
引入軟間隔原理可以減少由于分類條件不充分引起的錯(cuò)分現(xiàn)象,模型可等價(jià)為:
(4)
利用訓(xùn)練集數(shù)據(jù)得到合適的道路結(jié)冰分類超平面,完成對(duì)道路結(jié)冰預(yù)測(cè)模型的搭建.通過(guò)式(5)可以實(shí)現(xiàn)對(duì)分類超平面的檢測(cè),同時(shí),利用測(cè)試集數(shù)據(jù)對(duì)已建立的預(yù)測(cè)模型進(jìn)行仿真測(cè)試,可得到道路結(jié)冰預(yù)測(cè)模型的準(zhǔn)確率[12].
(5)
通過(guò)分析影響道路結(jié)冰的氣象條件和收集到的氣象數(shù)據(jù),確定影響道路結(jié)冰的主要影響因素.基于收集的氣象數(shù)據(jù)集和道路結(jié)冰預(yù)測(cè)模型,將復(fù)雜的道路結(jié)冰問(wèn)題簡(jiǎn)化為通過(guò)監(jiān)測(cè)道路實(shí)時(shí)氣象數(shù)據(jù)的數(shù)據(jù)處理分析問(wèn)題.支持向量機(jī)算法主要是處理二分類問(wèn)題,因此可以將影響道路結(jié)冰的氣象因素構(gòu)成支持向量機(jī)的分類條件,構(gòu)建基于氣象數(shù)據(jù)條件的道路結(jié)冰預(yù)測(cè)模型.
在運(yùn)用支持向量機(jī)算法處理多分類問(wèn)題上,核心思想主要有兩種:一種是通過(guò)構(gòu)造多分類函數(shù),將所有維度的數(shù)據(jù)歸合成一個(gè)最優(yōu)函數(shù),直接實(shí)現(xiàn)對(duì)多分類問(wèn)題的求解.另外一種方法是通過(guò)分析數(shù)據(jù)集的共性,將多個(gè)二分類函數(shù)組合起來(lái),通過(guò)逐級(jí)分析求解多分類問(wèn)題[13].
影響道路結(jié)冰的氣象因子很多,其中最重要的是路面的溫度和濕度條件,其他氣象因子通過(guò)影響這兩個(gè)氣象因子來(lái)作用于道路結(jié)冰狀態(tài)的發(fā)生[14].氣象站總共有25種參數(shù),考慮到所建模型的魯棒性,本文選取傳統(tǒng)的7個(gè)氣象要素(溫度、濕度、氣壓、風(fēng)速、風(fēng)向、降雨量、水汽壓)和支持向量機(jī)算法對(duì)道路結(jié)冰條件進(jìn)行建模研究.模型搭建采用林智仁教授項(xiàng)目組開(kāi)發(fā)的LIBSVM工具箱.LIBSVM工具箱提供了支持向量機(jī)算法的源代碼,在參數(shù)選擇上,LIBSVM工具箱提供的默認(rèn)參數(shù)極大的簡(jiǎn)化了支持向量機(jī)算法的使用,模型的整體流程圖如圖2所示.
圖2 模型整體流程Fig.2 Model overall process
第1步:選定特征值.本模型選取7個(gè)氣象要素作為自變量,因變量則為道路結(jié)冰狀態(tài),根據(jù)函數(shù):
(6)
設(shè)道路結(jié)冰狀態(tài)為+1類,反之為-1類.
數(shù)據(jù)組總共有數(shù)據(jù)300組,每組樣本含有7個(gè)特征分量,每一組數(shù)據(jù)的標(biāo)簽已給出,每一小時(shí)測(cè)一組,訓(xùn)練集數(shù)據(jù)訓(xùn)練出來(lái)的預(yù)測(cè)模型,需要用測(cè)試集進(jìn)行檢測(cè),得到分類器的性能指標(biāo),即準(zhǔn)確率.
第2步:數(shù)據(jù)的篩選與剔除.由于氣象站儀器的誤差,造成收集的氣象數(shù)據(jù)存在個(gè)別的異常和缺失,因此在得到數(shù)據(jù)后,需要對(duì)其中的異常數(shù)據(jù)進(jìn)行篩選和剔除.300組數(shù)據(jù)中剔除異常數(shù)據(jù)后剩余278組.
篩選完數(shù)據(jù)后對(duì)所使用的數(shù)據(jù)集進(jìn)行可視化操作,可以得到數(shù)據(jù)集的箱式圖.由于氣壓數(shù)據(jù)和其他數(shù)據(jù)的幅值相差過(guò)大,為了減小誤差,需要對(duì)數(shù)據(jù)集進(jìn)行歸一化操作.
第3步:選定訓(xùn)練集和測(cè)試集.訓(xùn)練集用來(lái)訓(xùn)練預(yù)測(cè)模型,測(cè)試集用來(lái)測(cè)量預(yù)測(cè)模型的準(zhǔn)確程度.預(yù)測(cè)模型選用前154組數(shù)據(jù)作為訓(xùn)練集,后124組數(shù)據(jù)作為測(cè)試集.
第4步:得到訓(xùn)練模型.根據(jù)訓(xùn)練集數(shù)據(jù)的分布特征,在數(shù)據(jù)集空間中尋找一個(gè)決策分類超平面,將道路結(jié)冰情況不同的數(shù)據(jù)組分開(kāi).構(gòu)建支持向量機(jī)預(yù)測(cè)模型的本質(zhì)就是尋找對(duì)訓(xùn)練集數(shù)據(jù)進(jìn)行分類的決策超平面.
第5步:檢測(cè)訓(xùn)練模型.在訓(xùn)練模型搭建好之后,為了得到訓(xùn)練模型的準(zhǔn)確程度,需要使用測(cè)試集對(duì)已經(jīng)訓(xùn)練好的模型進(jìn)行測(cè)試,測(cè)試結(jié)果用準(zhǔn)確度表示.準(zhǔn)確度越高,證明訓(xùn)練模型的分類效果越好,對(duì)現(xiàn)實(shí)道路結(jié)冰情況的預(yù)測(cè)效果越強(qiáng).
構(gòu)建道路結(jié)冰預(yù)測(cè)模型,降雨量、溫度和濕度是影響道路結(jié)冰氣象因素中首先要考慮的3個(gè)因素,同時(shí),大氣壓、風(fēng)速和風(fēng)向?qū)︻A(yù)測(cè)模型的準(zhǔn)確率也有較大的影響.箱式圖可以直觀的表現(xiàn)出數(shù)據(jù)的異常情況和平均情況.由于本例選擇的特征值較多,因此采用箱式圖表示數(shù)據(jù)特征.數(shù)據(jù)集的箱式圖如圖3所示.
圖3 數(shù)據(jù)集的box可視化圖像Fig.3 Box visualization of the dataset
從圖3可以看出氣壓的中位數(shù)線比較高,主要集中在920~1 000百帕之間,這與所選地點(diǎn)的氣象站位置有關(guān).在數(shù)據(jù)選擇的時(shí)間里,全國(guó)大多數(shù)地方的天氣較好,降雨量為0.濕度分布較為均勻,風(fēng)向是統(tǒng)一以某一參考方向?yàn)榛鶞?zhǔn)方向的測(cè)量值,其分布相差較大,其最大值和最小值相差近350度.
在搭建好的支持向量機(jī)模型中,選用懲罰因子參數(shù)c為5,核函數(shù)參數(shù)g為0.5.進(jìn)行仿真,結(jié)果準(zhǔn)確率為81.6%.得出原始算法下模型預(yù)測(cè)分類值與實(shí)際分類值的比較圖如圖4所示.
圖4 原始算法下模型預(yù)測(cè)分類值與實(shí)際分類值的比較圖Fig.4 Comparison of model predicted classification value and actual classification value under the original algorithmm
從圖4可知原始預(yù)測(cè)模型下的預(yù)測(cè)錯(cuò)分值較大,對(duì)道路結(jié)冰的預(yù)測(cè)結(jié)果不準(zhǔn)確.
將粒子群算法引入本模型可以實(shí)現(xiàn)對(duì)道路結(jié)冰模型最優(yōu)參數(shù)的無(wú)限逼近,空間中的每一個(gè)粒子代表一組參數(shù),通過(guò)空間中粒子的運(yùn)動(dòng),使得粒子不斷向最優(yōu)解逼近,通過(guò)對(duì)粒子的個(gè)體極值和群體極值的追蹤計(jì)算,使得參數(shù)組不斷向最優(yōu)參數(shù)組靠攏,最終找到預(yù)測(cè)模型的最優(yōu)參數(shù).粒子群算法的主要參數(shù)有粒子群規(guī)模、個(gè)體認(rèn)知和群體認(rèn)知.個(gè)體認(rèn)知和群體認(rèn)知直接決定算法的迭代次數(shù)和收斂速度[15-16].為避免過(guò)學(xué)習(xí)和欠學(xué)習(xí)狀態(tài)的出現(xiàn),這里取個(gè)體認(rèn)知參數(shù)c1為2.8,群體認(rèn)知參數(shù)為1.3,粒子規(guī)模取20[17].經(jīng)過(guò)仿真分析,得到的結(jié)果準(zhǔn)確度可達(dá) 93.600 0%,其適應(yīng)度曲線如圖5所示.
圖5 粒子群算法優(yōu)化下的適應(yīng)度曲線Fig.5 Fitness curve under particle swarm optimization
由圖5可知,在種群的迭代中,當(dāng)最優(yōu)的懲罰因子參數(shù)為1.002 1,最優(yōu)的核函數(shù)參數(shù)為0.010 0時(shí),得出的預(yù)測(cè)模型準(zhǔn)確度可達(dá)95.454 0%.測(cè)試集124組數(shù)據(jù)中只有8組被錯(cuò)分,優(yōu)化后的預(yù)測(cè)模型準(zhǔn)確度可達(dá)93.600 0%,與原始不經(jīng)優(yōu)化的預(yù)測(cè)模型相比,粒子群算法的優(yōu)化作用較為明顯.
在尋優(yōu)優(yōu)化方法中,交叉驗(yàn)證法是一種常用適用于數(shù)據(jù)量不大的數(shù)據(jù)集、能有效避免過(guò)學(xué)習(xí)和欠學(xué)習(xí)狀態(tài)出現(xiàn)的優(yōu)化算法.將交叉驗(yàn)證法引入本模型進(jìn)行優(yōu)化主要是防止測(cè)試集測(cè)試分類模型時(shí)出現(xiàn)過(guò)大的誤差,使得模型的魯棒性更高、預(yù)測(cè)模型的分類作用更明顯[18-19].決定交叉驗(yàn)證算法優(yōu)化模型收斂速度和收斂的精度的主要參數(shù)是懲罰因子和核函數(shù)參數(shù)的步進(jìn)大小.經(jīng)過(guò)仿真實(shí)驗(yàn),優(yōu)化后模型的準(zhǔn)確度可達(dá)94.400 0%,仿真結(jié)果如圖6、圖7所示.
圖6 交叉驗(yàn)證算法下的支持向量機(jī)算法參數(shù)優(yōu)化等高線圖Fig.6 Contour map of SVM algorithm parameter optimization under cross-validation algorithm
圖7 交叉驗(yàn)證法下的支持向量機(jī)算法參數(shù)優(yōu)化結(jié)果圖Fig.7 Parameter optimization results of SVM algorithm under cross-validation
由圖6、7可以看出,當(dāng)交叉驗(yàn)證法優(yōu)化后的預(yù)測(cè)模型懲罰因子參數(shù)選為0.757 8,核函數(shù)參數(shù)選為0.015 6時(shí),模型的預(yù)測(cè)準(zhǔn)確度可達(dá)95.454 5%.測(cè)試集124組數(shù)據(jù)中只有7組數(shù)據(jù)被錯(cuò)分,測(cè)試集的分類精度可達(dá)94.400 0%.與初始預(yù)測(cè)模型相比,準(zhǔn)確率有了較高的提升.
原始算法下的結(jié)果誤差較大,原因是懲罰因子c和核函數(shù)參數(shù)g選用的不合適[20-21].遺傳算法從生物學(xué)角度實(shí)現(xiàn)對(duì)支持向量機(jī)模型參數(shù)的尋優(yōu)迭代,由初始族群選擇參數(shù),再通過(guò)變異、交換、選擇3個(gè)步驟實(shí)現(xiàn)對(duì)參數(shù)的最優(yōu)化選擇,通過(guò)對(duì)初始族群數(shù)量、交叉概率,變異概率和迭代代數(shù)的設(shè)定,得出最佳的道路結(jié)冰模型參數(shù).利用遺傳算法對(duì)支持向量機(jī)算法進(jìn)行參數(shù)最佳的搜索優(yōu)化.遺傳算法對(duì)參數(shù)的優(yōu)化程度取決于種群的最大數(shù)量、進(jìn)化代數(shù)、交叉概率和變異概率,種群的最大數(shù)量代表潛在解在可解空間的分布,進(jìn)化代數(shù)決定潛在解對(duì)空間最優(yōu)解的收斂程度,交叉概率和變異概率都與收斂速度有關(guān)[22-23].在本模型中,遺傳優(yōu)化算法的種群最大參數(shù)選為20,進(jìn)化代數(shù)參數(shù)選為200,懲罰因子參數(shù)的取值范圍選定為[0,100],核函數(shù)參數(shù)的變化范圍選定為[0,100],交叉概率和變異概率參數(shù)都為默認(rèn)值.通過(guò)仿真實(shí)驗(yàn),得到的仿真結(jié)果準(zhǔn)確度為 95.200 0%,訓(xùn)練集的的仿真準(zhǔn)確度最大可達(dá)96.103 9%.適應(yīng)度曲線如圖8所示.
圖8 遺傳優(yōu)化算法下的適應(yīng)度曲線Fig.8 Fitness curve under genetic optimization algorithm
由圖8可知,在遺傳優(yōu)化算法的進(jìn)化迭代中,當(dāng)懲罰因子取51.586 2、核函數(shù)參數(shù)取0.071 4時(shí),訓(xùn)練集的最大準(zhǔn)確度可達(dá)96.103 9%.當(dāng)種群進(jìn)化到第近20代時(shí),最佳適應(yīng)度已達(dá)到96.000 0%左右.測(cè)試集中124組數(shù)據(jù)僅有6組數(shù)據(jù)被錯(cuò)分,預(yù)測(cè)模型的準(zhǔn)確度達(dá)到95.200 0%.通過(guò)比較原始預(yù)測(cè)模型和遺傳優(yōu)化算法優(yōu)化的預(yù)測(cè)模型的準(zhǔn)確度,遺傳優(yōu)化算法對(duì)原始模型核函數(shù)和懲罰因子參數(shù)的優(yōu)化作用明顯.
基于氣象數(shù)據(jù),分析得到影響道路結(jié)冰情況的氣象因素分類條件,利用支持向量機(jī)算法搭建道路結(jié)冰預(yù)測(cè)模型,分別使用交叉驗(yàn)證算法、粒子群算法和遺傳算法對(duì)預(yù)測(cè)模型進(jìn)行參數(shù)優(yōu)化.通過(guò)比較原始模型和優(yōu)化后模型的預(yù)測(cè)精度,得出由遺傳算法優(yōu)化的預(yù)測(cè)模型的通用性和準(zhǔn)確度更強(qiáng),更能適用于現(xiàn)實(shí)情況中復(fù)雜的道路交通安全預(yù)測(cè)預(yù)防情況.優(yōu)化算法對(duì)模型的準(zhǔn)確度提升作用明顯,提高了交通部門對(duì)道路結(jié)冰情況的掌握程度,達(dá)到了預(yù)防和減少道路交通事故發(fā)生的效果.
優(yōu)化算法優(yōu)化預(yù)測(cè)模型的本質(zhì)是通過(guò)迭代算法對(duì)預(yù)測(cè)模型核函數(shù)和懲罰因子參數(shù)進(jìn)行迭代計(jì)算,通過(guò)比較迭代結(jié)果,得出優(yōu)化效果最好的模型參數(shù).而使用的遺傳算法、粒子群算法和交叉驗(yàn)證法算法的原始參數(shù)是根據(jù)經(jīng)驗(yàn)選擇,在此基礎(chǔ)上下一步的工作可以繼續(xù)對(duì)優(yōu)化算法進(jìn)行疊加優(yōu)化以期達(dá)到更高的準(zhǔn)確率.