日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

基于城市交通监控大数据的行程时间估计

發布時間:2025/3/15 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 基于城市交通监控大数据的行程时间估计 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

點擊上方藍字關注我們

基于城市交通監控大數據的行程時間估計

李文明1,?劉芳1,?呂鵬1,?于彥偉2

1?煙臺大學計算機與控制工程學院,山東 煙臺 264005

2?中國海洋大學計算機科學與技術系,山東 青島 266100

?

摘要隨著智慧交通的發展,越來越多的監控攝像頭被安裝在城市道路路口,這使得利用城市交通監控大數據進行車輛行程時間估計和路徑查詢成為可能。針對城市出行的行程時間估計問題,提出一種基于城市交通監控大數據的行程時間估計方法UTSD。首先,將交通監控攝像頭映射到城市路網,并根據交通監控數據記錄構建有向加權的城市路網圖;然后,針對行程時間估計,構建時空索引和反向索引結構,時空索引用于快速檢索所有車輛的攝像頭記錄,反向索引用于快速獲取每輛車輛的行程時間和經過的攝像頭軌跡,這兩個索引大大提升了數據查詢和行程時間估計的效率;最后,基于構建的索引,給出一種有效的行程時間估計和路徑查詢方法,根據出發時間、出發地和目的地,在時空索引結構上匹配出發地與目的地共有的車輛,再利用反向索引,快速獲得行程時間估計與車輛路線。使用某省會城市的真實交通監控大數據進行實驗評估,所提方法UTSD的準確率比基于有向圖的Dijkstra最短路徑算法和百度算法分別提高了65.02%和40.94%,且UTSD在以7天監控數據作為歷史數據的情況下,平均查詢時間低于0.3 s,驗證了所提方法的有效性和高效性。

關鍵詞?城市交通監控大數據?;?時空索引結構?;?行程時間估計?;?路線推薦

論文引用格式:

李文明, 劉芳, 呂鵬,? 等. 基于城市交通監控大數據的行程時間估計[J]. 大數據, 2021, 7(1): 107-123.

LI W M, LIU F, LV P, et al. Travel time estimation based on urban traffic surveillance data[J]. Big Data Research, 2021, 7(1): 107-123.


1 引言

近年來,城市的快速發展,城市內的車輛數量不斷增加,導致了交通擁堵、交通事故頻發等一系列的交通問題。在這種環境下,如何提高日常生活中的城市出行效率成為出行用戶的首要考慮問題,而作為交通服務中的一項基礎功能,路徑規劃為人們尤其是不熟悉路況的人提供了重要的出行路線參考。在移動互聯的大數據時代,大數據、人工智能、云計算、物聯網、智能終端等先進技術的不斷發展,為綜合交通的一體化、智能化、智慧化發展提供了堅實的資源和技術支撐。城市交通中的車輛路徑查詢和行程時間估計一直是交通行業的熱門問題,目前的大部分路線推薦方法利用車輛的GPS軌跡數據進行車輛的路線規劃以及行程時間估計。而隨著城市交通以及智慧交通的發展,越來越多的監控攝像頭被安裝在城市道路路口,以實時監控城市的交通狀況,這些智能化的監控攝像頭可以實時記錄路口車輛的各種信息,如車牌號、經過時間以及行駛方向等。因此,無論車輛是否裝有GPS等定位設備,相關人員都能夠通過城市的交通監控系統獲取整個城市所有車輛的行駛軌跡信息。利用城市交通監控中的攝像頭數據進行城市出行路線規劃和行程時間估計成為可能。

雖然城市交通監控系統的部署正在逐步完善,但是其安裝和維護的成本等問題使得交通監控攝像頭的數量及其覆蓋的范圍仍然有限。此外,交通監控數據是通過固定部署的監控攝像頭獲得的,觀察到的車輛軌跡數據并不是完整的車輛行駛軌跡。因此利用交通監控攝像頭的車輛數據進行查詢時,會遇到以下3個挑戰。

● 查詢效率問題:路徑推薦和時間估計是從某個范圍區域內所有監控攝像頭的車輛歷史數據中查找車輛行駛軌跡和時間,涉及的數據規模非常大;此外,城市出行一般為即時查詢,對查詢效率有較高的要求。如果不能在短時間內對海量數據進行查詢處理,就無法實時得到查詢結果,失去了城市出行的行程時間估計的意義。如何提高查詢效率是使用交通監控大數據進行查詢的一個亟待解決的問題。

