APP下载

基于Savitzky-Golay滤波的双向门控循环单元神经网络汽轮机热耗率预测

2020-05-20马良玉王永军

科学技术与工程 2020年9期
关键词:汽轮机蒸汽建模

马良玉,王永军

(华北电力大学控制与计算机工程学院,保定 071003)

汽轮机热耗率是指每产生1 kW·h电能消耗的热量,通常作为反映机组运行热经济性的一项重要指标[1]。目前,汽轮机热耗率作为监测机组性能的重要方式得到了各电厂的普遍重视,准确预测热耗率对汽轮机组的安全、经济运行和优化控制具有重要的工程意义。汽轮机热耗率在机组运行过程中受到众多因素的影响,且各因素之间具有较强的耦合性和非线性,传统的机理建模方法很难满足现场的实际需求。随着人工智能技术的发展,汽轮机热耗率预测模型的研究取得了显著成果。张文琴等[2]采用偏最小二乘算法建立了汽轮机热耗率回归模型。牛培峰等[3-4]采用各种智能优化算法对快速学习网等建模算法的参数进行优化,并建立相应的热耗率预测模型。王惠杰等[5]采用偏相关分析法确定了汽轮机热耗率的主要影响因素,并将其作为黑箱模型的输入参数,建立了基于FOA-LSSVM算法的热耗率预测模型。李辉[6]采用在线支持向量回归算法建立了汽轮机热耗率回归模型,能够很好地适应在线应用。这些建模方法都取得了一定的预测效果,但由于没有充分考虑时序数据的时间相关性,对模型的预测精度产生了一定影响。

人工神经网络(artificial neural network,ANN) 具有很强的非线性函数拟合和自适应学习能力,有效解决了机理建模过程中计算量大和精度低等问题[7]。传统神经网络算法具有易陷入局部最优解、出现过拟合以及处理时序数据能力较弱等不足。循环神经网络[8](recurrent neural network,RNN)具有独特的自循环机制,能够将过去的信息用于当前的预测,有效解决了时间序列的依赖问题。门控循环单位(gated recurrent unit,GRU)网络是一种改进的循环神经网络,其特殊的网络结构能够有效保证信息在网络自循环中的传递,缓解传统循环网络因梯度消失带来的性能损失[9]。

火电厂机组运行是一个动态过程,针对传统建模方法没有充分考虑时序数据时间相关性的问题,借助某1 000 MW火电机组采集的真实历史数据建立汽轮机热耗率的双向GRU神经网络预测模型,并通过与其他算法建立的预测模型进行对比验证该模型的预测精度和鲁棒性。

1 GRU神经网络原理

1.1 循环神经网络

BP(back propagation)神经网络等前馈神经网络中的信息为单向传递,没有考虑数据之间的时序相关性,在一定程度上限制了网络模型的预测性能[10-11]。循环神经网络具有短期记忆功能,能够反映历史信息对当前状态的影响,更符合生物神经网络的结构。图1为典型的循环神经网络结构。图1中,xt和ot分别表示t时刻的网络输入和输出;ht为隐含层t时刻的状态;A为RNN的神经元。

o为网络输出;W、U分别为各层对应的权值图1 典型循环神经网络结构图Fig.1 Typical recurrent neural network structure

数据样本的信息在循环神经网络中有两条传递方向:①由输入层到隐含层再到输出层的单向传递;②由隐藏层到隐含层形成的闭环传递,构成自连接的记忆单元。RNN 的计算公式如式(1)、式(2)所示:

ht=tanh(Uxt+Wht-1+bt)

(1)

ot=softmax(Vht)

(2)

式中:U、W和V分别为各层对应的权值,b为偏置;tanh( )和softmax( )为非线性激活函数。

理论上传统循环神经网络能够对任意长度的时序数据进行处理,但当实际应用中的时间间隔较大时,RNN可能会出现梯度爆炸或梯度消失等结果导致建模失败[12]。

1.2 GRU神经网络

图2 GRU循环单元结构Fig.2 GRU recurrent unit structure

GRU网络神经元通过式(3)~式(6)更新状态。

rt=σ(Urxt+Wrht-1+br)

(3)

zt=σ(Uzxt+Wzht-1+bz)

(4)

(5)

(6)

