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

一种基于模糊神经网络的飞行器打击区预测系统和方法

2022-08-24 02:00:15 来源:中国专利 TAG:


1.本发明属于飞行器制导技术领域,具体涉及一种基于模糊神经网络的飞行器打击区预测系统和方法。


背景技术:

2.近年来,随着空天技术的蓬勃发展,考虑在飞行过程中面临的复杂飞行条件,研究飞行器根据当前飞行状态、目标位置等信息快速预测在当前状态下能达到的能力边界问题,具有重要的意义。
3.传统研究方法上,在进行打击区计算主要有三种方法:一是通过伪谱法或智能优化算法等数值优化方法获得倾侧角的变化规律,进而计算飞行器打击区;二是通过计算再入走廊边界推出倾侧角的控制率表达式;三是采用常值倾侧角方法。飞行器的弹道能力边界作为影响任务决策的重要因素,要求打击区预测具有实时性,但是现有的方法依赖先验信息偏多、预测过程耗时较长,


技术实现要素:

4.本发明的目的在于克服上述现有技术的缺点,提供一种基于模糊神经网络的飞行器打击区预测系统和方法,以解决现有技术中打击区的预测方法依赖先验信息多,预测过程耗时长,难以实现飞行器打击区的快速、实时预测的问题。
5.为达到上述目的,本发明采用以下技术方案予以实现:
6.一种基于模糊神经网络的飞行器打击区预测方法,包括以下步骤:
7.输入弹道数据,所述弹道数据包括飞行器的初始速度、初始高度、初始弹道倾角、倾侧角指令和转弯时间;
8.所述弹道数据通过模糊神经网络计算后,获得飞行器的纵程和横程;所述模糊神经网络通过已有的弹道数据训练和检验获得,所述已有的弹道数据通过蒙特卡洛仿真计算获得,蒙特卡洛仿真过程中的最优攻角控制指令通过二阶粒子群优化算法优化;
9.输出纵程和横程,获得n个轨迹落点,所有的轨迹落点围成的区域为飞行器的打击区域。
10.本发明的进一步改进在于:
11.优选的,所述模糊神经网络包括模糊输入层、模糊化层、模糊条件层、模糊判决层和去模糊化输出层。
12.优选的,所述模糊神经网络的建立过程为:
13.第1层:每个节点代表一个输入变量,
14.其中,o表示输出,i表示输入,下表i表示节点个数;
15.第2层:将输入层的输入变量通过多个隶属函数模糊化,
[0016][0017]
其中,w表示连接权重,f()为隶属度函数。
[0018]
所述模糊神经网络的输入变量为飞行器的初始速度、初始高度、初始弹道倾角、倾侧角指令和转弯时间,输出变量为飞行器的纵程和横程;根据输入输出变量的特性,对初始速度v定义4个高斯形隶属度函数,对初始高度h定义5个三角形隶属度函数,对弹道倾角θ定义3个三角形隶属度函数,对倾侧角υ定义8个三角形隶属度函数,对转弯时间t定义8个三角形隶属度函数;
[0019]
第3层:针对模糊规则中的条件部分,对节点进行组合配合,如下式,
[0020][0021]
第4层:得到相应输出节点模糊值的大小,如下式,
[0022][0023]
第5层:去模糊化,将输出的模糊值形式还原为乘数值的形式,如下式
[0024][0025][0026]
式中,代表第k层中第i个神经元的输入量,代表第k层中第i个神经元的输出量,代表第k-1层中第i个节点与第k层的第j个节点的连接权值,mk、σk分别表示为隶属函数的中心值和宽度;
[0027]
采用误差逆向传播算法进行训练,得到每层网络的权重ω,得到训练后的模糊神经网络模型。
[0028]
优选的,所述蒙特卡洛仿真过程中,针对飞行器机动范围求解,计算公式为:
[0029][0030]
式中,β0为飞行器射程对应的地心角,l为飞行器射程;βc为飞行器纵程对应的地心角,lc为飞行器纵程;βd为飞行器横程对应的地心角,ld为飞行器横程。
[0031]
5.根据权利要求4所述的一种基于模糊神经网络的飞行器打击区预测方法,其特征在于,蒙特卡洛仿真过程为:
[0032]
step 1:给出每个自变量的取值范围v
min
≤v≤v
max
,h
min
≤h≤h
max
,θ
min
≤θ≤θ
max
,υ
min
≤υ≤υ
max
,t
min
≤t≤t
max
;其中,v为飞行器的速度、h为高度,θ为弹道倾角,υ为倾侧角指令,t为转弯时间;
[0033]
step 2:产生一组[0,1]区间的随机数(r
i1
,r
i2
,r
i3
,r
i4
,r
i5
);
[0034]
step 3:根据均匀分布特性函数随机数的产生方法,参照公式(8)计算出一组输入自变量(vi,hi,θi,υi,ti);
[0035]
xi=(x
max-x
min
)
×ri
x
min
(i=1,2,3,

,n)
ꢀꢀꢀꢀ
(8)
[0036]
step 4:倾侧角控制指令表达公式如下:
[0037][0038]
将倾侧角指令公式(9)、优化过的攻角控制指令和飞行器弹道计算公式进行积分迭代,按照公式(7)计算飞行器纵程和横程;
[0039]
step 5:循环step 2—step 4多次,并记录输入和输出,完成仿真过程。
[0040]
优选的,所述攻角控制指令计算公式(3)为:
[0041][0042]
设定在整个飞行过程中,倾侧角指令为0。
[0043]
优选的,所述飞行器弹道计算公式为:
[0044][0045]
式中,状态变量有6个,v为飞行器的速度,θ为弹道倾角,σ为弹道偏角,r为飞行器到地心的距离,λ为经度,φ为纬度;
[0046]
式中,μm为地球引力常数,ωe为地球自转角速度,m为飞行器质量,υ为倾侧角指令,s为参考面积,ρ为大气密度;
[0047]
式中,x,y,z分别为飞行器所受到的阻力、升力和侧向力。
[0048]
优选的,所述飞行器所受到的阻力、升力和侧向力的计算公式为:
[0049][0050]
当不考虑飞行器侧滑,则β=0,因此侧向力z=0;式中ma为飞行马赫数,是飞行器速度与声速的比值;c
l
,cd分别表示升力系数与阻力系数,可通过输入当前时刻的攻角控制指令α和飞行马赫数ma,查询插值表得出。
[0051]
优选的,所述二阶粒子群优化算法的过程为:
[0052]
step1:参数设置
[0053]
step1.1:待优化的目标函数fitness如公式(4)所示,设定粒子数目n、惯性权重
ω、学习因子c1和c2、最大迭代次数m、自变量的个数d=3、自变量α1的取值范围、自变量α2的取值范围和自变量v的取值范围;
[0054]
fitness=r0×
βe=r0×
arccos(sinλfsinλ0 cosλfcosλ0cos(φ
f-φ0))
ꢀꢀꢀꢀꢀꢀꢀ
(4)
[0055]
式中,r0=6378km,(λ0,φ0)为起点的经纬度,(λf,φf)为落点的经纬度;
[0056]
step2:对粒子i进行初始化;
[0057]
step2.1:假设粒子均匀分布在给定空间,随机初始化粒子的位置信息随机初始化粒子的位置信息[x
i1
,x
i2
,x
i3
]和[x
1i1
,x
1i2
,x
1i3
];
[0058]
step2.2:假设粒子均匀分布在给定空间,随机初始化粒子的速度信息[v
i1
,v
i2
,v
i3
];
[0059]
step2.3:通过step2.1中粒子三维位置信息x
i1
,x
i2
,x
i3
自变量计算得到攻角控制指令,通过攻角控制指令积分得到完整弹道,将弹道起点经纬度坐标和落点经纬度坐标代入公式(4),获得粒子i的适应度值fitness[i];
[0060]
step2.4:初始化个体局部最优值,设置第i个粒子的初始位置x
i1
为个体局部最优值pbest[i];
[0061]
step2.5:初始化全局最优位置,比较n个粒子的适应度值,具有最大适应值的粒子的位置为全局最优位置gbest;
[0062]
step3:重复循环,直到满足终止条件:
[0063]
step3.1:根据公式(6)更新每个粒子的位置和速度;
[0064][0065]
式中,c1和c2是非负数,称为加速因子;rand()是在[0,1]之间均匀随机分布的函数;v
max
限制了飞行速度的最大值,是一个设定的常数;
[0066]
step3.2:更新个体局部最优值pbest[i];将粒子当前适应度函数值与历史最优位置的适应度值对比;若当前位置较好,则设置当前位置为粒子最优位置;
[0067]
step3.3:更新全局最优位置gbest,对于所有的粒子,满足不等式fitness[gbest]≥fitness[pbest[i]];
[0068]
step3.4:重复步骤step3.1~step3.3,直至达到最大迭代次数m。
[0069]
一种基于模糊神经网络的飞行器打击区预测系统,包括:
[0070]
输入单元,用于输入弹道数据,所述弹道数据包括飞行器的初始速度、初始高度、初始弹道倾角、倾侧角指令和转弯时间;
[0071]
预测单元,用于通过模糊神经网络对弹道数据计算后,获得飞行器的纵程和横程;所述模糊神经网络通过已有的弹道数据训练和检验获得,所述已有的弹道数据通过蒙特卡洛仿真计算获得,蒙特卡洛仿真过程中的最优攻角控制指令通过二阶粒子群优化算法优化;
[0072]
输出单元,用于输出纵程和横程,获得n个轨迹落点,所有的轨迹落点围成的区域为飞行器的打击区域。
[0073]
与现有技术相比,本发明具有以下有益效果:
[0074]
本发明公开了一种基于模糊神经网络的飞行器打击区预测系统和方法,该方法首先在弹道坐标系下建立飞行器的质心运动方程,采用二阶粒子群优化算法优化攻角控制指令,得到最优弹道。而后以飞行器的初始速度、初始高度、初始弹道倾角和倾侧角指令为输入,以飞行器的纵程和横程为输出,应用蒙特卡洛法对飞行器机动范围进行仿真。最后,利用模糊神经网络对飞行器打击区近似模型进行训练,输入飞行器初始状态和倾侧角指令,完成飞行器可达区域的预测。本发明利用模糊神经网络对飞行器打击区进行训练,解决了飞行器打击区快速、实时预测问题,提高了飞行器打击区预测的速度和精度。
附图说明
[0075]
图1为本发明的整体流程图
[0076]
图2为二阶粒子群优化算法流程图;
[0077]
图3为本发明的蒙特卡洛仿真流程图。
具体实施方式
[0078]
下面结合附图和具体的实施例对本发明做进一步详细描述,
[0079]
本发明公开了一种基于模糊神经网络的飞行器打击区预测方法,参见图1,该方法具体包括以下步骤:
[0080]
步骤1.飞行器弹道模型的建立与弹道优化。
[0081]
1.1飞行器弹道模型建立
[0082]
考虑作用在飞行器上的空气动力和地球引力,认为地球是均质旋转的椭球体,在弹道坐标系下建立飞行器的三自由度运动方程,表示如下:
[0083][0084]
式中,状态变量有6个,v为飞行器的速度,θ为弹道倾角,σ为弹道偏角,r为飞行器到地心的距离,λ为经度,φ为纬度。式中,μm为地球引力常数,ωe为地球自转角速度,m为飞行器质量,υ为倾侧角指令,s为参考面积,ρ为大气密度。
[0085]
式中,x,y,z分别为飞行器所受到的阻力、升力、侧向力,其计算公式如下:
[0086][0087]
不考虑飞行器侧滑,则β=0,因此侧向力z=0。式中ma为飞行马赫数,是飞行器速度与声速的比值。c
l
,cd分别表示升力系数与阻力系数,可通过输入当前时刻的攻角控制指令α和飞行马赫数ma,查询插值表得出。
[0088]
可以看出,系统的状态变量为v,θ,σ,r,λ,φ,控制输入为攻角控制指令α和倾侧角指令υ。设置状态变量的初值,将攻角控制指令和倾侧角指令输入公式(1),对系统进行积分,就可以得到飞行器的飞行轨迹。
[0089]
下面给出攻角控制指令α和倾侧角控制指令υ的表达公式。
[0090]
设定攻角-速度剖面,将飞行器的飞行状态分为初始俯冲段和下降段两段,攻角随速度变化的函数如下式所示:
[0091][0092]
设定在整个飞行过程中,倾侧角指令为0,其中,α1是初始俯冲段攻角,α2没有明确含义,只是一个参数,vf为分段依据参数。
[0093]
因此,攻角控制指令参数α1,α2,v的选择会影响飞行器的飞行轨迹。
[0094]
1.2弹道优化
[0095]
飞行器射程计算公式如下:
[0096]
fitness=r0×
βe=r0×
arccos(sinλfsinλ0 cosλfcosλ0cos(φ
f-φ0))
ꢀꢀꢀꢀꢀ
(4)
[0097]
式中,r0=6378km,(λ0,φ0)为起点的经纬度,(λf,φf)为落点的经纬度。
[0098]
通过优化攻角控制指令使飞行器的射程最大,因此优化变量集合为u={α1,α2,vf},性能指标函数表示如下:
[0099]
j=max{fitness}
ꢀꢀꢀꢀꢀꢀꢀ
(5)
[0100]
采用二阶粒子群优化算法解决飞行器最大射程优化问题,得到最优弹道的攻角控制指令。参见图2,过程如下:
[0101]
step1:参数设置
[0102]
step1.1:待优化的目标函数fitness如公式(4)所示,设置粒子数目n、惯性权重ω、学习因子c1和c2、最大迭代次数m、自变量的个数d=3(因此粒子的维数为3),给定自变量α1的取值范围α
1min
≤α1≤α
1max
、自变量α2的取值范围α
2min
≤α2≤α
2max
、自变量vf的取值范围v
fmin
≤vf≤v
fmax

