王寶國+李淵韜+胡彤宇+張軍+朱新山+楊正瓴
引言
道路上偶然發(fā)生的一些事件,譬如故障停車、貨物散落、渣土灑落等引起的交通擁堵以及交通事故等,這些統(tǒng)稱為交通事件。因為交通事件的發(fā)生帶有一定的隨機性,所以這些交通事件發(fā)生的時間和地點也都是不能預測的。
當事件確定已經發(fā)生過,此時進行的事件檢測就是交通事件檢測,它應該檢測出交通事件所發(fā)生的位置以及類型。我們可以通過一些人工方式進行檢測,例如緊急電話、巡邏車等,但考慮到人工方式檢測總體反應時間較長,交管部門無法及時了解道路交通狀況,容易引起交通堵塞,這對整個道路交通管理會帶來不便。自動事件檢測(AID)方法可以很好的幫助交通管理部門快速的處理交通事件或者交通異常。自動事件檢測(AID)能夠實時獲取交通場景的信息,快速檢測交通事件的發(fā)生,從而交通管理部門能夠隨時實施相應的管理手段以及交通控制,迅速處理已經發(fā)生的交通事件,這樣可以降低發(fā)生二次交通事故的概率,也保證了交通運行安全。
交通事件自動檢測算法可分為“間接檢測算法”和“直接檢測算法”兩大類。間接檢測算法應用廣泛,主要包括模式識別方法和統(tǒng)計方法。在模式識別方法中又以California算法系列和Mcmaster算法應用最廣。統(tǒng)計方法主要包括指數(shù)平滑法、時間序列算法和貝葉斯算法等。近年來隨著神經網絡的廣泛應用,出現(xiàn)了很多以神經網絡為基礎的事件檢測算法。
傳統(tǒng)的交通事件檢測算法存在著以下不足:檢測效率低、誤報率高等。同時由于算法的局限性很難應用在城市中比較復雜的道路上;上述有些智能算法由于閾值或臨界值的設置通常十分困難,具備經驗性,且其取值直接影響到算法的檢測效率和效果,因而這將成為這些算法的最大制約因素。傳統(tǒng)的小波分析提取故障特征的過程中受到小波基和分解層數(shù)選取的影響較大,不利于故障類型的識別。
為了克服上述方法的不足,充分考慮交通環(huán)境的復雜性和交通信號時間序列的非線性特點,本文在以上算法的基礎上提出了一種基于改進的BP神經網絡和小波奇異值的方法進行交通事件檢測。
1方法
1.1算法基本思想
在交通事件發(fā)生點,交通流參數(shù)將發(fā)生變化。通過車輛檢測器采集車流的相關信息,利用小波變換對輸入信號進行預處理并求解其奇異點,奇異點就是事件發(fā)生點,然后通過神經網絡對奇異點進行分類從而判斷事件類型。算法流程如圖1所示:
本方法的具體實施步驟如下。
(1)將獲取到的交通流進行小波分解,獲取小波細節(jié)系數(shù);
(2)通過相重構技術將小波系數(shù)向量重構成特征矩陣,并對其進行奇異值分解,獲取小波奇異值;
(3)將小波奇異值輸入到神經網絡進行學習訓練,進行交通事件類型識別。
1.2BP神經網絡的基本理論
在系統(tǒng)中搭建如圖2所示的具有反饋結構的三層BP神經網絡,包含輸入層、隱層和輸出層。由于具有至少一個S型函數(shù)隱層的網絡能夠逼近任何有理函數(shù),增加層數(shù)雖然可以進一步降低誤差,提高精度,但同時也使網絡復雜化,增加網絡權值的訓練時間。而精度的提高實際上也可以通過增加隱層中的神經元數(shù)目來獲得,且其訓練效果比增加層數(shù)更容易觀察和調整。所以本文最終選取三層神經網絡結構。
1.2.1BP網絡結構參數(shù)的確定
將采集到的數(shù)據(jù)通過小波分析進行奇異點檢測,提取高頻系數(shù)d作為神經網絡的輸入。網絡隱層神經元的個數(shù)n決定了整個網絡的學習速率和精度,隱層神經元個數(shù)n與輸入層神經元個數(shù)n的關系可以由Kolmogorov定理得到,如下式(1)所示。
結合式(1)和式(2)選取合適的n值進行網絡的訓練,如果不能滿足訓練要求,則在一定的范圍內調整n的取值,直至達到訓練要求。
1.2.2 BP網絡的學習過程
BP網絡的學習過程由正向傳播和反向傳播組成。在正向傳播過程中,輸入信號從輸入層經隱層神經元逐層處理,并傳向輸出層,每一層神經元的狀態(tài)只影響下一層神經元的狀態(tài),各神經元間的傳遞函數(shù)采用sigmoid函數(shù):
如果在輸出層不能得到期望的輸出,則轉向反向傳播,將輸出的誤差e按原來的連接通路返回。通過修改各層神經元之間的權值wij,和神經元的閾值H,使得誤差信號最小。得到合適的網絡權值和閾值之后,便可對新樣本進行非線性映射。
為克服BP網絡收斂速度慢和易陷入局部極小值的缺陷,本文采用附加動量法和自適應學習率。在網絡訓練的第n次循環(huán)中權值e,和閾值e,的改變量按帶動量項的最速下降法則進行,即:
自適應學習速率有利于縮短學習時間。對于一個特定的問題,要選擇適當?shù)膶W習速率不是一件容易的事情。訓練初期功效較好的學習速率,不見得適合后來的訓練。通常調節(jié)學習速率的準則是:檢查權值的修正值是否真的降低了誤差函數(shù),如果確實如此,則說明選取的學習速率值小了,可以對其增加一個量。若不是這樣,則產生了過調,那么就應該減少學習速率的值。下面給出了一種自適應學習速率的調整公式:
此方法可以保證網絡總是以網絡可以接受的最大的學習速率進行訓練。當一個較大的學習速率仍能夠使網絡穩(wěn)定學習,使其誤差繼續(xù)下降,則增加學習速率,使其以更大的學習速率進行學習,一旦學習速率調的過大,而不能保證誤差繼續(xù)減少,則減小學習速率,直到學習穩(wěn)定為止。
1.3交通流小波奇異值的獲取
小波分析在處理突變信號方面表現(xiàn)突出,有著很好的時頻特性和局部特性。小波分析在信號的高頻部分可以取得較好的時間分辨率,在信號的低頻部分可以獲得較好的頻率分辨率,從而能有效的從信號中提取信息。
1.3.1信號的小波變換和變換系數(shù)為連續(xù)小波變換。
在連續(xù)小波變換中考慮兩參數(shù)函數(shù)族:
在許多應用中,特別是在信號處理中,數(shù)據(jù)用有限數(shù)目的值表示,所以重要的是考慮連續(xù)小波變換的離散情形。endprint
信號中不規(guī)則地突變部分和奇異點往往包含比較重要的信息,它是信號重要特征之一。小波分析具有空間局部化性質,可有效地分析信號的奇異性。
奇異值具有良好的穩(wěn)定性、比例不變性、旋轉不變性和降維壓縮特性。將矩陣進行奇異值分解,再通過奇異值降維壓縮可獲得矩陣的有效秩,這里的有效秩為所保留的奇異值的個數(shù)。奇異值的這些特性能有效地反應矩陣的特征。
1.3.3提取交通流奇異值
小波奇異值的獲取可分為以下步驟:
(1)對原始交通流信號進行一定層數(shù)的小波分解;
(2)根據(jù)小波細節(jié)系數(shù)向量構成特征矩陣;這里特征矩陣的形成采用相重構技術。假設交通流信號為重構的吸引子矩陣為:
(3)對上一步中得到的特征矩陣進行奇異值分解,提取小波奇異值。
2實例驗證
2.1數(shù)據(jù)采集背景
在天津市一個快速路段全線每隔500-1000 m(本文選用1000 m)布設車輛檢測器,現(xiàn)場檢測各路段的交通流參數(shù)。由于采樣周期必須小于事件周期,數(shù)據(jù)采樣間隔選為60 s。交通流參數(shù)選用交通密度。在檢測路段的上游和下游各布設一套檢測器(如下圖3所示),將單位時間內上下游檢測器測量數(shù)據(jù)的差值作為系統(tǒng)檢測的輸入。
2.2事件檢測算法
一般情況下,當交通密度小于25輛/(km·車道)時,交通流較為順暢,其相應的車速大約為64km/h。當交通密度大于25輛/(km·車道)時,則從繁密交通向擁擠交通過渡,如果超過47輛/(km·車道),將出現(xiàn)嚴重擁擠。因此設定25輛/(km·車道)為事件判斷的閾值。
按交通密度大小將交通事件分為四類:正常交通(A)、交通擁擠(B)、擁擠加?。–)、擁擠減緩(D)。通常認為交通密度K≤25輛/(km·車道)的交通流量為順暢狀態(tài),K≥47/(km·車道)交通開始擁擠。四個狀態(tài)與交通密度的對應關系可用表1來反應:
2.3 MATLAB仿真
利用采集到的交通流數(shù)據(jù)進行MATLAB仿真,通過對上下游檢測器的模擬數(shù)據(jù)進行二尺度小波分解,得到二尺度高頻系數(shù),然后把這些數(shù)據(jù)輸入到神經網絡中進行訓練。本實驗共設20000個樣本,其中15000個用于訓練,5000個用于檢驗,正確識別4813個,即檢測率為96.26%。部分檢測結果如表2所示。
3結語
根據(jù)檢測結果可以看出,將小波分析與BP神經網絡結合能很好的檢測交通事件并給出交通事件的分類信息。用BP神經網絡對交通事件進行分類,為解決BP神經網絡收斂速度慢和易陷入局部極小值的問題,本文采用了附加動量法和自適應學習率調整法相結合的方法。此算法結合了小波分析在信號處理方面的優(yōu)越性,在算法中將信號的奇異點即交通事件發(fā)生點提取出來,取得了很好的效果??紤]到原始交通流數(shù)據(jù)集的不平衡性和數(shù)據(jù)源過于單一化應采用文獻介紹的基于多源數(shù)據(jù)的城市道路交通事件檢測和利用重采樣、基于特征加權的檢測方法,有望獲得更好的檢測效果。endprint