張鶴鵬,黃 達,杜 辰,李曉璐,2,朱廣宇,2
(1.北京交通大學 交通運輸學院,北京 100044;2.北京交通大學 綜合交通運輸大數據應用技術交通運輸行業(yè)重點實驗室,北京 100044)
識別用戶出行方式、獲知城市居民出行行為的屬性特征并借此獲知城市居民的出行結構,是城市交通管理部門提供交通服務、實施交通組織管理的前提[1-2]。隨著移動互聯網技術的高速發(fā)展,通過智能手機等設備采集終端用戶的移動數據并對其進行分析,可以獲得交通參與者出行相關信息。而將交通參與者的這些信息進行處理后,再采用一定的算法就可以識別用戶的出行方式,獲得出行偏好等信息。交通出行方式的識別是對用戶出行軌跡中每一對相鄰出行節(jié)點中出行過程特征的識別。若相鄰出行過程中運動軌跡特征大致相同,則認為相鄰兩階段出行方式相同;若出現較大差異,則認為被調查者出現停駐或采用了其他的交通方式。目前很多學者針對出行方式識別的問題進行了研究,主要是基于以上提到的思路,提取出行者每一個全球定位系統(Global Positioning System,GPS)軌跡點信息,進而識別出行方式。Chang等[3]、Gong等[4]、Lu等[5]都是基于GPS采集到的數據,分別采用基于規(guī)則、基于模糊邏輯的算法將數據結合ArcGIS軟件,對被調查者的出行方式進行識別。
智能手機可對用戶每一時刻的出行信息進行記錄并形成出行軌跡。識別用戶的出行方式前需要運用一定的方法提取出行軌跡中的信息,從而獲取用戶的出行鏈以更加準確地體現出出行軌跡與出行方式選擇的聯系。在得到用戶出行鏈的基礎上,提取速度、加速度、方向變化率、出行起止時刻等特征,接著采用一定的識別方法,如:基于規(guī)則的方法、構建概率矩陣的方法、機器學習的方法對用戶的出行方式進行判別?;谝?guī)則的方法是通過邏輯特征設定規(guī)則對出行方式進行判斷,若對象滿足某種出行方式的判斷條件,就將其歸類到某種方式。例如 Stopher等[6]、Bohte等[7]、Chen 等[8]都通過對平均速度、最大速度、出行時長設定不同的閾值來區(qū)分步行、公交、小汽車等交通方式。通過已有文獻可以看出,基于規(guī)則的方法主觀性強,規(guī)則和閾值的設定主要依據研究者的專業(yè)知識和經驗,其精度和擴展性受到限制。而近年來運用機器學習的算法對用戶出行方式的識別逐漸成為研究的重點,并且其精度和可擴展性都比以往的方法有了很大的提升。閆彭[9]、張治華[10]、汪磊等[11]對GPS采集到的定位數據分別使用BP(Back Propagation)神經網絡、多層感知器神經網絡、支持向量機(Support Vector Machine,SVM)模型進行交通出行方式的識別,且都到達了良好的識別精度。
縱觀國內外文獻,通過GPS定位系統獲取位置數據是獲取用戶出行鏈的主要途徑,而利用移動終端定位數據的相關研究較少。因此,本文主要對從移動終端獲取到的用戶位置數據進行分析,提出了一種新的用戶出行鏈獲取方法,并通過案例分析證明了該方法的有效性。研究文獻[11]~[14]發(fā)現,可以采用多種識別方法對用戶的出行方式進行判別,考慮到決策樹算法具有較強的學習能力,且在交通領域已有較多的應用,比如道路交通事故預測、短時交通流預測、城市道路擁擠預測等。因此,本文采用機器學習算法中的C4.5決策樹算法對移動用戶的出行行為進行分析,包括用戶的始發(fā)地、速度、交通方式的選擇等。
在對用戶出行方式判別的過程中,識別出各類交通方式的數據特征,進而確定特征變量和判別閾值是其中較為關鍵的一部分。根據文獻[15],最常用到統計特征為速度、加速度、出行距離、出行時長、停止率等統計量,因此需要對這些統計量進行特征分析,確定合適的分裂屬性,進而構建決策樹。
(1)速度
速度是區(qū)分交通方式最重要的特征變量,一般而言機動車速度大于非機動車和行人?,F有文獻中應用于出行方式識別的速度統計值一般有最大速度、平均速度、百分位速度等。由于定位點存在隨機誤差,最大速度難以保證準確性,所以本文采用第75個百分位速度(表示此車輛車速累計出現頻率達75%的行駛速度)代替。
速度能夠較好地區(qū)分各類交通方式,但同時也是最易誤導識別的變量之一。雖然不同性能車輛在設計速度上具有很大差異,但是城市阻滯的行車環(huán)境其實較難將不同交通方式的差異顯現出來。因此還需要結合其他的特征變量進行分析。
(2)速度的百分位數
文獻[14]、[15]中基于速度的75分位數比較步行、自行車、公交車、小汽車的速度變化趨勢,得到的結果如圖1所示。
圖1 速度的75分位數分布頻率曲線圖
由圖1中各交通方式的分布曲線,文獻指出以3m/s設定閾值,可以區(qū)分步行與自行車兩種出行方式,而機動車出行速度與非機動車出行速度差別較大,且非機動車速度一般低于16m/s,故本文選取16m/s作為速度閾值,區(qū)分機動車與非機動車出行。
(3)軌跡點數量占比
為了進一步區(qū)分公交車出行和小汽車出行兩種方式,首先提取瞬時速度大于15m/s的軌跡點作為
式(1)中:Ni是速度大于15 m/s的軌跡點個數(個);N是總的軌跡點個數(個)。
根據上述特征變量計算公式,對公交車、小汽車軌跡點數量占比進行分析,得到的結果見圖2和圖3。研究對象,剔除步行、自行車的干擾。引入軌跡點數量占比作為特征變量,其計算公式如下:
圖2 速度大于15m/s的軌跡點數量占比分布曲線圖
由圖2和圖3可以發(fā)現,小汽車與公交車的區(qū)分閾值為12%的軌跡點數量占比。當閾值大于12%是為小汽車,反之則為公交車。
(4)出行距離
依據城市居民出行畫像描述[16],居民出行因距離不同,出行方式的偏好也不同。不同出行方式的出行距離分布見圖4,步行的出行距離為1~2km;自行車的出行距離為6km以內;出行距離在20km以上的為小汽車。
(5)停止率
在城市居民公交車與小汽車出行畫像的描述中[17],其停車率具有明顯的不同。由于公交車的營運特征,在道路暢通的情況下,其停車率會明顯高于小汽車。提取軌跡點中停車的軌跡點,作為停車點集合P:
圖4 不同出行方式的出行距離分布圖
并定義停止率Stoprate為單位距離中停止點的個數:
式(2)~式(3)中:A為軌跡點的集合;V為軌跡點的速度(m/s);為一次出行中停止段的個數(個);|ps|是速度為0的停止段的集合;dis是一段出行中出行距離(km)。
根據以上公式,計算公交車和小汽車的停止率的區(qū)域分布情況,如圖5所示。
圖5 停止率柱狀分布圖
移動數據與以往的GPS、傳感器等方式采集到的出行數據相比存在很大差異,具體表現為蜂窩分布、數據采集頻率不固定、乒乓切換等特征。這些特征的存在導致采集的數據不能直接被使用,需要對其進行預處理。先將每一段數據按照采集時間排序,剔除移動終端位置信息錯誤、時間信息錯誤和基站位置錯誤的數據,提高數據的質量,為后續(xù)的地圖匹配提供可靠且有效的數據。
移動終端利用扇形定位所采集到的定位數據主要由確定終端唯一標識的編號、經度、緯度和定位時間4類條目組成。本文主要對兩種異常數據進行處理,包括經緯度越界數據和重復冗余數據。首先,通過在地圖上標注區(qū)域邊界,得到所在區(qū)域的經緯度范圍,將經緯度坐標在此范圍之外的移動定位數據點全部剔除。然后,剔除重復數據。接著,對處理完成的數據進行坐標變換以便進行地圖匹配,需要調用坐標轉換應用程序編程接口(Application Programming Interface,API)將原始移動定位坐標轉換成電子地圖中的坐標。
為了減少數據偏差,保證移動終端用戶出行軌跡的可靠性和準確性,需要把預處理過的數據與數據地圖進行匹配和對比。地圖匹配技術建立在模式識別理論之上,其目標是完成定位點和道路網絡之間的精準匹配。常用的地圖匹配的方法有:定位點與道路匹配,軌跡線與路網匹配。
本文選取定位點與道路匹配的方法。具體如下:提取路網節(jié)點、道路線路等地理信息系統(Geographic Information System,GIS)路網數據,通過垂線投影法(原理見圖6),尋找定位點與其距離最近的路段,以定位點向路段做垂線,垂足點為匹配點,與定位點距離最小的路段即為匹配路段。
圖6 垂線投影法原理圖
在圖6中,I表示定位點,R1與R2表示定位點附近的道路,計算車輛與附近所有道路的距離以及與各個道路方向的夾角[16]。根據式(4)計算車輛位置點與附近所有道路的權值θi:
式(4)中:qi為定位點與道路的距離(m);wi為方向的夾角(rad);λq為距離的權重;λw為方向的權重。在R1與R2中選取權重較小的道路為匹配道路,該道路的垂足點為匹配點。
從移動終端用戶軌跡中判別交通方式是一個典型的模式識別問題,需根據軌跡對象的統計特征尋找合適的統計量,并使用機器學習算法建立判別規(guī)則。本文的交通方式判別工作包括出行段分割、統計量選取、機器學習3個步驟。首先根據出行軌跡信息識別停駐,并根據停駐將出行軌跡分割成多個出行;然后根據換乘點將出行分割成只含一種交通方式的出行段;最后基于出行段運用機器學習算法識別出行方式。
出行鏈是指由一系列相鄰節(jié)點間連續(xù)的出行而形成的鏈式結構,往往以空間上有向位移的方式體現。獲取用戶的出行鏈對出行者出行方式的識別有著至關重要的作用。但在獲取用戶出行軌跡后,考慮到存在的誤差和基站分布的影響還需對異常漂移的軌跡點進行修正,進而提取用戶出行鏈。
3.1.1 異常漂移修正
本文利用設定速度閾值的方式對出行軌跡鏈中出現的異常飄移的軌跡點進行修正。具體篩選與檢驗流程是,首先計算位置點間的時間:
其次,計算位置點間距離:
最后,計算位置點之間的移動速度,并判斷位置點之間的移動速度是否符合閾值要求:
式(5)~式(8)中:ti為時間序列中第i個點的時刻信息;Δt為點間時間差(s);(LonA,LatA)為第i個位置點的經緯度坐標;(LonB,LatB)為第i+1個點的經緯度坐標;C為軌跡點與地球球心的夾角(rad);R為地球半徑,取6 371km;Y為圓周率,取3.1416;vi為此終端用戶出行時間序列上第i點的速度(m/s)。
3.1.2 用戶出行鏈獲取算法
根據以往經驗設定距離閾值和時間閾值,將出行分割成多個出行片段,再應用算法逐段識別出行方式。個人出行鏈獲取流程如圖7所示。
圖7 基于手機定位信息的出行鏈獲取流程圖
圖7中個人出行鏈獲取流程包含點向速度控制模塊和出行鏈獲取算法兩部分,而出行鏈獲取算法作為出行鏈獲取的主要部分,包含??奎c的判定和起訖(Origin-Destination,OD)點的判定兩個環(huán)節(jié)。
首先是??奎c的判定。出行者在出行時總會呈現出靜止(或者在一定閾值內移動)的狀態(tài),因此可以設定距離閾值Distance為判定條件。當相鄰兩點間的距離大于該閾值,說明出行者處于出行過程中;當相鄰兩點間距離小于該閾值時,則表示出行者處于活動或靜止狀態(tài)。
其次是OD點的判定,以距離閾值Distance和時間閾值T為判定條件。判定的邏輯流程為:OD點可分為兩種狀態(tài),當兩點之間的距離大于閾值Distance時,此時狀態(tài)稱為移動;當兩點之間的距離小于閾值Distance時,此時狀態(tài)稱為駐留。在OD點狀態(tài)判定的基礎上,根據時間數據計算駐留狀態(tài)下的持續(xù)時間t。如果駐留狀態(tài)所持續(xù)時間t大于時間閾值T,則該段時間內的第一個坐標點判定為上一次出行行為的D點,最后一個坐標點判定為下次出行行為的O點。
決策樹是一種機器學習的算法。本文選用決策樹中的C4.5算法進行出行方式的識別,主要考慮到以下幾個方面:①C4.5算法具有計算量小、準確率高、易于提取規(guī)則的特點;②用信息增益率而非信息增益值來選擇分裂屬性,對樣本數據量的依賴程度變低;③由于本文中的數據為數值型的連續(xù)數據,而決策樹C4.5算法中加入了連續(xù)屬性的處理算法,對非離散型的數據也能處理。在分裂屬性選擇完畢后,可以通過計算不同的閾值確定劃分方案,從而計算各方案中的信息增益率,在其中選擇最大的信息增益率所對應的閾值用作最優(yōu)分裂謂詞。
第一步:分裂屬性選取。首先計算總的數據集S關于屬性A(速度的75分位數、最大速度、出行距離、速度大于16m/s的概率、失真率、停止率等)統計量的熵,再依次分別計算統計量的增益率,根據增益率從大到小依次建立子節(jié)點,從中選取信息增益率最大的屬性作為該決策樹的根節(jié)點。其中選取分裂屬性的關鍵公式如下。
數據集S的熵I(S)衡量數據集的無序程度,其計算公式為:
式(9)中:數據集S包含類別C1,C2,…,Cm;Pi為類別Ci在數據集S中出現的概率;|S|為S中的樣本總和。
此外今年順豐還打出“飛機+高鐵”組合,累計增加近250噸運能。除高鐵外,日前投入使用的波音747全貨機也加入“雙11”運力儲備軍,順豐航空運力提升112.7噸。截至目前,順豐航空機隊已擁有48架全貨機。
信息增益Gain(S,A)用來度量序數改進的結果,其計算公式為:
式(10)中:屬性A具有6個不同的值(速度的75分位數、最大速度、出行距離、速度大于16m/s的概率、失真率、停止率等),可以用屬性A將S劃分為v個子集 {S1,S2,???,Sv},|Sv|為子集v中各個類別樣本數的和。
計算信息增益比例:
數據集S關于屬性A的熵:
增益中包含把數據集劃分為更小有序子集的屬性A的偏差。要減少這個偏差,采用Split來計算每個變量相對于它的m個變量值的熵。
第二步:確定分裂謂詞。C4.5算法中引入了信息增益率來確定分裂屬性,針對某一個分裂屬性,會有n個不同的數值,n個不同的數值對應了k種不同的分裂方案,計算每種方案下的信息增益比例,選取最大的信息增益比例所對應的數值作為最后的分裂謂詞。
本文以某地區(qū)移動終端位置數據分布圖(見圖8)為例,對用戶出行方式進行研究,數據中包含了約7 000部移動終端的位置信息,共約30萬條數據。
圖8 研究區(qū)域空間結構圖
4.1.1 數據的標準化處理
本節(jié)運用2.1節(jié)中數據預處理的方法,為確定出行用戶的定位點在數字地圖中的具體位置,在剔除移動終端定位的異常數據后,將所得的出行數據映射到所研究的交通區(qū)域中,定位數據的屬性示例如圖9所示。其中,USERID為終端編號,是識別移動終端設備的唯一標識;TIME表示終端設備上傳定位信息的時刻;LAT和LON分別為終端設備所在位置的緯、經度坐標;TYPE為觸發(fā)定位信令的事件類型(001表示主叫,002表示被叫,003表示位置更新,004表示短信,005表示位置區(qū)切換)。
圖9 移動終端定位數據的屬性示例
4.1.2 地圖匹配
同時考慮到定位數據存在一定誤差以及為使計算簡化,本文對道路寬度值的設定比實際情況有所擴展。以2016年2月10日的晚高峰時段為例,數字地圖匹配前后對比見圖10。
圖10 地圖匹配前后示意圖
根據3.1節(jié)中給出的獲取用戶出行軌跡的方法,篩檢出移動終端用戶的出行軌跡;具體過程為:獲取用戶USERID的所有記錄,按照TIME字段排序后輸出該用戶出行軌跡;在輸出用戶軌跡鏈基礎之上,利用電子地圖的API將單用戶的軌跡鏈在地圖上表現出來,如圖11所示。
根據3.2節(jié)中給出的基于決策樹法的出行方式判別模型,建立決策樹如圖12所示。
圖11 單用戶手機定位點記錄圖
圖12 C4.5決策樹示意圖
利用建好的決策樹對用戶的出行方式進行分析,得到的最終結果如表1所示。
表1 判別結果與實際對比
從表1可以看出,根據C4.5決策樹算法得到的結果在判別步行或者自行車方式方面具有明顯的優(yōu)勢,實際中出行方式是自行車的,會有可能被判別為步行和自行車,但可能性較低。在判別公交車和自行車方面此算法也有較好的表現,實際中出行方式是公交車的,會有可能被判別為小汽車;實際中出行方式是小汽車的,也有可能判別為小汽車,但均不會出現判別為自行車或者步行的判別結果。
本文提出了一種基于移動定位數據的用戶出行方式識別算法,通過將定位數據與現有路網進行匹配,識別出了個人出行鏈;對用戶的出行選擇行為進行了分析,確定了用戶的起始位置、移動速度和選擇的出行方式等。經實例驗證,本文提出的識別步行、自行車、公交車、小汽車的方法是可行的,能夠有效、準確地區(qū)分機動車和非機動車。該研究成果有利于更好地推廣移動定位技術在交通領域的應用,對于提高居民交通出行調查效率、合理布局交通設施、優(yōu)化交通系統具有重要意義。
在今后的研究中,以下兩方面有待深入:(1)在提取用戶出行鏈時,本文采用的地圖匹配方法是定位點與道路匹配,這種方法的優(yōu)勢是方便、快捷、高效,但適用性和延展性不高,對于復雜路網的地圖匹配需要尋找更合適的辦法;(2)識別的出行方式類別需要進一步豐富,本文只是針對4種出行方式進行識別,但日常生活中人們的交通出行方式遠多于4種。隨著出行方式類別的多樣化,識別難度將進一步增加,提升識別效率的方法有待探究。