●路線選擇問題:在實際生活中,車輛并不總是簡單地從起始點出發,直接到達結束點,而是存在多條可能的軌跡路線。例如,車輛可能在行駛過程中停留,導致實際行程時間增加。如圖1(a)所示,對于同樣的起始點A和結束點B,3條軌跡(T1、T2、T3)花費的時間不同,其中T1為正常行駛軌跡,花費300 s;T3由于繞行,花費了600 s。由此可知,并不是任意兩個點之間都存在直接路線。在T2和T1軌跡長度相近的情況下, T2的行駛時間為600 s,耗費的時間遠大于T1,這很可能是T2的車輛在中途停留,導致行程時間增加。此外,車輛在不同的時間從相同的起始點到相同的結束點花費的時間也可能不同,這與對應路段的道路擁堵程度、交通事故情況以及其他的交通因素有關。在圖1(b)中,對于同樣的起始點A和結束點B以及相同的軌跡路線,在8:00出發比在11:00出發需要的行程時間更長。在11:00,從A點到B點,T1和T2的行程時間均為300 s;而在8:00,從A點到B點,T3和T4的行程時間分別為400 s和350 s,所花費的時間比11:00時更長。這很可能是因為人們大多集中在8:00去上班,道路擁堵,導致行程時間變長。

● 噪聲問題:由于一些原因,交通監控攝像頭獲取到的車輛軌跡信息會存在較多噪聲。例如,在霧天或雨天,車牌號碼識別不準確,導致車輛信息錯誤;部分攝像頭因為故障沒有記錄到經過該路段的車輛信息,使得收集的車輛軌跡信息與車輛的真實軌跡不一致或車輛軌跡信息缺失等。

為了解決上述挑戰,本文將城市道路路口的攝像頭數據和聚類后的城市路網數據結合,將攝像頭和車輛的軌跡信息匹配到城市路網中對應的路口上,形成路網數據庫和攝像頭數據庫,包括攝像頭的位置、編號,以及車輛ID、經過時間等數據。然后結合R樹索引[3]構建時空索引和反向索引結構,時空索引用來根據位置信息和出發時間進行攝像頭數據庫的查詢,反向索引用來快速獲取每輛車輛的攝像頭軌跡路線和行程時間。兩種索引極大地提高了查詢效率。當給定出發地和目的地位置信息及出發時間后,將查詢位置信息與距其最近的攝像頭進行匹配,對該攝像頭及其所在路口攝像頭的數據進行查詢。根據攝像頭的監控數據可以得到出發地和目的地所含有的共同車輛ID,再根據車輛ID利用反向索引得到其經過的攝像頭編號和時間信息,經過時間排序,可以得到車輛的推薦路線和行程時間。

圖1???車輛出行的不同情況

綜上所述,本文主要貢獻總結如下:

● 本文提出了一種基于城市交通監控大數據的行程時間估計方法UTSD,可以實時進行城市出行的路線推薦和行程時間估計;

● 通過對城市監控攝像頭數據構建時空索引和反向索引,加快車輛行駛軌跡的查詢速度,從而快速得到車輛軌跡信息和對應的行程時間,極大地提高了監控大數據查詢和行程時間估計的效率;

● 在某省會城市的真實交通監控攝像頭數據上的實驗結果驗證了本文方法的有效性,相比對比算法,本文方法的性能有顯著的提升。

2 相關工作

與本文相關的前期工作可以分為兩類:時空數據管理和車輛行程時間估計。

2.1 時空數據管理

近年來,位置感知傳感器在GPS、4G、5G網絡等的應用中迅速普及,隨著時間的推移,這些應用會產生大量的位置數據,這就需要合適的索引結構來實現對如此大的位置數據集的高效查詢與處理。G樹索引在路網結構中應用較多,可以對路網進行有效的k近鄰搜索。R樹被廣泛應用于二維數據的索引。同時,R樹也可以將時間作為第三維度,變成三維R樹(3DRtree),如時空R樹(STR-tree)和軌跡束樹(TB-tree)。而三維R樹通過將時間維度劃分為多個時間間隔,并鏈接到相應的空間索引,又衍生出多個版本的R樹,如歷史R樹(HR-tree)。此外,還有一些基于網格的索引,它們可以將一塊區域空間劃分為多個網格,如扁平起始樹(CSEtree)和可擴展的高效軌跡索引(scalable and efficient trajectory index,SETI)。劃分后的網格由四叉樹或多維二叉樹構建,時間由混合B+樹或B樹進行索引。除了上述數據索引,反向索引也是一種有效的軌跡查詢索引。

有了合適的時空索引,才能有效地獲取軌跡數據。這對于本文所要解決的城市交通監控大數據的數據查詢問題更為重要。本文結合R樹索引,構建了存儲攝像頭記錄的時空索引,以及由車輛軌跡創建的反向索引,極大地提升了監控大數據的查詢效率。

2.2 車輛行程時間估計

本文將關于車輛行程時間估計問題的相關工作分為3個主要類別:基于鏈路的行程時間估計、基于路徑的行程時間估計和基于軌跡的行程時間估計。

(1)基 于鏈路的行程時間估計

基于鏈路的行程時間估計方法是估計路網中車輛行程時間的經典方法。這種方法主要適用于靜態的交通監控裝置,如車輛感應裝置和攝像頭裝置。對于浮動的車輛數據,如GPS數據,可以根據經過這些鏈路的車輛軌跡來推斷各個鏈路的行駛時間。例如,Hofleitner A等人基于交通流模型對鏈路的行程時間分布進行建模,并估計未來的行程時間。參考文獻使用最小二乘法根據僅包含結束點位置和有關行程的元信息(如行程距離)的出租車行程數據來估計鏈路的行程時間。還有一些方法可被用來估計未來短期的鏈路行程時間,如動態貝葉斯網絡算法、模式匹配算法、梯度增強回歸樹和深度學習算法等。

