楊馬英,樓 挺,李一飛
1 (浙江工業大學 信息工程學院,杭州 310023)2 (浙江工業大學 計算機科學與技術學院,杭州 310023)
交通擁堵是一種常見的現象,在許多城市中這已經成為一種城市病.交通擁堵直接造成了城市的整體運轉效率降低,間接的導致了經濟損失.根據中國交通部發表的數據顯示,交通擁堵帶來的經濟損失占城市人口可支配收入的20%,相當于每年國內生產總值損失5-8%,每年達2500億元人民幣.如果可以準確預測道路未來的車速,那么在擁堵發生之前就可以采取預防措施來幫助解決擁堵問題.
預測道路未來的車速是一個具有挑戰性的問題,道路未來的車速受到以下三個因素影響:1.空間依賴.一段道路的車速受到其上游的車速和下游的車速的影響.2.時間依賴.一段道路的車速受到上個時間段道路車速的影響.特定的時間點也會影響道路車速,例如工作日的早高峰和晚高峰車速會下降.3.其他因素.例如在下雨、大霧等天氣情況下,道路車速會較慢.節假日也會影響道路車速.
目前國內外對于交通擁堵預測的諸多研究,主要有基于時間序列相關的預測分析[1,2]、向量自回歸方法[3]、神經網絡預測[4,15,16]、貝葉斯網絡預測等方法[5,6].這類方法的研究多見于理論研究,且由于其立足的基礎理論在處理大數據上缺少魯棒性,所以導致模型普遍缺乏長效性和擴展能力[7].
深度學習可以讓那些擁有多個處理層的計算模型來學習具有多層次抽象的數據的表示.這些方法在許多方面都帶來了顯著的改善,包括最先進的語音識別、視覺對象識別、對象檢測和許多其它領域,例如藥物發現和基因組學等[8].LSTM(Long Short-Term Memory)是深度學習中的一種方法,它適合解決時間序列輸入輸出問題[9],因此十分適用于解決道路車速預測問題.本文應用LSTM網絡來處理具有時空特性的道路車速信息,結合神經網絡中的全連接層來融合外部因素,構建了一個端對端的基于LSTM的道路未來車速預測模型研究(FSPOL).
預測道路車速首先需要能準確估計道路的平均車速,浮動車技術是目前常用的獲取道路交通信息技術手段之一,而出租車GPS 數據是該技術重要數據來源.許多城市的出租車都安裝了GPS 設備,這些設備往往以較小的時間間隔持續的向出租車管理部門上傳車輛序號、車牌號碼、GPS時間、車輛行駛狀態(載客,空載)、精度、緯度等數據.由于出租車長時間、大范圍的城市出行特點,安裝有 GPS 設備的出租車通常被視為流動的檢測器,能夠很好的反應城市全局路網的交通動態,一定程度上克服了定點設備檢測范圍有限、成本昂貴、建設困難等缺點[10].本文以出租車軌跡數據來估算道路的平均車速.
車輛行駛軌跡Traj可以定義以下一個多元組:
Traj=
(1)
公式(1)中pi,i∈[1,n]為車輛行駛軌跡上的任意一個定位點,包含空間位置信息,時間信息等,并按照編號由小到大依時間先后順序排列.生成軌跡的過程如下:
1.根據車輛ID將GPS數據按時間先后排序,按先后順序去取GPS數據;
2.新建軌跡Traj(Traj是一個包含按時間排序的車輛GPS數據的集合),并將當前GPS數據加入Traj中;
3.取下一條GPS數據,如果此GPS數據與當前Traj中車輛的ID不同則執行步驟2;否則執行步驟4;
4.將當前GPS數據加入到Traj中,執行步驟3;
5.最后我們可以得到根據車輛ID區分的軌跡數據集.
城市道路車輛的速度具有明顯的時間特性和空間特性.在時間上,同一天中未來某時段的運行速度受到上一個時段及上幾個時段等多個歷史時段運行速度的影響,在同一周內,工作日某一時段的運行速度受到前幾個工作日該時段運行速度的影響,具體表現為速度的周相似性,已有研究表明運行速度的周相似性程度較高,具有很強的規律性;在空間上,由于路網的連通性,上游道路的運行速度會直接影響到下游道路的運行速度,下游道路交通阻塞等情況也會影響上游道路車輛的運行速度.因此,路段下一時段的運行速度不僅與該路段當前時段的速度數據及歷史速度數據有關,同時也與其上下游路段當前時段的速度數據及歷史速度數據有關.因此需要對GPS軌跡數據進行時間和空間上的劃分,得到預測所需的時間、空間信息.
在每一條GPS數據中都有時間信息,因此很容易可以對軌跡進行時間劃分.GPS數據的空間劃分是將GPS數據和具體的路段聯系起來,目前針對GPS 數據的地圖匹配算法有:基于道路幾何信息的匹配算法、基于概率統計的匹配算法以及基于卡爾曼濾波的匹配算法,基于人工神經網絡的匹配算法等.除了基于道路幾何信息的匹配算法,其他算法復雜性相對較高,因而對于實時性要求高、數據量較大、行駛道路環境復雜多變的出租車,這些種算法很難符合要求.一般一小段道路在地圖中可以認為是一個平行四邊形,因此本文采用平行四邊形框來選取經過道路的GPS軌跡[11].
對于每個路段在每個時間段中的軌跡數據,我們可以用來估算平均車速.要計算一個路段的平均速度首先需要計算每一條軌跡的速度,每一條軌跡Traj的車速計算方法如公式(2):
(2)
可以采用歐氏距離計算小范圍內兩點之間的距離,計算方法如公式(3)所示:
(3)
公式(3)中,xi和yi表示pi中的空間位置信息.由于采集數據中難免會有誤差,因此需要將異常的速度數據予以刪除,保證軌跡速度數據有效,本文采用四分位法去除異常.每個路段的平均速度的計算如公式(4)所示:
(4)
公式(4)中,vi表示軌跡i的速度.但是上述方法較容易受到高速,低速樣本對終結果帶來的影響.考慮行程距離的因素可以使結果更加精確[12],計算方法如公式(5)所示:
(5)
公式(5)中Li表示軌跡走過的總路程.
同一天中未來某時段的運行速度受到上一個時段及上幾個時段運行速度的影響.在一周內,工作日某一時段的運行速度受到前幾個工作日該時段運行速度的影響.空間上,由于路網的連通性,上游道路的運行速度會影響到下游道路的速度.反過來,下游道路交通阻塞也會影響上游道路車輛的運行速度.因此,某一路段下一個時段的運行速度不僅與該路段當前時段的速度及歷史速度有關,同時也與其上下游路段當前時段的速度及歷史速度有關.基于上述考慮,在對速度進行短時預測時,不僅僅考慮當前路段當前時段及前幾個時段的運行速度,還考慮了該路段上下游、和上周同一天的當前時段和前幾個時段的運行速度.某路段在t+T時段的運行速度如公式(6)所示:
(6)
公式(6)中,F表示一種非線性函數關系;t表示當前時刻;T表示時間隔;vs,vx分別為上下游路段的平均運行速度值;vW為預測路段上周同一天相同時段的平均運行速度;n可以稱為時段參數,表示選擇前n個時段的道路車速特征來預測未來車速.
道路的車速會受到許多其他因素的影響,例如天氣事件.圖1(a)展示了在下雨天和晴天的道路平均車速.從圖中可以看出雨天時大部分時間段道路的平均車速低于晴天.
道路的車速還會受節假日的影響,上圖展示了工作日和周末的道路平均車速.從圖中可以看出工作日的道路車速高峰在早上9點左右,晚高峰在晚上6點左右,而工作日則沒有明顯的早高峰和晚高峰.本文選取天氣和星期幾作為額外特征fext來提升道路預測精度.

