Peliteoreettisen optimaalin approksimointi Texas Hold em -pokerissa



Samankaltaiset tiedostot
Nollasummapelit ja bayesilaiset pelit

Tekoäly pokerissa - Poki

SEKASTRATEGIAT PELITEORIASSA

Bayesin pelit. Kalle Siukola. MS-E2142 Optimointiopin seminaari: Peliteoria ja tekoäly

Peliteoria Strategiapelit ja Nashin tasapaino. Sebastian Siikavirta

Kun sinua edeltävä pelaaja on panostanut (laittanut pelimerkkejä pottiin), sinun täytyy joko maksaa saman verran pelimerkkejä tai luovuttaa.

Johdanto peliteoriaan Kirja kpl. 2

Tasapaino epätäydellisen tiedon peleissä

Yhteistyötä sisältämätön peliteoria jatkuu

Yhteistyötä sisältämätön peliteoria

Blackjack on korttipeli, jossa pelaajan tavoitteena on voittaa pelinhoitaja.

Epätäydellisen tiedon jatkuvat pelit. Mika Viljanen Peliteorian seminaari

Pohdiskeleva ajattelu ja tasapainotarkennukset

PELITEORIAN PERUSTEITA

Salasuhteita. esimerkiksi espanjaksi nimi tarkoittaa pientä pusua.

Verkkopokerijärjestelmä. Testausdokumentti 2. iteraatio Ryhmä Kanat Ohjelmistotuotantoprojekti, syksy 2008

PELITEORIAN TALOUSTIETEELLISIÄ SOVELLUKSIA

Verkkopokerijärjestelmä. Testausdokumentti Ryhmä Kanat Ohjelmistotuotantoprojekti, syksy 2008

Trafficars - Ruuhkaara

PELIOHJEET (suomeksi) Koira. Peli on kaksivaiheinen: Vaihe 1:

Toistetut pelit Elmeri Lähevirta. MS-E2142 Optimointiopin seminaari: Peliteoria ja tekoäly

MS-C2105 Optimoinnin perusteet Malliratkaisut 5

TURNAUSOHJEET. Turnauksen tavoite. Ennen aloitusta. Taistelukierroksen Pelaaminen.

Luento 5: Peliteoriaa


Luento 9. June 2, Luento 9

Peliteoria luento 1. May 25, Peliteoria luento 1

Luento 5: Peliteoriaa

Luento 8. June 3, 2014

Sekastrategiat ja intensiiviyhteensopivuus

11 Oligopoli ja monopolistinen kilpailu (Mankiw & Taylor, Ch 17)

A ja B pelaavat sarjan pelejä. Sarjan voittaja on se, joka ensin voittaa n peliä.

Epätäydellisen tiedon jatkuvat pelit

Tuloperiaate. Oletetaan, että eräs valintaprosessi voidaan jakaa peräkkäisiin vaiheisiin, joita on k kappaletta

Luku 8. Aluekyselyt. 8.1 Summataulukko

ja λ 2 = 2x 1r 0 x 2 + 2x 1r 0 x 2

Evolutiivisesti stabiilin strategian oppiminen

Tenniksen pistelaskusäännöt, lukio/ammatilliset oppilaitokset

KOKO PERHEEN HAUSKA STRATEGIAPELI OHJEET

PANA RY LIIGASA A NNÖ T

Verkkopokerijärjestelmä. Suunnitteludokumentti, 1. iteraatio Ryhmä Kanat Ohjelmistotuotantoprojekti, syksy 2008

Sisällysluettelo. 1. Johdanto

Päätöksentekomenetelmät

PIENEN STÄKIN STRATEGIA Kootut ohjeet

Tutkimustiedonhallinnan peruskurssi

1 of :44

Päätöksentekomenetelmät

Verkkopokerijärjestelmä. Suunnitteludokumentti, 2. iteraatio Ryhmä Kanat Ohjelmistotuotantoprojekti, syksy 2008

Perustaso Fixed limit Kootut ohjeet

Algoritmit 2. Luento 10 To Timo Männikkö

Liite sisäasiainministeriön asetukseen SMDno/2011/2120. RAY:N RAHAPELIEN SÄÄNNÖT sekä suurimmat panokset ja voitot

Opettaminen ja oppiminen

1. Esitä rekursiivinen määritelmä lukujonolle

Mikrotaloustiede Prof. Marko Terviö Aalto-yliopisto BIZ 31C00100 Assist. Jan Jääskeläinen Syksy 2017

A Lausekkeen 1,1 3 arvo on 1,13 3,3 1,331 B Tilavuus 0,5 m 3 on sama kuin 50 l 500 l l C Luvuista 2 3, 6 7

