人工智能之基于知识的系统

上传人:cn****1 文档编号:568586258 上传时间:2024-07-25 格式:PPT 页数:69 大小:424KB
返回 下载 相关 举报
人工智能之基于知识的系统_第1页
第1页 / 共69页
人工智能之基于知识的系统_第2页
第2页 / 共69页
人工智能之基于知识的系统_第3页
第3页 / 共69页
人工智能之基于知识的系统_第4页
第4页 / 共69页
人工智能之基于知识的系统_第5页
第5页 / 共69页
点击查看更多>>
资源描述

《人工智能之基于知识的系统》由会员分享,可在线阅读,更多相关《人工智能之基于知识的系统(69页珍藏版)》请在金锄头文库上搜索。

1、第四章第四章 基于知识的系统基于知识的系统n4.1KB系统的开发系统的开发n4.2设计基于产生式表示的设计基于产生式表示的KB系统系统开发工具开发工具n4.3专家系统实例专家系统实例MYCINn4.4问题求解的结构化组织问题求解的结构化组织n本章小结本章小结4.1KB系统的开发系统的开发nKBKB系统是系统是基于知识的基于知识的问题求解系统,当其表问题求解系统,当其表现出专家级问题求解能力时称为现出专家级问题求解能力时称为专家系统专家系统。nKBKB系统的研究起始于系统的研究起始于2020世纪世纪6060年代中期。年代中期。 n通用问题求解方法的一味追求导致了人工智通用问题求解方法的一味追求导

2、致了人工智能的研究陷入黑暗摸索期!能的研究陷入黑暗摸索期!1.KB系统的一般概念系统的一般概念nKBKB系统的特点系统的特点n具有求解问题所需的专门知识具有求解问题所需的专门知识n基本原理和常识基本原理和常识n领域专家经验知识领域专家经验知识n具有使用专门知识的符号推理能力具有使用专门知识的符号推理能力n KBKB系统的组成系统的组成nKB系统的基本结构可视为由三个部分组成:系统的基本结构可视为由三个部分组成:知识库、推理机和用户界面知识库、推理机和用户界面nKB系统执行的一些常见问题求解任务:系统执行的一些常见问题求解任务:n1)解释解释n2)诊断诊断n3)监控监控n4)预测预测n5)规划规

3、划n6)设计设计n推理解释推理解释n解释问题求解过程及结果的合理性是解释问题求解过程及结果的合理性是KB系系统应具备的能力。统应具备的能力。n简单的解释方式:简单的解释方式:规则追踪规则追踪就是把问题求解就是把问题求解过程中激活使用的规则按激活的次序显示给过程中激活使用的规则按激活的次序显示给用户。用户。n高级的解释方式:按领域基本原理和常识高级的解释方式:按领域基本原理和常识重重构解答构解答。nKBKB系统的评价系统的评价nKBKB系统有多个方面的评价,其中有三个最重要:系统有多个方面的评价,其中有三个最重要: 计算、感观和性能计算、感观和性能n对对MYCINMYCIN性能的评价性能的评价

4、n评价方式:评价方式:n首先由首先由KBKB系统的设计者用各种可能的实验测试,确保系统的设计者用各种可能的实验测试,确保无误后再交给用户;无误后再交给用户;n用户以大量实际案例运行用户以大量实际案例运行KBKB系统,并与原有方式执行系统,并与原有方式执行的结果相比较;的结果相比较;n一旦发现错误就立即作修改,直到用户信服一旦发现错误就立即作修改,直到用户信服KBKB系统的系统的有效性,然后才正式投入应用。有效性,然后才正式投入应用。 n对于任何类型的错误,其容许出现的程度必须通对于任何类型的错误,其容许出现的程度必须通过权衡错误导致的损失和正确解答带来的利益来过权衡错误导致的损失和正确解答带来

5、的利益来决定。决定。2.KB系统的体系结构原则系统的体系结构原则n本节内容面向研究生,可以不看了本节内容面向研究生,可以不看了3.KB系统的开发过程系统的开发过程n知识获取:知识获取:就是把用于问题求解的专门知识从就是把用于问题求解的专门知识从某些知识源提炼出来,转化为推理机使用形式某些知识源提炼出来,转化为推理机使用形式的过程。的过程。n潜在的潜在的知识源知识源包括领域专家、书本、数据库以及普包括领域专家、书本、数据库以及普通人的经验。通人的经验。 n目前,知识获取的主要方式:以知识工程师作目前,知识获取的主要方式:以知识工程师作为中间人从领域专家处获取专门知识。为中间人从领域专家处获取专门

6、知识。n为实现知识获取的自动化,就要努力为实现知识获取的自动化,就要努力取消知识取消知识工程师的中介作用工程师的中介作用,让一个智能的知识获取界,让一个智能的知识获取界面直接与领域专家对话。面直接与领域专家对话。领域专家领域专家知识工程师知识工程师知识获取界面知识获取界面推理机推理机知识库知识库手工知识获取过程手工知识获取过程KB系统系统领域专家领域专家智能的智能的知识获取界面知识获取界面推理机推理机知识库知识库KB系统系统知识获取的自动化知识获取的自动化n通过知识工程师来开发通过知识工程师来开发KB系统可归纳为五个阶段。系统可归纳为五个阶段。n识别阶段识别阶段,知识工程师和领域专家一起判别问

7、题的类型,知识工程师和领域专家一起判别问题的类型和特征。和特征。n概念化阶段概念化阶段,阐明重要的概念、关系和信息流特征,并,阐明重要的概念、关系和信息流特征,并用以描述问题求解的概念模型,包括问题求解方法、推用以描述问题求解的概念模型,包括问题求解方法、推理控制要求和约束条件。理控制要求和约束条件。n形式化阶段形式化阶段,决定知识表示形式和推理机制。,决定知识表示形式和推理机制。n实现阶段实现阶段,以概念模型作为语义框架获取问题求解所需,以概念模型作为语义框架获取问题求解所需的详细知识,以形式化阶段决定的知识表示语言编写并的详细知识,以形式化阶段决定的知识表示语言编写并存放进知识库。新建立的

