袁 磊, 甘慶鵬, 李開成, 付 強(. 北京交通大學 軌道交通控制與安全國家重點實驗室, 北京 00044;. 北京交通大學 軌道交通運行控制系統國家工程研究中心, 北京 00044)
ATP車載設備是高速鐵路列車運行控制系統(以下簡稱列控系統)的車載子系統核心主控設備,其與高速動車組之間接口的適配性,是實現超速防護功能的根本。目前我國為適應不同應用需求,各種新型號的高速動車組不斷投入運用。由于不同型號的ATP車載設備在接口特性方面不盡相同。因此,裝備某一型號的ATP車載設備的新型動車組在投入運營前,需要通過型式試驗驗證其接口適配的可用性和安全性。事實上,驗證不同型號的動車組與新配備的車載ATP設備之間接口以保證其安全性與適配性的第三方接口型式試驗已納入了中國列控系統技術體系要求[1]。通常新型動車組與ATP的接口型式試驗在高速鐵路運營線路上開展,用于試驗的時間資源和線路資源有限。如何在有限的資源下,高效、安全地完成測試,是測試序列設計的主要目標。目前接口型式試驗測試序列均由測試專家根據需求與試驗大綱手動編寫,效率低下,測試項可用性、安全性無法保證,也無法在編寫過程中有效衡量測試序列的優劣。與列控系統相關試驗的測試序列生成的研究,目前主要集中于基于系統功能需求的實驗室仿真或半仿真功能測試序列生成[2-4],并未涉及接口型式試驗或者測試序列的優化過程,方法不具有通用性。
針對接口型式試驗的研究場景,本文對測試序列生成、更新與優化過程建模,尋找基于綜合指標的次優解,利用深度學習算法與遺傳算法,設計了序列更新過程與序列優化過程相結合的策略,以得到符合期望的測試序列。基于哈大高速鐵路CRH380B型動車組與CTCS3-300S型ATP車載設備某次型式試驗現場數據,對本文提出的算法策略進行了仿真分析。
接口型式試驗的每個測試序列由多個基本測試項組成,序列中的測試項具體明確測試項類型、執行的位置、條件以及步驟等。單次型式試驗需要多個測試序列。接口型式試驗大綱指定了列車牽引、制動、測距、報文接收、空氣制動以及低黏著度處理等6大類試驗共25種類型的動態試驗基本測試項,并可根據測試需求增加特殊測試項。動車組的運營速度等級不同,則測試項的執行過程也有區別,本文基于310 km/h的最高運營速度。
基于人工編寫測試序列的經驗與試驗的需求,本文提出了測試序列的執行時間效率與能量消耗目標、測試項的有效性與安全性原則、測試項覆蓋度與冗余度要求,用于定義測試序列生成的預期測試需求。接口型式試驗測試序列優化生成策略在本文中被設計成兩個過程,即測試序列的優化過程與測試序列的更新過程,兩個實現過程互相結合聯系,生成滿足預期測試需求且優化的所有測試序列。總體策略具體見圖 1。

測試序列的優化過程根據需求在測試序列解空間中尋找較優的問題解,包括母測試序列集合優化與母序列集合優化再生成兩部分。測試序列的更新過程根據預定的規則更新優化過程中再生成的測試序列的測試項,使得序列中的每個測試項的安全性與有效性得以滿足,同時所有測試序列總體上能夠達到測試項的冗余度與覆蓋度要求。其包括決策點更新、測試項決策以及子測試序列更新等部分。
決策點DP(Decision Point)在本文中定義為間隔大于500 m的應答器組的位置,在列車運行仿真過程中動態地決定DP處是否設置某個類型的測試項。測試項決策是決策網絡基于列車仿真運行到DP處的條件狀態計算測試項可選集,是子測試序列更新的基礎。算法操作基于母測試序列并行進行,一個母測試序列由單次接口型式試驗中所有測試序列(稱為子測試序列)串聯組成,代表1個優化問題的可能解。每個子測試序列表示在型式試驗中列車在1個車次中執行的所有測試項。
實際測試序列在本文設計的算法策略中轉換為數字向量形式,一個子測試序列對應一個列車車次,測試序列中以數字表示對應的測試項類型號,“0”表示無測試項,測試項所在位置對應線路上的不同DP。圖 2為1個子測試序列的更新示意圖,英文字母表示測試項類型。更新前的子測試序列屬于優化再生成的母測試序列的一部分,根據測試項決策網絡計算得到的測試項可選集按照預定規則從一個DP到另一個DP更新測試項:(1)列車仿真執行完上一個測試項,運行至DP1,更新前測試項為0,則保留;(2)運行至DP2,更新前為測試項a,可選集中包含a,則保留;(3)假設列車仿真執行測試項a運行至DP5處,則DP3與DP4更新為0;(4)運行至DP5,可選集為空集,則更新為0;(5)運行至DP6,更新前測試項為d,可選集包含d,則保留;(6)執行測試項d,則更新DP7為0。

