第三章2 知识表示-产生式表示_r

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
计算效率
一 产生式系统
№6
1
产生式规则通常用于表示事物间的启发式
关联,因果关系,其基本形式为:
P Q
或者:
IF P then Q
P为规则激活使用的条件(或称前提) Q则指示规则激活时(即规则条件部分满足时)应该执 行的动作(或应该得出的结论)
№7
例子:
水被电解 生成氢气和氧气
小明很聪明∧小明很努力学习 小明学习好 x>y ∧y=z x>z
例:动物识别系统的规则库
№ 15
该产生式系统可以识别虎、金钱豹、斑马、长颈鹿、企鹅、 驼鸟、信天翁等七种动物 。规则库如下: r1: IF 该动物有毛发 THEN 该动物是哺乳动物 r2: IF 该动物有奶 THEN 该动物是哺乳动物
r3: IF 该动物有羽毛 THEN 该动物是鸟 r4: IF 该动物会飞 AND 会下蛋 THEN该动物是鸟 r5: IF 该动物吃肉 THEN 该动物是食肉动物 r6: IF 该动物有犬齿 AND 有爪 AND 眼盯前方 THEN 该动物是哺乳动物 r7: IF该动物是哺乳动物 AND 有蹄 THEN该动物是有蹄类动 物
知识表示方法-产生式表示
本节内容
№2
产生式系统的概念和内容 产生式系统的控制策略 产生式系统的分类
人工智能对知识表示方法的要求
表示能力 可理解性 便于知识的获取 便于搜索 便于推理
№3
№4
产生式表示起源于美国数学家波斯特(Post)于1943年提 出的称为产生式系统(Production System)的计算模型 目的是为了构造一种形式化的计算工具,并证明了它和图
元知识是产生式系统优化控制推理过程的关键
№ 35
识别-行动循环一个接一个地推动问题求解向目标 状态前进 ,不能反悔 不可回溯的优化控制,简单易行,对于注重找到解
答而不留意解答步骤(识别-行动循环个数)多少的应用 问题较为适合
如八数码游戏,文法分析等问题
№ 36
实现不可回溯优化控制的一种方式就是爬山法,控
1)规则库
№ 14
规则库是产生式规则的集合,用于描述应用领域的常
识和启发式知识,所以规则库就是产生式系统的知识库。
规则库是产生式系统赖以进行问题求解的基础。 在建立规则库时,要考虑以下问题: 1)有效地表达领域内的过程性知识。 如何把领域中的知识表达出来,即需要建立哪些产 生式规则? 不确定性知识如何表示? 规则库中的知识是否具有完整性?
№8
产生式规则的特点: • 在自然界中的各种知识单元间存在着大量的因果关系,所 以使用产生式规则表示非常方便
• 产生式规则和逻辑蕴涵式非常相似
• 逻辑蕴涵式是产生式规则的特殊形式,它只能表示确定性
知识,值只能是真或假
№9
产生式规则和传统程序设计语言中的条件语句的区别:
产生式规则左边不仅仅是一个布尔表达式,也可以是
№ 33
1、 无信息控制
应用“First”冲突解法去控制整个问题求解过 程,并相当于深度优先的盲目搜索方式
推理过程的每个识别-行动循环的识别阶段按
排列顺序自上而下地对规则库中的规则作激活检查,
第一条激活的规则就用于推进问题求解,然后循环进
行,直到推理成功或失败
2、 不可回溯的优化控制
№ 34
应用"Best"冲突解法去控制整个问题求解过程,相 当于应用启发式知识的搜索方式 服务于推理控制的知识是关于如何选取问题求解基 础知识(产生式规则)的知识,所以称之为"元知识" (Meta knowledge)
合适的操作 在一个循环的识别阶段,若有多于一条的规则激活, 就称引起了一个冲突 所谓 冲突解决就是基于某种控制策略去选定需要
执行的规则
№ 24
冲突解决的策略可以分为三大类: • First--选用首条激活的规则加以执行