TIES592 Monitavoiteoptimointi ja teollisten prosessien hallinta. Yliassistentti Jussi Hakanen syksy 2010

Neuroverkon hyödyntäminen Texas Hold em limit -pelaajan seuraavan toiminnon ennustamisessa. Joona Tuominen

POKERIHUONEEN OHJEET JA YLEISET

Peliteorian soveltaminen hajautettujen järjestelmien protokollasuunnittelussa (valmiin työn esittely)

Pelaajien lukumäärä: suositus 3 4 pelaajaa; peliä voi soveltaa myös muille pelaajamäärille

Peliohje (6)

Ongelma 1: Ovatko kaikki tehtävät/ongelmat deterministisiä?

VILLIN ILMAPIIRIN JA NOPEIDEN REFLEKSIEN KORTTIPELI 2 8 PELAAJAA I DB001 KÄ ALK 01SCAN/A

Rubikin kuutio ja ryhmät. Johanna Rämö Helsingin yliopisto, Matematiikan ja tilastotieteen laitos

Antitammirobotti. Antti Meriläinen Martin Pärtel 29. toukokuuta 2009

Kommunikaatio Visa Linkiö. MS-E2142 Optimointiopin seminaari: Peliteoria ja tekoäly

Algoritmit 2. Luento 13 Ti Timo Männikkö

Avausvärin valinta aina pisimmällä värillä kahdesta tai kolmesta neljän kortin väristä alimmalla kahdesta viiden kortin väristä ylemmällä KQJ2 KQJ32

Luento 5: Peliteoria

SCIFEST-loppuraportointi korttia. Sara Kagan, Suvi Rönnqvist

SÄÄNNÖT. Language: English / Suomi

Matinteko (1 / 10) Matinteko (2 / 10) Helpointa matin tekeminen on kahdella raskaalla upseerilla (esim. kuningattarella ja tornilla).

Äärellisten mallien teoria

Kirjoita ohjelma jossa luetaan kokonaislukuja taulukkoon (saat itse päättää taulun koon, kunhan koko on vähintään 10)

Konsensusongelma hajautetuissa järjestelmissä. Niko Välimäki Hajautetut algoritmit -seminaari

Pelin suunnitellut Timo Multamäki

Algoritmit 2. Luento 6 To Timo Männikkö

Pelien teoriaa: tasapainokäsitteet

Ongelma 1: Ovatko kaikki tehtävät/ongelmat deterministisiä?

Peliteoria ja kalatalous YE4

BM20A5840 Usean muuttujan funktiot ja sarjat Harjoitus 7, Kevät 2018

1 PÖYDÄT JA PALLOT 1. Kilpailuissa tulee käyttää Suomen Biljardiliiton hyväksymiä pöytiä ja palloja.

Datatähti 2019 loppu

811312A Tietorakenteet ja algoritmit, , Harjoitus 3, Ratkaisu

Z O K E R OHJEET REGLER PÅ SVENSKA XL 3 XL 3 M4 1 L4 1 XL 3 M 23 XL 1 XL 4 ML 4 M 41 L4 3 L 1 S4 1 XL 2 XL M 14 M 4 XL 3 LS 4 XL 3 L 3 S L3

JOHDATUS TEKOÄLYYN TEEMU ROOS

Sisältö. Sisällysluettelo. Johdanto

Luento 7. June 3, 2014

Kustannustehokkaat riskienhallintatoimenpiteet kuljetusverkostossa (Valmiin työn esittely)

5/11 6/11 Vaihe 1. 6/10 4/10 6/10 4/10 Vaihe 2. 5/11 6/11 4/11 7/11 6/11 5/11 5/11 6/11 Vaihe 3

keskenään isomorfiset? (Perustele!) Ratkaisu. Ovat. Tämän näkee indeksoimalla kärjet kuvan osoittamalla tavalla: a 1 b 3 a 5

8.2. Permutaatiot. Esim. 1 Kirjaimet K, L ja M asetetaan jonoon. Kuinka monta erilaista järjes-tettyä jonoa näin saadaan?

Reaalilukuvälit, leikkaus ja unioni (1/2)

Valloita finanssikaupunki

Pikaopas. ALOITA TÄSTÄ! Pelin tavoite: Valmistaudu taisteluun!! Riko kaikki vastustajasi kilvet ja hyökkää vielä kerran voittaaksesi

Paljonko maksat eurosta -peli

Ohjeet pelaajien siirtymiseen

Nollasummapelit ja muut yleisemmät summapelit

ALHAMBRA. Muuri Seralji Puutarha Holvikäytävä Paviljonki Asuinrakennus Torni Rakennuksen nimi Hinta

Tarkennamme geneeristä painamiskorotusalgoritmia

Transkriptio:

