人工智能经典推理讲稿.ppt
《人工智能经典推理讲稿.ppt》由会员分享,可在线阅读,更多相关《人工智能经典推理讲稿.ppt(98页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、人工智能经典推理第一页,讲稿共九十八页哦3.1 3.1 图搜索策略图搜索策略 图搜索控制策略图搜索控制策略一种在图中寻找路径的方法。图中每个节点对应一个状态,每条连线对应一个操作符。这些节点和连线(即状态与操作符)又分别由产生式系统的数据库和规则来标记。求得把一个数据库变换为另一数据库的规则序列问题就等价于求得图中的一条路径问题。第二页,讲稿共九十八页哦一般图搜索过程一般图搜索过程 状态空间搜索的状态空间搜索的基本思想基本思想是:先把问题的初始状态作为当前是:先把问题的初始状态作为当前扩展节点对其进行扩展,生成一组子节点,然后检查问题的目扩展节点对其进行扩展,生成一组子节点,然后检查问题的目标
2、状态是否出现在这些子节点中。若出现,则搜索成功,找到标状态是否出现在这些子节点中。若出现,则搜索成功,找到了该问题的解;若没出现,则再按照了该问题的解;若没出现,则再按照某种搜索策略某种搜索策略从已生成从已生成的子节点中选择一个节点作为当前扩展节点。重复上述过程,的子节点中选择一个节点作为当前扩展节点。重复上述过程,直到目标状态出现在子节点中或没有可供扩展的节点为止。直到目标状态出现在子节点中或没有可供扩展的节点为止。搜索术语(搜索术语(用图来描述状态空间)用图来描述状态空间)节点:对应于状态描述节点:对应于状态描述节点深度:根节点的深度为节点深度:根节点的深度为0,其他节点的深度规定为其他节
3、点的深度规定为父节点深度加父节点深度加1,即即dn+1=dn+1。第三页,讲稿共九十八页哦扩展节点:应用操作符将上一状态(节点扩展节点:应用操作符将上一状态(节点ni)变迁到下一变迁到下一状态(节点状态(节点nj),),ni表表示被扩展节点,示被扩展节点,nj 即是由即是由ni 扩展出的扩展出的子节点。子节点。路径:从节点路径:从节点ni到到nk的路径是由相邻节点间的弧线构成的折的路径是由相邻节点间的弧线构成的折线,通常要求路径是无环的,否则会导致搜索过程进入死循环。线,通常要求路径是无环的,否则会导致搜索过程进入死循环。搜索图:在搜索解答路径的过程中只画出搜索时直接涉及到搜索图:在搜索解答路
4、径的过程中只画出搜索时直接涉及到的节点和弧线,构成所谓的搜索图。的节点和弧线,构成所谓的搜索图。Open表:存放已经生成但未扩展节点表:存放已经生成但未扩展节点Close表:存放已扩展或将要扩展的节点表:存放已扩展或将要扩展的节点S0表示问题的初始状态表示问题的初始状态G表示搜索过程所得到的搜索图表示搜索过程所得到的搜索图M表示当前扩展节点新生成的且不为自己先辈的子节表示当前扩展节点新生成的且不为自己先辈的子节点集。点集。第四页,讲稿共九十八页哦开始开始把把S放入放入OPEN表表OPEN表为空表?表为空表?把第一个节点把第一个节点(n)从从OPEN表移至表移至CLOSED表表n为目标节点吗?为
5、目标节点吗?把把n的后继节点放入的后继节点放入OPEN表的末端,表的末端,提供返回节点提供返回节点n的指针的指针修改指针方向修改指针方向重排重排OPEN表表失败失败成功成功图图3.1 图搜索过程框图图搜索过程框图是是是是否否否否图搜索过程图图搜索过程图树树/不修改指针不修改指针;图图/修改修改指针指针;修改指针修改指针:找最优解找最优解第五页,讲稿共九十八页哦3.2 盲目搜索 特点:不需重排特点:不需重排OPENOPEN表表种类:宽度优先、深度优先、等代价搜索等。种类:宽度优先、深度优先、等代价搜索等。3.2.1 宽度优先搜索 定义 以接近起始节点的程度逐层扩展节点的搜索方法。特点:一种高代价
6、搜索,但若有解存在,则必能找到它。算法第六页,讲稿共九十八页哦开始开始把把S放入放入OPEN表表OPEN表为空表?表为空表?把第一个节点把第一个节点(n)从从OPEN表移至表移至CLOSED表表是否有后继节点是否有后继节点为目标节点?为目标节点?扩展扩展n,把,把n的后继节点放入的后继节点放入OPEN表的末表的末端,提供返回节点端,提供返回节点n的指针的指针失败失败成功成功图图3.2 宽度优先算法框图宽度优先算法框图是是否否是是否否3.2 盲目搜索第七页,讲稿共九十八页哦例:例:八数码难题八数码难题 33九九宫宫棋棋盘盘,放放置置数数码码为为1-8的的8个个棋棋牌牌,剩剩下下一一个个空空格格,
7、只只能通过棋牌向空格的移动来改变棋盘的布局。能通过棋牌向空格的移动来改变棋盘的布局。求解的问题求解的问题给定初始布局(即初始状态)和目标布局(即给定初始布局(即初始状态)和目标布局(即目标状态),如何移动棋牌才能从初始布局到达目标布局目标状态),如何移动棋牌才能从初始布局到达目标布局 解答路径解答路径就是一个合法的走步序列就是一个合法的走步序列 用宽度优先搜索方法解决该问题:用宽度优先搜索方法解决该问题:为问题状态的表示建立数据结构:为问题状态的表示建立数据结构:33的一个矩阵的一个矩阵,*矩阵元素矩阵元素S ij0,1,8;其中其中1i,j3,*数字数字0指示空格,指示空格,*数字数字1-8
8、指示相应棋牌。指示相应棋牌。第八页,讲稿共九十八页哦制定操作算子集:制定操作算子集:*直观方法直观方法为每个棋牌制定一套可能的走步:左、上、为每个棋牌制定一套可能的走步:左、上、右、下四种移动。这样就需右、下四种移动。这样就需32个操作算子。个操作算子。*简易方法简易方法仅为空格制定这仅为空格制定这4种走步种走步,因为只有紧靠空格,因为只有紧靠空格的棋牌才能移动。的棋牌才能移动。*空格移动的唯一空格移动的唯一约束约束是不能移出棋盘。是不能移出棋盘。初始状态初始状态S S0 0:2 3 目标状态目标状态S Sg g:1 2 3 1 8 4 8 0 4 7 6 5 7 6 5第九页,讲稿共九十八页
9、哦2 31 8 47 6 5 2 31 8 47 6 52 8 31 47 6 52 31 8 47 6 52 8 31 47 6 52 8 31 6 47 52 8 3 1 47 6 52 8 31 6 47 52 8 31 6 4 7 52 8 37 1 4 6 5 8 32 1 47 6 52 81 4 37 6 52 8 31 4 57 6 1 2 37 8 4 6 51 2 38 47 6 51256731 2 3 8 47 6 5目标目标82 3 41 8 7 6 54宽度优先搜索宽度优先搜索91011121314151617从图中得,解的路径是:从图中得,解的路径是:S0 381
10、7第十页,讲稿共九十八页哦3.2.2 深度优先搜索 定义 首先扩展最新产生的(即最深的)节点。算法 防止搜索过程沿着无益的路径扩展下去,往往给出一个节点扩展的最大深度深度界限。与宽度优先搜索算法最根本的不同在于:将扩展的后继节点放在OPEN表的前端。(算法框图见教材)3.2 盲目搜索第十一页,讲稿共九十八页哦例:例:八数码难题八数码难题 2 31 8 47 6 5 2 31 8 47 6 52 8 31 47 6 52 31 8 47 6 52 8 31 47 6 52 8 31 6 47 52 8 3 1 47 6 52 8 31 6 47 52 8 31 6 4 7 51 2 37 8 4
11、 6 51 2 38 47 6 52 8 3 6 41 7 512341 2 3 8 47 6 5目标目标深度优先搜索深度优先搜索第十二页,讲稿共九十八页哦2 31 8 47 6 5 2 31 8 47 6 52 8 31 47 6 52 31 8 47 6 52 8 31 47 6 52 8 31 6 47 52 8 3 1 47 6 52 8 31 6 47 52 8 31 6 4 7 52 8 37 1 4 6 5 8 32 1 47 6 52 81 4 37 6 52 8 31 4 57 6 1 2 37 8 4 6 51 2 38 47 6 52 8 3 6 41 7 52 8 31
12、 67 5 48 32 1 47 6 52 8 37 1 46 52 81 4 37 6 52 8 31 4 57 6123456789101112131 2 3 8 47 6 5目标目标设深度界限设深度界限d dm m=4=4例:例:八数码难题八数码难题 第十三页,讲稿共九十八页哦3.2.3 等代价搜索 定义 是宽度优先搜索的一种推广,不是沿着等长度路径断层进行扩展,而是沿着等代价路径断层进行扩展。搜索树中每条连接弧线上的有关代价,表示时间、距离等花费。算法 若所有连接弧线具有相等代价,则简化为宽度优先搜索算法。3.2 盲目搜索第十四页,讲稿共九十八页哦3.3 启发式搜索特点:重排OPEN表
13、,选择最有希望的节点加以扩展种类:有序搜索(A算法)、A*算法等3.3.1 启发式搜索策略和估价函数盲目搜索可能带来组合爆炸盲目搜索可能带来组合爆炸启发式信息启发式信息 用来加速搜索过程的有关问题领域的用来加速搜索过程的有关问题领域的特征信息特征信息。包括:。包括:用于决定要扩展的下一个节点的信息;用于决定要扩展的下一个节点的信息;在扩展一个节点时,用于决定要生成哪一个或哪几个后继节点在扩展一个节点时,用于决定要生成哪一个或哪几个后继节点的信息;的信息;用于决定某些应该从搜索树中抛弃或修剪的节点的信息;用于决定某些应该从搜索树中抛弃或修剪的节点的信息;启发式搜索启发式搜索使用使用启发式信息指导
14、启发式信息指导的搜索过程称为的搜索过程称为启发式搜索启发式搜索.第十五页,讲稿共九十八页哦 估价函数估价函数用来估算节点处于最佳求解路径上的希望程度的函数用来估算节点处于最佳求解路径上的希望程度的函数f(n)=g(n)+h(n)n 搜索图中的某个当前被扩展的节点;搜索图中的某个当前被扩展的节点;f(n)从从初初始始状状态态节节点点s,经经由由节节点点n到到达达目目标标节节点点ng,估估计的最小路径代价;计的最小路径代价;g(n)从从s到到n 的实际路径代价;的实际路径代价;h(n)从从n到到ng,估计的最小路径代价。估计的最小路径代价。例例八数码难题八数码难题 估价函数:估价函数:f(n)=d
15、(n)+w(n)其中:其中:d(n)为为n的深度的深度 w(n)为不在位的棋子数为不在位的棋子数如起始节点如起始节点 2 8 31 6 47 0 5则起始节点则起始节点S0的估价函数值为的估价函数值为:f(S0)=0+4=4第十六页,讲稿共九十八页哦3.3.2 有序搜索实质 选择OPEN表上具有最小f值的节点作为下一个要扩展的节点。3.3 启发式搜索(1)全局择优搜索全局择优搜索:选择选择OPEN表上具有最小表上具有最小f值的节点作为下一个要扩展的节值的节点作为下一个要扩展的节点,即总是选择最有希望的节点作为下一个要扩展的节点。点,即总是选择最有希望的节点作为下一个要扩展的节点。(2)局部择优
16、搜索局部择优搜索:从刚生成的子节点中选择具有最小从刚生成的子节点中选择具有最小f值的节点作为下一值的节点作为下一个要扩展的节点。个要扩展的节点。第十七页,讲稿共九十八页哦开始开始把把S放入放入OPEN表,计表,计算估价函数算估价函数 f(s)OPEN表为空表?表为空表?选取选取OPEN表中表中f值最小的节点值最小的节点i放入放入CLOSED表表i为目标节点吗?为目标节点吗?扩展扩展i,得后继节点,得后继节点j,计算,计算f(j),提供返回节,提供返回节点点i的指针,利用的指针,利用f(j)对对OPEN表重新排序,调表重新排序,调整亲子关系及指针整亲子关系及指针失败失败成功成功图图3.9 有序搜
17、索算法框图有序搜索算法框图是是否否是是否否3.3 启发式搜索算法第十八页,讲稿共九十八页哦 例子八数码难题(8-puzzle problem)12384567(目标状态)12384567(初始状态)八数码难题的有序搜索树见下图:3.3 启发式搜索第十九页,讲稿共九十八页哦5714563123845671238456712384567(4)(6)(6)2123845671238456712384567(6)(5)(5)1238456712 384567(5)(7)1238456712384567(6)(7)12384567(5)813245671 2384567(5)(7)图3.10 八数码难题
18、的有序搜索树123846(4)73.3 启发式搜索5第二十页,讲稿共九十八页哦3.3.3 A*算法估价函数的定义:估价函数的定义:对节点对节点n n定义定义f f*(n)=g*(n)+h*(n),(n)=g*(n)+h*(n),表示从表示从S S开始约束通过节点开始约束通过节点n n的一条最佳路径的代价。的一条最佳路径的代价。希望估价函数希望估价函数f f 定义为:定义为:f(n)=g(n)+h(n)f(n)=g(n)+h(n)g g是是g*g*的估计的估计 ,h h是是h*h*的估计的估计3.3 启发式搜索g*(n):从从s到到n的最小路径代价值的最小路径代价值h*(n):从从n到到g的最小
19、路径代价值的最小路径代价值f*(n)=g*(n)+h*(n):从从s经过经过n到到g的最小路径的最小路径的总代价的总代价值值g(n)、h(n)、f(n)分别是分别是g*(n)、h*(n)、f*(n)的估计值的估计值g(n)g(n)通常选择为当前所找到的从初始节点通常选择为当前所找到的从初始节点S S到节点到节点n n的的“最佳最佳”路路径的代价值,显然有径的代价值,显然有g(n)g(n)g*(n)g*(n)第二十一页,讲稿共九十八页哦在在A算法中,如果满足条件:算法中,如果满足条件:(1)(1)g(n)是对是对g*(n)的估计,且的估计,且g(n)0;(2)h(n)是是h*(n)的下界,即对任
20、意节点的下界,即对任意节点n均有均有 0h(n)h*(n)则则A算法称为算法称为A*算法算法A*算法的定义:算法的定义:定义定义1 在在GRAPHSEARCH过程中,如果第过程中,如果第8步的重排步的重排OPEN表是依据表是依据f(n)=g(n)+h(n)进行的,则称该过程为进行的,则称该过程为A算法算法。定义定义2 在在A算法中,如果对所有的算法中,如果对所有的n存在存在h(n)h*(n),则称则称h(n)为为h*(n)的下界,它表示某种偏于保守的估计。的下界,它表示某种偏于保守的估计。定义定义3 采用采用h*(n)的下界的下界h(n)为启发函数的为启发函数的A算法,称为算法,称为A*算法算
21、法。当。当h=0时,时,A*算法就变为有序搜索算法。算法就变为有序搜索算法。第二十二页,讲稿共九十八页哦 A*算法的可纳性算法的可纳性 对任一个图,存在从对任一个图,存在从S S到目标的路径,如果一个搜索算法到目标的路径,如果一个搜索算法总是结束在一条从总是结束在一条从S S到目标的最佳路径上,则称此算法是可采纳的。到目标的最佳路径上,则称此算法是可采纳的。算法算法A A*保证只要最短路径存在,就一定能找出这条路径,所以保证只要最短路径存在,就一定能找出这条路径,所以算法算法A A*是可纳的。是可纳的。A*算法应用举例算法应用举例 八数码难题八数码难题 估价函数:估价函数:f(n)=d(n)+
22、w(n)f(n)=d(n)+w(n)其中:其中:d(n)d(n)为为n n的深度的深度 w(n)w(n)为为不在位的棋子数不在位的棋子数 取取h(n)=w(n),h(n)=w(n),则有则有w(n)hw(n)h*(n),h(n)(n),h(n)满足满足A*算法的限制条件。算法的限制条件。第二十三页,讲稿共九十八页哦1238476528316475初始状态初始状态目标状态目标状态 在八数码难题中在八数码难题中,令估价函数令估价函数 f(n)=d(n)+p(n)f(n)=d(n)+p(n)启发函数启发函数h(n)=p(n),h(n)=p(n),p(n)p(n)为不在位的棋子与其目标位置为不在位的棋
23、子与其目标位置的的距离之和距离之和,则有,则有p(n)p(n)hh*(n),(n),满足满足A*算法的限制条件。算法的限制条件。第二十四页,讲稿共九十八页哦2 8 31 6 47 52 8 31 47 6 52 8 31 6 4 7 52 8 31 6 47 52 31 8 47 6 52 8 3 1 47 6 52 8 31 47 6 5 2 31 8 47 6 52 31 8 47 6 51 2 3 8 47 6 51 2 38 47 6 51 2 37 8 4 6 5目标12345h=5,g=0,f=5h=6,g=1,f=7h=4,g=1,f=5h=6,g=1,f=7h=5,g=2,f=
24、7h=3,g=2,f=5h=5,g=2,f=7h=2,g=3,f=5h=4,g=3,f=7h=1,g=4,f=5h=0,g=5,f=5第二十五页,讲稿共九十八页哦w(n)w(n)不不在在位位的的棋棋子子数数,不不够够贴贴切切,错错误误选选用用节节点点加加以以扩展。扩展。p(n)p(n)更更接接近近于于h h*(n)(n)的的h(n)h(n),其其值值是是节节点点n n与与目目标标状状态态节节点点相相比比较较,每每个个错错位位棋棋子子在在假假设设不不受受阻阻拦拦的的情情况况下下,移移动动到目标状态相应位置所需走步的总和。到目标状态相应位置所需走步的总和。p(n)p(n)比比w(n)w(n)更更接
25、接近近于于h h*(n)(n),因因为为p(n)p(n)不不仅仅考考虑虑了了错错位位因因素素,还考虑了错位的距离(移动次数)。还考虑了错位的距离(移动次数)。说明说明h h值越大值越大,启发功能越强启发功能越强,搜索效率越高搜索效率越高.特别地特别地(1)(1)h(n)=h*(n)h(n)=h*(n)搜索仅沿最佳路径进行搜索仅沿最佳路径进行,效率最高效率最高.(2)(2)h(n)=0h(n)=0 无启发信息无启发信息,盲目搜索盲目搜索,效率低效率低.(3)(3)h(n)h*(n)h(n)h*(n)是一般的是一般的A A算法算法,效率高效率高,但不能保证找到最佳路径但不能保证找到最佳路径.有时为
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 人工智能 经典 推理 讲稿
限制150内