随着无人机技术的不断发展,无人作战飞行器(UCAV)的作用与地位也在不断升高,在战场上的意义越来越重要;在未来与有人机进行空中对抗时,由于UCAV的造价较低且机动性强,必然可以对有人机形成数量上的优势,而多机空战协同攻击技术则是实现多UCAV自主空战的核心问题,国内外许多学者也对此进行了研究:文献[1]提出了使用威胁评估模型建立多机空战模型,文献[2]等使用优化算法对协同任务分配进行建模并求解,文献[5]从协同制导的角度分析了多机空战的决策方法,文献[6]通过强化学习的方法研究了多机空战决策问题。
综合分析上述文献可以发现,多机空战决策的核心在于目标分配,现有成果中也通过不同方法对此进行了深刻研究并得到了很多较为成熟的目标分配模型。在目标分配模型中一般会存在对战机的态势评估,然而考察这些态势评估模型以及目标分配结束后进行机动决策的模型时却发现,这些模型大都沿用了一对一空战时的态势评估及决策方法,但在多机空战中却会经常出现局部一对多或多对一的情形;对于有人机而言这样的差别还可以接受,因为飞行员可以在接收到目标分配指令后综合考虑友机位置进行最终决策,而对于自主攻击的无人机而言,如果建模过程中不考虑协同机制, UCAV将依然按照一对一空战时的决策方法进行决策,不会主动配合友方进行协同攻击。故本文以二对一空战为背景,详细分析了在协同攻击环境下态势关系与一对一空战时的区别,建立了协同威胁指数模型,应用基于多目标优化与强化学习的机动决策方法[7]进行了局部二对一情形下的空战态势评估与决策。
在对UCAV近距空战进行机动决策与仿真时,采用三自由度质点模型描述UCAV的运动状态,模型参数定义见图1。
图1 UCAV三自由度模型示意图
1.1.1 模型假设
为了便于分析,对建立UCAV运动、动力学模型作如下假设:
1) 假设UCAV为一个刚体,且发动机非推力矢量控制类型,并假设其推力方向固定为机身纵轴线方向;
2) 假设地球为惯性坐标系(将地面坐标系看作惯性坐标,忽略地球自转及公转影响);
3) 忽略地球曲率;
4) 在模拟双方飞行轨迹时,忽略控制系统的延迟。
1.1.2 UCAV质点模型
为了简化计算,当考察UCAV的运动轨迹时,可将其看作质点;在惯性坐标系下,其运动方程为
(1)
相同惯性坐标系下,UCAV的动力学方程为
(2)
以上两式中,vu表示速度,γ表示航迹倾角,ψ表示航向角,μ表示滚转角,α表示攻角,m表示质量,T表示发动机推力,D表示空气阻力,L表示升力,g表示重力加速度。
飞行过程中,UCAV所受升力L与空气阻力D计算公式如下:
(3)
式(3)中: ρ表示空气密度,S为UCAV参考横截面积,CL与CD分别为升力和阻力系数。
发动机推力T计算公式如下:
T=δTmax
(4)
式(4)中: Tmax表示发动机最大推力; δ表示油门,取值范围为[0,1]。
为便于进行仿真,在进行机动决策时,采用攻角α、油门δ、滚转角μ三个控制量作为决策量并控制UCAV进行机动。
文献[7]将多目标优化方法与Actor-Critic强化学习方法[8]的结构相结合,构建了一种新的空战机动决策模型,模型总体构架如图2所示。
图2 空战机动决策模型
基于多目标优化与强化学习的机动决策模型在实际应用中具有较好的可拓展性,故本文将以此模型作为一对一空战决策的基础,仍采用原文中的态势参数ηA与能量参数ηw作为优化目标,分析并构建多UCAV协同攻击的机动决策模型。
二对一空战是多机协同攻击中最基础也是最具代表性的空战情形,本节以二对一空战为背景,定义协同威胁指数并分析多UCAV协同攻击决策方法。
以往关于多机空战目标分配以及决策的研究成果中,在评估态势时采用的仍是一对一时的态势评估方法,而没考虑协同情形下对态势评估值的影响,本节将分析考虑协同威胁的必要性。
考虑基于多目标优化与强化学习的空战决策模型在讨论一对一空战机动决策时,使用强化学习方法训练出了一对一空战时的辅助决策网络,文献[7]仿真验证了该网络具备原Actor-Critic框架中Critic模块的作用,可以针对相对态势量输出一个获胜期望,从某种程度上来说,该网络的输出也是对一对一情形下对双方态势的一个评估值,并且由于该网络是在各态势优化函数的基础上通过强化学习训练得出的,相对于将这些态势优化函数加权整合出来的态势评估值,相较于一般的加权方法无疑是更具有说服力的。故本节将应用该网络计算一对一情形下的态势关系值,并将该态势值记作η1-1(u→e),由于该态势值的本质是获胜期望,故在计算敌机对我机的态势值时可以直接使用下式:
η1-1(e→u)=1-η1-1(u→e)
(5)
在两机同时攻击一个目标时,被攻击方针对任意一架飞机的机动都会受到另一架飞机的限制,无法同时取到在一对一情形与两机对抗时的最优态势值;即从某种程度上来说,双机一方的态势评估值随着友方的存在被“升高”了,这个“升高”量会受到3架飞机相对位置的影响,虽然有大有小但确是普遍存在的,所以若要对二对一情形下的空战态势进行有效评估,必须要对这个“升高”量进行计算,而在进行二对一机动决策时,也要充分利用这个“升高”量。
二对一空战情形下双机一方的态势威胁值会因为友方的存在而升高,为了更为可靠地进行多机目标分配以及二对一情形下的机动决策,建立二对一空战情形下的态势评估模型是十分必要的。结合多机空战决策时的实际需求,对二对一情形下的态势评估模型的建立做以下分析:
1) 二对一情形下双方态势关系较为复杂,难以使用公式直接进行计算,故最为可行的计算方法时仍是仿照辅助决策网络的训练方法构建神经网络进行拟合;
2) 二对一空战的双机一方虽然是两架飞机协同攻击,但任何机动占位以及武器发射仍是以单机为基础:即对于任一架飞机而言,友方的存在可以限制敌方的机动范围,却并不能帮助自己完成机动动作或者发射武器;所以一对一情形下的态势评估值仍会直接影响二对一的态势评估结果。不失一般性,为了减少态势评估模型的计算量,模型可以只计算二对一情形下友方产生的态势量增幅,并结合一对一的态势评估值得出最终态势评估结果;
3) 空战机动决策一般发生在近距空战时,对决策时间具有较高要求,且考虑复杂电磁环境下友方之间的通信会受到干扰,故多机情形下的机动决策并不适合采用多机联合在线决策的方式,最可行的方式应当是以单机为决策单位,在考虑与友军配合的前提单独决策;所以,在评估双机一方的态势值时也应当针对每一架飞机分别给出评估结果。
综上所述,为了对二对一空战情形进行准确的态势评估,定义协同威胁指数ηco(u(ua)→e)用于描述二对一空战中友机带来的态势指数增幅(式中u的ua与并不等价),具体定义式如下:
ηco(u(ua)→e)= f ({ε(u→e)},
η1-1(ua→e), {ε(u,ua→e)})
(6)
其中: ua表示友方飞机; e表示敌机; ε表示两者的相对态势关系,描述态势关系采用的具体参量将在下文建立ηco的训练模型时给出。
结合协同威胁指数,二对一情形下的态势评估模型如图3所示,且二对一态势下的态势评估值计算如下:
η2-1(u(ua)→e)= η1-1(u→e)*ηco(u(ua)→e)
(7)
与一对一时的态势评估值相同,该评估值的本质也是获胜期望,故在评估单机一方的态势值时同样有:
(8)
图3 二对一态势评估模型
应用前文描述的基于多目标优化与强化学习的模型时,结合协同威胁指数的定义构建二对一空战机动决策模型。
2.3.1 二对一情形下的辅助决策模块
在二对一空战中,辅助决策模块依然需要对多目标优化决策集进行评估并选出最终决策量,但由于评估对象时二对一的空战态势,结合上一节对协同威胁指数的定义,在原先一对一辅助决策网络的基础上还需添加协同威胁指数的计算网络,并将两个网络的输出相乘作为辅助决策模块对于输入状态的最终输出结果。
二对一情形下战场中有三架飞机,不妨设己方为双机一方,其态势如图4所示,其中下标u代表己方进行态势评估的UCAV参数,下标f代表己方另一架UCAV参数,下标e代表敌机参数, φe-(u, f)表示己方两架UCAV与敌机之间形成的夹角;可以看出描述三架飞机的完整态势需要18个维度的输入量。
图4 二对一空战态势示意图
然而进行目标分配时需要进行大量的二对一态势评估,计算协同指数时的效率至关重要;故本文在使用强化学习方法训练BP神经网络[9]拟合协同威胁指数时,依旧对网络输入的维度进行了简化,BP网络具体设置如下:
1) 简化网络输入的维度必然会导致有效信息的丢失,但在本文的决策模型中,协同威胁指数的作用只是给出友机带来的态势指数增幅,从而配合多目标优化方法给出的解集进行决策,故只要输入各机之间的相对位置关系即可,本文定义网络输入为7个维度
在上述的输入维度简化中,丢失了本机的绝对位置信息(例如以敌机机身线为对称轴,当我机处于关于该轴对称的两个位置时,网络关于我机的位置输入相同),但多目标决策模块的输入是绝对位置,从而弥补了这一信息损失带来的后果;此外由于仅输入了友机的态势评估值,友机的位置信息全部丢失,但该协同威胁指数仅用于进行本机的机动决策,在进行友机的机动决策时需要重新计算本机对友机的协同威胁指数值,故该信息的丢失并不会影响到最终的决策结果。
2) 网络输出为在友方UCAV(下标 f)的协同下,待评估的己方UCAV(下标u)攻击敌机(下标e)时获得的协同威胁指数 ηco(u(f)→e);
3) 确定隐层节点时参考如下经验公式:
(9)
其中: l0为隐层节点数; no和mo分别为输入输出节点数; ao为1~10之间的调节常数。结合实际仿真效果确定隐层数为14;
4) 在计算BP误差(即强化学习的奖赏)时,使用时序差分方法[10]中计算奖赏的公式如下:
(10)
其中: αRL为学习率,随训练次数的增加而减小; γRL为折扣率,本文取γRL=0.4;r为奖赏值,n为本次仿真经历的总步数,i为当前状态步数;由于网络的评价目标是获胜期望而非瞬时态势优势,r值由仿真结果rend给出,其中关于rend的取值如表1所示。
表1 rend取值表
击落敌机友方击落敌机平局友方被击落被击落rend10.80.40.20
此外,由于协同威胁指数网络的训练必须在二对一空战环境下进行,为避免同时训练两个网络带来的麻烦,在二对一空战环境下进行强化学习时默认使用已经训练完成的一对一辅助决策网络(即先在一对一环境下训练辅助决策网络,完成后再在二对一环境下进行协同威胁指数网络的训练)。
2.3.2 决策模型
在复杂电磁环境下进行近距格斗时,为了避免通信被干扰带来的影响,各UCAV应当在考虑到配合友方的前提下单独进行决策;以下将结合辅助决策模块,给出双UCAV协同攻击敌机时的机动决策模型:
UCAV在机动决策时采用多目标优化与强化学习相结合的机动决策模型,其多目标优化模块的模型如下:
(11)
其中:即为各一对一时的态势优化目标,本文仿真中仅使用了态势参数ηA与能量参数ηw。
多目标优化模块得出的决策集通过辅助决策模块得出最终决策,整个决策模型如图5所示。
图5 二对一机动决策模型
与一对一空战时辅助决策网络的训练方法类似,图7的模型同时也是协同威胁指数网络的训练模型,具体训练步骤如下:
步骤1 初始化协同威胁指数网络,引入一对一态势下的辅助决策网络;
步骤2 随机产生敌我三架飞机的初始位置状态,开始仿真模拟;
步骤3 记录下当前敌我态势关系由多目标决策模型得出决策集;
步骤4 预测每种决策后敌我态势关系,进而通过整个辅助决策网络(协同指数与一对一辅助网络串联)得出对应的获胜期望{v1,v2,…,vn};
步骤5 采用softmax策略[10]从决策集中随机选取出最终执行的决策,每种决策的被选取概率为
(12)
步骤6 执行决策后判断是否达到空战结束条件,若未达到,返回步骤3;若已达到,进入步骤7;
步骤7 对本次仿真所经历的所有状态通过式(10)计算BP误差返回辅助决策网络用于网络更新。
为了更加直观体现增加协同威胁指数之后辅助决策模型的效果,设置了两组典型的我方双机对敌单机的空战初始条件,分别使用增加协同威胁指数前后的辅助决策模型进行机动决策,仿真参数设置如下:
第1组初始条件如下(坐标系均为以敌机在地面投影位置为坐标原点的东北天坐标系,单位为m):
敌机初始位置(0,0,4 000),初速度大小为220.7 m/s,初始ψ=144.7°,γ=0°;
己方1号飞机初始位置(-37,1 907.3,4 462.7),初速度大小为281.9 m/s,初始ψ=248.4°,γ=0°;
己方2号飞机初始位置(425,2 602.2,4 492.6),初速度大小为281.9 m/s,初始ψ=248.4°,γ=0°。
图6分别记录了使用协同威胁指数前后的模拟空战情况,图7~图8分别给出了双方相互攻击判定条件(视线角与距离)。
图6 空战仿真结果
图7 相互攻击判定(未使用协同威胁指数)
图8 相互攻击判定(使用协同威胁指数)
仿真结果中,我方初始位于相对有利的位置,敌机向内侧转弯做机动规避,但由于我方UCAV初始速度大于敌机,转弯半径也会大于敌机,这就使得敌机拥有了调整自己方位角的机会。在不使用协同威胁指数时,由于我方双机与敌机的相对态势基本相同,两架UCAV的决策模型所得结果也基本一致,结果被敌机通过S型机动将被尾追的劣势态势转化成迎头抢攻的均势态势,而在迎头抢攻的情形下,我方双机由于距离过近反而相互限制了对方的机动范围,使得敌机反而在29 s时对我方二号UCAV率先形成了有效的攻击判定。
在使用了协同威胁指数之后,我方二号UCAV一开始时就通过异面机动减速获得了更小的转弯半径,并成功与一号UCAV对敌机形成了夹击的态势,并于第18 s对敌机形成了有效的攻击判定;事实上,如果不考虑一号UCAV的位置,在二号UCAV减速的过程中,敌机通过向外加速转向可以直接脱离二号UCAV的追击,但外侧一号UCAV的存在完全限制了敌机向外的机动范围,使得二号UCAV可以顺利完成攻击;
第2组初始条件如下:
敌机初始位置(0,0,4 000),初速度大小为290.4 m/s,初始ψ=313.3°,γ=0°;
己方1号飞机初始位置(-1 613.2,7 019.5,3 549.7),初速度大小为276.5 m/s,初始ψ=15.5°,γ=0°;
己方2号飞机初始位置(-2 956.1,620 6.2,4 389.6),初速度大小为276.5 m/s,初始ψ=15.5°,γ=0°;
图9分别记录了使用协同威胁指数前后的模拟空战情况,图10~图11分别给出两次空战中双方相互攻击判定条件(视线角与距离)。
图9 空战仿真结果
图10 相互攻击判定(未使用协同威胁指数)
图11 相互攻击判定(使用协同威胁指数)
仿真结果中,我方UCAV初始处于不利的态势,尤其是一号UCAV劣势较为明显,在未使用协同威胁指数时,敌机选择直接追击我方一号UCAV,我方一号UCAV虽然进行了机动规避,但由于劣势较大,于第25 s被敌机形成了有效的攻击判定,而二号UCAV虽然通过转弯调整了自己与敌机的态势关系,但并没有干扰到敌机追击一号UCAV的过程,在整个空战中几乎处于“游离”的状态。
使用协同威胁指数后,我方二号UCAV选择了类似于“斜筋斗”的机动策略,由于敌机追击我方一号UCAV进行了加速,导致其在15 s时直接冲到了二号UCAV前方有效射程,敌机为了规避二号UCAV被迫放弃对一号UCAV的追击并准备转向,却被趁机完成态势调整的一号UCAV夹击,一号UCAV于26 s对敌机形成了有效的攻击判定;事实上,二号UCAV与敌机的初始距离较远,敌机完全有时间通过机动减速以避免在二号UCAV的“斜筋斗”机动中冲前,而此时消耗掉大量能量的二号UCAV将处于十分危险的态势,但由于一号UCAV的初始劣势太大,几乎无法规避敌机的加速追击,二号UCAV采用这样较为“极端”的策略反而使敌机陷入了两难的境地。
通过引入协同威胁指数,仿真对比了两组典型的二对一空战仿真实验,在使用了协同威胁指数之后,二对一空战辅助决策网络可以引导己方UCAV综合考虑三架飞机的态势关系,从而与友方UCAV配合并进行协同攻击,能够较敌机更早形成攻击判定。本文给出的决策模型虽然是基于二对一空战的,但协同威胁指数可以作为一个优化参数加入到各类目标分配模型中,从而更为合理地将多机空战分解成多个局部一对一或多对一的情形,并结合本文的决策模型进行最终决策。如何通过协同威胁指数构建更为合理地多机空战模型也是本文下一步研究的主要目标。
[1] 魏政磊,赵辉,黄汉桥,等.基于SAGWO算法的UCAVs动态协同任务分配[J].北京航空航天大学学报,2018,44(8):1651-1664.
[2] SU M C,LAI S C,LIN S C,et al.A new approach to multi-aircraft air combat assignments[J].Swarm & Evolutionary Computation,2012(6):39-46.
[3] 刁兴华,方洋旺,肖冰松,等.基于多智能体联盟的多机协同空战任务分配[J].北京航空航天大学学报,2014,40(9):1268-1275.
[4] 肖冰松,方洋旺,胡诗国,等.多机空战协同制导决策方法[J].系统工程与电子技术,2009,31(3):610-612.
[5] 董彦非,冯惊雷,张恒喜.多机空战仿真协同战术决策方法[J].系统仿真学报,2002(6):723-725.
[6] 左家亮,杨任农,张滢,等.基于启发式强化学习的空战机动智能决策[J].航空学报,2017(10):212-225.
[7] 杜海文,崔明朗,韩统,等.基于多目标优化与强化学习的空战机动决策[J].北京航空航天大学学报,2018,44(11):2247-2256.
[8] DOVA K.Reinforcement learning in continuous time and space[J].Neural Computation,2000,12(1):219-245.
[9] SUTTON R S.Learning to predict by the method of temporal differences[J].Machine Learning,1988,3(1):9-44.
[10] HAAMOJA T,ZHOU A,ABBEEL P,et al.Soft actor-critic:off-policy maximum entropy deep reinforcement learning with a stochastic actor[C]//Proceedings of the 35th International Conference on Machine Learning,PMLR 80:1861-1870,2018.