クリンチナンバー計算ページの計算不具合修正。

PC版へ 2013年09月15日

 クリンチナンバー計算ページの計算ミスを修正です。申し訳ありません。

ミスの概要
パ・リーグのクリンチナンバー計算ページで、9月10日〜14日までの「ライオンズのCSクリンチナンバー」に計算ミスがありました。ライオンズのCSクリンチナンバーが、最大で 1 ズレます。
そのため、9月14日の「ライオンズ自力CS消滅」を検出できませんでした。
 …現在は修正済みです。
ミスの範囲
上記のとおり。それ以外の値に、今のところ間違いは見つけていません。
ミスの原因は下記のようなものだったので、少なくとも「優勝クリンチナンバー / 優勝マジックナンバー」に関しては間違いは起こり得ない筈です。

また、セ・リーグの方のデータは大丈夫だと思います。
ミスの原因
順位決定方法の認識違い&プログラムミスです。 順位決定方式の「勝率が同じ場合は、チーム同士の対戦勝率が高い方が上位」という表現。「同率チームが2チーム」の場合は 1 対 1 で比較すれは良いとして、「同率チームが3チーム以上」の場合には、
  1. 【正しい】当該チーム間の対戦成績をまとめて比較する。
  2. 【間違い】当該チームそれぞれの対戦成績を個別に比較する。
…という事なんですな。今まで、この部分を間違っていた(2.の認識で計算していた)、と。

 幸いにも「クリンチナンバー算出途中の計算で、3チーム以上が同率に並んで、それらのチーム間の対戦成績比較をした場合に上記 1. と 2. とで計算結果が異なる」というパターンが、おそらくはかなりのレアケースだったので、今まで顕在化しなかったようです。

 たまたま「ライオンズの自力CSが無くなるか否か(ライオンズが全勝したときに3位以内に入れるか)」というクリティカルな状況のときに問題が浮かび上がったために気づいた次第。ラッキーだったと言うべきでしょうかな。

 とりあえず当該部分のコードを正しい比較が行われるように修正して、パ・リーグの2013年9月10日以降のデータを計算しなおしています。

 直した部分に新たに不具合が発生する可能性も無きにしもあらずなのですが、その時はまた直します。

 疑問・ツッコミなど大歓迎ですので、今後ともよろしくお願いします。

ではでは。

【2013.09.22 追記】続きがあります。→ 続・クリンチナンバー計算ページの計算不具合修正。

関連記事

コメント

匿名

セ界の件ですが、9月14日の試合終了時点で阪神5位以上確保のクリンチ「0.5」。そして15日最下位ヤクルトと対決。なぜヤクルトが勝ったのに阪神の5位以上が確定したのですか?15日5位DeNAが負けたことも関係しているのでしょうか?

回答宜しくお願いします。

匿名

9月16日全試合終了現在の楽天の最短優勝ですが、9月23日は無いのでしょうか?
楽天は9月17日〜23日までの間に6試合あります。
17日〜19日は3位のソフトバンクとの対決で、楽天が3連勝するとマジックが3減ります。
2位のロッテは17日と18日にオリックスと対決し、2連敗するとマジックが2減ります。
合わせてマジックは5減りますので、マジックは6になります。
またこの結果、19日の試合終了時点で2位のロッテと3位のソフトバンクの順位は変わらず、ゲーム差も1に広がります。

次に21日〜23日の日本ハム戦で楽天が3連勝した場合、マジックは3減ります。
一方、ロッテとソフトバンクは2位と3位の直接対決です。この場合、初戦でロッテが負けるとマジックが1減り、ソフトバンクが2位になります。そして次の日に今度は2位のソフトバンクが負けるとマジックが1減り、ロッテが2位になります。更に次の日に今度は2位のロッテが負けるとマジックが1減りますので、マジックは3減ります。
こうなると合わせて6減り、楽天が23日に優勝という可能性がある気がするのですが、如何でしょうか?

匿名

セリーグのクリンチナンバーについての質問です。
20日現在、ヤクルト(S)のCS消滅が21日となっています。
これは、21日にSが負け、広島(C)が勝つと
SのCSが消滅することを表していると思われます。
ところがその仮定の下で、22日以降Sが全勝、かつCが全敗すると
SとCがともに65勝77敗となり、勝率・勝利数で並びます。
そのとき、セリーグの順位の決め方では直接対決をみるわけですが、
この時点では12勝12敗となっており、これでも決着がつきません。
その結果、前年の順位が上のSが3位となります。
したがって、21日にSのCSは消滅しないと思うのですがいかがでしょうか。