許多研究將估計的鏈路行程時間總和作為路徑的行程時間,這種方法的缺點是沒有考慮鏈路之間的時間花費,如車輛等待紅綠燈的情況。為了有效解決該問題,Rahmani M等人設計了一個非參數的鏈路行程時間估計方法,以減少基于鏈路的行程時間估計模型的時間偏差。然而,該模型需要良好的道路網絡動態覆蓋,導致這種方法只能適用于特定的高速公路區域或一些特定的路線。

(2)基于路徑的行程時間估計

參考文獻研究表明:直接測量道路上路徑的行程時間比分開單獨測量鏈路的行程時間準確度更高。然而并不是所有的路徑都可以直接測量行程時間,因此基于大規模路徑的行程時間估計需要將查詢路徑分解為較多的子路徑。為了解決這個問題,Wang Y等人研究了基于路徑的行程時間估計子路徑的長度和最小支持度的最優解。他們首先通過最小化子路徑的總行程時間方差來計算最優解,并對每個子路徑上的司機數量進行標準化;然后利用時空特征和驅動的張量分解,記錄每個子路徑的歷史行程時間;最后構造了一個評價函數,并利用動態規劃和后綴樹優化來選擇子路徑的最佳組合。該方法取得了很好的實驗效果,相比所有的基線算法和對比算法,其性能都有所提升。Jiang M Y等人在參考文獻的基礎上對算法進行改進,并用一種隨機優化算法Adam (adaptive moment estimation)替換了原算法中的SGD(stochastic gradient descent)算法,進一步提升了算法的效率。

參考文獻提出了一種局部頻繁共享算法,該算法從歷史數據中學習一組頻繁共享路徑的局部擁堵模式。該算法可以從距離查詢路段最近的軌跡中識別周圍的當前擁堵模式,然后結合歷史數據,估計未來的路徑行程時間。該局部頻繁共享算法的準確率比只使用歷史軌跡的對比算法的準確率提高了20%~30%。

(3)基于軌跡的行程時間估計

基于軌跡的行程時間估計從歷史數據中找到與所要查詢的出發地、目的地和出發時間相近的歷史軌跡,從而估計車輛的行程時間。軌跡和路徑的區別是:路徑是指路網中某一段道路,軌跡是指車輛的行駛軌跡,可能會包含多段道路。通常假設相同端點之間的車輛軌跡相同或存在少量的替代軌跡。因此,這種方法更適用于預定路線的估計,如參考文獻的公交車出行。參考文獻根據匹配的歷史軌跡計算查詢行程的時間分布,并使用統計檢驗方法消除異常值。參考文獻結合周期性交通模式和與之匹配的歷史軌跡對軌跡的行程時間進行調整估計。基于軌跡的行程時間估計也可以進行分層擴展,以實現某些路線的多樣性。Yuan H T等人提出了一種新的基于神經網絡的估計模型,根據軌跡的起迄點(origin-destination, OD)以及軌跡的行程時間,設計了一種特殊的編碼來與歷史軌跡相關聯,當輸入OD進行查詢時,可以通過編碼直接得到對應的歷史軌跡行程時間。

針對歷史軌跡數據索引的查詢, Ding Y C等人提出了一種遍歷軌跡聚合查詢(traversal trajectory aggregate query)算法,對歷史軌跡進行聚合存儲,并提出了一種新的目標索引采樣(targeted index sampling,TIS)框架,對數據進行采樣查詢,提高了查詢效率和查詢精度。

在參考文獻中,Yuan J等人將行程軌跡表示為一系列在城市熱門地標之間的短途軌跡。行程時間為地標到地標的行程時間總和,再加上從起始點到第一個地標以及從最后一個地標到結束點所花費的時間。Yuan J等人指出,盡管基于軌跡的行程時間估計的性能比基于鏈路的算法和基于路徑的算法好,但在獲得有用結果的同時,由于無法可靠地確定出租車行程的真實起始點和結束點,它無法被應用于沒有位置標記的軌跡中。而本文提出的基于監控大數據的行程時間估計方法也是基于軌跡的行程時間估計方法,所提方法查詢的監控大數據為真實車輛數據,均可以根據攝像頭記錄來確定車輛的真實起始點位置和結束點位置(即軌跡經過的第一個交通監控攝像頭位置和最后一個交通監控攝像頭位置)。

3 問題定義

本節首先給出重要的概念定義,然后對基于交通監控大數據的行程時間估計問題進行定義。

定義1 路網。路網表示為G=(N,E),其中N={n1,n2,……,nm}表示所有路口的集合,E表示路口之間所有路段的集合,ei,j∈E表示從路口ni到路口nj的一條路段。需要注意的是,每個路段都是有方向的,也就是說,ei,j不同于路段ej,i。定義2 攝像頭記錄。攝像頭記錄被定義為一個三元組(vehid,cam?j,ts?j),表示車輛vehid在tsj時刻經過攝像頭camj

