一种多六自由度飞行器协同作战决策方法

文档序号:35342167发布日期:2023-09-07 12:34阅读:70来源:国知局
一种多六自由度飞行器协同作战决策方法

本发明涉及一种基于深度强化学习的多六自由度飞行器协同作战的决策方法,属于多飞行器协同智能空战领域。


背景技术:

1、多飞行器协同作战是指两架或两架以上的作战飞机相互配合、相互协作,通过协同机动,协同打击以及火力掩护等方式完成既定的作战任务。相比于单机作战,多飞行器作战可以在信息网络为中心的作战条件下,共享态势及资源信息,单机优势可通过协同转化为编队整体优势来发挥作用.以联成一体的作战平台网络为基础,以最佳的打击效果为目的,形成灵活多样的多飞行器协同攻击作战方式。但在多飞行器协同作战过程中如何对当前态势进行合理的评估,如何使多飞行器协同态势最大化,是多飞行器协同作战面临的主要问题。

2、近年来,以深度学习,强化学习和深度强化学习为代表的人工智能技术取得了较大的进展。并在围棋,雅达利,星际争霸和单机近距格斗等领域取得了成功,并有望在复杂的控制决策领域取得进一步突破。若将单智能体深度强化学习算法直接应用于多智能体控制决策领域,会存在奖励函数难以设计,观察空间过大等问题,从而造成训练困难,学习效果欠佳。相较于单智能体深度强化学习算法,多智能体算法在协作决策问题上取得了更好的效果。例如在2019年openai团队所设计的openai five程序击败了dota 2世界冠军战队og,此外,多智能体算法还在炸弹人,谷歌足球等多智能体协同对抗游戏里取得了很好的效果。

3、如今,在多智能体协同对抗领域,已有不少相关研究。如2021年南京理工大学李琛等人利用ac(actor-critic)框架对兵棋进行多智能体协同推演,并且采用了分布式执行,集中训练的方法避免了维度爆炸问题,加快了训练速度以及加强了训练后得到的模型稳定性,但是该作者在初始动态数据库里加入了专家数据,其模型的泛化性有所下降。2021年马晶,李鹏等人将深度强化学习对舰载机多智能体对抗进行了相关研究,分别说明了异步优势ac算法,分布式近端策略优化算法ppo(proximal policy optimization),深度确定性策略梯度算法ddpg(deep deterministic policy gradient)、多智能体深度确定性策略梯度算法maddpg(multi-agent deep deterministic policy gradient)在多飞行器对抗方面的优势,但是该研究并没有提高数据使用效率和不同任务模型的泛化能力,无法突破对于经验的局限性问题。在无人机方面,姜福涛,黄学军等人提出基于无人机群领导跟随模式下的邻接跟随,根据无人机方位灵活确定领航者,根据环境变换阵型,不拘泥于单一领导者,但是面对复杂地形以及无人机对抗时,局部无人机之间协同程度低,且无人机群的邻接跟随模式会让机群过多分散,导致单一作战从而落败。

4、综上所述,现有多六自由度飞行器协同作战决策方法与装置存在的问题是:

5、(1)在现有方法中,多飞行器协同作战过程中的态势评估部分缺乏理论建模,过于依赖专家的先验知识,导致态势评估主观性较强,训练得到的模型泛化性较差。

6、(2)在现有方法中,针对2v1,2v2等不同的多飞行器协同作战场景奖励函数设计复杂,需要根据不同的场景单独设计奖励函数,缺乏统一的奖励函数设计方法。


技术实现思路

1、针对上述问题,本发明的目的在于提供一种基于深度强化学习的一种多六自由度飞行器协同作战决策方法,该方法基于层次分析法实现多飞行器协同作战过程中的态势评估,降低态势评估模型的主观性,并针对不同多飞行器协同作战场景提供了一套有效且统一的奖励函数设计方法。技术方案如下:

2、一种多六自由度飞行器协同作战决策方法,包括以下步骤:

3、s1:使用pid控制器实现六自由度固定翼飞行器的飞行控制,并将控制输入由舵面控制层次(副翼,升降舵,方向舵,油门)转为航迹控制层次(航路点的三维坐标)。

4、s2:使用层次分析法搭建多飞行器协同作战态势评估模型,并将该模型作为多智能体深度强化学习算法的观测空间,对于不同的多飞行器协同作战场景的奖励函数设计,将奖励函数分为单机部分和协同部分进行设计。

5、s3:基于多智能体深度强化学习算法,搭建神经网络,根据s2中设计的观测值和奖励函数进行不同场景的多飞行器协同作战训练,最终得到不同场景的多飞行器协同作战模型。

