曹春勤
(上海電科智能系統股份有限公司,上海 200063)
交通擁堵是當前社會較為關注的話題,一些城市花費極大人力物力改善交通,但收效甚微,甚至適得其反。道路擁堵問題不但影響民眾通行效率,大量的尾氣排放也嚴重影響著城市居民的生活環境。近年來隨著智能交通行業的發展,最新的信息技術被應用到交通基礎設施以及管理手段。其中無線通訊技術發展較為迅速,無線網通過無線電波、微波等媒介將各網點連接,并實時傳輸數據。車載自組網(VANET)是無線通訊技術在交通領域的一大應用,利用無線通信技術,以移動中的車輛及交通設施為節點,形成移動網絡[1]。加入這個網絡的車輛,會成為一個無線節點或是無線路由。當某個車輛脫離了信號范圍,其它的車輛可以加入,彼此鏈接,創建起新的移動互聯網。車載自組網技術也被認為是下一代智能交通領域的關鍵技術[2]。
交叉口流量控制是智能交通領域的難題之一,不但由于交叉口分布復雜,形態各異,還因為交叉口不同方向的車流同時匯聚于此。此外交叉口還有大量行人通過,現有路口信號控制系統有不少缺陷,尤其高流量的交叉口堵塞,大量排隊車輛滯留在進口處。因此,路口交通控制對道路管理至關重要,是提升交通流通性和安全性的關鍵。
當前信號配時優化是解決道路交叉口問題的重要手段,但由于算法的復雜性有時并不貼合管理實際。隨著車聯網技術的快速發展,車與車通信(V2V)、車與道路基礎設施通信(V2I)、車與行人通信(V2P)已不是難事,同時更高速、更安全的通訊制式也不斷適應車聯網應用場景[3]。
基于當前車聯網技術的發展,為提升道路交叉口車輛及行人的通行效率和安全性,本文提出一種新式模型,受進程同步理論啟發,將車輛和行人看作進入交叉口臨界面的一個過程,如何在高流量下且所有對象處于競爭條件下減少等待時間,將是本文對交通流控制研究的關鍵。此外,當出現大量車輛時系統可能會陷入等候死循環,從而導致交叉口擁堵,本文也提出一種有效的方式應對此問題。
本文的主要貢獻包括:(1)提出一種實時控制動態交通流的方法;(2)未使用優化算法因此具有更低的計算復雜度;(3)交叉口管理系統采用無線通訊方式,實際部署時更具靈活性;(4)仿真結果表明本方法能有效提升交通流量并縮短等候時長。

圖1 交叉口和進口道
各章節內容:第二章主要介紹進程同步理論在本文的應用并構建仿真模型。第三章搭建交叉口對象交互結構并提出系統算法,解決各對象同路口控制系統協調問題。第四章通過仿真對模型進行驗證,第五章對本文進行了總結。
當前有很多處理交叉口擁堵的方法,信號控制是最為傳統的方法,較先進的信號控制技術通過動態自適應信號控制協調各方向的流量壓力,主要采用的方式是最優化算法。其中陳曉峰[4]提出利用遺傳算法解決交叉口問題,Srinivasan 利用神經網路解決實時性問題,主要通過信號配飾優化解決問題[5],這些方法能在一定程度解決問題,但由于計算復雜度過高而不利于實際應用。吳維[6]提出一種基于互斥算法的方式解決動態信號控制問題,但在高交通流壓力下系統仍會面臨高復雜性計算問題。隨著物聯網的發展,許多研究也在朝著無線感知聯網技術靠近,但大量的傳感設施建設也會帶來能耗問題。因此,車載自組網技術能有效解決這一問題。Bento et al.提出一種基于車載自組網技術的智能信號控制方式[7],Jabbarpour 等人研究了車流密度和速度如何影響車載自組網中基于位置的路由協議,通過這種方式各車輛收到信號從而避免擁堵[8],但所有車輛只能在很短的距離內交互。物聯網技術的興起能在很大程度解決此問題,不但能提升信息交互速率同時增加傳輸距離。本文主要討論如何基于物聯技術改善交叉口交通流量問題,提出一個假定十字交叉口,有東南西北(E、S、W、N)四個方向,每個方向上有兩條進口車道,分別是直行(F)和左轉(L),還有一條行人過街道(PF)。由于右轉車道不會形成沖突因此本文暫不論及。本文對車輛和行人做統一考慮,一個交叉路口總共有以下12 種對象狀態。見圖1。
表1 和表2 顯示了交叉口中各方向車道與行人道間的沖突關系,“x”代表兩方向存在沖突,空白代表不存在沖突。

表1 各方向車道間沖突關系

表2 各方向車道與行人間沖突關系
在計算機科學領域中,進程同步理論是較為常用的理論,是指多道程序環境下,進程并發執行,不同進程間存在著不同的相互制約關系。為了協調進程之間的相互制約關系,達到資源共享和進程協作,避免進程之間的沖突,引入進程同步的概念[9]。圖2 表達了進程間通信的原理,如有兩個進程需要進行通信,需通過兩種機制,分別是發送send(message)和接收receive(message),通信完成時,進程間的連接將被切斷。

