Presentation is loading. Please wait.

Presentation is loading. Please wait.

December 2003 Traveling tournament problem1/88 Heuristics for the Traveling Tournament Problem: Scheduling the Brazilian Soccer Championship Celso C. RIBEIRO.

Similar presentations


Presentation on theme: "December 2003 Traveling tournament problem1/88 Heuristics for the Traveling Tournament Problem: Scheduling the Brazilian Soccer Championship Celso C. RIBEIRO."— Presentation transcript:

1 December 2003 Traveling tournament problem1/88 Heuristics for the Traveling Tournament Problem: Scheduling the Brazilian Soccer Championship Celso C. RIBEIRO Sebastián URRUTIA

2 December 2003 Traveling tournament problem2/88 Summary Motivation Formulation Constructive heuristic Neighborhoods Iterated local search Extended ILS: GRASP + ILS heuristic Computational results Concluding remarks

3 December 2003 Traveling tournament problem3/88 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!

4 December 2003 Traveling tournament problem4/88 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!

5 December 2003 Traveling tournament problem5/88 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.

6 December 2003 Traveling tournament problem6/88 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).

7 December 2003 Traveling tournament problem7/88 Summary Motivation Formulation Constructive heuristic Neighborhoods Iterated local search Extended ILS: GRASP + ILS heuristic Computational results Concluding remarks

8 December 2003 Traveling tournament problem8/88 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.

9 December 2003 Traveling tournament problem9/88 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).

10 December 2003 Traveling tournament problem10/88 Formulation 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.

11 December 2003 Traveling tournament problem11/88 Formulation 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.

12 December 2003 Traveling tournament problem12/88 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)

13 December 2003 Traveling tournament problem13/88 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 G 1 =(V,E 1 ),..., G p =(V,E p ), with E 1 ...  E p =E. All factors in a 1-factorization of G are 1-factors.

14 December 2003 Traveling tournament problem14/ Formulation Example: 1-factorization of K 6

15 December 2003 Traveling tournament problem15/ Formulation Example: 1-factorization of K 6

16 December 2003 Traveling tournament problem16/ Formulation Example: 1-factorization of K 6

17 December 2003 Traveling tournament problem17/ Formulation Example: 1-factorization of K 6

18 December 2003 Traveling tournament problem18/ Formulation Example: 1-factorization of K 6

19 December 2003 Traveling tournament problem19/ Formulation Example: 1-factorization of K 6

20 December 2003 Traveling tournament problem20/88 Mirrored tournament: games in the second phase are determined by those in the first. –Each edge of K n represents a game. –Each 1-factor of K n represents a round. –Each ordered 1-factorization of K n 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 K 12 ” (1995) Formulation

21 December 2003 Traveling tournament problem21/88 Summary Motivation Formulation Constructive heuristic Neighborhoods Iterated local search Extended ILS: GRASP + ILS heuristic Computational results Concluding remarks

22 December 2003 Traveling tournament problem22/88 Constructive heuristic Three steps: 1.Schedule games using abstract teams (structure of the draw). 2.Assign real teams to abstract teams. 3.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’

23 December 2003 Traveling tournament problem23/88 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.

24 December 2003 Traveling tournament problem24/88 Constructive heuristic Example: “polygon method” for n=6 1 st round

25 December 2003 Traveling tournament problem25/88 Constructive heuristic Example: “polygon method” for n=6 2 nd round

26 December 2003 Traveling tournament problem26/88 Constructive heuristic Example: “polygon method” for n=6 3 rd round

27 December 2003 Traveling tournament problem27/88 Constructive heuristic Example: “polygon method” for n=6 4 th round

28 December 2003 Traveling tournament problem28/88 Constructive heuristic Example: “polygon method” for n=6 5 th round

29 December 2003 Traveling tournament problem29/88 Constructive heuristic Abstract teams (n=6) RoundABCDEF 1/6FEDCBA 2/7DCBAFE 3/8BAEFCD 4/9EDFBAC 5/10CFAEDB

30 December 2003 Traveling tournament problem30/88 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.

31 December 2003 Traveling tournament problem31/88 Constructive heuristic ABCDEF A B C D E F443430

32 December 2003 Traveling tournament problem32/88 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.

33 December 2003 Traveling tournament problem33/88 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.

34 December 2003 Traveling tournament problem34/88 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

