猴子摘香蕉问题python_[转载]猴子摘香蕉问题的状态空间表示法

本文介绍了猴子摘香蕉问题的解决策略,通过状态空间表示法进行解析。使用四元组表示问题状态,包括猴子的位置、是否在箱子上、箱子的位置和是否摘到香蕉。猴子可以通过goto、pushbox、climbbox和grasp四个操作达到目标,初始状态为(a,0,b,0),最终操作序列可能为:goto(b), pushbox(c), climbbox, grasp。" 128922336,8753399,C++实战:使用CreateThread创建多线程,"['c++', '开发语言', '并发编程']
摘要由CSDN通过智能技术生成

猴子和香蕉问题(monkey and banana problem)

在一个房间内有一只猴子(可把这只猴子看做一个机器人)、一个箱子和一束香蕉。香蕉挂在天花板下方,但猴子的高度不足以碰到它。那么这只猴子怎样才能摘到香蕉呢?图2.1.1

表示出猴子、香蕉和箱子在房间内的相对位置。用一个四元

表列(W,x,Y,z)来表示这个问题的状态,

其中

W-猴子的水平位置

x-当猴子在箱子顶上时取x=1;否则取x=0

Y-箱子的水平位置

z-当猴子摘到香蕉时取z=1;否则取z=0

这个问题中的操作(算符)如下:

(1) goto(U)猴子走到水平位置U,或者用产生式规则表示为

(W,0,Y,z) (U ,0 ,Y ,z )(2.3)

即应用操作goto(U),能把状态(W,0,Y,z)变换为状态(U,0,Y,z)。

(2) pushbox(V)猴子把箱子推到水平位置V,即有

(W,0,W,z)(V ,0 ,V ,z )(2.4)

应当注意的是,要应用算符 pushbox(V),就要求

产生式规则的左边,猴子与箱子必须在同一位置上,并且,猴子不是在箱子顶上。这种强加于操作的适用性条件,叫做产生式规则的先决条件。

(3)climbbox猴子爬上箱顶,即有

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值