胡先全, 張孝朋
(中遠(yuǎn)海運(yùn)科技股份有限公司,上海 200135)
近年來,隨著計(jì)算機(jī)和信息技術(shù)的快速發(fā)展,云平臺(tái)得到了廣泛應(yīng)用。同時(shí),隨著我國(guó)高速公路基礎(chǔ)設(shè)施建設(shè)的不斷推進(jìn),高速公路上的車流量不斷增加,路網(wǎng)結(jié)構(gòu)日趨復(fù)雜[1]。 2019年全國(guó)取消高速公路省界收費(fèi)站之后,全國(guó)高速公路實(shí)現(xiàn)了一張網(wǎng)收費(fèi)運(yùn)營(yíng),在此情況下,出口收費(fèi)站需基于車輛實(shí)際的通行路徑準(zhǔn)確收取通行費(fèi)。長(zhǎng)期以來,如何快速、準(zhǔn)確地還原車輛通行路徑一直是高速公路運(yùn)營(yíng)人員關(guān)心的問題[2]。當(dāng)遇到存在無入口信息、丟卡、壞卡、U轉(zhuǎn)和路徑不可達(dá)等特情的車輛時(shí),出口收費(fèi)站需花費(fèi)較長(zhǎng)的時(shí)間處理這些問題,進(jìn)而無法實(shí)現(xiàn)對(duì)車輛通行路徑的快速、準(zhǔn)確還原,這不僅會(huì)導(dǎo)致司機(jī)的通行體驗(yàn)變差,而且會(huì)造成少收或漏收高速通行費(fèi)。
取消省界收費(fèi)站之后,收費(fèi)車輛稽查成了高速公路運(yùn)營(yíng)人員的一項(xiàng)重要工作,其中耗時(shí)較長(zhǎng)的環(huán)節(jié)是準(zhǔn)確還原車輛的通行路徑。特別是當(dāng)車輛在通行過程中存在屏蔽ETC(Electronic Toll Collection)標(biāo)簽、CPC(Compound Pass Card)卡通信信號(hào)或遮擋車牌號(hào)等逃費(fèi)行為時(shí),采用常規(guī)的技術(shù)手段很難實(shí)現(xiàn)對(duì)車輛通行路徑的快速、準(zhǔn)確還原,這給稽查工作的順利開展帶了很大的困擾。
鑒于此,本文基于私有云平臺(tái),設(shè)計(jì)一種能快速、準(zhǔn)確地還原車輛通行路徑的高速公路車輛路徑還原系統(tǒng),以期提高收費(fèi)車道車輛的通行效率和稽查處置效率。此外,根據(jù)實(shí)際應(yīng)用情況,闡述該系統(tǒng)的有效性。
云平臺(tái)可按服務(wù)類型的不同分為公有云、私有云和混合云等3種,結(jié)合高速公路收費(fèi)系統(tǒng)行業(yè)專用網(wǎng)絡(luò)鏈路和數(shù)據(jù)安全性要求,高速公路收費(fèi)系統(tǒng)通常采用私有云平臺(tái),該平臺(tái)位于省級(jí)或部級(jí)高速公路聯(lián)網(wǎng)中心機(jī)房,為其提供云資源服務(wù)[3]。私有云平臺(tái)負(fù)責(zé)管理服務(wù)器硬件資源,通過云物聯(lián)、云存儲(chǔ)、云計(jì)算和云安全等功能為用戶提供服務(wù)。私有云平臺(tái)的特性主要包括:
1) 硬件設(shè)備資源統(tǒng)一分配和管理、網(wǎng)絡(luò)資源整合,實(shí)現(xiàn)虛擬服務(wù)器快速搭建、配置修改和云資源運(yùn)行情況監(jiān)控等,為用戶訪問提供極大的便利性;
2) 可靠性強(qiáng),具有冗余功能,服務(wù)永不中斷,所有虛擬工作站和虛擬服務(wù)器都能在允許的時(shí)間內(nèi)實(shí)現(xiàn)零宕機(jī),出現(xiàn)問題之后能自動(dòng)恢復(fù)至可用狀態(tài);
3) 安全性強(qiáng),采用多租戶模式,物理資源共享,系統(tǒng)運(yùn)行環(huán)境與外部訪問系統(tǒng)采用網(wǎng)絡(luò)安全隔離。
系統(tǒng)總體架構(gòu)(見圖1)基于云平臺(tái)服務(wù)設(shè)計(jì),從業(yè)務(wù)層面看主要分為數(shù)據(jù)采集層、數(shù)據(jù)存儲(chǔ)層、數(shù)據(jù)分析層、數(shù)據(jù)服務(wù)層和數(shù)據(jù)安全保障層。
圖1 系統(tǒng)總體架構(gòu)
1) 數(shù)據(jù)采集:數(shù)據(jù)采集層以云平臺(tái)提供的虛擬服務(wù)器(Elastic Compute Service,ECS)為載體,提供HTTP標(biāo)準(zhǔn)協(xié)議接口,接收全網(wǎng)ETC門架和收費(fèi)車道上傳的車輛通行標(biāo)識(shí)信息,其中,ETC門架上傳的標(biāo)識(shí)信息包括ETC門架車輛交易信息和牌識(shí)信息,收費(fèi)車道上傳的信息包括車輛入口收費(fèi)站上道信息和出口收費(fèi)站下道信息。同時(shí),采用Jenkins 調(diào)度服務(wù)提供的可視化監(jiān)控頁(yè)面,保證數(shù)據(jù)接收的完整性、正確性和及時(shí)性。
2) 數(shù)據(jù)存儲(chǔ):采用云平臺(tái)關(guān)系型數(shù)據(jù)庫(kù)服務(wù)(Relational Database Service,RDS)對(duì)采集的信息進(jìn)行長(zhǎng)期穩(wěn)定存儲(chǔ);基于云數(shù)據(jù)庫(kù)HBASE(Hadoop Database)和REDIS(Remote Dictionary Server)對(duì)高并發(fā)、大數(shù)據(jù)處理的特點(diǎn),實(shí)現(xiàn)在途車輛信息快速緩存和處理,其中在REDIS數(shù)據(jù)庫(kù)中緩存路徑擬合所需的車輛標(biāo)識(shí)信息,以key-value的方式存儲(chǔ)。該業(yè)務(wù)層解決了普通數(shù)據(jù)庫(kù)連接數(shù)和I/O(Input/Output)操作方面的問題,滿足了在途車輛通行路徑實(shí)時(shí)還原的性能要求。
3) 數(shù)據(jù)分析:基于云平臺(tái)的彈性計(jì)算服務(wù)和負(fù)載均衡,結(jié)合相關(guān)數(shù)據(jù)分析算法,實(shí)時(shí)對(duì)車輛通行路徑進(jìn)行擬合還原,并對(duì)擬合還原結(jié)果進(jìn)行存儲(chǔ),為數(shù)據(jù)服務(wù)層對(duì)外提供車輛通行路徑信息請(qǐng)求做好準(zhǔn)備。
4) 數(shù)據(jù)服務(wù):數(shù)據(jù)服務(wù)層主要進(jìn)行負(fù)載均衡、數(shù)據(jù)加密、權(quán)限認(rèn)證和日志記錄等,對(duì)外提供可靠的、公共的車輛通行路徑查詢接口服務(wù),如互聯(lián)網(wǎng)域應(yīng)急收費(fèi)系統(tǒng)車輛通行路徑請(qǐng)求接口、收費(fèi)站出口車道車輛路徑請(qǐng)求接口和車輛稽查系統(tǒng)車輛路徑請(qǐng)求接口等。
5) 數(shù)據(jù)安全保障:車輛通行數(shù)據(jù)復(fù)雜、海量的特點(diǎn)給數(shù)據(jù)管理帶來了一定的困難,一旦數(shù)據(jù)被竊取或改變,整個(gè)高速公路收費(fèi)系統(tǒng)將會(huì)出現(xiàn)混亂的狀況,高速公路的正常運(yùn)行將會(huì)受到很大影響。該系統(tǒng)充分選用云平臺(tái)云盾和云監(jiān)控服務(wù),有效進(jìn)行安全性控制和流量控制,確保系統(tǒng)安全運(yùn)行。
系統(tǒng)功能組成結(jié)構(gòu)圖見圖2。
2.2.1 車輛通行標(biāo)識(shí)數(shù)據(jù)實(shí)時(shí)接收
系統(tǒng)通過提供HTTP 標(biāo)準(zhǔn)化接口,實(shí)時(shí)接收全網(wǎng)門架節(jié)點(diǎn)上傳的CPC卡或OBU(On Board Unit)標(biāo)識(shí)信息和牌識(shí)標(biāo)識(shí)信息、入口收費(fèi)站上傳的車輛入口信息及出口收費(fèi)站上傳的車輛出口信息。接收的標(biāo)識(shí)信息同時(shí)寫入歷史數(shù)據(jù)存儲(chǔ)ORACLE數(shù)據(jù)庫(kù)和在途車輛存儲(chǔ)REDIS數(shù)據(jù)庫(kù)中。
2.2.2 車輛通行標(biāo)識(shí)數(shù)據(jù)預(yù)處理
系統(tǒng)采用數(shù)據(jù)清洗機(jī)制,設(shè)置每類車輛標(biāo)識(shí)數(shù)據(jù)的合規(guī)性驗(yàn)證規(guī)則,若接收的數(shù)據(jù)不滿足合規(guī)性驗(yàn)證規(guī)則的要求,系統(tǒng)會(huì)對(duì)異常信息進(jìn)行記錄并通過可視化界面主動(dòng)通知相關(guān)維護(hù)人員,保證數(shù)據(jù)的合規(guī)性、正確性和數(shù)據(jù)傳輸?shù)募皶r(shí)性。為保證車輛路徑還原的時(shí)效性,只需將路徑還原所需的關(guān)鍵數(shù)據(jù)按相應(yīng)的結(jié)構(gòu)存入REDIS數(shù)據(jù)庫(kù)中即可。
2.2.3 正常車輛通行路徑還原
正常車輛是指出口車道上傳的車輛標(biāo)識(shí)信息中,信息完整且不存在特情的車輛。對(duì)于跨省通行的車輛,省中心路徑還原系統(tǒng)調(diào)用部中心跨省通行路徑還原接口獲取外省的通行路徑信息,省內(nèi)的通行路徑信息采用省內(nèi)門架標(biāo)識(shí)信息和出口收費(fèi)站標(biāo)識(shí)信息還原。省內(nèi)車輛通行路徑還原邏輯如下:
1) 根據(jù)車牌號(hào)、車牌顏色和CPC卡號(hào)匹配REDIS中的CPC卡或OBU標(biāo)識(shí)信息,通過入口站和入口時(shí)間對(duì)匹配出來的門架數(shù)據(jù)進(jìn)行篩選,選中本次通行的門架信息,并按門架通過的先后順序排列,獲得完整的門架標(biāo)識(shí)信息。
4) 若擬合出的路徑連續(xù)且完整,則將該路徑作為車輛通行路徑,作為車輛計(jì)費(fèi)的依據(jù)。
5) 若擬合出的路徑不完整,則根據(jù)車牌號(hào)和車牌顏色匹配REDIS數(shù)據(jù)庫(kù)中的門架牌識(shí)標(biāo)識(shí)信息,通過入口時(shí)間和出口時(shí)間范圍對(duì)匹配出來的門架牌識(shí)標(biāo)識(shí)信息進(jìn)行框選,選中本次通行的門架牌識(shí)標(biāo)識(shí)信息,并按時(shí)間順序排列,獲得完整的過站門架信息。
6) 將門架CPC卡或OBU標(biāo)識(shí)信息與門架牌識(shí)標(biāo)識(shí)信息相匹配,將重合的標(biāo)識(shí)信息作為車輛通行的基準(zhǔn)路徑,若擬合路徑與基準(zhǔn)路徑一致,則通過已知的2個(gè)標(biāo)識(shí)節(jié)點(diǎn)求最短路徑,最終得到車輛的整個(gè)通行路徑。
7) 若擬合路徑與基準(zhǔn)路徑不一致,系統(tǒng)通過大數(shù)據(jù)分析獲取誤標(biāo)率較高的標(biāo)識(shí)點(diǎn),針對(duì)此類標(biāo)識(shí)點(diǎn)設(shè)置相應(yīng)的特征模型,滿足該模型的車輛標(biāo)識(shí)點(diǎn),在路徑還原時(shí)系統(tǒng)自動(dòng)進(jìn)行過濾,保證車輛路徑還原的準(zhǔn)確性。
2.2.4 特情車輛通行路徑還原
需進(jìn)行路徑還原的特情車輛主要指存在無入口信息、無卡、壞卡、車牌不符和車型不符等問題的車輛,此類車輛的通行路徑還原邏輯如下。
1) 無入口信息、無卡和壞卡特情車輛路徑還原:根據(jù)門架牌識(shí)標(biāo)識(shí)信息、門架CPC卡或OBU標(biāo)識(shí)信息匹配出過站門架信息,按時(shí)間順序排列,根據(jù)第一個(gè)門架信息還原入口收費(fèi)站。根據(jù)還原的入口收費(fèi)站、門架信息和出入站信息,按正常車輛通行路徑擬合邏輯還原出車輛通行路徑。
2) 入出口車牌不符和車型不符特情車輛路徑還原:根據(jù)出口車道上傳的車牌信息,按正常車輛通行路徑擬合邏輯還原出車輛通行路徑。
2.2.5 車輛路徑查詢服務(wù)
系統(tǒng)提供標(biāo)準(zhǔn)的路徑請(qǐng)求HTTP標(biāo)準(zhǔn)協(xié)議接口和C++動(dòng)態(tài)庫(kù),同時(shí)支持多操作系統(tǒng)、多渠道終端在線查詢車輛通行路徑。
1) 系統(tǒng)提供支持移動(dòng)端、Windows和Linux等多平臺(tái)調(diào)用的HTTP標(biāo)準(zhǔn)協(xié)議接口和C++動(dòng)態(tài)庫(kù),有效降低各業(yè)務(wù)終端軟件系統(tǒng)的開發(fā)難度,并減少開發(fā)工作量;
2) 系統(tǒng)支持高速公路收費(fèi)內(nèi)網(wǎng)和互聯(lián)網(wǎng)終端車輛路徑在線查詢,如收費(fèi)內(nèi)網(wǎng)車道軟件在線車輛路徑查詢和互聯(lián)網(wǎng)手持應(yīng)急收費(fèi)終端在線車輛路徑查詢等。
2.2.6 多維度統(tǒng)計(jì)分析
系統(tǒng)從車輛標(biāo)識(shí)信息數(shù)量、路徑還原成功數(shù)量和失敗數(shù)量、車輛路徑還原耗時(shí)情況、車輛路徑請(qǐng)求終端數(shù)量、車輛路徑請(qǐng)求數(shù)量、車輛路徑請(qǐng)求并發(fā)性情況和系統(tǒng)運(yùn)行環(huán)境資源占用情況等多個(gè)維度對(duì)路徑還原系統(tǒng)運(yùn)行的綜合指數(shù)進(jìn)行統(tǒng)計(jì)分析,并通過可視化手段展示統(tǒng)計(jì)分析結(jié)果。
為實(shí)現(xiàn)海量車輛標(biāo)識(shí)信息快速清洗、計(jì)算和精確路徑信息還原,滿足多渠道、多終端、高并發(fā)的車輛通行路徑信息請(qǐng)求,系統(tǒng)采用REDIS數(shù)據(jù)緩存技術(shù),結(jié)合各類車輛路徑標(biāo)識(shí)信息數(shù)據(jù)結(jié)構(gòu)的特點(diǎn),實(shí)現(xiàn)車輛標(biāo)識(shí)信息高效緩存和數(shù)據(jù)計(jì)算。根據(jù)測(cè)試結(jié)果,該技術(shù)每秒可處理10萬次以上的讀寫操作,相比傳統(tǒng)的數(shù)據(jù)庫(kù)緩存技術(shù)(如MYSQL和Oracle等數(shù)據(jù)庫(kù)),能大大提高數(shù)據(jù)讀寫的速度,保證數(shù)據(jù)計(jì)算的高效性。REDIS只對(duì)作路徑擬合的關(guān)鍵數(shù)據(jù)進(jìn)行緩存,下面為各類車輛標(biāo)識(shí)信息高效緩存、計(jì)算和擬合邏輯。
3) 出口收費(fèi)站車輛標(biāo)識(shí)信息緩存。采用hash算法key-value存儲(chǔ)數(shù)據(jù)結(jié)構(gòu),實(shí)現(xiàn)出口收費(fèi)站車輛標(biāo)識(shí)數(shù)據(jù)緩存,其中:key由車牌號(hào)和車牌顏色組成;value由出口交易數(shù)據(jù)編號(hào)、CPC卡編號(hào)或OBUID編號(hào)、出口交易時(shí)間和出口收費(fèi)站編號(hào)組成。
針對(duì)已駛離出口收費(fèi)站的收費(fèi)車輛,系統(tǒng)在REDIS中保留2 h的車輛標(biāo)識(shí)信息和路徑擬合信息,在REDIS中自動(dòng)清除超出2 h的車輛標(biāo)識(shí)信息,并采用云平臺(tái)RDS存儲(chǔ)車輛路徑,供稽查、爭(zhēng)議數(shù)據(jù)處理等業(yè)務(wù)系統(tǒng)調(diào)用。
圖3 車輛通行合并路徑
根據(jù)圖3擬合的路徑信息,通過標(biāo)識(shí)信息中的上一個(gè)門架編號(hào)判斷路徑信息是否完整。若路徑信息完整,則將該路徑作為車輛通行的計(jì)費(fèi)路徑;若路徑信息不完整,但與基準(zhǔn)路徑一致,則系統(tǒng)判斷該路徑可達(dá)且不存在其他門架誤標(biāo)等特情,采用Dijkstra算法對(duì)已知的2個(gè)門架標(biāo)識(shí)節(jié)點(diǎn)進(jìn)行最短路徑擬合,算法過程如下。
1) 根據(jù)各門架標(biāo)識(shí)點(diǎn)信息,設(shè)G=(V,E)是一個(gè)帶權(quán)有向圖,每條邊E[i]的長(zhǎng)度為該門架對(duì)應(yīng)的有效收費(fèi)里程W[i],將圖中門架節(jié)點(diǎn)集合V分成2組,每個(gè)節(jié)點(diǎn)對(duì)應(yīng)1個(gè)距離值;
2) 將已計(jì)算出最短路徑的門架節(jié)點(diǎn)放入第一組,初始時(shí)將已知2個(gè)門架標(biāo)識(shí)點(diǎn)的第一個(gè)正向標(biāo)識(shí)點(diǎn)作為V0,以后每次求得V0到該節(jié)點(diǎn)的最短路徑,就將該節(jié)點(diǎn)放入第一組;
3) 將還未確定最短路徑的節(jié)點(diǎn)放入第二組,節(jié)點(diǎn)對(duì)應(yīng)的距離值為V0經(jīng)由第一組節(jié)點(diǎn)到該節(jié)點(diǎn)的最短路徑長(zhǎng)度;
4) 按最短路徑長(zhǎng)度遞增的順序?qū)⒌诙M的節(jié)點(diǎn)加到第一組中,直至V0可達(dá)的所有節(jié)點(diǎn)都包含于第一組中;
5) 計(jì)算結(jié)束時(shí)的節(jié)點(diǎn)為已知2個(gè)門架標(biāo)識(shí)點(diǎn)的末端節(jié)點(diǎn);
6) 在計(jì)算過程中,保持從源點(diǎn)V0到第一組節(jié)點(diǎn)的最短路徑長(zhǎng)度不大于從源點(diǎn)V0到第二組任意節(jié)點(diǎn)的路徑長(zhǎng)度。
圖4 最短路徑計(jì)算示意
通過有效利用Dijkstra算法的特性,保證了未識(shí)別標(biāo)識(shí)路徑擬合的正確性和時(shí)效性。
針對(duì)路網(wǎng)中部分復(fù)雜路段門架誤標(biāo)概率較高的情況,系統(tǒng)通過創(chuàng)建數(shù)據(jù)模型并設(shè)置特征值解決此類問題,保證此類車輛的路徑能正常擬合還原。當(dāng)CPC卡或OBU門架標(biāo)識(shí)信息符合特征值時(shí),系統(tǒng)自動(dòng)過濾掉錯(cuò)誤門架標(biāo)識(shí)點(diǎn)。創(chuàng)建的數(shù)據(jù)模型內(nèi)容如下:
1) 擬合之后的路徑出現(xiàn)連續(xù)3個(gè)門架過站信息丟失的情況;
2) 擬合之后的路徑與基準(zhǔn)路徑相比,收費(fèi)金額相差較大(例如收費(fèi)金額增加了100%,具體參數(shù)可動(dòng)態(tài)配置)。
圖5為京藏高速海東主線至曹家堡互通路段經(jīng)常發(fā)生誤標(biāo)的區(qū)域,由于0386門架距離分叉口太近,經(jīng)常對(duì)京藏高速上正常行駛車輛的OBU或OPC卡進(jìn)行誤標(biāo)并產(chǎn)生門架標(biāo)識(shí)信息,導(dǎo)致車輛路徑還原錯(cuò)誤。因此,可將 00D4、0386和00CA序列作為特征值,當(dāng)門架標(biāo)識(shí)信息序列存在00D4、0386和00CA 時(shí),可認(rèn)定 0386為誤標(biāo)門架標(biāo)識(shí)點(diǎn),系統(tǒng)自動(dòng)將其剔除,保證車輛通行路徑的快速、準(zhǔn)確還原。
圖5 京藏高速海東主線至曹家堡互通路段經(jīng)常發(fā)生誤標(biāo)的區(qū)域
由于路網(wǎng)情況會(huì)隨著高速公路的建設(shè)不斷發(fā)生變化,特征值也會(huì)隨之發(fā)生變化,因此需長(zhǎng)期維護(hù)全網(wǎng)高速門架標(biāo)識(shí)特征值參數(shù)。
系統(tǒng)在青海和寧夏的高速公路上應(yīng)用以來,運(yùn)行穩(wěn)定可靠,路徑還原精準(zhǔn)、快速,滿足高速公路收費(fèi)車道、移動(dòng)應(yīng)急收費(fèi)終端和車輛稽查系統(tǒng)等多渠道終端對(duì)車輛通行路徑準(zhǔn)確、快速查詢的需求。系統(tǒng)實(shí)現(xiàn)了以下應(yīng)用目標(biāo):
1) 提供多渠道、多維度的在線車輛路徑查詢接口,包括收費(fèi)內(nèi)網(wǎng)收費(fèi)車道調(diào)用、收費(fèi)內(nèi)網(wǎng)稽查系統(tǒng)調(diào)用和互聯(lián)網(wǎng)應(yīng)急收費(fèi)終端調(diào)用;
2) 基于云平臺(tái)負(fù)載均衡架構(gòu),能同時(shí)處理10 000個(gè)終端用戶的并發(fā)請(qǐng)求;
3) 系統(tǒng)提供標(biāo)準(zhǔn)的、跨平臺(tái)的路徑請(qǐng)求C++動(dòng)態(tài)庫(kù),支持移動(dòng)端、Windows和Linux等多平臺(tái)調(diào)用,能有效降低各業(yè)務(wù)終端系統(tǒng)軟件的開發(fā)難度和開發(fā)工作量;
4) 車輛路徑還原的時(shí)效性較強(qiáng),滿足收費(fèi)車道、應(yīng)急收費(fèi)設(shè)備等其他業(yè)務(wù)系統(tǒng)在線路徑查詢的時(shí)效性需求;
5) 基于私有云平臺(tái)安全管控,對(duì)外提供的路徑請(qǐng)求在線接口可查、可控,通過訪問策略控制,避免相關(guān)路徑請(qǐng)求終端惡意訪問或攻擊,保證系統(tǒng)穩(wěn)定運(yùn)行;
6) 系統(tǒng)運(yùn)行環(huán)境采用云平臺(tái)虛擬資源池實(shí)現(xiàn),可通過云平臺(tái)自帶的可視化資源監(jiān)管功能實(shí)現(xiàn)系統(tǒng)運(yùn)行健康狀態(tài)綜合評(píng)估。
青海高速車輛通行路徑還原展示界面見圖6。
圖6 青海高速車輛通行路徑還原展示界面
本文設(shè)計(jì)的基于云平臺(tái)的高速公路路徑還原系統(tǒng)能解決車輛通行路徑還原效率低、準(zhǔn)確性不強(qiáng)的問題,有效提升收費(fèi)車道車輛通行效率和車輛稽查效率等。下一步,將結(jié)合機(jī)器學(xué)習(xí)和人工智能技術(shù)對(duì)全網(wǎng)車輛通行數(shù)據(jù)進(jìn)行挖掘及預(yù)測(cè)研究,為車輛通行監(jiān)管、旅游景區(qū)車輛誘導(dǎo)和高速公路差異化收費(fèi)等提供參考。