COMP 303 Fall 2007

Project Milestone 3


To provide an opportunity to gain additional experience and skills with:

Required Problem

Implement the AI module (see the project overview) for your poker game application. This module provides behavior for computer players. This behavior provides a way for the game to automatically handle decisions that a human player would normally take (i.e., how much to bid, what cards to exchange). Isolate the behavior computer player objects should have in an interface, and implement it. In designing your AI module, you may want to consider the following points: The design of the AI module should not allow the system to break the rules of the game or to cheat. Note that the "artificial intelligence" in computer players does not have to be "smart" or rely on advanced AI techniques. However, it should be reasonable and justifiable.

As part of this milestone, update your driver program (developed for Milestone 2) to use the functionality of the AI module.

Bonus Problems

Bonus marks will be given based on the quality and originality of the solutions, at the discretion of the markers, up to a maximum of 5 additional marks out of 15. Teams with a Milestone 3 mark above 100% can carry the difference over to the next milestone.


  1. A jar file containing all your code and class files (cumulative for the entire project), including driver. Please submit through WebCT. See the schedule for the deadline.
  2. A text file (ASCII) with maximum one page of text explaining your main design, addressing the design points mentioned in "Required Problem", and explaining the rational behind the AI "behavior" you have implemented.


This part will be marked out of 15 and will be worth 15% of the overall project grade. In marking your project, we will looking for the following points: