?

基于協同粒子群算法的航天器集群動態路徑規劃算法研究

2022-01-11 13:54張震方群宋金豐張修瑋朱戰霞
西北工業大學學報 2021年6期
關鍵詞:航天器坐標系半徑

張震, 方群, 宋金豐, 張修瑋, 朱戰霞

(西北工業大學 航天飛行動力學技術重點實驗室, 陜西 西安 710072)

隨著航天器集群系統成為近些年航天領域研究的熱點,航天器集群路徑規劃問題成為航天器集群研究中的重點問題。雖然集群在航天領域中才初露頭角,但參考其在航空領域或地面任務中的發展可知,使用智能航天器集群執行空間任務具有巨大的前景。

航天器的路徑規劃[1]主要研究航天器按照燃料消耗最小、飛行時間最短等性能指標,根據環境信息和自身狀態信息,如何在保證不發生碰撞的前提下以最優路徑從初始位置到達最終位置。根據航天器工作環境的不同,其路徑規劃問題被分為2類:靜態路徑規劃[2]和動態路徑規劃[3]。

針對靜態路徑規劃問題,McInnes[4]采用人工勢場法在空間站附近規劃了空間在軌服務航天器的近程飛行運動;LaValle等[5]對航天器三維在軌服務運動進行研究,并考慮了簡單的運動動力學微分約束和障礙;Frazzoli[6]采用偽隨機的方法對離散脈沖推力運動控制模式的航天器航跡進行規劃;Feron等[7]采用概率路線圖算法(PRM)規劃方法對敏捷航天器的姿態運動進行規劃;Cheng等[8]在LaValle的基礎上進一步對航天器在軌服務運動行為規劃進行研究,建立了比后者更為復雜的航天器模型,即對小型的航天器建立慣性空間的六自由度微分方程,考慮推力器不僅提供推力,同時也改變飛行姿態。上述研究均是針對靜態路徑規劃進行的,認為空間目標在短時間內不會改變位置,因此會有部分誤差存在。

針對動態路徑規劃問題,Wang等[9]較早研究了隊形重構問題,該方法采用燃料最優與各種可能隊形的排列組合相結合的方式進行研究;曹靜等[10]采用粒子群優化算法實現主從體系衛星編隊的多次構型重構,并考慮了全局燃料消耗最優化問題,但二者的研究均未考慮星間碰撞規避問題。黃海濱[11]采用粒子群優化算法實現分布式衛星編隊的構型重構,并考慮了星間碰撞規避問題,但僅通過集群邊界約束處理了集群內部的碰撞規避,尚未對環境障礙物的碰撞規避展開研究。Nasrollahy和Javadi[12]采用粒子群優化算法解決了目標點、障礙物都移動的機器人路徑規劃問題,環境中還存在靜止的障礙物;張彬[13]應用粒子群優化算法、人工勢場法和圍捕策略解決了群體機器人在動態未知環境中追捕并包圍另外一個機器人過程的路徑規劃問題,但二者均是在二維環境下對集群路徑規劃問題進行研究。謝竟[14]針對目標運動軌跡未知及圍捕過程中主動逃逸的問題,提出一種基于粒子群算法的連續環境下動態預測目標的多機器人群體博弈的圍捕-逃逸算法,雖然對三維環境下集群圍捕動態目標的路徑規劃問題展開了研究,但其是針對無人機集群進行了相應設計,而航天器特殊的空間環境使得在路徑規劃問題中必須要考慮航天器及目標受到的軌道力作用。

綜上,傳統的路徑規劃方法在空間環境中并不完全適用。在公開文獻中難以找到針對障礙物的動態目標圍捕進行航天器集群路徑規劃研究。本文首先建立航天器集群和動態目標的相對運動模型以及相對姿態的運動學模型;之后根據現有研究中的動態目標圍捕原則將集群圍捕動態目標問題轉化為航天器跟蹤動態圍捕點的路徑規劃問題;然后建立多約束條件下以航天器集群的總燃料消耗最少為性能指標的優化模型;最后,對協同粒子群優化算法(CPSO)進行改進,提高了其相比于傳統PSO算法的運算速度,并利用改進的CPSO算法求解該優化問題。