Peliteoreettisen optimaalin approksimointi Texas Hold em -pokerissa Lari Latvala lari.latvala@helsinki.fi Tekoäly kortti- ja lautapeleissä Helsingin yliopisto, tietojenkäsittelytieteen laitos Raportti C 2008 16, s. 86 96, joulukuu 2008 Tiivistelmä Tässä seminaariesitelmässä tarkastellaan Texas Hold em -pokerin sääntöjen mallintamista ja approksimointia matemaattisen peliteorian kannalta. Aluksi tarkastelemme yleisellä tasolla peliteorian peruskäsitteitä, jonka jälkeen esitellään Texas Hold em - pokeri ja määritellään se peliteorian käsitteillä. Erityisesti tässä tarkastellaan kahden pelaajan pelin tapausta. Tällä hetkellä on mahdotonta laskea täydellistä peliteoreettista ratkaisua Texas Hold em -pokerille, koska jo kahden pelaajan pelissä on yli 10 18 eri tilaa, jos ei oteta erikseen huomioon pelaajien tekemien korotuksien suuruuksia. Billings ja kumppaneiden kehittämällä menetelmällä PsOpti (Pseudo-optimal player), voidaan täysimittaisesta kahden pelaajan pelistä tehdä approksimaatio, jonka kompleksisuus on O(10 7 ). Approksimaatio säilyttää pelin tärkeimmät ominaisuudet, joten sille laskettuja optimaalisia ratkaisuja voidaan käyttää täysimittaisen pelin pseudo-optimaalisina ratkaisuina. 86

1 Johdanto Texas Hold em -pokeri on suosittu kahden tai useamman pelaajan korttipeli, jossa pelaajan on voittaakseen pystyttävä tekemään päätöksensä epätäydellisen tiedon ja todennäköisyyksien perusteella. Päätöksentekoon sisältyy vastustajien tilanteiden arviointi heidän aikaisempien siirtojensa perusteella, sekä oman tilanteen kätkeminen välittämällä ristiriitaista tietoa omien siirtojen kautta [GSS08]. Ensimmäiset varteenotettavat pokeriohjelmat julkaistiin 90-luvun lopulla. Vuonna 1997 Denis Papp (University of Alberta) julkaisi pokeritekoälyohjelman nimeltä Loki. Aaron Davidson kirjoitti ohjelman täydellisesti uudestaan ja julkaisi sen nimellä Poki vuonna 1999. Poki perustuu pokerikäsien esiintymis- ja voittotodennäköisyyksien tehokkaaseen arviointiin sekä vastustajien käyttäytymisen mallintamiseen. Tässä työssä tarkastelemme vuonna 2003 julkaistua ohjelmaa PsOpti, joka lähestyy peliä eri näkökulmasta. Sen tavoitteena pelissä ei ole voittaa mahdollisimman paljon, vaan hävitä mahdollisimman vähän. Tämä ratkaisu perustuu peliteoriaan, joka on eräs sovelletun matematiikan osa-alue. Peliteoriaa käytetään nykyisin tietotekniikassa erityisesti tekoälysovelluksissa. Optimaalisen pelistrategian löytäminen pokerissa on haastava ongelma ja se on nykyisin suosittu kohde tekoälytutkimuksessa [GSS08, BBD + 03]. 87

