910 likes | 1.11k Views
Heuristics for the Traveling Tournament Problem: Scheduling the Brazilian Soccer Championship. Celso C. RIBEIRO Sebastián URRUTIA. Summary. Motivation Formulation Constructive heuristic Neighborhoods Iterated local search Extended ILS: GRASP + ILS heuristic Computational results
E N D
Heuristics for the Traveling Tournament Problem: Scheduling the Brazilian Soccer Championship Celso C. RIBEIRO Sebastián URRUTIA Traveling tournament problem
Summary • Motivation • Formulation • Constructive heuristic • Neighborhoods • Iterated local search • Extended ILS: GRASP + ILS heuristic • Computational results • Concluding remarks Traveling tournament problem
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. • Ronaldo (Real Madrid) scored a goal with 14 seconds on December 2nd with the assistance of Zidane, Roberto Carlos, Raul, and Beckham: US$ 222 millions! Traveling tournament problem
Motivation • Game scheduling is a difficult task, involving different types of constraints, logistic issues, multiple objectives to optimize, and several decision makers (officials, managers, TV, etc…). • The total distance traveled becomes an important variable to be minimized, to reduce traveling costs and to give more time to the players for resting and training. • Avoid unfair draws! Traveling tournament problem
Motivation • Short stories about unfair draws: • Latin-American qualification phase for 2006 World Cup • Teams did not want to play two consecutive games in the highlands (Bolivia and Equator), but were not able to find a consensus: schedule of 2002 World Cup was repeated. • Argentinian national soccer championship • Boca Juniors played at home all but one games with major teams at Maradona’s come back. • 2004 Brazilian Basketball Championship • Due to budget cuts, all teams have to travel by coach: some host cities are more than 1,000 kilometers apart Traveling tournament problem
Motivation • Short stories about unfair draws: • IRB admitted unfair draw of 2003 Rugby World Cup • The International Rugby Board has admitted the World Cup draw was unfairly stacked against poorer countries so tournament organizers could maximize their profits: richer nations (e.g. Australia, Wales, New Zealand, South Africa, England, France) were given more time to play their games because of commercial arrangements with broadcasters. "Yes (it's unfair), but that's the way it is," Millar said. • While all the bigger teams had at least 20 days to play their four pool games, the smaller sides' matches were crammed into a much tighter schedule (e.g. Italy, Argentina, Tonga, Samoa). Traveling tournament problem
Summary • Motivation • Formulation • Constructive heuristic • Neighborhoods • Iterated local search • Extended ILS: GRASP + ILS heuristic • Computational results • Concluding remarks Traveling tournament problem
Formulation • Conditions: • n (even) teams take part in a tournament. • Each team has its own stadium at its home city. • 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. Traveling tournament problem
Formulation • Conditions (cont.): • Tournament is a strict double round-robin tournament: • There are 2(n-1) rounds, each one with n/2 games. • Each team plays against every other team twice, one at home and the other away. • No team can play more than three games in a home stand or in a road trip (away games). Traveling tournament problem
Conditions (cont.): Tournament is mirrored: 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. Goal: minimize the total distance traveled by all teams. Formulation Traveling tournament problem
Variants: single round-robin no-repeaters no synchronized rounds multiple games (more than two, variable) teams with complementary patterns in the same city pre-scheduled games and TV constraints stadium availability minimize airfare and hotel costs, etc. Formulation Traveling tournament problem
Formulation • Some references: • Easton, Nemhauser, & Trick, “The traveling tournament problem: Description and benchmarks” (2001) • Trick, “Challenge traveling tournament instances”, web page • Nemhauser & Trick, “Scheduling a major college basketball conference” (1998) • Thompson, “Kicking timetabling problems into touch”, (1999) • Anagnostopoulos, Michel, Van Hentenryck, & Vergados, “A simulated annealing approach to the traveling tournament problem” (2003) Traveling tournament problem
Formulation • 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), with E1...Ep=E. • All factors in a 1-factorization of G are 1-factors. Traveling tournament problem
Formulation 1 2 5 4 3 Example: 1-factorization of K6 6 Traveling tournament problem
Formulation 1 1 2 5 4 3 Example: 1-factorization of K6 6 Traveling tournament problem
Formulation 2 1 2 5 4 3 Example: 1-factorization of K6 6 Traveling tournament problem
Formulation 3 1 2 5 4 3 Example: 1-factorization of K6 6 Traveling tournament problem
Formulation 4 1 2 5 4 3 Example: 1-factorization of K6 6 Traveling tournament problem
Formulation 5 1 2 5 4 3 Example: 1-factorization of K6 6 Traveling tournament problem
Formulation • Mirrored tournament: games in the second phase are determined by those in the first. • Each edge of Kn represents a game. • Each 1-factor of Kn represents a round. • Each ordered 1-factorization of Kn is a schedule. • Without considering the stadiums, there are (n-1)! times (number of nonisomorphic factors) different “mirrored tournaments”.Dinitz, Garnick, & McKay,“There are 526,915,620 nonisomorphic one-factorizations of K12” (1995) Traveling tournament problem
Summary • Motivation • Formulation • Constructive heuristic • Neighborhoods • Iterated local search • Extended ILS: GRASP + ILS heuristic • Computational results • Concluding remarks Traveling tournament problem
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). • Other algorithms first define the home/away pattern and then assign teams to games. 15’ Traveling tournament problem
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. Traveling tournament problem
Constructive heuristic 6 Example: “polygon method” for n=6 1 5 2 1st round 3 4 Traveling tournament problem
Constructive heuristic 6 Example: “polygon method” for n=6 5 4 1 2nd round 2 3 Traveling tournament problem
Constructive heuristic 6 Example: “polygon method” for n=6 4 3 5 3rd round 1 2 Traveling tournament problem
Constructive heuristic 6 Example: “polygon method” for n=6 3 2 4 4th round 5 1 Traveling tournament problem
Constructive heuristic 6 Example: “polygon method” for n=6 2 1 3 5th round 4 5 Traveling tournament problem
Constructive heuristic Traveling tournament problem
Constructive heuristic • Step 2: assign real teams to abstract teams • “Polygon method” was used to build a schedule with 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 table contains the total number of times in which the other teams play consecutively with X and Y in any order. Traveling tournament problem
Constructive heuristic Traveling tournament problem
Constructive heuristic • Step 2: assign real teams to abstract teams • “Polygon method” was used to build a schedule with abstract teams. • Build a matrix with the number of consecutive games for each pair of abstract teams. • Greedily (QAP) 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. Traveling tournament problem
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. Traveling tournament problem
Constructive heuristic • Teams (n=6): • FLAMENGO and FLUMINENSE: two teams in the same city (Rio de Janeiro) • SANTOS and PALMEIRAS: two teams in two very close cities (Santos and São Paulo) 400 kms south of Rio de Janeiro • GREMIO: team with home city approximately 1100 kms south of Rio de Janeiro • PAYSANDU: team with home city approximately 2500 kms north of Rio de Janeiro Traveling tournament problem
Constructive heuristic Traveling tournament problem
Constructive heuristic • Step 3: select stadium for each game in the first phase of the tournament • Schedule games in multiple-game trips with no more than three away games each: face teams with close stadiums in the same road trip. • 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. Traveling tournament problem
Constructive heuristic Traveling tournament problem
Summary • Motivation • Formulation • Constructive heuristic • Neighborhoods • Iterated local search • Extended ILS: GRASP + ILS heuristic • Computational results • Concluding remarks Traveling tournament problem
Neighborhoods • Neighborhood “home-away swap”(HAS): select a game and exchange the stadium where it takes place. Traveling tournament problem
Neighborhoods • Neighborhood “home-away swap” (HAS): select a game and exchange the stadium where it takes place. Traveling tournament problem
Neighborhoods • Neighborhood “team swap” (TS): select two teams and swap their games, also swap the home-away assignment of their own game. Traveling tournament problem
Neighborhoods • Neighborhood “team swap” (TS): select two teams and swap their games; also swap the home-away assignment of their own game. Traveling tournament problem
Neighborhoods • Neighborhood “team swap” (TS): select two teams and swap their games, also swap the home-away assignment of their own game. Traveling tournament problem
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). 30’ Traveling tournament problem
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). Traveling tournament problem
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. Traveling tournament problem
Neighborhoods 2 1 2 5 4 3 6 Enforce game 1vs. 3 at round (factor) 2. Traveling tournament problem
Neighborhoods 2 1 2 5 4 3 6 Teams 1 and 3 are now playing twice in this round. Traveling tournament problem
Neighborhoods 2 1 2 5 4 3 6 Eliminate the other games played by teams 1 and 3 in this round. Traveling tournament problem
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. Traveling tournament problem