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