用于检测配水系统中的异常的组合方法与流程

文档序号:14254421阅读:236来源:国知局
用于检测配水系统中的异常的组合方法与流程

本发明涉及配水系统中的异常检测。更具体而言,本发明涉及借助于统计信息和配水系统的水力模型的结合使用检测异常。



背景技术:

用于配送可饮用水的系统尤其由水头与消费者之间的管道连同诸如阀门和泵的控制装置构成。这样的系统可能遭受很多异常。这些异常属于多种类型。水力异常包括泄露、压力的异常变化、蓄水池的水位的快速下降、蓄水的不连贯的质量平衡。运行异常表明系统中的元件处于不正确的状态,例如,阀门处于与信息系统中存储的不同的打开状态。这些异常,尤其是泄露可能急剧降低配水系统的性能。例如,管道中的泄露是水头和消费者之间的水的显著部分遭受损失的原因。因此,对配水系统中的异常的检测和校正永远都是此类系统的运营商的关注内容,以达到缓解水流失的经济成本和损害的目的。此外,配水系统中的泄露检测的一个关键目的是限制全球的水资源消耗和浪费,在缺水地区,考虑到要促进可持续的发展,泄露检测尤其受关注。

配水系统中的泄露检测在历史上是通过人工检查执行的。人工检查一般包括派操作员检查系统的管道,并识别出泄露和其他异常。例如,可以使用检测因泄露引起的噪声的音频传感器来自辅助这种检测。然而,配水系统的通常很大的尺寸使得对泄露和异常的人工检测非常困难。例如,大城市的配水系统包括数千千米的管道。因此,不可能以合理的成本频繁地检查所有管道。

一个或多个传感器的使用为检测配水系统中的异常的解决方案起到了促进作用。尤其可以使用传感器自动检测系统行为的异常变化,从而向该系统的那些检测到了异常行为的节点/弧段派遣操作员。然而,基于传感器的异常检测方法也存在缺陷。它们可能生成很多假阳性判断(对实际并非异常的事件发出警报),从而导致很多无用而又耗费成本的人工干预。由于典型配水系统的大规模的原因,这些方法还可能正确地检测到异常但无法精确定位。另外,在系统中部署高密度的传感器虽然能够有助于对异常进行更加精确的定位,但是其成本过高。

申请人与本申请的申请人为同一申请人的欧洲专利申请no.ep15306029.8公开了用于检测配水系统中的异常的方法。这一在先申请中公开的方法使用了根据配水系统的水力模型而预测的被模型化为网络的配水系统的实体的参数(例如,不同时间上的水速和水压)的一组值以及网络的控制参数(例如,管道的长度、管道的粗糙度、网络用户的消耗预测等)的值。所述方法包括执行对预测值计算的逐次迭代,将这些值与来自传感器的观察结果进行比较,并根据预测和观察之间的差来调整参数值,从而使用方法根据所述参数的值检测异常。这种方法允许准确地确定最佳地匹配来自传感器的观察结果的网络控制参数的值。控制参数的某些值表示网络中的异常。例如,预测到水的过度消耗可以表示配水系统中的泄露。因而,基于水网中的异常的示例而受到了训练的机器学习算法能够通过迭代过程根据在发生了几次预测值的计算之后获得的控制参数的值识别出异常。

这种方法具有很多优点。其提供了一种自动化的快速并且可靠的方法来检测配水系统中的异常,从而与使用传统的人工检查相比以快得多的速度解决系统中的异常。通过逐次的迭代,越来越准确地识别出将给控制参数带来的修改。这种方法在逐次迭代之后能够高效地对配水系统中的异常进行识别和定位。此外,配水系统的水力模型的使用允许网络的操作者甚至能够对未配备传感器的网络实体中的异常进行定位。

但是,对于大型配水系统而言,对水力模型存在影响的大量参数以及获得令人满意的解决方案所需的大量迭代可能使所述方法很复杂。其削弱了配水系统的操作者快速地识别并解决配水系统中的异常的能力。

因此,需要一种用于缩短被报告给操作者的检测之前的时间并提高结果在识别和定位方面的相关性的方法。例如,通过对实现对配水系统中的异常的可靠检测所需的配水系统网络控制参数的计算的迭代次数进行优化而缩短检测前时间。



技术实现要素:

出于这种效果,本发明公开了用于检测由节点的网络构成的配水系统中的异常的方法,所述方法包括:借助于表征网络及其在各节点处的输出的控制变量的一组值对配水系统的水力模型进行参数设定;使用网络上的传感器采集各第一时间参考上的状态变量的子集的观察结果;至少基于所述观察结果识别至少一个要改变其控制变量的值的目标实体;使用对控制变量的逐步调整以及基于状态变量的残差值的断线判据(breakcriterion)改变控制变量的该组值;根据该组控制变量执行对网络的至少一个实体在状态中的分类。

有利地,所述方法包括至少基于所述观察结果识别要改变的至少一个控制变量。

这样做允许通过减少所要改变的控制变量的数量而额外地降低所述方法的计算负担。

有利地,至少基于所述观察结果识别至少一个要改变其控制变量的值的目标实体包括:使用水力模型计算至少表征节点处的水速和压力的一组状态变量的预测值,所述预测值与第二时间参考相关联;计算作为各第二时间参考上的预测值和观察结果之间的差的状态变量子集的残差值;对选择时间参考时的在网络的实体处的残差值执行统计分析;基于应用至所述统计分析的输出的规则对网络的实体分类。

这样做允许使用历史值对至少一个目标实体进行有效率的预检测。

有利地,所述至少一个目标实体是通过基于残差值与预定义阈值之间的比较被分类为异常状态来进行识别的。

这样做允许通过将重点放在具有更高的处于异常状态的可能性的实体上而有效率地选择所述至少一个目标实体。

有利地,至少基于所述观察结果识别至少一个要改变其控制变量的值的目标实体包括:使用规则的组合执行对观察结果的若干测试;基于针对观察结果的规则的组合对网络的实体分类。

这样做允许在无需使用水力模型的情况下简单而鲁棒地对实体分类。

有利地,所述至少一个目标实体是通过基于针对观察结果的规则的组合被分类为异常状态来进行识别的。

这样做允许简单而又鲁棒地识别出所述至少一个目标实体。

有利地,至少基于所述观察结果识别至少一个要改变其控制变量的值的目标实体包括:使用规则的组合对观察结果的统计学偏差执行若干测试;基于针对观察结果的规则的组合对网络的实体分类。

这样做允许在无需使用水力模型的情况下简单而鲁棒地对实体分类。

有利地,所述至少一个目标实体是通过基于针对观察结果的统计学偏差的规则的组合被分类为异常状态来进行识别的。

这样做允许简单而又鲁棒地识别出所述至少一个目标实体。

有利地,至少基于所述观察结果识别至少一个要改变其控制变量的值的目标实体包括识别其中的水速观察结果的值超过了目标实体处的阈值的网络弧段。

这样做允许非常简单直接地识别出所述至少一个目标实体。

有利地,改变控制变量的该组值是针对至少一个事件类型执行的,所要修改的控制变量是以所述至少一个事件类型为基础的。

这样做允许提高检测的鲁棒性,以及降低所述方法的计算负担。实际上,只对具有更高的与发生在网络中的事件相关联的可能性的降低数量的控制变量予以修改。