1 航天器集群的相對運動動力學建模

1.1 坐標系的定義

1.1.1 地心赤道慣性坐標系OEX1Y1Z1

以地心為坐標系原點OE,X1軸沿地球赤道平面與黃道面的交線,并指向J2000平春分點;Y1軸垂直于地球赤道平面并指向北極;Z1軸滿足右手定則。

1.1.2 以參考星(空間站)為原點的軌道坐標系oxyz

以參考星的質心為坐標系原點o,x軸沿地心指向參考星質心,y軸位于參考星軌道平面內,垂直于x軸,并指向參考星的運動方向;z軸由右手定則確定。根據計算的需要,參考星的選擇可以是某個實際的航天器,也可以是一個虛擬航天器。該坐標系可視為航天器相對運動參考坐標系,也稱為Hill坐標系,后文中所提到的參考系均是該坐標系。

1.1.3 航天器本體坐標系obxbybzb

以航天器質心作為坐標原點ob,xb,yb,zb3個坐標軸分別沿著航天器的3個正交慣性主軸方向構成右手系,該坐標系是隨航天器本體運動的固連坐標系。

圖1 坐標系定義

1.2 相對運動方程

1.2.1 相對運動動力學模型

線性化描述空間兩衛星相對運動的CW方程如下[15]:

(1)

(2)

此處提出2個假設:

1) 航天器集群運動軌跡為近圓軌道;

2) 航天器可在幾個周期內到達目標點。

根據文獻[16]所述,當航天器集群任務在幾個軌道周期就可完成時,大氣阻力攝動以及J2項攝動等對航天器的影響可以忽略不計。因此,可以忽略航天器在短時間內進行近距離機動時攝動的影響。為此可以采用C-W方程近似描述航天器的運動。

根據文獻[17]可知,航天器集群中每個成員航天器到達目標點所需要的燃料消耗與其機動次數有關,且機動次數越多所需要消耗的總燃料越少。取相同的機動時間間隔,由(1)式可推導如下離散形式的相對運動動力學模型[15]

(3)

1.2.2 相對姿態運動學模型

由于目標旋轉會導致圍捕點發生變化,需要考慮目標的自旋運動。為避免奇異性的產生,引入四元數來描述目標的自旋[18]

(6)

(7)

式中:Q=[q0,q1,q2,q3]T;t表示初始時刻;T表示自旋時間,[ω1,ω2,ω3]T表示圍捕點繞三軸的旋轉角速度。由于目標在旋轉過程中不受旋轉力矩影響,四元數取值為初始時刻t時的數值。

由于目標自旋,為描述圍捕點在目標本體系下的位置狀態,引入如下旋轉矩陣

(8)

式中:下標a表示圍捕航天器到達圍捕點時刻;下標b表示初始時刻;[x,y,z]表示圍捕點在目標本體系下的位置狀態;R表示旋轉矩陣,具體定義如下

R=

(9)

1.3 圍捕點確定

由于本文研究重點在于航天器集群的路徑規劃問題,不在圍捕點上做深入研究,故采用已有研究方法中的一種滿足圍捕空間扁平目標的圍捕點作為目標點進行航天器集群路徑規劃[19-20]。如圖2所示,假定空間目標為一扁平狀正四邊形,圍捕點位于四邊形俯視圖兩中線交點上即可。

圖2 圍捕構型設計

至此,航天器集群圍捕空間碎片的路徑規劃問題即轉化為航天器集群跟蹤動態圍捕點的路徑規劃問題。

本文采用了如下的圍捕點分配策略:

1) 每個航天器有且僅有一個圍捕點;

2) 航天器到圍捕點直線路徑長度總和最小;

