掌桥专利:专业的专利平台
掌桥专利
首页

基于规则约束训练的无人机集群智能任务执行方法和装置

文献发布时间:2023-06-19 10:32:14


基于规则约束训练的无人机集群智能任务执行方法和装置

技术领域

本申请涉及无人机智能任务执行技术领域,特别是涉及一种基于规则约束训练的无人机集群智能任务执行方法和装置。

背景技术

随着无人机小型化、智能化、集群化技术快速发展,无人机集群已经具有了智能任务执行能力,并已经应用于完成多种类型的任务。区域防御任务是无人机集群应用中最为常见的任务类型之一。目前,对无人机集群在执行区域防御任务时,如何针对多个移动的防御对象实现有效的对抗和防御效果这一问题的研究还处在初步阶段。在对无人机集群进行训练时,由于受训练的无人机个体和人类思维方式不同,不能通过已有的经验直接得知在某个状态下的最优策略,因此训练得到的无人机个体和无人机集群其获得的最优策略并不一定是实际上的最优策略,无法很好地确保对防御对象实现有效的快速追击、驱逐出境、精准打击等需要的操作。

发明内容

基于此,有必要针对上述技术问题,提供一种能确保无人机个体获得最优行动策略的一种基于规则约束训练的无人机集群智能任务执行方法和装置。

一种基于规则约束训练的无人机集群智能任务执行方法,包括:

根据预设的无人机集群防御任务训练数据得到对应的训练环境数据,以待训练的无人机集群中的无人机为智能体,基于MADDPG算法建立训练环境数据对应的无人机集群任务执行模型。训练环境数据包括防御对象集合。

根据无人机的任务能力参数、训练环境数据和预设的任务目标数据,得到无人机集群任务执行模型中智能体的动作集、状态集和单步奖励函数。

使用预设的约束规则得到智能体从动作集中获取下一步动作时的动作子集,使用动作子集、状态集和单步奖励函数训练无人机集群任务执行模型中的智能体。其中,约束规则是根据智能体和防御对象的相对位置数据确定的。

使用训练好的无人机集群执行无人机集群防御任务。

其中一个实施例中,约束规则的定义方式包括:

获取智能体和防御对象的相对距离值,当相对距离值持续减小时:

当相对距离值在预设的区间内时,获取使智能体最快离开防御对象的作用区域的航向角,根据航向角得到智能体从动作集中获取下一步动作时的动作子集。

其中一个实施例中,约束规则的定义方式包括:

获取智能体和防御对象的相对距离值,当相对距离值持续减小时:

当V/dis大于预设值时,将智能体的加速度值设置为大于零,当V/dis小于预设值时,将智能体的加速度值设置为小于零。其中,V表示智能体的速度,dis表示相对距离值,V/dis表示智能体的速度距离比值。

根据加速度值得到智能体从动作集中获取下一步动作时的动作子集。

其中一个实施例中,单步奖励函数的获得方式包括:

获取防御对象集合中预设的威胁值为最高的最大威胁目标,获取智能体和最大威胁目标的相对距离值。

根据训练环境数据和无人机的任务能力参数,得到智能体对防御对象的防御效果数据,得到防御对象对智能体的抵抗效果数据,以及得到防御对象对预设的保护区域的攻击效果数据。

根据训练环境数据得到防御对象的航向角,并得到防御对象和智能体的航向夹角。

根据智能体对应的相对距离值、防御效果数据、抵抗效果数据、攻击效果数据和航向夹角,得到单步奖励函数的值。其中,单步奖励函数的值与相对距离值、防御效果数据和航向夹角分别为正相关关系,单步奖励函数的值与抵抗效果数据和攻击效果数据分别为负相关关系。

其中一个实施例中,根据预设的无人机集群防御任务训练数据得到对应的训练环境数据,以待训练的无人机集群中的无人机为智能体,基于MADDPG算法建立训练环境数据对应的无人机集群任务执行模型的步骤包括:

使用OpenAI仿真环境,根据预设的无人机集群防御任务训练数据得到对应的训练环境数据。

使用MADDPG算法将待训练的无人机集群中的无人机构建为智能体,根据智能体和训练环境数据建立对应的无人机集群任务执行模型。

其中一个实施例中,使用动作子集、状态集和单步奖励函数训练无人机集群任务执行模型中的智能体的过程包括:

根据训练环境数据和智能体的当前状态,得到智能体的当前状态数据。

