CBR在电力信息运维中的应用
2016-12-13秦皇岛供电公司张屹李明祥
/秦皇岛供电公司 张屹 李明祥/
CBR在电力信息运维中的应用
/秦皇岛供电公司 张屹 李明祥/
在信息专业日常运维工作中,技术人员在长期的工作实践中积累了解决各类具有相似性问题的经验,并把这些经验收录整理。然而由于地域的局限性,信息很难进行共享。即使有些运维经验被集中收录,但在运维经验查询时,只能按文章标题、文章作者等这些信息检索。而在实际工作中碰到的故障现象往往是属于描述性的,仅凭这些信息并不能及时找到类似的案例。文章针对现有信息运维典型经验搜索引擎方式进行了分析,建立了一套专业的查询分析系统以更好地服务信息运维人员。
电力信息运维;CBR;案例库;推理
0 引言
在信息运维日常工作中,公司信息运维技术人员经常会碰到各类问题,如信息网络问题、信息系统软件、硬件故障等,这些问题往往具有类似性;在长期的工作实践中信息运维技术人员积累了解决这些问题的经验,并把这些经验收录整理,但是在实际工作中,碰到的问题现象往往是属于描述性的,仅凭这些信息并不能及时找到类似的案例来解决相应问题。提高企业管理水平,合理分配人力资源,以最小的人力创造最佳的生产效率,在企业信息化发展的今天,信息运维部门更应利用技术手段实现信息资源共享,而不是将信息资源封闭在一个孤岛上,传统的信息运维经验、规章制度查询、管理利用方式仅仅是将相关资料电子化,更类似于一本电子书籍或杂志,并没有实现技术上的创新,对于信息运维工作人员而言,对自身工作量减少和工作效率的提升没有太多帮助。如何减少重复性的工作,使信息资源充分共享被利用以达到发挥信息资源的最大使用价值。为了解决上述问题,避免同一类似问题被多次钻研,更好地运用公司的信息运维典型经验,发挥其价值,运用CBR技术建立典型经验信息平台达到资源共享的最大化。
1 国内外研究现状
通过借鉴人类解决问题的方式,基于案例的推理利用相关领域内知识专家日常积累的知识和经验来解决领域中的各种问题,从20世纪80年代开始逐渐成为人工智能领域的研究热点。在20世纪80年代初期,Roger Shank首次提出了CBR理论的认知模型及框架。之后Kolodner在此基础上,开发出了CTRUS的CBR系统。从此,CBR理论开始走向人工智能领域的研究和应用。特别是在20世纪80年代后期,ReMind系统的出现被认为是CBR从认知科学向人工智能方向转变的标志[1]。
CBR的研究共分两方面。研究的其中一方面是各个学科(如人工智能学科、数据挖掘学科、思维科学学科、计算机科学学科等相关类别)的知识及相关理论的集成及在对应实践领域内应用。具体应用表现在天气、灾害预报,以往法律审判裁决,机器常见隐患故障判断处理,企业未来发展咨询及重大事项决策,以及解决各类常见通用问题。CBR研究的另一方面是通过某些技术方式如匹配算法搜索、抽取特征值等从案例检索、案例修正和案例学习等方面的研究深入到相关方面具体问题的研究[2]。
专家系统在电力系统中已经得到了广泛的应用,不过这些应用大部分都集中在故障诊断上。主要采用的方法有专家系统、人工神经网络、优化技术、Petri网络、粗糙集理论、模糊集理论、贝叶斯网络、多Agent技术和基于故障录波器信息等[3-8]。
2 系统开发设计
2.1 CBR技术介绍
CBR(Case-based Reasoning),以案例为基础的推理,国内学术界通常称之为基于案例的推理。该推理方式和以规则为基础的推理方式不同,基于规则推理方式是通过建立规则库,在进行案例判断时通过逻辑运算比较是否符合对应规则来给出对应结果,而CBR的推理方式更多的是通过比较案例库中某些案例的相似度,给出待解问题的相应解决方案,即通过旧案例解决新问题[9-10]。在CBR系统内,把一个故障或问题事件的发生原因、现象、导致的结果及解决的方法描述成一个案例,案例库就是过去所有已发生的并已积累下来的知识内容,当然在CBR中这些案例是需要通过一定的数据组织形式存在的,以便随时调用。CBR技术弥补了RBR(基于规则的推理)的不足,解决了在技术领域内那些在内容上表述困难的问题,同时在案例库自我学习、更新技术上与其他技术相比也较为先进。
CBR的基本思想是[10]将所发生过的或是待解的问题描述、问题可能导致的结果、解决问题的方法等内容用案例的形式表现,案例库中已存在的案例的积累是一个历史积淀的过程,是以往处理问题方法经验的总结,在日常遇到新故障时,根据以往类似故障处理经验即旧案例搜索来解决新故障,同时可将此过程在CBR中作为一个新案例进行积累,并作为未来可能会发生故障的参考案例,如图1所示。这就像日常进行探索性工作时更多的是依靠前人的经验摸索解决。
在CBR方法中,通过案例将无法或者很难以规则形式表达的专家求解问题的深层知识和经验保存起来。正确的解答案例保存在案例库中,当处理新的案例的时候,在案例库中找出与新的案例最匹配(或相似)的一个案例,如果该案例满足要求,则输出结果;否则对最匹配(或相似)的案例进行修改以满足要求,并将修改后的案例添加到案例库中。
图1 CBR的基本思想
2.2 案例表示及案例库的建立
在案例库的初期阶段,由于案例库中的案例积累数量相对较少,在组织架构上可以相对松散,但案例库并不是一成不变没有数据更新的,随着更新案例数目的逐渐增加,要极力避免这种松散、无序的情况,在数据组织形式上,可以用关系数据库来解决该问题。
用数据库的方式以框架结构为基础组织案例、存储案例是目前使用较多的方法,用框架和槽的形式来对应相关案例的特征,数据库中的数据项和数据表名字则由槽和主框架逐一对应表示,其中的每一个槽都可以作为一个子框架,当其展开时,数据库内的其他数据表项可以由这些子框架、子特征作进一步关系对应,最终完成数据库表和主框架表构成关系。案例库中大量案例在系统内存储的表现形式就是一个庞大的数据表框架结构,每当有新案例数据更新存储,就存储数据表,对应填充数据项。
在CBR系统案例推理运行效率上,如何将案例适当的表示是最主要的问题,案例的表示牵涉以下几项问题:
1)在众多的信息中哪些是有用的可以存储在案例中;
2)在描述案例内容上用何种结构是合适的;
3)在案例库内该如何进行组织和索引。
根据搜集上来的运维信息文档的情况,总结出案例库所应包含的信息:知识编号、知识分类、作者、创建用户、创建用户所属部门、标题、摘要、关键字。案例表示即可描述如表1所示。
当前的CBR系统大多是用静态的框架来描述案例,这种方法有以下的缺点:首先,当新的案例不断出现的时候,旧的框架无法描述新案例的新特征;其次,框架的构造是很繁琐的一项工作,对于CBR系统应用而言,只能在那些可以积累大量经验并且这些经验可被反复使用的知识领域内推广。
用关系数据库存储案例是比较通用的方法。在案例库结构映射上可以通过特征空间结构来实现,案例对应着记录,特征分量对应着字段,使用时通过以下流程来实现:建立一个数据库管理系统,可供选择的软件很多,如Access、Oracle等;建立一个数据库结构主要功能用作案例存储;将案例导入到数据库中构成案例库。
表1 案例描述
关系数据库除了为专家系统提供一种良好的知识组织形式之外,还能够为专家系统提供强大的索引能力。
案例索引就是能将各个案例彼此区分的主要关键字汇集,而案例库索引主要参考了数据库的索引技术,虽一字之差,但还是有区别的:
1)二者索引时在所选择的数据库上是通用的,但索引时在关键字的选取和标准的选择是不同的。案例库的索引为了区分各个案例,主要关注如何从定义上将案例库划分为实际有作用的分段。
2)二者在索引时比照关键字的方式不同。在案例检索上,目前主要采用的关键字相似度匹配的方式;而在案例库索引上,在数据库系统内检索相关数据记录时,要精确对应相关关键字段,去除那些不符合条件的记录。
因此,本文将选取关系数据库组织和存储案例,构建知识库,同时在数据库的索引的基础上,实现对案例的相似匹配。
案例库的所对应的数据表结构如表2所示。在表2中,包含如下字段:KNOWLDEGE_ID为知识编号、主键;CREATOR是知识的创建者;DEPARTMENT_ID是知识所属的部门;VERIFY是知识的审核者;TITLE是知识的标题;ABSTRACT是知识的摘要;KEYWORD是知识的关键字;FILE_PATH是包含该知识的原始文件的存储路径。
表2 案例表
根据表2给出的案例库结构,给出的电力运维案例实例文档如表3所示。
表3 案例实例
2.3 案例推理机制
表4给出了电力运维信息的案例表示方法的8个字段的数据类型以及能否作为案例的属性特征。
表4 属性特征值的选择
从表4中可以看到,在这8个字段中,知识编号不能作为属性特征,这是因为知识编号是案例在数据表中存储的主键,对于用户而言,没有任何意义。而其他7个字段则都能够作为属性特征。
同时也能够看到,这7个属性特征都是文本型的。但是这7个属性特征在相似度计算上也并不是完全一样,可以将其分成两大类:
第一类是取值限定在几个固定的值上的属性特征,如知识分类和创建用户所属部门。这种类型的属性特征只可能有两种匹配结果完全匹配或者不匹配。其特征相似度可以用下式计算
第二类是取值无法限定的属性特征。剩下的5个属性特征都属于这一类。设Oi和Ei分别为目标案例和源案例中的某个属性特征的文本类型的取值。则Oi和Ei匹配情况则可以表示如下
式(1)与式(2)相比,增加了对于部分匹配的定义。
给出属性特征的相似度计算公式之后,在计算案例相似度之前还要确定各个属性特征的权重。权重的分配是很多研究领域都会遇到的一个重要问题,如何确定权重值,方法有很多种,在这里主要考虑的是用原始数据的来源来计算权重,按照这一标准主要有客观赋权法和主观赋权法两类:客观赋权法,目前对其研究还不是很完善,偶尔会发生与指标的实际重要程度严重偏离的情况,主要算法原理是用数学方法计算原始数据之间的关系得出权重值,目前应用较多的有均方差法、主成分分析法等;主观赋权法,这一方法客观性不强,需要相关知识领域专家根据自有经验判断原始数据并赋予合适的权值,如AHP法、古林法等;综合以上两种算法优缺点,学界内新提出了一类算法组合赋权法,其又分为线性加权组合方法和乘法合成的归一化方法两类。
对于本文根据专家经验以及用户使用情况,表5给出了各个属性特征的初始权值。然而在实际的使用过程中,用户输入的属性特征可能只是上述7个属性特征中的一部分,只对用户输入的属性特征进行匹配,而忽略没有输入的属性特征。同时用户也可以根据自己的情况自行调整各个属性特征的权值。
表5 属性特征值的权值
本系统的推理流程如图2所示。
首先用户根据具体情况输入要查询案例的属性特征,输入的时候可以根据需要调整各个属性特征的默认权值。然后推理机根据用户输入的属性特征在案例库中进行相似度匹配。这里系统会有一个默认的匹配度的阈值,用户也可以更改。凡是匹配度大于这个阈值的案例均会匹配成功。如果没有匹配上的案例,则可以返回重新输入案例的属性特征。如果存在匹配的案例,用户则可以查看这些案例的详细信息。当用户没有找到匹配的案例或者有匹配的案例但是案例的内容不能满足用户的需求的时候,用户可以根据自身的情况添加新的案例。
具体的算法描述如下:步骤一,用户输入属性特征,根据需要调整各个属性特征的权值以及匹配阈值。步骤二,系统进行相似度匹配,如果不存在匹配的案例并且希望重新输入属性特征则转步骤一;如果不存在匹配的案例并且希望添加新案例则转步骤四。步骤三,按照相似度从高到低将匹配成功的案例显示给用户。如果用户对这些案例提供的情况满意,则转步骤五;如果不满意,想要添加新案例,则转步骤四。步骤四,添加新案例。步骤五,结束。
图2 推理流程图
3 基于CBR技术信息运维典型经验查询系统的应用
下面将给出使用本系统进行电力信息运维案例推理的具体例子。问题案例描述如下:信息运维人员接到报告反映某变电站远程抄表客户端(采集器)网络不通,现场查看后网络设备运行正常,网络设备与采集器之间的网络连接正常。之前已处理过类似案例并已在案例库内储存,此次需要做的是检索相应案例进行问题解决。在案例库内储存的相关案例知识表如表6所示。
表6 案例知识表
经过查询,发现满足此特征的案例共有三项,如图3所示。
图3 案例查询后结果反馈
由于此故障案例主要针对的是变电站远程抄表客户端网络不通,这时我们可进一步通过匹配关键字进行有针对性的查询,最终检索到一个解答案例.
4 结束语
电力信息运维典型经验查询系统在利用CBR这一技术后,不管是信息运维技术人员还是普通员工在遇到日常无法解决的故障后,需要的仅仅是在系统内输入几个查询的关键词即可调阅出类似的相关运维经验,处理相关问题,其实这些功能更类似利用互联网的搜索引擎搜索自己所需的相关资源,通过不断地尝试所匹配的案例来解决问题,直到找到最合适的唯一案例或是几个案例结合使用为止,弥补了基于规则匹配的专家系统模糊查询功能不足的缺陷。
[1]孔艳,刘成新.利用基于案例的推理来支持学习[J].中国现代教育装备,2005(11):95-98.
[2]郭艳红,邓贵仕.基于事例的推理研究综述[J].计算机工程与应用,2004(2).
[3]毛鹏,许扬,蒋平.输电网故障诊断研究综述及发展[J].电力系统保护与控制,2005,33(22):79-86.
[4]郭创新,朱传柏,曹一家,等.电力系统故障诊断的研究现状与发展趋势明[J].电力系统自动化,2004,28(1):34-37.
[5]毕天姝,倪以信,杨奇逊.人工智能技术在输电网络故障诊断中的应用述评[J].电力系统自动化,2000,24(25):11-16.
[6]陈玉林,陈允平,孙金莉等.电网故障诊断方法综述[J].中国电力,2006,39(5):27-31.
[7]曾素琼.人工智能及其在输配电网络故障诊的应用[J].海南大学学报自然科学版,2006,24(2):188-193.
[8]廖志伟,孙雅明,叶青华.人工智能技术在电力系统故障诊断中应用[J].电力系统及其自动化学报,2003,15(6):71-78.
[9]严悦,哈进兵.利用ART神经网络优化相似案例匹配方法 [J].信息系统工程,2012,(3):70-74.
[10]赵晓军,田富强,胡和平.流域水量调度专家系统的应用研究[J].水力发电,2005,21(9):70-74.