有利地,对多个事件类型进行测试,并针对每一事件类型执行改变控制变量的该组值的一个实例。

这样做允许在同一时间内对多个不同事件类型进行测试。

有利地,至少改变控制变量的该组值是针对至少一个事件类型执行的,所述至少一个事件类型是使用基于应用至所述统计分析的输出的规则对网络实体所做的分类选出的。

这样做允许根据统计分析更加具体地确定所要改变的控制变量,由此降低改变控制变量的该组值的计算负担。

有利地,所述方法包括:在至少基于所述观察结果识别至少一个要改变其控制变量的值的目标实体的输出的基础上检测异常;如果未检测到异常,那么丰富所述实体的正常状态的数据库;如果检测到异常:使用对控制变量的逐步调整以及基于状态变量的残差值的断线判据改变控制变量的该组值;根据该组控制变量执行对网络的至少一个实体在状态中的第二分类。

这样做允许通过只有在基于观察结果检测到异常的情况下才发起对控制变量的迭代调整而降低所述方法的计算负担,并且允许通过丰富正常状态的数据库而改善所述方法的进一步的执行。

有利地,使用对控制变量的逐步调整以及基于状态变量的残差值的断线判据改变控制变量的该组值包括:a)改变控制变量的该组值;b)使用水力模型计算至少表征各时间参考上各节点处的水速和压力的一组状态变量的预测值;c)计算作为各时间参考上的预测值和观察结果之间的差的该组状态变量的残差值;d)如果所述差满足断线判据,那么进行至步骤f);e)如果不满足,那么改变所述控制变量的该组值(350),并返回至步骤b);f)如果所述差不满足细化判据(360),那么选择要计算预测值的网络子集(370),从而返回至步骤b)。

这样做允许对控制变量的值进行累进调整,直到它们的值可靠到足以检测到网络上的事件为止。

有利地,所述细化判据包括对最小平方和bayesian目标函数之一的值的计算,并通过levenberg-marquardt算法确定控制变量的选择和修改。

使用bayesian目标函数允许计算测量结果的相对置信度以及控制变量和状态变量的修改值。使用levenberg-marquadt算法允许具有良好的收敛和稳定性能。

有利地,根据该组控制变量执行对网络的至少一个实体在状态中的分类是通过先前受过训练的机器学习算法执行的。

这样做允许获得针对既定配水系统受到了优化的分类规则,其可靠性将随着时间的推移而提高。

有利地,控制变量包括表征网络的拓扑结构和形貌的标量变量以及在每一时间参考上具有至少一个值的表征网络的输入和输出的基于时间的变量。

这一方案允许提高通过所述方法检测到的可能事件的数量。

有利地,改变控制变量的该组值包括修改下述内容的至少其中之一:基于时间的控制变量的子集的值;在对网络建模的阶段内计算出的标量控制变量的子集的值。

这样做允许获取标量控制变量和基于时间的控制变量的可用性的全部优点。

有利地,修改基于时间的控制变量的子集的值包括修改表示耗水量的基于时间的控制变量的值。

这样允许检测根据耗水量的异常增加来检测的事件,例如,泄露。

有利地,所述状态变量还表征压力。

这样允许获得对配水系统的物理参数的时间演变的更加全面并且有效的建模。

本发明还公开了一种用于检测由节点的网络构成的配水系统中的异常的系统,所述系统包括:处于网络节点的子集处的至少针对水速和压力的传感器;包括处理器的计算装置;传感器和计算装置之间的通信线路;存储介质;其中,所述计算装置被配置为:从存储介质中检索表征网络及其在各节点处的输出的控制变量的初始的一组值并使用其对配水系统的水力模型进行参数设定;使用网络上的传感器之间的通信链路采集状态变量的子集的观察结果,所述观察结果具有时间参考;执行上文公开的方法之一。

本发明还公开了一种存储在非暂态计算机可读介质上的检测由节点的网络构成的配水系统中的异常的计算机程序产品,所述计算机程序产品包括用于执行上文公开的方法之一的代码指令。

本发明基于对控制参数的逐步调整提高了配水系统中的异常检测方法的鲁棒性并降低了所述方法的计算负担。

本发明允许精确地检测配水系统的任何实体上的异常,即使这样的实体并未配备传感器。

本发明的方法能够检测配水系统中的几种类型的异常。

本发明的方法的异常检测的精确度随着对所述方法的使用次数的增多而提高。

附图说明

通过下文对若干示范性实施例及其附图的描述,本发明将得到更好理解,其各种特征和优点也将得以显现,在附图中:

-图1示出了现有技术中按照网络组织的配水系统的示例;

-图2示出了本发明的若干实施例中的用于检测配水系统中的异常的方法的示例,其使用了对水力模型的特性及控制变量的逐步迭代调整并将其与现有技术中的用于识别异常的机器学习相结合;

-图3示出了现有技术中的用于识别目标事件的参数的方法的示例;

-图4示出了本发明的若干实施例中的用于检测配水系统中的异常的方法的示例;

-图5示出了本发明的若干实施例中的用于检测配水系统中的异常的方法的示例,其中,与用于识别异常的机器学习相结合来执行对水力模型的特性和控制变量的逐步迭代调整依赖于使用状态变量的残差值的计算结果对异常所做分类的输出;

-图6示出了本发明的若干实施例中的用于检测配水系统中的异常的方法的示例,其中,与用于识别异常的机器学习相结合来执行对水力模型的特性和控制变量的逐步迭代调整依赖于使用应用于各状态变量的规则的组合对异常所做分类的输出;

-图7示出了本发明的若干实施例中的用于检测配水系统中的异常的方法的示例,其使用了统计学习实现对异常的预检测和预表征;

-图8示出了将异常的定位呈现给操作者的示例。

具体实施方式

在本说明书中,将通过举例方式描述本发明,所举示例涉及泄露检测以及异常氯气浓度的检测。但是,本发明不限于这些示例,其可以适用于对配水系统中的任何异常的检测。

图1示出了根据现有技术的按照网络组织的配水系统的示例。

图1所示的网络100被组织为网络,其包括多个节点110、111、112、113、114、115、116和117以及多个弧段120、121、122、123、124、125、126、127和128。节点通常表示与水源或者水库(例如,节点116处的水库)的连接,与配水系统的用户(例如,节点113处的消耗131)的连接,以及弧段之间的连接。弧段通常表示节点之间的管道。网络配备有诸如阀门和泵的设备。例如,泵132出现在弧段120上。更一般地,节点可以是两个或者三个管道之间的接头,或者可以是建立网络的输入或输出的点,例如,用户消耗水的点或者向网络中注入水的点。节点还可以表示子网络,例如,依照单个节点而划定的地区。

与水有关的物理参数尤其包括(例如)速度、压力、流速、存蓄水平(水库和水池)、温度等。此外,可以根据检测需求和/或传感器的演变增加其他参数。这些参数随着时间的推移而发生的演变取决于配水系统的特征、各节点处的输入和输出以及系统中的任何设备的状态。

配水系统的属性尤其包括:

-网络的拓扑结构(即,具有弧段和节点的图形);

-网络的形貌(即,节点的标高);

-管道的特性,例如,长度、直径、材料、粗糙度、奇点、次要损失系数等等);

