1 スポーツスケジューリング問題 公平なリーグ戦スケジュールについて ver. 1.0 東京大学 宮代隆平 東京大学 松井知己 卒論に! 1993とは? 2 1993年のJリーグ前半戦のスケジュール 1993年のJリーグ前半戦 1 2 3 4 5 6 7 8 9101112131415161718 K: N F E V G J M R S F N V G J M R S E V: M J S K R E F N G J M K R E F N G S M: V G N S J R K E F G V S J R K E F N E: F S K G N V J M R S F G N V J M R K J: S V G R M K E F N V S R M K E F N G S: J E V M F N R G K E J M F N R G K V F: E K R N S G V J M K E N S G V J M R G: R M J E K F N S V M R E K F N S V J N: K R M F E S G V J R K F E S G V J M R: G N F J V M S K E N G J V M S K E F 読み方 3 1993年Jリーグ 1993年:Jリーグ開幕(前半戦) 10チーム2重総当たりリーグ戦 K:鹿島アントラーズ(予想5位) V:ヴェルディ川崎(予想2位) M:横浜マリノス(予想1位) E:清水エスパルス(予想3位) J:ジェフユナイテッド市原 S:サンフレッチェ広島 F:横浜フリューゲルス G:ガンバ大阪 N:名古屋グランパスエイト(予想4位) R:浦和レッドダイヤモンズ 2重総当り戦とは? 4 1993年のJリーグ前半戦のスケジュール 2重総当りリーグ戦 1 2 3 4 5 6 7 8 K: N F E V G J M R V: M J S K R E F N M: V G N S J R K E E: F S K G N V J M J: S V G R M K E F S: J E V M F N R G F: E K R N S G V J G: R M J E K F N S N: K R M F E S G V R: G N F J V M S K 9101112131415161718 S F N V G J M R S E G J M K R E F N G S F G V S J R K E F N R S F G N V J M R K N V S R M K E F N G K E J M F N R G K V M K E N S G V J M R V M R E K F N S V J J R K F E S G V J M E N G J V M S K E F 読み方 5 2重総当りリーグ戦 チーム数2N(チーム数は偶数) 各チーム対は, 双方のホームグラウンドで1回ずつ (計2回)戦う. 各試合日に N 試合を平行して行う. 2(2N -1)試合日ですべての試合が終了する. 4チームのスケジュール 1 A:C B:D C:A D:B 2 D C B A 3 B A D C 4 D C B A 5 B A D C 6 C D A B BとDは第1試合日を Bの本拠地で戦う. 6 スケジュールの見方 計10チーム 各日に5試合行い,18試合日で2重総当りリーグ戦を行う. 各チーム対は,双方のホームグラウンドで1回ずつ戦う. RとGは第1試合日をRの本拠地で戦う.奇数試合日は週末. K: V: M: E: J: S: F: G: N: R: 1 N M V F S J E R K G 2 F J G S V E K M R N 3 E S N K G V R J M F 4 V K S G R M N E F J 5 G R J N M F S K E V 6 J E R V K N G F S M 7 M F K J E R V N G S 8 R N E M F G J S V K 9101112131415161718 S F N V G J M R S E G J M K R E F N G S F G V S J R K E F N R S F G N V J M R K N V S R M K E F N G K E J M F N R G K V M K E N S G V J M R V M R E K F N S V J J R K F E S G V J M E N G J V M S K E F ミラーリング 7 ミラーリング 1 A:C B:D C:A D:B 2 D C B A 3 B A D C 4 D C B A 5 B A D C 6 C D A B 前半2N -1試合を作れば,後半2N -1試合は, 前半のスケジュールの試合場を交代した ものを付ければ良い. 8 1993年前半戦スケジュールのミラーリング K: V: M: E: J: S: F: G: N: R: 1 N M V F S J E R K G 2 F J G S V E K M R N 3 E S N K G V R J M F 4 V K S G R M N E F J 5 G R J N M F S K E V 6 J E R V K N G F S M 7 M F K J E R V N G S 8 R N E M F G J S V K 9101112131415161718 S F N V G J M R S E G J M K R E F N G S F G V S J R K E F N R S F G N V J M R K N V S R M K E F N G K E J M F N R G K V M K E N S G V J M R V M R E K F N S V J J R K F E S G V J M E N G J V M S K E F イタリアセリエAのミラーリングは,平行移動. 問題点 9 2001年のJリーグ前半戦のスケジュール(1重総当たり戦) 16TEAMS 磐田 : 市原 : 名古屋: 浦和 : C大阪 : 札幌 : 福岡 : G大阪 : 横浜FM: 神戸 : F東京 : 東京V : 柏 : 清水 : 鹿島 : 広島 : 1 2 3 4 5 6 7 8 9 101112131415 市広FT鹿CO名浦GO清札柏福横TV神 磐名柏福横FT鹿広TV神GO清札浦CO 浦市横FT鹿磐CO神GO清札柏福広TV 名CO福横FT鹿磐TV神GO清札柏市広 札浦鹿GO磐清名福広横TVFT神柏市 CO柏広TV神GO清FT鹿磐名浦市福横 GO清浦市広TV神CO横FT鹿磐名札柏 福横神CO清札柏磐名浦市広TVFT鹿 神GO名浦市広TV柏福COFT鹿磐清札 横FTGO清札柏福名浦市広TVCO鹿磐 TV神磐名浦市広札柏福横CO鹿GO清 FT鹿清札柏福横浦市広CO神GO磐名 清札市広TV神GO横FT鹿磐名浦CO福 柏福TV神GOCO札鹿磐名浦市広横FT 広TVCO磐名浦市清札柏福横FT神GO 鹿磐札柏福横FT市COTV神GO清名浦 読み方 10 総当りリーグ戦とグラフ 各チームを頂点とする完全グラフ. 各枝は試合に対応する. 各試合日には,全てのチームが1試合を戦う. 各試合日の試合は,グラフ上の完全マッチング. F F A E A E B D B D C C 11 総当り戦とマッチング F F A B E D B A5 E A B D B C E A D B 1 C C F F A F 2 C F E A D B ミラーリング 3 E D C 12345 678910 A:B C D E F B C D E F B:A D F C E A D F C E C:F A E B D F A E B D D:E B A F C E B A F C E:D F C A B D F C A B F:C E B D A C E B D A E 4 C D 12 うまく行かない例 F F A E B D 残った試合は C F F A B E 1 D C A B 2 C E A D B A E B D F 3 C E D C 12345 A:B D C B:A F E C:F E A 後2日では終わらない D:E A F E:D C B F:C B D 13 円盤の回転 以下のような円盤を回して,試合を決める. A A B E E F D B E D A B E F F C A B E F A C D 12345 A:F C E B D B:E F D A C C:D A F E B D:C E B F A E:B D A C F F:A B C D E C D C F D B C 12チームの場合 このまま回転を続ける‥‥. 実際のスケジュールは? 14 総当りリーグ戦の作り方 ホームゲーム・アウェイゲームを決める. A A B E E F D B E D A B E F F C A B E F A C 12345 A:F C E B D B:E F D A C C:D A F E B D:C E B F A E:B D A C F F:A B C D E D C D アウェイ ゲームチーム C D F B C ホーム ゲームチーム 実際のスケジュールは? 15 2重総当りリーグ戦の簡単な作り方(円盤+ミラーリング) 6チーム(A,B,...,F)の例(試合数は 10) アウェイ ゲームチーム A A B E E F D A E D D C D D A B E B E C B E D C A F F C A C D F B F F C B E A B E F B E A F D A F C ホーム ゲームチーム D A C ミラーリング B E B F C D C 実際のスケジュールは? 16 2重総当りリーグ戦の簡単な作り方(対戦表) (ミラーリング) 12345678910 A:F C E B D F C E B D B:E F D A C E F D A C C:D A F E B D A F E B D:C E B F A C E B F A E:B D A C F B D A C F F:A B C D E A B C D E 白(ホームゲーム)や 黄(アウェイゲー ム) が連続しないのが好ましい. 17 1993年のJリーグ前半戦のスケジュールの問題点 例:3連続アウェイゲームがある. 1 2 3 4 5 6 7 8 9101112131415161718 K: N F E V G J M R S F N V G J M R S E V: M J S K R E F N G J M K R E F N G S M: V G N S J R K E F G V S J R K E F N E: F S K G N V J M R S F G N V J M R K J: S V G R M K E F N V S R M K E F N G S: J E V M F N R G K E J M F N R G K V F: E K R N S G V J M K E N S G V J M R G: R M J E K F N S V M R E K F N S V J N: K R M F E S G V J R K F E S G V J M R: G N F J V M S K E N G J V M S K E F K:鹿島アントラーズ M:横浜マリノス 本) J:ジェフユナイテッド市原 F:横浜フリューゲルス(熊 望ましい 18 Home-Away Table (HAT) Home-Away Table (HAT) 試合の開催地の情報のみを表したもの 1 1:3 2:4 3:1 4:2 2 2 1 4 3 3 4 3 2 1 スケジュール 1 1:A 2:A 3:H 4:H 2 A H A H 3 H A H A A:アウェイゲーム H:ホームゲーム HA-パターン: HAT の各行 対応する HAT HAT の性質を探る 19 1993年のJリーグ前半戦のスケジュール(HAT) K: V: M: E: J: S: F: G: N: R: 1 H H A A A H H H A A 2 H A H H H A A A A H 3 A A A H A H H H H A 4 A H A A H H A H H A 5 H A H H A A H A A H 6 H A A H A A H A H H 7 A H H A H H A H A A 8 H A A H A A H H H A 9101112131415161718 A A A H A A H A H H H H A A H H A H A H H A H H A H A H A H A A H H A A H A H A H A H A H H A H A H H H A A H H A H A A A H A H A A H A H A A H A A H H A A H A A H H A H A H A H A H A H H A A H H A H 望ましい 20 Basic Properties of HAT HAT は以下の性質を満たす (1)各スロットにおいて, (# of A) = (# of H) 1 2 3 1:A A H 2:A H H 3:H A H 4:H H A (2)HA パターンが 同じ行は存在しない 1:AHHAH → この2チームは 2:AHHAH 対戦できない 21 Infeasible HAT 前述の2つの性質を満たすHATは 対応するスケジュールがあるか? → NO 1 1:A 2:A 3:A 4:H 5:H 6:H 2 H H H A A A 不能 HAT 3 H A A A H H 4 A A H H H A 5 H 1-2, 2-3, 3-1 の戦いは H スロット 3か 4 H A → このHATに A 対応する A スケジュールは 存在しない 22 Undesired HAT 下記のHATは対応するスケジュールが存在する 12345 12345 1:A A A A A 1:6 2 4 5 3 2:A H A H A 2:3 1 6 4 5 3:H H A A H → 3:2 4 5 6 1 4:H A H A A 4:5 3 1 2 6 5:A A H H H 5:4 6 3 1 2 6:H H H H H 6:1 5 2 3 4 許容 HAT しかしながら,上記のスケジュールは良いものではな い. (連続するアウェイゲームは好まれない) 23 Definition of Breaks ブレーク:連続する A または H (以下では下線で表 示) 12345 1:A A A A A 2:A H A H A 3:H H A A H 4:H A H A A 5:A A H H H 6:H H H H H →14 12345 1:A H H A A 2:H H H A H 3:A H A H A 4:H A A H H 5:A A H A H 6:H A A H A → 8 HATの公平性をブレークの数で測る. (ブレーク数が少ない方が良い) 24 1993年のJリーグ前半戦のスケジュール(ブレーク数) 1 H H A A A H H H A A 2 3 4 5 6 7 8 9101112131415161718 K: H A A H H A H A A A H A A H A H H V: A A H A A H A H H A A H H A H A H M: H A A H A H A H A H H A H A H A H E: H H A H H A H A A H H A A H A H A J: H A H A A H A H A H A H H A H A H S: A H H A A H A H H A A H H A H A A F: A H A H H A H A H A H A A H A H A G: A H H A A H H A H A A H H A A H A N: A H H A H A H A H H A H A H A H A R: H A A H H A A H A H H A A H H A H 2 2 6 0 8 0 2 0 4 2 6 0 8 0 2 0 2 週2試合のため,週日と週末がある. 7 5 2 5 2 6 2 6 3 6 43 望ましい 25 2001年のJリーグ前半戦のスケジュール 磐田 : 市原 : 名古屋: 浦和 : C大阪 : 札幌 : 福岡 : G大阪 : 横浜FM: 神戸 : F東京 : 東京V : 柏 : 清水 : 鹿島 : 広島 : H A H A H A H A H A H A H A H A 0 A H H H A H H H A H H A A A H A A A H H A A H H A A H A A A H H 010 A A A A A H H H H A H A H H H A 0 H H H H A A A H A H A H A A A H 2 H A A A H H H A H A H A H A H A 2 A H H H A A A H A H A H A H A H 0 H H H H H A A A H A H A A A H A 6 A A A A A H H H A H A H H H A H 0 H H H H H A A A A A H A A A H H 2 A A A A A H H H H H A H H H A A 0 H H H H H A A A A A A H A A H H 2 A A A A A H H H H H H A H H A A 0 H H H A H A H A H A H A A A H A 6 A 1 H 3 A 1 A 4 A 1 H 1 A 3 H 1 A 3 H 1 A 3 H 3 H 2 H 1 A 1 H 3 2 32 読み方 26 Equitable HAT ブレーク数の意味で最も良いHATは? (ブレーク数が少ない方が良い.) ブレーク最小 HAT [de Werra’80] 補題:ブレーク数の最小値 ≧ チーム数-2 証明:ブレークの無いHA-パターンは2つ AHAHAHAHAHAHA HAHAHAHAHAHAH 許容HATの行は互い異なるHAパターンを持つ. 2チームはブレークを持たない. 他のチームは1つ以上のブレークを持つ. 27 2001年のJリーグ前半戦のスケジュール 磐田 : 市原 : 名古屋: 浦和 : C大阪 : 札幌 : 福岡 : G大阪 : 横浜FM: 神戸 : F東京 : 東京V : 柏 : 清水 : 鹿島 : 広島 : H A H A H A H A H A H A H A H A 0 A H H H A H H H A H H A A A H A A A H H A A H H A A H A A A H H 010 A A A A A H H H H A H A H H H A 0 H H H H A A A H A H A H A A A H 2 H A A A H H H A H A H A H A H A 2 A H H H A A A H A H A H A H A H 0 H H H H H A A A H A H A A A H A 6 A A A A A H H H A H A H H H A H 0 H H H H H A A A A A H A A A H H 2 A A A A A H H H H H A H H H A A 0 H H H H H A A A A A A H A A H H 2 A A A A A H H H H H H A H H A A 0 H H H A H A H A H A H A A A H A 6 A 1 H 3 A 1 A 4 A 1 H 1 A 3 H 1 A 3 H 1 A 3 H 3 H 2 H 1 A 1 H 3 2 32 読み方 28 2001年のJリーグ後半戦のスケジュール 磐田 : 市原 : 名古屋: 浦和 : C大阪 : 札幌 : 福岡 : G大阪 : 横浜FM: 神戸 : F東京 : 東京V : 柏 : 清水 : 鹿島 : 広島 : H H H H H A A A H A H A A A H A 0 A A A A A H H H A H A H H H A H 0 H A H H H A H A H A H A A A H A 2 A H A A A H A H A H A H H H A H 0 H A A A H H H A H A H A H A H A 4 A H H H A A A H A H A H A H A H 0 A A A A H H H A H A H A H H H A 2 H H H H H A A A A H A H A A A H 2 A A A A A A A A A A H H H H H H H H A H H A A H H H H H H A A A 012 H H H H H A A A A A H A A A H H 0 A A A A A H H H H H H A H H A A 2 H H H H H A A A A A A H A A H H 0 H A H A H A H A H A H A H A H A 8 A 3 H 2 A 3 H 2 A 3 H 3 A 2 H 3 A 1 H 1 A 1 H 1 A 2 H 3 A 1 H 1 0 32 読み方 29 セリエA2000/2001シーズン(2重総当たり戦) Atlanta : Bari : Bologna : Brescia : Fiorentina: Inter : Juventus : Lazio : Lecce : Milan : Napoli : Parma : Perugia : Reggina : Roma : Udinese : Verona : Vicenza : HAAHAHAHAHAHHAHAH HAHAHHAHAHAHAAHAH AHAHAHHAHAHAHAHAH AHHAHAHAAHAHAHAHA AHAHHAHAAHAHAHAHA AHAHAHHAHAHAAHAHA AHAHAHAHAHAAHHAHA AHAHHAHAHAHAHAHAH AHAHAAHAHAHAHHAHA HAHAHAAHAHAHHAHAH HAHAHAHAHAHHAAHAH HAAHAHAHHAHAHAHAH HAHAAHAHHAHAHAHAH HAHAHAAHAHAHAHAHA HAHAAHAHAHAHAHAHA HAHAHAHAHAHHAHAHA AHHAHAHAHAHAAHAHA AHHAHAHAHAHAAHAHA AHHAHAHAHAHAAHAHA AHAHAAHAHAHAHHAHA HAHAHAAHAHAHAHAHA HAAHAHAHHAHAHAHAH HAHAAHAHHAHAHAHAH HAHAHAAHAHAHHAHAH HAHAHAHAHAHHAAHAH HAHAAHAHAHAHAHAHA HAHAHHAHAHAHAAHAH AHAHAHHAHAHAAHAHA AHAHAHAHAHAAHHAHA AHHAHAHAAHAHAHAHA AHAHHAHAAHAHAHAHA AHAHAHHAHAHAHAHAH AHAHHAHAHAHAHAHAH AHAHAHAHAHAAHAHAH HAAHAHAHAHAHHAHAH HAAHAHAHAHAHHAHAH 30 セリエA2000/2001シーズン(2重総当たり戦) Atlanta : Bari : Bologna : Brescia : Fiorentina: Inter : Juventus : Lazio : Lecce : Milan : Napoli : Parma : Perugia : Reggina : Roma : Udinese : Verona : Vicenza : HAAHAHAHAHAHHAHAHAHHAHAHAHAHAAHAHA HAHAHHAHAHAHAAHAHAHAHAAHAHAHAHHAHA AHAHAHHAHAHAHAHAHHAHAHAAHAHAHAHAHA AHHAHAHAAHAHAHAHAHAAHAHAHHAHAHAHAH AHAHHAHAAHAHAHAHAHAHAAHAHHAHAHAHAH AHAHAHHAHAHAAHAHAHAHAHAAHAHAHHAHAH AHAHAHAHAHAAHHAHAHAHAHAHAHAHHAAHAH AHAHHAHAHAHAHAHAHHAHAAHAHAHAHAHAHA AHAHAAHAHAHAHHAHAHAHAHHAHAHAHAAHAH HAHAHAAHAHAHHAHAHAHAHAHHAHAHAAHAHA HAHAHAHAHAHHAAHAHAHAHAHAHAHAAHHAHA HAAHAHAHHAHAHAHAHAHHAHAHAAHAHAHAHA HAHAAHAHHAHAHAHAHAHAHHAHAAHAHAHAHA HAHAHAAHAHAHAHAHAAHAHAHHAHAHAHAHAH HAHAAHAHAHAHAHAHAAHAHHAHAHAHAHAHAH HAHAHAHAHAHHAHAHAAHAHAHAHAHAAHAHAH AHHAHAHAHAHAAHAHAHAAHAHAHAHAHHAHAH AHHAHAHAHAHAAHAHAHAAHAHAHAHAHHAHAH 31 セリエA2000/2001シーズン(ホームゲーム) Atlanta : Bari : Bologna : Brescia : Fiorentina: Inter : Juventus : Lazio : Lecce : Milan : Napoli : Parma : Perugia : Reggina : Roma : Udinese : Verona : Vicenza : H H H H H HH H H HH H H H H H H H H HH H H H H H H H H H H HH H H H HH H H H H HH H H H H H H H HH H H H H H H H H H HH H H H H H HH H H H H H H H H HH H H H H H H HH H H H H H H H H H HH H H H H H H H HH H H H H H H HH H H H HH H H H H H HH H H H H H H H H H H H H HH H H H HH H H H H H H H H H H HH H H H H HH H H H H H H H H H HH H H H H H H H HH H H H H HH H H H H HH H H H H H H H H H HH H H H H H HH H H H H H H H H H H H H H H H HH H H H H H H H H H H H H H H HH H H H H H H H H H H H HH H H H H H H H H H H HH H H H H H H H H H H H HH H H HH H H H H H H H H H H H HH H H 030212020022200020202120200132000 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 2 2 33 32 セリエA2000/2001シーズン(アウェイゲーム) Atlanta : Bari : Bologna : Brescia : Fiorentina: Inter : Juventus : Lazio : Lecce : Milan : Napoli : Parma : Perugia : Reggina : Roma : Udinese : Verona : Vicenza : AA A A A A A A A A A A A AA A A A A A A A AA A A A AA A A A A A A A A A A A A A A A AA A A A A A A A A AA A A A A AA A A A A A A A A A AA A A A A A AA A A A A A A A A A A AA A A A A AA A A A A A A A A A AA A A A A A A A AA A A A A A A A A A A AA A A A A A A A A AA A A A A A A A A A A AA A A A AA A A A A A A A A A AA A A A A A A A AA A A A A A A AA A A AA A A A A A A A A A AA A A A A A AA A A A A A A A A AA A A A A A A AA A A A A AA A A A A A A A A AA A A A A A AA A A A A A A A A A A A A A A AA A A A A AA A A A A A A A AA A A AA A A A A A A A A A A A AA A A AA A A A A A A 020212020013200030302120200222000 2 2 1 2 2 2 2 1 2 2 2 2 2 2 2 2 2 2 34 33 セリエA2000/2001シーズン (ブレーク数) Atlanta : Bari : Bologna : Brescia : Fiorentina: Inter : Juventus : Lazio : Lecce : Milan : Napoli : Parma : Perugia : Reggina : Roma : Udinese : Verona : Vicenza : HAAHAHAHAHAHHAHAHAHHAHAHAHAHAAHAHA HAHAHHAHAHAHAAHAHAHAHAAHAHAHAHHAHA AHAHAHHAHAHAHAHAHHAHAHAAHAHAHAHAHA AHHAHAHAAHAHAHAHAHAAHAHAHHAHAHAHAH AHAHHAHAAHAHAHAHAHAHAAHAHHAHAHAHAH AHAHAHHAHAHAAHAHAHAHAHAAHAHAHHAHAH AHAHAHAHAHAAHHAHAHAHAHAHAHAHHAAHAH AHAHHAHAHAHAHAHAHHAHAAHAHAHAHAHAHA AHAHAAHAHAHAHHAHAHAHAHHAHAHAHAAHAH HAHAHAAHAHAHHAHAHAHAHAHHAHAHAAHAHA HAHAHAHAHAHHAAHAHAHAHAHAHAHAAHHAHA HAAHAHAHHAHAHAHAHAHHAHAHAAHAHAHAHA HAHAAHAHHAHAHAHAHAHAHHAHAAHAHAHAHA HAHAHAAHAHAHAHAHAAHAHAHHAHAHAHAHAH HAHAAHAHAHAHAHAHAAHAHHAHAHAHAHAHAH HAHAHAHAHAHHAHAHAAHAHAHAHAHAAHAHAH AHHAHAHAHAHAAHAHAHAAHAHAHAHAHHAHAH AHHAHAHAHAHAAHAHAHAAHAHAHAHAHHAHAH 050424040035400050504240400354000 4 4 3 4 4 4 4 3 4 4 4 4 4 3 3 3 4 4 67 34 Equitable HAT ブレーク最小 HAT [de Werra’80] 12345 ブレーク数最小値=(チーム数-2) A:F C E B D B:E F D A C 2チームはブレークを持たない C:D A F E B 他のチームは D:C E B F A ちょうど1つのブレークを持つ E:B D A C F F:A B C D E A A B E E F D B E D A B E F F C A B E F A C D C D C D F B C ブレーク最小HATは公平さの観点からは好ましくない. 35 Equitable HAT 均等 HAT [de Werra’80] 各チームが丁度1つのブレークを持つ (総ブレーク数 = 2N) A E D B E F C A B E F D C 12345 A:F C E B D B:E F D A C C:D A F E B D:C E B F A E:B D A C F F:A B C D E A A A BE F B E F B F D C D C D 123451 A:F C E B D F B:E F D A C E C:D A F E B D D:C E B F A C E:B D A C F B F:A B C D E A 均等HATの性質について探る! (ブレーク最小HATとほぼ同じ!?) C 36 補完パターン 均等HATの各行(HA-パターン)は下記のよう にブレークが1つあるもの. HAHAHAHAHHAHAHA :HA-パターン AHAHAHAHAAHAHAH :補完パターン 補題:均等許容HATがあるHA-パターンを含む ならば,その補完パターンも含む. 証明: (背理法) s あるパターン: ‥‥‥‥AHAAHA‥‥‥‥‥ ‥‥‥‥HAHAHA‥‥AA ‥ ‥‥‥‥HAHAHA ‥ HH‥‥ ‥‥AA‥AHAHAH‥‥‥‥‥ sスロットとs+1スロットのHとAの数が異なる.矛盾. 37 Example of Equitable HAT 12345 1:A A H A H 2:A H H A H 3:A H A H H 4:H H A H A 5:H A A H A 6:H A H A A 12345 1:A A H A H 2:A H H A H 3:A H A A H 4:H H A H A 5:H A A H A 6:H A H H A 均等HATは(補完パターンを含んでいて も)許容HATであるとは限らない. 38 Opening and Closing Condition HA-パターン… AA または HH で始まるならば HA-パターン は 開幕条件を満たさない と言う. AA または HHで終わるならば HA-パターン は 閉幕条件を満たさない と言う. 上記のような HA-パターン は,閉開幕におけ る観客の動員数に悪影響を与える. ミラーリングを施した後,3連続 A または H が出現する. 39 Consideration of Mirroring 均等 HAT が以下の HA-パターン を含むなら (AA…), (HH…), (…AA), (…HH), ミラーリングをして得られる HAT は 3 連続の A(または H) を持つ. AAH…AH → AAH…A H∥HH A…HA, HHA…HA → HHA…H A∥AA H…AH, AHA…HH → AHA… HH∥H AH…AA, HAH…AA → HAH… AA∥A HA…HH, ミラーリング後 40 The Number of Candidates for Feasible HAT 今迄の条件をすべて満たす HAT はいくつあるの か? (1)各日のHとAの数が同じ. (2)同じ行が無い. (3)均等HAT. (4)補完パターンを含む. (5)開閉幕条件を満たす. #teams #HAT 6 0 8 1 #HAT:条件(1)~(5)を満たす 10 6 HAT の数 12 28 許容HATとは限らない 14 120 16 495 → このうち許容HATはいくつ? 18 2002 20 8008 41 Checking Feasibility of HAT 今迄の条件をすべて満たす HAT はいくつあるのか? 与えられた HATが許容HATであるかを判定す る問題を, 整数計画問題に定式化する. この問題はN2(2N-1) 個の0-1 変数を持つ. IP が許容解を持つ ⇔ HAT は許容HATである 42 スケジュールを作る 0-1 整数計画法 HAT 1 B:A A:H C:A D:H 2 A H H A 3 H A A H 4 H A H A 5 H A A H 6 A このHATに対応する, H スケジュールを求めよう. H A (ミラーリング) 1 ( AとBが1日目に戦う), { xAB1 = 0 ( AとBが1日目に戦わない). xAB1 , xAB2 , xAB3 , xAC1 , xAC2 , xAC3 , xAD1 ,xAD2 , xAD3 , xBC1 , xBC2 , xBC3 , xBD1 ,xBD2 , xBD3 , xCD1 , xCD2 ,xCD3 . 43 0-1 整数計画問題 xAB1+xAB2+xAB3 =1, (AとBはどこかで戦う) xAC1+xAC2+xAC3 =1, (AとCはどこかで戦う) xAD1+xAD2+xAD3 =1, (AとDはどこかで戦う) ‥‥ xCD1+xCD2+xCD3 =1, (CとDはどこかで戦う) xAB1+xAC1+xAD1 =1, (1日目Aは誰かと戦う) xAB1+xBC1+xBD1 =1, (1日目Bは誰かと戦う) xAC1+xBC1+xCD1 =1, (1日目Cは誰かと戦う) ‥‥ xAD3+xBD3+xCD3 =1, (3日目Dは誰かと戦う) xAC2=xAC3=xAD1=xBC1=xBD2=xBD3= 0, } } 4C2=6本 4×3=12本 残りの変数(12個)は,0または1を取る. スケジュールを全部見つける=上記を満たすもの全て見つける 0-1整数計画法 :0-1変数12個,等式18本. 44 The Number of Candidates for Feasible HAT #teams #cand.(#vars.) 6 0 (45) #cand.: 開閉幕条件を満たす 8 1 (112) 均等HATの数 10 6 (225) (許容HATの候補数) 12 28 (396) 14 120 (637) #vars. : 対応する整数計画問題 16 495 (960) の0-1変数の数 18 2002 (1377) (チーム数 2N , 変数 N2(2N- 1)) 20 8008 (1900) すべてのIPを解くのは非現実的! 45 Triple Break Constraints 与えられた HAT に,スロットs, s+1, s+2 にブ レークが在る3行の HA-パターン があるなら ば, AHA AH AH AHA HH AH AHA HA AH 与えられた HAT は不能! 与えられた HAT が上記のような 3つの HA-パターン を含んでいるかのチェックは IPを解くより容易である. 3連続ブレーク条件 46 Applying Triple Break Constraints #teams #cand. #tri. 6 0 0 8 1 0 10 6 0 12 28 1 14 120 4 16 495 15 18 2002 50 20 8008 161 #cand.: 許容HATの候補数 #tri.: 許容HATの新たな候補数 for feasible HAT (3連続ブレーク条件を適用) 許容HATの候補数は非常に減る. (上記の3連続ブレーク条件のチェックは1分以下) 47 The Number of Feasible HAT #teams #triple (#vars.) #feasible 6 0 (45) 0 8 0 (112) 0 CPU: Pentium II 10 0 (225) 0 400 MHz, 12 1 (396) 0 OS: Windows 98, 14 4 (637) 0 RAM: 128MB, 16 15 (960) 1 IP Solver: 18 50 (1377) 0 ILOG OPL Studio 3.0 20 161 (1900) 4 CPLEX 総計算時間 : 3.5 時間 48 Results of Experiment 許容HATの数は 非常に少ない. チーム数 ∈{6, 8, 10, 12, 14, 18}については, 許容 HATは存在しない (チーム数 = 16) → 1 HAT (チーム数 = 20) → 4 HAT 現実的な計算時間 (3.5 時間) 49 Unique Feasible HAT (16 teams) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1:A H H A H A H A H A H A H A H 2:A H A A H A H A H A H A H A H 3:A H A H A A H A H A H A H A H 4:A H A H A H H A H A H A H A H 5:A H A H A H A H A A H A H A H 6:A H A H A H A H A H H A H A H 7:A H A H A H A H A H A H H A H 8:A H A H A H A H A H A H A A H 9:H A A H A H A H A H A H A H A 10:H A H H A H A H A H A H A H A 11:H A H A H H A H A H A H A H A 12:H A H A H A A H A H A H A H A 13:H A H A H A H A H H A H A H A 14:H A H A H A H A H A A H A H A 15:H A H A H A H A H A H A A H A 16:H A H A H A H A H A H A H H A 50 Conclusion & Future Work 結論 現実的なチーム数 (20以下) においては,設定 した性質を満たす許容HATは非常に少ない. HATすべての許容性をチェックする問題は,適 切な制約を導入することにより,現実的な計 算時間で可能となる. 今後の研究 一般のHATに対する算法の設計 (均等とは限 らないHAT) どんなスケジュールが欲しいのか? 51 スポーツスケジューリングの研究を発展させるために ホームページの公開 : 簡略ページ ・ 詳細ページ 研究発表 統計研, 南山大学, 文教大学, 東京大学, 班会議 関連記事の雑誌掲載 サーベイ: 松井知己, 「スポーツのスケジューリング」, オペレーションズリサーチ,44 (1999), 141-146. 入門編: 宮代隆平, 松井知己, 「1993年Jリーグの再スケジューリング」, オペレーションズ・リサーチ, 45 (2000), 81-83. 関連研究(者)の交流 東大, 筑波大, 東京理科大, 中央大, 東海大 応用から実務へ? どんな目的関数?モデル化 52 おわり 53 1993年のJリーグ前半戦のスケジュール 2重総当りリーグ戦(原本) 1 2 3 4 5 6 7 8 9101112131415161718 K: N F E V G J M R S F N V G J M R S E V: M J S K R E F N G J M K R E F N G S M: V G N S J R K E F G V S J R K E F N E: F S K G N V J M R S F G N V J M R K J: S V G R M K E F N V S R M K E F N G S: J E V M F N R G K E J M F N R G K V F: E K R N S G V J M K E N S G V J M R G: R M J E K F N S V M R E K F N S V J N: K R M F E S G V J R K F E S G V J M R: G N F J V M S K E N G J V M S K E F 54 今後の課題 手作業の部分は,問題例依存の性質を用いている. 1993年を選んだのは10チームと少なかったから. 今回の方法では16チームは無理! 1999年:2リーグ制 J1:16チーム.試合は週末のみ.(1重)総当り戦. J2:10チーム.試合は週末のみ.4重総当り戦. 入っていない因子: TV放映.グラウンド使用可能日.チーム移動費 用? 消化試合を減らす(好カードを後に残す). Nemhauser and Trick の open problem 与えられたhaテーブルに対応するタイムテーブルはある か? NP-complete?
© Copyright 2024 ExpyDoc