一種基于密度聚類算法的城市交通擁堵狀態檢測方法
【技術領域】
[0001] 本發明涉及空間數據挖掘算法,處理GPS數據檢測城市交通擁堵狀態,特別是一 種基于密度聚類算法的城市交通擁堵狀態檢測方法,屬于計算機技術領域。
【背景技術】
[0002] 智能交通系統(Intelligent Transportation System, ITS)是解決城市交通問題 的重要解決途徑之一。大數據時代,智能交通系統已經積累了巨量而復雜的道路交通數據 信息,比如車輛的GPS信息,這些交通數據信息為智能交通系統管理和控制交通提供了重 要的數據基礎。
[0003] 數據挖掘作為目前最強有力的一種數據分析工具,為道路交通數據的處理提供了 新的分析手段,如何設計有效的數據挖掘算法將特定的交通規律挖掘出來是當前智能交通 數據挖掘研究的關鍵。基于密度的聚類算法(DENCLUE,DENsity-based CLUstEring)算法 是Hinneburg等提出的,它是一種泛化的基于核密度估計的聚類算法。其核心思想是每一 個空間數據點通過影響函數對空間產生影響,影響值可以疊加,從而在空間形成曲面,曲面 的局部極大值點為密度吸引子,該吸引子的吸引域形成一類。將DENCLUE應用于交通數據 挖掘,密度吸引子為擁堵區域的中心,吸引域為擁堵區域。
【發明內容】
[0004] 本發明的目的是提供一種基于密度聚類算法的城市交通擁堵狀態檢測方法,通過 挖掘車輛GPS大數據得到整個城市的擁堵狀態信息。
[0005] 為達到上述目的,本發明采用的技術方案是:
[0006] -種基于密度聚類算法的城市交通擁堵狀態檢測方法,具體步驟如下:
[0007] A.對原始車輛GPS數據進行預處理,得到無噪聲或小誤差的數據;
[0008] B.以限定數量和平均速度作為閾值計算擁堵點,得到候選擁堵點GPS數據;
[0009] C.對候選擁堵點GPS數據進行DENCLUE聚類,得到擁堵區域信息;
[0010] D.步驟C得到的擁堵區域信息作為城市擁堵狀態信息保存到數據庫。
[0011] 上述步驟A中對原始車輛GPS數據進行預處理,得到無噪聲或小誤差的數據的操 作步驟是:
[0012] Al)數據清理:GPS設備剛啟動或故障原因會造成采集到大量為0的數據;GPS定 位的誤差會導致在某一時刻定位錯誤后在接來下的整個時間段采集的數據都是錯誤的。對 于這兩種數據需要完全刪除;
[0013] A2)數據過濾:GPS傳感器的噪聲會造成采集到的個別數據存在誤差,稱為異常值 (outliers)。對于異常值采用中值濾波器(Median Filters)進行過濾,即對于檢測到的異 常值,取其附近η個點的中值替換該異常值。
[0014] 上述步驟B中限定數量η是確定一個擁堵點所需的GPS數據的個數,與數據量呈 正比,但是限定個數越大,造成的誤差越大,平均速度是限定數量個GPS數據所經過的距離 與時間的商,其特征在于上述步驟B中的以限定數量和平均速度作為閾值計算擁堵點,得 到候選擁堵點GPS數據的操作步驟如下:
[0015] BI)根據數據集和城市交通狀況確定限定數量η和速度閾值Vthrashcild;
[0016] Β2)計算包含η個GPS數據的數據子集P{Pl,ρ2…,ρη}的平均速度
為兩個相鄰GPS數據之間的距離,t (Pl,ρη)為兩個相鄰 GPS數據之間的時間間隔;
[0017] B3)當數據子集P{Pl,p2…,pj確定一個擁堵點,轉到步驟M);當
判斷下一個GPS數據pn+1是否存在,如果p n+1存在,數據子集P{p D py··,pj刪除 P1并添加 P n+1,轉到步驟B2),如果pn+1不存在,則輸出候選擁堵點GPS數據,并轉到步驟C ;
[0018] B4)計算擁堵點
以數據子集P{Pl,P2…,p n}為例, 其中Cpciint的煒度為
P1. Lat為第i個GPS數據的煒度,Cpciint的經度為
為第i個GPS數據的經度,Cpciint的到達時間為arvT = p T, P1. T為P1A的時間記錄,Cpciint的離開時間為IevT = pn. T,pn. T為pj的時間記錄,記錄擁堵 點Cpciint的信息以構成候選擁堵點GPS數據并以pn+1開始的η個GPS數據即P {pn+1,pn+2…,p2n} 作為數據子集,轉到步驟B2),如果不足η個,則輸出候選擁堵點GPS數據,并轉到步驟C。
[0019] 上述步驟C中的DENCLUE是指基于密度的聚類算法,其特征在于上述步驟C中的 對候選擁堵點GPS數據進行DENCLUE聚類,得到擁堵區域信息的操作步驟如下:
[0020] Cl)對候選擁堵點GPS數據D以2 σ ( 〇為設定的寬度閾值)為寬度進行網格劃 分,確定非空網格集Cp,每個網格c中數據數記為N c;
[0021] C2)設Ic為預定義的密度閾值,稱C sp= {c e C P|NC> ξ c} 為高密度網格,將相鄰的高密度網格連接起來作為Cp的子集,記為
,其中Cs為與c相連的高密度網格,以備計 算局部密度函數;
[0022] C3)用高斯密度函婁
其中near(x)為以〇為半徑以X1 為中心的^附近的點,計算相連高密度網格的局部密度函數;
[0023] C4)根據局部密度函f
,用爬山算法確定密度吸引子^以及被密度吸引 子Xi所吸引的吸引域作為標記類,密度吸引子Xi為擁堵區域的中心,標記類為擁堵區域,記 為Craglcin,并根據吸引域中的GPS數據計算平均速度V作為此擁堵區域的平均速度。
[0024] 上述步驟C4)中密度吸引子f和擁堵區域c ^glcin的確定方法為:
[0025] 輸入:已計算
的高密度網格(;
[0026] 輸出:密度吸引子X,擁堵區域c __
[0027] 密度吸引子f和擁堵區域c ^glcin是這樣生成的:對高密度網格Q中的擁堵 點
按照經煒度進行排序,如果經度一樣,則按 煒度確定大小,對排序后的擁堵點數據進行爬山算法,極大值點為密度吸引子,即當
其中(k e N),則記f = X 1Mt為密度吸引點,處在兩 個極小值點之間的數據為被密度吸引子吸引的吸引域,歸于Xi所在的類;用此啟發式方法, 做兩次爬山算法(一次為煒度方向,一次為經度方向),所有的點將會被聚類成擁堵區域 Craglcin,并且每個擁堵區域有一個密度吸引子X'
[0028] 上述步驟D中的擁堵區域信息是指步驟C中得到的擁堵區域c"glC]n(具體位置由密 度吸引子的經煒度和吸引域數據確定),以及相應的密度吸引子的密度、擁堵點個 數Ν、平均速度V,作為城市擁堵狀態信息評價擁堵狀態。
[0029] 本發明一種基于密度聚類算法的城市交通擁堵狀態檢測方法具有如下顯而易見 的突出特點和顯著優點:
[0030] (1)本發明運用大數據的空間數據挖掘算法,將反映交通狀況的GPS數據進行處 理,有效找出交通擁堵區域。
[0031] (2)本發明以密度吸引子的密度、擁堵區域數據數、平均速度作為評價擁堵狀態的 標準,對城市交通擁堵狀態進行分級,有效反映城市交通狀態。
[0032] (3)本發明以歷史數據為基礎,通過分析城市一段時間的交通狀況,可以發現城市 交通規律,為城市規劃提供有效幫助。
【附圖說明】
[0033] 圖1是本發明一種基于密度聚類算法的城市交通擁堵狀態檢測方法的流程圖。
[0034] 圖2是本發明中的對原始車輛GPS數據進行預處理的流程圖。
[0035] 圖3是本發明中以限定數量和平均速度作為閾值計算擁堵點,得到候選擁堵點 GPS數據的流程圖。
[0036] 圖4是本發明中對候選擁堵點GPS數據進行DENCLUE聚類,得到擁堵區域信息的 流程圖。
【具體實施方式】
[0037] 下面結合說明書附圖和具體實施例對本發明作進一步詳細的說明。
[0038] 參照圖1,本發明一種基于密度聚類算法的城市交通擁堵狀態檢測方法,其具體步 驟如下:
[0039] (1)對原始車輛GPS數據進行預處理,得到無噪聲或小誤差的數據,如圖2所示,其 具體
[0040] 步驟如下:
[0041] a)數據清理:GPS設備剛啟動或故障原因會造成采集到大量為0的數據;GPS定位 的誤差會導致在某一時刻定位錯誤后在接來下的整個時間段采集的數據都是錯誤的。對于 這兩種數據需要完全刪除;
[0042] b)數據過濾:GPS傳感器的噪聲會造成采集到的個別數據存在誤差,稱為異常值 (outliers)。對于異常值采用中值濾波器(Median Filters)進行過濾,即對于檢測到的異 常值,取其附近η個點的中值替換該異常值。
[0043] (2)以限定數量和平均速度作為閾值計算擁堵點,得到候選擁堵點GPS數據,如圖 3所示,其具體步驟如下:
[0044] a)根據數據集和城市交通狀況確定限定數量η和速度閾值Vthrashcild;
[0045] b)計算包含η個GPS數據的數據子集P^pnJ的平均速度
為兩個相鄰GPS數據之間的距離,t (Pl,pn)為兩個相鄰GPS 數據之間的時間間隔;
[0046] 〇)當〇&