劉慶華,丁文濤,涂娟娟,方守恩
(1.同濟大學交通運輸工程學院,上海200092;2.江蘇科技大學計算機科學與工程學院,江蘇鎮(zhèn)江212003)
優(yōu)化BP_AdaBoost算法及其交通事件檢測
劉慶華1,2,丁文濤2,涂娟娟2,方守恩1
(1.同濟大學交通運輸工程學院,上海200092;2.江蘇科技大學計算機科學與工程學院,江蘇鎮(zhèn)江212003)
為了及時檢測出高速公路上發(fā)生的交通事件,減少由于交通事件帶來的損失,提出了一種基于遺傳優(yōu)化的BP_AdaBoost算法用于交通事件檢測.提取高速公路上下游的車流量、車速與占有率作為BP(back propagation)神經(jīng)網(wǎng)絡的輸入值,利用遺傳算法全局搜索的性能優(yōu)化BP神經(jīng)網(wǎng)絡初始連接權值和輸出閾值,再通過多個新的BP神經(jīng)網(wǎng)絡弱分類器構建成AdaBoost強分類器,設計基于遺傳算法優(yōu)化BP_AdaBoost算法的交通事件分類器.以在東京高速公路采集的真實數(shù)據(jù)進行性能驗證,試驗結果表明,該算法可以提高BP弱分類器的性能,檢測率達到97%,誤報率降至3.34%,適用于高速公路交通事件的檢測.
交通事件;遺傳算法;神經(jīng)網(wǎng)絡;BP_AdaBoost算法;東京高速公路
交通事件是指非周期發(fā)生的且使某段道路通行能力減弱的事件[1],包括故障停車、貨物掉落、交通事故、道路修護和天氣影響等.由于高速公路車輛運行速度較快,而事件發(fā)生的時間和地點是隨機的,無法預知,故高速公路發(fā)生交通事件時,如果不及時排除,容易造成交通擁堵、財產(chǎn)損失和人身傷害.因此,對于高速公路交通事件的有效檢測對保證交通安全、提高運輸效率具有重大的經(jīng)濟效益和社會效益,同時,也是一個國家的智能交通系統(tǒng)(intelligent transport system,ITS)的一個重要研究課題.
迄今為止,針對高速公路交通流的不確定性和非線性,國內(nèi)外已經(jīng)開發(fā)了多種交通事件自動檢測算法(automatic incident detection,AID),如國外的Cheu等[2]將支持向量機模型應用于高速公路事件檢測中,進行了建模和仿真研究;Jeong等[3]運用離散小波變換對交通流數(shù)據(jù)進行處理,與設定的閾值進行比較,實現(xiàn)交通事件的檢測;在國內(nèi),張輪等[4]設計樸素貝葉斯分類的高速公路交通事件檢測算法并進行了仿真試驗;牛世峰等[5]提出縱向時間序列算法,以提高交通事件檢測算法的效率.
目前,BP(back propagation)神經(jīng)網(wǎng)絡在交通事件檢測系統(tǒng)中也廣泛應用.童飛[6]運用BP神經(jīng)網(wǎng)絡實現(xiàn)水上交通事件的檢測;陳君等[7]構建BP神經(jīng)網(wǎng)絡評價模型運用于高速公路交通安全診斷;Yu等[8]使用環(huán)路檢測數(shù)據(jù)和浮動車數(shù)據(jù)通過BP神經(jīng)網(wǎng)絡以實現(xiàn)交通事件的檢測.BP神經(jīng)網(wǎng)絡具有超強適應能力和訓練能力,但存在的缺點是權值和閾值的合理化設置較難,訓練和記憶具有不穩(wěn)定性.
針對BP神經(jīng)網(wǎng)絡的性能受到權值和閾值影響的缺點,遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡算法被提出,并已在圖像分類[9]、參數(shù)優(yōu)化[10]和故障診斷[11]成熟運用.本文引入遺傳算法[12]優(yōu)化BP神經(jīng)網(wǎng)絡的初始連接權值和輸出閾值,通過該方法得到最佳權值和閾值.為了加強分類效果,再通過多個優(yōu)化后的BP神經(jīng)網(wǎng)絡弱分類器組建成AdaBoost強分類器,設計基于遺傳算法優(yōu)化BP_AdaBoost算法的交通事件分類器.
1.1 傳統(tǒng)的BP神經(jīng)網(wǎng)絡
BP神經(jīng)網(wǎng)絡是一種單向傳播的多層前饋型神經(jīng)網(wǎng)絡,它具有處理非線性復雜系統(tǒng)問題的能力[13].BP網(wǎng)絡由輸入層、1個或多個隱層(中間層)和輸出層組成,圖1為隱層1層的BP網(wǎng)絡模型結構圖.
圖1 隱層1層的BP網(wǎng)絡模型結構Fig.1 BP structure with one hidden layer
當把訓練樣本提供給網(wǎng)絡后,神經(jīng)元的激活值從輸入層經(jīng)過隱層向輸出層傳播,在輸出層的神經(jīng)元獲得網(wǎng)絡的輸出.在此訓練過程中,通過修正網(wǎng)絡的連接權值來減少目標輸出與實際的誤差,最終達到期望的結果.標準的BP網(wǎng)絡算法采用均方誤差作為表示網(wǎng)絡性能的函數(shù),網(wǎng)絡的學習過程就是使式(1)減小到可接受的程度.
式中:MSE為網(wǎng)絡均方誤差;I為節(jié)點號;m為輸出節(jié)點數(shù);tI為網(wǎng)絡的期望輸出值;yI為網(wǎng)絡的實際輸出值.
1.2 遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡
BP神經(jīng)網(wǎng)絡的權值和閾值一般是通過隨機初始化為[-0.5,0.5]區(qū)間的隨機數(shù),這個初始化參數(shù)對網(wǎng)絡性能影響很大,但是又無法準確獲得,因此,采用遺傳算法優(yōu)化初始權值和閾值.遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡的要素包括種群初始化、適應度函數(shù)、選擇算子、交叉算子和變異算子.BP神經(jīng)網(wǎng)絡的結構已知,權值和閾值的個數(shù)就已知了,種群中的每一個個體都包含了一個網(wǎng)絡所有權值和閾值,個體通過適應度函數(shù)計算個體適應度值,再通過選擇、交叉和變異找到最優(yōu)適應度對應的個體,接著,把最優(yōu)個體賦值給網(wǎng)絡的權值和閾值.遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡算法過程如下.
(1)本文個體編碼方法為實數(shù)編碼,每個個體均為一個實數(shù)串,個體包含了BP神經(jīng)網(wǎng)絡全部權值和閾值,在網(wǎng)絡結構已知的情況下,就可以構成一個結構、權值、閾值確定的神經(jīng)網(wǎng)絡.
(2)根據(jù)個體得到BP神經(jīng)網(wǎng)絡的初始權值和閾值,用訓練樣本訓練BP神經(jīng)網(wǎng)絡后預測系統(tǒng)輸出,把預測輸出和期望輸出之間的誤差絕對值和作為個體適應度值F,計算公式為
式中:n為網(wǎng)絡輸出節(jié)點數(shù);yi為BP神經(jīng)網(wǎng)絡第i個節(jié)點的期望輸出;oi為第i個節(jié)點的預測輸出;Q為系數(shù).
(3)本文中選擇操作的實現(xiàn)方法使用輪盤賭法,即基于適應度比例的選擇策略,每個節(jié)點i的選擇概率pi為
式中:Fi為節(jié)點i的適應度值,由于適應度值越小越好,所以在個體選擇前對適應度值求倒數(shù);R為系數(shù);N為種群個體數(shù)目.
(4)交叉操作方法采用實數(shù)交叉法,第s個染色體as和第l個染色體al在j位的交叉操作方法為
式中,b是0,[ ]1間的隨機數(shù).
(5)選取第i個個體的第j個基因alj進行變異,變異操作方法如下:
式中:amax為基因aij的上界;amin為基因aij的下界;r2為隨機數(shù);g為當前迭代次數(shù);Gmax是最大進化次數(shù);r為隨機數(shù),r∈[0,1].
1.3 改進的BP_AdaBoost算法
AdaBoost算法的思想是合并多個“弱”分類器的輸出以產(chǎn)生誤差小的期望結果.本文為了增強分類效果,把通過遺傳算法優(yōu)化之后的BP神經(jīng)網(wǎng)絡作為新的弱分類器,通過AdaBoost算法構建成BP_AdaBoost強分類器.首先,從樣本空間中隨機選取L組交通流數(shù)據(jù)作為訓練樣本,初始化訓練樣本的權重,按下式計算:
再用訓練樣本數(shù)據(jù)訓練被遺傳算法優(yōu)化之后的BP神經(jīng)網(wǎng)絡,當訓練第k(k∈1,2,…,M)個BP神經(jīng)網(wǎng)絡弱分類器時,得到n組數(shù)據(jù)的預測誤差和為
式中:gk(r)為網(wǎng)絡的期望輸出值;yr為網(wǎng)絡的實際輸出值.
進而根據(jù)n組訓練樣本的預測誤差和ek計算第k(k∈1,2,…,M)個BP神經(jīng)網(wǎng)絡弱分類器的權重如下:
接著,根據(jù)權重ak,調(diào)整下一輪訓練樣本的權重,其公式為
式中:Bk為歸一化因子;Dk(i)為經(jīng)過k-1次訓練調(diào)整后的權重.
最后,建立強分類函數(shù).訓練T次后,得到由T組弱分類函數(shù)組合而成的強分類函數(shù),計算式為
式中:fk(x)為第k個弱分類函數(shù);x為測試數(shù)據(jù).
改進后算法的流程圖如圖2所示,算法采用在東京高速公路采集的真實數(shù)據(jù)來進行驗證試驗,算法所得的結果通過MATLAB軟件仿真得到.
2.1 參數(shù)選擇
本文的交通流數(shù)據(jù)來源于如圖3所示的日本首都東京高速公路3號澀谷線,第1車道上檢測器在42號與43號之間的路段,路段長1 000m,數(shù)據(jù)包括車流量(Q)、車速(V)和占有率(OCC),采樣周期為1 min,兩檢測器之間的距離為1km,時間是2010年12月1日至12月31日.
圖2 遺傳算法優(yōu)化BP_AdaBoost算法的算法流程Fig.2 The algorithm progress of genetic algorithm optimized BP_AdaBoost algorithm
圖3 東京首都高速公路網(wǎng)絡Fig.3 The Tokyo metropolitan expressway network
本文對其數(shù)據(jù)進行整理分析,分別對事件發(fā)生前后上下游的Q,V,OCC進行試驗分析.如圖4a所示,事件發(fā)生在80min時刻左右,在80min之前,由于上下游未發(fā)生交通擁堵,交通保持暢通,車速保持在70~90km·h-1之間波動,上下游處于相對穩(wěn)定狀態(tài).而在80min時刻以后,由于交通事件的發(fā)送,上游車輛產(chǎn)生交通擁擠,車輛運行受阻,故車速迅速減小到15km·h-1左右;下游車輛由于未受到交通事件的干擾,故車速基本維持穩(wěn)定變化.因此,上下游車速有較明顯的變化差異.
交通事件發(fā)生前,由于交通處于正常運行狀態(tài),上下游占有率均在5%左右,故檢測器監(jiān)測到的上下游占有率處于動態(tài)平衡狀態(tài).而在80min時刻發(fā)生了交通事件,導致上游交通發(fā)生堵塞,故占有率驟增到35%左右;由于下游未受到交通事件的影響,同時來源于上游的車輛數(shù)急劇減少,因此,下游占有率出現(xiàn)一定程度的降低.具體直觀顯示如圖4b所示.
如圖4c所示,事件發(fā)生前,上下游的車流量分布處于相對平衡狀態(tài).而事件發(fā)生后,上下游車流量有下降趨勢,并且兩者的變化趨勢大體一致.
通過對圖4a至圖4c的分析,事件發(fā)生前,Q,V ,OCC都會處于動態(tài)平衡狀態(tài);而事件發(fā)生以后,上下游的這3個交通流參數(shù)均會發(fā)生明顯的變化.
圖4 車速、占有率及流量變化Fig.4 Speed of vehicle and occupancy rate and traffic volume
2.2 模型建立
本文選取其中有事件發(fā)生和無事件發(fā)生的共2 000組數(shù)據(jù)(包含事件數(shù)據(jù)75例),其中1 800數(shù)據(jù)作為訓練樣本數(shù)據(jù),200組數(shù)據(jù)作為測試數(shù)據(jù).部分樣本數(shù)據(jù)如表1所示.
表1 部分交通流訓練樣本數(shù)據(jù)Tab.1 Part of the traffic flow sampled data
由表1可知,交通流參數(shù)值變化范圍較大,不在同一數(shù)量級,因此,有必要將原始交通流數(shù)據(jù)樣本進行歸一化處理,從而減小數(shù)值差異帶來的影響.
本文構建的BP神經(jīng)網(wǎng)絡有6個輸入、2個輸出,6個輸入分別為上游的Q,V,OCC,下游的Q,V,OCC,2個輸出代表事件發(fā)生情況,輸出為{1,0}表示有事件發(fā)生,輸出為{0,1}表示無事件發(fā)生.所以,設置BP神經(jīng)網(wǎng)絡的網(wǎng)絡結構為6 13 2,即輸入層有6個結點、隱含層有13個節(jié)點、輸出層有2個結點.整個BP神經(jīng)網(wǎng)絡結構一共有6×13+13×2=104個權值及13+2=15個閾值,由此可得,遺傳算法優(yōu)化參數(shù)的個數(shù)為104+15=119.
BP網(wǎng)絡隱層神經(jīng)元傳遞函數(shù)采用tansig函數(shù),輸出層采用purelin函數(shù).訓練次數(shù)為50步,訓練目標為0.001.
在遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡的程序中,遺傳算法的參數(shù)設置如下:進化代數(shù)為10次,種群規(guī)模為10,交叉概率為0.4,變異概率為0.2.
在優(yōu)化的BP_AdaBoost算法中,采用10個BP弱分類器組成的強分類器對數(shù)據(jù)樣本進行檢測,其中誤差閾值設置為0.1.
2.3 結果分析
在本文選取的100組測試數(shù)據(jù)中,結果只有3組與期望值不一樣,其余97組與期望值輸出結果相同,說明本文提出的優(yōu)化的BP_AdaBoost算法的檢測率高達97.0%.表2是經(jīng)過同樣的訓練樣本訓練之后BP_AdaBoost算法優(yōu)化前后的結果比較.
由表2可見,BP神經(jīng)網(wǎng)絡算法的檢測率只有78.0%,BP_AdaBoost算法的檢測率為89.8%,而經(jīng)過遺傳算法優(yōu)化的BP_AdaBoost算法的檢測率高達97.0%;在誤報率上,3種算法的差距也相當明顯.此外,將本文提出的方法與LVQ(learning vector quantization)神經(jīng)網(wǎng)絡[14]和小波分析[15]進行對比試驗,對比結果如表3所示.表3可見,本文提出的方法比其他2種方法檢測率高、誤報率低,說明本文方法較好.
表2 優(yōu)化前后的BP_AdaBoost算法試驗結果比較Tab.2 Comparison of BP_AdaBoost algorithm experimental results before and after optimization
表3 3種不同交通事件檢測算法性能比較Tab.3 Three different traffic incident detectionalgorithm performance comparison
提出了優(yōu)化的BP_AdaBoost算法的高速公路事件檢測方法,根據(jù)遺傳算法具有快速搜索最優(yōu)解的特點,來優(yōu)化BP神經(jīng)網(wǎng)絡初始連接權值和輸出閾值,用樣本數(shù)據(jù)訓練新的BP神經(jīng)網(wǎng)絡,再通過多個新的BP神經(jīng)網(wǎng)絡弱分類器構建成AdaBoost強分類器,并采用東京高速公路的真實交通流數(shù)據(jù)進行性能驗證.試驗結果表明,采用遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡,減小了權值和閾值不確定性對BP神經(jīng)網(wǎng)絡性能的影響.與改進后的算法與原算法相比提高了檢測率,降低了誤報率,具有更好的檢測性能,適合用于高速公路的交通事件檢測.
[1] Zhang K,Taylor M A P.Towards universal freeway incident detection algorithms[J].Transportation Research Part C:Emerging Technologies,2006,14(2):68.
[2] Cheu R L,Srinivasan D,Teh E T.Support vector machine models for freeway incident detection[C]//Intelligent Transportation Systems,2003.Singapore:IEEE,2003:238-243.
[3] Jeong Y S,Castro-Neto M,Jeong M K,et al.A waveletbased freeway incident detection algorithm with adapting threshold parameters[J].Transportation Research Part C:Emerging Technologies,2011,19(1):1.
[4] 張輪,楊文臣,劉拓,等.基于樸素貝葉斯分類的高速公路交通事件檢測[J].同濟大學學報:自然科學版,2014,42(4):558. ZHANG Lun,YANG wencheng,LIU Tuo,et al.Freeway traffic incident detection based on naive Bayesian classification[J].Journal of Tongji University:Natural Science,2014,42(4):558.
[5] 牛世峰,姜桂艷,李紅偉,等.基于縱向時間序列的快速路交通事件檢測算法[J].哈爾濱工業(yè)大學學報,2011,43(2):144.NIU Shifeng,JIANG guiyan,LI hongwei,et al.Freeway traffic incident detection algorithm based on time sequence of longitudinal[J].Journal of Harbin Institute of Technology,2011,43(2):144.
[6] 童飛.基于BP神經(jīng)網(wǎng)絡的水上交通事故預測及MATLAB實現(xiàn)[D].武漢:武漢理工大學,2005.TONG Fei.BP neural network prediction and MATLAB on water traffic accident based on the realization of[D].Wuhan:Wuhan University of Technology,2005.
[7] 陳君,李聰穎,丁光明.基于BP神經(jīng)網(wǎng)絡的高速公路交通安全評價[J].同濟大學學報:自然科學版,2008,36(7):927.CHEN Jun,LI Congying,DING Guangming.Traffic safety assessment of freeway based on BP neural network[J].Journal of Tongji University:Natural Science,2008,36(7):927.
[8] Yu L,Yu L,Wang J,et al.Back-propagation neural network for traffic incident detection based on fusion of loop detector and probe vehicle data[C]//Natural Computation,2008.ICNC'08.Fourth International Conference on Natural Computation.Jinan:IEEE,2008:116-120.
[9] Liu Z,Liu A,Wang C,et al.Evolving neural network using real coded genetic algorithm(GA)for multispectral image classification[J].Future Generation Computer Systems,2004,20:1119.
[10] Shen C,Wang L,Li Q.Optimization of injection molding process parameters using combination of artificial neural network and genetic algorithm method[J].Journal of Materials Processing Technology,2007,183:412.
[11] 段侯峰.基于遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡的變壓器故障診斷[D].北京:北京交通大學,2008.DUAN Houfeng.Genetic algorithm optimization of transformer fault diagnosis based on BP neural network[D].Beijing:Beijing Jiaotong University transformer fault diagnosis,2008.
[12] Ding S,Su C,Yu J.An optimizing BP neural network algorithm based on genetic algorithm[J].Artificial Intelligence Review,2011,36:153.
[13] Li Z,Lei Q,Kouying X,et al.A novel BP neural network model for traffic prediction of next generation network[C]//Natural Computation,Icnc 09,International Conference on Natural Computation.Tianjin:IEEE,2009:32-38.
[14] 朱紅斌.LVQ神經(jīng)網(wǎng)絡在交通事件檢測中的應用[J].計算機工程與應用,2009,44(34):213.ZHU Hongbin.Application of neural network in traffic incident detection[J].Computer Engineering and Application,2009,44(34):213.
[15] 彭宇.基于小波分析的高速公路事件檢測算法[J].湖南交通科技,2011,37(3):123.PENG Yu.Freeway incident detection method based on wavelet analysis[J].Hunan Traffic Science and Technology,2011,37(3):123.
Improved BP_AdaBoost Algorithm and its Application in Traffic Incident Detection
LIU Qinghua1,2,DING Wentao2,TU Juanjuan2,F(xiàn)ANG Shouen1
(1.School of Transportation Engineering,Tongji University,Shanghai 201804,China;2.College of Computer Science and Engineering,Jiangsu University of Science and Technology,Zhenjiang 212003,China)
In order to detect the traffic incidents occurred on highway and reduce the loss brought by traffic incident,this paper presents an improved BP_AdaBoost algorithm based on genetic algorithm for traffic incident detection.The inputs of BP(Back Propagation)neural network value are vehicle quantity,velocity and occupancy in upstream and downstream of highway.Genetic algorithm is used for each BP neural network classification model for optimizing weights and thresholds due to its performance of global searching.The optimized BP neural network model is applied as a new weak classifier,then through the AdaBoost algorithm,many of these new weak classifier is composed as strong classifier model.This improved algorithm is validated with real data from Tokyo expressway ultra-sonic sensors.The experimental results show that the algorithm can improve the performance of BP weak classifier.The detection rate of improved BP_AdaBoost algorithm is up to 97%,and false alarm rate is lower to 3.34%.Experiment indicate that the algorithm is suitable for detecting highway traffic incidents.
traffic incident;genetic algorithms;neural network;BP_AdaBoost algorithm;Tokyo expressway
U491.3
A
0253-374X(2015)12-1829-05
10.11908/j.issn.0253-374x.2015.12.010
2015 01 29
國家“八六三”高技術研究發(fā)展計劃(2013AA12A206);國家自然科學基金(51008143);江蘇省高校自然科學基金(14KJD520002)
劉慶華(1977—),男,副教授,工學博士,主要研究方向為智能交通與道路安全.E-mail:giant_liu@163.com
方守恩(1961—),男,教授,博士生導師,工學博士,主要研究方向為道路交通安全、道路規(guī)劃與計算機輔助設計等.
E-mail:fangsek@#edu.cn