定義3 車輛軌跡。車輛vehid的軌跡是一個根據時間排序的攝像頭記錄序列,表示為?,,其中表示車輛vehid在tsi時刻經過攝像頭cami

由定義3可知,車輛軌跡由車輛經過的所有攝像頭的時間序列構成,

本文將歷史監控攝像頭數據中所有含有同一車輛vehid的攝像頭記錄序列記為該車輛的車輛軌跡TRid,其部分車輛軌跡記為Trid。所有車輛的軌跡集合記為TRs。

本文將基于城市交通監控大數據的行程時間估計問題定義如下。

問題定義:給定路網G、路網上所有的攝像頭記錄(即所有的車輛軌跡集合TRs)、起始點位置O(lons,lats)、結束點位置D(lone,late)以及出發時間ts,目標是得出路線推薦以及行程時間估計Time。

表1給出了本文用到的主要符號及其含義。

4 基于城市交通監控大數據的行程時間估計方法

4.1 總體框架

圖2給出了本文提出的基于城市交通監控大數據的行程時間估計方法的總體框架,該框架主要包括三部分:數據預處理、構建數據索引以及行程時間估計。

圖2???總體框架

(1)數據預處理

數據預處理是指在數據查詢和構建數據索引之前對原始交通監控數據進行轉換和篩選處理,主要包括將攝像頭映射到路網上、從監控攝像頭數據中提取車輛軌跡兩部分。

(2)構建數據索引

當數據預處理完成之后,利用處理好的監控數據構建數據索引,提高數據查詢效率。數據索引包括時空索引和反向索引兩部分。時空索引是利用所有攝像頭記錄來檢索車輛的索引,給定攝像頭編號和時間,找到所有在該時間經過此攝像頭的車輛。反向索引是根據數據預處理得到的車輛軌跡構建的,它是通過車輛來查詢攝像頭的索引,主要用于查詢每輛車經過的攝像頭組成的車輛軌跡和對應的行程時間。給定車輛ID和出發時間,可以找到該車輛在出發時間及以后所經過的攝像頭。

(3)行程時間估計

給定起始點位置O(lons,lats)、結束點位置D(lone,late)和出發時間ts,首先將起始點位置和結束點位置分別匹配到對應的攝像頭;然后利用時空索引查詢經過起始和結束攝像頭的所有車輛數據,找出它們含有的車輛ID相同的車輛數據;接下來采用反向索引,找到這些車輛經過起始攝像頭之后的車輛軌跡;最后,從這些車輛軌跡中篩選出符合條件的車輛軌跡,每條車輛軌跡對應的行程時間是根據車輛經過起始攝像頭和結束攝像頭的時間差得到的。

4.2 數據預處理

4.2.1 攝像頭映射

攝像頭映射包括攝像頭到路網位置的映射,以及攝像頭位置到路網中對應路口的匹配兩部分。首先,從開源地圖平臺OpenStreetMap上獲取真實路網。根據定義1,一個路網包括路口集合以及路口之間的路段集合。通常來說,監控攝像頭被部署在鄰近路口處的位置,用來獲得所有經過此路段的車輛信息。因此,通過攝像頭的位置信息(如經度和緯度)將攝像頭映射到路網上,再匹配到相應路口上,就能夠獲得車輛在路網上對應的行駛記錄。

4.2.2 提取車輛軌跡

根據定義2,在交通監控數據中,每個攝像頭監控記錄可表示為(vehid,cam?j,ts?j),表示車輛vehid在tsj時刻經過了攝像頭camj。由定義3可知,當車輛的ID相同時,根據時間排序后的攝像頭記錄序列可以表示車輛軌跡。為了保證車輛軌跡的連續性,本文將歷史監控攝像頭數據中每輛車經過的所有攝像頭作為一條車輛軌跡(即TRid)。

4.3 構建數據索引

4.3.1 構建時空索引

構建時空索引分為構建空間索引和構建時間索引兩部分。

如圖3所示,首先構建空間索引,生成城市路網后,先利用攝像頭編號和位置信息,將攝像頭映射在路網上,再將每個攝像頭匹配到距離其最近的路口上,并創建攝像頭編號至路口的索引,以便在讀取監控數據時根據攝像頭編號將攝像頭記錄存儲到對應路口的攝像頭中。

一般情況下人的活動是以天為周期的,很多研究驗證了這一點,相應的城市交通情況也會以天為周期出現變化。因此,在構建時間索引時,本文根據一天24 h將時間索引平均分為24個時隙層,每個時隙層索引的范圍是1 h。每個時隙層中都包含一個完整的城市路網空間索引。如圖3所示,在存儲攝像頭記錄時,先根據時間確定攝像頭記錄所在時隙層,再根據攝像頭編號將攝像頭記錄存儲到對應路口的攝像頭中。

圖3???構建時空索引?

