人工智能产生式系统

上传人:san****glu 文档编号:49479887 上传时间:2018-07-28 格式:PPT 页数:30 大小:351.50KB
返回 下载 相关 举报
人工智能产生式系统_第1页
第1页 / 共30页
人工智能产生式系统_第2页
第2页 / 共30页
人工智能产生式系统_第3页
第3页 / 共30页
人工智能产生式系统_第4页
第4页 / 共30页
人工智能产生式系统_第5页
第5页 / 共30页
点击查看更多>>
资源描述

《人工智能产生式系统》由会员分享,可在线阅读,更多相关《人工智能产生式系统(30页珍藏版)》请在金锄头文库上搜索。

1、Artificial Intelligence第二章 产生式系统 2.1 产生式系统概述 2.2 问题的表示 2.3 控制策略分类 2.4 产生式系统的类型 Artificial Intelligence2.1 产生式系统概述 在自然界的各种知识单元之间存在着大量的因果关系。这 是前提和结论之间的关系,可用产生式(或称规则)来表 示。产生式也称作规则,或产生式规则。 产生式(规则):前提和结论之间的关系式。表示形式:前提结论例:1. 如果获得学士学位就有资格考取硕士研究生2. 如果获得学士学位成绩名列前茅德育优良就有 资格推免上硕士 研究生 事实:无需前提条件的产生式,可用于表示已知的事实。表

2、示形式:事实Artificial Intelligence2.1.1 产生式系统的基本结构 三个基本部分:综合数据库、产生式规则、控制系统。 1、综合数据库是产生式使用的主要数据结构,它用来表述 问题状态或有关事实,对应于表示问题的说明式知识。 2、一组产生式规则构成了规则库,每一条规则形如:if 条件 then 行动 或 if 前提 then 结论例如1: if 某动物有羽毛 then 该动物是鸟类2: if 某动物是鸟 and 有长脖子 and 有长腿 and 不会 飞 then 该动物是鸵鸟 (前提结论)3: if 老虎在铁笼中 and 鸡在同一铁笼中 and 老虎饿了 then 老虎吃

3、掉这只鸡 (条件行动) Artificial Intelligence3、控制系统是规则的解释程序,它规定了选择一条可用 规则的原则和规则使用的方式 (推理方向),并根据综合数据库的信息,控制求解问题的过程。 4、产生式系统的特点: 相对固定的格式:均由左、右两部分组成 知识的模块化:知识元 、元知识 、高阶元知识;知 识的模块化使得知识库(规则)的补充和修改变得 非常容易 。 相互影响的间接性:“数据驱动”,是通过修改数 据库来间接实现 。 机器可读性 :机器识别产生式、语法检查和某种程 度上的语义检查 Artificial Intelligence2.1.2 产生式系统的基本过程 基本算法

4、如下 :过程PRODUCTION1DATA 初始数据库2Until DATA 满足结束条件之前,do:(匹配)3 Begin4在规则集中,选一条可应用于DATA的规则R(选择)5 DATA R 应用到 DATA 得到的结果 (执行)6 End 上述过程是 “匹配、选择、执行”的循环过程。 Artificial Intelligence2.2 问题的表示 用产生式系统求解问题,就是把一个问题的描述转化 成产生式系统的三个部分。其中问题的表示(即综合 数据库和规则集的描述)对问题的求解有很大的影响 。常用方法有两个:状态空间法和问题归约法。 状态空间法:找出所求问题的各种状态,通过对可能 的状态空

5、间的搜索求得一个解。(PRODUCTION过程 ) 问题归约法:在解决一个较为复杂的问题时,我们可 把问题分解为一些较为简单的子问题,通过对各个子 问题解答的搜索求得原问题的解答。 (SPLIT过程) Artificial Intelligence2.2.1 状态空间法 状态空间可用三元组(S,O,G)来描述, S状态集合 。状态是某种事实的符号或数据,任何类型的数据结构 都可以描述问题的状态。起始状态S0表示S的一个非空 子集,它是问题的现状或已知条件;目标状态G也是S 的一个非空子集,它可以是一个或多个要达到的目标, 也可是对某些状态性质的描述。O是操作算子(规则) 集,利用它将一个状态转