式中:σ为sigmoid函数;○表示两个矩阵相应元素的乘积。rt为重置门;Ur和Wr为重置门的权重矩阵;br为重置门的偏置矩阵;zt为更新门;Uz和Wz为更新门的权重矩阵;bz为更新门的偏置矩阵;bh为隐含层的偏置。

由式(3)~式(6)可知,当rt=1、zt=0时,GRU神经网络即为传统的循环神经网络。

在处理实际问题时,当前时刻的状态可能不只与历史信息相关,未来的信息也会对其产生一定影响,只考虑单向信息会影响网络模型的预测性能。双向GRU神经网络[8,14](bidirectional gated recurrent unit,BGRU)由两层信息传递方向不同的循环网络组成,即在原GRU网络基础上增加一个按时间逆序传递信息的网络层,充分利用输入序列的上下文信息。按时间展开的BGRU神经网络结构如图3所示,其使用两个隐含层来提取过去和未来的信息,两个隐含层连接到同一输出层,当前状态的最终输出如式(7)所示。

图3 按时间展开的BGRU神经网络结构Fig.3 BGRU structure expanded by time

(7)

2 变量选取与数据处理

2.1 辅助变量选取

以某1 000 MW超超临界火电机组为研究对象,从现场分散控制系统(distributed control system,DCS)数据库中按采样周期为1 min选取正常工作时连续的2 500组历史运行数据进行仿真实验。

考虑到汽轮机热耗率的影响因素众多,为提高预测模型的训练速度与精度,建模时应选取与热耗率关联度更高的因素。汽轮机热耗率的计算公式为

HR=3 600[Dmshms+Dhrhhr-Dcrhcr-Dfwhfw-

Dshhsh-Drhhrh]/Pe

(8)

式(8)中:HR为汽轮机热耗率;Dms为主蒸汽流量;hms为主蒸汽焓值;Dhr为再热器出口蒸汽流量;hhr为再热器出口焓值;Dcr为再热器入口蒸汽流量;hcr为再热器入口焓值;Dfw为锅炉给水流量;hfw为锅炉给水焓值;Dsh为过热蒸汽减温水流量;hsh为过热蒸汽减温水焓值;Drh为再热蒸汽减温水流量;hrh为再热蒸汽减温水焓值;Pe为机组发电负荷。

由于该机组正常运行时过、再热蒸汽减温水流量很少,对机组热耗率影响较小,可忽略不计。此时给水流量近似等于锅炉主蒸汽流量,再热器入口蒸汽流量近似等于再热器出口蒸汽流量。因此可将式(8)简化为式(9):

HR=3 600[Dms(hms-hfw)+Drh(hhr-hcr)]/Pe

(9)

主蒸汽和再热器入口、出口蒸汽的焓值均可由相应的压力和温度表示,锅炉给水焓值也可采用其压力和温度来表示[4,15]。部分参数之间具有较强的相关性,选作输入变量对模型精度影响不大,反而会增加模型的训练时间。因此,结合式(9)最终选取表1所示的9个变量作为模型的输入变量,汽轮机热耗率为模型输出变量[16]。

表1 模型的输入与输出变量Table 1 Input and output variables of the model

2.2 数据预处理

SG(Savitzky-Golay)滤波器是一种广泛应用于数据平滑降噪的低通滤波器,通过最小二乘卷积实现局部区间的多项式拟合,能够有效去除数据的高频噪声。该方法有两个关键的参数:滑动窗宽N和多项式拟合阶数k。若N太长,会导致有效信号丢失;若N太短,则会影响降噪性能。k过高时可能会致使新噪声出现;k过低时则可能会导致信号失真。因此,应合理选取N和k的取值以实现随机降噪和保持有效信号的平衡[17]。SG滤波器实现数据降噪的基本原理如式(10)所示:

(10)

式(10)中:S为原始信号;s*为降噪后的信号;Ci为第i次的降噪系数;N为(2m+1)组数据的滑动窗宽;j为数据样本集中的第j个样本。

现场DCS中获取的数据样本往往具有较大的噪声,故采用SG滤波器对原始数据进行降噪处理。经过多次实验确定:SG滤波器的滑动窗宽N取31,多项式拟合阶数k取3。以汽轮机热耗率为例,其采用SG滤波器降噪的结果如图4所示。由图4可以看出,处理后数据的异常值明显减少,降噪效果显著。

图4 汽轮机热耗率降噪结果Fig.4 Noise reduction results of steam turbine heat rate

3 汽轮机热耗预测模型

3.1 建模与验证

