樊 蔥 柏 赟 周雨鶴 汪 茜 文 晶
(北京交通大學(xué)綜合交通運輸大數(shù)據(jù)應(yīng)用技術(shù)交通運輸行業(yè)重點實驗室 北京100044)
由于牽引能耗增長導(dǎo)致總運營成本增加,高速鐵路牽引節(jié)能問題日益受到關(guān)注。優(yōu)化列車操縱方案可以在幾乎不增加投資的前提下降低高速列車牽引能耗,是一種經(jīng)濟可行的方法。
高速列車操縱與牽引、制動特性及線路條件有關(guān)。由于阻力和牽引力的非線性特征,列車操縱節(jié)能優(yōu)化是典型的非線性最優(yōu)控制問題。該類問題相對復(fù)雜,通常使用啟發(fā)式算法和數(shù)值方法求解[1]。其中,啟發(fā)式算法所得解僅為較優(yōu)解,無法在理論上證明其最優(yōu)性,數(shù)值方法可以求得最優(yōu)解,包括間接法、動態(tài)規(guī)劃和直接法[2]。
B.K.Ichikawa[3]首先采用基于極大值原理的間接法搜索以節(jié)能為目標(biāo)的列車最優(yōu)控制策略。I.P.Milory[4]指出最優(yōu)操縱策略包括牽引、惰行、制動3個階段。P.Howlett[5]發(fā)現(xiàn)平直道路上的節(jié)能方案為依次采用最大牽引、巡航、惰行和最大制動,這種方法被稱為“標(biāo)準(zhǔn)四階段法”。SCG研究所的學(xué)者們[6-8]對不同運行條件下列車最優(yōu)操縱問題進(jìn)行研究并證明最優(yōu)解的存在。針對高速鐵路列車,劉建強等[9]、王青元等[10]使用間接法證明并求解得到最優(yōu)節(jié)能操縱方案。
動態(tài)規(guī)劃和直接法較間接法計算效率更高,也被廣泛用于求解列車節(jié)能操縱方案。直接法分為控制參數(shù)化方法和控制-狀態(tài)參數(shù)化方法。Wang Y.等[11]和仲維鋒等[12]的研究分別說明動態(tài)規(guī)劃和控制參數(shù)化方法在線路長度較短的小規(guī)模案例上能取得較好結(jié)果。但動態(tài)規(guī)劃和控制參數(shù)化方法的計算時間極易受變量維度和約束條件數(shù)量影響,不適宜求解區(qū)間線路長且約束復(fù)雜的高速鐵路列車節(jié)能操縱問題,否則計算時間將顯著增加。
控制-狀態(tài)參數(shù)化方法中的偽譜法能夠有效處理各種約束,通過離散狀態(tài)變量避免了數(shù)值積分過程,計算速度較快[13]。偽譜法最初多應(yīng)用于航空領(lǐng)域,解決飛行器軌跡優(yōu)化等問題[14]。Wang Y.等[11]首次將高斯偽譜法應(yīng)用于求解列車節(jié)能操縱方案,并與動態(tài)規(guī)劃等算法的優(yōu)化結(jié)果進(jìn)行對比,證明了偽譜法能較快求得優(yōu)化效果最好的解。Wang P.等[15]考慮信號系統(tǒng)約束,使用高斯偽譜法求解運行調(diào)整后的列車最優(yōu)控制問題,也能在較短時間內(nèi)得到較好的優(yōu)化結(jié)果。
盡管既有研究在模型快速求解方面取得了一定突破,但現(xiàn)有文獻(xiàn)中的模型對于實際約束考慮不全面,如很少考慮列車過分相區(qū)的影響,而高速列車在分相區(qū)內(nèi)必須斷電惰行。麻存瑞等[16]基于標(biāo)準(zhǔn)四階段法考慮列車在分相區(qū)惰行的要求,采用遺傳算法求解定時節(jié)能操縱問題。雖然標(biāo)準(zhǔn)四階段法在一般情況下具有較好的節(jié)能效果,但其在巡航階段保持最大允許速度運行,不一定最適用于考慮分相區(qū)惰行的列車節(jié)能操縱。因此,有必要對考慮列車在分相區(qū)惰行的節(jié)能操縱方法進(jìn)行優(yōu)化。
本文以高速鐵路列車牽引能耗最小為優(yōu)化目標(biāo),建立考慮列車過分相區(qū)、曲線限速等實際約束的多階段最優(yōu)控制模型,使用GPOPS II(General Pseudospectral Optimal Control Software Version 5.0,以下簡稱“GPOPS”)求解,驗證求解列車節(jié)能操縱方案時考慮過分相區(qū)約束的必要性和本文模型的優(yōu)化效果。
高速列車最優(yōu)控制問題可以描述為在線路、運行時間等已知的前提下[17],從一類滿足約束的列車操縱方案中找出1個使列車從起點運行到終點過程中牽引能耗最小的方案。列車操縱方案通常包括牽引、巡航、惰行、制動工況,僅牽引、巡航工況可能使用牽引力從而產(chǎn)生牽引能耗。由于不同的操縱方案中各工況的使用情況不同,因此其所需能耗不同,在所有方案中必然存在1種使得列車牽引能耗最小的方案。
由于列車在站間運行的可選操縱方案數(shù)量眾多,為了縮小可行解的規(guī)模以提高求解效率,本文以水平位移s 作為自變量, 將運行區(qū)間劃分為多個階段。本文根據(jù)限速、坡道和分相區(qū)將區(qū)間劃分為R個階段,各階段的限速、坡道唯一,見圖1。
圖1 區(qū)間階段劃分示意圖Fig. 1 Phase division of a railway section
在任一階段r,除自變量水平位移s外,表征列車運行狀態(tài)的變量還有速度v 和時間t,記作狀態(tài)變量x(r)(s)=[x(r)1(s),x(r)2(s)]T=[v(r)(s),t(r)(s)]T。列車運行狀態(tài)變化的根本原因是列車通過輸出不同的牽引力F或制動力B改變受力情況,所以以F、B為控制變量,記作u(r)(s)=[u(r)1(s),u(r)2(s)]T=[F(r)(s),B(r)(s)]T。
高速列車運行過程中須采用惰行工況通過分相區(qū)。分相區(qū)是高速鐵路接觸網(wǎng)上用于隔絕不同相位的區(qū)域。隔絕不同相位的原因是電力系統(tǒng)采用3相交流電,而列車運行僅需要單相電,但如果僅從3相電網(wǎng)中的某一相取電,容易造成各相負(fù)荷失衡[18]。為解決這一問題,接觸網(wǎng)上每隔一段距離就轉(zhuǎn)換為從另1 相取電,并將換相區(qū)間設(shè)為無電區(qū)(分相區(qū))以防止發(fā)生短路。由于分相區(qū)為無電區(qū)間,列車在進(jìn)入分相區(qū)前必須斷電,且在分相區(qū)內(nèi)采用惰行工況運行。因此,不考慮列車在分相區(qū)惰行的操縱方案無法直接應(yīng)用到實際操縱中。
若要將不考慮分相區(qū)惰行模型求解的列車節(jié)能操縱方案應(yīng)用于實際,需對操縱方案進(jìn)行修改。例如,標(biāo)準(zhǔn)四階段法[5]未考慮分相區(qū)惰行,當(dāng)修改該方案使其在分相區(qū)惰行并在出分相區(qū)后重新牽引至原巡航速度,見圖2,則巡航轉(zhuǎn)惰行工況點位置較原方案推后(s1<s2)以滿足運行時分要求。這樣所得方案雖然可應(yīng)用于實際,但不一定是最節(jié)能的操縱方案,因此有必要直接在建模時考慮列車在分相區(qū)惰行的要求。
圖2 分相區(qū)惰行對列車操縱方案的影響示意圖Fig. 2 The impact of neutral zones on the train operation
在司機實際駕駛時,為確保列車運行安全,一般在列車車頭進(jìn)入分相區(qū)前和列車車尾離開分相區(qū)后一段時間(約10 s),列車都處于惰行工況。
針對考慮過分相區(qū)等實際約束的高速列車最優(yōu)控制問題,本文基于以下假設(shè)提出多階段最優(yōu)控制模型(multiple-phase optimal control model,MPOC)。
1) 通過對線路坡道進(jìn)行等效處理[19],將列車視為一個質(zhì)點進(jìn)行計算,不考慮相鄰車廂間作用力的影響。
2) 本文研究單列車節(jié)能操縱問題,不考慮前、后車對列車運行的影響。
模型的優(yōu)化目標(biāo)為最小化列車牽引能耗。
為求解列車運行最優(yōu)控制問題,首先要對列車運行行為進(jìn)行描述,建立列車運行模型。根據(jù)牛頓第二定律和微分關(guān)系,列車在階段r的運動過程可表示為速度與自變量s有關(guān)的導(dǎo)數(shù)。
式中:a,b,c為與列車類型有關(guān)的常量。
附加阻力通常來源于坡道、曲線,本文將曲線轉(zhuǎn)換為一個固定坡道并加到原坡道上,則附加阻力計算方法為
式中:g 為重力加速度,9.81 m/s2;i(s) 為位置s 處的加算坡度。
按照約束條件是否只要求在某一時間點得到滿足,可將其分為點約束和路徑約束2種。其中,點約束為只在某一時間點滿足的約束[20],由于運行區(qū)間起、終點的狀態(tài)變量是固定的,因此多階段最優(yōu)控制模型的點約束表示為
路徑約束是指在某個時間段都必須滿足的約束條件[21],見式(4)。列車從進(jìn)入分相區(qū)前到離開分相區(qū)后一段時間內(nèi)都須斷電惰行,屬于路徑約束。列車惰行時F和B均為0,因此列車過分相區(qū)約束可表示為
此外,還應(yīng)始終確保列車運行安全和乘客舒適。為保障安全,列車運行過程中速度不能超過限速
乘客乘車舒適度與列車速度變化有關(guān),速度變化率越大乘客產(chǎn)生不適的可能性越高,因此列車運行加、減速度不能超過給定值
式中:amax和amin分別為最大允許加、減速度,m/s2,通常按照規(guī)定取常數(shù)。
由于模型將列車運行區(qū)間劃分為多個階段,所以還需要通過一些條件對相鄰階段的操縱方案進(jìn)行連接,才能得到完整的操縱方案。根據(jù)線路和時間的連續(xù)性,對2個相鄰階段k和k+1,k終點與k+1起點的位置、狀態(tài)變量是相等的
由于列車運行狀況復(fù)雜,相鄰距離步長的控制變量可能發(fā)生突變。相較Gauss 偽譜法,這類解在某些相鄰步長內(nèi)變化較快的最優(yōu)控制問題能被自適應(yīng)Radau 偽譜法更高效、精確地求解[21]。因此,針對上述非線性多約束模型,本文選擇自適應(yīng)Radau 偽譜法[18](以下簡稱“偽譜法”)進(jìn)行求解,其基于求解器GPOPS[21]實現(xiàn)。
GPOPS是基于偽譜法的Matlab優(yōu)化工具,其具有固定的結(jié)構(gòu)。GPOPS通常包括主函數(shù)、性能指標(biāo)函數(shù)和微分代數(shù)方程函數(shù),對多階段模型,還應(yīng)指定連接方程函數(shù),本文模型與GPOPS各部分的對應(yīng)關(guān)系見圖3。
圖3 GPOPS結(jié)構(gòu)及與MPOC的對應(yīng)關(guān)系Fig. 3 Structure of GPOPS and the relation between GPOPS and MPOC
由于GPOPS 以列向量方式進(jìn)行計算以提高運算速度[21],所以還需將本文模型中的約束轉(zhuǎn)換為列向量形式。其中,式(2),式(3)表示為
此外,由于決策變量取值約束、限速約束和乘客舒適度約束都為路徑約束,這3 類約束可以合并表示為
偽譜法的基本原理為在[-1,1]上離散控制、狀態(tài)變量,再借助離散后變量將原問題(連續(xù)時間最優(yōu)控制問題)轉(zhuǎn)換為非線性規(guī)劃問題(nonlinear programming problem, NLP)進(jìn)行求解。所以偽譜法的關(guān)鍵步驟為離散變換和非線性規(guī)劃問題求解。
3.2.1 離散變換
根據(jù)利用偽譜法求解的基本原理可知,對多階段列車最優(yōu)控制問題進(jìn)行離散變換并轉(zhuǎn)換為1 個NLP問題可分為4步。
步驟1。將自變量的取值區(qū)間映射到[-1,1]上。
步驟2。對控制變量和狀態(tài)變量進(jìn)行近似。
步驟3。用新狀態(tài)變量近似列車運動方程。
步驟4。用新控制變量近似目標(biāo)函數(shù)。
首先對自變量s進(jìn)行變換將其映射到[-1,1]上。
式中:δ(r)為新的自變量且δ(r)∈[-1,1],其對s 的導(dǎo)數(shù)為
接著近似各階段r 的控制變量u(r)和狀態(tài)變量x(r)。偽譜法對變量進(jìn)行離散變換的基礎(chǔ)是插值法,即在某些點(配點)上構(gòu)造多項式表示連續(xù)變量[20]。在此用拉格朗日多項式近似x(δ(r)) 和u(δ(r))。
然后利用離散后的狀態(tài)變量,對列車運動方程進(jìn)行近似。式(23)對δ(r)求導(dǎo),得
接著結(jié)合式(21)和(25),將式(18)在LGR點上離散,即把列車運動方程轉(zhuǎn)換為代數(shù)方程。
最后,對目標(biāo)函數(shù)進(jìn)行近似。由于式(1)的右側(cè)為積分項,在此采用高斯積分公式近似目標(biāo)函數(shù)。
3.2.2 非線性規(guī)劃問題求解
由于NLP問題規(guī)模較大,為快速得到NLP問題的解,需要選擇求解能力強的數(shù)學(xué)規(guī)劃算法。序列二次規(guī)劃(sequence quadratic program,SQP)方法被公認(rèn)為求解復(fù)雜NLP 問題的優(yōu)秀算法之一[21],在GPOPS 中采用基于SQP 方法的SNOPT 求解器求解離散變換后的NLP問題。
求解NLP問題后,需對各個階段驗算相鄰網(wǎng)格點(配點)區(qū)間的計算精度是否滿足要求(最大誤差ε由用戶在GPOPS 主函數(shù)中輸入)。若誤差大于ε ,GPOPS將使用hp自適應(yīng)方法[21]更新網(wǎng)格,并在新的網(wǎng)格上再次進(jìn)行離散變換和求解NLP問題。
綜合以上,GPOPS基于偽譜法求解多階段最優(yōu)控制問題的流程圖見圖4。
圖4 GPOPS求解流程圖Fig. 4 Flowchart of GPOPS to solve the proposed model
具體步驟如下。
1) 輸入優(yōu)化模型,自動劃分初始網(wǎng)格。
2) 在給定網(wǎng)格下進(jìn)行離散變換,得到NLP 問題并求解。
3) 檢驗各階段相鄰網(wǎng)格點形成區(qū)間內(nèi)的點是否滿足最大誤差ε 。若滿足要求,輸出解;否則,執(zhí)行步驟4)。
4) 判斷ρ 是否小于曲率閾值ρmax(由用戶在GPOPS 的主函數(shù)中給定)。若是,說明曲線比較光滑,則增加插值多項式階數(shù),否則加密網(wǎng)格。更新后返回步驟2)。
選取武漢—廣州高速鐵路線路的3個區(qū)間進(jìn)行案例分析,列車采用CRH380A 型動車組。列車和線路參數(shù)分別見表1、表2,其中各區(qū)間線路高程和分相區(qū)位置見圖5。按照2.1 中的階段劃分原則,3個站間依次劃分為49,23和45個階段。
表1 列車參數(shù)Tab. 1 Train parameters
表2 線路參數(shù)Tab. 2 Line parameters
圖5 分相區(qū)位置及區(qū)間高程Fig. 5 Horizontal distances of neutral zones and elevations of sections
案例求解在i5-4200H CPU@2.8GHz 處理器,4GB 內(nèi)存計算機上的Matlab(R2018b)平臺上編程實現(xiàn),基于GPOPS 求解多階段最優(yōu)控制模型。其中,GPOPS中的最大誤差ε 取10-6,網(wǎng)格優(yōu)化的迭代次數(shù)為20次,其他參數(shù)使用默認(rèn)值。
經(jīng)理論分析可知,當(dāng)使用1.2所述方法修改列車節(jié)能操縱方案使之滿足分相區(qū)惰行要求,所得方案(MPOC-C)不一定最利于節(jié)能,有必要在模型中考慮分相區(qū)約束以最小化牽引能耗。為驗證這一必要性,以下將對比MPOC-C和本文模型(MPOC)所求操縱方案及能耗,證明在模型中考慮分相區(qū)約束所求操縱方案具有更好的節(jié)能效果。
由于MPOC-C 方案由不考慮分相區(qū)惰行的列車節(jié)能操縱方案(MPOC-N)修改得到,根據(jù)階段劃分原則,3個區(qū)間依次分為42,21和41個階段。使用GPOPS 求解得到不同區(qū)間上MPOC-N、MPOC-C和MPOC的能耗,結(jié)果見表3。
表3 MPOC-N,MPOC-C 和MPOC 能耗對比Tab. 3 Comparison of energy consumption between MPOC-N, MPOC-C and MPOC
由 表3 可 知:相 較MPOC-N,MPOC-C 和MPOC 求解能耗均增加,證明不考慮列車在分相區(qū)惰行的模型所求能耗可能偏低;另外,MPOC能耗小于MPOC-C,節(jié)能率可達(dá)4.9%,表明有必要在模型中考慮列車過分相區(qū)約束,更有利于節(jié)約列車能耗。
為進(jìn)一步分析MPOC 的節(jié)能原理,MPOC 和MPOC-C 在區(qū)間3 上的定時節(jié)能操縱方案、能耗變化見圖6。
圖6 區(qū)間3上MPOC-C與MPOC操縱方案與能耗Fig. 6 Train trajectory and energy consumption of MPOC-C and MPOC in section 3
由圖6可見:MPOC-C和MPOC的操縱方案在4個分相區(qū)均采用了惰行工況,滿足實際要求。相較MPOC-C,由于MPOC在模型中直接考慮了列車在分相區(qū)惰行約束,所求操縱方案采用更高的巡航速度,從而使得惰行位置提前,減小了列車為保持巡航工況而使用牽引力的時間,最終實現(xiàn)牽引能耗的節(jié)約。
本節(jié)將MPOC方法與司機人工操縱(采集自現(xiàn)場,EHD)、考慮分相區(qū)惰行的標(biāo)準(zhǔn)四階段方法[15](SFS)進(jìn)行對比,說明本文方法的優(yōu)化效果。SFS的操縱策略為采用最大牽引力牽引至允許速度(案例中為290 km/h)并保持該速度運行,再根據(jù)富余時分采用二分法搜索巡航轉(zhuǎn)惰行點以滿足定時約束,具體見文獻(xiàn)[16]。由于文獻(xiàn)[16]采用遺傳算法求解SFS模型,所得解不一定為最優(yōu)解,所以引入暴力搜索算法(步長為1 m)求SFS 模型的精確解,以保證比較的公平性。
司機操縱能耗和SFS、MPOC 的能耗結(jié)果見表4。可知相較司機人工駕駛,SFS 和MPOC 的操縱方案更加節(jié)能,且MPOC 在不同坡道(3 個區(qū)間)上都具有最好的節(jié)能效果。為說明MPOC 方法的節(jié)能原因,以區(qū)間1 為例,司機操縱方案和SFS,MPOC求解的節(jié)能操縱方案見圖7。
圖7 區(qū)間1上司機操縱方案和SFS、MPOC求解操縱方案(上圖)及能耗(下圖)對比Fig. 7 Train trajectory (upper plot) and energy consumption(lower plot)of EHD,SFS and MPOC in section 1
由圖7 可見:EHD 和SFS方案的巡航速度比較接近,但由于司機根據(jù)經(jīng)驗選擇的工況轉(zhuǎn)換點難以保證最優(yōu),EHD由巡航工況轉(zhuǎn)為惰行工況一段距離后,又進(jìn)行2次牽引導(dǎo)致能耗進(jìn)一步增加(見圖7中虛線矩形框)。相較SFS方案,MPOC方案采用更低的巡航速度,在列車出站牽引階段使用更少的能耗,且在巡航過程中列車所受基本阻力更小,降低了用于克服阻力做功所用牽引能耗。雖然為滿足運行時分要求,MPOC 方案的巡航轉(zhuǎn)惰行工況點較SFS 推后,但最終仍比SFS方案更加節(jié)能。結(jié)果表明MPOC考慮分相區(qū)、運行時分等采用最優(yōu)的巡航速度,所求操縱方案較EHD和SFS具有更好的節(jié)能效果。
表4 EHD,SFS 和MPOC 能耗對比Tab. 4 Comparison of energy consumption between EHD,SFS and MPOC
由于列車節(jié)能操縱方案受區(qū)間運行時分影響,為進(jìn)一步說明MPOC方法的通用性,對不同運行時分下MPOC 和SFS 的節(jié)能效果進(jìn)行研究。不同富余運行時分下MPOC較SFS的節(jié)能率見圖8。由圖可知,在不同線路條件、區(qū)間運行時分下,MPOC 能耗都不高于SFS,且富余時分較大時,MPOC的節(jié)能效果更好。這是因為當(dāng)富余時分較小時,為滿足運行時分要求,MPOC方案需采用較高的巡航速度,與SFS所求優(yōu)化方案類似。
圖8 MPOC較SFS節(jié)能率隨富余時分變化圖Fig. 8 Energy-saving effect of MPOC at different runtimes
此外,由于高速鐵路站間距大,精確求解高速列車定時節(jié)能操縱方案所需時間較長,為驗證MPOC方法求解的高效性,不同區(qū)間采用MPOC和SFS方法的求解時間見表5。結(jié)果表明MPOC方法的求解效率更高,尤其在區(qū)間長度較大時(區(qū)間1和區(qū)間3)節(jié)約的求解時間較多,宜用于求解區(qū)間長的高速鐵路列車節(jié)能操縱方案。
表5 MPOC 與SFS 求解時間對比Tab. 5 Computing time of MPOC and SFS s
1) 有必要在列車節(jié)能操縱模型中考慮列車過分相區(qū)約束,不僅符合現(xiàn)實操縱要求,而且直接在模型中考慮過分相區(qū)約束所得方案在節(jié)能方面的表現(xiàn)優(yōu)于“修改不考慮過分相區(qū)約束模型所得解”使其符合實際約束的方案。
2) 本文模型得到的操縱方案相較司機人工駕駛方案的區(qū)間平均節(jié)能率為10.8%,相較考慮過分相區(qū)的標(biāo)準(zhǔn)四階段模型所得操縱方案的區(qū)間平均節(jié)能率為4%且求解時間減少。
3) 由于列車實際運行還受到前、后車的影響,而本文研究問題為單列車節(jié)能操縱優(yōu)化,因此下一步將研究考慮過分相區(qū)約束的多列車操縱優(yōu)化。