您的浏览器不支持JavaScript,请开启后继续

China Heating,Ventilation and Air Conditioning
联系热线:010-64693287 / 010-64693285

基于改进BP神经网络的空调水系统管网泄漏诊断方法

  • 作者:
  • 中国暖通空调网
  • 发布时间:
  • 2021-07-30

同济大学机械与能源工程学院 张宇航 李铮伟

       【摘  要】基于梯度下降法的标准BP神经网络往往存在收敛速度慢、稳定性差且易陷入局部极值等问题,为此本文提出了一种基于L-BFGS算法改进的BP神经网络的空调水系统管网泄漏诊断方法。当系统监测到补水流量超过设定阈值时,系统压力传感器实时监测数据经过一定的数据处理输入管网诊断模型,模型输出即为具体的发生泄漏的管段编号。为了获得训练模型所需的学习样本,本文使用Dymola系统平台搭建泄漏管网模型,通过该模型可实现对不同泄漏工况的管网水力仿真。案例结果表明:基于改进BP神经网络的管网泄漏诊断模型在迭代速度和诊断精度两方面的性能表现均显著优于标准BP神经网络模型,该方法能够对空调水系统管网中发生泄漏的管段编号进行准确定位。

       【关键词】空调水系统管网;泄漏诊断;BP神经网络;L-BFGS算法

0 引言

       管网作为空调水系统的基本组成部分之一,承担着输送冷热源产生的冷量或热量并分配至各个用户末端的重要任务。然而现实情况中受到管道材质、布管环境、施工方法及运维管理等诸多因素的影响,各种管网故障屡见不鲜,其中泄漏故障就是最为常见的管网故障的一种[1]。由于空调水系统管网漏失的是经高价软化处理的冷水或热水,管网泄漏不仅会造成水资源的无谓流失,而且也将导致系统产生严重的能耗浪费。此外,泄漏管道如果没有及时处理极有可能酿成爆管事故进而给人民的生命财产安全带来巨大的威胁。因此,为了保证空调系统安全可靠地正常工作,提高管网的运行质量,开展空调管网泄漏故障诊断方法的研究具有十分重要的意义。

       目前在国内,人工检漏和声学检漏的方法是空调水系统管网泄漏诊断的主要方法[2],这种方法不仅费时费力,而且容易受到外界因素的影响,可靠性较差。尤其是伴随着区域供冷供热系统的快速发展,其管道多采用直埋敷设的布管方式,这更是给传统检漏方法带了来极大的困难。现有的针对空调水系统管网泄漏诊断方法的研究仍然十分有限且应用对象多集中在区域集中供热系统。石兆玉等[3]根据矩阵理论两向量平行时内积最大的原理提出了用于热网故障诊断的故障空间法,该方法可以比较准确地判断管网发生泄漏的情况,但是在进行泄漏诊断时却有可能产生误判;秦绪忠等[4]提出了一种用于区域热网故障诊断的方法——RC2法,该方法可以同时实现管网阻力特性系数辨识和管网堵漏以及传感器故障诊断,然而在管网工况相近时该方法不易收敛;郑德忠[5]建立了一种基于模糊推理识别管网运行状态的数学模型,然而基于模糊推理的方法容易受到人的主观因素的形象从而影响其诊断精度。

       随着计算机技术的不断发展,进入2010年以来,相关研究开始尝试使用机器学习领域的相关方法解决管网系统泄漏故障诊断问题。雷翠红等[6] 采用人工神经网络的方法建立了基于二级 BP 神经网络的供热管网泄漏诊断系统并通过实际案例验证了该方法的有效性;段兰兰等提出了一种基于遗传优化的BP神经网络供热管网诊断模型,实验结果表明该模型性能相较传统BP神经网络模型显著提升;Xue等[7]基于XGBoost建立了针对区域热网的泄漏诊断模型,案例研究显示该模型能够及时且准确地实现区域热网的泄漏故障诊断。

       由上述文献综述不难发现, BP神经网络由于其强大的非线性映射能力,是现有的管网泄漏故障诊断研究中最常用的方法之一。然而,基于梯度下降法的标准BP神经网络往往存在收敛速度慢、稳定性差且易陷入局部最优等问题[8],因此如何改进BP神经网络使其在管网泄漏故障诊断中具有更好的表现成为了如今的研究热点。为此,本文提出了一种基于L-BFGS算法改进的BP神经网络的空调水系统管网泄漏诊断模型,使用该模型可以快速地对管网系统内发生泄漏的管段进行准确定位。

