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

一种基于BP神经网络的固体发动机试验数据分析方法与流程

2022-03-19 22:54:19 来源:中国专利 TAG:

一种基于bp神经网络的固体发动机试验数据分析方法
技术领域
1.本发明涉及固体发动机试验领域,具体涉及一种基于bp神经网络的固体发动机试验数据分析方法。


背景技术:

2.固体发动机试验是固体发动机研发中必不可少的环节,然而据统计显示,固体发动机试验的现状包括成本高、准备周期长等问题,与此同时,在对固体发动机进行试验的过程中依然存在一定的安全隐患,不排除造成人员伤亡的可能,为事故的发生埋下了严重的安全隐患。
3.目前与本发明相近似的现有技术方案有固体发动机虚拟试验技术平台,在无需真实试验的情况下,该平台同样可以提供某型号固体发动机的试验虚拟数据。固体发动机虚试验技术平台的工作原理是基于大量的公式,通过白盒计算从而得出预测结果。另外,目前基于机器学习的固体发动机的专利有使用knn 算法进行固体火箭发动机无损检测数据预测方法,其原理为提取固体火箭发动机飞行成功及飞行失败的样子,选取判读因子,以飞行成功或飞行失败的发动机为基准进行有监督算法预测,经过归一化处理后,给出失败或成功的相似度预测结果。
4.(1)固体发动机虚拟试验技术平台
5.固体发动机虚拟试验平台的预测结果是基于大量的公式计算所得,其输入值与公式中的参数是固定的,因此所得的结果视为最理想的结果,排除了其他有可能的干扰因素。其次,针对不同的试验结果参数,存在大量不同的计算公式,所以想要得到更多的结果就需要冗长的计算过程。而反向传播神经网络属于机器学习领域,即让机器拥有自主学习能力,通过对固体发动机历史试验数据的学习,即训练建模过程,通过黑盒输出预测结果。与固体发动机虚拟试验技术平台相比,本发明得出的结果将更多的考虑到其他干扰因素,并且对于不同的试验结果参数,例如压强、推力等,其训练建模原理都是相同的,避免了冗长的计算过程。
6.(2)knn算法进行固体火箭发动机无损检测数据预测方法
7.目前基于机器学习的固体发动机的专利有使用knn算法进行固体火箭发动机无损检测数据预测方法,例如中国专利cn202011584375.9,一种基于机器学习固体火箭发动机无损检测数据预测方法,其原理为提取固体火箭发动机飞行成功及飞行失败的样子,选取判读因子,以飞行成功或飞行失败的发动机为基准进行有监督算法预测,经过归一化处理后,给出失败或成功的相似度预测结果。与本发明相比较,knn算法存下以下的缺点:首先的输出结果是离散型数据,即试验成功或试验失败,而本发明可以通过机器的自主学习预测试验的压强、推力、温度等连续性数据。其次,knn算法的运行原理与输出结果由k值决定,通常情况下k的取值为10以内的奇数,而本发明输出结果受全部数据的影响,因此该算法中的节点更具有关联能力输出结果也更加具备说服力。


技术实现要素:

8.本发明要解决的技术问题
9.本发明提出一种基于bp神经网络的固体发动机试验数据分析方法,为解决传统的固体发动机试验存在的难题提供了一种有效的技术途径,当预测结果出现潜在的隐患时,可以根据预测结果及时止损,更新优化后再进行试验。
10.为解决技术问题本发明采用的技术方案
11.一种基于bp神经网络的固体发动机试验数据分析方法,操作步骤为:
12.s1:搭建bp神经网络建模系统,选择三层神经网络作为基本架构,输入层的功能是将预处理的数据导入神经网络,输出层的作用是将预测数据导出,隐藏层通过卷积神经网络中的黑盒卷积方式变为此处的白盒模块化处理;
13.s2:bp模型迭代算法,先计算每一层的状态和激活值,直到最后一层;计算每一层的误差,误差的计算过程是从最后一层向前推进的;更新参数;迭代前面两个步骤,直到满足停止准则。
14.进一步地,所述s1中输入层包括固体发动机的设计数据、固体发动机工艺数据、固体发动机型号参数数据、实验环境数据及其它影响因素数据。
15.进一步地,所述传递数据公式:
16.第l(2≤l≤l)层的神经元的激活状态及激活层为:
17.z
(l)
=w
(l)a(l-1)
b
(l)
18.a
(l)
=f(z
(l)
)
19.对于l层的感知器,神经网络信息正向传播的最终输出为a
(l)

