一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于自适应粒子群优化极限学习的弹丸气动系数辨识方法与流程

2021-11-10 04:27:00 来源:中国专利 TAG:


1.本发明属于弹丸参数辨识领域,具体涉及一种基于自适应粒子群优化极限学习的弹丸气动系数辨识方法。


背景技术:

2.随着弹丸向精确制导化方向的发展,弹丸气动系数的精确与否直接决定了弹丸的外弹道性能。
3.在利用极限学习辨识弹丸气动参数时,虽然能够在高噪声情况下,精准、快速辨识弹丸气动系数,但是由于极限学习在辨识弹丸气动系数过程中,随机产生输入权重以及隐含层神经元阈值,使得极限学习辨识效果不稳定。


技术实现要素:

4.本发明的目的在于提供一种基于apso

elm的辨识弹丸气动参数的方法。基于弹丸的飞行数据,创新性提出一种自适应粒子群优化算法(apso)为极限学习提供输入权重以及隐含层神经元阈值,再利用极限学习辨识弹丸气动系数,为获取弹丸气动参数提供了新的途径。
5.实现本发明目的的技术解决方案为:.一种基于自适应粒子群优化极限学习的弹丸气动系数辨识方法,包括如下步骤:
6.步骤(1):建立弹丸二自由度动力学模型;
7.步骤(2):构建原始极限学习机网络模型:确定原始极限学习机网络模型的输入层节点数、隐含层神经元个数、激活函数以及输出层节点数;
8.步骤(3):利用自适应粒子群算法优化原始极限学习机网络模型,得到原始极限学习机网络模型的输入权重以及隐含层神经元阈值;
9.步骤(4):根据步骤(3)优化后的自适应粒子群算法极限学习机网络模型,进行参数辨识;确定隐含层和输出层的连接权值矩阵在确定连接权值矩阵的基础上,求解模型的输出矩阵,实现参数辨识。
10.进一步的,步骤(1)“建立弹丸二自由度动力学模型”具体为:
11.二自由度动力学模型建立在自然坐标系下,u表示弹丸的速度,θ为弹道倾角,x、y为弹丸的位置坐标,ρ为空气密度,s为特征面积,通常取为弹丸的最大横截面积,m0为弹丸质量,g0为重力加速度,c
d
为阻力系数;
[0012][0013]
[0014][0015][0016]
进一步的,步骤(2)“构建原始极限学习机网络模型:确定原始极限学习机网络模型的输入层节点数、隐含层神经元个数、激活函数以及输出层节点数”具体包括如下步骤:
[0017]
步骤(21):输入层节点数设定
[0018]
基于质点弹道方程,确定影响因素分别为弹丸速度u,弹道倾角θ,射程x以及飞行高度y;确定网络的输入层的节点数n=4;
[0019]
步骤(22):输出层节点数设定
[0020]
借助极限学习机实现对弹丸阻力系数c
d
的辨识,选定输出层的节点数m=1;步骤(23):激活函数选择
[0021]
通过对输入数据归一化处理,输入数据的大小均被映射到[0,1]区间,选用sigmoid函数作为激活函数;
[0022]
步骤(24):隐含层神经元个数设定
[0023]
根据经验公式其中a为1~10的常数,确定隐含层节点数l=9。
[0024]
进一步的,步骤(3)“利用自适应粒子群算法优化原始极限学习机网络模型,得到原始极限学习机网络模型的输入权重以及隐含层神经元阈值”具体包括如下步骤:
[0025]
步骤(31):对数据集归一化处理;
[0026]
采用min