1 BP神经网络及L-BFGS改进算法

       BP(Back Propagation)神经网络是一种按照误差反向传播算法训练的多层前馈神经网络,是目前应用最广泛的神经网络之一。它由一个输入层,一个或多个隐藏层和一个输出层构成,其基本结构如图 1所示。标准BP神经网络的基本思想是基于梯度下降算法,利用梯度搜索技术,在迭代过程中不断调整输入节点与隐层节点的连接强度和隐层节点与输出节点的连接强度以及阈值,以期使网络的实际输出值和期望输出值的均方误差值为最小[9]


图1 BP神经网络基本结构

       BP神经网络最突出的优点在于其具有优秀的非线性能力和泛化能力以及使用的易适性[9],因此非常适合用于解决故障诊断领域的相关问题。但是基于梯度下降法的传统BP神经网络也存在一些显著缺陷[8]:首先,由于BP网络训练中稳定性要求学习速率不能太大,所以导致网络模型的训练速度很慢,对于一些复杂的非线性问题往往需要花费大量的时间。此外, BP神经网络在学习过程中经常陷入局部极小值而导致而无法获得全局最优值。为了克服上述问题,许多研究人员对其进行了深入的研究并提出了许多针对性的改进的算法,例如附加动量法、自适应学习速率法、弹性BP方法(RPROP)、共轭梯度法、拟牛顿算法(quasi-Newton)、Levenberg-Marquardt(LM)算法等[10]

       本文采用基于L-BFGS(Limited-memory BFGS)算法对BP神经网络加以改进。L-BFGS算法是BFGS(Broyden–Fletcher–Goldfarb–Shanno)算法的一种近似,本质上都是一种拟牛顿算法。牛顿法及拟牛顿法均是机器最常用的数字优化算法之一。区别于使用一阶偏导求得最优权重的梯度下降法,牛顿法的本质思想是采用其损失函数的二阶偏导数寻找更好的训练下降方向,损失函数的二阶偏导可以使用海塞矩阵H(Hessian matrix)来表示[11]。牛顿法在搜索方向上较梯度法有改进,它不仅利用误差函数在搜索点的梯度,而且还利用了它的二阶导数矩阵[8]。而且由于牛顿法采用二阶收敛,因此与一阶收敛的梯度下降法相比其迭代次数更少,收敛速度更快,但是牛顿法的每一步迭代过程都需要对海塞矩阵及其逆矩阵进行精确求值,因此其计算相当复杂,需要很大的计算量及存储量,当维数很大时这个问题更为突出。为了简化这一计算过程,拟牛顿法应运而生。拟牛顿法的基本思想是在牛顿法的基础上引入了海塞矩阵的近似矩阵从而避免了每次迭代都计算海塞矩阵的逆的过程[11]。不同的构造方法就产生了不同的拟牛顿法,其中BFGS算法是公认的数值效果最好的拟牛顿法之一[12]。由于BFGS算法迭代过程中使用不含二阶导数的单位矩阵近似逆海塞矩阵,从而显著降低了每步迭代所需的计算量,然而存储近似矩阵仍需要占用大量的内存空间。为了解决内存空间不足以储存计算过程中产生的庞大矩阵的问题,研究学者在BFGS算法的基础上进行了进一步简化得到了L-BFGS算法[13]。与BFGS算法相比,L-BFGS算法不再存储完整的近似矩阵,而是存储计算过程中的向量序列,而且向量序列也只保存有限的个数,通过这种近似计算的改造方法,L-BFGS算法显著降低了迭代过程中所需的内存开销[14]。综上所述,L-BFGS算法既具备牛顿法收敛速度快的特点,又减少了迭代过程所需的内存空间,因此L-BFGS算法非常适用于解决大规模的数值优化问题。

2 基于改进BP神经网络的空调水系统管网泄漏诊断方法

       为了维持循环水系统的压力稳定,防止倒空、汽化、超压等现象的发生,空调水系统必须安装一定的定压补水装置。当管网系统发生泄漏故障时,循环水系统压力持续下降,当定压点压力低至定压补水装置预设压力的下限时,补水装置向系统供水直至压力达到预定的压力上限值。如果系统持续发生泄漏,那么定压补水系统为了维持定压点的压力稳定也将持续向系统补水。因此,循环水系统的补水量可以作为管网系统是否发生泄漏故障的评价指标[7]

       本文基于改进BP神经网络的空调水系统管网泄漏诊断方法流程如图 2所示。


