SlideShare ist ein Scribd-Unternehmen logo
1 von 87
SPREE
The Strathclyde Poker Research Environment



       L. Dicken, N. Johnstone, J. Levine, P. Rodgers
       Strathclyde AI and Games Research Group
Poker at SAIG




2
Poker at SAIG

    • Evolutionary Algorithms applied to Tournament Poker.
     (Carter & Levine)[1]




                             [1] - An Investigation into Tournament Poker Strategy using Evolutionary Algorithms, Carter & Levine,
                                                                                                          Proceedings of CIG2007



2
Poker at SAIG

    • Evolutionary Algorithms applied to Tournament Poker.
     (Carter & Levine)[1]
    • Co-Evolution for Counter Strategies in Texas Hold ‘Em
     (Thomson, Levine & Wotherspoon)[2]




                             [1] - An Investigation into Tournament Poker Strategy using Evolutionary Algorithms, Carter & Levine,
                                                                                                          Proceedings of CIG2007
                              [2] - Evolution of Counter-Strategies: Application of Co-evolution to Texas Hold'em Poker, Thomson,
                                                                                   Levine & Wotherspoon, Proceedings of CIG2008

2
Poker at SAIG

    • Evolutionary Algorithms applied to Tournament Poker.
     (Carter & Levine)[1]
    • Co-Evolution for Counter Strategies in Texas Hold ‘Em
     (Thomson, Levine & Wotherspoon)[2]
    • Monte Carlo Simulation for Ten Player Texas Hold ‘Em
     (Birnie, Dicken & Levine)



                             [1] - An Investigation into Tournament Poker Strategy using Evolutionary Algorithms, Carter & Levine,
                                                                                                          Proceedings of CIG2007
                              [2] - Evolution of Counter-Strategies: Application of Co-evolution to Texas Hold'em Poker, Thomson,
                                                                                   Levine & Wotherspoon, Proceedings of CIG2008

2
Poker at SAIG

    • Evolutionary Algorithms applied to Tournament Poker.
     (Carter & Levine)[1]
    • Co-Evolution for Counter Strategies in Texas Hold ‘Em
     (Thomson, Levine & Wotherspoon)[2]
    • Monte Carlo Simulation for Ten Player Texas Hold ‘Em
     (Birnie, Dicken & Levine)
    • Machine Learning for Player Archetyping (Birnie, Dicken &
     Levine)
                             [1] - An Investigation into Tournament Poker Strategy using Evolutionary Algorithms, Carter & Levine,
                                                                                                          Proceedings of CIG2007
                              [2] - Evolution of Counter-Strategies: Application of Co-evolution to Texas Hold'em Poker, Thomson,
                                                                                   Levine & Wotherspoon, Proceedings of CIG2008

2
Incomplete Information




3
Incomplete Information

    • In the Machine Learning project we found a key weakness in
     existing Poker research.




3
Incomplete Information

    • In the Machine Learning project we found a key weakness in
     existing Poker research.
    • Based primarily on data gathered from commercial online
     casinos through play.




3
Incomplete Information

    • In the Machine Learning project we found a key weakness in
     existing Poker research.
    • Based primarily on data gathered from commercial online
     casinos through play.
    • Significant information remains hidden, e.g. folded hands.




3
Incomplete Information

    • In the Machine Learning project we found a key weakness in
     existing Poker research.
    • Based primarily on data gathered from commercial online
     casinos through play.
    • Significant information remains hidden, e.g. folded hands.
       ‣ “Playable” hands are the only positive cases shown




3
Incomplete Information

    • In the Machine Learning project we found a key weakness in
     existing Poker research.
    • Based primarily on data gathered from commercial online
     casinos through play.
    • Significant information remains hidden, e.g. folded hands.
       ‣ “Playable” hands are the only positive cases shown
       ‣ Infer from this which hands are “Unplayable”



3
Incomplete Information

    • In the Machine Learning project we found a key weakness in
     existing Poker research.
    • Based primarily on data gathered from commercial online
     casinos through play.
    • Significant information remains hidden, e.g. folded hands.
       ‣ “Playable” hands are the only positive cases shown
       ‣ Infer from this which hands are “Unplayable”
       ‣ Compensation through large datasets (~1,000,000 games)


3
Incomplete Information

    • In the Machine Learning project we found a key weakness in
     existing Poker research.
    • Based primarily on data gathered from commercial online
     casinos through play.
    • Significant information remains hidden, e.g. folded hands.
       ‣ “Playable” hands are the only positive cases shown
       ‣ Infer from this which hands are “Unplayable”
       ‣ Compensation through large datasets (~1,000,000 games)
    • Sub-optimal approach based on availability of data
3
Reinventing the Wheel




4
Reinventing the Wheel

    • Huge portions of these projects got spent implementing
     Poker rules.




4
Reinventing the Wheel

    • Huge portions of these projects got spent implementing
     Poker rules.
    • Wasted effort




4
Reinventing the Wheel

    • Huge portions of these projects got spent implementing
     Poker rules.
    • Wasted effort
    • Fragmentation > Potentially flawed implementations




4
Reinventing the Wheel

    • Huge portions of these projects got spent implementing
     Poker rules.
    • Wasted effort
    • Fragmentation > Potentially flawed implementations
    • Skews results




4
Two Birds, One Stone




5
Two Birds, One Stone

    • We need better data, which we can’t get from online casinos




5
Two Birds, One Stone

    • We need better data, which we can’t get from online casinos
       ‣ But only online casinos have the kind of volume of data
         we need.




