基于蒙特卡洛树搜索方法的空战机动决策*

2018-04-19 11:43景小宁
火力与指挥控制 2018年3期
关键词:蒙特卡洛空战机动

何 旭,景小宁,冯 超

(空军工程大学航空航天工程学院,西安 710038)

0 引言

空战机动决策是指空战过程中对作战态势分析,选择消灭对方保存自己的攻防策略[1]。空战机动决策具有强烈的对抗性,应用空战决策技术可以显著减轻驾驶员负担、提高空战效能,因此,对空战机动决策的研究成为世界各国军事研究的热点之一[2]。

空战机动决策主要是近距机动决策,因为相较于超视距机动决策,近距机动过程剧烈且频繁,正确的机动决策可以有效规避敌方,抢占优势位置,从而在空战中取得先机。因此,研究近距空战机动决策更具有实战意义。

目前,求解空战机动决策的方法有很多:模糊推理[3]、智能微分对策[4]、混合算法[5]、影响图[6-7]、Memetic算法[8]等,但模糊推理对控制量操作不灵活,微分对策求解困难,矩阵对策法与实际空战有较大差距,影响图法等计算时间长不满足实时性要求。本文采用蒙特卡洛树搜索(Monte Carlo tree search,MCTS[9-10])方法来进行求解,将作战飞机的机动过程划分为若干基本机动动作,建立作战飞机运动学和动力学方程,选取控制量,通过方程求解出作战飞机的状态量。构建合适的空战优势函数,通过蒙特卡洛树搜索方法,不断试探敌我双方未来可能采取的机动动作,估计相应的空战优势,选取空战优势最大的机动动作进行机动,从而完成空战机动决策,并通过仿真验证了决策的实时性、有效性和可行性。

1 空战机动决策建模

研究空战机动决策,首先需要对空战机动动作进行建模。大量的空战训练分析表明,空战过程中飞机复杂的机动过程可以当作一系列基本机动动作的组合。

1.1 基本机动动作库

空战机动决策集合主要分为两类:一类是“典型战术动作决策集模型(典型战术动作库)”,另一类是“基本机动动作决策集模型(基本机动动作库[11])”。本文主要使用“基本机动动作库”作为空战决策的机动动作集合。图1是“基本机动动作库”中7种基本机动动作。

图1描述在决策控制的执行时间Δt内7种基本飞行动作为:

使用这7种基本动作描述机动动作决策空间,不仅减少运算量,而且可以灵活地产生实际飞行姿态。空战机动动作决策的实质就是在当前战场环境下,选择合适的基本机动动作组合,使得空战优势函数达到最大。

由于空战过程是实时的,空战决策也必须实时,故每进行一次空战决策,就必须及时更新双方的空战态势。而整个空战过程,就是沿着空战机动动作多叉树图依次向下选择节点。

1.2 作战飞机运动学和动力学方程

选择相应的机动动作之后,需要根据机动动作对应的控制量求解出作战飞机的状态量,即根据控制量得到状态量,其中x、y、z表示飞机的空间坐标,v 表示速度,γ、ψ 表示航迹倾角和航迹偏角。

假设作战飞机在运动过程中:1)忽略地球曲率的影响;2)忽略作战飞机高度变化对于重力加速度g的影响;3)战机质量不变。基于以上假设,作战飞机在航迹坐标系上的质点运动学方程为[12]

1.3 空战优势函数

在选择作战飞机机动动作时,需要根据当前空战态势,构建相应的空战优势函数,从而做出选择,使我机对敌机的空战优势达到最大。空战优势函数主要由4部分组成:角度优势函数、距离优势函数、速度变化优势函数、高度优势函数,将这4种函数值加权求和得到空战优势函数。

1.3.1 角度优势函数

角度优势函数使用Simpson公式定量描述,在已知进入角AOT和目标角度ATA的情况下,使用下式定量的描述空战对抗双方的角度优势关系

1.3.2 距离优势函数

