Home / Community / Forum / Poker Forum / Poker Ausbildung / Poker Handanalysen /

ICM - Lösungsalgorithmus

Alt
Standard
ICM - Lösungsalgorithmus - 23-12-2008, 15:57
(#1)
Benutzerbild von mafi1968
Since: Mar 2008
Posts: 246
Independent Chip Model – ICM
1. Einleitung
Ziel des ICM ist es, eine mathematisch begründete Aussage darüber zu treffen, wie viel von einem Preispool eines Pokerturniers einem einzelnen Spieler abhängig von der Preisverteilung für die einzelnen Plätze und dem aktuellen Chipcount aller Spieler „zusteht“, die sogenannte Equity. Die Equity eines Spielers berechnet sich wie folgt:

Gleichung 1:
E = Summe(P(Platz n) x G(Platz n))

Hierbei ist:
E – die zu berechnende Equity des Spielers
P – steht für Probability (dt. Wahrscheinlichkeit.)
G – Preisgeld für den entsprechenden Platz
n – Anzahl der Spieler (n >= 1)

Erläuterung zu Gleichung 1:
Sind noch n Spieler im Turnier und es gibt Preisgelder für die ersten m Plätze, dann ergeben sich drei mögliche Fälle:

1. Es befinden sich noch mehr Spieler im Turnier als es bezahlte Plätze gibt (n > m). Wir befinden uns noch vor der Bubble. In diesem Fall kann die Berechnung der Summe auf die ersten m Summanden beschränkt werden, da für alle Plätze größer als m das Preisgeld Null und somit der Term (P(Platz k) x G(Platz k)) für k > m ebenfalls Null ist.

2. Es werden genauso viele Plätze ausbezahlt, wie noch Spieler im Turnier sind (n = m). Die Bubble ist also gerade geplatzt. Dann ist die Summe einfach für alle n Glieder zu berechnen.

3. Es sind nur noch weniger Spieler im Turnier als bezahlte Plätze für das Turnier ausgeschrieben waren. (n < m). Dann werden die Preisgelder für die Plätze n+1 bis m einfach ignoriert, da sie bereits an die Spieler n+1 bis m ausbezahlt wurden und für die übrigen n Spieler keine Rolle spielen.

Welchen Nutzen hat man nun, wenn man die Equity berechnen kann? Die wichtigste Anwendung ergibt sich daraus, dass man in All-In-Situationen eine Entscheidungshilfe hat, um zu beurteilen, ob ein All-In-Push (bzw. Call des All-In-Pushes eines anderen Spielers) oder ein Fold profitabler ist. Hierzu setzt man den Gegner auf eine gewisse Handrange und berechnet dann die Equity für alle möglichen eintretenden Fälle aus. Im folgenden Artikel soll es darum gehen, wie man diese Equity nun genau berechnet.

2. Einfachster (trivialer) Fall: Equity eines Spielers
Wenn nur noch ein Spieler übrig ist, dann ist die Wahrscheinlichkeit, dass dieser den 1. Platz belegt = 1 (entspricht 100%). Dem Turniersieger steht somit das gesamte Preisgeld für den ersten Platz zu. Hier ist also nichts mehr zu berechnen.

3. Einfachster nichttrivialer Fall: Equity bei zwei Spielern
Wir betrachten als Beispiel ein $10+$1 STT mit 10 Spielern. Im Preispool befinden sich somit $100. Die Auszahlungsstruktur beträgt 50% = $50 für Platz 1 und 30% = $30 für Platz 2. Die restlichen 20% = $20 für Platz 3 wurden bereits an den drittplatzierten Spieler ausbezahlt und spielen für die weitere Berechnung keine Rolle mehr. Es sind noch zwei Spieler im Turnier. Als Startingstack bekam jeder Spieler 1500 Chips zu Beginn des Turniers. Davon besitzt Spieler A aktuell 5000 Chips, die restlichen 10000 Chips hat Spieler B. Die Frage ist, wie groß ist die Equity beider Spieler am noch verbleibenden Preispool von $80. Berücksichtigt werden müssen hierfür die Chipcounts und die Preisverteilung für Platz 1 und Platz 2.

Die Equity eines Spielers bei noch zwei aktiven Spielern und zwei bezahlten Plätzen berechnet sich wie folgt:

Gleichung 3:
E = P(Platz 1) x G(Platz 1) + P(Platz 2) x G(Platz 2)

Diese Berechnung muss theoretisch für beide Spieler durchgeführt werden. Praktisch genügt es bei zwei Spielern, die Equity eines Spielers zu berechnen. Die Equity des anderen ergibt sich damit einfach als Differenz zum Preispool. Die Problemstellung reduziert sich damit auf die Frage:

Wie groß sind die Wahrscheinlichkeiten, dass ein Spieler einen bestimmten Platz belegt?

Kennt man diese, kann man die Equity mit Gleichung 3 berechnen, da die Preisverteilung für alle Plätze bekannt ist.

Für unsere beiden Spieler bedeutet das, wir müssen 4 Fragen beantworten:

Wie wahrscheinlich wird Spieler A den 1. Platz belegen.
Wie wahrscheinlich wird Spieler A den 2. Platz belegen.
Wie wahrscheinlich wird Spieler B den 1. Platz belegen.
Wie wahrscheinlich wird Spieler B den 2. Platz belegen.

Tabelle 3:
Code:
                        Platz 1 ($50)  Platz 2 ($30)
Spieler 1 (5000 Chips)  P(A wird 1.)   P(A wird 2.)
Spieler 2 (10000 Chips) P(B wird 1.)   P(B wird 2.)
Tatsächlich genügt es für den einfachen Fall von zwei Spielern nur eine Wahrscheinlichkeit, zum Beispiel P(A wird 1.) zu berechnen. Alle anderen drei Wahrscheinlichkeiten ergeben sich dann als einfache Differenz zu dieser. Dies wird aber bei drei und mehr Spielern nicht mehr so einfach sein. Wie berechnen sich jetzt aber die Wahrscheinlichkeiten genau? Dazu machen wir einfach folgende grundsätzliche Annahme:

Annahme 3:
Die Siegwahrscheinlichkeit eines Spielers verhält sich direkt proportional zum Chipcount des Spielers im Verhältnis zu den gesamten im Umlauf befindlichen Chips.

Die Schlüssigkeit des gesamten ICM steht und fällt mit der Richtigkeit dieser Annahme. Der Beweis ihrer Korrektheit ist aber nicht Gegenstand dieses Artikels.

Aus der Annahme ergibt sich nun:
P(A wird 1.) = 5000/15000 = 1/3
P(B wird 1.) = 10000/15000 = 2/3

Somit sind auch die Wahrscheinlichkeiten für die zweiten Plätze klar, nämlich:
P(A wird 2.) = 1 – P(A wird 1.) = 1 – 1/3 = 2/3
P(B wird 2.) = 1 – P(B wird 1.) = 1 – 2/3 = 1/3

Mit diesen Werten kann jetzt die Equity beider Spieler durch Einsetzen in Gleichung 3 berechnet werden:
E(A) = 1/3 x $50 + 2/3 x $30 = $110/3 ~ $36,67
E(B) = 2/3 x $50 + 1/3 x $30 = $130/3 ~ $43,33

Probe:
E(A) + E(B) = G(Platz 1) + G(Platz 2) = $80
$110/3 + $130/3 = $240/3 = $80

4. Equity bei drei Spielern
Wir bleiben bei unserem Beispiel, dem $10+$1 STT mit 10 Spielern. Nur gehen wir diesmal einen Schritt zurück, zu dem Punkt als noch 3 Spieler im Turnier sind und stellen die Frage, wie sich nun die Equity jedes Spielers berechnen lässt. Die Ausgangssituation ist also folgende: Die Auszahlungsstruktur beträgt 50% = $50 für Platz 1, 30% = $30 für Platz 2 und 20% = $20 für Platz 3. Von den 15000 im Spiel befindlichen Chips hält Spieler A 5000, Spieler B 7500 und Spieler C die restlichen 2500 Chips. Die Equity eines Spielers berechnet sich dann wie folgt:

Gleichung 4:
E = P(Platz 1) x G(Platz 1) + P(Platz 2) x G(Platz 2) + P(Platz 3) x G(Platz 3)

Da die Preisverteilung bekannt ist, reduziert sich die Fragestellung wieder darauf, die Wahrscheinlichkeiten, mit der ein bestimmter Spieler einen bestimmten Platz belegt, zu berechen. Es sind somit 9 Fragen zu beantworten.

Tabelle 4:
Code:
                      Platz 1 ($50)  Platz 2 ($30)  Platz 3 ($20)
Spieler A (5000 Ch.)  P(A wird 1.)   P(A wird 2.)   P(A wird 3.)
Spieler B (7500 Ch.)  P(B wird 1.)   P(B wird 2.)   P(B wird 3.)
Spieler C (2500 Ch.)  P(C wird 1.)   P(C wird 2.)   P(C wird 3.)
Die Berechnung erfolgt spaltenweise von links nach rechts. Zuerst wird die Wahrscheinlichkeit berechnet, dass jeder der drei Spieler den 1. Platz belegt. Diese ergibt sich ja entsprechend unserer Annahme direkt aus dem Chipcount des Spielers im Verhältnis zur Gesamtzahl der im Umlauf befindlichen Chips. Anschließend werden mit einem geeigneten Verfahren die Wahrscheinlichkeiten für Platz 2 berechnet. Die Wahrscheinlichkeiten für den 3. Platz ergeben sich dann einfach dadurch, dass man für jeden Spieler die Wahrscheinlichkeiten für Platz 1 und 2 addiert und das Ergebnis von 1 abzieht. Mit anderen Worten, die Wahrscheinlichkeit den 3. Platz zu belegen ist gleich der Wahrscheinlichkeit keinen der anderen beiden Plätze zu belegen.

4.1 Berechnung der Wahrscheinlichkeiten für Platz 1 bei drei Spielern
P(A wird 1.) = 5000/15000 = 1/3
P(B wird 1.) = 7500/15000 = 1/2
P(C wird 1.) = 2500/15000 = 1/6

Probe:
P(A wird 1.) + P(B wird 1.) + P(C wird 1.) = 1/3 + 1/2 + 1/6 = (2 + 3 + 1)/6 = 1

4.2 Berechnung der Wahrscheinlichkeiten für Platz 2 bei drei Spielern
Wie berechnet sich nun die Wahrscheinlichkeit, dass ein Spieler (zum Beispiel Spieler A) den zweiten Platz belegt? Der „Trick“ besteht darin, an dieser Stelle das 3-Spieler-Problem in zwei 2-Spieler-Probleme zu zerlegen und die beiden Teilergebnisse anschließend zu kombinieren. Da wir dieses Verfahren für alle drei Spieler durchführen müssen, müssen wir somit sechs 2-Spieler-Probleme lösen.

4.2.1 Spieler A wird Zweiter
Wenn Spieler A den zweiten Platz belegt, dann gibt es zwei Möglichkeiten der Platzierung der beiden anderen Spieler. Im ersten Fall wird Spieler B Erster und Spieler C Dritter, im zweiten Fall wird Spieler C Erster und Spieler B Dritter. In beiden Fällen lässt sich jeweils die Wahrscheinlichkeit, dass Spieler A den zweiten Platz belegt, berechnen, wenn man den Spieler auf Platz 1 „ausblendet“. Analog zu dem oben beschriebenen 2-Spieler-Problem können wir dann die Wahrscheinlichkeiten für den zweiten Platz berechnen.

P(A wird 2. wenn B 1. wird) = 5000/(15000 – 7500) = 2/3
P(A wird 2. wenn C 1. wird) = 5000/(15000 – 2500) = 2/5

Nachdem wir die Wahrscheinlichkeit, dass Spieler A Zweiter wird, für beide möglichen Fälle berechnet haben, müssen wir beide Teilergebnisse jetzt kombinieren, um die Gesamtwahrscheinlichkeit zu erhalten. Dazu multiplizieren wir die Teilergebnisse mit der Wahrscheinlichkeit ihres Eintretens und bilden anschließend die Summe.

P(A wird 2.) = P(B 1.) x P(A 2. wenn B 1.) + P(C 1.) x P(A 2. wenn C 1.)
P(A wird 2.) = 1/2 x 2/3 + 1/6 x 2/5 = 1/3 + 1/15 = (5 + 1)/15 = 2/5
P(A wird 2.) = 2/5

Genauso wie wir die Wahrscheinlichkeit P(A wird 2.) berechnet haben, lassen sich die Wahrscheinlichkeiten P(B wird 2.) und P(C wird 2.) berechnen.

4.2.2 Spieler B wird Zweiter
P(B wird 2. wenn A 1. wird) = 7500/(15000 – 5000) = 3/4
P(B wird 2. wenn C 1. wird) = 7500/(15000 – 2500) = 3/5

Gesamtwahrscheinlichkeit:
P(B wird 2.) = P(A 1.) x P(B 2. wenn A 1.) + P(C 1.) x P(B 2. wenn C 1.)
P(B wird 2.) = 1/3 x 3/4 + 1/6 x 3/5 = 1/4 + 1/10 = (5 + 2)/20 = 7/20.
P(B wird 2.) = 7/20

4.3 Spieler C wird Zweiter
P(C wird 2. wenn A 1. wird) = 2500/(15000 – 5000) = 1/4
P(C wird 2. wenn B 1. wird) = 2500/(15000 – 7500) = 1/3

Gesamtwahrscheinlichkeit:
P(C wird 2.) = P(A 1.) x P(C 2. wenn A 1.) + P(B 1.) x P(C 2. wenn B 1.)
P(C wird 2.) = 1/3 x 1/4 + 1/2 x 1/3 = 1/12 + 1/6 = (1 + 2)/12 = 1/4.
P(C wird 2.) = 1/4.

Probe:
Die Gesamtwahrscheinlichkeit aller drei Spieler zusammen muss natürlich wieder 1 sein.

P(A wird 2.) + P(B wird 2.) + P(C wird 2.) = 2/5 + 7/20 + 1/4 = (8 + 7 + 5)/20 =1

4.3 Berechnung der Wahrscheinlichkeiten für Platz 3 bei 3 Spielern
Im letzten Schritt lassen sich nun durch einfache Subtraktion die Wahrscheinlichkeiten dafür ausrechnen, dass Spieler A, B bzw. C den 3. Platz belegen.

P(A wird 3.) = 1 – (P(A wird 1.) + P(A wird 2.)) = 1 – (1/3 + 2/5) = 1 – (5 + 6)/15 = 4/15
P(B wird 3.) = 1 – (P(B wird 1.) + P(B wird 2.)) = 1 – (1/2 + 7/20) = 1 – (10 + 7)/20 = 3/20
P(C wird 3.) = 1 – (P(C wird 1.) + P(C wird 2.)) = 1 – (1/6 + 1/4) = 1 – (2 + 3)/12 = 7/12

Probe:
P(A wird 3.) + P(B wird 3.) + P(C wird 3.) = 4/15 + 3/20 + 7/12 = (16 + 9 + 35)/60 = 1

4.4 Gesamtergebnis, Equity bei drei Spielern
Damit haben wir unsere Tabelle der Wahrscheinlichkeiten komplett:

Tabelle 4.4:
Code:
                      Platz 1 ($50)  Platz 2 ($30)  Platz 3 ($20)
Spieler A (5000 Ch.)  1/3 ~ 33,3%    2/5  = 40,0%   4/15 ~ 26,7%
Spieler B (7500 Ch.)  1/2 = 50,0%    7/20 = 35,0%   3/20 = 15,0%
Spieler C (2500 Ch.)  1/6 ~ 16,7%    1/4  = 25,0%   7/12 ~ 58,3%
Jetzt können wir auch die Equity jedes Spielers am Preispool ausrechen, indem wir die Wahrscheinlichkeiten und Preisgelder in Gleichung 4 einsetzen.

E(A) = 1/3 x $50 + 2/5 x $30 + 4/15 x $20 = $(250 + 180 + 80)/15 = $510/15 = $34,00
E(B) = 1/2 x $50 + 7/20 x $30 + 3/20 x $20 = $(500 + 210 + 60)/20 = $770/20 = $38,50
E(C) = 1/6 x $50 + 1/4 x $30 + 7/12 x $20 = $(100 + 90 + 140)/12 = $330/12 = $27,50

Probe:
E(A) + E(B) + E(C) = G(Platz 1) + G(Platz 2) + G(Platz 3) = $100
$510/15 + $770/20 + $330/12 = $(2040 + 2310 + 1650)/60 = $6000/60 = $100

5. Equity bei vier Spielern
Mit jedem weiteren Spieler, den wir in die Berechnungen einbeziehen, wird die Rechnung insgesamt sehr viel umfangreicher. Das hängt damit zusammen, dass die Anzahl der Permutationen mit wachsender Spielerzahl sehr schnell zunimmt. Bei zwei Spielern waren nur zwei Fälle zu unterscheiden, bei drei Spielern waren es schon sechs Fälle und bei vier Spielern gibt es 24 mögliche Reihenfolgen der Platzierungen aller vier Spieler. Eine manuelle Berechnung der Equity für vier Spieler ist deshalb normalerweise kaum noch sinnvoll. Hierfür sollte man lieber Excel oder einschlägige Tools im Internet bemühen. Im Folgenden wird das Vorgehen bei der Berechnung an unserem Beispiel, dem $10+$1 STT, aufgezeigt.

Wir gehen diesmal noch einen Schritt zurück und befinden uns nun kurz vor der Bubble, d. h. bei der gleichen Preisgeldstruktur wie bereits weiter oben beschrieben (50% = $50 für Platz 1, 30% = $30 für Platz 2 und 20% = $20 für Platz 3) sind jetzt noch vier Spieler im Turnier. Spieler A hat 4000, Spieler B 8000, Spieler C 2000 und Spieler D die restlichen 1000 Chips. Die Equity eines Spielers berechnet sich dann wie folgt:

Gleichung 5:
E = „Summe von n gleich 1 bis 4“ (P(Platz n) x G(Platz n))

Zu berechnen sind die Werte der folgenden Tabelle 5:
Code:
               Platz 1 ($50) Platz 2 ($30) Platz 3 ($20) Platz 4 ($0)
A (4000 Chips) P(A wird 1.)  P(A wird 2.)  P(A wird 3.)  P(A wird 4.)
B (8000 Chips) P(B wird 1.)  P(B wird 2.)  P(B wird 3.)  P(B wird 4.)
C (2000 Chips) P(C wird 1.)  P(C wird 2.)  P(C wird 3.)  P(C wird 4.)
D (1000 Chips) P(D wird 1.)  P(D wird 2.)  P(D wird 3.)  P(D wird 4.)
5.1 Berechnung der Wahrscheinlichkeiten für Platz 1 bei vier Spielern
Die erste Spalte der Tabelle lässt sich wieder sehr einfach als Verhältnis der Chips jedes Spielers zur Gesamtzahl der Chips berechnen:

P(A wird 1.) = 4000/15000 = 4/15 ~ 26,67%
P(B wird 1.) = 8000/15000 = 8/15 ~ 53,33%
P(C wird 1.) = 2000/15000 = 2/15 ~ 13,33%
P(D wird 1.) = 1000/15000 = 1/15 ~ 6,67%

Probe:
P(A 1.) + P(B 1.) + P(C 1.) + P(D 1.) = 4/15 + 8/15 + 2/15 + 1/15 = 1

5.2 Berechnung der Wahrscheinlichkeiten für Platz 2 bei vier Spielern
Um zu berechnen, wie groß die Wahrscheinlichkeit ist, dass ein bestimmter Spieler den zweiten Platz belegt, gehen wir prinzipiell wieder so vor wie schon bei drei Spielern. Wir setzen einen der anderen Spieler auf Platz 1 und berechnen nun die Wahrscheinlichkeiten der verbleibenden Spieler, die Plätze 2 bis 4 zu belegen. Das müssen wir für jeden Spieler dreimal machen, wir haben also insgesamt 12 Fälle zu betrachten.

5.2.1 Spieler A wird Zweiter
Wir müssen nacheinander die drei Fälle berechen, wenn B, C oder D Erster werden (und dann A jeweils Zweiter wird).

P(A wird 2. wenn B 1. wird) = 4000/(15000 – 8000) = 4/7
P(A wird 2. wenn C 1. wird) = 4000/(15000 – 2000) = 4/13
P(A wird 2. wenn D 1. wird) = 4000/(15000 – 1000) = 2/7

Gesamtwahrscheinlichkeit, dass A Zweiter wird:
P(A 2.) = P(B 1.) x P(A 2. w. B 1.) + P(C 1.) x P(A 2. w. C 1.) + P(D 1.) x P(A 2. w. D 1.)
P(A 2.) = 8/15 x 4/7 + 2/15 x 4/13 + 1/15 x 2/7 = 32/105 + 8/195 + 2/105 = 34/105 + 8/195
P(A 2.) = (442 + 56)/1365 = 166/455
P(A 2.) = 166/455 ~ 36,48%

5.2.2 Spieler B wird Zweiter
P(B wird 2. wenn A 1. wird) = 8000/(15000 – 4000) = 8/11
P(B wird 2. wenn C 1. wird) = 8000/(15000 – 2000) = 8/13
P(B wird 2. wenn D 1. wird) = 8000/(15000 – 1000) = 4/7

Gesamtwahrscheinlichkeit, dass B Zweiter wird:
P(B 2.) = P(A 1.) x P(B 2. w. A 1.) + P(C 1.) x P(B 2. w. C 1.) + P(D 1.) x P(B 2. w. D 1.)
P(B 2.) = 4/15 x 8/11 + 2/15 x 8/13 + 1/15 x 4/7 = 32/165 + 16/195 + 4/105
P(B 2.) = (2912 + 1232 + 572)/15015 = 1572/5005
P(B 2.) = 1572/5005 ~ 31,41%

5.2.3 Spieler C wird Zweiter
P(C wird 2. wenn A 1. wird) = 2000/(15000 – 4000) = 2/11
P(C wird 2. wenn B 1. wird) = 2000/(15000 – 8000) = 2/7
P(C wird 2. wenn D 1. wird) = 2000/(15000 – 1000) = 1/7

Gesamtwahrscheinlichkeit, dass C Zweiter wird:
P(C 2.) = P(A 1.) x P(C 2. w. A 1.) + P(B 1.) x P(C 2. w. B 1.) + P(D 1.) x P(C 2. w. D 1.)
P(C 2.) = 4/15 x 2/11 + 8/15 x 2/7 + 1/15 x 1/7 = 8/165 + 16/105 + 1/105 = 8/165 + 17/105
P(C 2.) = (56 + 187)/1155 = 81/385
P(C 2.) = 81/385 ~ 21,04%

5.2.4 Spieler D wird Zweiter
P(D wird 2. wenn A 1. wird) = 1000/(15000 – 4000) = 1/11
P(D wird 2. wenn B 1. wird) = 1000/(15000 – 8000) = 1/7
P(D wird 2. wenn C 1. wird) = 1000/(15000 – 2000) = 1/13

Gesamtwahrscheinlichkeit, dass C Zweiter wird:
P(D 2.) = P(A 1.) x P(D 2. w. A 1.) + P(B 1.) x P(D 2. w. B 1.) + P(C 1.) x P(D 2. w. C 1.)
P(D 2.) = 4/15 x 1/11 + 8/15 x 1/7 + 2/15 x 1/13 = 4/165 + 8/105 + 2/195
P(D 2.) = (364 + 1144 + 154)/15015 = 554/5005
P(D 2.) = 554/5005 ~ 11,07%

Probe:
P(A 2.) + P(B 2.) + P(C 2.) + P(D 2.) = 1
166/455 + 1572/5005 + 81/385 + 554/5005 = (1826 + 1572 + 1053 + 554)/5005 = 1

Damit haben wir die zweite Spalte von Tabelle 5 komplett.

5.3 Berechnung der Wahrscheinlichkeiten für Platz 3 bei vier Spielern
Um die dritte Spalte zu berechnen, müssen wir das 4-Spieler-Problem wieder in kleinere Teilprobleme zerlegen. Hierzu setzen wir jeweils einen Spieler auf den ersten und einen weiteren Spieler auf den zweiten Platz. Die Wahrscheinlichkeiten für diese Plätze haben wir ja bereits berechnet. Damit können wir nun ausrechen, wie groß die Wahrscheinlichkeit ist, dass einer der beiden verbleibenden Spieler den dritten Platz belegt.

5.3.1 Spieler A wird Dritter
Wenn A Dritter wird, gibt es sechs verschiedene Möglichkeiten der Platzierung der verbleibenden drei Spieler. Für alle sechs Fälle müssen wir nun die Wahrscheinlichkeiten berechnen. Durch Kombination der sechs Teilergebnisse erhalten wir dann die Gesamtwahrscheinlichkeit dafür, dass Spieler A Dritter wird. Anschließend wiederholen wir dieses Vorgehen für die verbleibenden drei Spieler, d. h. wir müssen insgesamt 24 Fälle berechnen.

P(A wird 3. wenn B 1. und C 2. werden) = 4000/(15000 – 8000 – 2000) = 4/5
P(A wird 3. wenn C 1. und B 2. werden) = 4000/(15000 – 2000 – 8000) = 4/5
P(A wird 3. wenn B 1. und D 2. werden) = 4000/(15000 – 8000 – 1000) = 2/3
P(A wird 3. wenn D 1. und B 2. werden) = 4000/(15000 – 1000 – 8000) = 2/3
P(A wird 3. wenn C 1. und D 2. werden) = 4000/(15000 – 2000 – 1000) = 1/3
P(A wird 3. wenn D 1. und C 2. werden) = 4000/(15000 – 1000 – 2000) = 1/3

Die Gesamtwahrscheinlichkeit, dass ein Spieler X Erster und ein weiterer Spieler Y Zweiter wird, wenn Spieler X Erster wird, berechnet sich als Produkt der Einzelwahrscheinlichkeiten beider Ereignisse. Damit können wir die Gesamtwahrscheinlichkeit dafür, dass Spieler A Dritter wird, berechnen.

Gesamtwahrscheinlichkeit P(A 3.)
= P(B 1.) x P(C 2. wenn B 1.) x P(A 3. wenn B 1. und C 2.)
+ P(C 1.) x P(B 2. wenn C 1.) x P(A 3. wenn C 1. und B 2.)
+ P(D 1.) x P(B 2. wenn D 1.) x P(A 3. wenn D 1. und B 2.)
+ P(B 1.) x P(D 2. wenn B 1.) x P(A 3. wenn B 1. und D 2.)
+ P(C 1.) x P(D 2. wenn C 1.) x P(A 3. wenn C 1. und D 2.)
+ P(D 1.) x P(C 2. wenn D 1.) x P(A 3. wenn D 1. und C 2.)
= 8/15 x 2/7 x 4/5
+ 2/15 x 8/13 x 4/5
+ 1/15 x 4/7 x 2/3
+ 8/15 x 1/7 x 2/3
+ 2/15 x 1/13 x 1/3
+ 1/15 x 1/7 x 1/3
= 64/525 + 64/975 + 8/315 + 16/315 + 2/585 + 1/315
= (2496 + 1344 + 520 + 1040 + 70 + 65)/20475 = 5535/20475 = 123/455
P(A 3.) = 123/455 ~ 27,03%

5.3.2 Spieler B wird Dritter
P(B wird 3. wenn A 1. und C 2. werden) = 8000/(15000 – 4000 – 2000) = 8/9
P(B wird 3. wenn C 1. und A 2. werden) = 8000/(15000 – 2000 – 4000) = 8/9
P(B wird 3. wenn A 1. und D 2. werden) = 8000/(15000 – 4000 – 1000) = 4/5
P(B wird 3. wenn D 1. und A 2. werden) = 8000/(15000 – 1000 – 4000) = 4/5
P(B wird 3. wenn C 1. und D 2. werden) = 8000/(15000 – 2000 – 1000) = 2/3
P(B wird 3. wenn D 1. und C 2. werden) = 8000/(15000 – 1000 – 2000) = 2/3

Gesamtwahrscheinlichkeit P(B 3.)
= P(A 1.) x P(C 2. wenn A 1.) x P(B 3. wenn A 1. und C 2.)
+ P(C 1.) x P(A 2. wenn C 1.) x P(B 3. wenn C 1. und A 2.)
+ P(A 1.) x P(D 2. wenn A 1.) x P(B 3. wenn A 1. und D 2.)
+ P(D 1.) x P(A 2. wenn D 1.) x P(B 3. wenn D 1. und A 2.)
+ P(C 1.) x P(D 2. wenn C 1.) x P(B 3. wenn C 1. und D 2.)

+ P(D 1.) x P(C 2. wenn D 1.) x P(B 3. wenn D 1. und C 2.)
= 4/15 x 2/11 x 8/9
+ 2/15 x 4/13 x 8/9
+ 4/15 x 1/11 x 4/5
+ 1/15 x 2/7 x 4/5
+ 2/15 x 1/13 x 2/3
+ 1/15 x 1/7 x 2/3
= 64/1485 + 64/1755 + 16/825 + 8/525 + 4/585 + 2/315
= (29120 + 24640 + 13104 + 10296 + 4620 + 4290)/675675 = 86070/675675 = 17214/135135 = 5738/45045
P(B 3.) = 5738/45045 ~ 12,74%

5.3.2 Spieler C wird Dritter
P(C wird 3. wenn A 1. und B 2. werden) = 2000/(15000 – 4000 – 8000) = 2/3
P(C wird 3. wenn B 1. und A 2. werden) = 2000/(15000 – 8000 – 4000) = 2/3
P(C wird 3. wenn A 1. und D 2. werden) = 2000/(15000 – 4000 – 1000) = 1/5
P(C wird 3. wenn D 1. und A 2. werden) = 2000/(15000 – 1000 – 4000) = 1/5
P(C wird 3. wenn B 1. und D 2. werden) = 2000/(15000 – 8000 – 1000) = 1/3
P(C wird 3. wenn D 1. und B 2. werden) = 2000/(15000 – 1000 – 8000) = 1/3

Gesamtwahrscheinlichkeit P(C 3.)
= P(A 1.) x P(B 2. wenn A 1.) x P(C 3. wenn A 1. und B 2.)
+ P(B 1.) x P(A 2. wenn B 1.) x P(C 3. wenn B 1. und A 2.)
+ P(A 1.) x P(D 2. wenn A 1.) x P(C 3. wenn A 1. und D 2.)
+ P(D 1.) x P(A 2. wenn D 1.) x P(C 3. wenn D 1. und A 2.)
+ P(B 1.) x P(D 2. wenn B 1.) x P(C 3. wenn B 1. und D 2.)
+ P(D 1.) x P(B 2. wenn D 1.) x P(C 3. wenn D 1. und B 2.)
= 4/15 x 8/11 x 2/3
+ 8/15 x 4/7 x 2/3
+ 4/15 x 1/11 x 1/5
+ 1/15 x 2/7 x 1/5
+ 8/15 x 1/7 x 1/3
+ 1/15 x 4/7 x 1/3
= 64/495 + 64/315 + 4/825 + 2/525 + 8/315 + 4/315
= (2240 + 3520 + 84 + 66 + 440 + 220)/17325 = 6570/17325 = 146/385
P(C 3.) = 146/385 ~ 37,92%

5.3.2 Spieler D wird Dritter
P(D wird 3. wenn A 1. und B 2. werden) = 1000/(15000 – 4000 – 8000) = 1/3
P(D wird 3. wenn B 1. und A 2. werden) = 1000/(15000 – 8000 – 4000) = 1/3
P(D wird 3. wenn A 1. und C 2. werden) = 1000/(15000 – 4000 – 2000) = 1/9
P(D wird 3. wenn C 1. und A 2. werden) = 1000/(15000 – 2000 – 4000) = 1/9
P(D wird 3. wenn B 1. und C 2. werden) = 1000/(15000 – 8000 – 2000) = 1/5
P(D wird 3. wenn C 1. und B 2. werden) = 1000/(15000 – 2000 – 8000) = 1/5

Gesamtwahrscheinlichkeit P(D 3.)
= P(A 1.) x P(B 2. wenn A 1.) x P(D 3. wenn A 1. und B 2.)
+ P(B 1.) x P(A 2. wenn B 1.) x P(D 3. wenn B 1. und A 2.)
+ P(A 1.) x P(C 2. wenn A 1.) x P(D 3. wenn A 1. und C 2.)
+ P(C 1.) x P(A 2. wenn C 1.) x P(D 3. wenn C 1. und A 2.)
+ P(B 1.) x P(C 2. wenn B 1.) x P(D 3. wenn B 1. und C 2.)
+ P(C 1.) x P(B 2. wenn C 1.) x P(D 3. wenn C 1. und B 2.)
= 4/15 x 8/11 x 1/3
+ 8/15 x 4/7 x 1/3
+ 4/15 x 2/11 x 1/9
+ 2/15 x 4/13 x 1/9
+ 8/15 x 2/7 x 1/5
+ 2/15 x 8/13 x 1/5
= 32/495 + 32/315 + 8/1485 + 8/1755 + 16/525 + 16/975
= (43680 + 68640 + 3640 + 3080 + 20592 + 11088)/675675 = 150720/675675 = 50240/225225 = 10048/45045
P(D 3.) = 10048/45045 ~ 22,31%

Probe:
P(A 3.) + P(B 3.) + P(C 3.) + P(D 3.)
= 123/455 + 5738/45045 + 146/385 + 10048/45045
= (12177 + 5738 + 17082 + 10048)/45045 = 1

Damit haben wir auch die dritte Spalte von Tabelle 5 komplett.

5.4 Berechnung der Wahrscheinlichkeiten für Platz 4 bei vier Spielern
Die Berechnung der Wahrscheinlichkeiten für die vierten Plätze lässt sich einfach ermitteln, indem man die berechneten Wahrscheinlichkeiten für die Plätze 1 bis 3 von 1 (bzw. 100%) abzieht. D. h. die Wahrscheinlichkeit eines Spielers Vierter zu werden ist gleich der Wahrscheinlichkeit nicht Erster, Zweiter oder Dritter zu werden.

P(A 4.) = 1 – (P(A 1.) + P(A 2.) + P(A 3.))
P(A 4.) = 1 – (4/15 + 166/455 + 123/455)
P(A 4.) = 1 – (364 + 498 + 369)/1365 = 134/1365
P(A 4.) = 134/1365 ~ 9,82%

P(B 4.) = 1 – (P(B 1.) + P(B 2.) + P(B 3.))
P(B 4.) = 1 – (8/15 + 1572/5005 + 5738/45045)
P(B 4.) = 1 – (24024 + 14148 + 5738)/45045 = 1135/45045 = 227/9009
P(B 4.) = 227/9009 ~ 2,52%

P(C 4.) = 1 – (P(C 1.) + P(C 2.) + P(C 3.))
P(C 4.) = 1 – (2/15 + 81/385 + 146/385)
P(C 4.) = 1 – (154 + 243 + 438)/1155 = 320/1155 = 64/231
P(C 4.) = 64/231 ~ 27,71%

P(D 4.) = 1 – (P(D 1.) + P(D 2.) + P(D 3.))
P(D 4.) = 1 – (1/15 + 554/5005 + 10048/45045)
P(D 4.) = 1 – (3003 + 4986 + 10048)/45045 = 27008/45045
P(D 4.) = 27008/45045 ~ 59,96%

Probe:
P(A 4.) + P(B 4.) + P(C 4.) + P(D 4.)
= 134/1365 + 227/9009 + 64/231 + 27008/45045
= (4422 + 1135 + 12480 + 27008)/45045 = 1

5.5 Gesamtergebnis bei vier Spielern
Mit Berechnung der vierten Spalte haben wir alle Teilergebnisse ermittelt und können diese nun übersichtlich in unserer Tabelle darstellen. Zur besseren Anschaulichkeit habe ich sowohl die mathematisch exakten Werte als auch die (gerundeten) Prozentwerte eingetragen.

Code:
              Platz 1   Platz 2    Platz 3      Platz 4 
              ($50)     ($30)      ($20)        ($0)

Spieler A     4/15      166/455    123/455      134/1365
(4000 Chips)  ~ 26,67%  ~ 36,48%   ~ 27,03%     ~ 9,82%

Spieler B     8/15      1572/5005  5738/45045   227/9009
(8000 Chips)  ~ 53,33%  ~ 31,41%   ~ 12,74%     ~ 2,52%

Spieler C     2/15      81/385     146/385      64/231
(2000 Chips)  ~ 13,33%  ~ 21,04    ~ 37,92%     ~ 27,71%

Spieler D     1/15      554/5005   10048/45045  27008/45045
(1000 Chips)  ~ 6,67%   ~ 11,07%   ~ 22,31%     ~ 59,96%
Somit können wir die Equity jedes Spielers am Preispool durch Einsetzen in Gleichung 5 berechen. Diese Gleichung macht natürlich nur Sinn für alle die Plätze, für die es auch ein Preisgeld zu gewinnen gibt, da bei $0 Preisgeld das Produkt „P(Platz X) x Preisgeld(Platz X)“ immer gleich Null ist und somit keinen Beitrag zur Summe liefert. Da es für Platz 4 kein Preisgeld gibt, hätten wir genau genommen die vierte Spalte unserer Wahrscheinlichkeitstabelle gar nicht berechnen müssen.

Equity(Spieler A)
= 4/15 x $50 + 166/455 x $30 + 123/455 x $20
= $(18200 + 14940 + 7380)/1365 = $40520/1365 = $8104/273
~ $29,68

Equity(Spieler B)
= 8/15 x $50 + 1572/5005 x $30 + 5738/45045 x $20
= $(1201200 + 424440 + 114760)/45045 = $1740400/45045 = $348080/9009
~ $38,64

Equity(Spieler C)
= 2/15 x $50 + 81/385 x $30 + 146/385 x $20
= $(7700 + 7290 + 8760)/1155 = $23750/1155 = $4750/231
~ $20,56

Equity(Spieler D)
= 1/15 x $50 + 554/5005 x $30 + 10048/45045 x $20
= $(150150 + 149580 + 200960)/45045 = $500690/45045 = $100138/9009
~ $11,12

Probe:
E(A) + E(B) + E(C) + E(D) = G(Platz 1) + G(Platz 2) + G(Platz 3) = $100
$8104/273 + $348080/9009 + $4750/231 + $100138/9009
= $(267432 + 348080 + 185250 + 100138)/9009 = $900900/9009 = $100

6. Equity bei mehr als vier Spielern
Das oben dargestellte Verfahren zur Berechnung der Equity eines Spielers an einem Preispool lässt sich prinzipiell für beliebig viele Spieler durchführen. Allerdings werden, wie man gesehen hat, bereits bei vier Spielern die Berechnungen so komplex, dass sie praktisch nicht mehr handhabbar sind. Für bis zu 10 Spieler gibt es Tools, die einem die Berechnung abnehmen. Hier soll nur noch einmal das Verfahren allgemein formuliert werden.

Aufgabe:
n Spieler spielen um einen Preispool, der auf m Plätze nach einem bekannten Verteilungsschlüssel aufgeteilt ist (n >= 1, m >= 1). Zu berechnen ist die Equity aller n Spieler am Preispool.

Schritt 1:
Aufstellen einer n x m –Wahrscheinlichkeitstabelle (n Zeilen, m Spalten). Die Zelle (x, y) der Tabelle beschreibt die Wahrscheinlichkeit, mit der Spieler x den Platz y belegt (x<=n, y<=m).

Schritt 2:
Die Zellen der Tabelle sind spaltenweise von links nach rechts zu berechnen.

Berechnung der 1. Spalte:
P(Spieler x wird Erster) = Chipcount(Spieler x)/ „Summe von 1 bis n“ (Chipcount (Spieler n))

Berechnung der y-ten Spalte (1 < y < m):
PGesamt(Spieler x wird y-ter) = „Summe der Wahrscheinlichkeiten P(Spieler x wird y-ter) für alle Permutationen der Spieler 1 bis n (n <> x) die Plätze 1 bis y – 1 zu belegen.“

Die Teilergebnisse für die einzelnen Permutationen lassen sich prinzipiell durch Rekursion ermitteln, d. h. man reduziert das n-Spieler-Problem auf mehrere (n-1)-Spieler-Probleme, wovon wiederum jedes auf mehrere (n-2)-Spieler-Probleme reduziert wird usw. bis man beim 2-Spieler-Problem angekommen ist, welches sich mittels unserer Annahme 3 durch einfache Division berechnen lässt.

Durch die Rekursion steigt allerdings die Komplexität (Anzahl der Berechnungen mit zunehmender Anzahl Spieler n um den Faktor „n!“ (n Fakultät). Tatsächlich sogar um mehr als „n!“, da wir die Rekursion mehrfach durchführen müssen. Somit dürfte die Grenze der Berechnungen (wegen Speicherüberlauf des Computers oder weil es einfach zu lange dauert) relativ schnell erreicht sein.

7. Quellen
Einen Excel-Sheet für Berechnungen bis zu 4 Spieler gibt es im Internet, ich habe einen auf einer russischen Seite gefunden. Bei Interesse kann ich eine überarbeitete und eingedeutschte Version zur Verfügung stellen.

Für mehr als 4 Spieler geht es wahrscheinlich nur noch mit VBA oder in einer anderen Programmiersprache. Hier habe ich noch keine öffentlichen Quellen gefunden. Wer welche kennt, ich wäre daran interessiert.

Bevor ich es vergesse wünsche ich schon mal
"Frohe Weihnachten!"

Geändert von mafi1968 (23-12-2008 um 16:45 Uhr).
 
Alt
Standard
07-01-2009, 10:46
(#2)
Benutzerbild von mafi1968
Since: Mar 2008
Posts: 246
Hier ist die versprochene Excel-Tabelle (als Zip-File).

Für eventuelle Makroviren o. ä. übernehme ich natürlich keinerlei Verantwortung. Aber es handelt sich um eine reine Excel-Tabelle ohne VBA-Makros oder ähnliche Spielereien.
 
Alt
Standard
20-02-2009, 14:28
(#3)
Benutzerbild von mafi1968
Since: Mar 2008
Posts: 246
Auf www.holdemresources.net/hr/sngs/icm/icmjava.html
habe ich folgende Beispielimplemetation der ICM-Berechnung in Java gefunden (Hier sieht man auch sehr schön den rekursiven Ansatz bei der Berechnung der Equity):

Code:
/** * \param payouts Payout structure, e.g.: new double[]{0.5,0.3,0.2}
    * \param stacks Player stacks
    * \param player Index of selected player in the stack-array
    * \returns ICM equity for selected player */
public static  double  getEquity ( double []  payouts,
                                   double []  stacks,
                                   int  player ) 
{
  double  total =  0 ;
  for  ( int  i =  0 ; i < stacks.length; i++ )
    total += stacks [ i ] ;
  return  getEquity ( payouts, stacks.clone () , total, player,  0 ) ;
}
//Recursive method doing the actual calculation.
private static  double  getEquity ( double []  payouts,
                                    double []  stacks,
                                    double  total,
                                    int  player,
                                    int  depth ) 
{
  double  eq = stacks [ player ]  / total * payouts [ depth ] ;
  if ( depth +  1  < payouts.length )
    for  ( int  i =  0 ; i < stacks.length; i++ ) 
      if  ( i != player && stacks [ i ]  >  0.0 ) {
        double  c = stacks [ i ] ;
        stacks [ i ]  =  0.0 ;
        eq+=getEquity(payouts,stacks,total-c,player,depth+1)*c/total;
        stacks [ i ]  = c;
      }
  return  eq;
}