max normalization归一化法,将全部数据映射到[0,1]区间内,归一化公式为:
[0027][0028]
其中,x
j
为原始输入数据,x
min
为最小输入数据,x
max
为最大输入数据,为归一化后的输入数据;
[0029]
步骤(32):进行初始参数设置;
[0030]
步骤(33):确定适应度函数,计算粒子适应值,
[0031]
选取均方误差函数作为适应度函数,计算每个粒子的适应值
[0032][0033]
其中,n为训练样本数据个数,t
j
为期望的样本输出值,为模型实际预测值,fit为适应度函数值。
[0034]
步骤(34):比较各个粒子的适应度函数值,从中找出粒子的个体极值以及群体全局极值。
[0035]
若fit(j)<p
best
(j),则p
best
(j)=fit(j),否则p
best
(j)不变;
[0036]
若fit(j)<g
best
,则g
best
(j)=fit,否则g
best
不变。
[0037]
其中fit(j)表示第j个粒子当前适应度值,p
best
(j)表示第j个粒子的个体极值,
g
best
表示整个粒子群的全局极值;
[0038]
步骤(35):更新粒子速度和位置信息:
[0039][0040][0041][0042]
其中表示第j个粒子在k代的速度,ω为惯性权重,表示第j个粒子在k代的位置;
[0043]
步骤(36):判断是否满结束条件,若为未满足则返回步骤(34),否则结束;
[0044]
步骤(37):输出优化的权值和阈值。
[0045]
进一步的,步骤(32)的进行初始参数设置具体为:
[0046]
[0047]
进一步的,步骤(4)具体包括如下步骤:
[0048]
步骤(41):训练网络,确定输出权重;
[0049]
对于n个任意的训练样本(x
j
,t
j
),其中x
j
=[x
j1
,x
j2
,...,x
jn
]
t
∈r
n
表示输入训练样本数据,t
j
=[t
j1
,t
j2
,...,t
jm
]
t
∈r
m
表示输出训练样本数据;对于隐含层神经元个数为l,激活函数为g(x)的极限学习机,网络的输出o
j
为:
[0050][0051]
其中w
i
=[w
i1
,w
i2
,...,w
in
]
t
是第i个隐含层神经元和输入节点之间的连接权值,β
i
=[β
i1
,β
i2
,...,β
im
]
t
是第i个隐含层神经元与输出节点之间的连接权值,b
i
是第i个隐含层神经元的阈值;w
i
和b
i
由步骤(3)给出,其中w
i
·
x
j
表示矩阵的内积运算;
[0052]
网络的训练目标为即存在β
i
,w
j
,b
i
使得
[0053][0054]
写成矩阵形式为:hβ=t其中,h是隐含层输出矩阵,β是隐含层和输出层之间的连接权值矩阵,t是输出矩阵:
[0055][0056][0057][0058]
基于最小二乘准则求解极限学习机的输出权重其表达式为:
[0059][0060]
其中h

是隐含层输出矩阵h的moor

penrose广义逆矩阵;
[0061]
在式(15)基础上,在矩阵h
t
h对角线引入正则化项改进后的输出权值矩阵如下式所示:
[0062][0063]
步骤(42):网络预测,实现参数辨识:
[0064]
在训练过程结束后,得到模型的输出权值矩阵假设此时给定m个预测样本x
k
,则对于隐含层神经元个数为l,激活函数为g(x)的极限学习机,网络的输出u
j
为:
[0065][0066]
本发明与现有技术相比,其显著优点在于:
[0067]
(1)本发明的方法,创新地采用apso

