グリコレーティングの計算式を読み解く

計算式を単純化する

レーティングの計算式 (Glicko)

上記はグリコレーティングでの新しいレーティングを求めるための計算式です。
複雑すぎるので、以下のような簡単な式に変換します。

単純化した計算式

複数の相手と連続して対戦した場合を考慮して、元の計算式にはΣが入っていますが、ここでは無視しました。

新しいレーティング=
 元のレーティング + 係数 × 重み ×(実際の勝率-期待勝率)

という意味になります。
イロレーティングの場合と違うところは、重みgが加わり、Kの値が固定から可変になったところ、また、期待勝率の計算の中にも重みgが加えられています。

重み(g)について

相手のレーティング偏差を使って重みを計算します。

重みgの計算式

重みとは、相手のレーティングの信頼度(レーティング偏差, RDi)に応じて、値を変化させるものです。
具体的には、レーティング偏差は0~350の間で推移するものなので、この重みgは1~0.669の間で変わります。

言い換えれば、信頼度がマックス(0)なら元の値をそのまま使い、信頼度が下がれば、最大(350)で元の値を2/3ぐらいまで小さくするということになります。

式中のqは0.00575646273という定数です。

実際の勝率(s)について

実際の勝率とは、複数回続けて対戦した場合、何戦中に何勝だったかを計算しますが、ここでは1回だけの対戦だと仮定して、次のようにします。

勝ち=1
引き分け=0.5
負け=0

引き分けは0.5勝として扱います。

期待勝率(E)について

期待勝率とは、自分の元のレーティングと相手の元のレーティングなどを基に、今回の対戦の勝率を予想したものです。

期待勝率と実際の勝率が一致していれば、計算結果は0になるので、レーティングは変わりません。
期待勝率より実際の勝率のほうが高ければ、レーティングは上がります。
期待勝率より実際の勝率のほうが低ければ、レーティングは下がります。

期待勝率の求め方は以下になります。

期待勝率の計算式

riは相手の元のレーティング、r0は自分の元のレーティング、gはさきほど出てきた重みです。

期待勝率は0~1の間で変わります。
相手のレーティングと自分のレーティングが同じなら、期待勝率は0.5になりますし、相手のレーティングのほうが低ければ、期待勝率は1に近づき、逆に高ければ、0に近づきます。

重みgにより、相手のレーティングの信頼度が低いと、期待勝率は0.5に近づきます。

係数(K)について

Kの値は、イロレーティングでは固定で20~50の間で設定するという話でした。
グリコレーティングでは、レーティング偏差などを使い、毎回算出して設定します。基本的には、レーティング偏差が大きいほど、Kの値は大きくなり、偏差が小さいとKも小さくなります。

Kの求め方は以下になります。

係数Kの計算式

RDは自分のレーティング偏差。
dとqは以下になります。

Kを求めるための値

この中にも重みgや期待勝率Eが含まれているのがわかります。
計算してみると、Kの値はおおよそ10~600の間に入ります。


この記事が気に入ったらサポートをしてみませんか?