圖2 進程間通信:消息傳送
本文探討基于物聯網技術的交叉口車流量控制,當一輛車或一個行人到達交叉口時,車或行人發送信號請求通過,系統實時分析交叉口路況決定允許通過時間。由于考慮到通信數據實時性的問題,本文只討論基于本地無線聯網的車輛及行人之間的通信。
車聯網系統中車輛識別基于每輛車的ID(車牌)以及車輛的高精度定位,行人可通過手機端接收信號,因此系統可檢測到每個進入交叉口的對象的行進方向以及時間。圖3 表示交叉口各對象間的通信架構。

圖3 交叉口各對象間通信架構
每個方向的傳感設備可檢測進入區域內的車輛和行人,交通信號燈和行人信號燈顯示為變量(紅燈和綠燈)。無線網基站提供對象間的無線通訊,假定此設備傳送范圍能夠覆蓋整個區域。
圖4 表示了交叉口內車輛和行人與系統的交互方式,當一個對象來到交叉口后,需要發送請求信息至控制單元,根據實時狀況,控制單元向請求對象回復允許通過信號或將其放入排隊名單,等待回復信號。當車輛或行人通過交叉口后,需要向控制單元回復完成信號。
算法1 體現了車輛和行人與交叉口控制單元的交互方式,當對象i 進入交叉口區域時,將向控制單元發送通過請求,信息內容包含對象編號id 和道路名稱li,等待控制單元回復消息,圖5。當控制單元收到對象i 的訊息后,將分析交叉口交通流量(算法2),檢測是否有行人或車在沖突方向運動,當交叉口出現堵塞情況,對象i 會被列入等候名單Pl 不允許i 通過(算法3)。其它情況會允許i 通過[10-11],圖6。
當車輛離開交叉口后,必須發送信息告知控制器,控制器檢查等候名單,并告知下一對象,整個過程控制器按照先進先出模型進行處理。

圖4 交叉口對象間信息傳送方式

圖5 算法1

圖6 算法2
當交通流迅速增多時,可能出現多輛車互相等候的狀況,造成死循環堵塞[12],示意圖見圖7。現有交通控制系統沒有將此情況納入考慮范圍,因為此情況出現概率較小。在本文討論的車聯網情形中,系統能實時檢測車輛的實時位置和到達時間,并通過Floyd 判圈算法在車輛通過交叉口時判斷死循環會否發生。

圖7 死循環舉例

圖8 算法3
死循環檢測算法步驟:(1)轉化為Floyd 判圈算法G(N,E),將各車輛當作點,從i 車到j 車的邊表示i 等待j 的空間;(2)利用判圈算法找到有向圖中的圈;(3)若結果是true 則存在死循環,相反則車輛可通過交叉口。此算法的復雜度為O(n2),n 代表此刻區域內的車輛數,圖8。
本文的目的是通過進程同步方法在大流量交通情形下提升交叉口的通過率并減少等待時間,主要通過在一定的時間內交叉口通行的車輛數以及等待時間來判斷系統有效性。對象i 的通過時間可按如下公式計算:

本章引入循環調度算法,并通過Netlogo 仿真軟件進行對比,表3 是設定的模擬參數。

表3 模擬參數
圖9 和圖10 表示經過10 次模擬的車輛和行人到達交叉口的數量分布情況(按升序)。
圖11 是循環調度算法和進程同步算法兩種算法在相同時間條件下(1000 ticks)交叉口通行車輛數比較,可以看到本文算法更優,因為基于動態交通流控制,車輛在沒有沖突的情況下即可通過交叉口,極大程度上減少了等候時間。圖12 體現了兩種算法得出的最大和最小等候時長對比,等候時長通常隨交通流密度的增大而增長,但本文所使用的方法呈現的變化卻不明顯,原因是本文的處理機制遵循先進先出原則,車輛能夠盡快通過交叉口。圖13 顯示了平均等候時間。
圖14 和圖15 顯示了隨著行人密度的增長,兩種不同算法對交通流量控制的比較,顯然進程同步法更優于循環調度算法。從平均等候時間角度看,通常等候時間同流量成正比,但通過本文算法得出的結果可看到等候時間隨流量增加并無明顯變化,原因同前文。

圖9 車輛數隨機分布情況

圖10 行人數隨機分布情況

圖11 一定時間段內的通行車數
本文提出利用物聯網技術實時獲取道路對象信息并對流量進行實時控制,然而實際情況中可能需要大量多種類的物聯設施實現多個交叉口的聯動,此外本文尚未考慮其他形態交叉路口,以及緊急車輛的通行問題。未來仍有許多工作可進行研究。
本文提出一種基于進程同步理論的交通流實時管控手段,當車輛或行人進入路口時,能實時與系統進行交互,極大節省了等候時間,提升了通行效率。此外,本文還提出一種新式避免等候死循環的算法,結果證明能較大程度減少對象等候時長。

圖12 最大和最小等候時長

圖13 平均等候時長

圖14 一定時間段內的車輛和行人通行數

圖15 車輛和行人平均等候時長