Einfachste und effektivste Methode, um Spielerfertigkeiten in einer Umgebung mit mehreren Spielern einzustufen und zu messen?


12

Ich kenne den Truskill-Algorithmus, er ist ziemlich komplex, aber effektiv.

Meine Frage gibt es andere Algorithmen / Methoden, um die Fähigkeit eines Spielers zur genauen Messung für ein wettbewerbsfähiges Mehrspielerspiel zu bestimmen?


Ein bisschen subjektiv / breit Ich denke, an welches Genre des Spiels denkst du speziell? (Ich sehe kein FPS- und Rennspiel, das eine einfache Rangfolgemethode teilt). Vielleicht sollte dies als Community-Wiki erstellt und in eine Liste von Algorithmen / Methoden / Middleware / was auch immer umgewandelt werden?
Riley Adams

Die meisten Ranglistensysteme verwenden Gewinn-, Verlust- und Matchverhältnisse. Schaffen Sie dann Platz für spielspezifische Bedingungen, sodass die meisten Methoden mit geringfügigen Optimierungen funktionieren sollten.
Wight

1
Gibt es Patentprobleme mit TruSkill? Microsoft hat es gebaut, und es ist nicht bekannt, dass es Community-freundlich ist.
deft_code

2
Wenn Sie Algorithmen vermeiden , die möglicherweise patentiert werden, sind Sie nicht praktisch gehen zu können , etwas zu tun. Wenn Sie wissen, dass etwas patentiert ist und es trotzdem verwenden, können Sie mehr Schadenersatz verlangen, wenn Sie verklagt werden. Nehmen wir also an, nein, es ist nicht patentiert - es ist ein Warenzeichen. Nennen Sie es also nicht "TrueSkill", es sei denn, Sie sind auf Xbox Live.

2
Leider ist TrueSkill patentiert, so dass die Verwendung zu jedem für Sie gefährlichen Zweck möglich ist.
Petr Pudlák

Antworten:


10

Ich halte es für unrealistisch, nach dem "einfachsten und effektivsten" zu fragen, aber es gibt sicherlich ein paar gute Ansätze. Anstatt ins Detail zu gehen, werde ich auf einen Artikel verlinken:

http://www.lifewithalacrity.com/2006/01/ranking_systems.html

Dies umfasst:

  • ELO
  • eine ELO-Variante von Days of Wonder
  • TrueSkill (und Glicko, auf dem es zu basieren scheint oder dem es zumindest ähnlich ist)
  • eGenesis Ranking (für Geschichten in der Wüste)

Im Großen und Ganzen werden Sie feststellen, dass es sich bei allen um ziemlich unterschiedliche Themen handelt - Sie wählen einen Start- oder Durchschnittswert für einen Spieler aus und dann werden die Werte verwendet, um das Spielergebnis vorherzusagen. Die Differenz zwischen dem tatsächlichen und dem vorhergesagten Ergebnis wird verwendet, um die Punktzahlen für jeden Spieler zu ändern, und der Vorgang wird mit den angepassten Punktzahlen wiederholt. Da bei jeder Änderung der Bewertungen das vorhergesagte Ergebnis genauer wird, werden die Bewertungen mit ihren "wahren" Werten konvergiert. (Dies setzt voraus, dass es sich eher um ein Geschicklichkeitsspiel als um ein Zufallsspiel handelt, dass die betreffende Fertigkeit linear eingestuft werden kann usw.)


"am einfachsten am effektivsten" ist nur ein Betrug, um zu verhindern, dass man gezwungen wird, dies zu einem Community-Wiki zu machen.
Hendrik Brummermann

7

