2017-03-17 15 views
0

Ich erstelle eine Ranking-Formel für ein Spiel, das ich entwickle. Ich möchte in der Lage sein, um herauszufinden, wer der beste Spieler auf zwei Kriterien basiert:So erstellen Sie einen Ranking-Algorithmus für ein Spiel

  1. Zeit
  2. Schritte

Es ist eine Aufgabe, T, die jeder Spieler zu vervollständigen hat. Die Idee ist, es in minimale Zeit und minimale Schritte abzuschließen.

Ich konnte nichts finden, ohne eine begrenzte Zeit (1800 Sekunden) und begrenzte Schritte (25) zu halten.

enter image description here

auf der obigen Berechnung Basierend Spieler 5 sind die von Spielern gefolgt beste 1.

Aber wir können die Spieler 4 haben bessere Zahlen deutlich sehen.

Wie kann ich das verbessern oder gibt es eine andere Art zu berechnen?

+0

Ich verstehe nicht, warum Sie * Differenz in Zeit * durch * Differenz in Schritten * teilen. Wäre es nicht sinnvoller, sie stattdessen hinzuzufügen? – PJvG

+0

Ja .. Jetzt sehe ich es –

+0

Es gibt keine kanonische Möglichkeit, 2D-Daten auf einer 1D-Skala anzuordnen. Es liegt an Ihnen zu entscheiden, was sinnvoll ist, abhängig von Ihren Anforderungen. –

Antwort

2

Sie können das gewichtete arithmetische Mittel verwenden. Zeit und Schritte haben einen Wert. Zum Beispiel:

Sie müssen entscheiden, welche dieser wichtigen Zeit oder Anzahl der Schritte ist. In Beispiel sind Zeit und Schritte gleich wichtig.

0

Sie können die Zeit und die Schritte normalisieren.

Wählen Sie einen "Maximalwert" für die Zeit und einen "Maximalwert" für die Schritte (z. B. die 1800 und die 25, die Sie bereits verwenden). Normalisieren Sie dies jetzt auf 1. Alle Zeit- und Schrittwerte sollten jetzt zwischen 0 und 1 liegen. Fügen Sie schließlich die normalisierten Werte zusammen hinzu.

Also zum Beispiel 900/1800 = 0,5. Und 12/25 = 0,48. Wenn Sie diese zusammen addieren, erhalten Sie eine Punktzahl von 0,98. Wenn Sie für jeden Spieler tun dies, werden Sie feststellen, dass sie die folgenden Noten bekommen:

  • Spieler 1: 0,98
  • Spieler 2: 0,82
  • Spieler 3: 0,8267
  • Player 4 : 0,7733
  • Player 5: 0,8667

Daraus können Sie, dass Spieler 4 hat die niedrigste Punktzahl, sehen das ist, was man wollte.

Wenn Sie wollen, dass Zeit oder Schritte mehr als das andere im Endergebnis wiegen, können Sie die Maximalwerte für Zeit und Schritte (die jetzt 1800 und 25 sind) ändern, was wichtiger ist, oder Sie können hinzufügen Gewichte vor dem Hinzufügen der beiden normalisierten Werte zusammen.

Verwandte Themen