張昕姜佳佳劉進
(1.深圳市易行網交通科技有限公司深圳518040)(2.武漢理工大學信息學院武漢430070)(3.武漢理工大學自動化學院武漢430070)
基于SVM+GA的客運車輛到站時間預測
張昕1姜佳佳2劉進3
(1.深圳市易行網交通科技有限公司深圳518040)(2.武漢理工大學信息學院武漢430070)(3.武漢理工大學自動化學院武漢430070)
準確的客運車輛到站預測是城市智慧交通的基礎服務,有助于減少信息盲區,優化車輛運營調度。提出了一種基于SVM的到站預測模型,考慮道路因素、大型節假日、天氣、路況、運行距離、運行時間、排班信息七個因素的影響,改進道路路段為道路類型因素,使模型更適合于客運車輛。在此基礎上,用遺傳算法做參數尋優提高模型訓練效率。以深圳-廣州的客運班車GPS數據完成實驗,對比證明SVM+GA模型應用于客運車輛行程時間預測具有更好的適應客性,準確高效。
智慧交通;客運車輛行程時間;支持向量機;遺傳算法
到站時間預測是實現智能化信息服務的基礎,而目前客運行業的現實是全國數以萬計的客運站,基本沒有提供到站預測服務的;還沒有省市出臺客車延誤給予乘客賠償的規定,仍處于制度真空中。到站預測服務對于安撫乘客、優化車輛調度、節約社會資源都是有實際的意義的。
道路旅客運輸作為先進城市公共交通系統(Advanced Public Transportation Systems,APTS)中重要的一環,是社會經濟發展的基礎性行業。以廣東省深圳市截止2015年10月數據為例,全市目前共有汽車客運場站51個,客運服務點21個,道路客運線路465條,其中省際線路188條,市際線路277條。現有道路班線客運企業33家,客運車輛2410輛;現有旅游包車企業68家,車輛2586輛,其中市際標志牌1370個,縣際標志牌1216個。2014年度完成公路旅客運輸量195597.00萬人次,比2013年增長4.1%,占各種交通方式客運總量的44.96%。雖然道路客運旅客運輸量略有增長,但由于受到高鐵、城際等出行方式的沖擊,占各種交通方式客運總量的比例呈現出持續下降的態勢。然而長期以來,我國的道路旅客運輸行業管理信息化、智能化水平不高,行業總體經營服務管理還處于相對粗放水平,行業監管手段原始落后,不能滿足現代化交通管理需要。
隨著GPS定位終端在公共交通工具上的普及,地理信息系統(Geographic Information System或Geo-Information system,GIS)技術越來越成熟,為到站延誤預測提供了基本的要素和技術支持。國內外在公交到站時間預測領域開展了廣泛的研究,既有的研究成果對客運到站預測具有借鑒意義。從到站預測的方法和模型方面分析,已有歷史數據平均法、卡爾曼濾波模型、基于概率的模型、SVM模型等方法。Dihua Sun[1]等使用歷史數據法,這種方法模型簡單、易于理解,然而其實時性較差;Vanajakshi[2]等則選用了卡爾曼濾波模型,卡爾曼濾波模型能處理高維問題,且實時性好,但是做多步預測時精度下降明顯;陳國俊[3]等提出基于概率的預測模型,考慮了不確定性因素的影響,只是模型的可移植性不太好。支持向量機SVM是一種應用較為廣泛的模型,于濱[4]、Thissen U[5]等都用過SVM做行程時間預測,對比實驗表明SVM是一種精度較高的方法。SVM可處理復雜非線性問題具有很強的學習能力,適合大規模數據,只是其核函數相應參數的確定比較困難。
綜上所述,由于客運車輛和常規公交車不同,路線更長,預測的時間跨度更大,針對客運車輛到站預測問題,本文提出一種基于SVM的方法,選取更適用于客運的特征,并用遺傳算法提高核函數參數尋優效率,以深圳-廣州的客運數據為例,證明SVM+GA的客運到站預測模型準確且高效。
客運車輛行駛的典型路線為從客運車站出發,在城市道路行駛一段路程之后上高速公路,車輛大部分時間在高速公路行駛,中途有可能會下高速在城市中行駛,路線大部分情況比較固定,在遇到特殊情況時司機會見機選擇路線。SVM相比其他方法是一種出色的非線性算法,可以解決維數災難、過學習等問題,適合大的數據量。本文的研究數據集龐大,也要盡可能多考慮各種類型的影響車輛運行的因素,提出基于SVM+GA的客運車輛到站預測模型。將數據輸入SVM模型進行訓練,遺傳算法是模型參數尋優算法。
3.1 基于SVM的客運到站預測模型
參照文獻[6~10]選擇的特征,本文以大量的客運車GPS數據為基礎,考慮道路因素、大型節假日、天氣、路況、運行距離、運行時間、排班信息七個因素的影響。在文獻[6,10]中,道路因素是道路分段的結果,本文考慮客運車輛運行特點,車輛路線不固定,且在高速上運行的路程是在城市道路中的數倍,因此改進道路因素為道路分類因素,并加入城市實時路況,提出基于SVM的到站預測模型,表達為式(1),式中符號含義如表1。函數關系f即為SVM算法運算。