圖1 不同天氣和日期情況下的道路車速狀況圖Fig.1 Road speed chart under different weather and date conditions
RNN網絡的結構如圖2所示.RNN 可以被看作是同一神經網絡的多次復制,每個神經網絡模塊會把消息傳遞給下一個,RNN的這種結構適用于處理時序數據.

圖2 RNN網絡結構圖Fig.2 RNN network structure diagram
LSTM是一種特殊類型的RNN,它繼承了大部分RNN模型的特性,同時解決了梯度反傳過程由于逐步縮減而產生的梯度消散問題[9].LSTM的基本單元是一個細胞和三個門,分別是輸入門(input gate),遺忘門(forget gate)和輸出門(output gate),如圖3所示.輸入門是將新的信息選擇性的記錄到細胞狀態中.遺忘門是將細胞狀態中的信息選擇性的遺忘.輸出門是用來控制細胞的輸出值.通過這三個門的協作,可以使細胞中包含的信息不斷的更新和遺忘,因此十分適用于處理時序數據.

圖3 LSTM網絡結構圖Fig.3 LSTM network structure diagram
道路未來的車輛行使速度和之前時段的車輛行使速度有很大的關系,預測選取的預測特征具有時序信息,因此可以用LSTM來進行道路車速預測.
本文預測道路所選取特征包括當前路段當前時段及前幾個時段的行使速度,還考慮了該路段上下游、上周同一天的當前時段和前幾個時段的運行速度,這些特征都是時序數據,因此考慮使用LSTM來處理每一種時序數據提取特征.

