馬瑩瑩,張子豪,吳嘉彬
(華南理工大學 土木與交通學院, 廣東 廣州510641)
城市道路平面交叉口是機動車、行人匯聚的區域,是城市道路交通網絡的“咽喉”,同時也是交通沖突和交通事故的易發點。事故數據顯示,我國發生在平面交叉口的交通事故約占道路交通事故總數的30%,聯邦德國城市交通事故發生在平面交叉口約占60%~80%,美國發生在平面交叉口的事故數約占總事故的36%[1]。根據2015年世界衛生組織道路安全全球現狀報告,全世界每年約有125萬人死于道路交通事故,目前的趨勢表明,若不采取措施,到2030年道路交通事故將上升為全球第五大死因。交叉口內車輛運行速度是車輛在交叉口內運行的重要交通特征,如果能夠對交叉口內車速進行精確預測,對交叉口安全管理以及自動駕駛技術的發展都具有重要的支持作用。目前,關于交叉口內車速的研究主要分為兩個方面,分別是對交叉口內車速的控制研究和預測研究。
在交叉口內車速控制研究方面,主要包括平面交叉口車速的控制方式和車聯網環境下交叉口內車速引導控制,施曉芬[2]通過使用GPS記錄車輛駛近交叉口及通過交叉口時的速度,并根據車輛在交叉口之前的行駛狀態的不同,劃分為暢行通行、停線通行和排隊等待3種情況,總結了不同情況下車輛在交叉口內速度的變化規律;M. NEKOUI等[3]利用實地模擬的方式驗證了車路協同環境下車速誘導的方式,可有效緩解不同種情況下車輛的緊急避讓問題;M. A. S. KAMAL等[4]研究了車聯網環境下多車道高效通行控制方法,并提出了針對部分車聯網環境下的車速誘導控制;李鵬凱等[5-6]提出了面向個體車輛的車速引導機制與模型,并進行了仿真驗證。
在車速預測研究方面,主要包括道路運行車速預測和交叉口內車速預測。樓挺[7]利用遺傳算法改進的BP神經網絡來預測道路運行車速,結果表明預測精度有所提高;王棟等[8]通過采集29個連續路段連續車速作為樣本,利用BP神經網絡對山區高速公路車速進行預測,預測精度高達93.3%;張良力等[9]利用車輛進入交叉口前的速度時間序列來預測車輛進入交叉口之后若干秒的速度值,從而來評估交叉口車輛碰撞風險;祝賀[10]以交叉口區域中車輛在直線路段的速度時序為模型,利用ARMA模型來完成對交叉口中心區域內車輛速度值的預測。
相比于傳統的預測模型,神經網絡具有更強的學習和適應能力,能夠從眾多影響因素中獲取內在規律,具有很強的擬合非線性關系的能力[10]。徐嘉俊[11]將居民出行行為的顯著影響因素作為模型的輸入,利用遺傳算法改進的BP神經網絡來預測居民出行方式、次數和時間;顏秉洋等[12]通過交通流的周期性先驗知識和殘差數據訓練ANFIS混合模型,進而得到交通流預測值。
綜上所述,目前國內外在車速引導控制和道路運行車速預測方面已經做了比較多的研究,但在交叉口內車速預測方面的研究較少,并且以往對交叉口內車速預測是利用車輛進入交叉口之前速度的時間序列,來預測車輛的瞬時速度,并不能反應車輛通過交叉口的快慢程度,預測精度也不夠高?;诖?,綜合考慮了影響車輛在交叉口內運行速度的因素,將車輛類型、車輛交通運行狀態和運行環境等因素作為模型的輸入,提出了一種基于神經網絡的無信號交叉口內車輛平均速度的預測模型,并分別對深度神經網絡(deep neural network, DNN)、BP神經網絡、GA-BP神經網絡和自適應模糊推理系統(adaptive neuro-fuzzy inference system, ANFIS)進行測試和預測性能比較分析。
數據來自于廣州市建設路-建設大道十字型交叉口,采用視頻錄像再進行視頻識別與特征提取的方式收集數據。觀測視頻是在工作日、天氣狀況良好的情況下錄制的,攝像頭安裝點為中環廣場5樓,觀測階段為非高峰期,沒有交通事故等特殊事件發生,該路口上游路段的限速為40 km/h。如圖1,該交叉口的南北向道路是從北到南的單向雙車道;東西向道路為雙向通行道路,西進口有1條進口道和1條出口道,東進口有2條進口道和1條出口道。