6、化为另一个状态. 中间状态:求解过程中的状态;状态空间:所有可能的 状态集合;状态转换:靠规则实现 问题求解:从S0出发,经过一系列操作变换,达到G, 即状态空间搜索问题。状态空间的一个解是一个有限的 规则序列: ,其中, 即为状态空间的一个解,解不一定唯一。Artificial Intelligence2.2.2 问题归约法 问题归约法也可用一个三元组(S0,O,P)来描述,其 中: S0是初始问题,即要求解的问题;P是本原问题集, 其中的每一个问题是不证明的,自然成立的; O操作算 子集,通过一个操作算子把一个问题化成若干个子问题 。 该方法是由问题出发,运用操作算子产生一些子问题, 对子

7、问题再运用操作算子产生子问题的子问题,这样一 直进行到产生的问题均为本原问题,则问题得解。 所有问题归约的最终目的是产生本原问题。问题归约法 是比状态空间法更一般的问题求解方法,如果在归约法 中,每运用一次操作算子,只产生一个子问题,则就是 状态空间法。 Artificial Intelligence2.2.3 举例 图2-1、八数码游戏 问题描述:给定一种初始布局(初始状态)和一个目 标的布局(目标状态),问如何移动将牌,实现从初 始状态到目标状态的转变。问题的解就是给出一个合 理的走步序列。 1综合数据库:就是要选择一种数据结构来表示将牌 布局。本例中,选用二维数组来表示布局较直观,其 数

8、组元素用 表示,其中, 且互不 相等,这样数组的每个具体取值矩阵就代表了一个棋 局状态。显然,该问题有 个状态。 Artificial Intelligence 2. 规则集:移动一块将牌(即走一步)就使状态发生 一次转变。有四种走法:空格左移、空格上移、空格 下移、空格右移。当然,每种走法都有条件,且可用 如下4条规则来模拟:(设 为数组第i行第j列的数码 元素, 为空格所在的行、列数值,即 ),则 规则1: (向左移一格) 规则2: (向上移一格) 规则3: (向右移一格) 规则4: (向下移一格) Artificial Intelligence 3.控制策略:是从规则集中选择规则并作用于

9、状态的一 种广义选取函数。确定某一策略后,就可以用算法的形 式给出程序。它从初始状态出发,通过不断寻求满足一 定条件的问题状态,最后到达目标状态。 2.3 控制策略分类 对当前的状态,只要某一条规则作用之后能生成合法的新状态 ,那么,这条规则就是可用规则。所以,产生式系统的运行表现出 一种搜索过程,在每一个循环中选一条规则试用,直到找到某一个 序列能产生一个满足结束条件的状态为止。 不同的控制策略能够产生不同的解,高效率的控制策略 能够走较少的步骤达到目标,但需要问题求解的足够知 识。 控制策略可分为两类:不可撤回方式(Irrevocable)和试探方式( Tentative)。Artific

10、ial Intelligence1)不可撤回方式: 思想: 利用问题给出的局部知识来决定如何选取 规则,不必考虑撤回已用过的规则,其优点是控制 简单。 例、爬山问题:人们在登山过程中,目标是爬上峰 顶,如何一步一步地向目标前进就是一个策略问题 。通常,人们利用高度随位置变化的函数H(P) 来引导爬山,这是一种不可撤回方式。Artificial Intelligence 假设登山人当前所处的位置 为P0,如果只存在四种走法 向东(x)、向西(-x )、向北(y)、向南(- y),这相当于4条规则, 那么这时可以用H(P)计算 一下不同方向迈出一步后高 度的变化情况。即相应地求 出z1=H(x)-

11、H0、 z2=H(-x)-H0、z3=H (y)-H0、z4=H(-y )-H0,然后选择z变化最 大的那一步攀登,到达新的 位置P,然后从P开始重复这 一过程直到到达山顶。 图2-2 爬山过程示意图Artificial Intelligence爬山算法: 1. 开始状态作为一个可能状态。 2. 从一个可能状态,应用可应用的规则集合生成所 有新的可能状态集。 3. 对该状态集中每一状态,进行: 状态测试,检查是否为目标,如果是,则停止 。 计算该状态的好坏,或者比较各状态的好坏。 4. 取状态集中最好状态,作为下一个可能状态。 5. 循环到第2步。Artificial Intelligence