3) 只在t0時刻進行圍捕點分配,在t0時刻完成圍捕點分配后,在t1到tf時間段內航天器對應的圍捕點不變。

記t0時刻第l個航天器和第i個圍捕點之間的距離為

DSl,WBi=

(10)

分配結果應滿足(11)式

(l=1,2,…,M;i=1,2,…,M)

(11)

2 航天器集群相對運動及其優化模型

2.1 航天器集群系統運動學方程

記航天器集群中各成員航天器每次脈沖機動的時間間隔為ΔT,k表示第k個時間間隔,當k=N時,第l個航天器的狀態量XlN則為

(12)

式中

由于圍捕點會因自旋而導致位置偏移,航天器集群中各成員航天器需要在每次機動時對目標點位置進行修正,因此取T=(k-1)·ΔT為自初始時刻起第k次機動脈沖的時間,并計算圍捕點在此機動時刻的位置,從而更新各成員航天器的目標點,需要注意的是T=(k-1)·ΔT構成了一個離散型時間序列,該離散型時間序列上的每個時間點均包含在(7)式的自旋時間T中;相關矩陣定義如下

式中,n為(2)式中定義的平均角速度。

由于集群中共有M個航天器,(4)式可改寫為

(17)

式中:G為常值;Φ為一個以時間為自變量的六維函數方陣。

將(17)式代入(11)式,可得

(18)

化簡(18)式,可得航天器集群中每個航天器所期望的控制輸入量為

(19)

2.2 燃料最優模型建立

2.2.1 空間障礙物規避設計

由于空間中的障礙物大多都存在自旋運動且為尺度較小的空間碎片,因此難以建立對其形狀或狀態的外包絡描述。假設空間目標為質量均勻的任意物體,經過一段時間的觀察,發現碎片自旋會導致其所經過的區域是以質心為球心的球體,其半徑Robstacle由該物體外包絡到質心最遠點的距離決定。因此,本文選擇使用包絡球作為不可達域來描述空間障礙物。

為實現障礙物的碰撞規避,本文采用禁飛區結合動態懲罰函數的方式進行航天器集群路徑規劃中的障礙物規避路徑設計。如(20)式所示,禁飛區以障礙碎片質心為球心,以不可達域的球半徑Robstacle和航天器的安全距離Rspacecraft之和為禁飛區半徑。

Rforbid=Robstacle+Rspacecraft

(20)

圖3 航天器避障路徑規劃示意圖

DA,B=DA,C+DC,B

(21)

當航天器到對應圍捕點的直線路徑中出現障礙物時,航天器應選擇較短的路徑繞開障礙物。以此在確保航天器安全性的前提下減少飛行距離,從而減小燃料消耗。

圖4 航天器避障路徑選擇示意圖

為了計算粒子的懲罰值,首先需找到航天器到粒子的直線路徑與禁飛區的2個交點M,N,如圖4所示。這意味著航天器可以在第一個交點向任意一個方向轉彎,繞過禁飛區到達第二個交點。從圖4中可看出,航天器可選擇的路徑有無數條,但是為了節省燃料消耗,航天器需選擇較短的路徑。由空間幾何知識可知,過球面上兩點的最短距離為過這兩點的大圓的劣弧,在圖4中顯示為MPN,大圓是指以球心為圓心,以球半徑為其半徑的圓。因此,航天器規避空間障礙的罰函數可以寫成

(22)

因此,t時刻,航天器Sl若選擇粒子i所在的位置作為下一時刻的路徑節點,則航天器經過粒子i所在的位置到達對應圍捕點的路徑長度應記為

DSl,WBl=DSl,nl+Dnl,WBl+Qi,t

(23)

之后考慮航天器集群中每個航天器在每次機動時候的燃料消耗,即推力大小。當目標點固定時,航天器到達目標點所消耗的燃料與機動次數有關,所經歷的機動次數越多則燃料消耗越少[17]。因此,本文設定航天器集群中每個航天器的機動間隔為ΔT,每個航天器的機動次數為N,則每個航天器的燃料消耗可表示為

