黃思翰,邵益平,張田會
(北京理工大學機械與車輛學院)
北京地鐵2013年3月9日在網頁上正式宣布,3月8日當天,全路網日客運量首次突破1 000 萬人次,達到1 027.6萬人次,創歷史新高,成為世界上最繁忙的城市地鐵網,地鐵運輸已經成了北京公共交通的主力軍,對地鐵系統交通系統的研究和提高研究的精確度就變得迫在眉睫。
地鐵作為一個復雜離散系統,通過流程分析可以發現實際運行過程中受到隨機因素、人為因素等的影響,加上系統本身的復雜性,傳統的單純的數學建模優化思路不能滿足現代優化的需要,另外,傳統的地鐵優化方案的驗證一般是通過“試運行”來進行,耗費了大量的人力物力財力,還給乘客的出行帶來不便。鑒于近年來關于系統的研究、以及系統仿真建模的研究成為熱點,通過借鑒參考文獻等研究成果,本文提出了基于Plant Simulation 的地鐵交通系統仿真建模新思路。利用Plant Simulation 的面向對象的建模方式,對地鐵交通系統進行建模,盡量真實地反映地鐵交通系統,一方面可以根據仿真結果對系統進行優化,讓優化方案更加有針對性,另一方面也可以利用仿真模型來驗證優化方案,以提高優化方案的可信度,利用仿真模型對地鐵交通系統進行規劃,避免了傳統的“試運行”的方案可行性論證的繁瑣過程。
通過對地鐵站的運行情況、組成結構進行流程分析,得出如下結論:地鐵系統作為一個大的排隊系統,可以細分為三個子系統——乘客系統、調度系統、列車系統。當乘客到達地鐵站時,作為乘客系統的到達事件,首先進入地鐵的等候區,若此時列車正好停靠在站點并且列車還沒有滿員,那么乘客就可以按照FIFS 先到先服務)的規則,按順序上車,若列車已經滿員,則繼續等待。同樣地,對于列車系統來說,列車進站構成列車的到達事件,列車到站后,如果有下車的乘客,則下車乘客按照FIFS 原則完成下車事件,下車乘客離開列車后進入地鐵等候區,隨后離開地鐵系統,構成乘客的離開事件。列車上的下車乘客服務完畢之后,或者沒有下車乘客,如果有乘客在排隊系統中排隊準備上車,則對該乘客系統的隊列進行服務。在列車系統進行上下車服務的過程中,調度系統不斷監控乘客系統和列車系統,若檢測到沒有等候上車的乘客或者隊列中的乘客已經上車或者列車已經滿員或者計劃停車時間已經到了,那么就允許列車出站,構成列車的離開事件。
地鐵系統運行流程統計表和流程圖如表1 和圖1 所示。

表1 地鐵正常運轉流程統計

