好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

人工智能猴子香蕉问题.doc

6页
  • 卖家[上传人]:re****.1
  • 文档编号:534000369
  • 上传时间:2023-03-03
  • 文档格式:DOC
  • 文档大小:82KB
  • / 6 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 人工智能-猴子香蕉问题1.问题描绘在一个房间内有一只猴子(可把这只猴子看做一个机器人) 、一个箱子和一束香蕉香蕉挂在天花板下方,但猴子的高度不足以遇到它那么这只猴子如何才能摘到香蕉呢?图1表示出猴子、香蕉和箱子在房间内的相对地点用四元表列( W,x,Y,z)来表示这个问题的状态此中,W-猴子的水平地点x-当猴子在箱子顶上时取 x=1;不然取 x=0Y-箱子的水平地点z-当猴子摘到香蕉时取 z=1;不然取 z=0这个问题中的操作(算符)以下:1、goto(U)猴子走到水平地点 U,表示为Goto(U)(W,0,Y,z)-------------->(U ,0,Y,z)即把状态(W,0,Y,z)变换为状态(U,0,Y,z)2、pushbox(V)猴子把箱子推到水平地点 V,即有Pushbox(V)(W,0,W,z)---------------->(V ,0,V ,z)条件:猴子与箱子一定在同一地点上,并且,猴子不是在箱子顶上应该注意的是,要应用算符 pushbox(V),就要求 产生式规则的左侧,猴子与箱子一定在同一地点上,并且,猴子不是在箱子顶上这类强加于操作的合用性条件, 叫做产生式规则的先决条件3、climbbox猴子爬上箱顶,即有Climbbox(W,0,W,z)------------------ >(W,1,W,z)条件:猴子和箱子应该在同一地点上,并且猴子不在箱顶上。

      4、grasp猴子摘到香蕉,即有Grasp(c,1,c,0)------------------- >(c,1,c,1)条件:猴子和箱子都在地点 c上,并且猴子已在箱子顶上求解过程 令初始状态为 (a,0,b,0) 这时,goto(U)是独一合用的操作,并致使下一状态 (U,0,b,0)此刻有3个合用的操作,即goto(U),pushbox(V)和climbbox(若U=b)此中,c是香蕉正下方的地板地点,该初始状态变换为目标状态的操作序列为:{ goto(b),pushbox(c),climbbox,grasp}应该说明的是,在这类状况下,算符(操作)的合用性及作用均由产生式规则表示比如,关于规则(2),只有当算符pushbox(V)的先决条件,即猴子与箱子在同一地点上并且猴子不在箱顶上这些条件获得知足时,算符 pushbox(V)才是合用的这一操作算符的 作用是猴子把箱子推到地点v在这一表示中,目标状态的会合可由任何最后元素为 1的表列来描绘2. 源代码#include#include/1#includeintW;/*W-猴子的水平地点*/intx;/*x-当猴子在箱子顶上时取x=1;不然取x=0*/intc;/*c-是香蕉正下方的地板地点*/intY;/*Y-箱子的水平地点*/intz;/*z-当猴子摘到香蕉时取z=1;不然取z=0*/intascll=25;voidGoto( ){/*(W,0,Y,z)-------------->(U,0,Y,z)*//* 猴子从水平地点 W走到箱子的水平地点 Y1. 猴子在箱子的左侧(WY)3. 猴子在箱子上(x=1时)*/inti;printf(\猴子从水平地点 W(%d)走到箱子 Y(%d)处......\n,W,Y);printf(\WxYz\n);if(W<=Y){for(i=W;i<=Y;i++){if(i!=W)printf( %c\n,ascll);printf(State(%d,%d,%d,%d)\n,i,x,Y,z);}}else{for(i=W;i>=Y;i--){if(i!=W)printf( %c\n,ascll);printf(State(%d,%d,%d,%d)\n,i,x,Y,z);}}}voidPushBox( ){/*猴子把箱子(箱子的水平地点 Y)推到水平地点 c处(香蕉正下方的地板地点 )1. 箱子在香蕉的左侧(Yc)*/inti;if(Y==c){printf(\香蕉就在箱子的正上方 ......\n);}else{printf(\猴子把箱子(箱子的水平地点 Y(%d))推到香蕉正下方的地板地点 c(%d)\n,Y,c);}printf(\WxYz\n);2if(Y<=c){for(i=Y;i<=c;i++){if(i!=Y)printf( %c\n,ascll);printf(State(%d,%d,%d,%d)\n,i,x,Y,z);}}else{for(i=Y;i>=c;i--){if(i!=Y)printf( %c\n,ascll);printf(State(%d,%d,%d,%d)\n,i,x,Y,z);}}W=c;}voidClimbBox( ){/* 猴子爬上箱顶 */printf(\猴子爬上箱顶 ......\n);printf(\WxYz\n);printf(State(%d,%d,%d,%d)\n,W,x,Y,z);x=1;printf( %c\n,ascll);printf(State(%d,%d,%d,%d)\n,W,x,Y,z);}voidGrasp( ){/* 猴子摘到香蕉 */printf(\猴子摘到香蕉 ......\n);printf(\WxYz\n);printf(State(%d,%d,%d,%d)\n,W,x,Y,z);z=1;printf( %c\n,ascll);printf(State(%d,%d,%d,%d)\n,W,x,Y,z);}intmain( ){inti=0,select,flag=0;while(true){x=0;z=0;if(i!=0){printf(\);system(Pause);system(cls);}printf(**********信电学院计本二班郁春菊20060502103********\n\n);for(i=1;i<=10;i++){3if(i==1||i==10){printf(----------------------------------------------------------\n);}elseif(i==3){printf(|人工智能之猴子与香蕉|\n);}elseif(i==6){printf(|1.用户初始化参数|\n);printf(|2.系统随机初始化参数|\n);printf(|3.退出系统|\n);}elseif(i==9){printf(|***************** 人工智能算法 ****************|\n);}elseprintf(||\n);}/*printf(State: 初始状态 state(W,x,Y,z));*/瀠楲瑮?请选择(操作:1/2/3) :);scanf(%d,&select);if(select==3){system(cls);return0;}printf(\);system(Pause);system(cls);if(select==1){printf(\-------------------- 用户初始化参数 --------------------\n);printf(\请输入猴子的水平地点 W:);scanf(%d,&W);printf(\请输入箱子的水平地点 Y:);scanf(%d,&Y);printf(\请输入香蕉正下方的地板地点 c:);scanf(%d,&c);}elseif(select==2){flag=1;srand(time(NULL));4printf(\-------------------- 系统随机初始化参数 --------------------\n);W=rand( )_x0010_;printf(\猴子的水平地点 W:%d\n,W);Y=rand( )_x0010_;printf(\箱子的水平地点 Y:%d\n,Y);c=rand( )_x0010_;printf(\香蕉正下方的地板地点 c:%d\n,c);}if(W==Y){if(flag==0){printf(\猴子能否在箱子顶上 ?(x-当猴子在箱子顶上时取 x=1;不然取 x=0)x=);scanf(%d,&x);if(x!=0){x=1;}}else{x=rand( )%2;printf(\猴子能否在箱子顶上 ?(x-当猴子在箱子顶上时取 x=1;不然取 x=0)x=%d\n,x);}}if(x==1&&W==c){/* 猴子在箱子上 (x=1), 并且香蕉就在头顶 (W=c)*/printf(\猴子在箱子上 (x=1), 并且香蕉就在头顶 (W=c)......\n);}elseif(x==1){/* 猴子在箱子上 (x=1), 但香蕉不在头顶 (W=c)*/printf(\猴子从箱子上跳下 ......\n);x=0;/* 猴子与箱子一定在同一地点上,并且,猴子不是在箱子顶上 */PushBox( );/* 猴子和箱子应该在同一地点上,并且猴子不在箱顶上 */ClimbBox( );}else{/* 猴子从水平地点 W走到箱子的水平地点 Y*/Goto( );/* 猴子与箱子一定在同一地点上,并且,猴子不是在箱子顶上 */PushBox( );/* 猴子和箱子应该在同一地点上,并且猴子不在箱顶上 */ClimbBox( );}Gr。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.