计算机科学与技术专业毕业论文11779.doc
题目:基于B/S结构的电站新机组调试专家系统设计化学子系统设计西安工业大学毕业设计(论文)任务书1.毕业设计(论文)题目: 基于B/S结构的调试专家系统设计 2.题目背景和意义: 电站的调试启动阶段是电站建设的重要环节,所谓电站新机组调试,指的是对新安装的机组在其单体、分系统、整套试运等阶段,经过试验、调整、试运行等过程,测试机组在设计、制造、安装过程中存在的缺陷,并处理这些缺陷,使机组能够安全稳定地运行的过程。调试阶段也是电站建设过程中各种缺陷的暴露阶段,这些缺陷能否及时诊断并迅速正确的处理,这直接关系到电站能否及时投入生产,所以,调试工作备受相关单位的重视。但调试工作常受调试人员的调试经验的影响,不同人员调试的结果可能有差异,为最大限度降低调试工作中人的因素,需要对调试流程进行标准化,调试的每个环节都需要专家经验。因此开发设计电站机组调试专家系统势在必行。 3.设计(论文)的主要内容(理工科含技术指标): 本课题要求基于B/S结构为电站调试单位开发出一套协助调试技术人员进行机组调试,加快新建机组投入运行并正常工作的调试专家系统。研究内容主要是五个相对独立的调试专家子系统(包括锅炉、汽机、电气、热控和化学调试专家子系统)和网站的开发。4.设计的基本要求及进度安排(含起始时间、设计地点): 毕业设计(论文)工作起至时间:2010年12月29日至2011年6月20日 毕业设计(论文)进行地点:西安工业大学 13 周:查阅相关资料,完成需求分析、准备开题报告。 46周:系统总体设计、数据库表设计。 79周:功能模块详细设计。 1014 周:编码及调试。 1517 周:整理资料、完成论文、准备答辩。 5.毕业设计(论文)的工作量要求 实验(时数)*或实习(天数): 图纸(幅面和张数)*: 其他要求: 指导教师签名: 年 月 日 学生签名: 年 月 日 系(教研室)主任审批: 年 月 日基于B/S结构的电站新机组调试专家系统设计化学子系统设计摘 要专家系统是人工智能领域中最重要同时也是最活跃的一个应用领域,它实现了人工智能从理论研究走向实际应用,从一般推理策略探讨转向运用专门知识的重大突破。专家系统目前已广泛应用在工程、科学、医药、军事、商业等方面,成果相当丰硕。从应用领域来划分,专家系统有多种类型。本文所设计的是一种故障诊断型专家系统,主要针对发电厂新机组调试过程中遇到的问题,协助调试人员对故障进行判断和分析,从而获得故障的处理办法。本文先对本课题的相关背景及主要工作进行介绍,然后再对专家系统进行研究,了解专家系统的概念、特点、功能以及结构,研究知识的表示方法和获取途径,同时探讨专家系统的推理过程。在研究有关专家系统的基础知识后,又对本课题进行需求分析、系统设计以及系统功能实现,体现软件开发的一般过程。本课题的重点在于对推理机和知识库的设计。因此本课题的主要工作包括:选取适当的推理机制并对其进行设计;选择合适的载体存储知识,即对知识库进行设计;设计简洁易用的界面程序,方便调试人员对本系统的使用。最后,在系统设计完成后,利用开发平台将本系统的功能一一实现。关键词:人工智能;专家系统;知识表示;知识库;推理机Design of the debugging expert systerm of power plants new units based on B/S structure Design of the chemistry subsystemAbstractAn expert system is the most important field of artificial intelligence and is also one of the most active application field.It achieved a major breakthrough in artificial intelligence research from theory to practical application, from the general reasoning strategy of turning the use of expertise.Expert system has been widely used in engineering, science, medicine, military, business,and achieved fruitful achievements.With application field to divide, there are several types of expert systems. This paper is designed to debug expert system which is mainly used for debugging new power plants units.The article focuses on the background of this issue and introduced the main work,and then research the expert system,understanding of the concept of expert systems, features, functions and structure, study on knowledge representation and access,also discussed the reasoning expert system. After research the basic of the expert system,then focus on the needs analysis of the subject,system design and implementation of function, reflects the general process of software development.The issues focused on the design of inference engine and knowledge bases.Therefore, the main work of this project, including:select the appropriate reasoning mechanism and design it.Select the appropriate carrier to store the knowledge, in another word is design the knowledge bases.Designed simple and easy to use interface program to facilitate the commissioning to use it.Finally, system design is complete,then make the function all come true by the development platform.Key Words: artificial intelligence;expert system;knowledge expressing;knowledge warehouse;inference machine目 录摘 要IABSTRACTII1绪论11.1概述11.2本课题的研究背景及意义11.3国内外相关领域的研究情况11.4本课题的主要工作22专家系统的研究32.1专家系统32.1.1专家系统的概念32.1.2专家系统的特点32.1.3专家系统的分类及其功能42.1.4专家系统基本结构研究52.2知识的获取及其表示方法62.2.1知识获取途径的研究62.2.2知识表示方法的研究72.3故障诊断专家系统推理过程研究83系统需求分析93.1引言93.2系统的功能要求93.2.1 B/S结构93.2.2按原理诊断模式103.2.3按知识诊断模式103.2.4知识库维护功能104系统设计114.1引言114.2总体设计114.2.1系统功能设计114.2.2人机界面设计134.3推理机设计134.3.1本课题所采用的知识表示方法134.3.2推理过程144.3.3推理机总体设计144.3.4推理机制探讨164.4知识库设计174.4.1原始知识库表设计174.4.2故障现象与原因对应库表设计175系统功能的实现195.1 引言195.2 开发环境及工具简介195.2.1 Microsoft Sliverlight Tools 3简介195.2.2 SQL Server 2005数据库简介195.3人机界面的实现205.4推理机的实现235.5知识库的实现256结论29参考文献30致 谢31毕业设计(论文)知识产权声明32毕业设计(论文)独创性声明33附录:外文资料翻译341绪论1.1概述专家系统是一个智能的计算机程序系统,其内部含有大量的某个领域专家水平的知识与经验,能够利用人类专家的知识和解决问题的方法来处理该领域问题。众所周知,对电站新机组进行调试,是保证发电机组经济、安全运行的重要手段。因此所有的电站正式投入运营之前或者在引进新机组后,都必须要对这些机组进行调试,以便在正式运营之前尽早发现故障并解决,以避免这些故障在电厂正式运营后突然出现从而带来经济损失甚至安全事故。本课题主要是将专家系统应用于对发电厂新机组的调试上。专家系统可按照被调试的机组的功能划分,分为相应的若干个子系统。本课题是专家系统的化学子系统,主要用来对发电机组的化学系统进行调试。同时,该系统采用了浏览器-服务器的结构。即专家系统全部运行在服务器端,用户只需拥有一台可以上网并且带有WWW浏览器的设备即可登录本系统,无需任何其它的软件。1.2本课题的研究背景及意义由于电站机组的调试工作不仅工作量大、调试项目繁多,而且在调试过程中还会涉及到众多不同领域的专业知识。因此,如果完全依靠人力行电站进机组的调试,不仅效率不高,而且由于调试人员的水平不尽相同,调试工作的质量也会参差不齐。在这样的背景下调试专家系统应运而生,它在帮助调试人员进行机组调试方面,起到了巨大作用。引入专家系统后,当调试人员对机组进行调试时,只需向专家系统提交故障现象,专家系统的推理机在对其知识库进行推理、查找后便可向用户返回故障原因和解决方案。从而大大减小了调试人员的工作量,也提高了调试工作的效率。更重要的是最大限度降低了调试工作中人的因素,对调试流程进行标准化,使得调试的每个环节都有专家经验。因此开发设计电站机组的调试专家系统对于电厂的正常运行具有重要意义1.3国内外相关领域的研究情况电站的专家系统在国内外诸多发电厂均有诸多应用。但是目前许多正在应用中的电站专家系统大多为实时数据采集和处理,这种专家系统对于已经正常运行的电站来说,大大减轻了人的体力劳动和工作负担,因此有着广泛的应用。但是对于新建的电站来说,目前的专家系统并不能起到很好的调试作用。在体系结构方面,目前的专家调试系统很少有B/S结构。这样就造成了调试专家系统成本高、使用不够灵活等问题。而本文所讨论的化学调试专家系统采用了B/S结构,不仅使得调试成本大大降低,而且在灵活性和方便性上有着明显优势。1.4本课题的主要工作本课题的最终目的是开发出一套能够对电站机组的化学系统进行调试的专家系统。其成果形式是一套运行在服务器端的计算机软件。当调试人员登录服务器后便可利用本系统对电站机组进行调试。为实现这一目标,本课题的主要工作包括:对专家系统的研究、对专家系统推理过程的研究、对知识表示方法的研究、需求分析、对系统的设计及编码实现等。2专家系统的研究本章主要是对专家系统进行初步的研究,了解什么是专家系统、它有什么特点、有哪些类型、内部是什么结构以及可以完成什么工作等等。在对专家系统有了初步认识后,进一步研究了有关知识的获取和表达等问题。因为专家系统在模拟人类大大脑解决问题时,必然需要知道解决问题时所用到的知识。因此在设计专家系统之前,还必须要了解专家系统的知识如何获得,以及知识应该以怎样一种方式表示才能被计算机所理解和处理。在本章最后,还研究了专家系统在推理过程中的一般流程是什么。2.1专家系统2.1.1专家系统的概念专家系统是一种在特定领域内具有专家水平解决问题能力的程序系统。它能够有效地运用专家多年积累的有效经验和专门知识,通过模拟专家的思维过程,解决需要专家才能解决的问题。专家系统属于人工智能的一个发展分支,自1968第一个专家系统被研制成功以来,获得了飞速的发展,并且运用于医疗、军事、地质勘探、教学、化工等领域,产生了巨大的经济效益和社会效益。现在,专家系统已成为人工智能领域中最活跃、最受重视的领域。到目前为止,关于专家系统虽然还没有一个严格公认的形式化定义,但是从实际应用来看,专家系统是一种具有大量专门知识与经验的智能程序系统。它能用某个领域一个或多个专家的经验和专门知识,模拟人类专家求解问题时的思维过程,从而解决该领域中的各种复杂问题。一般认为专家系统具有3个方面的含义:a.它是一种具有智能的程序系统。与普通程序相区别的是,专家系统能够运用知识和经验进行推理。b.它必须要包含大量专家水平的领域知识,并且能在运行过程中不断地对这些知识进行更新。c.它能应用人工智能技术模拟人类专家求解问题的推理过程,解决那些原本是由人类专家才能解决的问题。2.1.2专家系统的特点专家系统能作为一套具有专家水平解决问题能力的程序系统,和普通的计算机程序有很大不同。相比之下,专家系统具有普通程序所不具备的以下特点:a.专家系统的建造是为了为解决特定领域的具体问题,除需要一些公共的常识,还需要大量与所研究领域问题密切相关的知识。b.一般情况下,专家系统采用启发式的解题方法。c.在解决问题的过程中除了用演绎方法外,有时还要求助于归纳方法和抽象方法。d.待处理的问题一般都具有模糊性、不确定性和不完全性。e.能对自身的工作过程进行推理,即自推理或解释。f.采用基于知识的问题求解方法。g.专家系统的知识库与推理机分离。2.1.3专家系统的分类及其功能专家系统有多种不同的分类方法,不同的分类方法以及不同的分类依据从各自的角度对专家系统进行分类,其分类结果也各不相同。本文以专家系统的特性与处理问题的类型为依据,对专家系统进行如下分类:a.解释型专家系统。这种专家系统通过对已知信息和数据进行推理分析,从而确定它们的含义,给出相应解释的异类专家系统。其特点是能够对大量的不准确甚至错误的数据或信息进行处理。还能对某些有省略或有遗漏的不完整数据做出假设补充,进而作出较合理的解释。b.诊断型专家系统。这一类的专家系统可以根据输入系统的有关被诊断信息,来推断出相应对象存在的故障和其产生原因,并进一步给出排除故障方法。其主要特点是,能够分析和掌握被诊断对象的组成特性以及各部分的组成关系,能够从被诊断对象的表面症状辨别出被掩盖的现象,甚至还可从一些用户提供的不太确切的信息中发现真正故障,并通过知识库中的知识提供相应的故障排除建议。c.调试型专家系统。该类的专家系统主要是对失灵的对象制定出排除故障的规划并实施排除的一类专家系统。其主要特点是能够根据相应的标准监测被调试对象存在的错误,并能从多种纠错方案中选出适用于当前情况的最佳方法,排除错误。其常用来对新产品或新系统的调试。本课题所设计的电站新机组调试专家系统就是这种类型的专家系统。d.设计型专家系统。这类专家系统是根据用户输入的设计要求数据。求解出满足设计要求的配置方案的一类专家系统。这类系统的主要特点是,善于从较大的问题求解空间中,搜索出符合多个要求和限制条件的一类方案。他能够对被设计问题的各部分及它们之间的关系进行分析。试验性地构造出多种易于修改的候选方案,并能对最终设计结果给出解释。e.控制型专家系统。这类专家系统是用来对一个受控对象或客体的行为进行适当的调节与管理,以使其满足预期要求的一类专家系统。它的主要特点是能够对被控对象进行实时监测,同时对当前状况做出适当解释,进而预测可能将发生的情况。f.预测型专家系统。预测型专家系统是通过对过去知识及当前的事实与数据进行分析,推断未来情况的一类专家系统。该类系统特点是,具有处理基于时间变化的动态数据的能力。能够从当前一些不完全和不准确的信息或数据中,依据知识库中已有的知识对未来的情况做出预报。g.监视型专家系统。这是一类用于对被监控对象进行实时地、不断地观察,并能对观察到的情况及时作出反应的专家系统。其特点是能够根据时间和环境的变化,动态地处理所观察到的被检测对象的变化信息,并根据设置的报警阈值,及时地对系统一些不正常情况发出警报。且一般不能有误报发生。h.教学型专家系统。这种专家系统是一类可根据学生学习的特点,制定适当的教学计划和教学方法,以对学生进行教学和辅导的专家系统。其特点是有针对性地制定教学计划,并采用适当的学习方法对学生进行辅导。i.规划型专家系统。这种专家系统是根据给定的规划目标数据,制定出某个能够达到目标的动作规划或行动步骤的一类专家系统。它的主要特点是,对于一些比较复杂的被求解问题,气所要实现的目标可能是动态的,进而系统所给出的相应动作规划或行动步骤也必须是动态的,这就要求系统必须要有处理这种动态规划的能力。j.修理型专家系统。修理型专家系统是对所发生故障的系统或设备进行处理,使其恢复正常工作的一类专家系统。它的特点是同时具有故障诊断、系统调试和故障排除等功能,它能根据失灵对象的特点制定纠错方案,并能实施该方案对故障进行排除,当所制定的方案失效或部分失效时,能自动产生一些相应补救措施。2.1.4专家系统基本结构研究在专家系统的内部,有着相对独立的几个功能模块。它们之间有着较低的耦合性和较高的内聚性。不同类型的专家系统,其功能模块和系统结构也都不尽相同,但是通常情况下,一个最基本的专家系统应有以下6个部分组成,主要包括:数据库及其管理系统、知识库及其管理系统、知识获取机构、推理机、解释器以及人机接口。专家系统的基本结构如图2.1所示。各模块的功能描述如下:a.数据库及其管理系统。这是用来存储有关领域问题的初始事实、问题描述以及系统推理过程中得到的各种中间状态或结果等,系统的目标结果也存在其中。b.知识库及其管理系统。这是用来存放被求解问题相关领域内的原理性知识或一些相关事实以及专家经验的知识。c.知识获取机构。它负责系统知识的获取,由一组程序组成。其基本任务是从知识工程师那里获得知识并把得到的知识送入知识库中,并确保知识的一致性和完整性。d.推理机。推理机是专家系统解决问题时的推理思维核心,用以模拟领域专家的思维过程,使得整个专家系统能够以逻辑方式进行问题求解。e.解释器。它是与人机接口相连接的部件,负责对专家系统的行为进行解释,并通过人机接口界面提供给用户。f.人机接口。它是专家系统与外界进行通信交互的桥梁。由一组程序及相应的硬件组成。领域专家或知识工程师可通过人机接口实现知识的输入与更改,并可实现知识库的日常维护。图2.1 专家系统的基本结构2.2知识的获取及其表示方法2.2.1知识获取途径的研究知识获取的途径主要有三种,按照知识获取所使用的手段,可将知识获取分为人工获取、半自动化获取和自动化获取3种方式。a. 人工知识获取。人工知识获取是一种通过知识工程师对知识源中的数据进行分析处理,以获取知识的一种途径。通常由知识工程师直接从领域专家的经验中,或者在领域专家的指导下从其它知识源中提取知识,然后对获取的知识以某种合适的知识表示形式送入知识库中。一般来说,知识工程师从领域专家那里获取知识时,采用如下的技术步骤:(1) 现场观察。即知识工程师到所涉及领域的工作现场,对领域专家解决实际问题的过程进行观察。以了解专家解决问题多解决问题的复杂性以及专家解决问题的客观、有效方法。本课题所开发的调试专家系统所用的即是这种知识获取方式。(2) 问题讨论。即知识工程师对现场观察中的一些心得或疑问,向专家做一些非正式的讨论。(3) 问题描述。在这一步骤,领域专家腰围知识工程师就每类可能的答案给出一个典型的问题描述,以便知识工程师能对每类答案定义一个原型问题。(4) 问题分析。即知识工程师在观察领域专家解答一系列问题的过程中,分析并探索专家在求解问题中的推理方法。(5) 建造原型系统。知识工程师在与领域专家进行充分交流后,根据自己的分析抽象,在选定知识表示方法后,着手建立系统所需要的实验子集。(6) 系统检查。简历原型系统后,应请领域专家对原型系统中知识库中的每条规则进行检查和评价,并对规则的选择策略和冲突消解策略进行评价。(7)系统验证。在领域专家对原型系统检查完毕后,知识工程师可把经过专家确认的原型系统交给其他专家进行验证。总之,知识工程师在人工获取知识的过程中起着非常重要的作用。在实际专家系统的建造中,知识工程师常由专家系统的设计及建造者承担。同时,本课题所设计的调试专家系统即是以人工获取知识为主。b.半自动化知识获取。这种获取方式是在人工知识获取的基础上增加了部分的机器学习功能,使专家系统本身能从大量实例中归纳出某些知识。由于它是不纯粹的人工获取知识,又不是完全的机器自动获取知识,因此成为半自动知识获取。这种获取方法是目前建造专家系统时最常采用的方法。c.自动知识获取。这是指通过专家系统本身来获取知识。具有自动获取知识的专家系统不仅可以与领域专家直接对话,从专家提供的原始信息中学习到专家系统所需要的知识,还能从一般的知识源中通过机器学习获取知识。有的甚至还能在系统的实际运行实践中总结、归纳出新的知识。但是,知识的自动获取显然是一种理想的知识获取方式。要真正实现这一目标,必将涉及自然语言理解、机器学习、模式识别、信息抽取等诸多人工智能研究领域,甚至对硬件方面也有较高要求。因此,要实现真正意义上的自动知识获取,还有待在理论及技术上的进一步研究和重大突破。2.2.2知识表示方法的研究知识表示是知识处理的最基本问题。从领域专家那里获得的知识必须表示成某种特定的形式才能记录下来,如何把知识在知识库中真实而系统地表示出来对知识的处理至关重要。选择什么样的知识表示方法以及如何恰当地把领域知识表示成工程知识,是专家系统开发中必须面对的问题。知识表示水平直接影响推理机的效率和知识库的维护。目前常用的知识表示方法有谓词表示法、产生式表示法、框架表示、语义网表示法、脚本表示法、过程表示法、Petri网表示法、面向对象表示法等。各种表示法都有各自的长处及不足,分别适用于不同的情况。其中谓词表示法只能用来表示精确性的知识,不能表示不精确、模糊性的知识,也难表示启发性知识;产生式表示法适合于表达具有因果关系的过程性知识,对具有结构关系的知识无能为力;框架表示法善于表达结构性的知识,不善于表达过程性的知识;语义网表示法形式灵活,善于表达结构性的知识,不过现在还没有公认的形式表示体系;脚本表示法主要应用于自然语言理解方面;过程表示法是用过程表示知识,不足之处是不易修改及添加新知识;Petri网表示法主要用于描述系统状态的变化和分析系统的特性;面向对象表示法主要使用了对象、类、封装、继承等面向对象技术,长于程序的设计与开发。本课题选取产生式表示法,把电站化学系统的知识表示成工程知识。产生式表示法介绍如下:产生式表示法的基本形式是:PàQ,其中P是产生式前提,Q是结论或操作。也可表示为:IF P THEN Q例如:IF <输入的初始目标为补给水系统发生故障>THEN <进入补给水系统诊断模块> 把一组产生式放在一起,就构成了产生式系统,系统中各产生式互相协同,一个产生式生成的结论可以供另一个产生式作为已知事实使用。产生式系统通常由规则库、综合数据库、控制系统三部分组成。规则库中主要存放过程性知识;综合数据库中的内容是动态的,主要用于存放初始状态、中间结论及最终结论;控制系统即推理机,由一组程序组成,实现对问题的求解。2.3故障诊断专家系统推理过程研究将知识表示为计算机可以处理的形式后,推理机(又称规则解释器)将会在推理过程中运用这些知识。推理机的任务是运用控制策略找到可以应用的规则。正向链的策略是寻找出前提可以同数据库中的事实或断言相匹配的那些规则,并运用冲突的消除策略,从这些都可满足的规则中挑选出一个执行,从而改变原来数据库的内容。这样反复地进行寻找,直到数据库的事实与目标一致即找到解答,或者到没有规则可以与之匹配时才停止。 逆向链的策略是从选定的目标出发,寻找执行后果可以达到目标的规则;如果这条规则的前提与数据库中的事实相匹配,问题就得到解决;否则把这条规则的前提作 为新的子目标,并对新的子目标寻找可以运用的规则,执行逆向序列的前提,直到最后运用的规则的前提可以与数据库中的事实相匹配,或者直到没有规则再可以应 用时,系统便以对话形式请求用户回答并输入必需的事实。3系统需求分析从本章开始,将按照软件开发的工程化方法,对本课题所设计的专家系统基于B/S结构的电站新机组调试专家系统(化学子系统)进行论述,体现软件开发的一般方法,即需求分析,概要、详细设计,编码以及测试等过程。本章主要进行系统的需求分析,其它过程将在后续章节中体现。3.1引言需求分析是软件开发中的关键问题,在软件开发过程中遇到的许多问题都是由于手机、编写、修改软件需求过程中的失误带来的,诸如信息收集不全、功能不明确、文档不完善、需求发生变化等。因此,在设计软件系统之前,对于系统的需求分析显得十分有必要。如果没有可靠的需求分析,在后续的设计、编码等阶段,很多潜藏的问题都会一一暴露出来,使得系统开发的复杂程度大大增加、工作量也随之上升,从而造成人力物力的浪费,甚至可能造成软件系统无法按期完工。因此,本章主要对系统进行需求分析,以避免后续工作中因需求不清楚而出现问题。3.2系统的功能要求3.2.1 B/S结构B/S结构,即浏览器/服务器模式,是WEB兴起后的一种网络结构模式,WEB浏览器是客户端最主要的应用软件。这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。客户机上只要安装一个浏览器,如Firefox或Internet Explorer等;服务器安装Oracle、Sybase、Informix或 SQL Server等数据库。浏览器通过Web Server同数据库进行数据交互。采用B/S结构的最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件,只要有一台能上网的电脑就能使用,客户端零维护。系统的扩展非常容易。B/S结构的结构图如图3.1所示。本课题所设计的调试专家系统要求采用这种B/S结构。即专家系统的所有模块都运行在服务器端。用户只需要使用客户机上的浏览器,即可登录本系统,进而启动专家系统进行调试。图3.1 B/S结构下的结构图3.2.2按原理诊断模式在这种诊断模式下,界面程序将所有的设备按照树状结构自上而下地显示在用户的屏幕上。当用户点击某一设备时,系统会自动显示这一设备下的下一级设备,当用户点击处于叶子节点上的设备时,界面程序将该设备的设备编号传递给推理机,然后推理机即可在知识库中访问到该设备的全部故障案例,并将返回到用户界面程序。3.2.3按知识诊断模式本系统要求在按知识诊断的情况模式下,允许用户直接输入故障现象,而后在用户点击诊断按钮后,界面程序将这些故障现象传递给服务器。此时运行在服务器的专家系统推理机会按照一定的规则产生推理链条从知识库中获取到相应的故障案例,最后返回结果到客户端页面。在推理过程中,推理机应根据所获得的信息和知识库中的知识,按照一定的推理控制策略进行推理判断,从而给出推理结论,提出故障处理对策,对推理过程作出必要的解释。3.2.4知识库维护功能本系统采用了半自动的知识获取方法,有专门人员经行知识库的维护。以维护人员登录系统便会出现知识库维护功能界面,按照相应的格式填写完整。维护人员提交后便发往服务器端按照相应的知识表示方法存储到知识库中,以更新完善数据库中相关知识。4系统设计4.1引言本章主要对专家系统进行设计,后续的系统实现等工作将以此为基础,按照本章的设计,将系统各项功能一一实现。本章对系统设计的好坏,直接影响到系统实现以后的界面、功能、运行效率、质量等关键问题,因此本章的重要性可见一斑。系统设计主要分三个大类,分别是系统总体设计、推理及设计以及知识库设计。总体设计的任务主要包括对系统功能的设计和系统界面的设计。系统功能设计即是要设计好本系统所具备的基本功能,明确系统有那些功能块,可以做些什么。界面设计的主要任务是设计一个简单明了、易于操作的用户界面。使得系统的功能可以清晰地展示用户,并且方便用户对各项功能的使用。推理机设计是整个调试专家系统设计的关键。采用好的推理机制和算法,可以大大提高推理机的运行效率,使得专家系统在调试工作中的响应时间缩短,还能够提高推理判断的准确性,直接影响到整个系统的性能。在推理机设计的小节中,首先选取了以关系数据库为基础的知识表示方法,然后确定了推理机的推理过程,即推理机制。再在此基础上设计了实现这一机制的算法,使得在以后的系统实现过程中有了依据。最后对本推理机制进行简单的探讨,阐明该机制所具备的优点。推理机制的实现依赖于相应知识库的支持。因此本章的最后一小节是对知识库的设计。本系统的知识库也是基于关系型数据库,根据推理机制以及所要存储数据的特点,相应地对知识库进行了设计。4.2总体设计4.2.1系统功能设计调试专家系统从最基本的功能上讲,至少要包括调试诊断功能和知识库维护功能。这两大基本功能是专家系统最基础、最本质的功能,缺一不可。缺少其中任何一项功能,调试专家系统便不可能正常工作。因此,本系统在功能设计上大体可分为诊断调试功能和知识库维护功能。但是为了满足实际工作中的需要,对本系统的诊断调试功能又设计了两种推理模式,即“按原理推理”和“按知识推理”。因此可以认为本系统的核心功能主要包括三大类:按原理推理功能、按知识推理功能以及知识库维护功能。在“按原理推理”的模式下,本系统将化学系统中的各项设备,按照树状的结构自上而下地显示给用户,然后用由户选择要对哪一项设备进行诊断推理。该树状结构显示了电厂化学系统中的所有设备,包括补给水系统、凝结水精处理系统、热力净化系统、腐蚀结垢、原水处理系统、机组清洗系统以及其它系统。当调试人员通过人机界面选定某项设备后,界面程序将被选定的设备的编号传递给推理机,而后由推理机在知识库中进行诊断推理,最后由人机界面向调试人员返回结果。在“按知识推理”的模式下,调试人员可以直接在界面程序中输入故障现象,而后界面程序将调试人员输入的故障信息传递给推理机,使推理机可以根据所获得的故障信息和知识库中的知识,按照一定的推理控制策略进行推理判断,从而给出推理结论,提出故障处理对策以及解释说明。知识库维护功能,主要是在“按知识推理”的模式下实现。在“按知识推理”模式下,调试人员可以选择输入故障现象然后直接进行调试,也可以选择知识库维护,以便向知识库中添加新的知识。在知识库维护功能中,允许维护人员在界面程序中选择某一设备,然后直接输入该设备的故障现象、故障处理对策以及解释说明,提交后推理机将新添加进的这条知识加入到原始知识库表,并更新故障现象与故障原因对应表,完成推理机的第一部分工作。该过程将在4.3节推理机设计中详细阐述。补给水系统的调试凝结水精处理系统的调试热力净化系统的调试按原理推理腐蚀结垢系统的调试原水处理系统的调试机组化学清洗系统的调试其它系统的调试图4.1 “按原理推理”模式下可进行的操作输入故障现象,进行调试知识库维护按知识推理图4.2 “按知识推理”模式下可进行的操作4.2.2人机界面设计人机界面的设计原则是将系统的各项功能以简单、易用、一目了然的形式,向调试人员进行显示,同时提供给调试人员一个输入接口,以便将调试人员输入的信息传递给推理机以及其它部件。为此,本系统设置了5个控制按钮,分别是:选择诊断对象按钮、按原理诊断按钮、按知识诊断按钮、重置诊断方式按钮以及退出专家系统按钮。这五个控制按钮使用户可以在按原理诊断模式和按知识诊断模式之间进行切换,以及退出整个系统。其中选择诊断对象按钮使用户可以选择是要对化学子系统调试还是对其他的子系统进行诊断。重置诊断方式按钮提供给用户对系统进行重置的功能,通常用于在一次调试诊断结束后还需要再进行调试的场合。在按知识推理时,为了实现将故障现象传递给推理机这一功能,人机界面给用户提供了一个可以选择被诊断设备的下拉菜单,以及能够输入故障现象的文本框,以便调试人员可以将故障信息送入专家系统。为了实现知识库维护的功能,人机界面提供了知识库维护的按钮,当用户点击该按钮时,界面程序会弹出一个窗口,在窗口中提供了三个文本框,分别供维护人员输入故障现象、故障原因以及解释说明,以便维护人员可以向知识库中添加新的知识。在按原理推理时,界面程序按照树状的结构自上而下地显示化学系统的各种设备。当调试