8、知识库和推理机一起构成存放进知识库。新建立的知识库和推理机一起构成KB系系统的第一个原型。统的第一个原型。n测试阶段测试阶段,通过各种测试手段评价原型系统的性能。,通过各种测试手段评价原型系统的性能。认识问题认识问题的特征的特征找出表达找出表达知识的概念知识的概念设计组织设计组织知识的原则知识的原则形成概括形成概括知识的规则知识的规则验证组织验证组织知识的原则知识的原则必要条件必要条件概念概念结构结构规则规则重新描述重新描述重新设计重新设计重新完善重新完善KB系统的开发步骤系统的开发步骤识别识别概念化概念化形式化形式化实现实现测试测试4.KB系统的开发工具和环境系统的开发工具和环境n开发工具和

9、环境可以分为三类:外壳开发工具和环境可以分为三类:外壳(骨架系骨架系统统)、表示语言、开发工具箱、表示语言、开发工具箱(开发环境开发环境)。n外壳:外壳:给知识工程师提供现成的实现给知识工程师提供现成的实现KB系统的骨架,系统的骨架,只要按骨架规定的表示方式编写专门知识,就可形只要按骨架规定的表示方式编写专门知识,就可形成应用领域的成应用领域的KB系统。系统。n表示语言类工具:表示语言类工具:为知识工程师提供面向知识处理为知识工程师提供面向知识处理的高级编程语言。典型:的高级编程语言。典型:OPS5n开发工具箱开发工具箱(或称或称开发环境开发环境):为:为KB系统的生命周期系统的生命周期中各个

10、阶段提供工具,甚至可以提供多种外壳和表中各个阶段提供工具,甚至可以提供多种外壳和表示语言,以及综合它们建立复杂示语言,以及综合它们建立复杂KB系统的手段。典系统的手段。典型:型:KEE(KnowledgeEngineeringEnvironment)任务特征与任务特征与外壳不匹配外壳不匹配时不行!时不行!编程语言不编程语言不能直接描述能直接描述控制结构!控制结构!4.2设计基于产生式表示的设计基于产生式表示的KB系统开发工具系统开发工具n最著名的基于产生式表示的最著名的基于产生式表示的KBKB系统开发系统开发工具就是产生式系统语言工具就是产生式系统语言OPS5OPS5。nOPS5OPS5采用条

11、件采用条件- -动作型产生式规则,只动作型产生式规则,只允许正向推理,规则的右部可以是任何允许正向推理,规则的右部可以是任何操作函数的序列。操作函数的序列。n下面介绍一个命名为下面介绍一个命名为XpsXps的实验型产生的实验型产生式系统,它模拟了式系统,它模拟了OPS5OPS5的实现。的实现。4.2.1总体设计总体设计 产生式系统由三个部分组成:产生式系统由三个部分组成:规则库规则库、综综合数据库合数据库和和控制系统控制系统。1.规则的表示规则的表示n:=*+n可以用规则定义函数可以用规则定义函数Define-Rule定义一条新规定义一条新规则,并将其置于规则库。例如:则,并将其置于规则库。例

