Mathe hinter ICM-Nash-Rechnern

    • Renne01
      Renne01
      Coach
      Coach
      Dabei seit: 15.05.2007 Beiträge: 3.649
      Hey. Ich schau mich derzeit ein wenig nach NL-Cash Alternativen um. Nun hab ich mich also ua. mit SnGs und ICM, Nashranges befasst. Was mich dabei aber nervt ist, dass ich nirgends etwas darüber finden kann, wie diese ganzen Rechner ICM mit Nashranges verknüpfen bzw. wie diese Ranges überhaupt zustandekommen (also Annahme Villain ist unknown oder besser als Hero). Ich hab natürlich schon mit nem ICM-Tool geübt und kann in nicht knappen Spots schon brauchbar abschätzen was ich pushen oder callen kann. Ich würd aber trotzdem gern wissen, wie diese Tools auf die Ranges kommen. ICM an sich hab ich verstanden, ist nicht kompliziert, nur aufwändig, wenn man das selber rechnen will. Wie die Ranges dazupassen, hab ich wie gesagt noch nicht verstanden und nichts gefunden. Vll. kann mir hier jemand vorrechnen, wie man die Nashranges ausrechnet (für 3+ Spieler, nicht HeadsUp). Oder vll. hat jemand einen Link. Einfach nur stupide nach Trial-und-Error-Prinzip Ranges in Kopf prügeln, befriedigt mich so garnicht. Wär cool, wenn ihr mir weiterhelfen könntet.

      Vielen Dank.
  • 11 Antworten
    • DasWodka
      DasWodka
      Bronze
      Dabei seit: 25.11.2009 Beiträge: 5.684
      Hey Renne01,
      Das nash Gleichgewicht wird durch ein Algorithmus ausgerechnet, Dh, dass beisipielsweise im Blindbattle erstmal angenommen wird, dass der SB x% pusht. Darauf kann der BB Y% callen (ICM miteinberechnet). Daraufhin wird wieder die pushingrange auf die y range optimal eingestellt. Das geht dann immer so weiter, bis keiner der beiden sich mehr verbessern kann. Das selbst auszurechnen ist sehr kompliziert. Du siehst ja schon wie kompliziert das mit einer einfachen ICM Situation per Hand ist und um ein nash gleichgewicht zu erhalten müsstest du diese Berechnung sehr oft durchführen.
      Das nash gleichgewicht kommt übrigens aus der Spieltheorie und wurde ursprünglich nicht speziell fürs Pokern ausgearbeitet
      Gruss DasWodka
    • thomasSP
      thomasSP
      Bronze
      Dabei seit: 16.09.2006 Beiträge: 1.011
      gibt es immer nur ein gleichgewicht bzw. führt diese berechnungsmethode immer zum selben gleichgewicht (auch wenn man die ursprüngliche pushingrange (also von der die berechnung ausgeht) von sb ändert) ?
    • DasWodka
      DasWodka
      Bronze
      Dabei seit: 25.11.2009 Beiträge: 5.684
      Ja man kommt da immer aufs selbe Gleichgewicht. Überlege dir mal die extreme:
      1. pr:100% -> cr: auch sehr weit -> im nächsten Schritt wird die pushingrange sehr gering
      2. nur AA werden gepusht: bb sollte quasi alles folden-> im nächsten Schritt pusht SB wieder sehr weit
      Man sieht, dass die 2. Schritte den anfangsannahmen sehr ähneln.
      Hoffe das half beim verstehen und ist nicht zu wirr.
    • StephanN
      StephanN
      Bronze
      Dabei seit: 18.08.2007 Beiträge: 6.522
      Und wie wird ICM berechnet?

      Wenn z.b. alle den gleichen Stack haben, kann man das ja relativ einfach mit nem "Baum" berechnen. Wenn aber alle Spieler unterschiedliche große Stacks haben und unterschiedliche Bubble Faktoren..dann kann ich die jetzt nicht berechnen, der Teil des ICM ist doch deutlich komplizierter? als jetzt die einfache Analyse der Nash Gleichgewichte bzw. des Nash Gleichgewichtes.
    • Renne01
      Renne01
      Coach
      Coach
      Dabei seit: 15.05.2007 Beiträge: 3.649
      Dh. ich pushe mal ne beliebige Range und stell für den callenden Spieler die Range so ein, dass er max. Profit gegen meine Pushrange macht. Das spiel ich für grob 100 Pushfälle (weil 1-100% Range) und schau mir an, bei welcher Push-Call Verteilung für beide Spieler 0 rauskommt, richtig? Wenn noch ein 3. Spieler overcallen kann, wird dieser 3. Spieler erst in die Rechnung integriert, sobald die optimalen Ranges für die ersten beiden Spieler feststehen, oder?
      Dann hätte ich grob 100 Fälle für 2 Spieler und zu viele für 3 und mehr Spieler. Aber hab ich das Prinzip soweit richtig verstanden?

      Danke.

      @StephanN
      ICM alleine find ich nicht so wild. Ist mit zunehmender Spieleranzahl zwar elendslang aber nicht kompliziert. Da die Nashranges aber wohl durch "Rumprobieren" entstehen, sind selbige händisch niemals in vernünftiger Zeit zu lösen, gut gilt für ICM alleine wohl auch, wenn man viele Spieler berücksichtigen muss. Deshalb bleibt wohl nur der Weg, dass man übt bis zum Erbrechen, um mit seinen Schätzungen auf vernünftige Ergebnisse zu kommen. Und dafür gibts dann die Tools, die die Rechenschritte durchführen. Für große Teilnehmerfelder gibts die "Auge mal Pi"-Variante mit dem Bubblefaktor, den man grob schätzen kann. In Kill Everyone wird auch mit ner Stärkezahl in Verbindung mit einem Chart gearbeitet. Programmiertechnisch ist das sicher nicht so schwer zu lösen. Da es die fertigen Programme ohnehin schon gibt, kann man sich das zum Glück auch sparen.
    • DasWodka
      DasWodka
      Bronze
      Dabei seit: 25.11.2009 Beiträge: 5.684
      Ja im Grunde genommen hast du recht. Genau 0 kommt wegen der begrenzten Handkombos selten raus. es nähert sihmch nur an 0.
      Ein dritter spieler kann die ranges gar nicht mal so unerheblich beeinflussen. Man muss ihn daher so mit reinnehmen:
      PR x -> cr y -> overcallrange z -> pr x2 -> usw.
    • Renne01
      Renne01
      Coach
      Coach
      Dabei seit: 15.05.2007 Beiträge: 3.649
      Ok, danke dir.
    • Bobbs
      Bobbs
      Bronze
      Dabei seit: 02.01.2006 Beiträge: 4.264
      Hallo,

      ich denke, dass ich hier etwas Aufklärungsarbeit leisten kann. Ich habe vor mehr als zwei Jahren einmal für ein Coaching mit JayGatsby eine Präsentation zum Thema HU Nashranges erstellt. Das Coaching wurde damals aber leider noch nicht aufgezeichnet.
      Der Algorithmus mit dem Holdemressources und ICMizer ihre Nashranges berechnen nennt sich Fictitious Play und kommt auch aus der Spieltheorie. Bei Interesse kannst du das ja mal googlen.
      Angenommen wir haben zwei Spieler:
      Die Idee ist, dass Spieler A weiß, welche Strategie (Range) Spieler B spielt und in der ersten Runde des fiktiven Spiels die perfekte Gegenstrategie zu Spieler B spielt. In Runde zwei weiß dann Spieler B, welche Strategie Spieler A spielt und spielt seinerseits die perfekte Strategie gegen die Strategie von Spieler A, usw...
      Irgendwann haben dann beide Spieler die jeweils beste Range gefunden.
      Man kann zeigen, dass es in diesem einfachen Fall genau ein Nashgleichgewicht gibt.
      Also es gibt jeweils eine Strategie für Spieler A und Spieler B, die in dem Sinn perfekt ist, dass es sich für keinen der beiden Spieler lohnt von ihr abzuweichen.
      Ich habe damals für den 10BB Fall die Ranges per Hand ausgerechnet, damit das auch jeder versteht. Hier ist das passende Slide von damals:


      ICM ist deutlich einfacher zu verstehen (und auch zu programmieren), da es grob um das einfachste mögliche Modell handelt, mit dem der faire Anteil eines Spielers am Preisgeld (gegeben eine Preisgeldverteilung) unkompliziert über bedingte Wahrscheinlichkeiten und der Interpretation jedes einzelnen Chips als Los auf den ersten Platz, berechnet werden kann. Hier gibt es so viel Literatur, auch hier im Forum, dass ich mir eine genaue Erklärung spare.

      Ich hoffe, dass ich zumindest etwas Licht ins Dunkel bringen konnte.
      Falls du noch genauere Fragen zur Nashberechnung hast, darfst du sie gerne stellen. :)

      Beste Grüße,
      Bobbs
    • Renne01
      Renne01
      Coach
      Coach
      Dabei seit: 15.05.2007 Beiträge: 3.649
      Hey. Danke dir. Was ist mit "m" und was mit "mixed" gemeint? Im Prinzip hab ichs verstanden. :)
    • Bobbs
      Bobbs
      Bronze
      Dabei seit: 02.01.2006 Beiträge: 4.264
      Das habe ich natürlich vergessen zu erklären, danke für die Erinnerung. :)
      Damit das ganze Vorgehen funktioniert, musst du in dem Algorithmus deine letzte und aktuelle Strategie mixen. Ein kurzes Beispiel hilft.
      Nehmen wir an, dass wir in der letzten Runde mit einer 80% Range pushen und sich in der neuen Runde unsere Range auf 60% reduziert. Dann spielen wir in der nächsten Runde eine Mischung der neuen und alten Strategie: (1-m)*Alte Strategie + m*neue Strategie
      Wichtig ist, und das kann man mathematisch zeigen, dass der Gewichtungsfaktor m schnell genug aber nicht zu schnell fällt. Typischerweise nimmt man dafür die Folge 1/n, wobei n die Runde im fiktiven Spiel ist. Deshalb gibt es auch eine Spalte für die gemischte Strategie.

      Um das alles zu verstehen, reicht ein einfacher Selbsttest.
      Versuche im 10BB Beispiel die Nashstrategie zu finden, aber nehme als neue Strategie immer direkt die beste Antwort auf seine neue Strategie. Spätestens bei Iteration 10 wirst du merken, dass du dich im Kreis drehst. :)

      Ich glaube, ich fasse das alles mal in einem übersichtlichen Post zusammen.

      Beste Grüße,
      Bobbs
    • notker88
      notker88
      Bronze
      Dabei seit: 03.08.2010 Beiträge: 266
      was ist der Unterschied von Fictitious Play und FutureGameSimulation? Oder ist das das selbe?

      edit: hat sich erledigt