© J. Christopher Beck 20051 Lecture 21: IP and CP Models for Sports Scheduling.

Slides:



Advertisements
Similar presentations
1 Material to Cover  relationship between different types of models  incorrect to round real to integer variables  logical relationship: site selection.
Advertisements

1 Constraint Satisfaction Problems A Quick Overview (based on AIMA book slides)
ICS-271:Notes 5: 1 Lecture 5: Constraint Satisfaction Problems ICS 271 Fall 2008.
© J. Christopher Beck Lecture 17: Tabu Search.
MS 101: Algorithms Instructor Neelima Gupta
Michael Trick Tepper School, Carnegie Mellon Combinatorial Benders’ Cuts for Sports Scheduling Optimization.
ROUND ROBIN SCHEDULING BY NAGA SAI HANUMAN.POTTI.
Lecture 10: Integer Programming & Branch-and-Bound
Lake Highlands Soccer Association Game Scheduling Sherif Khalifa Senior Design Project May 9, 2008.
Excursions in Modern Mathematics, 7e: Copyright © 2010 Pearson Education, Inc. 15 Chances, Probabilities, and Odds 15.1Random Experiments and.
1 Constraint-based Round Robin Tournament Planning Martin Henz National University of Singapore.
Sports Scheduling An Assessment of Various Approaches to Solving the n-Round Robin Tournament Noren De La Rosa Mallory Ratajewski.
1-11 Round Robin Scheduling Round Robin Each entry plays all other entries in their league at least ONCE Wins and losses do not affect participation.
© J. Christopher Beck Lecture 14: Assembly Line Scheduling 2.
May 2004 Minimizing travels by maximizing breaks1/32 Minimizing Travels by Maximizing Breaks in Round Robin Tournament Schedules Celso RIBEIRO UFF and.
Sports Scheduling and the “Real World” Michael Trick Carnegie Mellon University May, 2000.
Finite Automata Great Theoretical Ideas In Computer Science Anupam Gupta Danny Sleator CS Fall 2010 Lecture 20Oct 28, 2010Carnegie Mellon University.
Optimal solution of binary problems Much material taken from :  Olga Veksler, University of Western Ontario
© J. Christopher Beck Lecture 24: Workforce Scheduling 2.
Dynamic Programming1. 2 Outline and Reading Matrix Chain-Product (§5.3.1) The General Technique (§5.3.2) 0-1 Knapsack Problem (§5.3.3)
Approximation Algorithms
© J. Christopher Beck Lecture 20: Sports Scheduling.
Heuristics for the MTTPROADEF, February /49 Heuristics for the Mirrored Traveling Tournament Problem Celso C. RIBEIRO Sebastián URRUTIA.
Non-traditional Round Robin Tournaments Dalibor Froncek University of Minnesota Duluth Mariusz Meszka University of Science and Technology Kraków.
Finite Mathematics & Its Applications, 10/e by Goldstein/Schneider/SiegelCopyright © 2010 Pearson Education, Inc. 1 of 68 Chapter 9 The Theory of Games.
© J. Christopher Beck Lecture 11: Constraint Programming 1.
Linear Programming Applications
© J. Christopher Beck Lecture 22: Local Search for Sports Scheduling.
4.4.2 Combinations of multisets
© J. Christopher Beck Lecture 19: Timetabling with Operator Constraints.
1 Lecture 4 Maximal Flow Problems Set Covering Problems.
Minimum Cost Binary Trees Speaker: Dana Moshkovitz.
Genetic Algorithm.
Tractable Symmetry Breaking Using Restricted Search Trees Colva M. Roney-Dougal, Ian P. Gent, Tom Kelsey, Steve Linton Presented by: Shant Karakashian.
1.3 Modeling with exponentially many constr.  Some strong formulations (or even formulation itself) may involve exponentially many constraints (cutting.
© J. Christopher Beck Lecture 18: Service Scheduling & Timetabling.
Basic Counting Lecture 12: Oct 28. This Lecture We will study some basic rules for counting. Sum rule, product rule, generalized product rule Permutations,
Basic Counting. This Lecture We will study some basic rules for counting. Sum rule, product rule, generalized product rule Permutations, combinations.
© J. Christopher Beck Lecture 25: Hospital Scheduling.
© J. Christopher Beck Lecture 13: Modeling in Constraint Programming.
© J. Christopher Beck Lecture 21: Sports Scheduling 1.
Operational Research & ManagementOperations Scheduling Workforce Scheduling 1.Days-Off Scheduling 2.Shift Scheduling 3. Cyclic Staffing Problem (& extensions)
© J. Christopher Beck Lecture 16: Introduction to Service Scheduling.
Sports Scheduling Written by Kelly Easton, George Nemhauser, Michael Trick Presented by Matthew Lai.
© J. Christopher Beck Lecture 24: Workforce Scheduling.
© J. Christopher Beck Lecture 17: Introduction to Timetabling.
© J. Christopher Beck Lecture 25: Workforce Scheduling 3.
Hard Problems Some problems are hard to solve.  No polynomial time algorithm is known.  E.g., NP-hard problems such as machine scheduling, bin packing,
1 Constraint-based Round Robin Tournament Planning Martin Henz National University of Singapore.
© J. Christopher Beck Lecture 10: (Full) Shifting Bottleneck.
Mathematical Foundations of Computer Science Chapter 3: Regular Languages and Regular Grammars.
Introduction to Integer Programming Integer programming models Thursday, April 4 Handouts: Lecture Notes.
The Selection Algorithm : Design & Analysis [10].
CS 361 – Chapter 10 “Greedy algorithms” It’s a strategy of solving some problems –Need to make a series of choices –Each choice is made to maximize current.
© J. Christopher Beck Lecture 16: Local Search.
The Double Elimination Tournament. Purpose: All contestants remain in championship contention until they lose two games Advantages: A player or team must.
Tools and Techniques Sports and Athletics Focus on the Competitive Format.
1 Graphs Chapters 10.1 and 10.2 University of Maryland Chapters 10.1 and 10.2 Based on slides by Y. Peng University of Maryland.
Timetable Problem solving using Graph Coloring
Discrete Structures for Computer Science
Graphs Chapters 10.1 and 10.2 Based on slides by Y. Peng University of Maryland.
1.3 Modeling with exponentially many constr.
Simple Random Sample A simple random sample (SRS) of size n consists of n elements from the population chosen in such a way that every set of n elements.
Chapters 8.1 and 8.2 Based on slides by Y. Peng University of Maryland
Lecture 23: Workforce Scheduling 1
Basic Counting.
Lecture 9: Tabu Search © J. Christopher Beck 2005.
Greedy Algorithms TOPICS Greedy Strategy Activity Selection
1.3 Modeling with exponentially many constr.
Let us switch to a new topic:
Presentation transcript:

© J. Christopher Beck Lecture 21: IP and CP Models for Sports Scheduling

© J. Christopher Beck Outline Single Round Robin IP Model 3-Step Algorithm Again IP Models for the 3-Step Algorithm CP Models for the 3-Step Algorithm

© 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 one game 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 Recall the (More Complex) Problem Double RR tournament Minimize “breaks” Two consecutive Home or Away games A variety of other constraints and preferences “rival” pairings 2 Home or 1 Home, 1 Bye in first 5 weeks

© J. Christopher Beck Step Approach Step 1: HAPs Find at least n HAPs HAP – string of H, A, B Find a set of n consistent HAPs Step 2: Assign games to HAPs Step 3: Assign teams to HAPs

© J. Christopher Beck ACC Scheduling Solution 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 Step 1: HAPs Create a consistent set of HAPs What’s wrong with these HAPs? slot12345 Team aHAHAA Team bHBAHA Team cAABHH Team dAAHAH Team eBHABA Teams: UofT, Western, Queens, McGill, Waterloo

© J. Christopher Beck Step 1: HAPs List preferred HAPs (and a few others) E.g., All HAPs with 1 or 0 breaks Can you pick a consistent set of 5 HAPs? HAHAB HAHBA HABAH HBHAH BAHAH AHAHB AHABH AHBHA ABAHA BHAHA

© J. Christopher Beck Step 2: Assign Games You’ve got a set of consistent HAPs Match the Hs with the As slot12345 Team aHAHAB Team bHBAHA Team cAABHH Team dBHHAA Team eAHABH Teams: UofT, Western, Queens, McGill, Waterloo

© J. Christopher Beck Step 2: Assign Games You’ve got a set of consistent HAPs Match the Hs with the As slot12345 Team aHAHAB Team bHBAHA Team cAABHH Team dBHHAA Team eAHABH Teams: UofT, Western, Queens, McGill, Waterloo

© J. Christopher Beck Step 2: IP Model S is a set of n consistent HAPs T is the set of slots/rounds x ijt = 1 iff the team with pattern i plays in round t at the site of the team associated with pattern j Only defined if the i th pattern has a A is slot t and the j th pattern has an H F is the set of such triples (i, j, t)

© J. Christopher Beck Step 2: IP Model One game between team with pattern i and team with pattern j Team with pattern i plays at most one game is slot t

© J. Christopher Beck Step 3: Assign Teams to HAPs Map teams to patterns to maximize preferences slot12345 Team aHAHAB Team bHBAHA Team cAABHH Team dBHHAA Team eAHABH UofT Western Queens McGill Waterloo

© J. Christopher Beck Step 3: IP Model y ik = 1 iff team i is assigned to HAP k c ik = cost of team assignment y ik minimize One team assigned to each pattern One pattern assigned to each team

© J. Christopher Beck Constraint Programming Models Double RR with odd n Break is now 3 consecutive Hs or As No breaks are allowed H or B in at least 2 of first 4 rounds No team can be away in both of the final 2 games

© J. Christopher Beck Step 1: CP Model 1 h t, a t, b t – 0,1 variables denoting home, away, bye for a given team in slot t No breaks No team away for both of final 2 games H or B in at least 2 of first 4 slots

© J. Christopher Beck A Different CP Model: The Distribute Constraint distribute(card, value, base) card – array of variables value – array of values base – array of variables value[i] is taken by card[i] elements of base distribute([{0,1}, {1,3}], [0, 1], [w 1, …, w n ]) cardvaluebase

© J. Christopher Beck Step 1: CP Model 2 g t є {H,A,B} – variable denoting home, away, bye for a given team in slot t No breaks No team away for both of final 2 games H or B in at least 2 of first 4 slots distribute([{0,1,2}, {0,1,2}], [H, A], [g t, g t+1, g t+2 ]) t = 1, …, 2n-2 (g 2n ≠ A) OR (g 2n-1 ≠ A) distribute([{0,1,2}], [A], [g 1, g 2, g 3, g 4 ])

© J. Christopher Beck Step 1: CP Model 2 Some additional constraints 2 Bs, Equal # As & Hs distribute([{n-1}, {n-1}, {2}], [H, A, B], [g 1, …, g 2n ]) 1 Bs, Equal # As & Hs distribute([{(n-1)/2}, {(n-1)/2}, {1}], [H, A, B], [t 1, …, t n ]) Let t 1, … t n, be the HAP for one slot (across all teams)

© J. Christopher Beck Step 1: CP Model With either of these models, you can then easily generate all possible HAPs You could also add a cost function to generate only “good” HAPs

© J. Christopher Beck Step 2: Assign Games Given a set of consistent HAPs Devise a CP model to assign games The one in the book is overly complicated! slot Team aHAHABHAHAB Team bHBAHAHBAHA Team cAABHHAABHH Team dBHHAABHHAA Team eAHABHAHABH