5
Two Birds, One Stone

    • We need better data, which we can’t get from online casinos
       ‣ But only online casinos have the kind of volume of data
         we need.
    • We need a standard testbed in which to conduct Poker
     research.




5
Two Birds, One Stone

    • We need better data, which we can’t get from online casinos
       ‣ But only online casinos have the kind of volume of data
         we need.
    • We need a standard testbed in which to conduct Poker
     research.
       ‣ Save on development time, spend more time on the AI




5
Two Birds, One Stone

    • We need better data, which we can’t get from online casinos
       ‣ But only online casinos have the kind of volume of data
         we need.
    • We need a standard testbed in which to conduct Poker
     research.
       ‣ Save on development time, spend more time on the AI
       ‣ Standardise our experimental methodology, more
         comparable results.


5
Introducing SPREE




6
Introducing SPREE

    • The Strathclyde Poker Research Environment provides an
     open framework for Poker experimentation.




6
Introducing SPREE

    • The Strathclyde Poker Research Environment provides an
     open framework for Poker experimentation.
    • Client/Server structure allows AI players to be easily created




6
Introducing SPREE

    • The Strathclyde Poker Research Environment provides an
     open framework for Poker experimentation.
    • Client/Server structure allows AI players to be easily created
    • Pre-built GUI client means players can play against AI or each
     other.




6
Introducing SPREE

    • The Strathclyde Poker Research Environment provides an
     open framework for Poker experimentation.
    • Client/Server structure allows AI players to be easily created
    • Pre-built GUI client means players can play against AI or each
     other.
    • Open server means we can get complete data on all games
     being played.



6
Components




7
SPREE Server




8
SPREE Server

    • Controls the flow of the game.




8
SPREE Server

    • Controls the flow of the game.
    • Stores certain state information (e.g. Player bankroll, Active
     tables) in a database - non-volatile.




8
SPREE Server

    • Controls the flow of the game.
    • Stores certain state information (e.g. Player bankroll, Active
     tables) in a database - non-volatile.
    • Broken into two main components : Casino and Table




8
SPREE Server

    • Controls the flow of the game.
    • Stores certain state information (e.g. Player bankroll, Active
     tables) in a database - non-volatile.
    • Broken into two main components : Casino and Table
    • Casino is the high level - logins, providing information on
     active tables etc.




8
SPREE Server

    • Controls the flow of the game.
    • Stores certain state information (e.g. Player bankroll, Active
     tables) in a database - non-volatile.
    • Broken into two main components : Casino and Table
    • Casino is the high level - logins, providing information on
     active tables etc.
    • The Table server runs the game according to the
     specification it has been given.


8
Game Specifications




9
Game Specifications

    • Focus is currently on Texas Hold ‘Em




9
Game Specifications

    • Focus is currently on Texas Hold ‘Em
    • Rules of the game specified in XML




9
Game Specifications

    • Focus is currently on Texas Hold ‘Em
    • Rules of the game specified in XML
    • Modular component for the server, can swap to
     other game modes.




9
Game Specifications

    • Focus is currently on Texas Hold ‘Em
    • Rules of the game specified in XML
    • Modular component for the server, can swap to
     other game modes.
      ‣ Note that the current client is specific to Texas Hold ‘Em




9
Collecting Data




10
Collecting Data

     • Two types of data being logged




10
Collecting Data

     • Two types of data being logged
       ‣ “Recording” : dump GameState messages that have been
         generated through the game.




10
Collecting Data

     • Two types of data being logged
       ‣ “Recording” : dump GameState messages that have been
         generated through the game.
       ‣ “Hand History” : a human-readable export of the game,
         compatible with Poker stats software e.g. Poker Tracker




10
SPREE Client




11
SPREE Client

     • Java implementation modelled on existing commercial casino
      interfaces.




11
SPREE Client

     • Java implementation modelled on existing commercial casino
      interfaces.
     • Connects to Casino Server, logs in and retrieves data about
      tables working.




11
SPREE Client

     • Java implementation modelled on existing commercial casino
      interfaces.
     • Connects to Casino Server, logs in and retrieves data about
      tables working.
     • Then connects to Table Server and plays Poker.




11
SPREE Client

     • Java implementation modelled on existing commercial casino
      interfaces.
     • Connects to Casino Server, logs in and retrieves data about
      tables working.
     • Then connects to Table Server and plays Poker.
     • Principal difference from commercial implementations :




11
SPREE Client

     • Java implementation modelled on existing commercial casino
      interfaces.
     • Connects to Casino Server, logs in and retrieves data about
      tables working.
     • Then connects to Table Server and plays Poker.
     • Principal difference from commercial implementations :
        ‣ No chat, want to avoid play devolving into Turing tests.



11
SPREE Client




12
SPREE Replayer




13
SPREE Replayer

     • The Replayer is an offline GUI “client”




13
SPREE Replayer

     • The Replayer is an offline GUI “client”
     • Uses data logged by the server to visualise games of Poker




13
SPREE Replayer

     • The Replayer is an offline GUI “client”
     • Uses data logged by the server to visualise games of Poker
     • Gives developers the ability to dig into games and
      understand the behaviour of their bots.




13
SPREE Replayer

     • The Replayer is an offline GUI “client”
     • Uses data logged by the server to visualise games of Poker
     • Gives developers the ability to dig into games and
      understand the behaviour of their bots.
        ‣ Or social scientists the ability to analyse the behaviour of
          players.




13
SPREE Admin




14
SPREE Admin

     • Dedicated administration interface.




14
SPREE Admin

     • Dedicated administration interface.
     • Allows moderators to control the server, register
      new player accounts and set up tables for play.




