走(そう)るメイトランキングの計算方法



◎計算の手順

まず最初に各イベントの最上位コースの成績から解析します。 最上位コースの完走人数が29人以下であればスキップ、 30人以上ならばそのコースの上位10%が日本全体のトップに相当すると仮定し、 その上位10%との比較によって最上位コース完走者のポイントを算出します。 具体的には

    各選手に付与されるそのイベントのポイント= 100×その選手の所要時間の逆数÷上位10%の所要時間の逆数の平均         (1)

という計算を行います。 これを全イベントについて行い、更にそれらのポイントを選手ごとに平均します。 これにより、完走者30人以上の最上位コースを一度でも走ったことのある選手全員に ひとまずポイントが付きます。 基本的な考え方で説明した「Aさん」 に相当する役目の選手を大量生成したことになります。

そのような「Aさん」役の中にはいつも最上位コースを走っている選手だけでなく、 あるイベントではたまたま最上位コースを走ったけれども 日頃はもう少し下のクラスを走っている選手がいます。 すると次に、その選手を基準として用いることで、 最上位コース以外の競技成績に対してもポイント計算をできます。 具体的には

    各選手に付与されるイベント毎のポイント= 同じコースを走った既にポイントを持っている選手の平均ポイントの平均× 計算対象の選手の所要時間の逆数÷ 同じコースを走った既にポイントを持っている選手の所要時間の逆数の平均         (2)

という計算を行います。 「既にポイントを持っている選手」というのがAさん役の選手になります。 「平均ポイントの平均」という意味は、 まず個々の選手について既に持っているポイントの平均値を求め、 次にそれらの個々の選手の平均ポイントを そのレースのそのコースの完走者について平均するということです。 この計算によって冒頭の例の「Bさん」に相当する選手のポイントが求まります。

(2)式の計算は全部で5回繰り返します。 1度目の計算ではAさん役(最上位コースを走ったことのある選手) しか基準にできませんでしたが、 2度目の計算ではBさん役 (最上位コースを走ったことのある選手と同じコースを走ったことのある選手) についてもポイントが求まっていますので、 それを使ってCさん役 (最上位コースを走ったことのある選手と同じコースを走ったことのある選手 と同じコースを走ったことのある選手) のポイントも計算できます。 このように計算を繰り返す中でより多くの選手のポイントが求まります。

また「Aさん」役自身の成績についても繰り返し計算によって改良されると期待されます。 というのは、「Aさん」役のポイントの初期値は 完走者30人以上の最上位コースの上位10%が日本全体のトップ相当の力を持つという 仮定をしていました。 反復計算によるポイントの改良を繰り返すことで、 この仮定の影響が薄れていくと期待されます。

なお、4回目までの反復では(2)式の計算は 基準となる選手が3名以上いるコースについてのみ行います。 基準となる選手数があまりにも少ないと少数の選手のその日その日の調子によって 計算結果が大きく影響を受けてしまうこと、 しかも反復計算ではそれが1選手に影響するだけでは済まず 次の反復計算全体に影響しうることを考慮したものです。 5回目(最終回)では影響範囲が小さいのでデータ数を増やすことを重視して 基準選手が2名以下のコースについても計算を行います。


◎悪い成績の除外

オリエンテーリングでは大きなミスや体調不良などによって 日頃と比べてかなり悪い成績になることがありますが、 逆に良い成績の方は限度があります。 例えば典型的なミドルやロング等の競技を想定した場合、 大きなミスなどによってライバル全員に10分〜20分の大差で負けることはあり得ます。 しかしライバル全員に10分〜20分の大差で勝つということは よほどレースが荒れない限りまずあり得ないことです。 どんなに良いレースをしたとしてもせいぜい2分差や3分差といったところでしょう。 したがって一人の競技者に注目したときのオリエンテーリングの競技成績は 悪い側に長く尾を引く非対称な頻度分布になると考えられます。

このようなデータセットを用いてその選手の「典型的な競技成績」を推定するに当たり、 少数の極端に悪い成績が平均値を大きく引き下げることが無いように ランキング計算では悪い側の一定割合の競技成績を除外しています。

(2)式の「既にポイントを持っている選手」

(2)式の計算では 「既にポイントを持っている選手の平均ポイントの平均」 「既にポイントを持っている選手の所要時間の逆数の平均」 としてそのイベントのそのコースで上位半分に入った選手のみを 用いることとしています。 そのレースで大失敗した選手を基準にしてしまわないようにするためです。

