楊 輝,王 禹,李中奇,付雅婷,譚 暢
(華東交通大學(xué)電氣與自動化工程學(xué)院,江西南昌 330013;江西省先進(jìn)控制與優(yōu)化重點實驗室,江西南昌 330013)
目前為止中國鐵路電氣化里程已超過10萬公里.作為貨運專線鐵路的頂級種類,重載鐵路是大宗商品的運輸?shù)闹匾?從大同出發(fā)到秦皇島的大秦鐵路更被譽為能源運輸?shù)拇髣用}.由于重載列車牽引質(zhì)量大、編組長和線路復(fù)雜等特點,如何安全、穩(wěn)定的控制列車運行得到了廣泛的研究.目前研究列車智能駕駛的主流方法主要有經(jīng)典智能決策算法、監(jiān)督學(xué)習(xí)決策算法和強化學(xué)習(xí)決策算法.
在經(jīng)典智能決策算法的思想中,多數(shù)是按照設(shè)計行駛曲線結(jié)合控制算法對列車進(jìn)行控制.ZHANG等[1]以帶有電控空氣制動系統(tǒng)的重載列車為研究對象,優(yōu)化重載列車的空電聯(lián)合制動為目標(biāo),考慮列車安全、高效和節(jié)能因素,建立并優(yōu)化了列車多質(zhì)點模型,提出了長遠(yuǎn)距離運輸?shù)哪P皖A(yù)測控制方法.TANG[2-3]使用魯棒控制器,針對高速列車的非線性,列車質(zhì)量、參數(shù)的不確定性等問題,進(jìn)行速度跟蹤控制使列車平穩(wěn)運行.何之煜[4]利用基于迭代學(xué)習(xí)控制的自適應(yīng)控制算法研究了高速列車在時變擾動情況下的追蹤控制,得到跟蹤精度高、收斂速度快的控制效果.
在監(jiān)督學(xué)習(xí)決策算法的研究中,王悉在文獻(xiàn)[5-6]中對數(shù)據(jù)不平衡下的重載列車智能操控的研究,利用EasyEnsemble的思想對數(shù)據(jù)樣本進(jìn)行隨機欠抽樣,再使用(K-nearest neighbor,KNN)算法對數(shù)據(jù)進(jìn)行降噪處理,使重載列車能夠在缺少足夠類型的樣本數(shù)據(jù)的情況下對列車進(jìn)行穩(wěn)定操控,掌握真實行駛數(shù)據(jù)情況下,能夠使機器學(xué)習(xí)的算法更加可靠,減少因缺少數(shù)據(jù)產(chǎn)生的偏差.
在強化許學(xué)習(xí)決策算法的研究中,WANG[7]利用Q學(xué)習(xí)方法對多質(zhì)點的重載列車在大下坡的情況下進(jìn)行了訓(xùn)練,并在固定容量的Q表下對計算消耗進(jìn)行了優(yōu)化,完成了其最小化縱向車鉤力,準(zhǔn)時和安全的目標(biāo);TANG[8]利用雙Q表切換策略對重載列車進(jìn)行控制,根據(jù)Q學(xué)習(xí)離散的控制特性,可以適用于不同檔位的情況;張淼[9-10]分別提供了一種基于策略梯度和Q學(xué)習(xí)的強化學(xué)習(xí)方法,通過專家經(jīng)驗對高速列車運行環(huán)境約束,達(dá)到節(jié)能、準(zhǔn)點運行的目標(biāo).
上述研究使用不同的優(yōu)化控制方法從多個方面對列車控制進(jìn)行優(yōu)化,強化學(xué)習(xí)中的策略梯度算法為在線策略,對歷史的運行數(shù)據(jù)的利用率低,智能體獲得的獎勵收斂會相對較慢.上述文獻(xiàn)中的控制對象HXD3機車的控制力給定為調(diào)整檔位,是離散的動作空間,Q學(xué)習(xí)的方法能夠訓(xùn)練出較好的控制策略,而HXD1機車的控制力為給定當(dāng)前控制力的百分比,是連續(xù)的動作,使用Q學(xué)習(xí)的方法無法給出精度較高的控制策略.
針對強化學(xué)習(xí)在線與離線策略的問題,最大熵框架提供了一類能夠高效穩(wěn)定訓(xùn)練的算法[11],本文采用具有穩(wěn)定的訓(xùn)練過程、能在連續(xù)動作空間上訓(xùn)練并有效利用智能體經(jīng)驗數(shù)據(jù)的(soft actor-critic,SAC)算法[12]架構(gòu),結(jié)合鉤緩約束和常用空氣制動,對多質(zhì)點重載列車模型的運行劃分成啟動牽引、巡航、停車制動3個工況,分別訓(xùn)練,并加以專家經(jīng)驗對強化學(xué)習(xí)過程進(jìn)行監(jiān)督,得到最優(yōu)的重載列車控制策略.控制的效果滿足安全、穩(wěn)定、高效的要求.
通過對重載列車進(jìn)行機理建模,搭建出重載列車的運動學(xué)模型和車鉤力計算方法.模型搭建完成后將作為強化學(xué)習(xí)的環(huán)境的一部分,支持后續(xù)控制器的訓(xùn)練.下面對重載列車運動學(xué)建模過程進(jìn)行詳細(xì)介紹.
單元萬噸重載列車由一輛重載機車在頭部牽引,后方通過車鉤連接掛載105輛貨運車輛組成,列車動力單元集中在頭部機車.圖1為列車的機車與貨車在上坡時的受力情況,可得重載列車的縱向動力學(xué)方程為
圖1 多質(zhì)點列車受力示意圖Fig.1 Schematic diagram of multi-mass train force
其中:mi為第i輛車的質(zhì)量;為第i輛車的加速度;FT為機車牽引力;Fe為機車電制動力;Fi?1為前車鉤力;Fi+1為后車鉤力;Fpne為空氣制動力;Fw為車輛運行基本阻力;FR為列車的附加阻力,并且列車的附加阻力由線路彎道附加的彎道阻力、線路坡度造成的坡度阻力和列車通過隧道時的阻力構(gòu)成,表達(dá)式為
其中:FRc為曲線附加阻力,FRi為坡道附加阻力,FRt為隧道阻力.
HXD1型機車牽引制動特性受到機車黏著力和牽引電機功率聯(lián)合限制,其牽引制動特性曲線呈現(xiàn)分段式變化,最大牽引/制動特性式分別為式(3)-(4).其牽引制動的上限是設(shè)計控制器所需的重要約束,牽引特性與制動特性分別為
其中v表示列車的速度km/h.
為了計算多質(zhì)點受力式(1)中的車鉤力大小,需要對重載列車的鉤緩裝置進(jìn)行建模.根據(jù)文獻(xiàn)[13]中研究的緩沖器特性對縱向沖動的影響,精確描述緩沖器的模型有重要意義.本文參考付雅婷[14]的鉤緩裝置建模過程,使用考慮鉤緩切換速度的重載列車鉤緩裝置模型計算每節(jié)列車間的車鉤力大小.車鉤緩沖器的數(shù)學(xué)特性通過式(5)-(6)表示.
式中:FC為通過鉤緩特性計算出的車鉤力,其值便用作式(1)中Fi?1與Fi+1;fu為加載時緩沖器的阻抗力;fl為卸載時緩沖器的阻抗力;f3為緩沖器阻抗力均值;Δv為相鄰兩車速度差;Δx為相鄰兩車的運行距離差;ve為緩沖器轉(zhuǎn)換速度.
為了計算多質(zhì)點受力式(1)中的空氣制動力Fpne大小,需要對重載列車空氣制動系統(tǒng)進(jìn)行建模.重載列車空氣制動系統(tǒng)由牽引機車的總風(fēng)缸、列車管與貨車上的副風(fēng)缸等機構(gòu)構(gòu)成.當(dāng)重載列車發(fā)出空氣制動信號時,總風(fēng)缸與連通的列車管內(nèi)的壓縮空氣向大氣排出一部分,當(dāng)列車管內(nèi)氣壓降低時,置于貨車上的副風(fēng)缸和列車管形成壓力差,將貨車上的閘瓦壓擠壓向輪轂產(chǎn)生制動力,此過程稱為列車空氣制動.當(dāng)不需要制動時,位于機車上的空氣壓縮機向總風(fēng)缸內(nèi)充氣,提升列車管內(nèi)的氣壓,將副風(fēng)缸與列車管的氣壓差逐漸降至零,此過程稱為空氣制動的緩解.
根據(jù)《列車制動》[15]內(nèi)容,列車常用制動的計算式為
本文只考慮常用空氣制動,故Fpne=bc,其中βc為常用制動系數(shù),表1給出了部分常用制動系數(shù),bc為列車單位制動力,φh為換算摩擦系數(shù),?h為列車的制動率,b為緊急制動力.
表1 部分常用空氣制動系數(shù)Table 1 Partial common air brake coefficent
大秦線上的重載列車采用高摩合成閘瓦,換算摩擦系數(shù)為
為了計算出每個時刻的車輛受力,需要對多質(zhì)點的速度與位移進(jìn)行更新.重載列車對算法的實時性有較高的要求,設(shè)計控制算法要求算法能夠在160 ms內(nèi)迭代更新一次.本文采用翟方法[16]顯示數(shù)值積分算法對列車非線性動力學(xué)方程(1)進(jìn)行迭代運算,計算每個質(zhì)點當(dāng)前的速度與位置:將160 ms等分成100個小步驟進(jìn)行迭代積分,滿足毫秒級的計算時間與高精度要求.翟方法更新速度與位置如式(9)所示:
式中:Xn+1為車輛下一時刻位移量,Xn為車輛當(dāng)前時刻位移量,Vn+1為車輛下一時刻速度量,Vn為車輛當(dāng)前時刻速度量,An為車輛當(dāng)前時刻加速度量,An?1為車輛上一時刻加速度量,Δt為時間積分步長,下標(biāo)n ?1,n,n+1分別代表上一步t=(n ?1)Δt時刻,當(dāng)前t=nΔt時刻,下一步t=(n+1)Δt;ψ,φ是控制積分方法特性的獨立參數(shù).
為簡化控制模型設(shè)計,本文使用無模型的強化學(xué)習(xí)方法訓(xùn)練列車控制器.另外,為了讓強化學(xué)習(xí)訓(xùn)練的更加快速穩(wěn)定,本文通過克隆專家行為對強化學(xué)習(xí)的訓(xùn)練過程進(jìn)行監(jiān)督.下面對專家行為克隆和列車控制器的訓(xùn)練進(jìn)行詳細(xì)闡述.
行為克隆是模仿學(xué)習(xí)中最簡單的一種方法,利用神經(jīng)網(wǎng)絡(luò)將環(huán)境狀態(tài)到動作的映射學(xué)習(xí)出來,把狀態(tài)作為特征,動作作為被預(yù)測的值.由于重載列車具有非馬爾可夫特性,本文采用循環(huán)神經(jīng)網(wǎng)絡(luò)對專家行為進(jìn)行克隆.
循環(huán)神經(jīng)網(wǎng)絡(luò)(recurrent neural network,RNN)是一個具有時間動態(tài)行為的神經(jīng)網(wǎng)絡(luò).在重載列車人工控制時,列車乘務(wù)員在駕駛列車時的手柄給定位置具有明顯的時間動態(tài)過程.采用RNN網(wǎng)絡(luò)結(jié)構(gòu)對乘務(wù)員操作數(shù)據(jù)進(jìn)行學(xué)習(xí),意從經(jīng)驗控制數(shù)據(jù)中學(xué)習(xí)到某段區(qū)域的牽引制動時機以及控制力給定大小.通過訓(xùn)練出符合駕駛員操作習(xí)慣的RNN網(wǎng)絡(luò)作為指導(dǎo)專家,用作強化學(xué)習(xí)控制網(wǎng)絡(luò)輸出的監(jiān)督,加速智能體的訓(xùn)練.
專家網(wǎng)絡(luò)的模型結(jié)構(gòu)為多輸入單輸出的RNN模型.根據(jù)專家經(jīng)驗,專家網(wǎng)絡(luò)輸入為最近50個時間步長(8 s)的列車狀態(tài)、動作序列,每個時間步的參數(shù)為當(dāng)前時刻列車的速度、位置,輸出為當(dāng)前時刻采取的動作.
本文采用SAC算法[13]架構(gòu),對重載列車控制器進(jìn)行訓(xùn)練.該算法是面向最大熵的強化學(xué)習(xí)開發(fā)的一種離線策略算法,本文的訓(xùn)練過程如圖2所示,主要由強化學(xué)習(xí)網(wǎng)絡(luò)、重載列車運行仿真環(huán)境和記憶庫組成.強化學(xué)習(xí)網(wǎng)絡(luò)利用列車當(dāng)前的狀態(tài)輸出控制指令,重載列車運行仿真環(huán)境由第2節(jié)介紹的重載列車機理模型構(gòu)成,仿真環(huán)境接受控制指令輸出列車的狀態(tài)以及獎勵作為下一時刻強化學(xué)習(xí)網(wǎng)絡(luò)控制器的輸入,并存入記憶庫中以供網(wǎng)絡(luò)學(xué)習(xí)時調(diào)用.在訓(xùn)練控制器參數(shù)時,通過從記憶庫中采樣數(shù)據(jù)分別輸入到強化學(xué)習(xí)網(wǎng)絡(luò)與專家網(wǎng)絡(luò)中,通過專家的輸出監(jiān)督強化學(xué)習(xí)網(wǎng)絡(luò)的學(xué)習(xí).
圖2 重載列車強化學(xué)習(xí)過程Fig.2 Reinforcement learning process of heavy haul train
SAC算法的最優(yōu)策略表達(dá)式由式(10)表示,描述了最優(yōu)策略跟獎勵與熵值之間的關(guān)系,最優(yōu)策略分為獎勵和熵正則化項,在訓(xùn)練初期的策略隨機,獲得的獎勵小,通過增加熵值可以探尋更好的策略;隨著獲得的獎勵變大,應(yīng)當(dāng)將熵值減小使好的策略能夠保持,直至訓(xùn)練末期,收獲最大的獎勵與最小熵,獲得穩(wěn)定的最優(yōu)策略.
其中r(st,at)為當(dāng)前重載列車運行狀態(tài)下采取控制指令的獎勵;H(π(·|st))=Ea~π(·|s)[?log(π(a|s))]表示動作的熵值,熵值前面的系數(shù)α為溫度系數(shù),控制著控制指令的隨機性,溫度系數(shù)α越大則控制指令越隨機,更有利于重載列車運行狀態(tài)空間的探索.每個時刻的狀態(tài)與動作組合在一起形成了一條軌跡,對該軌跡求最解大的期望就是期望得到的最優(yōu)策略.
強化學(xué)習(xí)中Critic網(wǎng)絡(luò)計算損失常用的是時間差分(temporal difference,TD)方法,該方法計算開銷小,且無需系統(tǒng)模型,網(wǎng)絡(luò)可在狀態(tài)和獎勵返回后立即更新.Critic網(wǎng)絡(luò)的損失由式(11)給出,其中TD學(xué)習(xí)表達(dá)式中的Qtarget中下一步的Q值在SAC算法中替換成了價值函數(shù).
其中:γ為折扣因子,為target critic網(wǎng)絡(luò)輸出的Q值減去熵值,target critic網(wǎng)絡(luò)和Critic網(wǎng)絡(luò)結(jié)構(gòu)相同,但是參數(shù)更新滯后Critic網(wǎng)絡(luò).SAC算法中有兩個Critic網(wǎng)絡(luò),在訓(xùn)練時選取最小的Q值作為Qθ(st,at),減少過估計.
本文采用兩種損失函數(shù)同時訓(xùn)練Actor網(wǎng)絡(luò):一種由Critic網(wǎng)絡(luò)輸出的價值對Actor網(wǎng)絡(luò)進(jìn)行訓(xùn)練,期望動作價值最大化;另一種由專家網(wǎng)絡(luò)在相同環(huán)境狀態(tài)下輸出動作,與Actor網(wǎng)絡(luò)輸出的動作的均方差損失來訓(xùn)練,以期訓(xùn)練出與專家相似的決策.
評判網(wǎng)絡(luò)對策略網(wǎng)絡(luò)的損失由式(12)給出,
其中:πφ是根據(jù)fφ隱式定義的,fφ(et;st)為重參數(shù)化后的控制指令,幫助網(wǎng)絡(luò)將誤差反向傳遞;是從固定分布(如球形高斯分布)中采樣的噪聲.
專家網(wǎng)絡(luò)對策略網(wǎng)絡(luò)的損失由式(13)給出
其中:μ(st)為專家網(wǎng)絡(luò)在當(dāng)前狀態(tài)st下輸出的控制指令;fφ(et;st)為控制網(wǎng)絡(luò)在狀態(tài)st下輸出的控制指令,通過計算二者的均方根誤差作為專家的監(jiān)督損失;D,π為狀態(tài)、策略的空間.
將評價網(wǎng)絡(luò)輸出對控制網(wǎng)絡(luò)的損失和專家網(wǎng)絡(luò)輸出對控制網(wǎng)絡(luò)輸出的損失乘上比例系數(shù)之和得到控制網(wǎng)絡(luò)的綜合損失,如式(14):
其中比例系數(shù)在智能體找到一條能夠完整完成任務(wù)的控制策略之后,將逐步遞減,以實現(xiàn)優(yōu)化目的.
溫度參數(shù)決定了熵的大小,在訓(xùn)練過程中需要自動調(diào)整溫度參數(shù)使模型可以穩(wěn)定訓(xùn)練,所以將溫度參數(shù)作為約束對象,當(dāng)作一個優(yōu)化問題:最大化期望收益的同時,保持策略的熵大于一個閾值.需要優(yōu)化的表達(dá)式如式(15)所示:
考慮到萬噸重載列車由一組車頭牽引著105輛貨運拖車組成,而且每一個訓(xùn)練周期都有多個狀態(tài)轉(zhuǎn)移的步驟.為簡化計算復(fù)雜度,本文狀態(tài)空間只包含速度與位置,表示為式(17)
其中:st為t時刻智能體所處的狀態(tài),vt,1表示t時刻頭部機車的速度,pt,1表示t時刻頭部機車所處的位置.分別表示速度的下限與上限,Pst,Pnd分別表示列車的起始位置與結(jié)束位置,限速根據(jù)路段和運行時間變化,列車的起始與終結(jié)位置則根據(jù)訓(xùn)練功能進(jìn)行調(diào)整.t=1,2,···,Ndone,Ndone為觸發(fā)了終止條件的時刻.
好的獎勵能夠幫助智能體學(xué)習(xí),稀疏的獎勵會使智能體在抵達(dá)目標(biāo)前無法獲得任何獎勵,加大訓(xùn)練難度,獎勵分布的方差太大也會使得策略梯度太大導(dǎo)致學(xué)習(xí)不平穩(wěn),將獎勵歸一化能夠有效提升學(xué)習(xí)效率.
雖然強化學(xué)習(xí)的本質(zhì)就是積累獎勵使獎勵最大化,獎勵的設(shè)置與要實現(xiàn)的目標(biāo)有很強的關(guān)聯(lián)性,負(fù)獎勵有利于有限步數(shù)內(nèi)快速結(jié)束該回合,正獎勵鼓勵智能體不斷累積獎勵以維持最高獎勵狀態(tài).
3.4.1 速度獎勵設(shè)計
智能體學(xué)習(xí)操控列車有兩種目標(biāo):在啟動至巡航階段,應(yīng)當(dāng)獲得正獎勵以累積獎勵值,鼓勵智能體將獎勵最大化;而在制動過程中操控的目標(biāo)是在安全操縱下停在指定地點,這時應(yīng)該將獎勵設(shè)計為負(fù)值,以期智能體快速達(dá)到目標(biāo)狀態(tài).本文將速度獎勵設(shè)計為式(18)
圖3 速度距離相關(guān)獎勵Fig.3 Speed-distance reward
圖3為機車速度、機車與下一個站點的距離有關(guān)獎勵的等高線圖,預(yù)設(shè)為距離終點2 km處速度上限開始下降,分界線右側(cè)為當(dāng)最高限速為80 km/h時,速度的獎勵距離終點2 km外啟動牽引和巡航工況的速度獎勵,紅色越深則獎勵值越大.
為加快算法的訓(xùn)練速度,對目標(biāo)探索空間進(jìn)行約束.參考TANG[8]的獎勵設(shè)置,給定了智能體探索的上限與下限.上限為機車滿級位運行的速度-位移曲線,下線為以初始40%牽引力,每隔200步遞減1‰的牽引力運行的速度-時間曲線,對超出期望探索范圍的狀態(tài)-動作進(jìn)行懲罰.
3.4.2 車鉤力獎勵設(shè)計
列車運行過程中,車鉤力應(yīng)當(dāng)在最大應(yīng)力極限范圍內(nèi)變化,以免造成脫鉤事故.為避免智能體一直施加最小的控制力,本文將車鉤力的獎勵函數(shù)進(jìn)行分段處理,在正常車鉤力范圍內(nèi)獎勵函數(shù)為定值,當(dāng)車鉤力大于1000時,車鉤力獎勵逐漸下降.最大車鉤力的獎勵rc構(gòu)造為式(21)
其中maxFc為整列車的最大車鉤力,車鉤力的獎勵是將最大車鉤力約束到[?1,1]的區(qū)間內(nèi).
3.4.3 控制力變化獎勵設(shè)計
車鉤力的約束僅在重載列車產(chǎn)生了較高的車鉤力時做出懲罰,為了能夠獲得一個更為平穩(wěn)的控制策略,本文對控制策略進(jìn)行了約束,如式(22):
其中:F為當(dāng)前控制力,F′為上一時刻的控制力,如果當(dāng)前控制力與上一時刻的控制力差值在50 kN以內(nèi),對智能體給出獎勵,否則懲罰智能體的該動作.
為了將上述獎勵函數(shù)都發(fā)揮作用,達(dá)成多目標(biāo)優(yōu)化的效果,將上述多個目標(biāo)的獎勵線性組合為單個目標(biāo)獎勵以方便目標(biāo)優(yōu)化.獎勵的形式為式(23)
參考DSQ方法控制重載列車[8]的獎勵參數(shù)分配,并且結(jié)合本文定義的獎勵對象,本文各獎勵參數(shù)分配分別為θ=[3 1 1 1 1.5].
在SAC算法中需要引入記憶庫存儲智能體經(jīng)驗數(shù)據(jù)來訓(xùn)練智能體.記憶庫的保存方式為(s,a,r,s′,done,period),保存與環(huán)境互動產(chǎn)生的當(dāng)前狀態(tài)、采取的動作、獲得的獎勵,下一時刻的狀態(tài)、回合終止標(biāo)志和每個動作狀態(tài)對應(yīng)的周期.
由于專家網(wǎng)絡(luò)輸入為時序結(jié)構(gòu),數(shù)據(jù)采樣需要做預(yù)處理,滿足采樣表示的準(zhǔn)確度.獲取記憶庫索引,并且初始化采樣計數(shù)器.在當(dāng)前索引基礎(chǔ)上遞歸向前收集數(shù)據(jù),若采樣計數(shù)器到達(dá)50時,則采樣結(jié)束;若采樣計數(shù)器為i(i <50)且到達(dá)該數(shù)據(jù)周期頭部,則在該采樣數(shù)據(jù)頭部在添加(50?i)個零,以補全50個數(shù)據(jù),以提供專家策略網(wǎng)絡(luò)輸入.
由于線路區(qū)段較長,訓(xùn)練全程的操縱計算的開銷非常大.本文將整個駕駛過程分為3種情況:啟動階段、巡航階段、制動階段,3段控制的位置為同一區(qū)間的連續(xù)3段分別為:24~44 km,44~83 km,83~88 km.通過在3個工況分別訓(xùn)練相應(yīng)的控制器,減少訓(xùn)練需要的計算消耗.
為得到一個具有魯棒性的預(yù)測模型,在專家經(jīng)驗數(shù)據(jù)中添加高斯噪聲,訓(xùn)練后的專家模型克隆效果如圖4所示.從圖中結(jié)果看,訓(xùn)練后的模型能夠很好的擬合專家操控策略.
圖4 RNN擬合專家控制效果Fig.4 RNN fitting expert control performance
表2中給出了對重載列車行為克隆之后的專家網(wǎng)絡(luò)與原始的專家經(jīng)驗之間的誤差.3個運行階段的控制力的誤差控制在3%以內(nèi),誤差最大僅有21.63 kN.對列車的控制來說,無特別影響.
表2 專家控制力擬合誤差Table 2 RNN fitting error of expert control force
為了使訓(xùn)練后的3種控制器能夠聯(lián)合使用,讓重載列車能夠完整的運行,本文在訓(xùn)練巡航和制動時將對列車初始速度在60~80 km/h的范圍內(nèi)進(jìn)行一個隨機初始化.本文SAC+EXPERT模型相關(guān)參數(shù)列于表3中.
表3 模型相關(guān)參數(shù)Table 3 Module reference parameters
根據(jù)圖5中3個階段訓(xùn)練獎勵變化的結(jié)果,可以看到在本文提出的SAC+EXPERT算法訓(xùn)練獲得的獎勵都高于SAC和DDPG兩種算法,在訓(xùn)練的穩(wěn)定性方面,通過多次在環(huán)境種迭代訓(xùn)練之后,本文的SAC+EXPERT算法訓(xùn)練的獎勵收斂的也都更加穩(wěn)定,波動較小.
圖5 各階段訓(xùn)練獎勵變化Fig.5 Reward evalution in three operation training
為了訓(xùn)練一個能夠進(jìn)行巡航制動切換的控制器,同時參考實際工程環(huán)境,本文選擇距離停車點5 km處作為制動階段的起始點來訓(xùn)練制動控制器,并設(shè)定重載列車停在終點300米以內(nèi)算作精準(zhǔn)停車.
圖6-8中的(a)圖為SAC+EXPERT和SAC兩種算法在啟動牽引、巡航控制、停車制動3種工況下控制后得到的速度-位移曲線與對應(yīng)的控制力曲線.通過上述3張圖可以看出本文提出算法訓(xùn)練出的控制器在3個階段的平均速度都比較高,3個階段的運行效率分別提高了16.75%,1.88%,11.18%,明顯的提高了重載列車的運行速度.在巡航工況下,本文方法訓(xùn)練出的智能體級位的變化更加平緩.在制動階段,停車位置距離目標(biāo)停車點300米以內(nèi),達(dá)到了預(yù)設(shè)的停車目標(biāo)區(qū)間.
圖6 啟動階段控制效果Fig.6 Performance of control in startup step
圖7 巡航階段控制效果Fig.7 Performance of control in cruise step
圖8 制動階段控制效果Fig.8 Performance of control in brake step
圖6-8中的(b)圖為啟動牽引、巡航控制、停車制動3種工況下的控制力變化曲線.用本文方法訓(xùn)練出的控制器在啟動和制動階段沒有出現(xiàn)明顯的抖動,訓(xùn)練出的控制器具有專家控制器的部分特征.巡航區(qū)間中受到專家監(jiān)督的SAC算法的控制器波動更小,控制更加穩(wěn)定.在制動階段,訓(xùn)練出的控制器能夠?qū)崿F(xiàn)通過電制動減速,并使用空氣制動輔助停車的操作方法.
最后,本文試驗了長大下坡路段的循環(huán)制動控制,效果如圖9所示.根據(jù)圖9(b)(c)(d)中的控制力、目標(biāo)管壓變化以及最大車鉤力曲線中,SAC 與SAC+EXPERT的運行效果均在車鉤最大承受范圍內(nèi),較為平穩(wěn)運行.在運行效率上結(jié)合圖9(a)中的速度變化曲線,帶專家監(jiān)督的SAC策略比SAC的策略高出4.33%.
圖9 長達(dá)下坡控制效果Fig.9 Performance of control in long downslope line
本文利用強化學(xué)習(xí)方法對重載列車自動駕駛進(jìn)行了研究,本文難點和創(chuàng)新主要圍繞以下問題:
1) 針對列車運行距離較長問題,本文通過將運行過程劃分為啟動、巡航、制動3個階段分別進(jìn)行訓(xùn)練來減少強化學(xué)習(xí)的學(xué)習(xí)時間.
2) 針對重載列車運行任務(wù)的訓(xùn)練時間長、參數(shù)多的問題,本文通過RNN網(wǎng)絡(luò)克隆專家經(jīng)驗,通過比對模型輸出與專家(RNN網(wǎng)絡(luò))輸出對SAC算法訓(xùn)練進(jìn)行約束,讓網(wǎng)絡(luò)能夠?qū)W習(xí)到一個可以完成任務(wù)的控制器,并在隨著訓(xùn)練進(jìn)行逐步減小專家監(jiān)督的比重來優(yōu)化控制器.
通過以上方法,本文訓(xùn)練出一個安全、平穩(wěn)、高效的重載列車運行控制器,并在最后,本文對長大下坡的情景進(jìn)行了實驗,得到一個能夠在長達(dá)下坡正常運行的循環(huán)制動策略.