使用预设的约束规则得到智能体从动作集中获取下一步动作时的动作子集,根据训练环境数据得到动作子集中的动作对应的单步奖励函数的值。

根据智能体获取到的下一步动作,更新训练环境数据和智能体的当前状态,根据单步奖励函数的值更新智能体获取下一步动作的策略数据。

其中一个实施例中,智能体的状态集中的状态包括智能体的位置、速度和航向角。其中,位置、速度和航向角的取值范围均为连续区间。

一种基于规则约束训练的无人机集群智能任务执行装置,包括:

无人机集群任务执行模型建立模块,用于根据预设的无人机集群防御任务训练数据得到对应的训练环境数据,以待训练的无人机集群中的无人机为智能体,基于MADDPG算法建立训练环境数据对应的无人机集群任务执行模型。训练环境数据包括防御对象集合。

智能体参数设置模块,用于根据无人机的任务能力参数、训练环境数据和预设的任务目标数据,得到无人机集群任务执行模型中智能体的动作集、状态集和单步奖励函数。

智能体训练模块,用于使用预设的约束规则得到智能体从动作集中获取下一步动作时的动作子集,使用动作子集、状态集和单步奖励函数训练无人机集群任务执行模型中的智能体。其中,约束规则是根据智能体和防御对象的相对位置数据确定的。

无人机集群智能任务执行模块,用于使用训练好的无人机集群执行无人机集群防御任务。

一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:

根据预设的无人机集群防御任务训练数据得到对应的训练环境数据,以待训练的无人机集群中的无人机为智能体,基于MADDPG算法建立训练环境数据对应的无人机集群任务执行模型。训练环境数据包括防御对象集合。

根据无人机的任务能力参数、训练环境数据和预设的任务目标数据,得到无人机集群任务执行模型中智能体的动作集、状态集和单步奖励函数。

使用预设的约束规则得到智能体从动作集中获取下一步动作时的动作子集,使用动作子集、状态集和单步奖励函数训练无人机集群任务执行模型中的智能体。其中,约束规则是根据智能体和防御对象的相对位置数据确定的。

使用训练好的无人机集群执行无人机集群防御任务。

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:

根据预设的无人机集群防御任务训练数据得到对应的训练环境数据,以待训练的无人机集群中的无人机为智能体,基于MADDPG算法建立训练环境数据对应的无人机集群任务执行模型。训练环境数据包括防御对象集合。

根据无人机的任务能力参数、训练环境数据和预设的任务目标数据,得到无人机集群任务执行模型中智能体的动作集、状态集和单步奖励函数。

使用预设的约束规则得到智能体从动作集中获取下一步动作时的动作子集,使用动作子集、状态集和单步奖励函数训练无人机集群任务执行模型中的智能体。其中,约束规则是根据智能体和防御对象的相对位置数据确定的。

使用训练好的无人机集群执行无人机集群防御任务。

与现有技术相比,上述一种基于规则约束训练的无人机集群智能任务执行方法、装置、计算机设备和存储介质,根据无人机集群防御任务训练数据建立训练环境,以无人机集群中的无人机为智能体,基于MADDPG算法建立无人机集群任务执行模型。根据无人机的任务相关的平台参数和无人机集群防御任务的任务目标数据,设置单个无人机的动作集、状态集和单步奖励函数。无人机在从动作集中获取下一步动作时,可选择的动作子集由与无人机和防御对象的相对位置数据确定的约束规则的约束。对无人机集群任务执行模型进行训练,使用训练好的无人机集群执行无人机集群防御任务。本申请能够根据已有行动经验设置无人机选择下一步动作的约束规则,可以减少无人机在训练过程中的无效探索动作,使无人机能够选择更有效的行动方式,通过训练获得更优化的行动策略。

附图说明

图1为一个实施例中一种基于规则约束训练的无人机集群智能任务执行方法的应用场景图;

图2为一个实施例中一种基于规则约束训练的无人机集群智能任务执行方法的步骤图;

图3为一个实施例中的无人机集群任务执行模型结构示意图;

图4为一个实施例中计算机设备的内部结构图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

本申请提供的一种基于规则约束训练的无人机集群智能任务执行方法,可以应用于如图1所示的无人机集群防御任务训练场景中。其中,飞机图标表示待训练的无人机集群,包含五角星的半圆形区域表示无人机集群防御任务中的保护区域,圆圈中的飞机图标表示该训练场景中的防御对象(即攻击方的无人机集群)。需要指出的是,防御对象不限于无人机集群,还可以是各种空中、地面、水面等物理领域的各种移动和/或静止平台。

