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