圖1 廣州市建設路-建設大道交叉口Fig. 1 Intersection of Jianshe road-Jianshe avenue in Guangzhou
研究的對象是車輛通過無信號控制交叉口中心區域的平均速度,通過主成分分析法,筆者初步篩選了以下幾個影響因素:車輛類型、車輛通過交叉口的方式、車輛進入交叉口中心區域之前的速度、沖突方向車輛情況、沖突方向行人情況、駕駛員性別。
1.2.1 車輛類型
通過觀察可知,所拍攝通過交叉口的車輛類型主要包括:小型車(小于7座)、中型車(8~17座)、大型車(17座以上),在拍攝視頻中,大型車主要是公交車。
1.2.2 車輛通過交叉口的方式
車輛通過交叉口的方式對進入交叉口中心區域的速度有很大的影響,按照通行方式的不同主要劃分為:直行、左轉、右轉。
1.2.3 沖突方向車輛、行人情況
無論是直行、左轉、右轉的車輛,在交叉口內都會遇到沖突方向的車輛和行人,并且行駛速度會因此受到很大的影響,根據影響程度,主要分為3種情況:沖突方向無車輛(行人)、沖突方向有單個車輛(行人)、沖突方向有多個車輛(行人)。
1.2.4 車輛進入交叉口中心區域之前的速度
圖2顯示了車輛在交叉口區域內的方位,在文中,將圖2中黃色矩形的區域定義為交叉口中心區域。車輛A在進入交叉口中心區域之前,駕駛員能觀察到沖突方向是否有車輛和行人,并會做出加速或減速的判斷,因此車輛在交叉口中心區域的速度與它之前的速度有很大的關系。如圖2,車輛A在進入交叉口之前會駛過一段人行橫道,將車輛經過這段人行橫道的平均速度定義為車輛進入交叉口中心區域之前的速度(v1),且v1=lbc/tbc,式中lbc和tbc分別代表車輛通過人行橫道的路程和時間。

圖2 交叉口區域車輛方位Fig. 2 Vehicle orientation in the intersection area
1.2.5 車輛在交叉口中心區域內的速度
把車輛在黃色長方形區域內運行的平均速度定義為車輛在交叉口中心區域內的速度(v2),且v2=lcd/tcd,其中lcd和tcd分別代表車輛通過交叉口中心區域的路程和時間。
通過觀察拍攝的視頻,可以直接獲取車輛的類型、駕駛員性別和通過交叉口的方式,對于沖突方向的車輛、行人情況的獲取,主要是根據車輛在通過人行橫道的過程中,與該車輛行駛軌跡有沖突的方向是否有車輛、行人。而車輛進入交叉口中心區域之前的速度和在交叉口中心區域內的平均速度,采用基于視頻的軌跡追蹤分析軟件tracker來獲取,該軟件可通過手動或自動的方式追蹤研究對象的位置,實現對速度和加速度的覆蓋和數據追蹤。圖3為采用tracker軟件分析車輛運行軌跡的界面圖。

圖3 車輛運行軌跡分析Fig. 3 Vehicle trajectory analysis
通過把所拍攝的視頻導入到tracker中,設置好坐標軸和度量尺,采用手動的方式追蹤研究車輛的位置,即可獲得車輛在交叉口的運行軌跡。根據車輛運動軌跡圖,可以計算出lbc和lcd,進而可以求出v1和v2,筆者總共提取了700份有效數據用于模型的訓練和預測,為了列舉所獲取的數據,此處將v1和v2分為3類進行統計:<20 km/h,20~30 km/h,>30 km/h,表1匯總了在不同影響因素下車輛在交叉口中心區域內各類速度值的樣本量。
2.1.1 影響因素分析
對于影響無信號控制交叉口內車速的因素,初步考慮了車輛類型、車輛通過交叉口的方式、車輛進入交叉口中心區域之前的速度、沖突方向車輛情況、沖突方向行人情況、駕駛員性別。為了進一步確定這些因素是否為顯著影響因素,利用SPSS軟件進行Spearman相關系數分析,一般的相關性檢驗只要Sig值小于0.05,則認為兩者具有顯著相關性。根據表2的相關性分析結果,只有駕駛員性別這一因素的Sig值明顯高于0.05,因此剔除該因素,其他5個影響因素的Sig值都小于0.05,即都為顯著影響因素。

表1 不同影響因素下各類車速值的樣本量Table 1 Sample size of various vehicle speed values under differentinfluencing factors 個

表2 交叉口內車速影響因素SPSS相關性分析結果Table 2 SPSS correlation analysis results of influencing factors of vehicle speed in intersection
2.1.2 模型輸入及輸出變量標定
建立的基于神經網絡的預測模型的輸入層神經元個數為5,由5個顯著影響因素構成,輸出層神經元個數為1,為車輛通過交叉口中心區域的平均速度。輸入變量及數值標定如表3。