14
SPREE Admin

     • Dedicated administration interface.
     • Allows moderators to control the server, register
      new player accounts and set up tables for play.
     • Also allows for full-information observation of
      games in progress.




14
SPREE Bots




15
SPREE Bots

     • Bots can be implemented in any language provided they
      conform to the communication spec.




15
SPREE Bots

     • Bots can be implemented in any language provided they
      conform to the communication spec.
     • A framework has been created in Java. Implementing a bot is
      simply implementing a single method.




15
SPREE Bots

     • Bots can be implemented in any language provided they
      conform to the communication spec.
     • A framework has been created in Java. Implementing a bot is
      simply implementing a single method.
     • GameState messages update a TableModel which can be
      queried by the AI routine.




15
SPREE Bots

     • Bots can be implemented in any language provided they
      conform to the communication spec.
     • A framework has been created in Java. Implementing a bot is
      simply implementing a single method.
     • GameState messages update a TableModel which can be
      queried by the AI routine.
     • “makeMove” method is triggered when the server asks the
      bot for an action, options are presented to the method


15
Future Projects




16
Future Projects

     • Revisiting the Monte Carlo and Machine Learning projects
      previously mentioned within the context of SPREE.




16
Future Projects

     • Revisiting the Monte Carlo and Machine Learning projects
      previously mentioned within the context of SPREE.
     • Next project I’ll be supervising will be to develop some
      standard bots to package with future versions of the release.




16
Future Projects

     • Revisiting the Monte Carlo and Machine Learning projects
      previously mentioned within the context of SPREE.
     • Next project I’ll be supervising will be to develop some
      standard bots to package with future versions of the release.
     • Scope for various experiments not just for AI but also in
      sociology.




16
Future Projects

     • Revisiting the Monte Carlo and Machine Learning projects
      previously mentioned within the context of SPREE.
     • Next project I’ll be supervising will be to develop some
      standard bots to package with future versions of the release.
     • Scope for various experiments not just for AI but also in
      sociology.
        ‣ How does value of wager affect behaviour.



16
Future Projects

     • Revisiting the Monte Carlo and Machine Learning projects
      previously mentioned within the context of SPREE.
     • Next project I’ll be supervising will be to develop some
      standard bots to package with future versions of the release.
     • Scope for various experiments not just for AI but also in
      sociology.
        ‣ How does value of wager affect behaviour.
        ‣ Quantification of “on tilt” pre-indicators.


16
Availability




17
Availability

     • Initial public release TODAY!




17
Availability

     • Initial public release TODAY!
     • Licensed under GPL.




17
Availability

     • Initial public release TODAY!
     • Licensed under GPL.
     • Available from Sourceforge at :




17
Availability

     • Initial public release TODAY!
     • Licensed under GPL.
     • Available from Sourceforge at :
            http://www.sourceforge.net/projects/spree-poker/




17
Availability

     • Initial public release TODAY!
     • Licensed under GPL.
     • Available from Sourceforge at :
            http://www.sourceforge.net/projects/spree-poker/
     • Includes Server, Client, Tools and Bot Framework.




17
Availability

     • Initial public release TODAY!
     • Licensed under GPL.
     • Available from Sourceforge at :
            http://www.sourceforge.net/projects/spree-poker/
     • Includes Server, Client, Tools and Bot Framework.
     • Access to resources such as hand history, recordings via
      Sourceforge.



17
Availability

     • Initial public release TODAY!
     • Licensed under GPL.
     • Available from Sourceforge at :
             http://www.sourceforge.net/projects/spree-poker/
     • Includes Server, Client, Tools and Bot Framework.
     • Access to resources such as hand history, recordings via
      Sourceforge.
     • Bot API :


17
Availability

     • Initial public release TODAY!
     • Licensed under GPL.
     • Available from Sourceforge at :
             http://www.sourceforge.net/projects/spree-poker/
     • Includes Server, Client, Tools and Bot Framework.
     • Access to resources such as hand history, recordings via
      Sourceforge.
     • Bot API :
           http://personal.cis.strath.ac.uk/~luke/SPREE/Bots/API/
17
SPREE Contact




18
SPREE Contact

     • SPREE Mailing Lists & Forums on Sourceforge




18
SPREE Contact

     • SPREE Mailing Lists & Forums on Sourceforge
     • Contact me directly :




18
SPREE Contact

     • SPREE Mailing Lists & Forums on Sourceforge
     • Contact me directly :
       ‣ luke@cis.strath.ac.uk




18
SPREE Contact

     • SPREE Mailing Lists & Forums on Sourceforge
     • Contact me directly :
       ‣ luke@cis.strath.ac.uk
       ‣ @LukeD on Twitter




18

Weitere ähnliche Inhalte

Andere mochten auch

Tech Talk: Standup Poker: How One Hack Revolutionized Our Daily Standup
Tech Talk: Standup Poker: How One Hack Revolutionized Our Daily StandupTech Talk: Standup Poker: How One Hack Revolutionized Our Daily Standup
Tech Talk: Standup Poker: How One Hack Revolutionized Our Daily StandupCA Technologies
 
Use of cognitive and performance enhancing medications in poker players
Use of cognitive and performance enhancing medications in poker playersUse of cognitive and performance enhancing medications in poker players
Use of cognitive and performance enhancing medications in poker playersKevin Clauson
 
Beyond Planning Poker - Agile 2011
Beyond Planning Poker - Agile 2011Beyond Planning Poker - Agile 2011
Beyond Planning Poker - Agile 2011James Grenning
 
Infiniti Poker Marketing Plan - MBA Marketing Class
Infiniti Poker Marketing Plan - MBA Marketing ClassInfiniti Poker Marketing Plan - MBA Marketing Class
Infiniti Poker Marketing Plan - MBA Marketing ClassSam Bishop
 
