CS344M: Autonomous Multiagent Systems -- Fall 2008: Programming Assignment 4


Programming Assignment 4 for Autonomous Multiagent Systems (cs344M)


 

This assignment is designed to get you familiar with the code base that you will be using for your final project. For this, you will have two choices:

Both of these teams include all of the parsing, server interaction, and individual skills (such as passing, dribbling, intercepting, etc.). The high-level strategy that was used in the competitions is missing from both teams, however. Instead, each team has a fairly simple "placeholder" high-level strategy.

Your goal is to create a team of agents that can play a full game of soccer as follows:

When your team is ready, have it play 2 games and turn in the logfiles. One game should be against a team of agents that all go to the ball (for example 11 of your assignment 2 agents). The other should be against itself.


Using UvA Trilearn

To begin using the UvA Trilearn code, follow these steps. First, copy the code to your account:
  % cp /projects/cs344M.pstone/trilearn_base_sources-3.3.tar.gz .
Uncompress the archive:
  % tar zxvf trilearn_base_sources-3.3.tar.gz
Go into the resulting directory:
  % cd trilearn_base_sources-3.3
Run configure to generate an appropriate Makefile:
  % ./configure
Run make to compile the code:
  % make
If everything worked, you should now have a player binary in the "src/" directory called "trilearn_player". You can run this player like you ran your players from the previous assignments by starting the soccer server and then typing:
  % src/trilearn_player
Alternatively, you can run the "start.sh" script to start a whole team of trilearn_players:
  % ./start.sh
Remember to start the soccer server first!

Help on UVA_trilearn

Hints : You may want to look at the following files (though you are encouraged to go through every file and understand the functionality, not necessarily every detail).
1. /src/WorldModel.cpp
2. /src/BasicPlayer.cpp
3. /src/Player.cpp
4. /src/PlayerTeams.cpp
The player API's are mostly in BasicPlayer.cpp and Player.cpp. You may start of by looking at the PlayerTeams.cpp and from there branch to other files. WorldModel.cpp would give you run time information about the world.

Using the Brainstormers

To begin using the Brainstormers code, follow these steps. Begin by copying the code into your account:
  % cp /projects/cs344M.pstone/BS05PubRel.tar.gz .
Uncompress the archive:
  % tar zxvf BS05PubRel.tar.gz
Change to the main directory:
  % cd Brainstormers05PublicRelease/bs2k/
Run make to compile the code:
  % make
If all goes well, you should now have a Brainstormers player in the "artagent/" directory named "BS2kAgent". You can run this player like you ran your players from previous assignments by starting the soccer server and then typing:
  % artagent/BS2kAgent
You can also start a whole team of Brainstormers by running the "start_team.sh" script from the bs2k directory:
  % ../scripts/start_team.sh
Remember to start the soccer server first!
Some details:

What to turn in:


[Back to Department Homepage]

Page maintained by Peter Stone
Questions? Send me mail