表1 符號含義表
r:道路類型。城市道路受道路狀況的影響較大,主要表現在道路的車道數、道路等級、機動車輛數、非機動車輛數及行人情況等。因此,在城市道路上客運車輛的行駛速度在很大程度上取決于道路速度。而上了高速道路之后,在無特殊情況發生時,車輛速度取決于司機的駕駛,并且必須在高速公路規定的下限速度和上限速度之間,客運班車一般為85km/h。r∈{0,1,2,3,4},0~4分別對應高速公路、快速路、主干路、次干路、支路五級。
h:是否為大型節假日。在城市道路上,道路速度一般在工作日早晚高峰期比較慢,其余時間較穩定;而在高速公路則正好相反,特別在2012年國務院批準交通運輸部等部門提交的重大節假日免收小型客車通行費實施方案后,每逢國家法定節假日高速公路入口出口處、服務區都有集中的擁堵,嚴重影響了道路的暢通水平。另一方面,客運班車為了緩解乘客的集中出行需求,往往會采取加班的措施。h∈{0,1},其中0否1是。
w:天氣。天氣狀況對道路交通的影響是有目共睹的。冰雪、大霧天氣高速會封道;大雨天氣造成道路阻力系數變小,道路容易打滑,為了安全,司機都會減速小心行駛。w∈{0,1,2,3},其中0表示晴和陰天(無雨雪),1表示小雨,2表示中雨,3表示大雨。
l:離起點的路程距離,單位為m。
t:離起點的時間,單位s。
s:路況。當道路擁堵時,道路速度往往就是車輛速度;在道路暢通時,車輛速度約等于道路速度。本文的路況信息由本文項目組提供,該結果已上線深圳市交委的微信公眾號“交通在手”實時路況。單位km/h。
a:客運班車排班信息,a∈{0,1,2},其中0表示準時發車,1表示延遲發車,2表示提前發車。
3.2 基于SVM+GA的客運到站預測模型
在實踐中,支持向量機的參數確定(主要指懲罰參數c和核函數參數g)是支持向量機在應用中的一個難點。最簡單的一種思想就是讓c和g在某個范圍內取離散值,使得最終的分類或者回歸結果準確率最高的參數作為最佳的參數。國際上通用這種方法,即交叉驗證(Cross Validation,CV)的方法找最佳參數。這種方法的思想就是將c和g的值進行K組(一般是平均分成K組)離散化遍歷查找,一般以2的指數范圍網格內進行查找,即K-CV算法。雖然采用網格搜索能夠找到CV意義下的最優解,然而如果要在更大的范圍內尋找最佳的參數會很費時,本文選用了一種啟發式算法——遺傳算法(Genetic Algorithm,GA)作為參數尋優的方法,避免了全局遍歷同時能保證找到全局最優解。
遺傳算法中較重要的幾個步驟是選擇操作、交叉運算和變異運算:
1)選擇操作:選擇運算把當前群體中適應度較高的個體按某種規則或模型遺傳到下一代群體中。一般適應度較好的個體將有更多的機會遺傳到下一代群體中。先計算出群體中所有個體的適應度的總和(式(2)),再計算每個個體的相對適應度(式(3)),即為每個個體被遺傳到下一群體中的概率。