Poker Boom in the Video Game Industry | Pawel Weder
Poker Boom in the Video Game Industry | Pawel WederPoker Boom in the Video Game Industry | Pawel Weder
Poker Boom in the Video Game Industry | Pawel WederJessica Tams
 
The cost of irrationality - how poker players perform better by avoiding cogn...
The cost of irrationality - how poker players perform better by avoiding cogn...The cost of irrationality - how poker players perform better by avoiding cogn...
The cost of irrationality - how poker players perform better by avoiding cogn...Lasse Ringstad
 
Planning Poker estimating technique
Planning Poker estimating techniquePlanning Poker estimating technique
Planning Poker estimating techniqueSuhail Jamaldeen
 
Product Market Fit Poker
Product Market Fit PokerProduct Market Fit Poker
Product Market Fit PokerMatt Johnson
 
Ontology of Poker
Ontology of PokerOntology of Poker
Ontology of PokerBarry Smith
 

Andere mochten auch (12)

Tech Talk: Standup Poker: How One Hack Revolutionized Our Daily Standup
Tech Talk: Standup Poker: How One Hack Revolutionized Our Daily StandupTech Talk: Standup Poker: How One Hack Revolutionized Our Daily Standup
Tech Talk: Standup Poker: How One Hack Revolutionized Our Daily Standup
 
Use of cognitive and performance enhancing medications in poker players
Use of cognitive and performance enhancing medications in poker playersUse of cognitive and performance enhancing medications in poker players
Use of cognitive and performance enhancing medications in poker players
 
Beyond Planning Poker - Agile 2011
Beyond Planning Poker - Agile 2011Beyond Planning Poker - Agile 2011
Beyond Planning Poker - Agile 2011
 
Introduction Priority Poker (En)
Introduction Priority Poker (En)Introduction Priority Poker (En)
Introduction Priority Poker (En)
 
The Art Of War In Poker
The Art Of War In PokerThe Art Of War In Poker
The Art Of War In Poker
 
Infiniti Poker Marketing Plan - MBA Marketing Class
Infiniti Poker Marketing Plan - MBA Marketing ClassInfiniti Poker Marketing Plan - MBA Marketing Class
Infiniti Poker Marketing Plan - MBA Marketing Class
 
Poker Boom in the Video Game Industry | Pawel Weder
Poker Boom in the Video Game Industry | Pawel WederPoker Boom in the Video Game Industry | Pawel Weder
Poker Boom in the Video Game Industry | Pawel Weder
 
Basic Poker Strategy
Basic Poker StrategyBasic Poker Strategy
Basic Poker Strategy
 
The cost of irrationality - how poker players perform better by avoiding cogn...
The cost of irrationality - how poker players perform better by avoiding cogn...The cost of irrationality - how poker players perform better by avoiding cogn...
The cost of irrationality - how poker players perform better by avoiding cogn...
 
Planning Poker estimating technique
Planning Poker estimating techniquePlanning Poker estimating technique
Planning Poker estimating technique
 
Product Market Fit Poker
Product Market Fit PokerProduct Market Fit Poker
Product Market Fit Poker
 
Ontology of Poker
Ontology of PokerOntology of Poker
Ontology of Poker
 

Ähnlich wie The Strathclyde Poker Research Environment

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 UpLuke Dicken
 
Honu/Big Data @ Riot Games
Honu/Big Data @ Riot GamesHonu/Big Data @ Riot Games
Honu/Big Data @ Riot GamesJerome Boulon
 
Cache on Delivery
Cache on DeliveryCache on Delivery
Cache on DeliverySensePost
 
Snowplow: open source game analytics powered by AWS
Snowplow: open source game analytics powered by AWSSnowplow: open source game analytics powered by AWS
Snowplow: open source game analytics powered by AWSGiuseppe Gaviani
 
SAIG Overview March 2011
SAIG Overview March 2011SAIG Overview March 2011
SAIG Overview March 2011Luke Dicken
 
Switc Hpa
Switc HpaSwitc Hpa
Switc HpaPTIHPA
 
Self Service Analytics at Twitch
Self Service Analytics at TwitchSelf Service Analytics at Twitch
Self Service Analytics at TwitchImply
 
نشست نظريه داده براي مديريت داده
نشست نظريه داده براي مديريت دادهنشست نظريه داده براي مديريت داده
نشست نظريه داده براي مديريت دادهHosseinieh Ershad Public Library
 
個人からトリプル A タイトルのゲーム開発者まで。Azure PlayFab で LiveOps しよう
個人からトリプル A タイトルのゲーム開発者まで。Azure PlayFab で LiveOps しよう個人からトリプル A タイトルのゲーム開発者まで。Azure PlayFab で LiveOps しよう
個人からトリプル A タイトルのゲーム開発者まで。Azure PlayFab で LiveOps しようDaisuke Masubuchi
 
Using markerless motion capture to win baseball games
Using markerless motion capture to win baseball gamesUsing markerless motion capture to win baseball games
Using markerless motion capture to win baseball gamesiMerit
 
Idle Games: The Mechanics and Monetization of Self-Playing Games
Idle Games: The Mechanics and Monetization of Self-Playing GamesIdle Games: The Mechanics and Monetization of Self-Playing Games
Idle Games: The Mechanics and Monetization of Self-Playing GamesKongregate
 
Devoxx 2017 - AI Self-learning Game Playing
Devoxx 2017 - AI Self-learning Game PlayingDevoxx 2017 - AI Self-learning Game Playing
Devoxx 2017 - AI Self-learning Game PlayingRichard Abbuhl
 
