人工智能导论--与或图搜索

合集下载

人工智能之与或图搜索问题

人工智能之与或图搜索问题

规定MAX先手
52
静态估计函数e(P)定义为: ① 若格局 P 对任何一方都不能获胜,则 e(P) =(所有空格上都放上 MAX的棋子后,MAX 的三个棋子所组成的行、列及对角线的总数) -
(所有空格上都放上 MIN 的棋子后, MIN 的三个
棋子所组成的行、列及对角线的总数)
53
② 若 P 是MAX获胜,则 e(P)=+∞
第二章 与或图搜索问题
初始节点s
a c b
目标 目标
1
2.1 基本概念


与或图是一个超图,节点间通过连接符连 接。 K-连接符:
…...
K个
2
耗散值的计算
k(n, N) = Cn+k(n1, N)+…+k(ni, N) 其中:N为终节点集 Cn为连接符的耗散值
n
n1
…...
n2 i个
ni
3
• 解图:
2
O X X
1
O X O X
0
O O X
O
O
O
1
O O
0
O O X X
2
O
0
O
1
O
1
O O X
O X
1
X
X
X
X O X
X
O X
X O
X
X
O
2
2
3
1
O O
2
X
X
2
O O
X X
1
1
O X
X
0
X
O X
0
58
X
O X
O
1
X

人工智能导论全套精ppt课件

人工智能导论全套精ppt课件
3. 机器思维
机器思维:对通过感知得来的外部信息及机器内部的各 种工作信息进行有目的的处理。
19
21.3机人器工感智知能研究的基本内容
4. 机器学习
机器学习(machine learning):研究如何使计算机具有 类似于人的学习能力,使它能通过学习自动地获取知识。
1957年,Rosenblatt研制成功了感知机。
获取知识并应用知识求解问题 的能力
6
1.1.2 智能的特征
1. 感知能力:通过视觉、听觉、触觉、嗅觉等感觉器官 感知外部世界的能力。 80%以上信息通过视觉得到,10%信息通过听觉得到。
2. 记忆与思维能力
存储由感知器官感知到的外部信息以及由思维 所产生的知识
对记忆的信息进行处理
7
1.1.2 智能的特征
20世纪三大科学技术成就:
空间技术
原子能技术
人工智能
3
第1章 绪论
1.1 人工智能的基本概念 1.2 人工智能的发展简史 1.3 人工智能研究的基本内容 1.4 人工智能的主要研究领域
4
第1章 绪论
✓ 1.1 人工智能的基本概念
1.2 人工智能的发展简史 1.3 人工智能研究的基本内容 1.4 人工智能的主要研究领域
13
1.2.2 形成(1956年-1969年)
1956年夏,当时美国达特茅斯大学数学助教、现任斯坦福 大学教授麦卡锡和哈佛大学数学和神经学家、现任MIT教 授明斯基、IBM公司信息研究中心负责人洛切斯特、贝尔 实验室信息部数学研究员香农共同发起,邀请普林斯顿大 学莫尔和IBM公司塞缪尔、MIT的塞尔夫里奇和索罗莫夫 以及兰德公司和卡内基-梅隆大学的纽厄尔、西蒙等10名 年轻学者在达特莫斯大学召开了两个月的学术研讨会,讨 论机器智能问题。

人工智能第4章图搜索技术

