Tournament Winner: Greenstein Tzaar
The project is to implement a computer program that can play the game "Tzaar." Information about this game is available at http://boardspace.net/english/about_tzaar.html . The rules and a computer version is available at the link. In the software engineering class last year, a team of students wrote a game manager that automates playing two AI clients with each other. At the end of the course you will be given the opportunity to pit your program against programs written by other students, and if your program wins then you will get 5% extra credit. The second place student will receive 2% extra credit. Your program must conform to the API for the game manager. Details are at http://code.google.com/p/daedalus-game-manager/. Go to the source and browse the docs in the trunk.
We will be playing the tournament in the CS lab on Tuesday December 6, 2:30-3:45, so you must make sure that your programs run there. To be fair in terms of processing power, you may not execute code on remote machines.
Your program has a total of 40 seconds to make its move. Both of your moves must be completed within the 40 seconds. The amount of time may be subject to change, so be sure that your program has a way to easily change the time allowed. The time allowed won't be less than 20 seconds, so if you want to count on an absolute minimum you can code for 20. Once again, this is using the machines in the CS lab.
Every team will play every other team twice, once where each team goes first. The total number of wins will determine the ranking. If there is a tie in the number of wins then if one team beat the other directly 2-0 then the winning team will place ahead of the losing team. If there is still a tie, we'll do a coin flip for who goes first and play a tiebreaker game on a random board.
We will play games using this predetermined layout: fixedstart.txt. You can load this into the game manager after it starts.
I've written a basic AI program that you can test your program against. It's a hacked up version of the GUI Client that came with the game manager and is written in C# .NET so it requires Windows. Be careful not to tune your program too much just to beat my program. Beating mine doesn't necessarily mean yours will play well against other programs! However, if your program does beat it, you can have the satisfaction of beating your professor. The program plays considerably better if the time allowed is dramatically increased, but of course this means it will play really slow.
Other AI programs: