Pokerikäsien arviointi

PokerBot

Esimerkiksi PokerStove arvioi muutamassa sekunnin sadasosassa preflop-voittotodennäköisyydet kahden aloituskäden kesken. Kun pakassa on jäljellä 48 korttia, erilaisia viiden kortin yhdistelmiä on (48*47*46*45*44)/(5*4*3*2*1) = 1.712.304 kpl. Tietokoneessani näiden käsien luuppaaminen koodilla

for J := 1 to 44 do
valitse kortti 1
for K := 2 to 45 do
valitse kortti 2
for L := 3 to 46 do
valitse kortti 3
for M := 4 to 47 do
valitse kortti 4
for N := 5 to 48 do
valitse kortti 5
poyta = kortti 1 kortti 2 kortti 3 kortti 4 kortti 5

vie aikaa vajaat 20 sekuntia.

Tavoitteenani on laskea pelaamistani käsistä todennäköisyydet eri panostusvaiheissa, kun showdowniin on edennyt kaksi pelaajaa. Kolme tai useampi ei siis ole välttämätön.

Laskentaan pitäisi saada vauhtia. Millä tavalla sitä pystyisi nopeuttamaan. Esimerkiksi näistä http://forumserver.twoplustwo.com/45/software/7-card-hand-evaluators-597/ jutuista en saa juuri mitään irti. Ne ovat liian vaikeita kotitarveohjelmoitsijalle.

1

559

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Silmäilepä allaolevaa QBasic-listausta, "väärä tapa" tekee
      yli 100-kertaisest i"työtä" verrattuna "oikeaan tapaan".

      Delphiä en tunne, mutta oletan FOR-luuppien pyörivän samoin
      kuin Basicissakin. Jos näin on, listauksesi ohjelma kehittää
      monet "kädet" tarpeettomasti sataan kertaan.

      Luuppimuuttujia voi tietenkin käyttää sellaisinaan korttien
      paikkojen määrittelyyn, ei niitä tarvitse erikseen sijoittaa
      ylimääräisiin muuttujiin.

      Pienenä vihjeenä tulevan varalle: Kun olet muutaman vuoden
      päästä päässyt vaiheeseen jossa kortteja ja "käsiä" aletaan
      vertailla, suosittelen korttien yksilöimistä 13 mittaisilla
      yksipainoisten binäärilukujen taulukoilla.
      Neljä yksiulotteista taulukkoa, yksi jokaista maata varten,
      jokaisessa taulukossa 13 alkiota, joiden ykkösbitin paikka
      määrittelee kortin numeron.



      Tuon oman listaukseni kehittämien "käsien" määrät
      ja ajankulutukset ovat seuraavat:

      "Oikea tapa", "käsiä" 2 598 960 kpl, aika 0.49 sek.
      "Väärä tapa", "käsiä" 311 875 200 kpl, aika 52.06 sek.

      Aikojen suhde : "Väärä tapa"/"oikea tapa" = noin 105.
      "Käsien suhde": "Väärä tapa"/"oikea tapa" = 120



      REM **********************************************
      REM **********************************************

      DEFINT A-Z

      CLS

      DIM kortteja AS LONG
      DIM laskuri1 AS LONG
      DIM laskuri2 AS LONG


      DIM aika1 AS DOUBLE
      DIM aika2 AS DOUBLE
      DIM aikasuhde AS DOUBLE
      DIM laskurisuhde AS DOUBLE

      kortteja = 52


      REM **********************
      REM oikea tapa
      REM **********************

      aika1 = TIMER
      laskuri = 0

      FOR J = 1 TO kortteja
      FOR K = J 1 TO kortteja
      FOR L = K 1 TO kortteja
      FOR M = L 1 TO kortteja
      FOR N = M 1 TO kortteja

      laskuri1 = laskuri1 1

      NEXT N: NEXT M: NEXT L: NEXT K: NEXT J

      aika1 = TIMER - aika1

      PRINT aika1, laskuri1


      REM **********************
      REM väärä tapa
      REM **********************

      aika2 = TIMER
      laskuri2 = 0

      FOR J = 1 TO kortteja
      FOR K = 2 TO kortteja
      FOR L = 3 TO kortteja
      FOR M = 4 TO kortteja
      FOR N = 5 TO kortteja

      laskuri2 = laskuri2 1

      NEXT N: NEXT M: NEXT L: NEXT K: NEXT J

      aika2 = TIMER - aika2

      PRINT aika2, laskuri2

      aikasuhde = aika2 / aika1
      laskurisuhde = laskuri2 / laskuri1

      PRINT aikasuhde, laskurisuhde

      END

      REM **********************************************
      REM **********************************************

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Eutanasia - miksi eläimelle sallitaan armokuolema, mutta ihmiselle ei?

      Olen pitkään ihmetellyt yhtä asiaa Suomessa. Kun koira kärsii parantumattomasta sairaudesta ja kovista kivuista, eläinlä
      Arvot ja etiikka
      37
      11665
    2. Sanna Marin vetänyt leukoja 11 kertaa

      Tästähän oli joskus polemiikkia, kun muistaakseni lupasi kymmenen tai jotain vedellä. No nyt niin on, ainakin omien san
      Maailman menoa
      32
      4609
    3. Sosiaalidemokratia romahtanut kautta maailman

      nuoret eivät enää kannata järjetöntä aatetta, joten demarien täytyy hakea kannattajia mamuista. Ruotsin sos.demit jo kie
      Maailman menoa
      246
      2792
    4. Miksi Seta ja Sofia Virta ei vaadi muslimeita kunnioittamaan priden-arvoja?

      Kuten tiedetään niin islam ei hyväksy sitä mitä pride edustaa. Seta-pomo Mikkonen nosti hirveän äläkän kun yksi tepsin
      Maailman menoa
      138
      2529
    5. Kuvaile kaivattusi

      ulkonäkö. Asiattomatkin kommentit saa laittaa. -🏚️
      Ikävä
      97
      1531
    6. Farmi Suomi: Kokeeko Frederik, 81, saman kohtalon kuin ikämies Danny?

      Danny, musiikkineuvos Ilkka Lipsanen, nähtiin mukana Farmi Suomi -realityssä v. 2024. Danny teki yllätysratkaisun ja tuo
      Tv-sarjat
      8
      995
    7. Et olisi niin epävarma,

      olisit varmempi, ihastuisin suhun enemmän...
      Ikävä
      82
      800
    8. 40 vuotta töitä paiskinut ja 3 vuotta työttömänä mamuna Suomessa, sama eläke

      Jokin mättää. Eläkettä ei pidä maksaa lainkaan mamuille jos työhistoriaa ei ole vähintään 10 vuotta takana.
      Maailman menoa
      201
      771
    9. Puualan yrittäjä

      Kuka mahtaa olla? Eikö tuhkaa saa levittää metsään?
      Kauhava
      10
      698
    10. En luota sinuun

      en edelleenkään yhtään tiedä oletko lintu vai kala vai kalavale. Ja ilmeisesti haluat pitää sen niin, syitä voi vain arv
      Ikävä
      59
      683
    Aihe