人工智能第4章图搜索技术
OPEN表的首部,转步2。
例4.4 对于八数码问题,应用
深度优先搜索策略,可得如图4—
6所示的搜索树。
283
深度优先搜索亦称为纵向搜 1 4 765
索。由于一个有解的问题树可能
含有无穷分枝,深度优先搜索如
果误入无穷分枝(即深度无限,但
解不在该分支内),则不可能找到
目标节点。所以,深度优先搜索
策略是不完备的。另外,应用此
例4.6 设A城是出发地,E城是目的地,边上的数字代表 两城之间的交通费。试求从A到E最小费用的旅行路线。
B 4
6
A
3
4
A
E
C 3
D1
3
4
D2 23
E1 3
C
D
2
(a)
E2
B2 6
深度优先搜索算法:
步1 把初始节点S0放入OPEN表中; 步2 若OPEN表为空,则搜索失败,退出。
步3 取OPEN表头节点N放入CLOSED表中,并冠以顺序编号n;
步4 若目标节点Sg=N,则搜索成功,结束。 步5 若N不可扩展,则转步2; 步6 扩展N,将其所有子节点配上指向N的返回指针依次放入
2831 14 765
第4章 图搜索技术
2 283
14 765
6 83
214 765
7 283 714 65
14 83 214 765
15 283 714 65
22 83 214 765
23 813 24 765
3 23 184 765
8 23
1 84 7 65
9 23 184 765
16 1 23
第4章 图搜索技术
步1 把S0放入OPEN表中,置S0的深度d(S0)=0; 步2 若OPEN表为空,则失败,退出。 步3 取OPEN表头节点N,放入CLOSED表中,并 冠以顺序编号n; 步4 若目标节点Sg=N,则成功,结束。 步5 若N的深度d(N)=dm(深度限制值),或者若N无 子节点,则转步2; 步6 扩展N,将其所有子节点Ni配上指向N的返回 指针后依次放入OPEN表中前部,置d(Ni)=d(N)+1,转 步2。

《人工智能导论》第3章 图搜索与问题求解

《人工智能导论》第3章 图搜索与问题求解
(4)对其余子节点配上指向N的返回指针后放入OPEN表中 某处, 或对OPEN表进行重新排序, 转步2。
第 3 章 图搜索与问题求解 图 3-5 修改返回指针示例
第 3 章 图搜索与问题求解
说明:
(1) 这里的返回指针也就是父节点在CLOSED表中的编 号。
(2) 步6中修改返回指针的原因是, 因为这些节点又被第 二次生成, 所以它们返回初始节点的路径已有两条, 但这两 条路径的“长度”可能不同。 那么, 当新路短时自然要走 新路。
第 3 章 图搜索与问题求解
3.1.5 加权状态图搜索
1.加权状态图与代价树
例3.6 图3-9(a)是一个交通图,设A城是出发地,E城 是目的地, 边上的数字代表两城之间的交通费。试求 从A到E最小费用的旅行路线。
第 3 章 图搜索与问题求解 图 3-9 交通图及其代价树
第 3 章 图搜索与问题求解
第 3 章 图搜索与问题求解
3. 状态图表示
一个问题的状态图是一个三元组 (S, F, G)
其中S是问题的初始状态集合, F是问题的状态转换 规则集合, G是问题的目标状态集合。
一个问题的全体状态及其关系就构成一个空间, 称为状态空间。所以,状态图也称为状态空间图。
第 3 章 图搜索与问题求解
例 3.7 迷宫问题的状态图表示。
的返回指针和f(x)值, 修改原则是“抄f(x)
”。
(2)对其余子节点配上指向N的返回指针后放入OPEN表中, 并对OPEN表按f(x)值以升序排序, 转步2。
第 3 章 图搜索与问题求解
算法中节点x的估价函数f(x)的计算方法是 f(xj)=g(xj)+h(xj) =g(xi)+c(xi, xj)+h(xj) (xj是xi的子节点)

AI导论教学大纲-人工智能导论-廉师友-清华大学出版社

AI导论教学大纲-人工智能导论-廉师友-清华大学出版社

人工智能导论课程教学大纲廉师友编写清华大学出版社(2020)说明为了方便各位任课老师的教学,本书作者结合自己多年来给计算机专业讲授人工智能课程的教学大纲和这部《人工智能导论》新教材的内容以及该课程的基本要求,制定了这一新的教学大纲,供各位老师参考。

从内容来看,这个大纲与这部新教材是一致的,其课时应该说已达到这门课程的上限。

各位老师可根据各自院校的实际情况对该大纲的教学内容进行取舍,并确定相应的课时,以制定适合各自教学任务的教学大纲。