圖4 模型結構圖Fig.4 Model structure diagram
本文設計模型如圖4所示,圖4中,Vs代表上游路段的時空特征,V代表需預測路段的時空特征,VW代表需預測路段上周同一天的時空特征,Vx表示下游路段的時空特征.FC單元表示神經網絡中的全連接層.天氣類型共有陰、晴、小雨、多云等15種.天氣信息映射成一個15維的特征向量,星期信息映射成一個7維向量,因此Fext是一個22維的特征向量.模型各層的特征維度信息如表1所示.
表1 模型各層的特征維度信息
Table 1 Feature dimension information of each layer of the model

輸入層Vs(1,n)V(1,n)VW(1,n)Vx(1,n)Fext(1,22)隱層1輸出(1,n)(1,n)(1,n)(1,n)(1,10)隱層2輸入(1,4?n+10)隱層2輸出(1,5)
表1中n為時段參數,表示選擇前n個時段的道路車速特征來預測未來車速.
模型采用均方根誤差(RMSE)作為預測誤差,如公式(7)所示:
(7)

訓練中batch的最小值設置為64,訓練的終止條件設置為迭代訓練10000次.
表2 模型訓練方法表
Table 2 Table of model training method

模型訓練算法:輸入:按照時空劃分的道路平均速度:{V0,v1,…,V179}其他特征:{fext}時間段參數:n輸出:訓練好的模型//準備訓練樣本初始化T—>0Fori(n5 仿真和驗證
5.1 數據
原始數據包括成都市1.4萬輛出租車的超過14億條GPS記錄.這些GPS記錄的時間范圍從2014年8月3日開始,到2014年8月30日為止,中間缺失了8月7日,8月13日,8月17日.這些數據已經經過了初步處理,清洗掉了其中重復和異常的記錄,并忽略了00:00:00~05:59:59這一時間段的記錄.已掌握的數據包括三個部分:1)出租車GPS數據;2)道路軌跡數據;3)用于輔助識別軌跡對應的前一小時的GPS記錄數據,其中乘客狀態1表示載客,0表示無客,如表3所示.
表3 出租車GPS數據示例表
Table 3 Sample table of taxi GPS data