在一个实施例中,如图2所示,提供了一种基于规则约束训练的无人机集群智能任务执行方法,以使用该方法应用训练图1中的待训练无人机集群为例进行说明,包括以下步骤:

步骤202,根据预设的无人机集群防御任务训练数据得到对应的训练环境数据,以待训练的无人机集群中的无人机为智能体,基于MADDPG算法建立训练环境数据对应的无人机集群任务执行模型。训练环境数据包括防御对象集合。

步骤204,根据无人机的任务能力参数、训练环境数据和预设的任务目标数据,得到无人机集群任务执行模型中智能体的动作集、状态集和单步奖励函数。

具体地,多智能体深度确定性策略梯度(MADDPG,Multi-Agent DeepDeterministic Policy Gradient)算法是对深度确定性策略梯度(DDPG,DeepDeterministic Policy Gradient)算法在多智能体系统下的扩展,而DDPG本质上是一种演员-评论家(Actor-Critic)算法。MADDPG算法包括了演员模块和评论家模块两个模块。在对基于MADDPG算法建立的模型进行训练时,算法中的演员模块根据环境数据得到无人机的当前状态,根据当前状态选择无人机的下一步动作,并根据无人机的下一步动作得到其对环境数据的影响;算法中的评论家模块则根据演员模块的当前状态和下一步动作对其进行评价,得到一个估计的Q值作为对演员模块动作的反馈。整个训练过程中,评论家模块是根据其估计的Q值和实际的Q值之间的偏差进行训练,演员模块则根据评论家模块的反馈来学习行动策略。演员模块在进行测试时,只需要根据训练得到的行动策略来选择下一步动作,而不需要获取评论家模块的反馈信息。

本实施例在训练中,根据给定类型的训练需求数据,即无人机集群防御任务训练数据得到环境数据,将待训练的无人机集群中的单架无人机作为智能体。另外根据无人机的任务能力参数、训练环境数据和预设的任务目标数据,得到无人机集群任务执行模型中智能体的动作集、状态集和单步奖励函数。其中,动作集是指智能体在当前状态下,下一步可以选择采用的各种动作的集合,该集合受到无人机平台能力、行动环境等因素的限制,动作集中可能包括的元素例如速度值、航向角、加速度值等。状态值是指智能体当前的状态,如位置(可以采用坐标表示),也可以包括速度、航向角、加速度值等。智能体的初始的状态值可以从无人机集群防御任务训练数据中获得,即训练中的设定值;训练开始后,智能体下一步的状态值是根据当前状态值和当前选择的动作决定的,智能体的状态值的变化也将反映在环境数据中,以便获得该智能体对其他智能体的影响。单步奖励函数的值是根据无人机对应的智能体的当前状态和当前动作给该智能体反馈的奖励或惩罚值,具体值的设置方式由任务训练的目标决定,通过设置单步奖励函数可以决定智能体行动策略优化方向。

步骤206,使用预设的约束规则得到智能体从动作集中获取下一步动作时的动作子集,使用动作子集、状态集和单步奖励函数训练无人机集群任务执行模型中的智能体。其中,约束规则是根据智能体和防御对象的相对位置数据确定的。

具体地,在对无人机集群任务执行模型进行训练时,是由评论家模块根据无人机的当前状态值和当前动作得到相应的反馈信息,使无人机根据反馈信息学习来更新策略,以决定其下一步动作。在这一过程中,如果仅根据训练目标来优化智能体的行动策略,不能确保智能体最终获得的行动策略为最优。例如,训练目标为待训练无人机接近防御对象,且将防御对象击毁或驱逐出保护区域。根据这一训练目标,单步奖励函数可以设置为,当智能体和防御对象的距离越近,该智能体就可以获得越高的奖励值。在这一设置下,智能体虽然会接近防御对象,但不能确保有效的追击。例如,当无人机距离防御对象较远时,由于没有策略引导其加速靠近目标,因此无人机只会向防御目标的方向持续运动,而不能确保二者持续靠近。又如,当无人机距离防御对象较近时,其继续靠近防御对象仍然将获得更大的奖励值,但由于没有策略引导其减速,因此可能由于速度过大而导致错过防御目标,进而再去追击时需要经过更多的路程。再如,当无人机和防御目标相向接近时,会出现二者同时位于对方作用范围内的情况,使无人机面临着被损毁的风险,然而也没有策略引导其规避这一风险,选择更好的靠近角度。