列車仿真向前運行經過每個DP,為了考察在測試序列更新過程中列車仿真運行到DP處時能否滿足執行某些測試項的條件,本文定義了條件狀態來表征當前DP處的特征。構建了基于深度學習算法的測試項決策網絡以特征向量為輸入來計算得到DP處的測試項可選集。具體定義的N維條件狀態向量描述了執行測試項必要的需求
x=[x1,x2,…,xN]
( 1 )
分量取值可以是0、0.5以及1,分別表征當前DP處不滿足對應該分量的條件、在可接受程度上滿足以及完全滿足。基于型式試驗的具體情況,根據速度等級、坡度、軌道電路、應答器以及不同測試項之間的耦合關系等多類別要求,確定狀態向量x為18維。
為了確定與每個狀態向量對應的測試項類別樣本,得到DP處的測試項可選集,定義類別向量
y=[y1,y2,…,yM]
( 2 )
式中:M為測試項類別數,分量下標代表了定義的測試項類型號,若根據狀態向量可以計算出符合某類型測試項實施要求,則在類別向量對應分量置1,否則置0。狀態向量與類別向量之間的映射計算關系通過具有深度學習能力的決策網絡來完成。利用人工或者隨機生成并人工定標簽的訓練樣本,對構建好的決策網絡進行離線訓練與特征學習,以條件狀態向量為在線輸入即可得到對應的測試項可選集,適應不同的鐵路試驗線路數據以及試驗需求。
深度學習是人工神經網絡的進一步研究的結果[6]。深度學習[7]利用低層特征組合成更為抽象的高層表示。本文利用稀疏的多層自編碼[8-9]與多層邏輯回歸[10]構成的神經網絡來進行測試項決策,見圖 3。

網絡學習的第一部分為編碼層的特征學習。圖中多層自動編碼網絡有2個編碼層,按照逐層貪婪方式(Layer-wise)[11]的方式逐層訓練,其本質是優化層與層之間的權值使得輸出能夠重構輸入。具體地,對第一個編碼層,若有m個維度為N的學習樣本,則該編碼層特征學習的代價函數為
J(W,b)=
( 3 )
其中,第1項為誤差項,hW,b(x)為該編碼層對應的輸出層輸出,輸出層與輸入同維度,不顯含于圖中。第2項為稀疏項,使部分神經元都處于非激活狀態,網絡具有稀疏特性,其中
( 4 )

( 5 )
式中:ρ為稀疏參數,表示需要達到的稀疏程度,通常取0.05。式( 3 )中第3項為規則項,限制權值過大,其中W1為編碼層的權值,Wd為該編碼層對應輸出層的權值。按照代價函數( 3 )以基于反向傳播算法(BP Algorithm)[13]求梯度的梯度下降學習方式優化,形成稀疏自動編碼,僅保留編碼層權值W1。第1個編碼層的特征學習完成后,其直接輸出作為下一編碼層的輸入,按照類似式( 3 )的代價函數進行訓練。
網絡學習的第2部分為輸出層的感知學習。編碼網絡僅能夠提取深度的樣本特征,因此,在多層編碼網絡后串聯由多個具有二分類能力的邏輯回歸構成的輸出層,進行樣本特征的認知學習。邏輯回歸利用了Sigmoid函數,是線性回歸的改進,增加了魯棒性,多邏輯回歸的輸出層代價函數