(24)

式中,‖uk‖l表示第l個航天器在第k個時間節點所產生的脈沖幅值,由(21)式確定。

結合(23)式和(24)式,可得到如下優化函數

(25)

式中,α1,α2,α3為權重系數,ε定義如下

(26)

式中:k表示使用CPSO算法優化過程中粒子群當前迭代次數;a,b均取常數,設計該項的目的是在優化過程中,大多數時候以距離最優為優化指標,但當粒子群每進化到k=ab次時,航天器將會交換個體信息優化航天器集群總燃料。也就是說,對于航天器集群而言優化指標認為總燃料消耗最優。

2.2.2 約束條件的確定

對于優化函數(25)式,考慮其約束條件。

第一個約束條件是:對于航天器集群中的每個航天器來說,本文認為其所安裝的推力設備相同,產生的推力上限也相同,因此得到輸入控制量上限約束或最大推力約束為

0≤‖uk‖l≤umax

(27)

式中,umax表示航天器所能產生的最大推力上限。

第二個約束條件是:在航天器抵達圍捕點的過程中,要考慮每個航天器之間不會發生碰撞;同時要考慮每個航天器之間的距離不能過大,防止超過通訊范圍,因此得到如下約束

(28)

2.2.3 優化函數的確定

由(25)式、(27)式和(28)式可得航天器集群中每個航天器抵達目標點時的優化函數

(29)

式中,M表示航天器集群中的航天器個數。

3 CPSO算法設計

本文賦予每個航天器一個含有np個粒子的粒子群,每個粒子都含有3個維度,分別對應航天器在x,y,z方向上的位置信息。但是,對航天器集群任務而言,成員航天器各自優化路徑,只在(26)式中的k=ab時相互交換信息,實現集群內部協同。

CPSO算法流程如下:

step1 初始化CPSO算法參數

為了提高CPSO算法的優化效率,本文首先提出根據航天器最大推力約束,將各粒子的初始值約束在一個半徑為Rmax的球域內,球心位置由航天器當前時刻的位置信息確定,以此避免初始粒子生成空間不滿足動力學方程,粒子在搜索過程中重復大量無用搜索;其次提出球半徑R根據航天器與對應圍捕點之間的距離來確定,使得球域逐漸減小,以便粒子群在逐次搜索的過程中不斷減小搜索區域,提高運算效率。

需要注意的是,任意時刻搜索半徑都必須大于圍捕點T時間內移動的步長,以確保航天器可以始終跟蹤到圍捕點。粒子群算法搜索半徑R的取值可由(30)式給出

(30)

式中,β1,β2,β3,β4為系數。通過改變系數β1,β2,β3,β4可以修改搜索半徑R和搜索半徑的變化曲率。

step2 初始化粒子群,給定粒子群迭代次數和粒子數量

step3 通過(25)式計算適應度函數值

step4 用(31)式計算CPSO算法中每個粒子的個體最優值

(31)

step5 用(32)式計算CPSO算法中整個粒子群的全局最優值

(32)

step6 每迭代nc次,與其他粒子群的全局最優解交換信息,利用(28)式計算任意兩全局最優粒子間的距離。

如果滿足邊界約束(28)式,則應用當前的全局最優解;如果不滿足,則使用nc次之前的全局最優解。以此確保航天器滿足距離約束。

step7 完成前6步后,根據(33)式更新粒子的位置和速度。

(33)

本節中各參數定義如表1所示。

表1 本節中各符號的物理意義

慣性權重ω對于保證粒子收斂和權衡粒子群搜索與開發的矛盾是十分重要的,較大的ω有利于增加種群的多樣性,而較小的ω則有利于對局部最優值的開發。為提升搜索速率與精度,目前多采用動態變化的ω。即在最初階段使用較大的ω,從而進行大量的探索;而隨著搜索的進行,逐漸減小ω,以便在局部進行深入搜索。本文選用了線性遞減慣性權重的方式,即

