(武漢理工大學,湖北 武漢 430070)
中國正處于從工業化到城市化的轉變過程中,交通網絡對于城市的建設具有重要意義。然而,由于中國城市人口的急劇增加,中國人均汽車保有量的上升,城市交通網絡的負荷過大,由此導致了城市內部交通擁堵、交通事故頻發等問題。為了解決這一問題,眾多專家學者進行研究,并提出一種從交通管理入手的解決方案,即智能交通系統。
智能交通系統[1](Intelligent Transportation System)簡稱ITS,它的主要方法是通過技術手段,把道路交通、人、車緊密結合起來,綜合解決道路交通中所出現的問題。然而,隨著城市內交通量的增大,智能交通系統產生的數據也在急劇增大,這些數據對于智能交通系統的后臺是巨大的挑戰,并且,在現有的智能交通系統的構建過程中,軟硬件都是和系統緊密綁在一起的,這就造成了各個物理子系統的分離,各個系統之間容易產生數據孤島現象,很難對數據實現綜合分析。而云計算具有儲存數據量大、計算速度快的特點,基于此,本文提出一種基于云計算的道路行程時間預測系統。
該系統用環形感應線圈檢測器、微波檢測器、超聲波檢測器等車輛信息監測器獲得道路交通信息并將信息通過無線網絡傳輸到云計算平臺,云計算平臺對傳輸過來的道路交通信息進行處理并建立歷史數據庫,利用卡爾曼濾波算法和歷史數據庫對道路的行程時間實現多步預測,利用云計算平臺可以將預測的結果發送到用戶的移動設備上,能夠讓用戶避開交通擁堵的路段,節約用戶時間。
對于云計算,目前還沒有統一的定義,概括而言[2],云計算是一種對IT資源的使用模式,對共享的可配置資源,提供普適的、方便的、按需的網絡訪問,使用時不需要很大的管理代價。云計算具有高可靠性、高可拓展性、按需服務和廉價等特點,學術界對云計算的服務方式進行了總結,目前一致認為云計算能為用戶提供三種服務方式,包括基礎設施即服務(IaaS)、平臺即服務(PaaS)和軟件即服務(SaaS),其中基礎設施即服務主要能為用戶提供相應的計算和儲存能力,平臺即服務能為用戶提供應用程序開發、數據庫、應用服務器、試驗、托管及應用服務,軟件即服務能為用戶提供定制的軟件使用服務。其中,平臺即服務是云計算服務模式中最為關鍵的一層,在整個云計算體系中起著支撐的作用。
為了能對道路的行程時間進行準確的預測[3],需要采集大量的道路信息,為了能減少信息孤島現象的出現,同時也能夠對交通中產生的大數據信息進行有效的儲存和計算,提出基于云計算的道路行程時間預測系統,系統的框架如圖1所示,系統的框架主要包含四層。
第一層為基礎設施層。該層主要包括視頻檢測器、磁感應線圈檢測器和超聲波檢測器等自動交通數據采集設備采集道路交通中的信息,采集的道路交通信息通過4G/5G網絡的方式傳輸到云計算平臺的基礎設施層即服務層。
第二層為云計算的IaaS平臺層,該層主要是提供虛擬資源,比如海量的計算資源和存儲資源,接受基礎設施層通過網絡傳輸過來的數據。

圖1 基于云計算的道路行程時間預測系統框架
第三層為云計算的PaaS平臺層,該層能夠對數據進行預處理,并根據預處理之后的數據建立模型,并根據模型實現對道路行程時間的預測。
第四層為用戶層,在云計算平臺完成對道路行程時間的預測后,可以通過無線網絡將數據傳送給用戶,幫助用戶做好相應的決策,用戶有意見也可以通過網絡反饋給云計算平臺。交管部門利用預測信息做出交通誘導,降低城市道路的交通擁堵。
現有的對道路行程時間的模型根據對數據要求的不同可以分為以下三個種類:第一類是統計類的方法,該方法側重于對歷史數據進行處理,并從歷史數據中查找規律,并基于這些規律對未來的道路行程時間進行預測,以歷史趨勢法作為代表;第二類是使用技術類的方法,對當前交通數據進行分析,并預測下面時刻的道路行程時間,比如神經網絡算法、卡爾曼濾波算法等;第三類是仿真類算法,主要用計算機對道路交通狀況進行模擬,從而預測出道路的行程時間,比如VISSIM系統。考慮到在道路行程時間預測時計算的實時性、預測精度、復雜性以及在線調整等因素,卡爾曼濾波算法比較合適。因此,選取卡爾曼濾波算法對道路的行程時間進行預測。
卡爾曼濾波算法是由Kalman和Bucy在1960年提出的,它是一種時域上的狀態空間方法,自被提出以來,已經被應用到很多領域,比如社會經濟、航空航天和工業工程等領域,中國學者楊兆升[4]在1999年曾用卡爾曼濾波模型對行程時間進行預測。
卡爾曼濾波算法可以用下面的式子進行表示,先引入一個離散控制過程的系統,該系統可用下面一個線性隨機微分方程來描述。