( 6 )
式中:第一項為誤差項;a2為第二個編碼層的直接特征輸出;第2項為限制權值過大的規則項。
網絡學習的第3部分為整體的調優(Fine Tuning),經過前面的特征學習與感知學習的過程后,為了獲得更高的精度,需要對整體的網絡調優,以前饋神經網絡學習的方式基于BP算法求梯度,對網絡整體按照梯度下降的方式進行有監督的學習。學習過程中的網絡誤差損失函數為
( 7 )
學習樣本可以通過專家基于試驗經驗手動構造或者隨機大量構造。在大樣本集的基礎上,利用圖 3具有深度學習能力的分類決策網絡進行離線學習。在測試序列的更新過程中,對列車進行運行仿真計算,實算牽引過程,推導制動過程,在每個決策點形成一個當前的條件狀態特征向量,輸入到決策網絡中,在線計算測試項可選集。測試序列的更新過程利用測試項可選集按照預定規則更新測試項。
測試序列優化過程基于二進制遺傳算法,對其中的相關過程進行了相應的修改以適應本文的應用場景的需求。優化過程與更新過程相互結合與相互聯系,按照綜合需求的目標,以迭代的方式生成新的測試序列集合,最終得到符合需求的期望的測試序列。按照型式試驗,可以決定測試序列的總數Ns,同時決定所有M類測試項各自的最低冗余度nj(j=1,2,…,M)。對應第k個測試序列有gk個測試項,由優化過程決定,該測試序列期望的測試項數Mk。若對應一個車次有sk個決策點,對應測試序列為sk維的向量xk。綜合考慮測試序列生成過程中的上述限制以及需要優化的運行時間與能量消耗指標,具體的優化目標函數為
( 8 )
xk,i+1@xk,ii=1,2,…,sk-1
式中:第一項為時間項,Tk為第k個測試序列期望執行時間(小于調度計劃時間),T(xk)為第k個測試序列的執行時間;第2項為能耗項,Ek為第k個測試序列消耗的最大計算能量,E(xk)為第k個測試序列消耗的計算能量。計算方法為:(1)列車以最大牽引加速到限速后,進行制動至速度為0;(2)重復該“最大牽引-制動”過程至終點處。第3項為懲罰項,1個測試序列中測試不能過多。符號A@B表示A的取值受到B的限制。若各序列向量xk確定,式( 8 )值將可以基于列車運行仿真執行測試序列來具體計算。
式( 8 )中給出的是單個測試序列中的期望測試項數目,為了使得測試項的冗余度與覆蓋度在優化過程中趨于滿足,修正測試序列的更新過程,符合測試項可選集的當前預設測試項需滿足下式才能進行更新設置
( 9 )

從式( 8 )以及本文設計的策略可以知道,測試序列的優化生成是一個非線性、非連續以及非凸的問題,無法利用經典的規劃與優化理論求解。因此,本文通過改進的適用本文應用場景的遺傳算法來優化求解式( 8 )。首先將最小化代價函數轉變為求最大的適應度值
(10)
遺傳算法(GA)[14]模擬自然進化過程搜索最優解,通過選擇、交叉和變異3個階段來不斷產生新的染色體群。二進制編碼遺傳算法中,一個二進制位表示一個基因,多個連續的基因為一個基因型,其解碼表示即解向量的一個分量。
在本文應用中,1個母測試序列(所有需求的子序列)代表1個染色體,總的決策點數目為Md,則對應基因型的個數也為Md。基因型解碼對應測試項類型號,定義為(b0,b1,…,bL0-1)2,其位數為L0,則染色體個體基因位數為

(11)

Step1群體初始化。每個染色體個體表示一個母測試序列,群體則表示母測試序列集合。以二進制編碼的形式,隨機產生Ng個染色體個體的群體,長度L。
Step2個體解碼。染色體個體各基因型在按照下式解碼,得到測試項類型號表示的母測試序列

(12)
Step3個體更新。母測試序列集合中所有個體在解碼后進行的測試序列更新過程,得到新集合。
Step4適應度更新。對解碼后的群體按照式(10)計算群體中各個體適應度,并且更新群體局部最優(當前最優)適應度及其對應的個體,以及更新全局最優(歷史最優)適應度及對應的個體。
Step5選擇操作。首先選擇最高適應度對應的染色體保留到下一代,并拋棄最低適應度對應的個體。其次計算其余個體適應度值Fl(l=1,2,…,Ng-2)占總的適應度值的比例
(13)
按照輪盤賭選擇法以概率Pl選擇復制對應染色體。
Step6交叉操作與變異操作。單點交叉方式,選擇操作得到的群體每兩個個體分為一組,在某設定基因點右側的部分以概率μc相互交換。多點隨機變異方式,不超過L/50數目的基因點按照概率μm變異。經過交叉與變異操作后,得到新的群體,即解碼后得到優化再生成的母測試序列集合。
Step7終止演化。若達到最大迭代數目則終止演化過程,否則重復步驟Step2~ Step7。
迭代結束后群體終止演化,得到了整個算法周期中的全局最優適應度及其對應的最優個體,按照式(12)進行解碼后即為求解得到的期望的母測試序列。母測試序列所包含的所有子測試序列中的測試項,明確了測試項類型與執行的位置,按照具體的測試項內容轉換為可直接應用于試驗現場的測試序列。相關的轉換以及試驗計劃的后續形成不屬于本文研究重點,不再做進一步闡述。
本文對前述算法過程進行了仿真試驗,數據來自CRH380B型動車組與CTCS3-300S型ATP車載設備接口型式試驗。該型式試驗的線路為哈大高速鐵路長約115 km的四平東站至長春西站區間。測試序列共12個,適用測試項類型為22種,包括下行正向與上行正向,以反方向進站應答器組FJZ(或進站JZ)到進站應答器組JZ(或反進站FJZ)區間的應答器組為決策點。動車組的仿真運行以CRH3型動車組的牽引特性數據進行。
測試項狀態向量18維,兩個編碼層維度均為20,輸出層維度為25,適用試驗大綱中所有25類基本測試項。在人工構造與隨機生成的4 000個狀態樣本及對應類別樣本基礎上,對決策網絡進行離線學習。圖 4為第1個編碼層的重構誤差,可知第2個編碼層重構誤差也較小。圖 5為輸出層感知學習的誤差收斂情況,對比圖 6的整體調優過程可以知道網絡性能得到了提升。網絡在線測試項決策實驗利用了總共包含了3 520個測試項的1 000例測試樣本。跟進試驗結果,正確識別測試項數目為3 419,識別率97.13 %。誤報識別數目217,誤報率為6.16 %。因此,網絡決策精度較高,結果出錯概率小,性能滿足要求。此外,測試項更新過程是從測試項集合中按預定規則選擇1個測試項,具有隨機特性,可以使得錯誤項影響更低。