(34)

式中:ωmin表示最小慣性權重;ωmax表示最大慣性權重;k表示當前迭代次數;kmax表示最大迭代次數。

step8 定義粒子群算法中粒子的速度約束和位置約束

粒子群在進行速度更新時,粒子的速度有可能會是一個很大的值,這會導致粒子沖出解空間的范圍甚至發散。為了控制各粒子的搜索行為,需要將粒子的飛行速度控制在一定的范圍內。因此,粒子的速度更新公式為

(35)

式中,Vmax,d為粒子在第d維上所允許的最大速度。

當粒子群中的粒子采用(33)式更新迭代時,粒子i的解也有可能會超出搜索范圍。對超出搜索范圍約束的粒子i做如下處理:

圖5 對超出搜索范圍粒子進行修正的示意圖

如圖5所示,假設航天器在t時刻位于A點,灰色圓域為粒子群算法搜索域,超出粒子群搜索邊界約束的粒子i位于參考坐標系的B點處。

已知A、B兩點在參考系中的坐標分別為(xA,yA,zA)和(xB,yB,zB),則B′(xB′,yB′,zB′)的坐標可由(36)式計算得到

(36)

式中:R表示粒子群搜索半徑;‖dAB‖為表示A、B兩點的歐幾里德距離。

通過設置收縮因子,在保證粒子進化方向的前提下,對在進化過程中超出搜索邊界的粒子進行修正,從而避免了對粒子進化結果過多的影響。

step9 運用step3中的方法計算適應度函數,如果適應度函數收斂,則輸出最優解;如果適應度函數不收斂,則從step4開始重復依次執行,直到適應度函數收斂為止。

4 仿真分析

4.1 仿真初始條件

假設圍捕目標為質量均勻的正四邊形扁平碎片,對角線長為8 m,各圍捕點位置在目標本體坐標系下的位置如表2所示。

表2 圍捕點在本體坐標系下的位置信息 m

由于最大推力約束和燃料消耗均可用速度增量表示,本文設計速度增量上限為5 m/s,總燃料消耗用速度增量的和來代替。

本文選取空間站所在軌道的一顆虛擬衛星作為參考星,其軌道高度為320 km,平均角速度為1.156 97×10-3rad/s。假設初始狀態目標碎片質心位于參考系(100,100,100) m處,相對運動的初速度為(0.5,-200n,0.5) m/s。目標本體系與參考系之間有如下歐拉角關系

γ=60°,θ=30°,Ψ=45°

目標碎片繞本體系xb,yb,zb三軸以如下運動規律旋轉

目標碎片質心在空間中的運動規律遵循CW運動方程,即(1)式。取任務時間為tf=60 s,平均時間離散化間隔T=1s。

給定CPSO算法參數如下:

航天器集群中各航天器的初始狀態如表3所示,禁飛區設置如表4所示。

表3 航天器集群中各成員航天初始狀態量

表4 禁飛區設計

4.2 仿真結果

利用4.1節中的仿真條件進行仿真驗證,首先計算圍捕點運動軌跡并進行圍捕點分配;之后設計CPSO算法的動態搜索半徑并利用改進的CPSO算法搜索各成員航天器的最優路徑;最后利用固定搜索半徑的粒子群算法搜索各成員航天器的最優路徑,將二者的結果進行對比分析。

通過(5)~(6)式計算運動過程中四元數隨時間的函數值,并將函數值代入(8)式,確定目標航天器到參考系oxyz的旋轉矩陣。之后將(8)式帶入(7)式,計算圍捕點在參考系oxyz下圍捕點的運動軌跡,如圖6所示。

圖6 圍捕點移動軌跡圖

之后為航天器集群中每個航天器分配對應圍捕點。通過(9)式計算航天器與圍捕點之間的距離,并通過(10)式的分配原則進行分配,在該仿真條件下,圍捕點分配如表5所示。

表5 航天器與圍捕點的最優匹配結果

