A brief overview of the emerging AI field of "General Games". This presentation was originally given as part of the Researchers' Digest series at University of Strathclyde on 14th Dec 2009.
2. Games and AI
• As long as there have been games requiring
more than one player, there has been a
desire to play them with fewer people using
automated opponents.
2
4. Some History
• The Mechanical Turk, developed in 1770,
was “capable” of playing games of chess
automatically.
3
5. Some History
• The Mechanical Turk, developed in 1770,
was “capable” of playing games of chess
automatically.
• It was actually a fraud, but the interest in
the technology has been there for 250
years.
3
8. Deep Blue
• Initially a joint Carnegie Mellon / IBM
project called “Deep Thought”
• Poor performance led to a second
incarnation as “Deep Blue”
4
9. Deep Blue
• Initially a joint Carnegie Mellon / IBM
project called “Deep Thought”
• Poor performance led to a second
incarnation as “Deep Blue”
• Beat Kasparov in one game ’96, won* a
rematch in ’97
4
10. Deep Blue
• Initially a joint Carnegie Mellon / IBM
project called “Deep Thought”
• Poor performance led to a second
incarnation as “Deep Blue”
• Beat Kasparov in one game ’96, won* a
rematch in ’97
• Brute force approach - not sophisticated
4
13. Chinook
• Checkers player developed at University of
Alberta in 1989
• Placed 2nd in US Nationals. Won the 1994
Man vs. Machine World Championship
5
14. Chinook
• Checkers player developed at University of
Alberta in 1989
• Placed 2nd in US Nationals. Won the 1994
Man vs. Machine World Championship
• Has a playbook of opening moves, a
method of evaluating game states and a
prior knowledge of all end-game states
5
16. What are “General Games”?
• Most famous players can play a single game.
6
17. What are “General Games”?
• Most famous players can play a single game.
• They use specific knowledge about these
games to become good players.
6
18. What are “General Games”?
• Most famous players can play a single game.
• They use specific knowledge about these
games to become good players.
• General Games are not known by the
player in advance. Given just a description
they must work out how best to play.
6
20. Why?
• There’s little scientific value of making AI
that can play a single game - or games in
general.
7
21. Why?
• There’s little scientific value of making AI
that can play a single game - or games in
general.
• However, the ability to adapt to new
scenarios, to reason about the behaviour of
other players and achieve an overall
objective is hugely important.
7
22. Why?
• There’s little scientific value of making AI
that can play a single game - or games in
general.
• However, the ability to adapt to new
scenarios, to reason about the behaviour of
other players and achieve an overall
objective is hugely important.
• AAAI offers an annual GGP competition
7
25. Describing Games
• Games are described by capturing their
characteristics
• Number of players (and their roles)
8
26. Describing Games
• Games are described by capturing their
characteristics
• Number of players (and their roles)
• Actions that can be taken, how they affect the
world and when they can be taken
8
27. Describing Games
• Games are described by capturing their
characteristics
• Number of players (and their roles)
• Actions that can be taken, how they affect the
world and when they can be taken
• The goal of the game for each player and the
score they get for that end-state
8
30. Advanced GDL
• Control - The GDL spec forces both
players to move concurrently. A control
predicate can be used to force a turn-based
approach, by only allowing one player to
make an important move at one time.
10
31. Advanced GDL
• Control - The GDL spec forces both
players to move concurrently. A control
predicate can be used to force a turn-based
approach, by only allowing one player to
make an important move at one time.
• Turn counter - GDL does not allow for
fluents. The only way a counter can work is
to activate a sequence of predicates.
10
33. GDL vs PDDL
• GDL has many concepts in common with
PDDL
11
34. GDL vs PDDL
• GDL has many concepts in common with
PDDL
• But its pretty primitive by comparison.
11
35. GDL vs PDDL
• GDL has many concepts in common with
PDDL
• But its pretty primitive by comparison.
• In particular, Frame Axioms are handled
INCREDIBLY badly.
11
36. GDL vs PDDL
• GDL has many concepts in common with
PDDL
• But its pretty primitive by comparison.
• In particular, Frame Axioms are handled
INCREDIBLY badly.
• In a new state, the only things that are true are
those explicitly made true by the actions taken.
11
37. Extensions to GDL
• GDL describes simplistic games.
• Much richer language required to represent
many games.
• World Description Language is an
extended version of GDL to include
modules such as random chance as
importable libraries.
12
38. Flow of a Game
• Games require a Game Master to control
them.
• GM connects to each player in turn, gives
them the GDL definition and the time
parameters
• GM then connects to each player in turn,
gives them the moves made the previous
turn and receives that player’s move.
13
41. Supporting Systems
• Need to have a Game Master system to
control execution
• Need to be able to parse a GDL definition
into something that can be manipulated
inside a program
14
42. Supporting Systems
• Need to have a Game Master system to
control execution
• Need to be able to parse a GDL definition
into something that can be manipulated
inside a program
• And of course, also need agents
14
43. GG Players
• Players communicate using TCP/IP
• Given a fixed amount of time between
being given the definition and being asked
for the first move.
• Each move request must be answered
within a limited time - typically around 5s
to pick the next move to be made and
answer the GM.
15
44. Game Heuristics
• The biggest problem with these types of
games is that there’s no general way of
analysing a given state for how “good” it is
without trying to evaluate the full space.
• This means that choosing an action at a
particular state is tough.
16
45. Another Planning Slide
• Domain independent heuristics are
something we deal with on a daily basis in
the planning side of AI
• Are our techniques applicable in some way?
17
47. RPG Applied to GGP
• The Relaxed Plan Graph is a simplistic
version of the world
18
48. RPG Applied to GGP
• The Relaxed Plan Graph is a simplistic
version of the world
• Things that have become true are always
true, there are no negative effects to
actions
18
49. RPG Applied to GGP
• The Relaxed Plan Graph is a simplistic
version of the world
• Things that have become true are always
true, there are no negative effects to
actions
• How can this be applied to GDL?
18
52. RPG - What Happens?
• Tic Tac Toe example :
facts 1 - (cell 1 1 B)
actions 1 -(mark 1 1 xplayer)
facts 2 - (cell 1 1 B) (cell 1 1 X)
• In planning this kind of retention of old
factoids is not a major issue. How
problematic is it in GDL?
20
53. Unrealistic Wins
• Tic Tac Toe - Turn 5 under the RPG
Facts 5 : (cell 1 1 B) (cell 1 2 B)....
(cell 1 1 x) (cell 1 2 x)
(cell 1 3 o) (cell 2 3 o)
Action 5 : (mark 1 3 x)
• RPG has given a false victory to x
21
54. More RPG in GDL
• Consider another aspect of the Tic Tac Toe
game:
facts 1 - (cell 1 1 B) (control xplayer)
actions 1 -(mark 1 1 xplayer)
facts 2 - (cell 1 1 B) (cell 1 1 X)
(control xplayer) (control oplayer)
22
55. Heuristics
• RPG is one of our best heuristics and it is
far too disruptive and uninformative to
apply directly to GDL - we rely much more
heavily on the delete effects of actions.
• Not to say all our heuristics will fail, or that
RPG can’t be adapted to maintain the
concept somehow but work more
effectively.
23
56. MiniMax Player
• MiniMax is a game theoretic technique that
assumes that the opponent is actively
conspiring against the player - paranoia.
• At each decision point the opponent has, it
will attempt to minimise our expected
payoff.
• The player must then find the move that
maximises this minimal payoff.
24
57. FluxPlayer
• Winner of AAAI GGP competition 2006
• Uses Fluent Calculus to determine effects
of actions in a more generalised manner
• Fuzzy Logic used to create an evaluation of
how closely a state matches a described
goal state
• Structure determination in the GDL
25
58. CADIAPlayer
• Won AAAI GGP Competition ’07 and ’08
• Created by Finnsson and Björnsson
• UCT / Monte Carlo approach
• Simulated probing to establish likely
outcomes of different actions
• Sampling biased towards better seeming
states to more fully explore these areas
26
59. Future
• Subject of an abandoned 4th Year project.
• Investigating portfolio approaches and
game classification by feature extraction.
• Planned to resume next year.
• General Games will be run as part of 3rd
Year Foundations of Artificial Intelligence
coursework.
27