12、图2-3 爬山法的三种状态 爬山算法的缺点:有时到达某一状态后,尽管它不是目标状态,但在测试 过程中又找不到比该状态更好的状态。三种情况: 局部极大点(多峰时处于非主峰):它比周围邻居状态 都好,但不是目标。 平顶:它与全部邻居状态都有同一个值。 山脊:如果搜索方向与山脊的走向不一致,则会停留在 山脊处。所以,用不可撤回方式来求解登山问题,需对测试函 数进行选择:这个函数应具有单极值,且这个极值对应 的状态就是目标。 Artificial Intelligence 例、以8数码为例:用“不在位”将牌个数(当 前状态与目标状态对应位置逐一比较后有差异的 将牌总个数)并取其负值作为状态描述的函数.

13、-W(n)(n为任一状态)因此有: 初始状态 -4,目标状态 0。 爬山法选取规则的原则:选取使用规则后生成的 新状态的函数值有最大增长的规则,如没有使函 数值增长的规则,则选取使函数值不减少的规则 ,若这种规则也没有,则过程停止。 对初始状态可应用的规则有3个,比较爬山函数 值后,所选取的规则为向上。爬山法搜索过程如 下:有圆圈的数字为爬山函数值,图2-4中列出了 求解过程所出现的状态序列。 Artificial Intelligence2)试探方式 试探方式又分为两种:回溯方式和图搜索方式。 回溯方式:在选择一条规则时要建立一个回溯点,当计算 遇到困难,不能得到一个解时,使状态返回到原来的

14、回溯 点上,从那里改选另外一条可应用的规则。 对八数码问题而言,在3种情况下应考虑回溯: (1)、新生成的状态在通向目标的路径上已经出现过; (2)、从初始状态开始,在搜索深度范围所规定的规则 数目达到后仍没有找到目标状态; (3)、对当前状态,再没有可应用的规则。 假如规定的搜索深度为6层,回溯策略应用于八数码游戏时 的一部分搜索图可如图2-5所示(思考作业 ) Artificial Intelligence 图搜索方式: 如果把问题求解过程用图或树的这种结 构来描述,即图中的每一个节点代表问题的状态, 节点间的弧代表应用的规则,那么问题的求解空间 就可由图来表示。图搜索方式就是用某种策略选

15、择 应用规则,并把状态变化过程用图结构记录下来, 一直到得到解为止,即从图中搜索出含有解路径的 子图来。 图搜索策略求解八数码问题采用的是一种穷举方式 ,对每一个状态可应用的所有规则都要去试,并把 结果记录下来。(图2-6) 这样,求得一条解路径要搜索问题的求解空间。对 于状态空间较大的问题,需要利用与问题有关的知 识来引导规则的选择,以便在较窄的空间内找到问 题的解。 Artificial Intelligence 5个城市旅行商问题的地图如 图所示, 求从A出发经B、C 、D、E再回到A的最短路径 。 问题的表示:若每个城市用一 个字母表示,则综合数据库可 用一个字母组成的表或字符串 来表示,如(A)表示初始状 态,(A*A)表示目标状 态,(A*)表示访问两个城 市后的当前状态。例如:旅行商问题:一个推销员要到几个城市去办理业务,城市间里 程数已知,问题的提法是:从某个城市出发,每个城市只允许访问一 次,最后又回到原来的城市,求一条最短距离的路径。图2-7 旅行商问题的地图 Artificial Intelligence 规则集:1)下一步走向城市 A;2)下一步走向城市B; , 5)下一步走向城市E; 对当前的状态,只要某一条 规则作用之后能生成合法的 新状态,那么这一条规则就 是可应用规则。 (不重复走到同一城市,在没有 转完所有城市时,不能走向 城市

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 经济/贸易/财会 > 综合/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号