希望这份资料对各位任课老师的教学能有所裨益和帮助!当然,若发现其中有不妥或错误之处也请指正!作者2020年3月《人工智能导论》课程教学大纲课程编号:英文课名:Introduction to Artificial Intelligence适用专业:人工智能、计算机、自动化和电子信息类专业(考试)学时:90 学分:课程类别:专业课课程性质:必修课/必选课一、课程性质和目的《人工智能导论》为人工智能、计算机、自动化和电子信息类专业的一门必修或必选课程,其目的是使学生理解人工智能的基本原理,初步学习和掌握人工智能的基本技术,为进一步学习人工智能后续专业课程或从事人工智能的研发奠定基础,指引方向。

二、课程内容第1章人工智能概述基本内容和要求:1.理解人工智能的概念、目标和研究策略;2.理解人工智能的研究内容与方法;3.了解人工智能的分支领域;4.了解人工智能的应用与发展概况。

第2章人工智能程序设计语言基本内容和要求:1.了解人工智能程序设计语言的特点、分类和发展概况;2.理解PROLOG语言的语句特点、程序结构和运行机理,能读懂和编写简单的PROLOG 程序;3.了解Python语言的特点和使用方法,能读懂和编写简单的Python程序。

教学重点:1.PROLOG语言;2.Python语言。

教学难点:1.PROLOG语言的匹配合一和回溯控制;2.Python语言的程序结构和资源库的使用。

人工智能导论-第2章分析

人工智能导论-第2章分析
点C目前不能肯定是可解节点,故A和S0也还不能确定为可解节 点。左子树仍然是希望树,下面对节点C进行扩展。
24
与或树的有序搜索:示例
S0
A D
B
L
M
C
N
P
E
F
2
G
H
0
0
22
0
0
3
2
3
2
2
2
h(N)=2, h(P)=7, h(C)=3, h(A)=8, 由此可推算出h(S0)=9。
25
2.3 博弈树搜索
P
P1
P2
P3
2
第二章 与或图搜索问题
• 等价变换:对于一个复杂问题,除了可用“分解”方 法进行求解外,还可利用同构或同态的等价变换,把 它变换为若干个较为容易求解的新问题。若新问题中 有一个可求解,则就得到了原问题的解。因此下图称 为“或”树
P
P1
P2
P3
3
第二章 与或图搜索问题
• 与或树 P
3. 如果x是“与”节点, 则节点x的代价有两种计算方
法:和代价法与最大代价法。 n
4. 和代价法:
h( x ) ( c( x, yi ) h( yi )) i 1
5. 最大代价法:
h( x ) max { c( x, yi ) h( yi )}
6. 如果x不可扩展,且又不是终止节1点in,则定义h(x)=。
• 扩展5号节点,得到t3、t4,由于t3、t4均为终止 节点,所以被标识为可解节点,通过应用可解 标识过程可得到5、3、1号节点均为可解节点。
12
与或树的有界深度优先搜索
• 1. 把初始节点S0放入OPEN表。
• 2. 把OPEN表中的第一个节点(记为节点n)取出放入CLOSED 表。

人工智能chp.ppt

人工智能chp.ppt
(2) 第5步选择G’中的待扩展结点一般是选那些最 可能导致该局部解图耗散值发生较大变化的结点,也使 能够及时修改局部解图的标记;
(3) 与A算法类似,若s→N存在解图,当 h(n)≤h*(n)且h(n)满足单调限制条件时,AO*一定可找 到最佳解图,而h(n)=0时AO*变为宽度优先搜索算法。
第三章 可分解产生式系统搜索策略
3.3 博弈树搜索 Grundy博弈:一堆数目为N的钱币由两位选手轮流分 堆,每个选手每次只把其中某一堆分成数目不等的两 小堆,直到不能再分为数目不等的两堆时认输。下面 是对应的产生式系统描述。 综合数据库:无序数字序列x1,…xn表示n堆钱币不同 的个数,M表示对应的选手标志,组合(x1,…,xn,M)表 示了选手走步的状态。 规则:If (x1,…,xn,M)∧(xi=y+z,y≠z) Then (x1,…,xi-1,y,z,xi+1,xn,M) Grundy博弈问题搜索的状态空间图。
n0 3
n0
5

