2008年09月15日

当てにならない?FIFAランキングの意味を知る:(3)本当のポイント計算を?

先週初めから、タイトルのランキング計算についてエントリーをしている
訳ですが、こういうのは 「ある考え方」を仮定してのことなので、
本当の意味での?強弱は その考え方がズレていると 推し量りにくく、
多方面から批判・非難が出てくるものでしょう。

ただ、適当な評価がなければ仮定して「比較分析」しようという事をやるのは
他のスポーツの世界ランキングに触発されての事かもしれませんが
一種の「チャレンジ」でもあるので、その姿勢自体は評価すべきことなのかも。


さて、そのFIFAランキングを「自分で」しかも「日本に限らず他国
=200ヶ国超 まで」計算しようという、暇人でなければ考えつかない
ような事(苦笑:意味があるのか?)をやろうとしている訳ですが、
幸いなことに「半自動」のプログラムらしきものが出来つつあります。

#「本当のポイント計算をしているのか?」は、ともかくとして。

ですので、出てきた結果がどうかと、その結果から推し量れる事を
今後 書いていこうと思います。(が 詳細は次回・・・)
#このパターンで引っ張るのが 最近増えてますねーー;

一旦作り始めると、数字と国名がもはや「記号」にしか見えず(笑)、
「本当に見るべき」ゲーム内容とか選手とか監督の戦術とかを 振り返れず
何も 頭に入っていかないーー; やりすぎ注意なのです。遊び心を忘れずに。

半自動プログラムを作ってみて 初めて判った事は

「開催地からホーム/アウェー/セントラルを判断する事は極めて難しい」

という事です。字面だけを見ても、対戦国を書いてある順で左にあればホーム、
右にあればアウェーとは単純にいかないのです。(親善試合や予選の場合が問題)
#このあたりが 新方式でホーム/アウェーが考慮されてない理由?

先ずは確認しておきたい計算(プログラム:後述に補足記載)の信憑性ですが、 
FIFAが計算例として公表している2007年10月のランク1~20位のチーム 
の計算結果と照合してみました。

#これは既にやれているという時点で「計算できるもの」はあるんですが・・・
#まだまだ改良できそうな気がして・・・

<参考> FIFAランク計算例(2007.10.17~2003.10.16)分のポイントと
         今回計算との比較(計算時間:20ヶ国分で50分程度)

国名:FIFA公表ポイント、自計算ポイント、誤差の順に記載)
Argentina       :  1533   1481   -52
Brazil          :  1459   1441   -18
Italy           :  1387   1375   -12
France          :  1271   1278   + 7
Germany         :  1245   1254   + 9
Spain           :  1226   1230   + 4
Netherlands     :  1207   1191   -16
Portugal        :  1203   1228   +25
Czech Republic  :  1174   1192   +18
Croatia         :  1155   1164   + 9
England         :  1137   1127   -10
Romania         :  1086   1082   + 4
Scotland        :  1049   1051   + 2
Greece          :  1034   1027   - 7
Mexico          :   978    988   +10
Russia          :   960    969   + 9
Uruguay         :   900    878   -22
USA             :   886    879   - 7
Nigeria         :   841    839   - 2
Poland          :   837    831   - 6

「2006年7月以降の計算結果」は 20ヶ国分計算して、全て合致していたので 
そこを見れば信頼して良さそうですが、4年分として上のように表にしてみると、
誤差が最大で 52 あり、誤差の絶対値平均は 12.5(もある・・・)。

ポイントが接近している所では、オランダと、ポルトガル・チェコとの順位の
逆転もあったりと、そのまま使うには問題がありそうですが、これは
使用する「過去ランキング」が、

◇FIFAが計算しているものは、非公表の過去ランキング(新方式で再計算)
◇今回計算に使用したものは、過去に公表されたランキング

の違いが ポイント差に現れているものだと思われます(計算ミスなければ)。
2006年7月以前については、過去に書いてきた通り 違っても不思議でないので。


後は、もし間違いがあるとすれば、計算自体ではなく、対戦結果データと
過去のランキング(計算に必要)の入力の時の「単純な入力間違い」ですが、
これを除外する為に、例えば日本の計算をするならば、FIFA.com] での
「国(Japan)」→(代表の)「Fixtures an Results」←リンク先は日本の所
へ行き、そのサイトの右上の Search 機能を使うと、適宜必要な所が出てくるので
それを利用して「コピペ」(得意か!)で 貼り付けてます。

