謝 練 吳超仲 呂能超 高 巖
(武漢理工大學智能交通系統研究中心1) 武漢 430063)
(水路公路交通安全控制與裝備教育部工程研究中心2) 武漢 430063)
(公安部交通管理科學研究所3) 無錫 214151)
道路交通事故多發路段是指受道路條件、交通條件、氣候環境等因素影響,在一個較長的時間段內(通常為1~3年),發生交通事故的數量和特征與其他正常路段相比明顯突出或者存在潛在安全隱患的路段.事故多發段在里程上往往占整條道路的比例很小,卻集中了較大比例的交通事故,具有很大的危害性[1].因此,對其準確鑒別是道路交通安全領域研究的重要內容之一.通過事故多發路段鑒別方法,確定道路中事故多發路段,研究該路段事故發生機理和影響因素,從而有針對性地采取交通事故預防措施,可以有效減少交通事故發生,降低整條道路的事故率,達到提升道路運營安全性的目的.
目前的事故多發路段鑒別方法主要有事故率法、事故頻率法、矩陣法、質量控制法、當量總事故次數法、臨界率法、層次分析法、模糊評價法、統計推導法、累計頻率法等[2-4].累計頻率曲線法是針對我國道路的實際情況而提出的,因具有計算簡便、適應性強、不受道路差異影響等優點而受到廣泛關注.該方法把整條道路以某一單位長度(通常取200,500,1 000m)劃分成若干路段單元,將路段單元按事故次數從小到大排序,計算各路段單元占路段單元總數的頻率及累計頻率,最終按照一定比率分離出頻率很小但事故數很高的單元,從而將這些單元作為事故多發路段的位置.
累計頻率曲線法雖然在實際工程中得到了廣泛使用,但是仍存在明顯缺陷.該方法對整條道路按單位長度進行劃分時,可能因為路段單元劃分的起點不同,將原本事故密集的路段從中間某個位置劃分為2個相鄰單元處理,造成該路段事故數被人為的分散為兩個部分.若路段單元事故數達不到所設定的事故數量標準,則會造成事故多發路段的遺漏;或2個相鄰單元事故數均大于事故數量標準值,則會造成事故多發段的范圍擴大.此外,以單位長度對道路進行劃分將導致鑒別的事故多發段長度總是單位長度的整數倍,無法反映出事故多發段長度分布的客觀規律.雖然國內外學者提出了固定步長累計頻率曲線法[5]、多起點累計頻率曲線法[6]、動態步長累計頻率曲線法[7]等改進的累計頻率曲線法,在一定程度上提升了事故多發路段鑒別的準確性,但仍無法徹底避免事故多發段的遺漏,也不能客觀反映事故多發點段在道路上分布長度的任意性.
聚類分析算法可以彌補上述不足,算法在尋找時空密集點方面得到了充分發展,其識別空間聚集點的效果得到了充分認可[8].其中,基于密度的聚類方法根據數據對象周圍密度的不斷增長聚類,將密度足夠高的區域內數據對象劃分為簇,具有快速識別任意形狀簇,處理數據對象中的噪聲點的優點[9].DBSCAN就是一種典型的基于密度的聚類算法.
因此,針對現有事故多發路段識別存在的問題,本文提出運用改進的DBSCAN聚類算法鑒別事故多發段,結合累計頻率曲線法實現了聚類算法中最小點的自適應選取,并運用實際高速公路數據證明了其方法能實現任意路段長度的聚類,避免因劃分固定路段單元而造成的事故多發段遺漏或擴大,算法具有更高的準確性和事故密度.
通過道路交通事故統計資料鑒別事故多發路段,其目標在于找出道路中交通事故集中的路段,即單位長度內事故數超過一定指標的路段,這即是基于密度聚類方法的基本思想.DBSCAN(density based spatial clustering of applications with noise)是一種基于密度的聚類分析方法,算法通過不斷地搜索臨近點使數據對象點-鄰域內的密度逐漸增加,直到尋找出所有達到密度閾值的聚類[10].
基于DBSCAN聚類算法進行事故多路段鑒別的原理如下:為了找到數據集中密度互連對象的集合,從數據集中任意取點p,如果p點是核心點(p的ε-鄰域內數據點的個數大于密度閾值MinPts),則以p點為核心點搜索,找出所有的p點密度可達的數據對象點,即找出一個密度互連的最大集合,把集合內的所有對象點都標示為同一簇(即是一個事故多發路段);如果p點不是一個核心點,沒有其他對象點從p點密度可達,那么p被標示為噪聲點.DBSCAN算法對每一個未掃描的點進行上述處理,直到掃描完所有點,得到所有簇.
DBSCAN聚類算法運用于鑒別事故多發段時,演變為沿樁號延伸的一維形式;算法中的數據集實際為道路上所有事故樁號的集合,對于算法中點的ε-鄰域可以理解為道路上以某事故點為圓心為半徑圓內所有事故的集合,密度閾值Minpts即范圍內事故最小次數.因此,DBSCAN聚類算法可以判別出半徑為的范圍內發生Minpts次以上交通事故的所有路段,一個簇即為一個事故多發段,見圖1.