12、如:(Define-RuleEat(Hungry?Person)(Edible?Food)(Write(?Personeatsthe?Food)2.综合数据库的表示综合数据库的表示n综合数据库的内容表示为以列表形式描述的谓词公式。综合数据库的内容表示为以列表形式描述的谓词公式。n可以用存储函数可以用存储函数DB-Store将它们插进综合数据库。将它们插进综合数据库。n例如,在初始化有关饮食问题的综合数据库时,若执行:例如,在初始化有关饮食问题的综合数据库时,若执行:(DB-Store(HungryPeter)(DB-Store(HungryPaul)(DB-Store(EdibleHot-Do

13、g)(DB-Store(EdibleTurkey-Leg)(DB-Store(EdibleMuffin) 则综合数据库的初始内容就由这则综合数据库的初始内容就由这5个事实元素构成,且个事实元素构成,且每个元素附加一个时间标签以指示它们进入综合数据库的先每个元素附加一个时间标签以指示它们进入综合数据库的先后顺序后顺序.n时间标签按事实元素进入综合数据库的顺序,从时间标签按事实元素进入综合数据库的顺序,从1开始,开始,依次加依次加1。3.控制系统控制系统n控制机制采用前述的控制机制采用前述的识别识别-行动行动循环控制流。循环控制流。n在每个识别在每个识别-行动循环的识别阶段均有可能激活多条规则,行

14、动循环的识别阶段均有可能激活多条规则,且每条激活的规则可有多个激活例,这些规则激活例构成了且每条激活的规则可有多个激活例,这些规则激活例构成了所谓所谓冲突集冲突集。n例如上述有关饮食问题的规则就存在多个满足综合数据库的例如上述有关饮食问题的规则就存在多个满足综合数据库的激活例,并由此建立了以下冲突集:激活例,并由此建立了以下冲突集:规则名规则名激活例序号激活例序号变量置换变量置换时间标签表时间标签表Eat1Peter/Person,Hot-Dog/Food(13)Eat2Peter/Person,Turkey-Leg/Food(14)Eat3Peter/Person,Muffin/Food(1

15、5)Eat4Paul/Person,Hot-Dog/Food(23)Eat5Paul/Person,Turkey-Leg/Food(24)Eat6Paul/Person,Muffin/Food(25)其中,时间标签表记载了与规则条件部分匹配模式匹配其中,时间标签表记载了与规则条件部分匹配模式匹配的事实元素的时间标签。的事实元素的时间标签。nXpsXps采用的冲突解法是:新近和特殊的规则激采用的冲突解法是:新近和特殊的规则激活例优先选用。活例优先选用。n冲突集可以有三种情况:冲突集可以有三种情况:n空集:则系统无法继续推理过程,失败结束;空集:则系统无法继续推理过程,失败结束;n单一规则激活例:

16、直接执行该激活例;单一规则激活例:直接执行该激活例;n多个规则激活例:执行冲突解法。多个规则激活例:执行冲突解法。冲突解法分三个步骤,分别由三个筛选器执行:冲突解法分三个步骤,分别由三个筛选器执行:(1 1)折射()折射(RefractionRefraction)筛选)筛选n将已使用过,又再一次激活的规则例删除,不让其进入冲突将已使用过,又再一次激活的规则例删除,不让其进入冲突集。集。n规则激活例中记载的时间标签表,使得检查规则例是否重复规则激活例中记载的时间标签表,使得检查规则例是否重复激活成为可能。激活成为可能。(2 2)新近性()新近性(RecencyRecency)筛选)筛选n优先选用

17、能与优先选用能与最新近最新近进入综合数据库的事实元素相匹配的规进入综合数据库的事实元素相匹配的规则激活例。则激活例。n由于规则条件部分往往有多个匹配模式,所以必须综合评价由于规则条件部分往往有多个匹配模式,所以必须综合评价它们的新近性。它们的新近性。n可基于时间标签表加以评价,该方法如下:首先将各规则激可基于时间标签表加以评价,该方法如下:首先将各规则激活例的时间标签表按数字从大到小排列其包含标签的顺序活例的时间标签表按数字从大到小排列其包含标签的顺序(并删除重复的标签),然后再依次比较经排序后的时间标(并删除重复的标签),然后再依次比较经排序后的时间标签表的相应元素,就可鉴别出新近性的不同。

18、签表的相应元素,就可鉴别出新近性的不同。例如,有以下各时间标签表:例如,有以下各时间标签表:(1103)()(3101)(913)()(8697)()(103)()(3129)(31101)n则先对各时间标签表进行排序得:则先对各时间标签表进行排序得:(1031)()(1031)()(931)()(9876)(103)()(9321)()(1031)n按新近性原则,相应于时间标签表按新近性原则,相应于时间标签表(1103)()(3101)()(31101)的规则激活例新近性最好。的规则激活例新近性最好。(3)特殊性()特殊性(Specificity)筛选)筛选n特殊性意指规则的条件部分具有更多

19、的匹配模式。特殊性意指规则的条件部分具有更多的匹配模式。n显然,特殊性高的规则难以激活,所以一旦激活,显然,特殊性高的规则难以激活,所以一旦激活,并通过了新近性筛选,就应优先选用这种规则的并通过了新近性筛选,就应优先选用这种规则的激活例。激活例。n对于上例新近性筛选留下的三个规则激活例,按对于上例新近性筛选留下的三个规则激活例,按特殊性原则,就应选用对应于时间标签表(特殊性原则,就应选用对应于时间标签表(31101)的那个。)的那个。n若经由上述三个步骤的筛选后仍留下多于一若经由上述三个步骤的筛选后仍留下多于一个的规则激活例,则从中个的规则激活例,则从中随机选用随机选用一个。一个。练习练习nP

20、190、二、二、4设在设在Xps运行的某个识别运行的某个识别-行动循环激活了行动循环激活了6条规则例,它们的时间标签表依次分别为:条规则例,它们的时间标签表依次分别为:(1 3 5) (7 6 0) (7 6 6 0) (5 6 8) (5 6 2)()(0 3 7)已知第已知第1、4规则激活例已执行过,问此循规则激活例已执行过,问此循环应选用哪条规则激活例加以执行?环应选用哪条规则激活例加以执行? 4.2.2Xps的实现的实现 实现实现Xps的程序设计分三个部分进行:规的程序设计分三个部分进行:规则库管理、综合数据库管理和推理引擎。则库管理、综合数据库管理和推理引擎。1、规则库管理、规则库管

21、理n规则库设计为一个散列表,用前述函数规则库设计为一个散列表,用前述函数Define-Rule定义产生式规则。定义产生式规则。n为提高使用效率,规则转变为内部形式的数据结构为提高使用效率,规则转变为内部形式的数据结构存放,包括存放,包括5个数据场:个数据场:规则名规则名、匹配模式列表匹配模式列表、模模式变量表式变量表、操作函数列表操作函数列表和和时间标签表集合时间标签表集合。n时间标签表集合存放已被执行过的该规则激活例的时间标签表集合存放已被执行过的该规则激活例的时间标签表,以备检查。时间标签表,以备检查。 2 2、综合数据库管理、综合数据库管理n综合数据库设计为树状层次索引网。综合数据库设计

22、为树状层次索引网。n可按事实元素列表中的元素次序逐层建立事实元可按事实元素列表中的元素次序逐层建立事实元素的索引,并素的索引,并将事实元素置于索引路径的末端。将事实元素置于索引路径的末端。n面向综合数据库的管理操作包括面向综合数据库的管理操作包括PS-Store、PS-Erase和和PS-Fetch,分别实现事实元素的插入、,分别实现事实元素的插入、删除和取用删除和取用。3、推理引擎、推理引擎推理引擎也称为解释器,其主要工作就是对规则库中的规推理引擎也称为解释器,其主要工作就是对规则库中的规则进行解释性执行。基本的控制流是则进行解释性执行。基本的控制流是识别识别-行动行动循环。循环。1)建立冲

23、突集)建立冲突集n每当一个规则条件部分的所有匹配模式都找到匹配的事实元素时,每当一个规则条件部分的所有匹配模式都找到匹配的事实元素时,就建立该规则的一个激活例,记载模式变量束缚值和时间标签表。就建立该规则的一个激活例,记载模式变量束缚值和时间标签表。n随即检查该标签表是否出现于该规则的标签表集合中,若出现,随即检查该标签表是否出现于该规则的标签表集合中,若出现,则该激活例已使用过,不再进入冲突集,否则加进冲突集。则该激活例已使用过,不再进入冲突集,否则加进冲突集。2)解决冲突)解决冲突n由于由于折射折射筛选步已在建立冲突集的过程中完成,解决冲突实际筛选步已在建立冲突集的过程中完成,解决冲突实际

