首页 / 专利库 / 飞机类型 / 重航空器 / 一种空间碎片清除任务的规划方法及装置

一种空间碎片清除任务的规划方法及装置

阅读:112发布:2020-05-08

专利汇可以提供一种空间碎片清除任务的规划方法及装置专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种空间碎片清除任务的规划方法及装置,获取待清除空间碎片信息和 航天器 状态信息;根据待清除空间碎片信息和航天器状态信息构建 强化学习 搜索树模型;其中,在强化学习搜索树模型中包括状态量、动作和收益值;根据强化学习搜索树模型的初始状态,采用上确界 树搜索 方法生成动作;根据状态量和动作生成下一个的状态量,当生成的状态量为终止状态量,生成空间碎片的清除序列及对应的收益值;重复执行生成序列步骤,直至清除序列的数量达到第一预定数量时,选择收益值最大的清除序列,作为待清除空间碎片的最优清除序列;本 申请 可以减少生成最优清除序列的时间消耗,提升航空器的 能源 利用率。,下面是一种空间碎片清除任务的规划方法及装置专利的具体信息内容。

1.一种空间碎片清除任务的规划方法,其特征在于,包括:
获取待清除空间碎片信息和航天器状态信息;
根据所述待清除空间碎片信息和航天器状态信息构建强化学习搜索树模型;其中,在所述强化学习搜索树模型中包括状态量、动作和收益值;
生成序列:根据所述强化学习搜索树模型的初始状态,采用上确界树搜索方法生成动作;根据所述状态量和动作生成下一个的状态量,当生成的状态量为终止状态量,生成空间碎片的清除序列及对应的收益值;
其中,在所述上确界树搜索方法的扩展过程中,通过随机或者构建好的神经网络模型选择动作;在所述上确界树搜索方法的模拟过程中,模拟方式选择随机模拟方式;
重复执行生成序列步骤,直至所述清除序列的数量达到第一预定数量时,选择所述收益值最大的清除序列,作为所述待清除空间碎片的最优清除序列。
2.如权利要求1所述的一种空间碎片清除任务的规划方法及装置,其特征在于,在生成序列步骤中,当生成的状态量为非终止状态量时,重复执行以下步骤:
根据当前的状态量,采用上确界树搜索方法中的第一策略生成动作;
根据当前的状态量以及生成的动作生成下一状态量;
判断所述下一状态量是否为终止状态量。
3.如权利要求2所述的一种空间碎片清除任务的规划方法,其特征在于,根据当前的状态量以及生成的动作生成下一状态量包括:
获取当前状态量;
当当前状态量为非终止状态量且满足第一预设条件时,根据所述第一策略从预先构建好的动作库中选择动作;
根据选择的所述动作和当前状态量生成下一状态量。
4.如权利要求3所述的一种空间碎片清除任务的规划方法,其特征在于,当当前状态量为非终止状态量且不满足第一预设条件时:
以当前状态量为输入信息,采用上确界树搜索方法中的扩展和模拟过程生成第二策略;
根据所述第二策略从预先构建好的动作库中选择动作。
5.如权利要求4所述的一种空间碎片清除任务的规划方法,其特征在于,采用上确界树搜索方法中的扩展和模拟过程生成第二策略的方法为:
根据当前状态量,通过随机或者构建好的神经网络模型从预先构建好的动作库中选择动作;
根据动作和当前状态量生成下一状态量;
根据状态量随机从预先构建好的动作库中选择动作,直至状态量为终止状态量,生成待清除空间碎片的清除序列;
更新该清除序列中的每个空间碎片的收益值;
当清除序列的数量达到第二预定数量时,根据每个空间碎片的收益值生成第二策略。
6.如权利要求5所述的一种空间碎片清除任务的规划方法,其特征在于,当清除序列的数量未达到第二预定数量时,重复执行以下步骤:
根据当前状态量,通过随机或者构建好的神经网络模型从预先构建好的动作库中选择动作;
根据动作和当前状态量生成下一状态量;
根据状态量随机从预先构建好的动作库中选择动作,直至状态量为终止状态量,生成待清除空间碎片的清除序列;
更新该清除序列中的每个空间碎片的收益值。
7.如权利要求1所述的一种空间碎片清除任务的规划方法,其特征在于,所述状态量包括剩余待清除空间碎片的数量、航天器的剩余能量、当前空间碎片清除任务的剩余时间、下一个待清除的空间碎片编号和所有空间碎片状态的二进制表达;
所述动作为航天器从一个空间碎片前往另一个空间碎片所执行的动作;
所述收益值为针对一个状态量采取一个动作后得到的评分值。
8.一种空间碎片清除任务的规划装置,其特征在于,包括:
获取模,用于获取待清除空间碎片信息和航天器状态信息;
构建模块,用于根据所述待清除空间碎片信息和航天器状态信息构建强化学习搜索树模型;其中,在所述强化学习搜索树模型中包括状态量、动作和收益值;
生成模块,用于生成序列:根据所述强化学习搜索树模型的初始状态,采用上确界树搜索方法生成动作;根据所述状态量和动作生成下一个的状态量,当生成的状态量为终止状态量,生成空间碎片的清除序列及对应的收益值;
其中,在所述上确界树搜索方法的扩展过程中,通过随机或者构建好的神经网络模型选择动作;在所述上确界树搜索方法的模拟过程中,模拟方式选择随机模拟方式;
选择模块,用于重复执行生成序列步骤,直至所述清除序列的数量达到第一预定数量时,选择所述收益值最大的清除序列,作为所述待清除空间碎片的清除序列。
9.如权利要求8所述的一种空间碎片清除任务的规划装置,其特征在于,在生成序列步骤中,当生成的状态量为非终止状态量时,还包括以下模块,用于重复执行以下步骤:
第一动作生成模块,用于根据当前的状态量,采用上确界树搜索方法中的第一策略生成动作;
第一状态量生成模块,用于根据当前的状态量以及生成的动作生成下一状态量;
判断模块,用于判断所述下一状态量是否为终止状态量。
10.一种空间碎片清除任务的规划设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述的一种空间碎片清除任务的规划方法。

