780 likes | 896 Views
Heuristics for the Mirrored Traveling Tournament Problem. Celso C. RIBEIRO Sebastián URRUTIA. Summary. Motivation Formulation Constructive heuristic Neighborhoods Extended GRASP + ILS heuristic A new class of instances Computational results Concluding remarks. Motivation.
E N D
Heuristics for the Mirrored Traveling Tournament Problem Celso C. RIBEIRO Sebastián URRUTIA
Summary • Motivation • Formulation • Constructive heuristic • Neighborhoods • Extended GRASP + ILS heuristic • A new class of instances • Computational results • Concluding remarks
Motivation • Professional sports leagues are a major economic activity around the world. • Teams and leagues do not want to waste their investments in players and structure as a consequence of poor schedules of games. • A tournament schedule determines at which round and in which stadium each game takes place.
Motivation • Tournament scheduling is a difficult task, involving different types of constraints, multiple objectives to optimize, and several decision makers (officials, managers, TV, etc…). • Decision makers may have opposite goals. • Economic issues. • Logistic issues. • Fairness.
Motivation • The total distance traveled by teams in round robin tournaments is an important variable to be minimized, in order to reduce traveling costs and to give more time to the players for resting and training.
Formulation • Conditions: • n (even) teams take part in a tournament. • Each team has its own stadium at its home city. • Each team is located at its home city in the beginning, to where it returns at the end. • Distances between the stadiums are known. • A team playing two consecutive away games goes directly from one city to the other, without returning to its home city.
The Traveling Tournament Problem • The Traveling Tournament Problem (TTP) consists in generating an schedule for a tournament between n teams subject to: • The tournament is a time constrained double round-robin tournament: • There are exactly 2(n-1) rounds (each team plays once in every round) • Each team plays against every other team twice, one at home and the other away. • No team can play more than three consecutive home or more than three consecutive away games. • No repeaters are allowed (A at B followed by B at A). • The goal is to minimize the total distance traveled by all teams during the tournament. • Hard problem: previous largest instance • exactly solved to date had only n=6 teams! • (n=8 with 20 processors in 4 days CPU time) Open problem: Is the TTP NP-Hard?
The Mirrored Traveling Tournament Problem (MTTP) has an additional constraint: The tournament is mirrored, i.e.: All teams face each other once in the first phase with n-1 rounds. In the second phase, with the last n-1 rounds, the teams play each other again in the same order, following an inverted home/away pattern. Common structure in Latin-American tournaments. The set of feasible solutions for the MTTP is a subset of the set of feasible solutions for the TTP. The Mirrored Traveling Tournament Problem
The Mirrored Traveling Tournament Problem • Some references: • Easton, Nemhauser, & Trick, “The traveling tournament problem: Description and benchmarks” (2001) • Trick, “Challenge traveling tournament instances”, web page: http://mat.gsia.cmu.edu/TOURN/ • Anagnostopoulos, Michel, Van Hentenryck, & Vergados, “A simulated annealing approach to the traveling tournament problem” (2003)
1-Factorizations • Given a graph G=(V, E), a factor of G is a graph G’=(V,E’) with E’E. • G’ is a 1-factor if all its nodes have degree equal to one. • A factorization of G=(V,E) is a set of edge-disjoint factors G1=(V,E1), ..., Gp=(V,Ep), such that E1...Ep=E. • All factors in a 1-factorization of G are 1-factors.
1-Factorizations 1 2 5 4 3 Example: 1-factorization of K6 6
1-Factorizations 1 1 2 5 4 3 Example: 1-factorization of K6 6
1-Factorizations 2 1 2 5 4 3 Example: 1-factorization of K6 6
1-Factorizations 3 1 2 5 4 3 Example: 1-factorization of K6 6
1-Factorizations 4 1 2 5 4 3 Example: 1-factorization of K6 6
1-Factorizations 5 1 2 5 4 3 Example: 1-factorization of K6 6
1-Factorizations • Mirrored tournament: games in the second phase are determined by those in the first. • If each edge of Kn represents a game, • each 1-factor of Kn represents a round and • each ordered 1-factorization of Kn represents a feasible schedule for n teams. • Without considering the stadiums, there are (n-1)! times (number of nonisomorphic 1-factorizations) different “mirrored tournaments”.Dinitz, Garnick, & McKay,“There are 526,915,620 nonisomorphic one-factorizations of K12” (1995) Open problem: How many schedules exist for a single round robin tournament with n teams?
Constructive heuristic • Three steps: • Schedule games using abstract teams (structure of the draw). • Assign real teams to abstract teams. • Select stadium for each game (home/away pattern) in the first phase (mirrored tournament).
Constructive heuristic • Step 1: schedule games using abstract teams • This phase creates the structure of the tournament. • “Polygon method” is used. • Tournament structure is fixed and will not change in the other steps of the constructive heuristic.
Constructive heuristic 6 Example: “polygon method” for n=6 1 5 2 1st round 3 4
Constructive heuristic 6 Example: “polygon method” for n=6 5 4 1 2nd round 2 3
Constructive heuristic 6 Example: “polygon method” for n=6 4 3 5 3rd round 1 2
Constructive heuristic 6 Example: “polygon method” for n=6 3 2 4 4th round 5 1
Constructive heuristic 6 Example: “polygon method” for n=6 2 1 3 5th round 4 5
Constructive heuristic • Step 2: assign real teams to abstract teams • Build a matrix with the number of consecutive games for each pair of abstract teams: • For each pair of teams X and Y, an entry in this matrix contains the total number of times in which the other teams play consecutively with X and Y in any order.
Constructive heuristic • Step 2: assign real teams to abstract teams • Greedily assign pairs of real teams with close home cities to pairs of abstract teams with large entries in the matrix with the number of consecutive games.
Constructive heuristic n = 16: note the large number of times in which two teams are faced consecutively, which is explored by step 2 of the constructive heuristic.
Constructive heuristic • Step 3: select stadium for each game in the first phase of the tournament: • Two-part strategy: • Build a feasible assignment of stadiums, starting from a random assignment in the first round. • Improve the assignment of stadiums, performing a simple local search algorithm based on home-away swaps.
Neighborhoods • Neighborhood “home-away swap”(HAS): select a game and exchange the stadium where it takes place.
Neighborhoods • Neighborhood “home-away swap” (HAS): select a game and exchange the stadium where it takes place.
Neighborhoods • Neighborhood “team swap” (TS): select two teams and swap their games, also swap the home-away assignment of their own game.
Neighborhoods • Neighborhood “team swap” (TS): select two teams and swap their games; also swap the home-away assignment of their own game.
Neighborhoods • Neighborhood “team swap” (TS): select two teams and swap their games, also swap the home-away assignment of their own game.
Neighborhoods • Neighborhood “partial round swap” (PRS): select two games AxB and CxD from round X and two games AxC and BxD from round Y, and swap their rounds (only for n8, not always possible).
Neighborhoods • Neighborhood “partial round swap” (PRS): select two games AxB and CxD from round X and two games AxC and BxD from round Y, and swap their rounds (only for n8, not always possible).
Neighborhoods • Neigborhood “game rotation” (GR) (ejection chain): • Enforce a game to be played at some round: add a new edge to a 1-factor of the 1-factorization associated with the current schedule. • Use an ejection chain to recover a 1-factorization.
Neighborhoods 2 1 2 5 4 3 6 Enforce game 1vs. 3 at round (factor) 2.
Neighborhoods 2 1 2 5 4 3 6 Teams 1 and 3 are now playing twice in this round.
Neighborhoods 2 1 2 5 4 3 6 Eliminate the other games played by teams 1 and 3 in this round.
Neighborhoods 2 1 2 5 4 3 6 Enforce the former oponents of teams 1 and 3 to play each other in this round: new game 2 vs. 4 in this round.
Neighborhoods 4 1 2 5 4 3 6 Consider the factor where game 2 vs. 4 was scheduled.
Neighborhoods 4 1 2 5 4 3 6 Enforce game 1 vs. 4 (eliminated from round 2) to be played in this round.
Neighborhoods • Continue with the applications of these steps, until the game enforced in the beginning is removed from the round where it was played in the original schedule. • Only movements in neighborhoods PRS and GR are able to change the structure of the schedule of the initial solution built by the “polygon method”. • However, PRS cannot always be used, due to the structure of the solutions built by “polygon method” for several values of n. • n = 6, 8, 12, 14, 16, 20, 24 • PRS moves may appear after an ejection chain move is made. • The ejection chain move is able to find solutions that are not reachable through other neighborhoods. Open problem: Is the GR neighborhood complete?
Iterated Local Search S GenerateInitialSolution() S LocalSearch(S) repeat S’ Perturbation(S,history) S’ LocalSearch(S’) S AceptanceCriterion(S,S’,history) S* UpdateBestSolution(S,S*) until StoppingCriterion
GRASP while .not.StoppingCriterion S GenerateRandomizedInitialSolution() S LocalSearch(S) S* UpdateBestSolution(S,S*) end
GRASP + ILS heuristic • The constructive heuristic and the neighborhoods were used to develop a hybrid improvement heuristic for the MTTP: • This heuristic is based on the GRASP and ILS metaheuristics. • Initial solutions: randomized version of the constructive heuristic. • Local search: use TS, HAS, PRS and HAS cyclically in this order until a local optimum for all neighborhoods is found. (do not search in GR!!!) • Perturbation: random movement in GR neighborhood + fast tabu search to restore feasibility. • Algorithm fully described in the paper.