基于Mini-batch神经网络的船舶柴油机风险等级预测
2018-08-03尚前明刘治江邓晓光
尚前明,王 潇,曹 召,刘治江,邓晓光
(武汉理工大学 能源与动力工程学院,湖北 武汉 430063)
近年来,随着“智能船舶”概念的提出,船舶柴油机的自动化程度及复杂程度也越来越高,与之相伴的是设备故障越来越复杂,因设备故障导致的机务风险也变得越来越大,甚至会导致重大机损和海难事故。故障预测和健康管理技术大多停留在理论研究层面,在实际的工程应用中鲜有涉及[1]。
本文在阐述船舶机务风险的基础上,宏观分析与柴油机风险状态密切相关的因素。利用Mini-batch神经网络对柴油机健康状态进行风险等级划分,柴油机的风险等级状态对维护管理人员有着重要的指导意义,也能为评估人员提供直观、科学、合理的依据。并且提前预知设备健康风险状态,进一步降低船舶发生重大机务事件及事故的可能性。
1 基于Mini-batch神经网络船舶柴油机风险等级预测框架
1.1 风险等级预测基本理论
预测系统的功能是进行必要的未来预测以及预知潜在故障变化发展的踪迹和趋势,预测分析必须着眼与未来时间内事件可能发生的概率和发展趋势[2]。船舶柴油机健康风险极富弹性尺度,存在形式、发展过程、触发条件差别很大,传统的机务管理没有综合整体因素对船舶柴油机进行有针对的智能维护,对柴油机的整体健康状态存在一定的模糊性,因此应该合理划分风险预测的类别,船舶机务风险预测模式主要包括以下几种。
1)根据现有信息进行趋势预测。即用科学的统计方法对事故的发展状态进行定量预测。预测方程如公式(1)所示。
Y=f(t),
(1)
式中:Y是预测变量;t是时间。
2)对不同指标因素预测相互影响效果,主要是通过关联分析和跟踪设备的监测数据,预测某个受影响变量的状态,其预测方程如公式(2)所示。
Y=f(x0,x1,…,xn),
(2)
式中:Y是预测变量;x0,x1,…,xn为相关变量。
3)根据相关征兆预测可能出现的结果。通过对监测到的相关征兆信息进行状态识别,归纳相应的结果。
4)对发生频率较低,偶然事件的发生状态进行预测。例如预测柴油机突发性事故的概率、发生时间、持续时间以及产生的影响等。
本文柴油机健康状况风险预报采用的模式主要为对因素相互影响的预测和对征兆可能的结果进行预测两种模式,采用的预测步骤如图1所示。
图1 船舶柴油机风险等级预测步骤图
1.2 基于Mini-batch神经网络的方法
在过去的机务管理中,管理人员一般采用统计图表的方法来进行观察,直观预测一些偶发事件,这些预测太主观,受不确定影响比较大。相比之下,神经网络在处理这类复杂的多因素问题中具有良好的表现,容错性及自组织能力比较强,因此采用神经网络算法来进行预测。
BP-神经网络即反向传播网络,实际上是由一个个单个感知器组合而成,由输入层经过层层的特征转换,最后得到一个权重作为特征输出,中间的神经元作为特征转换函数,多个非线性特征转换函数使神经网络有着强大的拟合能力。典型的神经网络结构如图2所示。
图2 典型神经网络结构图
图2中,x1,…,xn表示输入值;y1,…,ym表示输出值;wij,…,wjk表示神经元之间连接的权值。
BP-神经网络通过误差反向传播通过梯度下降算法迭代进行优化,梯度下降算法是通过沿着目标函数的一阶导数负方向来通过一定的步长η迭代达到目标函数的极小值点,如公式(3)所示。
(3)
式中:η表示训练步长;ω表示相关参数。
采用全量梯度下降法每次下降学习都是用整个训练集,缺点很明显。每次学习需要使用整个训练集,消耗很多计算空间和资源。针对要解决的对柴油机风险状态预测模型,使用整个样本空间进行迭代训练会使样本之间没有差别。实际情况下要想使预测模型变得准确,应该基于时间序列或者典型样本数据给予不同的权重,这样训练的模型泛化能力会更好,预测更加精准。针对上述问题,对上述全量梯度下降法进行改进。
随机梯度下降采用每次随机抽取一个样本点的方法进行样本训练,通过这种方法可以减小每次迭代过程的计算量,虽然这种方法最终还会收敛到全局最优点,但是每次只抽取一个样本值会带来一定的波动。综合考虑随机全量梯度下降和随机梯度下降的点,采用每次随机抽取几个样本进行梯度下降,即Mini- batch梯度下降,如公式(4)所示。
(4)
式中:xi:(i+m)表示每次梯度下降用所用的第i到(i+m)个样本;yi:(i+m)表示第i到(i+m)个样本的标签值。
Mini-batch梯度下降综合了全量梯度下降和随机梯度下降的优点,更重要的是使用Mini-batch梯度下降,我们可以根据所获得训练样本的时间或者训练样本的典型程度的不同,在训练样本集上做一个划分,在模型训练初期,使用前面的非典型样本训练,后期使用典型数据进行迭代训练,这样使得模型的准确度在时间维度上更与真实值相接近。而且可以进行在线模型训练,在获得新的训练样本时,或者需要多模型进行调整时,使用新的数据进行优化即可。
2 船舶柴油机健康风险等级计算
船舶柴油机风险等级预测实质上是用BP-神经网络解决一个分类问题,主要分为两个步骤:①确立与柴油机风险有关的因素及对这些信息数据的处理;②采用合适的隐含层,根据样本特性进行处理,训练成泛化能力较强的模型。
本文提出利用Mini-batch梯度下降神经网络算法对船舶柴油机健康风险等级预测算法流程主要包括以下几个步骤。
1)数据采集。从故障统计指标、设备性能指标、安全保障指标这3个因素来综合考虑柴油机健康风险因素。
2)输出健康等级确定:根据船公司的习惯方法对柴油机进行级别划分。
本研究以市售泡菜为研究对象,从中筛选出乳酸菌,研究其基本生理生化特性、产酸性能、降解亚硝酸盐的能力以及耐酸性,进而筛选出各方面性能都比较优异的乳酸菌株,并对其采用API 50 CHL碳水化合物的发酵产酸试验及分子生物学技术进行鉴定。本研究可以丰富乳酸菌菌种资源,并为其在食品工业中的应用奠定基础。
3)训练样本的获取及处理。根据机务统计数据及典型机务风险获取训练样本,根据合理的映射关系将“语言变量”转化为“数值变量”并经过一定的转换获得训练样本集。
4)对训练样本进行PCA降维处理,并根据收集得到的典型机务数据统计时间序列对样本进行划分成一个个小组。
5)根据经验公式设计隐含层个数,进行模型训练。根据验证集来证明模型的准确性。
2.1 船舶主机健康风险因素的确立
随着现代造船技术、船员管理水平的提高,使现代船舶设备风险的内涵和外延都发生了重大变化。因此在构建输入因素指标时,要充分考虑现有的评价指标,并全面收集事故发生时的背景、过程以及造成的影响,遵循敏感性、独立性、外推性和规范性[3]。
1)敏感性。参数必须综合全面地代表船舶柴油机运行状况。
2)独立性。参数性能比较稳定、波动小,且不易受到外界干扰。
3)外推性。参数应能够随机器性能的变化和时间流动而随之产生相应的变化。
4)规范性。关键指标取值范围和预警等级要符合相关法律法规和船级标准。
根据上述分析,结合人、机、环境因素和参考有关船舶风险评价有关的相关文献[4],进一步对相关指标进行选择,最终选取了对船舶主机风险状态影响因素较大的十一个指标因素,具体如下。
1)故障统计指标。柴油机的故障统计指标反映了柴油机各项性能指标的维持能力。主要包括故障率、设备维修度、修复率。
(1)故障率。故障率指的是设备在某一时刻没有发生故障,在这一时刻单位时间内发生故障的概率。
(2)维修度。维修度指的是设备在发生故障之后能够快速修复到正常状态的能力,也是评价柴油机维修难易程度的指标之一。
(3)修复率。修复率表示设备在某个时刻的修复状况,具体指直到修理时间T时还未得到修复的设备,在T时刻之后的单位时间内被修复完好的概率。
2)技术性能指标。主要有设备新度、设备有效度、运行参数以及维护保养的相关指标。
(1)设备新度。即反映机器设备的老旧程度,可用新度系数来表示。
(2)设备有效度。反应机械设备运转功能完备程度。
(3)运行参数。由运行参数偏差来反映,即设备运行参数实际值与理论值的偏离。
(4)维护保养状况。反映维修决策方案的科学性和设备的备件情况,修复工艺等指标因素。
3)安全保障指标。反映设备的监测与控制措施,对突发性故障的应急反应能力,以及对船舶柴油机工作系统的干预度即有效保养措施。主要包括平均修复时间、备件系统供应合格度、应急反应能力和工作环境的恶劣程度。
(1)供应系统合格度。该项指标的计算可根据船舶对供应备件、物料、油料等物质的合格率反馈所得到。
(2)工作环境劣化度。综合评价指标,根据设备总体状况和周围的工作环境来共同确定。
(3)平均修复时间。指因设备发生故障,处理故障修理的平均时间。
(4)应急反应能力。综合评价指标,综合反应处理中人、机、环境的应急协调能力。
2.2 输出健康等级确定
由于不同的船舶的主机风险状态差异很大,不同的船舶对设备的健康状态要求也不一样,统一的健康标准很难建立,本文的柴油机健康等级评定采用船用公司的习惯方法,将设备的健康标准必须划定在一个合理的范围内。对船舶设备健康状态分为5个级别:A为健康区域、B为良好区域、C为健康警戒区域、D为危险区域、E为特别区域(健康状况失控)。见表1。
表1 柴油机风险等级表
2.3 训练样本的获取及处理
训练样本中的健康等级输出主要根据机务统计数据获得或是用典型机务风险案例获得,主要有以下3种途径。
1)从已经发生过的设备风险事故中获得。
2)从模拟设备健康状态恶化的过程中获得。
3)从国内外发生过的典型故障案例中收集获得。
在设备健康状态评估中为了获取与柴油机设备健康状态密切相关的指标因素,常常专家调查、主观分析法、概率分析法获得基本的信息和数据,并采用一定方法对这些数据进行分析和处理。
上述确定的11个指标因素,有的并不是数值变量,需要通过合理的映射将“语言变量”转化为“数值变量”,以此建立的以此建立的各种输入指标的模糊化语言处理以及相应量化分值如表2所示。
表2 指标因素语言量化分值表
由于上述指标因素与输出等级关系不一致,需要对上述指标因素一致化处理,处理公式为:
因素指标与输出等级的关系是正相关时:
(5)
因素指标与输出等级的关系是负相关时:
(6)
式中:A0为输入样本的初始因素的初始量化值;A为转化后的值。
尽管经过一致化处理后的样本值都转化为正相关关系,仍需要根据模糊数学中的“指标值越大隶属度越大”原则,根据隶属度的大小对上述处理后的样本值进行修正,使各因素指标与评价标准保持一致,将其映射范围保持在1~55之间,体现在数学上就是:
(7)
mj=4×rj+1,
(8)
式中:rij、rj均为隶属度;mj为评价分值;xij、xi,max、xi,min分别表示样本中指标的数值,所有样本集中指标的最大值和最小值。
以某船舶柴油机为例进行信息收集,根据上面定义的方法及定义的各项等级指标建立训练样本集,部分训练样本集如表3所示。
表3 部分训练样本
2.4 PCA降维及训练样本分组处理
为了降低模型复杂度,提高模型泛化能力,首先对训练样本集进行PCA降维处理,经过主成分分析过后,得到前4个主成分的贡献率为95.411%,包含了绝大部分的原始信息,选用前4个主成分作为神经网络输入。
由于样本集通过机务统计案例或典型风险案例获得,在时间上跨度很大,可能时间较早的数据已经不太适合现有的指标体系,采用Mini-batch梯度下降法,可以实时对模型进行更新。本文根据时间序列对训练样本集进行划分,时间较早的样本在模型训练前期赋予比较大的权重,比较新的样本在训练后期赋予较大的权重。训练前期抽取到前一部分样本的概率比较大,当训练误差小于5%时,后一部分样本随机抽到的概率比较大,这样对训练数据集进行处理保障了模型更好的泛化效果。
由上文确定的5个风险状态确定的5个等级输出矩阵为:状态A=(1,0,0,0,0)代表柴油机处于健康区域,状态B=(0,1,0,0,0)代表柴油机处于健康状态良好区域,C=(0,0,1,0,0)代表健康状态警戒区域,D=(0,0,0,1,0)代表危险区域,E=(0,0,0,0,1)代表设备失控,处于极度危险状态。
2.5 隐含层结果设计及计算结果
文献[5]研究表明,隐含层的个数存在一个最佳值兼顾训练时间和容错性。隐含层节点设计常常采用如下的极端公式:
(9)
式中:n为网络输入节点数;m为网络输出节点数;p为隐含层节点数;r为常数,r=1,2,…,10。
本文采用这种方法,输入节点个数n=4,m=5,P的范围在4~14之间,经过多次训练,通过验证集验证模型误差,在训练时间和训练误差之间进行平衡,最终隐含层节点数为11个,神经网络结构为4-11-5。设置好相关的参数变量后用Matlab进行编程。输入训练样本集训练,用测试样本集选择效果较好的模型。
经过了39步迭代训练,达到了目标误差的收敛要求。最后以5组验证数据作为检验样本来检验训练好的神经网络柴油机风险等级预测结果,如表4所示。
表4 柴油机风险等级预测结果
从表4可以看出,用训练后的网络对各组输入矢量进行预测后,得出的输出值并不是理想的0和1,造成这种现象的原因是由于训练样本点过少和网络模型不够复杂,太复杂的模型容易造成过拟合。这种输出结果已经和理想输出很接近,完全可以依靠此模型判断船舶柴油机健康风险状态,从而进行风险等级状态辨识。
3 结束语
针对现有的故障预测及设备健康管理技术大多停留在理论层面,本文提出采用神经网络模型对柴油机风险状态进行预测分级。系统分析与柴油机风险状况有关的指标因素,采用科学合理的预测模型比过去管理人员采用单一的管理方法进行评估更具有科学性。另外本文针对所获取训练样本时间跨度大,预测模型要随着时间的推移进行实时更新等因素,采用采用Mini-batch梯度下降法,相比于全量梯度下降和随机梯度下降,Mini-batch更适用于训练样本时间跨度大,模型需要随着时间的推移进行更新。试验表明其在柴油机风险预测中具有良好的效果与准确性。本文只是做了风险状态等级的预测,管理人员根据风险等级状态进行有针对性的维护管理,离真正意义上的智能维护管理还有一定的提高空间。