In this assignment, you will program a robotic ant colony to use stigmergic communication techniques to locate food and navigate between the home and food source. All of the ant robots have the use of the sonar sensor, as well as access to the fiducial proxy, which can be used to determine whether the robot is home or at the food source. You will program your robots to wander around randomly until they find food. Then, they will travel between home and the food source. Your ant colony will compute the shortest path through some tunnels to a food source.
- You may not hard code the locations of home and food.
- Your ants must make completely random moves (e.g., not going directly diagonally towards the food).
- Your ants may lay two types of pheromones or simply change the direction of the gradient when traveling back home.
- Your robots can only read the pheromone levels of adjacent squares---they cannot access another robot's proxies.
- Your robots can only share the data structure you created to store the pheromone map.
- You may use any decay function you like.
- Document your approach and produce some kind of visualization showing convergence (e.g., movie showing pheromone strength over time).
- You may use the same client code for both maps.
As with previous assignments, you will be provided with configuration files and maps.
The configuration file is provided here: Media:stigmergic-config.zip.
As before, an optional skeleton program is provided for the client.
- Sonar - This robot contains the sonar sensor.
- You may start with ants.cpp as your client file.
- To run:
- Email your robot client code to both TAs with a README file containing any necessary build instructions.
- If something does not work properly or is incomplete, please say so in the README.
We'd like feedback comparing AHOY and Player/Stage. Specifically, we're interested in the ease of use, simplicity of setup, and any other feedback you have. Please include a brief (1 paragraph is more than sufficient) comparison of you experiences.
- Colony converges (7 points)
- Visualization (3 points)
- Code Documentation & AHOY/PS Feedback (5 points)
Total: 15 points
Media:Miller-open-1.avi Open map simulation.
Media:Miller-paths-2.avi Paths map simulation.