Er nettpoker tilfeldig?

Poker har kjempa hardt for å verta klassifisert som eit spel der ein vinn ved å vera dyktig, ikkje ved å ha flaks. Dette stemmer når ein ser det over mange nok spel, noko som viser seg ved at pokerspelande datamaskiner er i ferd med å verta uslåelege, akkurat som i sjakk. (http://manmachinepoker.com/)

Imidlertid er det framleis stor variasjon i utfallet over kortare periodar, slik som for ei enkelt turnering. Bridge, som også baserer seg på utdelte kort, har stabilisert dette ved at fleire spelar med same kortfordeling. Ein kan då sjå kven som gjorde det beste ut av korta, og utdelinga har dermed lite å seia. I poker er det vanskeleg å sjå for seg noko slikt.

Grunnlaget for å vera dyktig i poker er å vita kor sannsynleg ulike utfall er. Ut over det går spelet ut på å lesa dei andre spelarane, prøva å forutseia kva dei har ut frå kva dei gjer. For at ein skal kunne vita kor sannsynleg det er med dei ulike kombinasjonane, går ein ut frå at korta er rettferdig delt ut. I eit fysisk pokerlag kan ein uærlig delar øydeleggja dette ved å gi seg sjølv, eller meir subtilt ein medsamansvoren, systematisk betre kort.

Den store oppblomstringa av poker har imidlertid i det siste vore på nett, og då dukkar eit anna moment opp. For det første er det veldig vanskeleg å sjekka delinga, ein må stola på datamaskinen. For det andre har no delaren glede av at alle får litt betre kort.

Det mest sannsynlege utfallet i poker er å få ingenting, noko som ofte medfører at ein kastar seg. Det er ikkje så mange av hendene i eit vanleg pokerlag som verkeleg fører til skikkeleg satsing. Sidan pokerselskapa på nett tener pengar på å ta ein del av innsatsen, har dei glede av at det er meir satsing, altså at alle har betre kort. Eit anna moment er å halda på kundane, og mange vil føla at det er meir morosamt å spela ein stad der dei stadig får gode kort, sjølv om dei ikkje vinn så ofte som dei burde med desse. Tek ein dette endå lenger ser ein at nye kundar, eller kundar som har tapt ein del, bør kanskje få ekstra gode kort for å halda på dei.

Sjølv om skeivdelinga er systematisk og ikkje favoriserer nokon, vil den verka forstyrrande på gode pokerspelarar, som veit kva som er sannsynleg. Seriøse pokernettstadar legg derfor vekt på å overtyda kundane om at dei spelar rettferdig, hovudsakleg med to strategiar: Publisering av delingsalgortimane, og eksterne firma som PriceWaterhouseCoopers som validerer og går god for bruken av desse algoritmane.

Dette er ein god strategi, sjølv om den kan slå pinleg ut for den som ikkje har gjort jobben sin. I 1999 klarte ei gruppe dataekspertar å utnytta svake punkt i koden til ein pokernettstad, slik at dei fekk vita rekkjefølgja på korta i stokken, og dermed visste kva kort motstandarane hadde, og kva som ville koma av kort vidare. (http://www.cigital.com/papers/download/developer_gambling.php) Sidan det var snille gutar som gjorde dette, fortalde dei det til nettstaden, og venta til dei hadde ordna opp idet før dei gikk ut offentleg.

Når ein datamaskin skal sørgja for at noko vert tilfeldig, nyttar ein nesten alltid noko som vert kalla pseudotilfeldige tal. (Enkelte, som Norsk Tipping til Keno og Extra, nyttar ekte tilfeldige tal, men dette er for tregt for nettpoker.) Det finst algoritmar som gir sekvensar med tal som ser tilfeldige ut, men som er heilt systematiske. Dette er pseudotilfeldige tal. Dersom ein kjenner kva algoritme som vert nytta, og kva det forrige talet den gav var, veit ein kva det neste er.

Ekspertane kjente algoritmen for å generera tala, og korleis dette vart gjort om til ein stokka kortstokk, sidan dette var publisert. Det som mangla var å finna kvar i sekvensen av pseudotilfeldige tal ein var. Her var den store feilen i algoritmen: Nettstaden nytta klokkeslettet når spelet starta (koda på millisekundnivå) som startplass i sekvensen for delinga.

Ved å ha ein tilsvarande algoritme og søka gjennom kva resultat ein ville få ved å nytta initialtilstandar nær noverande klokkeslett, var det dermed berre å sjå kva tal som gav match med dei korta som var synlege. Med fem synlege kort var dette eintydig, og ein kjente dermed heile kortstokken.

Som nevnt over kjem ein neppe bort frå å nytta pseudotilfeldige tal i nettpoker, og det er viktig at algoritmen ein nyttar er offentleg kjent, slik at det ikkje er skjulte svake punkt. Det kritiske punktet er dermed å sørgja for at ingen kan gjetta kva initialisering som vert nytta ved delinga. Sidan initialisering kan gjerast sjeldnare (ein treng ikkje ein gong gjera det mellom kvar stokking, berre algoritmen er god nok) verkar det rimeleg at ein her nyttar ekte tilfeldige tal. I praksis nyttar dei seriøse aktørane fenomen som er nesten ekte tilfeldige, basert på mus- og tastaturbruk.

Ragnar Hauge

Eg har jobba på Norsk Regnesentral sidan 1995. Mesteparten av tida har eg jobba med modellering av bergartar i oljereserervoar, men eg har etterkvart også mykje erfaring med bruk av seismiske data. Ut over det faglege er eg interessert i det aller meste, i alle fall frå eit teoretisk synspunkt.