張惠茹,賈利民,王 莉
(1.北京交通大學(xué) 軌道交通控制與安全國家重點實驗室,北京 100044; 2.北京交通大學(xué) 交通運輸學(xué)院,北京 100044;3.北京市城市交通信息智能感知與服務(wù)工程技術(shù)研究中心,北京 100044; 4.城市軌道交通系統(tǒng)安全與運維保障國家工程實驗室,廣東 廣州 510330)
隨著鐵路運營里程的不斷增長和運行速度的不斷提升,鐵路領(lǐng)域的可持續(xù)發(fā)展受到越來越多的關(guān)注,而節(jié)能駕駛是目前最直接的有效舉措。實際的列車操縱是一個能耗與時間相博弈的過程,即多目標(biāo)優(yōu)化問題。目前國內(nèi)外相關(guān)學(xué)者在列車節(jié)能駕駛模式和多目標(biāo)優(yōu)化等方面做了積極的探索。
文獻[1]最早研究了列車節(jié)能駕駛策略,并利用Pontryagin最大原則求解限速條件下的最優(yōu)控制問題;文獻[2]進一步推導(dǎo)出地鐵系統(tǒng)的最優(yōu)控制序列,不含勻速階段;文獻[3]利用Hamiltonian函數(shù)推導(dǎo)出勻速運行以及惰行點是列車節(jié)能的關(guān)鍵。以上文獻所述為擁有嚴(yán)謹(jǐn)理論推導(dǎo)的第一類方法,但需對列車、線路等條件進行簡化,而如果考慮實際運行環(huán)境引入復(fù)雜的非線性方程或約束,則問題的簡化會很困難。文獻[4]將基本的列車模型改寫為以動能和時間為狀態(tài)量的連續(xù)空間模型,并運用分段仿射近似為混合整數(shù)規(guī)劃求解。這種方法為第二類算法,即將原始問題轉(zhuǎn)化為數(shù)學(xué)優(yōu)化問題然后直接求解,但是該類方法建立在大量的假設(shè)基礎(chǔ)上,且對模型精度要求高。文獻[5]提出一種通過仿真分配列車富余時間以達到節(jié)能控制的方法;文獻[6]設(shè)計了一種基于啟發(fā)式遺傳算法的列車牽引運行算法。這兩種方法為結(jié)合仿真或進化算法的第三類方法,得益于計算機技術(shù)的發(fā)展,列車、線路、牽引模式等復(fù)雜的現(xiàn)實條件可以很容易地加入到模型中,從而得到更加符合實際情況的有效的駕駛模式。
對于所得的駕駛策略,除了賦予目標(biāo)不同權(quán)重得到一個最優(yōu)解[5],也可將列車節(jié)能駕駛抽象為多目標(biāo)優(yōu)化問題獲得一組解,而后者為鐵路管理者提供了可行的備選方案?;诘罔F列車自動駕駛系統(tǒng)提供的加速度、減速度、勻速度以及惰行速度的范圍,文獻[7]提出了一種多目標(biāo)粒子群優(yōu)化算法,并基于仿真得到了Pareto前沿。文獻[8]設(shè)計一種多目標(biāo)混合整數(shù)精英遺傳算法,在離散化軌道線路的基礎(chǔ)上,獲得了地鐵系統(tǒng)能耗與時間的Pareto曲線。文獻[9]針對高速鐵路系統(tǒng)的節(jié)能駕駛問題,設(shè)計了一種結(jié)合仿真的多目標(biāo)求解算法,但利用平均等效坡度對線路條件進行了較大程度的簡化
綜上,既有研究多以地鐵為研究對象,操縱策略較為簡單,且很少考慮實際的復(fù)雜線路條件;部分涉及高速鐵路的研究中,也往往將復(fù)雜的模型參數(shù)進行簡化處理,以便快速求得單一的列車運行操縱策略。本文在考慮高速鐵路實際線路條件基礎(chǔ)上,重點面向列車運行環(huán)境復(fù)雜多樣、易受不同程度的擾動,從而偏離基本計劃的現(xiàn)實問題,建立以能耗、時間為目標(biāo),以列車受力、區(qū)間限速等為約束的多目標(biāo)列車操縱優(yōu)化模型,同時設(shè)計復(fù)雜線路條件簡化方法以及改進NSGA-Ⅱ算法,并結(jié)合變步長仿真,實現(xiàn)多目標(biāo)節(jié)能駕駛曲線集的生成。該研究結(jié)果可針對不同運行條件提供豐富的列車節(jié)能操縱策略。
高速鐵路相鄰站間線路距離長,且線型條件復(fù)雜,包括頻繁變化的坡度、曲線、線路限速等。在進行牽引計算時,可以根據(jù)線路條件劃分計算區(qū)段,即一個計算區(qū)段內(nèi)線路條件相同。本文采用最大加速度加速、無制動調(diào)速,以及停車前最大減速度制動三種節(jié)能策略[10]。其中,在加速階段使用最大加速度、制動階段使用最大減速度已經(jīng)被證明是有效的節(jié)能策略[1]??紤]到制動過程將造成能耗浪費,節(jié)能駕駛策略應(yīng)盡量避免非必要的制動,因此采用無制動調(diào)速,即在非停車計算區(qū)段,列車采用牽引或惰行工況調(diào)節(jié)速度的策略。
如圖1所示,根據(jù)坡度、曲線和限速條件,線路分為4個計算區(qū)段(Seg1—Seg4),由相鄰計算區(qū)段的速度連續(xù)關(guān)系,即可得到整個區(qū)間的速度-距離曲線,而列車節(jié)能的關(guān)鍵在于不同計算區(qū)段內(nèi)駕駛策略的選擇。
圖1 一種節(jié)能駕駛的速度-距離曲線示意
基于列車運行特性及本文所采用的節(jié)能策略,在滿足受力、速度、距離等約束條件下,建立多目標(biāo)優(yōu)化模型。
為方便描述問題,作以下假設(shè):
(1)列車為有質(zhì)量的質(zhì)點,非勻速運動時需考慮牽引回轉(zhuǎn)系數(shù)。
(2)車站抽象為節(jié)點,區(qū)間線路抽象為弧。
(3)列車可以輸出當(dāng)前速度下不大于最大牽引力的任意大小的牽引力。
文中主要參數(shù)定義及變量說明見表1。
表1 主要參數(shù)定義及變量說明
目標(biāo)函數(shù)為能耗和時間總體最優(yōu),即
minf(X)=(fe(X),ft(X))
(1)
式中:f(X)為總的優(yōu)化目標(biāo);fe(X)為列車消耗的能量;ft(X)為運行所需的時間(X的求解方法將在下一節(jié)展開)。這里以s為自變量建立模型。其中,
(2)
受到以下條件約束:
(3)
Fr=μ+κ·v+γ·v2
(4)
Fg≈M·g·θ
(5)
(6)
式中:μ,κ和γ為戴維斯公式中的相關(guān)參數(shù);g為重力加速度;θ為線路坡度;A為一個經(jīng)驗常數(shù);R為線路的半徑;Ltrain和Lline分別為列車和曲線的長度。
約束式(3)~式(6)為列車運行過程中的受力約束。
(7)
(8)
考慮到實際線路距離長且線型條件變化頻繁,直接劃分的計算區(qū)段數(shù)目太多將消耗較大的計算資源,因此提出一種計算區(qū)段簡化方法。同時針對基本NSGA-Ⅱ算法收斂速度慢、解分布不夠均勻的問題,設(shè)計一種以計算區(qū)段目標(biāo)速度為自變量的改進NSGA-Ⅱ算法,并基于變步長仿真獲得解所對應(yīng)的能耗與時間值。
由式(4)~式(6)可知,隨著列車速度的增加,F(xiàn)r成為影響運行的主要阻力,因此本文僅對列車速度較大的計算區(qū)段進行簡化。
(3)加算坡度。針對{p,…,k,…,q},根據(jù)TB/T 1407—1998《列車牽引計算規(guī)程》[11],將曲線附加阻力換算為折算坡度ic,合并相近坡度得化簡坡度ig,則加算坡度iall=ic+ig。
(4)根據(jù)iall重新劃分計算區(qū)段。從計算區(qū)段p開始,把相同iall的線路劃分為一個計算區(qū)段,iall值發(fā)生改變,則進入下一個計算區(qū)段,依此類推,直到計算區(qū)段q停止。
(3)如果與制動曲線相交,則根據(jù)制動曲線操縱。
為了加快仿真速度,采用100、10、1 m變步長仿真。計算距離數(shù)組tag,如果區(qū)間距離為12 345 m,則tag=[123,4,5]。
Step1初始化:令步長ds=100,累計距離l=0,索引i=0,(s,t,E)=(0, 0, 0);輸入速度v,距離數(shù)組tag。
Step2Do:
Fori=0 to 2
Do Whiles s=s+ds v1=(v2+ 2 ·a·ds)0.5 t=t+ (v1-v) /a v=v1 E=E+Ff·ds EndIf tag[i+1]=10 s=s-ds break EndIf break EndIf EndWhile ds=ds/10 l=s EndFor Step3Ifl Step4以速度v運行剩下的距離,轉(zhuǎn)Step 5。 Step5輸出(v,s,t,E) 其中,F(xiàn)all為附加阻力。 對于惰行過程 a=-(Fr+Fall)/(1+ρ)·M (9) 制動過程 a=-(Fb+Fr+Fall)/(1+ρ)·M (10) 由此即可獲得X操縱策略下列車消耗的能量與時間值。 將差分進化算法作為交叉算子,同時設(shè)計一種三點擁擠距離算子,通過改進NSGA-Ⅱ算法迭代獲得能耗-時間Pareto最優(yōu)的X集合。 (11) 式中:β是控制參數(shù)。 判斷解的優(yōu)劣包括兩步:①通過非支配排序計算支配等級,等級越低越優(yōu);②同等級,則計算擁擠距離為D。 (12) 以京滬線北京南—廊坊、廊坊—天津南2個區(qū)間進行算例研究。線路、車輛等相關(guān)數(shù)據(jù)由項目調(diào)研得到。同時,根據(jù)現(xiàn)場經(jīng)驗,在計算牽引力時,乘一個牽引力使用系數(shù),見表2。使用Python工具,在64位Windows操作系統(tǒng)上實現(xiàn)高速鐵路列車節(jié)能駕駛曲線集的生成。 表2 相關(guān)參數(shù)與值 通過化簡,北京南—廊坊段計算區(qū)段從88個(見圖2(a))減少為33個(見圖2(b)),僅占原區(qū)段數(shù)目的37.5%。其中簡化后最長計算區(qū)段5.10 km,最短0.85 km,平均1.79 km。需要說明的是,因為部分曲線值遠大于限速與坡度值,圖2(a)中曲線值除以200以便顯示。 圖2 簡化前后線路條件對比 最短時間條件下簡化前后的駕駛曲線對比見圖3。簡化前采用1 m的步長精確仿真,可以看出,2條曲線基本重合。在20 km附近,簡化后藍色實線略滯后于紅色實線,是因為相近的線路被合并,而限速取其中較小的值,所以藍色線保持270 km/h限速運行一段距離,才被允許加速。簡化前能耗9.29×109J,簡化后為9.28×109J,誤差僅占簡化前的0.07%。簡化前計算時間為23.32 s,簡化后時間為1.52 s,計算速度約為原計算方式的15倍。 圖3 簡化前后最短時間條件下速度-距離曲線 在最短時間條件下運行時,列車能耗最高,但是可以最快地彌補延誤。下面選擇一種時間較為充足,列車可以采用惰行操縱的情況,進一步對比簡化前后仿真的結(jié)果。 簡化前后T=1 220 S條件下速度-距離曲線見圖4。由圖4可見,2條曲線整體趨勢基本相同,在10~20 km范圍偏差較明顯,這是因為簡化前后的線型條件對應(yīng)了不同的最優(yōu)操縱策略。簡化前后能耗分別為4.17×109、4.18×109J,相對誤差為0.09%;計算時間分別為15.06、1.36 s,計算速度是原計算方式的11倍。 圖4 簡化前后T=1 220 s條件下速度-距離曲線 通過兩種時間條件下仿真結(jié)果的對比可知,簡化后能耗誤差較小,而計算效率大大提升,說明了簡化方法的有效性。下面的計算都將在簡化線路的基礎(chǔ)上進行。 分別用基本NSGA-Ⅱ算法和改進NSGA-Ⅱ算法,計算北京南-廊坊段的Pareto曲線,見圖5。圖5(a)為基本NSGA-Ⅱ算法所得的不同迭代次數(shù)條件下的能耗-時間Pareto曲線,其中第30代到50代產(chǎn)生了較多重復(fù)的解,第50代仍未完全收斂且解的分布非常不均勻。圖5(b)為改進NSGA-Ⅱ算法的Pareto曲線,從第30代開始,基本趨勢已經(jīng)比較明顯,至第50代新生成的解仍在趨勢內(nèi),因此,我們認為此時已完全收斂。相比傳統(tǒng)算法,改進NSGA-Ⅱ的收斂速度更快、解的分布更均勻。 圖5 兩種方法不同迭代次數(shù)的Pareto曲線 為了進一步分析能耗-時間的數(shù)值關(guān)系,利用matlab中的fit函數(shù)擬合所獲得的Pareto曲線。Pareto曲線擬合見圖6。 圖6 Pareto曲線擬合 綜合比較,六階擬合效果最佳,曲線擬合方程為 f1=p1·x6+p2·x5+p3·x4+p4·x3+ p5·x2+p6·x+p7 (13) 式中:p1、p2、p3、p4、p5、p6、p7為系數(shù)。 曲線擬合方程系數(shù)見表3。 表3 北京南—廊坊段曲線擬合方程系數(shù) 同理,獲得廊坊—天津南段的Pareto曲線,五階擬合效果最佳,曲線擬合方程為 f2=p1·x5+p2·x4+p3·x3+ p4·x2+p5·x+p6 (14) 曲線擬合方程系數(shù)見表4。 表4 廊坊—天津南段曲線擬合方程系數(shù) 假設(shè)列車從北京南站始發(fā),經(jīng)停廊坊站,終到天津南站。北京南—廊坊段最小運行時間、計劃運行時間、最大運行時間分別為16、21、24 min;廊坊—天津南段分別為15、18、24 min。假設(shè)列車因擾動始發(fā)晚點5 min。現(xiàn)采用兩種策略:①在北京南—廊坊段以最高速度彌補晚點;②保證終到時間不變,利用Pareto曲線尋找可替代節(jié)能策略。兩種策略條件下的速度-距離曲線見圖7。 圖7 兩種策略條件下的速度-距離曲線 策略1:該策略條件下總能耗為1.78×1010J,總運行時間為34 min。因未獲得列車在實際運行條件下的速度-距離曲線,故廊坊—天津南段采用本文提出的對應(yīng)時間條件下的最優(yōu)駕駛曲線。 策略2:根據(jù)獲得的能耗-時間擬合方程,建立數(shù)學(xué)模型為 minz=f1(x1)+f2(x2) s.t.x1+x2=34 16≤x1≤24 15≤x2≤24 (15) 通過求解獲得,當(dāng)x1=1 013 s,x2=1 027 s時,線路總能耗為1.66×1010J。 對比兩種策略可得:①策略2比策略1節(jié)能7.1%;②策略2中列車在2個區(qū)間速度分布更加均衡;③兩種策略總的運行時間相同,且到達終到站時間均無延誤。 針對高速鐵路線路距離長、線型條件變化頻繁,以及列車運行易受擾動偏離基本計劃的特點,本文提出了一種高速鐵路列車節(jié)能駕駛曲線集生成方法,通過簡化復(fù)雜線路條件,在保證結(jié)果準(zhǔn)確性的同時提高了計算速度;設(shè)計了一種多目標(biāo)求解算法,基于變步長仿真獲得解所對應(yīng)的目標(biāo)值;生成一組能耗-時間平衡的Pareto解集,既可以面向常規(guī)條件下的列車節(jié)能操縱的優(yōu)化,也可以處理特殊條件下的列車節(jié)能調(diào)度。通過以上工作得出以下結(jié)論: (1)本文采用的簡化頻繁變化線路條件的方法,計算區(qū)段縮減為原來的37.5%。 (2)以各計算區(qū)段目標(biāo)速度為決策變量,運用變步長仿真法,實例顯示,誤差僅占簡化前逐步精確仿真的0.07%~0.09%,而計算速度是原計算方式的11~15倍。 (3)本文提出的結(jié)合差分進化算法和新?lián)頂D距離算子的改進NSGA-Ⅱ算法,收斂速度更快,且解的分布性更好,實例中在第30代收斂趨勢明顯,第50代已完全收斂。 (4)通過fit函數(shù)獲得不同區(qū)間Pareto前沿的擬合曲線,在擾動發(fā)生條件下,較最高速度彌補晚點節(jié)能7.1%,為鐵路管理者提供了不同運行條件下的節(jié)能備選方案,也為節(jié)能時刻表的優(yōu)化奠定了基礎(chǔ)。3.3 改進NSGA-Ⅱ算法
4 算例研究
4.1 線路簡化有效性證明
4.2 單區(qū)間Pareto曲線
4.3 多區(qū)間擾動情況下節(jié)能駕駛
5 結(jié)論