水电站智能告警系统关键技术问题浅析
2023-01-04迟海龙颜现波
迟海龙,颜现波
(1.北京中水科水电科技开发有限公司,北京 100038 ;2.中国水利水电科学研究院,北京 100038)
告警系统作为现代化水电站监控系统的重要组成部分[1],已经成为运行人员监视系统重要有利工具。事实上、现代化水电站运行中,对告警系统的依赖程度大大增加。告警系统提供绝大多数生产系统的实时运行信息(图1)。如何让告警系统快速、准确、高效为运行人员提供生产运行信息,是目前水电站信息化、智能化的一个重要研究方向。
图1 告警系统概要图
1 告警全生命周期管理模型
1.1 概述
国际自动化学会(ISA)及美国国家标准协会(ANSI)在 其 联 合 制 定 的 标 准(ISA.ANSI/ISA-18.2-2009)[2]中给出了如图2描述的告警系统全生命周期模型。这个模型对于所有适用的过程工业告警的各个阶段都给出详细的定义和描述,其中包括了10阶段。
图2 告警管理生命周期模型
1.2 阶段描述
(1)告警理念(A):在设计一个告警系统之前需要对该告警系统进行基本规划设计,定义具体的目标原则及实施方案的框架。
(2)识别(B):在此阶段需要确认潜在的告警,输入资料为过程危险分析报告和流程图,并给出可能的告警列表。
(3)合理化(C):在此对告警系统进行优化、合理化、分级、优先级和文档化。掌握告警数据库和告警设计要求,并完成告警的基本设计。
(4)详细设计(D):在设计阶段,根据告警属性和设计要求由阶段(C)(合理化)决定。设计含3个方面:基本告警设计、HMI(人机接口) 设计和先进告警技术设计。
(5)实施(E):实施阶段,安装告警或告警系统所需的活动并使其进入操作状态。新告警或新告警系统的实施包括系统的物理和逻辑安装和功能验证。
(6)运行(F):在运行阶段,告警或告警系统处于服务状态并执行其预期的功能。关于告警原理和每个告警目的的进修培训包括在这个阶段。
(7)维护(G):在维护阶段,告警或告警系统未运行但正在测试或修复。定期维护(例如,仪器测试)对于确保告警按设计如期运行同样重要。
(8)监控和评估(H):根据告警理念中规定的性能目标,持续监控告警系统和单个告警的整体性能。
(9)变更管理(A):在变更管理阶段,建议并批准对告警系统的修改。变更过程应遵循告警管理生命周期的每个阶段,从识别到实施。
(10)审核(J):进行定期审查,以保持告警系统和告警管理流程的完整性。
2 告警系统主要问题
2.1 告警阈值设定问题
告警的阈值问题是告警系统中一个重要问题,该问题体现在告警全生命周期模型的合理化、详细设计等阶段。首先阈值作为预警状态感知器的重要参数,对其设定会直接决定告警的准确度、置信度和系统负荷等,会影响操作人员对系统的信心。阈值按照数量可分为单参数和多参数。
(1)单参数阈值优化问题
单参数阈值设计问题可描述为信号检测理论的感 知 器ROC(Receiver operation characteristics)[3]问题, ROC最早应用在医学测试中,主要为测试生物医学样本的筛查阳性的准确度,按照实际标签和检测标签的对应有4种组合关系,分别为①(阳-阳),前者为样本真实标签,后者代表检测到的标签。所以这里描述为真正的样本阳性检测结果为阳性,同理还有②(阳-阴)③(阴-阳)④(阴-阴)。其中(阳-阴)为漏报,在告警体现为若阈值设置不合理,比如过高,则可能导致真正的需要告警的情况没有报出而称为漏报,统计学上也称之为Ⅰ类错误,(阴-阳)为误报,统计学上称之为Ⅱ类错误 。而(阳-阳) (阴-阴)为真正的告警率 。提高告警系统的准确度就是要求我们要正确设置阈值参数,提高正确告警样本数量在整个告警的比例。而尽量降低Ⅰ类和Ⅱ类错误告警的占比。而这两类错误之间也是相互关联影响的,在设置阈值时在其他条件不变的情况下,如果要求犯Ⅰ类错误概率越小,那么犯Ⅱ类错误的概率就会越大。同样的,如果要求犯Ⅱ类错误概率越小,那么犯Ⅰ类错误的概率就会越大。所以在实际中我们需要权衡两类错误对我们的影响的严重程度来确定具体阈值参数。在水电站实时控制的两种错误的告警中,我们更应该注意I类错误的比例。因为漏报可能导致的结果更加严重,同时也应该尽量压缩Ⅱ类错误以提高系统的置信度。
图3 阈值中ROC问题
(2)多参数阈值优化问题
为了提高单参数告警的准确度,降低误报和漏报的比率,实践中也会引入多参数来提高告警的效率和精度。例如:在判断设备告警阈值的同时我们可以引入设备工况参数,如在水电站告警系统中,停机检修状态下的各种告警可视作滋扰告警,应该采用有效手段屏蔽掉。另外在多参数阈值处理中,我们可以引入业务逻辑模型对多个参数进行综合分析处理得到最终单变量参数并按照单阈值的方式进行处理。
2.2 冗余告警、泛洪告警问题
水电厂告警系统正常工作中,存在某些开关状态量的抖动信息,在机组的状态变化时某些设备可能会频繁启动停止产生大量重复信息,监控系统自身的状态判断,比如网络的故障正常等大量信息,某些模拟量的参数的抖动变化,如果参数设置的不合理,压力 水位等传感器在某些生产工况下会产生大量的阈值告警信息。
泛洪告警。生产系统发生某些意外的情况下,会导致局部或者全体信息频繁动作刷屏。这些泛洪告警的数量巨大,产生时间短,告警到达速率非常大,这会使告警系统在短时间内陷入瘫痪失能状态,无法正常工作,对生产产生不利的影响,我们在设计告警系统的阶段中就应该重点考虑应对措施。
在处理冗余泛洪告警问题上,目前业内也提出多种方案。一种方案为对告警信息定义优先的等级,当告警系统过载发生时,系统优先保证等级较高的重要告警能迅速进入到操作人员的视野和处理范围内并在最短时间内被正确处理。还有的方案中采用延时等去抖方法,在个别告警频繁刷屏时进行屏蔽或丢弃,从而降低系统和人员的工作负荷。
2.3 告警上下文关联综合问题
传统的告警系统中每条告警内容都是分立处理,告警之间的内容没有相互关联的语义关系,在智能告警课题里提出了综合时序告警功能:系统内置了很多已经设置的关联规则(时序规则),在一个 “相当长的时间段”内,智能告警系统接收到某厂站连续发生多个告警或者事件信号,可以把这些连续发生信号当作为一个关联的有机整体,作为一个“综合事件”来进行处理,告警面板里发出1条由规则推理而得的最终告警。同时如果发现某个事件或者告警不满足告警间的关联规则时,也可以单独报出事件或告警的异常信息,同时给出不满足规则可能的原因,便于操作人员对系统告警信息的识别和分析。
对于告警的语义规则可以采用人工通过历史知识和领域内先验知识的表达来定义,在实际生产系统中,很多告警其实有着内在统一的联系,一簇事件群信息往往和某个设备的某种工况对应。这些事件群通常都是按照内在逻辑关系和空间、时间关系以固定的模式顺序发生。这种事件群我们可称之为时序规则告警信息。我们可以定义时序的事件规则来识别和发现这些告警并对其进行综合。在系统高级模块里应该设置可以自定挖掘和发现的告警规则并及时提示操作人员经过其确认后形成告警规则知识库,对未来的告警进行识别分析处理。
3 告警处理过程及技术
本节主要讨论位于告警管理模型运行(F)阶段的相关问题,对告警的具体执行处理过程一般分为识别、处理、展示等3个阶段。
3.1 告警产生的过程时间线
图4表示过程变量从正常状态转换到异常状态的过程变化,以及操作员是否采取纠正措施的两种可能情况。其中:
(1)正常(A)
正常告警状态定义为过程在正常范围内运行,告警处于未激活状态并且所有过去的告警都已确认。
(2)未确认(B)
当测量值超过告警设定值时,会产生未确认的告警状态。告警通知操作员在某些情况下并不一定立即确认告警。
(3)恢复正常(D)
恢复到正常告警状态的原因应是操作员在允许的响应时间内做出了正确应对。影响恢复正常时间的因素有很多。
(4)后果阈值
当操作员未采取任何行动,采取的行动不正确、不充分或行动未在允许的响应时间内完成时会产生比较严重的后果。后果发生在后果阈值处。
图4 告警响应时间线
3.2 告警的处理技术
告警一般都是在过程参量处理后发生,在数据处理模块中对测量的参数进行在线监视,如果超过给定阈值或者满足预设的规则时需要发出告警信息,针对泛洪告警的处理在此阶段采用技术有:
(1)延时防抖方式。当告警在识别阶段被识别后,并不会立刻发送到下一阶段处理模块中,而是采用一个时间窗口t参数。当t<=T(T为预设的防抖时间窗口宽度)时告警被暂时搁置并对其计时,当t>T后如果告警已经消失则不产生告警,如果告警仍然存在则发送至下一阶段产生实际的告警信息。延时防抖是去除频繁动作的滋扰告警最有效的手段之一,各个告警系统基本都具备此功能。它可以有效抑制大量过程参数暂态过渡引起或者由于干扰引起的瞬时跳变的告警。
(2)告警死区方式。根据文献[2]中给出的定义,告警死区是从所需的告警设定值到信号复归的信号量变化范围。告警在恢复到正常后,可以通过设置告警死区来对告警复归状态进行延迟处理,如图4可知告警恢复到限值以后并没有立刻返回正常状态而是超过一定的设定范围后才返回。
死区设置的工程依据应记录在告警文档中。在设置死区时,应保证设备/人员安全的同时最大限度地减少滋扰报警。过大的死区可能对过去的告警进行锁定而无法正常复归。
(3)前置滤波方式。对输入的信号噪声等可以采用滤波器对其进行滤除。继而得到有效的原生过程参量。常用的滤波器有滑动平均值滤波器、中值滤波器等[3],滤波器的采用可能会对有效信号进行抑制,而且也会带来延迟等开销,在工程中应予以足够重视。
3.3 告警展示技术
告警信息都是在告警面板中对最终用户进行展示呈现的,在此阶段,主要用到的有优先等级、过滤,排序、查找 、链接、语音、电话信息等功能手段。
告警面板中需要对不同等级告警采用不同的显示策略,一般在电站监控系统都要设置重要、故障、信息等不同级别。对于优先级较高的告警要保证其得到更多的显示资源和人机交互机会,从而保证运维人员在众多告警中排除干扰,及时应对。
告警展示中也要具有按条件查找筛选等功能来满足用户的不同告警处理需求。同时语音、电话和短信息等手段也是告警推送有益的补充手段。可以有效降低工作人员负荷 。
4 高级智能告警技术分析
人工智能技术发展经历了符号规则学习 、统计学习、深度学习等几个阶段。人工智能专家在每个阶段提出了大量宝贵的有意义算法和框架。这些宝贵成果对智能告警技术都有很好的指导借鉴意义。
4.1 基于逻辑规则告警
基于逻辑的告警规则是符号学习中最早期最为直接的学习方法 。该方法在告警处理中增加了逻辑处理,当一个告警产生后如果该告警数据点中配置相对应的规则,则需要将这个规则从对应的规则库中提取出来并对其进行求值,如果规则满足则产生一条基于规则的告警,否则对该告警信息进行闭锁阻止其出现在告警面板中。该告警策略在很多SCADA的告警系统都有采用。例如IP9000告警系统就可以对告警点配置逻辑规则并通过逻辑求值[5,6],产生基于规则的告警或者减少不满足要求的冗余低效告警。在符号学习中最重要的一阶谓词逻辑推理技术在过去被很多学者作为热点讨论研究。该策略可以通过先验的知识表达出知识逻辑规则,计算机可以通过这些规则进行逻辑递归推理等,求解出满足要求的解集。基于逻辑的告警处理策略具有语义清晰明确,表达方式易于人的理解等优点,但是逻辑规则策略也由于其逻辑的二元性(非此即彼),无法准确表达不确定的知识和具有概率发生的事件内容。
4.2 基于数据驱动的统计学习方法
统计机器学习是近几年被广泛应用的机器学习方法,当我们获得一组对问题世界的观测数据, 如果我们不能或者没有必要对其建立严格物理模型,我们可以使用数学的方法, 从这组数据推算问题世界的数学模型, 这类模型一般没有对问题世界的物理解释, 但是, 在输入输出之间的关系上反映了问题世界的实际, 这就是“黑箱”原理。统计学习在语音识别等领域里表现出卓越的性能而得到AI业界的广泛接受和重视。在告警系统中我们可以采用决策树(C4.5)算法[7]对告警信息的各种特征属性进行判别,判定某些告警信息是否为冗余低效告警,从而滤除噪声信息。也可以通过统计学习方法对告警分布和等级等特征进行标定。统计学习(有监督)基于大量的历史数据样本和标签,来提取有用知识对未来的数据进行预测和分析。该策略在大数据时代是十分适用的,但是某些场合下我们无法获得足够的样本集合时,该策略的效果可能会大打折扣。如在水电监控领域正样本(正常工况)数量很大,但是对于有意义的负样本(如设备故障或工况异常下的数据)获得则相对较为困难,所以模型训练比较困难,效果不一定理想。
4.3 基于深度学习的AI告警技术
按照计算机领域摩尔定律,计算机算力随着时间呈现出指数级的增长。由于近年来算力的获得成本逐年下降,以神经网络为代表的深度学习策略得到很好发展和应用。神经网络是模拟动物的脑神经结构而开发的计算机计算图网络,通过对网络的权重的简单线性叠加和非线性处理后,神经网络可以表达很强的知识,具有强识别能力。尤其在计算视觉(CV)领域基本达到了工业级实用水平。在告警系统中可以基于大数据,多维度数据等技术通过神经网络[8]来分析和描述告警发生的深层次原因,对告警进行溯源和关联分析。这样在泛洪告警发生时,可以撇去表象找到根源告警,并适当对整个告警信息进行剪裁,提高告警系统的信息表达效率和实效性。
5 结束语
对于智能告警系统处理技术的研究一直以来都是过程工业领域的一个重要课题。随着工业互联网4.0技术的不断推广和普及,各种异构的多系统的融合对告警系统提出更高的要求和挑战。在面对多系统大数据,系统互通互联等架构下,大数据处理技术和机器学习等高级技术也不断地被应用到智能告警系统中。如何让告警系统更“聪明”,更高效是未来该领域的主要方向。