(电力系统及其自动化专业论文)面向对象的网调继电保护日常运行管理专家系统.pdf_第1页
(电力系统及其自动化专业论文)面向对象的网调继电保护日常运行管理专家系统.pdf_第2页
(电力系统及其自动化专业论文)面向对象的网调继电保护日常运行管理专家系统.pdf_第3页
(电力系统及其自动化专业论文)面向对象的网调继电保护日常运行管理专家系统.pdf_第4页
(电力系统及其自动化专业论文)面向对象的网调继电保护日常运行管理专家系统.pdf_第5页
已阅读5页,还剩55页未读 继续免费阅读

(电力系统及其自动化专业论文)面向对象的网调继电保护日常运行管理专家系统.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

、c l i p s 专家系统作为一个支持面向对象知识表示的专家系统,不但可以使知识表示更贴近实际、更直观,而且使知识表达的封装性更好,可以方便的集成嵌入到现在流行的面向对象的高级开发语言中,大大降低了程序编制的难度。继电保护的日常操作规则和整定原则是非常明显的规则,非常适合产生式知识表示,用专家系统的知识库来实现,逻辑清晰简单,编辑修改方便。将c l i p s 的推理机集成到系统中完成推理操作,实现方便,而且大大降低了主程序逻辑实现和程序控制的难度,程序设计和编制的工作量大大减轻。同时本系统将专家系统知识库作为文本单独存放,真正实现了知识和推理相分离。知识库的知识内容作为系统的主要逻辑核心,是系统移植、修改和维护的主要内容,而知识的分离存储使得系统的修改和维护的目标集中,更重要的是对知识库的编辑修改不涉及任何主程序框架的内容,主程序就像是一个强大的推理引擎,对知识库的知识进行理解执行。这样,加强了程序的开放性、移植性和维护性。为了加强程序本身的可扩展性,程序中内建了知识编辑器,该编辑器提供了知识清晰的框架,并对知识编辑进行实时纠错,确保了知识的正确性。知识编辑器的开发进一步加强了系统自身的开放性。本系统的成功开发,为c l i p s 专家系统运用到电力系统展示了良好的前景。;j j |关键词:专家系统,面向对象,整定计算,c l i p so b j e c to r i e n t e de x p e r ts y s t e mo fr e l a yf o re l e c t r i cp o w e rd i s p a t c h i n gb u r e a ua b s t r a c tw i t ht h ef a s td e v e l o p m e n to fp o w e rs y s t e m s ,t h e r ea r em a n yc h a n g e so ft h en e t w o r ks t r u c t u r e sa n du p d a t e so ft h ed e v i c e sw h i c hm a k et h ed a i l yw o r ka n dv a l u es e x i n go ft h er e l a y i n gm o r ea n dm o r ed i f f i c u l t ,t h e s eb r i n gt h er e l a y i n gw o r k e r sah e a v yb u r d e n ,t h en e e do ft h ec o m p u t e ra i d e ds y s t e mi sm o r ea n dm o r eo b v i o u s s ot h ee l e c t r i c a lp o w e rd e p a r t m e n to fs h a n g h a ij i a o t o n gu n i v e r s i t yc o o p e r a t e dw i t he a s tc h i n ae l e c t r i cp o w e rd i s p a t c h i n gb u r e a ut od e v e l o pt h ee x p e r ts y s t e mo fr e l a y i n g e x p e r ts y s t e mi so n eo ft h em o s ta c t i v eb r a n c h e si nt h ea r t i f i c i a li n t e l l i g e n c ef i e l d s t h e r ea r em a n ys u c c e s s f u la p p l i c a t i o n si np o w e rs y s t e mi nt h er e c e n ty e a r s ,b u tm o s to ft h e mj u s tu s et h ei d e ao fe x p e r ts y s t e ma n dr e a l i z ei tu s i n gt h eh i 曲一l e v e lp r o g r a m m i n gl a n g u a g e t h e yh a v es o m ee x p e r ts y s t e mf u n c t i o n s ,b u tt h e yd o n ts e p a r a t et h ek n o w l e d g eb a s ew i t ht h er e a s o n i n gm a c h i n e u s i n gc l i p sf r o mn a s aa n dp r o g r a m m i n gl a n g u a g ec + + w ed e v e l o po u rg e n u i n ee x p e r ts y s t e m t h i sp a p e rb r i e f l yp r e s e n t st h ec h a r a c t e r i s t i c so fe x p e r ts y s t e ma n dc l i p s ,a c c o r d i n gt ot h es e t t i n gc r i t e r i ao fr e l a y i n ga n dt h ed a i l yr u l e so fo p e r a t i o n ,w ea l s od e t a i l e d l yp r e s e n tt h ed e v e l o p m e n to fo u re x p e r ts y s t e m c o m p a r i n gw i t ht h et r a d i t i o n a le x p e r ts y s t e m ,o u rs y s t e ms h o w sm a n ya d v a n t a g e s0 b j e c to r i e n t e dr u l e sc a l lb ep r e s e n t e di nc l i p s ,t h i sm a k e st h ek n o w l e d g ep r e s e n t a t i o nm o r ei n t u i t i o n i s t i ca n dc l e a r , t h ek n o w l e d g ee n c a p s u l a t i o nm a k e si te a s yt ob ee m b e di n t ot h es y s t e md e v e l o p e db yt h eo b j e c to r i e n t e dp r o g r a m m i n gl a n g u a g e t h er e l a y i n gv a l u es e t t i n gc r i t e r i aa n dt h eo p e r a t i o nr u l e sh a v eo b v i o u sp a t t e r no fk n o w l e d g er u l e s ,s oi ti se a s yt or e p r e s e n tt h e mi nt h ek n o w l e d g eb a s e i n t e g r a t i n gt h er e a s o n i n gm a c h i n ew i t ht h em a i ns y s t e m ,t h ep r o g r a m m e r sc a ns a v em u c ht i m eo nt h ed e s i g na n dc o d i n gf o rr e a l i z i n gt h er u l e s l o g i c o u re x p e r ts y s t e ms e p a r a t e st h ek n o w l e d g ew i t ht h er e a s o n i n gm a c h i n e ,t h ek n o w l e d g eb a s ei st h ec o r el o g i cp a r to ft h es y s t e ma n dm a n yc h a n g e sa n du p d a t e sc a nb ei m p l e m e n t e db yj u s tu p d a t i n gt h ek n o w l e d g eb a s e t h ek n o w l e d g eb a s ef i l ec a r lb ee a s i l yu p d a t e du s i n ga n yt e x te d i t o r , s ot h es y s t e mi se a s yt ou p d a t e t h i sm a k e st h es y s t e mm o r eo p e n i n ga n de a s yt ot r a n s p l a n tt oo t h e rp o w e rs y s t e mn e t w o r k w ea l s od e v e l o pt h ee m b e dk n o w l e d g ee d i t o rw h i c hm a k e st h es y s t e mm o r eo p e n i n ga n de x t e n d a b l et h es u c c e s so ft h ed e v e l o p m e n tg i v e sab r i g h tf u t u r ef o rt h ea p p l i c a t i o no fc l i p se x p e r ts y s t e mi np o w e rs y s t e m k e yw o r d s :e x p e r ts y s t e m ,o b j e c to r i e n t e d ,v a l u es e t t i n go fr e l a y i n g ,c l i p s上海交通大学硕士学位论交第一章概述第一章概述1 1 专家系统在电力系统的应用现状专家系统作为人工智能领域中最活跃的一个分支,近年来在电力系统中取得了广泛的应用。利用专家系统基于知识规则的特点,在许多规则明确的应用中,大量引入了专家系统,如:发电厂操作票管理系统、发电机变压器操作管理、调度操作管理系统、继电保护整定计算和网络拓扑分析等。目前,大多在电力系统中的专家系统应用都是利用专家系统的概念,采用p r o l o g 、l i s p 等早期专家系统工具来实现专家系统知识表示和推理,有的甚至是自己定义知识格式,在主程序中利用逻辑判断推理来实现专家系统的功能。这些系统中的主要缺点是专家系统的功能不够强大,有很多知识推理都是靠在程序中用逻辑判断来遍历搜索,效率比较低,同时最重要的是没有一个统一的知识表示模式,很多甚至没有实现知识库与推理机的分离。而利用p r o l o g 或l i s p 等专家系统语言开发的专家系统虽然强大,但是有一个缺点,就是不能很好的和其他系统集成。基于对已有的专家系统的研究,本课题将采用c l i p s 这种专家系统工具,它可以很好的克服上述的缺点,给程序的开发带来极大的方便。1 2 课题来源本课题来自于由上海交通大学和华东电力调度局双方合作研制开发的华东电网继电保护日常运行管理专家系统。该项目包括短路电流计算、整定计算和专家系统等模块,本课题是其中的专家系统这一子课题,目标是利用c l i p s 作为开发工具,建立面向对象的继电保护日常运行专家系统,同时,在将专家系统运用于整定计算上做了首次尝试。1 3 华东局专家系统简介华东电力调度局专家系统的开发始于1 9 9 9 年,该局自从购买了p s s 厄后,该软件在全局一次系统中已经得到了较好的应用,潮流数据已经初步建立,该软件的强大功能也逐渐得到了发挥。为将p s s e 应用到二次系统,需进行p s s 厄短路计算实用化开发工作。该开发工作由上海交通大学电力工程系承担。自承担该项目以来,我们对p s s e 软件本身的技术性能进行了大量的研究,挖掘、整理了包括串补、网络等值、单相重合闸等在内的一系列重要计算功能,完成了系统序网参数格式的整理并和继保科一起进行序网参数的建立,并根据二次系统计算的需要,开发了分支系数计算、线路轮断计算、节点轮流故障计算、线路定步长移动故障计算、接地阻抗定步长变化故障计算等一系列重要计算功能。通过这些开发工作,使我们对p s s e的技术性能、使用方法、参数格式,尤其是其强大的二次开发能力有了很好的掌上海交通大学硕士学位论文第一章概述握。现在,华东电力调度局将建立全网一次、二次统一数据,从而建立华东电网统计算平台,实现全网数据共享。为此,华东电力调度局召开了华东电网三省一市会议,大家根据各自的应用实践普遍认为:p s s e 具有强大的计算功能,基于该平台,建立全网统一数据具有重要意义。但是,为了实现这一目标,还需要对其做大量的开发工作。根据我们对p s s e 性能的剖析,以及和继保科、运方科的广泛接触,我们已开发了基于p s s e 的短路电流计算和整定计算程序,这些模块已投入试用,并在进行不断的改进。p s s e 作为电力系统仿真计算软件,它仅擅长于基于精确数学模型的数值计算。但是,在电力系统中存在大量的复杂的、模糊的、难以量化的因素,例如:当系统运行方式发生变化时,继电保护人员需要进行保护的投退方案的确定,在这样的场合,数值计算难以发挥其作用。专家系统作为人工智能领域中最为活跃的一个分支,近年来在电力系统中获得了很多成功的应用。专家系统特别擅长于基于规则和经验的推理计算,因而非常适合解决电力系统中的复杂的、模糊的问题。由此可见,将p s s e 和专家系统结合起来,就是将数值计算和逻辑推理结合起来,这样才可以为电力系统分析计算提供完整的解决方案。我们在此将n a s a ( 美国航空航天局) 的专家系统工具c l i p s 运用到继电保护日常运行管理系统,当系统运行方式发生变化时,辅助继电保护人员进行保护的投退方案的确定,同时由于继电保护定值整定是明显的基于规则的问题求解,所以我们在辅助保护定值的计算工作中做了尝试。我们深切认识到,开发基于p s s e 的华东电力调度局继电保护日常运行管理专家系统( 以下简称专家系统) 具有重要意义。为此,由上海交通大学电力工程系和华东电力调度局合作,开发华东电网继电保护日常运行管理专家系统。1 4 本课题的意义1 4 1 继电保护整定计算专家系统的意义随着我国电力工业的迅速发展,各大电力系统的容量和电网区域不断扩大,致使电网结构日趋复杂,整定计算的复杂程度也不断增加。一个整定方案由于整定配合的方法不同,会有不同的保护效果。因此,如何获得一个最佳的整定方案,对继电保护正确地发挥作用是非常关键的。随着计算机的广泛应用,计算机在整定计算中发挥了巨大作用,出现了许多用于整定计算的程序。传统的整定计算程序要依靠编程人员对整定规程深入理解后,将其以逻辑的形式在程序中表达出来。但是由于电力系统网络结构的千差万别,在整定规程的应用上也各不相同,导致整定规则有着或多或少的差别,这使得一个传统整定计算程序在移植到其他网络时会产生较大的困难。人工智能( a r t i f i c i a li n t e l l i g e n c e ,简称a i ) 被誉为本世纪的三大科学技术之一,而6 0 年代中期开始出现的专家系统( e x p e r ts y s t e m ,简称e s ) ,作为人工智能上海交通大学硬士学垃论文第一章概述的一个分支,由于其实用性能高,已经引起了各科技领域、经济界、工程部门的充分重视,已经成为各国最热门的一个竞争课题。专家系统对于解决继电保护的配合整定的不确定性是很适用的,而且是可行的。利用c l i p s 强大的推理能力可以很容易地解决整定计算中的配合问题。利用c l i p s 所编写的整定程序具有很强的移植能力,而且具有可读性好,便于修改等优点。因此建立在整定规程知识库基础上的专家系统将给整定人员带来极大的方便,同时也必将大大提高整定人员的整定工作效率。因此,我们从事的整定规程知识库的建立是继电保护专家系统的基础部分,也是极为重要的部分。为此,我们尝试建立一个基于专家系统的整定推理引擎,力图建立适应性更强的整定计算程序。这项工作对于实现一个完整有效的专家系统是相当重要的。1 4 2 继电保护日常运行管理专家系统意义继电保护在电力系统中起着重要的作用。当系统运行方式发生变化时,继电保护人员需要进行保护的投退方案的确定和保护定值的计算工作。由于电力系统的结构、投退方案的确定、运行方式等受诸多因素的影响而在经常发生变化,因此确定保护的投退方案是一项极为复杂的工作。方案好坏的判断,不仅需要从整个系统角度上加以考虑,而且必须考虑保护工程师的经验,根据具体应用做出调整。随着电网规模的扩大,这个工作也将越来越复杂。同时,随着发电容量的迅速增加,新设备不断投产,老设备不断更新,电网的结构变化颇大,使得继电保护运行管理工作日趋繁重。繁琐的继电保护通知单、继电记事、运行日志及操作票查询,现场电话查询保护的配置情况和当前状态,特别是一些变更原因,给调度人员在运行中增加了极大的压力和困难,使得调度员无法用主要精力考虑电网内在的更深层的问题,如安全生产、经济调度等。一旦电网出现紧急情况,调度员不得不用相当长的时间来收集相关信息,降低了调度员对事件处理的响应速度,甚至在一定时间内使调度员无法作出决策,造成电网失控。因此,加速运行及管理人员的知识更新,改进继电保护运行管理手段,成为当务之急。为此,由上海交通大学和华东电力调度局合作,共同研制网调继电保护日常运行管理专家系统,旨在总结系统运行方式变化和故障时,保护的投退方案经验,将其与基于n a s a 的专家系统工具c l i p s 相结合,完成保护投退方案的自动确定。同时,对操作的合理性进行验证并给出操作建议。上鸯交通大学硖士学位论文第二章专家系统及其开发工具第二章专家系统及其开发工具人工智能、生物技术、空间技术是当今世界的三大尖端技术,专家系统、模糊识别、智能机器人则并成为人工智能技术中最为活跃的三个领域。人工智能来源于人类智能,他从一开始就取得了不少令人鼓舞的成就。专家系统源于人类专家求解专门问题的能力,它的出现在很大程度上使人工智能重新活跃起来。知识功臣概念的建立和专家系统工具的发展,使各种知识处理系统得到了广泛的应用。随着社会的不断进步和科学技术的不断发展,特别是信息高速公路的提出和多媒体技术的发展,人工智能和专家系统又出现了新的生机,也面临着更深层次的挑战。许多新的研究方向和关键课题正等待着我们去探索、去攻克。本课题的研究正是其中之。2 1 知识及其表示人类智能,由人类对外界事物识别和理解的感知能力,进行推理、联想和学习的思维能力,以及做出决策和采取行动的反应能力组成。人之所以有这些智能,是因为他有知识。因此,智能的核心是知识,智能便是指运用知识解决问题的能力。2 1 1 知识与知识厍所谓知识,是人们对自然现象的认识和从中总结出的规律和经验。目前,通常采用事实( f a c t s ) 、规则( r u l e s ) 和概念( c o n c e p t s ) 的集合表示知识项( k n o w l e d g ei t e m s ) ,即k = f + r + c 。这里的概念主要指术语的含义、规则的语义说明等。把专家们的知识和书本上的知识,甚至是设想、推断等进行收集、整理、归纳成若干规则,模拟专家的分析方法和解决问题的策略,为用户提供检索和利用知识的方法,上述这些的集合与机制称为知识库。2 1 2 知识的结构化表示知识的结构化表示是建造知识库的基础。可以想象,如果不能准确而规范地表达知识,就不可能实现对知识的插入、删除、修改、查询等功能,从而也不可能建立知识库。知识的表达方式有:一阶谓词逻辑表示,关系表示或特征表表示,产生式表示或规则表示,语义网络表示,框架表示,过程表示,脚本表示,面向对象的知识表示等。其中,语义网络、框架系统和面向对象知识表示都是结构化的知识表示方法。知识结构化表示的主要特征是:模块化、层次化、数据抽象和信息隐藏等,其明显优点是表示知识自然、直观,且有利于提高问题的求解效率。而面向对象知识表示是其中最结构化的方法。下面仅对面向对象知识表示与语义网络、框架系统作一比较:语义网络的主要优点是灵活性,网络中的节点和有向弧可以按规定不加限制地定上海交通大学碗士学位论文第二章专家系统及其开发工具义。这种灵活性在面向对象的表示中不仅仍然存在,而且对象和对象之间的关系还可以动态建立。其中,语义网络中的节点对应于面向对象表示中的对象,语义网络中由有向弧定义的语义关系对应于面向对象结构中的消息传递,而语义网络中的实例联系、泛化联系对应于面向对象方法中对象、子类与类之间的继承关系。事实上,面向对象的结构可以看成一种动态的语义网络。语义网络的主要缺点是难以系统的开发和维护。随着对象( 节点) 的增加,语义网络的管理变得十分复杂,很难给出某个对象或属性值的修改对整个系统的影响。面向对象方法的封装性恰恰有力地克服了语义网络的这一弱点。框架结构与面向对象的结构很类似,知识都可以使用类的概念按一定的层次来组织。然而,框架知识表示的模块性不能清楚地定义。削弱框架系统结构化的两大因素是:框架之间的关系既可能是具有继承关系的子类连接或成员连接,也可能是反映全体和部分关系的组成连接,而且不是唯一的;规则可以通过一个框架连接到另一个框架。在面向对象的知识表示中,两个类之间的连接关系只有子类连接,而规则用作个类的内部方法,不可能出现跨越两个对象的规则,类的唯一对外接口是消息模式,类之外的代码唯有通过传递有关消息才能与该类的方法打交道。因此,面向对象的表示特别适合于大型知识系统的开发和维护。由此可见,面向对象程序设计方法,以信息隐蔽和抽象数据类型概念为基础,既提供了从一般到特殊的演绎手段( 如继承等) ,又提供了从特殊到一般的归纳形式( 如类等) 。目前,它已成为9 0 年代基于知识的人工智能软件的主导开发方法。利用面向对象的知识表达方法将继电保护运行中的规则、事实、经验正确描述将是本课题的基础。2 2 面向对象的c l i p s 的特点面向对象技术和方法( o o t & o o m ) 是七十年代提出,八十年代发展,九十年代趋于成熟的,被人们称为主宰九十年代的一种新的软件工程理论。它的主要出发点和基本原则是解决问题空间和解空间的不一致性问题。这种方法和技术是一种认知学,即提供从一般到特殊的演绎手段,又提供从特殊到一般的归纳形式。它也是一种程序设计的方法学,基于信息隐蔽和数据类型的概念把系统中的所有资源都看成对象。每个对象拥有数据和方法,方法实施对数据的处理。与0 0 t & o o m 相关的基本概念有五个,即对象( o b j e c t ) ,类( c l a s s ) ,继承( i n h e r i t a l l c e ) ,多态性( p o l y m o r p h i s m ) 和动态绑定( d y n a m i cb i n d i n g ) 。一般而言,前三个概念出现在高层次设计和分析之中。在这五个基本概念中,只有继承是o o t & o o m 的特有贡献。专家系统工具c l i p s ( t h ecl a n g u a g ei n t e g r a t e dp r o d u c t i o ns y s t e m ) 最早于1 9 8 4年在美国航空航天局( n a s a ) 的约翰逊空间中心( j o h n s o ns p a c ec e n t e r ) 开始开发,那时被广泛用于专家系统开发的工具是l i s p ,可是用l i s p 开发专家系统存在着三个缺点:l i s p 不能被广泛用于当时的传统计算机;l i s p 所使用的工具和硬件价格昂贵:l i s p 不能方便的与其他开发工具集成使用。丽用c 语言开发的免费专家系统工具就是为了克服l i s p 的这些缺点,1 9 8 6 年n a s a 对外发布了第一个c l i p s 版本,上海交通大学硕士学位论文第二章专家系统及其开发工具v e r s i o n 3 0 。随后,围绕着提高处理速度、外部集成性能和模块化,n a s a 对c l i p s 进行着不断的修改,在1 9 8 9 年夏天发布了v e r s i o n 4 3 这一相当完善的系统。而到了1 9 9 1 年春天,c l i p sv e r s i o n 5 0 的发布给开发者带来了振奋人心的变化,c l i p s 开始向开发者提供两种编程模式:过程式程序设计和面相对象的程序设计,这新提供的面向对象的编程语言被称作c l i p so n e e t o r i e n t e dl a n g u a g e( c o o l ) ,c o o l 的出现使得c l i p s 符合了最新的流行的面向对象的程序设计的要求。同时由于c l i p s 的可移植性、可扩展性、高性能和低成本等优点,它已在全世界被超过4 0 0 0 的用户广泛使用,展现了广阔的前景。这些用户包括所有的n a s a 机构、军方部门、部分政府部门、大学和商业公司等。华东电力调度局专家系统采用的是1 9 9 8 年8 月发布的c l i p s 最新版本v e r s i o n 6 1 ,这个版本最令人激动的是c l i p s 的源代码已经是c + 十兼容的了,也就是说它可以被a n s ic 和c + + 编译器编译。在此我们充分使用了c l i p s 提供的面向对象的程序设计的方法,它集成了许多流行的面向对象设计的高级程序语言的特点。2 2 1 类的继承与层次结构类就是一组具有共同特性的对象。在面向对象的程序中,程序由一个或多个类组成。在运行时,视需要创建该类的各个对象。因此,类是静态概念,对象是动态概念。程序中只出现类,不出现对象。类是抽象数据类型的一种实现。传统的模块化设计是基于系统功能分解的,而功能分解带有很大的随意性,因而,程序设计随功能分解而改变;而面向对象的模块化程序设计则不然,由于基于分类关系自然分解系统,划分方法具有规范性,各模块形成标准化的组件,各模块形成标准化的组件,系统结构也相对稳定。为进行知识的面向对象表示,c l i p s 提供了专门的语句d e f c l a s s 来实现类这一结构。o b j e c t u s e r b 以p 7 i t 孓意:= t烈亿r o 夕一。7 i n s t a n c e n a m ei n s t a n c e a d d r e s ss y m b o ls t r i n gf a c t _ a d d r e s se x t e r n a l a d d r e s s图2 1 系统预定义类结构如同大部分面向对象的程序设计一样,类结构也分抽象类( a b s t r a c t ) 和具体类( c o f l c r e t e ) ,抽象类不能直接用来生成实例,只有具体类可以。类同样有着继承关系,通过集成也就生成了类的层次结构。继承是类间的关系,它允许在已有的类的上海交通大学碛士学位论文第二章专家系统及其开发工具基础上定义并实现新的类。继承是实现软件重用的有效语言机制,继承不仅支持软件重用,而且直接提供软件扩展的语言设施,继承的强有力之处还在于,它允许程序员重用某一未必完全符合要求的类,并对其进行修改而不会对该类的其他部分产生负面影响。此外,在o o p 中,还提倡识别和封装共有特性,以实现更高层次上的抽象。c l i p s 的c o o l 提供了1 7 个系统类,用户不可以删除、修改这些类。这些类的层次结构如下图( 图2 1 ) 所示。d e f c l a s s 说明了类对象的属性和行为,它包括5 个部分:1 ) 名字2 ) 所继承的父类列表3 ) 说明是否可以生成类实例4 ) 说明该类是否参与规则的模式匹配5 ) 类的属性列表。这样根据电力系统实际运行情况及专家系统的具体要求,很容易确定专家系统知识库的类层次结构。电力系统设备虽然十分繁多,但设备之间存在很多共同的特性。通过继承,就可以很好地利用这些共同特性,减少了大量的重复劳动。图2 1 所示即为本课题之一的华东电网操作知识库的类层次图示例。一次设备厂丁_ i 二次设备l厂厂厂母线线路主变开关闸刀等母线保护线路保护开关保护短线保护等厂1 失灵保护、三相不一致保护、重合闸图2 2 操作知识库类层次图正如图2 2 所示,二次设备类可以继承设备类中已有的属性和方法,然后再加入自己特有的属性和方法:( d e f c l a s s设备i s au s e r;u s e r 为系统预定义的类( r o l ea b s t r a c t );抽象类,由该类不可直接生成实例对象( s l o t 名称( 类型字符)( 访问权读写) )( s l o t 电压等级( 类型数字)( 访问权读写)( s l o t 状态( 类型符号)( 访问权读写)( d e a l s二次设备i s a设备( r o l ec o n c r e t e );具体类,由该类可直接生成实例对象( s l o t 屏号i 晦交通大学硕士学位论文第二章专家系统及其开发工具( 类型字符)( 访问权读写) )( s l o t 所属厂站( 类型字符)( 访问权读写) )这里虽然没有直接定义的“名称”、“电压等级”和“状态”,但是通过继承这些属性将直接加入到二次设备类中。2 2 2 对象和封装对象是面向对象的系统中运行时刻的基本成分;它是属性和行为( 或数据和处理) 的封装体。所谓封装( e n c a p s u l a t i o n ) 是面向对象技术的基本思想。描述对象状态的属性( a t t r i b u t e ) 和刻画对象行为的方法( m e t h o d ) 被封装到一个模块中从而构成一个闭包。在面向对象的知识表示中,相应地,属性用槽( s l o t ) 表示,方法用消息句柄( m e s s a g e h a n d l e r ) 表示。通过封装,可以实现知识的结构化表示、槽值取值限定、缺省值设定以及存取控制等特性,而这些特性在其它知识表示方法中则难以实现。例如,设备类定义为:( c l a s s设备( r o l ea b s t r a c t ):抽象类,由该类不可直接生成实例对象( s l o t 名称( 类型字符串)( 访问权读写) )( s l o t 电压等级( 类型数字)( 允许值5 0 02 2 03 5 )( 缺省值5 0 0 )( 访问权初始化读) )( s l o t 状态( 类型符号)( 允许值运行停用检修)( 缺省值运行)( 访问权读写) )采用结构化表示时,以下表示方法实际上都指同一对象:( o b j e c to f设备( 名称“母线”)( 电压等级5 0 0 )( 状态运行) )( o b j e c to f设备( 电压等级5 0 0 )( 名称“母线”) )( o b j e c to f设备( 名称“母线”) )相反地,若采用传统的谓词表示方法,则以下事实是各不相同的:设备( “母线”,5 0 0 ,运行)上海交通大学硕士学位论文第二章专家系统及其开发工具设备( 5 0 0 ,“母线”)设备( “母线”)由于谓词表示法实际是一种向量表示法,因而其各个字段具有严格的位置相关性,这使得事实很易写错,而且这种错误很难查出。通过封装,还可以对各个槽进行精确的取值限定和访问控制。例如,在设备类中,定义 电压等级 为数字型,且只可取5 0 0 ,2 2 0 ,3 5 。另外,由于在推理过程中改变 电压等级 是不合理的,因此设置其 访问权 为 初始化 + 读 ,即只有在对象创建时可以赋值,其后则只可读,不可写。可以看到,c l i p s 的类封装基本具备了传统的面向对象的程序设计中所有的必要的属性设置,可以方便的设置属性的类型、属性的访问权限、继承关系、属性的缺省值和取值范围等。同时,c l i p s还提供了许多上面例子中没有列出的面向对象的程序设计特点,例如:属性的s t o r a g e 值可以指定该属性值是存储在实例中还是所有实例公用,这就相当于c + + 语言中的类成员变量是否为s t a t i c ;属性的v i s i b i l i t y 值指定该属性是p r i v a t e 还是p u b l i c ,这相当于c + + 语言中的p u b l i c 、p r i v a t e 成员说明。c l i p s 的c o o l 完全的体现了对象的封装性,任何对象都不可以直接操作其他对象,若想操作,必须通过发送消息的方法来让对象自己来完成,每一个对象可以定义自己的消息和消息处理函数,而且针对每个消息,其消息处理可以分为四类:p r i m a r y ,b e f o r e ,a f t e r ,a r o u n d ,这些子函数的目的如表2 1 所示。同样,c l i p s的c o o l 也有许多系统预定义的消息,这些消息主要在执行一些系统函数时发送,简化了操作。例如:m a k e i n s t a n c e 函数将发送i n i t 消息,m o d i f y - i n s t a n e e 将发送p u t o v e r r i d e 消息等。类型在类中的作用p r i m a r y执行消息处理的主要工作b e f o r e执行消息处理前的辅助工作a f t e r执行消息处理后的辅助工作a r o u n d在消息处理后建立随后需要的环境表2 i 消息的子处理函数由上可见,与其它表示方法相比,面向对象的知识表示方法通过封装,提供了对现实世界实体的全面的、一目了然的描述;每个类定义构成一个独立的数据结构单元,具有很强的模块性;提供了对对象的丰富的控制手段。这些特性对于大型专家系统的开发都是非常关键的。2 2 3 多态面向对象的程序设计中继承的另一面便是多态( p o l y m o r p h i s m ) 。多态性一般指多种形式的能力。c o o l 同样提供了多态的支持,在下面的类定义中就使用了多态:在一次设备类和二次设备类中都各自定义了同名的 状态 属性。这是容易理解的,因为对于一次和二次设备来说,当各自运行方式变更时,其相应的状态是各上海交通大学硕士学位论文第二章专家系统及其开发工具不相同的。如一次设备的状态一般为“运行”、“检修”和“停运”,而二次设备则一般为“投入”、“退出”、“改信号”和“检修”。因而其 状态 属性也各不相同。虽然母类设备类已经定义了 状态 属性,但从设备类派生的各个子类( 一次设备和二次设备) 也必须重新实现自己的 状态 属性。( d e f c l a s s 二次设备( r o l ec o n c r e t e )( s l o t 屏号( 类型( 访问权( s l o t 所属厂站( 类型( 访问权( s l o t 状态( 类型( 允许值( 缺省值运行)( 访问权读写) )i s a设备( d e f c l a s s 一次设备i s a设备( r o l ec o n c r e t e )( s l o t 节点字符)( 类型字符)初始化、读) )( 访问权初始化、读) )( s l o t所属厂站字符)( 类型字符)初始化、读) )( 访问权初始化、读) )( s l o t 状态符号)( 类型符号)运行停运检修)( 允许值投入退出改信号检修)( 缺省值投入)( 访问权读写) )多态的威力主要体现在,它可以实现所谓的“一个接口,多种方法”。假设检查所有设备的现有状态,只需如下一条规则即可实现:规则名:输出设备状态i f ( 当前阶段输出打印)( o b j e c t( p n a m eo f 设备( 状态? c o n d i t i o n ) ) )t h e n( p r i n t 叫tf设备状态为? c o n d i t i o n )应从两个方面理解上述规则:方面,由设备类派生的所有子类都共享该同一规则;另一方面,由于多态特性,对于满足匹配条件的每一个对象,系统会自动识别其实际类型( 一次设备还是二次设备) 并调用对应的状态。换句话说,对于不同类的对象,系统会自动调用不同的 状态 属性。由上可见,利用多态机制,可以保证顶层规则的高度简洁性和可靠性,并使整个系统呈现高度的灵活性和可扩展性。开发人员只需针对各个子类的方法进行认真地设计、编制、调试和维护。当子类的方法需要修改时,或者需要从设备类派生新的子类并加入系统时,项层的规则都不需改变。而所有这些特性在产生式系统中都不具备。在大型专家系统的开发中,恰当地使用多态机制,可以大大地提高开发效率,降低维护难度。上海交通大学硕士学位论文第三章专家系统在整定计算中的应用第三章专家系统在继电保护整定计算中的应用3 1 适于整定计算的c l i p s 推理机制电力系统整定原则本身就是一种较为明显的规则,而c l i p s 的推理机制又是以事实触发规则的形式来实现的,两者极为相似,因此整定规则十分适用于以c l i p s来实现。在传统的过程式整定程序中,在实现线路的配合整定时,我们往往对整定流程的控制而感到棘手,必须设置一些标志位来控制整定的流程,控制整定之间的配合,这使得程序逻辑复杂、代码量大、可读性和移植性差。用专家系统的开发工具c l i p s 来实现整定原则就相当简洁明了,下面以一条零序二段整定规则为例来加以说明。例:零序电流二段整定与相邻线路纵联保护配合,躲相邻线路末端故障规则名:1 0 21( 特权等级18 0 0 );整定规则的优先级i f ( 操作对象保护)( o b j e c t( ? i n s t a n c e n a m e lo f 保护);存在一个满足匹配条件的保护对象? n a m e l( 名称? n a m e l )( 重合闸单相)( 整定要求要求)( 纵联配合关系有)( 操作对象( o b j e c t( 操作对象( c o r r e l a t i o n( 二段整定状态整定未完成) )保护)( ? i n s t a n c e n a m e 2o f 保护) ;存在一个满足匹配条件的保护对象? n a m e 2( 名称? n a m e 2 )( 一段整定状态整定未完成)( 短路电流值? v a l u e ) )模板)( 前保护? n a m e d ;? n a m e l 和? n a m e 2 存在拓扑关系( 后保护? n a m e 2 )( 分支系数? f z ) )t h e n;将二段整定植赋给变量? l d z( b i n d ? i d z ( s e n d ( 事实名? n a m e l ) g e t - m _ f 1 0 2 ) )( 如果( ( + 1 2 ( + ? f z ( + 37 v a l u e ) ) ) ? i d z ) 那么f m o d i f y i n s t a n c e ? i n s t a n c e n a m e l;修改事实l ,存储结果( mf 1 0 2( + 1 2 ( + ? f z ( + 37 v a l u e ) ) ) );修改二段整定植f mf r 21 0 1:确定整定时间( m _ s t r o u t n a m e 27 n a m e 2 );配合节点( ms t r o u t 2 ”纵联保护配合,躲相邻线路末端故障”) ) ) ):整定原则上海交通大学硕士学位论文第三章专家系统在整定计算中的应用这条规则中,c o r r e l a t i o n 是一个根据d e f t e m p l a t e 语句定义的事实,表明两个保护所在线路是相邻支路,并且给出了其分支系数。要使得此规则得以触发必须满足:存在两个满足匹配条件的保护对象,并且其中一个的零序二段还未整定,而另一个的一段已经整定完成。在所有规则中,通过定义特权来确定各个规则的优先级,以控制整定规则的触发顺序。c l i p s 所自有的推理能力会按照优先级的顺序自动调用满足条件的所有事实,以完成各个规则的整定工作。从上面的例子可以看出,利用专家系统的开发工具c l i p s 来表示整定原则,用其推理机来完成整定过程,我们不用关心何时进行哪一种整定,具体又应按哪一规则整定,只要有满足整定原则要求的事实存在,c l i p s 会自动完成所有满足条件的整定原则。这一切都归功于c l i p s 的推理机,c l i p s 的推理机采用快速的r e t e 算法,它将事实与规则进行匹配,满足要求则按照规则指定的行为执行,为此,可以省去了拓扑分析、整定过程控制,同时这些规则可读性很强,修改容易。而采用传统的过程式编程语言,完全靠各种控制语句来实现对整定原则函数的调用,必须自己找到元件之间的拓扑关系,时刻知道整定程序已经到达的流程,寻找与其匹配的其他元件,用适用的规则来进行整定计算,这样不仅编码复杂,而且很难维护。因此,用c l i p s 实现整定计算知识库的代码比传统的过程式的代码少得多,将大大简化程序的设计,使程序逻辑简单、代码简洁、可读性好,更重要的是c l i p s 作为整定计算的核心模块,它的移植性更强,这充分体现了专家系统工具相对于传统编程工具在整定原则实现上的优势。3 2 整定计算总体结构整定计算中需要大量的系统数据,例如系统中元件的参数,短路电流的值,分支系数的值,同时需要良好的用户交互图形界面,这些都可以从已开发的华东电力调度局继电保护专家系统的一些模块中得到,系统的总体结构如图3 1 所示。图3 1 整定计算系统结构i 海交通大学顿士学位论文第三章专家系统在整定计算中的应用主程序的框架用u s u a lc + + 6 0 开发,包括图形绘制、拓扑形成模块,短路计算模块,数据管理模块。图形绘制模块主要是提供用户图形化的界面,可以方便的绘制网络的接线图,同时给出网络元件的参数,并形成了拓扑关系。短路计算模块是在美国p t i 公司的产品p s s e 的基础上二次开发而成。该公司的产品在电力系统分析计算领域具有世界领先水平。尤其重要

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论