圖1 地鐵系統流程
客流的基本特征是其沿時間和空間分布的小均勻性,即客流的動態特性。限于數據資料本次研究重點以北京市的某地鐵交通線路的幾個站點作為研究對象。
對于客流的分析,主要考慮乘客進站、出站、上車、下車四個過程。對于乘客的進站,即乘客到達某地鐵站,若令N(t)表示在時間間隔(0,t)內到達地鐵站的乘客數,則{N(t),t≥0}是連續時間參數的隨機過程(計數過程)。
對于上述的隨機過程滿足。
(1)N(0)=0。
(2){N(t),t≥0}有獨立增量,即對任取的n 個時刻:0<t1<t2<…<tn,隨機變量N(t1)-N(t0)、N(t2)-N(t1)…N(tn)-N(tn-1)是相互獨立的。
(3){N(t),t≥0}具有平穩增量,且對任意t≥0 與s≥0,有,k =0,1,2,…則有P其中λ(>0)為常數,則稱{N(t),t≥0}是泊松過程,也稱Poisson 流或最簡單流。
注:定義的第(1)條表示t=0 時無乘客到達;第(2)條表示乘客到達過程具有無后效性,即在不相交的時間區間內到達的乘客數是相互獨立的;第(3)條表示在(t,t+Δt)內到達的乘客數只與時間區間的長度有關,而與起點無關,而且服從泊松分布,因此,對一個固定時刻t≥0,在(0,t)內到達乘客的平均數E[N(t)]=λt,這樣在單位時間內到達乘客的平均數為參數λ,它表示Poisson 流的強度,此為參數λ 的物理意義。
因此,對于乘客的進站過程和出站過程都可以認為是一個泊松過程,乘客的進出站過程都是一個泊松流。
同理,對于乘客的上下車過程,由于列車每次在站臺停留的時間間隔不同,對于上車過程,考慮單位乘客上車的輸入過程,令X(t)表示在列車停下上下車的時間間隔(0,t)內上車的乘客數,則{X(t),t≥0}是泊松過程,也稱Poisson 流或最簡單流。對于乘客下車過程也是一個泊松過程,而此時的λ 表示單位時間內上車乘客或下車乘客的平均數。
Plant Simulation,原名eM-Plant,是西門子公司開發的一款建模與仿真的軟件。Plant Simulation 具有豐富的建模單元,能夠對生產和物流等離散系統進行仿真和優化,采用面向對象和事件驅動的思想來實現建模和仿真過程。Plant Simulation 內部具有豐富的物流和交通系統建模組件,具有建模效率高、可視化建模能力、二次開發能力強、操作簡單等優點,被廣泛用于生產和物流系統的建模、仿真和優化過程中。
利用Plant Simulation 對地鐵交通系統進行仿真建模,實現列車按調度系統提供的時間表發車、停站和離開,乘客按照實際分布到達和離開地鐵交通系統的功能,通過地鐵等候區的等待情況或堵塞情況等性能評價指標對地鐵交通系統的運行過程、運載能力等給予評價,充分運用Plant Simulation 擅長解決“what-if”問題這種評估模式的特點。
Plant Simulation 是基于面向對象的建模過程,采用層次化的結構,具有圖形化的工作環境,易用性強、靈活性打,并且提供了建模的對象庫供用戶直接用于仿真模型的構建。為了實現快速建模和簡化模型的目標,根據面向對象的建模思路,利用系統提供內置的模塊和Simtalk 語言相結合的方式,完成對地鐵交通系統的模型化描述。
3.3.1 層次化
地鐵交通系統作為一個復雜離散系統,為了便于對地鐵系統進行分析和處理,將地鐵系統分解成相對比較簡單的子系統,根據對地鐵系統的調查數據,得出如圖2 所示的地鐵交通系統構成體系。

