第2章. 产生式系统
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2 问题的表示
• 产生式运用的方法:把问题的描述转化成系统的 三个部分 – 基础:问题的表示(综合数据库和规则集) • 类型:状态空间法和问题归约法 • 状态空间法:找出所求问题的各种状态,通过对 可能的状态空间的搜索求得一个解。 (PRODUCTION过程) • 问题归约法:在解较复杂的问题时,将问题分解 为一些较简单的子问题,通过对各个子问题解答 的搜索求得原问题的解答。 (SPLIT过程)
Artificial Intelligence
控制策略:是从规则集中选择规则并作用于 状态的一种广义选取方式,如 左、右、上、 下 (优先级别)。
– 确定某一策略后,就可编程序完成算法
• 系统从初始状态出发,通过不断寻求满足 一定条件的问题状态,最后到达目标状态
Artificial Intelligence
X
爬山过程示意图
Artificial Intelligence
• 分析:假设登山人当前所处的位置为P0 (高度为 H0),如果只存在四种走法: – [向东(△x)、向西(-△x )、 向北 (△y)、向南(-△y)], • 这相当于4条规则,那么这时可以用 H(P)计 算不同方向迈出一步后高度的变化情况。 – 即相应地求出 △z1 =H(△x)-H0、 △z2=H (-△x)-H0、△z3=H(△y)-H0、△z4=H(△y)-H0,然后选择 △z 变化最大的那一步 攀登,到达新的位置 P,然后从 P 开始重复 这一过程直到到达山顶。
该状态的所有规则 6 用完,回溯到 5 左下 2)
7
下
8 6 3 2 4 1 7 5
6
左上右下
同状态4,回溯到5
1)百度文库
8 3 2 6 4 1 7 5
左
下
8 3 4 2 6 1 7 5
7
2)
左
8 6 3 2 4 1 7 5
7
同状态5,回溯到6
用了6条规则,未找 到解,回溯到 6
利用回溯策略的部分搜索图
Artificial Intelligence
3 控制策略分类
• 不同的控制策略能够产生不同的解,高效率 的控制策略能够走较少的步骤达到目标,但 需要问题求解的足够知识。 • 核心问题: 如何进行规则的选取? • 两类:不可撤回方式和试探方式。
• 1)不可撤回方式:
– 思想: 利用问题给出的局部知识来决定如何选
取规则,不必考虑撤回已用过的规则
Artificial Intelligence
2 8 3 1 6 4 7 5
1
左
2 8 3 1 6 4 7 5
2
上
2 8 3 6 4 1 7 5
3
上
8 3 2 6 4 1 7 5
4
左上右 右
8 3 2 6 4 1 7 5
5
上右
上右下
右下
左右下
1)
左
8 3 2 6 4 1 7 5
6
3)
右
8 3 2 6 4 1 7 5
Artificial Intelligence
爬山法的三种状态
缺点:容易出现解的停滞,三种情况: ⑴ 局部极大点(多峰时处于非主峰):它比周围邻 居状态都好,但不是目标。 ⑵ 平顶:它与全部邻居状态都有同一个值。 ⑶ 山脊:如果搜索方向与山脊的走向不一致,则有 可能会停留在山脊处。 使用的限定条件:如果测试函数具有单极值,那 Artificial Intelligence 么这个极值对应的状态就是目标。
Artificial Intelligence
2.1 状态空间法
• 三元组(S,O,G)来描述, S 状态集合、起 始状态S0 、中间状态Si 、目标状态G . O 是操 作算子(规则集). • 状态空间:所有可能的状态集合;状态转换: 靠规则实现. • 问题求解:从S0出发,经过一系列操作变换, 达到G,即状态空间搜索问题。状态空间的一 个解是一个有限的规则序列: O O O S0 S1 S2 G ,其中, O1 , , Ok 即为状态空间的一个解,解不一定唯一 . Artificial Intelligence
Artificial Intelligence
1.1 产生式系统的基本结构
三部分:综合数据库、产生式规则、控制系统。 1 综合数据库:数据结构,问题状态或有关事实 (表示问题的信息) 2 一组产生式规则构成了规则库(知识) 每一条规则形如: if 条件 then 行动 或 if 前提 then 结论 3 控制系统:解释程序或执行程序,选择规则的原 则和规则使用的方式 (推理方向),并根据综合数据 库的信息,控制求解问题的过程(控制策略)(推 理引擎) Artificial Intelligence
W=0
2)试探方式
• 种类:回溯方式和图搜索方式 • 回溯方式:在选择一条规则时要建立一个回溯点, 当计算遇到困难,不能得到一个解时,使状态返回 到原来的回溯点上,从那里改选另外一条可应用的 规则。 • 八数码问题: 存在 3 种回溯情况 (1)新生成的状态已经出现过; (2)在给定的搜索深度内没有找到目标状态; (3)当前状态再无可应用的规则。 • 示例: 回溯策略搜索图 (搜索深度为6层) .
各组成成分的特点
• 综合数据库:依据推理情况内容动态
变化。
• 规则:有相对固定的格式。无序性与模
块化,易补充和修改。
• 控制系统:如何应用规则。与问题无关,
可分匹配、冲突解决和操作三步。
Artificial Intelligence
控制系统
规则库
综合数据库
• 数据、知识和控制相互独立。 • 相互影响的间接性:“数据驱动”,是通过修 改数据库来间接实现。 • 关系: 综合数据库是基础,产生式规则是进行 推理的依据, 控制系统是中枢。 • 重要部分: 控制系统用来控制和协调综合数据 库、规则库的运行,包含了推理方式和控制策 略,故是产生式系统的中枢。
1
下
8 1 3 2 4 7 6 5
6
W=-4
2
上
2 8 3 1 4 7 6 5
3
W=-3
W=-3 左
左
8 1 3 2 4 7 6 5
7
上
2 3 1 8 4 7 6 5
W=-3
8
W=-3
4
左
2 3 1 8 4 7 6 5
2 8 3 1 4 7 6 5
3
W=-3
上
1 3 8 2 4 7 6 5
上
8 3 2 1 4 7 6 5
Artificial Intelligence
1.2 产生式系统的基本过程
PRODUCTION 过程 1.DATA 初始数据库 (初态) 2.Until DATA 满足结束条件之前(目标态),do: (匹配) 3. { 4.在规则集中,选一条可应用于DATA的规则R (选择) 5. DATA R 应用到 DATA 得到的结果 (执行) 6. } Artificial Intelligence 上述过程是 “匹配、选择、执行 ”的循环过程
4
W=-2
9
W=-2
5
右
1 3 8 2 4 7 6 5
W=-3
5
下
1 2 3 8 4 7 6 5
W=-1
1 0
W=-1
6
右
8 3 2 1 4 7 6 5
下
1 2 3 8 4 7 6 5
右
1 2 3 8 4 7 6 5
W=-3
W=0
Artificial Intelligence
八数码问题各状态的爬山函数值
1 2 k
2.2 问题归约法
• 三元组(S0,O,P)来描述,S0是初始问题,即 要求解的问题;P是本原问题集; O操作算子集, 通过一个操作算子把一个问题化成若干个子问题 • 思路:由问题出发,运用操作算子产生一些子问 题,对子问题再运用操作算子产生子问题的子问 题,这样一直进行到产生的问题均为本原问题, 则问题得解。 • 特点:最终目的是产生本原问题。 • 异同:更一般的问题求解方法。 ( 思考: 如果在归约法中,每运用一次操作算子, 只产生一个子问题,那么„. )
第二章 产生式系统
1 2 3 4 产生式系统概述 问题的表示 控制策略分类 产生式系统的类型
Artificial Intelligence
1 产生式系统概述
• 自然界中各种知识单元间存在着大量的因果关系 • 产生式(规则):前提和结论之间的关系式 表示形式:前提结论 例: 1. 如果获得学士学位 就有资格考取硕士研究 生 2. 如果获得学士学位 成绩名列前茅德育优良 就有资格推免上硕士 研究生 • 事实:无需前提条件,可用于表示已知的事实 表示形式:事实
if
i0 2
then
Si0 j0 S(i0 1) j0 , S(i0 1) j0 0;
• 规则3: (向右移一格) if j0 2 then Si0 j0 Si0 ( j0 1) , Si0 ( j0 1) 0; • 规则4: (向下移一格) if i0 2 then Si0 j0 S(i0 1) j0 , S(i0 1) j0 0;
规则集:移动一块将牌(即走一步)就使状态发生 一次转变。四种走法:空格左移、空格上移、空 格下移、空格右移。设 Sij为数组第i行第j列的数码 i0 , j0 为空格所在的行、列数值,即 Si j 0,则 元素, 0 0 • 规则1: (向左移一格) if j0 2 then Si0 j0 Si0 ( j0 1) , Si0 ( j0 1) 0; • 规则2: (向上移一格)
• 8 数码游戏实例: 用“不在位”将牌个数 (当前状态与目标状 态对应位置逐一比较后有差异的将牌总个 数) 并取其负值作为状态描述的测试函数. - W(n)(n为任一状态) • 初始状态的函数值为 -4,目标状态 0。
1 2 8 1 7 7 2 8 6 6 3 3 4 4 5 5
Artificial Intelligence
Artificial Intelligence
爬山算法流程:
1. 开始状态: 一个可能状态; 2. 从该状态,试着应用可应用的规则集合生成所有 新的可能状态集; 3. 对该状态集中每一状态,进行: ⑴ 状态测试,检查是否为目标,如果是,则停止; ⑵ 计算该状态的好坏,或者比较各状态的好坏; 4. 取状态集中最好状态,作为下一个可能状态。 5. 循环到第 2 步。
Artificial Intelligence
2.3 举例--八数码游戏
2 1 7 8 6 3 4 5 1 8 7 6 2 3 4 5
• 问题描述:给定一种初始布局和一个目标布局,问 如何移动将牌(合理的走步序列),实现从初始状 态到目标状态的转变。 • 综合数据库:表示将牌布局的一种数据结构。选用 二维数组来表示布局较直观,其数组元素用 {S表示, ij } 其中 1 i, j 3, Sij {(空) 0 ,1,且互不相等,这样数组 ,8} 的每个具体取值矩阵就代表了一个棋局状态。 思考: 该问题有多少 个状态? Artificial Intelligence
• 爬山法选取规则的方法: 1)优先选取使用规则后生成的新状态的函 数值有最大增长的规则; 2)其次选取使函数值不减少的规则; 3)若这种规则也没有,则过程停止。 • 搜索过程如下图: 有圆圈的数字为节点的扩展顺序号
Artificial Intelligence
1 2 3 8 4 7 6 5
2 8 3 1 6 4 7 5
Artificial Intelligence
Artificial Intelligence 八数码游戏的部分搜索树
产生式系统求解示例: 旅行商问题:一个推销员要到几个城市去办理业务, 城市间里程数已知,问题的提法是:从某个城市出发, 每个城市只允许访问一次,最后又回到最初出发的城 市,求一条最短距离的路径。 B
– 优点: 控制简单
Artificial Intelligence
• 例、爬山问题:人们 在登山过程中,目标 是爬上峰顶,如何一 步一步地向目标前进 就存在一个策略问题. • 如果利用高度随位置 变化的函数 H(P) 来引导爬山,这就是 一种不可撤回方式。
Z Y
z0 y0
P0(x0,y0,z0)
x0
• 图搜索方式: 如果把问题求解过程用图或树 的这种结构来描述,即图中的每一个节点代 表问题的状态,节点间的弧代表应用的规则, 那么问题的求解空间就可由图来表示。 • 图搜索方式就是用某种策略选择应用规则, 并把状态变化过程用图结构记录下来,一直 到得到解为止,即从图中搜索出含有解路径 的子图来。 • 示例: 对每一个状态可应用的所有规则都要 去试,并把结果记录下来。(穷举方式)