黃江平,程紹榕
(華東交通大學(xué)電氣與自動(dòng)化工程學(xué)院,江西 南昌330013)
目前列車站間運(yùn)行主要由4 種狀態(tài)組成:牽引、惰行、巡航和制動(dòng);因此,列車運(yùn)行的節(jié)能優(yōu)化問(wèn)題,也通常被視為工況轉(zhuǎn)換點(diǎn)的求解問(wèn)題,盡可能在運(yùn)行規(guī)定時(shí)間內(nèi)減少牽引工況的能耗,逐漸成為軌道交通領(lǐng)域的主要研究方向。文獻(xiàn)[1]利用懲罰函數(shù)的方法提出了無(wú)約束的節(jié)能駕駛模型,但是算法收斂時(shí)間較長(zhǎng),優(yōu)化效果不是很明顯。 文獻(xiàn)[2]在懲罰函數(shù)的基礎(chǔ)上,利用粒子群算法代替遺傳算法進(jìn)行優(yōu)化,調(diào)試參數(shù)少,收斂速度有了明顯的提升,但是由于粒子群算法本身容易陷入局部最優(yōu),優(yōu)化效果提升的不明顯。文獻(xiàn)[3]在列車運(yùn)動(dòng)方程的基礎(chǔ)上,建立了列車牽引能耗的數(shù)學(xué)模型,構(gòu)建了列車工況和總效率之間的徑向基神經(jīng)網(wǎng)絡(luò)。文獻(xiàn)[4]根據(jù)列車的運(yùn)動(dòng)情況和牽引特性曲線,采用遺傳算法優(yōu)化列車動(dòng)車運(yùn)行的惰行控制點(diǎn)來(lái)達(dá)到降低能耗的目的。 列車運(yùn)行作為一個(gè)非線性,多拘束問(wèn)題,智能優(yōu)化算法在處理此類問(wèn)題上具有明顯優(yōu)勢(shì)。 目前應(yīng)用主要的智能優(yōu)化算法有粒子群算法和遺傳算法兩大類,而文獻(xiàn)[2]采用標(biāo)準(zhǔn)粒子群算法求取列車工況轉(zhuǎn)換點(diǎn),可能導(dǎo)致尋優(yōu)陷入局部最優(yōu)解和收斂速度慢的問(wèn)題。
為解決上述問(wèn)題,采用自適應(yīng)慣性權(quán)重,動(dòng)態(tài)學(xué)習(xí)因子,同時(shí)優(yōu)化速度更新公式的方法來(lái)求解列車工況轉(zhuǎn)換點(diǎn),通過(guò)改變慣性權(quán)重,平衡不同階段的搜索能力,同時(shí)加入可以自調(diào)整的學(xué)習(xí)因子,加強(qiáng)后期的運(yùn)算效率和搜索能力,速度更新公式通過(guò)加入一項(xiàng)“參考項(xiàng)”,而“參考項(xiàng)”的參數(shù)由輪盤賭選擇,從而避免不理想的粒子影響尋優(yōu)結(jié)果,有利于跳出局部最優(yōu)解。
通常情況下,列車站間運(yùn)行過(guò)程要按照規(guī)定的運(yùn)行時(shí)刻表運(yùn)行, 運(yùn)行時(shí)間和距離是固定的,由4 種工況組成:牽引,巡航,惰行,制動(dòng)[5]。 不同情況下,發(fā)動(dòng)機(jī)的耗能情況如表1 所示。
由上可知,要使列車實(shí)現(xiàn)能耗最少的目標(biāo),盡可能的縮短牽引過(guò)程和巡航過(guò)程的能耗,但是存在規(guī)定時(shí)間,同時(shí)列車運(yùn)行存在最高速度和最大加速度等限制,所以列車行駛的實(shí)際問(wèn)題,轉(zhuǎn)換為初始狀態(tài)和終止?fàn)顟B(tài)已知,在規(guī)定時(shí)間和速度限制范圍內(nèi),求取不同工況下最優(yōu)工況轉(zhuǎn)換點(diǎn)的問(wèn)題。
表1 列車不同工況的能耗Tab.1 Energy consumption under different operation modes for trains
列車運(yùn)行過(guò)程中,通過(guò)牛頓第二定律,得出運(yùn)動(dòng)學(xué)方程為
式中:v 為當(dāng)前速度;a 為當(dāng)前加速度;F(v)為當(dāng)前時(shí)刻列車速度所對(duì)應(yīng)的牽引力;B(v)為當(dāng)前時(shí)刻列車速度所對(duì)應(yīng)的制動(dòng)力;W0(v)為基本阻力;G(x)為坡度;M 為列車的總質(zhì)量。
列車牽引力和制動(dòng)力之間存在以下關(guān)系:
式中:μf為牽引力系數(shù);μb為制動(dòng)力系數(shù)。
另外,當(dāng)列車在站間運(yùn)行時(shí),若運(yùn)行總路程為S,運(yùn)行總時(shí)間為T。 則有
式中:v(0)為列車運(yùn)行初速度;v(S)為列車運(yùn)行末速度;t(0)為列車發(fā)車時(shí)刻;t(S)為列車到達(dá)終點(diǎn)時(shí)刻。而列車在運(yùn)行過(guò)程中,同時(shí)還要考慮乘客的舒適度和工況轉(zhuǎn)換方面的拘束問(wèn)題,故有
式中:alimit表示乘客可以接受的最大加(減)速度。
同時(shí)列車4 種工況間滿足一定的轉(zhuǎn)換規(guī)則,如表2 所示。
“Y”表示可以直接轉(zhuǎn)換,“N”表示禁止轉(zhuǎn)換。
由于惰行階段和制動(dòng)階段發(fā)動(dòng)機(jī)是不耗能的[6],所以主要在運(yùn)行過(guò)程中對(duì)牽引階段和巡航階段的發(fā)動(dòng)機(jī)能耗進(jìn)行分析。 同時(shí),站間運(yùn)行按照“牽引-巡航-惰行-制動(dòng)”的策略進(jìn)行運(yùn)行[7]。由于牽引力F 和速度v 的關(guān)系是根據(jù)列車特性曲線得出,并不可導(dǎo),在這里,采用離散化的思想,將列車運(yùn)行區(qū)間等距劃分為n(n=10)個(gè)區(qū)間,對(duì)動(dòng)力學(xué)模型進(jìn)行差分計(jì)算,取時(shí)間步長(zhǎng)Δt=1,設(shè)定4 種不同工況下每個(gè)時(shí)間步長(zhǎng)Δt 對(duì)應(yīng)的加速度分別為ai,ai′,ai″,ai?。 為了計(jì)算方便,采用延遲的思想,每一個(gè)時(shí)間步長(zhǎng)Δt 內(nèi)加速度恒定,且在4 種不同工況的情況下,第i 個(gè)時(shí)間步長(zhǎng)對(duì)應(yīng)的速度分別為vi,vi′,vi″,vi?,對(duì)應(yīng)合力分別為c1,c2,c3,c4;對(duì)應(yīng)的位移分別為si,si′,si″,si?。
根據(jù)牛頓第二定律,列車在牽引過(guò)程中單位時(shí)間步長(zhǎng)對(duì)應(yīng)的加速度ai計(jì)算公式如下:
表2 工況轉(zhuǎn)換拘束Tab.2 Constraints of operation mode transition
式中:f(v)為某一運(yùn)行速度下列車的牽引力;f0(v)為單位基本阻力;fw為因線路產(chǎn)生的附加阻力之和。
牽引過(guò)程中,速度與距離存在以下關(guān)系:
當(dāng)列車牽引到目標(biāo)速度時(shí),進(jìn)入巡航模式,巡航模式下,速度恒定,加速度為0,在巡航過(guò)程中單位時(shí)間
步長(zhǎng)對(duì)應(yīng)的加速度ai′計(jì)算公式如下:
巡航過(guò)程中,速度距離關(guān)系為
惰行工況下,無(wú)牽引力產(chǎn)生,單位時(shí)間步長(zhǎng)對(duì)應(yīng)的加速度ai″計(jì)算公式如下:
惰行過(guò)程中,速度距離關(guān)系為
惰行到某一時(shí)刻時(shí),列車進(jìn)入制動(dòng)狀態(tài),發(fā)動(dòng)機(jī)仍然不做功,列車在受到阻力的基礎(chǔ)上增加了制動(dòng)力,其單位時(shí)間步長(zhǎng)對(duì)應(yīng)的加速度ai?如下:
其中,fb表示列車的制動(dòng)力。 此時(shí)列車速度與距離的關(guān)系為
根據(jù)上述關(guān)系式,我們可以確定列車4 種工況下,速度、時(shí)間、運(yùn)行距離的關(guān)系。區(qū)間總路程為S,區(qū)間運(yùn)行總時(shí)間為T,牽引、巡航、惰行、制動(dòng)各自對(duì)應(yīng)的運(yùn)行距離為s1,s2,s3,s4。4 種工況對(duì)應(yīng)運(yùn)行時(shí)間為t1,t2,t3,t4,在拘束條件內(nèi),存在:
固定站間運(yùn)行總時(shí)間不變,由于發(fā)動(dòng)機(jī)在惰行過(guò)程和制動(dòng)過(guò)程中不做功,只需要計(jì)算牽引與巡航過(guò)程所做的功,尋找牽引與巡航能耗最小的工況轉(zhuǎn)換點(diǎn)。 又因?yàn)闋恳ψ龉綖?/p>
得到在第i 個(gè)時(shí)間步長(zhǎng)內(nèi)Δt 所對(duì)應(yīng)的牽引力f(vi)所做的功ΔEi為
將列車運(yùn)行過(guò)程中每一個(gè)時(shí)間步長(zhǎng)的牽引能耗進(jìn)行累加,得到發(fā)動(dòng)機(jī)能耗公式如下:
由此可確定列車運(yùn)行能耗運(yùn)行模型為
粒子群算法依靠不同粒子的相互作用尋找相關(guān)問(wèn)題在整個(gè)尋優(yōu)空間中的優(yōu)位置,即問(wèn)題的優(yōu)解。 在粒子群算法中,每個(gè)待解決的優(yōu)化問(wèn)題可能解都被視為搜索空間中存在的一個(gè)粒子。 粒子群中的所有粒子都被賦予一個(gè)由被優(yōu)化的函數(shù)確定的適應(yīng)度值(fitness value),每個(gè)粒子具有2 個(gè)屬性,即速度與位置。 在算法運(yùn)行過(guò)程中,所有粒子趨向當(dāng)前時(shí)刻的最優(yōu)粒子的位置,并試圖在可能空間中搜索全局優(yōu)解。
假設(shè)在一個(gè)N 維空間進(jìn)行搜索,粒子i 的信息可用2 個(gè)N 維向量來(lái)表示:第i 個(gè)粒子的位置可表示為xi=(xi1,xi2,…,xin)T,速度為vi=(vi1,vi2,…,vin)T。在找到2 個(gè)最優(yōu)解后,粒子即可根據(jù)式(18)來(lái)更新自己的速度和位置:
式中:c1,c2為學(xué)習(xí)因子, 合適的c1,c2既可以加快收斂速度, 又可以使結(jié)果不易陷入局部最優(yōu);r1,r2是介于[0,1]之間的隨機(jī)數(shù);k 為迭代次數(shù);ω 稱之為慣性權(quán)重,它是一個(gè)比例因子,較大的ω 可以加強(qiáng)PSO 的全局搜索能力,而較小的ω 則可以加強(qiáng)局部搜索能力,也就是說(shuō)ω 執(zhí)行了全局搜索和局部搜索的平衡角色。
在標(biāo)準(zhǔn)的粒子群算法中,使用最多的是線性慣性權(quán)重的方法,其特性為初期慣性權(quán)重大,有利于進(jìn)行全局搜索,后期慣性權(quán)重小,有利于局部尋優(yōu)。 它的關(guān)系式如下:
式中:k 為當(dāng)前迭代次數(shù);ωmax為最大慣性權(quán)重;ωmin為最小慣性權(quán)重;Tmax為最大迭代次數(shù)。
但是在非線性問(wèn)題的處理上,PSO 算法尋優(yōu)過(guò)程十分復(fù)雜,同時(shí)存在非線性的情況,單純依靠線性權(quán)重?zé)o法做到有效的調(diào)節(jié),仍然難以避免陷入局部最優(yōu)的情況,由此,在文獻(xiàn)[8]的基礎(chǔ)上加以改進(jìn),設(shè)計(jì)了一種自適應(yīng)慣性權(quán)重,其組合表達(dá)式如式(20)~(22)所示:
學(xué)習(xí)因子c1,c2分別決定了粒子個(gè)體經(jīng)驗(yàn)和群體經(jīng)驗(yàn)對(duì)粒子運(yùn)行軌跡的影響,通常情況下c1=c2且為固定值,但是隨著深入研究發(fā)現(xiàn),學(xué)習(xí)因子的取值也可以類似慣性權(quán)重發(fā)生動(dòng)態(tài)變化,根據(jù)PSO 算法在迭代初期注重廣泛搜索,迭代后期注重快速收斂的特性。 在想要同時(shí)保證粒子多樣性和收斂性的情況下,采用動(dòng)態(tài)調(diào)整學(xué)習(xí)因子,根據(jù)文獻(xiàn)[9]的分析,c1,c2同時(shí)調(diào)整效果優(yōu)于單項(xiàng)系數(shù)調(diào)整,在搜索的前階段,c1取較大值,c2取較小值,側(cè)重于pid,增加粒子的全局搜索能力,后期則相反,側(cè)重于gid,增強(qiáng)粒子的局部搜索能力,將加速系數(shù)表示為
式中:t 為當(dāng)前迭代次數(shù);Tmax為最大迭代次數(shù)。
通常的速度更新公式,每個(gè)粒子只通過(guò)自身最優(yōu)位置和群體最優(yōu)位置進(jìn)行速度更新,如果粒子本身選擇位置不理想,則會(huì)影響到尋優(yōu)結(jié)果,根據(jù)社會(huì)學(xué)家Wilson 的理論,群體中的個(gè)體都能從其他個(gè)體的經(jīng)驗(yàn)中受益,其他粒子的最優(yōu)位置信息同樣可以起到幫助作用,在文獻(xiàn)[10]的基礎(chǔ)上,在原有速度公式上添加一項(xiàng),而Pa是通過(guò)輪盤賭選出的所有粒子的歷史最優(yōu)位置,速度公式變更如下:
其中c3r3取c1r1和c2r2中較小值的0.3 倍,通過(guò)這種改動(dòng),降低了因?yàn)檫x取到位置不好的粒子而影響尋優(yōu)結(jié)果的概率。
在列車節(jié)能控制問(wèn)題中,存在多個(gè)拘束條件,這里采用簡(jiǎn)單的懲罰函數(shù)機(jī)制,將多個(gè)拘束條件轉(zhuǎn)化為懲罰因子,從而將有拘束問(wèn)題轉(zhuǎn)化為無(wú)拘束問(wèn)題,根據(jù)提到的拘束條件,共有:末速度為0,最大加速度限制,運(yùn)行時(shí)間限制,最大速度限制以及運(yùn)行距離限制。 通過(guò)設(shè)置4 個(gè)懲罰因子α,β,γ,λ,將目標(biāo)函數(shù)轉(zhuǎn)換為
由于目標(biāo)函數(shù)需要盡可能的取小,所以適應(yīng)度函數(shù)設(shè)置為目標(biāo)函數(shù)的倒數(shù):
1) 初始化粒子的位置和速度,根據(jù)適應(yīng)度函數(shù)計(jì)算各個(gè)粒子的適應(yīng)度,同時(shí)獲得粒子的個(gè)體最優(yōu)位置和群體最優(yōu)位置。
2) 根據(jù)式(21)計(jì)算粒子與群體最優(yōu)粒子之間的距離,同時(shí)根據(jù)式(20)更新下次迭代各粒子的慣性權(quán)重。
3) 按照新的速度更新公式(24)與動(dòng)態(tài)學(xué)習(xí)因子公式(23)更新粒子的學(xué)習(xí)因子,速度和位置,再次計(jì)算適應(yīng)度值。
4) 若當(dāng)前粒子的適應(yīng)度值比歷史最優(yōu)值好則取代歷史最優(yōu)值。
5) 判斷是否滿足迭代終止條件,是則輸出結(jié)果,不是則返回第2 步。
針對(duì)標(biāo)準(zhǔn)粒子群算法和改進(jìn)粒子群算法進(jìn)行對(duì)比, 選取廣州地鐵8 號(hào)線中一部分區(qū)段進(jìn)行仿真模擬。運(yùn)行策略采用“牽引-巡航-惰行-制動(dòng)”的方式。 列車參數(shù)和線路參數(shù)如表(3)~(5)所示。
其中站間距離為1 471 m,列車的區(qū)間限速為80 km/h,列車最大加速度不得超過(guò)0.8 m/s,按照“牽引-巡航-惰行-制動(dòng)”的策略運(yùn)行,粒子群規(guī)模取N=50,迭代次數(shù)為200 次,學(xué)習(xí)因子根據(jù)標(biāo)準(zhǔn)粒子群算法與改進(jìn)粒子群算法的不同,標(biāo)準(zhǔn)粒子群算法取固定值c1=c2=2,改進(jìn)型粒子群算法采用動(dòng)態(tài)學(xué)習(xí)因子,同時(shí)設(shè)置ωmax=0.9,ωmin=0.4,標(biāo)準(zhǔn)粒子群算法采用線性慣性權(quán)重法,而改進(jìn)的粒子群算法采用自適應(yīng)慣性權(quán)重法,粒子最大速度不超過(guò)0.1,最小速度不小于-0.1,列車的牽引系數(shù)取0.95,制動(dòng)系數(shù)取0.8,同時(shí)設(shè)置懲罰因子α=1,β=0.5,γ=0.05,λ=1。 多次運(yùn)行后,分別得到位移能量對(duì)比圖,位移速度對(duì)比圖,適應(yīng)度函數(shù)對(duì)比圖如圖(1)~(3)所示。
表3 軌道列車參數(shù)Tab.3 Parameters of rail transit trains
表4 列車牽引特性和制動(dòng)特性Tab.4 Characteristics of traction and braking force of trains
表5 區(qū)段線路參數(shù)Tab.5 Parameters of rail transit section
圖1 改進(jìn)前后粒子群算法的位移-能量對(duì)比圖Fig.1 Comparison of the S-E curves between ordinary PSO and improved PSO
圖2 改進(jìn)前后粒子群算法的位移-速度對(duì)比圖Fig.2 Comparison of the S-V curves between ordinary PSO and improved PSO
結(jié)合圖2,表(6)(7)可以發(fā)現(xiàn),相較于標(biāo)準(zhǔn)型粒子群算法,改進(jìn)型粒子群算法在略微增加牽引功況的情況下,有效地延長(zhǎng)了惰行工況的運(yùn)行時(shí)間。 在到站時(shí)間固定不變的情況下,如圖1 所示,標(biāo)準(zhǔn)型粒子群算法優(yōu)化的發(fā)動(dòng)機(jī)能耗數(shù)值穩(wěn)定在20.525 kW/h 左右, 而改進(jìn)后的粒子群算法優(yōu)化結(jié)果穩(wěn)定在19.388 kW/h 左右,相比標(biāo)準(zhǔn)粒子群算法效果提升了5.54%左右,有效降低了能量損耗。 在適應(yīng)度和收斂性方面,標(biāo)準(zhǔn)型粒子群算法在150 代左右達(dá)到收斂,而改進(jìn)型粒子群算法在120 代左右收斂就達(dá)到最優(yōu)解,而適應(yīng)度值也高于標(biāo)準(zhǔn)型粒子群算法,有效提升了運(yùn)算的效率和精度。
表6 2 種算法4 種運(yùn)行工況消耗時(shí)間 sTab.6 Consumption time of four operation conditions under two algorithms
表7 2 種算法4 種運(yùn)行工況位移量 mTab.7 Displacement of four operating conditions under two algorithms
圖3 改進(jìn)前后粒子群算法適應(yīng)度函數(shù)對(duì)比圖Fig.3 Comparison of the fitness function between ordinary PSO and improved PSO
針對(duì)列車運(yùn)行節(jié)能控制優(yōu)化這種非線性、多拘束、大滯后的問(wèn)題,提出了自適應(yīng)慣性權(quán)重與動(dòng)態(tài)學(xué)習(xí)因子相結(jié)合,同時(shí)對(duì)傳統(tǒng)速度更新公式進(jìn)行改進(jìn)的方法,通過(guò)Matlab 多次實(shí)驗(yàn)仿真,無(wú)論從優(yōu)化效果還是收斂速度方面,改進(jìn)后的粒子群算法相比于標(biāo)準(zhǔn)粒子群算法有了一定的提升,降低了列車運(yùn)行過(guò)程中的能耗,給列車節(jié)能優(yōu)化算法的設(shè)計(jì)提供參考。