人工智能之盲目搜索培训课件.pptx
合集下载
盲目启发搜索PPT教案学习
与宽度优先搜索算法根本不同 在于:将扩展的后继节点放在 OPEN表的前端(LIFO)。
B1,77 C2,87 C1,96 F1,32
A,47 B3,52 B2,65
D1,77 E1,57 E2,92 G1,27 H1,51
第26页/共55页
深度优先搜索示意图
CLOSE表 编号 节点 父节点
1 A NULL 2 B1 A 3 C2 B1 4 F1 C2 5 C1 B1 6 B3 A 7 D1 B3 8 B2 A
3 84 5
7
61 2 15
3 4
5 87
61 2 23
3 8 4 76 5
1 32
3 85 74 6
18 2
3 85 6
711642
3 85 6 74
6
9
12 85 3 74
16 17
2 85 3 74 6
14
3
82
5
74
1103 6
82 5 74
61183
5 82 74 6
1 11
3 82 5 74
F1,32
G1,27 H1,51
第2页/共55页
第三章 搜索技术
搜索分类
1、盲目式摸索:无信息搜索,搜索时按规定顺 序逐个考察节点,直到找到目标。通用性强,但 效率低;适用于简单树状结构问题。
包括:宽度优先、深度优先、等代价搜索 2、启发式搜索:用到自身的某些信息,指导搜 索朝着最有希望的方向进行,搜索效率高。
1. 两种数据结构
(1)OPEN表 存放已生成但还没考察的节点,即待考察 节点。
(2)CLOSED表存放考察过的节点,以及节点之间的关 系,如每个节点指向父节点的编号(返回指针)。 CLOSED表中存放的就是一定搜索策略下的搜索树。
B1,77 C2,87 C1,96 F1,32
A,47 B3,52 B2,65
D1,77 E1,57 E2,92 G1,27 H1,51
第26页/共55页
深度优先搜索示意图
CLOSE表 编号 节点 父节点
1 A NULL 2 B1 A 3 C2 B1 4 F1 C2 5 C1 B1 6 B3 A 7 D1 B3 8 B2 A
3 84 5
7
61 2 15
3 4
5 87
61 2 23
3 8 4 76 5
1 32
3 85 74 6
18 2
3 85 6
711642
3 85 6 74
6
9
12 85 3 74
16 17
2 85 3 74 6
14
3
82
5
74
1103 6
82 5 74
61183
5 82 74 6
1 11
3 82 5 74
F1,32
G1,27 H1,51
第2页/共55页
第三章 搜索技术
搜索分类
1、盲目式摸索:无信息搜索,搜索时按规定顺 序逐个考察节点,直到找到目标。通用性强,但 效率低;适用于简单树状结构问题。
包括:宽度优先、深度优先、等代价搜索 2、启发式搜索:用到自身的某些信息,指导搜 索朝着最有希望的方向进行,搜索效率高。
1. 两种数据结构
(1)OPEN表 存放已生成但还没考察的节点,即待考察 节点。
(2)CLOSED表存放考察过的节点,以及节点之间的关 系,如每个节点指向父节点的编号(返回指针)。 CLOSED表中存放的就是一定搜索策略下的搜索树。
C-盲目搜索-人工智能(AI)
Breadth-First Strategy
新生成的节点放到FRING E队列的最后
1
广度优先策略
2
4 5 6
3
7
FRINGE = (4, 5, 6, 7)
24
人工智能原理2010年春季 广西大学 计算机学院 Dr.Ou
Important Parameters
1)所有状态中的最大后继函数个数 搜索树的分支因子 b
A solution is a sequence of actions leading from the initial state to a goal state
6
人工智能原理2010年春季 广西大学 计算机学院 Dr.Ou
Tree search example
Arad Zerind
Sibiu
Timisoara
关描述信息来确定FRINGE队列的排序,而 只根据搜索树中节点的位置来进行搜索
盲目 vs. 启发式策略
启发式或(有信息) 策略利用状态的有关
描述信息来确定FRINGE队列的排序(最有 “希望”的节点被放在FRINGE队列的开始)
16
人工智能原理2010年春季 广西大学 计算机学院 Dr.Ou
Example
2
人工智能原理2010年春季 广西大学 计算机学院 Dr.Ou
秀灵路明秀路口 衡阳路友爱路口
大学路明秀路口
衡阳路秀灵路口
衡阳路北大路口
中华路友爱路口 中华路朝阳路口 人民路友爱路口
北大路中华路口 明秀路新阳路口 新阳路龙腾路口 新阳中华路口 新阳路北大路口
人民朝阳路口
3
人工智能原理2010年春季 广西大学 计算机学院 Dr.Ou
第4章 搜索技术-图盲目搜索 2012AI课件 人工智能教学课件
删除端(队头)
插入端(队尾)
2020/10/3
CLOSED表的存储形式:也可以用队列 特殊的队列:只进不出的队列,只允许在表的 一端进行插入
父符
插入端(队尾)
2020/10/3
某一个节点的父节点标志: 记录CLOSED表中的父节点的序号
起始节点的父节点标志和操作符: 不作记录或记录为负
2020/10/3
11283014765
12203184765
13283164705
14283140765 父符
2020/10/3
⑥ 后继节点中无目标节点,转到② ② OPEN表不为空,继续
2020/10/3
③ 将第一个节点 n 从 OPEN 表中移出,并放到 CLOSED 表中
OPEN表
12203184765
13283164705
2020/10/3
图的搜索策略:图搜索过程的一般步骤(基本
思路、框架) 其中:盲目搜索技术、启发式搜索技术是图搜索 策略的细化(具体化)
2020/10/3
一些基本概念
• 节点深度: 根节点深度=0 其它节点深度=父节点深度+1
0 1
2
3
2020/10/3
一些基本概念(续1)
• 路径 设节到致n一 点 搜k的n节 索i-路1点 过具径序 程有。列进一通为入个常死(后n0要循,继n求环1节,…路。点,径nnki是,),无则对环该于的序i=,列1,否…称则,为k,会从若导n0
2020/10/3
例:八数码问题
初始状态 2 1 7
目标状态 8 123
8
4
6 765
2
操作符:
1
空
4
2020/10/3
插入端(队尾)
2020/10/3
CLOSED表的存储形式:也可以用队列 特殊的队列:只进不出的队列,只允许在表的 一端进行插入
父符
插入端(队尾)
2020/10/3
某一个节点的父节点标志: 记录CLOSED表中的父节点的序号
起始节点的父节点标志和操作符: 不作记录或记录为负
2020/10/3
11283014765
12203184765
13283164705
14283140765 父符
2020/10/3
⑥ 后继节点中无目标节点,转到② ② OPEN表不为空,继续
2020/10/3
③ 将第一个节点 n 从 OPEN 表中移出,并放到 CLOSED 表中
OPEN表
12203184765
13283164705
2020/10/3
图的搜索策略:图搜索过程的一般步骤(基本
思路、框架) 其中:盲目搜索技术、启发式搜索技术是图搜索 策略的细化(具体化)
2020/10/3
一些基本概念
• 节点深度: 根节点深度=0 其它节点深度=父节点深度+1
0 1
2
3
2020/10/3
一些基本概念(续1)
• 路径 设节到致n一 点 搜k的n节 索i-路1点 过具径序 程有。列进一通为入个常死(后n0要循,继n求环1节,…路。点,径nnki是,),无则对环该于的序i=,列1,否…称则,为k,会从若导n0
2020/10/3
例:八数码问题
初始状态 2 1 7
目标状态 8 123
8
4
6 765
2
操作符:
1
空
4
2020/10/3
人工智能第1章盲目搜索40页PPT
39、没有不老的誓言,没有不变的承 诺,踏 上旅途 ,义无 反顾。 40、对时间的价值没有没有深切认识 的人, 决不会 坚韧勤 勉。
21、要知道对好事的称颂过于夸大,也会招来人们的反感轻蔑和嫉妒。——培根 22、业精于勤,荒于嬉;行成于思,毁于随。——韩愈
23、一切节省,归根到底都归结为时间的节省。——马克思 24、意志命运往往背道而驰,决心到最后会全部推倒。——莎士比亚
25、学习是劳动,是充Βιβλιοθήκη 思想的劳动。——乌申斯基谢谢!
人工智能第1章盲目搜索
36、“不可能”这个字(法语是一个字 ),只 在愚人 的字典 中找得 到。--拿 破仑。 37、不要生气要争气,不要看破要突 破,不 要嫉妒 要欣赏 ,不要 托延要 积极, 不要心 动要行 动。 38、勤奋,机会,乐观是成功的三要 素。(注 意:传 统观念 认为勤 奋和机 会是成 功的要 素,但 是经过 统计学 和成功 人士的 分析得 出,乐 观是成 功的第 三要素 。
21、要知道对好事的称颂过于夸大,也会招来人们的反感轻蔑和嫉妒。——培根 22、业精于勤,荒于嬉;行成于思,毁于随。——韩愈
23、一切节省,归根到底都归结为时间的节省。——马克思 24、意志命运往往背道而驰,决心到最后会全部推倒。——莎士比亚
25、学习是劳动,是充Βιβλιοθήκη 思想的劳动。——乌申斯基谢谢!
人工智能第1章盲目搜索
36、“不可能”这个字(法语是一个字 ),只 在愚人 的字典 中找得 到。--拿 破仑。 37、不要生气要争气,不要看破要突 破,不 要嫉妒 要欣赏 ,不要 托延要 积极, 不要心 动要行 动。 38、勤奋,机会,乐观是成功的三要 素。(注 意:传 统观念 认为勤 奋和机 会是成 功的要 素,但 是经过 统计学 和成功 人士的 分析得 出,乐 观是成 功的第 三要素 。
人工智能搜索技术(PPT 79张)
7 283 714 65 15 2 8 3 714 6 5 24 2 8 3 7 4 615
16 1 2 3 84 765 26 25 2 8 3 1 2 3 1 2 3 714 8 4 784 65 765 65
234 234 28 248 1 8 185 143 1 3 765 76 765 765
3.1 盲目搜索
3.1.2 宽度优先搜索
定义3.1 如果搜索是以接近起始节点的程度依次扩展节点的, 那么这种搜索就叫做宽度优先搜索(breadth-first search)
3.1 盲目搜索
3.1.2 宽度优先搜索
宽度优先搜索算法 (1) 把起始节点放到OPEN表中(如果该起始节点为一目标节点, 则求得一个解答)。 (2) 如果OPEN是个空表,则没有解,失败退出;否则继续。 (3) 把第一个节点(节点n)从OPEN表移出,并把它放入 CLOSED的扩展节点表中。 (4) 扩展节点n。如果没有后继节点,则转向上述第(2)步。 (5) 把n的所有后继节点放到OPEN表的末端,并提供从这些后 继节点回到n的指针。 (6) 如果n的任一个后继节点是个目标节点,则找到一个解答, 成功退出;否则转向第(2)步。
9
2 5 1 4 6 7 3 8 2 5 1 4 6 7 3 8 2 4 5 1 6 7 3 8 2 4 5 1 6 7 3 8 2 4 5 1 3 6 7 8 2 4 5 1 6 7 3 8 2 4 5 1 3 6 7 8 2 4 5 1 3 6 72 8 3 1 6 4 7 5 2 8 3 1 4 7 6 5 2 3
4.图搜索方法分析:
图搜索过程的第8步对OPEN表上的节点进行排序,以便能够 从中选出一个“最好”的节点作为第4步扩展用。这种排序可 以是任意的即盲目的(属于盲目搜索),也可以用以后要讨论的 各种启发思想或其它准则为依据(属于启发式搜索)。每当被选 作扩展的节点为目标节点时,这一过程就宣告成功结束。这时, 能够重现从起始节点到目标节点的这条成功路径,其办法是从 目标节点按指针向S返回追溯。当搜索树不再剩有未被扩展的 端节点时,过程就以失败告终(某些节点最终可能没有后继节 点,所以OPEN表可能最后变成空表)。在失败终止的情况下, 从起始节点出发,一定达不到目标节点。
人工智能ch3盲目搜索.
“最好”的节点作为步骤④扩展使用。
排序是任意的,即肓目的——盲目搜索。
排序用启发信息为依据——启发式搜索。
3.1 一般搜索过程
三、几点说明
2. 搜索图和搜索树
图搜索的一般过程中生成的明确图,被称为搜索图G 。
由图 G中所有节点及反向指针(在第⑦步形成的指向父节 点的指针)构成的集合T,是一棵树,称为搜索树。
——Open表
3.1 一般搜索过程
三、几点说明
4. 步骤⑥的说明
一个节点经一个算符操作通常指生成一个子节点。
由于适用于一个节点的算符可能有多个,此时就会 生成一组子节点。 判断子节点是否是当前扩展节点的父节点、祖父节 点等,若是,则删除。
余下的子节点记做集合M,加入图G中。
扩展节点时,生成该节点的所有后继节点。
第3章 盲目搜索
3.1 一般搜索过程
3.2 回溯策略 3.3 宽度(广度)优先搜索 3.4 代价树的宽度优先搜索 3.5 深度优先搜索
搜索、推理与人工智能
搜索是人工智能中的一个基本问题,是推理不可分 割的一部分,它直接关系到智能系统的性能与运行效率, 尼尔逊把它列为人工智能研究中的核心问题之一。
搜索的基本问题:
一般与或图搜索法、极大极小法、-剪枝法、启发式剪枝法……
第3章 盲目搜索
搜索策略选取操作算子的方式
盲目搜索
– 对特定问题不具有任何有关信息,按预定步骤(依次或随机) 进行搜索,搜索过程中获得的中间信息不用来改进控制策略。
– 特点:能快速调用操作算子。
启发式搜索
– 考虑特定问题领域可应用的启发性信息,动态确定调用操作算 子的步骤,指导搜索朝最有希望的方向前进。 – 特点:优先选取合适的操作算子,减少不必要搜索,提高效率 – 启发式一般优于盲目搜索,但不能过于追求更多甚至更完整的 启发信息。应综合考虑,尽量使搜索系统的总开销较小。
排序是任意的,即肓目的——盲目搜索。
排序用启发信息为依据——启发式搜索。
3.1 一般搜索过程
三、几点说明
2. 搜索图和搜索树
图搜索的一般过程中生成的明确图,被称为搜索图G 。
由图 G中所有节点及反向指针(在第⑦步形成的指向父节 点的指针)构成的集合T,是一棵树,称为搜索树。
——Open表
3.1 一般搜索过程
三、几点说明
4. 步骤⑥的说明
一个节点经一个算符操作通常指生成一个子节点。
由于适用于一个节点的算符可能有多个,此时就会 生成一组子节点。 判断子节点是否是当前扩展节点的父节点、祖父节 点等,若是,则删除。
余下的子节点记做集合M,加入图G中。
扩展节点时,生成该节点的所有后继节点。
第3章 盲目搜索
3.1 一般搜索过程
3.2 回溯策略 3.3 宽度(广度)优先搜索 3.4 代价树的宽度优先搜索 3.5 深度优先搜索
搜索、推理与人工智能
搜索是人工智能中的一个基本问题,是推理不可分 割的一部分,它直接关系到智能系统的性能与运行效率, 尼尔逊把它列为人工智能研究中的核心问题之一。
搜索的基本问题:
一般与或图搜索法、极大极小法、-剪枝法、启发式剪枝法……
第3章 盲目搜索
搜索策略选取操作算子的方式
盲目搜索
– 对特定问题不具有任何有关信息,按预定步骤(依次或随机) 进行搜索,搜索过程中获得的中间信息不用来改进控制策略。
– 特点:能快速调用操作算子。
启发式搜索
– 考虑特定问题领域可应用的启发性信息,动态确定调用操作算 子的步骤,指导搜索朝最有希望的方向前进。 – 特点:优先选取合适的操作算子,减少不必要搜索,提高效率 – 启发式一般优于盲目搜索,但不能过于追求更多甚至更完整的 启发信息。应综合考虑,尽量使搜索系统的总开销较小。
《智能搜索》PPT课件
索和深度优先搜索,属于盲目搜索方法。
16 of 31
3.2 盲目搜索
第三章 智能搜索
1.宽度优先搜索
宽度优先搜索(Breadth First Search,BFS)又称广度优先搜索,是最简便的
图的搜索算法之一,这一算法也是很多重要的图的算法的原型。Dijkstra单源最短
路径算法和Prim最小生成树算法都采用了和宽度优先搜索类似的思想。
(因为那些节点是下一步探索的目标点了),但是这里有个判断,当访问
到1 节点的时候,它的下一个节点应该是0 和4 ,但是0 已经在前面被染
成黑色了,所以不会将它染灰色(即不会回头去探索它),如图3-5(c)所
示
20 of 31
3.2 盲目搜索
第三章 智能搜索
1.宽度优先搜索
4、循环执行步骤3,直到目标节点 6 被染灰色,说明了下一步就到终点了,
高了效率。
如果能够利用搜索过程所得到的问题自身的一些特征信息来指导搜索过程,则
可以缩小搜索范围,提高搜索效率。像这样利用问题自身特征信息来引导搜索过程
的方法成为启发式方法。
启发式策略可以通过指导搜索向最有希望的方向前进,降低了复杂性。通过删
除某些状态及其延伸,启发式算法可以消除组合爆炸,并得到令人能接受的解(通常
f3=数字1移动到X位上。产生对应的状态为:Q4=[X,2,3,8,6,4,1,7,5]。
f4=数字6移动到X位上。产生对应的状态为:Q5=[1,2,3,8,X,4,6,7,5]。
f5=数字5移动到X位上。产生对应的状态为:Q6=[1,2,3,8,6,4,5,7,X]。
f6=数字6移动到X位上。产生对应的状态为:Q7=[1,2,3,8,X,4,6,7,5]。
16 of 31
3.2 盲目搜索
第三章 智能搜索
1.宽度优先搜索
宽度优先搜索(Breadth First Search,BFS)又称广度优先搜索,是最简便的
图的搜索算法之一,这一算法也是很多重要的图的算法的原型。Dijkstra单源最短
路径算法和Prim最小生成树算法都采用了和宽度优先搜索类似的思想。
(因为那些节点是下一步探索的目标点了),但是这里有个判断,当访问
到1 节点的时候,它的下一个节点应该是0 和4 ,但是0 已经在前面被染
成黑色了,所以不会将它染灰色(即不会回头去探索它),如图3-5(c)所
示
20 of 31
3.2 盲目搜索
第三章 智能搜索
1.宽度优先搜索
4、循环执行步骤3,直到目标节点 6 被染灰色,说明了下一步就到终点了,
高了效率。
如果能够利用搜索过程所得到的问题自身的一些特征信息来指导搜索过程,则
可以缩小搜索范围,提高搜索效率。像这样利用问题自身特征信息来引导搜索过程
的方法成为启发式方法。
启发式策略可以通过指导搜索向最有希望的方向前进,降低了复杂性。通过删
除某些状态及其延伸,启发式算法可以消除组合爆炸,并得到令人能接受的解(通常
f3=数字1移动到X位上。产生对应的状态为:Q4=[X,2,3,8,6,4,1,7,5]。
f4=数字6移动到X位上。产生对应的状态为:Q5=[1,2,3,8,X,4,6,7,5]。
f5=数字5移动到X位上。产生对应的状态为:Q6=[1,2,3,8,6,4,5,7,X]。
f6=数字6移动到X位上。产生对应的状态为:Q7=[1,2,3,8,X,4,6,7,5]。
人工智能课件-搜索推理技术
(3) 對變數標準化 對啞元(虛構變數)改名,以保證每個量詞 有其自己唯一的啞元。
1
3.4 消解原理
(4) (x){~P(x)∨{(y)[~P(y)∨P(f(x,y))]
∧[Q(x,g(x))∧~P(g(x))]}}
式中,w=g(x)為一Skolem函數。
(4) 消去存在量詞
以Skolem函數代替存在量詞內的約束變數,
❖ 實質
❖ 把一棵根部有NIL的反演樹變換為根部帶有回 答 語句的一棵證明樹。
1
3.5 規則演繹系統
—— g是g*的估計 ,h是h*的估計
❖ A*演算法的定義:
定義1 在GRAPHSEARCH過程中,如果第8步的重排OPEN表
是依據f(x)=g(x)+h(x)進行的,則稱該過程為A演算法。
定義2 在A演算法中,如果對所有的x存在h(x)≤h*(x),則稱h(x)
為h*(x)的下界,它表示某種偏於保守的估計。
子句(4) {a/x,b/y}
子句(7) ~M(b)
子句(5)
圖3.12 儲蓄問題反演樹
NIL
1
3.4 消解原理
❖ 反演求解過程 ❖從反演樹求取答案步驟
❖把由目標公式的否定產生的每個子句添加到目 標公式否定之否定的子句中去。
❖按照反演樹,執行和以前相同的消解,直至在 根部得到某個子句止。
❖用根部的子句作為一個回答語句。
❖ 種類:有序搜索、A*演算法等
3.3.1 啟發式搜索策略和估價函數
❖盲目搜索可能帶來組合爆炸 ❖啟發式資訊
用來加速搜索過程的有關問題領域的特徵資訊。
1
3.3 啟發式搜索
❖ 估價函數 為獲得某些節點“希望”的啟發資訊,提供一
1
3.4 消解原理
(4) (x){~P(x)∨{(y)[~P(y)∨P(f(x,y))]
∧[Q(x,g(x))∧~P(g(x))]}}
式中,w=g(x)為一Skolem函數。
(4) 消去存在量詞
以Skolem函數代替存在量詞內的約束變數,
❖ 實質
❖ 把一棵根部有NIL的反演樹變換為根部帶有回 答 語句的一棵證明樹。
1
3.5 規則演繹系統
—— g是g*的估計 ,h是h*的估計
❖ A*演算法的定義:
定義1 在GRAPHSEARCH過程中,如果第8步的重排OPEN表
是依據f(x)=g(x)+h(x)進行的,則稱該過程為A演算法。
定義2 在A演算法中,如果對所有的x存在h(x)≤h*(x),則稱h(x)
為h*(x)的下界,它表示某種偏於保守的估計。
子句(4) {a/x,b/y}
子句(7) ~M(b)
子句(5)
圖3.12 儲蓄問題反演樹
NIL
1
3.4 消解原理
❖ 反演求解過程 ❖從反演樹求取答案步驟
❖把由目標公式的否定產生的每個子句添加到目 標公式否定之否定的子句中去。
❖按照反演樹,執行和以前相同的消解,直至在 根部得到某個子句止。
❖用根部的子句作為一個回答語句。
❖ 種類:有序搜索、A*演算法等
3.3.1 啟發式搜索策略和估價函數
❖盲目搜索可能帶來組合爆炸 ❖啟發式資訊
用來加速搜索過程的有關問題領域的特徵資訊。
1
3.3 啟發式搜索
❖ 估價函數 為獲得某些節點“希望”的啟發資訊,提供一
人工智能 第1章 搜索问题PPT课件
8, 对OPEN中的节点按某种原则重新排序; 9, GO LOOP;
34
节点类型说明
…...
…...
…...
mk
mj
ml
…...
…...
35
修改指针举例
s
1
2 6
3
4
5
36
修改指针举例(续1)
s
1
2 6
3
4
5
37
修改指针举例(续2)
s
1
2 6
3
4
5
38
修改指针举例(续3)
s
1
2 6
3
4
5
39
31
一些基本概念(续2)
• 扩展一个节点 生成出该节点的所有后继节点,并给出它 们之间的耗散值。这一过程称为“扩展一 个节点”。
32
一般的图搜索算法
1, G=G0 (G0=s), OPEN:=(s); 2, CLOSED:=( ); 3, LOOP: IF OPEN=( ) THEN EXIT(FAIL); 4, n:=FIRST(OPEN), REMOVE(n, OPEN),
– 盲目搜索 – 启发式搜索
• 关键问题: 如何利用知识,尽可能有效地找到问题 的解(最佳解)。
1
整体 概述
一 请在这里输入您的主要叙述内容
二
请在这里输入您的主要 叙述内容
三 请在这里输入您的主要叙述内容
2
问题的状态空间表示
• 状态空间可用三元组(S,O,来描述。
S:状态的集合,状态是某种事实的符号或数据 O:操作算子,利用它将一个状态转化为另一状态 G:S的非空子集,表示目标状态集 S0:初始状态,也是S的非空子集
34
节点类型说明
…...
…...
…...
mk
mj
ml
…...
…...
35
修改指针举例
s
1
2 6
3
4
5
36
修改指针举例(续1)
s
1
2 6
3
4
5
37
修改指针举例(续2)
s
1
2 6
3
4
5
38
修改指针举例(续3)
s
1
2 6
3
4
5
39
31
一些基本概念(续2)
• 扩展一个节点 生成出该节点的所有后继节点,并给出它 们之间的耗散值。这一过程称为“扩展一 个节点”。
32
一般的图搜索算法
1, G=G0 (G0=s), OPEN:=(s); 2, CLOSED:=( ); 3, LOOP: IF OPEN=( ) THEN EXIT(FAIL); 4, n:=FIRST(OPEN), REMOVE(n, OPEN),
– 盲目搜索 – 启发式搜索
• 关键问题: 如何利用知识,尽可能有效地找到问题 的解(最佳解)。
1
整体 概述
一 请在这里输入您的主要叙述内容
二
请在这里输入您的主要 叙述内容
三 请在这里输入您的主要叙述内容
2
问题的状态空间表示
• 状态空间可用三元组(S,O,来描述。
S:状态的集合,状态是某种事实的符号或数据 O:操作算子,利用它将一个状态转化为另一状态 G:S的非空子集,表示目标状态集 S0:初始状态,也是S的非空子集
人工智能培训课件(ppt 51页)
• 定义5 人工智能是那些与人的思维、决策、问题求解 和学习等有关活动的自动化(Bellman,1978)。
• 定义6 人工智能是用计算模型研究智力行为 (Charniak和McDermott,1985)。
• 定义7 人工智能是研究那些使理解、推理和行为成为 可能的计算(Winston,1992)。
– 专家系统
– 知识工程
– 知识工程席卷全球
– 各国发展计划:
• 美国星球大战计划
• 英国ALVEY计划
• 法国UNIKA 计划
• 例子2:能够进行深海探测的潜水机器人。
• 例子3:在星际探险中的移动机器人,如美国研制的
火星探测车。
9
1.1.1 人工智能的定义
• 定义2 人工智能(学科) 人工智能(学科)是计算机科学中涉及研究、设计
和应用智能机器的一个分支。它的近期主要目标在于 研究用机器来模仿和执行人脑的某些智力功能,并开 发相关理论和技术。 • 定义3 人工智能(能力)
Artificial Intelligence 人计工算智机科能学与应用专业
计算机科学与技术专业
1
课程简介
1. 本课程较系统地介绍人工智能的基本概念、原理和 方法,为学生研究或应用人工智能技术打下基础。
2. 掌握人工智能基本原理,包括人工智能的两大支柱: 搜索技术(盲目搜索、启发式搜索)和知识表示 (知识表示和推理方法:一阶谓词逻辑,即命题演 算和谓词演算)及其计算机实现。
人工智能(能力)是智能机器所执行的通常与人类 智能有关的智能行为,如判断、推理、证明、识别、 感知、理解、通信、设计、思考、规划、学习和问题 求解等思维活动。
10
其它几种关于人工智能的定义
• 定义4 人工智能是一种使计算机能够思维,使机器具 有智力的激动人心的新尝试(Haugeland,1985)。
• 定义6 人工智能是用计算模型研究智力行为 (Charniak和McDermott,1985)。
• 定义7 人工智能是研究那些使理解、推理和行为成为 可能的计算(Winston,1992)。
– 专家系统
– 知识工程
– 知识工程席卷全球
– 各国发展计划:
• 美国星球大战计划
• 英国ALVEY计划
• 法国UNIKA 计划
• 例子2:能够进行深海探测的潜水机器人。
• 例子3:在星际探险中的移动机器人,如美国研制的
火星探测车。
9
1.1.1 人工智能的定义
• 定义2 人工智能(学科) 人工智能(学科)是计算机科学中涉及研究、设计
和应用智能机器的一个分支。它的近期主要目标在于 研究用机器来模仿和执行人脑的某些智力功能,并开 发相关理论和技术。 • 定义3 人工智能(能力)
Artificial Intelligence 人计工算智机科能学与应用专业
计算机科学与技术专业
1
课程简介
1. 本课程较系统地介绍人工智能的基本概念、原理和 方法,为学生研究或应用人工智能技术打下基础。
2. 掌握人工智能基本原理,包括人工智能的两大支柱: 搜索技术(盲目搜索、启发式搜索)和知识表示 (知识表示和推理方法:一阶谓词逻辑,即命题演 算和谓词演算)及其计算机实现。
人工智能(能力)是智能机器所执行的通常与人类 智能有关的智能行为,如判断、推理、证明、识别、 感知、理解、通信、设计、思考、规划、学习和问题 求解等思维活动。
10
其它几种关于人工智能的定义
• 定义4 人工智能是一种使计算机能够思维,使机器具 有智力的激动人心的新尝试(Haugeland,1985)。
人工智能第3章 搜索技术资料PPT课件
((1,1) (2,3)) ((1,1) (2,4))
((1,2) (2,4))
((1,1) (2,4) (3.2))
30
() ((1,1))
((1,2))
Q Q
Q
((1,1) (2,3)) ((1,1) (2,4))
((1,2) (2,4))
((1,1) (2,4) (3.2))
((1,2) (2,4) (3,1))
其中,初 始状态集 合和操作 符集合定 义了问题 的搜索空
间。
6
➢搜索问题包括:
❖搜索什么(目标) ❖在哪里搜索(搜索空间)
➢和通常的搜索空间不同,人工智能 中大多数问题的状态空间在问题求 解之前不是全部知道的。
7
➢搜索分成:
❖状态空间的生成阶段 ❖在该状态空间中对所求问题状态的搜
索
➢搜索可以根据是否使用启发式信息 分为
31
() ((1,1))
((1,2))
Q Q
Q Q
((1,1) (2,3)) ((1,1) (2,4)) ((1,2) (2,4))
((1,1) (2,4) (3.2))
((1,2) (2,4) (3,1))
((1,2) (2,4) (3,1) (4,3))
32
3.2 盲目搜索方法
3.2.1 宽度优先搜索 3.2.2 深度优先搜索 3.2.3 迭代加深搜索
❖盲目搜索 ❖启发式搜索
8
盲目搜索
➢只是可以区分 出哪个是目标 状态。
➢一般是按预定的 搜索策略进行搜 索。
➢没有考虑到问题 本身的特性,这 种搜索具有很大 的盲目性,效率 不高,不便于复
杂问题的求解。
启发式搜索 ➢是在搜索过程中
3.2-盲目搜索
Breadth-firstProcedure Breadth-first-search Begin 把初始节点放入队列; 把初始节点放入队列; Repeat 取得队列最前面的元素为current; 取得队列最前面的元素为current; If current=goal 成功返回并结束; 成功返回并结束; Else do Begin 如果current有子女, current的子女 current有子女 如果current有子女,则current的子女 以任意次序添加到队列的尾部; 以任意次序添加到队列的尾部; End Until 队列为空 End
S2
Move(B,C)
S4
B A
S5
C
B C
S6
A
B
C S7 A
C B
C A B
S3
B
A C
Move(B,A)
A
没有后裔, 没有后裔,失败退出
S8
Move(C,B)
Move(A,B)
B A C
S9
C B A
S10
A B C
图3.2 积木问题的宽度优先搜索树
图3.2表示了宽度优先搜索所产生的搜索树。各节点是以产生和扩展的先后 表示了宽度优先搜索所产生的搜索树。 表示了宽度优先搜索所产生的搜索树 次序编下标的。 次序编下标的。
2010-12-25 人工智能 丁世飞 2
对于给定问题,如何生成新状态呢? 对于给定问题,如何生成新状态呢? 定义一个四元组,以此来表示状态空间: 定义一个四元组,以此来表示状态空间: { nodes ,arc ,goal ,current }
current 表示现在 生成的用 于和目标 状态比较 的状态。
10图32积木问题的宽度优先搜索树2013129人工智能17322深度优先搜索生成节点并与目标节点进行比较是沿着树的最大深度方向进行的只有当上次访问的节点不是目标节点而且没有其他节点可以生成的时候才转到上次访问节点的父节点
S2
Move(B,C)
S4
B A
S5
C
B C
S6
A
B
C S7 A
C B
C A B
S3
B
A C
Move(B,A)
A
没有后裔, 没有后裔,失败退出
S8
Move(C,B)
Move(A,B)
B A C
S9
C B A
S10
A B C
图3.2 积木问题的宽度优先搜索树
图3.2表示了宽度优先搜索所产生的搜索树。各节点是以产生和扩展的先后 表示了宽度优先搜索所产生的搜索树。 表示了宽度优先搜索所产生的搜索树 次序编下标的。 次序编下标的。
2010-12-25 人工智能 丁世飞 2
对于给定问题,如何生成新状态呢? 对于给定问题,如何生成新状态呢? 定义一个四元组,以此来表示状态空间: 定义一个四元组,以此来表示状态空间: { nodes ,arc ,goal ,current }
current 表示现在 生成的用 于和目标 状态比较 的状态。
10图32积木问题的宽度优先搜索树2013129人工智能17322深度优先搜索生成节点并与目标节点进行比较是沿着树的最大深度方向进行的只有当上次访问的节点不是目标节点而且没有其他节点可以生成的时候才转到上次访问节点的父节点
人工智能原理之搜索技术(PPT-77页)全
参见p60图3.11)
29
第2章 搜索技术
2.2.2 深度优先搜索和深度有限搜索
• 深度优先搜索过程:
• 总是扩展搜索树的当前扩展分支(边缘)中最 深的节点
• 搜索直接伸展到搜索树的最深层,直到那里 的节点没有后继节点
• 那些没有后继节点的节点扩展完毕就从边缘 中去掉
• 然后搜索算法回退下一个还有未扩展后继节 点的上层节点继续扩展
• 描述:设每个状态为(a1, a2, a3, …, an), ai=1, 2, 3—表示第i个盘子在第1/2/3根柱 子上
13
第2章 搜索技术
河内塔(2)
• 递归定义:{(a1, a2, a3, …, an)}为n阶河内 塔的状态集合,则{(a1, a2, a3, …, an, 1), (a1, a2, a3, …, an, 2), (a1, a2, a3, …, an, 3)} 是n+1阶河内塔的状态集合
• 约束规则:不使离开既定位置的数字数增加
10
第2章 搜索技术
八数码游戏的搜索树
既定位置=终态
Begin 1 5 2
4
3
678
152 43
678
*1
2
453
678
*1 5 2 43 678
152
473
6
8
*
12 453 678
12 453 678
*
15 432 678
152 438 67
*1 2 3 45 678
8
第2章 搜索技术
2.1.2 问题实例
• 玩具问题
• 八数码游戏(九宫图) • 河内塔 • 八皇后问题 • 真空吸尘器世界
• 现实问题
29
第2章 搜索技术
2.2.2 深度优先搜索和深度有限搜索
• 深度优先搜索过程:
• 总是扩展搜索树的当前扩展分支(边缘)中最 深的节点
• 搜索直接伸展到搜索树的最深层,直到那里 的节点没有后继节点
• 那些没有后继节点的节点扩展完毕就从边缘 中去掉
• 然后搜索算法回退下一个还有未扩展后继节 点的上层节点继续扩展
• 描述:设每个状态为(a1, a2, a3, …, an), ai=1, 2, 3—表示第i个盘子在第1/2/3根柱 子上
13
第2章 搜索技术
河内塔(2)
• 递归定义:{(a1, a2, a3, …, an)}为n阶河内 塔的状态集合,则{(a1, a2, a3, …, an, 1), (a1, a2, a3, …, an, 2), (a1, a2, a3, …, an, 3)} 是n+1阶河内塔的状态集合
• 约束规则:不使离开既定位置的数字数增加
10
第2章 搜索技术
八数码游戏的搜索树
既定位置=终态
Begin 1 5 2
4
3
678
152 43
678
*1
2
453
678
*1 5 2 43 678
152
473
6
8
*
12 453 678
12 453 678
*
15 432 678
152 438 67
*1 2 3 45 678
8
第2章 搜索技术
2.1.2 问题实例
• 玩具问题
• 八数码游戏(九宫图) • 河内塔 • 八皇后问题 • 真空吸尘器世界
• 现实问题
《人工智能初步用搜索解决问题》AI培训教案ppt幻灯
◆ 使用与或图(与或树)来表示博弈过程,叫做博弈树。
《人工智能初步用搜索解决问题》AI 培训教案ppt幻灯
博弈与启发式搜索
v 博弈树的特点
◆ 博弈的初始格局是初始节点。 ◆ 在博弈树中,“或”节点和“与”节点是逐层交替出现的。自己一方
扩展的节点之间是“或”关系,对方扩展的节点之间是“与”关系。 双方轮流扩展节点。
上有可能使b成一线的数目。
《人工智能初步用搜索解决问题》AI 培训教案ppt幻灯
博弈与启发式搜索
一字棋的极大极小搜索(第一《回人合工智)能初步用搜索解决问题》AI
培训教案ppt幻灯
博弈与启发式搜索
一字棋的极大极小搜索《人工智能初步用搜索解决问题》AI
培训教案ppt幻灯
演讲完毕,谢谢听讲!
再见,see you again
n 具有盲目性,效率不高,不便于复杂问题的求解。 n 具体可以分为宽度优先搜索和深度优先搜索两种。
◆ 启发式搜索
n 在搜索求解过程中,根据问题本身的特性或搜索过程中所产生的 一些与问题有关的启发性信息,指导搜索朝着最有希望的推理方 向前进,加速问题的求解过程并找到最优解。
《人工智能初步用搜索解决问题》AI 培训教案ppt幻灯
《人工智能初步用搜索解决问题》AI 培训教案ppt幻灯
宽度优先搜索算法
《人工智能初步用搜索解决问题》AI 培训教案ppt幻灯
盲目搜索
v 深度优先搜索
◆ 深度优先搜索中,搜索树是从树根开始一枝一枝逐渐生成 的。它是一种后生成的节点先扩展的搜索方法。
◆ 基本思想:
n 从初始节点So开始,在其子节点中选择一个节点进行考察,若不 是目标节点,则再在该子节点的子节点中选择一个节点进行考察, 如果该子节点可以扩展,则扩展该子节点,依次向下搜索,在搜 索树的每一层始终先只扩展一个子节点,如此一直向下搜索,直 到某个子节点既不是目标节点又不能继续扩展时,才从当前节点 返回上一级节点,沿另一方向又继续前进。
《人工智能初步用搜索解决问题》AI 培训教案ppt幻灯
博弈与启发式搜索
v 博弈树的特点
◆ 博弈的初始格局是初始节点。 ◆ 在博弈树中,“或”节点和“与”节点是逐层交替出现的。自己一方
扩展的节点之间是“或”关系,对方扩展的节点之间是“与”关系。 双方轮流扩展节点。
上有可能使b成一线的数目。
《人工智能初步用搜索解决问题》AI 培训教案ppt幻灯
博弈与启发式搜索
一字棋的极大极小搜索(第一《回人合工智)能初步用搜索解决问题》AI
培训教案ppt幻灯
博弈与启发式搜索
一字棋的极大极小搜索《人工智能初步用搜索解决问题》AI
培训教案ppt幻灯
演讲完毕,谢谢听讲!
再见,see you again
n 具有盲目性,效率不高,不便于复杂问题的求解。 n 具体可以分为宽度优先搜索和深度优先搜索两种。
◆ 启发式搜索
n 在搜索求解过程中,根据问题本身的特性或搜索过程中所产生的 一些与问题有关的启发性信息,指导搜索朝着最有希望的推理方 向前进,加速问题的求解过程并找到最优解。
《人工智能初步用搜索解决问题》AI 培训教案ppt幻灯
《人工智能初步用搜索解决问题》AI 培训教案ppt幻灯
宽度优先搜索算法
《人工智能初步用搜索解决问题》AI 培训教案ppt幻灯
盲目搜索
v 深度优先搜索
◆ 深度优先搜索中,搜索树是从树根开始一枝一枝逐渐生成 的。它是一种后生成的节点先扩展的搜索方法。
◆ 基本思想:
n 从初始节点So开始,在其子节点中选择一个节点进行考察,若不 是目标节点,则再在该子节点的子节点中选择一个节点进行考察, 如果该子节点可以扩展,则扩展该子节点,依次向下搜索,在搜 索树的每一层始终先只扩展一个子节点,如此一直向下搜索,直 到某个子节点既不是目标节点又不能继续扩展时,才从当前节点 返回上一级节点,沿另一方向又继续前进。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
算符:使问题从一种状态变化为另一种状态的手 段称为操作符或算符。操作符可为走步、过 程、规则、数学算子、运算符号或逻辑符号 等。
例如,例子中的八数码魔方问题就可以用三元 状态空间表示为
(S0,F,Sg) 其中,S0代表初始状态,Sg代表目标状态,而F
就是所有能将初始状态变化为目标状态的算 符集合。
❖ 为了防止搜索过程沿着无益的路径扩 展下去,往往给出一个节点扩展的最大 深度——深度界限。
❖深度优先搜索算法是一种“后进先出”
的算法。
开始 把S放入OPEN表
S是否为目标节点?
是
否 是
OPEN表为空表? 否
把第一个节点(n)从OPEN表移至CLOSED表
扩展n,把其后裔放入OPEN表的前头
否是否有后继节点举 Nhomakorabea:y
2 1
0
012
x
迷宫问题
❖ 整个迷宫问题的知识表示是如书上第10页 的图2.3,这是一种状态图知识表示法。
❖ 问题是:机器人位于迷宫入口(0,0)处, 如何到达迷宫的出口(2,2)。
解:问题空间的初始状态是节点(0,0),而目 标状态是节点(2,2)。 从图2.3可见,从(0,0)到(2,2)需经过(U, R,R,U)算符集合的操作,因此本问题 的解用三元状态集合表示为: {(0,0),(U,R,R,U),(2,2)}
• 路径——在一系列节点n1,n2,,nm中, 从n1开始,ni总有分枝连接ni+1,称从n1 到nm之间的分枝集合是路径。路径中不 包含两个及以上相同的分枝,如果n1和 nm是同一个节点,则称这种路径为闭路。 不构成闭路的称为树。
• 在用状态空间图来表示问题时,对问题 的求解就是求出从初始节点到目标节点 的路径。
空
A
S0
B
S0
C
S0
D
S0
E
A
F
A
CLOSED表变化过程
编号
0 1 2
节点号
S0 A B
父节点号
空 S0 S0
图搜索的一般过程
(1) 建立一个只含有起始节点S的搜索图G,把S放到 一个叫做OPEN表的未扩展节点表中。
(2)建立一个叫做CLOSED的已扩展节点表,其初始 为空表。
(3)LOOP:若OPEN表是空表,则失败退出。 (4) 选择OPEN表上的第一个节点,把它从OPEN表移
出并放进CLOSED表中。称此节点为节点n。 (5) 若n为一目标节点,则有解并成功退出,此解是追
踪图G中沿着指针从n到S这条路径而得到的(指针 将在第7步中设置)。
图搜索的一般过程
(6) 扩展节点n,同时生成不是n的祖先的那些后继节点 的集合M。把M的这些成员作为n的后继节点添入图 G中。
(7) 对那些未曾在G中出现过的(既未曾在OPEN表上或 CLOSED表上出现过的)M成员设置一个通向n的指针。 把 M 的 这 些 成 员 加 进 OPEN 表 。 对 已 经 在 OPEN 或 CLOSED表上的每一个M成员,确定是否需要更改通 到n的指针方向。对已在CLOSED表上的每个M成员, 确定是否需要更改图G中通向它的每个后裔节点的 指针方向。
是
为目标节点?
深度优先搜索算法框图
成功 失败
成功
八数码魔方的深度优先搜索树
2. 宽度优先搜索
• 定义 以接近起始节点的程度逐层扩展节点
的搜索方法(breadth-first search),这 种盲目(无信息)搜索叫做宽度优先搜索或 横向搜索。
当Q中每个分量取定一个值时,就得到一个具 体的状态集合,如例子中的 2 8 3 就是Q0,
1
4
765
而813
2
4
765
就是Qk。
• 问题求解技术主要是两个方面:
– 问题的表示 – 求解的方法
问题的状态空间(state space)是一个表示该问 题全部可能状态及其关系的图,它包含三种 说明的集合,即所有可能的问题初始状态集 合S、算符集合F以及目标状态集合G。因此, 可把状态空间记为三元状态(S,F,G)。
第1章 搜索问题
—— 一种在图中寻找路径的 方法。
1.1 搜索问题 -知识的表示方法
1. 八数码魔方
初始节点S0
283
1
4
765
目标节点Sg
813
2
4
765
2. 状态空间表示
• 状态(State)的基本概念
状态(state)是为描述某类不同事物间的差别而 引入的一组最少变量q0,q1,…,qn的有序集合, 其矢量形式如下:
失败 成功
1.3 无信息图搜索过程
•深度优先搜索(纵向搜索) •宽度优先搜索(横向搜索) •均一代价搜索
1.深度优先搜索
• 定义
首先扩展最新产生的(即最深的)节点。深度 相等的节点可以任意排列。这种盲目(无信息) 搜索叫做深度优先搜索或纵向搜索。
• 特点
扩展最深的节点的结果使得搜索沿着状 态空间某条单一的路径从起始节点向下进行 下去;只有当搜索到达一个没有后裔的状态 时,它才考虑另一条替代的路径。
Q = [q0,q1,…,qn]T
(1)
式中每个元素qi(i=0,1,…,n)为集合的分量, 称为状态变量。给定每个分量的一组值就得到一个
具体的状态,如
Qk= [q0k,q1k,…,qnk]T
(2)
❖ 例如,八数码魔方中,所有初始节点S0构成初 始节点状态集合Q;所有目标节点Sg构成目标节点 状态集合Q。
(8) 按某一任意方式或按某个探试值,重排OPEN表。 (9) GO LOOP。
开始
把S放入OPEN表
是 OPEN表为空表?
否 把第一个节点(n)从OPEN表移至CLOSED表
n为目标节点吗?
是
否
把n的后继节点放入OPEN表的 末端,提供返回节点n的指针
修改指针方向 重排OPEN表
图搜索一般过程的框图
3. 与图有关的术语
❖ 状态空间图——由节点(不一定是有限 的节点)及连接节点的分枝的集合构成。
❖ 有限节点图——节点数目有限的图称为 有限节点图。
❖ 有向图——一对节点用分枝线连接起来, 从一个节点指向另一个节点。这种图叫 做有向图。始节点叫父节点或双亲节点, 终节点叫子节点。
• 扩展——求解父节点的所有子节点,叫 做扩展。
§1.2 图搜索策略
1. 图搜索的定义——一种计算机在状态图 中寻找路径的方法。
2.CLOSED表的引入
CLOSED表 (记录扩展过的节点)
编号 节点号 父节点号
3. OPEN表的引入
OPEN表 (记录待扩展的节点)
节点号 父节点号
举例:八数码魔方例子中
OPEN表变化过程
节点号 父节点号
S0