武器发射站位相当于延长了战机攻击距离。在计算距离优势函数时,需要建立机载武器攻击包线的索引表,包括最大攻击距离rmax,最佳攻击距离(不可逃逸区)ropt和最小攻击距离rmin。假设我方作战飞机距离敌机为r,当本机与敌机之间的距离满足r<rmin或r>rmax时,敌机处于本机攻击距离之外,此时相对距离优势为0;当本机与敌机之间的距离满足rmin≤r≤rmax时,使用下式计算我机的相对距离优势

当本机被敌机攻击时,Sr=-1;当敌机处于本机最佳攻击距离内,Sr=1。其余具有优势处于范围[-1,1]之间。

1.3.3 速度变化优势函数

速度变化越激烈的战机越不容易被敌方瞄准打击,所以使用过载n作为速度变化优势。

其中,eg为预设常数,ηrange为最大范围(令其为1),n为作战飞机的过载。

1.3.4 高度优势函数

两机之间的高低位置将决定导弹射程的大小:携带有同型导弹的飞机,位于高位的飞机,导弹的最大发射距离要大于位于低位的飞机。同时,位于高位的飞机可以利用高度优势进行俯冲,快速地进入攻击区和更快地退出战斗。这里对高度差有一定限制,如果高度差太大,导弹命中概率下降,给出高度优势函数为

其中,h表示我机相对于敌机的高度差。

综上,得到了空战决策过程的优势函数为

1.4 空战态势

根据空战优势函数,空战态势与进入角(AOT)、视线角(ATA)、相对距离(r)、过载(n)、相对高度(h)有关。若当前时刻为t决策时刻,则t决策时刻对应的空战态势为;相应的,根据空战态势x(t),可以得到此空战态势下的空战优势S(t);机动动作的状态空间为,使用 a(t)表示在第 t决策选择的机动动作。

假设已知t-1决策时刻的空战态势x(t-1)以及机动动作a(t-1),现在需要对t决策时刻的机动动作进行决策。传统方法主要以试探法为主,在t决策时刻分别选取不同的机动动作,估计相应的空战态势,得到t决策时刻空战优势S(t),选择使得空战优势S(t)最大的机动动作ci作为t决策时刻的机动动作。本文设计一种新的机动动作决策方法,假设在t决策时刻选择机动动作ci,求解在机动动作ci的前提下,未来k步决策过程所有情况中,我方作战飞机与敌方作战飞机所有机动情况的空战优势期望,然后选择期望最大对应的机动动作ci作为我机的机动动作。

设需要决策的时刻为t,假如作战飞机在t时刻选择机动动作ci,则作战飞机在t时刻的空战优势为。设定正整数k,在t时刻选择机动动作ci的条件下,作战飞机在t+k时刻选择机动动作cj的空战优势为,对于任意动作cj,在时刻选择机动动作ci的前提下,未来k步决策过程所有决策过程的空战优势期望为

得到时刻t最大空战优势期望对应的机动动作。

由于求解未来k步所有决策过程的空战优势期望计算量较大,使用穷举方法不现实,故本文使用蒙特卡洛树搜索的方式求解未来k步所有决策过程的空战优势期望。

2 基于蒙特卡洛树搜索方法的空战机动动作选择

空战机动动作选择是通过试探未来机动动作来确定下一步决策的空战优势概率。蒙特卡洛树搜索(Monte Carlo tree search,MCTS)是一种平衡历史收益和未来开发的树搜索策略。其基本原理是:首先随机选择机动动作策略,然后通过预期收益来更新原来选择策略的价值,设定随机策略选择的概率,与先前计算出的策略价值成正比,通过大量反复随机模拟,让最好策略出现。简单地说,MCTS分为4个部分[13],其原理如图4所示。

本文基于蒙特卡洛树搜索来进行空战机动动作决策。具体决策流程如下:

步骤1选择部分。假设当前为第t-1决策时刻,其空战态势为 x(t-1),机动动作为 a(t-1),需要对第t决策时刻的机动动作进行决策。首先在第t决策时刻依次选择其中基本动作,分别计算选择不同基本机动动作之后得到的空战优势。将选取不同机动动作得到的空战优势作为每个机动动作节点的值;若蒙特卡洛算法没有达到终止条件且有未探索的节点时,该节点就是可以扩展的;否则终止算法,转步骤4;

