Computer Science
15-111 (Sections A & B), Spring 2007
Homework #9
Due: Fri
04-May-2007 at the start of class
(in-class and online submission).
Note #1: No late submissions will be accepted for this
assignment.
Note #2: Besides Othello (see below), you should
include with this assignment submission your take-home rewrite of Quiz 6 Part 2
and also your resubmitted homework 8 that abides by the test cases that were
circulated by email.
Submit a
printed copy of your assignment as you enter class. Also, for your online submission (which must
be the same as your printed submission), place your programs in hw9.zip. Include the written work in a file hw9.doc (not hw9.txt) in the top level of the zip
file. Remember to just submit your .java
files, and not your .class files, random .jpg files, or miscellaneous Eclipse
or other IDE-related files.
This is NOT
a Pair Programming assignment. You must
work alone on this assignment.
Reminder: Style counts!
Write your code according to our Style Guide!
Othello
Write a GUI-based,
minimax-based game of Othello.
To receive a C, your program must at least fully support human-human play,
complete with making legal moves, barring illegal moves, only allowing passes
when a player in fact does not have any legal moves, keeping score, and
detecting all end-of-game scenarios (that is, when both players must pass).
To receive a B, your program must at least provide a minimax-based computer
player that consistently beats a random player (when minimax is set with a
horizon at, say, depth 6).
To receive an A, your program must have a well-considered hueristic evaluation
function as well as an elegant GUI.