图2 基于改进BP神经网络的空调水系统管网泄漏诊断方法流程

       该故障诊断方法流程可以进一步细分为如下的三个阶段:

       第一阶段为故障检测。数据采集系统实时监测并记录空调水系统的补水流量,当补水流量在监测时间内持续超过设定阈值(如系统总容量的1%)即可认为空调水系统管网发生泄漏故障并做出相应报警相应,否则认为管网系统在正常工况下运行。

       第二阶段为模型训练。根据空调水系统的设计信息搭建相应的管网模型,管网系统在正常工况下的运行数据可以作为管网模型的校核依据。使用校核满足要求的管网模型对不同的泄漏工况(不同泄漏管段、不同泄漏量及同一管段不同泄漏位置)进行仿真可得管网泄漏诊断模型学习所需的训练样本,进而通过对不同泄漏工况的监测点运行数据进行学习即可建立针对目标管网系统的泄漏诊断模型。该模型的输入特征为系统内各压力传感器的实时运行数据,输入层神经元数目即为监测点个数;模型的输出特征为发生泄漏的管段编号,输出层神经元数目即为可能发生泄漏的管段数目。

       第三阶段为故障分离。当第一阶段检测到系统发生泄漏故障时,管网系统内各监测点运行数据经过数据预处理输入第二阶段中生成的管网泄漏诊断模型,模型经过计算输出管网系统内发生泄漏的管段编号。

3 管网泄漏工况仿真模型

       学习数据的特性和数量直接影响机器学习模型的性能,通常来说,训练数据越全面丰富,针对这些训练数据产生的模型的性能越为理想。然而现实条件下由于各种因素的影响,通过实际测试的方法获得大量且全面的训练数据是非常困难甚至是几乎不可能的,因此本文考虑采用模型仿真的方法获得神经网络学习所需的训练数据。使用模型仿真的方法不仅可以获得管网在不同泄漏工况条件下的运行数据,而且有效避免了系统噪声、测量误差等干扰因素对神经网络学习效果的影响。

       本文中管网泄漏工况仿真模型使用Dymola系统仿真平台进行搭建。Dymola是一款基于Modelica语言的多学科系统建模仿真工具。它的基本思想是使用通用的公式、对象和连接,允许模型的开发者从物理的角度而非数学角度来进行建模,并且引入了图形化理论算法和符号算法,在模型平台执行过程中把模型变为数字求解器可以接受的形式[15]。Dymola拥有机械、电气、控制、气动、液压、传动系统、热力、车辆动力、空调等不同领域的模型库,因此它具有独特的多领域建模和仿真能力。Dymola中的模型库包括Modelica基础库和专业库,其中Modelica基础库中的Modelica.Fluid为一维流动流体管网面向设备的建模提供了丰富的组件与接口[16],所以能够满足空调水系统的建模和仿真需求。

       由于Dymola的模型库不具备泄漏管道仿真模型,因此进行泄漏工况的管网仿真首先需要建立泄漏管道仿真模型。基于Dymola系统仿真平台建立管道泄漏工况仿真模型如图 3所示。模型假定每根管道至多只有一处发生泄漏,首先将发生泄漏的管道根据泄漏点所在位置划分为“pipe1”和“pipe2”两条管道,两条管道之间采用三通进行连接,管道外接一个可自行设定流量的“负流量源”,最后将上述所有部件“封装”成为一个新的元件作为管道泄漏仿真模型。这样,通过设定“负流量源”的流入流量以及各分管长度占总管长度的比例即可确定管道的泄漏量和泄漏点在管道上的具体位置。


图3 管道泄漏工况仿真模型

       使用此管道泄漏仿真模型进一步搭建空调水管网系统模型,模型校核无误后即可进行管网在不同泄漏管段、不同泄漏量及不同管道泄漏位置条件的水力仿真,进而获得神经网络学习所需的训练数据。

4 案例研究

       4.1 案例描述

       案例选取如图 4所示的区域供冷系统的一级管网,该系统为一次泵变流量系统,系统内共有5个用户,20条管段。各管段长度均为100m,当量粗糙度均为0. 1mm。冷源和各用户的设计压力损失均为30000kPa,冷源和各用户进出水口均安装压力传感器,冷源出水口和各用户进水口均安装流量传感器。系统内各用户均安装两通调节阀,在负荷变化时能够自动对阀门开度进行调整以满足各自的设定负荷,设计工况下,各用户的流量均为30m3/h。循环水泵定频运行,其流量-扬程特性方程如式(1)所示。系统定压点设置在循环水泵的吸入侧,定压点压力设置为10000Pa。

       ΔP=-70276800×Q2+3718814×Q+128108.75         (1)

       式中,ΔP为水泵扬程,单位为Pa;Q为水泵流量,单位为m3/s。