[0103]
step2:对于粒子i的初始化
[0104]
step2.1:假设粒子均匀分布在给定空间,随机初始化粒子的位置信息[x
i1
,x
i2
,x
i3
]和[x
1i1
,x
1i2
,x
1i3
](因为自变量的个数为3,所以粒子是三维的)
[0105]
step2.2:假设粒子均匀分布在给定空间,随机初始化粒子的速度信息[v
i1
,v
i2
,v
i3
];
[0106]
step2.3:将step2.1中粒子三维位置信息x
i1
,x
i2
,x
i3
的值代入公式(3)得到攻角控
制指令(把x
i1
代入公式(3)中α1的位置,把x
i2
代入公式(3)中α2的位置,把x
i3
代入公式(3)中vf的位置),将攻角控制指令代入公式(1),积分得到完整弹道,将弹道起点经纬度坐标和落点经纬度坐标代入公式(4),可得粒子i的适应度值fitness[i]。
[0107]
step2.4:初始化个体局部最优值,设置第i个粒子的初始位置x
i1
为个体局部最优值pbest[i];
[0108]
step2.5:初始化全局最优位置,比较n个粒子的适应度值,具有最大适应值的粒子的位置为全局最优位置gbest;
[0109]
step3:重复循环,直到满足终止条件:
[0110]
step3.1:根据公式(6)更新每个粒子的位置和速度;
[0111][0112]
式中,c1和c2是非负数,称为加速因子;rand()是在[0,1]之间均匀随机分布的函数;v
max
限制了飞行速度的最大值,是一个设定的常数。
[0113]
step3.2:更新个体局部最优值pbest[i]。将粒子当前适应度函数值与历史最优位置的适应度值对比。若当前位置的适应度值比历史最优位置的适应度值大,则设置当前位置为粒子最优位置。
[0114]
step3.3:更新全局最优位置gbest,对于所有的粒子,满足不等式fitness[gbest]≥fitness[pbest[i]]
[0115]
step3.4:重复步骤step3.1~step3.3,直至达到设定的最大迭代次数m
[0116]
通过采用二阶粒子群优化算法,可以得到参数优化后的攻角控制指令,使得飞行器的射程最大。
[0117]
第一步算出一条基础弹道,第二步是生成弹道数据库。
[0118]
步骤2.飞行器机动范围的蒙特卡洛仿真计算。
[0119]
针对飞行器机动范围求解问题,可将其转化为飞行器横程、纵程计算问题,计算公式如下:
[0120][0121]
式中,β0为飞行器射程对应的地心角,l为飞行器射程;βc为飞行器纵程对应的地心角,lc为飞行器纵程;βd为飞行器横程对应的地心角,ld为飞行器横程。
[0122]
在弹道迭代计算过程中,需要给定飞行初始条件和攻角控制指令、倾侧角指令。采用步骤1中优化过的攻角控制指令,则只有飞行器的初始条件和倾侧角指令会影响飞行器的机动范围,因此将飞行器的初始速度、初始高度、初始弹道倾角、倾侧角指令、转弯时间这
五个变量作为输入,输出为飞行器的纵程和横程。假设输入变量在取值范围内服从均匀分布。对于这种分布,可按照如下公式生成x
min
和x
max
之间的随机值:
[0123]
xi=(x
max-x
min
)
×ri
x
min
(i=1,2,3,

,n)
ꢀꢀꢀꢀꢀꢀ
(8)
[0124]
xi为任意一个输入变量的随机值,x
max
为任意一个输入变量的设定最大值,x
min
为任意一个输入变量的设定最小值,ri是在0~1区间上的一个随机数,需要生成n个r,记为ri,i=1,2,3,.....,n。
[0125]
参见图3,蒙特卡洛仿真方法具体实现过程如下:
[0126]
step 1:给出每个自变量的取值范围v
min
≤v≤v
max
,h
min
≤h≤h
max
,θ
min
≤θ≤θ
max
,υ
min
≤υ≤υ
max
,t
min
≤t≤t
max