(APP203) How Sumo Logic and Anki Build Highly Resilient Services on AWS to Ma...
(APP203) How Sumo Logic and Anki Build Highly Resilient Services on AWS to Ma...(APP203) How Sumo Logic and Anki Build Highly Resilient Services on AWS to Ma...
(APP203) How Sumo Logic and Anki Build Highly Resilient Services on AWS to Ma...Amazon Web Services
 
Testing the Data Warehouse―Big Data, Big Problems
Testing the Data Warehouse―Big Data, Big ProblemsTesting the Data Warehouse―Big Data, Big Problems
Testing the Data Warehouse―Big Data, Big ProblemsTechWell
 

Ähnlich wie The Strathclyde Poker Research Environment (20)

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
 
AlphaGo and AlphaGo Zero
AlphaGo and AlphaGo ZeroAlphaGo and AlphaGo Zero
AlphaGo and AlphaGo Zero
 
Honu/Big Data @ Riot Games
Honu/Big Data @ Riot GamesHonu/Big Data @ Riot Games
Honu/Big Data @ Riot Games
 
Cache on Delivery
Cache on DeliveryCache on Delivery
Cache on Delivery
 
Snowplow: open source game analytics powered by AWS
Snowplow: open source game analytics powered by AWSSnowplow: open source game analytics powered by AWS
Snowplow: open source game analytics powered by AWS
 
Hawk-Eye
Hawk-EyeHawk-Eye
Hawk-Eye
 
SAIG Overview March 2011
SAIG Overview March 2011SAIG Overview March 2011
SAIG Overview March 2011
 
Switc Hpa
Switc HpaSwitc Hpa
Switc Hpa
 
Self Service Analytics at Twitch
Self Service Analytics at TwitchSelf Service Analytics at Twitch
Self Service Analytics at Twitch
 
Slot Seminar
Slot SeminarSlot Seminar
Slot Seminar
 
نشست نظريه داده براي مديريت داده
نشست نظريه داده براي مديريت دادهنشست نظريه داده براي مديريت داده
نشست نظريه داده براي مديريت داده
 
Es715 Play Data V10
Es715 Play Data V10Es715 Play Data V10
Es715 Play Data V10
 
GMBL Investor Presentation
GMBL Investor PresentationGMBL Investor Presentation
GMBL Investor Presentation
 
Big databigideasit4bc
Big databigideasit4bcBig databigideasit4bc
Big databigideasit4bc
 
個人からトリプル A タイトルのゲーム開発者まで。Azure PlayFab で LiveOps しよう
個人からトリプル A タイトルのゲーム開発者まで。Azure PlayFab で LiveOps しよう個人からトリプル A タイトルのゲーム開発者まで。Azure PlayFab で LiveOps しよう
個人からトリプル A タイトルのゲーム開発者まで。Azure PlayFab で LiveOps しよう
 
Using markerless motion capture to win baseball games
Using markerless motion capture to win baseball gamesUsing markerless motion capture to win baseball games
Using markerless motion capture to win baseball games
 
Idle Games: The Mechanics and Monetization of Self-Playing Games
Idle Games: The Mechanics and Monetization of Self-Playing GamesIdle Games: The Mechanics and Monetization of Self-Playing Games
Idle Games: The Mechanics and Monetization of Self-Playing Games
 
Devoxx 2017 - AI Self-learning Game Playing
Devoxx 2017 - AI Self-learning Game PlayingDevoxx 2017 - AI Self-learning Game Playing
Devoxx 2017 - AI Self-learning Game Playing
 
(APP203) How Sumo Logic and Anki Build Highly Resilient Services on AWS to Ma...
(APP203) How Sumo Logic and Anki Build Highly Resilient Services on AWS to Ma...(APP203) How Sumo Logic and Anki Build Highly Resilient Services on AWS to Ma...
(APP203) How Sumo Logic and Anki Build Highly Resilient Services on AWS to Ma...
 
Testing the Data Warehouse―Big Data, Big Problems
Testing the Data Warehouse―Big Data, Big ProblemsTesting the Data Warehouse―Big Data, Big Problems
Testing the Data Warehouse―Big Data, Big Problems
 

Mehr von Luke Dicken

Advances in Game AI
Advances in Game AIAdvances in Game AI
Advances in Game AILuke Dicken
 
Diversity in NPC AI
Diversity in NPC AIDiversity in NPC AI
Diversity in NPC AILuke 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 ILuke 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 MassesLuke Dicken
 
The Next Generation of Game Planners
The Next Generation of Game PlannersThe Next Generation of Game Planners
The Next Generation of Game PlannersLuke Dicken
 
Game Development 2
Game Development 2Game Development 2
Game Development 2Luke Dicken
 
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
 
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
 
The International Game Developers Association
The International Game Developers AssociationThe International Game Developers Association
The International Game Developers AssociationLuke Dicken
 
Lecture 7 - Experience Management
Lecture 7 - Experience ManagementLecture 7 - Experience Management
Lecture 7 - Experience ManagementLuke 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 ModelsLuke Dicken
 
Lecture 5 - Procedural Content Generation
Lecture 5 - Procedural Content GenerationLecture 5 - Procedural Content Generation
Lecture 5 - Procedural Content GenerationLuke 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 ThoughtsLuke Dicken
 
Lecture 3 - Decision Making
Lecture 3 - Decision MakingLecture 3 - Decision Making
Lecture 3 - Decision MakingLuke Dicken
 