采用Windows 10系统下的Python语言进行编程,通过人工神经网络开发库Pytorch实现BGRU网络模型的搭建。模型优化方法采用Adam算法[18];损失函数选用均方误差(MSE);非线性激活函数选用ReLU函数;初始学习率取0.01;训练次数为2 000次。采用dropout机制避免过拟合现象,其值设置为0.2。由表1可知,BGRU神经网络模型的输入和输出节点的个数分别为9和1。经过多次实验,隐藏单元设置2个GRU层,每层取12个节点。

为防止模型训练时各变量因量纲不同而影响模型的精度和泛化能力,在建模前先对数据样本进行标准化处理,转换为[0,1]的数。将标准化后的2 500组数据中的前2 000组作为训练样本建立BGRU神经网络汽轮机热耗率预测模型,并与传统RNN预测模型作对比。两种模型的预测结果及相对误差曲线如图5所示。由图5可以看出,两种神经网络模型的预测值都能以较高的精度逼近真实值,BGRU的误差曲线波动范围更小。

图5 模型预测结果及相对误差曲线Fig.5 Model prediction results and relative error curves

为测试BGRU神经网络热耗率预测模型的泛化能力,采用剩余500组样本数据作为测试集,将该模型的预测结果与BP神经网络、传统RNN等预测模型进行对比分析,得到测试集的预测结果如图6所示。由图6可以看出,与其他2种算法相比,BGRU神经网络汽轮机热耗率预测模型能够更好地跟踪热耗率真实值的变化趋势,泛化能力更强。

图6 模型测试结果对比Fig.6 Model test result comparison

为进一步分析BGRU神经网络预测模型的预测精度与泛化能力,采用平均相对误差(MAPE)、平均绝对误差(MAE)以及相关系数(R2)等作为评价指标对3种模型测试集的预测结果进行评价,评价结果记录如表2所示。

由表2可知,针对测试集,BGRU神经网络热耗率模型预测结果的各项指标均比其他2种预测模型更好。其中,相关系数更是高达0.941 9。综上所述,BGRU模型的泛化能力更强、预测精度更高。

表2 3种模型的测试集性能对比Table 2 Comparison of performance of 3 models

3.2 鲁棒性分析

汽轮机热耗率预测模型应该具有较高的鲁棒性,即当输入变量发生小幅度随机扰动时,预测模型应该依然能够保持一定的预测精度[5]。因此,采用在输入变量原始数据上增加扰动的方法测试BGRU神经网络汽轮机热耗率预测模型的鲁棒性。

给测试样本集的主蒸汽流量和给水温度分别附加5%的扰动量,预测模型的相对误差曲线如图7所示。

图7 模型预测相对误差曲线Fig.7 Model prediction relative error curves

由图7可知,主蒸汽流量和给水温度分别附加5%的扰动后,BGRU神经网络预测模型的计算值仍然能够以较高的精度跟踪真实值的变化。两组扰动实验的预测相对误差均在±2%以内,主蒸汽流量扰动对预测模型的影响更大。因此,小幅度扰动对BGRU神经网络模型的影响较小,该模型具有较强的鲁棒性。

4 结论

(1) 建立了基于双向GRU神经网络的汽轮机热耗率预测模型,该模型的建立为汽轮机组的运行经济性优化奠定了基础。

(2) 采用Savitzky-Golay滤波器对所选输入、输出变量的现场真实数据进行降噪处理,降噪后的数据异常值明显减少。

(3) 利用处理后的数据建立汽轮机热耗率预测模型,并与BP神经网络及传统循环神经网络等不同算法建立的预测模型进行对比,验证了双向GRU网络模型的建模精度与泛化能力。

(4) 在主蒸汽流量和给水温度两个变量原始数据的基础上分别附加5%的扰动量进行测试,表明双向GRU神经网络热耗率预测模型对扰动具有良好的鲁棒性。

猜你喜欢

汽轮机蒸汽建模
300MW和600MW等级汽轮机通流改造经济性研究
基于FLUENT的下击暴流三维风场建模
基于自编码神经网络的汽轮机故障诊断
煤、铁、蒸汽与工业革命
联想等效,拓展建模——以“带电小球在等效场中做圆周运动”为例
车坛往事3:蒸汽时代步入正轨!
求距求值方程建模
汽轮机轴封风机疏水管线改造
基于PSS/E的风电场建模与动态分析
蒸汽闪爆