CS/IMGD 4100 (B 16)
Homework Assignment #12
Due by Web Turn-In: 6pm, Sunday, December 11
(See general homework instructions for turn-in details.)
The purpose of this assignment is to test your AI implementation skills by trying to develop a winning entry in the Raven tournament.
In order to get 10/10 on this homework, in addition to improving the performance of existing goals, you are expected to add at least two substantial new strategies to your AI Bot (e.g., like the steal health goal of Homework 9), which typically involves adding at least two new goals.
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 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
- Bot B therefore wins with adjusted score of 4.2
- Bonus points will be awarded on the final grade for the course as follows:
- Five points for the winner.
- Three points for the runner-up.
- You did not define or modify anything outside of your team folder.
- All of the classes AND GLOBAL FUNCTIONS/CONSTANTS defined in your folder start with your last name followed by an underscore.
- You DELETED obsolete files in your team folder (files that you "Exclude from Project" in the Solution Explorer are still in the file system).
- Changes you have made to Buckland's code are marked with "//*" comments.
What to Turn In
- Zip file containing YOUR TEAM CODE FOLDER ONLY.
- 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.
Please post any questions to the myWPI forum for the course.
- 1 point - Design description in README.txt file.
- 2 points - Bot plays full match without crashing.
- 2 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.)
- 1 point - Bot almost always beats Buckland's and Burke's bot.
- 2 points - Added two new non-trivial goals.
- 2 points - Software engineering quality (modularity, comments, coding style)
Acknowledgement: I would like to thank Robin Burke for allowing the reuse of this assignment.