(具体的には、Search機能の、Time Range を Customize search として、例えば
 From:「September」「2004」 To:「September」「2008」と選択して 
  Searchボタンを押せば、2004.9~2008.9 の期間内の試合結果が出てくる)

「コピーペースト」でデータを貼り付ければ、入力間違いは FIFA.com が
していない限りにおいては、起きる事はないという理屈です。
(データ計算自体は、Excel に貼り付け VBAマクロで処理。ただ、コピペは
 「手動」なので、そこは 個人的に超えられない「半自動」の壁がある・・・)


まぁ「それなりの」評価ツールが作れましたので(そこで満足すんな!)
次回から手始めに、

◇日本の(他国も?)1993年8月以降から2008年現在までの総ポイントの
 年平均の推移を「新方式」の計算方法で出してみようと思います。

 1993年8月以降としたのは、ここがFIFAランキングの最初である為ですが
 そう考えてみると、ランキング自体は「新しい」(といっては語弊がある?)
 試みなのかもしれません。

 日本のポイント計算をする上で 取り扱いに困ったのが、デーヨ(サビチェ
 ビッチ)が協会長として来日した2007年6月のモンテネグロ戦ですが
 (セルビアから分離独立したてで当時ランキングなし、自動計算上でも
 ストップしてしまう)ので、その時の最下位の「モンテネグロ 199位」
 (ポイント0)として計算しようと思う。
   ※試合自体は 日本が2-0で勝利し、日本の獲得ポイントは 138.75。

 計算した結果をグラフにしてみると以下のようになりました。
 というグラフも次回(出来れば今日中にアップ)・・・説得力に欠ける・・・

比較したい国 等のご意見があれば「出来る範囲で」対応したいと思います。
#ボランティアなので、あまり納期にムチャを言わないで頂ければ・・・


【補足】計算手順の説明(「ヤル気」と「力」があれば 誰でも出来るように)

#ムダに長くなりますので、以下は、飛ばし飛ばしで 適当に読んで下さい^^;

【FIFAランキング計算手順】

◇手順1:先ず、戦った試合とその結果を全て出していく。

例えば、2008年9月のランキングは、2008年9月3日付けで発表されているため、
ランキング計算をするには、さかのぼって2004年9月3日~2008年9月2日の、
丸4年間で行われた試合を全て出す事になる。

上で説明したように FIFA.com サイトでの、Search機能の、Time Range を 
Customize search として、From:To:の年月を選択し、Searchすると、
以下のような結果が表示される(FIFA.com の画面とは違いますがご容赦願います)。

Results Date Venue Competition 
・India 0:4 (0:1) Japan  08/09/2004 Calcutta  FIFA World Cup Qualifier 
・Oman 0:1 (0:0) Japan  13/10/2004 Muscat  FIFA World Cup Qualifier 
・Japan 1:0 (1:0) Singapore  17/11/2004 Saitama  FIFA World Cup Qualifier 
・Japan 0:3 (0:0) Germany  16/12/2004 Yokohama  Friendly 
       ・・・・・・
(あんな試合もあった、こんな試合もあったと振り返ってると最後まで見れず
 時間だけが ただただ過ぎていく・・・ので、途中で振り返らない事が大事^^;)
       ・・・・・・
・Japan 3:0 (2:0) Oman  02/06/2008 Yokohama  FIFA World Cup Qualifier 
・Oman 1:1 (1:0) Japan  07/06/2008 Muscat  FIFA World Cup Qualifier 
・Thailand 0:3 (0:2) Japan  14/06/2008 Bangkok  FIFA World Cup Qualifier 
・Japan 1:0 (0:0) Bahrain  22/06/2008 Saitama  FIFA World Cup Qualifier 
・Japan 1:3 (0:0) Uruguay  20/08/2008 Sapporo  Friendly 
・Bahrain 2:3 (0:2) Japan  06/09/2008 Manama  FIFA World Cup Qualifier 

◇手順2:1試合毎のポイント計算:

wikipedia の計算方法や、FIFAが出している計算例をみれば判るが、
引っ張ってくる数字は「あまり多くはない」。

