General Game Playing
Encyclopedia
General Game Playing is the design of artificial intelligence
programs to be able to play more than one game successfully. For many games like chess, computers are programmed to play these games using a specially designed algorithm, which cannot be transferred to another context. For example, a chess playing computer program cannot play checkers. A General Game Playing system, if well designed, would be able to help in other areas, such as in providing intelligence for search and rescue missions.
, California
, which aims to create a platform for General Game Playing. The games are defined by sets of rules represented in the Game Description Language. In order to play the games, players interact with a game hosting server that monitors moves for legality and keeps players informed of state changes.
Since 2005, there have been annual General Game Playing competitions at the AAAI Conference. The winner of the competition is awarded with $10,000 (USD). So far, the following programs were victorious:
was developed by Jeff Mallett and Mark Lefler. The system used a LISP-like language to define the game rules. Zillions of Games derived the evaluation function
automatically from the game rules based on piece mobility, board structure and game goals. It also employed usual algorithms as found in computer chess
systems: alpha-beta pruning
with move ordering, transposition table
s, etc. The package was extended in 2007 by the addition of the Axiom plug-in, an alternate metagame engine which incorporates a complete Forth based programming language.
Artificial intelligence
Artificial intelligence is the intelligence of machines and the branch of computer science that aims to create it. AI textbooks define the field as "the study and design of intelligent agents" where an intelligent agent is a system that perceives its environment and takes actions that maximize its...
programs to be able to play more than one game successfully. For many games like chess, computers are programmed to play these games using a specially designed algorithm, which cannot be transferred to another context. For example, a chess playing computer program cannot play checkers. A General Game Playing system, if well designed, would be able to help in other areas, such as in providing intelligence for search and rescue missions.
Stanford project
General Game Playing is a project of the Stanford Logic Group of Stanford UniversityStanford University
The Leland Stanford Junior University, commonly referred to as Stanford University or Stanford, is a private research university on an campus located near Palo Alto, California. It is situated in the northwestern Santa Clara Valley on the San Francisco Peninsula, approximately northwest of San...
, California
California
California is a state located on the West Coast of the United States. It is by far the most populous U.S. state, and the third-largest by land area...
, which aims to create a platform for General Game Playing. The games are defined by sets of rules represented in the Game Description Language. In order to play the games, players interact with a game hosting server that monitors moves for legality and keeps players informed of state changes.
Since 2005, there have been annual General Game Playing competitions at the AAAI Conference. The winner of the competition is awarded with $10,000 (USD). So far, the following programs were victorious:
- 2005: Cluneplayer, by Jim Clune (UCLA)
- 2006: Fluxplayer, by Stephan Schiffel and Michael Thielscher (Dresden University of TechnologyDresden University of TechnologyThe Technische Universität Dresden is the largest institute of higher education in the city of Dresden, the largest university in Saxony and one of the 10 largest universities in Germany with 36,066 students...
) - 2007: Cadiaplayer, by Yngvi Björnsson and Hilmar Finnsson (Reykjavik UniversityReykjavík UniversityReykjavík University is a private university in Reykjavík, Iceland, and is chartered by the Chamber of Commerce, the Federation of Icelandic Industries, and the Confederation of Icelandic Employers....
) - 2008: Cadiaplayer, by Yngvi Björnsson, Hilmar Finnsson and Gylfi Þór Guðmundsson (Reykjavik UniversityReykjavík UniversityReykjavík University is a private university in Reykjavík, Iceland, and is chartered by the Chamber of Commerce, the Federation of Icelandic Industries, and the Confederation of Icelandic Employers....
) - 2009: Ary, by Jean Méhat (Paris 8 University)
- 2010: Ary, by Jean Méhat (Paris 8 University)
- 2011: TurboTurtle, by Sam Schreiber
Other approaches
There are also other General Game Playing systems, which use their own languages for defining the game rules. In 1992, Barney Pell developed the system Metagame. This system was able to play a number of chess-like games, given game rules definition in a special language. In 1998, the commercial system Zillions of GamesZillions of Games
Zillions of Games is a commercial General Game Playing system developed by Jeff Mallett and Mark Lefler in 1998. The game rules are specified with S expressions, Zillions rule language. It was designed to handle mostly abstract strategy board games or puzzles. After parsing the rules of the game,...
was developed by Jeff Mallett and Mark Lefler. The system used a LISP-like language to define the game rules. Zillions of Games derived the evaluation function
Evaluation function
An evaluation function, also known as a heuristic evaluation function or static evaluation function, is a function used by game-playing programs to estimate the value or goodness of a position in the minimax and related algorithms...
automatically from the game rules based on piece mobility, board structure and game goals. It also employed usual algorithms as found in computer chess
Computer chess
Computer chess is computer architecture encompassing hardware and software capable of playing chess autonomously without human guidance. Computer chess acts as solo entertainment , as aids to chess analysis, for computer chess competitions, and as research to provide insights into human...
systems: alpha-beta pruning
Alpha-beta pruning
Alpha-beta pruning is a search algorithm which seeks to decrease the number of nodes that are evaluated by the minimax algorithm in its search tree. It is an adversarial search algorithm used commonly for machine playing of two-player games...
with move ordering, transposition table
Transposition table
In computer chess and other computer games, transposition tables are used to speed up the search of the game tree. Transposition tables are primarily useful in perfect information games, meaning the entire state of the game is known to all players at all times....
s, etc. The package was extended in 2007 by the addition of the Axiom plug-in, an alternate metagame engine which incorporates a complete Forth based programming language.
External links
- General Game Playing Project by Stanford University.
- General Game Playing Resources provided by Dresden University of Technology.
- Axiom Development kit a meta-game development system compatible with Zillions of Games, by Greg Schmidt.
- Palamedes - A General Game Playing IDE.