[0127]
step 2:产生一组[0,1]区间的随机数(r
i1
,r
i2
,r
i3
,r
i4
,r
i5
)
[0128]
step 3:根据均匀分布特性函数随机数的产生方法,参照公式(8)计算出一组输入自变量(vi,hi,θi,υi,ti)
[0129]
step 4:倾侧角控制指令表达公式如下:
[0130][0131]
将倾侧角指令公式(9)和优化过的攻角控制指令计算公式(3)代入飞行器弹道计算公式(1)进行积分迭代,按照公式(7)计算飞行器纵程和横程。
[0132]
step 5:按照设定次数循环step 2—step 4,并记录输入和输出。
[0133]
通过蒙特卡洛仿真方法,给定初始条件、倾侧角指令和转弯时间,得到对应的飞行器纵程和横程,可用来描述飞行器机动范围。所述飞行器的初始速度、初始高度、初始弹道倾角、倾侧角指令、转弯时间,以及计算出的纵程和横程共同构成弹道数据,即一条弹道包括7个数据。
[0134]
步骤3.基于fnn(模糊神经网络)的飞行器打击区近似模型训练。
[0135]
首先,利用步骤2描述的蒙特卡洛仿真法生成m组弹道数据,其中n组数据作为训练集,m-n组数据作为检验集。
[0136]
其次,建立模糊神经网络模型,该模型包括模糊输入层、模糊化层、模糊条件层、模糊判决层和去模糊化输出层五层结构。系统输入变量为x1,x2,x3,x4,x5,输出变量为y1,y2。
[0137]
第1层:每个节点代表一个输入变量,
[0138]
其中,o表示输出,i表示输入,下标i=1,2,3,4,5表示节点个数(因为系统输入了5个x),上标1代表第1层。
[0139]
第2层:将输入层的输入变量通过多个隶属函数模糊化,
[0140][0141]
其中,j为第二层(模糊化层)节点的个数,等于输入变量的隶属度函数个数之和(按照下文隶属度函数的定义,j=4 5 3 8 8);f()就是下面描述的隶属度函数;上标2代表第2层。w
ij
为i和j的连接权重,w和隶属度函数个数是神经网络需要训练的参数。
[0142]
系统输入变量为x1,x2,x3,x4,x5,分别对应飞行器的初始速度、初始高度、初始弹道倾角、倾侧角指令和转弯时间,输出变量为y1,y2,分别为纵程和横程。根据系统输入输出变量的特性,对速度v定义4个高斯形隶属度函数,对高度h定义5个三角形隶属度函数,对弹道
倾角θ定义3个三角形隶属度函数,对倾侧角υ定义8个三角形隶属度函数,对转弯时间t定义8个三角形隶属度函数,对飞行器纵程定义3个三角形隶属度函数,对飞行器横程定义2个三角形隶属度函数。
[0143]
第3层:针对模糊规则中的条件部分,对节点进行组合配合,如下式所示,
[0144][0145]
具体的,
[0146][0147]
其中,下标l代表第三层节点数,也就是模糊规则的个数,共有l=4
×5×3×8×
8个节点,也就是共有l=4
×5×3×8×
8个规则,w
ij
为i和j的连接权重,
[0148]
第4层:得到相应输出节点模糊值的大小,如下式所示,
[0149][0150]
式中,下标k表示第4层节点个数,也就是输出变量模糊度划分个数,根据上文,输出变量y1有三个模糊度,输出变量y2有两个模糊度,k=3 2=5。
[0151]
第5层:去模糊化,将输出的模糊值形式还原为乘数值的形式,如下式所示,
[0152][0153][0154]
具体的,
[0155][0156][0157]
式中,代表第k层中第i个神经元的输入量,代表第k层中第i个神经元的输出量,代表第k-1层中第i个节点与第k层的第j个节点的连接权值,mk、σk分别表示为隶属函数的中心值和宽度。
[0158]
采用误差逆向传播算法进行训练,得到每层网络的权重ω,得到训练后的模糊神经网络模型。
[0159]
最后,采用均方根误差、平均绝对误差和平均绝对百分误差对模糊神经网络模型进行评价分析。具体计算公式如下:
[0160][0161]
[0162][0163]
式中,v
rmse
表示均方根误差,v
mae
表示平均绝对误差,v
mape
表示平均绝对百分误差,yi表示真实纵程和横程,表示模型输出的飞行器纵程和横程,n为检验集中样本的数量。
[0164]
给出均方根误差要求平均绝对误差要求平均绝对百分误差要求若满足式(18),则证明训练的模糊神经网络能够准确预测飞行器打击区;若不满足要求,则返回模糊神经网络第二层,更新每个输入变量的隶属度函数类型和个数,继续训练神经网络。
[0165][0166]
步骤4.基于打击区近似模型的可达区快速预测。
[0167]
确定飞行器初始飞行状态:
[0168]
ω={v0,h0,θ0}
ꢀꢀꢀꢀꢀꢀꢀ
(19)
[0169]
确定倾侧角指令的取值范围为υ∈[-60
°
,60
°
],t∈[0,2000],根据均匀分布特性函数随机数的产生方法,计算出n组倾侧角指令(在步骤2蒙特卡洛方法里面有介绍)。将初始速度、初始高度、初始弹道倾角、倾侧角指令和转弯时间输入训练好的模糊神经网络模型,得到n组飞行器的纵程和横程数据(也就是步骤3)。以飞行器的纵程为横坐标,横程为纵坐标,得到n个轨迹落点,这些落点围成的扇形区域可近似描述飞行器的打击区域。
[0170]
本发明公开了一种基于模糊神经网络的飞行器打击区预测系统,包括:
[0171]
输入单元,用于输入弹道数据,所述弹道数据包括飞行器的初始速度、初始高度、初始弹道倾角、倾侧角指令和转弯时间;
[0172]
预测单元,用于通过模糊神经网络对弹道数据计算后,获得飞行器的纵程和横程;所述模糊神经网络通过已有的弹道数据训练和检验获得,所述已有的弹道数据通过蒙特卡洛仿真计算获得,蒙特卡洛仿真过程中的最优攻角控制指令通过二阶粒子群优化算法优化;
[0173]
输出单元,用于输出纵程和横程,获得n个轨迹落点,所有的轨迹落点围成的区域为飞行器的打击区域。
再多了解一些

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

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

相关文献