尺 •
Best--选用已激活规则中最好的加以执行,
这里“最好”的评价依赖于应用领域制定的标
的规则按从优到劣的次序排列;
(4) 若rs为空,则返回真值F; (5) r:=MOVE-FIRST(rs); (6) PS-BACKTRACK(TRANSFORM(db,r)); (7) 返回语句(4)。
哺乳动物
(2)接着分别用r3,r4,r5,r6与综合数据库中的已知
事实进行匹配,均不成功。但当用r7与之匹配时,获得了
成功,此时执行r7并将其结论部分“该动物是有蹄类动物” 加入到综合数据库中,综合数据库的内容变为:
该动物身上有暗斑点,有长脖子,有长腿,有奶,有蹄,
是哺乳动物,是有蹄类动物
№ 27
All--执行所有激活的规则
r1: IF 该动物有毛发 THEN 该动物 是哺乳动物
№ 25
例如,在关于动物世界的产生式系统中,已知下列事实:
该动物身上有暗斑点,有长脖子,有长腿,有奶,有蹄
(1)首先从规则库中取出第一条规则r1,检查其前提是否 可与综合数据库中的已知事实匹配成功。
由于综合数据库中没有“该动物有毛发”这一事实,所以匹配不成功,
“鸟”等)及最终结论(如上例中的“虎”、“长
颈鹿”等)。
№ 21
典型的情况下,可以是表示为谓词公式的事实元素集;
但也可以是任何的数据结构,如向量、数组和表格等
例如:(Mammal,dog)、 MYCIN系统中:(特性 (Eat,dog,Meat) 对象 值 可信度因子)
如:“小王大约20岁” (age xiaowang 20 0.8) 综合数据库可视为推理过程中间结果的存贮池 随着中间结果的不断加入,使综合数据库描述的问题状 态逐步转变为目标状态
灵机有相同的计算能力
产生式系统是最古老并且是使用最广泛的知识表示方法
№5
在专家系统领域,多采用产生式规则来表示知识,包 括著名的DENDRAL和MYCIN
使用产生式规则,规则的条件部分不限于谓词公式,
可以是关系表达式和真值函数,且动作可以是任何操 作,所以具有更大灵活性和更高的概念效率
通过冲突消解策略,有效的控制推理过程,增强了
一组复杂的模式 产生式规则的控制流不是象传统程序语言中一条语句
向其下的一条语句传递,而且即使满足条件的规则被
激活也不一定立即执行(与冲突消解策略有关)。这 是两者的关键区别 产生式规则的规则之间是独立的,具有自包含性
条 件-动作型和前提-结论型 区别主要在于Q的不同
空格左移 空格上移 空格右移 空格下移
№ 30
问题叙述如下:一个在A城市工作的推销员需去几个
外地城市办理业务,每个城市只允许去一次,遍历这些城
市后返回A城市;已知各城市间的里程,要求寻找最短的 遍历路线。假设推销员需去4个外地城市B、C、D、E(图 3.3),很容易用产生式系统描述该问题求解任务
№ 31
制系统只需以应用领域相关的启发式知识指导“Best”冲 突解法的执行,一旦选定某条激活的规则,其余激活的规
则全部丢弃,不再予以考虑
但爬山法只适合于单一极值问题,即确保能推出解 答而不会陷入失败的问题
3、 可回溯的优化控制
№ 37
允许在推理进入失败点时返回到按时序最接近的推理分支点
№ 38
递归过程是实现回溯控制策略的有效(次搜索失败和 回溯)途径
二 控制策略
№ 32 从产生式系统的控制机制可知,选用合适的规则 是控制策
略的主要内容和成功的关键