2 Peliteoria Peliteoria on matemaattinen tapa tarkastella kahden tai useamman päätöksentekijän, eli pelaajan, tekemiä siirtoja sellaiseen tilanteeseen (peliin) liittyen, jossa pelaajat tiedostavat sen, että siirrot vaikuttavat toisten pelaajien tekemiin siirtoihin [Ras06]. Peliteorian katsotaan alkaneen vuonna 1944, kun von Neumann ja Morgenstern julkaisivat kirjan The Theory of Games and Economic Behaviour. Kirjassa käytettiin pokeria esimerkkinä kahden pelaajan nollasummapelistä ja esitettiin matemaattisen peliteorian ensimmäinen merkittävä tulos, ns. minimax lause [Ras06]. Useat valintaongelmat (desicion problems) voidaan mallintaa peliteorian avulla ja peliteoriaa on viime vuosina sovellettu usealla eri alalla. Erityisesti nykyaikainen ekonomia perustuu peliteoriaan [Ras06]. 2.1 Peliteorian käsitteitä Peliteoriassa tarkasteltavan pelin keskeisimmät elementit ovat pelaajat, siirrot, hyödyt ja informaatio. Näitä kutsutaan yleisesti pelin säännöiksi (rules of the game) ja pelin mallinnuksessa tavoitteena on kuvata jokin tilanne sääntöjen mukaisesti selittämään sitä, mitä kyseisessä tilanteessa tulee tapahtumaan. Pelin aikana pelaajat pyrkivät maksimoimaan omaa hyötyään tekemällä suunnitelmia, joita kutsutaan strategioiksi. Strategiat ovat tapoja suorittaa siirtoja kyseisellä hetkellä saatavilla olevan informaation perusteella. Erityisen kiinnostavaa peliteoreettisen analyysin kannalta on optimaalisten ratkaisujen olemassaolo ja Nashin tasapaino [Ras06]. Seuraavien käsitteiden määritelmät noudattavat Eric Rasmussenin kirjan Games and Information: An Introduction to Game Theory esitystä. Pelaaja Jokainen pelaaja (player) on itsenäinen päätöksentekijä. Pelaajat pyrkivät tekemään pelissä sellaisia siirtoja, jotka maksimoivat pelaajan saaman hyödyn. Luonto Luonnolla (nature) tarkoitetaan sellaista peliin sisältyvää täysin mekaanisesti toimivaa pelaajaa, joka tekee siirtoja tiettyjen peliin määriteltyjen todennäköisyyksien mukaisesti. Pokerin sääntöihin ei kuulu luontoa. Siirto Pelaajan i suorittamaa siirtoa (action) merkitään a i, ja sillä tarkoitetaan pelaajan tekemää valintaa. Merkintää A i käytetään ilmaisemaan kaikkien pelaajan i käytettävissä olevien siirtojen joukkoa, jota kutsutaan siitoavaruudeksi (Action space). Pokerissa siirroilla tarkoitetaan korotusvaiheessa tehtäviä päätöksiä, jotka esitellään tarkemmin pelin sääntöjen yhteydessä. Informaatio Informaatiolla (information) tarkoitetaan pelaajan käytössäolevaa tietoa omasta ja muiden pelaajien hyödyistä tai niiden todennäköisyyksistä. Pokerissa pelaajan informaatio koostuu erilaisten mahdollisten pokerikäsien todennäköisyyksistä, joihin vaikuttavat pelaajan omat kortit, pöydällä olevat kortit sekä korttipakassa olevien ja nostettavien korttien lukumäärät. Lisäksi informaatiota johdetaan pelaajien tekemistä siirroista, potin suuruudesta ja vaadittavan korotuksen määrästä suhteessa pottiin. 88

Hyöty Hyödyllä (payoff) π i (s 1,..., s n ) tarkoitetaan joko pelaajan i saamaa todellista hyötyä, kun kaikki pelaajat ja luonto ovat valinneet strategiansa ja pelikierros on suoritettu, tai sillä voidaan myös tarkoittaa odotettavissa olevaa hyötyä, jonka i saavuttaa kaikkien pelaajien valitsemien strategioiden funktiona. Pokerissa hyöty on voitetun tai hävityn rahan määrä. Strategia Strategia(strategy) s i on pelaajan i käyttämä ohje tai malli, joka liittyy pelaajan sen hetkiseen informaatioon. Pelaaja valitsee siirtonsa strategian nojalla. Optimaalista strategiaa merkitään s i ja sitä noudattamalla pelaajan hyöty on mahdollisimman suuri, riippumatta siitä muiden pelaajien valitsemista strategioista. Tarkemmin esitettynä: π(s i, s j ) > π(s i, s j ) s j, s i s i, missä j i. Pelin järjestys Pelin järjestys(order of play) on tapa esittää informaatio ja siirrot yhdessä. Pelin järjestys voidaan esittää esimerkiksi pelipuuna. Pokerin pelipuu on liian suuri tähän esitykseen sisällytettäväksi, joten tyydymme tarkastelemaan sen solmujen lukumäärää, kts. kuva 1. Ulostulema Ulostulema (outcome) on mallintajan valitsema joukko siirroista, hyödyistä ja muista pelin kiinnostavista elementeistä pelin pelaamisen jälkeen. Pelin mallintaja käyttää ulostulemaa mittaamaan eri pelaajien strategioiden paremmuutta. Pokerin kohdalla ulostulemana voidaan käyttää hyötyä, eli voitetun rahan määrää, suhteessa minimikorotukseen. Tasapaino Tasapainoa (equilibrium) merkitään s = (s 1,..., s n) ja se on kaikkien n N peliin osallistuvien pelaajien optimaalisten strategioiden kombinaatio. Kun tasapaino on määritelty, voidaan selvittää pelin ulostulema. Nashin tasapainolla tarkoitetaan tilannetta, jossa yksikään pelaaja ei voi parantaa saamaansa hyötyä muuttamalla strategiaansa, olettaen että toiset pelaajat pitävät aikaisemmat strategiansa. Optimaalinen ratkaisu Optimaalinen ratkaisu tarkoittaa käytännössä sitä, että missä tahansa pelin mahdollisessa tilanteessa tunnetaan paras mahdollinen siirto a i tai optimaalinen strategia s i, jota noudattamalla pelaaja saavuttaa vähintään peliteoreettisen minimituloksen, riippumatta vastustajan strategiasta tai valinnoista. Valitettavasti tällaisen optimaalisen ratkaisun löytäminen on mahdollista vain yksinkertaisissa tapauksissa, ja käytännön sovelluksissa kuten pokerissa sitä ei voida selvittää laskennallisesti mielekkäässä ajassa. Nollasummapeli Nollasummapelillä (zero-sum game) tarkoitetaan sellaista peliä, jossa kaikkien osallistuvien pelaajien saavuttamien hyötyjen ja kärsimien tappioiden summa on aina nolla. Pokeri kuuluu nollasummapelien joukkoon, sillä pelaajan voittaman potin sisältämä hyöty, eli raha, on peräisin vastustajilta. 89

