AI07人工智能-专家系统_第1页
AI07人工智能-专家系统_第2页
AI07人工智能-专家系统_第3页
AI07人工智能-专家系统_第4页
AI07人工智能-专家系统_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

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

文档简介

人工智能导论

Introduction

toArtificialIntelligence

第七章史忠植

中国科学院计算技术研究所/专家系统ExpertSystem2023/10/20史忠植人工智能导论:专家系统2内容提要7.1概述

7.2专家系统的基本结构 7.3专家系统MYCIN 7.4专家系统工具OKPS 7.5专家系统建造与应用 7.6小结 概述专家系统是一类具有专门知识和经验的计算机智能程序系统,通过对人类专家的问题求解能力的建模,采用人工智能中的知识表示和知识推理技术来模拟通常由专家才能解决的复杂问题,达到具有与专家同等解决问题能力的水平。这种基于知识的系统设计方法是以知识库和推理机为中心而展开的,即专家系统=知识库+推理机专家系统把知识从系统中与其他部分分离开来。专家系统强调的是知识而不是方法。很多问题没有基于算法的解决方案,或算法方案太复杂,采用专家系统,可以利用人类专家拥有丰富的知识,因此专家系统也称为基于知识的系统(Knowledge-BasedSystems)。

2023/10/20史忠植人工智能导论:专家系统3概述一个专家系统应该具备以下三个要素:(1)具备某个应用领域的专家级知识;(2)能模拟专家的思维;(3)能达到专家级的解题水平。建造一个专家系统的过程可以称为“知识工程”,它是把软件工程的思想应用于设计基于知识的系统。知识工程包括下面几个方面:(1)从专家那里获取系统所用的知识(即知识获取)(2)选择合适的知识表示形式(即知识表示)(3)进行软件设计(4)以合适的计算机编程语言实现。2023/10/20史忠植人工智能导论:专家系统4概述专家系统的特点(1)启发性

(2)透明性

(3)灵活性

(4)交互性

(5)实用性

(6)易推广2023/10/20史忠植人工智能导论:专家系统5专家系统的发展史1977年美国斯坦福大学计算机科学家费根鲍姆(E.A.Feigenballm)在第五届国际人工智能联合会议上提出知识工程的新概念。20世纪80年代以来,在知识工程的推动下,涌现出了不少专家系统开发工具,例如EMYCIN、CLIPS(OPS5,OPS83)、G2、KEE、OKPS等。1977年,基于关幼波先生的经验,研制成功了我国第一个“中医肝病诊治专家系统”。1985年10月中科院合肥智能所熊范纶建成“砂姜黑土小麦施肥专家咨询系统”,这是我国第一个农业专家系统。中科院计算所史忠植与东海水产研究所等合作,研制了东海渔场预报专家系统。在专家系统开发工具方面,中科院数学研究所研制了专家系统开发环境“天马”,中科院计算所研制了面向对象专家系统开发工具“OKPS”。2023/10/20史忠植人工智能导论:专家系统62023/10/20史忠植人工智能导论:专家系统7内容提要7.1概述 7.2专家系统的基本结构