35 December 2003 Traveling tournament problem35/88 Constructive heuristic Real teams (n=6) RoundFLUSA N FLAGREPALPAY 1/6PAYPALGR E FLASA N FLU 2/7GR E FLASA N FLUPAYPAL 3/8SA N FLUPALPAYFLAGRE 4/9PALGREPAYSA N FLUFLA 5/10FLAPAYFLUPALGR E SA N

36 December 2003 Traveling tournament problem36/88 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.

37 December 2003 Traveling tournament problem37/88 Constructive heuristic Real teams (n=6) RoundFLUSANFLAGREPALPAY L A U A U L N L E Y U FLA A L N

38 December 2003 Traveling tournament problem38/88 Summary Motivation Formulation Constructive heuristic Neighborhoods Iterated local search Extended ILS: GRASP + ILS heuristic Computational results Concluding remarks

39 December 2003 Traveling tournament problem39/88 Neighborhoods Neighborhood “home-away swap” (HAS): select a game and exchange the stadium where it takes place. Real teams (n=6) RoundFLUSANFLAGREPALPAY L A U A U L N L E Y U FLA A L N

40 December 2003 Traveling tournament problem40/88 Neighborhoods Neighborhood “home-away swap” (HAS): select a game and exchange the stadium where it takes place. Real teams (n=6) RoundFLUSANFLAGREPALPAY U A U L N L E Y U FLA A L N

41 December 2003 Traveling tournament problem41/88 Neighborhoods Neighborhood “team swap” (TS): select two teams and swap their games, also swap the home-away assignment of their own game. Real teams (n=6) RoundFLUSANFLAGREPALPAY L A U A U L N L E Y U FLA A L N

42 December 2003 Traveling tournament problem42/88 Neighborhoods Neighborhood “team swap” (TS): select two teams and swap their games; also swap the home-away assignment of their own game. Real teams (n=6) RoundFLUSANFLAGREPALPAY L A U A U L N L E Y U FLA A L N

43 December 2003 Traveling tournament problem43/88 Neighborhoods Neighborhood “team swap” (TS): select two teams and swap their games, also swap the home-away assignment of their own game. Real teams (n=6) RoundFLUSANFLAGREPALPAY L A U A U L N E U Y FLA A L N

44 December 2003 Traveling tournament problem44/88 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 n  8, not always possible). 30’

45 December 2003 Traveling tournament problem45/88 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 n  8, not always possible).

46 December 2003 Traveling tournament problem46/88 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.

47 December 2003 Traveling tournament problem47/88 Neighborhoods Enforce game 1vs. 3 at round (factor) 2.

48 December 2003 Traveling tournament problem48/ Neighborhoods Teams 1 and 3 are now playing twice in this round.

49 December 2003 Traveling tournament problem49/ Neighborhoods Eliminate the other games played by teams 1 and 3 in this round.

50 December 2003 Traveling tournament problem50/ Neighborhoods Enforce the former oponents of teams 1 and 3 to play each other in this round: new game 2 vs. 4 in this round.

51 December 2003 Traveling tournament problem51/ Neighborhoods Consider the factor where game 2 vs. 4 was scheduled.

52 December 2003 Traveling tournament problem52/88 Neighborhoods Enforce game 1 vs. 4 (eliminated from round 2) to be played in this round.

53 December 2003 Traveling tournament problem53/88 Neighborhoods Eliminate games 2 vs. 4 (enforced in round 2) and 1 vs. 5 (since team 1 cannot play twice).

54 December 2003 Traveling tournament problem54/88 Neighborhoods Enforce game 2 vs. 5 to be played in this round.

55 December 2003 Traveling tournament problem55/88 Neighborhoods Consider the factor where game 2 vs. 5 was scheduled.

56 December 2003 Traveling tournament problem56/88 Neighborhoods Enforce game 1 vs. 5 (eliminated from round 4) to be played in this round.

57 December 2003 Traveling tournament problem57/88 Neighborhoods Eliminate games 2 vs. 5 (enforced in round 4) and 1 vs. 6 (since team 1 cannot play twice).

58 December 2003 Traveling tournament problem58/88 Neighborhoods Enforce game 2 vs. 6 to be played in this round.

59 December 2003 Traveling tournament problem59/88 Neighborhoods Consider the factor where game 2 vs. 6 was scheduled. 40’

