CS/IMGD 4100 (C 16)
Homework Assignment #7
Tournament Team
Due by Web Turn-In: 6pm, Sunday, February 7
(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.
What to Turn In
- Zip file containing your team 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 (so that all students' teams can be combined into one executable without conflicts).
- 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.
Grading
- 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)
Please post any questions to the myWPI forum for the course.
Acknowledgement: I would like to thank Robin Burke for allowing the reuse of this assignment.