3 Texas Hold em Texas Hold em on tällä hetkellä kaikkein suosituin pokerin muoto. Sen suosio on kasvanut räjähdysmäisesti 2000-luvulla televisioitujen pokeriturnausten ja nettipokerin myötä. Seuraavaksi käydään läpi pelin kulku, olettaen että lukijalle on pokerikäsien keskinäinen arvohierarkia ennestään selvä. 3.1 Pelin kulku Yksittäistä Texas Hold em pelikierrosta kutsutaan kädeksi (hand) ja se koostuu neljästä vaiheesta, joita kutakin seuraa panosten korottamisvaihe. Panosten korottamisvaiheessa kukin pelaaja voi vuorollaan tehdä jonkin seuraavista siirroista: luopua (fold), katsoa (call), passata (check) tai korottaa (raise). Luopuessaan pelaaja luovuttaa kaikki jo pelaamansa panokset pottiin ja muuttuu passiiviseksi käden loppuun asti. Katsominen tarkoittaa vastustajan korotuksen maksamista ja passaaminen siirtää vuoron seuraavalle pelaajalle, jos pelaajan ei tarvitse katsoa ja hän ei halua korottaa. Korottaessa pelaaja nostaa panosta maksamalla pottiin vähintään minimikorotuksen verran. No-limits pokerissa korotuksen ylärajana on ainoastaan pelaajan käytössä olevan rahan määrä [Pok, BBD + 03]. Jako (deal, preflop) Jotta pottiin tulisi aina rahaa, joutuu joka kierroksella kaksi pelaajaa asettamaan panokset jo ennen kuin yhtään korttia on jaettu. Näitä panoksia kutsutaan blindeiksi eli pimeiksi panoksiksi. Jakajasta katsottuna vasemmalla oleva pelaaja joutuu maksamaan pienen blindin (small blind), joka on yleensä minimikorotuksen suuruinen ja hänestä seuraava pelaaja joutuu maksamaan suuren blindin (big blind), joka on kaksi kertaa minimikorotuksen määrä. Tämän jälkeen jakaja (dealer) jakaa kaikille osallistujille kaksi korttia (hole cards). Nämä ovat pelaajan henkilökohtaisia kortteja, joita muut kanssapelaajat eivät näe. Jakovuoro siirtyy pelaajien välillä myötäpäivään [Pok, BBD + 03]. Floppi (flop) Kolme avointa julkista korttia nostetaan pakasta ja asetetaan pöydälle. Turn Neljäs avoin julkinen kortti nostetaan pakasta ja asetetaan pöydälle. River Viides ja viimeinen avoin julkinen kortti nostetaan pakasta ja asetetaan pöydälle. Korttien paljastus (Showdown) Kun kaikki korotukset on tehty, paljastavat jäljellä olevat aktiiviset pelaajat piilokorttinsa. Se pelaaja, joka pystyy muodostamaan parhaimman viiden kortin pokerikäden kahden piilokorttinsa ja viiden avoimen julkisen korttien avulla voittaa potin. Tasapeli on myös mahdollinen ja tällöin potti jaetaan. 90

