人工智能の第二章.docx
- 文档编号:11421543
- 上传时间:2023-02-28
- 格式:DOCX
- 页数:19
- 大小:29.69KB
人工智能の第二章.docx
《人工智能の第二章.docx》由会员分享,可在线阅读,更多相关《人工智能の第二章.docx(19页珍藏版)》请在冰豆网上搜索。
人工智能の第二章
第二章知识表示方法
2.1概述
1知识原则里南(D.B.Lenat)和费根鲍姆(E.A.Feigenbaum),IJCAI-10
一个系统展示高级的智能理解和行为,主要是因为拥有应用领域特有的知识:
概念、事实、表示、方法、模型、隐喻和启发式。
特有——意指应用领域中有效地求解问题主要靠该领域特有的知识。
足够的约束来自特别知识——通用知识作用微弱,不能提供足够的约束。
系统拥有的知识和其性能(问题求解能力和效率)的关系,参见图3.1。
知识门槛:
(1)使能门槛W——指知识量超过该门槛时,系统就拥有了为执行任务所需的最低限度知识。
(2)胜任门槛C——到达C点时成为某应用领域中求解问题的专家,胜任只有专家才能解决的问题求解任务。
(3)全能门槛E——.到了这个门槛,由于知识量的空前增加(丰富),使系统能解决该应用领域内的几乎所有问题,成为全能专家。
知识门槛的分析:
知识量差异——达到C级,只需50~1000条规则;再加等量的规则,就可达E级。
智能体知识是逐步积累的,涉及到获取新知识、修正和学习。
系统的能力主要由知识库中包含的领域特有的知识来决定——作为启发式知识(经验性关联知识)指导问题求解。
许多其它的人工智能研究也开始转向基于知识的观点。
2知识表示的作用
以适当的方式表示知识,才导致智能体展示出智能行为。
表示=数据结构十处理机制
恰当的数据结构——用于存储要解决的问题、可能的中间解答和最终解答以及解决问题涉及之世界的描述。
符号结构,其导致了知识的显式表示。
配套的处理机制——仅有符号结构并不能体现出系统具有知识,符号结构本身并不构成意义,只有对其作适当的处理才构成意义。
知识表示假设史密斯(B.Simth),1982
任何机械设置的智能过程均由结构成分组成,人们作为外部观察者,自然地引用这些结构对该智能过程展示的知识作陈述性描述;独立于这样的外部语义,它们在产生显示出有知识的行为中起到基本的作用。
从概念上阐明了知识表示在建造智能化软件系统中的作用,
把知识表示的研究与其它涉及符号处理的技术区分开来。
结构成分就是KB系统中的符号结构,满足两个主要特性:
(1)可解释为表示知识的命题。
知识表示隐含地要求符号结构能以真值理论来解释,从而可以因某些命题的存在而说世界必定是什么样子的。
符号结构本身不必是命题形式,但我们作为KB系统的外部观察者,能把它们解释为命题而加以理解。
(2)在KB系统的行为中起因果作用
这种作用与我们将符号结构理解为表示知识的命题是一致的,
能把系统的智能行为归因为是系统具有某种表示于符号结构中的知识。
注意:
并不是系统能意识到它有知识,而是观察者从观察到的行为中认为系统具有某种知识。
颜色问题例——系统应如何设计才成为KB系统
两种设计方式,Prolog;看似等价,风格很不相同;参见书上。
第二种方式设计了一个KB系统,以清晰的符号结构表示了关于颜色的知识,
以规则的形式(逆向推理规则)表示“要打印x的颜色,必须知道x的颜色是y;”
这些符号结构在系统回答关于颜色问题的行为中明显地起到因果作用;
正因为系统拥有关于颜色的知识,当接收关于颜色的问题时,系统才会作出正确回答。
第一种方式设计的系统不能称为KB系统,它未能清晰地表示关于颜色的知识,奇怪的知识:
写字符串和打印颜色的关联。
工作假设——用合理方式去建造智能软件系统,
从开发KB系统的实用角度,阐述设计符号结构去表示知识在实现人工的智能行为中的关键作用,目的不在于解释认知行为。
KB系统的设计
知识表示:
表示语言——以符号结构描述获取到的领域知识,推理机制——应用这些知识实现智能行为;
3知识表示的功能
解决复杂问题——知识的表示必须能支持多种不同的问题求解活动
不同的活动往往需用不同方式表示的知识;
知识表示面临的抉择:
以统一的表示方式表示所有的知识——以统一的符号结构来换取知识获取和知识库维护上的简易性,但导致推理的低效性;以不同的表示方式表示特性不同的知识——相反。
知识表示的设计是一个要根据实际应用加以权衡利弊的问题。
支持三大类型的问题求解活动
知识获取——支持智能体渐增地获取知识,使其内部模型越来越精确地反映外部世界,以便有效地完成问题求解任务。
感知——感知其是否处于其拥有的知识可利用的世界状态中。
行动规划——能正确表示计划、目标、假设和期望。
4知识表示的性能伍兹(Woods)
表示的充分性——作重要区分和避免不必要区分的能力。
一种表示方式无论怎样有效,不能表示必要的区别是没有用处的。
适当地描述问题求解涉及的事物,以及智能体对于外部世界的信念、目的和猜测等。
表示法效用——支持被表示知识的使用,即表示知识的元素和处理这些元素的操作应能有效地支持使用知识的推理活动。
概念效率
知识表示方式应能有利于知识库以自然的方式吸收随意的新知识,有利于知识库的逐步精化,使包含于知识库中的有关世界的内部模型能逐步地精化和调整到接近于正确地反映外部世界。
计算效率——推理的有效性,如推理的速度、结论的正确性和有效性等。
权衡分析:
兼顾概念效率和计算效率往往是困难的:
前者要求表示知识的符号结构与知识的获取和知识库维护相容,而后者则要求与推理机相容。
提供两套符号结构,分别面向知识获取和机器推理,并设计自动转变程序来实现两者间的映射。
表示的充分性和表示法效用相互制约
提高一个方面的性能以牺牲另一方面的性能为代价。
根据应用环境和问题特征作取舍权衡,以能否满足需求为最实用的评价准则,否定绝对的性能比较准则。
5基本的知识表示方式
陈述性知识表示方式——主要用来描述事实性知识
特点:
知识表示和知识运用分开
优点:
灵活简洁、每个有关事实只需存储一次,演绎过程完整而确定,系统模块性能好。
缺点:
工作效率低,推理过程不透明,不易理解。
过程性知识表示方式——主要用来描述规则性知识和控制性知识,它告诉人们怎么做,知识表示的形式是一个过程,也就是求解程序。
特点:
知识表示和知识运用相结合,知识就结合与程序之中,是一种动态的描述方法。
优点:
推理过程直接清晰,有利于模块化,易于表达启发性知识和默认推理知识,实现效率高。
缺点:
不够严格,知识间交互重叠,灵活性差,知识的增删不方便。
2.2一阶谓词逻辑表示法
2.2.1谓词演算
1、语法和语义
谓词逻辑的基本组成部分是谓词符号、变量符号、函数符号和常量符号,并用圆括弧、方括弧、花括弧和逗号隔开,以表示论域内的关系。
原子公式是由若干谓词符号和项组成,只有当其对应的语句在定义域内为真时,才具有值T(真);而当其对应的语句在定义域内为假时,该原子公式才具有值F(假)。
2、连词和量词
连词有∧(与)、∨(或),全称量词(
x),存在量词(
x)。
原子公式是谓词演算的基本积木块,运用连词能够组合多个原子公式以构成比较复杂的合适公式。
3、几个有关定义
用连词∧把几个公式连接起来而构成的公式叫做合取,而此合取式的每个组成部分叫做合取项。
一些合适公式所构成的任一合取也是一个合适公式。
用连词∨把几个公式连接起来所构成的公式叫做析取,而此析取式的每一组成部分叫做析取项。
由一些合适公式所构成的任一析取也是一个合适公式。
用连词→连接两个公式所构成的公式叫做蕴涵。
蕴涵的左式叫做前项,右式叫做后项。
如果前项和后项都是合适公式,那么蕴涵也是合适公式。
前面具有符号~的公式叫做否定。
一个合适公式的否定也是合适公式。
量化一个合适公式中的某个变量所得到的表达式也是合适公式。
如果一个合适公式中某个变量是经过量化的,就把这个变量叫做约束变量,否则就叫它为自由变量。
在合适公式中,感兴趣的主要是所有变量都是受约束的。
这样的合适公式叫做句子。
2.2.2谓词公式
1、谓词合适公式的定义
在谓词演算中合适公式的递归定义如下:
(1)原子谓词公式是合适公式。
(2)若A为合适公式,则~A也是一个合适公式。
(3)若A和B都是合适公式,则(A∧B),(A∨B),(A=>B)和(A←→B)也都是合适公式。
(4)若A是合适公式,x为A中的自由变元,则(
x)A和(
x)A都是合适公式。
(5)只有按上述规则
(1)至(4)求得的那些公式,才是合适公式。
2、合适公式的性质
(1)否定之否定 ~(~P)等价于P
(2)P∨Q等价于~P→Q
(3)德·摩根定律
~(P∨Q)等价于~P∧~Q ~(P∧Q)等价于~P∨~Q
(4)分配律 P∧(Q∨R)等价于(P∧Q)∨(P∧R)
P∨(Q∧R)等价于(P∨Q)∧(P∨R)
(5)交换律P∧Q等价于Q∧P P∨Q等价于Q∨P
(6)结合律(P∧Q)∧R等价于P∧(Q∧R)
(P∨Q)∨R等价于P∨(Q∨R)
(7)逆否律 P→Q等价于~Q→~P
此外,还可建立下列等价关系:
(8)~(
x)P(x)等价于(
x)[~P(x)]
~(
x)P(x)等价于(
x)[~P(x)]
(9)(
x)[P(x)∧Q(x)]等价于 (
x)P(x)∧(
x)Q(x)
(
x)[P(x)∨Q(x)]等价于 (
x)P(x)∨(
x)Q(x)
(10)(
x)P(x)等价于(
y)P(y)
(
x)P(x)等价于(
y)P(y)
证明:
否定之否定,~(~P)等价于P。
2.2.3用谓词公式表示知识的步骤
由上述介绍可知,可以用以合取符号(∧)和析取符号(∨)连接形成的谓词公式表示事实性知识,也可以用蕴涵符号连接形成的谓词公式表示规则性知识。
下面是用谓词公式表示知识的步骤。
1、定义谓词及个体,确定每个谓词及个体的确切含义;
2、根据所要表达的事物或概念,为每个谓词中的变元赋以特定的值;
3、根据所要表达的知识的语义,用适当的连接符号将各个谓词连接起来,形成谓词公式。
2.3状态空间法
2.3.1问题状态描述
1、状态(State)的基本概念
状态(state)是为描述某类不同事物间的差别而引入的一组最少变量q0,q1,…,qn的有序集合,其矢量形式如下:
Q=[q0,q1,…,qn]T (2.1)
式中每个元素qi(i=0,1,…,n)为集合的分量,称为状态变量。
给定每个分量的一组值就得到一个具体的状态,如:
Qk=[q0k,q1k,…,qnk]T (2.2)
算符:
使问题从一种状态变化为另一种状态的手段称为操作符或算符。
操作符可为走步、过程、规则、数学算子、运算符号或逻辑符号等。
问题的状态空间(statespace)是一个表示该问题全部可能状态及其关系的图,它包含三种说明的集合,即所有可能的问题初始状态集合S、操作符集合F以及目标状态集合G。
因此,可把状态空间记为三元状态(S,F,G)。
2、状态空间的表示法
对一个问题的状态描述,必须确定3件事:
(1)该状态描述方式,特别是初始状态描述;
(2)操作符集合及其对状态描述的作用;
(3)目标状态描述的特性。
2.3.2状态图示法
图的基本概念
图由节点(不一定是有限的节点)的集合构成。
一对节点用弧线连接起来,从一个节点指向另一个节点。
这种图叫做有向图(directedgraph)。
某个节点序列(ni1,ni2,…,nik)当j=2,3,…,k时,如果对于每一个ni,j-1都有一个后继节点nij存在,那么就把这个节点序列叫做从节点ni1至节点nik的长度为k的路径。
代价(cost)是给各弧线指定数值以表示加在相应算符上的代价。
图的显式说明是指各节点及其具有代价的弧线由一张表明确给出。
图的隐式说明是指各节点及其具有代价的弧线不能由一张表明确给出。
2.3.3状态空间表示举例
1、产生式系统
一个产生式系统由下列3部分组成:
一个总数据库(globaldatabase),它含有与具体任务有关的信息。
一套规则,它对数据库进行操作运算。
每条规则由左右两部分组成,左部鉴别规则的适用性或先决条件,右部描述规则应用时所完成的动作。
应用规则来改变数据库。
一个控制策略,它确定应该采用哪一条适用规则,而且当数据库的终止条件满足时,就停止计算。
2、状态空间表示举例
猴子与香蕉的问题
状态空间表示用四元组(W,x,y,z)其中:
W-猴子的水平位置;x-当猴子在箱子顶上时取x=1;否则取x=0;Y-箱子的水平位置;z-当猴子摘到香蕉时取z=1;否则取z=0。
算符
(1)goto(U)猴子走到水平位置U;
(2)pushbox(V)猴子把箱子推到水平位置V;
(3)climbbox猴子爬上箱顶;
(4)grasp猴子摘到香蕉。
求解过程令初始状态为(a,0,b,0)。
这时,goto(U)是唯一适用的操作,并导致下一状态(U,0,b,0)。
现在有3个适用的操作,即goto(U),pushbox(V)和climbbox(若U=b)。
把所有适用的操作继续应用于每个状态,我们就能够得到状态空间图,如图所示。
从图不难看出,把该初始状态变换为目标状态的操作序列为:
{goto(b),pushbox(c),climbbox,grasp}
2.4问题归约法
2.4.1问题归约描述
1、问题归约法的概念
已知问题的描述,通过一系列变换把此问题最终变为一个子问题集合;这些子问题的解可以直接得到,从而解决了初始问题。
该方法也就是从目标(要解决的问题)出发逆向推理,建立子问题以及子问题的子问题,直至最后把初始问题归约为一个平凡的本原问题集合。
这就是问题归约的实质。
2、问题归约法的组成部分
(1)一个初始问题描述;
(2)一套把问题变换为子问题的操作符;
(3)一套本原问题描述。
3、示例:
汉诺塔难题
问题有3个柱子(1,2,3)和3个不同尺寸的圆盘(A,B,C)。
在每个圆盘的中心有个孔,所以圆盘可以堆叠在柱子上。
最初,全部3个圆盘都堆在柱子1上:
最大的圆盘C在底部,最小的圆盘A在顶部。
要求把所有圆盘都移到柱子3上,每次只许移动一个,而且只能先搬动柱子顶部的圆盘,还不许把尺寸较大的圆盘堆放在尺寸较小的圆盘上。
归约过程
(1)移动圆盘A和B至柱子2的双圆盘难题;
(2)移动圆盘C至柱子3的单圆盘难题;
(3)移动圆盘A和B至柱子3的双圆盘难题。
由上可以看出简化了难题每一个都比原始难题容易,所以问题都会变成易解的本原问题。
4、归约描述
问题归约方法是应用算符来把问题描述变换为子问题描述。
可以用状态空间表示的三元组合(S、F、G)来规定与描述问题;对于梵塔问题,子问题[(111)→(122)],[(122)→(322)]以及[(322)→(333)]规定了最后解答路径将要通过的脚踏石状态(122)和(322)。
问题归约方法可以应用状态、算符和目标这些表示法来描述问题,这并不意味着问题归约法和状态空间法是一样的。
2.4.2与或图表示
1、与或图的概念
用一个类似图的结构来表示把问题归约为后继问题的替换集合,画出归约问题图。
例如,设想问题A需要由求解问题B、C和D来决定,那么可以用一个与图来表示;同样,一个问题A或者由求解问题B、或者由求解问题C来决定,则可以用一个或图来表示。
2、与或图的有关术语
父节点是一个初始问题或是可分解为子问题的问题节点;
子节点是一个初始问题或是子问题分解的子问题节点;
或节点只要解决某个问题就可解决其父辈问题的节点集合;
与节点只有解决所有子问题,才能解决其父辈问题的节点集合;
弧线是父辈节点指向子节点的圆弧连线;
3、与或图的有关定义
可解节点与或图中一个可解节点的一般定义可以归纳如下:
(1)终叶节点是可解节点(因为它们与本原问题相关连)。
(2)如果某个非终叶节点含有或后继节点,那么只有当其后继节点至少有一个是可解的时,此非终叶节点才是可解的。
(3)如果某个非终叶节点含有与后继节点,那么只要当其后继节点全部为可解时,此非终叶节点才是可解的。
不可解节点不可解节点的一般定义归纳于下:
(1)没有后裔的非终叶节点为不可解节点。
(2)如果某个非终叶节点含有或后继节点,那么只有当其全部后裔为不可解时,此非终叶节点才是不可解的。
(3)如果某个非终叶节点含有与后继节点,那么只要当其后裔至少有一个为不可解时,此非终叶节点才是不可解的。
4、与或图构图规则
(1)与或图中的每个节点代表一个要解决的单一问题或问题集合。
图中所含起始节点对应于原始问题。
(2)对应于本原问题的节点,叫做终叶节点,它没有后裔。
(3) 对于把算符应用于问题A的每种可能情况,都把问题变换为一个子问题集合;有向弧线自A指向后继节点,表示所求得的子问题集合。
(4)一般对于代表两个或两个以上子问题集合的每个节点,有向弧线从此节点指向此子问题集合中的各个节点。
(5)在特殊情况下,当只有一个算符可应用于问题A,而且这个算符产生具有一个以上子问题的某个集合时,由上述规则3和规则4所产生的图可以得到简化。
2.5语义网络法
2.5.1二元语义网络的表示
1、语义网络的基本概念
语义网络是知识的一种结构化图解表示,它由节点和弧线或链线组成。
节点用于表示实体、概念和情况等,弧线用于表示节点间的关系。
语义网络表示由下列4个相关部分组成:
(1)词法部分决定表示词汇表中允许有哪些符号,它涉及各个节点和弧线。
(2)结构部分叙述符号排列的约束条件,指定各弧线连接的节点对。
(3)过程部分说明访问过程,这些过程能用来建立和修正描述,以及回答相关问题。
(4)语义部分确定与描述相关的(联想)意义的方法即确定有关节点的排列及其占有物和对应弧线。
语义网络具有下列特点:
(1)能把实体的结构、属性与实体间的因果关系显式地和简明地表达出来,与实体相关的事实、特征和关系可以通过相应的节点弧线推导出来。
(2)由于与概念相关的属性和联系被组织在一个相应的节点中,因而使概念易于受访和学习。
(3)表现问题更加直观,更易于理解,适于知识工程师与领域专家沟通。
(4)语义网络结构的语义解释依赖于该结构的推理过程而没有结构的约定,因而得到的推理不能保证像谓词逻辑法那样有效。
(5)节点间的联系可能是线状、树状或网状的,甚至是递归状的结构,使相应的知识存储和检索可能需要比较复杂的过程。
2、二元语义网络的表示
用两个节点和一条弧线可以表示一个简单的事实,对于表示占有关系的语义网络,是通过允许节点既可以表示一个物体或一组物体,也可以表示情况和动作。
每一情况节点可以有一组向外的弧(事例弧),称为事例框,用以说明与该事例有关的各种变量。
在选择节点时,首先要弄清节点是用于表示基本的物体或概念的,或是用于多种目的的。
否则,如果语义网络只被用来表示一个特定的物体或概念,那么当有更多的实例时就需要更多的语义网络。
选择语义基元就是试图用一组基元来表示知识。
这些基元描述基本知识,并以图解表示的形式相互联系。
2.5.2多元语义网络的表示
语义网络是一种网络结构。
节点之间以链相连。
从本质上讲,接点之间的连接是二元关系。
语义网络从本质上来说,只能表示二元关系,如果所要表示的事实是多元关系,则把这个多元关系转化成一组二元关系的组合,或二元关系的合取。
具体来说,多元关系R(X1,X2,…,Xn)总可以转换成R1(X11,X12)∧R2(X21,X22)∧…∧Rn(Xn1,Xn2)。
要在语义网络中进行这种转换需要引入附加节点。
2.4.3连词和量化的表示
可以用语义网络表示谓词逻辑法中的各种连词及量化。
1.合取:
多元关系可以被转换成一组二元关系的合取,从而可以用语义网络的形式表示出来。
2.析取:
在语义网络中,为与合取关系相区别,在析取关系的连接上加注析取界限,并标记DIS。
3.否定:
采用~ISA和~PARTOF关系或标注NEG界限来表示否定。
4.蕴涵:
在语义网络中可用标注ANTE和CONSE界限来表示蕴涵关系。
5.量化:
存在量化在语义网络中可直接用ISA链来表示。
而全称量化就要用分割方法来表示。
2.6其他方法
2.6.1框架
1、框架的构成
框架通常由描述事物的各个方面的槽组成,每个槽可以拥有若干个侧面,而每个侧面又可以拥有若干个值。
一个框架的一般结构如下:
〈框架名〉
〈槽1〉〈侧面11〉〈值111〉…
〈侧面12〉〈值121〉…
…
〈槽n〉〈侧面n1〉〈值n11〉…
〈侧面nm〉〈值nm1〉…
较简单的情景是用框架来表示诸如人和房子等事物。
例如,一个人可以用其职业、身高和体重等项描述,因而可以用这些项目组成框架的槽。
当描述一个具体的人时,再用这些项目的具体值填入到相应的槽中。
表2.2给出的是描述John的框架。
表2.2简单框架示例
JOHN
Isa
:
PERSON
Profession
:
PROGRAMMER
Height
:
1.8m
Weight
:
79kg
框架是一种通用的知识表达形式,对于如何运用框架系统还没有一种统一的形式,常常由各种问题的不同需要来决定。
2、框架的推理
如前所述,框架是一种复杂结构的语义网络。
因此语义网络推理中的匹配和特性继承在框架系统中也可以实行。
除此以外,由于框架用于描述具有固定格式的事物、动作和事件,因此可以在新的情况下,推论出未被观察到的事实。
框架用以下几种途径来帮助实现这一点:
(1)框架包含它所描述的情况或物体的多方面的信息。
(2)框架包含物体必须具有的属性。
在填充框架的各个槽时,要用到这些属性。
(3)框架描述它们所代表的概念的典型事例。
用一个框架来具体体现一个特定情况的过程,经常不是很顺利的。
但当这个过程碰到障碍时,经常不必放弃原来的努力去从头开始,而是有很多办法可想的:
(1)选择和当前情况相对应的当前的框架片断,并把这个框架片断和候补框架相匹配。
选择最佳匹配。
(2)尽管当前的框架和要描述的情况之间有不相匹配的地方,但是仍然可以继续应用这个框架。
(3)查询框架之间专门保存的链,以提出应朝哪个方向进行试探的建议。
(4)沿着框架系统排列的层次结构向上移动(即从狗框架→哺乳动物框架→动物框架),直到找到一个足够通用,并不与已有事实矛盾的框架。
2.6.2剧本
剧本是框架的一种特殊形式,它用一组槽来描述某些事件的发生序列,就像剧本中的事件序列一样,故称为“剧本”或脚本。
一个剧本一般由以下各部分组成:
(1)开场条件给出在剧本中描述的事件发生的前提条件。
(2)角色用来表示在剧本所描述的事件中可能出现的有关人物的一些槽。
(3)道具这是用来表示在剧本所描述的事件中可能出现的有关物体的一些槽。
(4)场景描述事件发生的真实顺序,可以由多个场景组成,每个场景又可以是其它的剧本。
(5)结果给出在剧本所描述的事件发生以后通常所产生的结果。
根据剧本的重要性,可以有二种准备剧本的方法。
(1)对于不属于事件核心部
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 人工智能 第二