预览加载中,请您耐心等待几秒...
1/9
2/9
3/9
4/9
5/9
6/9
7/9
8/9
9/9

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

知识表示方法部分 2.8设有如下语句,请用相应的谓词公式分别把他们表示出来: (1)有的人喜欢梅花,有的人喜欢菊花,有的人既喜欢梅花又喜欢菊花。 解:定义谓词 P(x):x是人 L(x,y):x喜欢y 其中,y的个体域是{梅花,菊花}。 将知识用谓词表示为: (x)(P(x)→L(x,梅花)∨L(x,菊花)∨L(x,梅花)∧L(x,菊花)) (2)有人每天下午都去打篮球。 解:定义谓词 P(x):x是人 B(x):x打篮球 A(y):y是下午 将知识用谓词表示为: (x)(y)(A(y)→B(x)∧P(x)) (3)新型计算机速度又快,存储容量又大。 解:定义谓词 NC(x):x是新型计算机 F(x):x速度快 B(x):x容量大 将知识用谓词表示为: (x)(NC(x)→F(x)∧B(x)) (4)不是每个计算机系的学生都喜欢在计算机上编程序。 解:定义谓词 S(x):x是计算机系学生 L(x,pragramming):x喜欢编程序 U(x,computer):x使用计算机 将知识用谓词表示为: ¬(x)(S(x)→L(x,pragramming)∧U(x,computer)) (5)凡是喜欢编程序的人都喜欢计算机。 解:定义谓词 P(x):x是人 L(x,y):x喜欢y 将知识用谓词表示为: (x)(P(x)∧L(x,pragramming)→L(x,computer)) 2.9用谓词表示法求解机器人摞积木问题。设机器人有一只机械手,要处理的世界有一张桌子,桌上可堆放若干相同的方积木块。机械手有4个操作积木的典型动作:从桌上拣起一块积木;将手中的积木放到桌之上;在积木上再摞上一块积木;从积木上面拣起一块积木。积木世界的布局如下图所示。 A B C CA B 图机器人摞积木问题 解:(1)先定义描述状态的谓词 CLEAR(x):积木x上面是空的。 ON(x,y):积木x在积木y的上面。 ONTABLE(x):积木x在桌子上。 HOLDING(x):机械手抓住x。 HANDEMPTY:机械手是空的。 其中,x和y的个体域都是{A,B,C}。 问题的初始状态是: ONTABLE(A) ONTABLE(B) ON(C,A) CLEAR(B) CLEAR(C) HANDEMPTY 问题的目标状态是: ONTABLE(C) ON(B,C) ON(A,B) CLEAR(A) HANDEMPTY (2)再定义描述操作的谓词 在本问题中,机械手的操作需要定义以下4个谓词: Pickup(x):从桌面上拣起一块积木x。 Putdown(x):将手中的积木放到桌面上。 Stack(x,y):在积木x上面再摞上一块积木y。 Upstack(x,y):从积木x上面拣起一块积木y。 其中,每一个操作都可分为条件和动作两部分,具体描述如下: Pickup(x) 条件:ONTABLE(x),HANDEMPTY,CLEAR(x) 动作:删除表:ONTABLE(x),HANDEMPTY 添加表:HANDEMPTY(x) Putdown(x) 条件:HANDEMPTY(x) 动作:删除表:HANDEMPTY(x) 添加表:ONTABLE(x),CLEAR(x),HANDEMPTY Stack(x,y) 条件:HANDEMPTY(x),CLEAR(y) 动作:删除表:HANDEMPTY(x),CLEAR(y) 添加表:HANDEMPTY,ON(x,y),CLEAR(x) Upstack(x,y) 条件:HANDEMPTY,CLEAR(y),ON(y,x) 动作:删除表:HANDEMPTY,ON(y,x) 添加表:HOLDING(y),CLEAR(x) (3)问题求解过程 利用上述谓词和操作,其求解过程为: ONTABLE(A) ONTABLE(B) ONTABLE(C) CLEAR(A) CLEAR(B) CLEAR(C) HANDEMPTY ONTABLE(A) ONTABLE(B) ON(C,A) CLEAR(B) CLEAR(C)HANDEMPTY ONTABLE(A) ONTABLE(B) HOLDING(C) CLEAR(A) CLEAR(B) CLEAR(C) Upstack(A,C) Putdown(C) Pickup(B) ONTABLE(A) ONTABLE(C) ON(B,C) CLEAR(A) CLEAR(B) HANDEMPTY ONTABLE(A) ONTABLE(C) HOLDING(B) CLEAR(A) CLEAR(B) CLEAR(C) ONTABLE(C) ON(B,C) ON(A,B) CLEAR(A) HANDEMPT ONTABLE(C) ON(B,C) CLEAR(A)