APP下载

基于GA和ARMA模型的制导弹药技术状态预测

2019-10-09马长刚张国豪

海军航空大学学报 2019年4期
关键词:阶数适应度弹药

张 毅,马长刚,张国豪

(1.空军勤务学院,江苏徐州221000;2.93956部队,甘肃张掖734000;3.94303部队,山东潍坊261000)

技术状态是反映制导弹药质量状况的重要指标,其判断依据为制导弹药技术状态监测数据。现阶段,部队保障人员主要是通过定期检测的方式获取到弹药状态信息,根据检测数据进行阈值判断来确定制导弹药的技术状态。这种定期检测的方式势必会出现“过检”和“漏检”现象,既无法满足实时性要求,又减少弹药寿命。因此,利用历史特征量参数预测制导弹药的技术状态显得尤为重要[1-3]。

目前,关于预测模型,国内外学者已经做了大量工作,取得了一定的成果。比较常用的有:灰色预测方法[4-5]通过鉴别系统因素之间发展趋势的相异程度,将无序的数据转化为规律数据进行预测,能够预测小样本,但模型参数固定,精度较差,且只能用于预测指数型增长的数据。新陈代谢预测方法[6]在灰色预测的基础上,每次预测后对模型系数和待辨识参数进行调整,提高了模型的自适应性,但模型预测仍只适用指数型增长的数据。回归预测方法[7]根据预测对象影响因素的变化趋势预测数据状态,预测过程简单,但要求样本数据有较好的分布规律,且预测精度、可信度较低。指数平滑预测方法[8-9]以本期样本数据和预测数据为基础,引入平滑系数求得下期预测数,模型适应性强,但模型建立时间长,精度较低。

为了改进上述预测方法的不足,结合制导弹药技术状态特点,将ARMA模型预测法应用到制导弹药技术状态预测中,提出了基于遗传算法优化的ARMA模型,对模型阶数进行了优化,提高了预测精度,较好地实现了制导弹药技术状态预测,为制导弹药故障预测和寿命管理打下了基础。

1 ARMA模型

1.1 ARMA(p,q)模型描述

ARMA(p,q)模型是由Box 和Jenkins 共同创立的一种比较常用的随机时间序列模型[10],主要针对部分依赖时间t 的随机变量,尽管组成序列的单独时间序列值模糊、不确定,但是在完整时间序列上值的变化趋势是有规律可循的,能够借助数学模型进行预测。

若系统参数的预测值不仅与历史检测数据有关,还与扰动项有关,则时间序列满足ARMA(p,q)模型,即[11-13]:

1.2 ARMA(p,q)模型预测步骤

1)数据预处理。数据预处理的目的是剔除趋势项与周期项,使数据平稳化。对收集到的检测数据时间序列进行平稳性检验,若该序列为非平稳序列,一般采用差分的方法使序列达到平稳。

3)参数估计。求解出ARMA(p,q)模型阶数p、q的值后,需要对式(1)中的未知参数φ1、φ2、…、φp和θ1、θ2、…、θq进行估计。模型参数估计方法较多,一般分为最小二乘估计、矩估计和极大似然估计3种。为了方便计算,笔者采用Matlab中关于时间序列分析函数armax进行参数估计。

4)模型的检验。根据模型中参数的估计值,取显著性水平α 对其进行检验,验证残差数列是否为白噪声序列[15]。本文采用LB 统计量检验法来考察模型的优劣。在得到最优的模型后,可以根据特征量参数历史检测数据,运用ARMA模型进行预测。

2 基于遗传算法的ARMA(p,q)模型阶数优化步骤

2.1 遗传算法优化方法

遗传算法(Genetic Algorithm)是一类通过模拟自然进化过程搜索最优解的方法,该方法在解决非线性、多目标等复杂系统的优化时提供了比较通用的结构。采用遗传算法对ARMA模型定阶过程进行优化,具体如下[16-17]。

1)设置初始种群数量。设置原始种群数量时,要确保原始种群数量符合问题需求。笔者在确定初始种群数量时,由计算机随机生成N 个初始的数据组,每个数据组代表一个个体,共同组成一个种群。算法就是以这个随机初始化后的种群开始迭代计算寻优。