-网络的每一设备的特性(例如,泵特征、阀门直径、摩擦系数、运行设定点等)。

饮用水网络的水力模型包括这一组信息。

节点的输入和输出是通过图形的每一节点处的水的消耗或注入定义的。它们通常表示配水系统的用户的各消耗,以及从入水口向系统内的注水。

注入阀门或泵的设备的状态包括这些装置的运行状态和设定点。

在本说明书中,配水系统的特征、节点处的输入和输出以及装置的状态将被称为配水系统的“控制变量”,而节点和弧段处的物理参数则将被称为配水系统的“状态变量”例如,控制变量包括通过(例如)m3/d表示的各节点处的耗水量、管道的粗糙度和摩擦力以及泵或致动器的状态等。状态变量包括不同弧段和节点处的速度和压力。根据目标应用,状态变量还可以包括水池和水库内的水位、余氯浓度(rcc)等。状态变量的值随着时间推移而变化。一些控制变量的值,例如,与网络的拓扑结构或地形标绘有关的那些控制变量的值保持恒定,而一些控制变量的值,例如,与网络的输入和输出以及装置的状态有关的那些控制变量的值则随着时间的推移而变化。同时,实体是指整个网络、由节点、弧段和设备构成的网络子集或者以对配水系统的行为具有影响的特点为特征的网络的单个节点、单个弧段或设备。

对状态变量的初始值的描述以及对控制变量的值(尤其是网络的各节点处的消耗)的预测(时间序列)允许随着时间的推移预测状态变量的值。这一预测一般是通过按照固定的或者可变的时间步计算状态变量的相继值而执行的。这一预测被称为正问题的解。

网络的一些实体配备有测量物理参数的传感器,所述物理参数通常为速度或压力。这些传感器允许获得状态变量的时间序列。

比照状态变量的观察结果计算定义系统的拟合优度的控制变量的值的方法是已知的。这些方法一般被称为反演问题求解,下述文献尤其对此做出了公开:piller,o.(1995):modelingthebehaviorofanetwork-hydraulicanalysisandsamplingproceduresforparameterestimation.appliedmathematicsthesisfromtheuniversityofbordeaux(pres),288pages,talence,france,presentedonthe3rdfebruary1995以及piller,o.,gilbert,d.andvanzyl,j.e.(2010):dualcalibrationforcoupledflowandtransportmodelsofwaterdistributionsystems.waterdistributionsystemsanalysiswdsa2010,asce,tucson,722-731,december2010,us8635051。求解反演问题一般在于对包括修改控制变量的值和根据控制变量预测状态变量的值的环依次迭代,从而使表示状态变量的预测结果和观察结果之间的差的数学函数最小化。这些技术允许确定(例如)网络实体的特征(例如,阀门中的水头损失、管道的粗糙度等)或者最佳地匹配状态变量的观察结果的耗水量。

在本申请中,实体是指代节点、弧段、设备、网络子集或者整个网络的泛称。因而,将实体分类到反常状态中可以包括识别节点、弧段、设备、网络子集等的异常。

图2示出了现有技术中的用于检测配水系统中的异常的方法的示例,其方法使用了对水力模型的特性及控制变量的逐步迭代调整以及用于识别异常的机器学习。

方法200包括第一步骤220,其用于使用一组控制变量210定义水力模型211的参数。已经联系图1介绍了水力模型和控制变量的性质。所述水力模型可以尤其配置有表征网络的结构的控制变量以及表征相对于一组时间参考对各节点处的网络输入和输出所做的预测(尤其是对网络中的耗水量的预测)的控制变量。

在优选实施例中,在所述水力模型的创建之后,已经对与网络的结构(例如,管道的直径和粗糙度、设备的特征等)有关的控制变量的值进行了校准。实际上,在网络建模过程中定义的理论值并非总是与实际值匹配。为了获得与网络的结构有关的控制变量的更加准确的值,校准步骤可以包括调整这些控制变量的值,以提供对网络行为的最佳预测。典型地,这一调整可以包括:

-在某一持续时间内对网络的输入输出和状态变量的子集进行观察;

-使用与网络的输入、输出和结构有关的控制变量的值对网络的水力模型进行配置;

-根据所述水力模型计算网络的状态变量的预测值;

-计算网络的状态变量的观察值和预测值之间的差,并使用优化算法修改网络的控制变量的值,从而使网络的状态变量的观察值和预测值之间的差距最小化。

另一方面,能够(例如)使用过去的输入和输出的观察结果获得与网络的输入和输出有关的控制变量。例如,可以使用耗水量的历史计量数据表征不同节点处的耗水量的控制变量的值。

方法200还包括使用传感器获得状态变量的子集的观察结果的步骤230,所述观察结果具有第一时间参考。状态变量是网络的实体处的物理参数的带时标的值。状态变量往往涉及网络的节点处的物理值(例如,网络的节点处的氯气的压强或浓度)。它们还可能涉及网络的弧段处的物理值,例如,管道的水速。现有技术方法和本发明的部分依赖于将状态变量的观察结果和预测结果进行比较。只有在具有适当的传感器的情况下才可能对状态变量进行观察。例如,只有在节点处存在针对压强的传感器的情况下才能够执行对网络的所述节点处的压强的观察。另一方面,有可能使用水力模型计算节点或者未配备传感器的其他实体处的状态变量的预测值。所述第一时间参考与每一能够在不同的时间上或者按照不同的速率生成测量结果的传感器相关。根据本发明的各种实施例,可以使每一传感器的第一时间参考同步,或者每一传感器可以具有其自身的时间参考。在两种情况下,对本发明的方法的接下来的步骤的执行都是一样的。

如联系图1所陈述的,配水系统通常配备有传感器。这些传感器测量网络的节点或者弧段处的诸如速度、流速、压力等的物理参数,节点或者弧段处的所述物理参数是网络的状态变量。出于成本、维修和操作简便性的实际原因,并非所有的节点和弧段都配备传感器,那些配备传感器的节点和弧段一般也不会为每种物理参数都配备传感器。传感器的数量和分布可以是根据配水系统的区段(sector)的定义而选择的。可以远程执行观察结果的采集。例如,沿网络部署的传感器可以将状态变量的值通过各种电信措施(通常为无线链路)发送至远程平台。

状态变量的值随着时间的推移而变化,每一值具有表示测得该值的时间的时间参考。在本发明的实施例中,状态变量的值是使用预定义的时间周期采集的并且有可能但未必使用另一周期定期发送。例如,存在针对其的传感器的状态变量的值可以在每24小时内每两分钟、每5分钟、每15分钟或者每小时采集并发送一次。在本发明的优选实施例中,使各传感器同步,从而同时采集测量结果。这样做允许远程平台采集在每一时间参考上有可用的传感器的状态变量的子集的值。值可以在测量之后立即被发送。也可以对其进行发送装置级的本地存储,之后按照规律的间隔时间对其进行发送,例如,发送在15分钟、1小时或者任何其他时间间隔内俘获的所有值。

方法200还包括设置至少一个目标的步骤240。所述步骤旨在定义作为目标的事件,例如,其可以是压力异常变化、对处于假开放状态的阀门的检测。因而,这些被作为目标的事件将是针对各种实体(整个网络、网络的子集等)通过所述方法的下述步骤找到的那些事件。如参考图3所解释的,在步骤310中针对每一类型的目标事件定义一组参数。

