APP下载

基于协同粒子群算法的航天器集群动态路径规划算法研究

2022-01-11张震方群宋金丰张修玮朱战霞

西北工业大学学报 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 年第二季度航天器发射统计
将相等线段转化为外接圆半径解题
坐标系背后的故事
三角函数的坐标系模型
求坐标系内三角形的面积