設置最大搜索半徑為6 m,最小搜索半徑為1 m,由(30)式確定粒子群搜索半徑R變化規律為

(37)

最后應用第3節中的CPSO算法計算航天器集群追蹤動態圍捕點時的運動軌跡,得到各航天器運動軌跡如圖7所示,在追蹤過程中,各航天器與禁飛區之間的最小距離為0.014 4 m,各航天器與禁飛區邊界的距離均大于0,可以避開禁飛區進行目標點追蹤。

圖7 搜索半徑動態變化時各航天器軌跡圖

任意兩航天器之間的距離隨時間變化曲線如圖8所示。結果表明,在航天器集群跟蹤圍捕點的全過程中,航天器集群之間的距離始終小于20 m且大于5 m,滿足集群邊界約束的要求。

圖8 任意兩航天器的距離變化曲線圖

航天器與對應圍捕點之間的距離變化如圖9所示。由其可見,航天器集群在60 s之后便可跟蹤圍捕點,實現對動態空間目標碎片的圍捕。

圖9 航天器與對應圍捕點的距離變化曲線圖

各航天器在每個時間節點下的速度增量如圖10所示。

圖10 各航天器速度增量變化

為驗證相比于搜索半徑不變的CPSO算法,動態搜索半徑所帶來的改善,本文針對搜索半徑不變的CPSO算法進行仿真,得到航天器集群中各成員航天器的跟蹤路徑如圖11所示,各航天器在每個時間節點下的速度增量如圖12所示。

圖11 固定搜索半徑下各航天器軌跡圖

圖12 搜索半徑固定時航天器速度增量變化

對比圖7和圖11可知,對于固定搜索半徑的CPSO算法,由于靠近目標點時粒子群的搜索半徑依舊很大,將會導致粒子群搜索效率低下產生波動,影響路徑規劃的最優值,產生無用的脈沖機動;而使用動態半徑進行路徑規劃時,航天器集群中各航天器的路徑趨于平穩,動態變化的CPSO搜索半徑將大大提高路徑規劃的穩定性;對比圖7和圖11可知,當搜索半徑固定時,由于在臨近目標點附近搜索范圍依舊很大,將會導致粒子群難以找到最優點,使得航天器反復機動,進行大量脈沖,消耗過多燃料;而使用動態半徑進行粒子群迭代時,由于搜索半徑較小,將避免粒子群做過多無用搜索,利于找到最優點,減少脈沖機動次數,不僅使得航天器運動趨于穩定,也能節省大量燃料,需要的總速度增量約為固定半徑時的五分之一。

5 結 論

對于航天器集群動態路徑規劃問題,本文首先提出了一種航天器集群規避障礙并追蹤動態目標的路徑規劃方法,即通過將各航天器的軌道動力學問題轉換為最優化問題,再應用CPSO算法進行求解。其次提出了一種對于CPSO算法的改進方法,通過將粒子群算法中的固定搜索半徑改寫為動態搜索半徑,提高了航天器集群路徑規劃的穩定性,使得航天器集群在趨于目標點時不會出現脈沖不穩定的情況。

仿真表明,本文所提出的CPSO算法不僅可以解決航天器集群在規避障礙前提下的三維動態目標追蹤問題,而且通過對CPSO算法的改進可以大量減少所需要進行的脈沖機動量,減少燃料消耗。

航天器集群對于不同的空間任務會有不同的目標點,因此對于不同的集群任務來說,只需要對目標點進行更改,航天器集群路徑規劃問題依舊可以采用本文所提出的CPSO算法來解決。

猜你喜歡
航天器坐標系半徑
2022 年第二季度航天器發射統計
直擊多面體的外接球的球心及半徑
獨立坐標系橢球變換與坐標換算
2021年第4季度航天器發射統計
《航天器工程》征稿簡則
2019 年第二季度航天器發射統計
將相等線段轉化為外接圓半徑解題
坐標系背后的故事
三角函數的坐標系模型
求坐標系內三角形的面積
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合