20.x=a
(1)

z(2)
→…→a(l-1
)
→z(l)
→a(l)
=y
21.其中:n
l
表示第l层神经元的个数;
22.进一步地,误差反向传播:
[0023][0024]
从而有
[0025]
如果展开隐藏层,则有
[0026][0027]
.代价函数e(i)仅和权重矩阵w
(l)
和偏置向量b
(l)
相关,调整权重或偏置即可减少误差。
[0028]
进一步地,训练数据的总代价表示为:
[0029][0030]
求出当总体代价最小时对应各个神经元的参数,采用梯度下降法,具体操作如下:
[0031][0032][0033]
有益效果
[0034]
本发明与固体发动机虚拟试验技术平台相比,反向传播神经网络属于机器学习领域,即让机器拥有自主学习能力,通过对固体发动机历史试验数据的学习,即训练建模过程,通过黑盒输出预测结果。与固体发动机虚拟试验技术平台相比,本发明得出的结果将更多的考虑到其他干扰因素,并且对于不同的试验结果参数,例如压强、推力等,其训练建模原理都是相同的,避免了冗长的计算过程。
[0035]
本发明与knn算法进行固体火箭发动机无损检测数据预测方法相比,本发明可以通过机器的自主学习预测试验的压强、推力、温度等连续性数据。其次,knn算法的运行原理与输出结果由k值决定,通常情况下k的取值为10以内的奇数,而本发明输出结果受全部数据的影响,因此该算法中的节点更具有关联能力输出结果也更加具备说服力。
[0036]
基于人工智能的神经网络反向传播算法与参数校正技术,研究发明一种针对于固体发动机试验数据的分析挖掘程序,基于大量历史试验数据资源的分析与建模,对于新的固体发动机试验起到预测分类等作用,即可预测新的固体发动机试验的主要反馈参数,其中包括推力、压强、温度等数据,而后经过与真实试验数据的对比与误差分析,不断进行迭代修正,从而减小误差提高神经网络模型的预测分类能力。同时,反向传播算法中的梯度下降原理亦可对于固体发动机中的经验性参数进行校正与优化,即从根本上减小了误差与试验失败率。
附图说明
[0037]
为了更清楚地说明本发明实施例,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0038]
图1:基于bp神经网络的固体发动机试验数据的特定结构;
[0039]
图2:三层感知器实例;
[0040]
图3:bp神经网络的固体发动机仿真数据预测结果。
具体实施方式
[0041]
研发一种基于人工智能的神经网络反向传播算法,可对未进行试验的固体发动机进行预测与评估,利用大量历史数据资源不断地迭代修正,为解决传统的固体发动机试验
存在的难题提供了一种有效的技术途径,当预测结果出现潜在的隐患时,可以根据预测结果及时止损,更新优化后再进行试验。而另一方面,在固体发动机领域存在一些经验性的参数,反向传播神经网络中的梯度下降方法正是通过不断的迭代修正逐渐优化参数。
[0042]
本发明的基本原理是基于人工智能领域的神经网络框架而构建了对于固体发动机试验数据的特定结构。较传统的反向传播神经网络结构相比,本发明设计出了只针对固体发动机试验数据的处理结构。该结构包括输入层、输出层与隐藏层三大部分,其中输入层的数据依据固体发动机的特点进行了模块化的处理,如图1所示,输入层的数据可以分为固体发动机设计数据、固体发动机工艺数据、固体发动机型号参数数据、试验环境数据以及其他影响因素数据这五大模块。而在五大模块收集好数据后,本发明中神经网络结构的隐藏层将不再是传统形式的全连接型隐藏层,此处借鉴了卷积神经网络的思想并加以提升,将卷积神经网络中的黑盒卷积方式变为此处的白盒模块化处理。即如图1中所示的五大隐藏层网络结构,第五部分将详细介绍这些隐藏层网络结构的技术方案。最后,根据需求的不同,该发明可以对压强、推力、温度等试验结果进行预测分析,即图1结构中输出层的内容。整个结构的优化将通过数据的不断训练与迭代修正,也就是参数校正的过程。
[0043]
误差反向传播算法简称反向传播算法(即bp算法)。使用反向传播算法的多层感知器又称为bp神经网络。bp算法是一个迭代算法,它的基本思想为: (1)先计算每一层的状态和激活值,直到最后一层(即信号是前向传播的);(2)计算每一层的误差,误差的计算过程是从最后一层向前推进的 (这就是反向传播算法名字的由来);(3)更新参数(目标是误差变小)。迭代前面两个步骤,直到满足停止准则(比如相邻两次迭代的误差的差别很小)。
[0044]
下面以三层感知器为实施例,即只含有一个隐藏层的多层感知器为例介绍本发明的技术方案:
[0045]
三层感知器(如图2所示),图中x=(x1,x2,x3)
t
是三维的(对于第一层,可以认为),唯一的隐藏层有三个节点,输出层有两个节点,即输出数据是二维数据。
[0046]
其中:n
l
表示第l层神经元的个数;
[0047]
f(
·
)表示神经元的激活函数;
[0048]
表示第l-1层到第l层的权重矩阵;
[0049]
是权重矩阵w
(l)
中的元素,表示第l-1层第j个神经元到第l层第i 个神经元的连接的权重;
[0050]
表示l-1层到第l层的偏置;
[0051]
表示l层神经元的状态;
[0052]
表示l层神经元的激活层(即输出值);
[0053]
本发明实现具体步骤:
[0054]
一)信息向前传播
[0055]
如图2所示的第二次神经元激活状态与激活值可以由下列公式推导:
[0056][0057][0058][0059][0060][0061][0062]
类似的,第三层神经元的的激活状态与激活值可以由以下公式计算得出:
[0063][0064][0065][0066][0067]
由以上的公式可以总结出:第l(2≤l≤l)层的神经元的激活状态及激活层为:
[0068]z(l)
=w
(l)a(l-1)
b
(l)
[0069]
α
(l)
=f(z
(l)
)
[0070]
对于l层的感知器,神经网络信息正向传播的最终输出为a
(l)

