本發(fā)明涉及一種智能交通管理技術(shù),特別涉及一種基于站點(diǎn)及共線運(yùn)行的公交乘客出行路徑選擇方法。
背景技術(shù):
公共汽車交通出行是一種綠色高效的出行方式,但由于城市公交線路走向和站點(diǎn)分布的復(fù)雜性,如何快速尋找最為便捷快速的從出發(fā)地到目的地的公交出行方案,成為城市居民和外地旅客關(guān)注的問題。因此,有必要采取合適的方法為公交乘客選擇合理的乘車線路和換乘站點(diǎn),以提高公交出行效率。
經(jīng)對現(xiàn)有技術(shù)的文獻(xiàn)檢索發(fā)現(xiàn),有關(guān)公交乘客出行路徑選擇的方法主要有以下幾種:
(1)傳統(tǒng)小汽車交通出行最短路徑算法。這類算法是研究路網(wǎng)中兩點(diǎn)間阻抗最小的路徑,針對小汽車交通,有包括dijkstra算法、floyd-warshall算法等較為成熟的算法。我國的發(fā)明專利“基于骨干路網(wǎng)分層的多路徑選擇方法”、“多任務(wù)導(dǎo)航中最優(yōu)路徑選擇方法”和“一種急救車后送路徑選擇方法”又分別從考慮駕駛員對出行路徑的判斷、考慮多個(gè)任務(wù)點(diǎn)以及考慮緊急救援等交通,提出了一系列新的路徑選擇方法。
(2)基于圖論的公交出行最短路徑選擇算法。這類算法將公交系統(tǒng)抽象建模成一個(gè)以公交站點(diǎn)為節(jié)點(diǎn)、以公交線路為連線的圖,然后應(yīng)用經(jīng)典的最短路徑算法求公交出行的最短路徑,最后將這條最短路徑轉(zhuǎn)換成公交出行換乘方案。例如anez在《dualgraphrepresentationoftransportnetworks》中提出的二重圖公交網(wǎng)絡(luò)模型以及蘇愛華在《公交網(wǎng)絡(luò)換乘問題的一種實(shí)現(xiàn)》中提出的公共交通網(wǎng)絡(luò)模型。
(3)考慮換乘次數(shù)、換乘等待時(shí)間等因素的公交出行路徑選擇算法。公交出行選擇受多種因素的影響,除了采用出行時(shí)長反映出行效率外,可采用換乘次數(shù)體現(xiàn)便利性。例如nicholas在《adatamodelformulti-dimensionaltransportationapplications》中提出了公交網(wǎng)絡(luò)靜態(tài)多路徑優(yōu)選算法,其中以換乘次數(shù)最少為第一目標(biāo),出行距離最短為第二目標(biāo)。趙巧霞在《以最小換乘次數(shù)和站數(shù)為目標(biāo)的公交出行算法》建立了以換乘次數(shù)最少為主要目標(biāo),途徑站數(shù)最小為次要目標(biāo)的最優(yōu)路徑出行模型。
第一種方法雖然較為成熟,但公交線網(wǎng)較道路網(wǎng)更為復(fù)雜,線路即使相交也未必有換乘站點(diǎn),因此傳統(tǒng)小汽車交通出行最短路徑算法一般難以直接應(yīng)用于公交出行路徑選擇。為此,第二種方法充分考慮了公交線網(wǎng)以站點(diǎn)為轉(zhuǎn)換節(jié)點(diǎn)的特點(diǎn),建立了相應(yīng)網(wǎng)絡(luò)圖,但由于忽略了換乘次數(shù)這一因素,導(dǎo)致優(yōu)化結(jié)果可能出現(xiàn)換乘次數(shù)過多的情況,與實(shí)際乘客出行需考慮換乘、票價(jià)等綜合因素的實(shí)際情況不符。因此,在第三種方法中,增加了乘客對于最優(yōu)路徑的綜合因素考慮。但現(xiàn)有方法均是以搜索最優(yōu)的單個(gè)公交線路及換乘出行鏈為目標(biāo),將不同的公交線路作為不同的公交出行路徑方案進(jìn)行比選,忽略了公交共線運(yùn)行這一常見特征。而實(shí)際乘客出行往往并不特別在意公交線路,尤其是兩站點(diǎn)間存在多條公交線路時(shí),往往會(huì)選擇最先到達(dá)的線路。因此,有必要改進(jìn)以往算法中將不同公交線路完全作為競爭關(guān)系的處理方法,考慮共線運(yùn)行時(shí)不同公交線路的合作關(guān)系,從而給乘客提供更為合理、全面的公交出行路徑。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明是針對公交乘客出行路徑選擇以往未考慮公交共線運(yùn)行,造成公交線路選擇不合理的問題,提出了一種基于站點(diǎn)及共線運(yùn)行的公交乘客出行路徑選擇方法,通過搜尋合理的換乘站點(diǎn)并將途經(jīng)站點(diǎn)間的所有共線公交線路作為乘客可乘坐的線路,提高了出行路徑選擇的合理性以及出行時(shí)間估算的準(zhǔn)確性。
本發(fā)明的技術(shù)方案為:一種基于站點(diǎn)及共線運(yùn)行的公交乘客出行路徑選擇方法,具體包括如下步驟:
1)、初始化起訖點(diǎn)o、d,換乘次數(shù)n=0;
2)、確定途經(jīng)起點(diǎn)o的線路集合r0和途經(jīng)終點(diǎn)d的線路集合rd,r0=r0;
3)、搜尋直達(dá)線路集r0,d,若
4)、確定換乘次數(shù)和潛在換乘站點(diǎn);
5)、記錄總換乘次數(shù)m=n;
6)、回溯整個(gè)換乘過程,確定可行換乘站點(diǎn);
7)、確定可行的公交出行路徑,由起始站點(diǎn)o,各層可行換乘站in的組合,以及終點(diǎn)d構(gòu)成,in為第n層可行換乘站點(diǎn),hpn為第n層可行換乘站點(diǎn)集合,in∈hpn;
8)、確定各條可行公交出行路徑的出行時(shí)長,由各站點(diǎn)的候車時(shí)間和站點(diǎn)間行程時(shí)間組成;
9)、取各條可行公交出行路徑中出行時(shí)長最小的路徑為推薦路徑,輸出結(jié)果包括各途經(jīng)站點(diǎn)以及可乘坐的公交線路。
所述步驟4)確定換乘次數(shù)和潛在換乘站點(diǎn)的具體步驟包括:
4-1)、換乘次數(shù)加1,n=n+1,進(jìn)入步驟4-2);
4-2)、確定第n層潛在換乘站點(diǎn)集合hn,如下式所示,進(jìn)入步驟4-3)
hj表示公交線路j沿線的站點(diǎn)集合,h表示公交站點(diǎn)集合,
4-3)、確定途經(jīng)第n層潛在換乘站點(diǎn)所有線路的集合rn,如下式所示,進(jìn)入步驟4-4),
ri表示途經(jīng)公交站點(diǎn)i的線路集合,
步驟4-4)、搜尋從第n層潛在換乘站點(diǎn)rn至終點(diǎn)的線路集rd,若
所述步驟6)回溯整個(gè)換乘過程,確定可行換乘站點(diǎn),具體步驟包括:
6-1)、確定第n層可行換乘站點(diǎn)集合hpn,如下式所示,進(jìn)入步驟6-2);
6-2)、進(jìn)入前1層,n=n-1;若n≥1,返回步驟6-1),否則進(jìn)入步驟7)。
所述步驟8)確定各條可行公交出行路徑的出行時(shí)長,由各站點(diǎn)的候車時(shí)間和站點(diǎn)間行程時(shí)間組成,具體步驟包括:
8-1)、計(jì)算路徑k第n層站點(diǎn)至第n+1層站點(diǎn)的公交線路集合,如下式所示,
8-2)、計(jì)算路徑k第n層站點(diǎn)的候車時(shí)間期望值
8-3)、計(jì)算路徑k第n層站點(diǎn)至第n+1層站點(diǎn)的行程時(shí)間期望值
8-4)、計(jì)算路徑k第n層站點(diǎn)至第n+1層站點(diǎn)的出行時(shí)長tkn,如下式所示,
8-5)、將各站點(diǎn)間出行時(shí)長累加,得到各條可行路徑的出行時(shí)長,如下式所示,
本發(fā)明的有益效果在于:本發(fā)明基于站點(diǎn)及共線運(yùn)行的公交乘客出行路徑選擇方法,在計(jì)算候車時(shí)間中考慮了公交站點(diǎn)間所有共線線路的發(fā)車間隔,即乘客可選擇所有共線線路中最先到達(dá)的線路,有別于以往算法中僅單一線路的發(fā)車間隔,提高了站點(diǎn)候車時(shí)間計(jì)算的準(zhǔn)確性;在計(jì)算站點(diǎn)間行程時(shí)間時(shí),考慮了所有共線線路的行程時(shí)間的加權(quán)平均值,有別于以往算法中僅單一線路的行程時(shí)間,提高了行程時(shí)間計(jì)算的準(zhǔn)確性;所給出的推薦路徑包括各途經(jīng)站點(diǎn)以及站點(diǎn)間可乘坐的公交線路,有別于以往僅給出單一公交線路及換乘出行鏈,推薦路徑更具合理性。
附圖說明
圖1為本發(fā)明基于站點(diǎn)及共線運(yùn)行的公交乘客出行路徑選擇方法基本構(gòu)思圖;圖2為本發(fā)明公交乘客出行路徑選擇方法所得出的出行路徑方案示意圖;
圖3為本發(fā)明實(shí)施案例百度地圖推薦路徑1;
圖4為本發(fā)明實(shí)施案例百度地圖推薦路徑2。
具體實(shí)施方式
一種基于站點(diǎn)及共線運(yùn)行的公交乘客出行路徑選擇方法,該方法包括以下內(nèi)容:
(1)總體構(gòu)思:
本算法將以換乘站點(diǎn)選擇為基礎(chǔ),將兩站點(diǎn)間的線路作為合作關(guān)系,從而最終公交出行路徑方案由最優(yōu)換乘站點(diǎn)及換乘站點(diǎn)間可選擇線路集構(gòu)成。如附圖1所示,按以往將不同公交線路完全作為競爭關(guān)系進(jìn)行處理的方式,由起點(diǎn)a至終點(diǎn)f備選的公交出行方案包括:1、r1線換乘r3線,換乘點(diǎn)為c或d或e;2、r1線換乘r4線,換乘點(diǎn)為e;3、r2線換乘r3線,換乘點(diǎn)為d或e;4、r2線換乘r4線,換乘點(diǎn)為e。而按本模型推薦的出行方案應(yīng)當(dāng)是在a站乘坐r1或r2線路,然后在e站換乘r3或r4線路。為此,本算法將以換乘站點(diǎn)選擇為基礎(chǔ),將兩站點(diǎn)間的線路作為合作關(guān)系,從而最終公交出行路徑方案由最優(yōu)換乘站點(diǎn)及換乘站點(diǎn)間可選擇線路集構(gòu)成,如附圖2所示。由于在公交站點(diǎn)有多條線路可供選擇,大大減少了乘客候車時(shí)間,提高了公交出行的便利性和效率。
(2)優(yōu)化選擇目標(biāo):
為了兼顧公交出行的便利和高效,本研究以換乘次數(shù)最少為首要優(yōu)化目標(biāo),出行時(shí)間最小為次要優(yōu)化目標(biāo),即首先選擇換乘次數(shù)最少的路徑集,在相同的換乘次數(shù)下選擇出行時(shí)間最短的路徑。
(3)網(wǎng)絡(luò)描述:
其中,站點(diǎn)層面:h表示公交站點(diǎn)集合;i表示公交站點(diǎn),i∈h;hj表示公交線路j沿線的站點(diǎn)集合,
公交線路層面:r表示公交線路集合;j表示公交線路,j∈r;ri表示途經(jīng)公交站點(diǎn)i的線路集合,
(4)算法步驟:
step1:初始化起訖點(diǎn)o、d,換乘次數(shù)n=0,進(jìn)入step2。
step2:確定途經(jīng)起點(diǎn)o的線路集合r0和途經(jīng)終點(diǎn)d的線路集合rd,r0=r0,進(jìn)入step3。
step3:搜尋直達(dá)線路集r0,d,若
step4:確定換乘次數(shù)和潛在換乘站點(diǎn),具體步驟包括:
step4-1:換乘次數(shù)加1,n=n+1,進(jìn)入step4-2。
step4-2:確定第n層潛在換乘站點(diǎn)集合hn,如式(1)所示,進(jìn)入step4-3。
rn-1表示第n-1層潛在換乘站點(diǎn)所有線路的集合。
step4-3:確定途經(jīng)第n層潛在換乘站點(diǎn)所有線路的集合rn,如式(2)所示,進(jìn)入step4-4。
step4-4:搜尋從第n層潛在換乘站點(diǎn)至終點(diǎn)的線路集,若
step5:記錄總換乘次數(shù)m=n,進(jìn)入step6。
step6:回溯整個(gè)換乘過程,確定可行換乘站點(diǎn),具體步驟包括:
step6-1:確定第n層可行換乘站點(diǎn)集合hpn,如式(3)所示,進(jìn)入step6-2。
step6-2:進(jìn)入前1層,n=n-1;若n≥1,返回step6-1,否則進(jìn)入step7。
step7:確定可行的公交出行路徑,由起始站點(diǎn)o,各層可行換乘站in的組合,以及終點(diǎn)d構(gòu)成,in為第n層可行換乘站點(diǎn),in∈hpn,進(jìn)入step8。
step8:確定各條可行公交出行路徑的出行時(shí)長,由各站點(diǎn)的候車時(shí)間和站點(diǎn)間行程時(shí)間組成,具體步驟包括:
step8-1:計(jì)算路徑k第n層站點(diǎn)至第n+1層站點(diǎn)的公交線路集合,如式(4)所示,進(jìn)入step8-2。
step8-2:計(jì)算路徑k第n層站點(diǎn)的候車時(shí)間期望值
step8-3:計(jì)算路徑k第n層站點(diǎn)至第n+1層站點(diǎn)的行程時(shí)間期望值
step8-4:計(jì)算路徑k第n層站點(diǎn)至第n+1層站點(diǎn)的出行時(shí)長tkn,如式(7)所示,進(jìn)入step8-5。
step8-5:將各站點(diǎn)間出行時(shí)長累加,得到各條可行路徑的出行時(shí)長,如式(8)所示,進(jìn)入step9。
step9:取各條可行公交出行路徑中出行時(shí)長最小的路徑為推薦路徑,輸出結(jié)果包括各途經(jīng)站點(diǎn)以及可乘坐的公交線路,如附圖2所示。
實(shí)施案例為上海理工大學(xué)軍工路南校區(qū)至源深體育中心6號(hào)門公交出行。根據(jù)本發(fā)明的算法步驟,結(jié)果為:
step1:初始化起點(diǎn)為上海理工大學(xué)軍工路南校區(qū),訖點(diǎn)源深體育中心6號(hào)門,換乘次數(shù)n=0,進(jìn)入step2。
step2:確定途經(jīng)起點(diǎn)的線路集合r0=r0={59,103,124,874,1238},途經(jīng)終點(diǎn)的線路集合rd={130,181,609,775,785,隧道三線},進(jìn)入step3。
step3:搜尋直達(dá)線路集,由于
step4:確定換乘次數(shù)和潛在換乘站點(diǎn)。通過搜尋經(jīng)過起點(diǎn)公交線路途徑的全部公交站點(diǎn),再得到途經(jīng)這些換乘站點(diǎn)所有線路的集合,并與途徑終點(diǎn)的公交線路比對,發(fā)現(xiàn)存在共同線路r0∩rd={130,609,775,785,隧道三線},進(jìn)入step5。
step5:記錄總換乘次數(shù)m=1,即起訖點(diǎn)間可通過一次換乘到達(dá),進(jìn)入step6。
step6:回溯整個(gè)換乘過程,確定可行換乘站點(diǎn),包括hp1={羽山路南洋涇路,靈山路民生路,博山路龍居路,崮山路張楊路,崮山路羽山路,博山東路羅山路},進(jìn)入step7。
step7:確定可行的公交出行路徑,如表1所示出行路徑方案,進(jìn)入step8。表1
step8:確定各條可行公交出行路徑的出行時(shí)長,由各站點(diǎn)的候車時(shí)間和站點(diǎn)間行程時(shí)間組成,如表2所示出行路徑出行時(shí)長,進(jìn)入step9。
表2
step9:取各條可行公交出行路徑中出行時(shí)長最小的路徑為推薦路徑,即路徑一,輸出結(jié)果包括各途經(jīng)站點(diǎn)以及可乘坐的公交線路:從軍工路周家嘴路站乘坐59路至羽山路南洋涇路下車,換乘785路或隧道三線或130路或609路或775路至羽山路源深路下車。
作為比較,將起訖點(diǎn)輸入百度地圖,輸出的第1和第2推薦路徑分別如圖3和圖4所示。對比發(fā)現(xiàn)本文優(yōu)化方案與百度地圖推薦方案1所選擇的換乘站點(diǎn)相同,但本文優(yōu)化方案對于換乘線路有5條線路供乘客選擇,而百度地圖中僅有2條。進(jìn)一步對比發(fā)現(xiàn),百度地圖在推薦方案1中缺失的線路中,有2條出現(xiàn)在推薦方案2,但換乘站點(diǎn)卻發(fā)生了變化。因此,本文優(yōu)化方案的總出行時(shí)間更短,較百度地圖推薦方案1和2分別減少22.1%和24.7%,并且乘客實(shí)際乘坐時(shí)可在羽山路南洋涇路(換乘站)選擇785路、隧道三線、130路、609路、775路中最先到達(dá)的線路,優(yōu)化方案更具合理性。