2)选择编码方法。用遗传算法去优化ARMA(p,q)模型中自回归阶数p 和移动平均阶数q,2 个参数的取值都比较小,且都为正整数。因此,本文选择10 位二进制数进行编码,前5位表示p 的取值,后5位代表q 的取值。

3)适应度函数的确定。适应度指的是种群个体对所在环境的适应能力,也表示该个体繁衍下一代的能力。适应度函数确定如下:

式(2)、(3)中:m 为已知检测数据个数;x^(i)为i 时刻检测数据x(i)的预测值;为已知检测数据均值;V 为平均相对变动值;f(i)为适应度函数。

可以看出,适应度函数值越大,即V 越小,预测模型的预测效果则更好。

4)确定遗传选择算子。在算法中进行遗传选择的就是遗传选择算子,它负责根据每一个体的适应度值对其进行优胜劣汰的选择运算。笔者选择排序法进行遗传选择运算[18]。

假设,种群中个体数为M,由前面可知,每个个体的适应度值为f(i),则其选择概率定义为:

由式(4)求解出种群中每个个体的选择概率后,基于选择概率,分配个体被选中的概率,然后可利用轮盘赌法,产生一个随机数作为轮盘指针完成选择[19]。

5)设计交叉算子。在遗传算法中,用交叉算子来实现2 个个体之间部分染色体的相互交换,交叉算子具有较强的全局搜索能力。笔者选择的编码方式为二进制编码,所以选择单点交叉的方式实现交叉,其原理示意如下:

个体A:XXX ↑XXXXX →新个体A′:YYY ↑XXXXX;

个体B:YYY ↑YYYYY →新个体B′:XXX ↑YYYYY。其中,↑处表示设置的交叉点。

6)设计变异算子。针对二进制编码方式,选择二进制变异的方法。它的算法功能就是使个体编码序列中的部分基因值(编码数)取反。原理如下:

7)设置中止条件。当前常用的中止判定条件主要有2 个大的方向:一个方向是最优化后个体的适应度满足所要求的条件;另一个方向是迭代计算的次数T 已经达到初始条件设置时的预设值。

2.2 ARMA(p,q)模型定阶步骤

如何应用遗传算法来优化ARMA(p,q)模型中的阶数是预测的关键。基于改进遗传算法的ARMA(p,q)阶数确定方法具体步骤如下。

1)根据模型需要优化阶数p、q 的取值范围,确定变量的编码方式和编码长度;设定种群的数量N=30;中止条件为满足预先设定的迭代次数T=50。

2)根据种群数量初始值随机初始化30个个体。

3)由初始条件,对初始化后的30 个个体共30 组二进制编码进行解码,求出初始模型阶数p、q 的值。

4)根据步骤3)求出的阶数,借助已知的弹药检测数据进行ARMA(p,q)中未知参数估计,确定出完整的模型,进行预测,并分别求出适应度值。

5)根据步骤4)求解出的适应度值,借助3 大算子对初始种群加以更新获得下一代新的种群。

6)根据步骤5)得到的新种群,重新进行解码,返回步骤2)继续迭代。

7)迭代次数达到预设值50 次,确定最优阶数p、q 的值,结束迭代。

ARMA(p,q)模型阶数确定流程图如图1所示。

图1 ARMA模型阶数确定流程图Fig.1 Determining flowsheet of ARMA model order

3 实例分析

3.1 收集数据和预处理

以某型制导弹药特征量参数历史检测数据为样本进行技术状态预测。进行数据预处理,剔除干扰数据,得到特征量参数历史检测样本数据见表1。

3.2 模型预测分析

运用遗传算法确定ARMA 模型阶数。以表1 中的第1、35组为例,利用Matlab中遗传算法工具箱Gatool,设定待优化参数的二进制编码长度为10位,种群个体N=30 ,最大迭代次数T=50 。求得优化后ARMA 模型阶数为:p=3、q=3。适应度函数变化情况见图2。

表1 特征量参数历史检测样本数据Tab.1 Feature quantity parameter history detection sample data

图2 适应度函数变化曲线Fig.2 Fitness function curve

由图2 可知,适应度值越大,其优化效果更优,寻优后参数对整个模型的适应度值也伴随迭代次数的增加,趋近于最优值2.26附近,优化效果比较明显。