24、上就是进行后二步:新近性筛选和特殊性筛选,若筛选后冲突集上就是进行后二步:新近性筛选和特殊性筛选,若筛选后冲突集中还剩余多个规则激活例,就随机取一个。中还剩余多个规则激活例,就随机取一个。3)执行选用的规则例)执行选用的规则例首先把该规则激活例的时间标签表加进相应规首先把该规则激活例的时间标签表加进相应规则内部结构的时间标签表集合;然后将模式变量的则内部结构的时间标签表集合;然后将模式变量的束缚值取出,作为参数调用规则右部的操作函数加束缚值取出,作为参数调用规则右部的操作函数加以执行。以执行。为增加产生式规则的表示功能,为增加产生式规则的表示功能,Xps允许在规允许在规则的条件部分应用特殊谓词

25、则的条件部分应用特殊谓词Assign,连词,连词AND和和NOT,关系表达式(以前缀方式表示)和任何真值,关系表达式(以前缀方式表示)和任何真值函数(以函数(以$符号作为函数名前缀)。符号作为函数名前缀)。n应用应用Assign谓词的表达式形如:谓词的表达式形如:(Assign)用于提高规则表示的便易性。其用法通过下用于提高规则表示的便易性。其用法通过下面例子加以说明:面例子加以说明:(Define-RuleFill-Big-Box(Assign?A(On?XTable))(Color?XGreen)(PS-Store(In?XBig-Box)(Write(?Xisnowinthebigbox

26、)(PS-Erase?A)这里谓词这里谓词Assign,仅指示将与匹配模式匹配的仅指示将与匹配模式匹配的事实元素作为模式变量事实元素作为模式变量?A的束缚值。的束缚值。需做匹配检查需做匹配检查已经是束已经是束缚值了!缚值了!n连词连词AND的应用使多个匹配模式联合作为的应用使多个匹配模式联合作为单一的匹配模式。单一的匹配模式。n例如某规则条件部分形如:例如某规则条件部分形如:(P?X?Y)(AND(Q?X?Y)(W?Y?Z)n相当于该规则只有相当于该规则只有2个匹配模式,规则激活例个匹配模式,规则激活例的时间标签表也只包含的时间标签表也只包含2个时间标签。个时间标签。n连词连词AND辖域内的匹

27、配模式仍分别作匹配检辖域内的匹配模式仍分别作匹配检查,只是仅将匹配的事实元素中最大的时间查,只是仅将匹配的事实元素中最大的时间标签作为整个标签作为整个AND匹配模式的时间标签。匹配模式的时间标签。n连词连词NOT的应用引入了否定的匹配模式。的应用引入了否定的匹配模式。n例如:例如:(NOT(P?X?Y)n只有(只有(P?X?Y)不能满足的情况下,)不能满足的情况下,NOT匹配模式才满足。匹配模式才满足。n显然显然,相应于满足的相应于满足的NOT匹配模式,不可能取得时间标签;匹配模式,不可能取得时间标签;但为了表示因但为了表示因NOT匹配模式的引入增加了规则的特殊性,匹配模式的引入增加了规则的特

28、殊性,可产生一个以数字可产生一个以数字“0”指示的空时间标签。指示的空时间标签。n例如时间标签(例如时间标签(903)就意指条件部分第)就意指条件部分第2个匹配模式是个匹配模式是NOT匹配模式。匹配模式。n关系表达式和真值函数不需要在综合数据库中进关系表达式和真值函数不需要在综合数据库中进行匹配检查,而是依据关系符的语义或真值函数的执行匹配检查,而是依据关系符的语义或真值函数的执行来确定真值(行来确定真值(T或或F)。因此,同样不可能取得时)。因此,同样不可能取得时间标签,可相应地引入空时间标签。间标签,可相应地引入空时间标签。 上周回顾上周回顾n知识表示的实用化问题知识表示的实用化问题n程序

29、性知识程序性知识n陈述性知识陈述性知识n本体表示语言的研究本体表示语言的研究nXMLnDTDnRDFnKB系统特点、组成、评价、开发系统特点、组成、评价、开发n实验型产生式系统实验型产生式系统XPs的设计和实现的设计和实现4.2.3应用实例应用实例家族树家族树n下面通过一个关于家族树应用简例下面通过一个关于家族树应用简例,观察基于,观察基于产生式表示的产生式表示的KB系统设计和问题求解流程。系统设计和问题求解流程。n问题求解任务是查询某人的祖先,可以设计问题求解任务是查询某人的祖先,可以设计5条产生式规则加以表示。条产生式规则加以表示。n该该KB系统启动后首先初始化综合数据库:用系统启动后首先

30、初始化综合数据库:用PS-Store插入标记(插入标记(Load-Signal)作为第)作为第1个个事实元素。事实元素。1)(Define-RuleLoad-Data(Assign?A(Load-Signal)(PS-Erase?A)(PS-Store(ParentsPenelopeJessicaJeremy)(PS-Store(ParentsJessicaMary-ElizabethHomer)(PS-Store(ParentsJeremyJennySteven)(PS-Store(ParentsStevenLoreeNil)(PS-Store(ParentsLoreeNilJason)(P

31、S-Store(ParentsHomerStephanieNil)(PS-Store(Start-Singal)2)(Define-RuleStart-Example(Assign?A(Start-Signal)(PS-Erase?A)(Write(NameofPerson:)(Read?Input)(PS-Store(RequestAncestors?Input)插入事插入事实元素实元素请求输请求输入姓名入姓名3)(Define-RuleFind-Ancestors(RequestAncestors?Name)(NOT(Equal?NameNil)(Parents?Name?Mother?F

32、ather)(PS-Store(RequestAncestors?Mother)(PS-Store(RequestAncestors?Father)4)(Define-RulePrint-Ancestor(Assign?Request1(RequestAncestors?Name)(NOT(=?NameNil)(Write(?Nameisanancestor)(PS-EraseRequest1)5)(Define-RuleStop-Finding-Ancestors(RequestAncestors?Name)(NOT(=?NameNil)(NOT(AND(RequestAncestors?X

33、)(NOT(=?XNil)(NOT(=?X?Name)(Write(Nomoreancestors)(Halt)查询父查询父亲母亲亲母亲打印祖打印祖先名先名无其他无其他祖先!祖先!1.(Load-Signal)2.(ParentsPenelopeJessicaJeremy)3.(ParentsJessicaMary-ElizabethHomer)4.(ParentsJeremyJennySteven)5.(ParentsStevenLoreeNil)6.(ParentsLoreeNilJason)7.(ParentsHomerStephanieNil)8.(Start-Singal)9.(Re

34、questAncestorsPenelope)10.(RequestAncestorsJessica)11.(RequestAncestorsJeremy)12.(RequestAncestorsJenny)13.(RequestAncestorsSteven)14.(RequestAncestorsLoree)15.(RequestAncestorsJason)16.(RequestAncestorsMary-Elizabeth)17.(RequestAncestorsHomer)18.(RequestAncestorsStephanie)4.2.4性能改进性能改进n缺点:缺点:从上例可看出

35、,从上例可看出,Xps求解过程中重复地产生冲突集。求解过程中重复地产生冲突集。n每个识别每个识别-行动循环都重新生成一个冲突集,但系统只行动循环都重新生成一个冲突集,但系统只从中选一个规则激活例执行,其余规则激活例全部抛弃。从中选一个规则激活例执行,其余规则激活例全部抛弃。n实用上,相邻二个循环之间综合数据库的内容往往变化实用上,相邻二个循环之间综合数据库的内容往往变化很小,造成许多同样的匹配检查工作重复地进行,浪费很小,造成许多同样的匹配检查工作重复地进行,浪费时间,降低问题求解效率。时间,降低问题求解效率。n改进:改进:Xps应设计成不是每个循环重新生成一个冲突集,而应设计成不是每个循环重

36、新生成一个冲突集,而是始终保持一个是始终保持一个全局冲突集全局冲突集。n一旦初始冲突集生成,在以后的识别一旦初始冲突集生成,在以后的识别-行动循环中只需行动循环中只需依据综合数据库的增删变化,加新的规则激活例到冲突依据综合数据库的增删变化,加新的规则激活例到冲突集,删去条件部分变得不满足的规则激活例。集,删去条件部分变得不满足的规则激活例。 n对对Xps作以下改进:作以下改进:n(1)将规则条件部分的匹配模式置于另一树状)将规则条件部分的匹配模式置于另一树状层次索引网,并记载匹配模式在规则条件部分层次索引网,并记载匹配模式在规则条件部分中的排列次序和模式变量束缚值。用增删的事中的排列次序和模式

37、变量束缚值。用增删的事实去匹配规则。实去匹配规则。n(2)记载规则的部分满足状态。)记载规则的部分满足状态。n(3)处理否定的匹配模式。)处理否定的匹配模式。nXps的主要功能与的主要功能与OPS5相当,推理控制机制相当,推理控制机制也相同;主要区别在于知识表示形式和内部也相同;主要区别在于知识表示形式和内部存储方式。存储方式。4.2.5开发工具开发工具OPS5nOPS5开发于开发于70年代后期,属表示语言型专家系年代后期,属表示语言型专家系统开发工具。统开发工具。n能提供比骨架型工具更为通用的推理控制机制能提供比骨架型工具更为通用的推理控制机制和知识表示语言去适应于较宽范围的应用领域,和知识

38、表示语言去适应于较宽范围的应用领域,尤其是专家系统开发者可以通过尤其是专家系统开发者可以通过OPS5的表示的表示语言去设计特别的控制要求。语言去设计特别的控制要求。nXps较好地模仿了较好地模仿了OPS5的实现,主要差别在下的实现,主要差别在下面三个方面。面三个方面。1)对象表示)对象表示nXps用一组相互独立的事实元素来描述一个对象,而用一组相互独立的事实元素来描述一个对象,而OPS5则用对象子句集描述一个对象,形如:则用对象子句集描述一个对象,形如:(+)n例如例如Xps用一组事实元素来描述某个人用一组事实元素来描述某个人Penelope:(ParentsPenelopeJessicaJe

39、remy)(AgePenelope20)(SexPenelopeFemale)而在而在OPS5中则紧凑地表示为:中则紧凑地表示为:(PersonNamePenelopeAge20SexFemaleParentsJessicaJeremy)指示属性名指示属性名2)对象的存储形式对象的存储形式nXpsXps以树状层次索引网存储事实元素,以树状层次索引网存储事实元素,OPS5OPS5则为则为每类对象定义一个类(每类对象定义一个类(ClassClass)结构,使类的每)结构,使类的每个实例(即对象)具有固定数量的属性和固定个实例(即对象)具有固定数量的属性和固定的属性名。的属性名。OPS5OPS5以以

40、LITERALIZELITERALIZE格式定义类。格式定义类。n例如类例如类PersonPerson定义为:定义为: (LITERALIZE Person Name Age Sex LITERALIZE Person Name Age Sex ParentsParents)n类定义允许最后一个属性取多值,这种属性称类定义允许最后一个属性取多值,这种属性称为向量属性。为向量属性。3)规则条件)规则条件n规则条件部分匹配模式中的模式变量常会受到一些规则条件部分匹配模式中的模式变量常会受到一些值束缚限制,例如要求模式变量值束缚限制,例如要求模式变量?X非空。非空。Xps以插入以插入规则条件部分的(

41、规则条件部分的(NOT(EQUAL?XNIL))来表示;)来表示;nOPS5中规则前提部分的模式则以带变量的类实例中规则前提部分的模式则以带变量的类实例(对象)来实现更为方便和紧凑的表示。就以前述(对象)来实现更为方便和紧凑的表示。就以前述家族树最后一条规则的条件部分为例,家族树最后一条规则的条件部分为例,OPS5将其表将其表示为:示为:(RequestTypeAncestorsTargetNIL)-(RequestTypeAncestorsTargetNIL)nOPS5OPS5(和(和XpsXps)的一个不同于骨架型工具的重)的一个不同于骨架型工具的重要特点是允许专家系统开发者定制特别的控制

42、要特点是允许专家系统开发者定制特别的控制要求。定制建立在二个重要概念的基础上:要求。定制建立在二个重要概念的基础上:目目标模式标模式和和控制元素控制元素。 nOPS5OPS5提供的这种推理控制的定制能力既是优点提供的这种推理控制的定制能力既是优点也是缺点。也是缺点。n优点体现在能够定制控制要求以适应于问题特征和优点体现在能够定制控制要求以适应于问题特征和更有效地求解问题,也有利于知识库维护;更有效地求解问题,也有利于知识库维护;n缺点体现在要求专家系统开发者具有一定的技术水缺点体现在要求专家系统开发者具有一定的技术水平,无经验的开发者会感觉到难以使用。平,无经验的开发者会感觉到难以使用。4.3

43、专家系统实例专家系统实例MYCINnMYCIN是一个通过提供咨询服务来帮助是一个通过提供咨询服务来帮助普通内科医生诊治细菌感染性疾病的专普通内科医生诊治细菌感染性疾病的专家系统,其于家系统,其于1972年开始研制,年开始研制,74年基年基本完成,并投入实际应用。本完成,并投入实际应用。n围绕着围绕着MYCIN的各种研究工作一直延续的各种研究工作一直延续了了10年,对于推动知识工程以及专家系年,对于推动知识工程以及专家系统学科的建立和发展具有重要影响。统学科的建立和发展具有重要影响。知识表示方式:知识表示方式:nMYCIN也设计为典型的产生式系统,由规则也设计为典型的产生式系统,由规则库、综合数

44、据库和控制系统三个部分组成;只库、综合数据库和控制系统三个部分组成;只是基于规则的推理采用是基于规则的推理采用逆向逆向方式。方式。n从从KB系统的组成来看,规则库就是系统的组成来看,规则库就是MYCIN的的知识库知识库,综合数据库和控制系统联合形成,综合数据库和控制系统联合形成推理推理机机。由于当时尚未出现视窗技术,。由于当时尚未出现视窗技术,用户界面用户界面只只提供基于文本提供基于文本(text)的问答过程和结果显示。的问答过程和结果显示。4.3.1知识库的构造知识库的构造nMYCIN的知识库以前提的知识库以前提-动作型产生式规则来表示。动作型产生式规则来表示。n:=RULEPREMISE(

45、$AND+)ACTION+:=|($OR+)。)。n常用函数:常用函数:n(SAME)n(CONCLUDETALLY)可信度,可信度,-1,+1关联三元组关联三元组nMYCIN系统建立的初期就以上述格式表示和收集了系统建立的初期就以上述格式表示和收集了200多条规则于知识库,其中多条规则于知识库,其中047号规则表示如下:号规则表示如下:nRULE047PREMISE($AND(SAMECNTXTSITEBLOOD)(NOTDEFINITECNTXTIDENT)(SAMECNTXTSTAINGRAMNEG)(SAMECNTXTMORPHROD)(SAMECNTXTBURNT)ACTION(CO

46、NCLUDECNTXTIDENTPSEUDOMONASTALLY0.4)n规则规则047如果:如果:1)培养物取自血液,且)培养物取自血液,且2)病原体的身份未鉴别,且)病原体的身份未鉴别,且3)病原体的染色是革兰氏阴性,且)病原体的染色是革兰氏阴性,且4)病原体的形态为杆状,且)病原体的形态为杆状,且5)病人被烧伤;)病人被烧伤;那么:该病原体的身份应鉴别为假单胞细菌,且可信度为那么:该病原体的身份应鉴别为假单胞细菌,且可信度为0.4。需考察的对象需考察的对象(上下文)(上下文)4.3.2推理机的设计推理机的设计n整个推理过程通过称为目标规则的整个推理过程通过称为目标规则的092号规则来启号

47、规则来启动。动。规则规则092如果:如果:1)存在一种病原体需要治疗,且)存在一种病原体需要治疗,且2)可能存在其它需要治疗的病原体,尽)可能存在其它需要治疗的病原体,尽管它们尚未从目前的培养物中分离出来;管它们尚未从目前的培养物中分离出来;那么:那么:1)依据病原体对药物的敏感情况,制定)依据病原体对药物的敏感情况,制定能有效抑制这些病原体的治疗方案(可以有多个)能有效抑制这些病原体的治疗方案(可以有多个),且,且2)从中制定最佳的综合治疗方案;)从中制定最佳的综合治疗方案;否则:否则:病人不必治疗。病人不必治疗。1、诊断的推理控制、诊断的推理控制n采用逆向推理和深度优先的搜索策略。采用逆向

48、推理和深度优先的搜索策略。n步骤:步骤:n在综合数据库(在综合数据库(MYCIN称为动态数据库)称为动态数据库)中建立上下文对象:病人中建立上下文对象:病人-1(patient-1),),作为一棵上下文树的根节点作为一棵上下文树的根节点 。 n以建立病人的治疗方案以建立病人的治疗方案(REGIMEN)为目标,为目标,激活上述规则激活上述规则092。n规则链的形成导致推理树(或称目标树)规则链的形成导致推理树(或称目标树)的建立的建立。n由于导出相同结论的规则(如由于导出相同结论的规则(如090090和和149149)相互独立地支)相互独立地支持结论的成立(有持结论的成立(有 或或 关系),而规

49、则前提包含的条件关系),而规则前提包含的条件又有又有 与与 关系,所以推理树成为关系,所以推理树成为与或树与或树。nMYCIN系统通过两个相互调用的程序系统通过两个相互调用的程序MONITOR和和FINDOUT去推进整个推理去推进整个推理(咨询)过程。(咨询)过程。nMONITOR分析相关的规则能否激活;分析相关的规则能否激活;nFINDOUT则搜索规则激活所需的数据(属性值则搜索规则激活所需的数据(属性值及其及其CF)。)。nMYCIN将规则按上下文对象分类,使得每次将规则按上下文对象分类,使得每次对于一个目标作推理时,只需考虑该目标涉对于一个目标作推理时,只需考虑该目标涉及的那个上下文对象

50、相关的规则,从而大幅及的那个上下文对象相关的规则,从而大幅度提高了推理的效率。度提高了推理的效率。FINDOUT的程序流程的程序流程2、不确定推理、不确定推理n鉴于推理过程生成了与或推理树,鉴于推理过程生成了与或推理树,MYCINMYCIN的的不确定推理既要处理不确定推理既要处理CFCF沿推理链的传递,沿推理链的传递,又要处理又要处理CFCF的与或组合。的与或组合。 3、治疗选择机制、治疗选择机制n所谓治疗方案,就是依据推断出的可能病菌所谓治疗方案,就是依据推断出的可能病菌(病原体)选用适当的治疗药物。(病原体)选用适当的治疗药物。n知识库中已包含一组治疗规则,每条规则为一知识库中已包含一组治

51、疗规则,每条规则为一种病菌制定一个药物治疗方案。种病菌制定一个药物治疗方案。 n当然,医生对药物的使用有最后决定权,若发当然,医生对药物的使用有最后决定权,若发现用药不合理,可以要求除掉这些不合理的药现用药不合理,可以要求除掉这些不合理的药物,并重新启动治疗方案的综合制定。物,并重新启动治疗方案的综合制定。4.3.3系统服务设施系统服务设施1、推理解释、推理解释nWHY:主要用于推理过程中系统请求医生主要用于推理过程中系统请求医生提供观测数据时。提供观测数据时。 nHOW:主要用于推理结束后,回答医生对主要用于推理结束后,回答医生对推理结果提出的疑问。推理结果提出的疑问。nWHYNOT:医生询

52、问某条规则为何未被医生询问某条规则为何未被使用,系统的解释通常是该规则的前提使用,系统的解释通常是该规则的前提不能满足。不能满足。 为了使系统提供的解释适合于不同专业为了使系统提供的解释适合于不同专业的医生(甚至病人),的医生(甚至病人),MYCIN的研制者于的研制者于1982年提出了能依据用户知识水平加以裁剪年提出了能依据用户知识水平加以裁剪的解释;并设置了二个参数:复杂性和重要的解释;并设置了二个参数:复杂性和重要性,来量化知识单元(规则和对象属性)的性,来量化知识单元(规则和对象属性)的可解释性。可解释性。n复杂性复杂性-用以指示为理解用以指示为理解-知识单元,需要用知识单元,需要用户自

53、身具备的知识水平。户自身具备的知识水平。n重要性重要性-为让用户理解给出的解释,该知识为让用户理解给出的解释,该知识单元不可缺少的程度。单元不可缺少的程度。2、知识库维护、知识库维护nMYCIN系统知识库中包含的推理规则,系统知识库中包含的推理规则,尽管形式上相互独立,但语义上却相互尽管形式上相互独立,但语义上却相互关联,并由此形成推理树。关联,并由此形成推理树。n正是这种语义上的关联,使知识库的维正是这种语义上的关联,使知识库的维护面临困难。护面临困难。以增加规则到知识库为例,通常会出现以下三以增加规则到知识库为例,通常会出现以下三类问题:类问题:n包含问题包含问题n在知识库包含规则在知识库

54、包含规则r:ABD的情况下,增加新规则的情况下,增加新规则r:ABCD。显然,这二条规则不应同时存在于。显然,这二条规则不应同时存在于知识库(会引起冗余)。究竟保存哪条规则于知识库取决知识库(会引起冗余)。究竟保存哪条规则于知识库取决于是否存在这样的情况:于是否存在这样的情况:ABCD。n单一规则的不一致单一规则的不一致n在知识库包含规则在知识库包含规则AB的情况下,增加新规则的情况下,增加新规则AB,就会产生这种不一致问题。显然,让系统自动发现该问,就会产生这种不一致问题。显然,让系统自动发现该问题是容易的。题是容易的。n多规则的不一致多规则的不一致n在知识库包含规则在知识库包含规则AB,B

55、C,CD的情况下,增的情况下,增加新规则加新规则AD就会产生这种不一致问题。由于涉及到就会产生这种不一致问题。由于涉及到一条推理链,要查出这种问题往往既困难又耗时。一条推理链,要查出这种问题往往既困难又耗时。3、教学教学MYCIN的知识库包含了医学专家的知识库包含了医学专家提供的丰富经验知识,可以作为医疗教提供的丰富经验知识,可以作为医疗教学的知识来源。学的知识来源。 4.3.4开发工具开发工具EMYCINnEMYCIN是从是从MYCIN系统抽取出的与应系统抽取出的与应用领域无关的骨架型专家系统开发工具。用领域无关的骨架型专家系统开发工具。nEMYCIN继承了继承了MYCIN的主要特点,的主要

56、特点,如下:如下:n采用逆向链深度优先的控制策略;采用逆向链深度优先的控制策略;n使用产生式规则表示领域知识;使用产生式规则表示领域知识;n允许事实和规则具有不确定性(以可信度指允许事实和规则具有不确定性(以可信度指示)。示)。 EMYCIN定义的规则可以用定义的规则可以用BNF范式描述如下:范式描述如下::=(IFTHENELSE):=的与或组合的与或组合:=:=:=()用用EMYCIN开发的开发的一些有影响的专家系统一些有影响的专家系统 nPUFF:设计于:设计于1978年,是一个面向肺部疾病治疗;年,是一个面向肺部疾病治疗;nHEADMED:1978年,面向心理医药学的;年,面向心理医药

57、学的;nSACON:1979年,面向机械结构分析;年,面向机械结构分析;nONCOCIN:1981年,用于辅助医生管理患淋巴瘤癌年,用于辅助医生管理患淋巴瘤癌症病人的化疗协议;症病人的化疗协议;nCLOT:1980年,用于诊断血液凝结系统的疾病;年,用于诊断血液凝结系统的疾病;nDART:1981年,用于诊断年,用于诊断IBM计算机远程处理系统计算机远程处理系统中出现的软件和硬件故障。中出现的软件和硬件故障。4.4问题求解的结构化组织问题求解的结构化组织n原因:传统的知识表示技术与人组织问题原因:传统的知识表示技术与人组织问题求解的思维方式严重失配。求解的思维方式严重失配。n为此,需要在易于人

58、理解的更高级别去开为此,需要在易于人理解的更高级别去开展知识表示的研究,那就是纽厄尔提议的展知识表示的研究,那就是纽厄尔提议的 知识级。知识级。n问题求解行为是通过目标集和动作集加以刻问题求解行为是通过目标集和动作集加以刻画的,知识作为关联动作到目标的媒介,基画的,知识作为关联动作到目标的媒介,基于简单的合理性原则。于简单的合理性原则。4.4.1结构化组织的要求结构化组织的要求n表示和组合应用领域知识的最简单策略,是把表示和组合应用领域知识的最简单策略,是把问题求解所用的全部知识统统表示为问题求解所用的全部知识统统表示为规则规则,利,利用规则搜索从问题求解的初始状态到目标状态用规则搜索从问题求

59、解的初始状态到目标状态的路径。的路径。 n利用产生式规则表示领域知识有许多优点,但利用产生式规则表示领域知识有许多优点,但也有缺点,具体表现为:也有缺点,具体表现为:n难以扩展。难以扩展。 n选择规则的低效性。选择规则的低效性。 n不灵活的控制策略。不灵活的控制策略。 n单一的表示形式。单一的表示形式。 n为克服这些缺点,将求解复杂问题的知识划为克服这些缺点,将求解复杂问题的知识划分为一组相对独立的模块比较合适。分为一组相对独立的模块比较合适。n模块化的一个重要议题就是如何协调模块在模块化的一个重要议题就是如何协调模块在问题求解过程中的相互合作。问题求解过程中的相互合作。n模块的划分可以是面向

60、动作的或面向对象的。模块的划分可以是面向动作的或面向对象的。前者面向前者面向 怎么做怎么做 知识的组织,后者面向知识的组织,后者面向 是什么是什么 知识的组织。知识的组织。4.4.2事务表事务表n事务表事务表(Agenda)(Agenda)是一张应由系统执行的事务的是一张应由系统执行的事务的列表,也称任务表,是面向动作的问题求解组列表,也称任务表,是面向动作的问题求解组织方式之一。织方式之一。n它允许各个推理模块经由事务表相互通信,以它允许各个推理模块经由事务表相互通信,以求协调它们在问题求解中的合作关系。求协调它们在问题求解中的合作关系。任务任务推理模块推理模块优先级优先级理由表理由表4.4

61、.3黑板法黑板法n黑板法黑板法(Blackboard)(Blackboard)也是面向动作的组织方式。也是面向动作的组织方式。n用黑板法组织问题求解首先出现于用黑板法组织问题求解首先出现于7070年代对取年代对取名为名为HEARSAY-HEARSAY-的口语理解系统的研究。系统的口语理解系统的研究。系统由一组称为知识源由一组称为知识源(KS-Knowledge Source)(KS-Knowledge Source)的的独立推理模块和黑板组成。独立推理模块和黑板组成。n每个每个KSKS包括三个部分:触发模式、直接码和体。包括三个部分:触发模式、直接码和体。 n黑板是所有黑板是所有KSKS可以访问的公共数据区。可以访问的公共数据区。4.4.4问题求解建模问题求解建模4.4.5新一代新一代KB系统技术系统技术这两节有兴趣自己看,了解一下!这两节有兴趣自己看,了解一下!本本章章小小结结

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > PPT模板库 > 金融/商业/投资

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号