ENVIRONMENT :
A flat, 3x3 grid surface with a wall of 2x4s around it. The main floor of the grid is "white" (a reasonably "light" color). Each cell of the grid is approximately 9.5 x 9.5 inches, and the grid will be laid out in black and red electrical tape of 3/4 inch width.. The grid lines are there only for navigational purposes and there is no interpretation difference between red and black lines. Anywhere from none to all of the 9 cells in the grid contain "dirt" (a piece of green construction paper). The SuckerBot's "home" is cell (1,1) which is the upper, left hand corner of the grid.
Home![]() |
||
![]() |
||
![]() |
![]() |
GOAL :
Ensure that each of the cells in the grid is "clean" and return "home." Upon finding dirt, the SuckerBot should suck it up (make an appropriate audible signal to a human user who must remove the construction paper before the SuckerBot may continue). Upon checking all 9 cells of the grid, the VaccuumBot should return to "home" and make a second audible signal (a little song?) to indicate that it is home.
DETAILS :
Once you have mastered the previous design, I would like you to build a SuckerBot which has imperfect knowledge of its current state. That is, all it knows upon starting is that it is in one of the 9 cells in the world (for simplicity, it may still assume that it is facing to the right). Obviously, this VaccumBot will have the same ultimate goal, but it will have to eventually determine where it is in the world. Otherwise, it can not guarantee the world is clean and it cannot find its way back home.