图4 区域供冷管网系统图

       4.2 建立管网泄漏诊断模型

       为了获得管网泄漏诊断模型训练所需的学习数据,本文使用基于Dymola仿真平台搭建的管网仿真模型对不同的泄漏工况(泄漏位置及泄漏量)进行仿真计算。案例假设管网内至多只有一处位置发生泄漏,对于系统中的每一根管道,分别选取距离管段起点的距离占此管段总长度的比例为0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9的位置作为泄漏点,然后对于同一泄漏点再分别设定其泄漏量为系统总循环水量的1%,1.5%,2%,2.5%,3%,3.5%,4%(根据《暖通空调》(第三版):正常条件下补水装置的补水量取系统循环水量的1%,事故补水量为正常补水量的4倍[17])。由于该案例管网系统共有20条管段,因此对上述所有泄漏工况进行模拟,即可获得1260组泄漏样本数据。

       为了加快模型的收敛速度,方便数据处理,需要对模拟生成的泄漏样本数据进行归一化。本文采用最为归一化方法中最为经典的最大最小归一化 (min-max normalization)方法对泄漏样本数据进行处理,其原理如式(2)所示。通过此方法放缩后,原始数据进行线性变换映射到范围为[0,1]的新区间。

                (2)

       神经网络隐藏层节点数为14,隐藏层的激活函数选用双曲tanh函数,最大迭代次数为106,收敛精度为0.0001。为了对比传统BP神经网络和改进BP神经网络训练获得的管网泄漏诊断模型的分类效果,本研究采取十折交叉验证的方式对所有样本进行训练与测试,即将样本数据集随机均分为10份,每次选择其中1份作为测试集,剩余9份作为训练集,分别使用传统BP神经网络和改进BP神经网络进行训练与测试,统计每组的训练时间及测试结果。经计算,对于10组数据样本,传统BP神经网络平均训练时间为21.77s;基于L-BFGS算法改进后的BP神经网络训练时间为13.36s。

       4.3 诊断结果分析

       图 5展示了基于标准BP神经网络的空调水系统管网诊断模型和基于L-BFGS算法改进后的BP神经网络的空调水系统管网诊断模型在十折交叉验证中的性能表现。图 5中的实点表示不同的神经网络模型基于每组的训练样本训练获得的诊断模型在测试集上的分类准确率,虚线代表10组诊断准确率的平均效果。由图可以发现,基于标准BP神经网络的空调水系统管网诊断模型的平均分类准确率为87.22%,而于基于L-BFGS算法改进后的BP神经网络的管网诊断模型的平均分类准确率为98.73%,采用改进BP神经网络的空调水系统管网诊断模型的整体性能表现相比基于标准BP神经网络的管网诊断模型显著提升。


图5 管网泄漏诊断模型诊断准确率

       为了能够更为清晰地展现管网泄漏诊断模型针对不同类别的应用效果,本案例使用混淆矩阵的方式呈现两种故障诊断模型的分类结果。混淆矩阵是机器学习中总结分类模型预测结果的情形分析表,以矩阵形式将数据集中的记录按照真实的类别与分类模型预测的类别判断两个标准进行汇总。混淆矩阵的行表示样本数据的真实类别,列表示样本数据的预测类别[18]。因此,混淆矩阵主对角线上的数值代表了模型预测正确的样本数目,而其他位置上的数值则表示模型分类错误的样本数目,分布在主对角线上数值越多而其他位置上的数值越少说明该分类器的分类效果越好。基于传统BP神经网络的管网泄漏诊断模型和基于改进BP神经网络的管网泄漏诊断模型在测试样本上的诊断结果混淆矩阵如图 6所示。
 
       (a)基于传统BP神经网络的管网泄漏诊断模型

       (b)基于改进BP神经网络的管网泄漏诊断模型


 

(a) 基于传统 BP 神经网络的管网泄漏诊断模型

(b) 基于改进 BP 神经网络的管网泄漏诊断模型
图6 管网泄漏诊断模型分类结果混淆矩阵

       由图 6可见,虽然两种模型从整体来看均能够实现基本的空调水系统管网泄漏故障诊断功能,但是针对一些特定的类别(例如管段L2、L12、L13及L14),基于传统BP神经网络的故障泄漏诊断模型的诊断准确率显然难以满足管网泄漏故障的诊断要求,实际应用过程中很可能发生误判,而基于改进BP神经网络的管网泄漏诊断模型虽然也有部分样本分类错误,但是无论是针对整体还是针对特定类别的分类准确率都显著高于基于传统BP神经网络的故障泄漏诊断模型,因此基于L-BFGS算法改进的BP神经网络的管网泄漏诊断方法具有更高的实际应用价值。

