Basic Mapping Exercise

 

Assignment: Create a very basic map and use it for navigation.

 

Produce an “occupancy grid” map of a simple environment.  Calibrate map distances to robot moves.  Choose particular locations and travel to them.  Gradually increase the level of difficulty of the environment and tasks.

 

1. Design a very simple workspace, e.g., rectangle and erect walls to create that workspace.

 

2. Choose a scale for the occupancy grid.  Perhaps 6 inches by 6 inches is a good starting point.

 

3. Place the robot anywhere within that space.  Designate the robot’s initial location as the point (0,0) of the grid.  Using a distance-yielding sensor, e.g., sonar, fill in the occupancy grid for the entire area of sensor capability.

  

4. Choose a distance and direction of travel (easiest if a straight line with respect to the grid) and move forward that distance.

 

5. Survey the area and determine whether the robot is at the designated spot.

 

6. If not, calibrate the measure of distance traveled to the distance measure used to create the occupancy grid.

 

7. Repeat steps 4, 5 & 6 until the two measures are reasonably close.

 

8. Repeat steps 1 through 7 for increasingly complex spaces.  Add objects to the environment.

 

9. Move to a space larger than the maximum range of the distance-yielding sensor.  Use a frontier-based mapping strategy to create an occupancy grid for the entire area.

 

10. Designate objects and “peculiar features” of the space (e.g., corners) as landmarks and build a landmark-based topological map of the space.

 

11. Give the robot shortest-path capabilities and test them out.

 

12. After allowing the robot to map an environment, move some objects around.  Give the robot the capability to update its map as it encounters changes.

 

13. Experiment with a behavior-based network approach to mapping of Toto, as per Chapter 16 of Mataric.  You may choose either (1) a distributed landmark-based map, (2) a distributed grid-based map, or (3) a combination of a global grid-based map and a distributed landmark-based map.

 

14. Replicate the behavior signaling process of Toto and use it to reach goal locations within the environment.

 

15. Similar to #12 above, create obstacles to block various paths in the environment.  How effective is the signaling process in finding ways around the obstacles?  How does this compare with the global map approach?

 

16. Create some experiments of your own and carry them out.