金曉磊,陳 苗,劉喜慶
(1.西安工程大學(xué)電子信息學(xué)院,西安710600;2.國(guó)網(wǎng)新疆電力公司五家渠市供電公司,新疆五家渠 831300)
隨著城市生活節(jié)奏的加快,交通出行在現(xiàn)代經(jīng)濟(jì)與社會(huì)發(fā)展的進(jìn)程中占據(jù)著更加重要的位置。當(dāng)今的交通信號(hào)燈基本都是定時(shí)控制,在某些時(shí)段、特殊情況下很難進(jìn)行動(dòng)態(tài)控制,會(huì)造成交通擁堵、尾氣排放增加等。為克服傳統(tǒng)交通燈的定時(shí)式控制的缺陷,設(shè)計(jì)智能的交通控制系統(tǒng)來(lái)提高交通效率,顯得尤為重要。智能交通燈控制系統(tǒng)是一種把各種先進(jìn)控制技術(shù)結(jié)合在一起的綜合控制系統(tǒng),各個(gè)時(shí)期的典型交通信號(hào)系統(tǒng)在不斷變化,控制技術(shù)也從以前的人工變?yōu)楹髞?lái)的計(jì)算機(jī)控制,整個(gè)控制系統(tǒng)領(lǐng)域朝著更高效、智能的方向發(fā)展[1]。神經(jīng)網(wǎng)絡(luò)在智能交通控制系統(tǒng)中的應(yīng)用涉及到交通模式分析、交通流量預(yù)測(cè)、交通控制方式選擇等各個(gè)方面[2-5]。其中,誤差反向傳播(Back Propagation, BP)神經(jīng)網(wǎng)絡(luò)是目前應(yīng)用最廣泛的神經(jīng)網(wǎng)絡(luò)。胡立偉等[6]進(jìn)行了基于BP神經(jīng)網(wǎng)絡(luò)的擁塞環(huán)境下車(chē)輛運(yùn)行風(fēng)險(xiǎn)識(shí)別研究,建立的神經(jīng)網(wǎng)絡(luò)模型能準(zhǔn)確識(shí)別車(chē)輛運(yùn)行風(fēng)險(xiǎn)的關(guān)鍵因素并對(duì)其進(jìn)行評(píng)估,為規(guī)避城市道路擁的車(chē)輛運(yùn)行風(fēng)險(xiǎn)及擁塞治理提供了參考。孫德鑫[7]利用BP 神經(jīng)網(wǎng)絡(luò)構(gòu)建了一種公路流量預(yù)測(cè)模型,使用MATLAB軟件對(duì)交通數(shù)據(jù)進(jìn)行研究和模擬,證明該預(yù)測(cè)模型實(shí)時(shí)性很好。陳鵬[8]提出了一種基于BP 神經(jīng)網(wǎng)絡(luò)的公交智能實(shí)時(shí)調(diào)度模型研究及系統(tǒng)實(shí)現(xiàn),將BP 神經(jīng)網(wǎng)絡(luò)技術(shù)應(yīng)用于智能公交的實(shí)時(shí)調(diào)度規(guī)劃,驗(yàn)證智能公交的智能實(shí)時(shí)交通算法的可行性。
基于現(xiàn)有研究背景,在此設(shè)計(jì)一個(gè)把神經(jīng)網(wǎng)絡(luò)應(yīng)用在城市交通信號(hào)燈配時(shí)控制中的智能決策系統(tǒng)。通過(guò)確定輸入變量、訓(xùn)練BP 神經(jīng)網(wǎng)絡(luò)、設(shè)計(jì)GUI 來(lái)完成。利用訓(xùn)練得到的神經(jīng)網(wǎng)絡(luò)模型,結(jié)合當(dāng)前交叉口車(chē)輛動(dòng)態(tài)情況決策出交叉口的適宜綠燈時(shí)間,以更有力地保證道路的暢通,提高交通效率。
在進(jìn)行交通燈時(shí)間決策時(shí),需要知道選取哪些因素才能有效地反映綠燈時(shí)間長(zhǎng)短。交通燈決策指標(biāo)的選取原則主要包含全面性、明確性和實(shí)用性三方面。全面性原則是指交通狀態(tài)相對(duì)復(fù)雜,很難用一個(gè)指標(biāo)來(lái)清楚地描述。為了避免僅從單個(gè)方面研究交通狀態(tài)而導(dǎo)致錯(cuò)誤判斷,指標(biāo)的選擇應(yīng)盡可能全面。明確性原則是指指標(biāo)應(yīng)含義明確,易于理解,可以清楚地衡量交通狀況。實(shí)用性原則是指選擇的指標(biāo)應(yīng)易于使用,并為使用它們的人所理解和接受?;谝陨先?xiàng)原則,本設(shè)計(jì)算法選取交通流的三個(gè)相關(guān)參數(shù):車(chē)速、車(chē)流量和車(chē)輛密度,作為決策指標(biāo)。
車(chē)速就是所謂的車(chē)輛行駛速度,國(guó)際上使用的單位是km/h。通過(guò)測(cè)量駛過(guò)道路上的車(chē)輛速度可以判斷道路的通行狀態(tài),車(chē)速較快代表道路比較順暢,不堵車(chē);車(chē)速慢就代表道路比較堵塞。通過(guò)各種類(lèi)型的車(chē)速測(cè)試儀可以快速地獲取車(chē)速,該參數(shù)數(shù)據(jù)比較容易獲取。
車(chē)流量是指在一定時(shí)間內(nèi)通過(guò)一定道路或馬路的車(chē)輛數(shù)量。車(chē)輛交通流量大,說(shuō)明道路暢通;車(chē)輛交通流量小,說(shuō)明道路堵塞。通過(guò)車(chē)流量傳感器檢測(cè)[9]、車(chē)載衛(wèi)星[10]、射頻模塊[11]或是由視頻圖像檢測(cè)[12]等來(lái)獲得這一數(shù)據(jù)都是現(xiàn)實(shí)可行的。
車(chē)輛密度指在某個(gè)時(shí)刻某段道路上車(chē)輛數(shù)與該路段長(zhǎng)度的比值[13]。一般來(lái)說(shuō),單位長(zhǎng)度的路段上停滯的車(chē)輛少,表明交通系統(tǒng)運(yùn)行良好。如果某時(shí)刻某路段的車(chē)輛密度檢測(cè)值接近于該路段的最大車(chē)輛密度值,那么該路段極大可能處于擁堵?tīng)顟B(tài)。因此,通過(guò)觀(guān)測(cè)車(chē)輛密度可以掌握一定的路段交通狀態(tài)。而如今利用車(chē)聯(lián)網(wǎng)、定點(diǎn)檢測(cè)器、航空拍攝等技術(shù)即可得到需要的車(chē)輛密度,技術(shù)手段的成熟讓數(shù)據(jù)更準(zhǔn)確、更全面。
人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Network, ANN)是模擬生物神經(jīng)網(wǎng)絡(luò)進(jìn)行信息處理的一種數(shù)學(xué)模型,在眾多的領(lǐng)域都有不同的應(yīng)用,如模式識(shí)別、系統(tǒng)識(shí)別、智能控制等。神經(jīng)網(wǎng)絡(luò)的一個(gè)重要特征是其自學(xué)能力,尤其是在智能控制領(lǐng)域,可以幫助人們解決控制器的適應(yīng)性問(wèn)題。為了掃除阻礙ANN 發(fā)展的障礙,完全消除對(duì)多層感官網(wǎng)絡(luò)的懷疑,Rumelhart和 McClelland 于1986 年提出多層前饋網(wǎng)絡(luò)的誤差反向傳播(Error Back Propagation)學(xué)習(xí)算法,簡(jiǎn)稱(chēng)BP算法。到目前為止,BP 算法已經(jīng)成為應(yīng)用最廣泛、研究最多、發(fā)展最快的算法。在智能交通系統(tǒng)中,因?yàn)樵谡5慕煌l件下有隨機(jī)和非線(xiàn)性的特點(diǎn),使用一般的方法識(shí)別是很難實(shí)現(xiàn)的,而且精度也很低,此時(shí)正適合于用BP 神經(jīng)網(wǎng)絡(luò)來(lái)實(shí)現(xiàn)。與傳統(tǒng)的模型技術(shù)相比,BP 神經(jīng)網(wǎng)絡(luò)的優(yōu)點(diǎn)是:① 有自適應(yīng)能力;②有自學(xué)功能;③在非線(xiàn)性中映射能力更強(qiáng);④處理系統(tǒng)輸入、輸出的效率更高。
BP 網(wǎng)絡(luò)的設(shè)計(jì)主要包括網(wǎng)絡(luò)層數(shù)、各層神經(jīng)元個(gè)數(shù)及學(xué)習(xí)方法的確定。綜合考慮決策系統(tǒng)的復(fù)雜度,此處擬用三層的 BP 網(wǎng)絡(luò),即一層輸入層、一層隱含層、一層輸出層。在BP 網(wǎng)絡(luò)中,可以自行確定各層的神經(jīng)元數(shù)量。本系統(tǒng)決策指標(biāo)選取了三個(gè)參數(shù),因此輸入層的節(jié)點(diǎn)數(shù)為三個(gè),輸出層的節(jié)點(diǎn)數(shù)為一個(gè)(控制當(dāng)前通行方向的綠燈時(shí)間)。該網(wǎng)絡(luò)模型只有一個(gè)隱含層,可以通過(guò)增加隱含層神經(jīng)元的數(shù)量來(lái)提升精度,此方法要比增加網(wǎng)絡(luò)系統(tǒng)的隱含層更加簡(jiǎn)單方便。
一般情況下,隱含層神經(jīng)元個(gè)數(shù)的計(jì)算式如下式所示:
其中,n 為輸入層神經(jīng)元數(shù)量,m 為輸出層神經(jīng)元數(shù)量,a 表示的是1~10 之間的任一常數(shù)。由式(1)可以計(jì)算得到隱含層神經(jīng)元數(shù)量的范圍是[3,12],模型最終確定隱含層神經(jīng)元節(jié)點(diǎn)數(shù)為9。
本設(shè)計(jì)使用MATLAB R2016b 進(jìn)行編程,調(diào)用工具箱中的一些相關(guān)函數(shù),創(chuàng)建、訓(xùn)練BP 神經(jīng)網(wǎng)絡(luò)模型。訓(xùn)練中使用的數(shù)據(jù)為某地區(qū)的觀(guān)測(cè)交通數(shù)據(jù),包括車(chē)速(km/h)、車(chē)流量(輛)、交通密度和與它們對(duì)應(yīng)的交通燈綠燈時(shí)間(s)。
使用newff 函數(shù)創(chuàng)建神經(jīng)網(wǎng)絡(luò),其中performFcn設(shè)置為“mse”,也就是誤差使用均方根誤差;trainFcn設(shè)置為“trainlm”,也就是訓(xùn)練算法選用Levenberg-Marquadt 反傳算法,它是速度最快的一種訓(xùn)練算法。在訓(xùn)練前還需對(duì)參數(shù)進(jìn)行設(shè)定,迭代最大次數(shù)設(shè)定為70 次,訓(xùn)練目標(biāo)設(shè)為0.005,也就是均方根誤差小于0.005 訓(xùn)練才會(huì)結(jié)束。學(xué)習(xí)率設(shè)定為0.01。
模型訓(xùn)練完成后,使用三十個(gè)樣本進(jìn)行測(cè)試,判斷其性能。評(píng)價(jià)指標(biāo)選擇決定系數(shù),其計(jì)算公式如下式所示:
測(cè)試樣本的決策結(jié)果對(duì)比如圖1 所示。圖中直觀(guān)展示了真實(shí)值與決策值之間的誤差大小??梢钥吹饺畟€(gè)測(cè)試樣本中,絕大多數(shù)樣本的決策值都與真實(shí)值非常接近。決定系數(shù)為0.97945,非常接近于1,表明模型的性能很好,能很好地根據(jù)輸入的車(chē)速、車(chē)流量和交通密度決策出最佳的交通燈時(shí)間。
圖1 決策結(jié)果對(duì)比圖
因?yàn)楸驹O(shè)計(jì)中訓(xùn)練集和測(cè)試集是從調(diào)研數(shù)據(jù)中隨機(jī)分配產(chǎn)生的,所以會(huì)因訓(xùn)練集的不完全相同導(dǎo)致訓(xùn)練出的模型有細(xì)微差別。但這種細(xì)微差別對(duì)模型的功能實(shí)現(xiàn)是沒(méi)有影響的,訓(xùn)練出來(lái)的神經(jīng)網(wǎng)絡(luò)模型都能很好地進(jìn)行決策。表1 列出了連續(xù)九次隨機(jī)生成訓(xùn)練集和測(cè)試集后,訓(xùn)練出模型的決定系數(shù)。從中我們可以看出,雖然每次訓(xùn)練出的模型不完全相同,但決定系數(shù)都較高,都能很好地根據(jù)輸入的車(chē)速、車(chē)流量和交通密度決策出最佳的綠燈時(shí)間。
基于神經(jīng)網(wǎng)絡(luò)的交通燈智能決策模型訓(xùn)練好以后,就可以用它來(lái)根據(jù)實(shí)時(shí)觀(guān)測(cè)的車(chē)速、車(chē)流量和交通密度數(shù)據(jù)決策當(dāng)前最佳綠燈時(shí)間。設(shè)計(jì)一個(gè)圖形用戶(hù)界面(GUI),如圖2 所示,來(lái)更直觀(guān)地展示本設(shè)計(jì)中的智能決策系統(tǒng)。
圖2 交通智能決策系統(tǒng)GUI 操作界面
在制作好的GUI 界面中輸入車(chē)速、車(chē)流量和交通密度數(shù)據(jù),點(diǎn)擊決策按鈕,神經(jīng)網(wǎng)絡(luò)模型決策出的結(jié)果會(huì)輸出到最佳交通燈時(shí)間文本框中。用以下兩種情況下的實(shí)測(cè)案例來(lái)驗(yàn)證本設(shè)計(jì)能否完成最初設(shè)定的系統(tǒng)功能:
1) 當(dāng)車(chē)速處于極大時(shí)
在車(chē)速、車(chē)流量和交通密度可編輯文本中分別輸入數(shù)字55,23,20,點(diǎn)擊決策按鈕,輸出的最佳交通時(shí)間顯示為30s。通過(guò)數(shù)據(jù)可以看出此時(shí)的路口車(chē)速較高且車(chē)流不大,因此將當(dāng)前路口綠燈時(shí)間設(shè)定為30s 是合理的。與訓(xùn)練數(shù)據(jù)作比較,此時(shí)的數(shù)據(jù)也比較符合實(shí)際。
2) 當(dāng)車(chē)速處于極小時(shí)
在車(chē)速、車(chē)流量和交通密度可編輯文本中分別輸入數(shù)字4,84,81,點(diǎn)擊決策按鈕,輸出的最佳交通時(shí)間顯示為90s。通過(guò)數(shù)據(jù)可以看出:此時(shí)的路口車(chē)速相當(dāng)小,且車(chē)流量相當(dāng)大,因此將當(dāng)前路口綠燈時(shí)間設(shè)定90s 比較合理。
通過(guò)模型訓(xùn)練結(jié)果分析和上述測(cè)試,可以看出本設(shè)計(jì)中的決策模型能很好地根據(jù)觀(guān)測(cè)到的當(dāng)前車(chē)速、車(chē)流量和交通密度數(shù)據(jù)決策出最佳綠燈時(shí)間。當(dāng)前路口車(chē)速越快,車(chē)流量越小,相應(yīng)交通密度也越小,決策出的綠燈時(shí)長(zhǎng)越短;車(chē)速越慢,車(chē)流量越大,交通密度也越大,決策出的綠燈時(shí)長(zhǎng)越長(zhǎng)。交通燈可根據(jù)實(shí)時(shí)路況信息進(jìn)行動(dòng)態(tài)調(diào)整,以此能夠改善交通運(yùn)輸?shù)男?,提升交通的智能化?/p>
時(shí)代發(fā)展迅速,交通壓力增大,道路嚴(yán)重堵車(chē)的情況普遍可見(jiàn),因此根據(jù)當(dāng)前道路交通情況智能決策綠燈時(shí)間顯得尤為重要。本設(shè)計(jì)利用神經(jīng)網(wǎng)絡(luò)來(lái)控制交通燈,實(shí)現(xiàn)城市交通燈的智能控制。利用已知的交通流數(shù)據(jù)進(jìn)行神經(jīng)網(wǎng)絡(luò)的訓(xùn)練,并設(shè)計(jì)GUI進(jìn)行仿真。仿真結(jié)果證明了BP 神經(jīng)網(wǎng)絡(luò)可以很有效地決策出適宜的綠燈時(shí)間。本設(shè)計(jì)選取的決策變量主要是各種交通流參數(shù)(交通速度、交通流量、交通密度等),皆屬于便于處理的外部因素,在進(jìn)一步的研究中,考慮可將交通參與者的主觀(guān)感受和駕駛員各種微觀(guān)行為納入決策指標(biāo)中。