Bill Manaris : Spring 2009 / CSCI 470 Homework 4

Assigned Date: Thursday, Apr. 2, 2009
Due Date: Tuesday, Apr. 21
Due Time: 11:55pm

Last modified on November 05, 2013, at 06:21 PM (see updates)

Purpose

This assignment focuses on:

This is a pair-programming assignment (i.e., you may work with a partner). You may discuss the assignment only with your partner or the instructor.

Assignment

Write a Python program that plays a game of Pentago. Pentago is similar to Tic-Tac-Toe, except:

Here is an illustration:

Specification

Input

Output

Testing

If you are doing the bonus (i.e., alpha-beta pruning), you should first get minimax to work.

Also, to further simplify things, remove turning from a move (i.e., move consists of placing a ball in an empty hole). I.e., the game is reduced to a 6x6 tic-tac-toe.

Of course, this is just a subset of the possible tests one could run.

Documentation

All programs that you complete in your career as a student and as a professional developer should be fully documented. Obviously, you should comment any variable, obscure statement, block of code, method, and class you create. Your comments should express why something is being done, as opposed to how the how is shown by the code. Also, include opening comments as specified in previous assignment.

Submission

  1. Submit a README.txt file. Include your names, class, homework assignment, date. Also discuss the following:
    1. How to play your game. Feel free to rephrase the above.
    2. Any known limitations of your game (e.g., if/when it crashes, or something not implemented, etc.). You get more points by knowing and documenting your program's limitations (in the README file, and in your code).
  2. Your source code, pentago.py, fully documented and tested.
  3. The view code, pentagoView.py, with any changes fully documented and tested.
    1. Also include, graphics22.py, minimax.py or alpha-beta-search.py (whichever you used), utils.py, and all necessary images.

Grading

Your grade will be based on how well you followed the above instructions, and the depth/quality of your work.

(Printable View of http://www.cs.cofc.edu/~manaris/?n=Spring2009.CSCI470Homework4)