elm的方法对弹丸气动参数进行辨识;利用粒子群算法优化极限学习机,产生输入权值和隐含层神经元阈值,克服了在使用单一极限学习机辨识弹丸气动参数时,因为随机产生输入权值和隐含层神经元阈值而可能的导致辨识结果不稳定的问题。将该方法应用于弹丸阻力系数辨识时,能够在高噪声情况下,精准、快速、稳定地辨识弹丸阻力系数。
[0068]
(2)本发明的方法,创新地提出一种新的自适应更新策略,对pso算法中的惯性权重进行迭代更新。该策略能够在迭代初期提供较大的惯性权重,提高pso算法的全局搜索能力,在迭代后期提供较小的惯性权重,减小粒子的搜索空间,提高pso算法的局部搜索能力。从而提高算法的收敛速度以及寻优效果。
附图说明
[0069]
图1为本发明的自适应粒子群算法优化产生权重和阈值的流程图。
[0070]
图2为本发明的极限学习机模型结构图。
[0071]
图3为本发明实施例1自适应粒子群算法适应度随迭代次数变化的结果图。
[0072]
图4为本发明实施例1辨识阻力系数示意图。
具体实施方式
[0073]
下面结合附图对本发明作进一步详细描述。
[0074]
一种基于极限学习机的辨识弹丸气动参数方法,包括以下步骤:
[0075]
步骤1:建立弹丸二自由度动力学模型:
[0076]
具体如下:
[0077]
二自由度动力学模型建立在自然坐标系下。u表示弹丸的速度,θ为弹道倾角。x、y为弹丸的位置坐标。ρ为空气密度;s为特征面积,通常取为弹丸的最大横截面积;m0为弹丸质量;g0为重力加速度;c
d
为阻力系数。
[0078][0079]
[0080][0081][0082]
步骤2:构建极限学习机网络模型:
[0083]
利用极限学习机进行弹丸气动参数辨识时,需确定输入层节点数、隐含层神经元个数、激活函数以及输出层节点数。
[0084]
具体如下:
[0085]
(1)输入层节点数设定
[0086]
极限学习机的输入层与隐含层之间的特征映射数量是根据影响因素来确定的。基于质点弹道方程,确定影响因素分别为弹丸速度u,弹道倾角θ,射程x以及飞行高度y。因此最终确定网络的输入层的节点数n=4。
[0087]
(2)输出层节点数设定
[0088]
借助极限学习机实现对弹丸阻力系数c
d
的辨识,因此选定输出层的节点数m=1。
[0089]
(3)激活函数选择
[0090]
通过对输入数据归一化处理,输入数据的大小均被映射到[0,1]区间,这与sigmoid函数的值域刚好重合,同时克服了sigmoid函数容易陷入函数饱和问题。在这样的情况下,选用sigmoid函数作为激活函数,模型收敛速度以及辨识精度均优于relu函数以及tanh函数。
[0091]
(4)隐含层神经元个数设定
[0092]
对于如何确定神经网络结构中隐含层节点数目,目前还无具体方法给出确定的解析解。但隐含层节点数会对训练时间以及拟合效果产生非常重要的影响,合理设置隐含层节点数,可大幅度提升模型预测精度。节点数过少,模型预测精度低;节点数过多,模型训练时间过长,并且最终的预测精度也可能因为过拟合而下降。在参考经验公式(a通常取1~10的常数)基础上最终选定了l=9,在该隐含层个数下网络性能表现最佳。
[0093]
步骤3:利用自适应粒子群算法优化极限学习机,得到极限学习机的输入权重以及隐含层神经元阈值;
[0094]
步骤3

1:对数据集归一化处理;
[0095]
网络的数据具有不同的物理含义以及不同的量纲,而不同的量纲会影响数据分析的结果,为了消除不同量纲之间的影响,需要对原始数据集归一化处理。在进行归一化处理后,能够进一步加快模型的收敛速度,提高辨识精度。采用min

max normalization归一化法,将全部数据映射到[0,1]区间内,以输入数据为例,归一化公式为
[0096][0097]
其中,x
j
为原始输入数据,x
min
为最小输入数据,x
max
为最大输入数据,为归一化后的输入数据。
[0098]
步骤3

2:进行初始参数设置;
[0099][0100][0101]
步骤3

3:确定适应度函数,计算粒子适应值;
[0102]
选取均方误差函数作为适应度函数,计算每个粒子的适应值
[0103][0104]
其中,n为训练样本数据个数,t
j
为期望的样本输出值,为模型实际预测值,fit为适应度函数值。
[0105]
步骤3