基于上述几种情况的描述可以知道,随着无人机和防御目标之间的距离不同,无人机的动作策略优化方向应当相应调整。本实施例中,根据智能体和防御对象之间的相对位置的不同,限制智能体从动作集中选择下一步动作时的可选范围(即动作子集)。通过设置这一约束条件,可以在训练无人机的过程中根据具体的无人机平台参数和任务目标,基于行动经验信息引导无人机的行动策略优化方向,减少无效的尝试,确保训练好的无人机和无人机集群采用最优的行动策略。

步骤208,使用训练好的无人机集群执行无人机集群防御任务。

本实施例能够借鉴行动经验设置无人机选择下一步动作的约束规则,可以减少无人机在训练过程中的无效探索动作,使无人机能够选择更有效的行动方式,通过训练获得更优化的行动策略。

其中一个实施例中,提供了一种基于规则约束训练的无人机集群智能任务执行方法,包括:

步骤302,使用OpenAI仿真环境,根据预设的得到对应的训练环境数据。使用MADDPG算法将待训练的无人机集群中的无人机构建为智能体,根据智能体和训练环境数据建立对应的无人机集群任务执行模型。

OpenAI仿真环境能够很好地模拟物理运动与物理碰撞,并提供了丰富的接口来实现对智能体输入、输出、奖励信息、训练结果的观察,因此适合用于提供无人机集群防御任务训练的训练环境数据和算法框架。本实施例中,基于MADDPG建立的无人机集群任务执行模型如图3所示,主要由训练环境、经验池和多个智能体组成,各个智能体均由演员-评论家网络构成。多个智能体与训练环境进行交互,每个智能体获得训练环境输入的状态信息,从动作集中选择下一步动作,并通过演员模块向训练环境输出动作,并得到对应的奖励值。训练环境中每个智能体通过与训练环境完成交互获得状态信息、动作、奖励值和下一时刻的状态信息,将获得的信息存储在经验池中,当存贮数据大于预定值时,从经验池中采样进行学习。在整个过程中,每个智能体独立采样、统一学习。

步骤304,根据无人机的任务能力参数、训练环境数据和预设的任务目标数据,得到无人机集群任务执行模型中智能体的动作集、状态集和单步奖励函数。

首先构建智能体的动作的数学模型。设训练环境中防御对象均为无人机,攻防双方无人机的动作均是连续的,每架无人机有速度V、航向角α和坐标位置(x,y)三个状态属性。如图1所示,以行动区域中心为原点建立坐标系,无人机的坐标位置为[-10000,10000](单位米)之间的连续值,航向角为[-π,π]之间的连续值(0为x轴正方向,[0,π]为以x轴正方向逆时针旋转至x轴负方向,[-π,0]为以x轴正方向逆时针旋转x轴负方向)。无人机的作用范围是以无人机前方攻击角θ形成的虚线扇形区域,θ大小为45度,扇形区域的半径为200m。设定为无人机可以受到所有方向的攻击,且攻击具有一定的成功率,均设置为60%。假定训练环境中防御无人机集群中所有无人机可以知道其他所有无人机的位置和速度信息,且防御方无人机之间具有通信能力。假设满足以下三个条件时,无人机X可以击落无人机Y:

(1)无人机X和无人机Y间距离小于攻击距离;

(2)无人机Y处于无人机X的攻击区域内;

(3)无人机X成功击中无人机Y。

然后构建智能体的运动模型。设定当无人机Y处在无人机X攻击范围内时无人机X将会对无人机Y实施打击,因此无人机在环境中的运动状态只由航向角和速度决定。航向角由无人机的转向模块控制,设无人机每次转向最大角度αmax为30度,转向通过动作p控制,为[-1,1]之间的连续值,当p<0时为左转向,p>0时为右转向,无人机的单次航向动作输出为p·αmax。速度由加速模块控制,设无人机速度最小值Vmin为50m/s,速度最大值Vmax为150m/s,无人机单次只能在当前速度基础上加速5m/s或减速5m/s。得到无人机的运动方程:

式中:

α