4.3.2 構建反向索引

由定義2和定義3可知,對于車輛vehid的車輛軌跡Trid,由車輛vehid和經過時間tsj可以唯一確定其經過的攝像頭camj。此外,因為車輛軌跡是按時間排序的攝像頭記錄序列,還可以得到車輛vehid在時間tsj之后經過的所有攝像頭以及對應的經過時間。因此,可以根據車輛軌跡的攝像頭記錄序列,建立根據車輛ID查找所經過攝像頭的反向索引。

如圖4所示,對于車輛vehid的一條車輛軌跡,,其中cam1、cam2、cam3、cam4分別匹配到路口n1、n2、n3、n4上,給定出發時間ts1,可以得到車輛vehid在時間ts1經過的攝像頭cam1,以及在時間ts1之后,車輛在時間ts2、ts3、ts4分別經過的攝像頭cam2、cam3、cam4

圖4???反向索引的構建示例

在構建反向索引 前,對于車輛的所有攝像頭記錄,各個攝像頭記錄之間是相對獨立的,無法確定單獨的一條攝像頭記錄是否為噪聲數據。然而,在構建反向索引之后,可以根據車輛軌跡中相鄰攝像頭記錄之間的關系來過濾噪聲數據,比如由于霧天導 致車牌號碼識別錯誤或者車輛在相鄰攝像頭記錄之間有較長時間的停留等導致的噪聲數據,詳細描述見第4.4節。

4.4 行程時間估計

在時空索引和反向索引構建完成之后,給定起始點位置O(lons,lats)、結束點位置D(lone,late)以及出發時間ts,就可以根據時空索引和反向索引對查詢點進行車輛的路線推薦和行程時間估計。

在城市路網中,一個路口一般安裝多個攝像頭,因此在將攝像頭映射到路網上時,可能有多個監控攝像頭匹配到同一個,ts路口。這些匹配到同一路口的攝像頭產生的攝像頭記錄都表示車輛經過了攝像頭所匹配的路口。因此本文將匹配到同一路口的攝像頭組成一個攝像頭集合,當車輛經過一個攝像頭時,表示車輛經過了該攝像頭所匹配路口的所有攝像頭。設定表示起始點位置O(lons,lats)匹配到的攝像頭所在路口的攝像頭集合;表示結束點位置D(lone,late)匹配到的攝像頭所在路口的攝像頭集合。

這樣在查詢OD匹配的攝像頭時,可以查詢到匹配攝像頭所在路口的所有攝像頭記錄,提高了查詢效率和查詢范圍。

算法1展示了路線推薦和行程時間估計的偽代碼。

如算法1所示,首先,根據出發時間ts確定no所在時隙層的路網。確定ts對應的時隙層之后,會出現一個問題,即要查詢的行程時間超過了一個時隙層的范圍(即行程時間超過1 h),導致車輛實際的結束時間與出發時間不在同一個時隙層,而是在下一個時隙層或者后面的時隙層。此時,如果只查找ts所在時隙層路網中的攝像頭記錄,會影響查詢精度或者無法得到車輛在結束時間所在時隙層的攝像頭記錄。為了解決這個問題,這里新增了一個結束時間te=ts+tp,用來預測nd所在時隙層的路網。te是由出發時間ts和通過基于有向圖的Dijkstra最短路徑算法(以下簡稱最短路徑算法)得到的行程時間tp相加后得到的大致預測時間,并不是真實的行程時間。tp被用來預先估計OD的行程時間,預測te所在時隙層,以提高本文所提方法的查詢精度。通過最短路徑算法得到的行程時間tp的計算方式如下:給定起始點位置O(lons,lats)、結束點位置D(lone,late)和路網G=(N,E),同時,路網中的每個路段ei,j附帶了距離權重和時間權重。距離權重表示從路口ni到路口nj的行駛距離,時間權重表示從路口ni到路口nj的行駛時間,這里的行駛時間為從路口ni到路口nj的歷史車輛軌跡的平均行駛時間。在路網G=(N,E)中分別匹配到距離O、D最近的路口為no和nd。根據每個路段的時間權重,利用最短路徑算法得到從路口ni到路口nj的行程時間tp。

例如,當出發時間為10:40時,查詢no的時隙層范圍為10:00—11:00的時隙層。若tp時長為50 min,那么te為11:30,查詢nd的時隙層范圍為10:0 0—11:0 0的時隙層以及11:00—12:00的時隙層。

如第3~9行所示,確定了要查詢的時隙層 的范圍之后,根據所給的起始點位置O(lons,lats)和結束點位置D(lone,late),在路網中分別匹配到距離最近的起始點攝像頭camo和結束點攝像頭camd。然后,找到camo和camd所在路口的攝像頭集合co和cd。這里需要注意,從起始點位置到=達起始點所匹配的攝像頭位置以及從結束點所匹配的攝像頭位置到達結束點位置的這兩段路程,會分別根據ts和te所在時隙層,以及該路程在路網中所處的路段中所占的長度比例來計算時間,最后與主路程相加。