一般图搜索策略也适用于作为产生式系统的控制策略
• 产生式系统以激活的规则(而非问题状态)作为试探性 选择的对象 • 不同之处在于产生式系统在失败回溯时可以对问
题状态做恢复处理 可以把产生式系统的控制策略分为两大类:无信 息控制和优化控制。后者又分为不可回溯和可回溯。
№ 16
r8: IF该动物是哺乳动物 AND 是嚼反刍动物 THEN该动物是有蹄类动物 r9: IF该动物是哺乳动物 AND 是食肉动物 AND 是黄褐色 AND 身上有暗斑点 THEN 该动物是金钱豹 r10: IF该动物是哺乳动物 AND 是食肉动物 AND 是黄褐 色 AND 身上有黑色条纹 THEN 该动物是虎 r11: IF该动物是有蹄类动物 AND 有长脖子 AND 有长腿 AND 身上有暗斑点 THEN 该动物是长颈鹿 r12: IF该动物是有蹄类动物 AND 身上有黑色条纹 THEN 该动物是斑马
算功能
x-1 > 1 ∧ null(y) => x:= 0
在本书中,不具体区别这两类规则,统一把P称为规 则的左部(也称为前件/条件部分),把Q称为规则的右部 (也称为后件/结论/行为部分)
№ 13
2、产生式系统组成
产生式系统组成:规则库、综合数据库和控制系统
规则库和综合数据库构成产生式系统的问题表示 控制系统则控制应用规则推出解答的全过程
R1: jo-1>=1 Siojo:=Sio(jo-1)∧ Sio(jo-1):=0 R2: io-1>=1 Siojo:=S(io-1)jo∧ S(io-1)jo:=0 R3: jo+1<=3 Siojo:=Sio(jo+1)∧ Sio(jo+1):=0 R4: io+1<=3 Siojo:=S(io+1)jo∧ S(io+1)jo:=0
首先令综合数据库的内容表示为城市名列表,初始 时该列表只包含城市A。 设计真值函数not-visit(x)指示未访问过城市x,真
值函数visit-all指示已遍历各城市,操作函数
move(x)指示去城市x并将x加进城市名列表
• 二条规则 R1: not-visit(x) move(x), R2: visit-all() move(A).
r1不能被用于推理。
然后取第二条规则r2进行同样的工作。显然,r2的前提“该动 物有奶”可与综合数据库中的已知事实匹配,因为在综合数据库中存
在“该动物有奶”这一事实。此时r2被执行,并将其结论部分,即
“该动物是哺乳动物”加入到综合数据库中。
№ 26 此时综合数据库的内容变为:
该动物身上有暗斑点,有长脖子,有长腿,有奶,有蹄,是
№ 17
r13: IF 该动物是鸟 AND 有长脖子 AND 有长腿 AND 不会飞 AND 有黑白二色 THEN 该动物是鸵鸟 r14: IF 该动物是鸟 AND 会游泳 AND 不会飞 AND 有黑白二色 THEN 该动物是企鹅 r15: IF 该动物是鸟 AND 善飞 THEN 该动物是信天翁 由上述规则很容易形成各种动物的推理链,例如虎和 长颈鹿的推理链:
№ 22
3)控制系统
控制系统是产生式系统的推理机,又称规则的 解释器,其驱动和控制整个系统的运行,基本的控
制流程是:
识别--行动
№ 23
在每个循环的识别阶段,控制系统在规则库中识别
条件为真的规则,使这些规则激活
然后在该循环的行动阶段,执行激活的规则,即执
行规则的右部指定的对于综合数据库的操作和任何其它
№ 18
№ 19
(2)对知识进行合理的组织与管理
对规则库中的知识进行适当的组织,采用合理的 结构形式,可使推理避免访问那些与当前问题求解无 关的知识,从而提高求解问题的效率。 如,对上述例子的规则库,可以分为两个子集:
№ 20
2) 综合数据库
综合数据库又称为事实库、上下文、黑板等。 它是一个用于存放问题求解过程中各种当前信息的 数据结构,例如问题的初始状态、原始证据、推理 中得到的中间结论(如上例中的“哺乳动物”,
前提-结论型规则更接近于前面介绍的演绎推理
规则
№ 11
若 某动物是哺乳动物,
且吃肉; 则 这种动物是食肉动物。
或表示为更便于计算机操作的形式化方式:
(Mammal ?x)∧ (Eat ?x Meat) (Carnivore ?x) ?x称为模式变量
№ 12
条件-动作型规则除左部类同于前提-结论型规则外,规则 右部可以是任意操作函数,不仅用于操作综合数据库(参见下 节),也可是屏幕、图像、文件操作和用于执行各种预定的计
• 递归过程算法可改写为服务于产生式系统的可回溯 优化控制
2.1.2节中第3小节的递归算法改写为可回溯优化控制: PS-BACKTRACK(db)
№ 39
(1) 若db指示了目标状态,则输出(显示)db作为解答, 算法成功结束; (2) 若db指示了失败状态,则返回真值F; (3) rs:=RULE-ACTIVATE(db),并用启发式知识对rs中
(3)在此之后,发现r11又可与综合数据库中的已知
事实匹配成功,并且推出了“该动物是长颈鹿”这一 最终结论。至此,问题的求解过程就可结束了。
产生式系统的控制机制就是不断地挑选可激活 的规则对综合数据库进行操作,直至得到解答
3、 应用实例
№ 28
八数码游戏
传教士与野人问题 旅行商问题 文法分析问题
№ 29
相关文档
最新文档