根据智能体动作模型和运动模型,可以得到对应的动作集和状态集。

最后构建智能体的单步奖励函数。获取防御对象集合中预设的威胁值为最高的最大威胁目标,获取智能体和最大威胁目标的相对距离值。根据训练环境数据和无人机的任务能力参数,得到智能体对防御对象的防御效果数据,得到防御对象对智能体的抵抗效果数据,以及得到防御对象对预设的保护区域的攻击效果数据。根据训练环境数据得到防御对象的航向角,并得到防御对象和智能体的航向夹角。根据智能体对应的相对距离值、防御效果数据、抵抗效果数据、攻击效果数据和航向夹角,得到单步奖励函数的值。其中,单步奖励函数的值与相对距离值、防御效果数据和航向夹角分别为正相关关系,单步奖励函数的值与抵抗效果数据和攻击效果数据分别为负相关关系。

每个智能体根据其平台类型和任务的不同,可以有独立的单步奖励函数设置方式。单步奖励函数的原则是当击毁或驱除全部防御对象时,智能体获得最大奖励,当智能体的动作产生有利影响时,根据影响程度获得一定奖励,反之则受到一定惩罚。本实施例中以每个智能体的单步奖励函数相同为例进行说明,具体奖励值设置如下:

(1)为让无人机主动靠近对威胁最大的防御对象,设置一个与无人机-最大威胁目标间的距离成正比的惩罚值。

(2)为让无人机击毁防御对象,当无人机攻击命中防御对象时获得一定奖励值,击毁所有防御对象时所有无人机获得最大奖励值。

(3)为让无人机躲避防御对象的攻击,当无人机被防御对象击中时获得一定惩罚值,当无人机全部被防御对象击毁时,所有无人机获得最大惩罚值。

(4)为让无人机航向更精准朝向防御对象,当无人机航向与防御对象之间的夹角小于5度时获得奖励值,反之则受到与夹角相关的惩罚值。

(5)为让无人机对保护区域进行防护,保护区域被防御对象击中时获得惩罚值。

各种情况下的单步奖励函数值设置如下:

式中,r1表示击毁全部防御对象,r2表示击毁一个防御对象,r3表示无人机航向角与防御对象航向角之间的夹角小于5度,r4表示无人机航向角与防御对象航向角之间的夹角大于5度,r5表示无人机全部被防御目标击毁或保护区域被防御目标击中,r6表示无人机被防御目标击毁,r7表示与距离最近的防御目标的距离相关惩罚值。

步骤306,定义约束规则。约束规则的定义方式可以为:获取智能体和防御对象的相对距离值,当相对距离值持续减小时:当相对距离值在预设的区间内时,获取使智能体最快离开防御对象的作用区域的航向角,根据航向角得到智能体从动作集中获取下一步动作时的动作子集。约束规则的定义方式还可以为:获取智能体和防御对象的相对距离值,当相对距离值持续减小时:当V/dis大于预设值时,将智能体的加速度值设置为大于零,当V/dis小于预设值时,将智能体的加速度值设置为小于零。其中,V表示智能体的速度,dis表示相对距离值,V/dis表示智能体的速度距离比值。根据加速度值得到智能体从动作集中获取下一步动作时的动作子集。

具体地,为了利用约束规则对智能体的动作选择进行一定约束,以进一步优化智能体的行动策略,本实施例在智能体进行下一步动作选择时,根据当前的训练环境数据和智能体状态,约束智能体的转向和/或加速动作。具体实现方式为:对于转向动作,为使得无人机以更好的航向靠近防御对象,使防御对象在攻击范围内的同时自身不在对方攻击范围内。因此对应的约束规则设置为,当无人机与防御对象在靠近过程中相隔一定距离,且当无人机位于防御对象的攻击夹角之内时,根据无人机的行动能力参数和当前状态,计算最快逃离防御对象攻击夹角的航向角,以便最快逃离受攻击范围并调整使防御对象位于自身的攻击范围内。对于加速动作,当无人机与防御对象在靠近过程中相隔距离较远时,希望无人机加速以快速靠近敌方;而相隔距离较近时,希望在合适距离提前减速,以便攻击失败时减小第二次攻击的追击时间。进一步地,当无人机速度和其与防御对象之间的距离的比值<1.5时,智能体的下一步动作选择加速,反之则选择减速。

