发布网友 发布时间:2022-04-22 00:13
共1个回答
热心网友 时间:2023-09-14 10:39
知识是人们在改造客观世界的实践中积累起来的认识和经验,是人们通过实践认识到的客观世界规律性的东西,是信息经过加工、解释、挑选和改造而形成的命题和规则的集合。它由特定领域的描述、关系和过程组成,可用公式表示为:
知识=事实+信念+启发式
人类所以有智能行为是因为人类具有知识。为了使机器具有智能,必须使机器拥有和运用知识。人类拥有的知识必须用适当的方法来表示,才能够被机器获取和积累,并且便于在计算机中灵活运用、存储、检索、删除和修改。
所谓知识表示实际上就是对知识的一种描述,是对知识的形式化、符号化过程,即用一些约定的符号把知识编码成一组计算机可以接受的数据结构。主要问题是设计各种数据结构(即知识的形式表示方法),研究表示和控制问题、表示和推理的关系等等。主要目的是探讨和提供在机器中表达知识的方法和技术,以便把人类的知识有效、合理地转移和存储到计算机中。所谓知识表示方法就是用来描述和组织知识的规则符号、形式语言和网络图等等。
一、知识表示方法的评价准则
1)表示能力:能正确地、有效地将问题求解所需的各类知识表示出来。
2)可理解性:所表达的知识简单、明了、易于理解。
3)可访问性:能够有效地利用所表达的知识。
4)可扩充性:能够方便、灵活地对知识进行扩充。
5)模块性:系统具有容易理解、便于修改、适于并行处理且并行度高的模块。
二、知识表示方法的分类
目前,用于计算机专家系统中的知识表示方法有很多,一般按搜索方式、规则选择策略及知识库的利用等进行分类。一般可分为说明性知识表示方法和过程性知识表示方法。其中说明性表示方法有逻辑和语义网络等;过程性表示方法有产生式规则等;两者相结合的方法有框架等。按最常用顺序排列为:产生式规则、谓词逻辑、语义网络、框架,其中产生式规则方法用得最多,著名的PROSPECTOR地质勘探专家系统采用的就是这种方法。本系统知识库的矿床模型知识也采用这种知识表示方法。下面对各方法简要介绍,重点介绍产生式规则法。
(1)逻辑表示法
逻辑表示法采用一阶谓词逻辑表示知识,是一种叙述性的知识表示方法。主要用于自动定理证明。有以下几个基本要素:
a)常量:表示事物或概念等特定对象。
b)变量:表示非特定对象。
c)谓词:表示对象的属性或对象间的关系。
d)逻辑运算符:∧合取(与);∨析取(或);~否定(非);→蕴含(如果…,则…)。
e)量词:全称量词(对于所有的);存在量词(存在一个)
f)函数:用来*对象的范围及表示从对象到对象的映射。
逻辑表示法有自然、严密、灵活及模块化等优点,但也存在单调性、组合爆炸等缺点。
(2)语义网络表示法
知识在语义网络中表达为一组结点和弧线。结点代表对象、概念或情况,弧线代表对象之间的联系。
语义网络的基础是三元组:
(结点A,弧,结点B)
其中弧是带标识的方向弧,方向体现主次,结点A为主,结点B为辅。当多个组结合起来一起表达时,就可得到一个语义网络。
语义网络可进行知识深化表达,并有层次性、自然性、非有效性及非清晰性等特点。
(3)框架表示法
框架是表示一种定型状态的数据结构,它的顶层是固定的,表示某个固定的概念、对象或事件,其下层由一些槽组成。每个槽可以按实际情况被一定类型的实例或数据(即槽值)所填充,每个槽值一般都预先规定赋值的条件。还可规定不同槽的槽值之间应满足的条件。所以框架是一种层次的数据结构,框架下层的槽可以看成是一种子框架,子框架本身还可以进一步分层次。相互关联的框架连接起来组成框架系统,或称框架网络。不同的框架网络又可通过信息检索网络组成更大的系统,代表一块完整的知识模块。框架一般由框架名和一些槽组成,每一个槽都有其名和对应的值,槽下还可分若干侧面。槽(或其侧面)值可以是数字的或逻辑的,也可以是程序、条件、默认值或一个子框架。
框架表示法可为实体、属性、关系和默认值等提供显式的表示,容易附加过程信息且有继承特性。但容易造成实际情况与框架原型不符,且对新情况不易适应。
(4)产生式规则表示法。
三、产生式规则表示法
在自然界的各种知识单元之间存在着大量的因果关系,这些因果关系亦即前提和结论的关系,用规则来表示是非常方便的。产生式规则表示是知识表示最简单、最常用的形式。
一个产生式规则的一般形式为:
Q←p
或者写成:
IF[P]THEN[Q]
其中P一般表示一组前提或状态,Q表示若干结论或动作,其含义是“如果前提P满足则可推出结论Q(或应执行动作Q)”。一组产生式规则还可以形象的用一棵(或多棵)所谓“与/或树”表示,如图4-2所示。该图的“与/或树”表示了如下的产生式规则组:
A←B1,B2,B3←C4,C5,C6;C5←D1,D2;A←B3,B4,B5;
B4←C7;C5←D3;B1←C1,C2;B4←C8;C8←D4,D5,D6;
B2←C3;B5←C9,C10。
带圆弧的分支线表示“与”的关系;用不带圆弧的分支线表示“或”的关系。
图4-2 与/或树示意图
(一)产生式系统的基本组成部分
通常,产生式系统包含下述3个基本组成部分:
1.规则库
该库存放了若干条规则,每条产生式规则是一个以“如果满足这个条件,就应当采取这个操作”形式表示的语句。各条规则之间相互作用不大。规则可有如下形式:
中国矿产资源评价新技术与评价新模型
中国矿产资源评价新技术与评价新模型
在产生式系统的执行过程中,如果一条规则的条件部分都被满足,那么,这条规则就可以被应用,即系统的控制执行规则的操作部分,并把执行结果加入暂存器。
2.暂存器
暂存器是产生式规则表示法的推理中枢,每个产生式的左边表示在启用这一规则之前暂存器内必须准备好的条件。执行产生式规则的操作会引起暂存器的变化,这就可能使得其他产生式规则的条件被满足。
3.控制器
其作用是说明下一步应该选用什么规则,也就是如何运用规则。通常从选择规则到执行规则分成三步:匹配、冲突解决和操作(图4-3)。
图4-3 产生式系统的基本结构
1)匹配。把暂存器和规则的条件部分相匹配,如果两者完全匹配,则把这条规则称为触发规则。当按照规则的操作部分去执行时,把这条规则称为被启用规则。被触发的规则不一定总是被启用的规则,因为可能同时有几条规则的条件部分被满足,这就要用到(2)。
2)冲突解决。当有一个以上的规则条件部分和当前暂存器相匹配时,就需要决定首先使用哪一条规则。这称为冲突解决。一种简单的策略是选择在扫描规则集时碰到的第一条规则。
3)操作。操作就是执行规则的操作部分,经过操作以后,当前暂存器将被修改。然后,其他的规则有可能被使用。
(二)产生式系统的问题求解过程
产生式系统的问题求解就是如何使暂存器转移到满足解的终止条件的状态。以下是一个经典的产生式系统问题求解过程实例—动物识别系统IDENTIFIER,它很好地说明了如何用产生式规则表示法来描述一个问题的求解过程。
实例 动物识别系统IDENTIFIER
IDENTIFIER系统能对老虎、金钱豹、斑马、长颈鹿、企鹅、鸵鸟、信天翁等7种动物进行识别。通过辨识动物的有关特征和外貌,如颜色、花纹、体态、动作等,以获取关于动物世界的知识。
下面是用产生式规则表达的有关知识:
规则Ⅰ1
若 动物有毛发;
则 动物为哺乳类。
规则Ⅰ2
若 动物有奶;
则 动物为哺乳类。
规则Ⅰ3
若 动物有羽毛;
则 动物为鸟类。
规则Ⅰ4
若 动物会飞,而且产蛋;
则 动物为鸟类。
规则Ⅰ5
若 动物是哺乳类,且食肉;
则 动物为食肉动物。
规则Ⅰ6
若 动物是哺乳类,
动物有大齿,
动物有爪;
则 动物是食肉动物。
规则Ⅰ7
若 动物是哺乳类动物,
动物有蹄;
则 动物为有蹄类动物。
规则Ⅰ8
若 动物是哺乳类动物,
动物反刍;
则 动物为有蹄类动物。
规则Ⅰ9
若 动物是食肉类动物,
动物为黄褐色,
有黑色斑点;
则 它是金钱豹。
规则Ⅰ10
若 动物是食肉类动物,
具有黄褐色外部特征,
有黑色条纹;
则 它是老虎。
规则Ⅰ11
若 动物是有蹄类动物,
有长长的颈,
腿很长,
黄褐色,
有黑色斑点;
则 它是长颈鹿。
规则Ⅰ12
若 动物是有蹄类动物,
白色,
有黑色条纹;
则 它是斑马。
规则Ⅰ13
若 动物是鸟类,
不会飞,
腿很长,
颈很长,
具有黑白二色;
则 它是鸵鸟。
规则Ⅰ14
若 动物是鸟类
它不会飞,
会游泳,
具有黑白二色;
则 它是企鹅。
规则Ⅰ15
若 动物是鸟类,
它很会飞;
则 它是信天翁。
由上面的产生式规则我们看到,规则Ⅰ1~Ⅰ4用于确定生物学分类是哺乳动物还是鸟类;规则Ⅰ5~Ⅰ15再把哺乳动物和鸟类进一步分成更细的类别,这就形成了一种分层的分类形式:其中Ⅰ5~Ⅰ8是把哺乳动物分类成食肉动物和有蹄动物;Ⅰ9~Ⅰ10是对食肉动物进行细分;Ⅰ11~Ⅰ12是对有蹄动物进行细分;Ⅰ13~Ⅰ15是对鸟类进行细分。
下面我们考察一下动物识别系统IDENTIFIER是如何工作的。
假设,我们经观察得到两个事实:
中国矿产资源评价新技术与评价新模型
在规则Ⅰ9和Ⅰ11中包括这两个条件,但是Ⅰ9和Ⅰ11的前提还必须被别的条件所满足,所以需要观察到更多的有关该动物的特征,假设得到新的事实是:
该动物给它的幼兽喂奶,并能进行反刍。于是暂存器的内容增加为:
动物有黄褐色,有黑斑,有奶,反刍。
现在用规则库和暂存器匹配,Ⅰ2首先能使用,并更新暂存器为:
动物为哺乳动物,黄褐色,有黑斑,有奶,反刍。
继而Ⅰ8又能用,更新暂存器为:
动物为有蹄类动物,为哺乳类,黄褐色,有黑斑,有奶,反刍。
至此,系统还没有识别出这是什么动物,而暂存器也不能和其他规则的前提相匹配,因而还需要提供关于动物基本特征的新的信息。
假设,我们观察到该动物的腿和颈都很长。
把它们加入暂存器,得到暂存器为:
动物颈长,腿长,为有蹄类动物,为哺乳类,黄褐色,有黑斑点,有奶,反刍。
此时,规则Ⅰ11可以用,得到结论:该动物为长颈鹿。问题的求解过程可以终止。
上述的推理过程可以用图4-4表示。图中的实心圆表示观察到的未经处理的事实,实心菱形表示推理的结论,与门表示规则。
图4-4 推理过程
从图4-4中我们可以看出,推理过程是从事实出发,试图使事实与规则的IF部相匹配,然后启用规则的THEN部分。
由此,产生式系统的问题求解过程的步骤可归纳如下:
1)暂存器初始化;
2)若存在未用规则前提能与暂存器相匹配则转3,否则转5;
3)使用规则,更新暂存器,并将所用规则做上标记;
4)暂存器是否包含解,若是,则终止求解过程,否则转2;
5)要求更多的关于问题的信息,若不能提供所要信息,则求解失败,否则更新暂存器并转2。
(三)产生式系统的推理解释
在推理过程中,我们也许会问:“系统在推理中是否应用了某条规则?”,“系统在推理中何时应用了某条规则?”,“系统为什么要证明某个结论?”,“系统是何时证明这个结论的?”。
诸如此类的问题,可以利用产生式的解释给予解决。方法是通过查阅推理过程中所用的产生式规则来回答为什么推理需要这些事实以及如何确立这些事实的。产生式系统之所以有这种能力主要是因为产生式系统对规则的形式作了严格的规定。例如。要确定如何得到所推断出的事实,产生式系统只需考虑那些用到的规则,即查找其结论部分与所推断的事实相符的规则。所需要的答案就是列出这些产生式规则以及有关这些规则的条件部分的信息。
例如,系统IDENTIFIER应用规则Ⅰ6的解释如图4-5所示,在推理过程中回到规则Ⅰ6。如果所提出的问题是:“你如何证明该动物是食肉动物?”只要向左边移动就可以找到答案。也就是说:应用规则Ⅰ6,并证明该动物是哺乳动物,有尖利的牙齿,有爪子,眼睛前视。如果所提问题是“为什么要证明该动物是哺乳动物?”这时,则向右移动,也就是,因为我们要应用规则Ⅰ6去证明该动物是食肉动物。
图4-5 产生式系统推理过程解释
(四)产生式系统的特点
产生式规则表示法有如下特点:
1)模块化:在众多规则所组成的规则库中,每条规则可自由增删、修改。
2)一致性:每条规则都具有相同格式,便于计算机自动推理。
3)自然性:“IF—THEN”结构是人类思维和会话的自然形式。
4)效率低:因问题求解是靠一系列的“匹配一冲突消解一操作”三阶周期实现,信息传递依赖于上下文。为维护模块性、一致性,也导致问题求解时,额外开销大。
5)规则表示法对复杂、大型及动态概念不能很好表示,因规则只是简单的条件语句。