直接對本文設計的測試序列的優化生成策略進行仿真驗證。對于式( 8 ),根據試驗數據,可知需求序列數目Ns為12,按JZ(FJZ)之間的應答器組為DP點,單個序列決策點數目sk為117或119。需求冗余度為1~3,覆蓋22類測試項。序列的設置每個子測試序列的期望執行時間為40 min,各子測試序列期望的測試項數目為8。按照前文最大執行能耗計算過程進行計算,最大計算執行耗能設置為1.2×107kJ。權系數w1、w2與w3分別設置為0.5、0.3與0.2;項內權系數w1,k、w2,k與w3,k均設置為0.101 9(k≠10,11,12)或0.027 8(k=10,11,12)。適應度函數中Fmax取1,染色體長度經計算為7 080,交叉概率0.9,個體變異基因數目48,概率0.05。優化過程最大迭代數為400,適應度、序列執行的時間花費以及能量消耗的信息追蹤結果分別見圖7~圖9。

圖7表明算法在進行了約200次左右的迭代便收斂了,得到的全局最佳適應度對應的母測試序列,即為優化生成的期望的所有子測試序列。圖 8顯示了子測試序列的時間花費,包括子序列01與所有子測試序列的平均值。算法收斂時平均時間花費為39.4 min,接近期望值。子序列01在母測試序列中最靠前,在序列更新的過程中較大概率設置更多測試項,因此執行時間花費更高。圖 9顯示算法收斂時得到的子測試序列平均能耗約為8.79×106kJ,即總能耗約為1.05×108kJ。統計最終優化生成的測試序列的測試項數目情況,見表1,實際得到的子測試序列為10個。

表1 優化生成的測試序列測試項數目統計
與實際現場序列的時間花費與能耗的理論計算結果對比,見表2,結果根據生成的子測試序列數目進行了修正。可見相比于原人工編寫的測試序列,序列總耗能降低了,執行序列平均耗時接近預期的40 min。此外,在滿足式( 9 )冗余度規則下,在有限的測試序列中測試項數目更多。進一步統計可知,測試序列中測試項整體滿足了覆蓋度要求,各類型測試項滿足其冗余度要求。

表2 實際測試序列與優化生成的測試序列對比
為了說明優化生成的測試序列可以被有效執行,以01號子測試序列(下行正向)為例進行仿真執行與分析說明。該子測試序列為[/*6(0)*/ 6 /*23(0)*/ 3 /*33(0)/ 14 /*10(0)/ 24 /*6(0)*/ 9 /*1(0)*/ 10 /*12(0)*/ 3 /*6(0)*/ 11 /*6(0)*/ 12 /*6(0)*/],序列中/*6(0)*/表示為6個“0”,連續6個決策點無測試項。可以看出該序列共包含了9個測試項,仿真執行該測試序列,結果見圖10。

