2. 南京信息工程大学, 江苏省气象探测与信息处理重点实验室, 南京 210044
2. Jiangsu Key Laboratory of Meteorological Observation and Information Processing, Nanjing University of Information Science and Technology, Nanjing 210044, China
在计算机生成兵力研究[1]中,飞行员行为评估具有十分重要的意义。以飞行员空战格斗为例,飞行员行为评估可以增加计算机生成兵力仿真的真实性,并为空战决策提供依据。飞行员行为评估建立在一定的假设基础上,并事先设定评估指标。评估方法的构建基于飞行员的行为模式。飞行员的行为模式常见的有3种,即,Time_Owner_Actions模式、Owner_Actions模式和ActionStreams模式[2]。这3种模式分别表示“时间-飞行员-战术机动”结构模式、“飞行员-战术机动”结构模式和“空战机动数据流”结构模式。
飞行员空战格斗行为评估还涉及到空战的平均时间、占优态势和空战可信性。其中,空战的平均时间是参战双方进行一次空战的平均耗用的时间;占优态势是指处于有利于自己而威胁到对方的形势;空战可信性用来验证空战规则,是指一个空战评估系统在独立同分布原理下参战方表现出均等的占优态势。相关的研究分为3类:1) 飞行员格斗研究,例如,罗德林等人研究了基于动态更新威胁态势的飞行员格斗系统[3];孙永芹等人提出的多机协同空战近距格斗框架[4];2) 飞行员行为建模,例如,飞行员的空战行为挖掘模型[5];飞行员行为的仿真模拟法[6]。3) 行为评估研究,例如,改进的Lancheste方程评估模型[7];动态行为评估法[8];自适应的行为评估模型[9]。关于飞行员格斗研究,罗德林等人采用了“影响图分析法”定义了空战飞行员的格斗过程,建立了空战飞行员的决策模型[3]。孙永芹等人将“多级影响图”和“对策论”引入到飞行员近距格斗决策中,建立了基于“交战双方”、“动力学质点模型”和“飞行员偏好”的连续机动决策模型[4]。Mei等人研究了双方飞行员同步决策的空战格斗模型[10]。Lange等人研究了空战飞行员的仿真系统[11]。关于飞行员行为建模,Smith等人介绍了飞行员行为建模的常用方法和技术[6]。Yin等人提出了3种飞行员格斗的行为模式[5]。马等人提出了基于强化学习的航空兵认知行为模型[12]。徐等人研究了基于Agent的多机空战行为建模方法[13]。关于行为评估研究,Keane提出了一种基于偏微分方程的扩展Lancheste方程评估方法[7]。Hillard等人提出了一种动态的行为评估法,主要用于信息抽取领域[8]。Petri提出了一种基于“组策略”的自适应的行为评估方法,主要用于生物信息领域[9]。Jha和Langmead从动力学系统的角度研究了基于“马尔科夫过程”的行为评估理论模型[14]。
在此研究的基础上,提出了一种基于“空战平均时间” + “占优态势” + “空战可信性”的飞行员空战格斗行为评估方法。该方法具有简单、实用、高效等特点。
1 飞行员动态行为评估飞行员动态行为评估基于飞行员格斗的3种行为模式,通过对这3种行为模式进行基于时间、基于占优态势和基于空战可行性的统计来进行评估。
1.1 飞行员格斗的3种行为模式在格斗中,飞行员的行为模式有3种,即,Time_Owner_Actions模式、Owner_Actions模式和ActionStreams模式。其中,
Time_Owner_Actions模式表示“时间-飞行员标识-格斗行为”模式,它的含义是某个飞行员在某个时间进行了某个格斗行为。Time_Owner_Actions模式的结构如下
struct Time_Owner_Actions{
Time theTime; //时间
int OwnID; //飞行员标识
int ActID; //格斗行为
};
其中,theTime表示飞行员进行格斗行为的时间;OwnID表示飞行员的标识或代号;ActID表示飞行员进行的格斗行为的代号。
Owner_Actions模式表示“飞行员标识格斗行为”模式,它的含义是某个飞行员进行了某个格斗行为。Owner_Actions模式的结构如下
struct Owner_Actions{
int OwnID; //飞行员标识
int ActID; //格斗行为
};
ActionStreams模式表示“格斗行为”模式,它的含义是一类飞行员在一段时间内进行的格斗行为。ActionStreams模式的结构如下
typedef ActionStreams int;
其中,ActionStreams被作为整数类型来处理。
这三种模式的区别是对飞行员格斗行为的刻画粒度不同。其中Time_Owner_Actions是细粒度刻画,表达了某个飞行员在某个时间点的具体行为;Owner_Actions是中粒度刻画,表达了某个飞行员在一段时间内的行为规律;而ActionStreams是粗粒度刻画,表达了一类飞行员在较长时期的经常性行为。
1.2 评估方法飞行员动态行为的评估基于以下3个定义,它们分别是“空战平均运行时间”、“占优态势”和“空战可信性”。具体的方法步骤是:首先进行一定数量的空战;然后统计这些空战的平均运行时间和态势情况;接着计算出空战可信性,最后进行综合比较和分析。其中,空战可信性评估的计算公式如下
| $ \begin{array}{l} \;\;\;\mathit{\boldsymbol{C = }}{\mathit{w}_1} \times \left| {1 - \frac{{\left| {3x - n} \right|}}{n}} \right| + {w_2} \times \\ \left| {1 - \frac{{\left| {3y - n} \right|}}{n}} \right| + {w_3} \times \left| {1 - \frac{{\left| {3z - n} \right|}}{n}} \right|, \end{array} $ | (1) |
在式(1)中,x、y和z分别表示双方处于占优态势和均等态势的次数,即x表示红方占优、y表示蓝方占优、z表示双方均等;n是进行的空战次数;w1、w2和w3是权重系数,且满足w1+w2+w3=1。
公式(1)的构造原理:一个空战可信性评估系统由参战方所处的占优态势、进行的空战次数以及经验系数组成。因为在空战仿真研究中这些因素是组成空战仿真系统的重要条件。
公式(1)的含义:
其中,涉及到以下定义
定义1空战平均运行时间 空战平均运行时间是指格斗程序连续进行n次空战的总时间与空战次数n的商,即
| $ \bar T = \frac{1}{n}\sum\limits_{i = 1}^n {{t_i}}, $ | (2) |
其中:ti是第i次空战的运行时间。显然,进行空战的次数n越大,空战的平均运行时间就越准确,但是花费的实验时间就越多。
定义2占优态势 占优态势是指参战方处于有利于自己而威胁到对方的形势。因为在高速的空战格斗训练中,击落对方的机会需要多次处于有利于射击的位置才可以实现。因此,提出了占优态势的概念,这种概念在训练飞行员中很有用。例如,一方总是位于另一方的后面。通常“占优态势”用“进入角”和“态势角”来定量刻画[15]。
“进入角”和“态势角”的定义如图 1所示。
|
图 1 “进入角”和“态势角”的定义 |
在图 1中,2架飞机的速度方向之间的夹角就构成了进入角α进入角;2架飞机空间位置之间的夹角就构成了态势角α态势角。其中,进入角的物理含义是“2架飞机速度矢量之间的夹角”;态势角的物理含义是“我机位于敌机的什么方位”。换句话说,进入角与速度有关,态势角与位置有关。
定义3空战可信性 指参战的双方,在满足下列条件时表现出均等的占优态势
1) 空战初始态势随机产生且符合高斯分布;
2) 每个飞行员由一个独立的线程来处理;
3) 空战过程中使用基于规则的决策;
4) 进行一定量的空战。
空战可信性评估公式如式(1)所示。
在仿真中,往往采用仿真空战可信性C’来代替空战可信性,它的计算方法是
| $ {C' = k} \times {C, } $ | (3) |
其中,k是经验系数,一般取1.2 ~ 2.5。
同理,C′越大空战效果就越好。
使用公式(3)的原因在于:1) 仿真模拟的空战和真实空战总是存在或多或少的差异;2) 不同的空战类型其空战可信性也存在差异。因此,在公式3) 中引入了经验系数k。
1.3 评估步骤1) 首先,利用独立同分布原理,将参与格斗的飞行员用不同的线程来模拟。每个线程独立地进行格斗预测、格斗决策、格斗计算和状态更新。
2) 定义一个派生自Idispatch接口[16]的类Irulebase。
3) 在Irulebase中添加一个成员方法assoQuery,其原型声明如下
HRESULT assoQuery([in] LONG anteRule1, LONG anteRule2, [out, retval] LONG* conseRule)
其中,HRESULT是各类方法使用的统一返回值类型。assoQuery方法的第一个参数anteRule1是长整型(LONG),是入口参数;assoQuery方法的第二个参数anteRule2也是长整型(LONG),是入口参数也可以作为出口参数;assoQuery方法的第三个参数conseRule是长整型指针(LONG *),是出口参数并且作为返回值。anteRule1、anteRule2和conseRule的物理含义依次为:“规则前件的第一项”、“规则前件的第二项”和“规则的后件”。
4) 将通过数据挖掘方法[2]获得的规则作为assoQuery的实例。
5) 启动空战格斗程序,使得各个线程自主运行。
6) 在空战过程中,进行规则的匹配,即,根据anteRule1和anteRule2的取值来匹配出符合条件的后件conseRule。
7) 在每一次空战过程中统计红蓝双方处于占优态势的次数。研究采用了多线程技术,并且使用了“友元函数法”[5]来获取红蓝双方处于占优态势的次数。
8) 记录空战的运行时间。
9) 重复以上步骤,进行多次空战实验并记录每一次空战的运行时间和红蓝双方处于占优态势的情况。
10) 根据公式(2),计算空战平均运行时间。
11) 根据定义2统计所有空战的总占优态势情况。
12) 根据公式(1)和(3)计算空战可信性。
13) 进行评估。
讨论:评估飞行员的行为实质上是评估空战规则。首先用2个线程来模拟2个飞行员,然后根据规则的分布式、可共享特点,采用了基于COM组件的规则库。接着启动空战仿真程序,并统计在每一次空战中红蓝双方处于占优态势的次数。记录空战的运行时间。最后根据公式(1)和(3)计算空战可信性。采用的方法接近空战的实际情况并且可以运行于分布式环境中。
2 实验实验平台—“飞行员格斗行为评估”是一个基于六自由度全量运动学/动力学模型的解算系统。该系统包括飞机的质量、惯量和重心计算模型、发动机模型、大气环境和风模型、多普勒雷达模型、空空导弹模型、飞行控制律模型等。参与格斗的飞行员用独立的线程来模拟,飞行员独立进行决策、解算和进行战术机动。格斗过程中使用的推理系统是基于“机动”到“机动”的规则,即,根据对方当前或最近一段时间内的一系列机动推导出对方下一步的机动。例如“半斤斗翻转→拉起”、“低速遥遥→高速遥遥且急盘旋”。
对于空战格斗行为模型的性能评估,采用了Microsoft Corporation提供的Pdh函数族。Pdh函数族是一个访问系统性能的函数集,它可以获得操作系统的诸多性能参数,例如,CPU使用率、可用内存、TCP连接数目等。除此之外,它还可以获取某个进程的CPU使用率和所占用内存。Pdh函数族包括PdhOpenQuery、PdhAddCounter、PdhGetCounterInfo、PdhCollectQueryData、PdhEnumObjects、PdhGetFormattedCounterValue等函数
实验步骤:
第一步:配置实验环境。设置飞行员空战格斗系统的空战格斗次数为60。
第二步:启动飞行员格斗系统,进行10组实验。
第三步:收集每组实验中的“总运行时间”、“红蓝双方处于占优态势的次数”。
第四步:根据公式(1)、(2)和(3)计算每组实验的平均运行时间和仿真空战可信性。
第五步:分析飞行员的空战行为。
表 1统计了在10组试验中飞行员空战格斗的运行时间和平均运行时间。
| 表 1 飞行员空战格斗的运行时间 |
在表 1中,一共进行了10组实验。在每组实验中进行了60次空战格斗,每一次空战格斗都有一个明显的格斗结果,即,要么红方处于占优态势、要么蓝方处于占优态势、要么双方处于均等态势。“总运行时间”是指60次空战的运行时间,“总运行时间”除以“空战次数”便可以得到每一次空战的“平均运行时间”。表 2显示了飞行员空战格斗的空战可信性计算结果。
| 表 2 飞行员空战格斗的空战可信性 |
在表 2中,显示10组空战结果的占优态势情况。其中,“红方处于占优态势的次数”、“蓝方处于占优态势的次数”和“双方处于均等态势的次数”分别是指“红方”、“蓝方”和双方处于占优态势的次数(定义2)。“仿真空战可信性”根据公式(1)和(3)来计算
图 2显示了飞行员空战格斗行为评估的“占优态势”趋势图。
|
图 2 飞行员空战格斗“占优态势”发展趋势图 |
在图 2中,显示了“红方占优”、“蓝方占优”和“双方均等”的趋势。其中,在每一组实验中“红方占优态势次数”+“蓝方占优态势次数”+“双方均等态势次数”=60。从图中可以看出,3条曲线逐渐趋于平稳,表现出了“平衡”的趋势。
图 3显示了飞行员空战格斗行为方法的算法性能。
|
图 3 飞行员空战格斗行为算法性能 |
从图 3中可以看出,在每组(60次空战)实验中,当启动飞行员空战格斗程序时,CPU的占用率都几乎达到了100%。这表明采用了多线程机制的空战格斗程序充分利用了CPU的功能。而在各组实验之间CPU的利用率又骤降至0%。
图 4显示了在实验中飞行员空战格斗的态势图。
|
图 4 飞行员空战格斗态势图 |
在图 4中,红蓝2个飞行员相互缠斗出现了典型的“剪刀型”战斗态势。这种情形是评估符合真实空战的依据。
分析:通过对飞行员空战格斗行为的评估,得出以下几点认识:
1) 基于“空战平均时间”、“占优态势”和“空战可信性”的飞行员空战格斗行为评估符合了空战的真实情况。
2) 一个线程模拟一个飞行员,使得每个飞行员可以独立地进行决策、解算和战术机动,使得各个飞行员相互独立而互不影响。
3) 与单线程模拟多个飞行员的空战格斗情形相比,多线程机制模拟的飞行员空战格斗情形充分利用了计算机的CPU效率。
3 结论以飞行员空战格斗为例,介绍了一种基于“空战平均时间”+“占优态势”+“空战可信性”的飞行员动态行为评估方法。该方法从飞行员空战格斗的时间、飞行员标识和进行的格斗行为出发,统计了每次空战的“空战平均时间”、“占优态势”和“空战可信性”。通过实验研究了这种评估方法的可行性和算法性能。实验结果表明这种方法是有效的。
| [1] | Yin Y, Gong G, Han L. Theory and techniques of data mining in CGF behavior modeling[J]. Science China Information Sciences, 2011, 54(4): 717–731. DOI:10.1007/s11432-010-4158-7 |
| [2] | Yin Y, Gong G, Han L. Experimental study on fighters behaviors mining[J]. Expert Systems With Applications, 2011, 38(5): 5737–5747. DOI:10.1016/j.eswa.2010.10.059 |
| [3] |
罗德林, 沈春林, 吴文海, 等.
空战格斗决策研究[J]. 应用科学学报, 2006, 24(1): 89–93.
LUO Delin, SHEN Chunlin, WU Wenhai, et al. Decision-making for air combat dogfight[J]. Journal of Applied Sciences, 2006, 24(1): 89–93. (in Chinese) |
| [4] |
孙永芹, 孟上, 代进进, 等.
多机协同空战近距格斗决策[J]. 火力与指挥控制, 2010, 35(11): 98–101.
SUN Yongqin, MENG Shang, DAI Jinjin, et al. Research on decision for close dogfight in Multi-fighter cooperative air combat[J]. Fire Control & Command Control, 2010, 35(11): 98–101. DOI:10.3969/j.issn.1002-0640.2010.11.028 (in Chinese) |
| [5] | Yin Y, Gong G, Han L. Air-combat behavior data mining based on truncation method[J]. Journal of Systems Engineering and Electronics, 2010, 21(5): 827–834. DOI:10.3969/j.issn.1004-4132.2010.05.017 |
| [6] | Smith R E, Dike B A, Ravichandran B, et al. Discovering novel fighter combat maneuvers:simulating test pilot creativity[J]. Creative Evolutionary Systems, 2002, 467. |
| [7] | Keane T. Combat modelling with partial differential equations[J]. Applied Mathematical Modelling, 2011, 35(6): 2723–2735. DOI:10.1016/j.apm.2010.11.057 |
| [8] | Hillard D, Manavoglu E, Raghavan H, et al. The sum of its parts:reducing sparsity in click estimation with query segments[J]. Information Retrieval, 2011, 14(3): 315–336. DOI:10.1007/s10791-010-9152-6 |
| [9] | Petri T, Kuffner R, Zimmer R, et al. Experiment specific expression patterns[C]//15th Annual International Conference on Research in Computational Molecular Biology, IEEE, 2011, 6577:339-354. |
| [10] | Mei D, Wu W, Xu J, et al. Decision influence diagram method and its application in 3D Air Combat Decision-making[J]. Electronics Optics & Control, 2008, 15(2): 66–69, 77. |
| [11] | Lange B, Toft P. Neck pain among fighter pilots after the introduction of the JHMCS Helmet and NVG in their environment[J]. Aviation Space and Environmental Medicine, 2011, 82(5): 559–563. DOI:10.3357/ASEM.2935.2011 |
| [12] |
马耀飞, 龚光红, 彭晓源.
基于强化学习的航空兵认知行为模型[J]. 北京航空航天大学学报, 2010, 36(4): 379–383.
MA Yaofei, GONG Guanghong, PENG Xiaoyuan. Cognition behavior model for air combat based on reinforcement learning[J]. Journal of Beijing University of Aeronautics and Astronautics, 2010, 36(4): 379–383. (in Chinese) |
| [13] |
徐安, 赵思宏, 寇英信, 等.
协同空战中基于任务分解的任务协调机制研究[J]. 电光与控制, 2010, 17(2): 21–15, 34.
XU An, ZHAO Sihong, KOU Yingxin, et al. Task coordination in cooperative air combat based on hierarchical task decomposition[J]. Electronics Optics & Control, 2010, 17(2): 21–15, 34. (in Chinese) |
| [14] | Jha S K, Langmead C J. Synthesis and infeasibility analysis for stochastic models of biochemical systems using statistical model checking and abstraction Refinement[J]. Theoretical Computer Science, 2011, 412(21): 2162–2187. DOI:10.1016/j.tcs.2011.01.012 |
| [15] | 尹云飞. 基于数据挖掘的CGF行为建模技术研究[D]. 北京: 北京航空航天大学, 2010. |
| [16] | Microsoft. COM:Component Object Technologies[EB/OL]. http://www.microsoft.com/com/default.mspx, 2011. |
2013, Vol. 36