如第10~16行所示,在確定了co和cd之后,分別查詢co和cd中各攝像頭包含的攝像頭記錄reco和recd,并得到在該時隙層中經過起始點和結束點攝像頭的車輛集合Veho和Vehd。然后,求出集合Veho和Vehd的交集Vehc,即起始路口和結束路口的攝像頭記錄中共同含有的車輛ID。

如第17~23行所示,得到共同車輛ID之后,根據反向索引,可以得到每輛車vehid的部分車輛軌跡Tr?id。這里,。Trid的起始攝像頭cam1為co中的攝像頭,出發時間ts1在ts確定的時隙層;結束攝像頭camn為cd中的攝像頭,結束時間tsn在t e預測的時隙層。軌跡Tr id的行程時間Timeid為結束時間tsn與出發時間ts1的差值。

同時,為了解決前文提到的監控攝像頭的噪聲數 據問題,本文為每個路段ei,j設置了一個時間閾值范圍thi,j,閾值范圍根據該路段歷史車輛軌跡的平均行駛時間來確定,本文取平均行駛時間的一半和3倍分別作為thi,j的最小值和最大值。thi,j用來判斷前文得到的Vehc中每輛車vehid的部分車輛軌跡Trid中是否存在噪聲數據(即可能是噪聲數據的攝像頭記錄)。具體方法 為,依次計算車輛軌跡Trid中相鄰攝像頭記錄的時間差,并與攝像頭記錄所對應的路段上的時間閾值范圍thi,j進行比較,如果該時間差處于時間閾值范圍外,就認為該相鄰攝像頭記錄存在噪聲數據,并過濾該條車輛軌跡。例如,對于軌跡,,根據相鄰攝像頭記錄和計算ts1和ts2的時間差值,并與cam1和cam2所對應路段的時間閾值范圍進行比較,然后依次計算 ?和,直到和。

過濾噪聲數據后,根據行程時間Timeid的大小,進行由小到大的排序,選出時間最短的前Top n條車輛軌跡,放入Pathtopn,然后將車輛軌跡經過的攝像頭編號替換為該攝像頭所匹配的路口,就可以得到車輛在路網上的推薦路線和對應的行程時間估計。這里由于攝像頭覆蓋率以及噪聲數據等原因,得到的推薦路線可能會存在相鄰路口不連續的情況,導致路線不夠詳細,如果想要得到更加詳細的路線,可以在這些不相鄰的路口間采用最短路徑算法,進一步細化路線。

5 實驗與結果

本節將在真實數據集上進行實驗,以驗證本文所提基于城市交通監控大數據的行程時間估計方法UTSD的有效性。

5.1 實驗數據集

本文采用的實驗數據集為某省會城市的真實交通監控數據集。該數據集包括2016年8月1—31日共31天的從1 704個監控攝像頭抓拍的4億多條數據記錄。路網是從開源地圖OpenStreet Map上采集得到的,本次實驗區域為該城市部分市區,路網包括78個路口節點、149條路徑,路網區域內有99個攝像頭覆蓋在39個路網節點上。對路網數據預處理(如去掉直行路段中多余的路口等)后,路網內有56個路網節點、125條路徑,路網區域內有77個攝像頭覆蓋在33個路網節點上,攝像頭覆蓋率為59%。

5.2 實驗設置

所有實驗均在一臺戴爾筆記本計算機上進行,系統為Windows10(64位),配置為4核Intel(R) Core(TM)i5-5200U CPU@ 2.20 GHz,運行內存為8 GB。程序采用Python語言,編譯器版本為Python 3.7.0 [MSC v.1912 64 bit (AMD64)]。每個實驗運行1 000次,求出平均運行結果。

5.2.1 對比算法

由于本文方法為基于攝像頭數據的大數據查詢方法,目前暫時沒有與該方法相關的大數據查詢算法。因此本文使用基于有向圖的Dijkstra最短路徑算法和百度地圖的API查詢算法(以下簡稱百度算法)作為對比算法。

基于有向圖的Dijkstra最短路徑算法是有向加權圖中最基本的最短路徑算法。基于有向圖的Dijkstra最短路徑算法可以表示為:給定加權有向圖G和源點A,求A到G中其他頂點的最短路徑,在求最短路徑時,從起始點開始,采用貪心算法的策略,遍歷距起始點最近且未訪問過的頂點的鄰接節點,直到遍歷到結束點。那么在路網中求最短路徑可以表示為:給定路網G=(N,E)G=(N,E)和起始點no,求no到路網中另一個路口nd的最短路徑。

百度地圖的API查詢算法是通過調用百度地圖開發的API來查詢起始點和結束點的算法。該算法運行在百度服務器上,實驗中只能得到算法結果的返回值。

5.2.2 參數設置

實驗中本文所提算法的默認參數設置如下:用來查詢的監控數據為7天的歷史數據,查詢時隙層的范圍是出發時間ts和結束時間te所在的時隙層,時間估計結果取前10%的數據的均值(即topn為前10%的數據)。

5.2.3 評估指標