方法200还包括识别参数的步骤250。在本发明的若干实施例中,所述参数是针对目标时间设置的。在将多个事件锁定为目标的情况下,一个接一个地或者并行地针对每一目标事件执行识别步骤250。下文将参考图3提供在一种情况下识别参数的方法的示例。存在各种确定目标事件的方法。在本发明的若干实施例中,在预定义列表中选取事件。在其他实施例中,针对具体应用选择一个事件。例如,可以只选择“泄露”事件。在本发明的又一些实施例中,操作者在所有可能事件的列表中选择其感兴趣的事件。在本发明的又一些实施例中,选择可根据存在于网络中的传感器检测到的事件。在本发明的其他实施例中,不搜索任何特定的事件。因而,能够选择预定义的一组参数。

所述方法包括进行特征提取和预处理,从而对分类步骤做准备的步骤260。所述过程旨在使数据规范化,并减少所述问题的维次。输入数据包括所有的模型输出(参照图3),输出数据是具有降低的维数的向量。在实施例中,可以通过主分量分析、线性判别分析或者k最近邻算法解决所述的问题维次缩减。

所述方法包括定性表示实体的当前状态的步骤270。根据早前提出的实体的定义,对实体的分类可以适用于整个网络以及网络的单个弧段、单个节点或者节点和弧段的子集。在本发明的若干实施例中,选择网络节点和弧段的子集来形成所述实体,以形成有内在关联性的集合。例如,实体可以是向一个地区供水的区域的子集,其中,整个实体使用单个输入和单个输出弧段。

可以根据由特征向量构成的带标签历史数据的可用性和量使用各种机器学习技术。在若干实施例中,这些技术包括界外值检测、群集和分类。在若干实施例中,机器学习的规则基于先前针对带标签的历史特征向量受到过训练的机器学习算法271。例如,在有充分可用的带标签历史种类的情况下,分类算法能够分析可用历史种类和对应特征,从而建立自动确定实体分类规则的分类器。之后,能够将新的特征向量自动划分到相关当前种类中,从而表征当前状态,并向操作者提供有价值的信息。例如,所述分类可以基于支持向量机、随机森林、逻辑回归等。在若干实施例中,可以使用两个种类(正常/异常状态)的分类。在若干实施例中,分类还可以包括异常类型(压强、高/低消耗量和水质)等。分类还可以包括置信度的指标,其表示对异常所做分类的确定性。在若干实施例中,可以依据时间基线(所定义的频率)、性能标准或者所使用的数据集中的演变随时触发机器学习算法的训练。

在带标签历史种类和对应的特征向量不足的情况下,可以使用群集或者界外值检测。群集可以包括诸如k均值或分级群聚的技术。群集使用过去的状态,其通过过去的特征向量表示但没有已知标签。在本发明的一个实施例中,如果状态不存在于更大的群集中,那么将其断定为异常(对群集的尺寸的标准进行测试)。

所述方法包括根据机器学习算法的输出判断针对实体计算出的种类是否对应于异常状态(事件)或者各状态之一是否被检测为界外值的步骤280。如果检测到事件,那么所述方法进行至步骤290。如果状态被定性表示为正常,那么所述方法进行至步骤291。

所述方法包括向操作者显示结构化信息的步骤290。于是,能够将处于反常状态的优先考虑实体的列表呈现给操作者,从而启动针对具有最高的异常可能性的实体的适当维修操作。这些具有异常状态的实体是连同贯穿先前各步骤收集的额外信息(基于包含在模型输出和特征向量中的信息)一起呈现的。在一个实施例中,所述信息含有有关异常水平的定量表示(例如,泄露的流量值、水头损失值)、异常的时间和持续时长、异常的已知位置和扩展等的指示。在考虑背景设置的的情况下,使用这一信息排出各异常状态的优先次序,并将异常的程度提供给用户。

所述方法包括丰富带有“正常”标签的特征向量的历史数据库的步骤291。这些特征向量被用作对算法的学习过程的输入。这样做有利地允许随着时间的推移获得更加丰富的数据库,进而获得对正常或异常状态的更加可靠的预测。

所述方法包括丰富未被所述方法标记为“正常”的特征向量的历史数据库的步骤292。之后,所述方法包括由操作者对事件进行检验的步骤。在一个实施例中,操作者之后能够在所述方法中针对每一实体输入其是否确认该事件以及该事件的种类。之后,可以根据向量属于的种类(泄露、压力异常、水质异常等)对向量加标签。不管所述状态是“异常”还是“正常”,都使用新的经分类的特征向量丰富特征向量的历史数据库。这些特征向量被用作对算法的学习过程的输入。假设向量未被操作者加标签,那么其仍然受到存储,只是没有具体的标签。之后,能够将其用到无监督或者半监督模式(群集和界外值检测)中。

图3示出了现有技术中的用于识别目标事件的参数的方法的示例。

方法250包括根据在步骤240中选择的目标事件之一和具体实体设置问题的步骤310。所述步骤旨在定义对应于所述实体的目标事件类型的一组参数。针对每一事件和实体的目标定义一组参数。在本发明的若干实施例中,使事件类型与参数的列表相关,并根据被锁定为目标的事件检索该组参数。例如,事件可以是阀门的假打开状态,已知其可以通过表示粗糙度和摩擦力的控制变量的不一致的值来表征的,而其他类型的事件则可以是已知可以通过需水量的异常值来表征的泄露。

方法250还包括使用水力模型计算一组表征实体的状态变量的预测值的步骤320,所述状态变量至少是各第二时间参考上的各弧段处的速度和各节点处的压力。这一步骤包括计算各第二观察时间参考上所述实体(网络、其子集等)的状态变量的预测值。第二时间参考可以是由用户独立于所述第一事件参考而选择的。例如,各第二时间参考是按照预定义的恒定间隔隔开的(即,每经1分钟、5分钟或者任何其他时长计算一次预测值),而且未必与第一时间参考同步。用于使用水力模型计算水力网络的状态变量的预测值的方法是供水系统工程设计领域的技术人员所公知的。这些方法通常包括从某一时间参考上的水池状态以及控制变量的值开始,使用水力学物理定律计算同一时间参考上的所有状态变量的值,之后计算下一时间参考上的水池状态的值。因而,有可能从状态变量的初始值和控制变量值开始计算出所有时间参考上的状态变量的预测值。用于计算某一时间参考上的状态变量的预测值的方法尤其在下述文献中得到了公开:o.piller,“modelingthebehaviorofanetwork-hydraulicanalysisandsamplingproceduresforparameterestimation”.phdthesisinappliedmathematicsfromthemathematicsandcomputersciencedoctoralschoolattheuniversityofbordeaux(pres),1995,288pages,talence,france。

