孫 猛 李建梅 孫 鋒▲ 吳曉煒 陳浩田 朱 爽
(1.山東理工大學(xué)交通與車輛工程學(xué)院 山東 淄博 255049;2.淄博市公安局交通警察支隊張店大隊 山東 淄博 255000)
城市交通發(fā)展到信息化、智能化、智慧化的新時代,將大數(shù)據(jù)挖掘技術(shù)與智慧交通相結(jié)合,能夠顯著改善城市發(fā)展中的交通擁堵問題。隨著電警、卡口等視頻監(jiān)控設(shè)備的增加,交通基礎(chǔ)數(shù)據(jù)庫得到了極大的豐富,為日趨智能的精細(xì)化交通管理提供了驅(qū)動力。
交通數(shù)據(jù)分析領(lǐng)域的1項重要研究內(nèi)容是通過相應(yīng)算法挖掘數(shù)據(jù)中的描述性指標(biāo)參數(shù)[1]。張璽君等[2]結(jié)合交通數(shù)據(jù)的時空特性進行去噪和壓縮等預(yù)處理并構(gòu)建數(shù)據(jù)分析平臺對預(yù)處理的數(shù)據(jù)進行挖掘。徐程等[3]針對交通數(shù)據(jù)的缺失問題,基于時空關(guān)聯(lián)性對缺失數(shù)據(jù)提出了不同條件下應(yīng)用的數(shù)據(jù)恢復(fù)方法。王殿海等[4]分析評述了數(shù)據(jù)采集技術(shù)的變革對參數(shù)估計方法發(fā)展的影響。張輝等[5]結(jié)合經(jīng)典交通流與機器學(xué)習(xí)方法,提出1 種利用聚類最小二乘方法估計車輛速度的方法。H Y Sutarto 等[6]結(jié)合馬爾可夫模型的轉(zhuǎn)移矩陣和AR模型的參數(shù),提出1種數(shù)據(jù)驅(qū)動的交通流參數(shù)估計方法。付鳳杰[7]基于卡口數(shù)據(jù)針對不同交通流方向行程時間估計值的差異性,提出了考慮多因素的計算模型。姜桂艷等[8]通過分析交通流特性和地點交通參數(shù)與平均行程速度的關(guān)系,提出了城市主干路擁擠交通流路段平均行程速度的3種估計模型。馬東方[9]通過分析流量、速度和時間占有率的相互關(guān)系,提出1 種基于上游斷面信息的排隊上溯識別方法并驗證了其精度。李愛杰等[10]基于單截面低頻定點檢測數(shù)據(jù)結(jié)合交通波理論,構(gòu)建了周期最大排隊長度估計模型。趙淑芝等[11]以改進的METANET模型為基礎(chǔ),通過確定排隊隊尾位置從而獲得車輛排隊長度。Luo 等[12]提出了1種利用車牌識別數(shù)據(jù)和信號方案估計信號交叉口排隊長度的新方法。Zhan等[13]提出了1種基于車道的車牌識別實時隊列長度估計模型。蔣歡昕等[14]回顧信號交叉口幾種延誤的定義及各種延誤之間的關(guān)系,對常見的信號交叉口延誤的情況進行了歸納。張惠玲等[15]確定了流量比、車速比、空間占有率和排隊長度比4個評價指標(biāo),研究了1種基于多指標(biāo)融合的單交叉口運行狀態(tài)實時評價方法。
已有的研究成果大都側(cè)重于單一參數(shù)提取,缺少一整套針對需求及狀態(tài)參數(shù)的處理流程,且過飽和狀態(tài)下的提取精度不足。為此,筆者首先分析交通大數(shù)據(jù)預(yù)處理流程,進而通過挖掘卡口數(shù)據(jù)蘊含的時間及狀態(tài)關(guān)聯(lián)特性,構(gòu)建過飽和狀態(tài)下的參數(shù)提取及估算方法,最后選取Python 可視化庫和Echarts等可視化工具對提取結(jié)果進行可視化展示。
本文數(shù)據(jù)來自淄博市張店區(qū)高清智能卡口系統(tǒng),針對原始數(shù)據(jù)進行了結(jié)構(gòu)化分析,并從不同角度進行了預(yù)處理,以提高數(shù)據(jù)質(zhì)量。
原始卡口數(shù)據(jù)的列項是車輛牌照號作為第一標(biāo)識,此外還包括卡口名稱、車道號、通過道口時間、車牌顏色、車身顏色等數(shù)據(jù)列,具體數(shù)據(jù)結(jié)構(gòu)見表1。
表1 高清卡口數(shù)據(jù)Tab.1 HD bayonet data
原始數(shù)據(jù)普遍存在著很多缺陷:①數(shù)據(jù)的不一致性,包括標(biāo)簽的不一致、數(shù)據(jù)結(jié)構(gòu)維度的不一致和數(shù)據(jù)范圍值的不一致等;②數(shù)據(jù)中充斥著大量的無效數(shù)據(jù)和錯誤數(shù)據(jù);③數(shù)據(jù)整體結(jié)構(gòu)存在缺失性,需要進行重新架構(gòu)。為此,需要對原始數(shù)據(jù)的無用數(shù)據(jù)進行剔除,同時對數(shù)據(jù)儲存,結(jié)構(gòu)等方面進行規(guī)約,構(gòu)建統(tǒng)一的標(biāo)準(zhǔn)和框架對不同方式和平臺采集的數(shù)據(jù)進行數(shù)據(jù)清洗、集成和轉(zhuǎn)化。
1)異常數(shù)據(jù)處理。在處理過程中引入變異系數(shù)來判斷數(shù)據(jù)對整體數(shù)據(jù)的偏離程度,選取合適的閾值進行篩除。
2)無效數(shù)據(jù)處理。剔除車輛顏色等對交通運行參數(shù)提取沒有影響的數(shù)據(jù),以減少數(shù)據(jù)的基礎(chǔ)樣本量。
3)缺失數(shù)據(jù)處理。數(shù)據(jù)缺失達到80%以上且重要性較低時進行刪除操作,缺失較少且較為重要采用填充法,包括定值填充、插值法填充、模型填充、連續(xù)序列填充和歷史數(shù)據(jù)填充等修復(fù)法等。
4)數(shù)據(jù)統(tǒng)一化處理。將不同格式進行數(shù)據(jù)統(tǒng)一化處理時要考慮數(shù)據(jù)的維度特性和結(jié)構(gòu)特性。
5)數(shù)據(jù)整體結(jié)構(gòu)處理。找尋數(shù)據(jù)的提取規(guī)律,選取數(shù)據(jù)正常的時段,進行樣本提取,在樣本提取過程中樣本對整體數(shù)據(jù)的反應(yīng)情況是重點。
6)缺失和補償處理。由于硬件、軟件和網(wǎng)絡(luò)的原因,數(shù)據(jù)在平臺上提取和整合的過程中會有缺失,在數(shù)據(jù)處理過程中會采取車道數(shù)補償,漏拍補償,總體補償?shù)确椒ā?/p>
本文對交通數(shù)據(jù)的分析過程大體分為3 個模塊:數(shù)據(jù)預(yù)處理模塊;數(shù)據(jù)關(guān)聯(lián)與篩選模塊;參數(shù)提取模塊。構(gòu)建基于Python 程序的模型流程見圖1。
圖1 Python數(shù)據(jù)分析流程圖Fig.1 Python data analysis flowchart
在保證卡口設(shè)備識別率的前提下,依據(jù)車牌匹配算法可準(zhǔn)確地獲取交叉口之間的車輛行程時間;引入路段長度參數(shù)可獲得車輛平均速度,利用采集的大量車速樣本可估算同時段的路段自由流速度,結(jié)合行程時間和路段長度可得到每輛車的區(qū)間延誤,基于時空軌跡圖推導(dǎo)過飽和狀態(tài)下的排隊長度模型,并基于Python平臺進行了算法實現(xiàn)。
根據(jù)卡口數(shù)據(jù)中車輛通過停止線的時間記錄,利用匹配算法可提取相鄰路口之間的車輛行程時間,進而加入路段長度參數(shù)確定車輛平均速度。圖2中P1和P2為道路停車線,車輛從停車線P1到達P2的時間即路段行程時間。
在實際應(yīng)用中提取路段行程時間,要重點考慮以下2點。
圖2 相鄰交叉口示意圖Fig.2 Schematic diagram of adjacent intersections
1)閾值區(qū)間設(shè)定。Pandas 處理時間數(shù)據(jù)時可設(shè)置1 個閾值區(qū)間來提取正常范圍內(nèi)的行程時間,區(qū)間下界可采用路段長度和最大限速的比值確定,區(qū)間上界可根據(jù)路段長度等因素而定。
2)時段劃分。車輛多次經(jīng)過卡口會使結(jié)果產(chǎn)生誤差,因此,按照30 min的時段維度對數(shù)據(jù)進行塊狀提取,可有效減少大量的無效數(shù)據(jù)。見式(1)~(2)。
式中:T為某時段的路段行程時間,s;t1為經(jīng)過卡口1 的時刻;t2為經(jīng)過卡口2 的時刻;Δt為單輛行程時間差值,s;n為提取到的車輛數(shù),otherwise為其他情況,null為無效數(shù)據(jù)?;谏鲜鲂谐虝r間可以求出其行程速度和時間平均車速,見式(3)。
車輛延誤可表示為車輛實際行程時間與自由行駛時間的差值,車輛實際行程時間已通過卡口數(shù)據(jù)求得,通過路段長度和自由流速度能計算出車輛自由行駛時間,在固定時段內(nèi)通過車輛的延誤即為車輛延誤,單個車輛延誤與固定時段最大延誤見式(4)~(5)。式(6)簡化了自由流速度的計算過程,將采樣的前20%車輛速度求均值作為路段自由流速度。
式中:d為車輛延誤,s;Δt為卡口間行程時間,s,Lr為路段的長度,m;Dmax為周期最大車輛延誤,s;Vf為路段的自由流速度,km/h,vmax為路段的最大限速,km/h,v80%為速度集合中80%位速度,km/h。
1)延誤與排隊長度。在給定路段條件、信號條件,以及交通流條件下,某周期內(nèi)的排隊最遠(yuǎn)點相對于停車線的距離越大,則本周期通過下游停車線的第1 輛車輛通過該路段所經(jīng)歷的周期數(shù)也越多,其相應(yīng)的延誤時間,即周期最大延誤時間也越大。因此,高峰時段周期內(nèi)的最大延誤時間與排隊最遠(yuǎn)點相對于停車線距離存在正相關(guān)關(guān)系,如果能夠表達二者之間的函數(shù)關(guān)系模型,則可以利用周期最大延誤信息來推測排隊最遠(yuǎn)點位置進而來識別排隊長度。排隊的產(chǎn)生與消散過程見圖3。
圖3 高峰交叉口排隊產(chǎn)生與消散Fig.3 Generation and dissipation of queue at intersection
在圖3中,上1個周期的部分未被釋放排隊車輛會在下1 個周期紅燈啟亮的開始時刻形成初始排隊。令周期i的初始排隊位置點和排隊最遠(yuǎn)點分別用Bi和Ai表示,車輛X在i-n周期的排隊位置點為Ci-n。式(7)~(8)為過飽和交叉口最大車輛延誤和最大排隊長度的關(guān)系。
式中:Lp為i-1 周期內(nèi)最大排隊長度,veh;g為周期內(nèi)綠燈時長,s;Sf為車隊的釋放流率,veh/h;Sa為車隊的到達流率,veh/h;r為周期的紅燈時長,s;t’為車輛X在i-1 周期排隊之前的行駛時間,s;N為車道數(shù)。
2)車道排隊車輛數(shù)。在每個周期中,部分車輛在到達交叉口停止線前,由于受紅燈阻滯,在渠化車道內(nèi)減速停車等待,綠燈啟亮初期,渠化段內(nèi)等候車輛開始向前運動,流率變化較快,從零逐漸達到飽和流量,并以飽和流量依次通過停車線,排隊的車輛依次按照接近飽和流量的方式進行釋放,直至紅燈啟亮或排隊隊列釋放結(jié)束。綠燈期間某車道車頭時距的變化見圖4。
圖4 車頭時距變化Fig.4 Diagram of headway variation
由圖4 可知:車頭時距的變化分為3 個基本階段,第1 階段是車輛啟動時的加速過程使得車頭時距由大變??;第2 階段是啟動波在排隊隊列中的穩(wěn)定傳播使得車頭時距穩(wěn)定在某個區(qū)間內(nèi);第3 階段是排隊消散進而車頭時距變大?,F(xiàn)根據(jù)車頭時距的周期變化來對周期排隊車輛進行分析提取,首先利用每輛車通過停止線的具體時間可提取預(yù)設(shè)周期內(nèi)經(jīng)過交叉口車輛的車頭時距,見式(9)。
式中:ti-1,i為統(tǒng)計范圍內(nèi)第i個車輛與第i-1 個車輛的車頭時距,s;ti為統(tǒng)計范圍內(nèi)第i個車輛通過停止線的時間,s;ti-1為統(tǒng)計范圍內(nèi)第i-1個車輛通過停止線的時間,s。
獲到車頭時距集合后需設(shè)定2個初值作為車頭時距的閾值來判斷車隊的連續(xù)性,并與配時方案進行時間線上的匹配,在綠燈通行區(qū)間內(nèi)確定連續(xù)車輛集合為排隊車輛集合,統(tǒng)計排隊車輛集合長度為排隊車輛數(shù),見式(10)。
式中:Sp為某車道車頭時距序列的連續(xù)長度;seri為計算連續(xù)序列的自定義統(tǒng)計函數(shù);Sε與Sγ為seri統(tǒng)計函數(shù)的閾值函數(shù);ε與γ是序列連續(xù)性判斷閾值;k為第1階段尾車車輛序列號;w為第2階段尾車車輛數(shù)序列號。
3)排隊長度獲取。利用卡口等斷面檢測數(shù)據(jù)無法直接獲取高峰時段排隊長度等參數(shù)指標(biāo),只能通過深入挖掘卡口數(shù)據(jù)蘊含的關(guān)聯(lián)信息,并結(jié)合路網(wǎng)時空邏輯關(guān)系,從而推導(dǎo)參數(shù)提取方法。綜合考慮上述步驟獲得的排隊車輛數(shù)和車輛周期延誤進而推斷出排隊長度。
式中:Lz為估計排隊長度,m;φ為權(quán)重閾值;lc為車輛排隊時車頭間距,m;Sp為某車道車頭時距序列的連續(xù)長度,veh;Lp為周期內(nèi)最大排隊長度,veh。
以淄博市張店區(qū)北京路主干道上北京路-人民路、北京路-華光路為例進行模型的應(yīng)用,驗證模型的實用性和有效性。北京路-人民路與北京路-華光路之間路段長度L為775 m,卡口檢測設(shè)備均在各交叉口停止線位置。北京路-華光路與北京路-人民路交叉口的渠化結(jié)構(gòu)和信號配時方案見圖5~6。
圖5 北京路-人民路交叉口渠化與信號配時Fig.5 Channelization and signal timing of Beijing-Renmin Road intersection
驗證數(shù)據(jù)為北京路主干道2020 年3 月5 日07:00—09:00 的卡口數(shù)據(jù)。利用 Pandas 和 NumPy對早高峰07:00—09:00北京路與人民路、華光路交叉口之間的行程時間進行預(yù)處理。見圖7,行程時間處理前分布115~186 9 s之間,有明顯異常數(shù)據(jù),嚴(yán)重影響后續(xù)數(shù)據(jù)處理。數(shù)據(jù)進行篩選、補償和統(tǒng)一化處理后分布在115~348 s之間,有顯著的規(guī)律性。
圖6 北京路-華光路交叉口渠化與信號配時Fig.6 Channelization and signal timing of Beijing-Huaguang Road intersection
圖7 異常數(shù)據(jù)提取前后對比Fig.7 Comparison of abnormal data before and after extraction
早高峰 07:00—09:00 車輛的速度數(shù)據(jù)進行FFT 低通濾波處理后的平滑曲線更接近實際通行中車隊速度變化。速度數(shù)據(jù)見圖8。
圖8 車輛的平均速度及其FFT低通濾波處理后的曲線Fig.8 Average speed of vehicle and its curve after FFT low pass filtering
早高峰07:00—09:00 延誤在計算中會出現(xiàn)負(fù)值,將負(fù)值進行歸零化可避免對結(jié)果產(chǎn)生負(fù)面的影響。延誤變化見圖9。
圖9 早高峰車輛延誤Fig.9 Vehicle delay A.M.Peak
此外,結(jié)合監(jiān)控視頻數(shù)據(jù)和記錄數(shù)據(jù)進行對比分析,進而確定車隊平均到達率綠燈開啟后頭3 輛車的閾值ε為 6.5 s,之后閾值γ為4.5 s 時,其處理結(jié)果和真實排隊情況較為相符。早高峰07:00—09:00單條車道排隊車輛數(shù)據(jù)見圖10。
圖10 早高峰周期排隊車輛數(shù)Fig.10 Number of vehicles queuing A.M.Peak
利用卡口數(shù)據(jù)統(tǒng)計車隊的車道平均釋放流率Sf為1 600 veh/h,車隊的車道平均到達流率Sa為450 veh/h,lc設(shè)為6 m,將權(quán)重閾值φ設(shè)為0.5,利用式(14)進行計算,得到排隊長度見圖11。
圖11 早高峰周期排隊長度Fig.11 Cycle queue length A.M.Peak
基本參數(shù)的提取和設(shè)備關(guān)系密切,精度主要取決于識別率和傳輸率,因此主要驗證排隊長度的誤差率,將分析結(jié)果與監(jiān)控視頻進行對比分析,誤差率見圖12。
圖12 排隊長度實例對比Fig.12 Comparison of queue length examples
從圖12 可算出模型平均相對誤差(MAPE)為15.6%,平均絕對誤差(MAE)為18.4 m,模型精度達到了85%以上,可作為智能交通控制的有效支撐數(shù)據(jù)。
數(shù)據(jù)可視化的重點是對數(shù)據(jù)有效的展示和變換,使得用戶得到易理解和有價值的信息。本文在交通數(shù)據(jù)可視化的實現(xiàn)中主要基于Python 的第三方庫、Echarts 動態(tài)渲染圖工具。原始數(shù)據(jù)經(jīng)過Python 數(shù)據(jù)分析框架處理后,實現(xiàn)數(shù)據(jù)可視化有各種主題性的選擇[16-19]。圖13是結(jié)合Python第三方庫中Timelines 和Zoomdata 等展示功能繪制的周期車輛動態(tài)變化圖。
圖13 各方向交通量統(tǒng)計圖Fig.13 Traffic statistics in all directions
圖14 區(qū)域車輛數(shù)統(tǒng)計圖Fig.14 Statistics of regional vehicles
圖14 為基于Echarts.js 繪制的分層區(qū)域車輛數(shù)統(tǒng)計圖。
針對卡口數(shù)據(jù)結(jié)構(gòu)特征,提出了一套預(yù)處理-指標(biāo)提取-可視化一整套的交通卡口數(shù)據(jù)挖掘流程框架,在提取行程時間、平均車速和車輛周期延誤的基礎(chǔ)上利用排隊車輛數(shù)構(gòu)建了高峰時段排隊長度估計模型,與傳統(tǒng)的排隊長度估算方法相比,模型實現(xiàn)了卡口數(shù)據(jù)參數(shù)的自動流程化處理且精度較高;基于Python和Echarts等工具軟件,實現(xiàn)了交通運行參數(shù)自動提取及可視化一體展現(xiàn),能夠為智能交通管控的決策提供支撐。如何融合監(jiān)控、地磁等多源異構(gòu)交通數(shù)據(jù)建立更綜合的參數(shù)提取模型,將做進一步研究。