ELOレーティングシステムとは?
ELOレーティングシステムは1960年代に物理学者アルパッド・エロ(Arpad Elo)がチェスプレイヤーの実力を数値化するために開発したアルゴリズムです。現在はチェスにとどまらず、サッカーリーグ・野球・囲碁・将棋・オンラインゲームなどさまざまな競技のランキングシステムに広く採用されています。レーティングの差から予想勝率を算出し、実際の結果が予想とどれほど異なったかに応じてポイントを変動させるのが核心原理です。
ELO計算式の仕組み
まず期待スコアをE = 1/(1+10^((相手レーティング-自分レーティング)/400))で計算します。レーティング差が400の場合、期待勝率は約91%になります。同レーティングなら50%です。次に実際の結果(勝=1、引=0.5、負=0)と期待値の差にKファクターを掛けて変動ΔR = K×(実際結果-E)を求めます。
Kファクターの選び方
Kファクターは1試合で変動できる最大ポイント数です。FIDE(国際チェス連盟)では新規選手K=40、レーティング2400未満K=20、2400以上K=10と段階的に設定しています。Kが大きいほどランキングの変動が激しく現在の調子を素早く反映しますが、不安定になりやすいデメリットもあります。Kが小さいと安定しますが実力変化への追従が遅くなります。オンラインゲームでは一般的にK=32が使用されます。
よくある質問(FAQ)
Q. 同レーティング相手に勝つと何ポイント得られますか?
A. 同レーティングなら期待スコアが0.5なので、勝利時はK×(1-0.5)=K/2ポイント獲得します。K=32なら+16ポイントになります。
Q. ELOとGlickoの違いは何ですか?
A. GlickoはELOの改良版で、レーティングの不確実性(RD:Rating Deviation)を追跡します。長期間試合をしないとRDが上昇し、次の試合でのポイント変動が大きくなります。これによって実力変化をより精密に反映できます。
Q. チームゲームにELOは使えますか?
A. ELOは1対1の競技向けに設計されています。チームゲームにはTrueSkillやOpenSkillなどの拡張システムが用いられます。一部のプラットフォームではチーム全体でELOを共有する簡易版も存在します。