4:比较各个粒子的适应度函数值,从中找出粒子的个体极值以及群体全局极值;
[0106]
若fit(j)<p
best
(j),则p
best
(j)=fit(j),否则p
best
(j)不变;
[0107]
若fit(j)<g
best
,则g
bext
(j)=fit,否则g
best
不变。
[0108]
其中fit(j)表示第j个粒子当前适应度值,p
best
(j)表示第j个粒子的个体极值,
g
best
表示整个粒子群的全局极值。
[0109]
步骤3

5:更新粒子速度和位置信息;
[0110][0111][0112][0113]
其中,表示第j个粒子在k代的速度,ω为惯性权重,表示第j个粒子在k代的位置。
[0114]
步骤3

6:判断是否满结束条件(达到最大迭代次数或者满足最小误差)。若为未满足则返回步骤3

4,否则结束;
[0115]
步骤3

7:输出优化的权值和阈值。
[0116]
步骤4:根据构建好的apso

elm网络模型,进行参数辨识;
[0117]
根据神经网络的基本理论,极限学习机可看作单隐含层的前向传播神经网络,整个网络的工作过程可分为训练过程和预测过程。网络训练过程主要任务是确定隐含层和输出层的连接权值矩阵预测过程在确定连接权值矩阵的基础上,求解模型的输出矩阵,实现参数辨识功能。
[0118]
步骤4

1,训练网络,确定输出权重:
[0119]
假设有n个任意的训练样本(x
j
,t
j
),其中x
j
=[x
j1
,x
j2
,...,x
jn
]
t
∈r
n
表示输入训练样本数据,t
j
=[t
j1
,t
j2
,...,t
jm
]
t
∈r
m
表示输出训练样本数据。极限学习机隐含层神经元个数l,激活函数为g(x)情况下,网络的输出o
j
为:
[0120][0121]
其中w
i
=[w
i1
,w
i2
,...,w
in
]
t
是第i个隐含层神经元和输入节点之间的连接权值,β
i
=[β
i1
,β
i2
,...,β
im
]
t
是第i个隐含层神经元与输出节点之间的连接权值,b
i
是第i个隐含层神经元的阈值。w
i
和b
i
由步骤3给出,其中w
i
·
x
j
表示矩阵的内积运算。
[0122]
网络的训练目标为即存在β
i
,w
j
,b
i
使得
[0123][0124]
写成矩阵形式为:hβ=t其中,h是隐含层输出矩阵,β是隐含层和输出层之间的连接权值矩阵,t是输出矩阵
[0125][0126][0127][0128]
基于最小二乘准则求解极限学习机的输出权重其表达式为:
[0129][0130]
其中h

是隐含层输出矩阵h的moor

penrose广义逆矩阵。
[0131]
在式(15)基础上,基于hoerl a e,kennard r w.在ridge regression:biased estimation for nonorthogonal problems technimetrics,1970,12(1):55

67.中提出的岭回归原理,在矩阵h
t
h对角线引入正则化项克服了特征向量之间的高度共线性,从而确保矩阵非奇异,进一步提高了极限学习机的泛化能力和鲁棒性。
[0132][0133]
步骤4

2,网络预测,实现参数辨识:
[0134]
在训练过程结束后,可以得到模型的输出权值矩阵假设此时给定m个预测样本x
k
,则对于隐含层神经元个数为l,激活函数为g(x)的极限学习机,网络的输出u
k
为:
[0135][0136]
实施例1
[0137]
下面结合实施例进行更详细的描述。
[0138]
某型号炮弹的参数设置如下表所示:
[0139]
表1 某型弹丸的参数值
[0140][0141]
在表2的初始条件下,对阻力系数c
d
进行参数辨识:
[0142]
表2 某型弹丸的发射初始条件
[0143][0144]
输入特征向量为[u θ x y]
t
,待辨识参数为弹丸阻力系数c
d
,网络结构为4
‑9‑
1。,图3为自适应粒子群算法适应度随迭代次数变化的结果图,最终辨识c
d
的结果如图4所示,可以看出,该方法将某型弹丸运动过程的阻力系数辨识了出来。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献