(2)式の「既にポイントを持っている選手の平均ポイント」

各選手についてポイントの平均を取る際に上位9割を使用します。 これは試行錯誤の結果に基づいています。 各選手について全てのポイントの平均を取るようにして試験的な計算を行ったところ、 (2)式の計算を5回繰り返す間に 全選手ともポイントが低くなっていくという現象が見られました。 これは極端に悪い成績を計算に含めることで 「既にポイントを持っている選手の平均ポイントの平均」が 各選手の実力を過小評価することになってしまった結果と考えられます。 これに対し、各選手についてポイントの平均を取る際に上位8割を用いた場合は (2)式の計算を5回繰り返す間に 全選手ともポイントが高くなっていくという現象が見られました。 このような試験的な計算をいろいろ試した結果、 反復計算の際に全体的なポイントがあまり大きく変化しないのは 各選手についてポイントの平均を取る際に上位9割を用いる場合であることが分かりました。 この結果に基づいて上位9割の平均を取ることにしました。

各選手の最終的なポイント

ポイントの上位75%の平均をその選手の最終的なポイントとします。 上記のテスト計算の結果からすれば平均を大きく引き下げるような「大失敗」は 全競技成績の1割程度(10回に1回程度の割合)と考えられますが、 これはあくまで平均的に見た割合です。 個々の選手で見ればもう少し「大失敗」の割合が多い選手もいるかもしれませんし、 そもそも10回以下しかオリエンテーリングに参加していない選手もいます。 そのような選手を含め、少数の「大失敗」が平均を大きく引き下げるということを なるべく避けるために上位75%を用いることにしました。


◎成績の信頼性の評価

平均的な成績が同じでも成績が安定した選手もいれば 「当たれば速いが失敗も多い」選手もいます。 また、そもそもオリエンテーリングの参加頻度が少ない選手の場合、 たまたま参加した少数のレースの成績をどこまで信じて良いかという問題もあります。 このような成績の信頼性を評価するために ランキング計算では「変則標準偏差」というものを用いています。

まず、ご存知の方も多いかと思いますが普通の標準偏差から説明しましょう。 N個のデータpi(i=1,2,…N)があったとき、 分散は

     σ12 =∑i=1N (pi-pave)2/N =∑i=1Npi2/N −pave2         (3)

と定義されます。 ここでpaveはデータの平均値です。 分散の√を取った量σ1が標準偏差となり、 データのばらつき具合の目安を表します。 オリエンテーリングの競技成績に当てはめると 標準偏差の小さい選手は成績が安定している選手ということになります。

標準偏差ではデータのばらつき具合を表すことはできても、 そもそもデータが少ないことによる信頼性の低下までは表現できません。 例えば50ポイントと60ポイントがそれぞれ1回ずつの選手と10回ずつの選手、 どちらも標準偏差は5ポイントとなります。 これに対し、不偏分散と呼ばれる量があります。これは

     σ22 =∑i=1N (pi-pave)2/(N−1)         (4)

と定義され、データ数が少ないときに大きくなります。 この不偏分散から計算される標準偏差σ2は データのばらつき具合が同じならデータ数が多くなるほど小さくなります。 例えば50ポイントと60ポイントがそれぞれ1回ずつの選手では7.07ポイント、 10回ずつの選手では5.13ポイントとなります。

しかしσ2も データ数が1つしか無いときに0/0の不定値となって値が求まらない という問題があります。 そもそもデータが1つしか無いときにその信頼性の評価のしようがないわけです。 統計的に言えばそれが正しいわけですが、 全ての選手にランクを付けるためには無理矢理にでも数字を出さなければなりませんので、 ランキング計算ではデータが1つしか無い場合はそのポイントの半分程度の誤差が含まれる という仮定を置いて

     σ32 =∑i=1Npi2/(N−0.2) −pave2         (5)

という計算を行っています。 このσ3という量はランキング計算のために独自に考案したもので、 変則標準偏差と名付けました。

下の表はデータ数に応じて変則標準偏差がどのように変化していくかを示したものです。 データのばらつき具合が同じでもデータ数が増えるにしたがい 変則標準偏差は小さくなっていきます。

