Presentation is loading. Please wait.

Presentation is loading. Please wait.

Sports Scheduling Written by Kelly Easton, George Nemhauser, Michael Trick Presented by Matthew Lai.

Similar presentations


Presentation on theme: "Sports Scheduling Written by Kelly Easton, George Nemhauser, Michael Trick Presented by Matthew Lai."— Presentation transcript:

1 Sports Scheduling Written by Kelly Easton, George Nemhauser, Michael Trick Presented by Matthew Lai

2 Introduction Paper covers tournament scheduling problems Single Round Robin Tournament Problem (SRRTP) Double Round Robin Tournament Problem (DRRTP) Balanced tournament Design Problem (BTDP) Bipartite Tournament Problem (BTP) Traveling Tournament Problem (TTP)

3 Sports Scheduling Terms Break – Number of times that a team has consecutive home/away games Tournament – A series of games in which teams play each other team Schedule – Mapping of games into slots (time periods) such that each team plays at most once in each slot Mirrored/Partially Mirrored – DRRT mirrored such that teams play in same schedule but with mirrored venues Compact – Schedule that includes minimum possible number of slots Pattern – A vector of home, away, or bye designations for a single team over the slots of a schedule Complementary – Two patterns where each slot is complementary to each other Pattern Set – A collection of patterns, one for each team Tour – A schedule for a single team in the tournament Trip – A series of consecutive away games Home Stand – A series of consecutive home games

4 General Overview – Solutions used in Sports Scheduling Graph Algorithms Integer Programming Constraint Programming Metaheuristics Simulated Annealing Tabu Search

5 Single Round Robin Tournament Formal Definition Input: A set of n teams T = { 1, 2, …, n } Output: A mapping of the games in the set G = {g ij : i, j  T, i < j} To slots in the set S = {s k, k = 1, …, n-1 if n is even and k = 1, …, n if n is odd} SSRT can be described as a Block Design Algorithm Described as (v, k, ) Block Design Algorithm attempts to create subsets of size k using the v elements of the set where each element can only appear in subsets SSRT is therefore (n, 2, 1)

6 SSRTP Circle Method - SSRTP-C Day 1 8 vs 1 7 vs 2 6 vs 3 5 vs 4 Day 2 8 vs 2 1 vs 3 7 vs 4 6 vs 5

7 Round Robin Tournament and Latin Squares RRT can reduce to Latin Squares problems Much research has been done on Latin Squares and can be adapted to solve RRT problems 123456 1623451 2264513 3346125 4451632 5512364 6135246

8 Round Robin Pattern Sets Previous methods construct schedules by assigning team matchups to schedule slots. The reverse process has also been suggested to be an effective alternative Generate pattern set for each team after which compatible teams can be paired Generating good pattern sets, therefore, is necessary for a good schedule

9 Round Robin Pattern Sets (cont.) Patterns generated for each team will either be feasible patterns, where patterns for the set of teams will generate a RRT, or it they will be infeasible, where patterns cannot be matched to form an RRT Whole set of necessary conditions not currently known Each pair must differ by at least one slot For DRRT, every pattern pair generated for any two teams must contain, alternatively, a home and away pattern For all RRT, every slot in pattern set must include equal number of home and away games

10 Balanced Tournament Designs Input: A set of n teams T = { 1, …, n } and a number of facilities F Output: Mapping of the games in set G = { g ij : i, j  T, i < j } to slots available at each facility as decribed by S = { s fk, f = 1, …, F, k = 1, …, n – 1 if n is even and n if n is odd } such that no more than one game involving team i is assigned to a particular slot and the difference between the number of apperances of team i at two separate facilities is no more than 1

11 BTDP-NO “Bracelet” algorithm – Works with 2m+1 odd teams Arrange teams 1 through 2m + 1 into an elongated pentagon or “bracelet”. Indicate facility associated with each row containing two teams. For each slot k= 1, …, 2m+1 give the team at the top of the pentagon the bye. For each row with two teams, i, j associated with facility f, assign g ij to s kf. Then shift teams one position in CW direction Example: m = 2 1 2 3 4 5 Facility 1 Facility 2

12 Bipartite Tournament Input: Two teams with n players T 1 = { x 1, …, x n } and T 2 = {y 1, …, y n } Output: A mapping of the games in the set G = { g ij : i  T 1, j  T 2 }, to the slots in set S = { s k, k = 1, …, n } such that exactly one game including t is mapped to any given slot for all t  T 1  T 2 In other words, given two groups, ensure that each member of one group plays the members of the other group. Not just limited to teams of players, but can also encompass Leagues and conferences of teams. Also equivalent to Latin Square

13 Graph Algorithm Sports Scheduling problem can also be solved as a graph problem The sports schedule would be represented on a graph with 2m teams, as a graph K 2m with 2m different edge values or colors. Edge [i, j] would represent a game between team i and team j where i and j are vertex nodes. SRRT prblem can be presented as a 1-factorization of K 2m such that each vertex is not connected by any two edges of the same value. In this way, by taking the 1-factor of a certain value, you receive a perfect matching of pairs. This graph should be oriented such that the directions indicate the home/away orientation of the game

14 Graph Example 1 2 3 6 5 4

15 Sports Scheduling Problems Minimum Breaks Problem – minimize number total breaks, home stands and road trips. With even teams, only two feasible schedules exist with no breaks. With odd teams, many more schedules exist Geographical Location – Ensure that geographically close teams do not play each other consecutively to ensure maximum fan attendenance Divisions – Sports leagues often arrange teams into divisions based on geographical closeness. Therefore, matchup inter ‑ division games on weekdays and intra-division

16 Integer Programming

17 Constraints Programming Constraints Programming is a programming paradigm with a combinatorial approach for solving hard optimization problems. CP for sports scheduling, as implemented by Martin Henz, performed the steps differently from IP. It first assigned teams to patterns before matching teams in games. This constraints programming solution for sports programming reported ran on the order of minutes as compared to the 24 hour run time from the Integer Programming

18 Traveling Tournament Problem Input: A set of teams T = { 1, …, n }; D: an n x n integer distance matrix with elements d ij ; l, u integer parameters. Output: A double round robin tournament on the teams in T such that The length of each home stand and road trip is between l and u inclusive The total distance traveled by the teams is minimized With the maximum value of u = (n – 1), this problem becomes a traveling salesman problem. For a small u the team must return home often, increasing travel distance. For u = 1, the problem becomes on of finding a feasible solution.

19 Combining IP and CP to Solve TTP To solve this problem, a hybrid method using both Integer Programming and Constraints Programming was used. These two different models are used in a parallel algorithm known as the parallel branch and price algorithm. Each individual team tour is represented as the columns of this column generating algorithm. The Constraints Programming is used o solve the pricing problem to determine the solution to the minimum price, in this case, travel distance. The Integer Processor will attempt to determine the tours for each team in the tournament that will best solve the home stand/road trip constraint of the problem. Additionally a CP model is also used as part of a primal heuristic that is run on a separate processor on the side that will attempt to look for a good, but not necessarily best solution by using the solutions generated so far by the other parts of the algorithm.

20 Metaheuristics: Simulated Annealing Simulated Annealing is a generic probabilistic metaheuristic for global optimization problem of locating a good approximation to the global optimum of a given function in a large search space. The algorithm starts from a current state S. It probabilistically decides between moving from the current state to some neighboring S’ state. In this TTSA algorithm, the regions containing infeasible schedules penalize the algorithm to discourage it from remaining in the area.


Download ppt "Sports Scheduling Written by Kelly Easton, George Nemhauser, Michael Trick Presented by Matthew Lai."

Similar presentations


Ads by Google