本文采用行程時間估計常用的兩種性能評估標準——行程時間的平均相對誤差(MRE)和平均絕對誤差(MAE)來評估算法的有效性。同時,為了減少數據集中存在的與大多數行程顯著不同的異常行程對實驗結果的影響,本文還增加了中值相對誤差(MedRE)和中值絕對誤差(MedAE)來評估算法的有效性。

平均相對誤差的定義如下:

平均絕對誤差的定義如下:

中值相對誤差的定義如下:

中值絕對誤差的定義如下:

其中,表示算法對行程i的估計時間,

表示行程i的真實時間。

5.3 性能評估

本節首先對3種算法在不同查詢時隙下的相對誤差和絕對誤差進行評估,然后對3種算法的平均查詢時間進行分析。

為了更好地評估算法的有效性,本文選取3個時隙:上下班的早高峰和晚高峰時隙以及查詢較少的時隙,分別為8:00—9:00和18:00—19:00、0:00—1:00。

各算法的平均相對誤差和中值相對誤差分別如圖5和圖6所示。從實驗結果可以看出,UTSD的平均相對誤差和中值相對誤差都小于最短路徑算法和百度算法。在3個查詢時隙中,最短路徑算法的最小平均相對誤差為79.66%,百度算法的最小平均相對誤差為55.58%,而UTSD的最小平均相對誤差為14.64%,UTSD的準確率比最短路徑算法和百度算法分別提高了65.02%和40.94%。而在中值相對誤差的比較中,UTSD的最小中值相對誤差為14.03%,最短路徑算法的最小中值相對誤差為77.16%,百度算法的最小中值相對誤差為51.11%,最短路徑算法和百度算法的中值相對誤差分別為UTSD的5.5倍和3.6倍。此外,UTSD在3個時隙上平均相對誤差的最大值和最小值的差值為4.55%,比最短路徑算法的28.55%和百度算法的7.61%都要低,這說明UTSD的穩定性更高。

圖5???各算法的平均相對誤差


圖6???各算法的中值相對誤差

在圖7和圖8中,UTSD、最短路徑算法和百度算法的最小平均絕對誤差分別為45 s、142 s和98 s。UTSD的平均絕對誤差比最短路徑算法和百度算法分別減少了97 s和53 s。因為實驗采用的路網數據為城市路網的部分市區路網,查詢的起始點和結束點均在該部分市區路網內,因此真實行程時間較短,絕對誤差較小。若將路網區域擴大為監控數據覆蓋的整個城市區域,真實行程時間增長,那么各算法的時間差值擴大,UTSD將更具優勢。

圖7???各算法的平均絕對誤差


圖8???各算法中值絕對誤差

從圖5圖6圖7圖8可以看出,3種算法在時隙18:00—19:00的相對誤差最小,在時隙8:00—9:00的相對誤差居中,在時隙0:00—1:00的相對誤差最大。最短路徑算法和百度算法的絕對誤差變化趨勢和相對誤差變化趨勢相同,而UTSD的絕對誤差在時隙18:00—19:00比時隙0:00—1:00要大,這可能是因為時隙18:00—19:00為車輛出行高峰期,雖然UTSD在時隙18:00—19:00的相對誤差比在時隙0:00—1:00的相對誤差要小,但是交通擁堵導致車輛行程時間變長所帶來的的影響更大,導致UTSD的絕對誤差變大。

從圖5圖6圖7圖8還可以看出,相比最短路徑算法和百度算法,UTSD在行程時間估計結果中的誤差較小(即準確度較高)。這是因為UTSD進行路徑查詢和對應的行程時間估計時,采用的都是經過篩選的真實歷史車輛行程數據,而最短路徑算法進行行程時間估計時,采用的只是歷史車輛數據的平均時間數據,并沒有對歷史數據進行充分的利用,百度算法由于只采用接口進行查詢,無法確定其采用的具體方法,但是可以看出其誤差也比UTSD高。

各算法的平均查詢時間見表2,第一列到第四列分別表示UTSD在1天、3天、5天、7天歷史數據上的平均查詢時間。從表2可以看出,最短路徑算法的平均查詢時間最短,為1.56×10-4s,這是因為最短路徑算法的時間復雜度很低,且路網構建的有向圖含有的數據也很少,所以平均查詢時間非常短。百度算法的平均查詢時間為1.45×10-2s,由于本文中的百度算法通過調用百度地圖的API進行查詢,算法沒有在本地計算機上進行計算,而是在百度服務器上進行計算,運行算法時的硬件設備無法確定。UTSD在1天和3天的歷史數據上的平均查詢時間分別為3.17×10-2s和9.61×10-2s,與百度算法的平均查詢時間在同一個數量級上,這表明UTSD在時間效率上與百度算法相近。隨著歷史數據天數增加,UTSD的平均查詢時間也不斷增加,這是由于算法要對大量的監控數據進行查詢和處理必定會花費一定的時間,盡管如此,UTSD在以7天監控數據作為歷史數據的情況下,平均查詢時間低于0.3 s,完全可以滿足城市出行的即時查詢需求。