Lecture 2 - Probability
Lecture 2 - ProbabilityLecture 2 - Probability
Lecture 2 - ProbabilityLuke Dicken
 
Lecture 1 - Game Theory
Lecture 1 - Game TheoryLecture 1 - Game Theory
Lecture 1 - Game TheoryLuke Dicken
 
Lecture 4 - Opponent Modelling
Lecture 4 - Opponent ModellingLecture 4 - Opponent Modelling
Lecture 4 - Opponent ModellingLuke Dicken
 
What I Done on my Holidays
What I Done on my HolidaysWhat I Done on my Holidays
What I Done on my HolidaysLuke 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 RepresentationsLuke Dicken
 

Mehr von Luke Dicken (20)

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 Next Generation of Game Planners
The Next Generation of Game PlannersThe Next Generation of Game Planners
The Next Generation of Game Planners
 
Game Development 2
Game Development 2Game Development 2
Game Development 2
 
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!
 
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?
 
The International Game Developers Association
The International Game Developers AssociationThe International Game Developers Association
The International Game Developers Association
 
Lecture 7 - Experience Management
Lecture 7 - Experience ManagementLecture 7 - Experience Management
Lecture 7 - Experience Management
 
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
 
Lecture 5 - Procedural Content Generation
Lecture 5 - Procedural Content GenerationLecture 5 - Procedural Content Generation
Lecture 5 - Procedural Content Generation
 
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
 

Kürzlich hochgeladen

Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Bhuvaneswari Subramani
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...apidays
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Zilliz
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 

Kürzlich hochgeladen (20)

Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 

