陳威仰
(廣州華商學院數(shù)據(jù)科學學院,廣東 廣州 511399)
近年來,隨著我國經(jīng)濟水平的提升,汽車的普及率越來越高,汽車不良駕駛行為的數(shù)量也隨之上升。車聯(lián)網(wǎng)技術的飛速發(fā)展,讓道路運輸?shù)认嚓P管理部門可以對車聯(lián)網(wǎng)數(shù)據(jù)進行處理和有效利用。
Baidu 地圖API 是由百度公司提供的Baidu 地圖開放服務接口,支持基于經(jīng)緯地點搜尋、規(guī)劃路線、導航定位等地圖應用功能,該API 使用優(yōu)點在于即調(diào)即用,方便快捷。本文借助Baidu 地圖API 對車聯(lián)網(wǎng)數(shù)據(jù)進行分析研究,通過挖掘潛在的非安全駕駛行為來為有關管理部門提供幫助。
本文基于一些運輸車輛的原始行車軌跡數(shù)據(jù),對車輛的運輸路線以及其在運輸過程中的速度、加速度等行車狀態(tài)進行提取,數(shù)據(jù)格式如表1所示。
表1 原始行車軌跡采集數(shù)據(jù)結(jié)構(gòu)
根據(jù)數(shù)據(jù)集中的經(jīng)緯度數(shù)據(jù),可以得到車輛運輸路線的起始地點以及所有中間途徑點記錄,借助Baidu地圖API來繪制路徑即可獲得車輛運輸線路圖。因Baidu 地圖對外開放的API 是最方便快捷的調(diào)用方式是使用JavaScript語言調(diào)用,所以需要把數(shù)據(jù)的文件格式轉(zhuǎn)換為方便JavaScript 操作讀寫的JSON 格式。通過jQuery 的Ajax 技術,模擬讀取服務器返回值的方法,來讀取本地文件的數(shù)據(jù)內(nèi)容,將.json 文件中的JSON 數(shù)據(jù)以返回體的形式返回給瀏覽器客戶端,結(jié)合Baidu 地圖API 進行繪圖編程。這部分的核心實現(xiàn)代碼如下:
繪畫得到的車輛運輸路線如圖1所示。
圖1 基于Baidu地圖API繪制的車輛運輸路線圖
車輛在移動的過程中,坐標位置會發(fā)生相對變化,所產(chǎn)生的距離即為里程。計算實際行駛的里程需要獲取所有前后移動的坐標點的距離,然后進行疊加運算,即可用公式⑴計算獲得車輛在該線路內(nèi)的實際行駛里程。
其中,為實際行車距離,為坐標點的個數(shù),S代表的是第個點到第1個點之間的距離數(shù)據(jù)。
借助Baidu 地圖API 自帶的坐標點間距離的計算功能,獲得行車數(shù)據(jù)里某一車輛兩個坐標點間的行駛距離,累加該車輛在某一線路所有坐標點間的距離,可以得到該車輛在該線路內(nèi)的實際行駛里程。值得注意的一點是,如果兩個坐標點之間的采集時間相差過大時,應當認為這兩個坐標點隸屬于不同路線。為此,我們假設當采集時間差距超過一分鐘時,車輛開始行駛不同的路線,不同路線之間的里程不做疊加計算。本文考慮到Python 語言較強的數(shù)據(jù)處理能力以及出色的操作便捷性,使用Python 完成了所有的數(shù)據(jù)操作和運算。
獲得車輛對實際行駛里程后,根據(jù)對應線路采集到的行駛時間t,可以計算得到里程內(nèi)的平均速度:
其中,為平均速度,t為第n 個點到第n+1 個點之間的行駛時間,t為實際行車花費的總時間。
觀察車輛的平均速度變化,假設一前一后兩段里程的平均速度發(fā)生較大幅度的改變,即可認為該車輛進行了急加速或急減速。根據(jù)速度計算公式⑷:
可以得到加速度計算公式⑸:
隨機抽選10條車輛行車軌跡采集數(shù)據(jù),計算行車過程中的行車指標,如表2所示。
表2 某10輛車輛行車過程中的行車指標
觀察表1,平均速度偏高甚至嚴重超速的車輛,急加速減速的次數(shù)明顯高于其他正常駕駛速度的車輛??梢赃M一步假設,頻繁的急加減速的車輛更容易表現(xiàn)出不安全的駕駛行為。車輛事故的發(fā)生,往往是由于車輛間的距離小于車輛反應距離和剎車距離。因此,兩車間最小距離大于車輛反應距離和剎車距離可以規(guī)避事故的發(fā)生。假設司機從制動到停下來的時間為,開始的速度為,則反應距離s如公式⑹所示。
最小兩車距離主要由剎車距離決定,而剎車距離又與車速密切相關,根據(jù)交通工程學科經(jīng)驗,用式⑺可以計算前后兩車最小間距:
其中,是剎車時司機在反應時間內(nèi)汽車行駛的距離,是剎車時從制動器開始起作用到汽車完全停止行駛的距離,為制動距離,是與路面阻力、濕度、坡度等因素有關的系數(shù),是兩車之間的安全距離,是車輛的標準長度。司機要在中剎車停住才不撞上前一輛車,所以汽車之間的安全行駛間距應該符合式⑻的條件。
根據(jù)上文提到可能影響行車安全的行為因素如下:車輛的平均行駛速度、車輛行駛的距離、車輛行駛的時間、車輛的反應距離、車輛的急加速減速情況。由于五個因素相互影響,它們的排列組合將會對行車安全產(chǎn)生不同的效應,以是否為安全駕駛行為作為目標層,通過嚴格的分析,對以上五個切實的因素擬定關系并評分作為準則層,比較最終的方案層安全行車與不良駕駛后的影響。建立如下層次分析結(jié)構(gòu),如圖2所示。
圖2 層次分析結(jié)構(gòu)
構(gòu)造判斷矩陣,就車輛的5個切實指標,進行兩兩比較并評分,評分權重如表3所示。
表3 準則層要素對決策目標的排序權重情況
計算判斷矩陣A-C,結(jié)果如表4所示。
表4 判斷矩陣A-C
綜合以上數(shù)據(jù),計算得出方案層中要素對決策目標的排序權重:安全駕駛權重為0.8670,不良駕駛權重為0.1330,可以看出在權重上,安全行駛比不良行駛大0.734。這也意味著,車輛在盡可能遵守安全行車原則的前提下,很大概率是安全駕駛行為。
一般來說,影響行車安全的內(nèi)因有車輛本身的安全、效率、節(jié)能等因素,而外因多數(shù)是天氣原因。設定安全駕駛的評價指標集合={安全,效率,節(jié)能,天氣},采用模糊綜合評價法,對運輸車輛安全駕駛行為進行綜合評價?;谠u價指標集合確定評語集合和模糊評判矩陣。
對于安全性={很安全,比較安全,一般,不安全},對于效率={很高,較高,一般,不高},對于節(jié)能={很少,較少,一般,很高},對于天氣={很好,較好,一般,不好},對于路況={很好,較好,一般,不好}。
假設有50%的人認為很安全,30%的人認為比較安全,20%的人認為比較一般,沒有人認為不安全。安全性的評價結(jié)果就是(0.5,0.3,0.2,0),以此類推的效率評價結(jié)果是(0.4,0.3,0.2,0.1),節(jié)能評價結(jié)果是(0.3,0.2,0.4,0.1),天氣評價結(jié)果是(0,0.3,0.6,0.1),路況評價結(jié)果是(0.2,0.3,0.2,0.3)。構(gòu)建矩陣如下:
針對上面的指標集合,設權系數(shù)向量取為=(0.3,0.4,0.1,0,0.2)。利用模糊矩陣的乘法和加法計算綜合評判矩陣,計算公式為:
定義模糊矩陣的乘法和加法分別為:
一般的,對=(b,b,…,b),令:
綜上可以得到行車安全的綜合評價模型:
該模型可以基于實際場景進行評價值的修改和調(diào)整,因地制宜地評價客觀條件下的行車安全狀況。
在真實的行車數(shù)據(jù)的基礎上,本文結(jié)合Baidu 地圖API、計算機面向?qū)ο缶幊碳夹g以及數(shù)學模型進一步挖掘出數(shù)據(jù)背后的行車駕駛行為。基于模糊綜合評價模型構(gòu)建的運輸車輛安全駕駛行為評價模型也是能簡易直觀地反映駕駛行為是否符合安全規(guī)范,可以有效協(xié)助有關部門針對車輛安全問題快速做出判斷和決策。