溫曉麗,何子登,余紅玲,鄒大畢
(廣州羊城通有限公司,廣東廣州 510080)
近年來(lái),隨著廣州市城鎮(zhèn)化發(fā)展進(jìn)程加快,城市公交線網(wǎng)面臨越來(lái)越大的壓力,研究如何提升交通運(yùn)行效率、優(yōu)化公交線網(wǎng)布局、升級(jí)交通出行服務(wù)等成為業(yè)界關(guān)注的焦點(diǎn)。目前,廣州市公交車普遍安裝了進(jìn)出站監(jiān)測(cè)系統(tǒng)與車載GPS 導(dǎo)航定位設(shè)備,按時(shí)序記錄公交車進(jìn)出站信息及GPS 行車軌跡數(shù)據(jù)。所有連續(xù)運(yùn)行的公交車輛和眾多的乘客刷卡交易形成了城市公共交通運(yùn)行及乘客出行大數(shù)據(jù),但公交收費(fèi)多采用“一票制”,只有上車刷卡數(shù)據(jù),沒(méi)有下車刷卡數(shù)據(jù)。為進(jìn)一步研究乘客出行時(shí)間、空間及公交系統(tǒng)客流量特征,首先需要確定乘客公交下車站點(diǎn)及下車時(shí)間,以公交IC 卡為主的數(shù)據(jù)分析方法仍是當(dāng)前公交客流OD 研究的主流做法。國(guó)外學(xué)者的研究大多基于出行鏈思想,利用AFC、車輛自動(dòng)定位系統(tǒng)、地鐵公交聯(lián)合數(shù)據(jù)等,分析推導(dǎo)公交客流與出行時(shí)間變化特征等,并驗(yàn)證城市交通出行過(guò)程的連續(xù)性[1-8]。國(guó)內(nèi)學(xué)者研究主要集中于IC 卡下車站點(diǎn)的推導(dǎo),如胡郁蔥等[9]通過(guò)IC 卡數(shù)據(jù)挖掘技術(shù)獲取公交OD 矩陣;陳崢嶸[10]將智能公交數(shù)據(jù)處理方法應(yīng)用于公交客流OD 研究;胡繼華等[11]提出結(jié)合出行鏈的IC 卡公交客流研究方法。
本文以廣州市一卡通交易數(shù)據(jù)為實(shí)例進(jìn)行分析研究,根據(jù)出行鏈思想,對(duì)乘客的連續(xù)交易行為進(jìn)行分析。以卡交易數(shù)據(jù)、公交進(jìn)出站數(shù)據(jù)和線路站點(diǎn)數(shù)據(jù)為基礎(chǔ),針對(duì)完整的公交出行鏈,提出一種可判定公交下車站點(diǎn)的最近鄰算法;針對(duì)出行鏈不完整的情況,根據(jù)乘客長(zhǎng)期出行的時(shí)空規(guī)律性,通過(guò)分析用戶中長(zhǎng)期歷史交易情況,提出采用Mean Shift 算法計(jì)算乘客的居住地(O)和工作地(D),再利用OD 預(yù)測(cè)不完整出行鏈里交易記錄的下車站點(diǎn)[12-14]。通過(guò)這兩種方法,可補(bǔ)充85% 的公交交易數(shù)據(jù),并抽取部分用戶的下車站點(diǎn)數(shù)據(jù)進(jìn)行驗(yàn)證。結(jié)果表明,該方法準(zhǔn)確率較高,因此具有一定的研究?jī)r(jià)值。
本文數(shù)據(jù)來(lái)源于廣州羊城通卡在公交、地鐵場(chǎng)景下的交易數(shù)據(jù),公交公司提供的每天進(jìn)出站數(shù)據(jù)以及線路站點(diǎn)數(shù)據(jù)。在“一票制”收費(fèi)模式下,公交交易數(shù)據(jù)中包含邏輯卡號(hào)、車輛車牌號(hào)、班次、線路編碼、上車站點(diǎn)編碼、上車站點(diǎn)及其經(jīng)緯度、上車時(shí)間等信息,但不包含下車站點(diǎn)和下車時(shí)間信息。地鐵交易數(shù)據(jù)中包含邏輯卡號(hào)、地鐵進(jìn)出站站點(diǎn)、進(jìn)出站時(shí)間以及進(jìn)出站站點(diǎn)經(jīng)緯度等信息。
公交車的進(jìn)出站監(jiān)測(cè)系統(tǒng)記錄了所在公交車輛的進(jìn)出站數(shù)據(jù),公交交易數(shù)據(jù)與公交進(jìn)出站數(shù)據(jù)之間存在著對(duì)應(yīng)關(guān)系。每輛車都有一個(gè)智能調(diào)度編號(hào),根據(jù)該編號(hào)對(duì)進(jìn)出站數(shù)據(jù)預(yù)先劃分好班次,如表1 所示。
Table 1 Bus frequency information表1 公交車輛班次信息
Table 2 Bus line stop information表2 公交線路站點(diǎn)信息
在下車站點(diǎn)判定過(guò)程中,本文提出采用地鐵數(shù)據(jù)和公交數(shù)據(jù)聯(lián)合分析的方法,采用基于出行鏈的乘客下車站點(diǎn)概率模型進(jìn)行下車站點(diǎn)判定。
基于廣州市公交交易和地鐵交易的融合數(shù)據(jù),按照每個(gè)用戶刷卡進(jìn)站或上車時(shí)間對(duì)所有交易排序,分析每天有N(N>1)次乘車記錄的乘客出行特點(diǎn)。本文將廣州市常駐人口每天的出行劃分為居住地和工作地,居住地和工作地范圍內(nèi)聚集公交站點(diǎn)或地鐵站點(diǎn)。大多數(shù)上班族用戶每天上午從居住地選取一個(gè)站點(diǎn)出發(fā),下午從工作地選取一個(gè)站點(diǎn)乘車回家。假定這些乘客的出行鏈?zhǔn)情]合的,則用戶出行方式可歸納為以下兩類情況,如圖1 所示。
第一類為對(duì)稱出行,這類乘客的出行路徑可歸納為H->W(wǎng)->W(wǎng)->H,中間沒(méi)有換乘或僅有一兩次換乘,這類乘客最典型的代表就是通勤族或?qū)W生;第二類為非對(duì)稱出行,這些乘客的出行路徑歸納為H->T1->T2->T3->H(Ti指臨時(shí)地),中間可能經(jīng)過(guò)一次或N 次臨時(shí)換乘站點(diǎn),其出行不具有時(shí)空規(guī)律性。
假設(shè)乘客在一次乘車記錄中,上車站點(diǎn)為Si,Si∈LA,所屬線路是LA{S1,S2,S3,…},則此次下車站點(diǎn)Sj滿足如下條件:Sj∈Li,j>i。
Fig.1 User travel mode圖1 用戶出行方式
最近鄰下車站點(diǎn)判定可描述為:
(1)按天輸入某個(gè)用戶按進(jìn)站時(shí)間排序的交易信息列表:lno:{on_station_time1,on_station_time2…,on_station_timei,… on_station_timelast}。
(2)如果只有一條記錄,先不作處理。如果有多于兩條記錄,按順序讀取第i 條和i+1 條,如果i 是最后一條記錄,則讀取第i 條和0 條。從0 開始遍歷信息列表,分別讀取相鄰兩次刷卡站點(diǎn)為Si和S(i+1)%last。相鄰兩次交易的下車站點(diǎn)判定如圖2 所示。
受道教風(fēng)水學(xué)說(shuō)的影響,古代朝鮮創(chuàng)作了眾多堪輿主題的小說(shuō),在這些小說(shuō)中,堪輿成為小說(shuō)敘事的主線,貫穿故事始終。 如《定名穴牛臥林間》中,講述了湖西士人為得名穴,誠(chéng)意侍奉地師樸尚義,無(wú)奈樸尚義恃術(shù)驕縱,千般推辭,湖西士人一怒之下剝掉樸的衣服,將其緊縛于松樹上。 恰巧遇到尹氏搭救,樸尚義才幸免于死。 樸感念尹氏的再生之恩,遂幫助尹氏相地,但終未告知吉穴所在。 后來(lái)尹氏遍請(qǐng)地師占正穴,仍然求之不得。 一日,竟在牛臥之地得到正穴。 移葬親山后,家族逐漸顯赫起來(lái)。
Fig.2 Off site determination of two adjacent transactions圖2 相鄰兩次交易的下車站點(diǎn)判定
(3)判斷遍歷到的相鄰兩條記錄是否屬于B->B,B->R這類換乘方式,如果屬于這兩種情況,計(jì)算Si站點(diǎn)所在線路下游站點(diǎn)LA{Sj},j>i。計(jì)算下游每個(gè)站點(diǎn)Sj與S(i+1)%last的歐式距離D(Sj,S(i+1)%last),如果D(Sk,Sj)<d(d為指定的一個(gè)距離閾值),則放入備選集合R{S1,S2,S3…}。如果相鄰兩條交易記錄為R->R,R->B,則不作處理。
(4)計(jì)算結(jié)果集的所有D(Sj,S(i+1)%last)距離,選取其中的最小距離min(D(Sj,S(i+1)%last))站點(diǎn)作為第i 條公交交易記錄的下車站點(diǎn)。如果R 為空,說(shuō)明下游每個(gè)站點(diǎn)Sj與S(i+1)%last的距離都不小于d,認(rèn)為出行鏈斷裂,先不作處理。對(duì)于第i(1<i<last)條公交交易記錄,屬于中途斷裂的,無(wú)法確定其下車站點(diǎn)。在R 集中,如果最小站點(diǎn)距離為0,則屬于同站換乘。
每個(gè)乘客的居住地或工作地附近會(huì)有很多不同的公交站點(diǎn)或地鐵站點(diǎn),乘客會(huì)選擇不同的站點(diǎn)乘車上下班。分析乘客的長(zhǎng)期交易記錄,采用求密集點(diǎn)中心的方法得出居住地或工作地的中心點(diǎn)。每一個(gè)密集點(diǎn)中心有一個(gè)點(diǎn)x,周圍有很多個(gè)點(diǎn)xi,采用Mean Shift 算法計(jì)算點(diǎn)x 移動(dòng)到每個(gè)點(diǎn)xi所需的偏移量之和,求平均數(shù)后得到包含大小和方向的平均偏移量(該偏移量方向是周圍點(diǎn)分布密集的方向)[14-17]。然后,點(diǎn)x 往平均偏移量方向移動(dòng),再以此為新起點(diǎn)不斷迭代,直到滿足一定條件后結(jié)束。
給定d 維空間Rd的n 個(gè)樣本點(diǎn),i=1,…,n,在空間中任選一點(diǎn)x,則Mean Shift 向量基本形式定義為:
Sk是一個(gè)半徑為h 的圓形區(qū)域,滿足以下關(guān)系的y 點(diǎn)集合:
k 表示在n 個(gè)樣本點(diǎn)xi中,有k 個(gè)點(diǎn)落入Sh區(qū)域。在二維坐標(biāo)中任選一個(gè)點(diǎn),然后以該點(diǎn)為圓心、h 為半徑作圓。落在該圓內(nèi)的所有點(diǎn)和圓心都會(huì)產(chǎn)生一個(gè)向量,向量以圓心為起點(diǎn),以落在圓內(nèi)的點(diǎn)為終點(diǎn),然后將這些向量相加求平均得到Mean Shift 向量。如圖3 所示,灰色箭頭為Mh(Mean Shift 向量),以Mean Shift 向量終點(diǎn)為圓心,再作一個(gè)二維的圓。重復(fù)以上步驟,可再得到一個(gè)Mean Shift 向量,如此重復(fù),Mean Shift 向量收斂至概率密度最大的地方。
Fig.3 The process of finding the center of dense points圖3 求密集點(diǎn)的中心點(diǎn)過(guò)程
結(jié)合廣州市常駐人口在工作地和居住地的實(shí)際出行場(chǎng)景,根據(jù)乘客通勤出行的時(shí)空規(guī)律性,分析地面和軌道交通中長(zhǎng)期的海量交易數(shù)據(jù)。假定用戶工作日上午最早的一次交易記錄或非工作日第一次交易記錄的上車站點(diǎn)坐標(biāo)<home_lon,home_lat>屬于居住地范圍,工作日下午最晚一次交易記錄的上車站點(diǎn)坐標(biāo)<work_lon,work_lat>屬于工作地范圍。
少數(shù)情況下可能先以非公交方式中途換乘其它地點(diǎn),再搭乘公交回居住地。這些非工作地或居住地的坐標(biāo)較為離散,可采用Mean Shift 算法求密集點(diǎn)的中心點(diǎn)。分析多天的居住地坐標(biāo){<home_lon1,home_lat1>,<home_lon2,home_lat2>,<home_lon3,home_lat3>…},得到用戶居住地的中心點(diǎn)O,并用類似方法得到用戶工作地的中心點(diǎn)D。
(1)出行鏈尾部斷裂的下車站點(diǎn)算法。lno:{on_station_time1,on_station_time2…,on_station_timei,…on_station_timelast},on_station_timei<13:00:00。針對(duì)實(shí)際場(chǎng)景中乘客出行記錄都在上午的情形,通過(guò)最近鄰站點(diǎn)算法進(jìn)行計(jì)算,判斷當(dāng)天最后一次交易記錄和首次交易記錄的結(jié)果集R 是否為空,如果不為空,這些乘客在上午完成一次H->T->H(T 指臨時(shí)地);如果為空,說(shuō)明乘客出行鏈斷裂,不是回家。對(duì)于這些出行鏈尾部斷裂的乘客,假定是前往工作地,如圖4 所示。針對(duì)當(dāng)天上午最后一次公交交易記錄,計(jì)算下游站點(diǎn)與工作地中心點(diǎn)D 的距離D(Sj,D),設(shè)定另外一個(gè)閾值d2,從小于d2的結(jié)果集R 中選取距離最小的站點(diǎn)作為最后一次公交下車站點(diǎn)[18-21]。
Fig.4 The end of travel chain is broken圖4 出行鏈尾部斷裂
(2)出行鏈頭部斷裂的下車站點(diǎn)算法。lno:{on_station_time1,on_station_time2…,on_station_timei,…on_station_timelast},on_station_timei>13:00:00。針對(duì)實(shí)際場(chǎng)景中乘客出行記錄都在下午的情形,假定這些乘客無(wú)論是否上班,最終都要回居住地。對(duì)于出行鏈頭部斷裂的乘客,計(jì)算與居住地中心點(diǎn)O 的距離小于d2的結(jié)果集R,從R 中選取距離最小的站點(diǎn)作為最后一次公交的下車站點(diǎn),如圖5所示。
Fig.5 The head of travel chain is broken圖5 出行鏈頭部斷裂
(3)不可預(yù)測(cè)的斷裂出行鏈。經(jīng)過(guò)上述兩步處理后,對(duì)于R 集合為空的情況,這類乘客的出行鏈被劃分為不可預(yù)測(cè)的斷裂出行鏈。這類乘客中途可能因?yàn)槠渌蜻x擇非公交的其它出行方式,或者下班后去其它地方,或者上午不去上班,無(wú)法作出預(yù)測(cè),如圖6 所示。
Fig.6 Situations unable to predict the drop-off point圖6 無(wú)法預(yù)測(cè)下車站點(diǎn)的情形
進(jìn)出站信息表里記錄了每輛公交在每個(gè)班次進(jìn)入每個(gè)站點(diǎn)的時(shí)間enter_time。通過(guò)上述兩階段能確定下車站點(diǎn)名稱off_station_name 和下車站點(diǎn)編號(hào)off_station_no,根據(jù)乘客當(dāng)天所乘公交車的車牌號(hào)、所屬班次信息,聯(lián)合當(dāng)天進(jìn)出站信息中對(duì)應(yīng)車輛的車牌號(hào)、班次信息,并根據(jù)下車站點(diǎn)編號(hào)對(duì)應(yīng)的下車站點(diǎn)信息,以enter_time 時(shí)間補(bǔ)充作為此交易記錄下車站點(diǎn)的下車時(shí)間。
以廣州市2019 年12 月12 日的公交和地鐵交易數(shù)據(jù)為例進(jìn)行研究,剔除站點(diǎn)坐標(biāo)有誤差的交易記錄,提取樣本總交易記錄1 413 202 條。根據(jù)站點(diǎn)服務(wù)便利水平,設(shè)置連乘距離閾值d=1km。第一階段補(bǔ)充下車站點(diǎn)數(shù)據(jù)為769 370,占總數(shù)據(jù)量的55%,如表3 所示。
Table 3 Supplementary drop-off station of the first stage表3 第一階段補(bǔ)充下車站點(diǎn)
實(shí)驗(yàn)進(jìn)一步采用Mean Shift 算法計(jì)算乘客居住地與工作地的中心坐標(biāo),分析近2 個(gè)月的公交地鐵交易數(shù)據(jù),得出用戶的OD 坐標(biāo)信息(居住地中心和工作地中心),如表4、表5 所示。
第二階段設(shè)置閾值d2=1.5km,利用用戶的OD 坐標(biāo)信息,補(bǔ)充下車站點(diǎn)后得到的下車站點(diǎn)數(shù)據(jù)量為1 201 217,占總數(shù)據(jù)量的85%。
Table 4 User OD coordinate information 1表4 用戶OD 坐標(biāo)信息1
Table 5 User OD coordinate information 2表5 用戶OD 坐標(biāo)信息2
本文利用出行鏈的方式,分析了廣州市的公交交易數(shù)據(jù)和地鐵交易數(shù)據(jù),對(duì)于連續(xù)出行的乘客,對(duì)本次乘車站點(diǎn)所在線路的下游站點(diǎn)與下次乘車上車站點(diǎn)的距離進(jìn)行比較,取閾值內(nèi)距離最小的站點(diǎn)作為下車站點(diǎn)。采用聚類算法進(jìn)行工作地與居住地計(jì)算,使用工作地中心和居住地中心對(duì)公交交易數(shù)據(jù)作進(jìn)一步補(bǔ)充,實(shí)驗(yàn)證明該方法較為有效,準(zhǔn)確率高。另外,通過(guò)對(duì)基于Mean Shift 的公交下車站點(diǎn)判定方法的研究,有助于公交線路優(yōu)化和公交車輛調(diào)度,進(jìn)一步改善城市公交運(yùn)營(yíng)服務(wù),提升居民的公共交通出行效率。