说明书全文

一种空间碎片清除任务的规划方法及装置

【技术领域】

[0001] 本发明属于空间碎片清除技术领域,尤其涉及一种空间碎片清除任务的规划方法及装置。【背景技术】
[0002] 空间碎片已成为人类航天活动以及在轨航天器的巨大障碍与威胁。低轨空间碎片分布密集、危害较大。由于Kessler效应,碎片间碰撞、轨道摄动使得空间碎片数量急剧增加、分布范围不断扩大。最新空间碎片发展预测报告显示:截止2014年,低轨空间碎片数量已远超预测值,发展低轨空间碎片清除技术刻不容缓。
[0003] 主动碎片清除(Active Debris Removal,ADR)是一种通过逐一抓捕来清理低轨空间碎片的技术,如何设计ADR航天器最优的任务序列及多次交会轨迹是目前多碎片主动清除面临的首要难题,目前,常见的ADR航天器的规划方法有基于遗传算法的规划算法以及在文“On the Application of Reinforcement Learning in Multi-debris Active Removal Mission Planning”中的Deep Q Learning(DQN)算法,但是这些规划方法中搜索最优清除序列的耗时长,精度低,且容易陷入局部最优的方案中,会降低航天器的能源利用率。【发明内容】
[0004] 本发明的目的是提供一种空间碎片清除任务的规划方法及装置,以减少生成最优清除序列的时间消耗,提升航空器的能源利用率。
[0005] 本发明采用以下技术方案:一种空间碎片清除任务的规划方法,包括:
[0006] 获取待清除空间碎片信息和航天器状态信息;
[0007] 根据待清除空间碎片信息和航天器状态信息构建强化学习搜索树模型;其中,在强化学习搜索树模型中包括状态量、动作和收益值;
[0008] 生成序列:根据强化学习搜索树模型的初始状态,采用上确界树搜索方法生成动作;根据状态量和动作生成下一个的状态量,当生成的状态量为终止状态量,生成空间碎片的清除序列及对应的收益值;
[0009] 其中,在上确界树搜索方法的扩展过程中,通过随机或者构建好的神经网络模型选择动作;在上确界树搜索方法的模拟过程中,模拟方式选择随机模拟方式;
[0010] 重复执行生成序列步骤,直至清除序列的数量达到第一预定数量时,选择收益值最大的清除序列,作为待清除空间碎片的最优清除序列。
[0011] 进一步地,在生成序列步骤中,当生成的状态量为非终止状态量时,重复执行以下步骤:
[0012] 根据当前的状态量,采用上确界树搜索方法中的第一策略生成动作;
[0013] 根据当前的状态量以及生成的动作生成下一状态量;
[0014] 判断下一状态量是否为终止状态量。
[0015] 进一步地,根据当前的状态量以及生成的动作生成下一状态量包括:
[0016] 获取当前状态量;
[0017] 当当前状态量为非终止状态量且满足第一预设条件时,根据第一策略从预先构建好的动作库中选择动作;
[0018] 根据选择的动作和当前状态量生成下一状态量。
[0019] 进一步地,当当前状态量为非终止状态量且不满足第一预设条件时:
[0020] 以当前状态量为输入信息,采用上确界树搜索方法中的扩展和模拟过程生成第二策略;
[0021] 根据第二策略从预先构建好的动作库中选择动作。
[0022] 进一步地,采用上确界树搜索方法中的扩展和模拟过程生成第二策略的方法为:
[0023] 根据当前状态量,通过随机或者构建好的神经网络模型从预先构建好的动作库中选择动作;
[0024] 根据动作和当前状态量生成下一状态量;
[0025] 根据状态量随机从预先构建好的动作库中选择动作,直至状态量为终止状态量,生成待清除空间碎片的清除序列;
[0026] 更新该清除序列中的每个空间碎片的收益值;
[0027] 当清除序列的数量达到第二预定数量时,根据每个空间碎片的收益值生成第二策略。
[0028] 进一步地,当清除序列的数量未达到第二预定数量时,重复执行以下步骤:
[0029] 根据当前状态量,通过随机或者构建好的神经网络模型从预先构建好的动作库中选择动作;
[0030] 根据动作和当前状态量生成下一状态量;
[0031] 根据状态量随机从预先构建好的动作库中选择动作,直至状态量为终止状态量,生成待清除空间碎片的清除序列;
[0032] 更新该清除序列中的每个空间碎片的收益值。
[0033] 进一步地,
[0034] 状态量包括剩余待清除空间碎片的数量、航天器的剩余能量、当前空间碎片清除任务的剩余时间、下一个待清除的空间碎片编号和所有空间碎片状态的二进制表达;
[0035] 动作为航天器从一个空间碎片前往另一个空间碎片所执行的动作;
[0036] 收益值为针对一个状态量采取一个动作后得到的评分值。
[0037] 本发明的另一种技术方案:一种空间碎片清除任务的规划装置,包括:
[0038] 获取模,用于获取待清除空间碎片信息和航天器状态信息;
[0039] 构建模块,用于根据待清除空间碎片信息和航天器状态信息构建强化学习搜索树模型;其中,在强化学习搜索树模型中包括状态量、动作和收益值;
[0040] 生成模块,用于生成序列:根据强化学习搜索树模型的初始状态,采用上确界树搜索方法生成动作;根据状态量和动作生成下一个的状态量,当生成的状态量为终止状态量,生成空间碎片的清除序列及对应的收益值;
[0041] 其中,在上确界树搜索方法的扩展过程中,通过随机或者构建好的神经网络模型选择动作;在上确界树搜索方法的模拟过程中,模拟方式选择随机模拟方式;
[0042] 选择模块,用于重复执行生成序列步骤,直至清除序列的数量达到第一预定数量时,选择收益值最大的清除序列,作为待清除空间碎片的清除序列。
[0043] 进一步地,在生成序列步骤中,当生成的状态量为非终止状态量时,还包括以下模块,用于重复执行以下步骤:
[0044] 第一动作生成模块,用于根据当前的状态量,采用上确界树搜索方法中的第一策略生成动作;
[0045] 第一状态量生成模块,用于根据当前的状态量以及生成的动作生成下一状态量;
[0046] 判断模块,用于判断下一状态量是否为终止状态量。
[0047] 本发明的另一种技术方案:一种空间碎片清除任务的规划设备,包括存储器、处理器以及存储在存储器中并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述的一种空间碎片清除任务的规划方法。
[0048] 本发明的有益效果是:本申请根据待清除空间碎片信息和航天器信息构建了强化学习搜索树模型,将空间碎片清除问题转化为状态量、动作和收益值,并通过上确界树搜索方法生成动作,具体为该方法扩展过程中通过随机或者构建好的神经网络模型选择动作,且在模拟过程的模拟方式选择随机模拟方式,减少了生成最优清除序列的搜索次数,节省了最优清除序列的生成时间,进而提升航天器的能源利用率,增加了空间碎片清除任务规划的合理性。【附图说明】
[0049] 图1为本申请实施例一种空间碎片清除任务的规划方法的流程图
[0050] 图2为本申请实施例中根据当前状态量选择动作的流程图;
[0051] 图3为本申请实施例中的空间碎片清除任务的搜索树结构示意图;
[0052] 图4为本申请实施例中使用的神经网络结构图;
[0053] 图5为本申请实施例中训练的神经网络损耗图;
[0054] 图6为本申请实施例中训练的神经网络收敛效果图。【具体实施方式】
[0055] 下面结合附图和具体实施方式对本发明进行详细说明。
[0056] 为了适应本申请实施例的方法需要,对空间碎片清除问题进行了描述及设计。
[0057] 在本申请实施例中,航天器的轨道转移策略使用的是脉冲推的漂移轨道转移策略,转移能量消耗提前通过离散时间点计算得出。
[0058] 假设有N个空间碎片等待清除,其中,n(≤N)个空间碎片以特定的顺序进行离轨。T
空间碎片解的形式为d=(d(1),d(2),…,d(n)) ,其中,1≤d(i)≤N,d(i)为第i个被清除的空间碎片的编号。清除时间解的形式为t=(t(1),t(2),…,t(n))T,其中,T0≤t(1)<t(2)<…<t(n)<Tmax,T0为任务开始时间,Tmax为任务结束时间。所有空间碎片的轨道信息都可以通过t(i)传播。
[0059] 针对上述的时变系统,本申请实施例给出了最大收益模型,来确定解d与解t。该模型是在任务时间与转移能量约束下创造最大化任务收益,具体如下:
[0060]
[0061] 其中,g(i)>0,其为第i个空间碎片的清除收益,G(d)为整体任务的收益。
[0062] 在上述的任务收益模型下,还需要满足任务时间与转移能量约束条件:
[0063]
[0064]
[0065] 其中,Cv为每个阶段的转移能量消耗(即从上一清除的空间碎片转移到下一清除的空间碎片的转移能量消耗),CVelocity为整个空间碎片清除过程的转移能量消耗,Cd为每个阶段的转移时间消耗,CDuration为整个空间碎片清除过程的转移时间消耗。ΔVmax为整个轨道转移航天器(OTV)可提供的转移脉冲能量,值得注意的是G(d)可由设计者决定,可为解的长度或者积累下的碎片RCS值(即Radar Cross Section,雷达反射面积)。
[0066] 在解决上述问题时,本申请实施例可以采用强化学习的方法来实现。通用的强化学习框架由状态集合S,动作集合A组成。一个航天器在状态s后,完成动作a(在动作集合A中),通过环境的传播到达新的状态s’,并获得收益Ra(t,s')。航天器是在每个状态下选择适当的操作,以使累积收益最大化。从当前状态s到动作a的映射即为策略π(s)。
[0067] 本申请实施例的状态设计为:
[0068] 强化学习的状态需要能够完全表达规划器在每个步骤下需要的信息。由于损失函数信息已知,所以本状态量设计包含N+4变量。内容如下表所示,
[0069] 表1状态向量
[0070]状态编号 1 2 3 4 5-(N+4)
元素 剩下碎片数量 ΔVleft Tleft 当前目标碎片 二进制标识符
[0071] 其中,状态1为剩余的待清除空间碎片的数量,状态2为航天器的剩余转移脉冲能量(即剩余能量),状态3为清除任务的剩余时间,状态4为下一个待清除的目标空间碎片编号,状态5为使用二进制标志位表达所有的空间碎片的清除的状态信息(1代表已清除,0代表未清除)。
[0072] 例如,清除任务中共有5个需要清除的空间碎片,当前时刻已清除的空间碎片为2个,且已清除的空间碎片的编号分别为1和3,则状态为表示为10100。以上的所有可能的状态向量组成了状态空间S。
[0073] 该状态向量(如表中的状态向量)不但可以表达解空间中所有解(即清除序列),还表达了OTV(转移航天器)的状态信息,且该状态向量不包含之前完成的动作。该状态向量的有多种情况 如果N=320,ΔVmax=3000m/s,Tmax=365天,则根据上式计算会有7.5*10104种状态。
[0074] 本申请实施例的动作设计为:
[0075] 传统的强化学习中,动作是与时间同步的,因为状态往往是通过时间传播的。但是本实施例中给出的状态设计是针对多碎片清除任务状态的,而该状态是受清除步数决定。下文公式中给出了所有可能的动作a,并组成集合A。
[0076] a=[d,Δt]T   (4)
[0077] 其中,其中d为目标清除碎片,属于集合 Δt为转移至目标碎片消耗的时间,属于集合 在本实施例中,假设航天
器到达目标清除碎片的时间就是离开目标清除碎片的时间,因此,本实施例这种没有灯带过程的动作构造方法是适用于强化学习的。
[0078] 本申请实施例的状态传播设计为:
[0079] 下一步状态由状态传播函数(5)给出:
[0080] s'=T(s,a)   (5)
[0081] 其中,s’是下一个时刻航天器的状态信息,由当前时刻航天器的状态信息s以及动作a决定,T函数展开为式(6):
[0082]
[0083] 其中,注意的是Cv通过参数(s[4],a[1],Tmax-s[3],Tmax-s[3]-a[2])从预先计算好的损失矩阵中得到。
[0084] 本申请实施例的收益函数设计为:
[0085] 强化学习的收益函数设计是基于最大收益优化模型。每一步的收益为r:
[0086] r=R(s,a)   (7)
[0087] 其中,R为收益函数,其表达了在状态s和动作a的条件下获得的收益。在空间碎片清除路径规划的离线优化中,收益函数假设为确定性,即E[R(s,a)|a=[d,Δt]T]=g(d),并且所有动作的积累收益为传统强化学习的特殊情况:
[0088]
[0089] 其中,未来收益衰减因子γ选为1。
[0090] 根据上述内容,设计了本实施例中的空间碎片清除任务的搜索树结构,以实现强化学习算法。基于状态、动作、收益的设计,搜索树的不同分支可以通过图3来表达。
[0091] 从初始时刻的初始状态信息出发,搜索树不断地选择动作信息、同时根据选择的动作信息获得收益,在根据状态信息和动作信息达到新的状态展开,得到新的状态信息,直至到达终止状态。终止状态即为当前清除的空间碎片为终止空间碎片,终止空间碎片满足条件为:剩余待清除空间碎片数量为0、所述航天器剩余能量为0或清除任务的剩余时间为0。
[0092] 此时就需要算法重置到初始节点重新开始,即返回到确定航天器初始时刻的初始状态信息及初始动作信息后,在继续执行上述步骤。
[0093] 在搜索树中选择动作可以是随机选择,也可以是通过预先构建好的神经网络模型选择出的。本实施例中,为了追求所选择动作对后期形成清除序列的成功率,采用预先构建好的神经网络模型选择动作,该神经网络模型会输出选择每一个可选动作最终成功形成清除序列的概率,该概率会逐渐趋近于获得最优结果的概率,因为当前的目标函数为最大化总收益。
[0094] 本规划的动作选择概率分布隐藏在预先计算得到的损失函数中,即优化过程中要不断访问的转移能量消耗矩阵。因为当前解序列(即清除序列)未来能获得多少收益,是直到到达终止状态才能获得的。该搜索树需要在离线优化的不断重复实验的过程中逐步建立。随着更多数据的产生,该搜索树会逐渐趋近于最优动作选择概率分布。
[0095] 但是在实际问题中,搜索树往往具有非常大的深度和广度,而无法穷举。此时为了加快搜索,在穷举之前找到最优解,一些如蒙特卡洛树搜索(Monte Carlo Tree Search,MCTS)的方法来平衡探索与经验利用,并且神经网络也可以用于指导当前状态值。一个优秀的搜索算法应该是能够估计动作最终达到最优解的概率,使得不需要过多搜索就可以探索到最优解。同时,它也能够不过多的利用经验,以免陷入局部最优。所以基于此,采用了本实施例中的空间碎片清除任务的规划方法,该方法结合神经网络评估方法与树搜索过程,能够又快又好地完成获得最优解,即最优空间碎片的清除序列。
[0096] 本实施例的一种空间碎片清除任务的规划方法,如图1所示,首先,需要获取待清除空间碎片信息和航天器状态信息。空间碎片信息包括:空间碎片轨道参数、质量、RCS等可计算转移脉冲消耗以及清除效益的参数。航天器状态信息包括航天器当前任务、剩余转移脉冲、剩余任务时间等
[0097] 在获取到待清除的空间碎片信息和航天器状态信息后,根据待清除空间碎片信息和航天器状态信息构建强化学习搜索树模型;其中,在所述强化学习搜索树模型中包括状态量、动作和收益值。
[0098] 状态量包括剩余待清除空间碎片的数量、航天器的剩余能量、当前空间碎片清除任务的剩余时间、下一个待清除的空间碎片编号和所有空间碎片状态的二进制表达。动作为航天器从一个空间碎片前往另一个空间碎片所执行的动作。收益值为针对一个状态量采取一个动作后得到的评分值。
[0099] 在生成空间碎片清除序列之前,先对生成过程中的各个状态进行定义。在本市实施例中,因为状态与动作定义在步骤框架下,而不是时间框架下,所以定义决策序列(s1,a1,r1;s2,a2,r2;s3,a3,r3;…)为空间碎片清理的步骤。然后定义状态值函数为:
[0100]
[0101] 其中,π(·|s)为在状态s时选择动作的策略,γi为清除第i个空间碎片未来收益的消散因子,在本实施例的规划问题中视为1。状态值函数能够表达当前状态s下跟随策略π,预期未来能够产生多少总收益。
[0102] 因为状态转移函数为确定性的,所以,最优的状态动作对值函数为如果收敛到最优的Q值,那么当时的π(s)也即最优策略,则有状态动作对值函数为:
[0103] Qπ(s,a)=Eπ{R(s,a)+γVπ(s′)}   (10)
[0104] 基于上述的定义,本实施例中生成序列步骤具体为:
[0105] 根据强化学习搜索树模型的初始状态,采用上确界树搜索方法生成动作;根据所述状态量和动作生成下一个的状态量,当生成的状态量为终止状态量,生成空间碎片的清除序列及对应的收益值。
[0106] 其中,在上确界树搜索方法的扩展过程中,通过随机或者构建好的神经网络模型选择动作;在上确界树搜索方法的模拟过程中,模拟方式选择随机模拟方式。
[0107] 重复执行生成序列步骤,直至清除序列的数量达到第一预定数量时,选择收益值最大的清除序列,作为待清除空间碎片的最优清除序列。该第一预定数量,预先设定好的值,表示生成一定数量的可供选择的清除序列。
[0108] 若清除序列的数量未达到第一预定数量时,重复执行生成序列步骤,直至清除序列的数量达到第一预定数量,则认为,当前已生成的清除序列中包含有最优的清除序列。
[0109] 在生成序列步骤中,当生成的状态量为非终止状态量时,重复执行以下步骤:
[0110] 根据当前的状态量,采用上确界树搜索方法中的第一策略生成动作;
[0111] 根据当前的状态量以及生成的动作生成下一状态量;
[0112] 判断所述下一状态量是否为终止状态量。
[0113] 通过上述的空间碎片清除序列生成方法,本申请根据待清除空间碎片信息和航天器信息构建了强化学习搜索树模型,将空间碎片清除问题转化为状态量、动作和收益值,并通过上确界树搜索方法生成动作,具体为该方法扩展过程中通过随机或者构建好的神经网络模型选择动作,且在模拟过程的模拟方式选择随机模拟方式,减少了生成最优清除序列的搜索次数,节省了最优清除序列的生成时间,进而提升航天器的能源利用率,增加了空间碎片清除任务规划的合理性。
[0114] 在本实施例中具体采用改进的上确界树搜索(Modified Upper Confidential Tree search,UCT)算法来生成具体的空间碎片清除序列。该方法使用的UCT算法结合MCTS与上置信确界(UCB)方法,做到了平衡搜索与利用,使结果达到历史顶尖平。
[0115] UCT算法的基本框架为选择、扩展、评估、更新,在AlphaGo Zero的UCT算法中并没有使用随机模拟(roll out)步骤,因为在AlphaGo Zero的UCT算法中期望不用探究到棋局结束就能通过神经网络评价出棋局的结果。但是在本实施例的ADR问题中,rollout步骤作为非常优秀的模拟状态值函数的能力,在神经网络收敛之前,在其具有可评估的能力之前,rollout步骤为改进的UCT算法的核心,为每一次更新提供更可靠的反馈。
[0116] 在本实施例中,各个清除序列中收益值是由其中的空间碎片的收益值叠加得到的。初始情况下,将确定的航天器初始时刻的初始状态信息及初始动作信息作为UCT搜索的根节点,向下扩展根据获得更高收益的可能性来选择相应的子树(即待清除的空间碎片)访问。“UCT搜索”将会输出动作选择分布π,并且搜索树也会在该步骤被不断扩展。
[0117] 为了使UCT搜索更加可行,搜索树的节点在创建和更新的过程中,需要维护节点信息。除了当前节点的状态s’、动作a、动作前状态s外,还有节点访问次数N(s,a),节点历史积累收益W(s,a),节点Q值,节点选择概率P(s,a)等。当新的节点创建之后,所有节点信息被Q(s,a)=0,N(s,a)=0,W(s,a)=0,P(s,a)=pi创建,其中,pi为初始常数。一旦某节点被重新访问,则遵从更新策略,即式(11)。
[0118] 如图2所示,为本实施例中的UCT-ADR作为对ADR任务专项改进的UCT方法的流程图,该方法中整个搜索树的节点信息都会保存在RAM中,直到搜索树过大机器不支持,根据当根节点的所有子节点信息,生成选择策略(policy),从这些节点中依照策略概率,配合模拟退火方法,选择出代表合法动作的下一拍动作输出。UCT搜索共有四个步骤,为选择、扩展、随机模拟、反向更新。这个循环会持续一定数量,通过扩展新节点不断扩展搜索树并且更新节点信息。因为搜索过程可以视为一个智能体在搜索树上不断访问。
[0119] 在该实施例中,根据当前的状态量以及生成的动作生成下一状态量包括:
[0120] 获取当前状态量;
[0121] 当当前状态量为非终止状态量且满足第一预设条件时,根据第一策略从预先构建好的动作库中选择动作;
[0122] 根据选择的所述动作和当前状态量生成下一状态量。
[0123] 以上步骤即为UCT搜索中的选择步骤。
[0124] 选择:
[0125] 首先,获取当前状态量。在本实施例中,当前状态量指的是当前时刻航天器的状态信息,该信息中包含有当前航天器的位置信息,该位置信息即为所清除的空间碎片所处的位置信息。
[0126] 获取到当前航天器所处的位置信息后,即可得知当前所清除的空间碎片的信息,根据该空间碎片的信息进行条件判定,判定条件包括两部分,第一部分是该清除的空间碎片是否为终止空间碎片,另一部分是第一预定条件,该第一预定条件可以为某个“树宽条件”,本实施例中该第一预定条件为“具有可选的未清除的空间碎片且可选的未清除空间碎片均被选择过”。
[0127] 当满足:当前状态量为非终止状态量且满足第一预设条件时,根据第一策略从预先构建好的动作库中选择动作;,该选择的动作信息通过 选择出,其中, 为UCB项,该项可以抑制向当前搜索树外探索的
程度,cpuct为调节探索比例的参数。
[0128] 在上述过程中,终止空间碎片对应的状态量即为终止状态量,非终止空间碎片对应的状态量即为非终止状态量。
[0129] 若航天器所清除的空间碎片为非终止空间碎片时,则重复根据上一状态量及动作生成下一状态量,再根据状态量提取当前航天器所清除的空间碎片信息,再判断空间碎片信息,直至当前清除的空间碎片是否为终止空间碎片。
[0130] 扩展:
[0131] 在本实施例的选择步骤中,当当前状态量为非终止状态量且不满足第一预设条件时,则进入了UCT搜索的扩展步骤。
[0132] 该步骤中,以当前状态量为输入信息,采用上确界树搜索方法中的扩展和模拟过程生成第二策略,再根据第二策略从预先构建好的动作库中选择动作。
[0133] 采用上确界树搜索方法中的扩展和模拟过程生成第二策略的方法为:
[0134] 根据当前状态量,通过随机或者构建好的神经网络模型从预先构建好的动作库中选择动作;
[0135] 根据动作和当前状态量生成下一状态量;
[0136] 根据状态量随机从预先构建好的动作库中选择动作,直至状态量为终止状态量,生成待清除空间碎片的清除序列;
[0137] 更新该清除序列中的每个空间碎片的收益值;
[0138] 当清除序列的数量达到第二预定数量时,根据每个空间碎片的收益值生成第二策略。
[0139] 在本申请的UCT-ADR算法中神经网络图式(12)所示,输入为ADR任务状态向量s,输出为估计的状态值v和该状态下的动作选择分布p,θ为神经网络参数。P(s,a)=p(a)为节点信息更新提供帮助。
[0140] fθ(s)=(p,v)
[0141] \*MERGEFORMAT(12)
[0142] 对于不同的问题,神经网络结构是不同的。鉴于残差网络(ResNet)能够很好地避免过拟合性,本申请实施例中使用的神经网络结构如图4所示,并且使用了下降的学习率、批处理、记忆回放等技术。
[0143] 记忆是由存储在内存中的历史访问数据组成,该数据由外环循环产生。每一个外环周期将会产生与输出解长度相对应个数的记忆数据,并且沿着这个解上所有的状态向量s都指向同一个最终收益z。而批学习机制可以从记忆库中随机选择特定数量的记忆进行学习。
[0144] 训练神经网络的损失函数为式(13),它表达了神经网络预测状态值v(或者称为预测最终收益)与最终实验收益z之间的差异,还表达了估计动作分布p,UCT-ADR输出动作选择分布π。权重L2范数归一化也同样考虑在内。
[0145] l=(z-v)2-πT logp+c||θ||2   (13)
[0146] 随机模拟:
[0147] 经过上述的扩展之后,没有新的待清除空间碎片被访问,此时,需要使用随机模拟来评估剩余的待清除空间碎片的情况,进而为最终选择合适的动作提供选择策略,进行操作。由于未模拟过程,该步骤不会对清除序列进行任何更新操作。本申请实施例中的模拟使用随机的原则,不断连续地选择动作,直到到达某个终止节点,此时的收益作为当前解向量对应的未来可能的收益,即针对未被清除的空间碎片,重复上述步骤(随机选择未被清除的空间碎片作为要清除的空间碎片),直至被清除的空间碎片为终止空间碎片,此时,按照选择的顺序,生成待清除空间碎片的清除序列,至此完成了随机模拟过程。
[0148] 通过随机模拟过程,可以减少生成清除序列的时间,提升计算效率,并且可以降低对硬件(如存储器、处理器)的性能要求。
[0149] 反向更新:
[0150] 当模拟过程中生成空间碎片清除序列时,在本实施例的反向更新过程中,对该空间碎片清除序列中所涉及的每个空间碎片都的收益值都进行更新,以为后面进行动作选择提供更为优异的策略,并更新该待清除空间碎片的清除序列中的每个空间碎片信息(即收益值等),收益值更新采用下式:
[0151] N(s,a)=N(s,a)+1
[0152] W(s,a)=W(s,a)+z   (11)
[0153] Q(s,a)=W(s,a)/N(s,a)
[0154] P(s,a)=(1-ε)P(s,a)+εη
[0155] 其中,z为通过rollout产生的状态值,ε为权重,η为增加神经网络鲁棒性的噪声,P(s,a)为神经网络的部分输出,表达状态s下动作a选择的概率,输入给UCT搜索以参考。
[0156] 更新完每个空间碎片的收益值之后,当待清除空间碎片的清除序列的数量达到第二预定数量时,会生成下一动作信息选择策略,根据动作信息选择策略选择下一动作。
[0157] 生成下一动作选择策略具体为:
[0158]
[0159] 其中,s0是输入给UCT搜索的上一时刻的航天器状态信息,τ为外圈循环控制的模拟退火参数,b填充N(s,a)的第二索引,代表可能的动作,该式子的分母表达所有可能的动作的该值之和。搜索树的扩展在一开始的时候更加具有探索性。随着搜索进行,模拟退火温度降低,UCT搜索输出的策略逐渐单纯地关注于更加优秀的节点,使得搜索更加偏向利用性。最终动作节点的选择是根据该策略提供的概率选取出来的。
[0160] 当清除序列的数量未达到第二预定数量时,重复执行以下步骤:
[0161] 根据当前状态量,通过随机或者构建好的神经网络模型从预先构建好的动作库中选择动作;根据动作和当前状态量生成下一状态量;根据状态量随机从预先构建好的动作库中选择动作,直至状态量为终止状态量,生成待清除空间碎片的清除序列;更新该清除序列中的每个空间碎片的收益值。
[0162] 本申请将就是强化学习模型与蒙特卡洛树搜索方法(MCTS)结合,提出改进的置信上界树搜索(UCT-ADR)方法,适应多碎片主动清除任务的规划,可有效减少规划任务的计算量,并且不会陷入到局部最优,性能优异。
[0163] 本申请的另一实施例中公开了一种空间碎片清除任务的规划装置,包括:
[0164] 获取模块,用于获取待清除空间碎片信息和航天器状态信息;
[0165] 构建模块,用于根据待清除空间碎片信息和航天器状态信息构建强化学习搜索树模型;其中,在强化学习搜索树模型中包括状态量、动作和收益值;
[0166] 生成模块,用于生成序列:根据强化学习搜索树模型的初始状态,采用上确界树搜索方法生成动作;根据状态量和动作生成下一个的状态量,当生成的状态量为终止状态量,生成空间碎片的清除序列及对应的收益值;
[0167] 其中,在上确界树搜索方法的扩展过程中,通过随机或者构建好的神经网络模型选择动作;在上确界树搜索方法的模拟过程中,模拟方式选择随机模拟方式;
[0168] 选择模块,用于重复执行生成序列步骤,直至清除序列的数量达到第一预定数量时,选择收益值最大的清除序列,作为待清除空间碎片的清除序列。
[0169] 在生成序列步骤中,当生成的状态量为非终止状态量时,还包括以下模块,用于重复执行以下步骤:
[0170] 第一动作生成模块,用于根据当前的状态量,采用上确界树搜索方法中的第一策略生成动作;
[0171] 第一状态量生成模块,用于根据当前的状态量以及生成的动作生成下一状态量;
[0172] 判断模块,用于判断下一状态量是否为终止状态量。
[0173] 本申请的另一实施例中还公开了一种空间碎片清除任务的规划设备,包括存储器、处理器以及存储在存储器中并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述的一种空间碎片清除任务的规划方法。
[0174] 验证实施例:
[0175] 在该实施例中,数据集由铱星33碎片中的10颗碎片组成。任务目标设定为一次清除碎片的数量,以此定义G(d)。该任务目标会作为收益函数在终止节点处确定并用于节点信息更新。神经网络参数通过随机梯度下降方法(SGD)进行优化。多个场景的实验将检验该框架与算法的有效性。最后结果将会和常用强化学习算法DQN作对比。
[0176] 实验数据集:
[0177] 实验数据集是从铱星33碎片云中截取的10颗碎片数据,如表2所示。轨道数据仅用于计算转移燃料消耗,该消耗通过J2摄动下漂移轨道转移获得。
[0178] 表2实验数据集
[0179]
[0180] 假设集合中碎片轨道均为圆形轨道,NORAD表达由北美防空联合司令部(North American Aerospace Defense Command)维护的空间物体编号,a为轨道半长轴,I为轨道倾,Ω为轨道升交点赤经。该数据集从北美防空联合司令部的TLE文件中抓取出来,文件时间为2017年5月,UTC时间17126。
[0181] 本实验中的动作是通过<目标碎片,转移间隔>对在动作空间中的索引数来表达。动作空间是首先对转移间隔排列,然后对碎片序列进行排列,如表3所示。
[0182] 表3动作空间
[0183]
[0184]
[0185] 任务参数:
[0186] 作为任务规划的方法,为确定任务边界,该空间多碎片清除航天器具有1000m/s的变轨能力,且任务从第1天、#1碎片出发,经历365天或变轨能量用尽为止。所有结果通过intel i5-7200U笔记本电脑获得。因为集合大小非全铱星33碎片云数据集,所以计算可负担,所以穷举搜索也作为对比,以获知全局最优解与搜索树全貌。
[0187] a)穷举搜索:
[0188] 使用深度优先搜索作为穷举搜索算法,601秒后搜索结束了124024个终止节点。一个最优解以动作序列表达为[1,30,40,20,60],转化为解向量为[1,1;3,28;4,28;2,28;6,28]T。所有访问的解的长度统计为[/,31,320,1052,762,0,0,0,0,0],每一位分别代表了每个长度解的个数统计,其中,所有的解都是没有被重复访问过的,能够反映搜索树的大致情况。
[0189] b)实验1:无神经网络评估的UCT搜索:
[0190] 为了展现UCT搜索在ADR问题中的性能,实验1测试了UCT-ADR的2个外环周期。设定内环的UCT搜索的迭代限制T=300。创建的搜索树共中982个,其中104个为非终止节点。其中的最优解以动作序列表达为[1,30,39,19,59],解向量为[1,1;3,22;4,19;2,19;6,19]。它的Q值通过W/N获得,也就是在不断搜索后获得的节点平均收益的期望。在整个搜索树的根节点处Q值为5690/1500=3.7933。在解向量上的所有节点的Q值如表4所示。
[0191] 表4最优解各节点Q值(实验1在2个外循环后)
[0192]动作 W N W/N
1 5690 1500 3.7933
30 5170 1232(82.13%) 4.196
39 4346 949(77.03%) 4.580
19 3177 645(67.97%) 4.926
59 2245 449(69.61%) 5
[0193] 同时,解向量上的节点所在每一层兄弟节点情况如表5所示。
[0194] 表5最优解各节点所在层策略分布(实验1在2个外循环后)
[0195] 层\首6项 1 2 3 4 5 6第一层 30(82.13%) 27(1.93%) 18(1.93%) 28(1.93%) 29(1.40%) 25(1.33%)第二层 39(77.03%) 20(3.97%) 15(2.35%) 18(2.03%) 38(1.70%) 36(0.97%)第三层 19(67.97%) 60(3.06%) 59(3.06%) 58(3.06%) 17(3.06%) 56(2.95%)第四层 59(69.61) 60(22.95) / / / /
[0196] 继续搜索1000次外圈循环后,存储的最优解收益[1,30,18,37,57]仍然是5,而搜索树根节点平均收益为7498117/1500000=4.9987。接近5的根节点平均收益表明整个搜索树在后期已经逐渐收敛到最优解,一如表6所示的收敛的策略分布。
[0197] 表6最优解各节点所在层概率分布(实验1在1000个外循环后)
[0198] 层\首6项 1 2 3 4 5 6第一层 30(99.98253%) 39(0.00187%) 26(0.00187%) / / /
第二层 18(99.98006%) 38(0.00240%) 20(0.00193%) / / /
第三层 37(99.98059%) 40(0.00280%) 38(0.00240%) 35(0.00193%) / /第四层 57(25.01274%) 60(24.99273%) 59(24.99273%) 58(24.99273%) / /[0199] 1067个节点被访问,其中125个节点为非终止节点,说明更多的节点被访问。在该算法中第一个最优的收益为5的节点在140秒后被找到。以上结果可以表明UCT搜索在该算法中是可行的,且能够找到最优解。但是,在一些尝试中仍然会陷入局部最优的问题,并丧失探索性。
[0200] c)实验2:UCT-ADR算法:
[0201] 使用完整的UCT-ADR算法时,使用不断增加的搜索条目训练神经网络,学习率α从0.001下降到0.00001,记忆空间大小为2000条,批量的大小为10进行试验。神经网络结构采用当下避免过拟合最好的残差网络,两个ResNet分别拟合两个输出。状态值网络通过20个节点的全连接网络和一个20个节点的残差网络组成,输出通过softmax函数处理。策略网络与状态值网络相似,只是输出层与另一个输出经过relu函数的全连接网络相连。两个网络的设计图如图4所示。
[0202] 在1000次外环迭代后,训练的神经网络损耗如图5所示。改变批学习大小为100,完成3500次外环迭代后得到更好的收敛效果如图6所示。其能够连续303个循环收敛输出最优解。
[0203] 外环迭代3500次后,最优解为[1,28,17,36,60],且所有访问的解的长度收益统计为[61,87,102,132,3118,0,0,0,0,0],,在3500次循环中,共搜索出3118次最优解。最终的搜索树在表8中深入分析,可以看出在收敛之后,最优解上的每个节点都拥有了主要的选择概率,其中“子树宽度”表示节点的探索程度。开始的三层都收敛为最优解一条路。但是在第四层却有三个节点具有相似的选择概率,因为在他们之后不存在合适的非终止节点。所以访问次数N所反应的选择概率能够反映获得更高收益的可能性。通过以上结果可以看出,在神经网络预估以及最优解产生两个方面都完成了收敛,如果没有UCT搜索,神经网络将无异于学习整个损失函数;没有神经网络与随机模拟指导节点信息更新,UCT搜索也容易陷入局部最优,无法更鲁棒地找到最优解。
[0204] 外环迭代3500次后,最优解为[1,28,17,36,60],且所有访问的解的长度收益统计为[160,846,1960,534,0,0,0,0,0,0],在3500次循环中,共搜索出3118次最优解。最终的搜索树在表7、表8中深入分析,可以看出在收敛之后,最优解上的每个节点都拥有了主要的选择概率,其中“子树宽度”表示节点的探索程度。开始的三层都收敛为最优解一条路。但是在第四层却有三个节点具有相似的选择概率,因为在他们之后不存在合适的非终止节点。所以访问次数N所反应的选择概率能够反映获得更高收益的可能性。
[0205] 通过以上结果可以看出,在神经网络预估以及最优解产生两个方面都完成了收敛,如果没有UCT搜索,神经网络将无异于学习整个损失函数;没有神经网络与随机模拟指导节点信息更新,UCT搜索也容易陷入局部最优,无法更鲁棒地找到最优解。
[0206] 表7最优解各节点Q值(实验2在3500个外循环后)
[0207]
[0208]
[0209] 表8最优解各节点所在层概率分布(实验2在3500个外循环后)
[0210] 子树宽度 层\首4项 1 2 3 486/90 第一层 27(99.9950\%) 38(3.6190e-06) 19(3.6190e-06) 15(3.0476e-06)
76/80 第二层 16(99.9945\%) 17(6.6670e-06) 37(5.1431e-06) 36(4.0002e-06)
66/70 第三层 35(99.994\%) 39(8.0008e-06) 37(6.0959e-06) 33(4.5719e-06)
56/60 第四层 59(40.006\%) 58(30.002\%) 57(29.989\%) /
46/50 第五层 69(2.1770\%) 79(2.1765\%) 68(2.1763\%) 相似概率
[0211] 注:第五层为终止节点。
[0212] d)对比:
[0213] 本申请实施例的方法相比于穷举法的601秒更加迅速地找到最优解,在完成100次UCT-ADR之后,除了3次失败,平均164.44秒完成138.05个循环下找到最优解(为了更快完成统计设置外循环迭代次数限制M=500)。相比而言,该方法作为ADR在强化学习框架下的一种规划器是高效的。使用深度强化学习(DQN)求解本问题时,规划器在1954秒大约100次DQN的迭代学习后连续不断产生最优长度解。最优解占DQN的所有输出解的比例约为1/50,而这一比例在本方法中是31/35,足以证明本申请实施例的方法非常适合ADR在强化学习框架建模下的高效性。
[0214] AlphaGo Zero所使用的原版UCT算法也作为对比在本问题中检验。在3500次迭代8032秒之后并没有找到最优解。解长度的统计[3500,3340,2490,534,0,0,0,0,0,0]显示出它无法找到最优解亦或者连续地输出最优解。通过100次独立实验的尝试,原版UCT算法在M=500时无法寻找到任何最优解。原因在于没有训练过的神经网络在一开始的时候无法胜任评估状态值函数的工作,会将搜索方向带偏,并且很难在后期将搜索从无法找到最优解的子树拉回来,以至于无法高效地获得最优解。
[0215] 所以在提出求解多碎片主动清除任务规划的强化学习框架后,提出的UCT-ADR算法能够结合随机模拟,平衡了探索与利用,更高效地输出更好的结果。
[0216] 本申请为多碎片主动清除任务的导引和规划引入了强化学习框架,可以作为离线任务优化,而且由于最大收益的任务规划模型,它的不断收集收益的形式与强化学习框架吻合,所以解向量维度无需固定。
[0217] 本申请所提出的方法部分,较现有其他算法做了针对ADR任务的改动,运行更高效,结果显示其在找到最优解的时间、输出最优解的比例、搜索不易落入局部最优等方面都表现优异。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