3.2 Texas Hold em peliteorian kannalta Peliteoria kattaa kaikenlaiset kahden tai useamman pelaajan väliset kilpailutilanteet. Toisin kuin vaikkapa shakki ja tammi, Texas Hold em on epätäydellisen tiedon peli, sillä yksittäinen pelaaja ei tiedä toisten pelaajien piilokortteja. Lisäksi se on satunnaisulostulon peli, koska pakasta nostettavat kortit ovat satunnaisessa järjestyksessä [Shi01]. Eräs yleinen tapa esittää pelin rakenne on pelipuu. Pelipuu on suunnattu graafi, jonka solmut vastaavat pelin tiloja ja reunat siirtoja. Pokeri voidaan esittää epätäydellisen informaation pelipuuna, jossa on erillisiä todennäköisyys- ja valintasolmuja, jotka on järjestetty informaatiojoukkoihin (information sets). Kahden pelaajan Texas Hold em sisältää 19 erilaista korotussekvenssiä jotka saadaan pelaajille mahdollisten siirtojen yhdistelminä. Käytännössä pelissä ei kuitenkaan esiinny näistä kahta, koska luovuttaminen silloin kun passaaminen on mahdollista, ei koskaan kuulu optimaaliseen strategiaan. Jäljelläolevista 17:sta sekvenssistä kahdeksan päättyy toisen pelaajan luovuttamiseen, joka vastaa pelipuussa lehtisolmua. Loput 9 sekvenssiä päättyvät katsomiseen, jolloin pelipuussa siirrytään seuraavaan lapsisolmuun [BBD + 03]. Kuva 1: Kahden pelaajan Texas Hold em pelin vaiheet ja pelipuun solmujen lukumäärät [BBD + 03]. Kuvassa 1 on esitetty Texas Hold em pelin vaiheet ja kahden pelaajan tapauksessa jokaiseen vaiheeseen liittyvien erillisten pelihaarojen lukumäärät. Kaaviossa ei mallinneta korotuksien suuruuksia; pelattaessa no-limits variaatiota pelistä operoidaan käytännössä lähes äärettömässä siirtoavaruudessa [BBD + 03]. 3.3 Optimaalisen ratkaisun etsiminen Optimaalisen ratkaisun selvittämisessä käydään läpi pelipuu ja etsitään sieltä sellainen polku, joka minimoi vastustajan saamaa hyötyä. Minimax lauseen nojalla tällöin samalla maksimoidaan myös oma hyöty. 91

Tavallinen tapa etsiä ratkaisua on muuttaa pelipuu lineaariyhtälöryhmäksi, jotka voidaan ratkaista jollakin lineaarisen ohjelmoinnin menetelmällä, kuten Simplex-algoritmilla. Lineaarisen ohjelmoinnin menetelmät ovat käyttökelpoisia silloin, kun pelipuun kompleksisuus on alle O(10 9 ) [BBD + 03]. PsOptin tapauksessa lopullinen lineaarisen ohjelmoinnin tuloksena saadaan taulukko, joka sisältää todennäköisyydet erilaisia strategioita varten jokaiselle mallinnetun pelin mahdolliselle skenaariolle. Pelin aikana PsOpti arvioi nykyiset kortit ja etsii taulukosta sitä vastaavan strategian. Taulukko pystytään laskemaan päivässä ja laskenta edellyttää kahden gigatavun muistia. Seuraavaksi tarkastelemme niitä karsintamenetelmiä, jotka mahdollistavat todennäköisyystaulukon laskennan. 3.4 Pelin yksinkertaistukset Kun yritetään etsiä optimaalista ratkaisua, olennainen ongelma on pelipuun koon rajoittaminen siten, että puu voidaan käydä läpi mielekkäässä ajassa. Tätä varten pelipuuta yksinkertaistetaan approksimoimalla sitä eri tavoin. Näin muodostettuja pienempiä pelejä ratkaisemalla voidaan tehdä arvio täysimittaisen pelin optimaalisesta ratkaisusta [BBD + 03]. Pokerissa on mahdollista tehdä hyvin tarkka approksimointi käyttämällä maakohtaisia ekvivalenssi-isomorfismeja. Tällä tarkoitetaan käytännössä sitä, että jokainen maa käyttäytyy pelissä samalla tavalla. Näin voidaan pelipuun kokoa kutistaa kertoimella 4! = 24. Valitettavasti tarkat approksimoinnit eivät pysty rajoittamaan pelipuun kokoa niin paljoa, että täysimittaisen Texas Hold em pokerin optimaalisen strategian ratkaiseminen olisi laskennallisesti järkevää. Tehokkaampi tapa rajoittaa pelipuun kokoa on vähentää korttipakan kokoa. Esimerkkejä julkaisuista jotka käsittelevät näitä yksinkertaistusmenetelmiä ovat flopin kutistaminen yhteen korttiin [Shi01] ja Rhode Island Hold em [KP95]. PsOptin tapauksessa Billings ja kumppanit selvittivät aluksi pseudo-optimaalisten ratkaisujen löytämistä useammassa erikokoisessa rajoitetetussa versiossa, joista pienimmässä oli kahden maan ja neljän arvon pakka ja suurimmassa kolmen maan ja kahdeksan arvon, eli 24 kortin, pakka. Nämä yksinkertaistukset kuitenkin muuttavat pelin luonnetta ratkaisevasti ja niiden perusteella ei voida approksimoida luotettavasti optimaalista strategiaa [BBD + 03]. 3.4.1 Korotussekvenssien karsiminen Eräs approksimointitapa, joka säilyttää paremmin alkuperäisen pelin ominaisuudet on mallintaa peli kahdessa osassa. Ensimmäinen osa pelataan floppiin tai sen jälkeiseen korotukseen asti ja toinen osa pelataan ensimmäisestä osasta loppuun. Vaikka menetelmä on parempi kuin korttipakan karsiminen, tässäkin tapauksessa peli muuttuu merkittävästi, sillä Texas Hold em -pokerille on tyypillistä tehdä pitkäkestoisia strategioita, joiden suorittaminen edellyttää kaikkien korotusvaiheiden pelaamista [BBD + 03]. Approksimointia voidaan tehdä myös korotusvaiheen sisällä. Vaikka korotusvaiheen aikana pelaajien käytössä on suuri määrä erilaisia korotusmahdollisuuksia, oikeassa pelissä esiintyy tavallisesti tietyntyyppisiä korotuksia useasti. Yksi tällainen on korottaminen puolella sen hetkisestä potista; sitä pidetään hyvänä sekä pelattaessa vahvaa kättä tai bluffattaessa. Puolella korottaminen antaa vastustajalle 3 : 1 suhteen potin ja katsomiseen vaadittavan maksun välille [GSS08]. On myös korotustyyppejä jotka ovat niin epäkannattavia, että niitä ei esiinny pokeriammattilaisten peleissä. Sellaisten korotusten tekeminen, jotka ovat hyvin pieniä suhteessa pottiin ei ole kannattavaa, koska se antaa vastustajalle erittäin hyvän suhteen potin ja maksun 92

