多値レーティング2007年02月25日 01時15分55秒

昨日は試算したレーティングを載せてみた。ところで、チーム(機体)の強さを 1つの数値で表すのは果たして正しいと言えるだろうか?

例えば、LediYastrebeは満デーイ08より178点も高い。178点差とは、 LediYastrebeの勝率は74%にもなる、というのがこのレーティングシステムの お約束だ。しかし、実際には、この2者が戦えばほぼ満デーイ08の勝ちとなる。

CHPの強さは、対地・対空など多様な面があり、ただ1つの数値でそのすべてを 表すのはどだい無理な話だ。だから、レーティング値は「総合的な強さ」とい うあいまいな意味になる。

一方、チェスではプレイヤーの相性は確かに存在するが、勝敗に大きく影響す るほど支配的ではない。「大試合では緊張して実力が出ない」とか、「気分屋 で前日のサッカーの結果しだいで打ち筋が荒れる」とか、微妙な属性はあるか もしれないが、やはり実力が数レベルも上回る相手に勝敗が変わることはない。 要するに、チェスでは(というか同条件の人間同士のゲームでは)強さを1つの 数値で表しても大きな問題は無い。

しかし、CHPではそもそも同条件で戦うものではなく、激しい相性が存在する。 例えば、返り血纏いし行者達のようなノーランダーは地上で圧倒的な強さを誇 るが、飛行型に勝つのは極めて難しい。

よって、CHPでレーティングシステムを考えるなら、強さの成分を何個か用意 して、それごとにレーティングを与える方法が妥当そうだ。対砲撃車両、対突 撃車両、対飛行、対砲撃脚型、対格脚型・・・いろいろなタイプごとに個別の レーティングと、すべてを合わせた総合的なレーティングとを用意すると文句 がなさそうだ。ただ、あまり数値が多いと見ても判りづらいし、どのチームが どのタイプかを判定するのも難しい問題だ(砲戦+格闘バランス型などどうす ればよいだろう?)。

そもそも、数値が細かくなるなら、緋色さんのOKE観察日記 のように、適切に選んだ評価 チームとの対戦成績で表現した方が解釈に文句の付け所がない。 そんなわけで、あまり凝って細かくするとレーティングで機体の強さを表すと いう本来の意義を失ってしまうことになる。そこで、高々数個ぐらいの値で相 性も表現できるうまい方法はないかと模索中である。案の一つを下に示す。

順位 Rating 車-多-飛-他  チーム名
  1   2006  19-20-23-19  LediYastreba
  2   1922  19-21-19-19  ヴェロニカ・イェーガー
  3   1828  18-18-20-17  満デーイ 08
  4   1821  18-19-18-17  空襲部隊
  5   1813  21-19-17-16  戦慄のブルー
  6   1796  20-18-17-19  ストームVX Ver8
  7   1789  16-17-20-18  曼珠沙華[零]
  8   1772  15-19-19-17  四面体の守護者
  9   1750  17-15-18-20  Phantom15b
 10   1737  18-17-17-17  『哭天』/【流霰】
 11   1729  16-16-18-18  ハリケーン
 12   1727  18-20-14-17  ブラスト4
 13   1690  19-17-15-18  cockroach
 14   1682  18-17-15-18  相機第六装甲重機隊
 15   1672  15-17-16-18  クレイジーエンブレムズ
 16   1669  16-17-18-17  オメガ重工強襲部隊02
 17   1621  16-16-18-15  石弓1f
 18   1608  16-16-20-15  Les Bleus 1st
 19   1600  15-16-16-17  柏牡丹
 20   1595  17-17-13-15  下機動部隊ゲパルト
 21   1592  16-15-17-16  名誉返上
 22   1588  18-15-18-15  いるかさん
 23   1588  17-16-15-16  ソニックブラスター愛好会
 24   1580  16-16-11-16  ZEBRA
 25   1533  16-14-18-14  魔獣マングレオンα
 26   1523  15-17-11-15  返り血纏いし行者達
 27   1506  12-17-11-15  GazDham
 28   1492  15-14-17-16  圧害
 29   1491  14-15-16-14  梅咲いた~羽根木に行こう
 30   1477  15-17-13-14  ホワイトレディ4
 31   1453  15-15-12-15  親不知三本目
 32   1439  16-15-14-14  忍冬
 33   1428  13-15-06-15  ポイズンブラック屍斬
 34   1406  ??-14-14-15  第四楽章
 35   1404  14-10-17-15  黒こげチキンβ
 36   1381  15-14-13-14  Gigantics04
 37   1357  13-15-13-13  チームほわいと
 38   1336  ??-12-12-15  ナーゲルゲヴェール
 39   1303  11-12-18-13  スカンク第8分隊
 40   1266  12-14-12-12  Axis
 41   1189  11-12-09-12  フォートルディウス
 42   1172  14-11-12-12  Qe.2
 43   1167  14-08-10-12  春華
 44   1158  13-11-12-12  三菱重工
 45   1131  14-11-12-11  くろねこさんちーむ
 46   1129  ??-10-14-11  フレイヤ
 47   1112  09-11-12-11  神武東征
 48   1096  07-08-12-12  おでん屋さん
 49   1039  10-14-07-11  そらも飛べるはず
 50    930  ??-09-06-09  クロノス
 51    924  11-04-12-10  BAR「Low」
 52    759  ??-08-06-08  炸裂戦隊 バクサンマン
 53    597  10-09-07-02  雀団
 54    470  10-09-09-03  ひねパンズ

