- 1、本文档共35页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
人工智能原理及其应用习题答案
PAGE 268
PAGE 35
知识表示方法部分参考答案
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
文档评论(0)