圖1 DBSCAN聚類算法鑒別事故多發段示意圖
DBSCAN算法中任意一個核心點均能返回一個簇,所以該算法用于鑒別事故多發段能避免由于事先劃分路段單元造成的事故多發段的遺漏,也能避免因固定的分段長度帶來的問題.因此,給定鄰域半徑和密度閾值 Minpts,通過DBSCAN聚類算法即可鑒別出相應指標條件下道路事故多發段.
DBSCAN算法中有2個關鍵參數:全局變量——鄰域半徑ε和密度閾值 Minpts,ε和Minpts的取值對聚類結果有重要影響[11].當鄰域半徑ε值過大時,所有數據點被聚為一個簇;當值過小時,每個數據點均自成一簇,數據集中有多少數據點則聚為多少個簇.對于密度閾值Minpts,如果Minpts值太大,則會導致低密度的聚類容易丟失;反之,如果Minpts值太小,則鄰近的多個高密度聚類就會被劃分到一個簇中,使得聚類得結果精確性得不到保障.
將DBSCAN算法用于事故多發路段鑒別,對于值來說,在交通事故數據庫的二維點距上一般在100~2 000m,可根據實際道路交通事故統計資料選取合適值.最小密度閾值Minpts實質上就是事故多發段的鑒別標準.關于事故多發點的鑒別標準有絕對標準和相對標準.絕對標準可以根據相關部分的規定,如文獻[12]中采用的公安部交通管理局《全面排查交通事故多發點段工作方案》中鑒別標準:多發點為500m范圍內,1年之中發生3次重大以上交通事故的地點.相對標準則根據每條道路的實際道路交通事故統計情況、道路不同路段間危險程度差異(主要由天氣、地形等自然環境及道路線形、交通安全設施等條件因素決定),以及改善資金等約束條件,綜合考慮,最終確定鑒別標準值.
DBSCAN算法中關鍵參數的選取直接影響著聚類結果,本文中累計頻率曲線法路段單元劃分中選取500m作為單位長度,為了獲取更加精準的事故多發路段鑒別結果,鄰域半徑ε值宜小于500m,可以取ε=200m.由于每條道路發生交通事故的情況不同,為了鑒別出不同道路的事故多發段,需要選取適合各自道路的密度閾值Minpts.
根據Minpts值對聚類結果影響的特征:同一ε值條件下,Minpts值越小,數據點在鄰域范圍內密度大于密度閾值的概率越大,數據點越容易聚類成簇,即所有的簇包含的對象點個數越多.在鑒別事故多發段中表現為判別事故多發段的密度閾值越低,鑒別出來的事故多發段里程占整條道路里程的比值越大.因此,可以根據累計頻率曲線法采用的累計頻率0.95水平下確定事故多發路段判定標準,設計一種自動搜索最優Minpts值的方法,即從小到大依次調整Minpts值,直到聚類結果中事故多發段里程占整體路段里程的比值時,該Minpts值為最合適的密度閾值.
改進的DBSCAN算法流程見圖2.
為驗證本文所提出改進聚類算法對事故多發路段的識別效果,基于安徽省某高速公路樁號K61+500.000~K115+526.447范圍2007年12月~2013年7月期間的交通事故統計資料開展分析.本部分先基于累積頻率曲線法尋找事故多發路段,將道路按500m單位長度劃分路段,統計各劃分路段的事故數,找出研究道路中發生事故數相等的路段個數,然后再以單位路段的事故次數為橫坐標,以發生小于某一事故次數的累計頻率為縱坐標,繪制累計頻率分布圖,并尋求相關曲線進行擬合,分析擬合曲線的突變點,并采用累計頻率0.95水平下確定事故多發路段判定標準,從而界定事故多發路段.事故累計統計數據見表1,累計頻率曲線見圖3.

表1 安徽省某高速公路事故資料按路段單元統計表

圖3 累計頻率曲線
由圖3可見,路段單元事故次數超過16次為事故多發段,16次以下事故路段占總路段長度的93.53%;16次及以上事故路段占總路段長度的6.47%,而其事故數占總數的18.64%.

圖2 改進的DBSCAN聚類算法流程
根據改進的聚類算法流程,輸入該高速公路上826起交通事故的樁號、值以及初始Minpts值,運行程序,得到最優密度閾值Minpts=19,事故多發段里程占整條道路里程的5.09%,各密度閾值下鑒別結果中事故多發段總里程占整體路段里程百分比見圖4.
累計頻率曲線法和改進的DBSCAN聚類算法所鑒別的事故多發段結果見表2.

