李炬
摘要:針對當(dāng)前智能交通發(fā)展的需求,結(jié)合當(dāng)前的智能算法,提出一種基于BP的智能交通控制系統(tǒng)。為實現(xiàn)該系統(tǒng),實現(xiàn)智能化城市交通控制的價值,首先對該系統(tǒng)的需求進(jìn)行了分析,然后分別對系統(tǒng)的整體方案、硬件和軟件等經(jīng)了設(shè)計。在設(shè)計中重點對BP智能交通通行時間進(jìn)行預(yù)測,并采用DSP處理器對BP算法進(jìn)行運算,以提高運算的效率。最后給出部分實現(xiàn)的界面。
Abstract: In view of the demand of the development of intelligent transportation and the current intelligent algorithm, an intelligent transportation control system based on BP is proposed. In order to realize the system and realize the value of intelligent urban traffic control, the requirements of the system are analyzed first, and then the overall scheme, hardware and software of the system are designed separately. In the design, the traffic time of BP intelligent transportation is forecasted, and the BP algorithm is calculated by the DSP processor to improve the efficiency of the calculation. Finally, the interface of partial implementation is given.
關(guān)鍵詞:BP神經(jīng)網(wǎng)絡(luò);交通控制;系統(tǒng)設(shè)計
Key words: BP neural network;traffic control;system design
0? 引言
隨著現(xiàn)代城市的發(fā)展,城市交通擁堵成為制約城市發(fā)展的重要問題。如何解決當(dāng)前的城市擁堵問題,很多學(xué)者提出了不同的方法。如邱祥則在分析部分學(xué)者的解決方法時提出,采用路面拓寬的方式來解決城市擁堵問題,并不是好的途徑和方法,由此加強城市交通的智能化管理,采用智能路網(wǎng)等方式,才是解決當(dāng)前城市擁堵的有效方法。而通過研究發(fā)現(xiàn),當(dāng)前大部分城市在交通信號控制方面,仍然采用固定時間控制的方式。這種方式雖然簡單,但是無法滿足城市交通車輛的動態(tài)控制。因此,結(jié)合上述的問題,提出一種基于BP神經(jīng)網(wǎng)絡(luò)的交通信號控制系統(tǒng)。
1? 系統(tǒng)需求分析
結(jié)合交通道路信號控制的相關(guān)需求,本控制系統(tǒng)主要存在以下幾方面的需求:
①可實現(xiàn)至少6個相位的控制;
②可實現(xiàn)至少6個獨立信號的輸出;
③可對十字路口的車流量凈統(tǒng)計;
④可實現(xiàn)與上機位的連接,以過程區(qū)域性的交通信號信號控制系統(tǒng);
⑤內(nèi)部日歷始終誤差不超過±15s/20d。
2? 系統(tǒng)整體架構(gòu)設(shè)計
根據(jù)上述的需求,本文將該系統(tǒng)的整體架構(gòu)設(shè)計為如圖1所示。
在上述的方案中,包含四個主要的模塊:主控模塊、驅(qū)動模塊、圖像采集模塊、DSP處理模塊、硬件黃閃模塊、上機位通信模塊等。其中,通過通過圖像采集,然后經(jīng)DSP將數(shù)據(jù)傳輸給主控模塊。而主控模塊在經(jīng)過運算后,直接對相位進(jìn)行控制。其中,DSP的主要作用是對圖像進(jìn)行采集,以及使用神經(jīng)網(wǎng)絡(luò)算法對車輛通行時間進(jìn)行控制。
在上述的硬件模塊中,DSP采用TMS320DM642作為主要芯片。在該芯片的基礎(chǔ)上,然后編寫DSP圖像采集處理程序,并進(jìn)行BP神經(jīng)網(wǎng)絡(luò)訓(xùn)練和仿真;DSP和主控模塊的通信采用RS485接口;主控模塊采用STM32F103ZET6,該芯片提供了至少5個串口與外設(shè)進(jìn)行通信,并且可以支持CAN2.0進(jìn)行通信。
3? 軟件模塊設(shè)計
3.1 BP神經(jīng)網(wǎng)絡(luò)模型構(gòu)建
3.1.1 BP神經(jīng)網(wǎng)絡(luò)概述
BP神經(jīng)網(wǎng)絡(luò)主要由輸入層、隱含層、輸出層構(gòu)成,具體結(jié)構(gòu)見圖2所示。
在圖2中,p表示輸入的神經(jīng)元,K表示隱含層,a表示輸入層的輸出結(jié)果,w表示權(quán)重,I表示神經(jīng)元的個數(shù),wij表示第i個神經(jīng)元到第j個神經(jīng)元的權(quán)值,wjm表示隱含層第j個神經(jīng)元到輸出層第m個神經(jīng)元權(quán)值。同時,在神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)的過程中,其權(quán)值的調(diào)整與輸出期望響應(yīng)的誤差能量對權(quán)值的偏微分大小成正比關(guān)系。因此,對權(quán)值的調(diào)整采用最速下降法來進(jìn)行計算,并沿著梯度相反的方向進(jìn)行調(diào)整。
3.1.2 基于BP的交叉口信號控制模型構(gòu)建
結(jié)合上述的BP神經(jīng)網(wǎng)絡(luò),本文對交叉口交通信號控制模型進(jìn)行構(gòu)建。而根據(jù)圖1的BP神經(jīng)網(wǎng)絡(luò)模型,其最為重要的一個方面就是對神經(jīng)網(wǎng)絡(luò)各層層數(shù)和相關(guān)的參數(shù)進(jìn)行設(shè)計。
①層數(shù)設(shè)計。研究認(rèn)為,增加BP神經(jīng)網(wǎng)絡(luò)的層數(shù),并不意味著能提高輸出結(jié)果的精度,降低整體的誤差。而理論表明,采用傳統(tǒng)的三層結(jié)構(gòu),可逼近任何有理函數(shù)。同時,在本系統(tǒng)中研究的是交叉路口,具體見圖3所示。
在圖3中的交叉路口中,在任意的一個師資路口需要檢測四個方向的停車等待的數(shù)量,而四個方向的車輛分別對應(yīng)一個通行時間。因此,對BP神經(jīng)網(wǎng)絡(luò)層數(shù)的選取中,輸入層節(jié)點選擇為4,輸出層節(jié)點也選擇為4。
②隱含層神經(jīng)元確定。
對隱含層神經(jīng)元的確定中,目前的研究是根據(jù)經(jīng)驗來進(jìn)行判斷的。對此,在此參考經(jīng)驗公式:
根據(jù)上述的公式進(jìn)行推算,隱含層神經(jīng)元的取值范圍在[4,13]。所以在本文的最終仿真中,則按照該范圍進(jìn)行綜合仿真比對。
③模型構(gòu)建。根據(jù)上述的設(shè)計,本文將基于BP的交通信號控制模型設(shè)計為如圖4所示。
在上述的BP信號控制模型中,分別以四個不同方向作為輸入,通過隱含層和權(quán)重實現(xiàn)對結(jié)果的智能化調(diào)節(jié)。
3.1.3 BP算法流程設(shè)計
對BP算法來講,其運算量大,且運算復(fù)雜。采用傳統(tǒng)的處理芯片很難滿足計算量的要求。因此,在BP算法流程的設(shè)計中,則采用了DSP作為算法運行的硬件環(huán)境,以提高算法運行的細(xì)考慮。而根據(jù)上述的分析和BP交通信號預(yù)測構(gòu)建可以看出,BP對數(shù)據(jù)的訓(xùn)練和測試,是通過修改隱含層的誤差而不斷讓輸出值達(dá)到預(yù)定的結(jié)果。如訓(xùn)練樣本經(jīng)過訓(xùn)練,滿足誤差結(jié)果,則結(jié)束;如不滿足誤差結(jié)果,則繼續(xù)輸入樣本進(jìn)行訓(xùn)練。具體流程如圖5所示。
3.2 主控模塊軟件設(shè)計
主控模塊是該系統(tǒng)設(shè)計的另一個核心。該模塊主要負(fù)責(zé)接收DSP發(fā)送的相關(guān)信號,并且接收dsp發(fā)送的各路口的通行預(yù)測時間。在該模塊中,通過CAN總線實現(xiàn)對不同相位驅(qū)動模塊的控制。通過這種控制,使得主控芯片模塊不斷向黃閃模塊發(fā)送脈沖信號,進(jìn)而使得硬件黃閃處于休眠;同時主控芯片將采集到的數(shù)據(jù)上傳給后臺上機位。而在程序的運行中,首先進(jìn)行初始化操作,然后設(shè)定黃閃時間和紅燈長亮?xí)r間。具體流程如圖6所示。
當(dāng)系統(tǒng)啟動后,圖像采集模塊會將采集到的四個方向的車輛等待信息傳輸給DSP,然后DSP會根據(jù)訓(xùn)練好的模型,對四個方向通行車輛的時間進(jìn)行預(yù)測,最后將預(yù)測的時間發(fā)送給主控模塊,進(jìn)而為整個時間的分配奠定基礎(chǔ)。
3.3 驅(qū)動模塊主程序設(shè)計
驅(qū)動模塊的執(zhí)行動作主要依賴于主控模塊接收到的執(zhí)行指令。具體則是通過CAN通信,解析出相關(guān)的參數(shù),然后按照相關(guān)的參數(shù),對不同方向的信號燈進(jìn)行控制。如圖7所示。
4? 系統(tǒng)實現(xiàn)
對上述系統(tǒng)的開發(fā),采用Keil? μ Vision集成環(huán)境進(jìn)行開發(fā),以C語言作為開發(fā)語言,進(jìn)而得到相位控制界面。如圖8所示。
在圖8的界面中看,可對不同的相位配置具體的數(shù)據(jù),同時也可以增加新的相位,由此極大的方便了對交通信號的管理和控制。
5? 結(jié)束語
通過上述的研究可以看出,本文所構(gòu)建的基于BP的智能交通系統(tǒng)可對交叉路口信號的相位進(jìn)行設(shè)計,從而可對區(qū)域的交通信號進(jìn)行聯(lián)動控制,以此達(dá)到對某區(qū)域整體交通信號控制的目的,具有極強的實用價值,可更好的促進(jìn)智能交通的發(fā)展,實現(xiàn)對區(qū)域交通的動態(tài)控制。
參考文獻(xiàn):
[1]原鑫鑫,葉帥.模糊推理技術(shù)和神經(jīng)網(wǎng)絡(luò)在智能交通系統(tǒng)中的應(yīng)用[J].中國新技術(shù)新產(chǎn)品,2014(15):17.
[2]朱贏鵬,潘聰華,謝怡杰,張夏良,王健.基于BP神經(jīng)網(wǎng)絡(luò)PID的四輪智能車循跡控制仿真研究[J].汽車零部件,2016(02):60-61.
[3]王麟珠,蘇慶列,鄭日博.基于Elman動態(tài)神經(jīng)網(wǎng)絡(luò)的公交到站時間預(yù)測[J].機電技術(shù),2012,35(01):135-137.