您好,欢迎访问三七文档
专家系统实验课程编号英文名称ExpertSystem适应对象智能科学与技术指导教师:肖晓明一、学时与学分总学时:32;实验学时:6。教学内容教学时数地点实验一专家系统与CLIPS2民主楼126实验二麦粒肿诊断专家系统开发2民主楼126实验三CLIPS代码分析2升华后楼205二、实验课的任务、性质与目的本实验课程是控制专业学生的一门专业课程,通过CLIPS软件环境提供的大量开发性、验证性和设计性实验,帮助学生更好地熟悉和掌握专家系统的基本原理和方法;通过实验提高学生编写实验报告、总结实验结果的能力;使学生对专家系统的相关理论有更深刻的认识。三、实验方式与基本要求本实验目的是使学生进一步加深对专家系统的基本原理和方法的认识,通过实践了解专家系统的实现手段。实验方式:1.由指导教师讲解实验的基本要求,提示算法的基本思想;2.实验一人一组,独立完成实验的演示、验证和开发设计;3.学生在完成预习报告后才能进入实验室进行实验。四、考核方式与评分办法1.学生每次做完实验要进行登记;2.实验结束后学生应在规定时间内提交实验报告及实验结果分析等;3.指导教师对每份实验报告进行批改、评分并将成绩登录在册。不符合实验要求的重做;4.该课程所有实验结束后,指导教师根据学生的实验及报告给出考核成绩,作为平时成绩的重要组成部分(占平时成绩的60%)。实验1专家系统与CLIPS实验内容提要:专家系统不仅是具有特定的结构,同时,它还有多种知识表示形式,及其相应的知识推理方法。因此,直接采用程序设计语言实现专家系统是比较困难的,而采用适当的专家系统开发工具则可以大大降低系统开发的难度。因此,本章结合麦粒肿系统专断专家系统开发的需要,首先安排了对专家系统及其开发工具CLIPS基本理论知识,以及CLIPS基本理论知识,以及CLIPS基本使用方法的概要介绍,目的是为第6章“麦粒肿诊断专家系统开发”做好准备。实验重点:专家系统的一般结构产生式规则的表示及其正向推理专家系统开发工具的结构和特点专家系统开发工具CLIPS的基本语法专家系统开发工具CLIPS的基本使用实验目的掌握专家系统的一般结构掌握产生式规则的表示及其正向推理掌握专家系统开发工具的结构和特点了解专家系统开发工具CLIPS的设计目标与特点掌握专家系统开发工具CLIPS的基本语法掌握专家系统开发工具CLIPS的基本使用实验内容及要求学习专家系统的一般结构学习产生式规则的表示及其正向推理学习专家系统开发工具的结构和特点学习专家系统开发工具CLIPS的设计目标与特点学习专家系统开发工具CLIPS的基本语法学习专家系统开发工具CLIPS的基本使用实验步骤本实验包括以下六个具体步骤,分别是:学习专家系统的一般结构、学习产生式规则的表示及其正向推理、学习专家系统开发工具的结构和特点、学习专家系统开发工具CLIPS的设计目标与特点、学习专家系统开发工具CLIPS的基本语法,以及学习专家系统开发工具CLIPS的基本使用。1学习专家系统的一般结构:专家系统(ES,ExpertSystem)是利用大量专家知识,运用只是推理方法解决特定领域中实际问题的计算机程序系统。专家系统由产生式规则专家系统发展而来,主要包括知识库、推理机、综合数据库、知识获取程序、人机接口,以及解释程序六大部分。其中,知识库、推理机、综合数据库,以及人际接口是目前大多数专家系统的主要内容,而知识获取程序和解释则是所有专家系统都期望具有的两个模块。在专家系统的一般结构中,知识库用于存放各领域专家提供的经验性知识:综合数据库用于存放关于问题求解的初始数据、中间结果、假设、目标,以及最终求解结果(事实);推理机在一定的控制策略下针对综合数据库中的当前信息,识别和选取知识库中对当前问题求解有用的知识进行推理;知识获取程序完成把专家只是按一定表示形式输入到知识库中,部分代替知识工程师进行知识的自动获取,实现专家系统的字学习,不断完善知识库;解释程序可以根据用户提问,对系统给出的结论、求解过程,以及系统当前求解状态提供说明,便于用户理解系统的问题求解,增加用户对系统求解结果的信任程度,在知识库的完善过程中,便于专家或知识工程师发现和定位知识库中的错误,便于各领域的专业人员或初学者能够从问题的求解过程中得到直观学习;人机接口将专家爱或用户的输入信息翻译为系统可接受的内部形式,同时,也把系统向专家或用户输出的信息转化成人类易于理解的外部形式。2学习产生式规则的表示及其正向推理目前,用于专家系统的知识表示形式主要有谓词逻辑、产生式规则、语义网络、框架,以及剧本。其中,采用产生式规则知识表示形式建立的专家系统最为流行和广泛,这主要因为:首先,产生式规则知识表示容易被人理解;其次,它基于演译推理,保证了推理结果,的准确性;最后,大量产生式规则可以连接成多棵推理树,树的宽度反映了实际问题的范围,树的深度反映了问题的难度。产生式规则一般表示为:如果A成立,则B成立,简记为A-B,其中A是前提,B是结论。一般来说,不同的产生式规则之间都是有联系的,即谋条产生式规则的前提实力外一条产生式规则的结论。如果把规则库(知识库)中所包含的总目标(某些规则的结论)作为根节点,按规则的前提和结论展开形成树的形式,则形成的树就被称为推理树或知识树,它把规则库中的所有规则都连接了起来。产生式规则的推理分为正向推理和逆向推理两种,这里主要介绍正向推理。产生式规则的正向推理过程是:逐条搜索规则库,对每一条规则的的前提条件检查实事库(综合数据库)中是否存在。若再事实库中前提条件的个子项不是全部存在,则放弃该条规则;若在事实库总全部存在,则实行该规则,把结论放入事实库中。反复循环执行上述过过程,直至推出目标,并存入事实库中为止。3学习专家系统开发工具的结构和特点开发专家系统主要有三条途径:直接使用程序设计语言,如LISP或PROLOG等;使用知识获取工具,如知识获取系统(KAS,KnowledgeAcquisitionSystem)到等;利用专家系统开发工具,如CLIPS或M.1等。专家系统开发工具一般包括开发环境和运行环境两部分。其中,开发环境有知识编辑、编译模块,知识库查询、维护模块,数据库查询、维护模块,知识库,以及实事库组成;运行环境有推理机,解释机制,人机交互,知识库,以及实事库组成。知识库和实时库即被包括在开发环境中,同时也被包括在运行环境中,它们都有一定的格式要求,知识和事实由开发环境输入,提供给运行环境使用。从专家系统开发工具的结构可以看出,专家系统开发工具具有一下特点:首先,工具有开发环境和运行环境组成,开发环境用于建立知识库、实事库、并修改、查询知识库和事实库;对指定知识表示形式的推理机和解释机制预先已经做好;运行环境的目的在于支持实际系统的运行。其次,工具提供了一套用于开发专家系统的语言,包括知识标示语言和工具操作语言。其中,只是表示语言用于完成外部知识到内部知识的编译;利用工具操作语言可以使用工具中的开发环境,实行运行环境中的功能。4学习专家系统开发工具CLIPS的设记目标与特色CLIPS(CLanguageIntegratedProductionSystem)是由美国国家航天局约翰逊空间中心人工智能部在1985年推出的专家系统开发工具,其设计目标和特色包括:可用于管理、工业、商业、文教等各种领域的专家系统开发,具有广泛的通用性;适用于各种型号的计算机,从IBMPC及其兼容机,到VAX,HP,SUNMACINTOSH,直到CRAY,都可以运行CLIPS,具有对机型的广泛适用性与已有的普通软件系统易于集成,同Fortran、ADA等高级程序设计语言均有接口,为用户提供了方便用C语言写成,运行速度快具有不确定性下进行推理的能力正是由于上述设计目标与特色,加之美国国家航天局对CLIPS采取公开化,以及免费使用的政策,CLIPS在众多的专家系统开发工具中深受欢迎,CLIPS研制小组也因而获得美国航天科技奖CLIPS与比它早的专家爱系统开发工具ART、OPSS有很密切的关系,继承与吸收了ART、OPSS的长处与优点。但是由于CLIPS最求的简单实用,以极高度的可移植性,因此,只提供了正向推理能力、CLIPS的发展历史证明,这并不影响他成为一个有效的专家系统开发工具。5学习专家系统开发工具CLIPS的基本语法为了支持麦粒肿诊断专家系统CLIPS程序的编写,以下将分别从符号体系、语言符号、事实、规则、注释、printout命令、变量、字符通配符、特权、read函数,以及其他常用命令等11各方面,对CLIPS的基本语法进行概要介绍。符号体系CLIPS的符号体系包括以下三种类型。需要完全照样输入计算机的字和字符,即不被、[]、{}所括住的所有内容,比如(example)。方括号表示其中的内容可有可无,比如在(example[1])中,方括号中的1是任选的,即输入(example)和(example1)都是允许的。尖括号表式其中的字所表示的意义要用一个相应的任意值代替,比如(exampleinteger)表示在example后面一定要跟一个任意整数,即应输入(example1)、(example5)或者(example-20)等。对于用双尖括号括住的描述,表示任意多个(包括0个)与其中的自相应的值,比如integer,见到这一描述,可以输入1,12,123,148,或-15,也可以不输入任何内容。对于用三尖括号括住的描述,表示任意多个(但不包括0个)与其中的字相应的值,比如integer,相当于integerinteger。用于大括号括住的描述表示选用其中的任意一项(必须一项,但也仅一项)输入,比如{all,none,some},可以输入all,或者输入none,或者输入some。语言符号在CLIPS主要的语言符号单位是“字段”,也称为“域”(field)。字段包括以下三种类型。字(word)。字以可以打印的ASCII字符开始,后随零个或多个字符。但是“”、“|”、“&”、“$”、“?”、“+”、“-”、“()”字符及其组合不能作为字的开始字符。另外,字中间也不能包含“”、“|”、“&”、“()”字符,因为这些字符在CLIPS中有特殊用途,即作为字的界限符,表示字的结束。最后,CLIPS认为统一字母的大、小写是两个不同的字。根据一项规定,以下均为有效的CLIPS字:emergencyfireemergency-fireactivate-sprinkler-systemnotify-fire-departmentshut-down=electrical-junction-387!?#$^*字串(string)。字串以引号开始和结束,双引号和结束,双引号本身是字串的一部分,期间可以有零个或任意个字符,比如“Activatethesprinklersystem”。数值字段或简称数值(number),表示浮点数。在CLIPS中,所有的数,包括整型值的数,都以浮点数形式存储。数值字段包括三个部分:符号、值和指数。其中,符号和指数是任选的。呼号或为+,或为-;值包括一个或多个数字,以及一个任选的小数点;指数包括字母e或E,后随任选的+或-,其后是一个或多个数字。根据以上规定,1,1.2,.7,+3,-1,65,3.5e10都是CLIPS中有效的数值字段数值为了解题,CLIPS程序必须有据以推理的数据或信息,这在CLIPS中被称为“事实”(fact)。事实由配对的左、右圆括号括住的一个或多个字段组成,比如(single-field)和(twofields)。CLIPS所承认的事实都保存在事实表(fact-list)中,新的事实用assert命令加入事实表,其语法格式为:(assertfact)。比如表示发生火警的事实(emergencyfire)就可以使用命令(assert(emergencyfire))加入到事实表中。虽然CLIPS不接受重复输入的事实,但是可以使用一个assert命令同
本文标题:专家系统实验指导书
链接地址:https://www.777doc.com/doc-2788519 .html