vscord
Vscordを追加

Vscordランクマッチの計算式

Vscordランクマッチの計算式

Vscordで実装されているランクマッチに採用されているレーティングシステム「イロレーティング(Elo Rating)」についてご紹介します。

イロレーティングとは

イロレーティング(Elo Rating)は、競技やゲームにおけるプレイヤーの実力を数値化するための指標です。イロレーティングは、チェスや将棋などのボードゲームから、eスポーツやオンラインゲーム、さらにはビジネス競技や学術的な競争など、さまざまな分野で広く使用されています。

イロレーティングは、通常、以下のような特徴を持ちます。

プレイヤーの実力を表す数値

イロレーティングはプレイヤーの実力を数値で表します。高いレーティングほど高い実力を持つことを示し、低いレーティングほど低い実力を持つことを意味します。

勝敗の結果に基づく変動

イロレーティングは、対戦の結果に基づいてプレイヤーのレーティングを変動させます。通常、勝利するとレーティングが上昇し、敗北するとレーティングが下がります。また、相手の実力との差も考慮されます。強い相手に勝利すれば、より多くのレーティングを獲得できますが、弱い相手に勝利しても少ないレーティングしか獲得できません。

平均的なレーティングが基準

イロレーティングでは、プレイヤー全体の平均的なレーティングが基準となります。これにより、レーティングの変動が均衡され、システム全体で安定した評価が行われます。

シンプルで透明な仕組み

イロレーティングはシンプルな計算方法に基づいています。通常、プレイヤーのレーティング変動は、現在のレーティングと対戦相手のレーティング、勝敗の結果に応じて計算されます。このため、システムの動作原理が比較的簡単に理解できます。

イロレーティングの計算式

イロレーティングの計算式は比較的シンプルで、基本的には以下の要素を組み合わせて算出されます。ここでは、基本的なイロレーティングの計算式を解説します。

期待スコアの計算

まず、プレイヤーAとプレイヤーBのレーティングの差を計算します。これをRBRAとします。次に、この差を元に、プレイヤーAが勝利する確率を期待スコアEAとして計算します。一般的には、次のようなロジスティック関数に基づいて計算されます。

E A = 1 1 + 10 ( R B R A ) / 400

ここで、RAはプレイヤーAのレーティング、RBはプレイヤーBのレーティングです。この式では、プレイヤーAが勝利する確率が高いほど、EAは1に近づきます。逆に、プレイヤーAが勝利する確率が低いほど、EAは0に近づきます。

実際のスコアの考慮

プレイヤーAとプレイヤーBが実際に対戦し、勝敗が決まった場合、それぞれのプレイヤーの実際のスコアSAEBを考慮します。通常、勝利した場合は1、敗北した場合は0として扱います。

レーティングの更新

最後に、実際のスコアと期待スコアを比較し、レーティングを更新します。一般的な更新式は次のようになります。

R′ A = R A + K ( S A E A ) R′ B = R B + K ( S B E B )

ここで、R′AR′Bは対戦後の新しいレーティング、Kはレーティング更新の速度を調整する定数です。通常、Kの値はプレイヤーの活動度や競技の性質に応じて調整されます。

このようにして、イロレーティングは対戦の結果に基づいてプレイヤーの実力を反映する数値として更新されます。

イロレーティングの利点

イロレーティングの利点は多岐にわたりますが、主なものを以下に示します。

客観的なプレイヤー評価

イロレーティングは対戦の結果に基づいてプレイヤーの実力を数値化するため、客観的かつ公平な評価を提供します。結果によってプレイヤーの実力が反映されるため、個人の主観や偏見に左右されることがありません。

動的な調整

イロレーティングは対戦のたびにプレイヤーのレーティングを更新するため、プレイヤーの実力が変化した場合に即座に反映されます。これにより、プレイヤーの成長や衰退を正確に追跡し、競技におけるフェアな環境を維持することができます。

対戦相手の適正なマッチング

イロレーティングを使用することで、プレイヤー同士の実力に応じた適切なマッチングが実現されます。強いプレイヤー同士が対戦すれば興味深い対戦が生まれ、逆に初心者同士が対戦すればより学習効果が高まります。

多様な競技分野への適用

イロレーティングはさまざまな競技やゲームに適用可能です。チェスや将棋などのボードゲームから、eスポーツやオンラインゲーム、さらにはビジネス競技や学術的な競争まで、幅広い分野で利用されています。

シンプルかつ透明なシステム

イロレーティングの計算方法は比較的シンプルであり、プレイヤーにとっても理解しやすいです。そのため、透明性が高く、誰もが公平な評価を受けられる環境が提供されます。

これらの利点により、イロレーティングは競技やゲームにおけるプレイヤー評価の標準的な手法として広く採用されています。

Vscordのレーティング計算式

Vscordのレーティング計算式は以下の通りです。

R N = R O + 20 × ( W W E ) W E = 1 / ( 1 + 10^ ( ( R C + R O ) / 400 ) )
RN 試合後の自分のレーティング値
RO 試合前の自分のレーティング値
RC 試合前の相手のレーティング値
W 試合結果による勝利数の補正値。勝利があった場合は1、引き分けの場合は0.5、敗北の場合は0
WE 試合前の両プレイヤーのレーティング値を用いて計算される期待勝率

自分の初期レーティング値は0にはじまり、対戦した結果に応じて自分のレーティング値が変動します。試合前のレーティングRORCを元に、期待勝率WEを算出します。試合結果で変動するWを元に、試合後のレーティング値RNを算出します。従って、試合後のレーティング値RNがランキングで表示される評価値となります。

DiscordサーバーにVscordを追加する