Metagame and General Game Playing

Metagame itself is the brainchild of Barney Pell. The original Metagame is now defunct as a project. More recently, a similar idea has developed into a General Game Playing project at Stanford, with annual competitions; see below.

Jay : game learning : Metagame

Pell’s idea was that the task of writing a program to play a single game well is too narrow for artificial intelligence. It encourages you to rely on methods that work only for that game. A better task, he suggests, is to write a metagame program, a program that plays many games. You provide the program with the rules of a game, and the program tries to figure out how to play that game well. That way you’re looking for good general-purpose methods, rather than good domain-specific hacks. A single-game program will play more strongly if it’s well-tuned to that game, while a metagame program will play more strongly if it’s smart.

I think it’s a great idea. Work on machine learning of metagames could advance the overall state of the art in artificial intelligence. The class of games is broad, so a learning method that works well over a wide range of games is likely to work well in other formal domains too.

Getting down to details, Barney Pell proposed a class of what he calls “symmetric chess-like games,” and he wrote software, the Metagame Workbench, to handle them. The Workbench reads and writes rule sets of symmetric chess-like games, generates random games, and includes several Metagame player programs, from simple to sophisticated.

Although the metagame idea is elegant, the class of symmetric chess-like games is ad hoc. The definition of the class is long and complicated and full of special cases. Its purpose is to make it possible to write an automatic game generator which creates comprehensible, playable games. Once the rules are generated, the game-playing system can translate them into a simpler, more general form, such as the Game Description Language in the Metagame Workbench, or the “game of abstract mathematical relations” proposed in the Morph project.

General Game Playing

The General Game Playing project has existed since 2005. Player programs are given the rules of a game—any discrete game—in a declarative format and try to figure out for themselves how to play well. This answers the objection against Metagame that it is ad hoc. As an exercise in serious artificial intelligence, playing an arbitrary game well is seriously tough at the current state of the art.

- General Game Playing
The best place to start. The web page of a research project at the Technical University of Dresden (Technische Universität Dresden).

- General Game Playing
The official project page. In my experience, this web page changes annually to reflect each year’s competition.

- GGP Server
Software for a game server. Dresden runs a public instance so you can try your program out.

- GGP.org
An attempt to broaden the appeal of General Game Playing to include human players and human game designers.

- Künstliche Intelligenz, Volume 25
Journal table of contents. Number 1, March 2011, is a special issue on General Game Playing.

- General Game Playing course on Coursera
Michael Genesereth
The course is eight weeks and seems to include modifying an existing GGP program but not necessarily writing one’s own (which would probably take longer than the course length if done from scratch).

the original Metagame

Some links below point to a Barney Pell games research site. For something even older which contains most of the information of the long-gone Metagame ftp site, see Barney Pell papers site.

- Metagame: A new challenge for games and learning (1992 PDF)
Barney Pell
A general discussion of the metagame idea and its motivation.

- Metagame in symmetric chess-like games (1992 PDF)
Barney Pell
The definition of symmetric chess-like games, the random game generator, and a sample generated game called turncoat-chess.

- Strategy Generation and Evaluation for Meta-Game Playing (PDF)
Barney Pell
A hefty PhD thesis with all the details, including a discussion of Metagame player programs.

- A strategic metagame player for general chess-like games (1994 PDF)
Barney Pell
It’s about a system that automatically generates the evaluation function for a metagame directly from the rules, with no playing experience.

- Metagame
This now-defunct web page was about Danny Cron's Masters work on Metagame, at Monash University in Australia. There is mention of a master’s thesis on this work.

other items of interest

- Hoyle
Susan L. Epstein
Hoyle is claimed to be the first program that learned to play more than one game. Hoyle does little search and instead focuses on combining heuristics that may be incorrect and inconsistent. Most performance programs emphasize search, so it’s a refreshing difference. Hoyle’s fixed set of heuristics and learning algorithms gives it a low performance ceiling: It can learn simpler games with impressive efficiency, but not more complex or abstract games.

- Zillions of Games
A commercial Windows program which accepts game rules in a LISP-like format and plays the game. Play is “strong” according to the company, but they don’t offer details on how it works. Thousands of human-designed games are available for downloading.

- About the Values of Chess Pieces
Ralph Betza
A web page investigating the strength of various chess pieces and fairy chess pieces, part of a site about chess variants (see the Chess Variant Pages for more on fairy chess). This shows how hard the job is that Pell took on in “A strategic metagame player for general chess-like games”, above.


updated 8 November 2013 (improvements to the newly added bits)