n1 n4
1 n5 1
n0
4
5
n1
n2
4 n3 4
1 n5
n1
4
n3
5
t n2

n5
1n4
4
n6

n4
n7 0

n8
0
5 n0
5
n1
tn4
n3
n2

4
4
2 n5
n6

n7
0
0 n8
第三章 可分解产生式系统搜索策略 AO*与算法A的区别:
(1) AO*评价函数只考虑h(n)分量,因算法是自底 向上的耗散值操作,局部耗散值的比较是在s处,获得 估计效果,没必要计算g的值;

人工智能中图搜索算法(PDF 159页)

人工智能中图搜索算法(PDF 159页)

图4—5 八数码问题的广度优先搜索
第9页
第4章 图搜索技术
以上两个问题都是在某个有向图中寻找目标或路径问 题,这种问题图搜索问题。把描述问题的有向图称为状态 空间图,简称状态图。图中的节点代表问题中的一种格局, 一般称为问题的一个状态,边表示两个状态之间的联系。 在状态图中,从初始节点到目标节点的一条路径或者所找 到的目标节点,就是问题的解(路径解)。
谓搜索,顾名思义,就是从初始节点出发,沿着与之相连 的边试探地前进,寻找目标节点的过程(也可以反向进行)。 搜索过程中经过的节点和边,按原图的连接关系,形成树 型的有向图,称为搜索树。搜索过程应当随时记录搜索痕 迹。
1.搜索方式 用计算机来实现状态图的搜索,有两种最基本的方式: 树式搜索和线式搜索。 所谓树式搜索,形象地讲就是以“画树”的方式进行 搜索。 即从树根(初始节点)出发一笔一笔地描出来的。
状态图实际上是一类问题的抽象表示。事实上,有许
多智力问题(如梵塔问题、旅行商问题、八皇后问题、农
夫过河问题等)和实际问题(如路径规划、定理证明、演
绎推理、机器人行动规划等)都可以归结为在某一状态图
中寻找目标或路径的问题。因此,研究状态图搜索具有普
遍意义。
第10页
第4章 图搜索技术
4.1.2 状态图搜索 在状态图中寻找目标或路径的基本方法就是搜索。所
第4章 图搜索技术
3. 搜索算法 由于搜索的目的是为了寻找初始节点到目标节点 的路径,所以在搜索过程中就得随时记录搜索轨迹。 为此,我们用一个称为CLOSED表的动态数据结构来 专门记录考查过的节点。显然,对于树式搜索来说, CLOSED表中存储的正是一棵不断成长的搜索树;而 对于线式搜索来说,CLOSED表中存储的是一条不断 伸长的折线,它可能本身就是所求的路径(如果能找到 目标节点的话)。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

3 与或图搜索
• 含义:在与或图上执行搜索的过程,其目的在于标明 起始节点是有解的,即,搜索不是去寻找到目标节点 的一条路径,而是寻找一个解图。
• 定义:一个节点被称为能解节点,其递归定义为: 1.终节点是能解节点(直接与本原问题相关联); 2.若非终节点 有 “或” 子节点时,当且仅当其子 节点至少有一个能解 ,该非终节点才能解; 3.若非终节点有 “与” 子节点时,当且仅当其子 节点均能解,该非终节点才能解。
第四章 与或图搜索
1 问题归约法 2 与或图 3 与或图搜索 4 AO*算法 5 博弈树的搜索
1 问题归约法
• 问题: 在边长为 2 的正方形内,任意放置 5 个 点,求证其中必存在两个点,它们之间的距离不 大于2。
• 问题可转化为:在四个单位正方形内,任意放置5 个点,至少有两个点在同一正方形内。
• 同A算法类似,若 s→N 存在解图,当 h(n) ≤ h*(n)且h(n)满足单调限制条件时(对n到其子 节点的每一连接符均需要满足),则 AO* 一定 能找到最佳解图.
与A*算法的区别
–评价函数只考虑 h(n): • 理由: 算法有自下而上的修正费用的的操作, 实际上局部解图费用值的估计是在起始节点 S 比较, 计算 g 既无必要也不可能.
• 第5步(n) • (n0)
• (n1)
• (n5)
• (n4)
• 第6步
• (n1,n5,n4) • (n2,n3)
• (n6,n7,n8) • (n5,n8)
• 第7步(S) • (n0)
• (n1)
• (n5)
• (n4)
• 第11步

