趙訓婷 黃友能 王 偉
(1.北京交通大學電子信息工程學院,100044,北京;2.軌道交通控制與安全國家重點實驗室,100044,北京;3.軌道交通運行控制系統(tǒng)國家工程研究中心,100044,北京∥第一作者,碩士研究生)
基于通信的列車控制(Communication Based Train Control,簡為CBTC)系統(tǒng),代表了當今世界城市軌道交通信號控制領域技術的發(fā)展趨勢。目前,隨著我國城市軌道交通事業(yè)的蓬勃發(fā)展,各大城市紛紛選擇CBTC技術作為信號系統(tǒng)的首選制式[1]。CBTC系統(tǒng)與傳統(tǒng)基于軌道電路的列車控制系統(tǒng)相比有很大的優(yōu)勢,尤其是區(qū)段內運行列車子系統(tǒng)間的各項參數(shù)可以相互傳遞。當前,為保證不同廠家生產(chǎn)的列車子系統(tǒng)間的正常通信,各個廠家都要根據(jù)工程設計方提供的平面線路布置圖,通過人工方式對線路布置圖中的通信數(shù)據(jù)進行提取和校驗,并按照各自規(guī)定的方式進行編碼,形成接口碼位。這種方式耗費的人力比較多,工作效率不高,而且沒有形成統(tǒng)一的碼位規(guī)范。
現(xiàn)在,城市軌道交通建設的工期越來越緊,對列車運行安全性的要求也越來越高,因此研究數(shù)據(jù)碼位的自動生成方法具有重要意義,有助于高效、準確地得到數(shù)據(jù)接口碼位,并實現(xiàn)CBTC系統(tǒng)接口碼位的規(guī)范化。
數(shù)據(jù)碼位自動生成的技術路線如圖1所示。
圖1 數(shù)據(jù)碼位自動生成的技術路線
本文的技術路線從線路平面圖出發(fā)提取全部的線路數(shù)據(jù)。一條運行線中的線路數(shù)據(jù)較多,為保證數(shù)據(jù)的完整性、安全性,以及碼位自動生成算法的高效執(zhí)行,需要對數(shù)據(jù)進行概念分層預處理;然后將ADO數(shù)據(jù)源和SQL數(shù)據(jù)庫相連,實現(xiàn)程序與數(shù)據(jù)庫之間的通信。提取接口數(shù)據(jù)采用順序啟發(fā)式算法,不斷搜索、篩選、排除剩余空間數(shù)據(jù),直到獲得了子系統(tǒng)通信需要的全部接口數(shù)據(jù)。碼位生成部分用C#語言編寫程序進行主界面的設計,并實現(xiàn)數(shù)據(jù)碼位的規(guī)范化生成。最后用HAZOP(危險與可操作分析)方法對軟件風險進行辨識。HAZOP是一種用于辨識設計缺陷、工藝過程危害及操作性問題的結構化、系統(tǒng)化的分析方法[2]。它按照系統(tǒng)設計原則及通信需求對每一步驟進行分析,識別出潛在偏差的原因、結果和處理方式;處理過后將偏差反饋到數(shù)據(jù)預處理部分,重新生成所需碼位。
CBTC系統(tǒng)由區(qū)域控制器(Zone Controller,簡為ZC),計算機聯(lián)鎖(Computer Interlocking,簡為CI),車載控制器(Vehicle On Board Controller,簡為VOBC)及列車自動監(jiān)督(Automatic Train Supervision,簡為 ATS)等子系統(tǒng)組成[3-4]。每一部分都要調用相關的數(shù)據(jù)到各自的程序中維持運行功能,同時又要傳遞給相關子系統(tǒng)共同保證軌道交通系統(tǒng)的安全運營。圖2為CBTC系統(tǒng)內部通信數(shù)據(jù)的傳遞流圖。
圖2 CBTC系統(tǒng)內部通信數(shù)據(jù)的傳遞流圖
由圖2可知,CBTC系統(tǒng)由4個子系統(tǒng)組成,每個子系統(tǒng)至少由一個程序完成功能,那么接口的數(shù)量就要按照4×(4-1)=12,呈二次方增長。每個接口的數(shù)據(jù)都要重新設定以滿足當前系統(tǒng)信息傳輸?shù)男枨?。自動生成?shù)據(jù)碼位可以高效、高質量地完成這項工作。下面以北京城市軌道交通亦莊線同濟南路站CI→ZC(計算機聯(lián)鎖向區(qū)域控制器)之間需要傳遞的接口碼位為例,介紹其具體實現(xiàn)的方法。
CI→ZC傳送的數(shù)據(jù)主要用于ZC確定線路狀態(tài),包括以下6種類型的數(shù)據(jù):
1)道岔信息(位置定位狀態(tài),位置反位狀態(tài),鎖閉狀態(tài));
2)區(qū)段信息(運行方向,占用狀態(tài),空閑狀態(tài),進路辦理狀態(tài),進路鎖閉狀態(tài));
3)信號機信息;
4)OVERLAP(安全區(qū)段)信息;
5)站臺信息(站臺緊急關閉狀態(tài),站臺安全門狀態(tài),站臺無人折返狀態(tài));
6)進路信息(基本進路,折返進路,出入段進路)。
概念分層就是數(shù)據(jù)庫中的概念以偏序方式組成,有底層概念(具體的概念)到高層概念(一般的概念)的映射序列[5-7]。本文的數(shù)據(jù)包括地面設施的編號、位置、方向等,每類設備信息都可以映射到該信息所在的數(shù)據(jù)表;同時所有的數(shù)據(jù)表都可以映射到設備和線路上。這些映射形成的數(shù)據(jù)概念分層結構如圖3所示。
由圖3可知,這些概念層次之間構成了一個從抽象到具體的關系?;诟拍罘謱拥闹R發(fā)現(xiàn),這是一種有效的面向屬性的數(shù)據(jù)歸納方法。它通過對數(shù)據(jù)進行提煉加工,將記錄濃縮成較少的更高一層次的數(shù)據(jù);數(shù)據(jù)層次越高存儲的數(shù)據(jù)等級就越高,相應包含的信息數(shù)量就越少,但是信息覆蓋的范圍卻不變[8-9]。具體到本文中就是:在底層“具體信息”內保留的所有內容,在“按功能分塊”部分保留的是子系統(tǒng)傳遞中更為需要的數(shù)據(jù),上一層的數(shù)據(jù)是下一層數(shù)據(jù)的真子集。這樣的存儲方式可以有效地提高數(shù)據(jù)碼位的生成效率。
啟發(fā)式算法在計算機科學、人工智能、運籌學等一些工程學科中經(jīng)常被用到。在不同的學科中,對該詞的定義可能不同,對啟發(fā)式算法研究的側重點可能也不同。人工智能專家Pearl J.曾在其著作中對啟發(fā)式算法進行了比較詳細的討論。他認為:啟發(fā)式算法是指一組指導算法搜索方向的、建議性質的規(guī)則集;通常按照這個規(guī)則集,計算機可以在解空間中尋找到一個可行解[10-11]。本文提出的順序啟發(fā)式算法,利用組合優(yōu)化的方式,通過逐個地增加數(shù)據(jù)的方式來求得一個可行解。其計算速度較快,結果準確率較高。
圖3 數(shù)據(jù)概念分層結構
順序啟發(fā)式算法的具體執(zhí)行步驟如下:
步驟1:初始化數(shù)據(jù)庫,根據(jù)CI→ZC通信需要的數(shù)據(jù)確定各個數(shù)據(jù)表的優(yōu)先級,將整個數(shù)據(jù)庫看作初始剩余空間,作為第一個節(jié)點。圖4為經(jīng)概念分層預處理后的數(shù)據(jù)庫模擬圖。數(shù)據(jù)庫共分為4層,優(yōu)先級從下到上依次遞增;同時每一層的數(shù)據(jù)也按照需求大小排列,數(shù)字越小表示優(yōu)先級越高。
圖4 數(shù)據(jù)庫預處理模擬圖
步驟2:后臺生成并維護2張數(shù)據(jù)表(“Unmark表”存儲被搜索但未被使用的數(shù)據(jù),“mark表”存儲已被使用的數(shù)據(jù)),如圖5所示。
步驟3:按照ZC子系統(tǒng)需要的6類碼位數(shù)據(jù),選取當前剩余空間優(yōu)先級最高的數(shù)據(jù)表作為葉子節(jié)點。葉子節(jié)點表示當前需要遍歷的數(shù)據(jù)表,即為圖6中黑色圓表示的部分。第一層編號為1的數(shù)據(jù)表如圖6所示。
圖5 順序啟發(fā)式算法中的數(shù)據(jù)表
圖6 第一層編號1被選為葉子節(jié)點
步驟4:遍歷當前數(shù)據(jù)表,如有需要通信的接口數(shù)據(jù),則轉入步驟6;如沒有則轉入步驟5。
步驟5:當前數(shù)據(jù)表中沒有需要通信的數(shù)據(jù),則轉入下一個優(yōu)先級的數(shù)據(jù)表中重復步驟3、4。
下一個優(yōu)先級的數(shù)據(jù)表即為當前數(shù)據(jù)表直接關聯(lián)的下層編號為1的數(shù)據(jù)表和同層的下一級別的數(shù)據(jù)表。圖7中的黑色圓表示的部分即為第一層編號1中沒有所需要的通信數(shù)據(jù),則更換第二層編號1為葉子節(jié)點。如果此時仍然沒有所需的數(shù)據(jù),則需要繼續(xù)遍歷下一優(yōu)先級的數(shù)據(jù)表。圖8、圖9、圖10依次展示了順序啟發(fā)式算法更換葉子節(jié)點的順序。其中黑色圓表示選作下一個葉子節(jié)點的數(shù)據(jù)表。
圖7 更換第二層編號1為葉子節(jié)點
圖8 第三次換選葉子節(jié)點
圖9 第四次換選葉子節(jié)點
圖10 第五次換選葉子節(jié)點
步驟6:將該數(shù)據(jù)的優(yōu)先級編號和數(shù)據(jù)名稱存入“Mark表”(見表1),并按照子系統(tǒng)間通信的接口碼位格式進行編碼,同時將該數(shù)據(jù)表中未使用的數(shù)據(jù)存入“Unmark表”(見表2)。
表1 Mark表
表2 Unmark表
步驟7:將編碼后生成的信息,按碼位順序進行編號,存入碼位表;重復步驟1,順序編碼繼續(xù)生成下一類通信碼位。
最終生成的同濟南路站CI→ZC通信的數(shù)據(jù)接口碼位如表3所示。
表3 亦莊線同濟南路站CI→ZC發(fā)送的數(shù)據(jù)碼位編號
本文針對CBTC系統(tǒng)內各子系統(tǒng)之間數(shù)據(jù)碼位由人工生成的不足,提出了一種利用概念分層預處理數(shù)據(jù)結合順序啟發(fā)式算法自動生成數(shù)據(jù)碼位的方法,并通過代碼實現(xiàn)了自動生成子系統(tǒng)間交互的碼位信息,達到了傳輸數(shù)據(jù)的完整覆蓋性需求。實例結果表明,自動生成的數(shù)據(jù)在保證覆蓋完整、數(shù)據(jù)準確的前提下減少了人工校驗,大幅度提高了工作效率。
[1]陳偉喜.IEEE 802.11協(xié)議在基于通信的列車控制系統(tǒng)(CBTC)中的應用[D].上海:上海交通大學,2007.
[2]張貝克,李欣龍.一種石化過程半自動化HAZOP安全評價方法的研究[J].石油與天然氣化工,2009,38(3):262.
[3]郜春海.自主創(chuàng)新CBTC系統(tǒng)的核心技術研究[J].都市快軌交通,2011,24(4):1.
[4]郜春海.基于通信的軌道交通列車運行控制系統(tǒng)[J].現(xiàn)代城市軌道交通,2007(2):7.
[5]謝艷.基于概念和概念格的知識發(fā)現(xiàn)新方法[D].鞍山:鞍山鋼鐵學院,2001.
[6]秦昆.基于形式概念分析的圖像數(shù)據(jù)挖掘研究[D].武漢:武漢大學,2004.
[7]謝世環(huán).CTCS2列控中心應答器報文測試用例自動生成研究[D].上海:同濟大學,2008.
[8]鐘慧玲,章夢,石永強.基于路網(wǎng)分層策略的高效路徑規(guī)劃算法[J].西南交通大學學報,2011,46(4):645.
[9]陳波,楊陽,鄭文軍.一種基于道路網(wǎng)層的最短路徑算法[J].海洋測繪,2009,26(3):21.
[10]孫永松.基于啟發(fā)式算法的藥物物流系統(tǒng)的配送優(yōu)化及實現(xiàn)[D].上海:上海大學,2009.
[11]陳萍.啟發(fā)式算法及其在車輛路徑問題中的應用[D].北京:北京交通大學,2009.
[12]宗明.基于無線通信的列車控制系統(tǒng)應用研究[J].城市軌道交通研究,2012(7):120.