IMGD 400X (B 09)
Homework Assignment #12
Due by Web Turn-In: Midnight, Sunday, December 13
(See general homework instructions for turn-in details.)
The purpose of this assignment is to test your AI implementation skills by developing a winning entry in the Raven tournament.
N.B. Late homework submissions will be graded in the usual way (see homework instructions), but will not be eligible for the tournament.
- The tournament will be four-round single-elimination. Each round will include two student bots and Buckland's bot. The map will be similar, but not identical, to the default map in Buckland's code.
- Each match will be five minutes. If there is a simulation failure during the match, it will be restarted.
- If there is a tie score, the lowest CPU time wins. (In the unlikely event that CPU times are identical, winner will be determined by coin toss.)
- The match winner is determined by combining the number of kills minus the number of deaths with a bonus of one
to the loser for each 20% of winner's CPU time that loser conserves. For example,
- Bot A scores 4 / uses 12.053 CPU secs
- Bot B scores 3 / uses 9.109 CPU secs
- Bot B's score is increased by 5 * (12.053 - 9.109) / 12.053 = 1.2
- B B therefore wins with adjusted score of 4.2
- One bonus point will be added to your final course grade for every round your bot wins (maximum four points).
What to Turn In
- Zip file containing your bot's code folder only.
- Changes you have made to Buckland's code should be marked with "//*" comments.
- NB: Make sure that all the classes defined in your folder start with your last name following by underscore (so that all students' bots can be combined into one executable without conflicts).
- README.txt file describing which of your design plans from Homework #10 were implemented, and why.
- One paragraph high-level description of each implemented feature.
- Where in the code to look for the implementation details.
1 point - Design description in README.txt file.
Please post any questions to the myWPI forum for the course.
- 2 points - Bot plays full match without crashing.
- 3 points - Bot plays full match without exhibiting obviously buggy behavior (such as a player getting stuck in a corner, going in circles, never moving, etc.)
- 2 points - Bot almost always beats Buckland's and Burke's bot.
- 2 points - Software engineering quality (modularity, comments, coding style)
Acknowledgement: I would like to thank Robin Burke for allowing the reuse of this assignment.