步骤2扩展部分。若蒙特卡洛搜索算法没有达到终止条件,则可以继续向下选择机动动作,将新的机动动作添入蒙特卡洛树中;

步骤3仿真部分。在新得到的机动动作节点上,计算当前的空战态势;

步骤4反馈更新。将更新得到的节点的值反馈回根节点,沿途更新节点的统计评估值。

蒙特卡洛搜索框架使用UCT搜索策略对空战机动动作节点进行搜索。从根节点出发,记前非叶子节点为n,节点n的空战优势值为S(n)。对于每一个节点n的孩子,采用选择策略得到节点的一个评估值ri,根据评估值对节点的下一步进行选择,这个过程不断重复,直到满足终止条件(当向下搜索超过5步或整体没有未探索节点时)。如果当前节点为评估值最大节点时(由于采用极大极小搜索,所以选择的点只可能是最大节点或最小节点),则评估值计算公式使用正号,并进行下一次选择;如果当前节点为评估值最小节点时,则评估值计算公式用负号,在整个机动决策树中使用下式选择评估值ri最小的值进行搜索。评估值ri的计算公式如下:

其中,vi是以节点ni为根节点所有已经计算出结果的节点的态势优势值S(ni)的平均数,反映了观测节点ni能够提供的回报值的期望。而Ti是节点ni的访问次数,而是节点n的访问次数,ωC是一个人工给定的常数,用于调节回报值和未探索节点的平衡性,σ为一较大正数,用来保证评估值非负。而最后节点n的每一个节点n的孩子的评估值ri就是下一步节点的平均优势期望。这里需要对获胜概率归一化。则第t决策时刻选择不同机动动作的未来空战优势的平均期望为

由于机动动作决策树仅仅选择了一步,即选择了我方的机动动作,所以这时空战态势表示的是我方下一步决策时刻和敌方当前决策时刻的空战态势,当再向下搜索一次时,更新敌方的空战态势,这是满足空战实际的。因为每次搜索用时极短,可认定为其是同步的,且由于MCTS中具体的搜索策略采用的是极大极小搜索算法,本质在于尽可能提高我方空战优势而减少敌方空战优势,故这是一种可行的决策方法。

3 实验仿真

本文的仿真主要分析两个问题:1)使用本文提出的空战机动决策方法的有效性,讨论能否使用本文的机动决策方法来对空战进行决策;2)分析算法的实时性,确定算法是否可以实时进行解算,以满足实际空战过程对于算法实时性的要求。

实验仿真1讨论机动决策方法的有效性

作战想定如下:以敌我双方一对一空战对抗为背景,目标机依照设定路径进入空战,我方作战飞机依据本文确定的机动动作决策方法进行机动。空战过程设定的决策步长为0.2 s。我机初始位置为[10 000,10 000,5 000],初始速度为 180 m/s,航向角为 300°,俯仰角为 -30°,滚转角为 -50°;敌机初始位置为[8 000,7 000,5 000],初始速度为170 m/s,航向角为110°,俯仰角为0°,滚转角为-90°。双方空战态势如图5所示,其中红方表示我机,蓝方表示敌机。

图6给出整个空战过程中敌我双方的空战态势变化曲线(红方使用虚线表示,蓝方使用实线表示)。

根据本文给出的空战优势函数,图7给出整个空战过程中,红蓝双方的空战优势指数的变化曲线。

从空战优势变化曲线可以看出,我机在整个空战过程中绝大部分是处于优势地位的。验证了使用蒙特卡洛树搜索方法进行空战机动决策的可行性。

实验仿真2讨论算法是否满足实时性要求

实验仿真1验证了使用蒙特卡洛树搜索方法的可行性,但如果算法运行计算时间过长,算法就失去了实战价值。故进行实验仿真2,讨论算法是否满足空战过程实时性的要求。在实验仿真1中,红方一共决策330次,用时为66 s。本实验仿真对这330次决策过程中每次决策所用的时间进行统计,做出其统计频数图。