其中,Ai為第i個觀測值,Fi為第i個預測值,n為預測樣本的個數,MSEi為第i組參數訓練出的模型的均方差值,Pi個體被遺傳到下一群體中的概率。通過這樣的策略,適應度較高的個體將有更多的機會遺傳到下一代群體中。
2)交叉運算:遺傳算法中產生新個體的主要操作過程,它以交叉概率相互交換某兩個個體之間的部分染色體。本文采用了單點交叉的方法,先對群體進行隨機配對,再隨機設置交叉點位置,最后相互交換配對染色體之間的部分基因。
3)變異運算:對個體的某一個或某一些基因座上的基因值按某一較小的概率進行改變,也是產生新個體的一種操作方法。本文采用基本位變異的方法來進行變異運算,首先確定出各個個體的基因變異位置,然后依照某一概率將變異點的原有基因值取反。
圖1為基于SVM+GA的客運車輛到站預測模型的框圖。圖2為遺傳算法嵌入SVM的具體的流程圖。

圖1 SVM+GA的客運車輛到站預測模型圖

圖2 SVM+GA處理流程圖
設客運車輛剛從起始客運站出發,現要預測車輛到達目的客運站的時間,給出全程路段的預測時間。本文實例分析使用的數據來源于路線為深圳寶安福永汽車站-廣州白云廣園汽車站的班車GPS記錄。以粵BC3008車輛為典型,該車輛所屬深圳市交委客管局寶安局轄區,歸屬深圳市福駿通汽車運輸有限公司所有,為47座的大型客車。選擇該車輛作為樣本主要從以下幾方面考慮:1)該車輛運行線路穩定,途徑新橋三路、永泰西路、廣深高速、西部干道、沈海高速、廣州環城高速、廣園快速路、廣園中路。2)該車輛的常規班車路線全程106公里,路線長度適合做研究,運行時長2~3小時,城際交通的典型,高速公路占全程的70%路程;3)深圳-廣州是熱門路線,不會因為客流不夠而休班,車輛每天來回四趟,數據完整。4)深圳-廣州的線路客運受廣深高鐵的沖擊最大,研究該路線有利于找出挑戰城際高鐵的方法。
實驗使用的數據為客運班車來回深圳-廣州的路線中所產生的GPS記錄,訓練集為2015年8月、9月、元旦、春節、清明、端午路線為深圳-廣州的客運班車數據,共300組,76萬條記錄;測試集為2015年10月同線路班車數據,共124組,32萬條記錄。
由于SVM的預測模型對SVM的參數選擇較為敏感,本文選擇了遺傳算法作為參數尋優算法,兼顧準確性和高效性。在參數尋優階段之前還需要先設置好SVM的參數取值范圍和Matlab支持向量機軟件包工具libsvm[7]的參數,如表2。

表2 libsvm參數表
完成SVM的參數范圍取值之后進行遺傳算法參數尋優,即從{2-5,2-4,…,24,25}共11個值中選取c和g本文中遺傳算法的參數取值見表3。

表3 遺傳算法的參數表
對比K-CV算法和GA算法的實驗結果,見表3,遺傳算法(GA)做參數尋優在找到最佳參數值的同時還能比一般算法K-CV節約將近一半的運算時間,同時兼顧了準確性和高效性。尋優的適應度函數是交叉驗證(CV)意義下的歸一化的最小均方誤差(MSE,式2),結果為c=0.5,g=4。圖3是利用遺傳算法進行SVM參數尋優得到的適應度函數曲線,x軸代表進化代數,y軸代表適應度函數,*形曲線代表最佳的適應度函數值作為參照,+形曲線代表對應進化代數的平均適應度函數值。隨著遺傳算法進化代數的增大,結果越來越接近最佳值,當進化到40代左右已經找到最優解。