välille, koska on halpaa katsoa pieni korotus. Lisäksi pienen korotuksen tekevä vahvaa kättä pelaava pelaaja saa kasvatettua pottia vain vähän [GSS08]. Jotta voitaisiin luoda käyttökelpoinen malli no limit pokeriin, jossa on käytännössä rajattomasti erilaisia korotusmahdollisuuksia, on pystyttävä tunnistamaan pelin kannalta kaikkein tärkeimmät strategiset valinnat [GSS08]. 3.4.2 Luokitteluun perustuvat approksimointi Identifioimalla strategisesti samankaltaiset tilanteet, voidaan pienentää pelipuun kokoa. Billings ja kumppanit kutsuvat menetelmää nimellä bucketing ja se mainitaan tärkeimmäksi heidän käyttämäkseen approksimointimenetelmäksi. Tämä menetelmä perustuu siihen, että kaikkien mahdollisten käsien joukko A kuvataan ekvivalenssiluokkiin (buckets) B n, n N, niiden edellyttämien pelistrategioiden perusteella. Tällöin kaikki luokkaan kuuluvat kädet voidaan pelata samaa strategiaa noudattaen, ilman että pelaajan saaman hyödyn odotusarvo vähenisi. PsOptin tapauksessa luokittelu tehtiin kuvaamalla joukko A ensin kaksiulotteiseen avaruuteen I 2, jonka ulottuvuudet ovat pelaajan korttien nykyinen asema pelissä ja niiden potentiaali, eli saavutettavissa oleva asema. Sellaiset joukon A jäsenet, joiden kohdalla voidaan valita sama strategia muodostavat I 2 :ssa klustereita, joista johdetaan edelleen ekvivalenssiluokat. Sellaiset korttiyhdistelmät, joiden nykyinen asema on heikko, mutta joilla on suuri potentiaali, muodostavat erityisen tärkeän ekvivalenssiluokan. Tätä luokkaa käytetään tunnistamaan bluffaamiseen soveltuvia käsiä. Edellämainittuja menetelmiä käyttämällä on mahdollista rajoittaa pelipuun kompleksisuus luokkaan O(10 7 ). Koska näin saadut ratkaisut nojaavat huomattaviin yksinkertaistuksiin, tarkkuus ja luotettavuus ei vastaa optimaalista ratkaisua. Kunnollinen menetelmien käyttökelpoisuuden arviointi vaatii empiiristä testaamista. 93