从图8可以看出,算法计算机动动作所用时间众数及中位数位于50 ms~100 ms区间,判定算法是满足实时性要求的。

4 结论

本文主要给出一种基于蒙特卡洛树搜索算法的空战机动动作决策方法。本文将作战飞机的机动过程划分为若干基本机动动作,建立飞机运动学和动力学方程,根据控制量求解作战飞机在空战过程中的状态量。构建了合适的空战优势函数,基于蒙特卡洛树搜索的方法进行空战决策。仿真实验表明,基于蒙特卡洛树搜索的空战机动动作决策方法是有效的。

相较于传统试探下一步机动动作,估计下一时刻的空战优势来选择最优机动动作的方法,本文采用蒙特卡洛树搜索方法,不仅可以估计未来一步的机动动作,而且可以估计未来若干步的机动动作,从而选择使得空战优势期望最大的机动动作。

参考文献:

[1]阮铖巍,寇英信,徐安,等.基于二元模糊比较法的单步空战机动决策研究 [J]. 指挥控制与仿真,2012,34(5):10-13.

[2]JAMES S,JONATHAN P,BRIAN W,et al.Air-combat stratrgy using approximate dynamic programming[J].Journal ofGuidance, Control, and Dynamics,2010,33 (5):1641-1654.

[3]张立鹏,魏瑞轩,李霞.无人作战飞机空战自主战术决策方法研究[J].电光与控制,2012,19(2):92-96.

[4]NUSYIRWAN I F,BILL C.Factorial analysis of a real time optimization for pursuit-evasion problem [C]//Proc.of the 46th AIAA Aerospace Sciences Meeting and Exhibit,2008:195-198.

[5]张涛,于雷,周中良,等.基于混合算法的空战机动决策[J].系统工程与电子技术,2013,35(7):1445-1450.

[6]KAI V,JANNE K,TUOMAS R.Modeling air combat by a moving horizon influence diagram game [J].Journal of Guidance,Control,andDynamics,2006,29(5):1080-1091.

[7]万伟,姜长生,吴庆宪.单步预测影响图法在空战机动决策中的应用[J].电光与控制,2009,16(7):13-17.

[8]顾佼佼,赵建军,刘卫华.基于博弈论及Memetic算法求解的空战机动决策框架 [J]. 电光与控制,2015,22(1):20-23.

[9]COULOM R.Effcient selectivity and backup operators in Monte-Carlo tree search[C]//In 5th International Conference on Computers and Games.Turin,Italy:Springer Berlin Heidelberg,2006:72-83.

[10]TESAURO G,GALPERING G.On-line policy improvement using Monte-Carlo search[C]//Denver,CO,USA:In Advances in Neural Information Processing(NIPS),1996:1068-1074.

[11]周思宇,吴文海,李翔,等.空战机动决策集模型分析[J].飞机设计,2012,32(3):42-45.

[12]VIRTANENK,EHTAMOH,RAIVIOT,et al.Visual interavtive aircraft trajectory optimization[J].IEEE transactions on systems,Man,and cybernetics-part C:Applications And Reviews,1999,29(3):2280-2285.

[13]陶九阳,吴琳,胡晓峰.AlphaGo技术原理分析及人工智能军事应用展望 [J]. 指挥与控制学报,2016,2(2):114-120.

[14]冯超,景小宁,李秋妮,等.基于网络对抗火力分配的改进量子免疫克隆算法[J].空军工程大学学报,2016,17(4):29-34.

猜你喜欢
蒙特卡洛空战机动
1937年笕桥空战战果之谜
最强空战王
面向纳米尺度金属互连线的蒙特卡洛模拟方法研究
空战兄弟档
基于机动数据的摩托化机动演训组织效果评估
12万亩机动地不再“流浪”
机动三轮车的昨天、今天和明天
基于蒙特卡洛法的车用蓄电池20h率实际容量测量不确定度评定
马尔科夫链蒙特卡洛方法及应用