Enumerate vs. Montecarlo - warum erhält man unterschiedl. Ergebnisse?

    • MSD2500
      MSD2500
      Bronze
      Dabei seit: 25.02.2007 Beiträge: 65
      Folgende Eingabe als Beispiel:
      Player1: A9o+
      Player2: ATo
      board: 8s 4h 4d

      liefert bei Verwendung von enumerate:
      Player1: 62.833%
      Player2: 37.167%

      und bei monte-carlo konvergiert es zu (über 400M games):
      Player1: 62.547%
      Player2: 37.453%

      Obige Werte erhält man exakt sowohl mit Pokerstove als auch mit Equilator. Ist also kein Bug im Equilator.


      Kann mir jemand erklären, woher der Unterschied in den Methoden kommt? Ich hätte erwartet, dass beide Ergebnisse gleich sein sollten.
  • 15 Antworten
    • Wumanizer
      Wumanizer
      Silber
      Dabei seit: 22.09.2006 Beiträge: 175
      hey ich würde das einfach mal von den Bezeichnungen ableiten:

      enumerate: aufzählen, d.h. alle möglichen übrigen Karten-Kombinationen berechnen und auswerten
      monte carlo: randomisiertes Verfahren, bei dem jedes mal die restlichen Karten "zufällig" gezogen werden (in deinem Fall 400M mal) und ausgewertet werden

      monte carlo sollte bei einer großen großen Sample Size gegen den enumarte Wert konvergieren...


      alle Angaben ohne Gewähr ;-)
    • wess0r1982
      wess0r1982
      Black
      Dabei seit: 22.01.2007 Beiträge: 1.028
      Moin,
      dachte erst es liegt daran, dass es nur Pseudozufallszahlen sind. Also irgendwelche Korrelationen oder endliche Perioden für Ungenauigkeit sorgen.

      Aber liegt wohl eher an nem bug im Programm. Wenn sich die Ranges überschneiden läuft da scheinbar irgendwas schief.

      Wenn man einfach mal dein board voll macht, meinetwegen
      8s 4h 4d Kc 7s
      Und dann mal ATo-A9o gegen A9 antreten lässt bekommt man bei enumerate all 21,88% equity durch tie und bei monte carlo 23,44%.

      Das auf dem board nur tie ist wenn A9 gegen A9 läuft bei den ranges sollte klar sein. Das heißt das bei Monte Carlo öfter A9 gegen A9 läuft als es eigentlich sein sollte (die 21,88% sind richtig).
    • MSD2500
      MSD2500
      Bronze
      Dabei seit: 25.02.2007 Beiträge: 65
      Hi, interessantes Beispiel hast du da gefunden. Ich finde es nur merkwürdig, dass sowohl Pokerstove als auch Equilator die gleichen Ergebnisse liefern und damit zufällig den gleichen Bug haben. :D
      Hab hier im Büro keine Pokersoftware installiert, aber ich glaub ich werd heute Abend auch nochmal ein bisschen rumprobieren.
    • wood
      wood
      Bronze
      Dabei seit: 04.03.2006 Beiträge: 732
      das pokerstove und equilator die gleichen ergebnisse liefern liegt wohl daran, dass sie die gleichen C bibliotheken zum evaluieren benutzen...
      sprich die algorithmen, mit denen pokerstove arbeitet sind frei verfügbar... ich schätze mal beim equilator wurden sie dann einfach benutzt
    • nopi
      nopi
      Gold
      Dabei seit: 18.08.2006 Beiträge: 1.724
      Dass der Equilator die gleichen Probleme mit MC hat ist bekannt (siehe AKs vs. AA,AQs). Es gibt aber ein Programm, dass das richtig annähert :rolleyes:

    • petebull1107
      petebull1107
      Bronze
      Dabei seit: 07.05.2007 Beiträge: 1.120
      Andere Range, anderes Board -> anderes Ergebnis als wess0r
    • MSD2500
      MSD2500
      Bronze
      Dabei seit: 25.02.2007 Beiträge: 65
      Hi Nopi, steht Texas Stove'Em irgendwo zu Verfügung?
    • PokerKhan
      PokerKhan
      Bronze
      Dabei seit: 31.07.2006 Beiträge: 179
      Hab ein neues Beispiel, was mich komplett vom Hocker haut

      MP2 : VPIP 49
      SB : VPIP 73
      Hero: KQo

      Hero´s equity bei enumerate = 7,5% (18,5Mio Hände)
      Hero´s equity bei MonteCarlo = 39,5% (19,1Mio Hände)

      Da stimmt doch was nicht ?(

      Daten aus dem Equilator
    • PokerKhan
      PokerKhan
      Bronze
      Dabei seit: 31.07.2006 Beiträge: 179
      Hab´s nochmal eingestellt.
      Jetzt schlägts bei enumerate auf 63% aus ?????
    • galam
      galam
      Bronze
      Dabei seit: 06.03.2005 Beiträge: 11.136
      Bei mir Montecarlo 39, Enumerate dauert bei den Werten ewig und wir nur sehr langsam konvergieren sieht bei mir aber richtig aus...
    • Publius
      Publius
      Bronze
      Dabei seit: 26.02.2006 Beiträge: 1.339
      Ich hab wegen einem anderen Thread das gleiche Problem festgestellt. Da muss dringend am Equilator etwas verändert werden.
      Die obere Berechnung erfolgte mit Enumerate, die untere mit Monte Carlo. Die Werte hatten sich bei Abbruch auch nur noch hinter dem Komma verändert.
      Das ist derzeit wirklich irreführend!

      Edit: Die Equity für AA bei Enumerate ist auch nach 400 Mio Händen und 25 Minuten stabil bei 17,8 %.
      Edit 2: Auch nach 600 Mio Händen stabil 17,8 %. BTW: Dual Core mit 2,6 GHz und parallel keine rechenintensiven Anwendungen.

      http://www.PokerStrategy.com
      Operation abgebrochen... 90.252.985 Spiele in 05:28 Minuten berechnet.

      Board:
      Dead:

      Equity Gewonnen UnentschiedenVerloren Hand
      Spieler 1: 17,809% 0,000% 89,045% 10,955% AA
      Spieler 2: 17,809% 0,000% 89,045% 10,955% 22+, A2s+, K2s+, Q2s+, J3s+, T6s+, 97s+, A2o+, K2o+, Q3o+, J7o+, T8o+
      Spieler 3: 21,495% 3,686% 89,045% 7,269% 22+, A2s+, K2s+, Q2s+, J3s+, T6s+, 97s+, A2o+, K2o+, Q3o+, J7o+, T8o+
      Spieler 4: 21,444% 3,635% 89,045% 7,320% 22+, A2s+, K2s+, Q2s+, J3s+, T6s+, 97s+, A2o+, K2o+, Q3o+, J7o+, T8o+
      Spieler 5: 21,443% 3,634% 89,045% 7,321% 22+, A2s+, K2s+, Q2s+, J3s+, T6s+, 97s+, A2o+, K2o+, Q3o+, J7o+, T8o+


      ----------------------------------------


      http://www.PokerStrategy.com
      Operation abgebrochen... 53.211.318 Spiele in 01:09 Minuten berechnet.

      Board:
      Dead:

      Equity Gewonnen UnentschiedenVerloren Hand
      Spieler 1: 57,327% 56,710% 1,388% 41,902% AA
      Spieler 2: 10,670% 10,072% 1,354% 88,574% 22+, A2s+, K2s+, Q2s+, J3s+, T6s+, 97s+, A2o+, K2o+, Q3o+, J7o+, T8o+
      Spieler 3: 10,670% 10,074% 1,351% 88,575% 22+, A2s+, K2s+, Q2s+, J3s+, T6s+, 97s+, A2o+, K2o+, Q3o+, J7o+, T8o+
      Spieler 4: 10,663% 10,066% 1,353% 88,581% 22+, A2s+, K2s+, Q2s+, J3s+, T6s+, 97s+, A2o+, K2o+, Q3o+, J7o+, T8o+
      Spieler 5: 10,670% 10,075% 1,350% 88,576% 22+, A2s+, K2s+, Q2s+, J3s+, T6s+, 97s+, A2o+, K2o+, Q3o+, J7o+, T8o+
    • Publius
      Publius
      Bronze
      Dabei seit: 26.02.2006 Beiträge: 1.339
      Noch mal ein etwas längerer Test.
      Aus meiner Sicht sollte als kurzfristige Maßnahme beim Equilator die Standardauswahl auf Monte Carlo gesetzt werden und beim Anclicken von Enumerate ein Warnhinweis folgen.

      http://www.PokerStrategy.com
      Operation abgebrochen... 5.554.022.756 Spiele in 05:29:49Stunden berechnet.

      Board:
      Dead:

      Equity Gewonnen UnentschiedenVerloren Hand
      Spieler 1: 16,857% 0,000% 84,284% 15,716% AA
      Spieler 2: 22,069% 5,212% 84,284% 10,504% 22+, A2s+, K2s+, Q2s+, J3s+, T6s+, 97s+, A2o+, K2o+, Q3o+, J7o+, T8o+
      Spieler 3: 20,362% 3,505% 84,284% 12,211% 22+, A2s+, K2s+, Q2s+, J3s+, T6s+, 97s+, A2o+, K2o+, Q3o+, J7o+, T8o+
      Spieler 4: 20,356% 3,500% 84,284% 12,217% 22+, A2s+, K2s+, Q2s+, J3s+, T6s+, 97s+, A2o+, K2o+, Q3o+, J7o+, T8o+
      Spieler 5: 20,356% 3,499% 84,284% 12,217% 22+, A2s+, K2s+, Q2s+, J3s+, T6s+, 97s+, A2o+, K2o+, Q3o+, J7o+, T8o+


      ----------------------------------------
    • storge
      storge
      Bronze
      Dabei seit: 09.08.2005 Beiträge: 22.519
      Ich push hier mal, weil mich nopis Texas Stove'em wirklich mal interessieren würde.
    • peppard
      peppard
      Bronze
      Dabei seit: 01.05.2005 Beiträge: 379
      Die Enumerate-Option ist wohl nur was, wenn das Board schon zu großen Teilen daliegt. Für Preflop-Betrachtungen eignet sie sich nicht.
      Ich wurde stutzig bei folgendem Ergebnis:

      Operation abgebrochen... 18.562.340 Spiele in 34 Sekunden berechnet.
      Equity Gewonnen UnentschiedenVerloren Hand
      Spieler 1: 8,293% 5,609% 10,734% 83,656% 22-99, KQs, QTs+, J9s+, T8s+, 97s+, 87s, 76s, 65s
      Spieler 2: 4,477% 1,793% 10,734% 87,472% 55+, A3s+, K8s+, QTs+, A7o+, KTo+, QJo
      Spieler 3: 4,428% 1,744% 10,734% 87,521% 44-JJ, A2s+, K9s+, QTs+, JTs, A8o+, KTo+, QJo
      Spieler 4: 82,803% 80,119% 10,734% 9,146% AsQh

      Dann habe ich es noch mal länger laufen lassen. Die Equity von AQo geht bis auf knapp 90% hoch und fällt dann wieder langsam. Nach ca. 1h hat der Equilator dann bei mir etwa 2 Milliarden Hände durchgerechnet ... und ist noch lange nicht fertig. Grob überschlagen müssten es etwa 20 Milliarden Hände sein, die er durchspielt. Die Reihenfolge der Berechnung schein systematisch zu sein, so dass Zwischenergebnisse überhaupt keine Bedeutung haben und schlicht falsch sind.

      Also für Preflop-Betrachtungen kann man nur MC verwenden - oder eben Enumerate bis zum Ende durchlaufen lassen ...
    • storge
      storge
      Bronze
      Dabei seit: 09.08.2005 Beiträge: 22.519
      MC ist dann auch einfach schneller. :P