Vscordで実装されているランクマッチに採用されているレーティングシステム「イロレーティング(Elo Rating)」についてご紹介します。
目次
イロレーティングとは
イロレーティング(Elo Rating)は、競技やゲームにおけるプレイヤーの実力を数値化するための指標です。イロレーティングは、チェスや将棋などのボードゲームから、eスポーツやオンラインゲーム、さらにはビジネス競技や学術的な競争など、さまざまな分野で広く使用されています。
イロレーティングは、通常、以下のような特徴を持ちます。
プレイヤーの実力を表す数値
イロレーティングはプレイヤーの実力を数値で表します。高いレーティングほど高い実力を持つことを示し、低いレーティングほど低い実力を持つことを意味します。
勝敗の結果に基づく変動
イロレーティングは、対戦の結果に基づいてプレイヤーのレーティングを変動させます。通常、勝利するとレーティングが上昇し、敗北するとレーティングが下がります。また、相手の実力との差も考慮されます。強い相手に勝利すれば、より多くのレーティングを獲得できますが、弱い相手に勝利しても少ないレーティングしか獲得できません。
平均的なレーティングが基準
イロレーティングでは、プレイヤー全体の平均的なレーティングが基準となります。これにより、レーティングの変動が均衡され、システム全体で安定した評価が行われます。
シンプルで透明な仕組み
イロレーティングはシンプルな計算方法に基づいています。通常、プレイヤーのレーティング変動は、現在のレーティングと対戦相手のレーティング、勝敗の結果に応じて計算されます。このため、システムの動作原理が比較的簡単に理解できます。
イロレーティングの計算式
イロレーティングの計算式は比較的シンプルで、基本的には以下の要素を組み合わせて算出されます。ここでは、基本的なイロレーティングの計算式を解説します。
期待スコアの計算
まず、プレイヤーAとプレイヤーBのレーティングの差を計算します。これをとします。次に、この差を元に、プレイヤーAが勝利する確率を期待スコアとして計算します。一般的には、次のようなロジスティック関数に基づいて計算されます。
ここで、はプレイヤーAのレーティング、はプレイヤーBのレーティングです。この式では、プレイヤーAが勝利する確率が高いほど、は1に近づきます。逆に、プレイヤーAが勝利する確率が低いほど、は0に近づきます。
実際のスコアの考慮
プレイヤーAとプレイヤーBが実際に対戦し、勝敗が決まった場合、それぞれのプレイヤーの実際のスコアとを考慮します。通常、勝利した場合は1、敗北した場合は0として扱います。
レーティングの更新
最後に、実際のスコアと期待スコアを比較し、レーティングを更新します。一般的な更新式は次のようになります。
ここで、とは対戦後の新しいレーティング、はレーティング更新の速度を調整する定数です。通常、の値はプレイヤーの活動度や競技の性質に応じて調整されます。
このようにして、イロレーティングは対戦の結果に基づいてプレイヤーの実力を反映する数値として更新されます。
イロレーティングの利点
イロレーティングの利点は多岐にわたりますが、主なものを以下に示します。
客観的なプレイヤー評価
イロレーティングは対戦の結果に基づいてプレイヤーの実力を数値化するため、客観的かつ公平な評価を提供します。結果によってプレイヤーの実力が反映されるため、個人の主観や偏見に左右されることがありません。
動的な調整
イロレーティングは対戦のたびにプレイヤーのレーティングを更新するため、プレイヤーの実力が変化した場合に即座に反映されます。これにより、プレイヤーの成長や衰退を正確に追跡し、競技におけるフェアな環境を維持することができます。
対戦相手の適正なマッチング
イロレーティングを使用することで、プレイヤー同士の実力に応じた適切なマッチングが実現されます。強いプレイヤー同士が対戦すれば興味深い対戦が生まれ、逆に初心者同士が対戦すればより学習効果が高まります。多様な競技分野への適用
イロレーティングはさまざまな競技やゲームに適用可能です。チェスや将棋などのボードゲームから、eスポーツやオンラインゲーム、さらにはビジネス競技や学術的な競争まで、幅広い分野で利用されています。
シンプルかつ透明なシステム
イロレーティングの計算方法は比較的シンプルであり、プレイヤーにとっても理解しやすいです。そのため、透明性が高く、誰もが公平な評価を受けられる環境が提供されます。
これらの利点により、イロレーティングは競技やゲームにおけるプレイヤー評価の標準的な手法として広く採用されています。
Vscordのレーティング計算式
Vscordのレーティング計算式は以下の通りです。
試合後の自分のレーティング値 | |
試合前の自分のレーティング値 | |
試合前の相手のレーティング値 | |
試合結果による勝利数の補正値。勝利があった場合は1、引き分けの場合は0.5、敗北の場合は0 | |
試合前の両プレイヤーのレーティング値を用いて計算される期待勝率 |
自分の初期レーティング値は0にはじまり、対戦した結果に応じて自分のレーティング値が変動します。試合前のレーティング、を元に、期待勝率を算出します。試合結果で変動するを元に、試合後のレーティング値を算出します。従って、試合後のレーティング値がランキングで表示される評価値となります。
DiscordサーバーにVscordを追加する