陈 建,王 涛,曹继平,苏延召
(火箭军工程大学 作战保障学院, 西安 710025)
作战效能主要作用是支撑体系论证、优化作战方案和衡量作战效果等,是衡量装备体系作战能力的重要指标[1]。目前常用的防空作战效能评估的方法主要有基于排队论的建模方法[2-4]、ADC方法[5-7]、综合评价方法[9-11]、基于仿真平台等4种[12-14]。其中前3类大多基于专家提供的各系统权重或先验概率,使得评价结果受到主观因素的影响较大,第四类方法建模精细程度高,抽象和假设条件少,更贴合实际,但存在仿真计算量大且耗时的问题。
部分学者受自然科学领域常用的正交试验方法启发,在数学解析方法的基础上探究了正交试验在军事领域的应用[15-17],然而其前置方法依然以解析方法居多。
本文综合了仿真平台方法和正交试验方法的优势,以典型的弹炮结合防空系统为例,在基于Agent的建模与仿真(agent-based modeling and simulation,ABMS)理论的Anylogic软件环境中构建了各分系统及敌方目标的有限状态机模型,可通过仿真推演得到不同条件下最终稳定状态的系统拦截率和敌机突防距离指标。为提高评估效率,拓展模型的应用范围,有必要将模型仿真推演数据通过神经网络拟合。对于多输入多输出的非线性系统,若要得到拟合精度高的神经网络需要大量的试验,而试验次数会随着决策变量的范围和决策向量维度增加呈爆炸性增长,导致难以实现。为此,本文运用自然科学领域常用的正交试验方法以较少的试验次数得到BPNN的训练数据,再通过方差分析和相关性分析得到模型中的显著影响因素从而得到模型近似最优解。
为验证正交试验最优解的正确性,将训练的BPNN作为效能评估函数及智能优化算法的目标函数,再由NSGAⅡ算法得到其最优解,结果表明采用正交试验不仅可以得到系统的最优输入,同时也可以极大减少训练神经网络所需的运行次数,所训练出的神经网络可以满足评估要求。
ABMS方法起源于20世纪60~90年代Holland提出的生物学思想。Axtell和Esptein在文献[18]中认为基于Agent的模型中,个体在微观层面的行为规则是系统演化过程的内因,微观规则到宏观现象的映射可以是一对多的,而宏观现象的真实性能够证明微观规则的真实性,这意味着ABMS理论是一种通过自顶向下分析、自低向上综合从而在整体上对系统进行研究的手段,被称为是归纳和演绎之外的第三种科学方法[19]。Boero和Henrickson等[20-21]深入研究了ABMS方法的可用性,阐明了该方法在研究复杂系统问题中的合理性和优越性。
ABMS一般可以从物理层、信息层和认知层3个层次对Agent进行建模。其中物理层包括侦察、通信、干扰、火力打击等物理行为,信息层包括信息的产生、传输、存储、分发等过程,认知层包括信息理解和决策生成等过程[22]。
在Agent的定义上各国研究人员都有不同的看法,但有一点是相同的:在解决问题的过程中,Agent与任务空间中进行局部的物理或计算上的交互。在对从其任务空间接受到的不同局部约束做出反应时,Agent可以选择并展示不同的行为模式。一般认为,Agent是能够通过其传感器感知周围环境(包括其他Agent)并通过其执行器对环境施加影响的软硬件实体,甚至可以是人或以人为单位的团体[23]。
Anylogic是一款基于离散事件建模、ABMS建模和系统动力学建模的复杂系统仿真软件,在交通运输、物流、生产线、公共管理等领域[24-25]得到了广泛应用,近年来在军事领域[26-27]的应用也发展迅速。该软件不仅具备复杂系统建模能力,还能够对感兴趣的数据进行采集和统计分析。
典型弹炮结合防空系统作战的基本流程如图1所示。当敌机被车载搜索雷达探测到后,搜索雷达将目标信息处理分析后进行威胁判断,给予跟踪雷达目标截获指令,同时向火控系统发送火力分配指令。火控系统接收指令后对防空导弹进行参数和诸元装订。跟踪雷达对目标进行持续的跟踪并向防空导弹发送制导命令。防空导弹遂行完作战任务后指控单元进行拦截效果评估,若拦截失败且目标仍在拦截范围内则进行二次拦截[13]。当敌目标距离较近满足高炮射击条件时,火控系统将计算火炮射击诸元引导高炮实施防御。
图1 弹炮结合防空系统作战流程图Fig.1 Operational flow chart of missile gun combined air defense system
Anylogic软件中的Agent基于有限状态机(FSM)理论并通过状态图进行建模,因此对Agent状态图的定义是建模的核心。本文重点对弹炮结合防空系统Agent、防空导弹Agent、高炮炮弹Agent和敌机Agent进行介绍。
1.3.1弹炮结合防空系统Agent建模
根据图1所示的弹炮结合防空系统作战流程,结合雷达和高炮的工作原理,建立了有限状态机模型。如图2所示,其中包含四个并行工作的子状态,分别是雷达系统(左)、指控系统(中)、高炮系统(右)和防空导弹系统(单独在1.3.2节说明)。具体的业务逻辑代码写在各状态和变迁之中,此处略过,后续Agent同。
图2 防空系统Agent状态机模型Fig.2 FSM model of air defense system
1.3.2防空导弹Agent建模
从建模的难易程度考虑,由于防空导弹需要在末端防御车和敌机2种Agent之间进行交互,因此在具体实现上将其独立为一个Agent更利于建模。防空导弹Agent状态图如图3所示,主要有垂直飞行、初始测速和飞行状态3种(分别对于图3中VirticalFlying、initial、和Flying状态),飞行状态Flying到最终状态的变迁有4种:抵达敌机附近(AtTarget状态)、飞出有效区域(OutOfRange状态)、发动机工作超时(TimeOut状态)和导弹过载(LoadOver状态)。update变迁用于刷新导弹状态,更新导弹的坐标。当防空导弹满足前述4个变迁条件中任意一个时,系统将抹除该防空导弹Agent并进行相关数据统计。防空导弹的飞行轨迹仿真采用纯比例导引法,具体方法见文献[28]。
图3 防空导弹Agent状态机模型Fig.3 FSM model of air defense missile
1.3.3高炮炮弹Agent建模
高炮炮弹Agent状态机模型如图4所示,其飞行状态速度恒定,弹道为直线弹道。当指控系统决策需要使用高炮时系统产生一个高炮炮弹Agent并按照一定的提前量飞行。系统实时判断弹目距离,当小于设定的毁伤范围时,高炮炮弹Agent将向敌机Agent发出一个毁伤信息,给敌机造成“毁伤”效果,之后系统执行抹除该高炮炮弹Agent指令。若目标已经被摧毁,则高炮炮弹Agent将在飞行至预设拦截点后被系统抹除。
图4 高炮炮弹Agent状态机模型Fig.4 FSM model of Antiaircraft artillery shell
1.3.4敌机Agent建模
敌机Agent状态机模型如图5所示,主要有飞行状态(ToTarget)和末端机动状态(HGB_maneuver),当敌机受到防空导弹威胁时将转入末端机动状态。其最终状态有抵达边界(arriveDestination)和被击落(shootdown)2种。Adjust1和Adjust2用于在仿真的基频下对Agent的坐标和剩余生命值等参数进行更新。当敌机Agent抵达边界或生命值降低到0以下,系统将抹除该敌机Agent。
图5 敌机Agent状态机模型Fig.5 FSM model of target
正交试验是一种处理多因素多水平优化问题的数理统计方法。它根据正交性从全面试验中挑选出部分有代表性的点进行试验,这些有代表性的点具备“均匀分散,齐整可比”的特点[29],它可以用最少的试验次数优选出各因素较优参数或条件的组合[30],是一种高效而经济的试验设计方法。正交试验通过正交表进行试验安排。目前已有各种标准正交表,可依据研究实际视情选取。
通过ABMS方法建立末端防御武器系统的Agent模型,通过多次仿真和“涌现”效应得到武器系统在近似作战条件下的效能。其具体仿真流程可如图6所示。
图6 仿真流程Fig.6 Simulation flow chart
仿真系统以任务需求为导向,将装备参数、装备编成等信息作为输入进行建模与仿真,确定评估指标并进行计算和分析,其框架如图7所示[14]。
图7 评估框架Fig.7 Evaluation framework
仿真系统采用拦截率和敌机突防距离两项指标来对防空系统进行评价。
其中拦截率属于效益型指标,统计方法为:系统实时统计当时“被击毁”敌机数量Ni和敌机总数N,则防空系统该时刻的拦截率r可表示为:
(1)
经实验,该系统为稳定系统,若初始参数固定,当仿真时间到达一定程度后拦截率趋于稳定。因此可通过增加仿真时间并采集最终时间点拦截率作为系统在某初始参数下的拦截率。
敌机突防距离定义可见图8所示,属于成本型指标。其中C点为防空系统保卫目标,其正南方向的E为防空系统阵位,两者距离r。B为敌机初始产生点,起始点位于以C为圆心,半径为40 km的圆周上。A为敌机被防空系统击毁点。AB距离为敌机突防距离并在每架敌机被击毁后由系统统计。θ为敌机航迹与正南方向夹角,由正南方向逆时针旋转为正值。d为航迹偏距,CD右侧为正值,左侧为负值。
图8 突防距离示意图Fig.8 Schematic diagram of penetration distance
ABMS方法结合正交试验进行评估和优化的步骤如图9所示,具体如下:
图9 评估和优化步骤示意图Fig.9 Schematic diagram of assessment and optimization
步骤1:根据研究方向和标准正交表类型综合权衡选取其中感兴趣的参数并形成正交试验表,依照正交表安排仿真试验。未被选取的参数按照实际情况固定取值。对试验结果进行方差分析。
尽量降低室内相对湿度至50%以下,经常清洗、烘干床上用品,勤更换地毯和窗帘。在潮湿地区居住的家庭应停止使用地毯或窗帘,更换百叶窗帘等。
步骤2:根据步骤1方差分析结果,剔除所选参数中对结果影响不大的参数并固定参数取值。调整过的参数重新进行正交试验。
步骤3:根据步骤2方差分析结果,确定最优和最劣的两组参数取值并进行仿真试验。这一步原因是实验发现标准正交表为了达到均匀分散的目的往往没有边界取值,会影响BPNN的拟合精度。
步骤4:将步骤2和步骤3的仿真试验结果合并作为训练数据训练集。
步骤5:根据步骤4的数据集训练出一个效能评估BPNN,该网络可用于快速评估效能。
步骤6:将BPNN作为智能优化算法的目标函数,选取合适的优化算法得到最优决策向量。
步骤7:将步骤6得到的最优决策向量与步骤2的正交试验得到的最优解进行比对,验证正确性。
仿真想定为固定阵位的弹炮结合武器系统防空作战,一套弹炮结合防空系统位于正南方向距离受保护目标为r的阵位上,敌机出动方向及航向角和航迹偏距可见图8。敌机出动频率按照泊松分布规律(软件自带poisson函数)。防空导弹按照一拦一模式发射。每轮仿真运行时间为750 h(虚拟时间,仿真时可加速运行)。系统仿真界面可见图10所示。
图10 仿真界面Fig.10 Simulation interface
表1 ABMS模型参数设置Table 1 ABMS model parameter setting
表2 9因素取值方案Table 2 9-factor value scheme
使用Anylogic软件的对比实验功能搭建数据采集面板,其运行界面如图11所示,可从正交表(Excel文件)中读取初始参数,运行完毕后再将稳态拦截率和突防距离写回正交表的结果栏。9因素9水平试验次数为81的标准正交表及仿真试验结果表3所示(篇幅所限仅列出部分)。
表3 L81(99)标准正交表及试验结果Table 3 L81(99) standard orthogonal table and test results
图11 正交试验界面Fig.11 Orthogonal test interface
对表3进行方差分析 (见图12)后可知:在本试验条件下,敌机高度(bomberHeight)、航向角(θ)、航迹偏距(d)和防空系统到保卫目标距离(r)4个因素取值对系统的拦截率和敌机突防距离影响不大,且没有明显的相关关系。经多次试验发现,结果的波动性是由模型中的随机参数引起的。
图12 L81(99)标准正交表主效应图Fig.12 L81(99)main effect diagram of standard orthogonal table
为进一步验证正交试验结论,对结果进行Person和Spearman相关性分析(见图13、图14),结果均表明敌机飞行高度(bomerHeight)、敌机航向角(θ)、航向偏距(d)和防空系统到保卫目标距离(r)4个因素对拦截率和突防距离没有相关性,因此在前述参数取值范围内可无需考虑其影响。在第二轮正交试验时剔除这4项并按其中间值固定取值。第二轮正交试验采用5因素9水平试验次数为81的标准正交表L81(95),取值方案见表2,试验结果见表4所示。
表4 5因素正交表及试验结果Table 4 5-factor orthogonal table and test results
图13 9因素正交试验Person相关可视化图Fig.13 Person correlation visualization of 9-factor orthogonal test
图14 9因素正交试验Spearman相关可视化图Fig.14 Spearman correlation visualization of 9-factor orthogonal test
对表4进行方差分析(见图15)后可见,当5个因素取值分别为[298,10,5,100,3]和[122,90,45,900,27]时,系统可取得最优解和最劣解。但标准正交表L81(95)中并无这两组取值,实验发现用81组数据的标准正交表训练出的BPNN在输入这2组取值时误差较大,且会出现拦截率大于1的错误结果,因此为提高BPNN的拟合能力,在标准正交表基础上增加这两组数据作为最终的训练数据集。
图15 L81(95)标准正交表主效应图Fig.15 L81(95) main effect diagram of orthogonal table
将表4的83组数据作为训练数据在Matlab 2021b中训练BPNN。采用三层神经网络,根据经验公式,隐层节点数为[31]:
(2)
式中:N为神经网络隐含层节点个数;m为神经网络输入层节点个数;n为神经网络输出层节点个数;a为调节系数,取值介于0~10。本文中输入层节点数m为5,输出层节点数为2,隐层节点取值介于3~13。经比较,隐层节点个数取8时综合性能最佳。训练方法为贝叶斯正则化方法,最终的BPNN结构为5×8×2,如图16所示。Matlab的神经网络工具箱在2012以后版本训练时自动进行数据归一化,因此可直接应用正交表数据进行训练。
图16 BPNN结构Fig.16 Structure of BPNN
PlatEMO是一款基于Matlab开发的多目标智能优化算法平台,收录了大量主流算法,在诸多领域得到了广泛应用[32]。NSGAⅡ算法是多目标目标优化问题中常用方法,尤其是处理双目标优化问题效果良好,针对本文情况,选取其作为优化算法。
算法设置内容见表5,其中2个目标函数由3.2节得到的BPNN的2个输出值(即拦截率和突防距离)实现。由于PlatEMO默认求解最小值,因此需将效益型指标拦截率修改为“1-拦截率”,这样实际拦截率最大时目标函数2即可达到最小。界面设置如图17所示。
表5 NSGAⅡ算法设置Table 5 NSGA II algorithm setting
图17 PlatEMO参数设置Fig.17 Parameter setting of PlatEMO
图18为算法得到的100组帕累托解,可见拦截率的变化不大(0.93~1)而突防距离变化明显(180~340),故应选择突防距离较小的解,即图18中靠近左侧的解更符合要求。选择最满意的一组解并和正交试验结果比对,具体见表6所示。可见在一定误差范围内,可认为NSGAⅡ算法的帕累托解集中包含了正交试验的得到的最优解,本例中,最大误差为拦截率误差6.22%,说明采用正交试验方法得到的最优解具备一定的可信度。
表6 NSGAⅡ与正交试验结果对比Table 6 Comparison of NSGAⅡand orthogonal test results
图18 最优解帕累托前沿Fig.18 Pareto front of optimal solution
1) 使用基于ABMS方法的Anylogic软件建立的防空作战仿真模型具有较强的通用性和拓展性。模型可在原有状态图基础上进一步细化从而得到更为精细的模型,例如防空系统Agent中状态图中的雷达子系统。该模型具备动态评估能力和对抗条件下的仿真能力。
2) 采用正交试验方法得到的数据可以作为BPNN的训练数据,正交试验可以极大减少仿真模型的运行次数,尤其在复杂模型中优势明显。正交表应选择水平数多且试验次数较多的标准正交表,既可以保证试验点在决策空间的均匀性,也可以提高BPNN的拟合精度。在正交试验结果中增加两组数据(方差分析得到的最优解和最劣解)可进一步提高BPNN拟合精度,还可避免出现错误值。
3) 对正交试验结果进行方差分析和相关性可达到2个目的,一是得到最优解和最劣解的各因素水平值,二是得到对结果影响不大的因素,若结果的波动由模型的随机性造成则可以剔除这些因素,简化评估流程。由本文案例可知,在一定的取值范围内,敌机的飞行高度、航迹偏距、航向角和防空系统的阵位对系统的作战效能影响不大。通过本文方法得出的结论可以为防空作战提供建议。
4) 智能优化算法的求解验证了正交试验得到的最优解的正确性,在对系统效能进行评估时,智能优化算法可作为正交试验求得最优解的补充手段,增加可信度。更好的优化算法有待进一步研究。