余 铮 冯 浩 查志勇
(国网湖北省电力有限公司信息通信公司 武汉 430077)
国网公司内部各领域及专业在信息系统的支撑下高效运转,信息系统运行支撑压力越来越大,面对50 余套信息系统以及400 余台服务器的运行维护工作量,运维人员少,工作任务艰巨。现阶段的信息运维综合监管平台集“调度、运行、检修、客服、三线”于一体,已具备高效的基础数据采集功能和资源监测告警功能。
网络和业务更新变化快的情况下,快速发现、定位和处理故障的难题,初步实现信息系统运行态势感知及智慧处理。系统提供了强大的REST API以及方便的Email 集成方式,可将任何支撑系统快速接入到一站式的消息平台。当告警信息蜂拥而至时,对运行人员的处理能力提出了更高的要求,同时大量重复的告警给准确及时的推送带来了很大的困难,为了应对这些问题,根据不同的运维人员的业务水平,该文的主要目的是利用案例推理方法做到精准的消息推送。
告警信息的可视化方便了工作人员工作的同时,也受到了大量信息,特别是重复性的告警信息的困扰,陈翔[1]等提出利用规则库的方法进行告警压缩,和分阶式实时综合故障诊断方法,对告警实现自协化处理。马游[2]提出设置重要信息超时告警来避免值班员错过重要信号,同时提出对告警信号进行合并和分级分类筛选以减少监控信号的数量的方法。李昊旸等[3]根据告警特征分为元件级告警和系统级告警,类型有单一、串联、并发、组合、灵敏度和梯度告警。赵家庆等[4]提出了多主题电网设备综合智能告警技术框架,以基于设备单元的告警信息为切入点,采用时间序列数据库高效集成支撑平台,实现以告警分析为中心的多维度、多主题综合分析和预警功能。王健等[5]提出利用概率统计方法,计算出设备不同告警源下的正确告警和错误告警的次数获得先验概率;再通过贝叶斯网络对不同告警源及其组合的可信度进行后验概率的计算,从而得出在不同告警源告警及组合下的告警可信度,将告警信息以量化的形式更准确地展现给调度人员从而降低错误告警次数,提高调度效率。肖艳炜等[6]从 SCADA 系统获取一次系统模型,从保信系统获取二次系统模型,采用基于溯因图的故障诊断方法,分析SCA-DA 系统和保信系统提供的开关变位、保护动作、重合闸等告警,智能推理故障元件和故障类型。朱子坤等[7]基于特征映射的智能告警系统,通过获取电网运行告警信息所属调度对象的特征信息,包括空间位置特征量以及其所表征的调度对象内在运行状态,并建立这些特征信息的虚拟映射逻辑,将自然语言描述的推理规则映射为计算机逻辑表达式,提高计算机处理效率。庄博等[8]从设备集中监控业务的基本需求入手,介绍了监控智能告警包含的功能,阐述了监控智能告警巡视的内容和各项功能,阐述了监控智能告警展示的功能、数据来源并与调度智能告警进行了比较,介绍了告警智能分析推理的功能。张杰明等[9]设计了电网运行智能告警系统的架构,分析基于专家知识库的智能推理规则。黄国政[10]等探讨了调度自动化系统告警信号智能处理的机制和规则。为了更好地帮助决策,陈艳[11]等提出了一种改进的最近邻算法进行告警类别的判断。蔡子恒[12]介绍了几种综合智能告警技术。闪鑫[13]等提出面向调度运行模式的综合告警、设备故障的在线快速诊断以及多有调度间的故障实时共享方案。王荣[14]等提出了一个智能告警框架并阐述了具体功能。陈开等[15]提出为了提高风险预测能力以及故障分析能力就要积极进行故障综合分析与告警信息系统构建,大力开发告警信息软件,利用数据库以及模块来预测风险科学,同时对故障信息作出分析和处理,从而有效避免电网运行中故障问题发生。
在电网信息系统行期间,系统中的消息感知模块将会接入各个监控平台的告警与事件。数据主要来源于各类型的网络设备、数据库、应用系统及主机。通过多种协议如 syslog,SNMP,ssh,telnet,WMI,jdbc。获取到日起信息后,可以进行规范化,分类,过滤并推送到核心层进行分析、存储。如图1 所示,整个消息感知模块的业务功能分为五个主要步骤。各步之间相互依赖,各步中传递数据在不断的发生变化,最后实现精准推送及可视化展示。
图1 消息感知模块
基于案例的推理(Case-Based Reasoning,CBR)是人工智能发展较为成熟的一个分支,最由早耶鲁大学Schank 教授在1982 年提出的,它是一种基于过去的实际经验或经历的推理,是人工智能领域中一项重要的推理方法。对基于案例的推理来说,求解一个问题的结论是从记忆里或案例库中找到与当前问题最相关的案例,然后针案例中的解决方案做为解决当前新出现的案例或是进行必要的改动以适合当前需解决的问题,此持术已成功在法律案例分析、辅助工程设计等领域取得了实用性成果。通过对国网信息化系统中消息感知模块的仔细分析,精准推送功能起到关键的呈上起下的作用,前面的功能的有效实现是此功能的重要前提,此功能的实现也是后续功能的重要前提。通过对国网系统中的数据规范化后,可以清晰地看到告警中信息的重要组成成分:告警数据来源,告警信息的详细描述,及推送相关业务人员。基于案例推理的框架如图2所示。
图2 案例推理流程图
基于案例推理方法中有三个重要的实现步骤:案例表示,案例检索及案例重用或调整。
案例表示是案例推理的重要基础,实际应用环境中它表示为过去曾解决过的问题。在该文的研究工作中,将已处理过的告警信息作为一个案例,即包括告警信息及对此条告警的处理方法,从而可以形成案例模板。用形式化的方法可以表示为:告警数据来源:{硬件故障,网络故障,系统服务故障…},告警信息:{来源,具体描述},业务人员:{专责人员,系统管理员…},从表1 中可以看到告警信息的案例描述,当系统中的这种案例积累起来后,就会形成一个案例数据库,此案例库就可以作为后续问题的一个参考库。
表1 案例库中的案例模板
表2 新出现的案例模板
相似案例的检索是基于案例推理中的一个关键操作,即当新的案例出现时,从前面提到的案例库中去搜索与此新案例最相似的案例,并提取找到的案例中的解决策略作为新案例的解决策略,搜索过程的时间消耗主要是花在查找过程,提取过程非常迅速。为了更好地实现查找过程,该文将采用自然语言处理方法对告警信息进行词法分析,提取重要的相关词,将自动保存在第4 个属性中。然后利用词向量的方法对告警信息进行相似度计算,即基于词汇的重叠利用Jaccard 相似度度量算法完成计算,具体公式如下:
其中,A为案例库中的带有解决方案的案例,B为新出现的问题案例,在该文中,通过词法分析后获得案例相似性,将相似阈值设定为[0.4,1]这样的范围表示两者非常相似或基本等同。同时,随着系统运行时间的增长,案例库会不断的变大,近而影响到的是搜索时间的问题,对于国网系统的应急技术,搜索时间必须要在合理的限制内,为此,该文根据案例模板中的描述,设计了各种索引方便进行检索。
在前一步中检索出来的案例中的解决方案,若确认与问题案例有很高的相似性,则可以直接利用它的决策方法来进行推送,或相似性不足以让相关人员满意,则可以人为地进行调整,调整后的决策与新案例将再次存放到案例库中作为后续的问题的参考。
基于案例推理的技术方法中,对其使用效率的关键影响因素为案例库的大小,案例的数量不仅直接影响着决策的质量,而且影响着检索速度,案例库越大,直接线性检索就会很慢,所以,另一个关键影响因素是检索技术,根据国网数据的特点,设计了不同的索引来提高检索速度。该文利用系统运行数据进行了一定量的实验,选取了一段时间内大约10000 条告警数据进行分析,从最初的库例库数量为0 开始运行推理过程,一直到8000 条案例,剩余的2000条作为索引设计分析的最终测试用例。
在测试中可以看出,在库例库较小时,能找到的相似案例中的决策个数也较小,随着案例库中案例增多,决策个数的数量也会随之增加,可以保证决策的质量。
图3 案例库大小影响图
因测试用到的数据量较小,实际的运行都在毫秒数量级,差别不是很大,所以,该文在实际的测试中采用给定一定的相似值的情况下,利用找到相似案例时的比较次数作为参考,比较次数越多,会反应出运行时间越多。
图4 索引技术对比
为了图示方便,在图4 中的横坐标在每个点上都缩小了400 倍,实验中设定的相似值为0.7。从图4 中可以看出,有索引时的比较次数虽然也在随着案例库的大小在增长,但是增长的幅度远小于没有索引技术的比较次数。说明,设计的索引可以有效的提高检索速度。
该文针对国网信息化系统中的消息感知模块的实现给出了一个基于案例推理的方法实现,详细阐述了整个框架的实现,描述了案例的表示,案例的搜索及案例的重用和修改的具体实现过程,为了验证方法的有效性,该文也进行一定规模的实验验证,通过实验结果分析,证明了该文提出的方法的有效性。
在今后的工作中,我们将进一步分析告警信息,更加全面地设计案例模板,同时再改进索引技术,以提高检索速度,并在更大数据集上进行测试。