J日程作成システム解説

ここ数年、というか去年あたりからなんですが、Jリーグの開催日程が、公式発表よりもかなり早い段階で出回っています。それも、一部分ではなく、全チームの対戦順が、パーフェクトに、です。リーグの関係者が事前に情報をリークしているわけでもないだろうに・・・。
実は、Jリーグの日程作成の考え方は、その理屈がわかってしまえば、そしてある範囲の情報さえあれば、誰でも推測できてしまうような単純なロジックで成り立っているんです。この法則、既に数年前には私の知人の方(と言ってもお会いしたのは一度だけ)がロジックを解読していたのですが、その頃は何を言われているのかチンプンカンプンで・・・。足掛け?年、ようやく自分なりにロジックを消化できたので、ここに発表する次第です。
ま、私が発見したわけじゃないのでアレなんですけど(笑)。

このロジックを解読するポイントは2つです。

  1. 各チームに共通の、仮の対戦順(このページでは実際の対戦節と区別するため、便宜的に「対戦循環」と呼びます)を解読する
  2. 「対戦循環」を並べ替えて「実際の対戦節」を決定する
この「対戦循環」という考え方自体は、リーグ戦の日程を決める時には一般的に用いられる手法のようです。例えばABCDの4チームなら、
  1. ABCの3チーム(BCDでもACDでもいいが)を抜き出し、どのチームもA→B→Cのように順繰りに対戦循環を回す事を基本とする
  2. 対戦相手が重複しないように、例えばAはA→B→C、BはC→A→B、CはB→C→Aという具合に、対戦循環の基点を変えてやる
  3. 自チームと対戦する事はできないので、自チームと対戦する順番の場合は、余ったDと対戦する
という方法で、第1節:A−D/B−C 第2節:A−B/C−D 第3節:A−C/B−Dという対戦順を決めるわけです。

Jリーグもこの方式を採用している事は周知の事実。だからこそ日程の解読も可能なんですが、解読には最低限の情報と、ちょっとしたコツが必要です。
解読のキーとなる最低限の情報とは、

  1. 「各チームとも、少なくともあるひとつの節については対戦相手が判明している事」
  2. 「少なくとも2チームの全日程が判明している事」
の2つ。これが本当に数学的に最低限なのかどうかは生粋の文系の私にはわかりませんが、歯抜けがあってもある程度の予想はできます。
まあ、こんな説明では絶対にご理解頂けないと思いますので、今年の日程リークの過程を追って、順次説明していきましょう。

【図1】

「各チームとも、少なくともあるひとつの節については対戦相手が判明している事」という条件は、やはり開幕戦の日程漏れが一番早い。今季の開幕戦の日程についてはクリスマス前から漏れ始めて・・・アドバルーンというか、リーグ関係者やクラブ関係者が意識的にリークしているフシもあるんですが(新聞にポロッと載ったりしますしね)、1月7日の時点で予想も含めて出揃いました。
一方、「少なくとも2チームの全日程が判明している事」については、私の知る限り、最も早く全日程がリークされたのが横浜。これが1月5日のこと。さらに8日には大分の1st日程が漏れて、この時点で二つ目の条件もクリアになりました。今はもうWEB上で情報がどんどん公開されていくので、私のようになんらコネを持たない人間でも、こうして情報を共有化させて頂ける訳で。

で、それを機械的に一覧表にしたのが【図1】です。
ここから解読作業が始まるわけですが、ここで何やら法則らしきものを見つけ出す事ができるかどうかが、解読作業の最初で最大のポイントです。

6〜11節に注目してみましょう。横浜の6〜10節と大分の7〜11節は、ともに「名古屋→鹿島→FC東京→柏→浦和」という順番です。相手から見ると、「横浜と戦った次の節は大分と戦う」という事です。ん〜、循環対戦法則の匂いがプンプンしますね。実にわかりやすい。
そこで、この表の6〜11節は順番を変えずに、その前後の節を入れ替えて、「横浜→大分」の対戦順を整理してみる事にしましょう。


【図2】

というわけで、6〜11節を確保しつつ、「対戦循環」の一部(=「横浜→大分」の順番)が明確になるように試行錯誤しながら縦横を並べ替えたのが【図2】。この並べ替えがきれいに決まるかどうかで、この先が簡単になります。というか、ここまでくれば解読はできたも同然です。

さて、どうやっても「横浜→大分」の法則を守れないのが、当事者である横浜と大分(あたりまえ)、そして東京Vです。横浜は、「東京V→大分」、大分は「横浜→東京V」であり、いずれも、「自チームと対戦する順番の場合は東京Vと対戦」です。
これは、対戦循環の法則の3番目による現象と考える事ができます。

ここまでの検証で、どうやら対戦循環の法則が適用されている(らしい)事がわかってきました。その順番は、「横浜→大分→市原→仙台→磐田→京都→C大阪→名古屋→鹿島→東京→柏→浦和→清水→神戸→G大阪(→横浜)」と推測する事ができます。東京V以外のチームは、対戦循環が自チームの場合は東京Vと置き替えることによって、この循環が完成するはずです。
もし、日程が判明している第1節を壊さずに循環が完成すれば、この解読の精度は高いという事が言えるはずです。


