基于遗传算法优化极限学习机的炸弹气动参数辨识

2022-10-14 03:18甘跃鹏伍友利王康健
兵器装备工程学报 2022年9期
关键词:学习机适应度气动

甘跃鹏,伍友利,王康健,陈 鞭,管 军

(1.空军工程大学 航空工程学院, 西安 710038; 2.江苏科技大学, 江苏 镇江 212100)

1 引言

为了降低无控炸弹落点的散布范围进而实现对目标的精准打击,需要准确的炸弹气动参数。在进行炸弹打靶试验过程中,利用各种仪器设备采集炸弹实际飞行数据,在实际测得的数据中提取炸弹的气动参数,比实验室和计算所获得的参数更能代表炸弹真实的运动状态。炸弹弹道的稳定性取决与炸弹的气动参数,炸弹气动参数辨识技术是飞行器气动参数辨识中的一个关键分支,为了提高无控炸弹的命中精度、减少弹药使用量,需要进行炸弹气动参数辨识的方法研究。

近年来,气动参数辨识诞生了很多方法,发展十分迅速,目前较为经典的方法是最小二乘法、极大似然法、Kalman滤波法以及最近兴起的某些智能算法。崔乃刚等将一阶高斯马尔科夫过程描述作为气动参数误差模型,并增广到状态方程中,根据获得带有测量误差的惯导信息,对气动参数进行估计。王正熙等采用卡尔曼滤波对四旋翼无人机的气动参数进行在线估计,计算相应比例因子,对转速进行补偿,提高无人机的高度和航向的控制性能。赵述龙等设计了一套CIFER的辨识工具,对具有不确定因素较大的气动参数进行频域辨识。李金晟等基于极大似然准则,采用神经网络-牛顿法,对无控旋转弹丸的飞行状态数据进行处理,提取出其零升阻力系数。韩建福等提出一种双BP神经网络对扑翼飞行器的气动参数进行辨识。

极限学习算法是一种热门的神经网络算法,由于其学习速度快、泛化能力强等优点被广泛应用。严侃等基于最小二乘原理,通过求解隐含层输出矩阵的Moor-Penrose广义逆矩阵,精确辨识弹丸阻力系数。张梦蝶等提出用改进的贝叶斯优化算法,解决传统核极限学习机算法参数优化困难的问题。但由于极限学习算法随机产生的输入权重和隐含层神经元容易引发预测结果发散,为此研究者进行了大量的相关研究。

本文利用遗传算法优化极限学习机算法中隐含层神经元个数、输入层到隐含层的权值个数以及隐含层到输出层的权值个数,解决了预测结果容易发散的问题,并且使用遗传算法也克服了一般优化算法容易产生的陷入局部最优的问题,进一步使用这种遗传算法优化的极限学习机对某型无控炸弹的气动参数进行了辨识,并与传统极限学习机辨识的结果进行了比较。将遗传算法优化的极限学习机应用到某型无控炸弹的气动参数辨识。

2 炸弹弹道模型

炸弹弹道模型使用修正质点弹道模型(简称4D模型),此模型是在地面坐标系中,具体方程组如下:

(1)

(2)

(3)

(4)

(5)

(6)

(7)

(8)

炸弹相对于空气的速度为:

(9)

动力平衡角的直接计算公式为:

(10)

(11)

(12)

(13)

式(10)—式(13)中的相关参数可以由下面的式(14)—式(22)计算得到。

(14)

(15)

(16)

(17)

(18)

(19)

=-

(20)

=

(21)

=-

(22)

3 极限学习算法

极限学习算法可以看为一种只有一层隐含层的前向传播神经网络,和其他神经网络一样,可以分为训练阶段和预测阶段。与经典的神经网络不同的是,极限学习算法是随机生成输入权重值和隐含层神经元阈值。这两者之间是独立的并且不需要调整,其结构如图1所示。

图1 极限学习算法结构示意图Fig.1 Structure diagram of ELM

给定组训练样本(,)∈×,其中是维输入向量,是维目标向量。隐含层含有个神经元,(,,)是极限学习算法的激活函数,其输出为:

(23)

式(23)中:(,)分别为输入的权重值和隐含层神经元阈值;为连接第个隐含层神经元和输出神经元的权重向量。可以将式(23)变化为矩阵的形式,即:

=

(24)

其中

(25)

(26)

(27)

式(27)中,的Moore-Penrose广义逆矩阵。

极限学习算法可以主要归纳为以下3个步骤:

1确定隐含层神经元个数,随机设定输入层和隐含层的连接权重和阈值(,);

2将一个无限可微的函数作为隐含层神经元的激活函数(,,),计算隐含层输出矩阵

4 遗传算法

遗传算法(GA)起源于对生物系统进行计算机模拟,是一种对自然界生物进化机制进行模仿的随机全局搜索和优化方法。GA算法可以高效、并行地进行全局搜索,并在搜索过程中可以自动获取和累积相关搜索空间的知识,并自适应地控制搜索过程来求出最优解。

遗传算法的一般步骤可以归结于以下5个步骤:

1初始随机产生种群。

2依据策略判断个体适应度,如果能够符合优化准则,输出最优个体和最佳解,结束。否则进行下一步工作。

3根据适应度选择其父母,适应度高的被选中概率就大,反之选择概率就小。

4将成为父母的个体,根据一定的方法用他们的染色体交叉,产生后代。

5对后代染色体进行变异操作,再进行交叉、变异的操作产生新的种群,然后回到步骤2,开始循环,直至产生最优解。

遗传算法计算流程如图2所示。