表4 K-CV和GA的運行時間對比
將遺傳算法尋優的結果參數作為預測模型的參數,圖4為10月1日從深圳出發開往廣州的班車粵BC3008當天第三趟班次的結果。對比文獻[6]的變量選擇,模型1道路未分類而是對全程道路做了十個道路分段,模型2則是對道路做分類。結果圖中,*形線為真實值,左三角線為模型1的運算結果,右三角線為模型2的結果,橫坐標是距離,縱坐標是距離當天零點的秒數。

圖3 適應度曲線

圖4 預測結果
定量分析本文提出的模型的預測精度,對道路未分類(分段)、道路分類兩種模型做了實驗研究,選擇平均絕對誤差(Mean Absolute Error,MAE)、平均絕對誤差百分比(Mean Absolute Percentage Error,MAPE)和均方根誤差(Root Mean Square Error,RMSE)作為評價指標,公式為式(4)~式(6),定義Ai為第i個觀測值,Fi為第i個預測值:

根據公式計算兩種模型的上述三個指標,結果如表5。
觀察結果圖4、表4和表5,可以得到以下結論:
1)觀察圖4,可以看出兩種方法都能對客運行駛情況做出預測,本文的預測是在車輛出發時開始的。用道路分類代替道路距離分段的方法效果更貼近實際情況。

