一种参数优化的机器学习故障诊断系统的制作方法

文档序号:15443422发布日期:2018-09-14 23:04阅读:212来源:国知局
本发明涉及故障诊断领域、机器学习领域和群智能优化算法领域,尤其涉及一种结合机器学习和群智能优化算法的乙烯裂解过程化工故障诊断系统。
背景技术
:化工几乎己经渗透进人们生活工作的方方面面,也涉及到国家工业、国防、农业等各个领域。化工过程需要保证很高的安全性,因为一旦发生故障,如果诊断不及时,故障无法排除,就会造成严重影响,甚至危害人们的人身财产安全,后果不堪设想。因此,化工过程的故障诊断与监控问题越来越受到人们的重视,国内外的专家、学者们针对这一领域进行了深入的讨论,并取得了迅速发展,获得了大量研宄成果。随着科学技术的不断发展与创新,现代工业过程与机械设备日益趋向自动化、智能化、高速化,结构也愈发复杂,各个系统之间的联系越来越紧密,并且能够在恶劣环境下运行。这些特性都极大的提高了工业过程的生产能力,同时也减少了生产的成本。但是也正是由于过程复杂,一旦发生故障,就会产生连锁反应,造成大面积停工停产,造成巨大的经济损失和人员伤亡。另外,因为控制过程的规模庞大,复杂程度高,使操作人员很难及时发现故障原因并排除故障。因此,如何有效监控过程、及时发现故障、正确诊断故障原因是当前所面临的一个重要课题,研宄化工设备和生产过程的故障诊断和状态监控技术具有重要的现实意义。通过对生产过程运行状态的不断监督,检测过程中数据的变化,判断故障类别,分析故障产生的原因,有助于及时釆取有效措施,隔离并且消除故障,能够有效预防重大事故的产生,减少事故对产品质量的波及,也有助于加强竞争力。故障诊断与监控技术在近几年中,得到了巨大的发展,并取得了丰硕的成果,应用方面也在不断开拓新的领域。技术实现要素:为了克服目前已有的故障诊断技术的预报精度不高、易受人为因素的影响的不足,本发明的目的在于提供一种预报精度高、误报率低、漏报率低、抗干扰能力强的参数最优的自主学习故障诊断系统。本发明解决其技术问题所采用的技术方案是:一种参数优化的机器学习故障诊断系统,用于对乙烯裂解过程进行故障诊断,包括数据预处理模块、主成分分析模块、机器学习模块以及群智能算法模块,其中:数据预处理模块:乙烯裂解过程的30个变量为数据预处理模块的输入。由于每个变量都有不同的单位,为了防止不同的量纲引起数据量级之间的误差,先对所有数据进行标准化处理,标准化公式如下:其中,mean表示各变量的算术平均值,std表示各变量的标准差,表示输入变量的值,下标i表示第i次检测、j分别表示第j维变量,xij表示标准化后输入变量的值作为输入数据。标准化后的数据为s={xi1,xi2,...xi30}。主成分分析模块:通过主成分分析来保证在不降低系统精度的情况下降低系统的复杂度。将标准化后的数据s={xi1,xi2,...xi30}进行主成分分析,保留85%的主要成分。机器学习模块:用于建立诊断系统,提高系统小样本条件下的故障诊断效果,采用支持向量机自主学习模块:其中j表示目标函数、w表示模块参数、b表示偏执、x表示输入数据、y表示输出数据,下标i表示第i个数据。对于上述公式的求解,引入了拉格朗日乘子αi,定义拉格朗日函数l如下,其中上标t表示矩阵的转置,表示核函数映射:根据kkt条件,将l(w,αi,b)分别对w,b求偏导,可以得到如下公式:该模块采用性能优秀、所需参数少的rbf核函数,函数如下:其中,k是核函数,表示输入数据的平均值,σ表示核参数。群智能算法模块:结合差分进化算法和粒子群算法优化机器学习模块中的rbf核参数σ,实现具体步骤如下:(1)随机初始化种群,设置种群数量n=100;设置差分进化算法缩放因子f=0.7,交叉概率cr=0.5,差分进化算法最大迭代次数50;设置粒子群学习速度c1=c2=2,惯性权重ω=0.67,粒子群算法最大迭代次数100;设置k=0,i=0;(2)根据适应度函数来计算候选粒子种群的适应度值,适应度f(x)函数如下所示;其中,表示输出变量的真实值,表示输出变量的预测值,n表示样本个数。(3)根据以下步骤进行差分进化算法变异、交叉、选择操作;(3.1)变异操作:差分进化算法是通过差分的方式进行变异操作的。在当前种群中随机选取两个种群个体进行作差,将差向量进行缩放,缩放后的向量与第三个随机选取的种群个体进行求和,生成新个体,更新公式如下所示:ni(k)=lm3(k)+f×(lm1(k)-lm2(k)),1≤m1≠m2≠m3≠i≤n(7)其中,f是缩放因子,m1,m2,m3均为1到n之间的整数,k表示迭代次数,lm1(k)表示第m1个粒子的位置,lm2(k)表示第m2个粒子的位置,lm3(k)表示第m3个粒子的位置。通过变异之后,得到第i个变异中间种群ni(k)。(3.2)交叉操作:根据原始种群和变异得到中间种群,进行个体间的交叉操作,得到交叉中间种群u,更新公式如下所示:其中,cr为交叉概率,处于0到1之间,ni,j(k)表示第i个中间种群第j维变量,li,j(k)表示第i个原始种群第j维变量,ui,j(k)表示交叉中间种群的第i个新种群第j维变量,ni,j(k)表示变异中间种群ni(k)的第i个新种群第j维变量。(3.3)选择操作:差分进化算法采用了贪心算法,根据适应度值来决定进入下次迭代种群的个体:其中,ui(k)表示第i个交叉中间种群,li(k)表示第i个原始种群。(4)如果交叉中间种群的适应度值小于原始种群适应度值,则返回步骤(3),否则,激活粒子群算法;(5)根据如下公式执行粒子群算法,更新粒子群速度、位置矢量和惯性权重;其中,vi(k)是粒子i在第k次迭代时的速度,li(k)是粒子i在第k次迭代时的位置,pbest是粒子自身经验的局部最优解;gbest是所有粒子经验的全局最优解,w是惯性权重,c1和c2是学习速率,r1和r2是在0到1之间的随机数,wmax和wmin是惯性权重的最大值和最小值,itermax是最大迭代次数。(6)如果粒子群算法迭代次数小于终止迭代次数,则返回步骤(5),否则,转到步骤(7);(7)更新pbest和gbest作为支持向量机参数的候选解,判断差分进化算法迭代次数是否小于差分进化算法终止迭代次数,若是,则返回步骤(2),否则,输出种群历史最优gbest,算法终止;gbest即为支持向量机的待优化参数,即rbf核参数σ。将乙烯裂解过程中不同故障的数据输入到群智能机器学习故障诊断系统中进行训练,建立故障诊断模型。当未知故障的数据输入到此故障诊断系统时,诊断结果显示仪显示诊断结果。本发明的有益效果主要表现在:本发明对乙烯裂解化工过程的重要参数指标进行故障诊断,克服已有的化工故障诊断技术仪表预报精度不高、易受人为因素影响的不足,引入群智能算法模块对支持向量机参数寻优,从而得到参数优化的机器学习故障诊断系统。本发明在小样本条件下预报效果好且容易找到全局最优解。附图说明图1是一种参数优化的机器学习故障诊断系统的基本结构示意图;图2是群智能机器学习故障诊断系统结构示意图;图3是乙烯裂解过程工艺生产流程图。具体实施方式下面根据附图具体说明本发明。参照图1,一种参数最优的机器学习故障诊断系统,包括乙烯裂解过程1、用于测量易测变量的现场智能仪表2、用于测量操作变量的控制站3、存放数据的数据库4、群智能机器学习故障诊断系统5和诊断结果显示仪6。所述现场智能仪表2、控制站3与乙烯裂解过程1连接,所述现场智能仪表2、控制站3与数据库4连接,所述数据库4与群智能机器学习故障诊断系统5的输入端连接,所述群智能机器学习故障诊断系统5的输出端与诊断结果显示仪6连接。参照图3乙烯裂解过程的变量如表1所示。表1:乙烯裂解过程变量编号过程变量编号过程变量1a管进料16甲烷含量2b管进料17乙烯含量3c管进料18裂解炉温度14d管进料19裂解炉温度25e管进料20裂解炉温度36f管进料21裂解炉温度47总进料22锅炉出口温度18平均温度23锅炉出口温度29a管蒸汽流量24锅炉出口温度310b管蒸汽流量25a管出口温度11c管蒸汽流量26b管出口温度12d管蒸汽流量27c管出口温度13e管蒸汽流量28d管出口温度14f管蒸汽流量29e管出口温度15丙烯含量30f管出口温度乙烯裂解过程数据作为群智能机器学习故障诊断系统5的输入变量。通过人工取样分析获得,每4小时分析采集一次。参照图2,所述群智能机器学习故障诊断系统5还包括:数据预处理模块7:乙烯裂解过程的30个变量为数据预处理模块的输入。由于每个变量都有不同的单位,为了防止不同的量纲引起数据量级之间的误差,先对所有数据进行标准化处理,标准化公式如下:其中,mean表示各变量的算术平均值,std表示各变量的标准差,表示输入变量的值,下标i表示第i次检测、j分别表示第j维变量,xij表示标准化后输入变量的值作为输入数据。标准化后的数据为s={xi1,xi2,...xi30}。主成分分析模块8:通过主成分分析来保证在不降低系统精度的情况下降低系统的复杂度。将标准化后的数据s={xi1,xi2,...xi30}进行主成分分析,保留85%的主要成分。机器学习模块9:用于建立诊断系统,提高系统小样本条件下的故障诊断效果,采用支持向量机自主学习模块:其中j表示目标函数、w表示模块参数、b表示偏执、x表示输入数据、y表示输出数据,下标i表示第i个数据。对于上述公式的求解,引入了拉格朗日乘子αi,定义拉格朗日函数l如下,其中上标t表示矩阵的转置,表示核函数映射:根据kkt条件,将l(w,αi,b)分别对w,b求偏导,可以得到如下公式:该模块采用性能优秀、所需参数少的rbf核函数,函数如下:其中,k是核函数,表示输入数据的平均值,σ表示核参数。群智能算法模块10:结合差分进化算法和粒子群算法优化机器学习模块中的rbf核参数σ,实现具体步骤如下:(1)随机初始化种群,设置种群数量n=100;设置差分进化算法缩放因子f=0.7,交叉概率cr=0.5,差分进化算法最大迭代次数50;设置粒子群学习速度c1=c2=2,惯性权重ω=0.67,粒子群算法最大迭代次数100;设置k=0,i=0;(2)根据适应度函数来计算候选粒子种群的适应度值,适应度f(x)函数如下所示;其中,表示输出变量的真实值,表示输出变量的预测值,n表示样本个数。(3)根据以下步骤进行差分进化算法变异、交叉、选择操作;(3.1)变异操作:差分进化算法是通过差分的方式进行变异操作的。在当前种群中随机选取两个种群个体进行作差,将差向量进行缩放,缩放后的向量与第三个随机选取的种群个体进行求和,生成新个体,更新公式如下所示:ni(k)=lm3(k)+f×(lm1(k)-lm2(k)),1≤m1≠m2≠m3≠i≤n(7)其中,f是缩放因子,m1,m2,m3均为1到n之间的整数,k表示迭代次数,lm1(k)表示第m1个粒子的位置,lm2(k)表示第m2个粒子的位置,lm3(k)表示第m3个粒子的位置。通过变异之后,得到第i个变异中间种群ni(k)。(3.2)交叉操作:根据原始种群和变异得到中间种群,进行个体间的交叉操作,得到交叉中间种群u,更新公式如下所示:其中,cr为交叉概率,处于0到1之间,ni,j(k)表示第i个中间种群第j维变量,li,j(k)表示第i个原始种群第j维变量,ui,j(k)表示交叉中间种群的第i个新种群第j维变量,ni,j(k)表示变异中间种群ni(k)的第i个新种群第j维变量。(3.3)选择操作:差分进化算法采用了贪心算法,根据适应度值来决定进入下次迭代种群的个体:其中,ui(k)表示第i个交叉中间种群,li(k)表示第i个原始种群。(4)如果交叉中间种群的适应度值小于原始种群适应度值,则返回步骤(3),否则,激活粒子群算法;(5)根据如下公式执行粒子群算法,更新粒子群速度、位置矢量和惯性权重;其中,vi(k)是粒子i在第k次迭代时的速度,li(k)是粒子i在第k次迭代时的位置,pbest是粒子自身经验的局部最优解;gbest是所有粒子经验的全局最优解,w是惯性权重,c1和c2是学习速率,r1和r2是在0到1之间的随机数,wmax和wmin是惯性权重的最大值和最小值,itermax是最大迭代次数。(6)如果粒子群算法迭代次数小于终止迭代次数,则返回步骤(5),否则,转到步骤(7);(7)更新pbest和gbest作为支持向量机参数的候选解,判断差分进化算法迭代次数是否小于差分进化算法终止迭代次数,若是,则返回步骤(2),否则,输出种群历史最优gbest,算法终止;gbest即为支持向量机的待优化参数,即rbf核参数σ。将乙烯裂解过程中不同故障的数据输入到群智能机器学习故障诊断系统5中进行训练,建立故障诊断模型。当未知故障的数据输入到此故障诊断系统时,诊断结果显示仪6显示诊断结果。本发明实施例用来解释说明本发明,而不是对本发明进行限制,在本发明的精神和权利要求的保护范围内,对本发明作出的任何修改和改变,都落入本发明的保护范围。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1