Final Project: Hunt the Wumpus
This is a bit ambitious, but let's see how much we get. Your
assignment is to get the robot to play Hunt the Wumpus. Hunt the
Wumpus is an
old computer
game with a number of variations. Linux includes a variation
based on the original version, called 'wump'. Our variation will include:
- A wumpus: A wumpus is a horrible beast that devours
adventurers, similar
to a grue. Wumpuses do not like to bathe, and smell unusually
bad. If you enter the room with the wumpus, it eats you.
- Bottomless pits: pits that are bottomless. You do not want to
fall down one of these. If you enter a room with a pit, you fall
it, game over.
- Odor: the offensive output of a wumpus. If you are in a room
next to wumpus, you will smell it.
- Breeze: the wind produced by bottomless pits. If you are in a
room next to the pit, you will feel a breeze.
- Arrows: You have three arrows you can use to hunt the wumpus.
Wumpuses have legendary suction cup suckers that enable them to
not fall in pits.
Of course, your robot doesn't have a nose, can't feel breeze and can't
shoot arrows, so we will approximate this by:
- Smell: If you are in a room with a red blob, that will
count as the wumpus stench.
- Breeze: If you are in a room with a blue blob, that will count
as feeling the breeze
- Arrows: If you beep, that will count as shooting an arrow.
Your task: hunt the wumpus. Write a program that controls the robot
to wanter the maze, determine where the wumpus is, and shoot it. You
will get to build a full map of the maze before having to hunt the
wumpus. You may use any ROS capability you find. Good luck; don't
die.
Details
Seeing as we don't have a real maze, we will have to hallucinate on in
the hallway. I have selected a 3x3 grid of poses that represent the
rooms of the maze. When traveling between "rooms" you travel between
adjacent poses. In that pose, you should be facing any blobs that
might be there.
The poses are:
# bottom left (8.139587521179543, 8.63396396448861, 3.0410616886749198)
# left (9.644070615554043, 8.683094483763735, 1.650208807760639)
# top left (11.644895175540258, 8.01493049491291, -0.35657076618244155)
# top middle (11.030015915392381, 6.076267627676346, -0.37105699897399447)
# middle (9.360791594244349, 6.057691499351662, -1.7465509824707264)
# bottom middle (8.170462655060051, 6.071883226345893, 3.055547921466472)
# bottom right (8.160647082083825, 2.3574255081797797, -1.5465362501921756)
# right (9.749915221882128, 2.3510081144030046, -1.5049974139947104)
# top right (11.255375611174145, 2.3953095107505495, -1.5318754844754232)
(credit to Juan Afable for helping me with these)
Advanced
For extra credit, you can add super bats!! If you are near
superbats you hear flapping (green circle). If you enter the room with
the super bats, they pick you up and transport you to a new random
location. Bats don't pick up the wumpus because of
his legendary suckers.