步骤306,根据训练环境数据和智能体的当前状态,得到智能体的当前状态数据。使用预设的约束规则得到智能体从动作集中获取下一步动作时的动作子集,根据训练环境数据得到动作子集中的动作对应的单步奖励函数的值。根据智能体获取到的下一步动作,更新训练环境数据和智能体的当前状态,根据单步奖励函数的值更新智能体获取下一步动作的策略数据。

具体地,使用上述步骤中得到约束规则以及智能体的状态集、动作集和单步奖励函数,根据训练环境数据对智能体进行训练。智能体根据单步奖励函数的值更新策略来学习得到下一步动作,根据智能体的下一步动作更新训练环境数据和所述智能体的当前状态。当经验池中的数据符合预设标准时,或当智能体执行任务的能力达到预设的标准时,完成训练,得到训练好的无人机集群。

步骤310,使用训练好的无人机集群执行无人机集群防御任务。

训练好的无人机集群根据得到的优化的行动策略,执行与训练任务的类型相对应的实际任务。

下面以仿真实验数据说明本实施例提供方法的有效性。无人机集群防御任务训练数据中,设共有10个防御对象,其初始位置为随机位置,初始航向为π,速度固定为80m/s,始终朝着保护区移动;无人机集群中共有10架无人机,初始位置均匀地分布在保护区域附近,初始航向为0,初始速度为50m/s。首先,在无约束规则和有约束规则的情况下进行训练,对训练得到的单架无人机对单个防御对象的防御能力进行对比(简称为无约束无人机和有约束无人机)。

设实际执行任务时,防御对象的速度固定为80m/s,航向角始终朝向保护区域。对于拦截能力,无约束无人机第一次攻击失败后需要再次调整角度重新追击,但由于之前持续加速导致速度过大,需匀速经过一个较大的弯后才重新加速接近防御对象,但此时防御对象已经进入保护区域。而有约束无人机先是加速接近防御对象,在其即将进入攻击范围内时减速,这使有约束无人机有更多的空间调整攻击角,能够拦截防御对象。即使拦截失败,有约束无人机追击时由于提前减速,因此转弯半径较小,转完后又加速接近防御对象,最终能够在防御对象进入保护区域前成功将其击落。对于攻击角选择能力,有约束无人机和防御对象相向靠近时选择了向左转向,并重新再次调整航向使得防御对象处在自身的攻击范围内,而防御对象由于攻击距离不够无法攻击到有约束无人机。而无约束无人机在这种情况下,不会采取转向和调整动作。

此外,使用约束规则能够大大提高无人机训练效果和效率。在相同的训练设置下,使用了约束规则后智能体获得的平均奖励值从11提升到15,这说明无人机的行动策略得到了优化。并且使用规则约束后,平均每一千轮的训练时间从515s缩短到430s,节省了模型训练时间,提高了无人机智能体的学习效率。

从任务执行效果上来看,使用约束规则后,无人机集群执行防御任务的成功率(击毁或驱逐全部防御对象)从53%提升到了79%,成功所需的动作步数从平均每次48步减少到39步。可以看出,基于约束规则进行训练的无人机集群具有更高的任务执行成功率和任务执行效率。

应该理解的是,虽然图2的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

在一个实施例中,提供了一种基于规则约束训练的无人机集群智能任务执行装置,包括:

无人机集群任务执行模型建立模块,用于根据预设的无人机集群防御任务训练数据得到对应的训练环境数据,以待训练的无人机集群中的无人机为智能体,基于MADDPG算法建立训练环境数据对应的无人机集群任务执行模型。训练环境数据包括防御对象集合。

智能体参数设置模块,用于根据无人机的任务能力参数、训练环境数据和预设的任务目标数据,得到无人机集群任务执行模型中智能体的动作集、状态集和单步奖励函数。

智能体训练模块,用于使用预设的约束规则得到智能体从动作集中获取下一步动作时的动作子集,使用动作子集、状态集和单步奖励函数训练无人机集群任务执行模型中的智能体。其中,约束规则是根据智能体和防御对象的相对位置数据确定的。

无人机集群智能任务执行模块,用于使用训练好的无人机集群执行无人机集群防御任务。

其中一个实施例中,还包括约束规则定义模块,用于获取智能体和防御对象的相对距离值,当相对距离值持续减小时:当相对距离值在预设的区间内时,获取使智能体最快离开防御对象的作用区域的航向角,根据航向角得到智能体从动作集中获取下一步动作时的动作子集。

