框架表示法2010年11月4日星期四。themegallery。com主要内容框架与框架网络框架推理的基本过程及形式框架的不确定性匹配框架的推理步骤框架表示法的特点2。themegallery。com1简介框架表示法理论是由美国的人工智能学者明斯基在1975年首先提出来的。该理论认为人们对现实世界中各种事物的认识都是以一种类似于框架的结构存储在记忆中,当面临一个新事物时,就从记忆中找出一个合适的框架,并根据实际情况对其细节加以修改、补充,从而形成对当前事物的认识。也就是说框架表示法表示的是一种经验性的知识。3。themegallery。com2框架与框架网络2.1概述框架是描述对象(事物,事件或概念)属性的一种数据结构。框架网络是由不同的框架通过属性之间的关系而建立起来的联系,从而构成了框架网络。框架网络能够充分表达相关对象之间的各种关系。4。themegallery。com2框架与框架网络2.2框架的基本形式一个框架由若干个被称为“槽”的结构组成,每一个槽又可根据实际需要分为若干个“侧面”。槽用于描述对象的某一方面的属性。侧面用于描述相应属性的一个方面。槽和侧面所具有的属性值分别称为槽值和侧面值.5。themegallery。com2框架与框架网络框架名槽名1:侧面名11:侧面值11侧面名12:侧面值12……侧面名1n:侧面值1n槽名k:……6。themegallery。com2框架与框架网络2.3框架的BNF描述框架式::=框架头槽部分[约束部分]框架头::=框架名框架名的值槽部分::=槽,[槽]约束部分::=约束约束条件,[约束条件]框架名的值::=符号名|符号名(参数,[参数])7。themegallery。com2框架与框架网络槽::=槽名槽值|侧面部分槽名::=系统预定义槽名|用户自定义槽名槽值::=静态描述|过程|谓词|框架名的值|空侧面部分::=侧面名,[侧面]侧面::=侧面名侧面值侧面名::=系统预定义侧面名|用户自定义侧面名侧面值::=静态描述|过程|谓词|框架名的值|空8。themegallery。com2框架与框架网络静态描述::=数值|字符串|布尔值|其他值过程::=动作|动作,[动作]参数::=符号名几点说明:(1)框架名的值允许带有用符号名表示的参数.当一个框架A调用另一个带有符号名参数的框架B时A需要为B提供相应的参数.(2)当槽值或侧面值是一个过程时,它既可以是一个动作串又可以是对某个过程的调用.9。themegallery。com2框架与框架网络没有侧面的框架可以简化为:框架名槽名1:-----值1槽名2:-----值2……槽名n:-----值n某些槽的值可缺省.槽值可以有如下几种类型:具体值,默认值,过程值,另一框架名,空10。themegallery。com2框架与框架网络例2.1房间框架框架:房间墙数:a[=4]窗数:b[=2]门数:c[=1]墙:墙框架调用(b,c)门:门框架调用天花板:天花板框架调用地板:地板框架调用窗:窗框架调用框架:墙(w,d)墙面材料:白灰(或墙纸)颜色:白窗数:w门数:d窗:窗框架调用门:门框架调用|||||||||||||||11。themegallery。com2框架与框架网络2.4框架的知识表示步骤框架是一种描述对象属性并反映相关个对象间的各种关系的数据结构,并且可以把它视作知识单位.对于要表达的知识,其中可能包含着许多对象,各个对象之间有着各种各样的联系,将这些有关系的对象的框架联结起来便形成了要表达知识的框架系统.框架表示知识的具体步骤:1)分析代表的知识对象及其属性,对框架中的槽进行合理设置.12。themegallery。com2框架与框架网络在槽及侧面的设置上要考虑两方面的因素:①要符合系统的设计目标,凡是系统目标中所要求的属性或是问题求解过程中可能用到的属性都要设置相应的槽.②不能盲目的把所有的甚至无用的属性都用槽表示出来.2)对各对象间的各种联系进行考察.使用一些常用的或根据具体需要定义一些表达联系的槽名,来描述上下层框架间的联系.在框架系统中,对象间的联系是通过各个槽的13。themegallery。com2框架与框架网络槽名来表述的.通常在框架系统中定义一些公用,常用且标准的槽名,并把这些槽名称为系统预定义槽名.易于理解.比如常见的有:ISA,AKO和Instance等例2.2用分层的框架网络表示1976年3月18日,一次强度为里氏8.5级的地震发生在下斯洛文尼亚地区,造成25人死亡和5亿美元的损失.多年来靠近萨迪豪金斯断层的地区一直是一个地震多发区.解:由于地震可看成是一种灾害事件,除地震以外,还有火灾,洪水,飓风等灾害事件,因此可以组成一个描述灾害事件的框架系统.14。themegallery。com2框架与框架网络框架名:灾害事件地点:字符串日期:单位(年,月,日)死亡人数:单位(人)财产损失:单位(亿美元)框架名:地震ISA:灾害事件强度:单位(里氏级)断层:字符串框架名:地震1||||||||||||||||地点:LowSlabovia日期:1976,3,18死亡人数:25财产损失:5强度8.5断层:SadieHawkins15。themegallery。com2框架与框架网络3)对各层对象的”槽”及”侧面”进行合理的组织和安排,避免信息描述的重复.在框架的表示中,ISA、AKO和Instance槽等所联系的上下框架间具有继承性,这就要求把同一层中不同框架间所具有的相同的槽名作为这些框架所表示的对象的共同属性抽取出来,放入他们上层框架中.16。themegallery。com2框架与框架网络例2.3建立一个分层的框架网络从高层框架至最底层框架名依次为师生员工,教职工,教师,教师1…,并为相应的框架设置继承槽来避免重复描述.解:框架定义如下:①师生员工框架.框架名:师生员工姓名:单位(姓,名)年龄:单位(岁)17。themegallery。com2框架与框架网络性别:单位(男,女)缺省:男健康状况:范围(健康,一般,差)缺省:一般住房:住房②教职工框架.框架名:教职工继承:师生员工工作类别:范围(教师,干部,工人)缺省:教师18。themegallery。com2框架与框架网络学历:范围(中专,大专,本科,研究生)缺省:本科参加工作时间:单位(年,月)③教师框架.框架名:教师继承:教职工部门:单位(系,教研室)语种:范围(英语,法语,德语,日语,俄语)缺省:英语职称:范围(教授,副教授,讲师,助教)19。themegallery。com2框架与框架网络缺省:讲师④某个教师的实例框架.框架名:教师1继承:教师姓名:王林年龄:36健康状况:健康参加工作时间:1982,9部门:计算机系软件教研室职称:副教授20。themegallery。com3框架推理的基本过程及形式框架表示知识的系统主要由两部分组成:一.由框架网络构成的知识库.二.由一组程序组成的框架推理机.3.1框架推理的基本过程在用框架表示知识的系统中,推理主要是通过框架匹配与填槽来实现的.首先把要求解的问题用一个称为问题框架的框架表示出来,然后把初始问题框架与知识库中的框架进行匹配.21。themegallery。com3框架推理的基本过程及形式比较原则是如果两个框架对应的槽没有冲突或满足预设的某些条件就可以认为两个框架匹配成功.例3.1推理的例子假设例2.3提出的关于师生员工的框架网络已建立在知识库中,当前要求解决的问题是从知识库中找出一个满足如下条件的教师:男性,年龄在40岁一下的副教授,身体健康,会英语.求解问题可表示成如下初始问题框架:22。themegallery。com3框架推理的基本过程及形式框架名:教师x姓名:年龄:40性别:男健康状况:健康职称:副教授语种:英语用此问题框架与知识库中的框架进行匹配,显然教师1可以与之匹配.23。themegallery。com3框架推理的基本过程及形式3.2框架推理形式框架链是一种复杂的语义网络.语义网络中的推理在框架中同样可以进行,但对框架最主要的推理形式为填充槽值.填充槽值有几种办法实现,主要有两种:匹配和继承.1)匹配框架是一类事物的完整描述,因此框架匹配只能做到部分匹配.例3.2王强的行动和音量想消防车,找出王强的行动和音量像什么24。themegallery。com3框架推理的基本过程及形式框架1:王强是:人性别:男行动:音量:进取心:中等框架2:消防车是:车辆颜色:红行动:快音量:极高载物:水匹配这两个框架的槽:行动和音量.框架1没有此值,框架2有.匹配结果是填充框架1的两个槽值-王强行动是快的,音量是极高的.25。themegallery。com3框架推理的基本过程及形式2)继承继承有两种:直接继承和复杂继承直接继承:下层框架直接从上层框架中继承所有的属性值和条件.复杂继承:以时序继承为例,即有条件的继承.例3.3框架名:旧中国政体:资产阶级专政面积:960万平方公里人口:4.5亿领导党派:国民党框架名:新中国政体:人民民主专政面积:960万平方公里人口:4.5亿(1949年)领导党派:共产党26。themegallery。com4框架的不确定性匹配4.1定义若两个框架的对应的槽的值完全一致,则称这两个框架是完全匹配,或称确定性匹配.若两个框架虽然不能使对应槽完全一致,却满足预先指定的条件,则称这两个框架是不完全匹配,或称为不确定性匹配.27。themegallery。com4框架的不确定性匹配4.2主要的匹配方法1)匹配度方法匹配度是指当前看框架所描述的属性与已知框架可匹配的程度.匹配度方法的基本思想首先求出两个框架匹配的匹配度,然后根据该匹配度与预先给定的框架匹配阀值进行比较.最简单的匹配方法给各个属性确定一个重要性28。themegallery。com4框架的不确定性匹配2)充分条件与必要条件方法将框架中的某些槽分别设定为”充分条件”槽和”必要条件”槽,如果充分条件可以得到满足,就可以认为相应的两个框架可以匹配,如果充分条件不满足,儿必要条件满足,就认为需要进一步搜集信息后在进行匹配,如果必要条件不满足就认为两个框架不可匹配.这种方法不仅较好的解决了框架匹配问题,而且在框架推理中可把框架分为确认,激活与沉睡3种状态,有利于确定推理和搜索方向.29。themegallery。com4框架的不确定性匹配3)规定属性值变化范围方法对某些事物的某些属性,可通过规定对其值规定一个变化范围来实现属性的不确定性匹配.例如,可规定教室的门的数量为1~3扇,椅子的腿数为1~4条等.只要一个具体的事物的属性落在规定的值得范围内,就认为这个属性是匹配的.30。themegallery。com4框架的不确定性匹配4)功能属性描述法对某些事物除了给出有关外形的属性描述外,还可以给出功能其功能属性描述,而且功能属性描述应该高于外形描述,这有利于实现框架的确定性描述.例如,如果能在椅子的框架中给出其功能属性,那么即便对只有一条腿的椅子,只要它具有椅子的功能,仍然可以认为它是椅子.小结实际应用中可以将几种情况组合起来使用.31。themegallery。com5框架推理步骤在用框架表示知识的系统中,通过框架中的AKO槽和Instance槽把框架连接起来,构成的框架网络是一个层次结构.框架推理就是以此层次结构为基础,按照一定的搜索策略,不断寻找可匹配的框架进行填槽过程.此过程有可能找到合适的框架,得到问