表2 累計頻率曲線法與改進DBSCAN聚類算法結果對比
由表2可知,從事故多發段總里程和事故次數看,兩種鑒別方法得到的事故多發段內發生事故次數分別為154次和159次,DBSCAN聚類算法判別出來的事故多發段長度為2.75km小于3.50km,單位公里事故次數為57.8次/km高于累計頻率曲線法的44次/km.累計頻率曲線法鑒別結果可表述為6.47%的路段上集中了18.64%的事故,DBSCAN聚類算法鑒別結果則是5.09%的路段上集中了19.25%的事故,說明DBSCAN聚類算法用于鑒別事故多發段具有更高的精確度.
具體分析可知,由于累計頻率曲線法對整體路段事先進行路段單元劃分,使得事故密集路段K67+500~K68+500被人為地劃分為K67+500~K68+000和K68+000~K68+500兩個路段,事故次數分別為42次、17次.假如累計頻率曲線法鑒別標準值大于17,則路段K68+000~K68+500在鑒別結果中不屬于事故多發段,就會造成事故多發段的遺漏.DBSCAN聚類結果顯示路段K67+950~K68+400內共發生事故55次,屬于事故多發段,對比累計頻率曲線法中事故多發段K67+500~K68+500,可知累計頻率曲線法中路段劃分導致了事故多發段范圍的擴大.而改進的DBSCAN聚類算法用于事故多發段鑒別時,其鄰域動態變化,能避免事故多發段的遺漏或范圍擴大.
從每處事故多發段的長度看,DBSCAN聚類算法能實現任意長度聚類,避免累計頻率路段單元劃分對事故多發段長度的影響,鑒別結果能更加客觀地反映實際道路交通事故多發段的分布特征.
基于改進的DBSCAN聚類的事故多發段鑒別方法和累計頻率曲線法在實例應用中對比分析可以看出,DBSCAN聚類算法用于鑒別事故多發段不僅能克服鑒別過程中事故多發段的遺漏或事故多發段范圍擴大,且具有更高的精確性,能實現任意長度的聚類,客觀地反映出道路中事故多發段的空間分布特征,為交通安全中事故多發段的研究提供依據.
文中提出了一種“固定ε值,自動搜索最優Minpts值”的改進的DBSCAN聚類算法鑒別方法事故多發段,實例應用證明了其有效性和優越性.但是,對于DBSCAN聚類算法中關鍵參數——鄰域半徑ε值的優化選取還需進一步研究,需要采取多變量優化算法同時對領域半徑和密度閾值同時優化.
此外,通過對象高速公路事故數據分析可知,在所有的5處事故多發路段中,有2處為互通區域、2處為隧道區域.可見,高速公路主線出入口匝道區域的交通事故具有高發態勢,其主要原因是匝道出入口區域道路因素和交通流環境復雜,其事故致因分析和有效預防需要進一步研究.

圖4 不同密度閾值下事故多發段總里程占整體路段里程百分比
[1]方守恩,郭忠印.公路交通事故多發位置鑒別新方法[J].交通運輸工程學報,2001(1):90-94.
[2]朱順應,王 紅,嚴新平.道路交通安全宏觀評價FAHP法[J].武漢理工大學學報:交通科學與工程版,2005,29(5):697-699.
[3]肖 慎,過秀成,宋俊敏.公路交通事故黑點診斷技術研究[J].公路交通科技,2003,20(4):95-97.
[4]GUO Z,GAO J,KONG L.The road safety situation investigation and characteristics analysis of black spots of arterials highways[J].Advances in Transportation Studies an International Journal Section A,2003(1):9-20.
[5]王曉飛.基于固定步長道路分段的累計頻率曲線事故鑒別方法在山區高速公路中的應用[J].交通標準化,2012,17(9):31-34.
[6]袁 浩,史桂芳,湯振農.交通事故多發路段研究[J].交通信息與安全,2009,27(2):100-103.
[7]張鐵軍,唐錚錚,張巍漢.雙變量區間過濾法進行事故多發段判別[J].公路交通科技,2006,23(3):139-142.
[8]孫 健,魏麗英.基于均值化主成分聚類分析的交通安全評價方法研究[J].交通信息與安全,2012,30(1):90-93.
[9]THANH N T,KLAUDIA D,MICHAL D.Revised DBSCAN algorithm to cluster data with dense adjacent clusters[J].Chemo Metrics and Intelligent Laboratory Systems,2013(1):92-96.
[10]陳 剛,劉秉權,吳 巖.一種基于高斯分布的自適應DBSCAN算法[J].微電子學和計算機,2013,30(3):27-34.
[11]王鴻遙,孫 璐,游克思.基于DENCLUE聚類算法的交通事故多發點鑒別方法[J].交通運輸工程與信息學報,2013,11(2):5-10.
[12]馮少榮,肖文俊.基于密度的DBSCAN聚類算法的研究及應用[J].計算機工程與應用,2007,43(20):216-221.