SlideShare a Scribd company logo
General Game Playing



         1
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
Some History




     3
Some History
• The Mechanical Turk, developed in 1770,
  was “capable” of playing games of chess
  automatically.




                     3
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
Deep Blue




    4
Deep Blue
• Initially a joint Carnegie Mellon / IBM
  project called “Deep Thought”




                      4
Deep Blue
• Initially a joint Carnegie Mellon / IBM
  project called “Deep Thought”
• Poor performance led to a second
  incarnation as “Deep Blue”




                      4
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
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
Chinook




   5
Chinook
• Checkers player developed at University of
  Alberta in 1989




                     5
Chinook
• Checkers player developed at University of
  Alberta in 1989
• Placed 2nd in US Nationals. Won the 1994
  Man vs. Machine World Championship




                     5
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
What are “General Games”?




            6
What are “General Games”?
• Most famous players can play a single game.




                     6
What are “General Games”?
• Most famous players can play a single game.
• They use specific knowledge about these
  games to become good players.




                     6
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
Why?




 7
Why?
• There’s little scientific value of making AI
  that can play a single game - or games in
  general.




                       7
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
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
Describing Games




       8
Describing Games
• Games are described by capturing their
  characteristics




                     8
Describing Games
• Games are described by capturing their
  characteristics
   •   Number of players (and their roles)




                        8
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
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
GDL
(ROLE XPLAYER) (ROLE OPLAYER)
(INIT (CELL 1 1 B)) (INIT (CELL 1 2 B)) (INIT (CELL 1 3 B)) ......
(<= (NEXT (CELL ?M ?N X)) (DOES XPLAYER (MARK ?M ?N)) (TRUE (CELL ?M ?N B)))
(<= (NEXT (CELL ?M ?N B)) (DOES ?W (MARK ?J ?K)) (TRUE (CELL ?M ?N B))
       (OR (DISTINCT ?M ?J) (DISTINCT ?N ?K))
(<= (ROW ?M ?X)

    (TRUE (CELL ?M 1 ?X)) (TRUE (CELL ?M 2 ?X)) (TRUE (CELL ?M 3 ?X)))
(<= (LINE ?X) (ROW ?M ?X))
(<= (LEGAL ?W (MARK ?X ?Y)) (TRUE (CELL ?X ?Y B)) (TRUE (CONTROL ?W)))
(<= (LEGAL XPLAYER NOOP) (TRUE (CONTROL OPLAYER)))
(<= (GOAL XPLAYER 100) (LINE X))
(<= (GOAL OPLAYER 0) (LINE X))
(<= (GOAL OPLAYER 50) (NOT (LINE X)) (NOT (LINE O)) (NOT OPEN))




                                            9
Advanced GDL




     10
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
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
GDL vs PDDL




     11
GDL vs PDDL
• GDL has many concepts in common with
  PDDL




                  11
GDL vs PDDL
• GDL has many concepts in common with
  PDDL
• But its pretty primitive by comparison.



                     11
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
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
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
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
Supporting Systems




        14
Supporting Systems
• Need to have a Game Master system to
  control execution




                      14
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
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
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
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
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
RPG Applied to GGP




        18
RPG Applied to GGP
• The Relaxed Plan Graph is a simplistic
  version of the world




                     18
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
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
RPG Applied to GGP




        18
RPG Applied to GGP


        It can’t




         19
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
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
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
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
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
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
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
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

More Related Content

Viewers also liked

Scrabble game
Scrabble gameScrabble game
Scrabble game
Gigantz
 
Art 9 Art of the Classical Period
Art 9 Art of the Classical PeriodArt 9 Art of the Classical Period
Art 9 Art of the Classical Period
Cholzki Maturan
 
ART 9 FIRST QUARTER
ART 9 FIRST QUARTERART 9 FIRST QUARTER
ART 9 FIRST QUARTER
mary katrine belino
 
Classical Art
Classical ArtClassical Art
Classical Art
Ren
 
Mini thesis complete
Mini thesis   completeMini thesis   complete
Mini thesis complete
Mohamad Hilmi
 
Classical Art Forms
Classical Art FormsClassical Art Forms
Classical Art Forms
mrbollin44
 
Roman art
Roman artRoman art
History of Chess
History of ChessHistory of Chess
History of Chess
ZugZwang Chess School
 
Roman art ppt
Roman art pptRoman art ppt
ANCIENT GREEK ART PPT
ANCIENT GREEK ART PPTANCIENT GREEK ART PPT
ANCIENT GREEK ART PPT
Rachy Siapno
 
Table tennis
Table tennisTable tennis
Table tennis
iheartmusic29
 
Grade 9 Module In ARTS
Grade 9 Module In ARTSGrade 9 Module In ARTS
Grade 9 Module In ARTS
Kimberly Abao
 
Badminton Game Information
Badminton Game InformationBadminton Game Information
Badminton Game Information
SquareOffSports
 
Table Tennis Overview
Table Tennis OverviewTable Tennis Overview
Table Tennis Overview
squareoff
 
Chess P.E
Chess P.EChess P.E
Chess P.E
Ana Eranueva
 
Greek and roman art history
Greek and roman art historyGreek and roman art history
Greek and roman art history
dbk87
 
Greek Art and Architecture
Greek Art and ArchitectureGreek Art and Architecture
Greek Art and Architecture
Greg Sill
 
Faclilities and equipment used for the game basketball
Faclilities and equipment used for the game basketballFaclilities and equipment used for the game basketball
Faclilities and equipment used for the game basketball
JO GALLEGOS
 
Chess
ChessChess
Chess
Chuck Vohs
 
Badminton power point presentation
Badminton power point presentationBadminton power point presentation
Badminton power point presentation
nikkiabarentos
 

Viewers also liked (20)

Scrabble game
Scrabble gameScrabble game
Scrabble game
 
Art 9 Art of the Classical Period
Art 9 Art of the Classical PeriodArt 9 Art of the Classical Period
Art 9 Art of the Classical Period
 
ART 9 FIRST QUARTER
ART 9 FIRST QUARTERART 9 FIRST QUARTER
ART 9 FIRST QUARTER
 
Classical Art
Classical ArtClassical Art
Classical Art
 
Mini thesis complete
Mini thesis   completeMini thesis   complete
Mini thesis complete
 
Classical Art Forms
Classical Art FormsClassical Art Forms
Classical Art Forms
 
Roman art
Roman artRoman art
Roman art
 
History of Chess
History of ChessHistory of Chess
History of Chess
 
Roman art ppt
Roman art pptRoman art ppt
Roman art ppt
 
ANCIENT GREEK ART PPT
ANCIENT GREEK ART PPTANCIENT GREEK ART PPT
ANCIENT GREEK ART PPT
 
Table tennis
Table tennisTable tennis
Table tennis
 
Grade 9 Module In ARTS
Grade 9 Module In ARTSGrade 9 Module In ARTS
Grade 9 Module In ARTS
 
Badminton Game Information
Badminton Game InformationBadminton Game Information
Badminton Game Information
 
Table Tennis Overview
Table Tennis OverviewTable Tennis Overview
Table Tennis Overview
 
Chess P.E
Chess P.EChess P.E
Chess P.E
 
Greek and roman art history
Greek and roman art historyGreek and roman art history
Greek and roman art history
 
Greek Art and Architecture
Greek Art and ArchitectureGreek Art and Architecture
Greek Art and Architecture
 
Faclilities and equipment used for the game basketball
Faclilities and equipment used for the game basketballFaclilities and equipment used for the game basketball
Faclilities and equipment used for the game basketball
 
Chess
ChessChess
Chess
 
Badminton power point presentation
Badminton power point presentationBadminton power point presentation
Badminton power point presentation
 

Similar to General Game Playing

Examining Game World Topology Personalization
Examining Game World Topology PersonalizationExamining Game World Topology Personalization
Examining Game World Topology Personalization
Sauvik Das
 
Knowing When to Hold 'Em, When to Fold 'Em and When to Blow 'Em Up
Knowing When to Hold 'Em, When to Fold 'Em and When to Blow 'Em UpKnowing When to Hold 'Em, When to Fold 'Em and When to Blow 'Em Up
Knowing When to Hold 'Em, When to Fold 'Em and When to Blow 'Em Up
Luke Dicken
 
Lecture 6 - Procedural Content and Player Models
Lecture 6 - Procedural Content and Player ModelsLecture 6 - Procedural Content and Player Models
Lecture 6 - Procedural Content and Player Models
Luke Dicken
 
Game Development 1 - What is a Game?
Game Development 1 - What is a Game?Game Development 1 - What is a Game?
Game Development 1 - What is a Game?
Luke Dicken
 
Eisenberg Flow for AgileDC
Eisenberg Flow for AgileDCEisenberg Flow for AgileDC
Eisenberg Flow for AgileDC
Robert Eisenberg
 
Game theory
Game theoryGame theory
Game theory
Fraboni Ec
 
Game theory
Game theoryGame theory
Game theory
Harry Potter
 
Game theory
Game theoryGame theory
Game theory
Luis Goldster
 
Game theory
Game theoryGame theory
Game theory
Tony Nguyen
 
Game theory
Game theoryGame theory
Game theory
James Wong
 
Game theory
Game theoryGame theory
Game theory
Hoang Nguyen
 
Game theory
Game theoryGame theory
Game theory
Young Alista
 
Lecture 7 - Experience Management
Lecture 7 - Experience ManagementLecture 7 - Experience Management
Lecture 7 - Experience Management
Luke Dicken
 
Lecture 5 - Procedural Content Generation
Lecture 5 - Procedural Content GenerationLecture 5 - Procedural Content Generation
Lecture 5 - Procedural Content Generation
Luke Dicken
 
SAIG Overview March 2011
SAIG Overview March 2011SAIG Overview March 2011
SAIG Overview March 2011
Luke Dicken
 
Artificial Intelligence in Computer and Video Games
Artificial Intelligence in Computer and Video GamesArtificial Intelligence in Computer and Video Games
Artificial Intelligence in Computer and Video Games
Luke Dicken
 
The Holy Grail Of Multiplayer (Andrew Yoder).pdf
The Holy Grail Of Multiplayer (Andrew Yoder).pdfThe Holy Grail Of Multiplayer (Andrew Yoder).pdf
The Holy Grail Of Multiplayer (Andrew Yoder).pdf
HudsonHawk2
 
Game AI 101 - NPCs and Agents and Algorithms... Oh My!
Game AI 101 - NPCs and Agents and Algorithms... Oh My!Game AI 101 - NPCs and Agents and Algorithms... Oh My!
Game AI 101 - NPCs and Agents and Algorithms... Oh My!
Luke Dicken
 
Presentation sanlab workshops
Presentation sanlab workshopsPresentation sanlab workshops
Presentation sanlab workshops
Artur Roszczyk
 
Game theory application
Game theory applicationGame theory application
Game theory application
shakebaumar
 

Similar to General Game Playing (20)

Examining Game World Topology Personalization
Examining Game World Topology PersonalizationExamining Game World Topology Personalization
Examining Game World Topology Personalization
 
Knowing When to Hold 'Em, When to Fold 'Em and When to Blow 'Em Up
Knowing When to Hold 'Em, When to Fold 'Em and When to Blow 'Em UpKnowing When to Hold 'Em, When to Fold 'Em and When to Blow 'Em Up
Knowing When to Hold 'Em, When to Fold 'Em and When to Blow 'Em Up
 
Lecture 6 - Procedural Content and Player Models
Lecture 6 - Procedural Content and Player ModelsLecture 6 - Procedural Content and Player Models
Lecture 6 - Procedural Content and Player Models
 
Game Development 1 - What is a Game?
Game Development 1 - What is a Game?Game Development 1 - What is a Game?
Game Development 1 - What is a Game?
 
Eisenberg Flow for AgileDC
Eisenberg Flow for AgileDCEisenberg Flow for AgileDC
Eisenberg Flow for AgileDC
 
Game theory
Game theoryGame theory
Game theory
 
Game theory
Game theoryGame theory
Game theory
 
Game theory
Game theoryGame theory
Game theory
 
Game theory
Game theoryGame theory
Game theory
 
Game theory
Game theoryGame theory
Game theory
 
Game theory
Game theoryGame theory
Game theory
 
Game theory
Game theoryGame theory
Game theory
 
Lecture 7 - Experience Management
Lecture 7 - Experience ManagementLecture 7 - Experience Management
Lecture 7 - Experience Management
 
Lecture 5 - Procedural Content Generation
Lecture 5 - Procedural Content GenerationLecture 5 - Procedural Content Generation
Lecture 5 - Procedural Content Generation
 
SAIG Overview March 2011
SAIG Overview March 2011SAIG Overview March 2011
SAIG Overview March 2011
 
Artificial Intelligence in Computer and Video Games
Artificial Intelligence in Computer and Video GamesArtificial Intelligence in Computer and Video Games
Artificial Intelligence in Computer and Video Games
 
The Holy Grail Of Multiplayer (Andrew Yoder).pdf
The Holy Grail Of Multiplayer (Andrew Yoder).pdfThe Holy Grail Of Multiplayer (Andrew Yoder).pdf
The Holy Grail Of Multiplayer (Andrew Yoder).pdf
 
Game AI 101 - NPCs and Agents and Algorithms... Oh My!
Game AI 101 - NPCs and Agents and Algorithms... Oh My!Game AI 101 - NPCs and Agents and Algorithms... Oh My!
Game AI 101 - NPCs and Agents and Algorithms... Oh My!
 
Presentation sanlab workshops
Presentation sanlab workshopsPresentation sanlab workshops
Presentation sanlab workshops
 
Game theory application
Game theory applicationGame theory application
Game theory application
 

More from Luke Dicken

Advances in Game AI
Advances in Game AIAdvances in Game AI
Advances in Game AI
Luke Dicken
 
Diversity in NPC AI
Diversity in NPC AIDiversity in NPC AI
Diversity in NPC AI
Luke Dicken
 
You're Not Special, Neither am I
You're Not Special, Neither am IYou're Not Special, Neither am I
You're Not Special, Neither am I
Luke Dicken
 
Procedural Processes - Lessons Learnt from Automated Content Generation in "E...
Procedural Processes - Lessons Learnt from Automated Content Generation in "E...Procedural Processes - Lessons Learnt from Automated Content Generation in "E...
Procedural Processes - Lessons Learnt from Automated Content Generation in "E...
Luke Dicken
 
Game AI For the Masses
Game AI For the MassesGame AI For the Masses
Game AI For the Masses
Luke Dicken
 
The International Game Developers Association
The International Game Developers AssociationThe International Game Developers Association
The International Game Developers Association
Luke Dicken
 
Lecture 8 - What is Game AI? Final Thoughts
Lecture 8 - What is Game AI? Final ThoughtsLecture 8 - What is Game AI? Final Thoughts
Lecture 8 - What is Game AI? Final Thoughts
Luke Dicken
 
Lecture 3 - Decision Making
Lecture 3 - Decision MakingLecture 3 - Decision Making
Lecture 3 - Decision Making
Luke Dicken
 
Lecture 2 - Probability
Lecture 2 - ProbabilityLecture 2 - Probability
Lecture 2 - Probability
Luke Dicken
 
Lecture 1 - Game Theory
Lecture 1 - Game TheoryLecture 1 - Game Theory
Lecture 1 - Game Theory
Luke Dicken
 
Lecture 4 - Opponent Modelling
Lecture 4 - Opponent ModellingLecture 4 - Opponent Modelling
Lecture 4 - Opponent Modelling
Luke Dicken
 
What I Done on my Holidays
What I Done on my HolidaysWhat I Done on my Holidays
What I Done on my Holidays
Luke Dicken
 
Influence Landscapes - From Spatial to Conceptual Representations
Influence Landscapes - From Spatial to Conceptual RepresentationsInfluence Landscapes - From Spatial to Conceptual Representations
Influence Landscapes - From Spatial to Conceptual Representations
Luke Dicken
 
The Strathclyde Poker Research Environment
The Strathclyde Poker Research EnvironmentThe Strathclyde Poker Research Environment
The Strathclyde Poker Research Environment
Luke Dicken
 
The Ludic Fallacy Applied to Automated Planning
The Ludic Fallacy Applied to Automated PlanningThe Ludic Fallacy Applied to Automated Planning
The Ludic Fallacy Applied to Automated Planning
Luke Dicken
 
Integrated Influence - The Six Million Dollar Man of AI
Integrated Influence - The Six Million Dollar Man of AIIntegrated Influence - The Six Million Dollar Man of AI
Integrated Influence - The Six Million Dollar Man of AI
Luke Dicken
 
Robust Agent Execution
Robust Agent ExecutionRobust Agent Execution
Robust Agent Execution
Luke Dicken
 

More from Luke Dicken (17)

Advances in Game AI
Advances in Game AIAdvances in Game AI
Advances in Game AI
 
Diversity in NPC AI
Diversity in NPC AIDiversity in NPC AI
Diversity in NPC AI
 
You're Not Special, Neither am I
You're Not Special, Neither am IYou're Not Special, Neither am I
You're Not Special, Neither am I
 
Procedural Processes - Lessons Learnt from Automated Content Generation in "E...
Procedural Processes - Lessons Learnt from Automated Content Generation in "E...Procedural Processes - Lessons Learnt from Automated Content Generation in "E...
Procedural Processes - Lessons Learnt from Automated Content Generation in "E...
 
Game AI For the Masses
Game AI For the MassesGame AI For the Masses
Game AI For the Masses
 
The International Game Developers Association
The International Game Developers AssociationThe International Game Developers Association
The International Game Developers Association
 
Lecture 8 - What is Game AI? Final Thoughts
Lecture 8 - What is Game AI? Final ThoughtsLecture 8 - What is Game AI? Final Thoughts
Lecture 8 - What is Game AI? Final Thoughts
 
Lecture 3 - Decision Making
Lecture 3 - Decision MakingLecture 3 - Decision Making
Lecture 3 - Decision Making
 
Lecture 2 - Probability
Lecture 2 - ProbabilityLecture 2 - Probability
Lecture 2 - Probability
 
Lecture 1 - Game Theory
Lecture 1 - Game TheoryLecture 1 - Game Theory
Lecture 1 - Game Theory
 
Lecture 4 - Opponent Modelling
Lecture 4 - Opponent ModellingLecture 4 - Opponent Modelling
Lecture 4 - Opponent Modelling
 
What I Done on my Holidays
What I Done on my HolidaysWhat I Done on my Holidays
What I Done on my Holidays
 
Influence Landscapes - From Spatial to Conceptual Representations
Influence Landscapes - From Spatial to Conceptual RepresentationsInfluence Landscapes - From Spatial to Conceptual Representations
Influence Landscapes - From Spatial to Conceptual Representations
 
The Strathclyde Poker Research Environment
The Strathclyde Poker Research EnvironmentThe Strathclyde Poker Research Environment
The Strathclyde Poker Research Environment
 
The Ludic Fallacy Applied to Automated Planning
The Ludic Fallacy Applied to Automated PlanningThe Ludic Fallacy Applied to Automated Planning
The Ludic Fallacy Applied to Automated Planning
 
Integrated Influence - The Six Million Dollar Man of AI
Integrated Influence - The Six Million Dollar Man of AIIntegrated Influence - The Six Million Dollar Man of AI
Integrated Influence - The Six Million Dollar Man of AI
 
Robust Agent Execution
Robust Agent ExecutionRobust Agent Execution
Robust Agent Execution
 

Recently uploaded

UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
Wouter Lemaire
 
Project Management Semester Long Project - Acuity
Project Management Semester Long Project - AcuityProject Management Semester Long Project - Acuity
Project Management Semester Long Project - Acuity
jpupo2018
 
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceAI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
IndexBug
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
Pixlogix Infotech
 
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Speck&Tech
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
Postman
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
DanBrown980551
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
panagenda
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 
Mariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceXMariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceX
Mariano Tinti
 
June Patch Tuesday
June Patch TuesdayJune Patch Tuesday
June Patch Tuesday
Ivanti
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
名前 です男
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
ssuserfac0301
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
Tomaz Bratanic
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
Zilliz
 
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Jeffrey Haguewood
 
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Wask
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
Hiroshi SHIBATA
 

Recently uploaded (20)

UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
 
Project Management Semester Long Project - Acuity
Project Management Semester Long Project - AcuityProject Management Semester Long Project - Acuity
Project Management Semester Long Project - Acuity
 
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceAI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
 
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 
Mariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceXMariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceX
 
June Patch Tuesday
June Patch TuesdayJune Patch Tuesday
June Patch Tuesday
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
 
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
 
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
 

General Game Playing

  • 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
  • 7. Deep Blue • Initially a joint Carnegie Mellon / IBM project called “Deep Thought” 4
  • 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
  • 11. Chinook 5
  • 12. Chinook • Checkers player developed at University of Alberta in 1989 5
  • 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
  • 15. What are “General Games”? 6
  • 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
  • 24. Describing Games • Games are described by capturing their characteristics 8
  • 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
  • 28. GDL (ROLE XPLAYER) (ROLE OPLAYER) (INIT (CELL 1 1 B)) (INIT (CELL 1 2 B)) (INIT (CELL 1 3 B)) ...... (<= (NEXT (CELL ?M ?N X)) (DOES XPLAYER (MARK ?M ?N)) (TRUE (CELL ?M ?N B))) (<= (NEXT (CELL ?M ?N B)) (DOES ?W (MARK ?J ?K)) (TRUE (CELL ?M ?N B)) (OR (DISTINCT ?M ?J) (DISTINCT ?N ?K)) (<= (ROW ?M ?X) (TRUE (CELL ?M 1 ?X)) (TRUE (CELL ?M 2 ?X)) (TRUE (CELL ?M 3 ?X))) (<= (LINE ?X) (ROW ?M ?X)) (<= (LEGAL ?W (MARK ?X ?Y)) (TRUE (CELL ?X ?Y B)) (TRUE (CONTROL ?W))) (<= (LEGAL XPLAYER NOOP) (TRUE (CONTROL OPLAYER))) (<= (GOAL XPLAYER 100) (LINE X)) (<= (GOAL OPLAYER 0) (LINE X)) (<= (GOAL OPLAYER 50) (NOT (LINE X)) (NOT (LINE O)) (NOT OPEN)) 9
  • 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
  • 40. Supporting Systems • Need to have a Game Master system to control execution 14
  • 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
  • 46. RPG Applied to GGP 18
  • 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
  • 50. RPG Applied to GGP 18
  • 51. RPG Applied to GGP It can’t 19
  • 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