15-494 Cognitive Robotics
Spring 2011
 Course Links:  Main Lectures Labs Homeworks Tekkotsu Links:   Wiki Tutorial Resources Bugs CVS Reference:

# Cognitive Robotics: Homework 5

Due date: Monday, February 21.

## Particle Filter Bingo

This is an open-ended assignment. I hope to engage your creativity. The task is to make particle filters understandable to naive robot users, such as high school students getting their first exposure to robot localization. You are going to develop a game that helps students simulate a particle filter. Below I describe one way this game could work. You are welcome to pursue this design, but if you think you might have a better idea, you can go with that instead.

Environment: There is a maze with a bunch of landmarks. You can use the Emaze as your environment: see Root Control > Framework Demos > Navigation > Emaze.

Teacher mode setup: The teacher picks a point in the maze by typing in x, y, and theta values as a text message. Alternatively, she can ask the behavior to pick these values. Your behavior sets the agent shape to the chosen coordinates and heading outputs a hexadecimal string that encodes, in a deliberately obscure way, the location and heading values. The teacher then announces this string to the class.

Student mode setup: Students run the behavior and send it the hexadecimal string as a text message. Now the behavior knows the chosen location and heading, but it does not reveal this to the student. It generates 10 random particles and displays them on the world map. It also prints out a table like this:

 Particle x y theta TotalScore 1 -52.5 300.2 0.577 0.0 ... 10 108.1 690.7 2.384 0.0

Teacher moves: Each round of play begins with the teacher sending a text message to the behavior. The behavior responds with a landmark number, a bearing, and a distance. (Rather than reporting exact values, these values should have some noise added to them.) The teacher announces these values to the class.

Student moves: The students input the landmark number, bearing, and distance via a text message. The behavior responds by updating the scores of the actual particles (visible on the world map) and printing out a new table showing the contribution of each landmark to the total score. Suppose the first observed landmark was number 8. Then the table would look like:

 Particle x y theta Lmk 8 TotalScore 1 -52.5 300.2 0.577 -61.2 -61.2 ... 10 108.1 690.7 2.384 -14.3 -14.3

If the next landmark was number 3, the table would look like:

 Particle x y theta Lmk 8 Lmk 3 TotalScore 1 -52.5 300.2 0.577 -61.2 -7.1 -68.3 ... 10 108.1 690.7 2.384 -14.3 -80.5 -94.8

Concluding the game: the game ends when the teacher's behavior runs out of landmarks, or when four landmarks have been announced. The student with the highest scoring particle announces its coordinates and heading and is declared the winner. The teacher then discloses the actual coordinates and heading so students can see how close the particle filter came to estimating the robot's true pose.