可見該測試序列中由于不同的位置的不同類型測試項設置合理,相互間不會產生影響,都可以按照其預期仿真曲線仿真執行,滿足其有效性原則。線路區間在下行正向的線路靜態速度全線為310 km/h,無其他臨時限速,從圖中可以看到各測試項的執行均滿足ATP限速要求;除去測試序列的仿真起止點外,該子測試序列共有6個停車點,包括K951+738、K956+342、K962+211、K964+174、K987+984以及K994+674,線路區間的分相區信息見表3,對比仿真制動停車點與分相區信息,可以知道各停車點距分相區均滿足安全距離,無掉進分相區的危險,因此各測試項滿足其安全性原則。其他子序列也可以進一步地推導出相同結果。數字向量的測試序列轉換為實際文本測試序列不屬于本文研究重點,不作進一步說明。

表3 下行區間分相區(公里標)
作為高速動車組的重要型式試驗之一,第三方評估認證的ATP車載設備接口型式試驗是我國高速鐵路技術體系的一部分。本文研究了專家人工編寫接口型式試驗測試序列過程中的測試序列生成與優化,為了解決其中的測試項的有效性、執行的安全性、整體的需求覆蓋等問題,量化地衡量測試序列的優化程度,提高測試序列編寫效率與接口型式試驗的執行效率,本文基于深度學習算法與遺傳算法設計了測試序列的優化生成策略,包括測試序列更新過程與測試序列優化過程。文章結合哈大高速鐵路CTCS3-300S型車載ATP設備與CRH380B型動車組某次接口型式試驗數據進行了仿真對比,說明了本文設計的策略的有效性。本文方法可為列控系統其他功能試驗的測試序列生成提供參考。
參考文獻:
[1] 程劍鋒,鄭升,趙顯瓊. ATP車載設備型式管理體系及方法研究[J].中國鐵路, 2013(10):43-46.
CHENG Jianfeng, ZHENG Sheng, ZHAO Xianqiong. Research on Type Management System and Means of ATP Onboard Equipment[J]. Chinese Railways, 2013(10):43-46.
[2] 張勇,王超琦.CTCS-3級列控系統車載設備測試序列優化生成方法[J].中國鐵道科學,2011,32(3):100-106.
ZHANG Yong, WANG Chaoqi. The Method for the Optimal Generation of Test Sequence for CTCS-3 On-board Equipment[J]. China Railway Science, 2011, 32(3):100-106.
[3] 梁茨,鄭偉,李開成,等.基于路徑優化算法的測試序列自動生成及驗證[J].鐵道學報,2013,35(6):53-58.
LIANG Ci, ZHENG Wei, LI Kaicheng, et al. Automated Generation of Test Cases and Sequences Based on Path Optimization Algorithm[J]. Journal of the China Railway Society, 2013,35(6):53-58.
[4] ZHANG Y, WANG S, ZHANG X K, et al. A Computer-aided Tool for Generating Test Sequence for CTCS-3 Train Control System[J]. Advances in Information Sciences & Service Sciences, 2012, 11(4):311-317.
[5] 甘慶鵬. ATP車載設備與動車組接口型式試驗測試序列的優化生成研究[D].北京:北京交通大學,2017.
[6] HINTON G E, OSINDERO S, TEH Y W. A Fast Learning Algorithm for Deep Belief Nets[J]. Neural Computation, 2006, 18(7):1527-1554.
[7] SCHMIDHUBER J. Deep Learning in Neural Networks: An Overview[J]. Neural Networks, 2014, 61:85-117.
[8] KAMYSHANSKA H, MEMISEVIC R. The Potential Energy of an Autoencoder[J]. IEEE Transactions on Pattern Analysis & Machine Intelligence, 2015, 37(6):1261-1273.
[9] OTHMAN E, BAZI Y, ALAJLAN N, et al. Using Convolutional Features and A Sparse Autoencoder for Land-use Scene Classification[J]. International Journal of Remote Sensing, 2016, 37(10):1977-1995.
[10] DREISEITL S, OHNO M L. Logistic Regression and Artificial Neural Network Classification Models: a Methodology Review[J]. Journal of Biomedical Informatics, 2002, 35(5/6):352-359.
[11] SCH?LKOPF B, PLATT J, HOFMANN T. Greedy Layer-wise Training of Deep Networks[C] //Proceedings of the Confenrence on Advances in Neural Information Processing Systems (NIPS2006). New York: MIT Press,2007:153-160.
[12] HECTNIELSEN B R. Theory of the Backpropagation Neural Network[J]. Neural Networks, 2010, 1(1):65-93.
[13] CHANG H. An Overview of Genetic Algorithm[J]. Computer Study, 2010, 55(6):1171-1177.
[14] WONG K K, HO T K. Dynamic Coast Control of Train Movement with Genetic Algorithm[J]. International Journal of Systems Science, 2004, 35(13):835-846.