图2 遗传算法计算流程框图Fig.2 The flow chart of genetic algorithm(GA)

5 炸弹气动参数辨识

5.1 数据获取及处理

标准大气条件下使用4阶龙格库塔法(积分步长0.01)求解4D模型,本文基于分段辨识的思想提取气动参数,将弹道数据划分为若干区间。由于每一个小区间内速度变化很小,因此可以把区间内的气动系数视为常数。得到8 000组弹道数据,表1为初始设置。

表1 弹道初始设置Table 1 Ballistic initial setting

得到的数据包括炸弹飞行速度、姿态、位置等,为了提高算法的精度,消除不同量纲间的影响,需要对其进行归一化处理。归一化处理公式为:

(28)

选取其中7 000组数据作为训练集,1 000组数据作为测试集。

5.2 遗传算法优化极限学习机(GA-ELM)算法气动参数辨识

ELM模型结构设置

ELM初始需设置的参数为:输入层节点个数、隐含层神经元数、输出层节点个数和激活函数。

2) 隐含层神经元。神经网络通过我们设置的隐含层层数将这些不同的样本特征映射到一个维空间中,隐含层神经元决定了神经网络的训练时间和预测的准确程度,因此设置的神经元个数需合理,设置不合理,会导致训练时间长或预测不准确的问题产生,而ELM是设置隐含层神经元个数之后不再更改,因此设置神经元个数十分重要。

3) 输出节点数。本文中采用修正质点弹道方程,需辨识的气动参数如表2所示。

表2 辨识气动参数名称及函数名Table 2 Name of aerodynamic parameter and function to be identified

4) 激活函数。激活函数的目的是将非线性特性加入到ELM中。Sigmoid函数是一个S型曲线,由于其单调递增同时其反函数也是单调递增的特性,Sigmoid函数通常被用作神经网络的阈值函数。本文中选取Sigmoid函数作为极限学习机的激活函数。

GAELM算法步骤及流程

GA-ELM算法步骤如下。

1将染色体种群编码进行初始化,提取出极限学习机的输入层权值和隐含层阈值元素,并计算其染色体长度。之后随机初始化染色体。

2设置适应度函数。利用ELM对样本的输出误差作为适应度函数,计算初始种群中分体的适应度函数,计算初始种群中的个体适应度。

3进行选择、交叉、变异操作。采用轮盘赌选择时,对于适应度函数,由于取得是均方误差,在进化过程中,均方误差减小,因此,轮盘赌设置时,适应度函数需取其倒数,从而选择“适应度大”的个体。

4计算子代个体的适应度,并与父代个体合并,留下适应度较好的个体,构成新的子代种群。

5反复迭代步骤3和步骤4,直至达到最大设定值。

6输出最优的染色体信息。对适应度最好的染色体进行解码,并将解码后得到的权值和阈值赋给预测使用的ELM。

7以最优的权值和阈值初始化ELM的参数,获得最优的网络结构。最后测试网络的预测精度。

GA-ELM算法计算流程如图3所示。

图3 GA-ELM算法计算流程框图Fig.3 GA-ELM algorithm flow chart

6 仿真验证

使用ELM和GA-ELM 2种方法辨识气动参数,具体见图4—图10。图中横坐标为马赫数,纵坐标为待辨识的气动参数,红色曲线为参考值曲线,黄色曲线为使用ELM的预测值曲线,蓝色曲线为使用GA-ELM的预测值曲线。由于测试集样本过大,导致参考值曲线和GA-ELM的预测值曲线部分重合,小图窗中是图中部分放大,可以观察到GA算法,可以有效提高ELM算法的辨识精度。

图4 辨识结果曲线Fig.4 Identification result

图5 辨识结果曲线Fig.5 Identification result

图6 Cx0辨识结果曲线Fig.6 Cx0 Identification result

图7 辨识结果曲线Fig.7 Identification result

图8 辨识结果曲线Fig.8 Identification result

图9 辨识结果曲线Fig.9 Identification result

图10 Cx2辨识结果曲线Fig.10 Cx2 Identification result

图4—图10中还给出了2种算法辨识气动参数的均方差(MSE),MSE体现其辨识精度,MSE的数量级越小,辨识精度越高;反之,辨识精度越低。从图4—图10可知,加入遗传算法后的极限学习机算法辨识精度更高,预测值和真实值几近相同,而未加入GA算法的ELM算法,其辨识精度低,预测值和真实值差距较大。GA算法优化产生ELM的输入权重及阈值,可以使得输入权重和阈值包括更多的样本信息,提高其辨识精度。

7 结论

本文应用GA算法优化ELM算法,改善了ELM 算法的寻优精度,GA-ELM算法的寻优精度明显提升,但由于GA算法是全局搜索算法,计算时间较长,因此,加入GA算法后导致GA-ELM算法辨识气动参数的时间增长。根据仿真试验可得到以下结论:

1) GA-ELM算法可以实现炸弹的气动参数辨识。

2) GA算法迭代寻优产生ELM的输入权重和隐含层神经元阈值,可以有效提高模型辨识精度。

3) 虽然GA-ELM算法提高了辨识精度,但计算辨识炸弹气动参数的速度较慢,对实际工程应用还有一定差距,还需对辨识速度优化。

猜你喜欢
学习机适应度气动
警惕平板学习机骗局
“机”关
医用气动物流设备维修中的应用
启发式搜索算法进行乐曲编辑的基本原理分析
基于改进演化算法的自适应医学图像多模态校准
基于人群搜索算法的上市公司的Z—Score模型财务预警研究
从学习机到上网本