本發(fā)明屬于列車運(yùn)行控制技術(shù)領(lǐng)域,特別是一種基于Pareto多目標(biāo)遺傳算法的列車定時(shí)節(jié)能運(yùn)行方法。
背景技術(shù):
近年來(lái),隨著我國(guó)社會(huì)經(jīng)濟(jì)的快速發(fā)展和城市化進(jìn)度的不斷推進(jìn),城市地鐵發(fā)展也相當(dāng)迅速,由此帶來(lái)的城市軌道交通能耗也越來(lái)越大。如何在滿足列車準(zhǔn)點(diǎn)運(yùn)行的基礎(chǔ)上,更加有效地提高能源利用率,降低運(yùn)營(yíng)成本,對(duì)我國(guó)的鐵路事業(yè)發(fā)展有重大意義。
列車節(jié)能運(yùn)行控制是一個(gè)典型的多目標(biāo)多約束的優(yōu)化控制問題,很難確立精確的數(shù)學(xué)模型來(lái)描述列車運(yùn)行過程。傳統(tǒng)的數(shù)學(xué)方法,如數(shù)值解析法、最優(yōu)控制理論等,難以獲取到模型的精確解,即使采用迭代方法也只能求得模型的近似解,且容易陷入局部最優(yōu)。目前處理列車節(jié)能多目標(biāo)多約束優(yōu)化問題的方法,主要是通過多個(gè)優(yōu)化目標(biāo)加權(quán),將多目標(biāo)轉(zhuǎn)化為單目標(biāo)進(jìn)行優(yōu)化,然而這類方法在加權(quán)系數(shù)上需要依靠大量的經(jīng)驗(yàn)積累,且容易造成局部?jī)?yōu)化,只能得到一組解,且優(yōu)化速度慢。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于提出一種基于Pareto多目標(biāo)遺傳算法的列車定時(shí)節(jié)能運(yùn)行方法,優(yōu)化速度塊,精度高。
為了解決上述技術(shù)問題,本發(fā)明提供一種基于Pareto多目標(biāo)遺傳算法的列車定時(shí)節(jié)能運(yùn)行方法,步驟如下:
步驟1:設(shè)置列車運(yùn)行的線路數(shù)據(jù)、列車參數(shù)以及Pareto多目標(biāo)遺傳算法基本參數(shù);
步驟2:以列車牽引能耗和區(qū)間旅行時(shí)間為優(yōu)化目標(biāo),建立列車運(yùn)行的定時(shí)節(jié)能優(yōu)化模型,并利用Pareto多目標(biāo)遺傳算法求解該列車運(yùn)行的定時(shí)節(jié)能優(yōu)化模型,得到一組列車運(yùn)行策略的非支配解集;列車運(yùn)行的定時(shí)節(jié)能優(yōu)化模型為:
式中,E為列車能耗值,F(xiàn)為牽引力,B為制動(dòng)力,s為列車當(dāng)前運(yùn)行的公里標(biāo),S0、Sp分別為列車起止點(diǎn)公里標(biāo),T為實(shí)際運(yùn)行時(shí)間,Tr為約定運(yùn)行時(shí)間,ΔT運(yùn)行時(shí)間誤差,t當(dāng)前運(yùn)行時(shí)間,f為阻力,ΔS為實(shí)際停車位置與預(yù)定停車位置的距離差值的最大值,v(S0)為列車在起點(diǎn)公里標(biāo)的速度,v(Sp)為列車在止點(diǎn)公里標(biāo)的速度,a為加速度,amax為最大加速度,v為速度,vmax為最大速度;
步驟3:根據(jù)設(shè)定的列車區(qū)間旅行時(shí)間,在Pareto前沿的非支配解集中選擇最優(yōu)工況轉(zhuǎn)折點(diǎn)矩陣,并提取該工況轉(zhuǎn)折點(diǎn)矩陣對(duì)應(yīng)的速度、時(shí)間、能耗、位移數(shù)據(jù),繪制定時(shí)節(jié)能速度優(yōu)化曲線和能耗曲線,完成對(duì)列車定時(shí)節(jié)能運(yùn)行的優(yōu)化。
進(jìn)一步,步驟1中,線路數(shù)據(jù)包括坡道起止公里標(biāo)及對(duì)應(yīng)坡度i、曲線段起止公里標(biāo)及對(duì)應(yīng)曲率C、限速段起止公里標(biāo)及對(duì)應(yīng)限速VT,列車參數(shù)包括列車的編組方式、長(zhǎng)度L、載荷等級(jí)AW、戴維斯方程系數(shù)(a,b,c)、最大加速度amax、最大速度vmax、牽引特性曲線F(v)和制動(dòng)特性曲線B(v),Pareto多目標(biāo)遺傳算法基本參數(shù)包括選擇算子、交叉算子、變異算子、最大進(jìn)化代數(shù)、種群大小和適應(yīng)度函數(shù)。
進(jìn)一步,步驟2中,求解該優(yōu)化模型的過程包括如下子步驟:
3.1、初始種群P,種群個(gè)體數(shù)為N,對(duì)于初始種群中每個(gè)個(gè)體將列車運(yùn)行區(qū)間依照運(yùn)行工況不同進(jìn)行離散化,得到對(duì)應(yīng)的列車運(yùn)行工況轉(zhuǎn)折點(diǎn)矩陣X=[x1,x2,x3,...xi...,xN],其中種群中每個(gè)個(gè)體xi=[S0,D1,D2,D3,Sp]對(duì)應(yīng)列車運(yùn)行工況轉(zhuǎn)折點(diǎn)矩陣,其中,i=1,2,....,N,S0、D1、D2、D3、Sp分別為起點(diǎn)、巡航開始點(diǎn)、惰行開始點(diǎn)、制動(dòng)開始點(diǎn)、終點(diǎn)的公里標(biāo);
3.2、根據(jù)種群中每個(gè)個(gè)體xi對(duì)應(yīng)的列車運(yùn)行工況轉(zhuǎn)折點(diǎn)矩陣,計(jì)算出每個(gè)個(gè)體xi對(duì)應(yīng)的牽引能耗E(xi)和運(yùn)行時(shí)間T(xi),對(duì)于未能安全進(jìn)站和超速行駛的駕駛策論個(gè)體xi,將其牽引能耗E(xi)和運(yùn)行時(shí)間T(xi)極大化,使之成為不合理解并在遺傳操作過程中被淘汰掉,從而分別得到每個(gè)個(gè)體xi的能耗適應(yīng)度值fE(x1,x2,...xi,...xN)和運(yùn)行時(shí)間適應(yīng)度值fT(x1,x2,...xi,...xN),然后根據(jù)每個(gè)個(gè)體xi的能耗適應(yīng)度值和運(yùn)行時(shí)間適應(yīng)度值進(jìn)行快速非支配排序,并通過根據(jù)二進(jìn)制錦標(biāo)賽法從種群P中選擇個(gè)體進(jìn)行交叉和變異操作,產(chǎn)生子代種群Q;
3.3、從第二代開始,將父代種群P與子代種群Q合并,并進(jìn)行快速非支配排序,同時(shí)對(duì)每個(gè)非支配層中的個(gè)體進(jìn)行擁擠度計(jì)算,根據(jù)非支配關(guān)系以及個(gè)體的擁擠度選取合適的個(gè)體組成下一代父代種群P,種群個(gè)體數(shù)為N;
3.4、通過遺傳算法的基本操作產(chǎn)生新的子代種群,依此類推,直到滿足結(jié)束條件,停止遺傳操作,并保存Pareto前沿的非支配解集。
進(jìn)一步,將種群中每個(gè)個(gè)體xi對(duì)應(yīng)的列車運(yùn)行工況轉(zhuǎn)折點(diǎn)矩陣,代入列車牽引能耗計(jì)算模型中計(jì)算出每個(gè)個(gè)體xi對(duì)應(yīng)的牽引能耗E(xi)和運(yùn)行時(shí)間T(xi);
所述列車牽引能耗計(jì)算模型為:根據(jù)列車運(yùn)行區(qū)段工況轉(zhuǎn)折點(diǎn),分區(qū)間進(jìn)行列車的牽引能耗計(jì)算,其中在每個(gè)仿真步長(zhǎng)內(nèi),首先根據(jù)列車前一個(gè)仿真步長(zhǎng)運(yùn)行至的公里標(biāo)S(t)得到對(duì)應(yīng)該仿真步長(zhǎng)內(nèi)列車的坡度i、曲率C,并根據(jù)前一個(gè)仿真步長(zhǎng)列車的速度v(t)、能耗E(t),求出該仿真步長(zhǎng)內(nèi)列車的牽引力F(v)、制動(dòng)力B(v)和阻力參數(shù)f,根據(jù)列車的工況和受力分析,求出當(dāng)前時(shí)間t列車的加速度a(t)、牽引功率P(t),進(jìn)而求出下一個(gè)仿真步長(zhǎng)內(nèi)的速度v(t+Δt)、公里標(biāo)S(t+Δt)、牽引功率P(t+Δt),以及牽引能耗E(t+Δt),Δt為方針步長(zhǎng)時(shí)間。
本發(fā)明與現(xiàn)有技術(shù)相比,其顯著優(yōu)點(diǎn)在于,本發(fā)明基于Pareto多目標(biāo)遺傳算法的列車定時(shí)節(jié)能運(yùn)行方法,在搜索過程中不易陷入局部最優(yōu),進(jìn)化結(jié)果不局限于單值解,非常適合求解復(fù)雜的多目標(biāo)問題;通過選擇、交叉、變異操作來(lái)表現(xiàn)復(fù)雜現(xiàn)象,充分利用適應(yīng)值函數(shù)而不需要其它先驗(yàn)知識(shí),能夠快速解決傳統(tǒng)方法難以解決的問題。
附圖說明
圖1是本發(fā)明中基于Pareto多目標(biāo)遺傳算法的列車定時(shí)節(jié)能運(yùn)行方法流程簡(jiǎn)圖。
圖2是本發(fā)明中基于Pareto多目標(biāo)遺傳算法的列車定時(shí)節(jié)能運(yùn)行方法的流程詳圖。
圖3是本發(fā)明中多目標(biāo)Pareto前沿的非支配最優(yōu)解集示意圖。
圖4是本發(fā)明中基于Pareto多目標(biāo)遺傳算法每代個(gè)體最優(yōu)個(gè)體目標(biāo)函數(shù)值變化圖。
圖5是本發(fā)明中最優(yōu)列車定時(shí)節(jié)能運(yùn)行速度曲線圖。
圖6是本發(fā)明中最優(yōu)列車定時(shí)節(jié)能運(yùn)行能耗曲線圖。
具體實(shí)施方式
容易理解,依據(jù)本發(fā)明的技術(shù)方案,在不變更本發(fā)明的實(shí)質(zhì)精神的情況下,本領(lǐng)域的一般技術(shù)人員可以想象出本發(fā)明基于Pareto多目標(biāo)遺傳算法的列車定時(shí)節(jié)能運(yùn)行方法的多種實(shí)施方式。因此,以下具體實(shí)施方式和附圖僅是對(duì)本發(fā)明的技術(shù)方案的示例性說明,而不應(yīng)當(dāng)視為本發(fā)明的全部或者視為對(duì)本發(fā)明技術(shù)方案的限制或限定。
結(jié)合圖1~5,基于Pareto多目標(biāo)遺傳算法的列車定時(shí)節(jié)能運(yùn)行方法,包括以下步驟:
步驟1:設(shè)置列車運(yùn)行的線路數(shù)據(jù)、列車參數(shù)以及Pareto多目標(biāo)遺傳算法基本參數(shù)。線路數(shù)據(jù)包括坡道起止公里標(biāo)及對(duì)應(yīng)坡度i、曲線段起止公里標(biāo)及對(duì)應(yīng)曲率C、限速段起止公里標(biāo)及對(duì)應(yīng)限速VT,列車參數(shù)包括列車的編組方式、長(zhǎng)度L、載荷等級(jí)AW、戴維斯方程系數(shù)(a,b,c)、最大加速度amax、最大速度vmax、牽引特性曲線F(v)和制動(dòng)特性曲線B(v),Pareto多目標(biāo)遺傳算法基本參數(shù)包括選擇算子、交叉算子、變異算子、最大進(jìn)化代數(shù)、種群大小和適應(yīng)度函數(shù);
步驟2:構(gòu)建列車運(yùn)行能耗計(jì)算模型。根據(jù)列車運(yùn)行區(qū)段工況轉(zhuǎn)折點(diǎn),分區(qū)間進(jìn)行列車的牽引能耗計(jì)算,其中在每個(gè)仿真步長(zhǎng)內(nèi),首先根據(jù)列車前一個(gè)仿真步長(zhǎng)運(yùn)行至的公里標(biāo)S(t)得到對(duì)應(yīng)該仿真步長(zhǎng)內(nèi)列車的坡度i、曲率C,并根據(jù)前一個(gè)仿真步長(zhǎng)列車的速度v(t)、能耗E(t),求出該仿真步長(zhǎng)內(nèi)列車的牽引力F(v)、制動(dòng)力B(v)和阻力參數(shù)f,根據(jù)列車的工況和受力分析,求出列車的加速度參數(shù)a(t)、牽引功率P(t),進(jìn)而求出后一個(gè)仿真步長(zhǎng)內(nèi)的速度v(t+Δt)、公里標(biāo)S(t+Δt)、牽引功率P(t+Δt),以及能耗參數(shù)E(t+Δt);Δt為方針步長(zhǎng)時(shí)間。
步驟3:以列車牽引能耗和區(qū)間旅行時(shí)間為優(yōu)化目標(biāo),建立列車運(yùn)行的定時(shí)節(jié)能優(yōu)化模型,并利用Pareto多目標(biāo)遺傳算法求解該優(yōu)化模型,得到一組列車運(yùn)行策略的非支配解集;列車運(yùn)行的定時(shí)節(jié)能優(yōu)化模型為:
式中,E為列車能耗值,F(xiàn)為牽引力,B為制動(dòng)力,T為實(shí)際運(yùn)行時(shí)間,Tr為約定運(yùn)行時(shí)間,f為阻力,S0、Sp分別為起止點(diǎn)公里標(biāo),ΔS為實(shí)際停車位置與預(yù)定停車位置的距離差值的最大值
求解該優(yōu)化模型的過程包括如下子步驟:
3.1、初始種群P,種群個(gè)體數(shù)為N,對(duì)于初始種群中每個(gè)個(gè)體將列車運(yùn)行區(qū)間依照運(yùn)行工況不同進(jìn)行離散化,得到對(duì)應(yīng)的列車運(yùn)行工況轉(zhuǎn)折點(diǎn)矩陣X=[x1,x2,x3,...xi...,xN],其中種群中每個(gè)個(gè)體xi=[S0,D1,D2,D3,Sp](i=1,2,....,N)對(duì)應(yīng)列車運(yùn)行工況轉(zhuǎn)折點(diǎn)矩陣,其中,S0、D1、D2、D3、Sp分別為起點(diǎn)、巡航開始點(diǎn)、惰行開始點(diǎn)、制動(dòng)開始點(diǎn)、終點(diǎn)的公里標(biāo);
3.2、將種群中每個(gè)個(gè)體xi對(duì)應(yīng)的列車運(yùn)行工況轉(zhuǎn)折點(diǎn)矩陣xi,代入列車牽引能耗計(jì)算模型中,計(jì)算出每個(gè)個(gè)體xi對(duì)應(yīng)的牽引能耗E(xi)和運(yùn)行時(shí)間T(xi),對(duì)于未能安全進(jìn)站和超速行駛的駕駛策論個(gè)體xi,將其牽引能耗E(xi)和運(yùn)行時(shí)間T(xi)極大化,使之成為不合理解并在遺傳操作過程中被淘汰掉,從而分別得到每個(gè)個(gè)體xi的能耗適應(yīng)度值fE(x1,x2,...xi,...xN)和運(yùn)行時(shí)間適應(yīng)度值fT(x1,x2,...xi,...xN),然后根據(jù)每個(gè)個(gè)體xi的能耗適應(yīng)度值和運(yùn)行時(shí)間適應(yīng)度值進(jìn)行快速非支配排序,并通過根據(jù)二進(jìn)制錦標(biāo)賽法從種群P中選擇個(gè)體進(jìn)行交叉和變異操作,產(chǎn)生子代種群Q;
3.3、從第二代開始,將父代種群P與子代種群Q合并,并進(jìn)行快速非支配排序,同時(shí)對(duì)每個(gè)非支配層中的個(gè)體進(jìn)行擁擠度計(jì)算,根據(jù)非支配關(guān)系以及個(gè)體的擁擠度選取合適的個(gè)體組成下一代父代種群P,種群個(gè)體數(shù)為N;
3.4、通過遺傳算法的基本操作產(chǎn)生新的子代種群,依此類推,直到滿足結(jié)束條件,停止遺傳操作,并保存Pareto前沿的非支配解集。
步驟4:根據(jù)設(shè)定的列車區(qū)間旅行時(shí)間,在Pareto前沿的非支配解集中選擇最優(yōu)工況轉(zhuǎn)折點(diǎn)矩陣,并提取該工況轉(zhuǎn)折點(diǎn)矩陣對(duì)應(yīng)的速度、時(shí)間、能耗、位移數(shù)據(jù),繪制定時(shí)節(jié)能速度優(yōu)化曲線和能耗曲線,完成對(duì)列車定時(shí)節(jié)能運(yùn)行的優(yōu)化。