Top Banner
December 2003 Traveling tournament problem 1/88 ics for the Traveling Tournament Pr uling the Brazilian Soccer Champio Celso C. RIBEIRO Sebastián URRUTIA
88

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

Jan 15, 2016

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: December 2003 Traveling tournament problem1/88 Heuristics for the Traveling Tournament Problem: Scheduling the Brazilian Soccer Championship Celso C. RIBEIRO.

December 2003 Traveling tournament problem1/88

Heuristics for the Traveling Tournament Problem: Scheduling the Brazilian Soccer Championship

Celso C. RIBEIROSebastián URRUTIA

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

December 2003 Traveling tournament problem2/88

Summary• Motivation• Formulation• Constructive heuristic• Neighborhoods• Iterated local search• Extended ILS: GRASP + ILS

heuristic• Computational results• Concluding remarks

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

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!

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

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!

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

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.

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

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).

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

December 2003 Traveling tournament problem7/88

Summary• Motivation• Formulation• Constructive heuristic• Neighborhoods• Iterated local search• Extended ILS: GRASP + ILS

heuristic• Computational results• Concluding remarks

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

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.

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

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).

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

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.

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

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.

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

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)

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

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 G1=(V,E1), ..., Gp=(V,Ep), with E1...Ep=E.

• All factors in a 1-factorization of G are 1-factors.

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

December 2003 Traveling tournament problem14/88

4 3

2

1

5

6

Formulation

Example: 1-factorization of K6

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

December 2003 Traveling tournament problem15/88

4 3

2

1

5

6

1Formulation

Example: 1-factorization of K6

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

December 2003 Traveling tournament problem16/88

4 3

2

1

5

6

2Formulation

Example: 1-factorization of K6

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

December 2003 Traveling tournament problem17/88

4 3

2

1

5

6

3Formulation

Example: 1-factorization of K6

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

December 2003 Traveling tournament problem18/88

4 3

2

1

5

6

4Formulation

Example: 1-factorization of K6

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

December 2003 Traveling tournament problem19/88

4 3

2

1

5

6

5Formulation

Example: 1-factorization of K6

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

December 2003 Traveling tournament problem20/88

• 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)

Formulation

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

December 2003 Traveling tournament problem21/88

Summary• Motivation• Formulation• Constructive heuristic• Neighborhoods• Iterated local search• Extended ILS: GRASP + ILS

heuristic• Computational results• Concluding remarks

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

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’

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

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.

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

December 2003 Traveling tournament problem24/88

Constructive heuristic

4 3

2

1

5

6

Example: “polygon method” for n=6

1st round

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

December 2003 Traveling tournament problem25/88

Constructive heuristic

3 2

1

5

4

6

Example: “polygon method” for n=6

2nd round

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

December 2003 Traveling tournament problem26/88

Constructive heuristic

2 1

5

4

3

6

Example: “polygon method” for n=6

3rd round

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

December 2003 Traveling tournament problem27/88

Constructive heuristic

1 5

4

3

2

6

Example: “polygon method” for n=6

4th round

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

December 2003 Traveling tournament problem28/88

Constructive heuristic

5 4

3

2

1

6

Example: “polygon method” for n=6

5th round

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

December 2003 Traveling tournament problem29/88

Constructive heuristic Abstract teams (n=6)

Round

A B C D E F

1/6 F E D C B A

2/7 D C B A F E

3/8 B A E F C D

4/9 E D F B A C

5/10 C F A E D B

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

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.

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

December 2003 Traveling tournament problem31/88

Constructive heuristicA B C D E F

A 0 1 6 5 2 4

B 1 0 2 5 6 4

C 6 2 0 2 5 3

D 5 5 2 0 2 4

E 2 6 5 2 0 3

F 4 4 3 4 3 0

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

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.

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

December 2003 Traveling tournament problem33/88

Constructive heuristic 0 4 4 4 4 4 4 3 4 4 3 4 4 4 4 44 0 2 25 0 0 0 0 0 0 0 0 0 0 25 24 2 0 2 25 0 0 0 0 0 0 0 0 0 0 254 25 2 0 2 25 0 0 0 0 0 0 0 0 0 04 0 25 2 0 2 25 0 0 0 0 0 0 0 0 04 0 0 25 2 0 2 25 0 0 0 0 0 0 0 04 0 0 0 25 2 0 2 25 0 0 0 0 0 0 03 0 0 0 0 25 2 0 2 26 0 0 0 0 0 04 0 0 0 0 0 25 2 0 1 26 0 0 0 0 04 0 0 0 0 0 0 26 1 0 2 25 0 0 0 03 0 0 0 0 0 0 0 26 2 0 2 25 0 0 04 0 0 0 0 0 0 0 0 25 2 0 2 25 0 04 0 0 0 0 0 0 0 0 0 25 2 0 2 25 04 0 0 0 0 0 0 0 0 0 0 25 2 0 2 254 25 0 0 0 0 0 0 0 0 0 0 25 2 0 24 2 25 0 0 0 0 0 0 0 0 0 0 25 2 0

