巢小俊 上海鐵路局計劃統(tǒng)計處(同濟大學)
2012年9月28日,長三角首條采用公交化運營的市域鐵路—金山鐵路(上海市稱軌交22號線)開通,金山鐵路全長56 km,圖定每天開行旅客列車36對,采用一站直達和站站停兩種模式運行,列車運行最高時速160 km。列車全線運行時間最短32 min。金山鐵路的建成和開通運營,在沿線城區(qū)構(gòu)建了一條方便快捷的運輸通道,在完善上海市交通網(wǎng)絡、推動地方經(jīng)濟發(fā)展和進一步促進城鄉(xiāng)一體化等方面發(fā)揮了重要的作用。金山鐵路是原鐵道部和上海市共同出資建設,按鐵路控股合資公司方式運營的。按照《鐵路旅客運輸統(tǒng)計規(guī)則》相關(guān)規(guī)定,需要對該線路的運輸情況進行統(tǒng)計。
金山鐵路采用的是鐵路售票系統(tǒng)售票和上海市公共交通卡刷卡進站兩種運作方式。鐵路售票系統(tǒng)的車票信息,因為沿用原有的統(tǒng)計數(shù)據(jù)接口,產(chǎn)生的原始數(shù)據(jù)能滿足鐵路旅客運輸統(tǒng)計的要求。而上海市公共交通卡刷卡方式,因其沒有直接滿足鐵路旅客運輸統(tǒng)計要求的數(shù)據(jù)接口,需要對數(shù)據(jù)進行一定的處理以達到鐵路旅客運輸統(tǒng)計的需要。
根據(jù)《鐵路旅客運輸統(tǒng)計規(guī)則》統(tǒng)計項目和統(tǒng)計指標相關(guān)規(guī)定,需對發(fā)站、到站、旅客列車車次、旅客列車席別、旅客列車擔當企業(yè)等項目進行統(tǒng)計。
上海市公共交通卡系統(tǒng)只能按以下數(shù)據(jù)結(jié)構(gòu)提供信息:
①交易事件碼;②交通卡號;③設備節(jié)點號;④流水號;⑤刷卡日期;⑥刷卡時間;⑦卡原金額;⑧本次刷卡金額
其中,交易事件碼為2位16進制碼,是在交通卡相關(guān)設備上產(chǎn)生交易的事件的代碼,比如進站,出站扣款等。
設備節(jié)點號為8位的字符串,第1、2位為線路碼,第3、4位為車站碼,第5、6位為設備類型,第7、8位為設備碼(為16進制)。根據(jù)設備節(jié)點號前4位,可以確定交易產(chǎn)生的車站,例如在金山鐵路代表金山衛(wèi)站的代碼前四位為2229。前四位2221的代表上海南站。5、6位設備類型表示該設備承擔的作用,為16進制碼,比如1A代表進站閘機,15代表出站閘機等。
顯然,對照《鐵路旅客運輸統(tǒng)計規(guī)則》,上海市公共交通卡系統(tǒng)并不能直接提供發(fā)到站、車次、席別等鐵路旅客運輸統(tǒng)計需要的信息。
僅從數(shù)據(jù)結(jié)構(gòu)來看,經(jīng)過簡單處理還是應該能得到相關(guān)數(shù)據(jù)的,但現(xiàn)實中數(shù)據(jù)遠比理想狀態(tài)下復雜。
理想狀態(tài)下,所有旅客均正常進出站,閘機依次留下每位旅客的進出站信息,交通卡系統(tǒng)提供的信息應為一進一出成對出現(xiàn),而且按時間先后可以按先進后出配對分組。這種情況下,通過設備節(jié)點可以確定刷卡車站,通過相應的交易事件碼,可以確定是進站還是出站信息;通過交通卡號,以及刷卡日期、刷卡時間,將同一交通卡按刷卡的時間順序排序后,就可以生成相應的發(fā)到信息對;通過信息對進出閘機的時間(HHMMSS格式),只要建立詳細的車次字典,通過匹配車次在發(fā)到站停靠的時間,按一定的規(guī)則就可以匹配到相關(guān)的車次,車次的擔當也可以確定;而席別,因為該線路采用單一席別售票方式也可以解決。
然而,現(xiàn)實情況是交通卡數(shù)據(jù)每日進站數(shù)與出站數(shù)就有不小的差距,而同一交通卡,由于旅客主觀逃票、旅客進出閘機間隔太小、閘機設備偶發(fā)故障等原因,有時只有進站信息沒有出站信息,有時只有出站信息而沒有進站信息,還有些數(shù)據(jù)對的進出時間差遠遠大于正常列車的運行時間。進一步匹配后還發(fā)現(xiàn)有發(fā)到站相同的記錄。這些問題的解決,對數(shù)據(jù)處理提出了很大的挑戰(zhàn)。
如何解決以上問題,確保數(shù)據(jù)實現(xiàn)鐵路旅客運輸統(tǒng)計的要求。經(jīng)過調(diào)查、討論,提出以下設想:
在線路中心建立進出站統(tǒng)計報表用于每日進出站閘機刷卡的總量控制,結(jié)構(gòu)如表1所示。
表1 每日進出站閘機刷卡總量控制表
其中設備/車站ID對應的是設備節(jié)點號第7、8位設備碼。
總量控制具體流程如下:
(1)讀取數(shù)據(jù)文件全信息加載到原始數(shù)據(jù)表。
(2)讀取進出站統(tǒng)計報表全信息加載到控制文件數(shù)據(jù)表。
(3)按日匯總原始數(shù)據(jù)表中設備節(jié)點號第 5,6位為 15(進站)和 1A(出站)的記錄,并與控制表文件中交通卡進站和出站數(shù)量核對,數(shù)據(jù)發(fā)生不一致時報錯提示。
(4)按照流水號進行連號,每個車站的每個設備每月產(chǎn)生的數(shù)據(jù)順序號都應該是連續(xù)的,且每月首日重置。因此,從每月2日起即可與上一日數(shù)據(jù)進行連號檢查,以避免數(shù)據(jù)缺失。
(1)按乘車日期從“原始數(shù)據(jù)表”中讀取每張交通卡的交易記錄,按進(出)閘機的時分逐一匹配,并將匹配結(jié)果存放于“原始匹配表”中。一天內(nèi)同一交通卡數(shù)據(jù)一進一出成對,且按時間先后必須為先進后出的,對于這類數(shù)據(jù),認定為成功匹配的記錄 設置相應狀態(tài)碼字段例如:“00”(代碼為臨時表達,實際處理時另定義,下同);
對有進無出或者只出不進等未能配對的非正常情況數(shù)據(jù),設置相應的狀態(tài)碼。例如:
有發(fā)站沒有到站的記錄,狀態(tài)碼字段置為“11”;有到站沒有發(fā)站的記錄,狀態(tài)碼字段置為“22”;
(2)對于能匹配成對,但發(fā)站和到站相同的記錄,狀態(tài)碼字段置為“33”;
(3)通過了解,有進無出或者只出不進等未能配對的非正常情況數(shù)據(jù),在下一次進站的時候都需要到BOM窗口進行進、出站更新操作。為此在月末需要對按日匹配狀態(tài)碼為“11”和“22”的數(shù)據(jù)在全月范圍內(nèi)的BOM窗口數(shù)據(jù)進行再次匹配;
①有發(fā)站沒有到站的記錄(狀態(tài)碼為“11”),如匹配成功,則狀態(tài)碼更新為“44”,更新相關(guān)的到站信息;
②同時與之對應的有到無發(fā)站記錄(狀態(tài)碼為“22”),如匹配成功,狀態(tài)碼更新為“55”,更新相關(guān)的發(fā)站信息;
③接著檢查狀態(tài)碼為“55”的記錄發(fā)到站是否一致,如一致則修改狀態(tài)碼為“66”;
(4)異常數(shù)據(jù)的處理:
通過以上步驟的處理,仍有部分數(shù)據(jù)由于交通卡未再次在金山線各站再次使用,沒有匹配到相關(guān)的“進出站更新”數(shù)據(jù),因此必須做異常處理:
①對于有發(fā)站沒有到站的記錄(狀態(tài)碼為“11”)的按照該發(fā)站最遠的到站匹配;
②對于有到站沒有發(fā)站的記錄(狀態(tài)碼為“22”)的按照到站和票價匹配滿足到站和票價的最遠發(fā)站匹配;
(5)根據(jù)《鐵路金山線上海市公共交通使用規(guī)則》的相關(guān)規(guī)定,對于發(fā)到站相同的記錄(狀態(tài)碼為“33”和“66”的),如果進出站時間間隔小于15 min,可以認定為未發(fā)生實際運輸,則狀態(tài)碼為“33”的更新為“88”,狀態(tài)碼為“66”的更新為“99”。進出站間隔大于15 min但在1 h內(nèi)的數(shù)據(jù)以該站3元最遠往返一次生成數(shù)據(jù),超過1 h的,按最遠距離數(shù)據(jù)往返一次生成數(shù)據(jù),狀態(tài)碼設定為“77”。
(1)建立按日詳細車次??孔值?。
(2)根據(jù)對旅客出行習慣的分析,旅客在出發(fā)時在車站滯留時間相對旅客到達時在車站滯留的時間更具不規(guī)律性,因此對于數(shù)據(jù)的處理,在有到站時間情況下,以出閘機時分為準,選取列車停靠到站的時間在旅客出閘機時分之前,且離出閘機時分最近的車次進行匹配。
(3)對于有發(fā)無到的數(shù)據(jù)匹配,則以進閘時分為準,列車??砍霭l(fā)站的時間在旅客進閘機時分之后,且離進閘機時分最近的車次進行匹配。
將車次匹配完畢的有效數(shù)據(jù)(根據(jù)上述處理過程,狀態(tài)碼為“00”、“11”、“22”、“55”、“77”的為有效數(shù)據(jù))傳輸?shù)阶罱K結(jié)果表中,在月末匯總至用于報表生產(chǎn)的數(shù)據(jù)接口。
根據(jù)以上設想,用相當天數(shù)的數(shù)據(jù)進行試驗,對得到的最終結(jié)果進行了相關(guān)分析,分時段運輸量的變化曲線與金山線運行各車次的實際運輸峰谷波動的規(guī)律基本吻合。根據(jù)試驗情況,按以上設計思想優(yōu)化,組織軟件人員細化流程,建立相關(guān)字典(如金山線站名字典、按日車次停靠字典、票價字典等),編制軟件并投入正式生產(chǎn),還建立了一系列數(shù)據(jù)控制表以確保數(shù)據(jù)在鐵路旅客運輸統(tǒng)計各工序間流轉(zhuǎn)時的質(zhì)量。通過對該軟件在投入運行后半年時間的數(shù)據(jù)跟蹤分析,分時段運輸量的變化曲線基本呈穩(wěn)定狀態(tài),因此,可以認為該設計思想是成功的。