表5 三種模型的評價指標結果
2)觀察圖4的右三角形線(即道路分類預測),它與*形線(即實際情況)的擬合更出色,基本上是跟隨*線的趨勢。距離在40000m~60000m之間這段在整段過程中看來有不連續,是由于這段路程是在夾在兩段高速路程中間的一段城市道路運行,因此能明顯地發現這段路程的行駛特征不同于其前后的高速路段。證明道路分類這種做法是有效的。并且,由于高速道路的情況比起城市道路更為簡單,因此在高速上的擬合效果更為出色。
3)觀察圖4的左三角行線(即道路未分類),它在全程看來線性特征很明顯,這和實際行駛的總體趨勢是一致的,說明這種方法能挖掘出目標的總趨勢。但是這種方法由于只是對道路做了距離分段,而不是抓住道路的特征,因此,無法區分出不同路段的行駛特點。
4)觀察表4,一般算法K-CV從單個初始值迭代求最優解,遺傳算法從串集開始搜索,覆蓋面大,利于全局擇優,從本質上看,遺傳算法變K-CV算法中的以點為單位尋優為以面為單位尋優,節約了50%的模型參數尋優時間,不僅保證了預測的準確性,同時減少了訓練時間,提高了預測效率。
5)觀察表5,本文從平均絕對誤差、平均絕對誤差百分比和均方根誤差三個指標評價。模型2的三個指標均優于模型1,說明本文提出的變量選取更適合于客運車輛。一般人對于2.5h的行程,預測誤差平均在300s左右是能接受的,說明本文做出的改進是可行的。
綜上所述,本文主要解決了以下三個問題:1)幾乎所有研究對道路因素的把握都只考慮了路段的影響,而沒有分析道路類型帶來的影響。對路段的分析往往會導致研究太細,使影響只對在該路段上行駛的車輛,當研究車輛、路線范圍擴大之后,就會失去一般性,而使已針對固定車輛和路線的訓練好的模型變得無效。本文選擇了使用道路類型替代道路分段,得到更適應客運車輛到站預測的模型。2)少有研究會考慮道路況對目標車輛行駛的影響,即使加入車流因素,也只粗略地停留在時段變化上。本文采用的路況信息是實時的路況。3)多數SVM建模方法的論文并沒有指出如何進行模型的參數尋優,以更有效、高效地工作。本文利用遺傳算法很好地解決了模型參數尋優的問題。
在以后的工作中,一方面考慮將司機因素、突發事件等因素加入模型中;另一方面,在研究中還可以考慮數據融合,參考城市計算領域的成果和經驗,將看起來不相關的數據也融合在一起,興許可以發生神奇的反應,得到驚喜的成果。
[1]Dihua Sun,Hong Luo,Weining Liu,et al.Predicting Bus Arrival Time on the Basis of Global Positioning System Data[J].Transportation Research Record Journal of the Transportation Research Board,2007,2034(2034):62-72.
[2]L Vanajakshi,SC Subramanian,R Sivanandan.Travel time prediction under heterogeneous traffic conditions using global positioning system data from buses[J].IET Intelligent Transport Systems,2009,3(1):1-9.
[3]陳國俊,楊曉光,劉好德,等.基于動態百分位行程時間的公交到站時間預測模型[J].公路交通科技,2009,26:102-106.
CHEN Guojun,YANG Xiaoguang,LIU Haode,et al.Journal of Highway and Transportation Research and Development[J].,2009,26:102-106.
[4]于濱,楊忠振,林劍藝.應用支持向量機預測公交車運行時間[J].系統工程理論與實踐,2007,27(4):160-164,176.
YU Bin,YANG Zhongzhen,LIN Jianyi.Bus Arrival Time Prediction Using Support Vector Machines[J].Systems Engineering-Theory&Practice,2007,27(4):160-164,176.
[5]Thissen U,van Brakel R,de Weijer A P.Using support vector machines for time series prediction[J].Chemometrics and Intelligent Laboratory Systems,2003,69(1):35-49.
[6]謝玲,李培峰,朱巧明.一種動態和自適應公交到站時間預測方法[J].計算機科學,2015,42(1):253-256.
XIE Ling,LI Peifeng,ZHU Qiaoming.Adapitive Method Of Predicting ArriveTime Of Buses onDynamic Traffic Infornation[J].Computer Science,2015,42(1):253-256.
[7]崔萌,張春雷.LIBSVM,LIBLINEAR,SVMmuticlass比較研究[J].電子技術,2015,42(6):1-5.
Cui Meng,Zhang Chunlei.The Comparison Study of LIBSVM,LIBLINER,SVMmulticlass[J].Electronic Technology,2015,42(6):1-5.
[8]CAI Xue-song.Collaborative prediction for bus arrival time based on CPS[J].Journal of Central South University,2014,21(3):1242-1248.
[9]SV Kumar,L Vanajakshi.Pattern identification based bus arrival time prediction[C]//Proceedings of the Institution of Civil Engineers-Transport,2014,167(3):194-203.
[10]O Cats,G Loutos.Real-Time Bus Arrival Information System:An Empirical Evaluation[J].Journal of Intelligent Transportation Systems,2016,20(2):138-151.
Coach Bus Arrival Time Prediction Based on SVM and GA
ZHANG Xin1JIANG Jiajia2LIU Jin3
(1.Shenzhen e-Traffic Technology Co.,Ltd,Shenzhen518040)(2.School of Information,Wuhan University of Technology,Wuhan430070)(3.School of Automation,Wuhan University of Technology,Wuhan430070)
Accurate coach arrival time prediction is one of the infrastructure services in intelligent urban transportation,which helps reducing information blind-spots and optimizating coach bus schedule.An arrival time prediction model for coach bus is proposed.It has 7 features including road factors,holidays,weather,road conditions,distance,time,scheduling information.And it change straditional feature road segments to road type factor,in order to make the model more suitable for coach.Besides,this paper uses genetic algorithm to find model's optimal parameters.The experimental results of coach bus from Shenzhen to Guangzhou show that the proposed model is more suitable to predict the coach arrival time with higher prediction accuracy.
intelligent transportation,coach bus travel time,SVM,GA
U491.1+4
U491.1+4
10.3969/j.issn.1672-9722.2017.06.011
2016年12月14日,
2017年1月22日
國家自然科學基金青年項目(編號:4140012165)資助。
張昕,男,博士,高級工程師,研究方向:智能交通系統、交通大數據分析。姜佳佳,女,碩士,研究方向:交通數據分析。劉進,男,博士,研究方向:云計算和大數據。