例えば、2004年の W杯1次予選 インド戦
・India(138) 0:4 Japan  08/09/2004 Calcutta  FIFA World Cup Qualifier 

で 日本が得たFIFAランクのポイントは、こんな感じになる。
(個人的には、プログラム(Excelマクロ)で条件設定をして (A)~(D)の値を計算。
 相手国のFIFAランキングと所属大陸を出すのは、結構苦労するかもしれない)

計算式(A)=3.0(日本の勝ち)
計算式(B)=2.5(W杯予選のため)
計算式(C)=0.62(= 2.00 - (138/100)) 
  ※2004年9月8日当時の インドのFIFAランキングは (138)位と「すれば」の話。
   138位という順位は、2004年9月8日時点での最新ランキング(9/1付) から。
   ただし、FIFAの計算では、2006年7月12日以前のランキングは 旧方式で計算
   して出したランキングのため、過去に遡って「新方式を適用して計算した」
   ランキング順位(FIFAはこのランキングを非公表)で計算している。
   この値が「簡単に判らない」ため、計算には 誤差が出てくる。

計算式(D)=0.85(日本もインドも AFC所属の為、大陸間係数はどちらも同じ値で、
         2国の平均を取っても 0.85 になる)

これから、ポイントは計算式から、(Excelでやれば、計算間違いは ほぼない)
=(A)×(B)×(C)×(D)×100 
=3.0×2.5×0.62×0.85×100=395.25 となる。

1個(2,3個?)やってしまえば、どういう仕組みの計算かは判るから、
後の計算は、個人的には Excel VBAマクロを作成して自動計算。

計算時間は、FIFA.com サイトからのデータのコピペの時間から計算終了まで
2~3分もあれば終了しそうである(200ヶ国分は・・・1日仕事ですねーー;)

マクロが完成してしまえば(多少エラーが出て止まる事もあるので修正中だが)
どの国のどの期間でも(FIFA非公開のランキングがある故の誤差はあるが)
ランキング、ランキングポイントに関しては計算できるという事になる。
その計算の中で、相手国ランクや得失点も出すようにすると便利である。

(簡単な処理フロー)
  ・変数定義
  ・ライブラリ定義(FIFAの過去ランキングデータと 国と所属大陸との対応、
           FIFA過去ランキングは、コピーペーストで作成)
  ・初期入力(国名と開始年月日のみ)
      →出力:開始年月日のFIFAランク、計算式係数(1部)

  <以下(A)~(C)を 1試合毎に実行し、最初から最後の期間までをループ>
  (A) FIFA.com データ読み出し
       (入力:試合対戦国、対戦日時、結果(スコア)、試合カテゴリ)
  (B) 計算式の係数計算
  (C) FIFAポイントの計算(1試合毎)

  ・結果出力(体裁整備)、終了

#暇をみて やってるんですけどね。結構、面倒なんです・・・


◇当てにならない?FIFAランキングの意味を知る:(予定は常に変わるもの)
  (1)はじめに(2)試合×4年分の計算?
   (3)本当のポイント計算を?(4)計算やれんのか?(爆)
  (5)代表の適正なゲーム数とは? /(6)意外な数字?ポイント率
  (7)各大陸の比較-1 / (8)各大陸の比較-2
  (9)各大陸の比較-3 / (10)各大陸の比較-4
  (11)成長の度合とは / (12)今後の日本、どう進むべき?
  (13)数字を信用してはいけない / (14)自分的ランキングを。

※おまけ:
一応、計算したのを乗っけてみてますが、いかがでしょうか?

表の左列から、FIFAが公表しているランキング、国名、FIFA公表のポイント、
 所属大陸、自己計算のFIFAポイント、FIFA公表分と自己計算との誤差 です。

FIFA_Ranking_calculation


posted by uj_lovesoccer |15:21 | テーマ設定した記事2008 | コメント(0) | トラックバック(0)
みんトピに投稿 このエントリをlivedoorクリップに登録 このエントリをはてなブックマークに登録 newsing it! このエントリを Buzzurl に追加

トラックバックURL
このエントリーのトラックバックURL:
http://www.plus-blog.sportsnavi.com/uj_lovesoccer/tb_ping/533
コメントする