IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 基于遗传算法的BP神经网络齿轮箱故障诊断实例 -> 正文阅读

[人工智能]基于遗传算法的BP神经网络齿轮箱故障诊断实例

一、BP神经网络概述

BP网络是一类多层的前馈神经网络。它的名字源于在网络训练的过程中,调整网络的权值的算法是误差的反向传播的学习算法,即为BP学习算法。BP算法是 Rumelhart等人在1986年提出来的。由于它的结构简单,可调整的参数多,训练算法也多,而且可操作性好,BP神经网络获得了非常广泛的应用。据统计,有80%~90%的神经网络模型都是采用了BP网络或者是它的变形。BP网络是前向网络的核心部分,是神经网络中最精华、最完美的部分。BP神经网络虽然是人工神经网络中应用最广泛的算法,但是也存在着一些缺陷,例如学习收敛速度太慢、不能保证收敛到全局最小点、网络结构不易确定。

另外,网络结构、初始连接权值和阈值的选择对网络训练的影响很大,但是又无法准确获得,针对这些特点可以采用遗传算法对神经网络进行优化。

二、样本数据分析

基于遗传算法的BP神经网络进行齿轮箱故障的诊断。统计表明,齿轮箱故障中60%左右都是由齿轮故障导致的,本文只研究齿轮故障的诊断。对于齿轮的故障,这里选取了频域中的几个特征量。频域中齿轮故障比较明显的是在啮合频率处的边缘带上。所以在频域特征信号的提取中选取了在2、4、6挡时,在1、2、3轴的边频带族fs士nfs处的幅值Ai,j1,、A i,j2,和A i,j3,其中fs为齿轮的啮合频率,fz为轴的转频,n=1,2,3,i=2,4,6表示挡位,j=1,2,3表示轴的序号。由于在2轴和3轴上有两对齿轮啮合,所以1、2分别表示两个啮合频率。这样,网络的输入就是一个15维的向量。因为这些数据具有不同的量纲和量级,所以在输入神经网络之前首先进行归一化处理。图1和图2给出了归一化后的齿轮箱状态样本数据。

在这里插入图片描述

图1. 齿轮箱状态样本数据

从表中可以看出齿轮状态有三种故障模式,因此可以采用如下的形式来表示输出。

无故障:(1,0,0)。
齿根裂纹:(0,1,0)。
断齿:(0,0,1)。这里是引用

为了对训练好的网络进行测试,另外再给出三组新的数据作为网络的测试数据,如下图所示。

在这里插入图片描述

图2 测试样本数据

三、算法流程

3.1 算法流程

遗传算法优化BP神经网络算法流程如图3所示。

在这里插入图片描述

图3 算法流程图

图3中加粗黑框部分为神经网络算法部分。

遗传算法优化BP神经网络主要分为:BP神经网络结构确定、遗传算法优化权值和阈值BP神经网络训练及预测。其中,BP神经网络的拓扑结构是根据样本的输人/输出参数个数确定的,这样就可以确定遗传算法优化参数的个数,从而确定种群个体的编码长度。因为遗传算法优化参数是BP神经网络的初始权值和阈值,只要网络结构已知,权值和阈值的个数就已知了。神经网络的权值和阈值一般是通过随机初始化为[-0.5,0.5]区间的随机数,这个初始化参数对网络训练的影响很大,但是又无法准确获得,对于相同的初始权重值和阈值,网络的训练结果是一样的,引入遗传算法就是为了优化出最佳的初始权值和阈值。

3.2 神经网络算法实现原理

(1) 网络创建BP网络结构的确定有以下两条比较重要的指导原则。

① 对于一般的模式识别问题,三层网络可以很好地解决问题。
② 在三层网络中,隐含层神经网络个数n2和输入层神经元个数n1之间有近似关系
在这里插入图片描述
由于样本有15个输入参数,3个输出参数,所以这里n2取值为31,设置的BP神经网络结构为15-31-3,即输入层有15个节点,隐含层有31个节点,输出层有3个节点,共有15×31+31×3=558个权值,31+3=34个阈值,所以遗传算法优化参数的个数为558+34=592。使用图1中的9个样本作为训练数据,用于网络训练,图2中的3个样本作为测试数据。把测试样本的测试误差的范数作为衡量网络的一个泛化能力(网络的优劣),再通过误差范数计算个体的适应度值,个体的误差范数越小,个体适应度值越大,该个体越优。

神经网络的隐含层神经元的传递函数采用S型正切函数tansig(),输出层神经元的传递函数采用S型对数函数 logsig(),这是由于输出模式为0-1,正好满足网络的输出要求。创建网络可以使用以下代码:

net = feedforwardnet(hiddennum);
net.layers{2}.transferFcn = 'logsig';

(2) 网络训练和测试

网络训练是一个不断修正权值和阈值的过程,通过训练,使得网络的输出误差越来越小。在默认情况下,BP神经网络的训练函数为trainlm(),即是利用 Levenberg- Marquardt算法对网络进行训练的,具体的网络参数设置及训练代码如下:

%% 设置网络参数:训练次数为1000,训练目标为0.01,学习速率为0.1
net.trainParam.epochs=1000;
net.trainParam.goal=0.01;
net.trainParam.lr = 0.1;
%% 训练网络
net=train(net,P,T);

网络训练之后,需要对网络进行测试。例如测试样本数据矩阵为 P_test,则测试代码如下:

Y2=sim(net,P_test)

3.3 遗传算法实现

遗传算法优化BP神经网络是用遗传算法来优化BP神经网络的初始权重值和阈值,使优化后的BP神经网络能够更好地进行样本预测。遗传算法优化BP神经网络的要素包括种群初始化、适应度函数、选择算子、交叉算子和变异算子。

四、验证结果

根据遗传算法和BP神经网络理论,在MATLAB软件中编程实现基于遗传算法优化的BP神经网络齿轮箱故障诊断算法。遗传算法部分使用Sheffield遗传算法工具箱。BP神经网络部分使用MATLAB自带的神经网络工具箱。

运行编写的遗传算法主函数,输出结果为:权值和阈值矩阵X,最小误差err=0.77571。得到的进化曲线如图4所示。
在这里插入图片描述

图4 误差进化曲线
得到最优初始权值和阈值后,运行callbackfun函数,可以将该初始权值和阈值回代入网络画出训练误差曲线、预测值、预测误差、训练误差。

使用优化后的权值和阈值
测试样本预测结果:
Y2 =
0.9999 0.5000 0.5000
0.5000 0.9997 0.5000
0.5000 0.5000 0.9998
测试样本的仿真误差:0.99978
训练样本的仿真误差:1.726

五、资源获取

相关资源可从下方链接处获取
基于遗传算法的BP神经网络齿轮箱故障诊断实例

资源共含以下内容

  1. Sheffield的遗传算法工具箱;
  2. Bpfun.m 表示BP神经网络函数
  3. 遗传算法主函数.m
  4. callbackfun.m 表示回代网格函数:将该初始权值和阈值回代入网络画出训练误差曲线、预测值、预测误差、训练误差等
  5. data.mat 齿轮箱故障数据
  6. Objfun.m 求解种群中各个个体的目标值函数

注意事项,一定要将Sheffield遗传算法工具箱加载到运行路径中:
安装方法可参考如下文章:Sheffield遗传算法工具箱安装路径方法
在这里插入图片描述
最后,运行过程时间有点长,请耐心等待!

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-01-29 23:05:20  更:2022-01-29 23:08:13 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 20:25:27-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码