2015 Project 3

From Multiagent Robots and Systems Group
Revision as of 12:58, 26 February 2015 by Tucker (Talk | contribs) (Suggestions on how to program the behaviors)

Jump to: navigation, search

Overview

In this project we shift to a more realistic simulation environment: PyBioSim. You can learn about how to install it and how to make it work here PyBioSim. Your task is to create a flock of at least 10 birds and a herd of at least 10 cows and to create movies of them moving around. You should vary at least one parameter of their behavior and create various movies that show how that parameter affects their behavior.

Suggestions on how to program the behaviors

This is an open ended project that is mostly up to you, but here are some ideas that you may choose to follow:

1. Expand the world to be at least 1000m x 1000m x 1000m with x=0m being "the ground." This will give your agents more room.

2. The movies should be about 2 minutes long. You can adjust the FPS factor so that you generate fewer frames, and thus you'll be able to create the movies faster.

3. Program the "ball" to move around the environment in an interesting way for the full 2 minutes. You can program your flock and herd to try to follow the ball.

4. Initialize your herd animals at Z=0, and keep them there so they don't leave the ground.

5. Initialize your flock animals at some positive Z location.

6. Initialize the animals at at otherwise random locations so we can see how well and quickly the merge into a flock/herd.

7. I suggest you use a motor schema based formulation to program your animals. Recommended schemas include: move-to-ball, move-to-herd-center, avoid-teammate, avoid-obstacle.

8. Include some obstacles in the environment so we can see how your animals deal with them.

Experiments

Conduct a quantitative comparison of your two teams. There are several ways to do this. First, of course, you can play them against each other. You can also play them against one of the example provided teams and compare the results.

In either case, you should vary the quality of communication and evaluate quantitatively how that affects the results.

Resources and Ideas

See this paper for examples of how to assess the importance of communication: https://smartech.gatech.edu/bitstream/handle/1853/22230/comm.pdf

What to Turn In

Via t-square turn in attachments only:

  • Your basic team code in a zip file: basic.zip
  • Your communicating team code in communicating.zip
  • Your report in report.pdf

You can write your code on any platform you like, but it must compile and run on gekko.cc.gatech.edu (a standard CoC linux box).