60 December 2003 Traveling tournament problem60/88 Neighborhoods Enforce game 1 vs. 6 (eliminated from round 1) to be played in this round.

61 December 2003 Traveling tournament problem61/88 Neighborhoods Eliminate games 2 vs. 6 (enforced in round 1) and 1 vs. 3 (since team 1 cannot play twice and this game was enforced in round 2 at the beginning of the ejection chain).

62 December 2003 Traveling tournament problem62/88 Neighborhoods Finally, enforce game 2 vs. 3 (eliminated from round 2 at the beginning of the ejection chain ) to be played in this round.

63 December 2003 Traveling tournament problem63/88 Neighborhoods The ejection chain terminates when the game enforced in the beginning is removed from the round where it was played in the original schedule: –The ejection chain move is able to find solutions that are not reachable through other neighborhoods. –PRS moves may appear after an ejection chain move is made.

64 December 2003 Traveling tournament problem64/88 Neighborhoods PRS = GR for n=4; PRS  GR for n  6. Only 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 some values of n.

65 December 2003 Traveling tournament problem65/88 Neighborhoods The length of the ejection chain is variable. If ejections chains are not used, one may be stucked at schedules with the structure of the solutions built by the “polygon method”. –n  {6,8,12,14,16,20,24}: no PRS moves exist if “polygon method” is used, but... –... PRS moves may appear after an ejection chain move is made.

66 December 2003 Traveling tournament problem66/88 Summary Motivation Formulation Constructive heuristic Neighborhoods Iterated local search Extended ILS: GRASP + ILS heuristic Computational results Concluding remarks

67 December 2003 Traveling tournament problem67/88 Iterated local search Martin, Otto, & Felten (1991); Martin & Otto (1996) S  GenerateInitialSolution() S,S*  LocalSearch(S) repeat S’  Perturbation(S,history) S’  LocalSearch(S’) S  AceptanceCriterion(S,S’,history) S*  UpdateBestSolution(S,S*) until StoppingCriterion

68 December 2003 Traveling tournament problem68/88 Extended GRASP + ILS heuristic while.not.StoppingCriterion S  GenerateRandomizedInitialSolution() S,S  LocalSearch(S) /* S best solution in cycle */ repeat /* S* best overall solution */ S’  Perturbation(S,history) S’  LocalSearch(S’) S  AceptanceCriterion(S,S’,history) S*  UpdateOverallBestSolution(S,S*) S  UpdateCycleBestSolution(S,S) until ReinitializationCriterion end

69 December 2003 Traveling tournament problem69/88 Extended GRASP + ILS heuristic Initial solutions (for each cycle): –Use the constructive heuristic. –Randomize the second step: team assignment using the matrix of consecutive games. –Third step (stadium assignment) was already randomized. –New cycle is started if ReinitializationCriterion is met.

70 December 2003 Traveling tournament problem70/88 Extended GRASP + ILS heuristic Local search: –First improving strategy. –Multiple neighborhoods are used in this order: TS  HAS  PRS  HAS GR is very costly and is not used during the local search. Repeat until a local optimum with respect to all neighborhoods is found. –Neighbor solutions are investigated at random for each type of neighborhood.

71 December 2003 Traveling tournament problem71/88 Extended GRASP + ILS heuristic Perturbation: –Obtain S’ by applying one ejection chain randomly selected GR move to the current solution S. –The new solution may be infeasible: perform the third step of the constructive heuristic (stadium assignment).

72 December 2003 Traveling tournament problem72/88 Extended GRASP + ILS heuristic while.not.StoppingCriterion S  GenerateRandomizedInitialSolution() S,S  LocalSearch(S) /* S best solution in cycle */ repeat /* S* best overall solution */ S’  Perturbation(S,history) S’  LocalSearch(S’) S  AceptanceCriterion(S,S’,history) S*  UpdateOverallBestSolution(S,S*) S  UpdateCycleBestSolution(S,S) until ReinitializationCriterion end

73 December 2003 Traveling tournament problem73/88 Extended GRASP + ILS heuristic Acceptance criterion: –Set threshold acceptance criterion at  =0.1 –Accept new solution if its cost is lower than (100+  )% of the current solution. –If the current solution does not change after a certain number of iterations, double the value of  (i.e., acceptance criterion is relaxed if current solution does not change). –Reset  =0.1 when the current solution changes. 50’