7.3专家系统MYCIN 7.4专家系统工具OKPS 7.5专家系统建造与应用 7.6小结 专家系统的基本结构2023/10/20史忠植人工智能导论:专家系统8专家系统的基本结构知识库是问题求解所需要的领域知识的集合,包括基本事实、规则和其他有关信息。知识的表示形式可以是多种多样的,包括框架、规则、语义网络等等。推理机是实施问题求解的核心执行机构,它实际上是对知识进行解释的程序,根据知识的语义,对按一定策略找到的知识进行解释执行,并把结果记录到动态库的适当空间中。推理机的程序与知识库的具体内容无关,即推理机和知识库是分离的,这是专家系统的重要特征。它的优点是对知识库的修改无须改动推理机,但是纯粹的形式推理会降低问题求解的效率。将推理机和知识库相结合也不失为一种可选方法。2023/10/20史忠植人工智能导论:专家系统9专家系统的基本结构知识获取负责建立、修改和扩充知识库,是专家系统中把问题求解的各种专门知识从人类专家的头脑中或其他知识源那里转换到知识库中的一个重要机构。人机界面是系统与用户进行交流时的界面。综合数据库也称为动态库或工作存储器,是反映当前问题求解状态的集合,用于存放系统运行过程中所产生的所有信息,以及所需要的原始数据,包括用户输入的信息、推理的中间结果、推理过程的记录等。解释器用于对求解过程做出说明,并回答用户的提问。两个最基本的问题是“why”和“how”。2023/10/20史忠植人工智能导论:专家系统102023/10/20史忠植人工智能导论:专家系统11求解过程大致有如下几个步骤:根据用户的问题对知识库进行搜索,寻找有关的知识。根据有关的知识和系统的控制策略形成解决问题的途径,即知识操作算子序列,从而构成一个假设集合。对解决问题的一组可能假设方案进行排序,并挑选其中在某些准则下为最优的假设方案。根据挑选的解决问题的假设方案去求解具体问题。如果该方案不能真正解决问题,则回溯到假设方案序列中的下一个假设方案,重复求解问题。上述过程循环执行,直到问题已经解决或所有可能的求解方案都不能解决问题而宣告“本系统该问题无解”为止。专家系统的工作过程2023/10/20史忠植人工智能导论:专家系统12YY目标问题分析根据目标问题集聚知识形成解决问题的假设方案集选择最优方案执行之对假设方案集进行排序知识库问题已解决?选择下一个方案并执行还有其它方案?成功结束失败结束NN专家系统的工作过程专家系统开发工具人工智能语言:LISP,Prolog,C/C++,Java专家系统外壳:又称为骨架系统,从成功应用的专家系统演变而来的。如:

MYCIN-------------------->E-MYCINPROSPECTOR的知识获取系统----->KAS通用型专家系统工具:

OPS系列,CLIPS(JESS):规则型

ART:规则+框架OKPS:面向对象型专家系统开发环境:ES开发的工具包,提供多种方便的构件2023/10/20史忠植人工智能导论:专家系统132023/10/20史忠植人工智能导论:专家系统14内容提要7.1概述 7.2专家系统的基本结构 7.3专家系统MYCIN

7.4专家系统工具OKPS 7.5专家系统建造与应用 7.6小结 专家系统MYCINMYCIN系统是著名的医学领域的专家协调,是由Stanford大学建立的对细菌感染疾病的诊断和治疗提供咨询的系统。医生可以向系统输入病人信息,MYCIN系统对其进行诊断,并给出诊断结果和处方。细菌感染疾病专家在对病情诊断和提出处方时,大致遵循下列4个步骤:(1)确定病人是否有重要的病菌感染需要治疗。为此,首先要判断所发现的细菌是否引起了疾病。(2)确定疾病可能是由哪种病菌引起的。(3)判断哪些药物对抑制这种病菌可能有效。(4)根据病人的情况,选择最适合的药物。2023/10/20史忠植人工智能导论:专家系统15专家系统MYCIN2023/10/20史忠植人工智能导论:专家系统16咨询开始时,先启动咨询系统,进入人—机对话状态。当结束咨询时,系统自动地转入解释子系统。解释子系统回答用户的问题,并解释推理过程。规则获取系统只由建立系统的知识工程师所使用。当发现有规则被遗漏或不完善时,知识工程师可以利用这个系统来增加和修改规则。2023/10/20史忠植人工智能导论:专家系统17EMYCIN是由Stanford大学的VanMelle于1980年开发的一个ES外壳,是由MYCIN抽去原有的医学领域知识,保留外壳而形成的。采用产生式规则表达知识,目标驱动的反向推理控制策略,特别适用于诊断型ES的开发。专家系统外壳EMYCIN2023/10/20史忠植人工智能导论:专家系统18EMYCIN可提供MYCIN所有的辅助工具,如:⑴推理解释程序及可信度估算。⑵知识编辑程序及类似英语的简化会话语言。⑶知识库管理和维护手段。如一致性检查、跟踪、查错等。⑷系统测试实例。专家系统外壳EMYCIN2023/10/20史忠植人工智能导论:专家系统19内容提要7.1概述 7.2专家系统的基本结构 7.3专家系统MYCIN 7.4专家系统工具OKPS