出租車ID緯度經度載客狀態時間點112230.4996330.4936530.6319730.63188103.97717104.00362104.03840104.03667110106:01:2206:02:2206:01:1306:02:53
本文選取了成都市一環路、二環高架路、人民路、蜀都大道等10多條道路上的100個路段為研究對象.實驗中定義路段長為500米,時間段設置為10分鐘.實驗中樣本的總數量受到如下因素的影響:是否有前一周當時的道路車速數據(共16天可提供完整數據)時段參數n的影響(n太小則缺少之前時段的信息,會導致預測不準確,n太大則會有太多和下一時段不相關的信息影響下一時段車速的預測,因此考慮n∈[3,10],共約270000的樣本數量).本文在實驗中隨機挑選70%的樣本作為訓練數據,剩下的30%作為測試數據,如表4所示,誤差通過公式(13)計算.
表4 不同時段參數下模型的精度表
Table 4 Accuracy table of the model under different time interval parameter

n訓練集誤差測試集誤差3456789103.693.613.213.573.183.503.234.145.464.924.524.904.564.994.745.09
首先驗證了當n∈[3,10]時模型在整個數據集上的精度.從表3可以看出當n=7時,訓練集誤差最小為3.18.當n=5時測試集誤差最小為4.52.從總體上來看,當n∈[3,10]時,訓練集誤差和測試集誤差非常接近,因此本文提出的模型魯棒性較強,受參數的影響較小.

圖5 模型預測展示圖Fig.5 Diagram of model predictive display
圖5展示了n=5時本文方法的預測結果,橫坐標為時間,縱坐標為汽車行駛速度,從圖上的結果可以看出預測結果和實際結果較為接近,表明本文方法取得了較良好的預測結果.
為驗證本文方法(FSPOL)的性能,選擇目前比較優秀的四個模型進行對比:
1.ARIMA(Auto-Regressive Integrated Moving Average):一種用來處理時序數據的常用模型[1,2].
2.VAR(Vector Auto-Regressive):一種可以處理時空數據的模型,它可以發現輸入特征之間的關聯,但是這個方法的參數較多,計算量較大[3].
3.RBF(Radial Basis Function Network):徑向基神經網絡是一種前饋反向傳播網絡,是一種可以在高維空間內插值并可以進行局部逼近的神經網絡,這種網絡訓練速度快,適合一些實時性較強的場合[14].
4.DBN(Deep Belief Network):深度信念網絡(DBN)是深度學習中一個非常成功的模型.DBN采用無監督的預訓練方法,對于噪聲具有很好的穩定性,可以達到很小的均方誤差和很高的識別率[15].
本文方法(FSPOL,n=5)和上述四種傳統的方法比較實驗結果如表5所示,誤差通過公式(13)計算得到.
表5 不同方法的預測精度表
Table 5 Prediction accuracy table for different methods

方法訓練集誤差測試集誤差ARIMAVARRBFDBNFSPOL 7.743.610.13.183.218.284.9517.224.894.52
實驗結果表明 ARIMA和RBF方法在總誤差的表現上差于其他三種方法.RBF方法訓練集的誤差只有0.1,但是在測試集上的誤差確達到了17.22,模型出現了過擬合現象.本文方法在測試集誤差上均取得了最佳的結果.可以認為本文方法取得了優于其他4種方法的預測結果.另外本文方法的訓練集誤差和測試集誤差的差值是最小的,這說明本文方法的泛化性能較強.
預測道路未來車速受限需要解決道路車速估計的問題,本文采用浮動車技術來估計道路車速.在時間上,道路未來的車速受前幾個時段的車速的影響;在空間上,道路未來的車速受當前道路上游、下游道路的影響,因此本文選取了時空特征來預測未來車速,并用LSTM來處理這些時空特征.道路未來的車速還受到天氣,節假日等因素的影響,采用神經網絡中的全連接層來融合這些特征.本文基于成都市的數據進行了驗證,結果表明本文提出的模型魯棒性較強,模型的泛化性能較強,模型的預測精度較高.