其中一个实施例中,约束规则定义模块还用于获取智能体和防御对象的相对距离值,当相对距离值持续减小时:当V/dis大于预设值时,将智能体的加速度值设置为大于零,当V/dis小于预设值时,将智能体的加速度值设置为小于零。其中,V表示智能体的速度,dis表示相对距离值,V/dis表示智能体的速度距离比值。根据加速度值得到智能体从动作集中获取下一步动作时的动作子集。

其中一个实施例中,还包括单步奖励函数生成模块,用于获取防御对象集合中预设的威胁值为最高的最大威胁目标,获取智能体和最大威胁目标的相对距离值。根据训练环境数据和无人机的任务能力参数,得到智能体对防御对象的防御效果数据,得到防御对象对智能体的抵抗效果数据,以及得到防御对象对预设的保护区域的攻击效果数据。根据训练环境数据得到防御对象的航向角,并得到防御对象和智能体的航向夹角。根据智能体对应的相对距离值、防御效果数据、抵抗效果数据、攻击效果数据和航向夹角,得到单步奖励函数的值。其中,单步奖励函数的值与相对距离值、防御效果数据和航向夹角分别为正相关关系,单步奖励函数的值与抵抗效果数据和攻击效果数据分别为负相关关系。

其中一个实施例中,无人机集群任务执行模型建立模块用于使用OpenAI仿真环境,根据预设的无人机集群防御任务训练数据得到对应的训练环境数据。使用MADDPG算法将待训练的无人机集群中的无人机构建为智能体,根据智能体和训练环境数据建立对应的无人机集群任务执行模型。

其中一个实施例中,还包括模型训练模块,用于根据训练环境数据和智能体的当前状态,得到智能体的当前状态数据。使用预设的约束规则得到智能体从动作集中获取下一步动作时的动作子集,根据训练环境数据得到动作子集中的动作对应的单步奖励函数的值。根据所述智能体获取到的下一步动作,更新所述训练环境数据和所述智能体的当前状态,根据所述单步奖励函数的值更新所述智能体获取下一步动作的策略数据。

其中一个实施例中,智能体的状态集中的状态包括智能体的位置、速度和航向角。其中,位置、速度和航向角的取值范围均为连续区间。

关于一种基于规则约束训练的无人机集群智能任务执行装置的具体限定可以参见上文中对于一种基于规则约束训练的无人机集群智能任务执行方法的限定,在此不再赘述。上述一种基于规则约束训练的无人机集群智能任务执行装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图4所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种基于规则约束训练的无人机集群智能任务执行方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。

本领域技术人员可以理解,图4中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行计算机程序时实现以下步骤:

根据预设的无人机集群防御任务训练数据得到对应的训练环境数据,以待训练的无人机集群中的无人机为智能体,基于MADDPG算法建立训练环境数据对应的无人机集群任务执行模型。训练环境数据包括防御对象集合。

根据无人机的任务能力参数、训练环境数据和预设的任务目标数据,得到无人机集群任务执行模型中智能体的动作集、状态集和单步奖励函数。

使用预设的约束规则得到智能体从动作集中获取下一步动作时的动作子集,使用动作子集、状态集和单步奖励函数训练无人机集群任务执行模型中的智能体。其中,约束规则是根据智能体和防御对象的相对位置数据确定的。

