1、人工智能人工智能Artificial IntelligenceArtificial Intelligence第七章第七章史忠植史忠植 中国科学院计算技术研究所http:/ SystemExpert System2023-1-10史忠植 人工智能:专家系统 2内容提要内容提要7.1 7.1 专家系统概述专家系统概述7.2 7.2 专家系统的基本结构专家系统的基本结构7.3 7.3 专家系统专家系统MYCINMYCIN7.4 7.4 专家系统工具专家系统工具CLIPSCLIPS7.5 7.5 专家系统工具专家系统工具JESSJESS7.6 7.6 面向对象专家系统工具面向对象专家系统工具OKPSO
2、KPS7.7 7.7 专家系统建造专家系统建造7.8 7.8 新型专家系统新型专家系统7.9 7.9 小结小结概概 述述专家系统是一类具有专门知识和经验的计算机智能程序系统,通过对人类专家的问题求解能力的建模,采用人工智能中的知识表示和知识推理技术来模拟通常由专家才能解决的复杂问题,达到具有与专家同等解决问题能力的水平。这种基于知识的系统设计方法是以知识库和推理机为中心而展开的,即 专家系统=知识库+推理机专家系统把知识从系统中与其他部分分离开来。专家系统强调的是知识而不是方法。很多问题没有基于算法的解决方案,或算法方案太复杂,采用专家系统,可以利用人类专家拥有丰富的知识,因此专家系统也称为基
3、于知识的系统(Knowledge-Based Systems)。2023-1-10史忠植 人工智能:专家系统 3概概 述述 一个专家系统应该具备以下三个要素:(1)具备某个应用领域的专家级知识;(2)能模拟专家的思维;(3)能达到专家级的解题水平。建造一个专家系统的过程可以称为“知识工程”,它是把软件工程的思想应用于设计基于知识的系统。知识工程包括下面几个方面:(1)从专家那里获取系统所用的知识(即知识获取)(2)选择合适的知识表示形式(即知识表示)(3)进行软件设计 (4)以合适的计算机编程语言实现。2023-1-10史忠植 人工智能:专家系统 4概概 述述 专家系统的特点 (1)启发性 (
4、2)透明性 (3)灵活性 (4)交互性 (5)实用性 (6)易推广2023-1-10史忠植 人工智能:专家系统 5专家系统的发展史专家系统的发展史1977年美国斯坦福大学计算机科学家费根鲍姆(E.A.Feigenballm)在第五届国际人工智能联合会议上提出知识工程的新概念。20世纪80年代以来,在知识工程的推动下,涌现出了不少专家系统开发工具,例如EMYCIN、CLIPS(OPS5,OPS83)、G2、KEE、OKPS等。1977年,基于关幼波先生的经验,研制成功了我国第一个“中医肝病诊治专家系统”。1985年10月中科院合肥智能所熊范纶建成“砂姜黑土小麦施肥专家咨询系统”,这是我国第一个农
5、业专家系统。中科院计算所史忠植与东海水产研究所等合作,研制了东海渔场预报专家系统。在专家系统开发工具方面,中科院数学研究所研制了专家系统开发环境“天马”,中科院计算所研制了面向对象专家系统开发工具“OKPS”。2023-1-10史忠植 人工智能:专家系统 62023-1-10史忠植 人工智能:专家系统 7内容提要内容提要7.1 7.1 专家系统概述专家系统概述7.2 7.2 专家系统的基本结构专家系统的基本结构7.3 7.3 专家系统专家系统MYCINMYCIN7.4 7.4 专家系统工具专家系统工具CLIPSCLIPS7.5 7.5 专家系统工具专家系统工具JESSJESS7.6 7.6 面
6、向对象专家系统工具面向对象专家系统工具OKPSOKPS7.7 7.7 专家系统建造专家系统建造7.8 7.8 新型专家系统新型专家系统7.9 7.9 小结小结专家系统的基本结构专家系统的基本结构2023-1-10史忠植 人工智能:专家系统 8专家系统的基本结构专家系统的基本结构 知识库是问题求解所需要的领域知识的集合,包括基本事实、规则和其他有关信息。知识的表示形式可以是多种多样的,包括框架、规则、语义网络等等。推理机是实施问题求解的核心执行机构,它实际上是对知识进行解释的程序,根据知识的语义,对按一定策略找到的知识进行解释执行,并把结果记录到动态库的适当空间中。推理机的程序与知识库的具体内容
7、无关,即推理机和知识库是分离的,这是专家系统的重要特征。它的优点是对知识库的修改无须改动推理机,但是纯粹的形式推理会降低问题求解的效率。将推理机和知识库相结合也不失为一种可选方法。2023-1-10史忠植 人工智能:专家系统 9专家系统的基本结构专家系统的基本结构 知识获取负责建立、修改和扩充知识库,是专家系统中把问题求解的各种专门知识从人类专家的头脑中或其他知识源那里转换到知识库中的一个重要机构。人机界面是系统与用户进行交流时的界面。综合数据库也称为动态库或工作存储器,是反映当前问题求解状态的集合,用于存放系统运行过程中所产生的所有信息,以及所需要的原始数据,包括用户输入的信息、推理的中间结
8、果、推理过程的记录等。解释器用于对求解过程做出说明,并回答用户的提问。两个最基本的问题是“why”和“how”。2023-1-10史忠植 人工智能:专家系统 102023-1-10史忠植 人工智能:专家系统 11n 求解过程大致有如下几个步骤:根据用户的问题对知识库进行搜索,寻找有关的知识。根据有关的知识和系统的控制策略形成解决问题的途径,即知识操作算子序列,从而构成一个假设集合。对解决问题的一组可能假设方案进行排序,并挑选其中在某些准则下为最优的假设方案。根据挑选的解决问题的假设方案去求解具体问题。如果该方案不能真正解决问题,则回溯到假设方案序列中的下一个假设方案,重复求解问题。上述过程循环
9、执行,直到问题已经解决或所有可能的求解方案都不能解决问题而宣告“本系统该问题无解”为止。专家系统的工作过程专家系统的工作过程2023-1-10史忠植 人工智能:专家系统 12Y Y 目标问题分析根据目标问题集聚知识形成解决问题的假设方案集选择最优方案执行之对假设方案集进行排序知识库问题已解决?选择下一个方案并执行还有其它方案?成功结束失败结束N N 专家系统的工作过程专家系统的工作过程专家系统开发工具专家系统开发工具 人工智能语言:LISP,Prolog,C/C+,Java 专家系统外壳:又称为骨架系统,从成功应用的专家系统演变而来的。如:MYCIN-E-MYCIN PROSPECTOR的知识
10、获取系统-KAS 通用型专家系统工具:OPS系列,CLIPS(JESS):规则型 ART:规则+框架 OKPS:面向对象型 专家系统开发环境:ES开发的工具包,提供多种方便的构件2023-1-10史忠植 人工智能:专家系统 132023-1-10史忠植 人工智能:专家系统 14内容提要内容提要7.1 7.1 专家系统概述专家系统概述7.2 7.2 专家系统的基本结构专家系统的基本结构7.3 7.3 专家系统专家系统MYCINMYCIN7.4 7.4 专家系统工具专家系统工具CLIPSCLIPS7.5 7.5 专家系统工具专家系统工具JESSJESS7.6 7.6 面向对象专家系统工具面向对象专
11、家系统工具OKPSOKPS7.7 7.7 专家系统建造专家系统建造7.8 7.8 新型专家系统新型专家系统7.9 7.9 小结小结专家系统专家系统MYCINMYCINn MYCIN系统是著名的医学领域的专家协调,是由Stanford大学建立的对细菌感染疾病的诊断和治疗提供咨询的系统。医生可以向系统输入病人信息,MYCIN系统对其进行诊断,并给出诊断结果和处方。n 细菌感染疾病专家在对病情诊断和提出处方时,大致遵循下列 4 个步骤:(1)确定病人是否有重要的病菌感染需要治疗。为此,首先要判断所发现的细菌是否引起了疾病。(2)确定疾病可能是由哪种病菌引起的。(3)判断哪些药物对抑制这种病菌可能有效
12、。(4)根据病人的情况,选择最适合的药物。2023-1-10史忠植 人工智能:专家系统 15专家系统专家系统MYCINMYCIN2023-1-10史忠植 人工智能:专家系统 16n 咨询开始时,先启动咨询系统,进入人机对话状态。当结束咨询时,系统自动地转入解释子系统。解释子系统回答用户的问题,并解释推理过程。规则获取系统只由建立系统的知识工程师所使用。当发现有规则被遗漏或不完善时,知识工程师可以利用这个系统来增加和修改规则。2023-1-10史忠植 人工智能:专家系统 17n EMYCIN是由Stanford大学的Van Melle于1980年开发的一个ES外壳,是由MYCIN抽去原有的医学领
13、域知识,保留外壳而形成的。采用产生式规则表达知识,目标驱动的反向推理控制策略,特别适用于诊断型ES的开发。专家系统外壳专家系统外壳EMYCINEMYCIN2023-1-10史忠植 人工智能:专家系统 18n EMYCIN可提供MYCIN所有的辅助工具,如:推理解释程序及可信度估算。知识编辑程序及类似英语的简化会话语言。知识库管理和维护手段。如一致性检查、跟踪、查错等。系统测试实例。专家系统外壳专家系统外壳EMYCINEMYCIN2023-1-10史忠植 人工智能:专家系统 19内容提要内容提要7.1 7.1 专家系统概述专家系统概述7.2 7.2 专家系统的基本结构专家系统的基本结构7.3 7
14、.3 专家系统专家系统MYCINMYCIN7.4 7.4 专家系统工具专家系统工具CLIPSCLIPS7.5 7.5 专家系统工具专家系统工具JESSJESS7.6 7.6 面向对象专家系统工具面向对象专家系统工具OKPSOKPS7.7 7.7 专家系统建造专家系统建造7.8 7.8 新型专家系统新型专家系统7.9 7.9 小结小结专家系统工具专家系统工具CLIPSCLIPS 早期的专家系统工具大都用LISP、Prolog等编程语言开发,它们的共同问题是运行速度慢,可移植性差,解决复杂问题的能力差。为此,1984年美国航空航天局约翰逊空间中心(NASAs Johnson Space Cente
15、r)推出 CLIPS(C Language Integrated Production System)。CLIPS是一个基于Rete算法的前向推理语言,用标准C语言编写。它具有高移植性、高扩展性、强大的知识表达能力和编程方式以及低成本等特点。2023-1-10史忠植 人工智能:专家系统 20专家系统工具专家系统工具CLIPSCLIPSn CLIPS中的知识表示 1.字段 在CLIPS中,把从键盘或文件读入的一组有特定意义的字符叫做一个“令牌(token)”,它是CLIPS的基本语言符号单位。字段(field)是由一组令牌组成的,是CLIPS中知识表示的基本单位。字段可以是常量也可以是变量,CL
16、IPS有七种字段,它们是CLIPS的原始数据类型:整型(Integer)、浮点型(Float)、符号型(Symbol)、字符串型(String)、外部地址(External address)、示例名(Instance name)和示例地址(Instance address)。2023-1-10史忠植 人工智能:专家系统 21专家系统工具专家系统工具CLIPSCLIPSn CLIPS中的知识表示 2.事实在CLIPS中,事实由关系名,后面跟着零个或多个槽(也称为符号字段)以及它们的相关值组成。事实分为两类:自定义模板事实(deftemplate fact)和有序事实(ordered fact)。
17、自定义模板结构的一般格式为:(deftemplate *)的定义可以为:(slot )|(multislot)2023-1-10史忠植 人工智能:专家系统 22专家系统工具专家系统工具CLIPSCLIPSn CLIPS中的知识表示 3.规则 在CLIPS语言中,规则表示为如下形式:(defrule *;Left-Hand Side(LHS)of the rule *);Right-Hand Side(RHS)of the rule 其中,rule-name为规则名,patterns为一组模式,actions为一组动作 2023-1-10史忠植 人工智能:专家系统 23CLIPSCLIPS结构图
18、结构图WORKINGMEMORYRULE BASEEXECUTIONENGINEINFERENCEENGINEPATTERNMATCHERAGENDA2023-1-10史忠植 人工智能:专家系统 24CLIPSCLIPS的匹配算法的匹配算法 模式一般是指组成规则前提的基本的单位,每个模式由一个或多个字段组成。可满足规则:一个规则称为可满足的,若规则的每一模式均能在当前工作存储器中找到可匹配的事实,且模式之间的同一变量能取得统一的约束值。即r:P1 P2 PnQ1Q2 Qm 若存在一个置换,使得对每一个模式Pi,在工作存储器中有一个元素Wi满足 Pi=Wi,i=1,2,n 作用在某个模式的结果称
19、为模式实例,作用在整个规则的结果称为规则实例。2023-1-10史忠植 人工智能:专家系统 25CLIPSCLIPS匹配算法匹配算法n ReteRete算法算法 是一个快速的模式匹配器,它通过在网络上存储规则信息来提高速度 由于在每一个识别动作循环中,那些没有变化的数据可以不用考虑,因此可以大大提高事实与前件的匹配速度。类似Rete算法的一些快速模式匹配算法的出现,奠定了专家系统走向实用的基础。2023-1-10史忠植 人工智能:专家系统 26CLIPSCLIPS匹配算法匹配算法n ReteRete算法的基本思想算法的基本思想 该算法快速匹配的重要依据为:时间冗余性:工作存储器中的内容在推理过
20、程中的变化是缓慢的,即在每个执行周期中,增删的事实只占很小的比例 结构相似性:许多规则常常包括类似的模式和模式组 Rete算法的基本思想是保存过去匹配过程中留下的全部信息,以空间代价来换取产生式系统的执行效率 2023-1-10史忠植 人工智能:专家系统 27CLIPSCLIPS匹配算法匹配算法n ReteRete匹配网络结构匹配网络结构 Rete算法的核心是建立Rete匹配网络结构。这一网络结构由模式网络和连接网络两部分构成。其中,模式网络记录每一模式各域的测试条件,每一测试条件对应于网络的一个域结点,每一模式的所有域结点依次连起来,构成模式网络的一条匹配链。在每一模式匹配链的终结点上都有一
21、个寄存器来记录所有能与该模式匹配的事实集合,即模式实例集,这种寄存器称为寄存器。2023-1-10史忠植 人工智能:专家系统 28CLIPSCLIPS匹配算法匹配算法 模式网络 若两个模式的前k个域相同,则它们可以共享k个域结点。连接网络 用于检查同一规则不同模式之间因同名变量而带来的相应模式实例之间的相互约束关系,以保证同名变量取值的一致性。2023-1-10史忠植 人工智能:专家系统 29CLIPSCLIPS匹配算法匹配算法 定义 称满足相互约束条件的k个模式实例为可满足的k模式实例。显然,寄存器中所有非空模式实例均为1模式实例,且是可满足的 可满足的k模式实例存在寄存器k中,寄存器可以看
22、成寄存器1。在连接网络中,每一连接点有两个输入,一个来自含有1模式实例的寄存器,另一个来自含有可满足的k模式实例集的寄存器(k=1)或寄存器k(k1),连接点指出两组输入模式实例的约束条件,输出可满足的(k+1)模式实例集,存入寄存器k+!。2023-1-10史忠植 人工智能:专家系统 30CLIPSCLIPS匹配算法匹配算法n Rete网络匹配过程 Rete网络匹配过程由模式网络上的模式匹配和连接网络上的部分匹配两部分构成。在模式网络的机器内部表示中,我们把共享一个父结点的所有结点表示成一条共享链,同时,把每一模式匹配链中的结点表示成一条下拉链,于是,每一结点由共享链和下拉链指向其后继结点,
23、模式网络就是一棵可以使用典型遍历算法进行测试的二叉树。模式网络上的模式匹配过程就是上述二叉树的条件遍历过程 2023-1-10史忠植 人工智能:专家系统 31CLIPSCLIPS 匹配算法匹配算法 模式网络上的模式匹配过程一旦结束,便开始连接网络上的部分匹配过程,其作用是:根据每一模式寄存器的变化,激活相应的连接网络,并修改寄存器的内容。2023-1-10史忠植 人工智能:专家系统 32CLIPSCLIPS 匹配算法匹配算法n Rete算法也存在很大的局限性 这对于大型专家系统,特别是专家数据库系统的实现,弄不好易导致组合爆炸 采用固定的模式连接次序,从而影响了执行效率的提高 2023-1-1
24、0史忠植 人工智能:专家系统 332023-1-10史忠植 人工智能:专家系统 34内容提要内容提要7.1 7.1 专家系统概述专家系统概述7.2 7.2 专家系统的基本结构专家系统的基本结构7.3 7.3 专家系统专家系统MYCINMYCIN7.4 7.4 专家系统工具专家系统工具CLIPSCLIPS7.5 7.5 专家系统工具专家系统工具JESSJESS7.6 7.6 面向对象专家系统工具面向对象专家系统工具OKPSOKPS7.7 7.7 专家系统建造专家系统建造7.8 7.8 新型专家系统新型专家系统7.9 7.9 小结小结2023-1-10史忠植 人工智能:专家系统 35专家系统工具专
25、家系统工具JESSJESS由于CLIPS的强大功能与良好性能,以及NASA对该软件采取的开放政策,CLIPS在美国国内外都有众多用户,他们应用CLIPS开发了许多实用的专家系统,并根据各自的需要对CLIPS进行扩充和改造,如加拿大研究委员会在CLIPS中加入了模糊推理功能,推出了FuzzyCLIPS。1995年美国Sandia国家实验室分布式系统计算组成员弗里德曼-希尔(Friedman-Hill E J)用Java实现了Jess(Java Expert System Shell),这是一个扩充的CLIPS版本。Jess除了继承Clips的优点之外,Jess还具有支持类操作、支持面向对象的编程
26、方式等优点,而且可以与Java良好的集成,具有良好的移植性和嵌入性。2023-1-10史忠植 人工智能:专家系统 36基于基于JessJess的的WebWeb专家系统框架专家系统框架2023-1-10史忠植 人工智能:专家系统 37内容提要内容提要7.1 7.1 专家系统概述专家系统概述7.2 7.2 专家系统的基本结构专家系统的基本结构7.3 7.3 专家系统专家系统MYCINMYCIN7.4 7.4 专家系统工具专家系统工具CLIPSCLIPS7.5 7.5 专家系统工具专家系统工具JESSJESS7.6 7.6 面向对象专家系统工具面向对象专家系统工具OKPSOKPS7.7 7.7 专家
27、系统建造专家系统建造7.8 7.8 新型专家系统新型专家系统7.9 7.9 小结小结面向对象专家系统工具面向对象专家系统工具OKPSOKPS OKPS是中国科学院计算技术研究所智能科学开放实验室研制的面向对象知识处理系统(Object-oriented Knowledge Processing System,简称OKPS)。它采用面向对象的知识表示方法来描述和存贮知识,可以通过所见即所得的可视化工具,对具体的应用建立专家知识库。2023-1-10史忠植 人工智能:专家系统 38OKPSOKPS中的知识表示中的知识表示 OKPS采用面向对象的概念和技术实现了一种知识表示方法,并且还吸收了框架理论
28、和语义网络中的一些特点。OKPS的知识库是由对象组成的。一个对象可以拥有自己的属性(Property)和方法(Method)。对象的属性可以存贮整型、浮点型或字符串型的值。方法用来存贮这个对象在推理过程中所要执行的操作。这些操作可以是访问对象的属性,向系统发送消息,也可以是使用系统提供的资源和服务等。知识库中的对象有序地组成一种树型结构2023-1-10史忠植 人工智能:专家系统 39OKPSOKPS中的知识表示中的知识表示 现在假设我们要将羊这种动物在分类树中进行定位。在专家系统推理过程中,根据知识库中存贮的各种分类知识,系统将由最顶层开始,根据羊这一对象所具有的各种属性,与分类树中各个类的
29、属性进行匹配,层层深入,直到不需要再进一步区分为止。动物脊椎动物无脊椎动物哺乳动物鸟类鱼类鹰企鹅羊羊鲤鱼鲨鱼老虎2023-1-10史忠植 人工智能:专家系统 40OKPSOKPS的系统结构的系统结构2023-1-10史忠植 人工智能:专家系统 41OKPSOKPS的推理的推理 正向推理时,要先解决其下层的子问题,才能解决该问题本身的目标。推理过程是一个自下而上的过程。求解过程最后终结于根结点的对象 为了能够适应灵活的推理方式,OKPS在每个对象中加入不同的方法,来针对不同的推理阶段作相应的处理。每个节点的对象都有三种方法:先序、中序和后序。这三种方法在推理过程中是按照不同的次序执行的。在默认的
30、控制下,这个过程是一个从问题根节点对象开始的深度优先遍历。OKPS中采用的面向对象的知识表示方法也结合了语义网络和框架系统的一些特点。2023-1-10史忠植 人工智能:专家系统 42OKPSOKPS推理控制语言推理控制语言 为了提供功能足够强大的推理机制,并最大限度地保持灵活性和方便性,OKPS系统提供了一种专用的推理控制语言(Inference Control Language,ICL),用来描述专家知识与规则,以及控制推理过程。ICL采用解释执行的方式,应用于每个对象的方法中 开发者可以在他们的知识库中使用ICL函数库来实现推理中的很多功能,包括人机交互和控制台输入/输出、数值计算、字符
31、串处理、图形、图表展示、文件操作、数据库访问、网络通讯、对象访问、消息处理和推理控制、黑板操作、外部功能调用等。2023-1-10史忠植 人工智能:专家系统 432023-1-10史忠植 人工智能:专家系统 44内容提要内容提要7.1 7.1 专家系统概述专家系统概述7.2 7.2 专家系统的基本结构专家系统的基本结构7.3 7.3 专家系统专家系统MYCINMYCIN7.4 7.4 专家系统工具专家系统工具CLIPSCLIPS7.5 7.5 专家系统工具专家系统工具JESSJESS7.6 7.6 面向对象专家系统工具面向对象专家系统工具OKPSOKPS7.7 7.7 专家系统建造专家系统建造
32、7.8 7.8 新型专家系统新型专家系统7.9 7.9 小结小结2023-1-10史忠植 人工智能:专家系统 45专家系统是一个复杂的计算机智能软件,它的开发既要遵循一般的软件开发规范,又是一种特殊的基于知识的软件系统,所以它有很多区别于其他软件开发的特点。专家系统设计一般要求遵循以下基本原则:知识库和推理机分离。这是设计专家系统的基本原则。尽量使用统一的知识表示方法。以便于系统对知识进行统一的处理、解释和管理。推理机应尽量简化。把启发性知识也尽可能地独立出来,这样既便于推理机的实现,同时也便于对问题的解释。2023-1-1046史忠植 人工智能:专家系统 2023-1-10史忠植 人工智能:
33、专家系统 47在进行构思和设计专家系统之前,首先必须搞清楚用户需要一个什么样的系统?要求具有什么功能?各项性能要求如何等。因此,需求分析做的好坏是系统最终成败的一个关键,而且是专家系统的艰难开发过程的第一关。知识工程师要花很多时间反复向未来的用户和领域专家提出各种问题,并共同讨论解决各种问题的方法,写出“需求分析报告”,根据专家与用户们的评审意见,把需求分析报告改写成“系统规格说明书”,并做出“系统开发计划”。需求分析需求分析2023-1-10史忠植 人工智能:专家系统 48 初步设计这个阶段所要完成的任务是从宏观上初步确定系统的体系结构,进行功能模块的划分,确定各功能模块之间的相互关系(包括
34、控制流和数据流等),画出系统的总体结构图,确定主要的用户界面及相应的设计报告或说明书。在总的满足需求分析的前提下,最终确定系统或模块的性能指标,作为下一步详细设计时要达到的目标。详细设计 该阶段要根据各功能模块任务和性能的要求,完成各模块的具体方案设计。具体要求设计数据库、知识库、推理机、知识获取、解释和用户接口的实现方案。系统设计系统设计2023-1-10史忠植 人工智能:专家系统 49知识获取是专家系统开发过程中最重要而困难的一步,被称为专家系统开发的“瓶颈”。因此,在做了需求分析之后,就要开始寻找该领域内合适的专家以及相应的资料来获取知识。知识获取需要知识工程师与领域专家的密切配合和支持
35、,否则是不可能成功的。从某种意义上来说,知识是决定专家系统性能好坏的主要因素,知识获取的成功几乎就使系统成功了一半。这是一个反复进行,不断修改、扩充;进行需求分析,知识表示,详细设计,实现编码、测试与评价,管理与维护的过程。知识库构建知识库构建2023-1-10史忠植 人工智能:专家系统 50目前有多种知识表示方法,不同的表示模式适合于表达不同类型的知识。因此,根据所选定的领域范围和所获取的知识,选定或设计一、二种表示方法来最合适地表示相应领域的知识是一项很重要的工作。值的指出的是,某些专家系统中的知识类型比较多,单一知识表示模式有时很难实现系统的任务要求。因此,在具体建造专家系统时,可采用多
36、种知识表示方法有机结合的方法。这样,可对不同类型的知识采用最合适的方法来表示,发挥各种方法的优势。知识库构建知识库构建2023-1-10史忠植 人工智能:专家系统 51 选择合适的语言工具,这要根据具体情况而定,其中包括是否可能实现上面确定的详细设计;软件编程人员对语言或工具的熟练程度以及实现人员的水平;是否能表达所获取的知识;可移植性和可维护性等。可选择使用某种“外壳”(Shell)来实现,将使这一工作变得简单,仅需按规定要求,把知识库与外壳连接起来并作必要的测试即可。还必须采用某种知识处理语言来实现各功能模块,对各功能模块进行详细编码与调试,并将这些模块连接起来,再进行系统调试。系统开发系
37、统开发2023-1-10史忠植 人工智能:专家系统 52 功能模块测试与评价,已在具体实现阶段完成。而系统测试与评价的目的在于测试和评估整个系统的功能与性能,并进行必要的修改以达到在需求分析阶段确定的功能与性能指标。系统的测试与评价必须有领域专家和用户参加,不仅要对程序编码进行测试,同时也要对知识和推理进行测试与评价,界面是否满足用户的要求等。方法:选用测试实例与专家的处理结果进行比较,发现不合理或不满意,则由开发人员具体修改,再进行下一轮测试,如此循环往复,不断完善,直到最终达到预期目标。系统测试系统测试2023-1-10史忠植 人工智能:专家系统 53系统维护这是ES应用中的重要环节。ES
38、系统经过一定时间实际运行后,将积累一些经验和知识,并发现某些不足。因此,知识库的知识要不断增加与更新,以提高专家系统的适应性和问题求解能力。允许对其继续进行修改与维护,当然这需要由丰富经验的人员完成。系统维护系统维护2023-1-10史忠植 人工智能:专家系统 54内容提要内容提要7.1 7.1 专家系统概述专家系统概述7.2 7.2 专家系统的基本结构专家系统的基本结构7.3 7.3 专家系统专家系统MYCINMYCIN7.4 7.4 专家系统工具专家系统工具CLIPSCLIPS7.5 7.5 专家系统工具专家系统工具JESSJESS7.6 7.6 面向对象专家系统工具面向对象专家系统工具O
39、KPSOKPS7.7 7.7 专家系统建造专家系统建造7.8 7.8 新型专家系统新型专家系统7.9 7.9 小结小结新型新型专家系统专家系统随着互联网应用的快速发展,专家系统在传统的基于规则的基础上,涌现出一些新型专家系统。下面简要介绍分布式专家系统、协同式专家系统、神经网络专家系统以及基于互联网的专家系统。新一代专家系统的研究分布式专家系统协同式专家系统神经网络专家系统基于互联网的专家系统2023-1-10史忠植 人工智能:专家系统 5556分布式分布式专家系统专家系统分布式专家系统具有分布处理的特征,是把一个专家系统的功能分解到各个处理机上并行工作,以缩短问题求解的时间,提高专家系统的效
40、率。设计一个分布式专家系统一般要考虑功能分布知识分布驱动分布2023-1-10史忠植 人工智能:专家系统 57分布式专家系统分布式专家系统 主要目的是把一个专家系统的功能经分解以后分布到多个处理器上去并行地工作,从而在总体上提高系统的处理效率。可以工作在紧耦合的多处理器系统环境中,也可工作在松耦合的计算机网络环境里,所以其总体结构在很大程度上依赖于其所在的硬件环境。2023-1-10史忠植 人工智能:专家系统 58协同式专家系统协同式专家系统 一般专家系统解题的领域面很窄 协同式多专家系统是克服一般专家系统的局限性的一个重要途径。协同式多专家系统亦可称“群专家系统”2023-1-10史忠植 人
41、工智能:专家系统 59协同式专家系统协同式专家系统设计与建立一个协同式专家系统,需要解决的问题:任务的分解 公共知识的导出 讨论方式 裁决问题 驱动方式2023-1-10史忠植 人工智能:专家系统 60神经专家系统神经专家系统神经专家系统是将神经网络与传统专家系统集成所得到的一种新型专家系统。神经网络具有自组织、自学习、自适应、分布存储、并行处理等功能,比较适合模拟人类的低级感知智能。传统的专家系统常以逻辑推理为主,适合模拟人类的高级智能,两者的结合可以做到优势互补。2023-1-10史忠植 人工智能:专家系统 61神经专家系统神经专家系统2023-1-10史忠植 人工智能:专家系统 62基于
42、互联网的基于互联网的专家系统专家系统互联网风靡全球,标志着网络时代的到来。互联网+获得广泛应用。将人工智能技术与互联网结合,利用互联网的网络支持,吸收和结合其上的新技术,运用其丰富的信息和软硬件资源,开发与之相适应的知识和其它智能系统,解决需要人类智能才能解决的问题,包括伴随网络时代出现的新问题,有巨大的现实与潜在需求和发展空间。将专家系统与互联网结合,开发基于互联网的专家系统,具有极大的发展空间。2023-1-10史忠植 人工智能:专家系统 63基于互联网的基于互联网的专家系统专家系统结构结构2023-1-10史忠植 人工智能:专家系统 64 小小 结结 讨论了专家系统的基本概念、基本结构、与常规计算程序的区别等问题。专家系统的基本结构可以视为由知识库、推理机和用户界面三部分所组成。在知识工程的推动下,涌现出了不少专家系统开发工具。本章主要介绍了MYCIN、CLIPS、Jess和OKPS。专家系统是一个复杂的计算机软件,所以它的开发应遵循一般的软件开发规范。同时,又要考虑知识工程的特点,讨论了建造专家系统的主要阶段。简要介绍了分布式专家系统、协同式专家系统、神经网络专家系统以及基于互联网的专家系统。2023-1-10史忠植 人工智能:专家系统 2023-1-10史忠植 人工智能:专家系统 65 Thank You人工智能 http:/