74 December 2003 Traveling tournament problem74/88 Extended GRASP + ILS heuristic Reinitialization criterion: –If n/3 deteriorating moves are accepted since the last time the best solution in the cycle S was updated, then start a new cycle computing a new initial solution. Re-initialization occurs if too many iterations are performed without improving the best solution in a cycle. Computations in a cycle are not interrupted if the algorithm is improving the current solution S.

75 December 2003 Traveling tournament problem75/88 Summary Motivation Formulation Constructive heuristic Neighborhoods Iterated local search Extended ILS: GRASP + ILS heuristic Computational results Concluding remarks

76 December 2003 Traveling tournament problem76/88 Computational results Benchmark circular instances with n = 8, 10, 12, 14, 16, 18, and 20 teams. Harder benchmark MLB instances with n = 8, 10, 12, 14, and 16 teams. –All available from Michael Trick’s web page edition of the Brazilian national soccer championship with 24 teams.

77 December 2003 Traveling tournament problem77/88 Computational results Largest problems solved to optimality using an integer programming formulation: n = 6 teams –Gaps: 0.6% for n=8; 3.6% for n=10 (MLB) Lower bounds: approximate solutions listed at Michael Trick’s home page for the corresponding unmirrored instances. Solutions found for CIRC and MLB instances are even better than those available for the corresponding unmirrored instances in 2002 (e.g. 3.5 hours for NL16 in Pentium IV 2.0 MHz).

78 December 2003 Traveling tournament problem78/88 Computational results Total distance traveled for the 2003 edition of the Brazilian soccer championship with 24 teams (instance br24) in 12 hours (Pentium IV 2.0 MHz): Realized (official draw): 1, 048,134 kms Our solution: 549,020 kms (50% reduction) Approximate corresponding savings in airfares: US$ 1,700,000

79 December 2003 Traveling tournament problem79/88 Computational results

80 December 2003 Traveling tournament problem80/88 Computational results Methodology used to evaluate and compare different algorithms for the same problem: –Probability distribution of time-to- target-solution-value: experimental plots Aiex, Resende, & Ribeiro: “Probability distribution of solution time in GRASP: An experimental investigation”, (2002) Resende & Ribeiro: “GRASP and path- relinking: Recent advances and applications”, (2003)

81 December 2003 Traveling tournament problem81/88 Computational results Select an instance and a target value: –Perform 200 runs using different seeds. –Stopping when a solution value at least as good as the target is found. –For each run, measure the time-to-target- value. –Plot the probabilities of finding a solution at least as good as the target value within some computation time. 55’

82 December 2003 Traveling tournament problem82/88 Computational results Instance: br24 Target: 586,000 kms

83 December 2003 Traveling tournament problem83/88 Computational results Instance: br24 Time: 10 minutes

84 December 2003 Traveling tournament problem84/88 Computational results Instance: br24 Time: 12 hours

85 December 2003 Traveling tournament problem85/88 Summary Motivation Formulation Constructive heuristic Neighborhoods Iterated local search Extended ILS: GRASP + ILS heuristic Computational results Concluding remarks

86 December 2003 Traveling tournament problem86/88 Concluding remarks Extended GRASP + ILS heuristic found very good solutions to benchmark instances: –Solutions found for CIRC and MLB instances are even better than those available for the corresponding unmirrored instances in Effectiveness of ejection chain neighborhood. Significant savings in airfares costs and traveled distance in real instance.

87 December 2003 Traveling tournament problem87/88 Concluding remarks Combination of constraint programming with heuristics to handle difficult constraints. Incorporation of additional real-life constraints in progress: TV constraints, pre-scheduled games, complementary teams, airfares + hotel costs,... Talks with Brazilian federations of soccer (CBF) and basketball (CBB) to schedule the 2004 editions of national tournaments.

88 December 2003 Traveling tournament problem88/88 Slides and publications Slides of this talk can be downloaded from: rio.br/~celso/talks This paper (soon) and other papers about GRASP, path-relinking, and their applications available at: rio.br/~celso/publicacoes Materials about applications of OR techniques to problems in sports management and scheduling may be found at: Please let us know about new links and materials! 60’


Download ppt "December 2003 Traveling tournament problem1/88 Heuristics for the Traveling Tournament Problem: Scheduling the Brazilian Soccer Championship Celso C. RIBEIRO."

Similar presentations


Ads by Google