7.5专家系统建造与应用 7.6小结 面向对象专家系统工具OKPSOKPS是中国科学院计算技术研究所智能科学开放实验室研制的面向对象知识处理系统(Object-orientedKnowledgeProcessingSystem,简称OKPS)。它采用面向对象的知识表示方法来描述和存贮知识,可以通过所见即所得的可视化工具,对具体的应用建立专家知识库。2023/10/20史忠植人工智能导论:专家系统20OKPS中的知识表示OKPS采用面向对象的概念和技术实现了一种知识表示方法,并且还吸收了框架理论和语义网络中的一些特点。OKPS的知识库是由对象组成的。一个对象可以拥有自己的属性(Property)和方法(Method)。对象的属性可以存贮整型、浮点型或字符串型的值。方法用来存贮这个对象在推理过程中所要执行的操作。这些操作可以是访问对象的属性,向系统发送消息,也可以是使用系统提供的资源和服务等。知识库中的对象有序地组成一种树型结构2023/10/20史忠植人工智能导论:专家系统21OKPS中的知识表示现在假设我们要将羊这种动物在分类树中进行定位。在专家系统推理过程中,根据知识库中存贮的各种分类知识,系统将由最顶层开始,根据羊这一对象所具有的各种属性,与分类树中各个类的属性进行匹配,层层深入,直到不需要再进一步区分为止。动物脊椎动物无脊椎动物哺乳动物鸟类鱼类鹰企鹅羊鲤鱼鲨鱼老虎2023/10/20史忠植人工智能导论:专家系统22OKPS的系统结构2023/10/20史忠植人工智能导论:专家系统23OKPS的推理正向推理时,要先解决其下层的子问题,才能解决该问题本身的目标。推理过程是一个自下而上的过程。求解过程最后终结于根结点的对象为了能够适应灵活的推理方式,OKPS在每个对象中加入不同的方法,来针对不同的推理阶段作相应的处理。每个节点的对象都有三种方法:先序、中序和后序。这三种方法在推理过程中是按照不同的次序执行的。在默认的控制下,这个过程是一个从问题根节点对象开始的深度优先遍历。OKPS中采用的面向对象的知识表示方法也结合了语义网络和框架系统的一些特点。2023/10/20史忠植人工智能导论:专家系统24OKPS推理控制语言为了提供功能足够强大的推理机制,并最大限度地保持灵活性和方便性,OKPS系统提供了一种专用的推理控制语言(InferenceControlLanguage,ICL),用来描述专家知识与规则,以及控制推理过程。ICL采用解释执行的方式,应用于每个对象的方法中开发者可以在他们的知识库中使用ICL函数库来实现推理中的很多功能,包括人机交互和控制台输入/输出、数值计算、字符串处理、图形、图表展示、文件操作、数据库访问、网络通讯、对象访问、消息处理和推理控制、黑板操作、外部功能调用等。

2023/10/20史忠植人工智能导论:专家系统252023/10/20史忠植人工智能导论:专家系统26内容提要7.1概述 7.2专家系统的基本结构 7.3专家系统MYCIN 7.4专家系统工具OKPS 7.5专家系统建造与应用