圖2 地鐵交通系統數據流圖
在建模過程中,根據地鐵系統的特性,利用Plant simulation 中的Frame嵌套功能來描述子系統和總系統之間的關系,即在地鐵交通系統中,嵌套的Frame 可以視為子系統——地鐵站點,如果有必要的話也可以在地鐵站點的Frame 里嵌套Frame 作為地鐵站點的子系統,代表出入口或者候車區等。
3.3.2 模塊化、集成化
地鐵系統的層次化描述是為了更清晰的了解地鐵系統的內部結構,在具體的建模過程中,對不同的功能區進行分塊處理,這樣,建模過程將會更加清晰更加快速。從地鐵這個大系統來說,每一個地鐵站可以單獨為一個模塊,地鐵站內集成了出入口區域、等候區、列車軌道區等區域,在地鐵站內這些功能區也同樣采用模塊化處理,這樣建模過程中只需要根據實際情況增減功能模塊,大大提高了建模效率。另外,數據收集和數據處理、圖表展示內容也需要單獨開發一個模塊,這樣,構建的模型將更加有條理,也能實現快速建模。
3.3.3 繼承性
考慮到地鐵站點基本功能和構造的相似性以及為了讓仿真建模的過程更加有效率,充分利用Plant simulation 的繼承性進行模型的構建。比如可以在仿真模型文件夾中新建一個Frame,重命名為Station 來表示地鐵站,在這個Frame里可以構建地鐵站內軌道、等候區、出入口等功能模塊,在構建地鐵系統時,只需要在Station 的基礎上,根據實際情況修改就可以了,利用了建模的繼承性,大大提高的了建模效率。
3.3.4 與圖形建模軟件的結合
Plant simulation 提供圖標自定義的功能,為了讓仿真模型更加貼近實際情況,可以利用Solidworks、autoCAD 等圖形編輯軟件對地鐵站、乘客等進行三維或者二維建模,并導入到仿真模型中,這樣,仿真模型的可視化效果更好,也更加真實。
3.3.5 SimTalk 語言編程
雖然Plant simulation 內置了豐富的功能模塊,完全可以用戶的基本需求,但是如果要實現復雜的功能,還需要利用SimTalk 語言進行編程處理,功能模塊與method 方法相結合,利用SimTalk 語言進行Method 方法開發實現期望的功能,完成Plant simulation 的面向對象二次開發。例如地鐵子系統地鐵站中乘客的上下車就無法直接利用功能模塊實現,需要進行SimTalk 語言編程,部分代碼如下。


這段代碼描述了上車的控制過程,首先利用Poisson 分布函數產生一個上車人數,再讀取候車區的人數out_loadbuffer.nummu,若候車區的人數小于Poisson 分布函數產生的值,則將候車區內的乘客全部轉移到列車上(代碼中的@代表列車),否則從候車區中轉移i 個乘客到列車上。上車過程利用for···loop···next 循環語句完成,控制精確,切比較靈活。下車的控制方式以此類推。該控制過程通過系統模塊與Method 方法編程相結合的方式,充分體現了Plant simulation 面向對象的開發模式的靈活性。另外數據的收集和處理也需要進行編程處理,限于篇幅在這里就不詳細列舉了。
3.3.6 評價指標
地鐵交通系統內的客流由普通出入口帶來(帶走)的乘客、換乘通道帶來(帶走)的乘客、列車帶來(帶走)的乘客這三大部分組成,那么在某一時刻地鐵站內存在的乘客人數的計算方法如下:
某一時刻地鐵站點內乘客數=∑ΔXi+∑ΔYj+∑ΔZk
其中:
ΔXi為n 時刻每一個出入口已經到達人數和已經離開人數的差值;ΔYj為n 時刻每一個換乘通道已經到達人數和已經離開人數的差;ΔZk為n 時刻列車帶來和帶走的人數的差值。
通過分析站內在某一時刻的總人數以及各個出入口的緩沖區內的人數變化,便可以很方便的找到引起地鐵站內人數變化的具體原因。
通過對北京某地鐵線路的相關數據收集和分析處理,構造了一個地鐵交通系統,驗證了本文提出的建模思路的可行性和有效性。
地鐵交通系統從宏觀上分為始發站、終點站、普通站、換乘站等四大類,始發站和終點站也有可能同時是換乘站;連接站點的是兩條地鐵軌道,供列車雙向運行;列車按照發車時刻表從始發站出發,按照軌道規定的線路一次通過沿途各個站點,如圖3 所示。從微觀上看,地鐵站點一般情況下有四個出入口,換乘車站多一到兩個的換乘通道,乘客按照泊松分布到達地鐵出入口,通過地下通道進入等候區,按照先進先出的規則上下車如圖4 和圖5 所示。另外,為了方便仿真結果的分析和處理,在每一個地鐵站點模型內增加數據收集模塊,用來收集出入口到達和離開的人數、列車運走和帶來的人數等相關數據,以便于進行結果分析,如圖6 所示。
由于采用層次化、模塊化的建模策略,所以如果地鐵站點需要增減就可以很方便的增減相應的模塊,建模效率大大提高,建模靈活性也有明顯提升。
完成地鐵交通系統仿真模型的構建后,進行模型檢驗,輸入如表2 所示的必要的數據。