6、进一步的,所述s1的具体过程为:

7、通过两个pid控制器通过控制升降舵和副翼分别实现六自由度固定翼飞行器的俯仰通道和滚转通道的控制,六自由度固定翼飞行器选用的动力学模型的开源动力学模型jsbsim,固定翼飞行器的机型为f-16,俯仰通道和滚转通道控制器的结构图如图1所示,俯仰通道的输入为目标俯仰角,pid控制器输入为当前俯仰角与目标俯仰角之差,滚转通道的输入的目标滚转角,pid控制器的输入为当前滚转角与目标滚转角之差。

8、在上述俯仰通道和滚转通道控制的基础上,在使用两个pid控制器实现对飞行器高度和航向的控制,进而实现将飞行器的输入由舵面控制层次输入变为航迹控制层次输入,整体的控制器结构图如图2所示。pid控制器1的输入为误差1,误差1为目标航向或高度与当前航向或高度之差,pid控制器1的输出为飞行器的目标俯仰角或滚转角,pid控制器2为图1所述的俯仰(滚转通道控制器)。

9、目标航向和高度的获取由飞行器当前位置和目标航路点位置决定,此外,在本发明中舵面控制量中的方向舵始终为零,油门为满油门状态。

10、更进一步的,所述s2的具体过程为:

11、s21:基于层次分析法建立的态势评估模型分为速度优势评估,角度优势评估,距离优势评估和空战能力评估四个部分加权求和得到,在本发明中使用相同的机型进行飞行器空战协同对抗,相同的机型空战能力默认相同,因此在本发明中不对空战能力评估进行说明,只进行速度优势,角度优势和距离优势的建模和评估。

12、速度优势评估函数如式(1)所示:

13、

14、其中vr表示红方飞机速度,vb表示蓝方飞机速度,v0表示有利速度,有利速度的取值由作战任务确定。

15、s22:角度优势评估函数如式(2)所示,其中p表示红方飞机相对于蓝方飞机的视线角,q表式蓝方飞机相对于红方飞机的视线角,红蓝双方视线角的示意图如图3所示。

16、ta=[p-q+180°]/360°         (2)

17、s23:距离优势评估函数如式(3)所示,其中d为双方距离,dmmax为导弹的最大发射距离,dmtmax为最大不可逃逸距离,dmtmin为最小不可逃逸距离。

18、

19、s23:根据层次分析法理论确定速度优势评估,角度优势评估,距离优势评估和空战能力评估各个部分的权重。本发明依据层次分析法构造的重要性判断矩阵如表1所示:

20、表1重要性判断矩阵

21、 a <![cdata[t<sub>c</sub>]]> <![cdata[t<sub>d</sub>]]> <![cdata[t<sub>v</sub>]]> <![cdata[t<sub>a</sub>]]> <![cdata[t<sub>c</sub>]]> 1 1/2 1/4 1/4 <![cdata[t<sub>d</sub>]]> 2 1 4/7 2/3 <![cdata[t<sub>v</sub>]]> 4 7/4 1 7/6 <![cdata[t<sub>a</sub>]]> 5 3/2 6/7 1

22、其中,tc,td,tv,ta分别为空战能力评估值,距离优势评估值,速度优势评估值和角度优势评估值,矩阵中的数值表示两两的相对重要程度,例如,第二行第三列的值为1/2表示空战能力评估值和距离优势评估值在总体态势评估中重要程度比值为1/2。根据层次分析法求解上述重要性判断矩阵的特征值和特征向量,取最大特征值对应的特征向量作为各部分评估值的权重。根据表1得到空战能力评估值,距离优势评估值,速度优势评估值和角度优势评估值分别对应的权重值为0.09,0.2,0.37,0.33。

23、更进一步的,所述的s3的具体过程为:

24、s31:在仿真系统中搭建实验环境,确定训练飞行器的类型、飞机的初始状态,并初始化环境;

25、s32:使用mappo算法,搭建多飞行器协同对抗强化学习算法:

26、(1)设置观测空间

27、观测空间包含两部分,第一部分是对敌方飞行器或友方飞行器进行观测,第二部分是对自身的飞行状态进行观测。第一部分的观测值根据s2中所述的层次分析法确定,主要包含计算距离,速度和角度优势评估值所需的敌/友飞行器的飞行状态值,第二部分观测自身飞行器状态的目的是确保自身飞行不会有迎角过大等可能导致飞行器失速的情况发生。