データ数 全ての成績が50ポイントの選手の変則標準偏差(単位:ポイント) 50ポイントと60ポイントの成績を同数ずつ持つ選手の変則標準偏差(単位:ポイント)
125.00
216.6719.08
313.36
411.4713.62
510.21
69.2811.41
78.57
88.0110.16
97.54
107.149.34
116.80
126.518.76
136.25
146.028.32
155.81
165.637.98
175.46
185.307.70
195.16
205.037.47
503.176.10
1002.245.58
0.005.00


◎最終的なポイントとランク

(2)式を用いた反復計算を5回繰り返した後、 各選手のポイントの平均値paveと 変則標準偏差σ3 (いずれも上位75%を使用)を用いて pave−σ3 を計算します。この値の大きい順に並べたものがランキングとなります。

平均値ではなく平均値から変則標準偏差を引いた量でランクを付けるということは、 平均的な速さが同じ選手同士なら安定感のない選手や オリエンテーリング参加頻度が低い(データが少ない)選手よりも 十分なデータがあってかつ安定している選手の方が上という 判断をしていることになります。

なお上位75%のデータのみを使用した計算ですので、 いわゆる「当たれば速い」タイプの選手であっても 4回に3回以上の割合で当たる「当たれば速い」は 当たったときの成績をその選手の実力として評価していることになります。 しかしそれ以下の頻度、例えば2回に1回しか当たらない「当たれば速い」は 外れるリスクが大きいことを考慮に入れたランキングになっているというわけです。


◎長期間データの扱い

ランキング計算では5年間という長期のデータを使用します。 その間には個々の選手の実力自体も大きく変化しうるため、 5年間のデータを同じように扱ったのでは適切な評価になりません。 ランキング計算では次のような工夫を行うことで、 5年間という長期のデータを用いることの弊害をなるべく減らしています。

(2)式の「平均ポイント」の計算

5年間を1年ずつに区切って計算します。 例えば2017年6月末時点でのランキングを計算する場合、
の5つの期間ごとに別々に(2)式を用いた反復計算を行います。 (2)式の「平均ポイント」は計算したいイベントと同じ区切りに入る1年間の平均です。 例えば2015年9月のイベントに対して(2)式を適用するときには 2015年7月〜2016年6月の平均ポイントを用います。

選手の最終的なポイントの計算

各選手ごとに を計算し、その中の一番高い値をその選手の最終的なポイントとします。

コンスタントにオリエンテーリングに参加していて競技成績も大きく変化しない 社会人選手の場合、 p2p5には0.9〜0.6の係数が掛かるので 普通はp0.5p1が一番高くなり、 それが用いられます。 また伸びざかりの学生さんなども係数に加えて 過去半年間が成績自体も一番良いので p0.5が一番高くなり、それが用いられます。 つまり大部分の選手は昔のデータを用いた p2p5ではなく 最新の1年分のデータのみから算出されるp1 あるいは最新の半年分のデータのみから算出されるp0.5を 最終的なポイントとしてランク付けがなされることになります。

しかし、最近1年間はほとんどオリエンテーリングに参加していないが 2年前まで遡れば頻繁に参加していたというような選手の場合は事情が変わります。 参加イベント数が少ないとσ3が大きくなる関係で p1がかなり小さくなり、 0.9の係数が掛かってもp2の方が高くなることが考えらます。 その場合はp2が用いられます。 このp2の意味としては、 過去2年分を用いたpave−σ3が 1年前の時点でのその選手の実力で、 最近1年間ほとんどオリエンテーリングに参加していないことによる実力低下分を 0.9という係数で表しているということになります。 p3p5も同様で、 オリエンテーリングから長期にわたり離れてしまっている選手ほど 実力低下が大きいと想定して小さな係数を掛けているというわけです。


◎ポイントの重み

これまでの説明ではややこしくなるので省きましたが 実際に各選手の平均ポイントを求める際には重み付けを行っています。

イベントの完走者数による重み

完走者数150名以上のイベントで1.2倍、150名未満のイベントで0.8倍という 重みを掛けて平均します。 完走者150名以上のイベントはまず間違いなく「大会」と見なせること (全国最大規模の練習会である東大夏場所の人数が多いときで100名強)、 しかも運営のしっかりした大会であると期待できることから 重みを大きくしています。

基準となる選手数に応じた重み

(2)式の計算(5回目)において基準選手が2名以下の場合は0.75を掛けて重みを低くします。


トップページに戻る