圖3 地鐵交通系統外觀

圖4 地鐵站內結構圖

圖5 地鐵出入口示意圖

圖6 仿真數據統計圖表

表2 仿真模型數據輸入
運行仿真模型,仿真結束后,打開Total_Chart 即站內總人數統計圖,得出如圖4.5 所示的仿真結果。

圖7 仿真結果數據統計圖
數據統計圖縱坐標表示人數,橫坐標表示時間,例如1.0000 時刻,對應的縱坐標為200,說明這一時刻存在于地鐵站中的人數為200。另外,在7.0000 時刻客流量比較大,達到了1000 人,此時地鐵站內出現相對擁堵的情況,需要盡快將站內的乘客運走,這樣就可以通過分析該時刻的地鐵出入口、乘客上下車人數等相關數據查找原因,從而提出尋找和提出有針對性的解決方案。另外,如果想要了解各個出入口、換乘通道等的詳細數據,可以打開圖4.4 所示的相應的圖表來獲取所需要的具體數據。
仿真實例從數據的收集和分析到模型的構建,再到最后的仿真結果的分析,充分驗證了本文提出的建模思路的可行性和有效性。基于Plant simulation 軟件采用面向對象的建模方法對地鐵交通系統進行仿真建模,簡單、方便,充分發揮了Plant simulation 仿真軟件建模形象直觀的優勢。層次化的建模結構、封裝的對象機制,提高了模型的可維護性和可重復利用性,符合地鐵交通系統快速發展的特點,對地鐵系統的研究工作的開展來說有很大的幫助。
地鐵交通系統實際運行過程中受到隨機因素、人為因素等的影響,加上系統本身的復雜性,本文中建模過程中做了相應的假設和簡化,在今后的研究中還需要對地鐵系統和模型進行更進一步的探索和研究,使模型與實際情況更加貼合。
[1]郭鵬,程文明,張則強.鐵路集裝箱物流中心系統建模與仿真分析[J].計算機工程與應用,2011,47(17):235-238.
[2]王艷青,程文明,張則強.基于Em-plant 的鐵路集裝箱貨場裝卸系統仿真研究[J].起重運輸機械,2008(12):7-12.
[3]徐翔斌,王琦,涂歡.基于Em-plant 配送中心的流程仿真和優化[J].華東交通大學學報,2011,28(1):29-33.
[4]楊壟.基于Em-plant 的生產物流系統仿真與應用[J].工業工程,2010,13(5):95-100.
[5]張如杰,楊自建,王偉,等.eM—Plant 在機車預組裝生產線建模與物流仿真中的應用[J].裝備制造技術,2013(5):140-143.
[6]王國新,寧汝新,王愛民.面向可重構制造單元的仿真建模技術研究[J].系統仿真學報,2007,19(17):3894-3898.
[7]梁婷婷.城市客運樞紐換乘系統仿真研究[D].天津工業大學,2010.
[8]鮑婷潔,樓佩煌,王曉勇.制造系統敏捷性仿真建模軟件開發[J].機床與液壓,2011,39(23):137-140.
[9]周金平,汪銳.生產系統仿真——Plant Simulation[M]. 第一版.北京:電子工業出版社,2011.
[10]施於人,鄧易元,蔣維.eM-Plant 仿真技術教程[M].第一版.北京:科學出版社,北京希望電子出版社,2009.
[11]陳書宏,肖超.Em-plant 在生產線前期規劃中的應用[J].控制工程,2011,18(5):748-750,819.
[12]倪菊,張樹泉,童朝南.基于虛擬現實的地鐵客流仿真系統的實現[J].計算機仿真,2008,25(4):258-262.
[13]龔光魯,錢敏平.應用隨機過程教程及在算法和智能計算中的隨機模型[M].第一版.北京:清華大學出版社,2004.