所述方法还包括计算作为各第二时间参考上的预测和观察之间的差的状态变量的子集的残差值的步骤330。在第二时间参考和第一时间参考不等同的情况下,可以通过(例如)建立第一时间参考上的每一观察结果的连续函数并检选各预期的第二时间参考上的值而计算出各第二时间参考上的观察的值。可以通过几种方式建立这样的连续函数。例如,其可以是使用内插函数或者正则化函数建立的。有几种函数适用于这里,例如,高斯内核卷积函数。这一步骤包括针对有可用的观察的各状态变量计算各状态变量的预测值和观察值之间的差。状态变量的观察结果要么可以是原始观察结果,要么可以是经过预处理的观察结果。可以通过平滑化、缺失值填充等对状态变量的观察值进行预处理,从而对信号进行清理。在系统受到了正确的建模和校正,并且正确地定义了网络的输入和输出的情况下,如果没有实际的异常,那么状态变量的预测和观察可以是非常接近的,并且残差值可以非常接近模型校准时的残差的值。相反,残差值可能是重要的,即发生了异常,例如,在水的空间消耗出错的时候。使用目标函数计算残差值的重要性。例如,可以计算加权范数或者每一残差值的绝对值的加权平均数作为残差值的重要性。与不同观察/残差相关的权可以是根据观察(流量、压强等)的性质、传感器品牌和精确度、一天中的时间、测量的经验性方差而定义的。更一般地,权重可以是根据测量结果的置信度指示自动定义的,或者可以是由用户定义的。

方法250还包括检验残差值是否满足断线判据的步骤340。这一步骤包括检验状态变量的残差值是否小到足以认为控制变量的值准确地描述了实体的行为。所述断线判据可以是(例如)有关迭代次数的阈值、有关残差值的变差的阈值、有关相对于该组参数的目标函数的梯度的阈值的组合。

在不满足断线判据340时,方法250包括使用下降法改变问题参数(例如,消耗概况)的值的循环(loop)步骤。在实施例中,所述方法可以是梯度算法、共轭梯度算法、牛顿算法、levenbergmarquardt算法或者相同类型的其他算法。这一步骤350为步骤320的新迭代提供馈送,从而使用水力模型借助于经修改的问题参数值计算预测值。

在满足断线判据340时,方法250包括作为基于细化判据的测试的步骤360。在目标函数的值下降的同时,在步骤320处的环内执行另一细化步骤370。

方法250还包括选择具有至少一个单元(节点或弧段)的子集的步骤370。所述步骤检查作为单元(节点或弧段)灵敏度向量与单元贡献(contribution)向量的标量积而计算出的梯度。所述方法在灵敏度评估的基础上根据选择标准抛弃单元。在实施例中,抛弃那些具有正灵敏度的单元。这一步骤370对步骤320的新的迭代提供馈送,从而使用水力模型计算关于所选择的单元的预测值。

方法250还包括提供模型参数的输出的步骤380。模型输出包括经调整的参数、各单元组和相关目标函数的相继值以及在图2所示的步骤260中处理的特征。因此模型输出包括有关从具体的节点或弧段到网络的子集,乃至整个网络的各个实体的信息。

图4示出了本发明的若干实施例中的用于检测配水系统中的异常的方法的示例。

本发明的方法400包括与现有技术中的方法200类似的步骤,尤其是:

-使用表征网络及其在各节点处的输出的控制变量的一组值对配水系统的水力模型进行参数设定的步骤220;

-使用网络上的传感器采集各第一时间参考上的状态变量子集的观察结果的步骤230;

-在状态变量的残差值的基础上,使用对控制变量的逐步调整和断线判据改变控制变量的该组值的步骤250;

-根据该组控制变量将所述网络的至少一个实体分类到某一状态中的步骤270。

在本发明的若干实施例中,所述方法还可以包括方法200的其他步骤中的一者或多者:

-检测事件的步骤280;

-显示事件及其特征的步骤290;

-丰富正常类别历史数据库的步骤291;

-丰富异常类别历史数据库的步骤292。

方法400还包括至少基于所述观察结果识别至少一个将改变其控制变量值的目标实体的步骤410。

步骤410的目的在于减少要在步骤250中对其控制变量值予以改变的实体的数量,同时确保如果在配水系统中发生异常,那么能够在步骤410中选择的实体中找到该异常。实际上,在具有高数量的实体的大型网络中,步骤250的计算负担和复杂性可能急剧提高。

因而,通过降低要对其控制变量予以修改的实体的数量,本发明的方法降低了异常检测的计算负担,并且至少像现有技术中的方法一样可靠地以更快的速度生成其结果。

在本发明的若干实施例中,步骤410还识别其他要素,例如,要改变的控制变量,从而进一步降低步骤250的计算成本。

在本发明的若干实施例中,针对多个事件类型执行步骤250,并且步骤410识别出要测试的可能事件类型。

根据本发明的各种实施例,可以通过不同的方式执行对要改变其控制值的实体、要改变的控制值以及要测试的事件的识别。例如,其可能依赖于对状态变量的残差值的统计分析以及对实体的第一分类。其还可能依赖于状态变量(例如,水速)的值与阈值的直接比较。

更一般地,在根据本发明的方法中,如果在步骤270中至少一个实体被分类到表示异常的状态中,或者在步骤280中检测到了事件,那么则说检测到了异常。在本发明的若干实施例中,一些事件表示异常,而其他一些事件则不表示异常。因而,显示事件及其特征的步骤290包括,在至少一个实体被分类到异常状态中的情况下,向操作者显示异常。在本发明的其他实施例中,还有可能在事件之外显示或者记录向异常状态中的分类。因而,通过由专家对这些正常状态的显示或记录进行检验,从而确保所述分类的实施是正确的,而且没有发生导致漏失异常的错误分类。

在本说明书的其余部分中将通过非限制性实例介绍本发明的实施例的示例。

图5示出了本发明的若干实施例中的用于检测配水系统中的异常的方法的示例,其中,与用于识别异常的机器学习相结合来执行对水力模型的特性和控制变量的逐步迭代调整依赖于使用状态变量的残差值的计算结果对异常所做分类的输出。

方法500包括方法400的步骤220、230、250、260和270。在本发明的若干实施例中,其还可以包括方法400的步骤280、290、291、292的至少其中之一。

在实施例的这一示例中,检验要改变其控制变量的值的至少一个目标实体的步骤410是使用对状态变量的残差值的统计分析执行的。使用这种结合既允许直接根据预先识别的实体的预先识别的异常类别对迭代部分进行配置,又将重点放在了主要异常上,从而使检测过程更加准确,并且能够更容易地被操作者使用。主要异常是那些引起模型结果和测量数据之间的统计偏差的异常,所述统计偏差是通过残差分析检测到的。之后,所述迭代过程确认异常的存在,并带来更详细的信息。因而,可以以更低的频繁程度和更低数量的并行实例发起该过程,从而节省计算时间。

因而,识别至少一个目标的步骤410包括计算预测值的步骤320和计算残差的步骤330,它们是现有技术中已知的。可以针对有可用的观察结果的状态变量的全部或部分计算残差值。

步骤410还包括针对时间参考的选择来对至少一个实体执行多项对残差值的统计分析的步骤510。这一步骤包括分析在某一时间窗口内的每一时间参考上某一实体的残差值的分布情况。根据本发明的各种实施例,所述时间窗口可以覆盖时间参考的全体或其子集。

