第二章知识表示课件.ppt
2023/4/3,1,2.1 概述,知识表示是智能系统的重要基础,是人工智能中最活跃的研究部分之一。为了使计算机具有智能,使它能模拟人类的智能行为,就必须使它具有知识。但知识是需要用适当的模式表示出来才能存储到计算机中去的,因此关于知识的表示问题就成为人工智能中一个十分重要的研究课题。,2023/4/3,2,知识的概念知识就是人类认识自然界(包括社会和人)的精神产物,是人类进行智能活动的基础。知识按其作用可大致分为三类 描述性知识。表示对象及概念的特征及其相互关系的知识,以及问题求解状况的知识,也称为事实性知识。判断性知识。表示与领域有关的问题求解知识如推理规则等,也称为启发性知识 过程性知识。表示问题求解的控制策略,即如何应用判断性知识进行推理的知识。,2023/4/3,3,按照作用的层次,知识还可以分成以下两类 对象级知识,直接描述有关领域对象的知识,或称为领域相关的知识。元级知识,描述对象级知识的知识,如关于领域知识的内容、特征、应用范围、可信程度的知识以及如何运用这些知识的知识,也称为关于知识的知识,2023/4/3,4,知识是人通过实践,认识到的客观世界的规律性的东西。知识在信息的基础上增加了上下文信息,提供了更多的意义,因此也就更加有用和有价值。知识是随着时间的变化而动态变化的,新的知识可以根据规则和已有的知识推导出来。,注意,2023/4/3,5,知识是经过加工的信息,它包括事实、信念和启发式规则。,事实:是关于对象和物体的知识。规则:是有关问题中与事物的行动、动作相联系的因果关系的知识。,2023/4/3,6,知识表示在人工智能体的建造中起到关键作用以适当方式表示知识,才导致智能体展示出智能行为知识表示是数据结构及其处理机制的综合知识表示=符号(结构)+处理机制,其中恰当的符号(结构)用于存储要解决的问题、可能的中间解答和最终解答以及解决问题涉及的知识;配套的处理机制仅有符号(结构)不能体现出系统具有知识;只有对其作适当的处理才构成意义。,2023/4/3,7,AI对知识表示方法的要求,(1)表示能力,要求能够正确、有效地将问题求解所需要的各类知识都表示出来。(2)可理解性,所表示的知识应易懂、易读。(3)便于知识的获取,使得智能系统能够渐进地增加知识,逐步进化。(4)便于搜索,表示知识的符号结构和推理机制应支持对知识库的高效搜索,使得智能系统能够迅速地感知事物之间的关系和变化;同时很快地从知识库中找到有关的知识。(5)便于推理,要能够从己有的知识中推出需要的答案和结论。,2023/4/3,8,2.2 谓词逻辑表示法 用形式逻辑(尤其是一阶谓词逻辑)表示知识是AI 研究中提出使用的一种普遍方法。1.命题逻辑和谓词逻辑 命题逻辑和谓词逻辑是最先应用于人工智能的两种逻辑,谓词逻辑是在命题逻辑基础上发展起来的,命题逻辑可以看作是谓词逻辑的一种特殊形式。,2023/4/3,9,(1)命题 定义1 命题是具有真假意义的语句。命题代表人们进行思维时的一种判断,或者是肯定,或者是否定,只有这两种情况。若命题的意义为真,则称它的真值为真。记作T;若命题的意义为假,则称它的真值为假,记作 F。一个命题不能同时既为真又为假,但可以在一定条件下为真,在另一条件下为假。例如:“北京是中华人民共和国的首都”,“35”都是真值为T的命题。,2023/4/3,10,“太阳从西边升起”,“煤球是白的”都是真值为 F 的命题。“1+1=10”在二进制情况下是真值为 T 的命题,在十进制下是真值为 F 的命题。在命题逻辑中,命题通常用大写的英文字母表示:例如,可以用 P 表示“西安是个古老的城市”。,2023/4/3,11,命题有两种类型:(1)原子命题:不能分解成更简单的陈述语句,称为原子命题。(2)复合命题:由联结词、标点符号和原子命题等复合构成的命题,称为复合命题。,命题类型,注意:所有这些命题都应具有确定的真值。,2023/4/3,12,命题常量:如果一个命题标识符表示确定的命题,就称为命题常量。命题变元:如果命题标识符只表示任意命题的位置标志,就称为命题变元。,了解几个概念,2023/4/3,13,注意:(1)因为命题变元可以表示任意命题,所以它不能确定真值,故命题变元不是命题。(2)当命题变元P用一个特定的命题取代时,P才能确定真值,这时也称为对P进行指派。(3)当命题变元表示原子命题时,该变元称为原子变元。,2023/4/3,14,命题这种表示法有较大的局限性,它无法把它所描述的客观事物的结构及逻辑特征反映出来,也不能把不同事物的共同特征描述出来。例如:对“老李是小李的父亲”这一命题,若用英文字母 P 表示,怎么也看不出老李与小李的父子关系。由于这些原因,在命题逻辑的基础上,发展起来了谓词逻辑。,2023/4/3,15,谓词逻辑:根据对象和对象上的谓词(即对象的属性和对象之间的关系),通过使用连接词和量词来表示世界。,谓词逻辑,主要思想:世界是由对象组成的,可以由标识符和属性来区分它们。在这些对象中,还包含着相互的关系。,2023/4/3,16,在命题逻辑中,每个表达式都是句子,表示事实。在谓词逻辑中,有句子,但是也有项,表示对象。常量符号、变量和函数符号用于表示项,量词和谓词符号用于构造句子。,注意:,2023/4/3,17,语法,命题逻辑的符号包括以下几种:(1)命题常元:True(T)和False(F);(2)命题符号:P、Q、R、T等;(3)联结词:;。(4)括号:()。,命题逻辑主要使用这5个联结词,通过这些联结词,可以由简单的命题构成复杂的复合命题。,连词优先级别是,、,、,但可通过括号改变优先级。,2023/4/3,18,语义,:否定(Negation),复合命题Q表示否定Q的真值的命题,即“非Q”:合取(Conjunction),复合命题PQ表示P和Q的合取,即“P与Q”:析取(Disjunction),复合命题PQ表示P或Q的析取,即“P或Q”,2023/4/3,19,语义,:条件(Condition),也叫蕴含,复合命题PQ表示命题P是命题Q的条件,即“如果P,那么Q”:双条件(Bicondition),也叫等价,复合命题PQ表示命题P、命题Q相互作为条件,即“如果P,那么Q;如果Q,那么P”,2023/4/3,20,T,T,T,T,F,T,T,F,F,T,F,F,F,T,F,T,T,F,T,T,F,T,T,F,F,T,F,F,PQ,PQ,PQ,PQ,P,Q,P,注意:可以用真值表的方法表明联结词的功能:,2023/4/3,21,2.2.2 谓词逻辑,一阶谓词演算标点符号、括号、逻辑联结词、常量符号集、变量符号集、n元函数符号集、n元谓词符号集、量词谓词演算合法表达式(原子公式、合式公式),表达式的演算化简方法,标准式(合取的前束范式或析取的前束范式),1 语 法,2023/4/3,22,语法元素 常量符号。变量符号。函数符号。谓词符号。联结词:、。(和命题相同)量词:全称量词、存在量词。和后面跟着的x叫做量词的指导变元。,2023/4/3,23,量词全称量词符号(x)P(x):表示对于某个论域中的所有(任意一个)个体x,都有P(x)真值为T。存在量词符号(x)P(x):来表示某个论域中至少存在一个个体x,使P(x)真值为T。,2023/4/3,24,若函数符号f中包含的个体数目为n,则称f为n元函数符号。若谓词符号P中包含的个体数目为n,则称P为n元谓词符号。如:father(x)是一元函数,less(x,y)是二元谓词.一般一元谓词表达了个体的性质,而多元谓词表达了个体之间的关系.,2 基本概念,函数符号与谓词符号,2023/4/3,25,如果谓词P中的所有个体都是个体常量、变元、或函数,则该谓词为一阶谓词。如果谓词P中某个个体本身又是一个一阶谓词,则称P为二阶谓词。余者类推。个体变元的取值范围称为个体域。个体域可以是无限的,也可以是无限的。把各种个体域综合在一起作为讨论的范围的域称为全总个体域。,谓词的阶,2023/4/3,26,在一阶谓词逻辑中,称Teacher(father(Wang)中的father(Wang)为项,项可定义如下:定义:项可递归定义如下:(1)单独一个个体是项(包括常量和变量)。(2)若f是n元函数符号,而t1,tn是项,则f(t1,tn)是项。(3)任何项仅由规则(1)(2)所生成。,3 项与公式,2023/4/3,27,原子公式 若P为n元谓词符号,t1,tn都是项,则称P(t1,tn)为原子公式,简称原子。在原子中,若t1,tn都不含变量,则P(t1,tn)是命题。,注意:谓词逻辑可以由原子和5种逻辑连接词,再加上量词来构造复杂的符号表达式。这就是所谓的谓词逻辑中的公式。,2023/4/3,28,原子公式举例,Inroom(Robot,R1),谓词符号,常量符号,Married(father(L1),x),谓词符号,函数符号,常量符号,常量符号,变量符号,用括号和逗号隔开,以表示论域内的关系,2023/4/3,29,Inroom(Robot,R1),谓词符号,常量符号,Married(father(L1),x),谓词符号,谓词符号、常量符号首字母大写的形式来表示,常量符号,常量符号,2023/4/3,30,Married(father(L1),x),函数符号、变量符号小写字母的形式来表示,变量符号,函数符号,2023/4/3,31,一阶谓词逻辑的合式公式(可简称公式)可递归定义如下:(1)原子谓词公式是合式公式(也称为原子公式)。(2)若P、Q是合式公式,则(P)、(PQ)、(PQ)、(PQ)、(P Q)也是合式公式。(3)若P是合式公式,x是任一个体变元,则(x)P、(x)P也是合式公式。(4)任何合式公式都由有限次应用(1)、(2)、(3)来产生。,2023/4/3,32,一阶谓词逻辑公式的解释:设D为谓词公式P的非空个体域,若对P中的个体常量、函数、谓词按如下规定赋值:(1)为每个个体常量指派D中的一个元素。(2)为每个n元函数指派一个从 到D的映射,其中(3)为每个n元谓词指派一个从 到T,F的映射。则称这些指派为公式P在D上的一个解释。,2023/4/3,33,(1)在谓词逻辑中,由于公式中可能含有个体常量、个体变元以及函数,因此不能像命题公式那样直接通过真值指派给出解释,必须首先考虑个体常量、和函数在个体域中的取值,然后才能针对常量和函数的具体取值为谓词分别指派真值。(2)在给出一阶逻辑公式的一个解释时,需要规定两件事情:公式中个体的定义域和公式中出现的常量、函数符号、谓词符号的定义。,4.注意:,2023/4/3,34,例题分析,设个体域D=1,2,求公式,在D上的解释,并指出在每一种解释下公式G的真值。,解:由于公式G没有包含个体常量和函数,因此可以直接为谓词指派真值,设,2023/4/3,35,这就是公式G在D上的一个解释。从这个解释可以看出:,当x=1,y=1时,P(x,y)的真值为T;当x=2,y=1时,P(x,y)的真值也为T;,即对x在D上任意取值,都存在y=1,使得P(x,y)的真值为T。因此,在该解释下,公式G的真值为T。,值得注意的是:一个谓词公式在其个体域上的解释不是唯一的。例如,对公式G,若给出另一组真值指派如下:,2023/4/3,36,这也是公式G在D上的一个解释。从这个解释可以看出:,当x=1,y=1时,P(x,y)的真值为T;当x=2,y=1时,P(x,y)的真值也为F;,同样,当x=1,y=2时,P(x,y)的真值为T;当x=2,y=2时,P(x,y)的真值也为F;,2023/4/3,37,即对x在D上任意取值,不存在一个y,使得P(x,y)的真值为T。因此,在该解释下,公式G的真值为F。,实际上,G在D上共有16种解释,这里就不一一列举了。,注意:一个公式的解释通常有任意多个,由于个体域D可以随意规定,而对一个给定的个体域D,对公式中出现的常量、函数符号和谓词符号的定义也是随意的,因此公式的真值都是针对某一个解释而言,它可能在某一个解释下为真,而在另一个解释为假。,2023/4/3,38,5.谓词逻辑适应范围,谓词逻辑适合于表示事物的状态、属性、概念等事实性知识,也可以用来表示事物间具有确定因果关系的规则性知识。,1)对事实性知识:可以使用谓词公式中的析取符号与合取符号连接起来的谓词公式来表示,如对下面句子:张三是一名计算机系的学生,他喜欢编程序。可以用谓词公式表示为 Computer(张三)Like(张三,programming)其中:Computer(x)表示x是计算机系的学生,Like(x,y)表示x喜欢y,都是谓词。,2023/4/3,39,2)对规则性知识:通常使用由蕴涵符号连接起来的谓词公式来表示,例如,对于 如果x,则y用谓词公式表示为 xy,2023/4/3,40,(1)定义谓词及个体,确定每个谓词及个体的确切含义;(2)根据所要表达的事物或概念,为每个谓词中的变元赋以特定的值;(3)根据所要表达的知识的语义,用适当的连接符将各个谓词连接起来形成谓词公式。,6.谓词逻辑表示步骤,从上述两个例子我们总结一下用谓词公式表示知识的一般步骤如下:,2023/4/3,41,例1:用谓词逻辑表示下列知识:武汉是一个美丽的城市,但她不是一个沿海城市。如果马亮是男孩,张红是女孩,则马亮比张红长得高。解:按照知识表示步骤,用谓词公式表示上述知识。第一步:定义谓词如下:BCity(x):x是一个美丽的城市 HCity(x):x是一个沿海城市 Boy(x):x是男孩 Girl(x):x是女孩 High(x,y):x比y长得高,7.谓词逻辑表示知识的举例,2023/4/3,42,这里涉及的个体有:武汉(wuhan),马亮(mal),张红(zhangh)第二步 将这些个体代入谓词中,得到BCity(wuhan),HCity(wuhan),Boy(mal),Girl(zhangh),High(mal,zhangh)第三步 根据语义,用逻辑连接符将它们连接起来,就得到了表示上述知识的谓词公司。BCity(wuhan)HCity(wuhan)(Boy(mal)Girl(zhangh)High(mal,zhangh),2023/4/3,43,解:首先定义谓词如下:Student(x):x是学生 Uniform(x,y):x穿y N(x):x是自然数 I(x):是整数 P(x):x是正数 Q(x):x是负数 L(x):x大于零 按照第二步和第三步的要求,上述知识可以用谓词公式分别表示为:(x)(Student(x)Uniform(x,color)(x)(I(x)P(x)Q(x)(x)(N(x)L(x)I(x),例2 用谓词逻辑表示下列知识:所有学生都穿彩色制服。任何整数或者为正数或者为负数。自然数都是大于零的整数。,2023/4/3,44,解 根据给出的知识表示步骤,解答如下:第一步 定义谓词如下:TABLE(x):x是桌子 EMPTYHANDED(x):x双手是空的 AT(x,y):x在y旁边 HOLDS(y,w):y拿着w ON(w,x):w在x上 EMPTYTABLE(x):桌子x上是空的,例3 机器人搬弄积木块问题的谓词逻辑表示。设在一个房间里,有一个机器人ROBOT,一个壁室ALCOVE,一个积木块BOX,两个桌子A和B。开始时,机器人ROBOT在壁室ALCOVE的旁边,且两手是空的,桌子A上放着积木块BOX,桌子B上是空的。机器人将把积木块BOX从桌子A上转移到桌子B上。,2023/4/3,45,第二步 本问题所涉及的个体定义为:机器人:ROBOT,积木块:BOX,壁室:ALCOVE,桌子:A,桌子:B第三步 根据问题的描述将问题的初始状态和目标状态分别用谓词公式表示出来。问题的初始状态是AT(ROBOT,ALCOVE)EMPTYHANDED(ROBOT)ON(BOX,A)TABLE(A)TABLE(B)EMPTYTABLE(B)问题的目标状态是AT(ROBOT,ALCOVE)EMPTYHANDED(ROBOT)ON(BOX,B)TABLE(A)TABLE(B)EMPTYTABLE(A),2023/4/3,46,在将问题初始状态和目标状态表示出来后,对此问题的求解,实际上是寻找一组机器人可进行的操作,实现一个由初始状态到目标状态的机器人操作过程。机器人可进行的操作一般分为先决条件和动作两部分先决条件可以很容易地用谓词公式表示,而动作则可以通过前后的状态变化表示出来,也就是只要指出动作执行后,应从动作前的状态表中删除和增加什么谓词公式,就可以描述相应的动作了。,机器人要将积木块从桌子A上移到桌子B上所要执行的动作有如下3个:GOTO(x,y):从x处走到y处 PICK_UP(x):在x处拿起积木块 SET_DOWN(x):在x处放下积木块,第四步 问题表示出来后,如何求解问题。,2023/4/3,47,这3个操作可以分别用条件和动作表示如下:GOTO(x,y)条件:AT(ROBOT,x)动作:删除 AT(ROBOT,x)增加 AT(ROBOT,y)PICK_UP(x)条件:ON(BOX,x)TABLE(x)AT(ROBOT,x)EMPTYHANDED(ROBOT)动作:删除 ON(BOX,x)EMPTYHANDED(ROBOT)增加 HOLDS(ROBOT,BOX)SET_DOWN(x)条件:TABLE(x)AT(ROBOT,x)HOLDS(ROBOT,BOX)动作:删除 HOLDS(ROBOT,BOX)增加 ON(BOX,x)EMPTYHANDED(ROBOT机器人在执行每一操作之前还需检查所需先决条件是否满足,只有条件满足以后,才执行相应的动作。如机器人拿起A桌上的BOX这一操作,先决条件是 ON(BOX,A)AT(ROBOT,A)EMPTYHANDED(ROBOT),2023/4/3,48,1一阶谓词逻辑表示法的优点(1)严密性:可以保证其演绎推理结果的正确性,可以较精确地表达知识。(2)自然性:它的表现方式和人类自然语言非常接近。(3)通用性:拥有通用的逻辑演算方法和推理规则。(4)知识易表达:如果对逻辑的某些外延扩展后,则可把大部分精确性知识表达成一阶谓词逻辑的形式。(5)易于实现:用它表示的知识易于模块化,便于知识的增删及修改,便于在计算机上实现。,8.一阶谓词逻辑表示法的特点,2023/4/3,49,2一阶谓词逻辑表示法的缺点(1)效率低:由于推理是根据形式逻辑进行的,把推理演算和知识含义截然分开,抛弃了表达内容所含的语义信息,往往是推理过程太冗长,降低系统效率。另一方面,谓词表示越细,表示越清楚,推理越慢、效率越低。(2)灵活性差:不便于表达和加入启发性知识和元知识。不便于表达不确定性的指示,但人类的知识大都具有不确定性和模糊性,这是使得它表示知识的范围受到了限制。(3)组合爆炸:在其推理过程中,随着事实数目的增大及盲目的使用推理规则,有可能产生组合爆炸。,2023/4/3,50,练习,1.任何人都会死的2.每个人都有一个父亲3.所有的教师都有自己的学生,2023/4/3,51,复习,T,T,T,T,F,T,T,F,F,T,F,F,F,T,F,T,T,F,T,T,F,T,T,F,F,T,F,F,PQ,PQ,PQ,PQ,P,Q,P,2023/4/3,52,(1)定义谓词及个体,确定每个谓词及个体的确切含义;(2)根据所要表达的事物或概念,为每个谓词中的变元赋以特定的值;(3)根据所要表达的知识的语义,用适当的连接符将各个谓词连接起来形成谓词公式。,复习:简述谓词逻辑表示步骤,2023/4/3,53,练习,任何人都会死的。定义谓词:D(x):x会死的,M(x):x是人 谓词表示:(x)(M(x)D(x),2023/4/3,54,练习,每个人都有一个父亲定义谓词:PERSON(x),表示x是人 HASFATHER(x,y),表示x有父亲y谓词表示:(x)(y)(PERSON(x)HASFATHER(x,y),2023/4/3,55,所有的教师都有自己的学生定义谓词:TEACHER(x),表示x是教师 STUDENT(y),表示y是学生 TEACHES(x,y),表示x是y的老师谓词表示:(x)(y)(TEACHER(x)TEACHES(x,y)STUDENT(y),练习,2023/4/3,56,产生式表示的起源:美国数学家波斯特(Post),1943年,产生式系统,计算模型,以称为产生式的规则描述符号串替代运算(Post机的计算模型)用于描述形式语言的语法,表示人类心理活动的认知过程等。现代产生式系统:与波斯特的模型已很不相同,基本概念相同,都使用产生式规则表示知识。便于模拟人求解问题的思维方式,系统模块性强,易于修改扩充,得到广泛应用;目前大多数专家系统(尤其是中小型系统)都采用产生式系统的结构方式来建立。DENDRAL,MYCIN在产生式系统中,把推理和行为的过程用产生式规则表示,所以又称基于规则的系统。,2.3.产生式表示法,2023/4/3,57,1.产生式规则通常用于表示事物间的因果关系;【基本形式】IF P then Q 或 P Q,其中P表示规则的条件(或称前提);谓词、多元组、常量、变量、关系运算Q表示规则激活时应该执行的动作(或得到的结论);激活规则条件P满足;【规则分类】前提-结论型条件-动作型,2023/4/3,58,一般地,一个规则由前项和后项两部分组成。前项表示前提条件,各个条件由逻辑连接词(合取、析取等)组成各种不同的组合。后项表示当前提条件为真时,应采取的行为或所得的结论。产生式系统中每条规则是一个“前提结论”或“条件结论”的产生式,起简单形式为:IF前提THEN结论 IF条件THEN动作,规则的表示,2023/4/3,59,为了严格地描述产生式,下面用巴科斯范式给出它的形式描述和语义:=|=|=And(And)|Or(Or)=(,),2023/4/3,60,1确定性和不确定性规则知识的产生式表示 确定性规则知识可用前面介绍的产生式的简单形式表示即可。不确定性规则知识对基本形式作一定的扩充,用如下形式表示 PQ(可信度)或者 IF P THEN Q(可信度)其中,P是产生式的前提或条件,用于指出该产生式是否是可用的条件;Q是一组结论或动作,用于指出该产生式的前提条件P被满足时,应该得出的结论或因该执行的操作。这一表示形式主要在不确定推理中当已知事实与前提中的条件不能精确定匹配时,只要按照“可信度”的要求达到一定的相似度,就认为已知事实与前提条件匹配,再按照一定的算法将这种可能性(或不确定性)传递到结论。,事实的表示,2023/4/3,61,2确定性和不确定性事实性知识的产生式表示 确定性事实性知识一般使用三元组(对象,属性,值)或(关系,对象1,对象2)来表示,其中对象就是语言变量,这种表示的机器内部实现就是一个表。如事实“老李年龄是35岁”,便可以表示成(Lee,Age,35)其中,Lee是事实性知识涉及的对象,Age是该对象的属性,而35岁是该对象属性的值。而老李、老张是朋友,可表示成(Friend,Lee,Zhang),2023/4/3,62,而有些事实性知识带有不确定性和模糊性,若考虑不确定性,这种知识就可以用四元组的形式表示如下(对象,属性,值,不确定度量值)或(关系,对象1,对象2,不确定度量值)如不确定性事实性知识“老李年龄可能是35岁”,这里老李是35岁的可能性取90%,便可以表示成(Lee,Age,35,0.9)而老李、老张是朋友的可能性不大,这里老李、老张是朋友的可能性取20%,可表示成(Friend,Lee,Zhang,0.1),2023/4/3,63,把一组产生式放在一起,让他们互相配合,协同作用,一个产生式生成的结论可以供另一个产生式作为已知事实使用,以求得问题的解决,这样的系统称为产生式系统。一般说来,一个产生式系统由以下三个基本部分组成:,产生式系统的组成,2023/4/3,64,3个部分组成:规则库;综合数据库;控制系统;,控制系统,规则库,综合数据库,产生式系统的问题描述,控制应用规则推出解答的全过程,2023/4/3,65,用于描述某领域内知识的产生式集合,是某领域知识(规则)的存储器,其中的规则是以产生式形式表示的。规则库中包含着将问题从初始状态转换成目标状态(或解状态)的那些变换规则。规则库是专家系统的核心,也是一般产生式系统赖以进行问题求解的基础,其中知识的完整性和一致性、知识表达的准确性和灵活性以及知识组织的合理性,都将对产生式系统的性能和运行效率产生直接的影响。,1.规则库:,2023/4/3,66,综合数据库又称为事实库,用于存放输入的事实、从外部数据库输入的事实以及中间结果(事实)和最后结果的工作区。当规则库中的某条产生式的前提可与综合数据库中的某些已知事实匹配时,该产生式就被激活,并把用它推出的结论放入综合数据库中,作为后面推理的已知事实。显然,综合数据库的内容是在不断变化的,是动态的。,2.综合数据库:,2023/4/3,67,推理机是一个或一组程序,用来控制和协调规则库与综合数据库的运行,包含了推理方式和控制策略。控制策略的作用就是确定选用什么规则或如何应用规则。通常从选择规则到执行操作分3步完成:匹配、冲突解决和操作。,3.推理机:,(1)匹配:匹配就是将当前综合数据库中的事实与规则中的条件进行比较,如果相匹配,则这一规则称为匹配规则。,2023/4/3,68,(2)冲突解决:冲突解决的策略有很多种,其中专一性排序、规则排序、规模排序和就近排序是比较常见的冲突解决策略。,(3)操作:操作就是执行规则的操作部分。经过操作以后,当前的综合数据库将被修改,其他的规则有可能将成为启用规则。,因为可能同时有几条规则的前提条件与事实相匹配,究竟选哪一条规则去执行呢?这就是规则冲突解决。通过冲突解决策略选中的在操作部分执行的规则称为启用规则。,2023/4/3,69,产生式系统推理机的推理方式有正向推理、反向推理和双向推理三种。,产生式系统的推理方式,2023/4/3,70,正向推理是从已知事实出发,通过规则库求得结论。正向推理方式也被称为数据驱动方式或自底向上的方式。它的推理过程是:(1)规则库中的规则与综合数据库中的事实进行匹配,得到匹配的规则集合;(2)使用冲突解决算法,从匹配规则集合中选择一条规则作为启用规则;(3)执行启用规则的操作部分,将该启用规则的操作结果送入综合数据库或对综合数据库进行必要的修改。重复这个过程直至达到目标。,正向推理,2023/4/3,71,反向推理是从目标(作为假设)出发,反向使用规则,求得已知事实。这种推理方式也被称为目标驱动方式或自顶向下的方式。其推理过程是:(1)规则库中的规则后件与目标事实进行匹配,得到匹配的规则集合;(2)使用冲突解决算法,从匹配规则集合中选择一条规则作为启用规则;(3)将启用规则的前件作为子目标。重复这个过程直至各子目标均为已知事实,则反向推理的过程就算成功结束。,反向推理,2023/4/3,72,双向推理是一种既自顶向下又自底向上的推理。推理从两个方向同时进行,直至某个中间界面上两方向结果相符便成功结束。不难想象,这种双向推理较正向或反向推理所形成的推理网络来得小,从而推理效率更高。,双向推理,2023/4/3,73,例题,动物识别系统的规则库。这是一个用以识别虎、金钱豹、斑马、长颈鹿、企鹅、驼鸟、信天翁等7种动物的产生式系统。为了实现对这些动物的识别,该系统建立了如下规则库:,R1:IF 该动物有毛 THEN 该动物是哺乳动物R2:IF 该动物有奶 THEN 该动物是哺乳动物R3:IF 该动物有羽毛 THEN 该动物是鸟R4:IF 该动物会飞 AND会下蛋 THEN 该动物是鸟R5:IF 该动物吃肉 THEN 该动物是食肉动物R6:IF 该动物有犬齿 AND有爪AND 眼盯前方 THEN 该动物食肉动物,2023/4/3,74,R7:IF 该动物是哺乳动物 AND有蹄 THEN 该动物是有蹄类动物R8:IF 该动物是哺乳动物 AND 是嚼反刍动物 THEN 该动物是动物有蹄类动物R9:IF 该动物是哺乳动物 AND 是食肉动物 AND 是黄褐色 AND 身上有暗斑点 THEN 该动物是金钱豹 R10:IF 该动物是哺乳动物 AND 是食肉动物 AND 是黄褐色 AND 身上有黑色条纹 THEN 该动物是虎R11:IF 该动物是有蹄类动物 AND 有长脖子 AND 有长腿 AND 身上有暗斑点 THEN 该动物是长颈鹿,2023/4/3,75,R12:IF 该动物是有蹄类动物 AND 身上有黑色条纹 THEN 该动物是斑马R13:IF 该动物是鸟 AND 有长脖子 AND 有长腿 AND 不会飞 AND 有黑白二色 THEN 该动物是驼鸟 R14:IF 该动物是鸟 AND 会游泳 AND 不会飞 AND 有黑白二色 THEN 该动物是企鹅R15:IF 该动物是鸟 AND 善飞 THEN 该动物是信天翁,2023/4/3,76,在上例中,R1-R15分别是对各产生式规则所做的编号,以便于对它们的引用.同时,我们还看出,虽然该系统是用来识别7种动物的,但它并没有简单地设计7条规则,而是设计了15条.识别动物基本想法是:首先根据一些比较简单的条件,如“有毛发”“有羽毛”“会飞”等对动物进行比较粗的分类,如“哺乳动物”“鸟类”等,然后随着条件的增多,逐步缩小分类范围,最后给出分别识别7种动物的规则.这样做有下列好处:(1)当已知的事实不完全时,虽不能推出最终结论,但可以得到分类结果;(2)当需要增加对其它动物(如牛马等)的识别时,规则中只需增加关于这些动物个性方面的知识,如R9-R15那样,而对R1-R10可直接利用,这样增加的规则就不会太多;(3)由上述规则,很容易形成各种动物的推理链,例如虎及长颈鹿的推理过程如图所示.,2023/4/3,77,图:虎及长颈鹿的推理过程,2023/4/3,78,产生式系统的优缺点,(1)清晰性:产生式表示格式固定、形式简单,规则(知识单位)间相互较为独立,没有直接关系,使知识库的建立较为容易,处理较为简单。(2)模块性:知识库与推理机是分离的,这种结构给知识库的修改带来方便,无须修改程序,对系统的推理路径也容易做出解释。(3)自然性:符合人类的思维习惯,是人们常用的一种表达因果关系的知识表示形式,既直观自然,又便于推理。另外,产生式表示法既可以表示确定性知识,又可以表示不确定性知识,更符合人们日常见到的问题。因此,产生式方法是当今最流行的专家系统设计模式。,优点:,2023/4/3,79,缺点或不足:,(1)难以扩展:尽管规则形式上相互独立,但实际问题中往往彼此是相关的。这样当知识库不断扩大时,要保证新的规则和已有的规则没有矛盾就会越来越困难,知识库的一致性越来越难以实现。(2)规则选择效率较低:在推理过程中,每一步都要和规则库中的规则做匹配检查。如果知识库中规则数目很大,显然效率会降低。(3)控制策略不灵活:产生式系统往往采用单一的控制策略,如顺序考察规则库中的每一条规则,这同样会降低系统的效率。(4)知识表示形式单一:产生式系统比较适合于表示非结构化的知识,对于结构化的知识可能用语义网络或框架或面向对象的表示方式更为合适。注意:以纯粹的产生式系统表示复杂的知识结构比较困难,因此发展了一系列知识的结构化表示方法,如框架和语义网络等,知识以这种形式表示的系统,称为基于知识的系统。,2023/4/3,80,作业:,产生式系统由哪几个部分组成?它们的作用是什么?可以从哪些角度对产生式系统进行分类?阐述各类产生式系统的特点.简述产生式系统的优缺点.,2023/4/3,81,结构化表示,需求:世界是复杂的,充满万物,事物间存在着千丝万缕的联系;一阶谓词逻辑离散地表示事物和事物间的关系,表示法效用低;结构化的手段高效和集中地描述特定的事物和事物间的关系。主要内容:语义网络事物间的关系框架表示法 事物内部的结构,2023/4/3,82,2.4 语义网络 Semantic Network,Quillian(奎廉),M.R.(1968).Semantic memory.In Minsky,M.,editor,Semantic Information Processing,pages 216-270.MIT Press.模拟人对事物的认识,表示事物之间的关系。主要应用于自然语言理解系统中。强大和直观的表示能力,广泛应用。命题语义网络、数据语义网络、语言语义网络等。,2023/4/3,83,1、语义网络的一般概念表示为描述事物间关系的有向图,节点表示事物(概念),节点表示事物(个体),关系弧,标签表示节点间的关系,学生注册的语义网络,2023/4/3,84,1、语义网络的一般概念表示为描述事物间关系的有向图标签表示节点间的关系,Ako超类-子类,Isa类-个体,任意关系Sex性别,任意关系Register注册课程,2023/4/3,85,当把多个语义基元用相应的语义联系关联在一起的时候,就形成了一个语义网络。如图2.4所示。,可用如图2.3所示的有向图来表示。其中A和B分别代表节点,而R则表示A和B之间的某种语义联系。,从结构上来看,语义网络一般由一些最基本的语义单元组成。这些最基本的语义单元被称为语义基元,可用如下三元组来表示为,(节点1,弧,节点2),2023/4/3,86,语义网络除了可以描述事物本身之外,还可以描述事物之间的错综复杂的关系。基本语义联系是构成复杂语义联系的基本单元,也是语义网络表示知识的基础,因此从一些基本的语义联系组合成任意复杂的语义联系是可以实现的。这里只给出一些经常使用的最基本语义关系。,语义网络的基本语义联系,2023/4/3,87,类属关系是指具体有共同属性的不同事物间的分类关系、成员关系或实例关系,它体现的是“具体与抽象”、“个体与集体”的层次分类。其直观意义是“是一个”,“是一种”,“是一只”。在类属关系中,其一个最主要特征是属性的继承性,处在具体层的结点可以继承抽象层结点的所有属性。常用的类属关系有:AKO(A-Kind-of):表示一个事物是另一个事物的一种类型。AMO(A-Member-of):表示一个事物是另一个事物的成员。ISA(Is-a):表示一个事物是另一个事物的实例。,1.类属关系,2023/4/3,88,2.包含关系包含关系也称为聚集关系,是指具有组织或结构特征的“部分与整体”之间的关系,它和类属关系的最主要的区别就是包含关系一般不具备属性的继承性。常用的包含关系的有:Part-of,Member-of,含义为一部分,表示一个事物是另一个事物的一部分,或说是部分与整体的关系。用它连接的上下层节点的属性很可能是很不相同的,即Part_of联系不具备属性的继承性。例如,“轮胎是汽车的一部分”其语义网络表示如图2.7所示。,2023/4/3,89,3.属性关系属性关系是指事物和其属性之间的关系。常用的属性关系有:Have:表示一个结点具有另一个结点所描述的属性。Can:表示一个结点能做另一个结点的事情。例如,“鸟有翅膀”,“电视机可以放电视节目”。其对应的语义网络表示如图2.8所示。,图2.8 属性关系实例,Can,2023/4/3,90,4.时间关系 时间关系是指不同事件在其发生时间方面的先后关系,节点间的不具备属性继承性。常用的时间关系有:Before:表示一个事件在一个事件之前发生。After:表示一个事件在一个事件之后发生。例如,“香港回归之后,澳门也会回归了”,“王芳在黎明之前毕业”。其对应的语义网络表示如图2.9所示,图2.9 时间关系实例,2023/4/3,91,5.位置关系位置关系是指不同事物在位置方面的关系。节点间的不具备属性继承性。常用的位置关系有:Located-on:表示一物体在另一物体之上。Located-at:表示一物体在某一位置。Located-under:表示一物体在另一物体之下。Located-inside:表示一物体在另一物体之中。Located-outside:表示一物体在另一物体之外。例如,