表3 輸入變量標定Table 3 Input variables calibration
由于數據對網絡模型的訓練和預測效果有直接的影響,因此在進行訓練之前要對數據集歸一化處理到一個相同的范圍內,從而使得所有數據處于相同的地位,避免輸入輸出數據數量級差別較大而造成網絡預測誤差較大。筆者采用最大最小值法將數據集歸一化到[0,1]之間,函數形式為:
(1)
式中:xk為預處理之前的數據;xk*為預處理之后的數據;xmin為數據集中的最小值;xmax為數據集中的最大值。
通過tracker軟件共提取了700份有效數據,并利用sklearn庫的train_test_split函數對有效數據進行分割,80%的樣本用于訓練模型,10%的樣本用于驗證模型,剩余10%的樣本為測試數據集。其中,BP神經網絡、GA-BP神經網絡、ANFIS預測模型是利用MATLAB的神經網絡工具箱進行模型訓練,訓練函數采用trainlm函數,目標誤差設置為0.01,迭代次數設置為2 000次。深度神經網絡預測模型是在python和Tensorflow計算條件下對模型進行訓練,訓練算法為隨機梯度下降法,學習率設置為0.1,丟棄法值為0.5,迭代次數為2 000次。
為了對比各個模型的預測效果,筆者使用的性能評價指標包括:均方根誤差(root mean square error, RMSE)、平均絕對誤差(mean absolute error, MAE)、平均百分比誤差(absolute percentage error, APE)、nash-sutcliffe效率系數(NS)。其中,RMSE反映了預測數據和觀測數據之間差異的樣本標準差;MAE是用于評估預測結果與最終結果接近程度的度量;APE反映的是預測結果的誤差程度,這3個性能指標衡量參數越小,表明模型的預測性能越好,而NS系數是通過將測量數據的方差與模型的擬合優度相關聯來顯示模型的效率,該值越大,證明模型的預測性能更好,具體公式如式(2)~式(5):
(2)
(3)
(4)
(5)

DNN是屬于人工神經網絡ANN中的一種,它也是前饋神經網絡,結構與多層感知器相似,相比于BP神經網絡,它能夠解決在隱藏層增多時,產生的過度擬合問題,有更強的學習和預測能力。筆者構建的基于深度神經網絡的無信號控制交叉口內車速預測模型的隱藏層個數為3,具體結構如圖4。

圖4 深度神經網絡結構Fig. 4 Structure of deep neural network model
在圖4中,輸入層神經元個數為5,x1,…,x5對應為影響交叉口內車速的顯著因素;Wi為輸出層和隱藏層對應的權重矩陣,即線性系數矩陣,bi為對應第i層隱藏層的偏置向量,ci為對應每一層的輸出向量,該模型所采用的激活函數為Sigmoid函數,即:
(6)
因此,每個隱藏層的輸出可以表示為:
c1=σh1(W1X+b1)
(7)
c2=σh2(W2c1+b2)
(8)
c3=σh3(W3c2+b3)
(9)
文中的DNN前向傳播算法就是利用若干個權重系數矩陣Wi,偏置向量bi和輸入變量X進行一系列的線性運算和激活運算,從輸入層開始,一層層的向后計算,一直運算到輸出層,得出輸出結果值,最終輸出的結果y為預測的車輛通過交叉口中心區域的速度值。
BP神經網絡預測模型,具體結構如圖5。

圖5 BP神經網絡結構Fig. 5 Structure of BP neural network
該模型的輸入輸出關系可以表達為:
(10)

在確定了輸入層和輸出層的節點數之后,還需要選擇合適的隱藏層的節點數,BP神經網絡模型的預測效率與隱藏層節點數有很大的關系。目前,對于BP神經網絡模型的隱藏層節點數的確定沒有統一的方法,只能通過經驗公式和多次實驗來確定,本文參考的經驗公式為:
(11)
式中:a為輸入層節點數;d為輸出層節點數;n為[1,10]之間的常數;L為隱藏層節點數。根據式(11)可以計算出隱藏層神經元個數為[4,13],通過對樣本的反復訓練并比較得出:隱藏層節點數為6時,該模型的訓練效果最佳,均方根誤差最小。
建立的GA-BP神經網絡預測模型是在BP神經網絡的基礎上,對網絡的權重和閾值進行改善。由于GA是模仿生物機制的隨機全局搜索和優化方法,比較容易與其他算法相結合,使用遺傳算法對初始網絡的權重和閾值進行優化,可以改進BP神經網絡的預測效果。其核心思想是:通過對初始值進行編碼,用個體代表初始網絡的權重和閾值,初始化網絡的預測誤差作為個體值的適應度,再通過選擇、交叉、變異的步驟來獲得最優的權重和閾值,具體過程如圖6。