通过所述多项统计分析,能够在残差值与残差值的历史观察结果不一致的情况下检测到异常。对残差值的历史分布的使用允许捕捉惯常行为和反常行为,包括残差值的变异性和各种特性,从而将其与既定时间窗口内的当前残差值进行比较。例如,步骤510可以包括使用历史残差值的数据库计算统计推断(n阶矩、平均值、标准偏差、平均值或者绝对中位差等),从而将其与由当前残差值所做的对应统计推断进行比较。这样做将为所述方法赋予更高的鲁棒性,因为其考虑了过去的值和观察到的行为。

在本发明的实施例的若干实施例中,在统计分析之前使用傅里叶变换对残差值进行转换。在本发明的实施例中,执行针对实体的统计分析包括判断对于预定义数量的相继时间步而言残差值的值是否超过了预定义阈值。所述阈值和相继时间步的数量可以是基于先前的检测而预定义的,其目的在于使存在异常(真阳性)时的异常检测比率最大化,并且使不存在异常(假警报)时的异常检测比率最小化。所述分析可以使用对残差值特性的统计测试以及对所产生的定量表示测试结果的pvalue的计算。可以设置关于pvalue的阈值,以获得收到假警报的风险水平。因而,设置预定值意味着怀有对假警报(即,错误地拒绝假设)的既定百分比的预期。在实施例中,所述统计分析通常是对压力或速度的残差值执行的。例如,可以对几个小时的窗口执行用于检测泄露的流速分析。

步骤410还包括基于要对所述统计分析步骤的输出应用的规则对网络的至少一个实体分类的步骤520。在所述规则的应用之后,对实体赋予类别(例如,“泄露”、“压力下降”、“水质问题”)。在本发明的实施例中,所述规则是以将在步骤510中执行的统计测试所给出的pvalue与预定义风险水平进行比较为基础的,所述预定义风险水平取决于所述方法的目标灵敏度水平。在本发明的实施例中,所述规则是以先前经过训练的分类算法为基础的,其允许在过去的模拟的基础上分析残差值的当前向量,并给出实体的当前类别。在本发明的实施例中,有两种类别可用,一种代表正常状态,另一种代表异常状态。在本发明的其他实施例中,各种类别给出了异常的更为准确的性质,例如,“压力的异常下降”、“水质有问题”等等。

方法500还包括根据当前类别确定下述步骤的步骤530。如果各种类之一对应于异常状态(可能的异常状态之一)或者该状态被检测为处于界外,那么所述方法进行至250。如果所有的类别都被定性表示为正常,那么所述方法进行至540。

如果各种类别之一对应于异常类别,那么步骤250可以适用于已经被分类为异常的实体。在本发明的若干实施例中,可以在步骤250中仅对被分类为异常的实体的控制变量进行初始修改。在本发明的其他实施例中,能够在步骤250中对被分类为异常的实体的控制变量和相邻实体的控制变量进行初始修改。还有可能将步骤520的输出处的类别关联至要在步骤250中修改的控制变量或者要在步骤250中测试的事件。因此,将对节点和弧段的具体子集上的与预期异常相对应的降低数量的可能异常发起步骤250。这一得到更好的调节并且具有地理集中性的迭代过程将产生对异常的更快速并且更准确的表征(位置、强度)。所述的更好的调节尤其归因于针对所述问题设定的更强的边界条件,而在步骤220中,水力模型则受到更少的约束。

在步骤270的输出处,方法500包括使用正常/异常状态丰富历史残差值数据库的步骤560。这一步骤包括当在步骤270中未识别到异常的情况下使残差与“正常”标签相关,当在步骤270的输出处检测到事件的情况下将残差与作为表示事件的标签的“异常”标签相关。这样做允许丰富使残差值与正常状态、异常状态或事件相关的数据库,并且允许在所述方法的进一步执行中获得对残差值的进一步分类,从而随着时间的推移而提高所述方法的效率。

步骤540包括使用正常状态丰富残差值的数据库。与步骤560类似,这样做允许随着时间的推移改进步骤520中对实体的分类。

所述方法还包括在不满足标准530的情况下丰富历史正常类别数据库的步骤550。这一步骤包括运行对水力模型的特性和控制变量的不同逐步迭代调整,并提取对应于不同类型的异常的特征向量。之后,将这些向量直接看作是正常类别代表(有可能具有不同的语境),并将其存储到正常类别数据库中,以供进一步用于训练机器学习算法。

实施例的示例:检测余氯浓度的异常下降

下文将借助于方法500的非限制性示例描述检测余氯浓度的异常下降的示例。

除了水力传感器之外,配水系统还配备有测量表示水质的参数的传感器。其尤其包括余氯浓度(下文称为rcc)传感器。

在训练节段已经对网络的水力模型以及rcc的演变模型进行了校准。在这一示例中,预测值、观察值和残差值是rcc的值。在训练过程中,将学习模块应用于rcc的残差值,从而确定表示正常rcc的残差值的参数。

一旦计算出了rcc的残差值,统计分析就将作为残差值分布的特征的值与训练阶段使用的历史值进行比较。如果对于很大数量的相继时间参考而言具有至少一种分布特性的残差值都具有异常值(即超过阈值的绝对值),那么以一定的置信度指标将网络的子集预分类到类别“rcc异常下降”中。

之后,对具体的网络子集以及对应于水质异常的设置(尤其是rcc的演变)发起对水力模型的特性和控制变量的逐步迭代调整。特性和控制变量在这里包括氯气模型的具体参数,例如,各个源处的大体量水的动力学常数以及每种管道材料的动力学常数。

如果先前未遇到过该网络中的rcc异常分布的情况,那么可以使用界外值检测或者对所述动力学常数施加的群集操作来执行对反演模型求解的输出处的结果的处理。在使用界外值检测时,将状态与历史状态进行比较。如果差距超过阈值,那么将其宣布为界外值。之后,以一定的置信度指标将至少一个值分类到类别“rcc的异常下降”中。

之后,通过图形界面将有关异常及其定位的信息呈现给操作者。这一实施例是有利的,因为其为异常检测提供了额外的鲁棒性。实际上,如果首先通过对残差值的分析提出了异常,之后借助于已经受到了更加具体地调节的反演模型对其进行了确认和定位,那么则说检测到了异常。

图6示出了本发明的若干实施例中的用于检测配水系统中的异常的方法的示例,其中,与用于识别异常的机器学习相结合来执行对水力模型的特性和控制变量的逐步迭代调整依赖于使用应用于各状态变量的规则的组合对异常所做分类的输出。

方法600包括方法400的步骤220、230、250、260和270。在本发明的若干实施例中,其还可以包括方法400的步骤280、290、291、292的至少其中之一。

在本发明的若干实施例中,方法600的步骤410包括在不使用水力模型的情况下根据规则的组合对各观察结果执行若干测试的步骤610以及基于步骤610的结果对节点分类的步骤620。

在步骤610中,在对迭代过程进行参数设定之前,对状态变量的观察结果进行测试,以判断是否存在异常以及何处存在异常。执行几项测试,并使用用于将实体分类到已经预定义的不同预定义状态中的规则对各项测试的结果进行合并。在一个实施例中,所述方法将所述变量的所有测量值与基于操作者的经验定义的预定义阈值进行比较。如果变量的值超过了阈值,那么在基于不同传感器的位置预定义的区域上选择对应的异常。在另一实施例中,如果观察的时间步的数量超过了既定阈值,那么则检测到了异常。在实施例中,通过二项式概率计算和既定风险水平给出将导致提出异常的超出阈值时间步的数量。在另一实施例中,将基于观察结果建立新的变量,以描述可能遭受异常的特定方面。在一个实施例中,计算随着时间的推移的线性回归的斜率,并将其与用于检测异常演变的阈值进行比较。在另一实施例中,可以基于观察结果计算某一百分位数(例如,5%或50%),并将其与预定义阈值进行比较。在另一实施例中,所述阈值可以是基于观察结果的平均值和过去观察到的标准偏差的线性组合计算的,以考虑信号的惯常变化性。在一个实施例中,不同的阈值通常可以基于围绕平均值的2个或3个标准偏差。