28、根据六自由度下的运动解算方程,以分别表示飞行器的俯仰角、偏航角和滚转角,反映飞行器相对地面惯性坐标系的姿态。[x y z]表示飞行器以地面为参考系的三维空间坐标值。以[vx vy vz]分别表示飞行器的飞行速率在三个方向上的拆分。

29、在任意的某时刻,某一飞行器所处的状态可以由以下的十六元组来表示:

30、

31、其中,vt为速度标量,α为攻角,β为侧滑角,为滚转角,为俯仰角,θ为航向角,p为绕机体x轴旋转角速度,q为绕机体y轴旋转角速度,r为绕机体z轴旋转角速度,northward为局部x轴坐标,eastward为局部y坐标,alititude为局部z坐标。获得单独的飞行器的状态信息后,则通过联合协同作战环境中其余飞行器各自的状态,计算当前战场的观测信息,当前飞行器的观测值可表示为:

32、

33、其中,表示当前飞行器对第i个飞行器i的相对观测内容。即在飞行器自身的观测值外,增加其余方飞行器与自身的位置的相对关系以及双方速度在三维方向上的差异。

34、(1)设置动作空间

35、根据s1中所述的飞行器从舵偏控制层次转为航迹控制层次,选取目标点的北东天坐标为决策维度进行连续空间的决策控制。同时,为了缩小搜索空间,将决策的位置范围集中至目标机方圆5km之内,目标机的编号也通过网络来进行生成,决策结果以一维向量表示。

36、action=[target,xt,yt,zt]

37、其中,target表示该机选择的目标飞机的编号,xt,yt,zt分别表示智能体在三个航迹维度上作出的指令值。在具体的训练过程中,三者均根据实际的控制范围作了[0,1]的放缩处理。

38、(2)设置奖励函数

39、在多飞行器协同空战场景中,奖励函数分为两部分,第一部分是对于每个智能体的奖励,由s2中所述的层次分析法计算得到,第二部分的奖励为团队协作奖励,设置团队奖励的目的是避免出现部分飞行器攻击,部分飞行器逃跑的情况。

40、第一部分奖励如式(4)所示,其中rsingle表示单个智能体的奖励,没有考虑团队协作,rc表示空战能力优势奖励,ra表示角度优势奖励,rd表示距离优势奖励,rv表示速度优势奖励,k1,k2,k3和k4表示对应的权重因子,在本发明中,所有的飞行器类型相同,因此rc设置为1,ra,rd,rv分别与s2中的所述的ta,td,tv对应,k1,k2,k3和k4分别与s2中所述的权重0.09,0.2,0.37,0.33对应。

41、rsingle=k1rc+k2ra+k3rd+k4rv          (4)

42、第二部分奖励如式(5)所示,其中,rcooperate表示团队合作奖励,属性为惩罚奖励,rattacked表示队友被攻击给予的惩罚奖励,rcrash表示队友被击毁的惩罚奖励。在这里需要注意的是,当队友攻击敌方飞机时我们没有给予奖励,其原因是我们认为队友攻击敌方飞机获取的奖励已在rsingle中进行了体现,若再增加奖励不利于智能体之间的相互协作。

43、rcooperate=rattacked+rcrash         (5)

44、(3)设置算法参数并进行多飞行器协同对抗训练

45、在多智能体的对抗训练中,考虑到多飞行器方可能存在的配合策略,采用mappo算法对智能体进行训练。mappo算法是相对成熟的深度强化学习算法,其算法原理在本发明中就不再阐述。由于在近距离格斗任务下,飞行器的动作需要具有很高的灵活性,同时,飞行器所处的环境也存在着参数数量级跨度大,环境变化迅速等特点,因此就需要策略网络和动作状态价值函数具有很高的非线性拟合能力。在训练中,策略网络以及评估网络均采用了10层512单元的全连接层,并在每一层后增加sigmoid激活函数将输出范围压缩到[0,1]之间。

46、本发明的有益效果是:

47、(1)在s1中通过pid控制器将六自由度飞行器的控制层次由舵偏层次转为航迹控制层次,与使用深度强化学习算法直接控制飞行舵偏量相比,航迹层次的控制更有利于多智能体深度强化学习算法收敛,并使得算法做出的决策更聚焦于战术协同层面。

48、(2)在s2中引入态势评估中的层次分析法设计算法的观测值和奖励函数,避免了观测值和奖励函数过于依赖专家知识或主观性太强的问题,提高了训练后模型泛化性。

49、(3)在本发明中提出了一套统一的观测值和奖励函数的设计方法,该方法可不止应用于一种多飞行器协同对抗作战场景,解决了不同协同作战场景需要单独设计观测值和奖励函数的问题。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1