Bp: 評価点の算出方法

仮評価点[TmpBp]の算出

まず、各大会各クラスにおいて、優勝者の点数を2000点とおき、記録(タイム)の対数関数となるよう仮評価点[=TmpBp]を付けます。計算式は以下の通りです

\(TmpBp = 2000+ 1000*ln({優勝者タイム / 当該選手のタイム})) \) (参考:解説1.評価点の考え方)

ここで、もしその大会がランキングを作成する最初の大会である場合(当ランキングの場合、2015年3月に福島県で開催された全日本大会ME,WE)、TmpBpがそのまま評価点[Bp]となります。

仮評価点を補正し、評価点を算出

順位の付いた者のうち、その時点での実力評価値[AvBp]を持っている選手(=過去365日間で1回でも評価点[Bp]が与えられた)の集団[X]を考えます。※そのような選手が3人以下しかいなかった場合、算出不可として全員DNSと同じ扱いとなります。

まず、目的変数(y軸)を仮評価点[TmpBp]、説明変数(x軸)を実力評価値[AvBp]とした、回帰分析を行います。 すなわち、その時点での実力評価値[AvBp]を持った選手がどのような仮評価点[TmpBp]を獲得したかを散布図に表し、回帰直線(=RL)を引きます。 ただし、単純な単回帰分析ではなく、ある選手の評価点[Bp]のばらつき具合は、標準偏差にして、\( (2800 - AvBp) \)に比例している。という前提(解説3:重みのつけ方) を置き、 \( 1/(2800-AvBp)^2 \)の重みを付けた、「重み付け回帰分析」を採用します。

ここで、回帰直線[RL]の傾きがSだったとします。そのとき、「補正傾き[=As]」を以下のように算出します。

(i) \( S > 1のとき、As = S \)
(ii) \( 0.7 <= S <= 1のとき、As = 1 \)
(iii) \( S < 0.7 のとき、As = S + 0.3 \)

また、集団[X]内でのAvBpの重み付け平均値をAvAvBp, TmpBpの重み付け平均値をAvTmpBpと置きます。

このとき各人の評価点[Bp]は、その人のTmpBpと上記算出値から、\(Bp = (TmpBp - AvTmpBp) / As + AvAvBp \) として算出します。(解説2.評価点の補正)

算出方法解説

算出方法は以上の通りですが、要所要所の計算の意味を以下に解説します。

1.評価点の考え方

例えばあるコースを40分で走れる人(A)と、60分(B)、80分(C)で走れる人の3人がいたとします。A-B間の実力差とB-Cの実力差は同じでしょうか? 当然ながら60分を40分に縮めるほうが80分を60分に縮めるよりより困難ですよね。20分を0分に縮めるのも不可能です。やはりタイムをそのまま利用するのは適切でなさそうです。

このランキングでは、「どのような実力の人にとっても1%タイムを縮める大変さは同じ」という前提を置きました。 すなわち、あるコースをAの人が4分縮めるのと、Cの人が8分縮めるのは大変さはだいたい同じで、 「どんな実力の人にとっても、1%タイムを縮めると、xポイント上昇」するように設定しました。これを実現するのが対数関数です。

2.評価点の補正

評価点を算出する際に、まず「仮評価点」を付けましたが、これは「そのレースの優勝者を2000点(日本の男子トップ選手)と仮定し、そこから1%タイムが延びるごとに10点減算される」ように点をつけたものです。 しかし、当然ながらそれだけで評価点としては不適切ですので、補正が必要になります。

まず、出場者の実力を補正します。レースに出場した選手の実力評価値の(重みづけ)平均が、ここで獲得できる評価点の(重み付け)平均と同じになるように、 全員の仮評価点から同じ点数を減算(または加算)しています。これによって、出場者のレベルが低い場合は自動的に点数も低く抑えられるようになります。

次に、タイム差による減点数を補正します。テレイン・コースによっては異様にタイム差が付きやすい場合・付きにくい場合があり、そのような場合に異様な高得点や異様な低得点がつけられてしまいます。 1%タイムが延びるごとに10点減算とするのですが、実力評価値のばらつきの割に仮評価点のばらつきが大きすぎる場合は、「タイム差が出やすかった」を判断し、少し点数を抑える(1%タイムが延びるごとに7-8点ずつ減点される)補正を加えます。 逆に「タイム差が極端に出にくかった」場合は逆に点数をばらつかせる(1%タイムが延びるごとに12-13点ずつ減点される)補正を加えています。

3.回帰分析の重みのつけ方

通常の単回帰分析の前提に「誤差項の分散はすべのデータについて等しい」というものがあります。

これを前提にしてしまうと、すべてのレベルの選手について、大会ごとの結果のバラつきは大体同じ、ということになりますが、 おそらくこれは正しくないと思われます。やはり、レベルの高い選手ほどどのようなテレイン・コースでも安定した結果を残すでしょうし、低い選手はそうでないでしょう。 もしすべてのデータを同等に扱ってしまうと、下位の選手の点のバラつきに左右されて上位の選手の点が安定しない、ということが考えられます。

そこで、「標準偏差にして、(2800 - 実力評価値[AvBp])に比例している」と仮定し、 上位の選手の誤差をできるだけ小さくするようにデータに重みを付けています。 この「2800 - 実力評価値[AvBp]」という値ですが、実験から推測した式であり、理論的な裏付けがあるわけではありません。 強いて意味を記述するのであれば「オリエンテーリングの神様は実力評価値2800であり、彼はどんなテレイン・コースでもまったくのミスなく走り抜けることができる。 ある選手の結果のバラつきは、その神様からの実力差に比例している」といったところでしょうか。

ちなみに、上記の補正をしてなお、もう1点問題があります。

単回帰分析では、「説明変数に誤差はなく、目的変数にのみ誤差が存在する」という前提がありますが、これが正しくありません。 実力評価値は過去1年間の出場レースの平均ですので、当然誤差があります。それを補正するためにはDeming法による回帰分析が必要になりますが、 実力評価値の誤差が選手によってバラバラで、ある人は3レースの平均で、ある人は11レースの平均・・・となっており、簡単に計算することが困難です。 この点は今後の課題です。