孫默川 張昊 范瑞麟 李智斌
摘要:公交擁擠度預(yù)測(cè)是城市公交智能優(yōu)化的重要部分。城市公交客流分布具有一定的不均勻性,做好擁擠度預(yù)測(cè)可以有效改變這一現(xiàn)狀,從而給乘客更舒適的乘車體驗(yàn)。本文通過研究bp神經(jīng)網(wǎng)絡(luò),改進(jìn)相應(yīng)的學(xué)習(xí)算法,建立不同的擁擠度預(yù)測(cè)模型,使用在吉林省吉林市調(diào)研的客流數(shù)據(jù)進(jìn)行訓(xùn)練與檢驗(yàn),保證了實(shí)際客觀性和較高的預(yù)測(cè)精度。
關(guān)鍵詞:擁擠度預(yù)測(cè);bp神經(jīng)網(wǎng)絡(luò);預(yù)測(cè)模型;智能優(yōu)化
引言
隨著我國(guó)機(jī)動(dòng)車保有量的日益增長(zhǎng),現(xiàn)有道路條件不適應(yīng)交通需求的矛盾日益尖銳,造成了交通擁擠、秩序混亂、事故頻發(fā)和污染加劇等嚴(yán)重問題。優(yōu)先發(fā)展公共交通已經(jīng)被世界各國(guó)公認(rèn)為是解決大、中城市交通問題的最佳策略,是城市可持續(xù)發(fā)展的必由之路。實(shí)現(xiàn)高效的公交運(yùn)營(yíng)系統(tǒng)需要多方面的努力,提高公交線路的運(yùn)營(yíng)管理水平是其關(guān)鍵之一,而公交線路客流預(yù)測(cè)是實(shí)現(xiàn)公交運(yùn)營(yíng)調(diào)度優(yōu)化的基礎(chǔ)。另外,在客運(yùn)高峰時(shí)段,公交系統(tǒng)面臨著客流量過大、車內(nèi)人流密度過高、車輛利用不合理等問題,在擁擠度方面乘客的需求得不到滿足??傊?,不管是為了提高公交運(yùn)營(yíng)調(diào)度水平還是為了優(yōu)化乘客的出行體驗(yàn),公交客流的擁擠度預(yù)測(cè)已經(jīng)迫在眉睫。本文利用實(shí)時(shí)調(diào)研所得的公交客流數(shù)據(jù)基于bp神經(jīng)網(wǎng)絡(luò)進(jìn)行了短時(shí)的公交擁擠度預(yù)測(cè)。
本文通過對(duì)公交線路站點(diǎn)上下車人數(shù)主要相關(guān)影響因素的分析,基于公交車歷史車流數(shù)據(jù)利用人工神經(jīng)網(wǎng)絡(luò)的基本原理,根據(jù)改進(jìn)的BP學(xué)習(xí)算法,建立了公交車內(nèi)擁擠度預(yù)測(cè)模型。
1 公交擁擠度預(yù)測(cè)研究意義
在客運(yùn)高峰時(shí)段,公交系統(tǒng)面臨著客流量過大、車內(nèi)人流密度過高、車輛利用不合理等問題,具有一定的安全隱患[1]。而即使避開了客運(yùn)高峰,每輛公交的擁擠程度也無法滿足乘客的各種需求。擁擠度在很大程度上影響人們的出行方式[2,3]。
我們針對(duì)市民對(duì)公交車擁擠度的相關(guān)看法進(jìn)行了問卷調(diào)查,在數(shù)據(jù)獲取后對(duì)問卷進(jìn)行了篩選,剔除了所有選擇單一選項(xiàng)、選擇具有明顯規(guī)律性、反向表述(與正向表述的選擇具有明顯矛盾)、網(wǎng)絡(luò)問卷答題時(shí)間明顯不符合正常答題所需時(shí)間等有問題的問卷,得到了相對(duì)精準(zhǔn)的用戶公交出行體驗(yàn)。其中多數(shù)乘客對(duì)現(xiàn)有的公交車運(yùn)營(yíng)調(diào)度手段不滿意,表示深受無座、擁擠等公交常見問題的困擾。近80%的居民表示在時(shí)間充裕的情況下愿意等待下一輛公交車,不愿意等車的人只占少數(shù)。居民的出行選擇與其職業(yè)年齡密切相關(guān),不愿意等公交的幾乎均為中年上班族,而青年與老年乘客則更趨向于選擇舒適度更高的出行體驗(yàn)。在居民意愿的基礎(chǔ)上,我們確定了本項(xiàng)目的切實(shí)需求,在基于歷史數(shù)據(jù)的擁擠度預(yù)測(cè)基礎(chǔ)上,根據(jù)當(dāng)前站點(diǎn)車內(nèi)人數(shù)對(duì)比數(shù)據(jù)庫(kù)中歷史數(shù)據(jù),預(yù)測(cè)后面站點(diǎn)的擁擠度。本文面向市民可以方便其更好得做出行選擇,面向公交公司可以幫助其進(jìn)行相關(guān)運(yùn)營(yíng)調(diào)度,根據(jù)某站預(yù)測(cè)擁擠度增減車輛,滿足居民的出行需要。
2 客流數(shù)據(jù)的處理分析與神經(jīng)網(wǎng)絡(luò)的選取
本文采用的是吉林市56號(hào)公交線路2018年6月的公交客流數(shù)據(jù)作為樣本數(shù)據(jù),其中工作日的數(shù)據(jù)有22天,周末的數(shù)據(jù)有8天,本文僅對(duì)于正常工作日的客流數(shù)據(jù)進(jìn)行預(yù)測(cè)。我們選取連續(xù)工作日同一時(shí)段的客流數(shù)據(jù)進(jìn)行處理,將篩選出的異常數(shù)據(jù)前后相鄰數(shù)據(jù)取幾何平均內(nèi)置作為估計(jì)值繼而代替異常值作樣本使用,之后進(jìn)行歸一化處理。處理好后,建立了BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型。
2.1 客流數(shù)據(jù)的處理分析
公交車經(jīng)常出現(xiàn)在某一站點(diǎn)不上下客的情況,我們采取等差并采用等差變換加等比變換的方法,即對(duì)樣本對(duì)的輸入輸出值先加一常數(shù),再除以一常數(shù),使BP網(wǎng)絡(luò)的輸入輸出值限制在區(qū)間(0,1)之間,然后輸入網(wǎng)絡(luò)進(jìn)行計(jì)算。受人工統(tǒng)計(jì)的影響,樣本中有明顯不符合常理的數(shù)據(jù),我們采用替代法處理異常值,即將異常數(shù)據(jù)前后相鄰數(shù)據(jù)取幾何平均內(nèi)置作為估計(jì)值繼而代替異常值作樣本使用,避免了數(shù)據(jù)樣本的減少。
為了減少數(shù)據(jù)之間的數(shù)量級(jí),防止由于數(shù)量級(jí)差別過大而引起誤差,神經(jīng)網(wǎng)絡(luò)輸入的數(shù)據(jù)要?dú)w一化在一定范圍內(nèi)。通常采用最大最小化的方法將數(shù)據(jù)統(tǒng)一在(0,1)之間,該方法的公式是: ,式中Xi是當(dāng)前輸入數(shù)據(jù),Xmin是所有輸入數(shù)據(jù)中的最小值,Xmax是所有輸入數(shù)據(jù)中的最大值。
2.2 神經(jīng)網(wǎng)絡(luò)的選取
BP神經(jīng)網(wǎng)絡(luò)相比于其他神經(jīng)網(wǎng)絡(luò),具有網(wǎng)絡(luò)精度高、逼近效果好、計(jì)算速度快等優(yōu)點(diǎn),有很強(qiáng)的非線性擬合能力,適用于復(fù)雜性較高的預(yù)測(cè)系統(tǒng),能夠?qū)?quán)值進(jìn)行動(dòng)態(tài)調(diào)整。我們進(jìn)行了BP神經(jīng)網(wǎng)絡(luò)與ELM神經(jīng)網(wǎng)絡(luò)的對(duì)比實(shí)驗(yàn),結(jié)果顯示BP神經(jīng)網(wǎng)絡(luò)更符合我們的數(shù)據(jù)特點(diǎn),預(yù)測(cè)結(jié)果的相對(duì)誤差比較小。網(wǎng)絡(luò)模型的建立需要確定很多因素,包括隱含層層數(shù)、隱含層神經(jīng)元個(gè)數(shù)、學(xué)習(xí)速率、學(xué)習(xí)次數(shù)、網(wǎng)絡(luò)參數(shù)等。網(wǎng)絡(luò)的訓(xùn)練過程是一個(gè)不斷修正權(quán)值和閾值的過程。通過調(diào)整,使網(wǎng)絡(luò)的輸出誤差達(dá)到最小,滿足我們的預(yù)測(cè)要求。
1)確定隱含層層數(shù)
BP神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)和性能受隱含層的層數(shù)影響。單隱含層網(wǎng)絡(luò)非線性映射能力較弱,為了達(dá)到預(yù)定映射關(guān)系,隱含層節(jié)點(diǎn)要多一些,使網(wǎng)絡(luò)的可調(diào)參數(shù)增加。我們通過構(gòu)造法得到三種隱含層數(shù),然后逐個(gè)驗(yàn)證模型預(yù)測(cè)誤差,選取誤差最小的那個(gè)。
2)確定隱含層的神經(jīng)元個(gè)數(shù)
確定隱含層的層數(shù)后,就需要確定該層神經(jīng)元的個(gè)數(shù),神經(jīng)元個(gè)數(shù)太多的話會(huì)花費(fèi)大量訓(xùn)練時(shí)間,容易形成“過擬合”現(xiàn)象;個(gè)數(shù)太少的話不能準(zhǔn)確完整地傳遞信息。本文采用輸入層節(jié)點(diǎn)數(shù)和輸出層節(jié)點(diǎn)數(shù)之積開平方的方法,不斷實(shí)驗(yàn),找出誤差最小的那一種。
3)確定初始權(quán)值和閾值
由于網(wǎng)絡(luò)的訓(xùn)練過程就是一個(gè)不斷調(diào)整權(quán)值的過程,因此訓(xùn)練時(shí)間會(huì)受到四個(gè)因素的影響,分別是輸入層到隱含層的權(quán)值、隱含層到輸出層的權(quán)值、隱含層神經(jīng)元的閾值和輸出層神經(jīng)元的閾值。由于激勵(lì)函數(shù)的中點(diǎn)是零,所以當(dāng)神經(jīng)元的初始權(quán)值和閾值足夠小接近零的時(shí)候,能夠快速地收斂并獲得最小誤差。因此將初始參數(shù)調(diào)整為-1到1之間的隨機(jī)數(shù)是普遍采用的做法。
3 數(shù)據(jù)的訓(xùn)練
在選擇網(wǎng)絡(luò)的輸入和輸出數(shù)據(jù)時(shí),由于暫時(shí)無法獲得充足的數(shù)據(jù),不能使用相鄰周及相鄰月的數(shù)據(jù),由于六月的天氣持續(xù)晴朗,天氣信息不納入輸入變量的考慮范圍。我們選取一個(gè)月前29天早上8點(diǎn)的數(shù)據(jù)作為訓(xùn)練集,預(yù)測(cè)第30天早上8點(diǎn)全程的車內(nèi)人數(shù),并把最后一個(gè)工作日數(shù)據(jù)作為測(cè)試數(shù)據(jù),來驗(yàn)證模型的可用性。
基于三層神經(jīng)網(wǎng)絡(luò)可逼近任何非線性函數(shù)的理論,本文選用了三層網(wǎng)絡(luò)結(jié)構(gòu)。根據(jù)輸入變量和輸出變量的個(gè)數(shù),確定網(wǎng)絡(luò)輸入層包含6個(gè)神經(jīng)元,輸出層包含1個(gè)神經(jīng)元。我們?cè)谂袛嚯[含層包含多少個(gè)神經(jīng)元的過程中,采用了試算法,當(dāng)神經(jīng)元的數(shù)目為12時(shí),網(wǎng)絡(luò)的預(yù)測(cè)誤差最小,因此把12作為最終數(shù)目。設(shè)定隱含層的傳遞函數(shù)為tansig,設(shè)定輸出層的傳遞函數(shù)為purelin,網(wǎng)絡(luò)的訓(xùn)練函數(shù)選擇trainscg。同時(shí),設(shè)置必要的網(wǎng)絡(luò)參數(shù),訓(xùn)練迭代步數(shù) epoch=5000,學(xué)習(xí)率 lr=0.2,學(xué)習(xí)目標(biāo) goal=0.001神經(jīng)網(wǎng)絡(luò)模型構(gòu)建完畢后,將訓(xùn)練數(shù)據(jù)輸入到網(wǎng)絡(luò)中,當(dāng)滿足停止條件時(shí)訓(xùn)練過程終止:
numberOfSample = 20;%輸入樣本數(shù)量
%取測(cè)試樣本數(shù)量等于輸入(訓(xùn)練集)樣本數(shù)量,因?yàn)檩斎霕颖荆ㄓ?xùn)練集)容量較少,否則一般必須用新鮮數(shù)據(jù)進(jìn)行測(cè)試
numberOfTestSample = 20;
numberOfForcastSample = 2;
numberOfHiddenNeure = 8;
inputDimension = 3;
outputDimension = 2;
通過修改權(quán)值:
%初始化輸入層與隱含層之間的權(quán)值
W1 = 0.5 * rand(numberOfHiddenNeure,inputDimension)- 0.1;
%初始化輸入層與隱含層之間的閾值
B1 = 0.5 * rand(numberOfHiddenNeure,1)- 0.1;
%初始化輸出層與隱含層之間的權(quán)值
W2 = 0.5 * rand(outputDimension,numberOfHiddenNeure)- 0.1;
%初始化輸出層與隱含層之間的閾值
B2 = 0.5 * rand(outputDimension,1)- 0.1;
得到不同輸出值。
4 預(yù)測(cè)模型的建立與結(jié)果評(píng)價(jià)
網(wǎng)絡(luò)訓(xùn)練完成后,就可以用來檢驗(yàn)測(cè)試樣本。用網(wǎng)絡(luò)預(yù)測(cè)結(jié)果與檢驗(yàn)樣本的實(shí)際結(jié)果相比較,找出預(yù)測(cè)值與真實(shí)值之間的誤差,即可檢驗(yàn)出網(wǎng)絡(luò)的訓(xùn)練質(zhì)量。網(wǎng)絡(luò)模擬值是歸一化后的數(shù)據(jù),將根據(jù)歸一化公式反推后的模擬結(jié)果即可看出網(wǎng)絡(luò)的狀態(tài)。
【預(yù)測(cè)模型:?jiǎn)握军c(diǎn)擁擠度預(yù)測(cè)(微觀)】
單點(diǎn)預(yù)測(cè)我們可以采用多矩陣預(yù)測(cè)同一站點(diǎn)來提高準(zhǔn)確度,找出最準(zhǔn)確的一組來和真實(shí)值比較。其中我們預(yù)測(cè)過的精度最高的一組,與真實(shí)值誤差小于10%。
全程預(yù)測(cè)我們采用圖像法,第一組預(yù)測(cè)值出來之后,不直接和真實(shí)值進(jìn)行比較,而是根據(jù)預(yù)測(cè)值研究曲線,找出曲線開始趨于平緩的一段,將這一段的預(yù)測(cè)值提取出來與真實(shí)值進(jìn)行比較,會(huì)大大提高效率。
【預(yù)測(cè)模型:上下線路擁擠度預(yù)測(cè)(宏觀)】
這種方法是跨越20多個(gè)站點(diǎn)的宏觀全程預(yù)測(cè),即選取前一周的數(shù)據(jù)作為訓(xùn)練集,預(yù)測(cè)下一周某天某時(shí)刻全程的車內(nèi)人數(shù)及擁擠度情況。圖片為同一輛車上行線和下行線的預(yù)測(cè)結(jié)果圖,雖然我們的模型對(duì)于每個(gè)站點(diǎn)的上下客果不是非常準(zhǔn)確。但在整條公交線路上,我們對(duì)公交車全程的擁擠度預(yù)測(cè)與走勢(shì)判斷相當(dāng)精準(zhǔn),可視為較滿意的預(yù)測(cè)。
5 基于視頻檢測(cè)的數(shù)據(jù)實(shí)時(shí)獲取與研究
本文的擁擠度預(yù)測(cè)基于歷史客流數(shù)據(jù),同樣也應(yīng)用歷史數(shù)據(jù)檢驗(yàn)。在算法完善之后,此技術(shù)可以與大數(shù)據(jù)相結(jié)合,進(jìn)行實(shí)時(shí)客流預(yù)測(cè)與擁擠度判斷。下面簡(jiǎn)單介紹本文采用的視頻檢測(cè)技術(shù)。
5.1 視頻檢測(cè)系統(tǒng)
傳統(tǒng)的數(shù)據(jù)采集具有調(diào)查周期長(zhǎng),后期維護(hù)難,實(shí)時(shí)程度弱等缺點(diǎn),再加上環(huán)境等客觀不可控制因素,就無法獲得足夠準(zhǔn)確的信息。傳統(tǒng)的采集方法沒有可統(tǒng)計(jì)性,不能滿足當(dāng)下的管理需求,因此我們要使客流信息化。本系統(tǒng)采用了車載攝像頭的方法,在公交車前后門的上部嵌入攝像頭,對(duì)乘客進(jìn)行包括形體捕捉和特征提取等一系列操作,利用傳感器檢測(cè)從乘客身上反射回來的光線從而識(shí)別并統(tǒng)計(jì)乘客上下車方向及人數(shù)。這種方法具有很高的識(shí)別度,可以識(shí)別擁擠人群、正反向人群、滯留與流動(dòng)人群等不同狀態(tài),具有很強(qiáng)的抗干擾性,有效的避免了環(huán)境、光線、溫度等的影響。此外可以引入紅外線激光發(fā)射器進(jìn)行輔助識(shí)別,通過裝有帶通濾波器的車載攝像頭捕捉激光線的位置變化來確定乘客人數(shù)。
本系統(tǒng)通過實(shí)時(shí)分析車載攝像頭給出的信息,統(tǒng)計(jì)每個(gè)站點(diǎn)視頻畫面中人數(shù),進(jìn)行實(shí)時(shí)的數(shù)據(jù)采集,完成實(shí)時(shí)的客流統(tǒng)計(jì),從而對(duì)車內(nèi)擁擠度進(jìn)行準(zhǔn)確判斷。而精確度的根本在于盡可能地減少攝像頭所識(shí)別出的人數(shù)與實(shí)際人數(shù)的誤差,其度量需要經(jīng)過目標(biāo)檢測(cè)、目標(biāo)跟蹤、乘客行為分析三個(gè)步驟。目標(biāo)檢測(cè)是計(jì)算機(jī)視覺處理不可或缺的一環(huán),其焦點(diǎn)置于所選目標(biāo)的位置并劃定范圍,基本過程包括了圖像數(shù)據(jù)、預(yù)處理、特征提取、分類器訓(xùn)練、目標(biāo)檢測(cè)五部分。
以公交車為例,在前后車門各安裝一組攝像頭,由于身體軀干等部分在人群密集時(shí)會(huì)被遮擋,采集不到相應(yīng)的信息,導(dǎo)致統(tǒng)計(jì)出現(xiàn)誤差。因此將乘客明顯特征如面部、肩部作為目標(biāo)正樣本,進(jìn)行人臉識(shí)別與輪廓匹配,這樣會(huì)降低顏色、光線、噪聲以及陰影的影響。為了增強(qiáng)干擾性,獲得真正意義上的邊緣前景,對(duì)當(dāng)前幀的邊緣圖像和背景的邊緣圖像進(jìn)行了做差計(jì)算。然后利用圓檢測(cè)進(jìn)行輪廓識(shí)別,相比其他方法更易于操作,識(shí)別率高,能夠高效的進(jìn)行檢測(cè),為客流統(tǒng)計(jì)系統(tǒng)提供了強(qiáng)有力的依據(jù)。
5.2 研究與展望
該系統(tǒng)用于對(duì)公交車各站點(diǎn)人數(shù)的預(yù)測(cè),進(jìn)而判斷車內(nèi)擁擠度。此系統(tǒng)可以與app或者小程序結(jié)合,給用戶提供相應(yīng)信息。當(dāng)用戶選擇公交出行時(shí),輸入選擇乘車的站點(diǎn),系統(tǒng)會(huì)根據(jù)實(shí)時(shí)數(shù)據(jù)計(jì)算出未來公交車到達(dá)本站點(diǎn)時(shí)的人數(shù),然后給出公交車內(nèi)擁擠度,用戶可以根據(jù)擁擠度選擇是否乘坐該公交車。此外,系統(tǒng)還會(huì)根據(jù)上一時(shí)刻的客流數(shù)據(jù)給出該車輛擁擠度變化趨勢(shì),用戶可以知道各個(gè)路段的擁擠程度,從而選擇更加舒適的方式出行。
6 結(jié)論
本文以bp神經(jīng)網(wǎng)絡(luò)建立擁擠度預(yù)測(cè)模型,并根據(jù)實(shí)際情況改進(jìn)相應(yīng)的算法。以吉林省吉林市56路公交線路的數(shù)據(jù)為訓(xùn)練樣本進(jìn)行訓(xùn)練,以進(jìn)行預(yù)測(cè)檢驗(yàn),結(jié)果證明,該模型具有較高的預(yù)測(cè)精度。
參考文獻(xiàn)
[1]李榮慶.公交擁擠司乘行為博弈分析及對(duì)策[J].對(duì)外經(jīng)貿(mào),2012(04):101-103.
[2]蔣盛川,孫軼凡,杜豫川.擁擠度對(duì)公共交通方式選擇意愿的影響[J].同濟(jì)大學(xué)學(xué)報(bào)(自然科學(xué)版),2012,40(12):1831-1835.
[3]侯現(xiàn)耀. 智能公交信息對(duì)城市居民公交出行方式選擇的影響研究[D].東南大學(xué),2016.
[4]劉翠,張艷青,陳洪仁 . 基于 BP 神經(jīng)網(wǎng)絡(luò)的公交線路站點(diǎn)時(shí)段上下車人數(shù)預(yù)測(cè)模型 [J]. 交通標(biāo)準(zhǔn)化,2008(177):186-189。
[5]任崇嶺,曹成鉉,李靜,史文雯 . 基于小波神經(jīng)網(wǎng)絡(luò)的短時(shí)客流量預(yù)測(cè)研究 [J]. 科學(xué)技術(shù)與工程,2011,07,11(21):5099-5103.
[6]范海雁,范炳全,張林峰,等.灰色網(wǎng)絡(luò)預(yù)測(cè)方法在公交客流預(yù)測(cè)中的應(yīng)用[ J] .上海理工大學(xué) 報(bào),2003,25(1):25-28.
[7]孫愛充.公交客流預(yù)測(cè)方法研究[ J] .城市交通,1996,(6):32—33.
(作者單位:吉林大學(xué)交通學(xué)院)