在一个实施例中,可以对每一测试结果评分,并将评分与多线性组合相结合。所述评分可以只是0和1,也可以更加精确,以反映不同疑似度,例如,与不同风险水平(具有pvalue)或者不同阈值相关联。因此,各评分的组合将提供指示实体处于异常状态的可能性的指标,从而提高鲁棒性。在一个实施例中,所述组合可以利用能够在学习阶段受到调节的权重,从而为特定测试赋予更高的重要性。在一个实施例中,测试之一可能更可靠,而其他测试则可以被汇总到一起,从而变得更加可靠。这一组合还可以适用于几个实体之间的测试的结果。在一个实施例中,所述组合用于评估是否在很多实体上发生了类似的异常行为,因而其为公共驱动因素的结果而非实际异常。这一组合目标在于提高迭代过程的初始化的鲁棒性。使用这种方法能够通过很多种不同的变量对各种各样的规则进行测试。如下文所解释的,可以在步骤540、550和560中为既定网络识别、定制和改进相关变量和规则。在一个实施例中,针对各区域群组有差别地应用所要实施的测试、规则和评分组合。这些区域群组可以是由用户定义的,或者是在历史数据的基础上通过群集过程定义的。

方法600的步骤410还包括对实体分类的步骤620,其与方法500的步骤520非常类似,只是该步骤适用于规则组合610的输出,而非对残差值的统计分析510的输出。与步骤520类似,可以使用机器学习算法对步骤620进行训练,或者可以对步骤620进行专门的定制,从而根据步骤610的输出对实体分类。类似地,方法600包括检测到或者未检测到异常的步骤630,其与方法500的步骤530非常类似,只是其适用于步骤620的输出。

因此,将对具体的节点和弧段的子集以对应于预期异常的降低配置次数发起步骤250。这一得到更好的调节并且具有地理集中性的迭代过程将产生对异常的更快速并且更准确的表征(位置、强度)。所述的更好的调节尤其归因于针对所述问题设定的更强的边界条件,而在步骤220中,水力模型则受到更少的约束。

在本发明的若干实施例中,方法600还包括使用正常状态丰富规则的历史数据库的步骤640以及使用正常状态和异常状态丰富规则的历史数据库的步骤660。这些步骤分别与步骤540和560非常相似,只是其丰富的是规则和正常/异常状态的关联的数据库,而不是残差值与正常/异常状态的关联的规则的数据库。所述丰富允许在所述方法的几次执行中针对既定配水网络对异常的预检测规则进行训练。因而,即使没有关于表示或者不表示异常状态的状态变量的规则的先验知识,所述方法也能够自动适应于所述网络,并采取最贴切的规则。在本发明的若干实施例中,使用任意规则对系统进行初始化:例如,具有最重要的水流量的节点中有1%将被分类为异常。步骤250的执行允许确定那些实际处于异常状态的节点,步骤660能够使用对实际处于正常状态或异常状态的节点的认知丰富数据库。经过对所述方法的几次执行,步骤610和620中的规则和分类将采集到对过去事件的足够认知,从而从任意规则切换至定制的事件预检测规则。在本发明的若干实施例中,方法600还包括方法500的步骤550。

实施例的示例:使用基于规则的组合的预检测来检测需水量的异常增加

下文将借助于方法600的非限制性示例来描述检测需水量的异常增加的方案。

这一示例演示了根据本发明的方法600的借助于以规则的组合为基础的预检测来检测可能与泄露相关联的需水量的异常增加的能力。

这一示例描述了对可能与泄露相关联的需水量异常增加的检测。对所观察到的流速的时间序列进行合并,以形成既定区域的需水量。针对这些新的时间序列计算不同的百分位数,并将其与基于过去观察到的标准偏差的线性组合的阈值进行比较。基于先前对所述方法的执行,已经学习了有限数量的相继时间步,对于这些时间步而言所述百分位数必须处于用以对异常进行预检测的阈值以上。使用机器学习,计算相继时间步的这一有限数量,以作为避免漏失可能的异常而又不会具有太多的预检测的最佳数量。让我们假设,对于3个既定区域而言,在比已经针对每一既定区域学习过的有限数量的时间步多的时间步上所述百分位数均高于所述阈值。对于所有其他区域而言,所述百分位数在所要求的数量的时间步上低于所述阈值。对于这些区域而言,所给出的评分为0。对于触发所述阈值的3个区域的每者而言,给出评分1,之后应用组合规则。对于每一区域而言,如果其自身的评分为1,将其他具有等于0的评分的区域的百分位数与预定义阈值进行比较。在当前情况下,对于所述3个区域而言这一百分位数高于阈值,因为很多其他区域具有评分0。因此,将所述3各区域预检测为异常。预检测出3个区域而非1个区域内的异常避免了基于在很多区域内同时发生需水量的可能变化的假警报。这些可能的变化可能归因于季节性或者并非意在引起操作者的注意的具体公共事件。这样将通过降低假警报的比率而提高所述方法的鲁棒性。

之后,对网络的这3个区域的具体子集以及对应于需水量增加的设置发起对水力模型的特性和控制变量的逐步迭代调整。对特性和控制变量进行设置,以检测这3个作为分配了异常需求的节点的子集(其数量将通过迭代过程而下降)的既定区域内的泄露及其耗水量时间概况。

之后,可以通过图形界面将有关异常及其定位的信息呈现给操作者。这一实施例是有利的,因为其为异常检测提供了额外的鲁棒性。实际上,如果首先通过针对观察结果的规则的组合提出了异常,并通过受到了更加具体的调节的反演模型对其进行了确认,那么则说检测到了异常。

图7示出了本发明的若干实施例中的用于检测配水系统中的异常的方法的示例,其使用统计学习对异常进行预检测和预表征,并且利用对水力模型的特性和控制变量的逐步迭代调整,所述逐步迭代调整被添加到了用于识别异常的机器学习中。使用这种结合既允许直接基于预先识别的实体的预先识别的异常类别对迭代部分进行配置,又将重点放在了主要异常上,从而使检测过程更加准确,并且能够更容易地被操作者使用。之后,所述迭代过程确认异常的存在,并带来更详细的信息。

方法700包括方法400的步骤220、230、250、260和270。在本发明的若干实施例中,其还可以包括方法400的步骤280、290、291、292的至少其中之一。

在本发明的若干实施例中,方法600的步骤410包括在不使用水力模型的情况下根据规则的组合对观察结果执行若干测试的步骤710以及基于步骤710的输出对节点分类的步骤720。

