1、11.基本概念基本概念l什么是知识什么是知识l知识的分类知识的分类l知识的属性知识的属性l什么是知识表示什么是知识表示2基本概念基本概念l什么是知识什么是知识这里所谈的知识是知识处理的特殊对象,与日常生活的知识这里所谈的知识是知识处理的特殊对象,与日常生活的知识有较大的区别。有较大的区别。知识知识是以各种不同方式把多个信息关联在一起的信息结构。是以各种不同方式把多个信息关联在一起的信息结构。或者表达为或者表达为“知识是多个信息之间的关联知识是多个信息之间的关联”。如果把如果把“不与任何其他信息关联不与任何其他信息关联”即单独的一个信息也被认即单独的一个信息也被认为是一种特殊的关联方式(不关联)
2、,则单个的信息也可以为是一种特殊的关联方式(不关联),则单个的信息也可以看做是知识的特例,将此称之为看做是知识的特例,将此称之为“原子事实原子事实”。如:。如:“他是他是军人军人”,“穿军装穿军装”等。如果把这两种信息用等。如果把这两种信息用“如果如果则则”这种因果关系联系起来就成了一条知识(规则),即这种因果关系联系起来就成了一条知识(规则),即“如果如果他是军人,则穿军装他是军人,则穿军装”。3基本概念基本概念l知识的分类知识的分类事实:事实:是指人类对客观事物的值或状态的描述是指人类对客观事物的值或状态的描述。这种知识一。这种知识一般不包含任何变量,可以用一个值为真的命题陈述或一种状般不
3、包含任何变量,可以用一个值为真的命题陈述或一种状态的描述来表达。如今天天气很热,他今年态的描述来表达。如今天天气很热,他今年50岁等,都表示岁等,都表示一个事实。它描述了客观事物在某种条件下各种属性或状态一个事实。它描述了客观事物在某种条件下各种属性或状态的真实值。的真实值。规则:规则:指可以分为前提(条件)和结论两部分,用来表达因指可以分为前提(条件)和结论两部分,用来表达因果关系的知识果关系的知识。它的一般形式为:如果。它的一般形式为:如果A则则B。A表示前提,表示前提,B表示结论或应采取的动作。表示结论或应采取的动作。规律:上述的规则知识一般还可以分为不带变量和带变量的规律:上述的规则知
4、识一般还可以分为不带变量和带变量的规则两种。规则两种。把带变量的规则称为规律把带变量的规则称为规律。规律中的变量一旦被。规律中的变量一旦被实例化为一个具体的值,则规律就变成了一条具体的不带变实例化为一个具体的值,则规律就变成了一条具体的不带变量的规则。因此由规律可以引出许多具体的规则。量的规则。因此由规律可以引出许多具体的规则。4基本概念基本概念l知识的属性知识的属性真实性真实性相对性相对性不完全性不完全性模糊性模糊性可表示性可表示性l表示方式:各种符号的逻辑组合,用图形表示,物理表示方式表示方式:各种符号的逻辑组合,用图形表示,物理表示方式l引申另外三种属性:引申另外三种属性:可存储性、可传
5、递性可存储性、可传递性和和可处理性可处理性。5基本概念基本概念l什么是知识表示什么是知识表示所谓所谓知识表示知识表示实际上就是对知识的一种描述,即实际上就是对知识的一种描述,即用用一些约定的符号把知识编码成一组计算机可以接受一些约定的符号把知识编码成一组计算机可以接受的数据结构的数据结构。62.知识表示方法知识表示方法l产生式规则产生式规则l语义网络语义网络7知识表示方法知识表示方法l知识表示方法有:知识表示方法有:一阶谓词逻辑、产生式规则、语义网络、框架理一阶谓词逻辑、产生式规则、语义网络、框架理论、面向对象论、面向对象等多种表示方法等多种表示方法。82.1 产生式规则产生式规则 l产生式规
6、则的出现产生式规则的出现 产生式产生式(Production)一词,首先是由美国数学一词,首先是由美国数学家波斯特(家波斯特(E.Post)提出来的。波斯特根据替)提出来的。波斯特根据替换规则提出了一种称为波斯特机的计算模型,换规则提出了一种称为波斯特机的计算模型,模型中的每一条规则当时被称为一个产生式模型中的每一条规则当时被称为一个产生式。后来,这一术语几经修改扩充,被用到许多领后来,这一术语几经修改扩充,被用到许多领域。例如,形式语言中的文法规则就称为产生域。例如,形式语言中的文法规则就称为产生式。式。产生式也称为产生式规则,或简称规则产生式也称为产生式规则,或简称规则。9l产生式的一般形
7、式产生式的一般形式前件前件后件(后件(P Q)其中,前件就是前提,后件是结论或动作,前其中,前件就是前提,后件是结论或动作,前件和后件可以是由逻辑运算符件和后件可以是由逻辑运算符AND、OR、NOT组成的表达式。组成的表达式。产生式规则的语义是:如果前提满足,则可得产生式规则的语义是:如果前提满足,则可得结论或者执行相应的动作,即后件由前件来触结论或者执行相应的动作,即后件由前件来触发。所以,前件是规则的执行条件,后件是规发。所以,前件是规则的执行条件,后件是规则体。则体。产生式规则产生式规则10例如,下面就是几个产生式规则:例如,下面就是几个产生式规则:l(1)如果银行存款利率下调,那么股票
8、价格上涨。如果银行存款利率下调,那么股票价格上涨。l(2)如果炉温超过上限,则立即关闭风门。如果炉温超过上限,则立即关闭风门。l(3)如果键盘突然失灵,且屏幕上出现怪字符,则是如果键盘突然失灵,且屏幕上出现怪字符,则是病毒发作。病毒发作。l(4)如果胶卷感光度为如果胶卷感光度为200,光线条件为晴天,目标距,光线条件为晴天,目标距离不超过离不超过5米,则快门速度取米,则快门速度取250,光圈大小取,光圈大小取f16。一条产生式规则就是一条知识。用产生式可以实一条产生式规则就是一条知识。用产生式可以实现推理和操作,产生式规则是知识表示形式。现推理和操作,产生式规则是知识表示形式。产生式规则产生式
9、规则11产生式规则产生式规则l产生式规则的与或树表示产生式规则的与或树表示一组产生式规则可形象地用一棵一组产生式规则可形象地用一棵“与或树与或树”表示如表示如图:图:这里用带弧线的表示这里用带弧线的表示“与与”关系,不带弧线的表示关系,不带弧线的表示“或或”关系。关系。12产生式规则产生式规则产生式规则组:B1,B2A;B3,B4,B5 A;C1,C2 B1;C3 B2;C4,C5,C6 B3;C7 B4;C8 B4;C9,C10 B5D1,D2 C5;D3 C5;D4,D5,D6 C8;AB5B4B3B2B1C1C2C3C4C5C6C7C8C9C10D1D2D3D4D5D613产生式规则产生
10、式规则产生式规则的左右端都可以为空产生式规则的左右端都可以为空l后件:表示后件是一个无条件成立的结论(即一个后件:表示后件是一个无条件成立的结论(即一个事实)或是一个无条件执行的动作。事实)或是一个无条件执行的动作。l前件前件:表示一个问题,什么情况下会使前件成立:表示一个问题,什么情况下会使前件成立(为真)。(为真)。14l产生式系统的组成产生式系统的组成产生式系统由三部分组成:产生式系统由三部分组成:产生式规则库、推理机产生式规则库、推理机和和动态数据库动态数据库,其结构如图所示。,其结构如图所示。产生式规则产生式规则15 产生式系统结构产生式系统结构 产生式规则库产生式规则库推理机推理机
11、动态数据库动态数据库产生式规则库亦称产生式规产生式规则库亦称产生式规则集,由领域规则组成,在则集,由领域规则组成,在机器中以某种动态数据结构机器中以某种动态数据结构进行组织。进行组织。推理机亦称控制执行机构,它是一个推理机亦称控制执行机构,它是一个程序模块,负责产生式规则的前提条程序模块,负责产生式规则的前提条件测试或匹配,规则的调度与选取,件测试或匹配,规则的调度与选取,规则体的解释和执行。即推理机实施规则体的解释和执行。即推理机实施推理,并对推理进行控制,它也就是推理,并对推理进行控制,它也就是规则的解释程序。规则的解释程序。动态数据库动态数据库是动态数据是动态数据结构,用来结构,用来存放
12、初始事存放初始事实数据、中实数据、中间结果和最间结果和最后结果等。后结果等。16l产生式系统的运行过程产生式系统的运行过程产生式系统运行时,除了需要产生式系统运行时,除了需要规则库规则库以外,还以外,还需要有需要有初始事实初始事实(或数据或数据)和和目标条件目标条件。目标条件目标条件是系统正常结束的条件,也是系统的是系统正常结束的条件,也是系统的求解目标。产生式系统启动后,推理机就开始求解目标。产生式系统启动后,推理机就开始推理,按所给的目标进行问题求解。推理,按所给的目标进行问题求解。推理机的一次推理过程,可如图所示。推理机的一次推理过程,可如图所示。产生式规则产生式规则17推理机的一次推理
13、过程推理机的一次推理过程 从规则库中取一个条规则,将其前提同当前从规则库中取一个条规则,将其前提同当前动态数据库中的事实动态数据库中的事实/数据进行模式匹配数据进行模式匹配匹配成功否匹配成功否把该规则的结论放入当前动态数据库:或执把该规则的结论放入当前动态数据库:或执行规则所规定的动作行规则所规定的动作NY产生式规则产生式规则18l产生式系统的运行过程产生式系统的运行过程一个实际的产生式系统,其目标条件一般不会一个实际的产生式系统,其目标条件一般不会只经一步推理就可满足,往往要经过多步推理只经一步推理就可满足,往往要经过多步推理才能满足或者证明问题无解。才能满足或者证明问题无解。产生式系统的运
14、行过程就是从初始事实出发,产生式系统的运行过程就是从初始事实出发,寻求到达目标条件的通路的过程。所以,产生寻求到达目标条件的通路的过程。所以,产生式系统的运行过程也是一个搜索的过程,但一式系统的运行过程也是一个搜索的过程,但一般把产生式系统的整个运行过程也称为推理。般把产生式系统的整个运行过程也称为推理。产生式规则产生式规则19l控制策略与常用算法控制策略与常用算法产生式系统的推理可分为产生式系统的推理可分为正向推理正向推理和和反向推理反向推理两种基本方式。两种基本方式。正向推理正向推理就是从初始事实数据出发,正向使用就是从初始事实数据出发,正向使用规则进行推理(即用规则前提与动态数据库中规则
15、进行推理(即用规则前提与动态数据库中的事实匹配,或用动态数据库中的数据测试规的事实匹配,或用动态数据库中的数据测试规则的前提条件,然后产生结论或动作),朝目则的前提条件,然后产生结论或动作),朝目标方向前进。标方向前进。下面我们给出产生式系统正向推理和反向推理下面我们给出产生式系统正向推理和反向推理的常用算法。的常用算法。产生式规则产生式规则20正向推理算法:正向推理算法:l步步1:将初始事实:将初始事实/数据置入动态数据库;数据置入动态数据库;l步步2:用动态数据库中的事实:用动态数据库中的事实/数据,匹配数据,匹配/测试目标条件,若目测试目标条件,若目标条件满足,则推理成功,结束。标条件满
16、足,则推理成功,结束。l步步3:用规则库中各规则的前提匹配动态数据库中的事实:用规则库中各规则的前提匹配动态数据库中的事实/数据,数据,将匹配成功的规则组成待用规则集;将匹配成功的规则组成待用规则集;l步步4:若待用规则集为空,则运行失败,退出。:若待用规则集为空,则运行失败,退出。l步步5:用某种策略,从待用规则集中选取一条规则,将其结论加:用某种策略,从待用规则集中选取一条规则,将其结论加入动态数据库,或者执行其动作,撤消待用规则集,转步入动态数据库,或者执行其动作,撤消待用规则集,转步2。规则的选择策略成为规则的选择策略成为冲突消解策略冲突消解策略。产生式系统的推理。产生式系统的推理方式
17、、搜索策略及冲突消解策略等,一般统称为方式、搜索策略及冲突消解策略等,一般统称为推理控推理控制策略制策略,简称,简称控制策略控制策略。控制策略体现在推理机的算法。控制策略体现在推理机的算法描述中。描述中。产生式规则产生式规则21正向推理的动态数据库正向推理的动态数据库 动态数据库动态数据库推理推理l控制策略与常用算法控制策略与常用算法可以看出,随着推理的进行,动态数据库的内容或可以看出,随着推理的进行,动态数据库的内容或者状态在不断变化。如果把动态数据库的每一个状者状态在不断变化。如果把动态数据库的每一个状态作为一个节点的话,则上述推理过程就是一个从态作为一个节点的话,则上述推理过程就是一个从
18、初始状态(初始事实或数据)到目标状态(目标条初始状态(初始事实或数据)到目标状态(目标条件)的状态图搜索过程。件)的状态图搜索过程。产生式规则产生式规则22l控制策略与常用算法控制策略与常用算法例:动物分类问题的产生式系统描述及其求解。例:动物分类问题的产生式系统描述及其求解。设由下列动物识别规则组成一个规则库,推理设由下列动物识别规则组成一个规则库,推理机采用上述正向推理算法,建立一个产生式系机采用上述正向推理算法,建立一个产生式系统。该产生式系统就是一个小型动物分类知识统。该产生式系统就是一个小型动物分类知识库系统。规则如下:库系统。规则如下:产生式规则产生式规则23r1:若某动物有奶,则
19、它是哺乳动物。:若某动物有奶,则它是哺乳动物。r2:若某动物有毛发,则它是哺乳动物。:若某动物有毛发,则它是哺乳动物。r3:若某动物有羽毛,则它是鸟。:若某动物有羽毛,则它是鸟。r4:若某动物会飞且生蛋,则它是鸟。:若某动物会飞且生蛋,则它是鸟。r5:若某动物是哺乳动物且有爪且有犬齿且目盯前方,则它:若某动物是哺乳动物且有爪且有犬齿且目盯前方,则它是食肉动物。是食肉动物。r6:若某动物是哺乳动物且吃肉,则它是食肉动物。:若某动物是哺乳动物且吃肉,则它是食肉动物。r7:若某动物是哺乳动物且有蹄,则它是有蹄动物。:若某动物是哺乳动物且有蹄,则它是有蹄动物。r8:若某动物是有蹄动物且反刍食物,则它是
20、偶蹄动物。:若某动物是有蹄动物且反刍食物,则它是偶蹄动物。产生式规则产生式规则24r9:若某动物是食肉动物且黄褐色且有黑色条纹,则它是老虎。:若某动物是食肉动物且黄褐色且有黑色条纹,则它是老虎。r10:若某动物是食肉动物且黄褐色且有黑色斑点,则它是金:若某动物是食肉动物且黄褐色且有黑色斑点,则它是金钱豹。钱豹。r11:若某动物是有蹄动物且长腿且长脖子且黄褐色且有暗斑:若某动物是有蹄动物且长腿且长脖子且黄褐色且有暗斑点,则它点,则它 是长颈鹿。是长颈鹿。r12:若某动物是有蹄动物且白色且有黑色条纹,则它是斑马。:若某动物是有蹄动物且白色且有黑色条纹,则它是斑马。r13:若某动物是鸟且不会飞且长腿
21、且长脖子且黑白色,则它:若某动物是鸟且不会飞且长腿且长脖子且黑白色,则它是驼鸟。是驼鸟。r14:若某动物是鸟且不会飞且会游泳且黑白色,则它是企鹅。:若某动物是鸟且不会飞且会游泳且黑白色,则它是企鹅。r15:若某动物是鸟且善飞且不怕风浪,则它是海燕:若某动物是鸟且善飞且不怕风浪,则它是海燕。产生式规则产生式规则25再给出初始事实:再给出初始事实:f1:某动物有毛发。:某动物有毛发。f2:吃肉。:吃肉。f3:黄褐色。:黄褐色。f4:有黑色条纹。:有黑色条纹。目标条件为:该动物是什么?目标条件为:该动物是什么?易见,该系统的运行结果为:该动物是老虎。易见,该系统的运行结果为:该动物是老虎。其推理树如
22、图所示。其推理树如图所示。产生式规则产生式规则26动物分类正向推理树动物分类正向推理树 老虎老虎食肉动物食肉动物哺乳动物哺乳动物有毛发有毛发吃肉吃肉黄褐色黄褐色有黑色条纹有黑色条纹27l控制策略与常用算法控制策略与常用算法反向推理算法反向推理算法 反向推理反向推理就是从目标出发,反向使用规则进行就是从目标出发,反向使用规则进行推理(即用规则结论与目标匹配,又产生新的推理(即用规则结论与目标匹配,又产生新的目标,然后对新目标再作同样的处理),朝初目标,然后对新目标再作同样的处理),朝初始事实或数据方向前进。始事实或数据方向前进。产生式规则产生式规则28产生式规则产生式规则l控制策略与常用算法控制
23、策略与常用算法反向推理算法:反向推理算法:l步步1:将要求证的目标(称为假设)构成一个假设集。:将要求证的目标(称为假设)构成一个假设集。l步步2:从假设集中选出一个假设,检查该假设是否在动态数:从假设集中选出一个假设,检查该假设是否在动态数据库中,如在,则该假设成立,此时,若假设集为空,则成据库中,如在,则该假设成立,此时,若假设集为空,则成功退出,否则仍执行步;若该假设不在数据库中,则执行功退出,否则仍执行步;若该假设不在数据库中,则执行下一步。下一步。l步步3:检查该假设是否可由规则库的某个知识导出。若不能:检查该假设是否可由规则库的某个知识导出。若不能由某个知识导出,由某个知识导出,则
24、询问用户该假设是否为可由用户证实的则询问用户该假设是否为可由用户证实的原始事实原始事实,若是,该假设成立,并将其放入动态数据库,再,若是,该假设成立,并将其放入动态数据库,再重新寻找新的假设,若不是,则转入步重新寻找新的假设,若不是,则转入步5;若能由某个知识;若能由某个知识导出,则执行下一步。导出,则执行下一步。29产生式规则产生式规则l控制策略与常用算法控制策略与常用算法反向推理算法:反向推理算法:l步步4:将规则库中可以导出该假设的所有知识构成一个可用知识集。:将规则库中可以导出该假设的所有知识构成一个可用知识集。l步步5:检查可用知识集是否为空,若空,失败退出;否则执行下一:检查可用知
25、识集是否为空,若空,失败退出;否则执行下一步。步。l步步6:按冲突消解策略从可用知识集中取出一个知识,继续执行下:按冲突消解策略从可用知识集中取出一个知识,继续执行下一步。一步。在推理的某一步,如果知识库中有多条知识可用,则称发生了在推理的某一步,如果知识库中有多条知识可用,则称发生了冲突冲突。l步步7:将该知识的前提中的每个子条件都作为新的假设放入假设集,:将该知识的前提中的每个子条件都作为新的假设放入假设集,转入步转入步2.可以看出,上述反向推理算法的推理过程也是一个图搜索过程,可以看出,上述反向推理算法的推理过程也是一个图搜索过程,而且一般是一个与或树搜索如下图所示的反向推理树。而且一般
26、是一个与或树搜索如下图所示的反向推理树。30动物分类反向推理树动物分类反向推理树 老虎老虎食肉动物食肉动物黄褐色黄褐色有黑色条纹有黑色条纹有爪有爪有犬齿有犬齿哺乳动物哺乳动物目盯前方目盯前方有奶有奶有毛发有毛发吃肉吃肉31可以看出,与正向推理不同,这次的推理树是可以看出,与正向推理不同,这次的推理树是从上而下扩展而成的,而且推理过程中还发生从上而下扩展而成的,而且推理过程中还发生过回溯。过回溯。反向推理也称为后向推理、反向链、目标驱动反向推理也称为后向推理、反向链、目标驱动的推理等。从上面的两个算法可以看出,的推理等。从上面的两个算法可以看出,正向正向推理是自底向上的综合过程,而反向推理则是推
27、理是自底向上的综合过程,而反向推理则是自顶向下的分析过程自顶向下的分析过程。除了正向推理和反向推理外,产生式系统还可除了正向推理和反向推理外,产生式系统还可进行双向推理。双向推理就是同时从初始数据进行双向推理。双向推理就是同时从初始数据和目标条件出发进行推理,如果在中间某处相和目标条件出发进行推理,如果在中间某处相遇,则推理搜索成功。遇,则推理搜索成功。产生式规则产生式规则32l产生式系统的应用产生式系统的应用 由上述产生式系统与图搜索的关系可见,产生式系统完全可以由上述产生式系统与图搜索的关系可见,产生式系统完全可以作为问题求解的表示模型和求解模型,而且可作为人工智能问作为问题求解的表示模型
28、和求解模型,而且可作为人工智能问题求解系统的通用模型。题求解系统的通用模型。用产生式系统也可实现基于谓词逻辑的演绎推理和证明。事实用产生式系统也可实现基于谓词逻辑的演绎推理和证明。事实上,当一个产生式系统中的规则是逻辑蕴含式时,其运行过程上,当一个产生式系统中的规则是逻辑蕴含式时,其运行过程就是演绎推理(假言推理或三段论)的过程。就是演绎推理(假言推理或三段论)的过程。这时目标值已知时就是证明,当目标值未知时就是推理求值。这时目标值已知时就是证明,当目标值未知时就是推理求值。由于产生式系统既可用于操作性问题求解,也可用于推理性问由于产生式系统既可用于操作性问题求解,也可用于推理性问题求解。因此
29、,产生式系统也是专家系统的基本结构形式。用题求解。因此,产生式系统也是专家系统的基本结构形式。用它既可实现规划型专家系统,也可实现结论型专家系统。它既可实现规划型专家系统,也可实现结论型专家系统。产生式规则产生式规则33l产生式规则的程序语言实现产生式规则的程序语言实现上面我们对产生式的讨论,只是用自然语言进行描上面我们对产生式的讨论,只是用自然语言进行描述并仅在概念层次上进行阐述,而并未涉及它的具述并仅在概念层次上进行阐述,而并未涉及它的具体结构和程序语言实现问题。现在讨论产生式规则体结构和程序语言实现问题。现在讨论产生式规则的程序语言实现问题。首先,讨论产生式规则的结的程序语言实现问题。首
30、先,讨论产生式规则的结构问题。一般来讲,构问题。一般来讲,产生式规则的前提和结论部分产生式规则的前提和结论部分可以是一个复杂的逻辑表达式可以是一个复杂的逻辑表达式,但为了使表达简单,但为了使表达简单规范,且便于推理,在实践中人们往往把规范,且便于推理,在实践中人们往往把规则的前规则的前提部分提部分作成形如:作成形如:产生式规则产生式规则34l产生式规则的程序语言实现产生式规则的程序语言实现条件条件1AND条件条件2ANDAND条件条件n 或或 条件条件1OR条件条件2OROR条件条件m的形式(其中的条件可以带否定词);把规则结论部分作成的形式(其中的条件可以带否定词);把规则结论部分作成形如:
31、形如:断言断言1/动作动作1AND断言断言2/动作动作2ANDAND断言断言k/动作动作k 或或 断言断言1/动作动作1OR断言断言2/动作动作2OROR断言断言k/动作动作k的形式,或者进一步简化成的形式,或者进一步简化成 断言断言/动作动作即仅有一项的形式。即仅有一项的形式。2.2 产生式规则产生式规则35l产生式规则的程序语言实现产生式规则的程序语言实现由于含由于含OR关系的规则也可以分解为几个不含关系的规则也可以分解为几个不含OR关系的关系的规则,所以,产生式规则也可仅取下面的一种形式:规则,所以,产生式规则也可仅取下面的一种形式:条件条件1AND条件条件2ANDAND条件条件n断言断
32、言/动作动作即前件是若干与关系的条件,后件仅有一个断言或动作。即前件是若干与关系的条件,后件仅有一个断言或动作。产生式规则产生式规则36l产生式规则的程序语言实现产生式规则的程序语言实现如上例给出的产生式规则用如上例给出的产生式规则用PROLOG的规则可表示如下:的规则可表示如下:animal-is(老虎老虎):-it-is(食肉动物食肉动物),fact(黄褐色黄褐色),fact(有黑色条纹有黑色条纹).it-is(食肉动物食肉动物):-it-is1(哺乳动物哺乳动物),fact(有爪有爪),fact(有犬齿有犬齿),fact(目盯前方目盯前方).产生式规则产生式规则37l产生式规则的程序语言
33、实现产生式规则的程序语言实现 it-is(食肉动物食肉动物):-it-is1(哺乳动物哺乳动物),fact(吃肉吃肉).It-is1(哺乳动物哺乳动物):-fact(有奶有奶).It-is1(“哺乳动物哺乳动物”):-fact(“有毛发有毛发”).对于这种规则表示形式,可以不用再编写推理机程序,而可直接利用对于这种规则表示形式,可以不用再编写推理机程序,而可直接利用PROLOG自身的推理机,进行推理。例如,当再给出如下的事实:自身的推理机,进行推理。例如,当再给出如下的事实:fact(黄褐色黄褐色).fact(有黑色条纹有黑色条纹).fact(吃肉吃肉).fact(有奶有奶).产生式规则产生式
34、规则38l产生式规则的程序语言实现产生式规则的程序语言实现和目标:和目标:animal-is(Y).则程序运行后的结果就是则程序运行后的结果就是:Y老虎老虎 但如果把上面的规则表示成如下的形式但如果把上面的规则表示成如下的形式:rule(食肉动物食肉动物,黄褐色黄褐色,有黑色条纹有黑色条纹,老虎老虎).rule(哺乳动物哺乳动物,有爪有爪,有犬齿有犬齿,目盯前方目盯前方,食肉动物食肉动物).rule(哺乳动物哺乳动物,吃肉吃肉,食肉动物食肉动物).rule(有奶有奶,哺乳动物哺乳动物).rule(有毛发有毛发,哺乳动物哺乳动物).则就需要用则就需要用PROLOG语言编写一个推理机程序。否则,无
35、法实施基于上语言编写一个推理机程序。否则,无法实施基于上述规则的推理。述规则的推理。产生式规则产生式规则39产生式规则产生式规则练习练习1:有如下规则:有如下规则:R1:3555岁的人称为中年人;岁的人称为中年人;R2:中年人是老练的;:中年人是老练的;R3:中年人是细心的:中年人是细心的R4:老练而细心并有驾驶技术的人是不会出交通事故的:老练而细心并有驾驶技术的人是不会出交通事故的事实:事实:F1:吴先生:吴先生43岁;岁;F2:吴先生有驾驶技术;:吴先生有驾驶技术;目标条件为:吴先生会出交通事故吗?目标条件为:吴先生会出交通事故吗?利用正向推理求证上述假设。利用正向推理求证上述假设。40产
36、生式规则产生式规则吴先生吴先生43岁岁中年人中年人老练老练细心细心吴先生有驾驶技术吴先生有驾驶技术不会出交通事故不会出交通事故41产生式规则产生式规则练习练习2:规则:规则:R1:如果你丢了自行车钥匙,并且车胎没气,那么自行车不能骑:如果你丢了自行车钥匙,并且车胎没气,那么自行车不能骑R2:如果自行车不能骑,并且你只有步行去学校,那么你上课会迟:如果自行车不能骑,并且你只有步行去学校,那么你上课会迟到到事实:事实:F1:你丢了自行车钥匙:你丢了自行车钥匙F2:车胎没气:车胎没气目标条件:你上课会迟到吗?目标条件:你上课会迟到吗?利用反向推理求证利用反向推理求证“你上课会迟到你上课会迟到”这一假
37、设。这一假设。42产生式规则产生式规则习题习题3R1:如果总成绩:如果总成绩350,则可以非定向则可以非定向R2:如果是非定向,且单科成绩:如果是非定向,且单科成绩55,则可以录取。则可以录取。R3:如果总成绩:如果总成绩320,则可以委培。则可以委培。R4:如果是委培,且单科成绩:如果是委培,且单科成绩50,则可以录取。则可以录取。如果是免试生,则可以直接录取。如果是免试生,则可以直接录取。事实:事实:F1:总成绩:总成绩400分分F2:单科成绩最低:单科成绩最低52分。分。目标条件:该生可以录取吗。目标条件:该生可以录取吗。利用正反推理求证上述假设。利用正反推理求证上述假设。432.2 语
38、义网络语义网络 l语义网络的概念语义网络的概念语义网络是一种采用网络的形式表示人类知识的方语义网络是一种采用网络的形式表示人类知识的方法。它是法。它是由节点和边(也称有向弧)组成的一种有由节点和边(也称有向弧)组成的一种有向图向图。其中。其中节点节点表示事物、对象、概念、行为、性表示事物、对象、概念、行为、性质、状态等;质、状态等;有向弧有向弧表示节点之间的某种联系或关表示节点之间的某种联系或关系。如下图就是一个语义网络。其中,弧上的标记系。如下图就是一个语义网络。其中,弧上的标记就是弧的语义。就是弧的语义。44苹果的语义网络苹果的语义网络 45语义网络语义网络l鸟的语义网络示意图鸟鸟动物动物
39、生物生物企鹅企鹅乌鸦乌鸦是是是是不能飞不能飞能游泳能游泳喜寒冷喜寒冷是是是是有生命有生命有翼有翼能飞能飞吃腐肉吃腐肉黑色黑色更可爱更可爱是是46l语义网络的概念语义网络的概念语义网络的概念最先是由语义网络的概念最先是由Quillian提出来的,他提出来的,他于于1968年在他的博士论文中,把语义网络作为年在他的博士论文中,把语义网络作为人类联想记忆的一个显式心理模型。所以,语人类联想记忆的一个显式心理模型。所以,语义网络也称义网络也称联想网络联想网络。现在,语义网络的理论已经有了长足的发展。现在,语义网络的理论已经有了长足的发展。有人把它划分为五个级别:有人把它划分为五个级别:执行级、逻辑级、
40、执行级、逻辑级、认识论级、概念级认识论级、概念级和和语言学级语言学级。并分为七种类。并分为七种类型:型:语义网络语义网络47l(1)命题语义网(包括分块联想网络);命题语义网(包括分块联想网络);l(2)数据语义网:以数据为中心的语义网络;数据语义网:以数据为中心的语义网络;l(3)语言语义网:用于自然语言的分析和理解;语言语义网:用于自然语言的分析和理解;l(4)结构语义网:描述客观事物的结构,常见于模式识结构语义网:描述客观事物的结构,常见于模式识别和机器学习等领域;别和机器学习等领域;l(5)分类语义网:描述抽象概念及其层次;分类语义网:描述抽象概念及其层次;l(6)推理语义网:是一种命
41、题网,但它已在某种程度上推理语义网:是一种命题网,但它已在某种程度上规范化,更适于推理;规范化,更适于推理;l(7)框架语义网:与框架相结合的语义网。框架语义网:与框架相结合的语义网。语义网络已成为一种重要的知识表示形式,广泛语义网络已成为一种重要的知识表示形式,广泛地应用于人工智能、专家系统,特别是自然语言地应用于人工智能、专家系统,特别是自然语言理解领域中。理解领域中。48如下图所示的语义网络,就表示了如下图所示的语义网络,就表示了专家系统专家系统这这个事物(的内涵),同时也可以看作是表示了个事物(的内涵),同时也可以看作是表示了专家系统与专家系统与“智能系统智能系统”、“专家知识专家知识
42、”、“专家思维专家思维”及及“困难问题困难问题”这几个事物之间这几个事物之间的关系或联系。的关系或联系。语义网络语义网络49专家系统的语义网络专家系统的语义网络 智能系统智能系统专家思维专家思维专家知识专家知识困难问题困难问题专家系统专家系统是一种是一种能解决能解决具有具有能模拟能模拟50语义网络语义网络l几种关系型的语义网络几种关系型的语义网络抽象地说,抽象地说,语义网络可表示事物之间的关系语义网络可表示事物之间的关系。因此,。因此,关系(或联系)型的知识和能化为关系型的知识都关系(或联系)型的知识和能化为关系型的知识都可以用语义网络来表示。下面我们就给出常见的几可以用语义网络来表示。下面我
43、们就给出常见的几种:种:51l1.实例关系实例关系实例关系实例关系表示类与其实例(个体)之间的关系表示类与其实例(个体)之间的关系。这。这是最常见的一种语义关系。例如,是最常见的一种语义关系。例如,“小华是一个大小华是一个大学生学生”就可表示为图所示。其中,关系就可表示为图所示。其中,关系“是一个是一个”一般标识为一般标识为“is-a”,或,或ISA。A ISA B:表示:表示A是是B的一个特例。的一个特例。B是比是比A更抽象更抽象的一个概念,所以从的一个概念,所以从A到到B是一个抽象化的过程。是一个抽象化的过程。通过通过”ISA“关系,可以实现层层抽象化。关系,可以实现层层抽象化。表示实例关
44、系的语义网络表示实例关系的语义网络 小华小华大学生大学生是一个是一个52l2.分类(或从属、泛化)关系分类(或从属、泛化)关系分类关系是分类关系是指事物间的类属关系指事物间的类属关系,下图就是一个描述分类,下图就是一个描述分类关系的语义网络。在图中,下层概念节点除了可继承、细关系的语义网络。在图中,下层概念节点除了可继承、细化、补充上层概念节点的属性外,还出现了变异的情况:化、补充上层概念节点的属性外,还出现了变异的情况:鸟是鸵鸟的上层概念节点,其属性是鸟是鸵鸟的上层概念节点,其属性是“有羽毛有羽毛”、“会会飞飞”,但鸵鸟的属性只是继承了,但鸵鸟的属性只是继承了“有羽毛有羽毛”这一属性,而这一
45、属性,而把鸟的把鸟的“会飞会飞”变更为变更为“不会飞不会飞”。其中,关系。其中,关系“是一种是一种”一般标识为一般标识为“a-kind-of”或或AKO。A AKO B表示表示A是一种是一种B,A与与B之间有属性继承和属性更之间有属性继承和属性更改权。改权。53表示分类关系的语义网络表示分类关系的语义网络 54l3.组装关系组装关系如果如果下层概念是上层概念的一个方面或者一部分下层概念是上层概念的一个方面或者一部分,则称它们的关系是组装关系。例如图所示的语义则称它们的关系是组装关系。例如图所示的语义网络就是一种组装关系。其中,关系网络就是一种组装关系。其中,关系“一部分一部分”一般标识为一般标
46、识为“a-part-of”。x A-part-of X:表示:表示x是是X的一部分(部件)。的一部分(部件)。桌子桌子桌腿桌腿桌面桌面一部分一部分一部分一部分表示组装关系的语义网络表示组装关系的语义网络 55l4.属性关系属性关系属性关系属性关系表示对象的属性及其属性值表示对象的属性及其属性值。例如,图。例如,图表示表示simon是一个人,男性,是一个人,男性,40岁,职业是教师。岁,职业是教师。表示属性关系的语义网络表示属性关系的语义网络 56表示集合表示集合成员关系的语义网络成员关系的语义网络 张三张三计算机学会计算机学会是成员是成员l5.集合与成员关系集合与成员关系意思是意思是“是是的成
47、员的成员”,它,它表示成员(或元素)表示成员(或元素)与集合之间的关系与集合之间的关系。例如,。例如,“张三是计算机学会会张三是计算机学会会员员”可表示为下图。其中,关系可表示为下图。其中,关系“是成员是成员”一般标一般标识为识为“a-member-of”。x a-member-of X表示表示x是是X的一个成员(元素)。的一个成员(元素)。x是一个特定的个体,是一个特定的个体,X是一个类或集合。他们之是一个类或集合。他们之间也有属性继承权与属性更改权。间也有属性继承权与属性更改权。57l6.逻辑关系逻辑关系如果一个概念可由另一个概念推出,两个概念间如果一个概念可由另一个概念推出,两个概念间存
48、在因果关系存在因果关系,则称它们之间是逻辑关系。如下,则称它们之间是逻辑关系。如下图所示的语义网络就是一个逻辑关系。图所示的语义网络就是一个逻辑关系。表示逻辑关系的语义网络表示逻辑关系的语义网络 雨天雨天外出外出ANDOR带雨披带雨披带雨伞带雨伞则则58l7.方位关系方位关系在描述一个事物时,经常需要指出它发生的时间、在描述一个事物时,经常需要指出它发生的时间、位置,或者指出它的组成、形状等等,此时可用位置,或者指出它的组成、形状等等,此时可用相应的方位关系语义网络表示。例如事实:相应的方位关系语义网络表示。例如事实:张宏是石油学院的一名助教;张宏是石油学院的一名助教;石油学院位于西安市电子二
49、路;石油学院位于西安市电子二路;张宏今年张宏今年25岁。可用下图所示的语义网络表示。岁。可用下图所示的语义网络表示。59表示方位关系的语义网络表示方位关系的语义网络 电子电子2路路石油学院石油学院张宏张宏助教助教西安市区西安市区25岁岁位于位于工作在工作在职务职务属于属于年龄年龄60l8.所属关系所属关系所属关系表示所属关系表示“具有具有”的意思。例如的意思。例如“狗有尾狗有尾巴巴”可表示为下图所示。可表示为下图所示。表示所属关系的语义网络表示所属关系的语义网络 狗狗尾巴尾巴have61l几种关系型的语义网络几种关系型的语义网络语义网络中的语义关系是多种多样的,一般根据实际关语义网络中的语义关
50、系是多种多样的,一般根据实际关系定义。如常见的还有系定义。如常见的还有before、after、at等表示时间次等表示时间次序关系和序关系和located-on、located-under等表示位置关系。等表示位置关系。进一步,还可对带有全称量词和存在量词的谓词公式的进一步,还可对带有全称量词和存在量词的谓词公式的语义加以表示。语义加以表示。由上所述可以看出,由上所述可以看出,语义网络实际上是一种复合的二元语义网络实际上是一种复合的二元关系图关系图。网络中的一条边就是一个二元关系,而整个网。网络中的一条边就是一个二元关系,而整个网络可以看作是由这些二元关系拼接而成。络可以看作是由这些二元关系拼