« Neurophysiology of Romantic Love | Main | Everything Bad Is Good For You »
June 1, 2005
General Game Playing Program Competition at Stanford today!
Prof. Michael Genesereth's General Game Playing class today conducted a general game playing competition. This was particularly exciting to me as I first defined this, under the name Meta-Game Playing (or Metagame), as an AI research challenge and developed the first such playing programs during my Ph.D. research 1989-93. While there have been a few computer science classes that used my testbed over the years, this was the first time I got to see an actual general game playing competition, and one that didn't use my software or my definition of the class of games (though I did advise on the design of the class and the format of the competition).
As their main project for the course, students worked in teams to develop programs that take in the rules of games encoded in a very abstract logical language and play those games, which the students may never have seen before, without any human assistance. Today, on the last day of the course, the students' programs were given the rules of 3 different games:
- A variant of chinese checkers in which up to 6 players could play at a time.
- A game called "blocks and corridors" in which the two players make simultaneous moves on identical 3x5 grids. Each player has a single piece that start at the top right of their grid and win by being the first player to get his piece to the bottom of the grid. On each turn, a player either moves his piece or sets up a block between two rows on the opponent's board. The block covers the left or right two squares (meaning the blocked player has to move to the square on the unblocked column before moving down to the next row).
- A standard version of Othello.
The teams had worked really hard on their players and had implemented a variety of interesting visualizations and strategies, including:
- Multi-player minimax searches.
- Searching breadth and depth first in parallel.
- Making a series of (mostly) random probes to the end of the game and then taking the expected outcome for each player to decide on the statisticaly best move.
- Compiling the game descriptions into C and and then assembly language for extremely fast calculation.
- Analyzing the rules for invariants and strongly connected components (including a graphic display).
- A graphic display that shows search tree considered by the program, with gradient colored nodes indicating the program's evaluation of each position. (This was beautiful!).
Unfortunately, demo effects set in to the detriment of each of the teams. Hence, most of the programs, including ones that had performed flawlessly in practice rounds just the day before, made illegal moves, or failed to move in time. The students were understandably disappointed. Nevertheless, Mike Genesereth and I were both impressed with what they accomplished. I hope the teams continue to debug their programs so we can see what happens when the programs play as they were intended to do.
There will be a general game playing competition at the upcoming AAAI national conference in July. Since Stanford is the organizer, these students won't be able to compete for the prize, but I expect their programs will make strong showings in the open competition.
Posted by barney at June 1, 2005 8:01 PM
This entry was posted in the following categories: Games
Trackback Pings
TrackBack URL for this entry:
http://www.barneypell.com/blog/mt-tb.cgi/24
Comments
Post a comment
Thanks for signing in, . Now you can comment. (sign out)
(If you haven't left a comment here before, you may need to be approved by the site owner before your comment will appear. Until then, it won't appear on the entry. Thanks for waiting.)