其中,TK表示K時刻道路的行程時間,uK-1表示K-1時刻對道路行程時間的控制量,A和B表示系統參數,對于多模型系統而言,它們可以表示為矩陣。yK表示K時刻的測量值,H表示測量系統的參數,對于多測量系統而言,H可以表示為矩陣,qK-1和rK分別表示過程和測量的噪聲,又被假設為高斯白噪聲,假設它們的數值不隨時間的變化而變化,那么卡爾曼算法的5個更新方程如下所示:

在上面的式子中,GK表示卡爾曼增益,PK表示系統的誤差協方差矩陣,TK-表示預測的K時刻的道路行程時間,PK-表示預測的過程中產生的誤差協方差矩陣,式(3)表示基于現在的狀況對未來的狀況進行預測,式(4)表示計算本次預測時所產生的誤差協方差矩陣,式(5)表示計算卡爾曼增益,式(6)表示結合觀測到的數據對本次預測進行修正,式(7)表示修正誤差協方差矩陣,以為下一步預測準備。上述算法可以使用Matlab語言進行編程并實現計算。上述的卡爾曼濾波算法為單步預測,預測的時長為5-15min左右,若想對更遠的時間進行預測,需要進行多步預測。
在上述的單步的卡爾曼濾波算法預測道路行程時間中,需要實時的數據進行計算,比如需要實時的對預測模型中的卡爾曼增益進行不斷的修正,以使得系統的誤差協方差矩陣達到最小,然而實時數據的最佳獲取時間都在15min以內,因此限制了單步的卡爾曼濾波算法預測的時間長度。將結合歷史上同類型日子的道路行駛時間去實現多步預測[5]。
首先在云計算平臺上建立交通信息歷史數據庫,將每天的道路交通信息都儲存在歷史數據庫中,當需要對道路行程時間進行預測時,從交通信息歷史庫中選取與當前交通狀況比較相似的歷史日子,從中選取道路行程時間作為參考,完成對道路行程時間的預測。在評價交通狀況是否相似時,見式(8),當前時刻以前的三個時刻的道路行程時間TK-1,TK-2,TK-3與歷史數據庫中相同時刻之前的三個時刻的道路行程時間TK-1P,TK-2P,Tk-3P的相對誤差之和為ZP,當誤差之和ZP最小時,則選擇出了與當前日子交通狀況最相似的歷史日子。

在最相似的歷史日子中,選取當前時刻以及未來五個時刻的道路行程時間,將這6個數據當作測量值 yK代入到式(1)-(6)進行迭代運算,就能夠完成多步的預測,在選取數據時,一般選取周期為5-15min,當周期過長,會導致預測的準確度降低,當周期過短,會導致預測的時間太短,不能夠完成道路行程時間的長時間的預測,最后參考以往的研究,選取10min為測量周期,經過6步預測之后,預測的道路行程時間可以提升至60min。
為了對模型進行驗證,采集了位于武漢市洪山區珞獅路的道路行程時間的數據,珞獅路全長3.3km[6],是武漢市洪山區的一條雙向主干道,北起八一路,南至南湖大道,由于道路下面修建地鐵,珞獅路最近半年內都是武漢市最為擁堵的十條路段之一,早高峰一般出現在從南向北的道路,出現時間為7∶30-8∶30,晚高峰出現在從北向南的路段,出現時間為5∶30-6∶30,早高峰一般出現在工作日,其中周一的早高峰最為擁堵,晚高峰一般出現在周五,周六周日比較相似,但跟工作日的狀況明顯不同,其中,天氣狀況對于道路交通有一定的影響。本文主要對早高峰的情況進行模擬仿真。
在建立早高峰的歷史數據庫時,需要分為六個種類的數據,見表1。當需要調用數據時,就能夠更加快速地從歷史庫中尋找合適的參數對道路的行程時間進行預測。

表1 歷史數據庫中的存儲種類
通過視頻檢測器采集車牌的信息并利用軟件進行自動識別[7]或通過人實際觀察的方式采集道路信息,從而能夠觀測出道路的行程時間,采用10min/次的采集頻率對汽車信息進行采集,將采集的信息傳送到歷史數據庫中并分類儲存,利用卡爾曼多步預測能夠實現道路行程時間的預測,主要對珞獅路兩周的道路行程時間進行預測,預測結果和實際值如圖2所示。
觀察圖2可以發現,通過卡爾曼濾波多步預測可以對珞獅路的道路行程時間進行預測,預測的結果與實際的觀察值大都是擬合的,道路行程時間的預測值和實際值的變化趨勢是趨同的。由圖3可知,預測的結果的大部分的百分比的相對誤差[8]都在10%以下,其中有一個誤差為12%,也在可以接受的范圍內,因此可以驗證這個算法對道路行程時間的預測是可行的。

圖2 實際的道路行程時間和預測的道路行程

圖3 預測的百分比相對誤差
由于中國城市人口的急劇增加,中國人均汽車保有量上升,城市交通網絡的負荷過大,由此導致了城市內部交通擁堵、交通事故頻發等問題,本文對基于云計算的道路行程時間的預測進行了研究,通過傳感器采集道路交通信息,通過無線網絡將信息傳送到云計算平臺,通過云計算平臺對信息進行分析,利用卡爾曼濾波算法完成道路行程時間的預測,提出相應的算法,并利用算法對道路的行程時間預測進行了仿真,驗證了其可行性。利用預測結果可以對道路交通進行實時誘導,對于降低城市交通擁堵和交通事故發生的次數具有重要意義。