在步骤710中,,在对迭代过程进行参数设定之前,对状态变量的观察结果进行测试,以判断是否以及何处存在异常。所述方法基于观察的过去值和额外驱动因素模拟观察的预期值。在本发明的若干实施例中,针对过去的数据对几个模型进行训练,并选择产生对过去数据的最佳预测的模型。在一个实施例中,所述方法含有基于时间序列分析的,例如,基于自回归移动平均(arma)技术或者季节自回归求和移动平均(sarima)技术的模型。所述arma和sarima模型尤其在box,george;jenkins,gwilym(1970).timeseriesanalysis:forecastingandcontrol.sanfrancisco:holden-day中有所公开。在一个实施例中,所述方法含有基于机器学习算法的模型,例如,基于随机森林或者人工神经网络。在一个实施例中,所述方法包括对于既定变量观察而言使用来自其他变量的过去值或当前值的模型。额外的驱动因素是影响观察的变量或参数。在一个实施例中,包括温度和降雨量。在另一实施例中,包括相对于具体事件的日历和时间周期。之后,通过残差值计算将观察的模拟值与实际观察进行比较。使用不同测试对残差值进行测试,并通过用于将实体分类到不同的预定义状态中的规则对测试结果进行合并。在一个实施例中,所述方法通过与基于操作者的经验的预定义阈值的比较对所有残差值进行测试。如果残差值超过了阈值,那么在基于不同传感器的位置定义的区域内选择对应的异常。在另一实施例中,如果在既定时间窗口内有太多时间步的残差值超过了预定阈值,那么标记出异常。这一时间窗口取决于变量的性质和所要检测的异常。在一个实施例中,时间窗口的长度可以是6小时。在实施例中,通过二项式概率计算和既定风险水平给出将导致提出异常的超出阈值时间步的数量。在另一实施例中,将基于残差值建立新的变量,以描述可能遭受异常的特定方面。在实施例中,可以计算随着时间的推移的残差值的累积和,并将其与用于检测异常演变的阈值进行比较。在另一实施例中,使用统计学方法对残差值的分布进行测试,从而将其与过去的残差分布进行比较。

如果测试揭示了分布的显著变化,那么可以标记出异常。在另一实施例中,所述阈值可以是基于过去观察到的观察结果的标准偏差计算的。在一个实施例中,所使用的标准偏差的数量通常可以是2个或者3个。在实施例中,可以对每一测试结果评分,并使用多线性组合对各评分进行结合。所述评分可以只是0和1,也可以更加精确,以反映不同疑似度,例如,与不同风险水平(具有pvalue)或者不同阈值相关联。因此,评分的结合将给出针对每一实体的总疑似度,从而提高鲁棒性。在一个实施例中,所述结合可以利用能够在学习阶段受到调节的权重,从而为特定测试赋予更高的重要性。在其他实施例中,测试之一可能更可靠,而其他测试则可以被汇总到一起,从而变得更加可靠。这种结合还可以适用于几个实体之间的测试结果。在一个实施例中,所述结合用于评估是否在很多实体上发生了类似的异常行为,因而其为公共驱动因素的结果而非实际异常。这种结合的目标在于提高迭代过程的初始化的鲁棒性。机器学习算法允许学习哪一实体上的哪一状态变量代表了既定网络中的异常。更一般地,可以使用将针对观察结果的阈值关联至异常的存在与否的学习方法提高测试结果的可靠性;阈值的调整原理与规则的调整原理类似,只是其直接适用于针对观察结果的阈值,而不是适用于规则。

方法700的步骤410还包括对实体分类的步骤720,其与方法500的步骤520非常相似,只是其适用于步骤710的测试的输出,而非针对残差值的统计分析510的输出。与步骤520类似,可以使用机器学习算法对步骤720进行训练,或者可以对步骤720进行专门的定制,从而根据步骤710的输出对实体分类。类似地,方法600包括检测到或者未检测到异常的步骤730,其与方法500的步骤530非常类似,只是其适用于步骤720的输出。

因此,将对具体的节点和弧段的子集以对应于预期异常的降低数量的预检测异常发起步骤250。这一得到更好的调节并且具有地理集中性的迭代过程将产生对异常的更快速并且更准确的表征(位置、强度)。所述的更好的调节尤其归因于针对所述问题设定的更强的边界条件,而在步骤220中,水力模型则受到更少的约束。

在本发明的若干实施例中,方法700还包括使用正常状态丰富观察的历史数据库的步骤740以及使用正常状态和异常状态丰富观察的历史数据库的步骤760。这些步骤分别与步骤540和560非常相似,只是其丰富的是观察和正常/异常状态的关联的数据库,而不是残差值与正常/异常状态的关联的观察的数据库。在本发明的若干实施例中,方法600还包括方法500的步骤550。在所述方法的几次执行之后,机器学习算法允许识别出代表异常的状态变量、实体和阈值。

实施例的示例:使用基于针对观察的阈值的预检测来检测需水量的异常增加

下文将借助于方法700的非限制性示例描述检测需水量的异常增加的方案。

与前面的示例类似,这一示例演示了根据本发明的方法的检测有可能与泄露相关联的需水量异常增加的能力。但是,这一基于方法700的示例使用的是观察结果与阈值的直接比较而非规则的组合。

这一示例描述了对可能与泄露相关联的需水量异常增加的检测。对所观察到的流速进行合并,以形成既定区域的需水量。这些需水量是借助于过去的需水量和时间序列分析而模拟的。使用所述模拟变量计算相对于观察结果的残差值。计算残差值的累积和。将它们与阈值进行比较。这些阈值是以所观察到的过去的残差值的累积和的变异性为基础的。这意味着它们使用了所述变异性的量度,在这里所述量度以所计算出的平均值和标准偏差为基础。在这一示例中,对于整个网络上的2个区域而言,残差值的累积和超过了既定阈值。这意味着,在这2个区域上未观察到相对于需水量的预期行为,因为在足够数量的时间步上残差值都大到了足以说存在统计学偏差。针对它们提出对异常需水量增加的预检测。

之后,对具体的网络子集以及对应于需水量增加的设置发起对水力模型的特性和控制变量的逐步迭代调整。对特性和控制变量进行设置,以检测这2个作为分配了异常需求的节点的子集(其数量将通过迭代过程而下降)的既定区域内的泄露及其耗水量时间概况。

之后,可以通过图形界面将有关异常及其定位的信息呈现给操作者。这一实施例是有利的,因为其为异常检测提供了额外的鲁棒性。实际上,如果首先通过针对观察结果的规则的组合提出了异常,并通过受到了更加具体的调节的反演模型对其进行了确认,那么则说检测到了异常。

图8示出了将异常的定位呈现给操作者的示例。

通过显示装置将配水系统的网络的地图800显示给操作者。所述地图含有表示系统的管道的线,线的宽度表示管道的直径。所述系统含有大的管道,例如,管道810和811,还含有较小管道,例如,管道820和821。在网络中定位了三处泄露830、831、832,并使用大的圆形对其加以表示。可以插入有关泄露的相对重要性的信息。例如,圆的直径可以随着泄露的重要性的增大而增大。还有可能仅表示出被认为最严重的泄露,或者显示有关该泄露的额外信息,例如,具有最接近的特征的过去泄露的列表。

给出了上文描述的示例以作为对本发明的实施例的举例说明。它们不以任何方式限制本发明的范围,本发明的范围由所附权利要求限定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1