蚂蚁迷宫—有限状态机设计(ANT MAZE)

蚂蚁迷宫


采用有限状态机设计一个拥有智能大脑的机器人蚂蚁RoboAnt,可以自动走出迷宫。


1.S1

(1)假设我们有一只蚂蚁,蚂蚁有两只触角可以感知左边和右边(类似传感器,传递信息),暂时记为L/R,如果触角碰到迷宫墙壁则将其值设为1,反之为0。FSM的输出控制蚂蚁的行为,记F为1使蚂蚁前行,TR和TL使蚂蚁右转和左转。目的很清楚了就是让蚂蚁出去,采用的策略是右边触角靠着墙。如果蚂蚁同时可能直行或左/右转,左/右转优先,说明一下当蚂蚁触角碰到迷宫墙壁后不可以再直行咯(不撞南墙不回头?此刻转弯就行)。迷宫设计时不能包含不连接的墙也就是孤岛,不然蚂蚁可能会绕圈圈。
ANT

1.S2

假设蚂蚁最初迷失在迷宫中(ohno…I’m lost…Where is the exit…),现在明智的策略是向前直行,知道碰到迷宫的墙壁。最初的状态记为LOST, 此刻输出F。
在这里插入图片描述
接着输入L和R传感器至少有一个为1,即蚂蚁会碰到墙壁,状态记为RCCW,理论上有三种情况:
在这里插入图片描述
此时,在右手法则的条件下,为了始终保持自己右边触角靠着墙壁,蚂蚁会向左转,直到LR=00,左边右边都是0,蚂蚁不再碰到墙壁,状态记为Wall1。
在这里插入图片描述
蚂蚁接下来可以直行也可以右转,但是必须右转(优先级),时刻检查右边触角变化,做出相应改变。R=1,此刻状态记为Wall2,蚂蚁接下来可以直行也可以坐转,但是必须左转(优先级),此刻左边触角碰到墙壁后回到状态RCCW,右边触角碰到墙壁后继续保持状态Wall2,两边触角都未碰到墙壁后回到状态Wall1。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

发布了32 篇原创文章 · 获赞 64 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/qq_36215315/article/details/103132270
今日推荐