比较,选 • n0→n1; n1
1) 比较,选 n1→n3; n3
n1 17 n3 6
2
n26 2
n7 0
n0 18
2n5 2
0 n8
n07
n0 7
2 n4
2 n5 1 3 2 0 n8
解图的求法
n7
0 n7
n0
n2
n4
n5
n8
n0 5
2
n4 1
2 n5
2
1
n80
与或图搜索与状态空间图搜索的区别:
• 搜索目的不同:是证明起始节点是否可解, 而可解节点是递归定义的,取决于后继节 点是否可解,即搜索过程是能否找到可解 的叶节点.
P
P
Q
Q
R
R
(a)
(b)
• 与节点由与运算连接(超弧),如图(a).
• 或节点由或运算连接,如图(b).
• 定义:与或图就是包含与节点和或节点 的图,即存在超弧的图,也称为超图.
• 超图与状态空间图有什么区别? 与或图是一种更一般的图.
• 定义:一超弧所相关的边数(K)被称为 该超弧的度,实现的连接称为K-连接.
5 博弈树的搜索
• 问题: 二人完备博弈: 1.由二人对垒,轮流走步,自己的走步自己选择
2.信息完备: 任何一方都完全知道对方过去的走 步情况和今后可能的走步,不包括碰运气的情况
• 表示方法: 利用与或图表示来描述博弈问题. 理由: 由于在博弈中,决定自己走步时只需考虑对 自己有利的一步——或,而考察对方时,则应考 虑对方所有可能的走步——与.
• 在一个与或图 G 中,从节点 n 到节点集 N 的解图 记为 G, G 是 G 的子图. 1.若 n 是N的一个元素,则G由单个节点n组成; 2.若 n 有一个指向节点集 {n1…,nk} 的外向连接 符 K,使得从每一个节点 ni 到 N 有一个解图 (i=1,…,k),则 G由节点 n,连接符 K,以及 {n1 ,…,nk}中的每一个节点到 N 的解图所组成; 3.否则 n 到 N 不存在解图.
1.建立初始搜索图,G:=s,计算 q(s)=h(s),IF GOAL(s) THEN M(s,SOLVED);
2. Until s 已标记为 SOLVED, do: 3. Begin 4. G := FIND(G);根据连接符标记(指针)找出一
个待扩展的侯选局部解图G(连接符在11步标记) 5. n := G 中的任一非终节点; 选一个当前节点 6. EXPAND(n),生成子节点集{ni},如果 ni G,
–自上而下的图生长过程(4-6步): 先通过有标 记的连接符,找到目前为止最好的一个局部解 图,然后对其中一个非终节点进行扩展,并对 其后继节点赋估计耗散值和加能解标记.
–自下而上的估价函数值的修正、连接符的标记 和SOLVED的标注过程(7-12): 耗散值的修正从 刚被扩展的节点n开始,其修正耗散值q(n)取所 有估计值中最小的一个,然后根据耗散值递归 计算公式逐级向上修正其先辈节点的耗散值.只 有下层节点耗散值修正后,才可能影响到上一 层节点的耗散值,如此一直修正到初始节点.
n4 1 1 n5
一次循环后
(5)n1
n3 4
(4) n0
4 n2 1 n5
n4 1
二次循环后
(5n)0
n1 (5)
n2
n3
4
4
(2)
n4 n5 1
(5) n0
n1
(5)
n2
n3
4
4
(2) n5
n4 (1)
n6
n6
2
0 n8
2
0 n8
n7 0 三次循环后
n7 0
四次循环后
不带括号的数是启发函数h(n)值,带括号数是估价函数q(n)的修正值; 短箭头用来标记连接符,标明侯选局部解图;已经标注SOLVED的节点 用黑心圆来表示。
n2i, … nki) 的每一个连接符 i 分别计算qi, qi(m)=Ci+q(n1i)+…+q(nki), 并取 q(m):= min qi (m); • 加(或修正)指针到 min qi (m) 的连接符上. IF M(nji, SOLVED) THEN M(m, SOLVED);(j=1,2,…, k)若该连接符的所有子节点都是能解的,则m也能解.
–不能优先扩展具有最小费用的节点: • 理由: K-连接符连接的有关子节点对父节点 的可解性及费用值的估计都会产生影响.
–仅适用于无环图,否则耗散值递归计算不收敛: • 方法: 当新生成的节点已在图中时,判断是 否为正被扩展节点的先辈节点.
–控制策略不同: • 没有 OPEN 表和 CLOSED 表, 只用生成的解 图结构 G, h(n) 是最佳解图的费用估计.
• K—连接符:从一个父节点指向一组含有 K个后继节点的节点集.
n1 n3
n0
n2 n5
• 在与或图中,节 点 n0 有两个连接
n4 符:1-连接符指 向节点 n1;2-连 接符指向节点集
合{n4、n5};
n6
• 对于节点 n0 来讲,
n8 n1 可称为或节点,
n4、n5 可称为与
n7
节点。
与或图
• 问题: 假定我们已经会求矩形的面积,现在要求 如图所示的五边形的面积。
• 方法分析: 五边形的面积转化为矩形面积。
①I 1
III ③ 23 II