【図3】

対戦循環の法則を全チームに当てはめてみた結果が【図3】です。
するとどうでしょう。第1節を壊す事なく、表が全て埋まりました。

これで対戦循環が完成したわけですが、実際の対戦節は、また別の話です。【図2】で節を入れ替えた結果できたのが【図3】ですから、これを元に戻してあげないと、実際の対戦順は見えてこないわけです。
今回の企画のように表計算でも使えば簡単に節を入れ替える事ができて、一気に【図5】が完成しますが、理屈だけでも対戦節を解読するのは可能です。

【図3】のいちばん上にある「節」に注目してみましょう。「4→5→2→1→12→13→6→7→8→9→10→11→15→14→3(→4)」が、実際の対戦節です。判明している第1節の対戦相手を「1」として、あとは対戦循環に沿って各節に相手を割り当てていけば、全ての対戦カードが解読できます。
例えば、浦和は開幕戦が鹿島戦なので、「1」が鹿島となり、「第1節:鹿島→第12節:FC東京→第13節:柏→第6節:東京V(浦和)・・・第2節:名古屋」となります。これを対戦節で並べ替えると「第1節:鹿島→第2節:名古屋・・・第14節:仙台→第15節:市原」となって、実際の対戦順が予測できるわけです。このへん、文章での説明は難しいんですが・・・


【図4】

次は、ホーム&アウェイを決めていく作業です。これは単純に、対戦循環に「ホームとアウェイは交互」の法則で機械的に決めていく事ができます。

【図3】の縦方向をアウェイ開幕8チーム/ホーム開幕8チームで並べ替え、開幕節を基点にホームとアウェイを並べてみたのが【図4】。
ただし、東京Vとの対戦は、ホーム開幕ならホームに、アウェイ開幕ならアウェイとします。こうしないと、例えばホーム開幕であれば「ホーム開幕なのにホーム開催が7試合」という状況になり、これでは「開幕節を除く14試合でホームが6試合」となってしまい、バランスを欠いてしまうからです。アウェイ連戦が少なくとも2度は入ってしまいますから・・・。

ここで話を難しくするのは、運用面の事情です。
それは例えば「ダービー該当チームは、同じ節にホームゲームは行わない」みたいな事ですが、これはダービー該当チームの開幕をホームとアウェイに分散させる事によってある程度回避できます。が、今でも東京・千葉・静岡・大阪にダービーがあって、今後は茨城・埼玉・横浜にも可能性があるとなると、どうなるでしょうか。
さらに、「ある期間、あるスタジアムは使用できない」みたいな状況を把握して読み切る事は、一般人には難しいでしょう。今回は掲載していませんが、J2の山形(あるいはドームがなかった去年までの札幌)などはその例です。


【図5】

・・・と、何やら面倒っぽい作業も、表計算があればハイできあがり。

【図5】が、対戦循環を実際の開催節で並び替えた、1stステージの完全な日程です。去年の年間総合順位で縦方向も並べ替えたので見た目がガラっと変わってしまいましたが、内容は【図4】と同じです。やり方がわかってしまえば、それほど時間はかからないと思います。私は【図1】を作り始めてから3時間程度でここまでたどり着きました。


【図6】

ところで、この日程予想、WEB上では解読のキーが出揃ってから15時間後くらいに出回りました。
そこでの予想は、私のとは見掛けが違っていて、対戦循環は「磐田→仙台→市原→大分→横浜→G大阪→神戸→清水→浦和→柏→FC東京→鹿島→名古屋→C大阪→京都(→磐田)」、対戦順は「1→2→5→4→3→14→15→11→10→9→8→7→6→13→12(→1)」というものでした。考え方としては、【図6】のような経緯で解読していったと思われます。私の方法(【図3】)とは循環の方向が逆。基点も違う。でも、最終的な結果は同じ。つまり、正解を導き出すための試行錯誤のパターンは無数にあるわけですね。


【図7】

【図7】は2ndステージの予測です。

これは横浜のみ全日程が判明している時点で作成したものですが、1stステージと2ndステージは同じ対戦循環を使っているという前提にたてば、【図3】の節を横浜の日程に合わせて書き換えてあげるだけでOK。
対戦順は「2→9→14→15→10→11→12→13→3→4→5→6→7→8→1(→2)」となり、これまた浦和を例に取ると、開幕節が磐田戦なら、対戦循環を当てはめることによって最終節は鹿島戦である事が推測できます。

ホーム&アウェイの関係は、1stステージの裏返しとなりますから、特に説明の必要はありませんね。


【図8】

カップラーメンの出来上がりを待っている間に【図7】の節を並べ直したのが【図8】です。2ndステージの日程が完成しました。

とまぁ、こんな感じで日程を解読していくわけですが、その予測が正しかったかどうかは、以下を確認するべし。結論を言うと、正解率100%です。

J1−1stステージ公式日程
J1−2ndステージ公式日程

しかしまぁ、この企画の何が情けないって、公式発表の前にアップできなかった事ですな(涙)。

ホームに戻る