借助Matlab 中关于时间序列分析函数armax(data,[p,q])、predict(m,data,1)等编写Matlab 程序实现预测,根据表1中的历史检测样本,对各个参数进行预测,模型预测精度通过预测误差率来表示。在不同模型阶数情况下,计算预测误差率的最大值、最小值以及平均误差率3项指标来对比分析预测模型的预测精度和可信度。

以第3组数据为例,计算预测误差率,其结果列于表2中,预测值与历史检测值对比曲线见图3。

表2 预测误差率统计Tab.2 Prediction error rate statistics

图3 预测值与历史检测值对比曲线Fig.3 Comparison curve between predicted value and historical detection value

由表2和图3的数据显示,预测误差率很小,最大误差率仅在1%左右,证明了预测模型的精确性以及参数估计方法的有效性。

随着模型阶数的增加,平均误差率逐渐降低,当p=3、q=3 时,误差最小,历史检测值曲线与预测值曲线的吻合度最高。因此,由遗传算法优化后的ARMA 模型为ARMA(3,3)。

3.3 改进的模型预测优越性分析

为了更好地说明采用遗传算法来优化预测模型的优越性,基于相同的样本检测数据,利用预测分析软件EViews,通过相关系数法对检测参数进行预测分析[20]。2 种方法的不同之处在于模型阶数的确定,笔者采用遗传算法优化确定模型阶数,EViews软件则通过计算自相关系数和偏自相关系数来确定ARMA 模型阶数。通过在EViews中分析其AC和PAC的值,如图4所示。

图4 AC、PAC分析图Fig.4 Analysis diagram of AC and PAC

当自相关系数p=2,偏相关系数q=2 时,相关系数明显落入随机区间,因而确定出的时间序列模型为ARMA(2,2)。此时,模型参数估计如图5 所示。使用历史检测样本第3 组数据进行预测分析,预测结果如图6所示。

图5 ARMA(2,2)模型参数估计Fig.5 ARMA(2,2) model parameter estimation

图6 参数预测对比分析图Fig.6 Analysis diagram of parametric prediction comparison

遗传算法优化后确定的最优模型ARMA(3,3)与利用相关系数法确定的ARMA(2,2)模型分别对第3组检测样本进行预测,结果如表3所示。表3表明,采用遗传算法对模型进行优化,预测结果更为精确。

表3 2种方法各项指标比较Tab.3 Comparison of the indicators of the two methods

此外,将优化前的ARMA 模型分别对其余35 组历史检测样本进行预测。2种模型对同样36组数据预测平均误差如图7所示。

由图7 看出,2 种模型36 组检测数据均可实现预测效能,经遗传算法优化的ARMA模型总体预测效果(预测平均误差均值为0.180 8%)好于经典ARMA 模型(预测平均误差均值为0.402 2%)。

图7 优化前后模型36组数据预测平均误差对比Fig.7 Prediction average error compared of 36 groups of data before and after optimization

4 结束语

本文提出了基于遗传算法优化的ARMA 模型制导弹药技术状态预测方法,通过遗传算法优化了模型阶数p、q;然后,分析了制导弹药检测数据变化情况,并通过实例与经典ARMA 预测模型进行了对比。结果表明,遗传算法优化后的ARMA(3,3)模型的预测平均误差远低于经典ARMA(2,2)模型。经遗传算法优化过ARMA(p,q)模型预测误差小,效果好,还能在一定程度上为制导弹药技术状态评估、故障预测和制导弹药全寿命管理提供参考。

猜你喜欢

阶数适应度弹药
改进的自适应复制、交叉和突变遗传算法
XIO 优化阶数对宫颈癌术后静态调强放射治疗计划的影响
大口径舰炮弹药储供系统可靠性研究
美国狼弹药公司A16.5mm卡宾枪
确定有限级数解的阶数上界的一种n阶展开方法
基于目标打击任务的精确制导弹药优化分配模型*
复变函数中孤立奇点的判别
启发式搜索算法进行乐曲编辑的基本原理分析
基于人群搜索算法的上市公司的Z—Score模型财务预警研究
数据采集系统中滤波器的选择