人工智能经典试题及答案(2)
时间:2025-07-08
时间:2025-07-08
人工智能经典 试题及答案
2.9 用谓词表示法求解机器人摞积木问题。设机器人有一只机械手,要处理的世界有一张桌子,桌上可堆放若干相同的方积木块。机械手有4个操作积木的典型动作:从桌上拣起一块积木;将手中的积木放到桌之上;在积木上再摞上一块积木;从积木上面拣起一块积木。积木世界的布局如下图所示。
图 机器人摞积木问题
解:(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) 问题求解过程
利用上述谓词和操作,其求解过程为:
2.10 用谓词表示法求解农夫、狼、山羊、白菜问题。农夫、狼、山羊、白菜全部放在一条河的左岸,现在要把他们全部送到河的右岸去,农夫有一条船,过河时,除农夫外船上至多能载狼、山羊、白菜中的一种。狼要吃山羊,山羊要吃白菜,除非农夫在那里。似规划出一个确保全部安全过河的计划。请写出所用谓词的定义,并给出每个谓词的功能及变量的个体域。
解:(1) 先定义描述状态的谓词
要描述这个问题,需要能够说明农夫、狼、羊、白菜和船在什么位置,为简化问题表示,
上一篇:中班教师学期工作计划三篇
下一篇:波斯语,中文,英语,日常用语