猴子摘香蕉实验告(含代码).docVIP

  • 51
  • 0
  • 约9.5千字
  • 约 16页
  • 2017-03-03 发布于贵州
  • 举报
猴子摘香蕉实验告(含代码)

华 中 科 技 大 学 《人工智能与模式识别》 实 验 报 告 院 系: 电子与信息工程系 班 级: 姓 名: 同 组 人: 指导老师: 电 话: 邮 箱: 日 期: 2013年12月24日 实验内容 利用一阶谓词逻辑求解猴子摘香蕉问题:房内有一个猴子,一个箱子,天花板上挂了一串香蕉,其位置如图所示,猴子为了拿到香蕉,它必须把箱子搬到香蕉下面,然后再爬到箱子上。请定义必要的谓词,列出问题的初始化状态(即下图所示状态),目标状态(猴子拿到了香蕉,站在箱子上,箱子位于位置b)。(附加:从初始状态到目标状态的谓词演算过程。) 实验平台 VC6.0 实验分析 定义描述环境状态的谓词。 AT x,w :x在t处,个体域:x? monkey ,w? a,b,c,box ; HOLD x,t :x手中拿着t,个体域:t? box,banana ; EMPTY x :x手中是空的; ON t,y :t在y处,个体域:y? b,c,ceiling ; CLEAR y :y上是空的; BOX u :u是箱子,个体域:u? box ; BANANA v :v是香蕉,个体域:v? banana ; 使用谓词、连结词、量词来表示环境状态。 问题的初始状态可表示为: So:AT monkey,a ?EMPTY monkey ?ON box,c ?ON banana,ceiling ?CLEAR b ?BOX box ? BANANA banana 要达到的目标状态为: Sg:AT monkey,box ?HOLD monkey,banana ?ON box,b ?CLEAR ceiling ?CLEAR c ? BOX box ?BANANA banana 从初始状态到目标状态的转化, 猴子需要完成一系列操作, 定义操作类谓词表示其动作。 ? a,b,c ; CARRY s,r :猴子在r处拿到s,个体域:r? c,ceiling ,s? box,banana ; CLIMB u,b :猴子在b处爬上u; 这3个操作也可分别用条件和动作来表示。条件直接用谓词公式表示是为完成相应操作所必须具备的条件当条件中的事实使其均为真时则可激活操作规则于是可执行该规则中的动作部分。动作通过前后状态的变化表示即通过从动作前删除或增加谓词公式来描述 CARRY s,r :猴子在r处拿到s 条件:AT monkey,r ?EMPTY monkey ?ON s,r ?BOX box ?BANANA banana 动作: CLIMB u,b :猴子在b处爬上u 条件:AT monkey,b ?HOLD monkey,u ?CLEAR b ?BOX box ?BANANA banana 动作: 按照行动计划, 一步步进行状态替换, 直至目标状态。 ?EMPTY monkey ?ON box,c ?ON banana,ceiling ?CLEAR b ?BOX box ? BANANA banana AT monkey,c ?EMPTY monkey ?ON box,c ?ON banana,ceiling ?CLEAR b ?BOX box ? BANANA banana AT monkey,c ?HOLD monkey,box ?ON banana,ceiling ?CLEAR b ?CLEAR c ?BOX box ? BANANA banana AT monkey,b ?HOLD monkey,box ?ON banana,ceiling ?CLEAR b ?CLEAR c ?BOX box ? BANANA banana AT monkey,box ?EMPTY monkey ?ON box,b ?ON banana,ceiling ?CLEAR c ?BOX box ? BANANA banana AT monkey,box ?HOLD monkey,banana ?ON box,b ?CLEAR ceiling ?CLEAR c ?BOX box ? BANANA banana (目标得解) 猴子行动的规则序列是:WALK a,c →CARRY c,box →WALK c,b →CLIMB box,b → CARRY banana,ceiling 在上述过程中,我们应该注意,当猴子执行某一个操作之前,需要检查当前状态是否可使所要求的条件得到满足,即证明当前状态是否蕴涵操作所要求的状态的过程。在行动过程中, 检查条件的满足性后才进行变量的代换。代入新条件后的新状态如果是目标状态,则问题解决;否则看是否满足下面的操作,如果不满足或即使满足却又回到了原来的状态,那么代入无效。 源代码 #include stru

文档评论(0)

1亿VIP精品文档

相关文档