4 Suorituskykytestit Hyvä Texas Hold em pelistrategia edellyttää vastustajan harhauttamista ja hienovaraista tasapainoilua erilaisten pelitapojen välillä. Tämä tarkoittaa sitä, että välillä hyvillä korteilla tulee pelata hitaasti ja pitkittää korotuksia vastustajan ansaan saamiseksi. Toisaalta hyvän pelaajan tulee myös lähteä mukaan peliin tai korottaa joskus myös huonoilla korteilla (bluffing). Kahden pelaajan pokerissa vastustajan harhauttamisen merkitys korostuu. Voitojenmääräminimipanoksissa Pelatujenkäsienmäärä Kuva 2: PsOpti vastaan pokeriammattilainen Gautam Rao (thecount) [BBD + 03]. PsOpti on ensimmäinen tietokoneohjelma, jota huipputason pokeriammattilainen ei voita selvästi kahden pelaajan Texas Hold em pokerissa. Kuvassa 2 on esitetty 7000 käden pelihistoria, jossa ihmispelaaja jäi lopulta voitolle. Program Vexbot Sparbot Poki Vexbot * +0.052 +0.601 Sparbot -0.052 * +0.093 Poki -0.601-0.093 * Taulukko 1: Pokeriohjelmien suorituskykyvertailu (minimipanoksia/käsi) [BDS + 06]. Vastustajan profilointiin perustuva Vexbot päihitti PsOptin variantin, Sparbotin, 40000 pelatun käden suorituskykytestissä [BDS + 06]. Taulukossa 1 on esitetty ohjelmien keskenäinen suorituskyky, käyttäen mittana voitettujen minimipanosten määrää pelattua kättä kohti. PsOpti hävisi kuitenkin hyvin pienellä marginaalilla. PsOpti pyrkii aina pelaamaan approksimoitua optimaalista strategiaa noudattaen. Strategian tuottama suorituskyky on hyvin tasainen; sen avulla pystytään takaamaan minimisuoritustaso mitä tahansa vastustajan käyttämää strategiaa vastaan. Menetelmän heikkoutena on kuitenkin se, että pelistrategiaa ei mukauteta vastustajan pelityyliin, vaan samaa pseudo-optimaalista strategiaa noudatetaan aina. Tästä johtuen PsOpti ei välttämättä voita nopeasti tai ylivoimaisesti heikkoa vastustajaa, joka noudattaa helposti ennustettavissa olevaa strategiaa [BBD + 03, BDS + 06]. 94

5 Pohdintaa PsOpti soveltuu oletustrategiana hyvin tilanteeseen jossa vastustajaa ei tunneta tai vastustaja tiedetään ennalta taitavaksi ja halutaan kerätä riittävä pelihistoria vastustajan pelitavan analysointia varten. Yhdistettynä vastustajan profilointiin PsOpti olisi todennäköisesti erittäin haastava vastustaja huipputason pokeriammattilaisille. Pokeritekoälyjen keskenäisissä suorituskykytesteissä Vexbot voitti PsOptin, mutta saavuttaakseen parhaan suorituskykynsä Vexbot tarvitsee 5000 käden pelihistorian vastustajan profiilin muodostamiseen. Olen tätä raporttia tehdessäni saanut käsityksen, että nykyiset pokeriohjelmat lähestyvät jo pokeriammattilaisten tasoa. Olettaisin, että jo lähitulevaisuudessa tietokoneohjelmat pystyvät voittamaan parhaita ihmispelaajia, mutta vain pienellä marginaalilla, joka saavutetaan käyttämällä hyväksi ihmispelaajan tekemiä virheitä. 95

Viitteet [BBD + 03] D. Billings, N. Burch, R. Davidson, A. Holte, J. Schaeffer, T. Schauenberg, and D. Szafron. Approximating game-theoretic optimal strategies for full-scale poker. In Proceedings of the 18th International Joint Conference on Artificial Intelligence, IJCAI, pages 661 668, Acapulco, Mexico, August 2003. [BDS + 06] D. Billings, A. Davidson, T. Schauenberg, B. Neil, M. Bowling, R. Holte, J. Schaegger, and D. Szafron. Game-tree search with adaptation in stochastic imperfect-information games. Lecture Notes in Computer Science, 3846:21 34, 2006. [GSS08] [KP95] A. Gilpin, T. Sandholm, and T. Sørensen. A heads-up no-limit texas hold em poker player: Discretized betting models and automatically generated equilibriumfinding programs. In In Proceedings of the International Conference on Autonomous Agents and Multiagent Systems, AAMAS, pages 1185 1192, Estoril, Portugal, May 2008. D. Koller and A. Pfeffer. Generating and solving imperfect information games. In Proceedings of the 14th International Joint Conference on Artificial Intelligence, IJCAI, pages 1185 1192, Montreal, Canada, August 1995. [Pok] Pokeritieto. www.pokeritieto.fi, texas hold em -pokerin säännöt, 11.11.2008. [Ras06] [Shi01] E. Rasmusen. Games and Information: An Introduction to Game Theory, 4th edition. Blackwell Publishing, Malden, USA, 2006. M. Shi, J.and Littman. Abstraction methods for game theoretic poker. Lecture Notes in Computer Science, 2063, 2001. 96