当前位置:文档之家› 第二章状态空间表示知识及搜索问题

第二章状态空间表示知识及搜索问题

作)
BL+1);
(q20操作)
(q02操
CL+2, BL+1);
pmc,qmc:m为船载传教士人数,c为船载野人人数
• (3)初始状态和目标状态: 即(3,3,1)和(0,0,0)。
(3 3 1)
p11 q 01
(2 2 0)
p02
(3 1 0 )
p01 q 01
(3 2 0)
q10
(3 2 1)
f8:用8斤油瓶内油去灌满6斤油瓶 (E,S)且 S < 6 且 E+S ≥ 6—→(E+S-6,6)
例: 2.3 传教士和野人问题(Missionaries and Cannibals) 有3个传教士和3个野人来到河边渡河,河岸有一条船, 每次至 多可供2人乘渡。(前提:传教士、野人都会划船,野人听从传 教士的安排,不会单独走脱,即某岸上只有野人没有传教士是允
(p02操作) (q10操作) (q01操作) (q11操作)
CL-2, BL-1); CL+1, BL+1);
f8 : if (ML, CL, BL=0) then (ML+1, CL+1,BL+1);
f9 : if (ML, CL, BL=0) then (ML+2, CL,
f10 : if (ML, CL, BL=0) then (ML,
CL,
BL-1);
(p10操作) (p01操作) (p11操作)
CL-1, BL-1); CL-1, BL-1);
f4 : if (ML, CL, BL=1) then (ML-2, CL,
f6 : if (ML, CL, BL=0) then (ML+1, CL,
BL-1);
BL+1);
(p20操作)
许的。)
问:传教士为了安全起见, 应如何规划摆渡方案, 使得任何时 刻, 河两岸以及船上的野人数目总是不超过传教士的数目(否则不 安全, 传教士有可能被野人吃掉)。即求解传教士和野人从左岸全 部摆渡到右岸的过程中, 两岸任何时刻满足M(传教士数)≥C(野人
数)和船中的人数0<M+C≤2的摆渡方案。
用三元数组(m,c,b)表示河岸上的状态,其中m,c分 别表示某岸上传教士与野人的数目,b=1表示船在这 一岸, b=0 表示船不在这一岸。 用L,R分别表示左岸右岸,用下表表示出
对象是符号,内容涉及符号表示、符号推理和搜索。 依据我们学校的条件,讲授本课程的目的就是掌握专 家系统的基本设计方法和原理
现实世界中普遍存在的问题大多数属于不良结构或 非结构问题,求解这类问题往往不存在可供使用的数学 模型,也没有现成的算法,唯有凭经验的、未完全形成 科学体系的知识,即:使用搜索方法试探求解。 弱方法: 1、问题求解给定的信息比较少,已知的信息可能是不 精确的、不完整的、甚至是模糊的。 2、使用问题求解的知识本身属于经验的、不严格的、 人类尚未完全掌握的(以后如果发现了该问题的系统知 识,则现用知识本身可能是系统知识的一部分)。
(ML, CL, BL) (0 0 0) (0 1 0) (0 2 0) (0 3 0)不会出现 (1 0 0)不合法 (1 1 0) (1 2 0)不合法 (1 3 0)不合法 (2 0 0)不合法 (2 1 0)不合法 (2 2 0) (2 3 0)不合法 (3 0 0) (3 1 0) (3 2 0) (3 3 0)不会出现
没有解路。
但是,从‘反,正,反’即初始状态(1,0,1)到
目标状态‘反,反,反’(1,1,1)有多条解题思路,
既f3 f2 f3,f1 f2 f1 ,f2 f1 f1 …
参看课本51页
例 2.2
分油问题。
有两只空油瓶,容量分别为8斤和6斤,另有一个大
油桶,里面有足够的油。我们可以任意从油桶中取出油 灌满某一油瓶,也可以把某瓶中的油全部倒回油桶,两 个油瓶之间可以互相灌。问如何在8斤油瓶中精确的得 到4斤油。
(1)状态 状态(State)用于描述叙述性知识的一组变量或 数组,也可以说成是描述问题求解过程中任意时刻的数 据结构。通常表示成: Q={q1,q2,……,qn} 当给每一个分量以确定的值时,就得到一个具体的 状态,每一个状态都是一个结点(节点)。 实际上任何一种类型的数据结构都可以用来描述状 态,只要它有利于问题求解,就可以选用。
2.1 状态空间表示知识
(4) 状态空间转换图 用图形方式表示状态空间的图,图里包含了操作和 状态之间的转换关系。 节点表示状态;有向边(弧)表示算符。
2.1 状态空间表示知识
例 2.1 钱币翻转问题
• 设有三枚硬币,其初始状态为(反,正,反),允许每 次翻转一个硬币(只翻一个硬币,必须翻一个硬币)。 必须连翻三次。问是否可以达到目标状态(正,正,正) 或(反,反,反)。 • 问题求解过程如下:
(2)规则集合: 由摆渡操作组成。 该问题主要有两种操作: pmc操作(为从左岸划向右岸) qmc操作(从右岸划向左岸) 其中,m为船载传教士人数 c为船载野人人数 每次摆渡操作,船上人数情况有5种操作,因 而组成10条规则的集合,表中前5条为pmc操 作,后5条是qmc操作
f1 : if (ML, CL, BL=1) then (ML-1, f2 : if (ML, CL, BL=1) then (ML, f3 : if (ML, CL, BL=1) then (ML-1, f5 : if (ML, CL, BL=1) then (ML, f7 : if (ML, CL, BL=0) then (ML,
第二章 知识的状态空间表示法及 搜索问题讨论
实验课时间安排:03
第十周 周三(11月8日)上午4节课计算机楼409,403
2.1 状态空间表示知识 2.2 搜索问题讨论 2.3 状态空间的与/或树表示法 2.4 状态空间的与/或树表示法举例 2.5 图搜索概念以及广度优先搜索
用数组表示的话,显然每一硬币需占一维空间,则 用三维数组状态变量表示这个知识:
Q=(q1 , q2 , q3) 取q=0 表示钱币的正面; q=1 表示钱币的反面
2.1 状态空间表示知识
引入操作: f1:把q1翻一面。 f2:把q2翻一面。 f3:把q3翻一面。 显然:F={f1,f2,f3} 构成的问题状态空间显然为: Q0=(0,0,0),Q1=(0,0,1),Q2=(0,1,0), Q3=(0,1,1), Q4=(1,0,0),Q5=(1,0,1) ,Q6=(1,1,0), Q7=(1,1,1) 目标状态:(找到的答案) Qg=(0,0,0)或(1,1,1)
模仿人类求解问题的能力始终是人工智能最基本最 重要的一项工作。如何用某种符号(化语言)表达知识 (逻辑性的信息)以及利用知识进行问题求解的推理过程 是人工智能必须解决的问题,专家系统可以看成是一种
特殊的人工智能问题求解系统。在上一章中,我们讨论
了什么是人工智能以及人工智能所研究的领域。专家系
统从本质上讲就是一个大的系统程序,这个程序处理的
f5
f10 1
f5
(0 0 0)
f3
从状态转换图中可以看出解序列有很多,但是最
短的解序列操作只有4个,即:
(p11,q10,p02,q01,p20,q11,p20,q01,p02,q01,p02 ) (p11,q10,p02,q01,p02,q11,p20,q01,p02,q10,p11 )
(p02,q01,p02,q01,p20,q11,p20,q01,p02,q01,p02 )
(p02,q01,p02,q01,p20,q11,p20,q01,p02,q10,p11 )
其中一个解题路线:(3,3,1)
(3,0,0)
p11
(2,2,0)
q10
(3,2,1)
p02
q01
p02
(0,1,0)
p20 q01 q11 p 20 (3,1,1) (1,1,0) (2,2,1) (0,2,0) (0,3,1) q01 p02
(1)综合数据库:用三元组表示比较合适, 即
(ML, CL, BL),其中 0≤ML,CL≤3,BL∈{0,1}
显然,此时问题状态空间的总状态数为4×4×2=32, 根
据约束条件的要求, 可以看出只有20个合法状态。再进
一步分析发现有4个合法状态实际上是不可能出现的。因
此实际的问题空间仅由16个状态构成。给出结果如下
(ML, (0 (0 (0 (0 (1 (1 (1 (1 (2 (2 (2 (2 (3 (3 (3 (3
CL, BL) 0 1)不会出现 1 1) 2 1) 3 1) 0 1)不合法 1 1) 2 1)不合法 3 1)不合法 0 1)不合法 1 1)不合法 2 1) 3 1)不合法 0 1)不会出现 1 1) 2 1) 3 1)
L M C B 3 3 1 R 0 0 0
L M C B 0 0 0
R 3 3 1
初始状态
目标状态
约束条件;两岸上任何时候M ≥ C,船人数上 M + C≤2 在这里仅用描述左岸的三元组描述就完整的描述了整个 情况,因此,问题的初始状态是(3,3,1),野人和传 教士以及船均在左岸,目标状态是(0,0,0)野人和传 教士以及船均不在左岸,在右岸。
3、用这些信息求解问题需要经过反复的试探或搜索。
4、得出的结果可能是不确定的。
弱方法和不确定性紧密相联,相之对应的就是强方 法。 知识的特征:相对正确性、不确定性、可表示性、可利 用性 状态空间表示知识法: 是用来表示问题及其搜索过程的一种方法 是人工智能中最基本的形式化方法
2.1 状态空间表示知识
显然,问题的表示用2维数组或状态空间描述比较 合适,第一位表示8斤油瓶油量,第二位表示6斤油瓶 油量,构成整数序列偶(E,S) E:=0,1,2,3,4,5,6,7,8 。 表示8斤油瓶中含有的油量。 S:=0,1,2,3,4,5,6。
相关主题