n = 16: note the large number of times inwhich two teams are faced consecutively, which is explored by step 2 of the constructiveheuristic.

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

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

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

December 2003 Traveling tournament problem35/88

Constructive heuristic Real teams (n=6)

Round

FLU SAN

FLA GRE

PAL PAY

1/6 PAY PAL GRE

FLA SAN

FLU

2/7 GRE

FLA SAN

FLU PAY PAL

3/8 SAN

FLU PAL PAY FLA GRE

4/9 PAL GRE

PAY SAN

FLU FLA

5/10 FLA PAY FLU PAL GRE

SAN

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

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.

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

December 2003 Traveling tournament problem37/88

Constructive heuristic Real teams (n=6)

Round FLU SAN FLA GRE PAL PAY

1/6 PAY@PA

LGRE

@FLA

SAN@FL

U

2/7 GRE@FL

ASAN

@FLU

PAY@PA

L

3/8@SA

NFLU

@PAL

PAY FLA@GR

E

4/9 PAL@GR

E@PA

YSAN

@FLU

FLA

5/10@FL

APAY FLU

@PAL

GRE@SA

N

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

December 2003 Traveling tournament problem38/88

Summary• Motivation• Formulation• Constructive heuristic• Neighborhoods• Iterated local search• Extended ILS: GRASP + ILS

heuristic• Computational results• Concluding remarks

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

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)

Round FLU SAN FLA GRE PAL PAY

1/6 PAY@PA

LGRE

@FLA

SAN@FL

U

2/7 GRE@FL

ASAN

@FLU

PAY@PA

L

3/8@SA

NFLU

@PAL

PAY FLA@GR

E

4/9 PAL@GR

E@PA

YSAN

@FLU

FLA

5/10@FL

APAY FLU

@PAL

GRE@SA

N

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

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)

Round FLU SAN FLA GRE PAL PAY

1/6 PAY PAL GRE@FL

A@SA

N@FL

U

2/7 GRE@FL

ASAN

@FLU

PAY@PA

L

3/8@SA

NFLU

@PAL

PAY FLA@GR

E

4/9 PAL@GR

E@PA

YSAN

@FLU

FLA

5/10@FL

APAY FLU

@PAL

GRE@SA

N

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

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)

Round FLU SAN FLA GRE PAL PAY

1/6 PAY@PA

LGRE

@FLA

SAN@FL

U

2/7 GRE@FL

ASAN

@FLU

PAY@PA

L

3/8@SA

NFLU

@PAL

PAY FLA@GR

E

4/9 PAL@GR

E@PA

YSAN

@FLU

FLA

5/10@FL

APAY FLU

@PAL

GRE@SA

N

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

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)

Round FLU SAN FLA GRE PAL PAY

1/6 PAY@PA

LGRE

@FLA

SAN@FL

U

2/7 GRE@FL

ASAN

@FLU

PAY@PA

L

3/8@SA

NFLU

@PAL

PAY FLA@GR

E

4/9 PAL@GR

E@PA

YSAN

@FLU

FLA

5/10@FL

APAY FLU

@PAL

GRE@SA

N

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

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)

Round FLU SAN FLA GRE PAL PAY

1/6 PAY@PA

LSAN

@FLA

GRE@FL

U

2/7 GRE@FL

APAY

@FLU

SAN@PA

L

3/8@SA

NFLU PAL PAY

@FLA

@GRE

4/9 PAL@GR

E@FL

USAN

@PAY

FLA

5/10@FL

APAY GRE

@PAL

FLU@SA

N

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

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 n8, not always possible).

Rounds ATM SAP CON FLA FLU INT CRU GRE1/82/9 FLA @INT @ATM SAP3/104/11 @SAP ATM @INT FLA5/126/137/14

30’

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

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 n8, not always possible).

Rounds ATM SAP CON FLA FLU INT CRU GRE1/82/9 @SAP ATM @INT FLA3/104/11 FLA @INT @ATM SAP5/126/137/14

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

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.

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

December 2003 Traveling tournament problem47/88

Neighborhoods

4 3

2

1

5

6

2

Enforce game 1vs. 3 at round (factor) 2.

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

December 2003 Traveling tournament problem48/88

4 3

2

1

5

6

2Neighborhoods

Teams 1 and 3 are now playing twice in this round.

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

December 2003 Traveling tournament problem49/88

4 3

2

1

5

6

2Neighborhoods

Eliminate the other games played by teams 1 and 3 in this round.

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

December 2003 Traveling tournament problem50/88

4 3

2

1

5

6

2Neighborhoods

Enforce the former oponents of teams 1 and 3 to play each other in this round: new game 2 vs. 4 in this round.

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

December 2003 Traveling tournament problem51/88

4 3

2

1

5

6

4Neighborhoods

Consider the factor where game 2 vs. 4 was scheduled.

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

December 2003 Traveling tournament problem52/88

Neighborhoods

4 3

2

1

5

6

4

Enforce game 1 vs. 4 (eliminated from round 2) to be played in this round.

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

December 2003 Traveling tournament problem53/88