使用训练好的无人机集群执行无人机集群防御任务。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:获取智能体和防御对象的相对距离值,当相对距离值持续减小时:当相对距离值在预设的区间内时,获取使智能体最快离开防御对象的作用区域的航向角,根据航向角得到智能体从动作集中获取下一步动作时的动作子集。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:获取智能体和防御对象的相对距离值,当相对距离值持续减小时:当V/dis大于预设值时,将智能体的加速度值设置为大于零,当V/dis小于预设值时,将智能体的加速度值设置为小于零。其中,V表示智能体的速度,dis表示相对距离值,V/dis表示智能体的速度距离比值。根据加速度值得到智能体从动作集中获取下一步动作时的动作子集。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:获取防御对象集合中预设的威胁值为最高的最大威胁目标,获取智能体和最大威胁目标的相对距离值。根据训练环境数据和无人机的任务能力参数,得到智能体对防御对象的防御效果数据,得到防御对象对智能体的抵抗效果数据,以及得到防御对象对预设的保护区域的攻击效果数据。根据训练环境数据得到防御对象的航向角,并得到防御对象和智能体的航向夹角。根据智能体对应的相对距离值、防御效果数据、抵抗效果数据、攻击效果数据和航向夹角,得到单步奖励函数的值。其中,单步奖励函数的值与相对距离值、防御效果数据和航向夹角分别为正相关关系,单步奖励函数的值与抵抗效果数据和攻击效果数据分别为负相关关系。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:使用OpenAI仿真环境,根据预设的无人机集群防御任务训练数据得到对应的训练环境数据。使用MADDPG算法将待训练的无人机集群中的无人机构建为智能体,根据智能体和训练环境数据建立对应的无人机集群任务执行模型。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:根据训练环境数据和智能体的当前状态,得到智能体的当前状态数据。使用预设的约束规则得到智能体从动作集中获取下一步动作时的动作子集,根据训练环境数据得到动作子集中的动作对应的单步奖励函数的值。根据所述智能体获取到的下一步动作,更新所述训练环境数据和所述智能体的当前状态,根据所述单步奖励函数的值更新所述智能体获取下一步动作的策略数据。

其中一个实施例中,智能体的状态集中的状态包括智能体的位置、速度和航向角。其中,位置、速度和航向角的取值范围均为连续区间。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:

根据预设的无人机集群防御任务训练数据得到对应的训练环境数据,以待训练的无人机集群中的无人机为智能体,基于MADDPG算法建立训练环境数据对应的无人机集群任务执行模型。训练环境数据包括防御对象集合。

根据无人机的任务能力参数、训练环境数据和预设的任务目标数据,得到无人机集群任务执行模型中智能体的动作集、状态集和单步奖励函数。

使用预设的约束规则得到智能体从动作集中获取下一步动作时的动作子集,使用动作子集、状态集和单步奖励函数训练无人机集群任务执行模型中的智能体。其中,约束规则是根据智能体和防御对象的相对位置数据确定的。

使用训练好的无人机集群执行无人机集群防御任务。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取智能体和防御对象的相对距离值,当相对距离值持续减小时:当相对距离值在预设的区间内时,获取使智能体最快离开防御对象的作用区域的航向角,根据航向角得到智能体从动作集中获取下一步动作时的动作子集。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取智能体和防御对象的相对距离值,当相对距离值持续减小时:当V/dis大于预设值时,将智能体的加速度值设置为大于零,当V/dis小于预设值时,将智能体的加速度值设置为小于零。其中,V表示智能体的速度,dis表示相对距离值,V/dis表示智能体的速度距离比值。根据加速度值得到智能体从动作集中获取下一步动作时的动作子集。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取防御对象集合中预设的威胁值为最高的最大威胁目标,获取智能体和最大威胁目标的相对距离值。根据训练环境数据和无人机的任务能力参数,得到智能体对防御对象的防御效果数据,得到防御对象对智能体的抵抗效果数据,以及得到防御对象对预设的保护区域的攻击效果数据。根据训练环境数据得到防御对象的航向角,并得到防御对象和智能体的航向夹角。根据智能体对应的相对距离值、防御效果数据、抵抗效果数据、攻击效果数据和航向夹角,得到单步奖励函数的值。其中,单步奖励函数的值与相对距离值、防御效果数据和航向夹角分别为正相关关系,单步奖励函数的值与抵抗效果数据和攻击效果数据分别为负相关关系。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:使用OpenAI仿真环境,根据预设的无人机集群防御任务训练数据得到对应的训练环境数据。使用MADDPG算法将待训练的无人机集群中的无人机构建为智能体,根据智能体和训练环境数据建立对应的无人机集群任务执行模型。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:根据训练环境数据和智能体的当前状态,得到智能体的当前状态数据。使用预设的约束规则得到智能体从动作集中获取下一步动作时的动作子集,根据训练环境数据得到动作子集中的动作对应的单步奖励函数的值。根据所述智能体获取到的下一步动作,更新所述训练环境数据和所述智能体的当前状态,根据所述单步奖励函数的值更新所述智能体获取下一步动作的策略数据。

其中一个实施例中,智能体的状态集中的状态包括智能体的位置、速度和航向角。其中,位置、速度和航向角的取值范围均为连续区间。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

相关技术
  • 基于规则约束训练的无人机集群智能任务执行方法和装置
  • 无人机集群任务分配方法、装置及无人机集群系统
技术分类

06120112586105