© J. Christopher Beck Lecture 21: Sports Scheduling 1
© J. Christopher Beck Outline ACC Basketball Scheduling HAPs Algorithm Flow Chart Single Round Robin Scheduling HAPs again Alg Example
© J. Christopher Beck Readings P Ch 10.6,10.2 Questions 10.1, 10.2, 10.4, 10.5, 10.6, 10.8
© J. Christopher Beck ACC Scheduling Atlantic Coast Conference Basketball 9 teams: Clem, Duke, FSU, GT, UMD, NC, NCSt, UVA, Wake Double Round Robin Home and Away Total # of games to be played? What is the maximum # of games per slot? And, therefore the # of slots? 2 slots/week: weekday & weekend
© J. Christopher Beck Constraints & Preferences No team should play more than two Home or two Away games consecutively A Bye is considered an Away game No team should play more than two consecutive weekends Away or at Home Each team must have at least 2 Home or 1 Home, 1 Bye in the first 5 weeks
© J. Christopher Beck More Constraints & Preferences No team can be Away for both slots in the final week Final weekend is usually reserved for “rival” pairings Duke-UNC, Clem-GT, NCSt-Wake, UMD- UVA Duke-UNC must appear in slots 9 and 18 Even with only 9 teams this is a hard problem. Try to decompose the solving into sub-problems.
© J. Christopher Beck Mirroring Since it is a double RR, we can halve the problem size by finding a single RR and “mirroring” the second half Perfect mirroring not always possible Team Team 2-43 Team 3-24 Team
© J. Christopher Beck Home Away Patterns (HAPs) Each team has a pattern of Home & Away games: HAHAAHHAAH …, AAHHAHHA …, etc. First (Step 1) find of a set of HAPs Independent of the teams – just find strings of Hs, As, (and maybe Bs) Then (Step 2) match patterns to games and finally (Step 3) assign the teams
© J. Christopher Beck Of Course it is More Complicated in the Real World Find feasible patterns Find pattern sets Assign games Assign teams to patterns Choose final schedule 38 patterns of length pattern sets 826 timetables17 schedules Step 1 Step 2Step 3 Figure 10.3
© J. Christopher Beck Something a Bit Easier Complete the single RR timetable Don’t worry about Home/Away games slot12345 Team abfc Team baf Team cdea Team dce Team efdc Team feab Does this remind you of anything?
© J. Christopher Beck Home & Away Now take the full time table and add Home/Away games slot12345 Team abfc Team baf Team cdea Team dce Team efdc Team feab Minimize breaks Break: two consecutive Home or two consecutive Away games
© J. Christopher Beck Single Round Robin Tournament Assume n teams and that n is even Every team plays every other team It is possible to construct a schedule with n-1 slots each with n/2 games
© J. Christopher Beck IP for Simple Single RR Each team plays exactly once in each slot Each team plays each other team exactly once Pure IP model x ijt = 1 iff team i plays at home against team j in slot t
© J. Christopher Beck CP for Simple Single RR x it = team that team i plays in slot t x it є {1,…,n} x it ≠ i x it = j x jt = i all-different(x i ) slot12345 Team a Team b Team c Team d Team e Team f all-different e b
© J. Christopher Beck Simple RR Model Is Too Simple No optimization function No balancing of Away/Home games This motivates the introduction of HAPs and the definition of breaks Recall: a break is two consecutive games that are both Home or both Away
© J. Christopher Beck What if n is Odd? One team gets a Bye in every slot HAPs get more complex String of Hs, As, & Bs Breaks need to be redefined
© J. Christopher Beck Alg Step 1: Find a collection of n HAPs Step 2: Assign a game to each entry in the pattern set Step 3: Assign teams to patterns Why do we need (at least) n HAPs?
© J. Christopher Beck Alg Step 1: Find a collection of n HAPs Step 2: Assign a game to each entry in the pattern set Step 3: Assign teams to patterns Create a 5 team single round robin Minimize breaks (at which step?) Now create a double RR schedule
© J. Christopher Beck Next Week We start to read some papers These are real papers, published in the research literature. You should not expect to completely understand them in the first reading. You should read them (at least once) before lecture and (at least once) after. 1 next week, 2 week after, 1 more later