Voor het bekendste pokerspel, Texas Hold ’em, is door Martijn Wijskamp, systeemontwerper van beroep, een applicatie ontwikkeld die de exacte winkans bepaalt van het kaartenpaar waarmee deze pokervariant begint. Na het krijgen van deze eerste twee (privé)kaarten op hand, staan de spelers voor de keuze om mee te gaan, de inzet te verhogen of te passen. Daarna volgen drie rondes waarbij in totaal vijf gemeenschappelijke kaarten open op tafel komen. De eerste ronde wordt de ‘flop’ genoemd, waarbij drie kaarten worden opengelegd, daarna volgen de ‘turn’ en de laatste ronde ‘river’ waarbij één kaart extra open in het spel komt. Na elke ronde kan er wederom verhoogd, meegegaan, of gepast worden. Na de laatste ronde gaat het erom wie van de overblijvende spelers uit zijn twee privékaarten en de vijf gemeenschappelijke kaarten de hoogste combinatie van vijf kaarten kan maken.
Als de bovenstaande uitleg je wat te kort is, lees dan de basisregels van Texas Hold ’em op de volgende website.
Winkansen
Hoewel de beste combinatie gemeenschappelijk op tafel kan liggen, zijn de één of twee privékaarten die de speler op hand heeft vrijwel altijd doorslaggevend. De kans op winnen voordat de gemeenschappelijke kaarten verschijnen, wordt bepaald door de waarschijnlijkheid van een gunstige combinatie en of deze wel of niet overtroffen wordt. Door alle mogelijke combinaties van de gemeenschappelijke kaarten na te gaan, gecombineerd met alle mogelijke concurrerende variaties, kan de exacte winkans bepaald worden (aantal gewonnen spellen gedeeld door het totale aantal gesimuleerde spellen).
Wijskamp heeft software ontwikkeld om voor ieder (preflop) paar kaarten de winkans te bepalen, zodat ook de onderlinge sterkte van de beginkaarten zichtbaar wordt. Voor twee spelers zijn alle 2.781.381.002.400 verschillende (zonder ‘dubbele’) spellen gesimuleerd op een enkele PC in minder dan twee uur. Dit ten opzichte van het drie-spelerspel dat een veelvoud van mogelijkheden kent, namelijk 1.255.793.522.583.600 verschillende spellen. Deze immense taak werd verricht met behulp van drie (dual core) computers in een periode van zes dagen, met een snelheid van ruim 2,4 miljard spellen per seconde. Een centrale applicatie zorgde voor de opdeling en distributie van het rekenwerk en het consolideren van de resultaten.
In de onderstaande tabel worden de resultaten genoemd van de beste tien kaartparen uit de preflop voor spellen met twee en drie spelers.
De onbetwiste winnaar: een paar Azen (illustratie: Martijn Wijskamp)
De onbetwiste winnaar bestaat uit een paar Azen, ook wel Pocket Rockets genoemd. Wanneer de winkansen in het pokerspel van twee spelers met de drie-spelervariant vergeleken wordt, dan valt onder meer een verschuiving van de relatieve sterkte op. Zo nemen gelijke rangkaarten (77 en 88) meer in kans af, dan kaarten waarmee een straatje of flush (AKs, AQs, AKu) te vormen is. Deze subtiele verandering ondersteunt de veronderstelling dat met meer spelers een sterkere eindcombinatie noodzakelijk zal worden. Het winnen met zwakkere combinaties wordt door een extra concurrent onwaarschijnlijker.
Dergelijke veronderstellingen zijn door het maken van een volledige simulatie toetsbaar, maar ook overbodig geworden. In een volledige simulatie wordt namelijk het kleinste effect bemerkt en met het juiste gewicht in de kans verwerkt. Hier ligt ook de toepasbaarheid van snelle, uitputtende simulaties: met minimale veronderstellingen kunnen uiterst precieze antwoorden worden gevonden.
Of vergelijkbare problemen te simuleren zijn, hangt sterk af van hoeveel variaties in het probleemdomein kunnen optreden. Bij de ontwikkelde pokersimulatie variëren de vijf gemeenschappelijke kaarten en bij iedere speler de twee privékaarten. Doordat met iedere speler een extra dimensie aan variaties wordt toegevoegd, zal een simulatie van het vier-spelerspel ruim vijfhonderd keer langer duren dan de drie-spelersimulatie en zou dit een (single core) PC ongeveer vijftig jaar bezig houden. Met de ontwikkelde simulator kunnen echter duizenden PC’s parallel ingezet worden, waarmee deze duur lineair terugloopt met het aantal ingezette CPU’s.
Meer informatie:
- Texas Hold ’em (Wikipedia)
- Distributed computing (Wikipedia)