Neighborhoods

4 3

2

1

5

6

4

Eliminate games 2 vs. 4 (enforced in round 2) and 1 vs. 5 (since team 1 cannot play twice).

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

December 2003 Traveling tournament problem54/88

Neighborhoods

4 3

2

1

5

6

4

Enforce game 2 vs. 5 to be played in this round.

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

December 2003 Traveling tournament problem55/88

Neighborhoods

4 3

2

1

5

6

1

Consider the factor where game 2 vs. 5 was scheduled.

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

December 2003 Traveling tournament problem56/88

Neighborhoods

4 3

2

1

5

6

1

Enforce game 1 vs. 5 (eliminated from round 4) to be played in this round.

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

December 2003 Traveling tournament problem57/88

Neighborhoods

4 3

2

1

5

6

1

Eliminate games 2 vs. 5 (enforced in round 4) and 1 vs. 6 (since team 1 cannot play twice).

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

December 2003 Traveling tournament problem58/88

Neighborhoods

4 3

2

1

5

6

1

Enforce game 2 vs. 6 to be played in this round.

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

December 2003 Traveling tournament problem59/88

Neighborhoods

4 3

2

1

5

6

5

Consider the factor where game 2 vs. 6 was scheduled.

40’

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

December 2003 Traveling tournament problem60/88

Neighborhoods

4 3

2

1

5

6

5

Enforce game 1 vs. 6 (eliminated from round 1)to be played in this round.

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

December 2003 Traveling tournament problem61/88

Neighborhoods

4 3

2

1

5

6

5

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).

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

December 2003 Traveling tournament problem62/88

Neighborhoods

4 3

2

1

5

6

5

Finally, enforce game 2 vs. 3 (eliminated from round 2 at the beginning of the ejection chain ) to be played in this round.

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

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.

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

December 2003 Traveling tournament problem64/88

Neighborhoods

• PRS = GR for n=4; PRS GR for n6.• 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.

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

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.

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

December 2003 Traveling tournament problem66/88

Summary• Motivation• Formulation• Constructive heuristic• Neighborhoods• Iterated local search• Extended ILS: GRASP + ILS

heuristic• Computational results• Concluding remarks

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

December 2003 Traveling tournament problem67/88

Iterated local searchMartin, 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

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

December 2003 Traveling tournament problem68/88

Extended GRASP + ILS heuristic

while .not.StoppingCriterionS 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 ReinitializationCriterionend

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

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.

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

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.

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

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).

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

December 2003 Traveling tournament problem72/88

Extended GRASP + ILS heuristic

while .not.StoppingCriterionS 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 ReinitializationCriterionend

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

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’

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

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.

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

December 2003 Traveling tournament problem75/88

Summary• Motivation• Formulation• Constructive heuristic• Neighborhoods• Iterated local search• Extended ILS: GRASP + ILS

heuristic• Computational results• Concluding remarks

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

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.

• 2003 edition of the Brazilian national soccer championship with 24 teams.

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

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).

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

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

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

December 2003 Traveling tournament problem79/88

Computational results

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

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 plotsAiex, Resende, & Ribeiro: “Probability distribution of solution time in GRASP: An experimental investigation”, (2002)Resende & Ribeiro: “GRASP and path-relinking: Recent advances and applications”, (2003)

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

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’

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

December 2003 Traveling tournament problem82/88

Computational results

0

10

20

30

40

50

60

70

80

90

100

1 10 100 1000 10000

Cum

ula

tive p

robabili

ty

Time (seconds)

GRASP+ILS

Instance: br24Target: 586,000 kms

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

December 2003 Traveling tournament problem83/88

Computational results

560000

570000

580000

590000

600000

610000

620000

630000

640000

0 100 200 300 400 500 600

Solu

tion v

alu

e

Time (seconds)

GRASP+ILS solution value

Instance: br24Time: 10 minutes

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

December 2003 Traveling tournament problem84/88

Computational results

540000

550000

560000

570000

580000

590000

600000

610000

620000

630000

640000

0 3600 7200 10800 14400 18000 21600 25200 28800 32400 36000 39600 43200

Solu

tion v

alu

e

Time (seconds)

GRASP+ILS solution value

Instance: br24Time: 12 hours

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

December 2003 Traveling tournament problem85/88

Summary• Motivation• Formulation• Constructive heuristic• Neighborhoods• Iterated local search• Extended ILS: GRASP + ILS

heuristic• Computational results• Concluding remarks

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

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 2002.

• Effectiveness of ejection chain neighborhood.

• Significant savings in airfares costs and traveled distance in real instance.

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

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.

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

December 2003 Traveling tournament problem88/88

Slides and publications

• Slides of this talk can be downloaded from: http://www.inf.puc-rio.br/~celso/talks

• This paper (soon) and other papers about GRASP, path-relinking, and their applications available at:http://www.inf.puc-rio.br/~celso/publicacoes

• Materials about applications of OR techniques to problems in sports management and scheduling may be found at: http://www.esportemax.orgPlease let us know about new links and materials!

60’