史人赫,寶音賀西,龍 騰,魏 釗
(1. 清華大學航天航空學院,北京100084;2. 北京理工大學宇航學院,北京100081;3. 飛行器動力學與控制教育部重點實驗室,北京100081)
為了保證空間系統(tǒng)在惡劣的空間環(huán)境中能夠長期穩(wěn)定的在軌運行,在軌服務應運而生。在軌服務是指人或者服務航天器針對空間系統(tǒng)進行的各類空間操作[1],主要包括在軌裝配、在軌監(jiān)測、在軌維護、空間碎片清理等[2]。在軌服務為空間任務的實施提供了更多選擇,具有延長在軌系統(tǒng)壽命、提升任務執(zhí)行能力、降低初始成本、增強在軌靈活性和適應性等重要意義[3]。目前,以美國為首的發(fā)達國家高度重視在軌服務技術的發(fā)展,開展了軌道快車、鳳凰等在軌服務技術驗證計劃[4-5]。作為在軌服務任務實施的前端和頂層,在軌服務任務規(guī)劃主要通過求解多空間目標交會問題,在滿足各類復雜約束條件下,確定服務航天器對目標航天器的軌道轉移與交會方案,使得在軌服務任務效益最大化[6]。如何有效求解復雜在軌服務任務規(guī)劃問題,成為了國內外研究熱點。
按照在軌服務任務的不同,在軌服務通??梢苑譃橐粚σ?、一對多、多對一和多對多等不同模式。目前,國內外圍繞不同模式下的在軌服務任務規(guī)劃技術開展了廣泛研究。例如,文獻[6]圍繞不同任務場景下的在軌服務任務規(guī)劃模型開展了系統(tǒng)研究;Yu等[7]考慮服務窗口、末端狀態(tài)、時間分配等約束,以總速度增量最小為目標,建立了離散連續(xù)混合的空間碎片主動清除任務規(guī)劃模型,并通過定制的粒子群優(yōu)化算法對任務規(guī)劃問題進行了求解;Yang 等[8]建立了考慮最大回報值的多空間碎片主動清理預先任務規(guī)劃模型,提出了一種貪婪啟發(fā)式算法,實現(xiàn)了該問題的高效求解;Madakat 等[9]針對LEO 空間碎片清理問題建立了雙目標的旅行商問題模型,并通過分支定界方法完成了求解;梁彥剛等[10]采用多目標遺傳算法求解在軌服務航天器任務指派問題,獲取了速度增量-變軌時間的Pareto前沿;Baranov[11]等人針對地球靜止軌道空間碎片清理任務規(guī)劃問題,為服務航天器設計了兩階段的最優(yōu)軌道轉移方案。
為了進一步提高在軌服務任務規(guī)劃求解效率,本文以共面圓軌道衛(wèi)星星群一對一在軌服務問題為對象,開展基于網格編碼差分進化的在軌服務任務規(guī)劃方法研究,在兩層任務規(guī)劃框架的基礎上,通過定制一種新型網格編碼生成技術與差分變異操作機制,實現(xiàn)共面圓軌道衛(wèi)星星群一對一在軌服務規(guī)劃問題的有效求解。
本文研究的在軌服務任務規(guī)劃問題采用一對一工作模式,即一顆服務星對一顆目標星進行服務,且服務衛(wèi)星星群和目標衛(wèi)星星群位于共面圓軌道,各目標星的優(yōu)先級相同。為了實現(xiàn)在軌服務任務規(guī)劃問題的高效求解,本文構建了如圖1 所示的兩層任務規(guī)劃框架。其中,任務分配層通過定制的網絡編碼差分進化算法,生成滿足一對一約束的服務星任務指派方案;規(guī)劃求解層中,服務星群按照任務分配結果通過雙脈沖霍曼轉移實現(xiàn)和對應目標星的空間交會,并計算軌道轉移時間、速度增量等指標作為任務規(guī)劃目標函數;最終根據優(yōu)化收斂條件,判斷任務規(guī)劃求解過程是否終止。
圖1 在軌服務任務規(guī)劃框架Fig.1 On-orbit servicing mission planning framework
基于上述在軌服務任務規(guī)劃框架,建立如式(1)所示的一對一在軌服務任務規(guī)劃優(yōu)化問題的數學模型:
其中,X為指派變量矩陣,其元素xij=1 時表示第i個服務星對第j個目標星進行服務,xij=0 表示不存在服務關系;ti和Δvi分別為第i個服務星軌道轉移時間與變軌所需速度增量,由空間交會模型計算得到;w1和w2分別為在軌服務任務時間和能量指標的加權系數;t0和v0為歸一化因子,用以消除不同指標量級造成的差別;約束條件g1表示每個目標星必須且只能接受一個服務星;約束條件g2表示每個服務星最多服務一個目標星。
本節(jié)對在軌服務任務規(guī)劃框架采用的雙脈沖霍曼轉移模型進行簡要介紹。雙脈沖霍曼轉移過程如圖2 所示,服務星在軌道半徑為r1的圓軌道C1的任意點P 處產生第一個速度增量Δv1,進入橢圓轉移軌道E,并在E 的遠地點A 產生第二個速度增量Δv2,進入半徑為r2的圓軌道C2。
圖2 霍曼轉移過程示意圖Fig.2 Illustration of Hohmann transfer
霍曼轉移過程兩次脈沖所需的速度增量如式(2)所示:
其中,vC1和vC2分別為半徑r1和r2圓軌道的速度。對應的霍曼轉移變軌時間為:
其中,μe= 398600.5 km3/s2為地球常數。
此外,為了實現(xiàn)服務星與目標星的交會,在軌道轉移前目標星需要超前服務星一個提前角θH,因此服務星需要根據和目標星的相對相位在停泊軌道上等待一段時間。因此,服務星的實際軌道轉移時間為等待時間和變軌時間之和。文獻[12]中給出了雙脈沖霍曼轉移時間和速度增量的詳細計算方法。
為了高效求解式(1)中的在軌服務任務規(guī)劃問題,本研究在標準差分進化算法的基礎上[13],提出了一種網格編碼差分進化算法(Grid Coding based Differential Evolution,GCDE)。該方法通過一種隨機序列逐次枚舉的指派矩陣生成算法,保證每一代個體自動滿足規(guī)劃約束條件,并通過定制網格編碼差分變異操作,實現(xiàn)設計空間的高效探索。GCDE的具體步驟敘述如下。
步驟1:初始化。利用NP個維度為n×m的0-1任務指派矩陣作為每一代的種群Pk,G,種群中的每個個體(即任務指派矩陣)表示為:
其中,k為個體編號,G為進化的代數,Xk,G分別為第k個個體對應的任務指派矩陣。3.2 節(jié)中給出了Xk,G的具體生成方式。
步驟2:網格編碼差分變異。為了產生變異向量,算法從當前種群中隨機選擇三個個體Xr1,G,Xr2,G,Xr3,G,在此基礎上,采用式(5)所示的差分變異方法產生變異向量。
式(5)中,vk,G為受體向量,⊕和?為網格編碼差分變異操作算子。其中,?表示廣義差分運算,用于計算Xr2,G和Xr3,G的差異性;⊕為廣義變異運算,用于根據差分結果實現(xiàn)Xr1,G的擾動。3.3 節(jié)中給出了網格編碼差分變異操作的詳細介紹。
步驟3:選擇。按照式(6)進行選擇,確定vk,G是否作為下一代的個體成員。若vk,G的任務規(guī)劃目標函數值不劣于當前個體Xk,G,則將其替代Xk,G作為新的種群個體參與下一輪迭代;反之則不會保留vk,G。
步驟4:對當前種群中的每一個個體重復上述優(yōu)化過程,直至達到模型最大調用次數或最大進化代數,最終輸出最優(yōu)任務規(guī)劃結果。
為了減少計算成本,保證任務規(guī)劃結果的可行性,本研究引入隨機序列逐次枚舉思想[14],實現(xiàn)Xk,G的快速可靠生成。圖3中給出了Xk,G生成過程的示意圖,具體步驟包括:
步驟1:生成n×m的二維平面網格,令網格列編號q=1,可用行編號r=[1,2,...,n]。
步驟2:在第q列網格中,隨機從r中選取一個元素r(t),為坐標為[r(t),q]的網格賦值為1,為當前列其他網格賦值為0,并從r中刪除r(t)。
步驟3:若q≠m,則q=q+1 返回步驟1.1;否則算法終止,輸出指派矩陣個體Xk,G。
可以看出,按照上述方法生成的任務指派矩陣自動滿足在軌服務任務規(guī)劃問題中的一對一約束條件,且交換任務指派矩陣網格編碼中任意兩列或兩行,不改變任務規(guī)劃結果的可行性,從而有效提升了在軌服務任務規(guī)劃約束優(yōu)化問題的求解效率和魯棒性。
圖3 網格編碼生成過程示意圖Fig.3 Illustration of grid coding generation
作為差分進化算法的核心,差分變異通過尋找兩個隨機個體之間的差別對目標個體進行擾動,從而實現(xiàn)設計空間探索[15]。與傳統(tǒng)連續(xù)優(yōu)化問題或者二進制離散編碼形式不同,GCDE 采用平面二維網格編碼方式構建子代個體,因此無法直接通過傳統(tǒng)差分操作產生變異個體向量。因此,本研究根據網格編碼交換任意兩列不破壞一對一任務約束的特點,定制了一種新型網格編碼差分變異操作,其示意圖如圖4所示,具體步驟敘述如下。
圖4 網格編碼差分變異操作示意圖Fig.4 Illustration of grid coding differential mutation operation
步驟1:對于隨機選擇的個體Xr2,G和Xr3,G,分別比較其網格編碼,找到任務分配結果不同的列并記錄為集合:
其中,dz為Xr2,G和Xr3,G中第z個不同編碼列在網格編碼矩陣中的索引序號。
步驟2:生成0~1 之間的隨機數rand[0,1],并與差分變異因子F進行比較。若rand[0,1]≤F,則將Qd中的索引序號順序隨機排列,重新生成一組索引F越大則表示當前個體具有更大的概率實現(xiàn)差分變異。
步驟3:在Xr1,G中,根據原始索引Qd找到對應的需要變異的列,并根據新的索引向量Q?d交換列的順序,生成變異后的受體向量vi,G。
本節(jié)通過某衛(wèi)星星群一對一在軌服務任務規(guī)劃案例,對本文提出的GCDE方法的有效性和實用性進行驗證。本案例中,12顆服務星均勻分布在半長軸為8378.14 km、軌道傾角為60°的圓形軌道上,8顆目標星均勻分布在同一平面內半長軸為8678.14 km的圓形軌道上,其初始軌道根數如表1 所示。采用GCDE 方法求解本案例中的在軌服務任務規(guī)劃問題。其中,時間和能量指標的加權系數w1和w2均取0.5,歸一化因子取t0=2592000 s 和v0=1000 m/s,GCDE 種群規(guī)模為96,最大進化代數為10,差分變異因子F=0.8,得到優(yōu)化后的任務規(guī)劃結果如表2所示。
從結果中可以看出,服務星群總體上優(yōu)先選擇軌道運行方向上相位差最小的臨近目標星進行服務,從而同時降低在軌服務任務完成時間和燃料消耗。此外,優(yōu)化后的任務規(guī)劃方案滿足一對一在軌服務模式下的任務指派約束,且所需的最大速度增量為122.0 m/s、最長變軌時間為40225.0 s,符合工程實際要求。為了進一步說明GCDE 的優(yōu)化性能,本研究還采用MATLAB 提供的整數編碼遺傳算法(GA)工具箱求解上述在軌服務任務規(guī)劃問題(GA種群規(guī)模為100,最大進化代數為100,其它參數采用MATLAB GA 工具箱默認設置),得到GCDE 與GA 優(yōu)化結果對比如表3所示。表3中的結果表明,本文提出的GCDE 方法在求解衛(wèi)星星群一對一在軌服務任務規(guī)劃問題時具有更好的全局收斂性,且其計算成本相比于傳統(tǒng)GA 減少了約90%,從而驗證了GCDE的有效性和實用性。
表1 服務星和目標星初始軌道根數Table 1 Initial orbital elements of the service satellites and target satellites
表2 任務規(guī)劃結果Table 2 Results of mission planning
表3 GCDE和GA優(yōu)化結果對比Table 3 Comparison of GCDE and GA optimization results
本文提出了一種基于網格編碼差分進化的在軌服務任務規(guī)劃方法,能夠實現(xiàn)共面圓軌道衛(wèi)星星群一對一任務規(guī)劃問題的有效求解。本研究采用任務分配-霍曼轉移兩層結構建立了規(guī)劃框架,并提出了一種新型網格編碼差分進化算法,通過定制網格編碼機制與差分變異操作,實現(xiàn)最優(yōu)可行任務規(guī)劃方案的高效求解。仿真案例表明,本文提出的網格編碼差分進化方法能夠實現(xiàn)共面圓軌道衛(wèi)星星群一對一在軌服務任務規(guī)劃問題的有效求解,且計算效率較傳統(tǒng)遺傳算法具有顯著提升,從而驗證了本文研究工作的有效性與工程實用性。