7.6小结 2023/10/20史忠植人工智能导论:专家系统27专家系统建造专家系统是一个复杂的计算机智能软件,它的开发既要遵循一般的软件开发规范,又是一种特殊的基于知识的软件系统,所以它有很多区别于其他软件开发的特点。专家系统设计一般要求遵循以下基本原则:⑴知识库和推理机分离。这是设计专家系统的基本原则。⑵尽量使用统一的知识表示方法。以便于系统对知识进行统一的处理、解释和管理。⑶推理机应尽量简化。把启发性知识也尽可能地独立出来,这样既便于推理机的实现,同时也便于对问题的解释。2023/10/2028需求分析知识表示详细设计实现编码测试与评价管理与维护知识获取初步设计

专家系统开发的生存周期史忠植人工智能导论:专家系统2023/10/20史忠植人工智能导论:专家系统29在进行构思和设计专家系统之前,首先必须搞清楚用户需要一个什么样的系统?要求具有什么功能?各项性能要求如何等。因此,需求分析做的好坏是系统最终成败的一个关键,而且是专家系统的艰难开发过程的第一关。知识工程师要花很多时间反复向未来的用户和领域专家提出各种问题,并共同讨论解决各种问题的方法,写出“需求分析报告”,根据专家与用户们的评审意见,把需求分析报告改写成“系统规格说明书”,并做出“系统开发计划”。

需求分析2023/10/20史忠植人工智能导论:专家系统30初步设计这个阶段所要完成的任务是从宏观上初步确定系统的体系结构,进行功能模块的划分,确定各功能模块之间的相互关系(包括控制流和数据流等),画出系统的总体结构图,确定主要的用户界面及相应的设计报告或说明书。在总的满足需求分析的前提下,最终确定系统或模块的性能指标,作为下一步详细设计时要达到的目标。详细设计该阶段要根据各功能模块任务和性能的要求,完成各模块的具体方案设计。具体要求设计数据库、知识库、推理机、知识获取、解释和用户接口的实现方案。

系统设计2023/10/20史忠植人工智能导论:专家系统31知识获取是专家系统开发过程中最重要而困难的一步,被称为专家系统开发的“瓶颈”。因此,在做了需求分析之后,就要开始寻找该领域内合适的专家以及相应的资料来获取知识。知识获取需要知识工程师与领域专家的密切配合和支持,否则是不可能成功的。从某种意义上来说,知识是决定专家系统性能好坏的主要因素,知识获取的成功几乎就使系统成功了一半。这是一个反复进行,不断修改、扩充;进行需求分析,知识表示,详细设计,实现编码、测试与评价,管理与维护的过程。

知识库构建2023/10/20史忠植人工智能导论:专家系统32目前有多种知识表示方法,不同的表示模式适合于表达不同类型的知识。因此,根据所选定的领域范围和所获取的知识,选定或设计一、二种表示方法来最合适地表示相应领域的知识是一项很重要的工作。值的指出的是,某些专家系统中的知识类型比较多,单一知识表示模式有时很难实现系统的任务要求。因此,在具体建造专家系统时,可采用多种知识表示方法有机结合的方法。这样,可对不同类型的知识采用最合适的方法来表示,发挥各种方法的优势。知识库构建2023/10/20史忠植人工智能导论:专家系统33选择合适的语言工具,这要根据具体情况而定,其中包括是否可能实现上面确定的详细设计;软件编程人员对语言或工具的熟练程度以及实现人员的水平;是否能表达所获取的知识;可移植性和可维护性等。可选择使用某种“外壳”(Shell)来实现,将使这一工作变得简单,仅需按规定要求,把知识库与外壳连接起来并作必要的测试即可。还必须采用某种知识处理语言来实现各功能模块,对各功能模块进行详细编码与调试,并将这些模块连接起来,再进行系统调试。系统开发2023/10/20史忠植人工智能导论:专家系统34

功能模块测试与评价,已在具体实现阶段完成。而系统

温馨提示

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

评论

0/150

提交评论