[0071]
x=a
(1)
→z(2)
→…→a(l-1)
→z(l)
→a(l)
=y
[0072]
二)误差反向传播
[0073]
与信息向前传播不同的是,误差反向传播旨在得到各神经元的参数。其工作原理为假设训练数据为{(x
(1)
,y
(1)
,(x
(2)
,y
(2)
),...,(x(i),y(i)),...,(x
(n)
,y
(n)
)},即共有n 个。又假设输出数据为n
l
维,即
[0074]
对某一组训练数据(x(i),y(i)来说,其代价函数可以写为:
[0075][0076]
说明:y(i)为期望的输出,o(i)为实际的输出。
[0077]
以图2中三层感知器的结构为例,从而有如果展开隐藏层,则有
[0078]
.进一步展开后可以得到,代价函数e(i)仅和权重矩阵w(i)和偏置向量b(i)相关,调整权重或偏置即可减少误差,此处是本发明针对参数校正的关键技术。
[0079]
所有的训练数据的总代价表示为:
[0080][0081]
该技术的最终目的是求出当总体代价最小时对应各个神经元的参数,此处采用梯度下降法,具体操作如下:
[0082][0083][0084][0085]
因此,只需要求出每一个训练数据的代价函数e(i)对参数的偏导数即可得到参数的迭代更新公式。
[0086]
定义bpneuralnetwork类,使用三个列表维护输入层,隐含层和输出层神经元,列表中的元素代表对应神经元当前的输出值.使用两个二维列表以邻接矩阵的形式维护输入层与隐含层,隐含层与输出层之间的连接权值,通过同样的形式保存矫正矩阵.
[0087]
已完成系统的初步开发,经过简单的仿真数据测试证明发明可行。根据图3可以看到预测结果与实际结果具有相同的趋势且误差较小。
再多了解一些

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

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

相关文献