黃勇, 李小將, 張東來(lái), 周乃東
(1.裝備學(xué)院 研究生院, 北京 101416;2.空軍航空大學(xué) 飛行訓(xùn)練基地, 吉林 長(zhǎng)春 130022)
2012-09-18;
2012-12-18; < class="emphasis_bold">網(wǎng)絡(luò)出版時(shí)間
時(shí)間:2013-04-09 09:58
黃勇(1986-),男,江蘇大豐人,博士研究生,研究方向?yàn)槲淦飨到y(tǒng)運(yùn)用與仿真。
混合遺傳算法在最優(yōu)Lambert軌道轉(zhuǎn)移設(shè)計(jì)中的應(yīng)用
黃勇1, 李小將1, 張東來(lái)1, 周乃東2
(1.裝備學(xué)院 研究生院, 北京 101416;2.空軍航空大學(xué) 飛行訓(xùn)練基地, 吉林 長(zhǎng)春 130022)
研究了初始位置、目標(biāo)位置和轉(zhuǎn)移時(shí)間均不固定的雙沖量Lambert轉(zhuǎn)移問(wèn)題,旨在實(shí)現(xiàn)燃料和轉(zhuǎn)移時(shí)間的綜合最優(yōu)。在對(duì)Lambert飛行時(shí)間定理推導(dǎo)的基礎(chǔ)上,提出了一種遺傳算法和迭代法相結(jié)合的優(yōu)化算法,并給出了算法的設(shè)計(jì)步驟;同時(shí),對(duì)影響遺傳算法尋優(yōu)性能的兩個(gè)參數(shù)進(jìn)行了自適應(yīng)調(diào)整,提高了算法的收斂性。最后,通過(guò)兩個(gè)實(shí)例驗(yàn)證了所提算法的有效性和準(zhǔn)確性。
軌道轉(zhuǎn)移; 最優(yōu)化; 混合遺傳算法
航天器最優(yōu)沖量軌道轉(zhuǎn)移是航天領(lǐng)域備受關(guān)注的一個(gè)問(wèn)題,最常用的方式有Hohmann轉(zhuǎn)移和Lambert轉(zhuǎn)移。其中,Hohmann轉(zhuǎn)移僅適用于共面或異面圓軌道轉(zhuǎn)移,而Lambert轉(zhuǎn)移既可用于共面軌道轉(zhuǎn)移,也可用于異面橢圓軌道轉(zhuǎn)移,因此,Lambert轉(zhuǎn)移問(wèn)題一直以來(lái)都是該領(lǐng)域的研究熱點(diǎn)。
給定航天器的初始位置矢量、目標(biāo)位置矢量和轉(zhuǎn)移時(shí)間就可確定航天器的運(yùn)行軌道,此即典型的Lambert轉(zhuǎn)移,圍繞這一問(wèn)題已形成了多種求解方法。文獻(xiàn)[1-2]介紹了求解航天器Lambert軌道轉(zhuǎn)移常用的一些方法,主要采用迭代思想,包括Battin方法、Gauss方法和普適變量法。文獻(xiàn)[3-4]分別給出了多圈Lambert轉(zhuǎn)移的算法,解決了因航天器變軌時(shí)間較長(zhǎng)所產(chǎn)生的燃料驟增問(wèn)題。實(shí)際上,還可以通過(guò)優(yōu)化轉(zhuǎn)移的始末位置以及轉(zhuǎn)移時(shí)間來(lái)獲得燃料和時(shí)間的綜合最優(yōu)解。近年來(lái),發(fā)展迅速的智能優(yōu)化算法為獲得此類(lèi)問(wèn)題的全局最優(yōu)解提供了有效途徑。文獻(xiàn)[5]采用遺傳算法計(jì)算了最優(yōu)雙脈沖Lambert轉(zhuǎn)移,但僅限于始末軌道均為圓軌道且初始位置固定的轉(zhuǎn)移。文獻(xiàn)[6]研究了遺傳算法用于求解任意形狀軌道、初始位置有約束的燃料和時(shí)間綜合最優(yōu)轉(zhuǎn)移問(wèn)題,但也只考慮了共面、目標(biāo)位置固定的轉(zhuǎn)移。文獻(xiàn)[7-8]分別采用自適應(yīng)模擬退火算法和自適應(yīng)模擬退火遺傳算法解決了初始位置、目標(biāo)位置和轉(zhuǎn)移時(shí)間均不固定的Lambert最優(yōu)轉(zhuǎn)移問(wèn)題。在工程實(shí)際中,通常給定初始時(shí)刻追蹤航天器和目標(biāo)航天器的軌道要素,并限定在一定的時(shí)間范圍內(nèi)實(shí)現(xiàn)兩航天器的交會(huì)。針對(duì)此類(lèi)問(wèn)題,文獻(xiàn)[9]引入調(diào)相時(shí)間,將調(diào)相時(shí)間和轉(zhuǎn)移時(shí)間作為優(yōu)化變量,利用引導(dǎo)型人工免疫算法研究了總時(shí)間約束條件下燃料最省的Lambert轉(zhuǎn)移。
本文研究了初始位置、目標(biāo)位置和轉(zhuǎn)移時(shí)間均不固定的雙沖量Lambert轉(zhuǎn)移問(wèn)題。
對(duì)于單圈軌道轉(zhuǎn)移情況,Lambert飛行時(shí)間定理可以表述為[10]:
μ1/2Δt=a3/2[(α-sinα)-(β-sinβ)]
(1)
μ1/2Δt=a3/2[2π-(α-sinα)-(β-sinβ)]
(2)
μ1/2Δt=a3/2[(α-sinα)+(β-sinβ)]
(3)
μ1/2Δt=a3/2[2π-(α-sinα)+(β-sinβ)]
(4)
式中,μ為地球引力常數(shù);Δt為轉(zhuǎn)移時(shí)間;a為轉(zhuǎn)移軌道半長(zhǎng)軸;α和β為L(zhǎng)agrange參數(shù),其幾何意義見(jiàn)文獻(xiàn)[11],可由下式求得:
α=arccos(1-s/a)
(5)
(6)
s=(r1+r2+c)/2
(7)
式中,c為初始點(diǎn)到目標(biāo)點(diǎn)的距離;r1,r2分別為初始點(diǎn)和目標(biāo)點(diǎn)的地心距。
轉(zhuǎn)移軌道的半通徑p同樣可以用α,β表示為:
(8)
(9)
根據(jù)以上公式,可以確定轉(zhuǎn)移軌道中a和p的計(jì)算公式,如表1所示。其中,Δθ為轉(zhuǎn)移軌道上初始點(diǎn)位置矢量和目標(biāo)點(diǎn)位置矢量之間的夾角;Δtm為對(duì)應(yīng)轉(zhuǎn)移軌道為最小能量橢圓時(shí)的轉(zhuǎn)移時(shí)間,其具體定義參見(jiàn)文獻(xiàn)[11]。
表1 a和p計(jì)算公式的選擇Table 1 Selection of calculation formula of a and p
若直接利用迭代方法求解上述Lambert方程是很困難的,為便于求解,作如下變換。令:
(10)
則式(1)~式(4)可整理為:
(Δθ≤π)
(11)
(Δθ>π)
(12)
以λ為迭代變量,對(duì)于給定的交會(huì)時(shí)間tf,有f(λ)=tf-Δt,利用牛頓迭代法可以求出λ。
圖1描繪了雙脈沖Lambert軌道轉(zhuǎn)移問(wèn)題。根據(jù)初始軌道的軌道根數(shù)H1={a1,e1,i1,Ω1,ω1,θ1}和目標(biāo)軌道的軌道根數(shù)H2={a2,e2,i2,Ω2,ω2,θ2},可以求得航天器在初始點(diǎn)和目標(biāo)點(diǎn)的位置矢量(r1,r2)和速度矢量(V1,V2),再選定轉(zhuǎn)移時(shí)間Δt,可根據(jù)Lambert方程計(jì)算出轉(zhuǎn)移軌道的軌道根數(shù)Hf,從而計(jì)算出轉(zhuǎn)移軌道上初始點(diǎn)速度Vf1和目標(biāo)點(diǎn)速度Vf2。因此航天器兩次軌道轉(zhuǎn)移所需要的總速度脈沖增量為:
ΔV=|Vf1-V1|+|V2-Vf2|
(13)
圖1 雙脈沖Lambert軌道轉(zhuǎn)移Fig.1 Two-impulse Lambert orbital transfer
2.1 設(shè)計(jì)參數(shù)選取
選取初始軌道的真近點(diǎn)角θ1、目標(biāo)軌道的真近點(diǎn)角θ2和Lambert軌道轉(zhuǎn)移時(shí)間Δt作為優(yōu)化問(wèn)題的求解參數(shù),即選擇參數(shù)X={θ1,θ2,Δt},該軌道轉(zhuǎn)移的優(yōu)化問(wèn)題就轉(zhuǎn)化為參數(shù)X的優(yōu)化問(wèn)題。
2.2 目標(biāo)函數(shù)的選取
航天器軌道轉(zhuǎn)移過(guò)程中消耗的能量與時(shí)間是此消彼長(zhǎng)的關(guān)系,節(jié)省能量和減少軌道轉(zhuǎn)移時(shí)間是相互抵觸的,須對(duì)二者進(jìn)行折衷,是典型的多目標(biāo)優(yōu)化問(wèn)題。這里將性能指標(biāo)定為脈沖增量與轉(zhuǎn)移時(shí)間的線(xiàn)性加權(quán)和:
J(X)=k1ΔV+k2Δt
(14)
式中,k1,k2分別為脈沖增量和轉(zhuǎn)移時(shí)間的加權(quán)系數(shù),其取值范圍為[0,1],且有k1+k2=1。
2.3 約束條件
在軌道轉(zhuǎn)移過(guò)程中,總要滿(mǎn)足一定的約束條件,如參數(shù)的取值范圍及工程實(shí)際的一些限制。本文主要考慮以下幾點(diǎn):
(1)軌道轉(zhuǎn)移時(shí)間Δt的取值范圍為[tLmin,tLmax],這里tLmin取為0;tLmax取相同軌道半徑的圓軌道霍曼轉(zhuǎn)移時(shí)間的0.4~1.0倍。
(2)初始軌道θ1、目標(biāo)軌道θ2的取值范圍可在(0,2π)內(nèi)根據(jù)需要自行設(shè)定,從而保證航天器可以在初始軌道任意位置變軌以及在目標(biāo)軌道任意位置入軌。
(3)軌道轉(zhuǎn)移消耗的總能量一般存在上限約束,即ΔV≤Vmax,本文將航天器的最大脈沖消耗限制為10 km/s。
(4)工程上,Lambert軌道轉(zhuǎn)移的半長(zhǎng)軸和偏心率也有上限約束,一般而言,a≤107km,e≤0.7。
3.1 混合遺傳算法設(shè)計(jì)步驟
遺傳算法作為一種概率搜索算法,它的尋優(yōu)結(jié)果具有一定的隨機(jī)性,且隨著優(yōu)化參數(shù)的增多極易陷入局部最優(yōu)解[12]。
為減少遺傳算法的尋優(yōu)參數(shù),提高其尋優(yōu)效率,本文設(shè)計(jì)了一種將遺傳算法與迭代法相結(jié)合的混合遺傳算法,該算法的思想是:主程序采用遺傳算法初始化產(chǎn)生代表Δt和θ1的種群,并對(duì)其尋優(yōu),子程序運(yùn)用迭代通過(guò)式(11)和式(12)計(jì)算個(gè)體適應(yīng)度值。設(shè)計(jì)主程序步驟如下:
(1)采用二進(jìn)制級(jí)聯(lián)編碼,按Δt精確到1 s,θ1精確到0.1°,分別確定各自的二進(jìn)制碼長(zhǎng),產(chǎn)生初始種群(Δt,θ1)。
(2)將種群中個(gè)體解碼后輸入到個(gè)體適應(yīng)度值計(jì)算子程序進(jìn)行適應(yīng)度值的計(jì)算,并根據(jù)子程序得到的適應(yīng)度值進(jìn)行排序,保存當(dāng)代適應(yīng)度最高的個(gè)體。
(3)依據(jù)種群中各個(gè)體的適應(yīng)度值,采用比例選擇算子選擇與父代規(guī)模相同的新的種群。
(4)在種群的遺傳操作過(guò)程中,采用自適應(yīng)交叉和變異算子,若達(dá)到設(shè)定的遺傳代數(shù),則解碼輸出最優(yōu)個(gè)體,結(jié)束程序,否則轉(zhuǎn)至步驟(2)繼續(xù)進(jìn)化。
個(gè)體適應(yīng)度計(jì)算子程序接收到主程序產(chǎn)生的(Δt,θ1)后,計(jì)算出θ2,進(jìn)而計(jì)算出Δθ,p1,p2及其他相關(guān)參數(shù)。根據(jù)Δθ選擇p和迭代法中間變量λ的計(jì)算公式來(lái)計(jì)算Δt的最小值,并以此判斷主程序任意產(chǎn)生的Δt是否有意義;在確保Δt有意義后,計(jì)算出a和p,進(jìn)而計(jì)算出個(gè)體的適應(yīng)度值,否則最小化個(gè)體的適應(yīng)度值。
3.2 遺傳算法的自適應(yīng)調(diào)整
遺傳算法運(yùn)行過(guò)程中,交叉概率Pc和變異概率Pm是影響遺傳算法的關(guān)鍵所在,直接影響算法的收斂性。Pc,Pm選取過(guò)大會(huì)使遺傳算法成為隨機(jī)搜索,選取過(guò)小又不易跳出局部極值點(diǎn)。針對(duì)此問(wèn)題,文獻(xiàn)[13]提出了自適應(yīng)遺傳算法,即Pc和Pm的選取能夠隨適應(yīng)度函數(shù)自適應(yīng)調(diào)整,在保證種群多樣性的同時(shí),提高遺傳算法的收斂性。經(jīng)過(guò)改進(jìn),遺傳算法參數(shù)自適應(yīng)調(diào)整表達(dá)式為:
(15)
(16)
式中,Pc1取為0.8;Pc2取為0.5;fmax為種群中的最大適應(yīng)度值;favg為每代群體的平均適應(yīng)度值;f′為交叉的兩個(gè)個(gè)體中較大的適應(yīng)度值;Pm1取為0.1;Pm2取為0.05;f為要變異的適應(yīng)度值。
算例1:仿真初始軌道和目標(biāo)軌道參數(shù)如表2所示,二者均為圓軌道,k1=1,k2=0,求燃料最優(yōu)解。這里需對(duì)初始軌道的真近點(diǎn)角θ1加以確定,否則對(duì)于任意的θ1,目標(biāo)軌道上都存在對(duì)應(yīng)的θ2,使得軌道轉(zhuǎn)移所需能量最優(yōu)。
表2 算例1初始軌道和目標(biāo)軌道參數(shù)Table 2 Initial and target orbital elements of case 1
對(duì)于軌道半徑之比小于15.58的兩共面圓軌道間的轉(zhuǎn)移,雙脈沖Hohmann轉(zhuǎn)移為最省燃料轉(zhuǎn)移,將其結(jié)果與本文優(yōu)化算法求得的最優(yōu)解進(jìn)行對(duì)比,結(jié)果如表3所示。結(jié)果表明,兩種方法求得的最優(yōu)解偏差很小,說(shuō)明了本文優(yōu)化算法的可行性和準(zhǔn)確性。
表3 算例1優(yōu)化結(jié)果比較Table 3 Comparison of optimization results of case 1
圖2給出了群體適應(yīng)度值隨遺傳代數(shù)變化的過(guò)程。由圖可見(jiàn),群體的最小適應(yīng)度值在遺傳初期變化較大,隨著遺傳代數(shù)的增加逐漸收斂;群體的適應(yīng)度均值也隨著遺傳代數(shù)的增加,逐漸向最小適應(yīng)度值逼近。這表明群體中適應(yīng)度值較大的個(gè)體依次被淘汰,較優(yōu)個(gè)體依次被保留,群體中的個(gè)體差異不斷減小并逐漸趨于最優(yōu)值。
圖2 適應(yīng)度變化曲線(xiàn)Fig.2 Curve of fitness variation
算例2:仿真初始軌道和目標(biāo)軌道參數(shù)如表4所示,二者位于異面橢圓軌道上。
表4 算例2初始軌道和目標(biāo)軌道參數(shù)Table 4 Initial and target orbital elements of case 2
分別選取兩組不同的k1,k2對(duì)算例2中的Lambert轉(zhuǎn)移進(jìn)行優(yōu)化,表5為優(yōu)化結(jié)果。其中,第1組為燃料最優(yōu)解,第2組為燃料和時(shí)間綜合最優(yōu)解。從優(yōu)化結(jié)果可以看出,隨著k1減小、k2增大,時(shí)間在最優(yōu)性能指標(biāo)中所占比重增大,而脈沖增量所占比重減小。故最優(yōu)解中脈沖增量增大、轉(zhuǎn)移時(shí)間減小,且轉(zhuǎn)移軌道的偏心率增大,這是符合常理的。
表5 算例2優(yōu)化結(jié)果Table 5 Optimization results of case 2
需要指出的是,Lambert轉(zhuǎn)移燃料和時(shí)間綜合最優(yōu)問(wèn)題的各項(xiàng)優(yōu)化參數(shù),其值是介于轉(zhuǎn)移燃料最優(yōu)和時(shí)間最優(yōu)二者之間的。而時(shí)間最優(yōu)對(duì)應(yīng)的轉(zhuǎn)移軌道為拋物線(xiàn),長(zhǎng)半軸趨于無(wú)窮大,這對(duì)于純粹的雙脈沖Lambert轉(zhuǎn)移是沒(méi)有意義的,故本文未將其列出。
本文通過(guò)對(duì)Lambert飛行時(shí)間定理的推導(dǎo),建立了適合于遺傳算法和迭代法求解的Lambert雙沖量轉(zhuǎn)移模型,簡(jiǎn)化了問(wèn)題的求解過(guò)程。所提混合遺傳算法有利于雙脈沖Lambert轉(zhuǎn)移的快速優(yōu)化設(shè)計(jì),引入的參數(shù)自適應(yīng)調(diào)整增強(qiáng)了算法的收斂性。通過(guò)兩種不同情況下的仿真算例驗(yàn)證了算法的有效性和準(zhǔn)確性,可為其他類(lèi)型的優(yōu)化問(wèn)題提供一定的方法借鑒。
[1] Battin R H.An introduction to the mathematics and methods of astrodynamics[M].Reston,VA:AIAA,1999.
[2] Curtis H D.Orbital mechanics for engineering students [M].Elsevier,2010.
[3] Shen Haijun,Tsiotras P.Optimal two-impulse rendezvous using multiple-revolution Lambert solutions[J].Journal of Guidance,Control,and Dynamics,2003,26(1):50-61.
[4] Arlulkar P V,Naik S D.Solution based on dynamical approach for multiple-revolution Lambert problem [J].Journal of Guidance,Control,and Dynamics,2011,34(3):920-923.
[5] Spencer D B,Kim Y H.Optimal spacecraft rendezvous using genetic algorithms [J].Journal of Spacecraft and Rockets,2002,39(6):859-865.
[6] 陳統(tǒng),徐世杰.基于遺傳算法的最優(yōu)Lambert雙脈沖轉(zhuǎn)移[J].北京航空航天大學(xué)學(xué)報(bào),2007,33(3):273-277.
[7] 李小將,趙輝,趙偉.基于自適應(yīng)模擬退火算法的最優(yōu)Lambert雙沖量轉(zhuǎn)移[J].裝備指揮技術(shù)學(xué)院學(xué)報(bào),2011,22(4):50-54.
[8] 盧山,陳統(tǒng),徐世杰.基于自適應(yīng)模擬退火遺傳算法的最優(yōu)Lambert轉(zhuǎn)移[J].北京航空航天大學(xué)學(xué)報(bào),2007,33(10):1191-1195.
[9] 彭坤,徐世杰,陳統(tǒng).引導(dǎo)型人工免疫算法的最優(yōu)Lambert變軌[J].北京航空航天大學(xué)學(xué)報(bào),2010,36(1):6-9.
[10] 李棟林,黃福銘.基于Lambert問(wèn)題的精確攔截與交會(huì)策略研究[J].飛行力學(xué),2008,26(2):57-59.
[11] 郗曉寧,王威,高玉東.近地航天器軌道基礎(chǔ)[M].長(zhǎng)沙:國(guó)防科學(xué)技術(shù)大學(xué)出版社,2003.
[12] 王小平,曹立明.遺傳算法——理論、應(yīng)用與軟件實(shí)現(xiàn)[M].西安:西安交通大學(xué)出版社,2002.
[13] Srinivas M,Patnaik L M.Adaptive probabilities of crossover and mutation in genetic algorithm [J].IEEE Transaction on Systems,Man and Cybernetics,1994, 24(4):656-666.
ApplicationofhybridgeneticalgorithminoptimalLambertorbitaltransferdesign
HUANG Yong1, LI Xiao-jiang1, ZHANG Dong-lai1, ZHOU Nai-dong2
(1.School of Graduate, Academy of Equipment, Beijing 101416, China;2.Base of Flight Training, Aviation University of Air Force, Changchun 130022, China)
The two-impulse Lambert transfer problem with unfixed initial position, final position and transfer time was studied in order to optimize combination of the fuel and transfer time. Based on the derivation of the Lambert flight time theorem, an optimization algorithm combining genetic algorithm and iteration method was presented as well as its design process. Meanwhile, two parameters affecting genetic algorithm performance were adjusted adaptively, which can improve the algorithm’s astringency. Lastly, the validity and accuracy of the hybrid genetic algorithm were validated by two examples.
orbital transfer; optimization; hybrid genetic algorithm
V448.2
A
1002-0853(2013)03-0269-04
(編輯:李怡)