The Strathclyde Poker Research Environment

  • 1. SPREE The Strathclyde Poker Research Environment L. Dicken, N. Johnstone, J. Levine, P. Rodgers Strathclyde AI and Games Research Group
  • 3. Poker at SAIG • Evolutionary Algorithms applied to Tournament Poker. (Carter & Levine)[1] [1] - An Investigation into Tournament Poker Strategy using Evolutionary Algorithms, Carter & Levine, Proceedings of CIG2007 2
  • 4. Poker at SAIG • Evolutionary Algorithms applied to Tournament Poker. (Carter & Levine)[1] • Co-Evolution for Counter Strategies in Texas Hold ‘Em (Thomson, Levine & Wotherspoon)[2] [1] - An Investigation into Tournament Poker Strategy using Evolutionary Algorithms, Carter & Levine, Proceedings of CIG2007 [2] - Evolution of Counter-Strategies: Application of Co-evolution to Texas Hold'em Poker, Thomson, Levine & Wotherspoon, Proceedings of CIG2008 2
  • 5. Poker at SAIG • Evolutionary Algorithms applied to Tournament Poker. (Carter & Levine)[1] • Co-Evolution for Counter Strategies in Texas Hold ‘Em (Thomson, Levine & Wotherspoon)[2] • Monte Carlo Simulation for Ten Player Texas Hold ‘Em (Birnie, Dicken & Levine) [1] - An Investigation into Tournament Poker Strategy using Evolutionary Algorithms, Carter & Levine, Proceedings of CIG2007 [2] - Evolution of Counter-Strategies: Application of Co-evolution to Texas Hold'em Poker, Thomson, Levine & Wotherspoon, Proceedings of CIG2008 2
  • 6. Poker at SAIG • Evolutionary Algorithms applied to Tournament Poker. (Carter & Levine)[1] • Co-Evolution for Counter Strategies in Texas Hold ‘Em (Thomson, Levine & Wotherspoon)[2] • Monte Carlo Simulation for Ten Player Texas Hold ‘Em (Birnie, Dicken & Levine) • Machine Learning for Player Archetyping (Birnie, Dicken & Levine) [1] - An Investigation into Tournament Poker Strategy using Evolutionary Algorithms, Carter & Levine, Proceedings of CIG2007 [2] - Evolution of Counter-Strategies: Application of Co-evolution to Texas Hold'em Poker, Thomson, Levine & Wotherspoon, Proceedings of CIG2008 2
  • 8. Incomplete Information • In the Machine Learning project we found a key weakness in existing Poker research. 3
  • 9. Incomplete Information • In the Machine Learning project we found a key weakness in existing Poker research. • Based primarily on data gathered from commercial online casinos through play. 3
  • 10. Incomplete Information • In the Machine Learning project we found a key weakness in existing Poker research. • Based primarily on data gathered from commercial online casinos through play. • Significant information remains hidden, e.g. folded hands. 3
  • 11. Incomplete Information • In the Machine Learning project we found a key weakness in existing Poker research. • Based primarily on data gathered from commercial online casinos through play. • Significant information remains hidden, e.g. folded hands. ‣ “Playable” hands are the only positive cases shown 3
  • 12. Incomplete Information • In the Machine Learning project we found a key weakness in existing Poker research. • Based primarily on data gathered from commercial online casinos through play. • Significant information remains hidden, e.g. folded hands. ‣ “Playable” hands are the only positive cases shown ‣ Infer from this which hands are “Unplayable” 3
  • 13. Incomplete Information • In the Machine Learning project we found a key weakness in existing Poker research. • Based primarily on data gathered from commercial online casinos through play. • Significant information remains hidden, e.g. folded hands. ‣ “Playable” hands are the only positive cases shown ‣ Infer from this which hands are “Unplayable” ‣ Compensation through large datasets (~1,000,000 games) 3
  • 14. Incomplete Information • In the Machine Learning project we found a key weakness in existing Poker research. • Based primarily on data gathered from commercial online casinos through play. • Significant information remains hidden, e.g. folded hands. ‣ “Playable” hands are the only positive cases shown ‣ Infer from this which hands are “Unplayable” ‣ Compensation through large datasets (~1,000,000 games) • Sub-optimal approach based on availability of data 3
  • 16. Reinventing the Wheel • Huge portions of these projects got spent implementing Poker rules. 4
  • 17. Reinventing the Wheel • Huge portions of these projects got spent implementing Poker rules. • Wasted effort 4
  • 18. Reinventing the Wheel • Huge portions of these projects got spent implementing Poker rules. • Wasted effort • Fragmentation > Potentially flawed implementations 4
  • 19. Reinventing the Wheel • Huge portions of these projects got spent implementing Poker rules. • Wasted effort • Fragmentation > Potentially flawed implementations • Skews results 4
  • 20. Two Birds, One Stone 5
  • 21. Two Birds, One Stone • We need better data, which we can’t get from online casinos 5
  • 22. Two Birds, One Stone • We need better data, which we can’t get from online casinos ‣ But only online casinos have the kind of volume of data we need. 5
  • 23. Two Birds, One Stone • We need better data, which we can’t get from online casinos ‣ But only online casinos have the kind of volume of data we need. • We need a standard testbed in which to conduct Poker research. 5
  • 24. Two Birds, One Stone • We need better data, which we can’t get from online casinos ‣ But only online casinos have the kind of volume of data we need. • We need a standard testbed in which to conduct Poker research. ‣ Save on development time, spend more time on the AI 5
  • 25. Two Birds, One Stone • We need better data, which we can’t get from online casinos ‣ But only online casinos have the kind of volume of data we need. • We need a standard testbed in which to conduct Poker research. ‣ Save on development time, spend more time on the AI ‣ Standardise our experimental methodology, more comparable results. 5
  • 27. Introducing SPREE • The Strathclyde Poker Research Environment provides an open framework for Poker experimentation. 6
  • 28. Introducing SPREE • The Strathclyde Poker Research Environment provides an open framework for Poker experimentation. • Client/Server structure allows AI players to be easily created 6
  • 29. Introducing SPREE • The Strathclyde Poker Research Environment provides an open framework for Poker experimentation. • Client/Server structure allows AI players to be easily created • Pre-built GUI client means players can play against AI or each other. 6
  • 30. Introducing SPREE • The Strathclyde Poker Research Environment provides an open framework for Poker experimentation. • Client/Server structure allows AI players to be easily created • Pre-built GUI client means players can play against AI or each other. • Open server means we can get complete data on all games being played. 6
  • 33. SPREE Server • Controls the flow of the game. 8
  • 34. SPREE Server • Controls the flow of the game. • Stores certain state information (e.g. Player bankroll, Active tables) in a database - non-volatile. 8
  • 35. SPREE Server • Controls the flow of the game. • Stores certain state information (e.g. Player bankroll, Active tables) in a database - non-volatile. • Broken into two main components : Casino and Table 8
  • 36. SPREE Server • Controls the flow of the game. • Stores certain state information (e.g. Player bankroll, Active tables) in a database - non-volatile. • Broken into two main components : Casino and Table • Casino is the high level - logins, providing information on active tables etc. 8
  • 37. SPREE Server • Controls the flow of the game. • Stores certain state information (e.g. Player bankroll, Active tables) in a database - non-volatile. • Broken into two main components : Casino and Table • Casino is the high level - logins, providing information on active tables etc. • The Table server runs the game according to the specification it has been given. 8
  • 39. Game Specifications • Focus is currently on Texas Hold ‘Em 9
  • 40. Game Specifications • Focus is currently on Texas Hold ‘Em • Rules of the game specified in XML 9
  • 41. Game Specifications • Focus is currently on Texas Hold ‘Em • Rules of the game specified in XML • Modular component for the server, can swap to other game modes. 9
  • 42. Game Specifications • Focus is currently on Texas Hold ‘Em • Rules of the game specified in XML • Modular component for the server, can swap to other game modes. ‣ Note that the current client is specific to Texas Hold ‘Em 9
  • 44. Collecting Data • Two types of data being logged 10
  • 45. Collecting Data • Two types of data being logged ‣ “Recording” : dump GameState messages that have been generated through the game. 10
  • 46. Collecting Data • Two types of data being logged ‣ “Recording” : dump GameState messages that have been generated through the game. ‣ “Hand History” : a human-readable export of the game, compatible with Poker stats software e.g. Poker Tracker 10
  • 48. SPREE Client • Java implementation modelled on existing commercial casino interfaces. 11
  • 49. SPREE Client • Java implementation modelled on existing commercial casino interfaces. • Connects to Casino Server, logs in and retrieves data about tables working. 11
  • 50. SPREE Client • Java implementation modelled on existing commercial casino interfaces. • Connects to Casino Server, logs in and retrieves data about tables working. • Then connects to Table Server and plays Poker. 11
  • 51. SPREE Client • Java implementation modelled on existing commercial casino interfaces. • Connects to Casino Server, logs in and retrieves data about tables working. • Then connects to Table Server and plays Poker. • Principal difference from commercial implementations : 11
  • 52. SPREE Client • Java implementation modelled on existing commercial casino interfaces. • Connects to Casino Server, logs in and retrieves data about tables working. • Then connects to Table Server and plays Poker. • Principal difference from commercial implementations : ‣ No chat, want to avoid play devolving into Turing tests. 11
  • 55. SPREE Replayer • The Replayer is an offline GUI “client” 13
  • 56. SPREE Replayer • The Replayer is an offline GUI “client” • Uses data logged by the server to visualise games of Poker 13
  • 57. SPREE Replayer • The Replayer is an offline GUI “client” • Uses data logged by the server to visualise games of Poker • Gives developers the ability to dig into games and understand the behaviour of their bots. 13
  • 58. SPREE Replayer • The Replayer is an offline GUI “client” • Uses data logged by the server to visualise games of Poker • Gives developers the ability to dig into games and understand the behaviour of their bots. ‣ Or social scientists the ability to analyse the behaviour of players. 13
  • 60. SPREE Admin • Dedicated administration interface. 14
  • 61. SPREE Admin • Dedicated administration interface. • Allows moderators to control the server, register new player accounts and set up tables for play. 14
  • 62. SPREE Admin • Dedicated administration interface. • Allows moderators to control the server, register new player accounts and set up tables for play. • Also allows for full-information observation of games in progress. 14
  • 64. SPREE Bots • Bots can be implemented in any language provided they conform to the communication spec. 15
  • 65. SPREE Bots • Bots can be implemented in any language provided they conform to the communication spec. • A framework has been created in Java. Implementing a bot is simply implementing a single method. 15
  • 66. SPREE Bots • Bots can be implemented in any language provided they conform to the communication spec. • A framework has been created in Java. Implementing a bot is simply implementing a single method. • GameState messages update a TableModel which can be queried by the AI routine. 15
  • 67. SPREE Bots • Bots can be implemented in any language provided they conform to the communication spec. • A framework has been created in Java. Implementing a bot is simply implementing a single method. • GameState messages update a TableModel which can be queried by the AI routine. • “makeMove” method is triggered when the server asks the bot for an action, options are presented to the method 15
  • 69. Future Projects • Revisiting the Monte Carlo and Machine Learning projects previously mentioned within the context of SPREE. 16
  • 70. Future Projects • Revisiting the Monte Carlo and Machine Learning projects previously mentioned within the context of SPREE. • Next project I’ll be supervising will be to develop some standard bots to package with future versions of the release. 16
  • 71. Future Projects • Revisiting the Monte Carlo and Machine Learning projects previously mentioned within the context of SPREE. • Next project I’ll be supervising will be to develop some standard bots to package with future versions of the release. • Scope for various experiments not just for AI but also in sociology. 16
  • 72. Future Projects • Revisiting the Monte Carlo and Machine Learning projects previously mentioned within the context of SPREE. • Next project I’ll be supervising will be to develop some standard bots to package with future versions of the release. • Scope for various experiments not just for AI but also in sociology. ‣ How does value of wager affect behaviour. 16
  • 73. Future Projects • Revisiting the Monte Carlo and Machine Learning projects previously mentioned within the context of SPREE. • Next project I’ll be supervising will be to develop some standard bots to package with future versions of the release. • Scope for various experiments not just for AI but also in sociology. ‣ How does value of wager affect behaviour. ‣ Quantification of “on tilt” pre-indicators. 16
  • 75. Availability • Initial public release TODAY! 17
  • 76. Availability • Initial public release TODAY! • Licensed under GPL. 17
  • 77. Availability • Initial public release TODAY! • Licensed under GPL. • Available from Sourceforge at : 17
  • 78. Availability • Initial public release TODAY! • Licensed under GPL. • Available from Sourceforge at : http://www.sourceforge.net/projects/spree-poker/ 17
  • 79. Availability • Initial public release TODAY! • Licensed under GPL. • Available from Sourceforge at : http://www.sourceforge.net/projects/spree-poker/ • Includes Server, Client, Tools and Bot Framework. 17
  • 80. Availability • Initial public release TODAY! • Licensed under GPL. • Available from Sourceforge at : http://www.sourceforge.net/projects/spree-poker/ • Includes Server, Client, Tools and Bot Framework. • Access to resources such as hand history, recordings via Sourceforge. 17
  • 81. Availability • Initial public release TODAY! • Licensed under GPL. • Available from Sourceforge at : http://www.sourceforge.net/projects/spree-poker/ • Includes Server, Client, Tools and Bot Framework. • Access to resources such as hand history, recordings via Sourceforge. • Bot API : 17
  • 82. Availability • Initial public release TODAY! • Licensed under GPL. • Available from Sourceforge at : http://www.sourceforge.net/projects/spree-poker/ • Includes Server, Client, Tools and Bot Framework. • Access to resources such as hand history, recordings via Sourceforge. • Bot API : http://personal.cis.strath.ac.uk/~luke/SPREE/Bots/API/ 17
  • 84. SPREE Contact • SPREE Mailing Lists & Forums on Sourceforge 18
  • 85. SPREE Contact • SPREE Mailing Lists & Forums on Sourceforge • Contact me directly : 18
  • 86. SPREE Contact • SPREE Mailing Lists & Forums on Sourceforge • Contact me directly : ‣ luke@cis.strath.ac.uk 18
  • 87. SPREE Contact • SPREE Mailing Lists & Forums on Sourceforge • Contact me directly : ‣ luke@cis.strath.ac.uk ‣ @LukeD on Twitter 18

Hinweis der Redaktion

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n
  31. \n
  32. \n
  33. \n
  34. \n
  35. \n
  36. \n
  37. \n
  38. \n
  39. \n
  40. \n
  41. \n
  42. \n
  43. \n
  44. \n
  45. \n
  46. \n
  47. \n
  48. \n
  49. \n
  50. \n
  51. \n
  52. \n
  53. \n
  54. \n
  55. \n
  56. \n
  57. \n
  58. \n
  59. \n
  60. \n
  61. \n
  62. \n
  63. \n
  64. \n
  65. \n
  66. \n
  67. \n
  68. \n
  69. \n
  70. \n
  71. \n
  72. \n
  73. \n
  74. \n