基于遗传神经网络的联合作战方案评估*
2019-06-13孔衍,刘学,杨建
孔 衍,刘 学,杨 建
(1.国防大学研究生院,北京 100091;2.海军蚌埠士官学校,安徽 蚌埠 233012)
0 引言
联合作战方案是联合作战指挥员定下决心的依据,是提高联合作战指挥效能的基础。针对联合作战方案多因素、非线性、非结构化和高度复杂性等特征,仅仅依靠专家评估必然带来主观性和不确定性。神经网络法在处理不确定问题时有着独特优势,常用于作战方案评估问题研究。如,基于BP神经网络的对导弹作战方案评估[1];基于RPROP和基于神经网络集成对作战方案评估[2];基于径向基神经网络对联合作战方案仿真评估[3],这些研究都从基于神经网络的角度对方案评估,取得了良好效果。考虑到BP神经网络具有较好的泛化能力、非线性映射能力,并对遗传算法具有较好的自适应性和并行处理能力,本文提出了一种基于遗传BP神经网络的方案评估法,作为其他方法的补充和综合,并对相关计算结果比较分析。
1 基于遗传BP神经网络方案评估
1.1 基于遗传神经网络方案评估原理
基于遗传神经网络方案评估原理,是建立在系统具有模块间耦合度小、计算速度快、精确度高等特点的基础上。将“方案评估”问题抽象为3个模块(如图1),即数据采集模块、方案评估模块、评估等级识别模块,按照相关方法进行数据处理。
数据采集模块:获取拟评估方案特征指标数据,并通过串口通信方式进行数据传递。对定性指标按照一定规则量化处理;为了减小不同参数数量级对诊断结果的影响,对数据归一化处理。归一化处理采用公式:
图1 基于遗传神经网络方案评估原理图
方案评估模块:采用基于遗传BP神经网络模型。
评估等级识别模块:将网络输出的结果,通过阈值判定函数进行等级类型判别。其阈值函数定义如下:
其中,y为网络实际输出,θ为等级判断阈值(如,可以取 θ=0.5)。
1.2 基于遗传BP神经网络模型
基于遗传BP神经网络模型构建思路:利用遗传算法进行BP网络设计,确定网络初始的权值和阈值;利用已有样本数据对优化后的网络进行训练;利用训练完成后的网络对新样本模式识别。
1.2.1 BP网络设计
1)确定节点数、隐含层节点数。确定节点数确定:网络的输入与输出节点数由具体问题确定,输入节点数一般为训练样本矢量维数,输出节点数一般为需解决问题结果的维数。隐含层节点确定:需要考虑网络的性能和计算开销,隐含层节点确定并没有统一的方法。一般来说网络隐含层节点数太少,网络将不能建立复杂的映射关系,导致网络训练不成功,或者不能识别以前没有的样本,容错性差;隐含层节点数过多,不仅增加训练时间,还使网络学习时间过长,误差也不一定最小[4-6]。一般采用如下经验公式,其中 l为隐含层节点数,m为输入节点数,n为输出节点数,a为1~10之间的常数。
2)确定传递函数。传递函数确定:传递函数是BP神经网络的重要组成部分,必须是连续可微的。在Matlab工具箱里有一些可供选择的函数,如S型对数函数logsig,双曲正切S型函数tansig,线性函数purelin。
1.2.2 BP网络训练
建立网络以后就要对其进行训练。为加快网络的收敛速度并保持较高的精度,需要设置合适的网络相关参数。如学习速率、训练目标值、训练次数值等。其中学习速率的大小需要重点考虑,该值如果设置太大,会出现算法不收敛的现象;如果设置太小,会导致训练时间过长。训练目标值是确定神经网络的计算精度,当误差达到此值后,网络停止训练。
遗传算法策略:遗传算法由编解码、个体适应度评估和遗传运算三大模块组成。其中编码一般采用二进制编码,解码是将二进制数据还原为十进制;个体适应度评估用来确定每条染色体遗传到下一代的概率,适应度大的个体遗传到下一代的概率更大;遗传运算包括选择算子、交叉算子、变异算子。
1.2.3 新样本模式识别
将处理过的待评估作战方案样本输入到训练完成后的BP神经网络中,即可获得该状态下的网络输出模式,完成新样本的模式识别。
2 基于遗传BP神经网络的联合作战方案评估
2.1 联合作战方案特征指标与综合评估指标的选取
根据某联合作战方案的特点,不妨选取10个特征指标:飞机机型、飞机数量、携弹威力、命中精度、突防高度、突击速度、突防概率、目标性质、目标长度、目标宽度。其变量代号为T1~T10。综合评估毁伤效果设为4个等级:袭扰、压制、瘫痪、摧毁(见表1)。
表1 评估指标等级
2.2 BP网络的设计和训练
某联合作战方案参战飞机为6类“不同机型”,不妨用自然数1—6表示,即1—苏30、2—苏27、3—歼 8E、4—歼 10、5—轰 5、6—无人攻击机。“目标性质”按照同样方法处理,1—机场,2—指挥所等。
由于三层BP网络可以逼近任意一个连续函数,本文采用三层BP神经网络方案评估方法。
BP网络设计:
1)确定节点数确定。“输入”为作战方案的特征指标,“输出”为作战方案的评估等级。输入向量为10维,输出向量为2维,确定输入层节点为10,输出层节点为2。
3)传递函数的确定。考虑到网络的输出为0-1模式,隐含层神经元的传递函数采用S型正切函数tansig(),输出层神经元的传递函数采用S型的对数函数 logsig()。
BP网络训练:该作战方案评估问题相关参数设置:学习速率0.01,训练目标值0.001,训练次数值1 000。
2.3 BP网络优化
2.3.1 染色体编码
采用二进制编码(10位),由输入层与隐含层连接权值、隐含层阈值、隐含层与输出层权值、输出层阈值4部分组成。将所有二进制串连接起来就成为一个个体的编码。由于网络结构为10-21-2,对应输入层与隐含层连接权值数为210,隐含层阈值数为21,隐含层与输出层连接权值数为42,输出层阈值数为2,需优化参数个数为275,二进制编码总长度为2 750。由图2可以看出,染色体中1~2 100位对应输入层与隐含层连接权值,2 101~2 310位对应隐含层阈值,2 311~2 730位对应隐含层与输出层连接权值,2 731~2 750位对应输出层阈值。
图2 染色体串编码方式
2.3.2 确定适应度函数
适应度函数按式(3)确定:
其中,f为适应度函数,f(x)为待评估样本的预测值与期望值的误差矩阵的范数。
2.3.3 遗传运算
选择算子采用随机遍历抽样;交叉算子采用单点交叉算子;变异算子采用0-1随机变异。
2.3.4 终止条件
约定后两代平均适应度变化率小于阈值或迭代次数达到最大遗传代数时运算终止。满足终止条件时,选择适应度最大的染色体,再进行解码操作,以获得最佳权值和阈值。
3 实例分析
3.1 BP网络的优化
为了验证优化后BP网络的先进性,利用Matlab软件对两个网络在相同结构和参数设置的条件下进行仿真分析(其中网络的训练样本和测试样本来自文献[3])。
遗传参数设置:种群大小为40,最大遗传代数为100,初始交叉概率为0.8,初始变异概率为0.1。
图3 误差进化曲线
图4 网络训练状态图
图3为误差进化曲线,误差随着遗传代数的增加,能不断突破局部最小值向最优解趋近。图4为优化后的BP网络训练状态图,由上到下分别为误差曲面精度、训练参数、验证样本数据。从图5和图6的对比可看成,利用优化后的权值和阈值,网络的训练速度和精度都有一定程度的提高,例如训练误差从0.009 196 9降到0.007 959 7,已低于期望误差,具有更好的逼近能力,训练代数从10降到7。
3.2 模型检验
该系统评估结果是否准确,还需要利用“新鲜”的测试数据对其检验。某型作战方案中,红方拟对蓝方4个目标进行打击,待评估样本和评估结果如表2所示。可以看出,遗传神经网络和径向基神经网络的输出结果[3]是一致的,除目标4的毁伤效果为“袭扰”外,其余目标毁伤效果皆为“压制”,但显然遗传神经网络评估精度更高。而普通BP网络由于采用随机权值和阈值,网络容易陷入全局极小点,从而影响评估的准确性。该案例中,普通BP网络输出结果皆为“压制”,对目标4的评估发生失误。
图5 优化权值和阈值训练误差曲线
图6 随机权值和阈值训练误差曲线
多次测试表明,本文采用的遗传BP神经网络相比普通BP网络,在评估精度和速度上都有所提高。
表2 待评估样本和评估结果
4 结论
本文提出了基于遗传BP神经网络的联合作战方案评估算法。此方法相比传统的主观评定法和简单的定量分析法,减小了评定的主观性和随意性,更加易于操作;相比BP神经网络,由于减小了随机权值和阈值对结果的影响,评估速度和准确性上有所提高,为联合作战指挥员对作战方案的优选评估提供了一种新思路,具有较强的参考价值。