「Rating」は昨日と同じ。4つの数値「車-多-飛-他」が増えたのが違いだ。

「車」は、車両型3機で編成されたチームに対し、自分のチームがどれだけの レーティングを持つかを示した言わば「対車両専用レーティング」である。値 は100で割って二桁に落としてある(四捨五入)。「多」は対多脚型3機編成、 「飛」は対飛行型3機編成、「他」はその他、つまり対二脚型3機編成、対ホバー 型3機編成、対混成型である。「??」となっているのは、対戦相手数か対戦回 数が少なくて信頼できる結果が得られなかった箇所だ。

例えば、ヴェロニカ・イェーガーを見ると「19-21-19-19」である。全般的に バランスよく高いが、多脚への圧倒的な勝率のため、「21」つまり2100相当が 出ている。これはLediYastrebaの対飛行の「23」も同様。一方、Phantom15bは 「17-15-18-20」と、対多脚での苦戦振りが判る。返り血纏いし行者達の 「15-17-11-15」の対飛行の苦手ぶりは明らかだ。

このように、チームの得意不得意の特徴がそれなりに簡単に表現できるのは興 味深くないだろうか。

レーティングの計算方法2007年02月28日 08時05分47秒

はせべさんからリクエストがあったので、前回挙げたレーティングの計算方法 を説明する。ただし、このレーティング計算方法は最終案とは限らず、変更さ れる可能性がある。

レーティング

まず、レーティングの定義だが、チームAとチームBのレーティングがそれぞれ Ra, Rbのとき、チームAの勝率を次の式で決める。これは、多くのレーティン グシステムで採用されている一般的な式だ(ロジスティック関数と呼ばれる)。
formula
例えば、Bの方がAより400点高ければ勝率は1/11、Bの方がAより400点低ければ 勝率は10/11となる。試合を行って、AがBに3戦2勝したら、Rb-Raは-120 とす るのが妥当だろう。(上の式に当てはめてみると、P(A,B)=0.666になる)
curve

さて、実際に試合を行うと、チームAはチームBに勝ち越し、チームBはチームC に勝ち越し、しかし、チームCはチームAに勝ち越すという三つ巴の結果になる ことはよくある。この現象をどう考えればいいだろうか?

ここで注意する点は、レーティングが高い方が必ず勝つわけではないとい うことだ。あくまでもレーティングが高い方が勝率が高いと言っているだけな ので、レーティングが1000点高くても負ける時は負ける。天気予報で降水確率 が10%だろうと運が悪ければ雨は降るのと同じだ。だから、先のようにレーティ ングの高低に関わらず三つ巴の結果が出ることは十分ありえる。ならば、正し いレーティングを求めるということは、実際の試合結果と、レーティングから 求めた勝率ができるだけ一致するような値を見つける、ということになるだろう。

このような問題の場合によく使われる手は、実際に起こった結果が最も高い確 率で発生するようなパラメータが正しいと推定する方法だ。これは最尤法 と呼ばれる。これを用いると、 試合結果から最ももっともらしい各チームのレーティング値を決定することが できる。 最尤法の具体的な計算法はさすがに複雑になるので、 ここでは述べない。

計算の都合上、手を加えているところが一点。全勝の場合と全敗の場合は、 この方法ではレーティングが無限大と無限小に漸近してしまうため、全勝の場 合は対戦したうちで最高レーティングの相手と1引き分け、全敗の場合は最低 レーティングの相手と1引き分けを番兵として仮に加えて発散を防いでいる。 これにより、例えば、全勝しかつ最高レーティングの敵に2勝した場合はその 敵+約300点に留まる。

以上を大雑把に言えば、すべての勝敗に対して最も「もっともらしい」確率が 得られるように、レーティングを決めるということだ。

参考リンク

  • ELO Rating System - 広く使用されている古典的なレーティングシステム
  • TrueSkill - X-BOX360のオンラインゲームで使用されている改良されたレーティングシステム。ベイズ推定を使用し、真のスキル値への到達が早い
  • Pairwise Comparison - 一対比較法

タイプ別レーティング

次に、対タイプ別レーティングの求め方を説明する。まず最初に総合レーティ ング(上で求めたレーティング)を決める。そして、あるチームAの対車両レー ティングRwaを求めるときには、車両3機編成のチームだけを抜き出し、そこに チームAを加えてやはり最尤法でRwaを求める。ただし、このときは車両のレー ティングは予め求められた総合レーティングに固定したまま変化させない。

大雑把に言えば、対車両レーティングは、車両チームだけの総合レーティング に対するレーティングである。

基準に総合レーティングを用いるので、車両の集団の順位が総じて高ければ、 対車両レーティングは高くなるし、逆に車両の集団の順位が低ければ、 対車両レーティングは低くなる。

また、タイプ別にしたことで試合数が減ってしまうので、レーティングを決め るのに十分な試合数が揃わない場合がある。対戦相手が1チーム以下の場合や3 試合以下の場合はタイプ別レーティングは「算出できず」としている。 (この基準は経験的に決めた)