Spielerrangliste mit Elo mit mehr als zwei Spielern

15

Ich möchte Elo verwenden, um die Ranglisten der Spieler zwischen den Spielen eines bestimmten Spiels zu verfolgen. Das Spiel kann jedoch mit bis zu vier Spielern in einem Spiel gespielt werden. Ich habe Spiele wie Carcassonne gesehen, in denen Elo mit mehr als zwei Spielern gespielt wurde, aber ich kenne Elo erst nach einem 1: 1-Match.

Aus dem Wikipedia-Artikel sind die Zwei-Spieler-Gleichungen, die ich erweitern möchte:

E a = 1 / (1 + 10 (R b - R a ) / 400 )

E b = 1 / (1 + 10 (R a - R b ) / 400 )

R x neu = R x alt + 32 * (W - E x ), wobei W = 1, wenn X gewinnt, und W = 0, wenn X verliert.

Wie würde sich die Berechnung für E x und W bei mehr als zwei Spielern ändern?

fbrereto
quelle
Ich wäre vorsichtig, wenn ich ein Elo-System für Spiele mit mehr als zwei Spielern verwenden würde, da viele Faktoren dazu führen können, dass sie weniger als reine Geschicklichkeitsspiele sind Bei einer anderen Anzahl von Spielern würde ich dringend empfehlen, die Gewichtung (dh die '32' in der Aktualisierungsformel für R) für Spiele mit mehr Spielern zu streichen.
Steven Stadnicki
@StevenStadnicki danke für die Empfehlung. Es ist mir jedoch unklar, wie das Fallenlassen der Gewichtskonstante die von Ihnen angesprochenen Probleme angeht. Können Sie näher darauf eingehen?
14.
Indem Sie das Gewicht für Mehrspieler-Matches senken, sagen Sie von Natur aus, dass sie für die Wertung eines Spielers nicht so wichtig sind wie Zwei-Spieler-Matches. Im Wesentlichen sagen Sie, dass sie weniger repräsentativ dafür sind, wie gut der Spieler tatsächlich ist. Ähnlich verhält es sich bei Magic mit der Turnierstruktur, bei der verschiedene Turnierstufen unterschiedliche K-Werte aufweisen, um darzustellen, wie viel Gewicht sie bei der Bestimmung der Bewertung eines Spielers haben sollten.
Steven Stadnicki

Antworten:

9

Wie durch den oberen Link in meiner Google-Suche vorgeschlagen (Link rot entfernt, Site weiterhin in der WayBackMachine verfügbar unter http://web.archive.org/web/20130308190719/http://elo.divergentinformatics.com/ ), könnten Sie Berechnen Sie die einzelnen Änderungen in der Elo-Wertung eines Spielers (Ihre R-Werte) und addieren Sie sie dann, um die Gesamtänderung für die Wertung jedes Spielers zu erhalten.

Wenn Sie also 4 Spieler haben (A, B, C, D), berechnen Sie die Änderung der Bewertung von A (R-sub-a-sub-new) aus ihren Punktzahlen gegen B, C und D und passen Sie dann die Bewertung von A um an die Summe der berechneten R-Werte.

fnord
quelle
Ich bin diesen Weg gegangen und es scheint soweit gut zu funktionieren, danke.
14.
Leider scheint der Link nicht mehr gültig zu sein.
Petr Pudlák,
2
Hier sehen Sie die Formeln für diese Idee: sradack.blogspot.ru/2008/06/…
dbf
0

Ich habe hier eine Veröffentlichung mit PHP-Quellcode einer Methode gefunden, die der Antwort von fnord ähnelt: http://elo-norsak.rhcloud.com/3.php Ich habe hier eine allgemeinere PHP-Implementierung erstellt: https://github.com/ FigBug / Multiplayer-ELO Ich benutze es mit meiner Brettspielgruppe und bis jetzt scheint es gut zu funktionieren.

Die Berechnung von Ex und W würde gleich bleiben. Verwenden Sie statt eines K von 32 ein K von 32 / (#players - 1). Schauen Sie sich dann jede Permutation von 2 Spielern an und berechnen Sie (32 / (#players - 1) * (W - Ex)). Dann ist RxNew gleich RxOld + Summe aller soeben berechneten Werte.

FigBug
quelle
2
Im Allgemeinen empfiehlt es sich, eine Zusammenfassung Ihrer Methode / Empfehlung in den Text einer Antwort aufzunehmen, anstatt sich ausschließlich auf externe Links zu verlassen. Links neigen dazu, mit der Zeit zu brechen, was dazu führen kann, dass Ihrer Antwort wichtige Details fehlen, wenn jemand in Jahren versucht, sie nachzuschlagen.
DMGregory