圖6 GA優化BP神經網絡流程Fig. 6 GA optimization BP neural network flow chart
第1步:編碼種群初始化。GA優化BP神經網絡訓練時,可以使用兩種編碼方式:二進制編碼、實數編碼,采用的是實數編碼。編碼的實數串包括:輸入層與隱藏層連接的權重和閾值、隱藏層與輸出層連接的權重和閾值。建立的BP神經網絡的層數為3,其中輸入層節點數為5,輸出層節點數為1,隱藏層節點數為6,因此編碼的長度為5×6+6×1+6+1=43。
第2步:確定評價函數。BP神經網絡預測模型的評價標準有RMSE、MAE、APE和NS,采用RMSE作為評價函數,當該評價函數達到最小值時,表明網絡的權重和閾值得到了優化。
第3步:執行選擇、交叉、變異運算。
第4步:用遺傳算法優化得到的最優個體作為BP神經網絡的初始權重和閾值。
第5步:執行BP神經網絡訓練過程,完成對車輛通過交叉口中心區域的平均速度的預測。
自適應模糊推理系統也稱為基于神經網絡的自適應模糊推理系統,簡稱ANFIS,它是通過自適應的混合算法,在輸入的數據中提取對應的模糊規則,從而來改善它的參數,最終獲得最優解。建立的ANFIS預測模型的結構如圖7。

圖7 ANFIS模型結構Fig. 7 ANFIS model structure

(12)
(13)
建立的ANFIS預測模型總共包含5層,第1層為模糊化層,它的作用是將輸入的數據x1,…,x5,通過隸屬函數輸出為對應模糊集的隸屬度,第2層主要是把前件部分的模糊集運算完成,并輸出為對應的激勵函數,第3層是把每個激勵強度進行歸一化處理,第4層是完成各個模糊規則輸出的計算,最后一層是對該模型的輸出進行計算。該模型的輸入和輸出可以用一個關系式表示為:
(14)
筆者建立的4種模型預測結果如圖8,其中左圖為預測值與實際值的對比,右圖為預測模型在測試集上的準確率隨著迭代次數的變化;表4為預測模型在訓練集和測試集上的準確率。由此可以看出:①深度神經網絡預測模型在訓練集上的準確率為90.63%,測試集上的準確率為94.44%,預測效果是4個模型中最好的;②利用GA改進的BP神經網絡在訓練集和測試集上的準確率都有提升,并且迭代次數沒有增多;③ANFIS預測模型的迭代次數是4種中最多的,預測精度最低,即計算代價最大,因此該模型的效果最差。

表4 各個模型預測準確率Table 4 Prediction accuracy rate of each model %


圖8 4種模型預測結果Fig. 8 Prediction results of four kinds of models
根據預測結果,分別計算4種預測模型的性能評價指標值,具體結果如表5。其中,基于深度神經網絡預測模型的RMSE、MAE和APE是最小的,nash-sutcliffe效率系數NS是最大的。由此可以看出:在考慮多個顯著影響因素來預測交叉口中心區域內車速的問題上,深度神經網絡的預測效果最好,其次為GA-BP神經網絡、BP神經網絡,而ANFIS在該問題上的預測性能較差。

表5 4種預測模型性能評價指標值對比Table 5 Comparison of performance evaluation index values offour kinds of prediction models
針對無信號控制交叉口中心區域內車速預測問題,有別于以往只考慮車輛進入交叉口之前的速度時間序列,篩選了對它有顯著影響的因素,分別為:車輛類型、車輛通過交叉口的方式、車輛進入交叉口中心區域之前的速度、沖突方向車輛情況、沖突方向行人情況,建立了基于神經網絡的預測模型,并利用4種網絡進行測試。
預測結果表明:4種模型都適用于車輛通過交叉口中心區域內平均速度的預測,但DNN具有更好的預測精度和泛化能力,利用GA改進的BP神經網絡預測精度在訓練集和測試集上都有提高;由于筆者只考慮了一個無信號控制交叉口,并且樣本量有限,在今后的研究中,將把交叉口的幾何類型、信號控制方式等因素考慮進去,建立更為全面的樣本庫,進一步分析不同因素的影響程度,并在現有的預測模型上逐步改進,進一步提高預測精度。