CS/IMGD 4100 (B 16)
Homework Assignment #7
Due by Web Turn-In: 11:59pm, Wednesday, November 16
(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 soccer tournament.
In order to get 10/10 on this homework, you are expected to add a substantial new strategy to your soccer AI, which typically involves adding at least two new states to both the team and the players' state machines, along with new messages to support them, as needed.
N.B. Late homework submissions will be graded in the usual way (see course policies), but will not be eligible for the tournament.
- The tournament will be single-elimination.
- 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 goals scored with a bonus of one
to the loser for each 20% of winner's CPU time that loser conserves. For example,
- Team A scores 4 points / uses 12.053 CPU secs
- Team B scores 3 points / uses 9.109 CPU secs
- Team B's score is increased by 5 * (12.053 - 9.109) / 12.053 = 1.2
- Team B therefore wins with 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.
- 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 #5 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 - Team plays full match without crashing.
- 2 points - Team plays full match without exhibiting obviously buggy behavior (such as a player getting stuck in a corner, going in circles, never moving, etc.)
- 1 points - Team almost always beats Buckland's team.
- 2 points - Added a substantial new strategy (not just tweaking parameters or home positions).
- 2 points - Software engineering quality (modularity, comments, coding style)
Acknowledgement: I would like to thank Robin Burke for allowing the reuse of this assignment.