5.4 參數敏感性估計

本節將評估參數變化對所提方法的性能影響。本文所提方法是基于大數據的查詢方法,因此主要影響因素是歷史數據天數。

圖9展示了本文所提方法在歷史數據天數為3~17天的平均相對誤差和中值相對誤差的變化情況。從圖9可以看出,在歷史數據天數為3天時,所提方法的平均相對誤差和中值相對誤差均最高,這可能是因為3天的歷史數據所含有的歷史車輛軌跡樣本不夠充足,形成的車輛軌跡不夠完整,以及存在一些噪聲數據,導致行程時間估計誤差較大。隨著歷史數據天數的不斷增加,本文所提方法的這兩種誤差不斷減小,這說明隨著歷史數據天數的增加,該方法能夠從歷史數據中查詢到更多符合查詢條件的歷史車輛軌跡,進而更好地進行路徑推薦和對應行程時間的估計。當歷史數據天數達到13天后,所提方法在平均相對誤差和中值相對誤差上的變化趨于穩定。隨著歷史數據天數增加到17天,所提方法的兩種誤差并沒有明顯減小,這說明當歷史數據達到一定數量時,能夠覆蓋路網中所有的查詢區域以及查詢時間,并有足夠的歷史軌跡滿足查詢需求,再次增加新歷史數據的同時,也會增加噪聲數據,噪聲數據增加的誤差量不變,而新歷史數據所能減少的誤差量逐漸減小,導致算法誤差的降低程度越來越小,進入“瓶頸期”。

圖9???歷史數據天數對相對誤差的影響

圖10展示了本文所提方法在歷史數據天數為3~17天的平均查詢時間的變化情況。從圖10可以看出,隨著歷史數據天數的增加,算法的平均查詢時間也在增加,而且隨著天數的增加,平均查詢時間增加的幅度越來越大。這一方面是因為隨著歷史數據數量的增加,讀取、查詢和處理數據的時間增大,進而導致運行時間增大;另一方面是因為本文所提方法本身的算法復雜度決定了算法隨歷史數據的增加所需要的運行時間會不斷增加。

圖10???歷史數據天數對UTSD的平均查詢時間的影響

結合圖9和圖10可以看出,歷史數據天數低于7天時,本文所提算法的誤差較高,歷史數據天數高于11天時,其誤差與7天的誤差相比降低較少,但平均查詢時間增加較大。若要在較短的查詢時間內得到較低的誤差,使用7~11天的歷史數據比較合適。

6 結束語

本文針對城市出行的時間估計問題,提出了一種基于城市交通監控大數據的行程時間估計方法UTSD。首先將道路網絡建模為有向加權圖,然后根據位置信息將攝像頭映射到路網地圖上,形成路網數據庫和攝像頭數據庫。然后,結合R樹構建時空索引和反向索引結構,時空索引用于快速檢索所有車輛的攝像頭記錄,反向索引用于快速得到車輛的行程時間和經過的攝像頭軌跡,大大提升了數據查詢和行程時間估計的效率。通過在某省會城市的真實交通監控數據上進行實驗評估,驗證了本文所提方法的有效性,且相比對比算法其準確性有顯著的提升。

雖然城市路網中的現有監控攝像頭數量較多,但是攝像頭在路網中的覆蓋率還不夠高,提高攝像頭在路網中的覆蓋率顯然無法做到,那么如何在攝像頭覆蓋率不變的情況下,進一步提升算法的精度和效率,是下一步需要進行的工作。

作者簡介

李文明(1997-),男,煙臺大學計算機與控制工程學院碩士生,主要研究方向為時空數據挖掘。

劉芳(1994-),女,煙臺大學計算機與控制工程學院碩士生,主要研究方向為局部異常檢測。

呂鵬(1995-),男,煙臺大學計算機與控制工程學院碩士生,主要研究方向為高維數據異常檢測。

于彥偉(1986-),男,博士,中國海洋大學計算機科學與技術系副教授,中國計算機學會會員,主要研究方向為時空數據挖掘、機器學習、分布式計算。

聯系我們:

Tel:010-81055448

? ? ? ?010-81055490

? ? ? ?010-81055534

E-mail:bdr@bjxintong.com.cn?

http://www.infocomm-journal.com/bdr

http://www.j-bigdataresearch.com.cn/

轉載、合作:010-81055537

大數據期刊

《大數據(Big Data Research,BDR)》雙月刊是由中華人民共和國工業和信息化部主管,人民郵電出版社主辦,中國計算機學會大數據專家委員會學術指導,北京信通傳媒有限責任公司出版的期刊,已成功入選中文科技核心期刊、中國計算機學會會刊、中國計算機學會推薦中文科技期刊,并被評為2018年、2019年國家哲學社會科學文獻中心學術期刊數據庫“綜合性人文社會科學”學科最受歡迎期刊。

關注《大數據》期刊微信公眾號,獲取更多內容

總結

以上是生活随笔為你收集整理的基于城市交通监控大数据的行程时间估计的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。