Kommt auf das Spiel an. Es gibt einige Probleme, auf die Sie stoßen können:

  • Bei Spielen mit einer Glücks- und einer Fähigkeitskomponente (Bridge, Poker, Magic: the Gathering usw.) berücksichtigen die meisten Algorithmen nicht die Tatsache, dass ein schwächerer Spieler manchmal Glück haben kann. Wenn dein Spiel in diese Kategorie fällt, musst du etwas arbeiten. Im Allgemeinen bedeutet dies, herauszufinden, welcher Prozentsatz Glück und welcher Prozentsatz Können ist (ein schwieriger Trick, aber wenn Sie bereits einen fähigkeitsbasierten Algorithmus wie Elo verwendet haben, können Sie einige Metriken für die Ergebnisse ausführen, um herauszufinden, wie oft der Algorithmus verwendet wird prognostiziert eine Störung im Vergleich zu der Häufigkeit, mit der sie tatsächlich auftritt. Dann müssen Sie den Algorithmus ändern, und genau das, wozu er geändert werden soll, würde wahrscheinlich den Rahmen dieser Frage sprengen.

  • Bei Spielen, bei denen Spiele manipuliert werden können (ich kann ein Ranglistenspiel gegen meinen Freund spielen), müssen Sie zusätzliche Sicherheitsvorkehrungen treffen, um zu verhindern, dass Spieler absichtlich Spiele werfen.

  • Bei Spielen, bei denen ein Spieler "aus dem Training" geraten kann, wenn er nicht regelmäßig spielt, kann das System eine zeitliche Verschlechterung aufweisen. Das Glicko-System ist eine Modifikation von Elo, die jedem Spieler eine "Unsicherheits" -Variable hinzufügt, die davon abhängt, wie viele Spiele er gespielt hat und in welcher Zeit sie diese gespielt haben. Je sicherer die Rangfolge eines Spielers ist, desto weniger ändert sie sich von Spiel zu Spiel.

  • Multiplayer-Spiele (egal ob für alle, für Teams oder für eine andere Spielerstruktur) erfordern natürlich besondere Sorgfalt. Einige teambasierte Spiele erleichtern es, den Beitrag jedes Einzelnen im Vergleich zu anderen herauszufinden.

  • Fragen Sie auch, welchen Zweck Ihr Bewertungs- / Ranking-System hat. Bei professionellen Spielen und Sportarten ist der Zweck statistisch: Die Bewertung wird als Prädiktor für das Ergebnis eines bestimmten Spiels verwendet. Das primäre Ziel ist dabei die Genauigkeit. Dies ist jedoch selten das, was die Spieler wollen; Stattdessen wollen sie eine Weiterentwicklung, ein Gefühl, dass sie besser werden und durch die Reihen klettern (ob sie nun besser werden oder nicht). Kurz gesagt, es gibt einen Kompromiss zwischen Genauigkeit und Spaß, den Sie berücksichtigen müssen.


Alles an Design ist immer eine Balance =)
Wight

3

Was haben Sie an TrueSkill als kompliziert empfunden ? Ich dachte, es wäre ein unkomplizierter Algorithmus mit genau der richtigen Anzahl von Knöpfen, die für verschiedene Spielmodi angepasst werden können, und er reduziert sich auf Elo, wenn das Spiel mit hoher Sicherheit Kopf-an-Kopf ist.

Wenn Sie nach dem einfachsten Weg suchen, einen Spieler in einer Multiplayer-Umgebung effektiv einzustufen und zu messen, ist TrueSkill meine Empfehlung.


Ich habe nur nach einer Alternative gesucht, die sich leichter optimieren lässt. Wie das, was Starcraft 2 benutzt hat. Aber TrueSkill ist eine gute Maßnahme. Es ist nur schwieriger, Spielmaße in die Varianz einzubeziehen.
Wight

2

Was ist mit einem paarweisen System wie elo ? Es wird seit langem in "normalen" Sportarten mit hervorragenden Ergebnissen eingesetzt.

Bei Allroundspielen können Sie sie als paarweise Übereinstimmungen interpretieren und Punkte basierend auf der relativen Rangfolge zuweisen.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.