5 结论

       (1)本文提出了一种基于L-BFGS算法改进的BP神经网络的管网泄漏诊断方法,该方法通过监测系统补水流量时间系列判断管网是否发生泄漏故障;当报警系统监测到系统发生泄漏时,系统所有传感器的实时监测数据经处理输入基于改进的BP神经网络的管网泄漏诊断模型,即可输出发生泄漏的具体管段编号。

       (2)搭建管网泄漏诊断模型需要尽可能多的故障样本,为了获取足够的泄漏工况管网仿真数据,使用Dymola系统建模仿真平台搭建管道泄漏仿真模型。根据实际空调水系统管网拓扑结构进一步搭建管网仿真模型即可进行空调水系统管网泄漏工况仿真。

       (3)案例研究结果表明:与传统的基于梯度下降法的BP神经网络的管网泄漏诊断模型相比,基于改进BP神经网络的管网泄漏诊断模型的平均训练时间减少了38.63%,诊断准确率提升了11.51%。由此可见,基于L-BFGS算法改进的BP神经网络管网诊断模型在收敛速度和诊断性能两个方面的表现均有显著提高,该方法可以在空调水系统管网泄漏诊断中得到有效应用。

参考文献

        [1] 雷翠红. 供热管网泄漏故障诊断的研究[D]. 哈尔滨工业大学供热、供燃气、通风及空调工程, 2010.
        [2] 金富根. 热网泄漏检测及控制方法[J]. 煤气与热力, 2008,28(002): A11-A13.
        [3] 石兆玉, 陈弘. 故障空间(FDS)法在热网故障诊断中的应用[J]. 区域供热, 1994(03): 17-19.
        [4] 秦绪忠, 江亿. 区域热网管网阻力系数的在线辨识与故障诊断[J]. 清华大学学报(自然科学版), 2000(02): 81-85.
        [5] 郑德忠, 何乐, 周浔, 等. 基于Fuzzy理论的供热管网故障诊断系统的研究[J]. 传感技术学报, 2003(3): 367-369.
        [6] 雷翠红, 邹平华. 供热管网的二级BP神经网络泄漏故障诊断[J]. 哈尔滨工业大学学报, 2011,43(02): 75-79.
        [7] XUE P, JIANG Y, ZHOU Z, et al. Machine learning-based leakage fault detection for district heating networks[J]. Energy and Buildings, 2020,223: 110161.
        [8] 刘天舒. BP神经网络的改进研究及应用[D]. 东北农业大学, 2011.
        [9] 黄丽. BP神经网络算法改进及应用研究[D]. 重庆师范大学, 2008.
       [10] 苏高利, 邓芳萍. 论基于MATLAB语言的BP神经网络的改进算法[J]. 科技通报, 2003(02): 130-135.
       [11] 邱明伦. 求解非线性方程组的方法研究[D]. 西南石油大学, 2012.
       [12] 刘陶文. BFGS方法及其在求解约束优化问题中的应用[D]. 湖南大学应用数学, 2006.
       [13] JORGE, NOCEDAL. Updating Quasi-Newton Matrices with Limited Storage[J]. Mathematics of Computation, 1980.
       [14] 李廷锋. 求解大规模无约束优化问题的修正L-BFGS方法[D]. 河南大学, 2008.
       [15] 奚旺, 刘永文, 杜朝辉, 等. Modelica/Dymola语言及其在燃气轮机动态仿真中的应用[J]. 热力透平, 2004(01): 17-22.
       [16] CASELLA F, OTTER M, PROELSS K, et al. The Modelica Fluid and Media Library for Modeling of Incompressible and Compressible Thermo-Fluid Pipe Networks: International Modelica Conference[C], 2006. 
       [17] 陆亚俊. 暖通空调(第三版)[M]. 北京: 中国建筑工业出版社, 2012.
       [18] POWERS D M W. Evaluation: From Precision, Recall and F-Factor to ROC, Informedness, Markedness & Correlation[J]. 2011.

       备注:本文收录于《建筑环境与能源》2021年4月刊 总第42期(第二十届全国暖通空调模拟学术年会论文集)。版权归论文作者所有,任何形式转载请联系作者。