223-知识表示与问题求解(状态空间法)讲解课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《223-知识表示与问题求解(状态空间法)讲解课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 223 知识 表示 问题 求解 状态 空间 讲解 课件
- 资源描述:
-
1、1智能控制技术上海大学机电工程与自动化学院杜鑫 自动化系仪自教研室22.2 知识表示与问题求解知识表示知识表示与问题求解与问题求解自动化系仪自教研室32.2 知识表示与问题求解知识表示知识表示与问题求解与问题求解自动化系仪自教研室例:三数码难题(3 puzzle problem)123123123312312312初始棋局目标棋局自动化系仪自教研室5q状态空间表示法就是以“状态空间”的形式来表示问题及其搜索过程的一种方法。q状态空间表示法是人工智能中最基本的形式化方最基本的形式化方法法,是讨论问题求解技术的基础。自动化系仪自教研室61. 1. 状态状态是描述问题求解过程中不同时刻状况的数据结构
2、。一般用一组变量的有序集合表示: Q=(q0,q1,.,qn) 其中每个元素qi(i=0,l,2,n) 为状态变量。2.2.3.1 2.2.3.1 问题状态空间的构成问题状态空间的构成当给每一个变量以确定的值时,就得到了一个具体的状态。自动化系仪自教研室7算符:引起状态中某些变量发生变化,从而使问题由一个状态变为另一个状态的操作。2. 2. 算符算符算符可分为走步、过程、规则、数学算子、运算符号、逻辑符号等。例如:在产生式系统中,每一条产生式规则就是一个算符;而在下棋程序中,一个算符就是一个走步。2.2.3.1 2.2.3.1 问题状态空间的构成问题状态空间的构成自动化系仪自教研室8状态空间:
3、一个问题的全部状态及一切可用算符构成的集合。3. 3. 状态空间状态空间状态空间由三部分构成:问题的所有可能初始状态构成的集合S;算符集合F;目标状态集合G。用一个三元组表示为:(S,F,G)2.2.3.1 2.2.3.1 问题状态空间的构成问题状态空间的构成自动化系仪自教研室9状态空间图:状态空间的图示形式。其中节点表示状态;有向边(弧)表示算符。3. 3. 状态空间状态空间2.2.3.1 2.2.3.1 问题状态空间的构成问题状态空间的构成自动化系仪自教研室10状态空间的问题求解就是从问题的初始状态集S出发,经过一系列的算符运算,到达目标状态。4. 4. 问题的解问题的解由初始状态到目标状
4、态所用算符的序列就构成了问题的一个解。2.2.3.1 2.2.3.1 问题状态空间的构成问题状态空间的构成自动化系仪自教研室11(1)定义状态的描述形式。2.2.3.22.2.3.2用状态空间表示问题的步骤用状态空间表示问题的步骤(2)用所定义的状态描述形式把问题的所有可能的状态都表示出来,并确定出问题的初始状态集合描述和目标状态集合描述。(3)定义一组算符,使得利用这组算符可把问题由一种状态转变为另一种状态。问题求解过程是一个不断把算符作用于状态的过程自动化系仪自教研室(4) 首先将适用算符作用于初始状态,以产生新的状态;(5) 然后再把一些适用的算符作用于新的状态;这样继续下去,直到产生的
5、状态为目标状态为止。(6 )这时,就得到了问题的一个解,这个解是从初始状态到目标状态所用算符构成的序列。问题:最优解问题;搜索策略问题。2.2.3.22.2.3.2用状态空间表示问题的步骤用状态空间表示问题的步骤自动化系仪自教研室13v例如下棋、迷宫及各种游戏。例如下棋、迷宫及各种游戏。OriginalStateMiddleStateGoalState2.2.3.22.2.3.2用状态空间表示问题的步骤用状态空间表示问题的步骤自动化系仪自教研室14HanoiHanoi塔塔在梵城(Hana)地下有一个僧侣的秘密组织,他们有3个大型的塔柱,左边的塔柱上由方到小套着64个金盘。僧侣们的工作是要把这6
6、4个金盘从左边塔柱转移到右边塔柱上去。但转移过程有规定的:1、每次只能搬动一只盘子,盘十只能在3个塔柱上安放,不允许放在地上;2、在每个塔柱上,只允许把小盘十叠在大盘上,反之不允许。据传说,僧侣们完成这个任务时,世界的末日就来临了。自动化系仪自教研室15HanoiHanoi塔塔19世纪,法国的一位数学家douard Lucas (18421891) 对该课题进行过研究,他指示,要完成这个任务,僧侣们搬动金盘的总次数:18446744073709551615(20位)假设僧侣们个个身强力壮,每天24小时不知头疲倦地工作,而且一秒钟移动一个金盘,那么,完成这个任务也得花5800亿年亿年。自动化系仪
7、自教研室16HanoiHanoi塔塔观自在菩萨,行深般若波罗蜜多时,照见五蕴皆空,度一切苦厄。舍利子,色不异空,空不异色;色即是空,空即是色。受想行识,亦复如是。舍利子,是诸法空相,不生不灭,不垢不净,不增不减。19世纪,法国的一位数学家douard Lucas (18421891) 对该课题进行过研究,他指示,要完成这个任务,僧侣们搬动金盘的总次数:18446744073709551615(20位)假设僧侣们个个身强力壮,每天24小时不知头疲倦地工作,而且一秒钟移动一个金盘,那么,完成这个任务也得花5800亿年亿年。自动化系仪自教研室17已知3个柱子l、2、3和两个盘子A、B(A比B小)。初
8、始状态下,A、B依次放在1柱上;目标状态是A、B依次放在柱子3上。条件是每次可移动一个盘子,盘子上方是空顶方可移动,而且任何时候都不允许大盘在小盘之上。例例2.2.3.1 2.2.3.1 二阶二阶HanoiHanoi塔问题塔问题自动化系仪自教研室18定义问题状态的描述形式 设用Sk=(SkA,SkB)表示问题的状态,SkA表示盘子A所在的柱号,SkB表示盘子B所在的柱号。第一步:用状态空间表示问题用状态描述形式把问题的所有可能的状态都表示出来。本问题共有九种可能状态: S0=(1,1), S1=(1,2), S2=(1,3) S3=(2,1), S4=(2,2), S5=(2,3) S6=(3
9、,1), S7=(3,2), S8=(3,3) 问题的初始状态集合为S=S0,目标状态集合为G=S8。自动化系仪自教研室19自动化系仪自教研室v算符A(i,j)表示把盘子A从第i号柱子移到第j号柱子上的操作;v算符B(i,j)表示把盘子B从第i号柱子移到第j号柱子上的操作。v算符组F中共有12个算符:A(1,2),A(1,3),A(2,1),A(2,3),A(3,1),A(3,2)B(1,2),B(1,3),B(2,1),B(2,3),B(3,1),B(3,2)v问题的状态空间(S,F,G)构造完成。定义一组算符F自动化系仪自教研室21根据状态空间的9种可能状态和12种算符,构造它的状态空间图
10、:第二步:问题求解自动化系仪自教研室22在状态空间图中,从初始节点(1,1)(状态S0)到目标节点(3,3)(状态S8)的任何一条通路都是问题的一个解。最短的路径长度是3,它由3个算符组成:A(1,2)、B(1,3)、A(2,3)。自动化系仪自教研室三枚钱币处于反、正、反状态,每次只许翻动一枚钱币,问连续翻动三次后,能否出现全正或全反状态。 初始状态初始状态QsQs目标状态集合目标状态集合Q0, Q7v例例1 1:翻转钱币问题:翻转钱币问题自动化系仪自教研室引入一个三元组引入一个三元组(q(q0 0,q,q1 1,q,q2 2) )来描述总状态,钱币正面为来描述总状态,钱币正面为0 0,反面,
11、反面为为1 1,全部可能的状态为:,全部可能的状态为: Q Q0 0=(0,0,0)=(0,0,0) ; Q ; Q1 1=(0,0,1); Q=(0,0,1); Q2 2=(0,1,0)=(0,1,0) Q Q3 3=(0,1,1) ; Q=(0,1,1) ; Q4 4=(1,0,0); =(1,0,0); Q Q5 5=(1,0,1)=(1,0,1) Q Q6 6=(1,1,0) ; =(1,1,0) ; Q Q7 7=(1,1,1)=(1,1,1)。翻动钱币的操作抽象为改变上述状态的算子,翻动钱币的操作抽象为改变上述状态的算子, 即即F Fa, b, ca, b, c a: a:把钱币把
12、钱币q q0 0翻转一次翻转一次 b:b:把钱币把钱币q q1 1翻转一次翻转一次 c:c:把钱币把钱币q q2 2翻转一次翻转一次 问题的状态空间为问题的状态空间为 v例例2.2.3.22.2.3.2:翻转钱币问题:翻转钱币问题自动化系仪自教研室问题的状态空间为: 构造状态空间图:构造状态空间图: 507QabcQQ, , , ,aabaababaababaabaabbbbbbbccbcccbccbcccbccbv例例2.2.3.22.2.3.2:翻转钱币问题:翻转钱币问题自动化系仪自教研室图图2-5 2-5 翻动三次后三枚钱币问题的状态变化翻动三次后三枚钱币问题的状态变化翻转钱币问题状态空
13、间图的另一种表示:翻转钱币问题状态空间图的另一种表示:v例例2.2.3.22.2.3.2:翻转钱币问题:翻转钱币问题自动化系仪自教研室v例例2.2.3.32.2.3.3:修道士和野人问题:修道士和野人问题在河的左岸有三个修道士、三个野人和一条船,修道士在河的左岸有三个修道士、三个野人和一条船,修道士们想用这条船将所有的人都运过河去,但受到以下条件们想用这条船将所有的人都运过河去,但受到以下条件的限制:的限制:1 1)修道士和野人都会划船,但船一次)修道士和野人都会划船,但船一次最多最多只能只能运两个人运两个人;2 2)在任何岸边)在任何岸边野人数目野人数目都都不得超过修道士不得超过修道士,否则
14、修道士,否则修道士就会被野人吃掉。就会被野人吃掉。自动化系仪自教研室1、问题的状态可以用一个三元数组来描述: S(m, c, b) m:左岸的修道士数 c:左岸的野人数 b:左岸的船数 右岸的状态不必标出,因为: 右岸的修道士数 m 3m 右岸的野人数 c 3c 右岸的船数 b 1bv例例2.2.3.32.2.3.3:修道士和野人问题:修道士和野人问题自动化系仪自教研室状态m, c, b状态m, c, b状态m, c, b状态m, c, bS03 3 1S81 3 1S163 3 0S241 3 0S13 2 1S91 2 1S173 2 0S251 2 0S23 1 1S101 1 1S18
15、3 1 0S261 1 0S33 0 1S111 0 1S193 0 0S271 0 0S42 3 1S120 3 1S202 3 0S28 0 3 0S52 2 1S130 2 1S212 2 0S290 2 0S62 1 1S140 1 1S222 1 0S300 1 0S72 0 1S150 0 1S232 0 0S310 0 0状态不合法状态不合法由合理的状态转换规则无法退出由合理的状态转换规则无法退出v例例2.2.3.32.2.3.3:修道士和野人问题:修道士和野人问题自动化系仪自教研室2.2.操作集操作集F Fpp0101, p, p1010,p,p1111,p,p0202,p,p
16、2020,q,q0101,q,q1010,q,q1111, q, q0202,q,q2020 q20b=0, (m=0,c=2)或(m=1,c=1)b=1, m=m+2q02b=0, m=0或3, c2b=1, c=c+2q11b=0, m=c, c2b=1, m=m+1, c=c+1q10b=0, (m=0,c=1)或(m=2,c=2)b=1, m=m+1q01b=0, m=0或3, c2b=1, c=c+1p20b=1, (m=3,c=1)或(m=2,c=2)b=0, m=m-2p02b=1, m=0或3, c2b=0, c=c-2p11b=1, m=c, c1b=0, m=m-1, c=
17、c-1p10b=1, (m=3,c=2)或(m=1,c=1)b=0, m=m-1p01b=1, m=0或3, c1b=0, c=c-1操作符条 件动 作v例例2.2.3.32.2.3.3:修道士和野人问题:修道士和野人问题自动化系仪自教研室3.状态空间给出状态和操作的描述之后,该问题的状态空间是:S0, P 01,P 10,P 11,P 02,P 20,Q01,Q 10,Q 11,Q 02,Q 20,S31。v例例2.2.3.32.2.3.3:修道士和野人问题:修道士和野人问题自动化系仪自教研室S0(3,3,1)S18(3,1,0)p02q02S17(3,2,0)p01q01S21(2,2,0
18、)p11q11S1(3,2,1)q01p01p10q10S19(3,0,0)q02p02S2(3,1,1)q01p01S26(1,1,0)q20p20S0(0,0,0)q11p11S14(0,1,1)p01q01p02q02S10(1,1,1)p10q10S13(0,2,1)q01p01S30(0,1,0)p02q02S12(0,3,1)p01q01S29(0,2,0)p20q20S5(2,2,1)q11p114.4.状态空间图:状态空间图:四条四条S S0 0到到S S3131长度相等的最短路径,对应的长度相等的最短路径,对应的操作序列就是该问题的四个最优解操作序列就是该问题的四个最优解v例
19、例2.2.3.32.2.3.3:修道士和野人问题:修道士和野人问题自动化系仪自教研室 思考题:( (猴子摘香蕉猴子摘香蕉) )自动化系仪自教研室 猴子猴子香蕉香蕉箱子箱子 猴子猴子香蕉香蕉箱子箱子 Ha!Ha! 思考题:( (猴子摘香蕉猴子摘香蕉) )自动化系仪自教研室隐式状态空间图:利用有关状态描述和状态转换(操作)的知识定义的状态空间图。在计算机中仅存储描述问题状态及操作的有关知识,包括该问题的各状态分量的取值情况、分量之间的约束条件、开始状态、终止状态,以及全部操作的条件和动作等。隐式状态空间图也称为是状态空间图的隐式表示或隐式图。v显式显式状态空间图状态空间图 vsvs 隐式隐式状态空
20、间图状态空间图显式状态空间图显式状态空间图:表示了问题所有可能的状态及状:表示了问题所有可能的状态及状态之间的关系,这种表示方式称为态之间的关系,这种表示方式称为显式状态空间图显式状态空间图,或称为,或称为状态空间图的显示表示状态空间图的显示表示。自动化系仪自教研室 重排九宫问题的状态表示重排九宫问题的状态表示v显式显式状态空间图状态空间图 vsvs 隐式隐式状态空间图状态空间图重排九宫问题的隐式图描述为:重排九宫问题的隐式图描述为: 自动化系仪自教研室(1)有关状态的知识: v显式显式状态空间图状态空间图 vsvs 隐式隐式状态空间图状态空间图重排九宫问题的隐式图描述为:重排九宫问题的隐式图
21、描述为: 初始状态:初始状态: S0 (0,1,2,3,5,6,4,7,8) 目标状态:目标状态: Sg (0,1,2,3,4,5,6,7,8)状态状态S的定义:的定义:S(X0,X1,X2,X3,X4 ,X5, X6 ,X7 ,X8) 其中,其中, Xi 0,1,2,3,4,5,6,7,8, 自动化系仪自教研室0组规则 R1(X0=0 ) (X2=n ) X0 = n X2 =0; R2(X0=0 ) (X4=n ) X0 = n X4 =0; R3(X0=0 ) (X6=n ) X0 = n X6 =0; R4(X0=0 ) (X8=n ) X0 = n X8 =0;1组规则 R5(X1=
22、0 ) (X2=n ) X1 = n X2 =0; R6(X1=0 ) (X8=n ) X1 = n X8 =0;v显式显式状态空间图状态空间图 vsvs 隐式隐式状态空间图状态空间图重排九宫问题的隐式图描述为:重排九宫问题的隐式图描述为: (2 2)有关操作的知识(规则):)有关操作的知识(规则):自动化系仪自教研室(S0, r1 , r2 , , r24 , Sg)v显式显式状态空间图状态空间图 vsvs 隐式隐式状态空间图状态空间图重排九宫问题的隐式图描述为:重排九宫问题的隐式图描述为: 这里仅给出了初始节点和目标节点,其余节点需用状态转这里仅给出了初始节点和目标节点,其余节点需用状态转
23、换规则来产生。类似于这样表示的状态图称为换规则来产生。类似于这样表示的状态图称为隐式状态图隐式状态图,或者说或者说状态图状态图的的隐式表示隐式表示。自动化系仪自教研室402.2 知识表示与问题求解知识表示知识表示与问题求解与问题求解自动化系仪自教研室v状态空间图搜索中的通用数据结构状态空间图搜索中的通用数据结构CLOSED表:表:用来记录考察过的节点以及节点之间的关用来记录考察过的节点以及节点之间的关系,如每个节点指向父节点的编号(返回指针)。系,如每个节点指向父节点的编号(返回指针)。CLOSED表中存放的就是一定搜索策略下的搜索树。表中存放的就是一定搜索策略下的搜索树。节点父节点编号编号节
24、点父节点编号OPEN表表CLOSED表表OPEN表:表:专门登记已经生成但还没有考察的节点,即待专门登记已经生成但还没有考察的节点,即待考察节点。考察节点。自动化系仪自教研室v盲目搜索盲目搜索盲目搜索盲目搜索: :搜索时不参考与具搜索时不参考与具体待求解问题相关的任何信体待求解问题相关的任何信息,只是按预先设定的顺序息,只是按预先设定的顺序逐个考察节点。盲目搜索与逐个考察节点。盲目搜索与问题无关,具有问题无关,具有通用性通用性。状态空间图搜索状态空间图搜索广度优先搜索广度优先搜索深度优先搜索深度优先搜索迭代加深搜索迭代加深搜索自动化系仪自教研室盲目搜索盲目搜索-广度优先搜索算法广度优先搜索算法
25、v广度优先搜索(广度优先搜索(A A?eded)基本思想)基本思想广度优先搜索是严格按节点在树中的出现位置广度优先搜索是严格按节点在树中的出现位置一层一层一层一层向下向下的搜索过程。通过将的搜索过程。通过将OPEN表设计为一个队列来实表设计为一个队列来实现,将现,将新生成的子节点新生成的子节点放在放在OPEN表的后面表的后面,保证,保证先生先生成的节点先考察成的节点先考察。自动化系仪自教研室步1 把初始结点S0放入OPEN表中;步2 若OPEN表为空,则搜索失败,退出;步3 否则,取OPEN表中第一个结点N放在CLOSED表中;并冠以顺序编号n;步4 若结点N为目标结点,则搜索成功。利用CLO
展开阅读全文