王 璐,陳 旸,徐冬冬
(安徽工業(yè)大學(xué)管理科學(xué)與工程學(xué)院,安徽 馬鞍山 243032)
無信號燈路口在城鎮(zhèn)的主干道中幾乎都有存在,而無信號燈路口的交通情況對于整條道路的交通而言是一個瓶頸。行人在橫穿無信號燈路口和機動車輛通過人行道區(qū)域時容易形成沖突,這種情況不光對車輛充滿危險性,對行人來說其危險則更甚。行人和機動車其通行狀態(tài)除了速度等運動特征外,由于行人與車輛的通行都具有較高的自由性,因此需要從心理學(xué)和博弈的角度對人車路口穿越問題進行研究,設(shè)計神經(jīng)網(wǎng)絡(luò)預(yù)測模型,分析人車行為及運動特征,為無信號燈路口的安全通行管理提供決策依據(jù)。
神經(jīng)網(wǎng)絡(luò)的基本原理來源于生物領(lǐng)域中動物神經(jīng)網(wǎng)絡(luò),是在網(wǎng)絡(luò)拓?fù)涞幕A(chǔ)上模擬一種類似大腦中神經(jīng)系統(tǒng)對復(fù)雜信息進行反應(yīng)的整合機制的數(shù)學(xué)模型。神經(jīng)網(wǎng)絡(luò)模型與傳統(tǒng)意義上的仿真不同,其具有的自適應(yīng)學(xué)習(xí)能力使它更為便捷,并且,由于大部分神經(jīng)網(wǎng)絡(luò)模型具有與生物神經(jīng)系統(tǒng)負(fù)反饋調(diào)節(jié)類似的反饋機制,這也使得神經(jīng)網(wǎng)絡(luò)模型擁有更高的容錯率。BP神經(jīng)網(wǎng)絡(luò)作為目前應(yīng)用最廣泛的神經(jīng)網(wǎng)絡(luò),擁有較強的非線性映射能力、柔性的網(wǎng)絡(luò)結(jié)構(gòu)、嚴(yán)謹(jǐn)?shù)耐茖?dǎo)步驟。曹煒[1]深入研究了BP神經(jīng)網(wǎng)絡(luò)交通流預(yù)測算法,分析了城市干線路口交通流特點,發(fā)現(xiàn)BP神經(jīng)網(wǎng)絡(luò)的預(yù)測效果與路口的環(huán)境(本路口與上游路口的配時、交通規(guī)則、兩路口之間的距離等)密切相關(guān);王軍等[2]通過對西安至寶雞 2 h內(nèi)268 組數(shù)據(jù)動態(tài)采樣,利用分段識別法對模型參數(shù)進行估計,建立BP神經(jīng)網(wǎng)絡(luò)模型并進行了仿真;凌智[3]通過分析高速路車流量數(shù)據(jù)特點,對 BP 神經(jīng)網(wǎng)絡(luò)預(yù)測模型的激勵函數(shù)進行了改進,確定了預(yù)測模型中各參數(shù)的初始值的方法,提高了預(yù)測結(jié)果的精度;季雪美[4]采用BP神經(jīng)網(wǎng)絡(luò)進行短時路網(wǎng)交通流預(yù)測,結(jié)果準(zhǔn)確率高;吳艷平[5]等利用遺傳算法對各網(wǎng)絡(luò)層之間的連接權(quán)重進行優(yōu)化,提高了BP神經(jīng)網(wǎng)絡(luò)的預(yù)測精準(zhǔn)度。
本文通過采集行人過街和車輛在人行橫道附近區(qū)域的交通視頻數(shù)據(jù),利用Pr、Ae等專業(yè)的視頻處理軟件基于所收集的視頻進行原始數(shù)據(jù)的提取和分類等處理,然后將處理完成的數(shù)據(jù)輸入MATLAB軟件并利用BP神經(jīng)網(wǎng)絡(luò)進行分類預(yù)測。
在馬鞍山市實地選取幾個無信號燈交叉路口作為考慮的視頻采集地點,在選擇采集地點的時候隨機統(tǒng)計路口兩分鐘內(nèi)的行人橫過馬路數(shù)量,若行人數(shù)量超過或等于5人時,所選無信號燈地點即為合格,可作為視頻采集地點。最終選取八個人流量與車流量均較大的無信號燈路口為視頻收集地點,依次放置攝像機,采集每天上午8點到下午5點的行人和車輛的通行視頻。
車輛行駛速度作為一個重要數(shù)據(jù),擬定的采集方法有兩種,第一種:在距離斑馬線30 m、20 m、10 m和0 m處分別放置測速儀測量車速,依據(jù)此法可測出車輛在到達距斑馬線30 m、20 m、10 m、0 m處的瞬時速度;第二種:在道路兩邊距離斑馬線30 m、20 m、10 m處分別制作標(biāo)志物,通過視頻對行駛車輛進行區(qū)間測速,以車頭到達標(biāo)志物的時間作為測速時間點,區(qū)間測速原理為Ⅴ=Li/(t2-t1),其中:Li為測速區(qū)間的起始標(biāo)志物到終止標(biāo)志物的距離;t2為車輛車頭到達最終標(biāo)志物的時間點;t1為車輛車頭到達起始標(biāo)志物的時間點。選擇第二種測量方法對車輛在 30~20 m、20~10 m、10~0 m 路段的平均行駛速度進行測量。
行人過街時間為行人通過人行橫道的時間。在行人過街的過程中,有一部分行人在對即將到達的車輛進行判斷之后,會中斷過街行為,此時行人處于等待狀態(tài),此種情形下行人的等待時間也計算在過街時間內(nèi)。
輸出變量選擇人車整體過街類型,本文主要對單車道行人過街進行分類,具體分類根據(jù)車輛是否優(yōu)先通行和行人過街?jǐn)?shù)量進行分類,共分為四類。第一類:單人過街情況下,行人在判斷車輛即將到達時,在人行道端點進行等待,車輛優(yōu)先通過,行人等待;第二類:單個行人過街時,行人判斷車輛尚未進入影響本身過街的區(qū)域,行人直接通過,車輛等待行人過街后通過;第三類:多個行人過街時,車輛已經(jīng)距離人行橫道較近,且車輛并沒有減速的意向,此時行人進行等待,車輛直接通過;第四類:多個行人過街時,車輛距離人行橫道較遠(yuǎn),行人直接通過,而車輛在人行橫道前等待至最后一位行人過街后通過人行道。
在利用BP神經(jīng)網(wǎng)絡(luò)對樣本數(shù)據(jù)進行訓(xùn)練和測試時,將過街類型分別用阿拉伯?dāng)?shù)字1、2、3、4表示,從而使計算機能夠理解,以上數(shù)據(jù)均在視頻編輯軟件中利用軟件的分幀技術(shù)進行統(tǒng)計和分類。在收集過程中按照行人和車輛行為對整體過街類型分類,并將過街類型作為輸出變量。在對數(shù)據(jù)進行提取和分析的過程中發(fā)現(xiàn),車輛在距離人行橫道較遠(yuǎn)時,無論行人是否處于等待狀態(tài),車輛速度通常都會以較大的速度進行行駛,而行人過街?jǐn)?shù)量與車輛是否進行減速等待并沒有高度的相關(guān)性。單個行人過街和多個行人過街所需要的時間有較大的區(qū)別,多個行人過街時間明顯要比單個行人過街要久。
根據(jù)統(tǒng)計得出的結(jié)論,將車輛在30~20 m、20~10 m、10~0 m、30~0 m 的平均速度作為輸入變量,同時行人過街時間也作為輸入變量之一,而將四類過街類型作為元胞(輸出變量),對數(shù)據(jù)進行BP神經(jīng)網(wǎng)絡(luò)的分類預(yù)測。
第一步:數(shù)據(jù)采集分類時利用Excel整理,在MATLAB編輯欄調(diào)用xlsread命令讀取數(shù)據(jù)表格。
第二步:收集數(shù)據(jù)共453條,篩選后得出440條有效數(shù)據(jù),將440條有效數(shù)據(jù)分為測試集和訓(xùn)練集兩組并以3:7的比例進行數(shù)據(jù)處理。
第三步:對輸入和輸出數(shù)據(jù)中由于不同數(shù)據(jù)之間單位差異、不同車輛狀態(tài)不同速度、行人和車輛不同速度導(dǎo)致區(qū)別的樣本數(shù)據(jù)進行歸一化處理。
第四步:構(gòu)建BP神經(jīng)網(wǎng)絡(luò)模型,使用purelin作為傳遞函數(shù),然后利用newff函數(shù)構(gòu)筑一個可訓(xùn)練前饋網(wǎng)絡(luò)模型,并且利用梯度下降法對其進行訓(xùn)練。
第五步:設(shè)置BP神經(jīng)網(wǎng)絡(luò)參數(shù),包括迭代次數(shù)、學(xué)習(xí)速率、最小誤差、顯示頻率、動量因子、最小性能梯度以及最大的失敗次數(shù)。BP神經(jīng)網(wǎng)絡(luò)的訓(xùn)練次數(shù)通常情況下選擇1 000次,學(xué)習(xí)率(指訓(xùn)練速度)一般設(shè)置是0.1或者0.01,此時BP神經(jīng)網(wǎng)絡(luò)在對數(shù)據(jù)進行處理訓(xùn)練時會發(fā)生局部最小狀態(tài),此時神經(jīng)網(wǎng)絡(luò)的誤差基本保持穩(wěn)定狀態(tài),其返回的信號對權(quán)值無法產(chǎn)生較大影響,但是總誤差結(jié)果仍然不滿足訓(xùn)練結(jié)果設(shè)定的總誤差條件,故將動量因子設(shè)置為0.01使得權(quán)值對返回的信號影響產(chǎn)生振蕩。
第六步:訓(xùn)練BP神經(jīng)網(wǎng)絡(luò),利用train函數(shù)來對神經(jīng)網(wǎng)絡(luò)的輸入樣本和輸出樣本展開訓(xùn)練。
第七步:訓(xùn)練集訓(xùn)練結(jié)束后,開始對測試集進行處理,與訓(xùn)練集的操作相似,在對測試集數(shù)據(jù)進行測試之前要調(diào)用mapminmax函數(shù)對測試集樣本數(shù)據(jù)展開歸一化處理。
第八步:BP神經(jīng)網(wǎng)絡(luò)對測試集展開預(yù)測,利用訓(xùn)練集獲取的模型對測試集樣本展開仿真,并且對仿真后得到的數(shù)據(jù)展開反歸一化處理,利用函數(shù)還原到最開始的數(shù)量級。
第九步:運用訓(xùn)練好的模型對測試集樣本數(shù)據(jù)進行測試后,計算測試集樣本數(shù)據(jù)分類結(jié)果和誤差。
第十步:在以上步驟結(jié)束后,調(diào)用函數(shù)對四種過街類型的分類準(zhǔn)確率進行統(tǒng)計,同時對測試集樣本數(shù)據(jù)的分類準(zhǔn)確率進行統(tǒng)計,最后得出測試集總體分類準(zhǔn)確率。
本文建立的BP神經(jīng)網(wǎng)絡(luò)分類預(yù)測模型包含5種變量輸入,8個隱層的神經(jīng)元,4個輸出層的神經(jīng)元,樣本數(shù)據(jù)的劃分方式為隨機劃分。同時,在模型建立后,利用均方誤差來對神經(jīng)網(wǎng)絡(luò)的性能進行衡量。其中BP神經(jīng)網(wǎng)絡(luò)網(wǎng)絡(luò)性能參數(shù)為2.90、梯度算子為2.53。
BP神經(jīng)網(wǎng)絡(luò)預(yù)測結(jié)果見圖1,過街分類誤差(即預(yù)測類別號-實際類別號)見圖2。圖中橫坐標(biāo)為測試集樣本數(shù)據(jù)順序,1~33代表第一類所選的測試集樣本數(shù)據(jù)、34~66代表第二類所選的測試集樣本數(shù)據(jù)、67~99為第三類所選的測試集樣本數(shù)據(jù)、100~132為第四類所選的測試集樣本數(shù)據(jù)。由圖可以看出,分類準(zhǔn)確的測試集樣本數(shù)據(jù)共94個,整體分類準(zhǔn)確率為70.1%。第一類和第二類的測試集樣本數(shù)據(jù)的分類誤差相對較高,第三類和第四類的測試集樣本數(shù)據(jù)的分類誤差較低。
圖1 BP神經(jīng)網(wǎng)絡(luò)預(yù)測結(jié)果Fig.1 Prediction results of BP neural network
圖2 分類誤差Fig.2 Classification error
所有數(shù)據(jù)集(440條有效數(shù)據(jù))的誤差直方圖見圖3,可以看出,在訓(xùn)練集的308個樣本數(shù)據(jù)中,超過250個數(shù)據(jù)的誤差處于零誤差,說明對神經(jīng)網(wǎng)絡(luò)的訓(xùn)練效果較好。
圖3 誤差直方圖Fig.3 Error histogram
本文對行人和機動車輛整體的四類交通行為進行分析后,通過MATLAB構(gòu)建神經(jīng)網(wǎng)絡(luò)模型,將單車道的車輛在距離人行橫道30~0 m的每10 m路段的平均速度和30 m路段的平均速度以及行人過街時間作為輸入變量,而將四種過街類型作為輸出變量,在神經(jīng)網(wǎng)絡(luò)中進行仿真分析,最終分類準(zhǔn)確率約為70.1%。
當(dāng)行人等待車輛通過時,車輛行為基本一致,而當(dāng)車輛等待行人通過時,單個行人過街與多個行人過街的交通行為均有不同。究其原因,可能是行人過街時的交通行為有極高的隨意性,每個行人的過街行為均有不同程度的差異,而機動車駕駛員長期在道路上行駛,大多數(shù)的交通行為有較高的相似性。本文在研究中發(fā)現(xiàn)存在一種危險情形,即當(dāng)行人已經(jīng)進入人行道與車輛行駛道路的交叉區(qū)域時,車輛并未采取減速措施,而是以勻速或加速的行駛狀態(tài)通過干擾區(qū)域,以限速60 km的路段為例,車輛通過干擾區(qū)域時間約為2 s,行人將在車道區(qū)域停駐2 s以上才可通行,這對于本就處于交通劣勢的行人而言無疑提高了危險性。因此,在交叉路口,尤其是無信號燈路口這些人車交互的交通區(qū)域,除了加強對于交通規(guī)則的宣傳外,無論是車輛抑或是行人,都應(yīng)以穩(wěn)為重,互相禮讓,以避免交通事故的發(fā)生。