求解步骤:
求五边形面积
①I 1
III ③
3 2 II
求 1面积 求 2面积 求 3面积

求 I面积 求 ①面积
求 II面积 求 III面积 求 ②面积 求 ③面积

1) 比较,选 n5→n7, n8;

1)比较,选 n4→ n8;
不可解;
不可解;
n7, n8可解, n8可解, n4
• 2)比较,改
n5可解;
n0→n5, n4; • 2) n0不可
n5, n4不可 解,值变;
可解; • 2) n4 , n5
可解; n0可
解; n0不可
解,值不变;
解,值变;
• 第12步
G:= ADD({ni},G),计算 q(ni)=h(ni),IF GOAL(ni) THEN M(ni, SOLVED);
7 S:={n}; 建立含 n 的节点集合S.(已扩展待修正)
8 Until S为空, do:
9 Begin
(m为S中任一节点)
10 REMOVE(m, S),当 mc{S};(m→mc ,从底层开始修正) 11 • 修改 m 的耗散值 q(m): 对 m 指向节点集 (n1i,
• 定义:不能解节点的递归定义为:
1.没有后裔的非终节点是不能解的节点;
2.若非终节点有 “或” 子节点时,当且仅 当所有子节点均不能解时,该非终节点才不 能解;
3.若非终节点有 “与” 子节点时,当至少 有一子节点不能解时,该非终节点才不能解.
解图的定义:
• 是由能解节点构成的一个子图,是包含一节点(n) 到目的(终)节点集合(N)的、连通的能解节点的子 图.
n0 h(n0)=3 • 例: 各节点启发值如
n1 h(n1)=2 n3 h(n3)=4
n6 h(n6)=2
图,k-连接符的耗散值 = k, 求最佳解图.
n2
n4 • 应用 AO* 算法,经四
h(n2)=4
h(n4)=1 个循环,可找到解图.
n5 h(n5)=1
• 在第一次循环扩展节
点 n0;然后,依次扩展 节点 n1、n5、n4。
n8 h(n8)=0
• 在节点 n4 被扩展之 后,节点 n0 便被标注 SOLVED,此时,通过向
n7 h(n7)=0
下跟踪有标记的连接符,
便获得了解图.
AO*搜索算法的过程
• 主要步骤 • 第1循环 • 第2循环
• 第3循环 • 第4循环
• 第4步(G’) • (n0)
• n0→n1
• n0→n5, n4 • n0→n5, n4;
相关文档
最新文档