PVC routing algorithms

Download Report

Transcript PVC routing algorithms

Heuristics for the Traveling Tournament Problem:
Scheduling the Brazilian Soccer Championship
Celso C. RIBEIRO
Sebastián URRUTIA
May 2004
1/90
Traveling tournament problem
Summary
•
•
•
•
•
•
Formulation
Constructive heuristic
Neighborhoods
Extended GRASP + ILS heuristic
Computational results
Concluding remarks
May 2004
2/90
Traveling tournament problem
Formulation
• 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.
May 2004
3/90
Traveling tournament problem
Formulation
• Conditions:
–
–
–
–
May 2004
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.
4/90
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).
May 2004
5/90
Traveling tournament problem
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.
May 2004
6/90
Traveling tournament problem
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.
May 2004
7/90
Traveling tournament problem
Formulation
• Some references:
– Easton, Nemhauser, & Trick, “Scheduling in sports”,
Handbook of Scheduling (2004)
– 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
May 2004
8/90
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 edgedisjoint factors G1=(V,E1), ..., Gp=(V,Ep), with
E1...Ep=E.
• All factors in a 1-factorization of G are 1factors.
May 2004
9/90
Traveling tournament problem
Formulation
1
5
2
4
3
Example:
1-factorization of K6
May 2004
6
10/90
Traveling tournament problem
Formulation
1
1
5
2
4
3
Example:
1-factorization of K6
May 2004
6
11/90
Traveling tournament problem
Formulation
2
1
5
2
4
3
Example:
1-factorization of K6
May 2004
6
12/90
Traveling tournament problem
Formulation
3
1
5
2
4
3
Example:
1-factorization of K6
May 2004
6
13/90
Traveling tournament problem
Formulation
4
1
5
2
4
3
Example:
1-factorization of K6
May 2004
6
14/90
Traveling tournament problem
Formulation
5
1
5
2
4
3
Example:
1-factorization of K6
May 2004
6
15/90
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
nonisomorphic
one-factorizations
May 2004 526,915,62016/90
Traveling
tournament problem
of K12” (1995)
Summary
•
•
•
•
•
•
Formulation
Constructive heuristic
Neighborhoods
Extended GRASP + ILS heuristic
Computational results
Concluding remarks
May 2004
17/90
Traveling tournament problem
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).
–
May 2004
Other algorithms first define the home/away
pattern and then assign teams to games.
18/90
Traveling tournament problem
Constructive heuristic
•
Step 1: schedule games using abstract
teams
–
–
–
May 2004
This phase creates the structure of the
tournament.
“Polygon method” is used.
Tournament structure is fixed and
will not change in the other steps.
19/90
Traveling tournament problem
Constructive heuristic
6
Example:
“polygon method” for n=6
1
5
2
1st round
4
May 2004
20/90
3
Traveling tournament problem
Constructive heuristic
6
Example:
“polygon method” for n=6
5
4
1
2nd round
3
May 2004
21/90
2
Traveling tournament problem
Constructive heuristic
6
Example:
“polygon method” for n=6
4
3
5
3rd round
2
May 2004
22/90
1
Traveling tournament problem
Constructive heuristic
6
Example:
“polygon method” for n=6
3
2
4
4th round
1
May 2004
23/90
5
Traveling tournament problem
Constructive heuristic
6
Example:
“polygon method” for n=6
2
1
3
5th round
5
May 2004
24/90
4
Traveling tournament problem
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
May 2004
25/90
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:
•
May 2004
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.
26/90
Traveling tournament problem
Constructive heuristic
May 2004
A
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
27/90
Traveling tournament problem
Constructive heuristic
•
Step 2: assign real teams to abstract teams
–
–
–
May 2004
“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.
28/90
Traveling tournament problem
Constructive heuristic
0 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4
4 0 2 25 0 0 0 0 0 0 0 0 0 0 25 2
4 2 0 2 25 0 0 0 0 0 0 0 0 0 0 25
4 25 2 0 2 25 0 0 0 0 0 0 0 0 0 0
4 0 25 2 0 2 25 0 0 0 0 0 0 0 0 0
4 0 0 25 2 0 2 25 0 0 0 0 0 0 0 0
4 0 0 0 25 2 0 2 25 0 0 0 0 0 0 0
3 0 0 0 0 25 2 0 2 26 0 0 0 0 0 0
4 0 0 0 0 0 25 2 0 1 26 0 0 0 0 0
4 0 0 0 0 0 0 26 1 0 2 25 0 0 0 0
3 0 0 0 0 0 0 0 26 2 0 2 25 0 0 0
4 0 0 0 0 0 0 0 0 25 2 0 2 25 0 0
4 0 0 0 0 0 0 0 0 0 25 2 0 2 25 0
4 0 0 0 0 0 0 0 0 0 0 25 2 0 2 25
4 25 0 0 0 0 0 0 0 0 0 0 25 2 0 2
4 2 25 0 0 0 0 0 0 0 0 0 0 25 2 0
May 2004
29/90
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
May 2004
30/90
Traveling tournament problem
Constructive heuristic
Real teams (n=6)
Round FLU SAN FLA GRE PAL PAY
May 2004
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
31/90
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:
•
•
May 2004
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.
32/90
Traveling tournament problem
Constructive heuristic
Real teams (n=6)
Round
FLU
SAN
FLA
GRE
1/6
PAY
@PAL
GRE
@FLA SAN @FLU
2/7
GRE
@FLA SAN @FLU
3/8
@SA
N
4/9
PAL
5/10
May 2004
@FLA
FLU
@PAL
PAY
PAL
PAY
@PAL
FLA
@GRE
@GRE @PAY SAN @FLU
PAY
33/90
FLU
@PAL
PAY
GRE
Traveling tournament problem
FLA
@SA
N
Summary
•
•
•
•
•
•
Formulation
Constructive heuristic
Neighborhoods
Extended GRASP + ILS heuristic
Computational results
Concluding remarks
May 2004
34/90
Traveling tournament problem
Neighborhoods
• Neighborhood “home-away swap” (HAS):
select a game and exchange the stadium
where it takes place. Real teams (n=6)
May 2004
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
@SA
N
FLU
@PAL
PAY
FLA
@GRE
4/9
PAL
@GRE @PAY
SAN
@FLU
FLA
5/10
@FLA
@PAL
GRE
@SA
N
35/90
PAY
FLU
Traveling tournament problem
Neighborhoods
• Neighborhood “home-away swap” (HAS):
select a game and exchange the stadium
where it takes place. Real teams (n=6)
May 2004
Round
FLU
SAN
FLA
GRE
PAL
PAY
1/6
PAY
PAL
GRE
@FLA
@SA
N
@FLU
2/7
GRE
@FLA
SAN
@FLU
PAY
@PAL
3/8
@SA
N
FLU
@PAL
PAY
FLA
@GRE
4/9
PAL
@GRE @PAY
SAN
@FLU
FLA
5/10
@FLA
36/90
PAY
@SA
FLUTraveling
@PAL
GRE
tournament problemN
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)
May 2004
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
@SA
N
FLU
@PAL
PAY
FLA
@GRE
4/9
PAL
@GRE @PAY
SAN
@FLU
FLA
5/10
@FLA
@PAL
GRE
@SA
N
37/90
PAY
FLU
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.
Real teams (n=6)
May 2004
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
@SA
N
FLU
@PAL
PAY
FLA
@GRE
4/9
PAL
@GRE @PAY
SAN
@FLU
FLA
5/10
@FLA
@PAL
GRE
@SA
N
38/90
PAY
FLU
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.
Real teams (n=6)
May 2004
Round
FLU
SAN
FLA
GRE
PAL
PAY
1/6
PAY
@PAL
SAN
@FLA
GRE
@FLU
2/7
GRE
@FLA
PAY
@FLU
SAN
@PAL
3/8
@SA
N
FLU
PAL
PAY
@FLA
@GRE
4/9
PAL
SAN
@PAY
FLA
5/10
@FLA
@PAL
FLU
@SA
N
39/90
@GRE @FLU
PAY
GRE
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 n8, not
always possible).
Rounds ATM
SAP
1/8
2/9
FLA @INT
3/10
4/11
@SAP ATM
5/12
6/13
7/14
May 2004
40/90
CON
FLA
FLU
INT
@ATM
SAP
@INT
FLA
CRU
Traveling tournament problem
GRE
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).
Rounds ATM
SAP
1/8
2/9
@SAP ATM
3/10
4/11
FLA @INT
5/12
6/13
7/14
May 2004
41/90
CON
FLA
FLU
INT
@INT
FLA
@ATM
SAP
CRU
Traveling tournament problem
GRE
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 1factorization.
May 2004
42/90
Traveling tournament problem
Neighborhoods
2
1
5
2
4
3
6
Enforce game 1vs. 3 at round (factor) 2.
May 2004
43/90
Traveling tournament problem
Neighborhoods
2
1
5
2
4
3
6
Teams 1 and 3 are now playing twice in this round.
May 2004
44/90
Traveling tournament problem
Neighborhoods
2
1
5
2
4
3
6
Eliminate the other games played by teams 1 and 3 in this round.
May 2004
45/90
Traveling tournament problem
Neighborhoods
2
1
5
2
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.
May 2004
46/90
Traveling tournament problem
Neighborhoods
4
1
5
2
4
3
6
Consider the factor where game 2 vs. 4 was scheduled.
May 2004
47/90
Traveling tournament problem
Neighborhoods
4
1
5
2
4
3
6
Enforce game 1 vs. 4 (eliminated from round 2) to be played in this ro
May 2004
48/90
Traveling tournament problem
Neighborhoods
4
1
5
2
4
3
6
Eliminate games 2 vs. 4 (enforced in round 2) and 1 vs. 5
(since team 1 cannot play twice).
May 2004
49/90
Traveling tournament problem
Neighborhoods
4
1
5
2
4
3
6
Enforce game 2 vs. 5 to be played in this round.
May 2004
50/90
Traveling tournament problem
Neighborhoods
1
1
5
2
4
3
6
Consider the factor where game 2 vs. 5 was scheduled.
May 2004
51/90
Traveling tournament problem
Neighborhoods
1
1
5
2
4
3
6
Enforce game 1 vs. 5 (eliminated from round 4)
to be played in this round.
May 2004
52/90
Traveling tournament problem
Neighborhoods
1
1
5
2
4
3
6
Eliminate games 2 vs. 5 (enforced in round 4) and 1 vs. 6
(since team 1 cannot play twice).
May 2004
53/90
Traveling tournament problem
Neighborhoods
1
1
5
2
4
3
6
Enforce game 2 vs. 6 to be played in this round.
May 2004
54/90
Traveling tournament problem
Neighborhoods
5
1
5
2
4
3
6
Consider the factor where game 2 vs. 6 was scheduled.
May 2004
55/90
Traveling tournament problem
Neighborhoods
5
1
5
2
4
3
6
Enforce game 1 vs. 6 (eliminated from round 1)
to be played in this round.
May 2004
56/90
Traveling tournament problem
Neighborhoods
5
1
5
2
4
3
6
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).
May 2004
57/90
Traveling tournament problem
Neighborhoods
5
1
5
2
4
3
6
Finally, enforce game 2 vs. 3 (eliminated from round 2 at the
beginning of the ejection chain ) to be played in this round.
May 2004
58/90
Traveling tournament problem
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.
May 2004
59/90
Traveling tournament problem
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.
May 2004
60/90
Traveling tournament problem
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.61/90
May 2004
Traveling tournament problem
Summary
•
•
•
•
•
•
Formulation
Constructive heuristic
Neighborhoods
Extended GRASP + ILS heuristic
Computational results
Concluding remarks
May 2004
62/90
Traveling tournament problem
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
May 2004
63/90
Traveling tournament problem
end
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.
May 2004
64/90
Traveling tournament problem
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.
May 2004
65/90
Traveling tournament problem
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 regarding
stadium assignment (more than three
consecutive home or away games).
– Perform a fast (very few infeasibilities in the
solution obtained after the GR move) tabu
search heuristic using the home-away swap
neighborhood.
– Tabu search stops
have
May 2004
66/90 when all infeasibilities
Traveling tournament problem
been eliminated.
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
May 2004
67/90
Traveling tournament problem
end
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.
May 2004
68/90
Traveling tournament problem
Extended GRASP + ILS heuristic
• Reinitialization criterion:
– If 50 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.
May 2004
69/90
Traveling tournament problem
Summary
•
•
•
•
•
•
Formulation
Constructive heuristic
Neighborhoods
Extended GRASP + ILS heuristic
Computational results
Concluding remarks
May 2004
70/90
Traveling tournament problem
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.
May 2004
71/90
Traveling tournament problem
Computational results
• All numerical results on a Pentium IV 2.0
MHz machine
• “Lower” bounds: best known approximate
solutions for the corresponding less
constrained unmirrored instances.
• Largest problems solved to optimality using
an integer programming formulation: n = 6
teams
Traveling
tournament
problem
– Gaps: 0.6% for72/90
n=8; 3.6% for
n=10
(MLB)
May 2004
Computational results
• Constructive heuristic:
– Very fast
• Instance nl16: 1000 runs in approximately 1 second
– Average gap is 17.1%, but the constructive
heuristic is several orders of magnitude faster
than the best heuristics.
• Better solutions than those found after several days of
computations by the ant colony with backtracking and
local search heuristic of Crauwells & Van Oudheusden
(2003)
May 2004
73/90
Traveling tournament problem
Computational results
• GRASP + ILS heuristic: time limit is 10 minutes
only (before this work, times were measured
in days!)
• Very robust: largest gap with respect to the
best known solution for the less constrained
unmirrored problem was only 11.2%
May 2004
74/90
Traveling tournament problem
Computational results
Instanc Best unmirrored Best mirrored
e
gap
(%)
circ12
circ14
420
682
456
714
8.6
4.7
8.5
1.1
circ16
circ18
976
1420
1004
1364
2.9
-3.9
115.3
284.2
circ20
nl12
nl14
1908
112298
190056
1882
120655
208086
-1.4
7.4
9.5
578.3
24.0
69.9
nl16
267194
285614
6.9
514.2
May 2004
75/90
Time to best
(s)
Traveling tournament problem
Computational results
Instanc Best unmirrored Best mirrored
e
gap
(%)
circ12
circ14
420
682
456
714
8.6
4.7
8.5
1.1
circ16
circ18
976
1420
1004
1364
2.9
-3.9
115.3
284.2
circ20
nl12
nl14
1908
112298
190056
1882
120655
208086
-1.4
7.4
9.5
578.3
24.0
69.9
nl16
267194
285614
6.9
514.2
May 2004
76/90
Time to best
(s)
Traveling tournament problem
Computational results
Instanc Best unmirrored Best mirrored
e
gap
(%)
circ12
circ14
420
682
456
714
8.6
4.7
8.5
1.1
circ16
circ18
976
1364
1004
1364
2.9
0.0
115.3
284.2
circ20
nl12
nl14
1882
112298
190056
1882
120655
208086
0.0
7.4
9.5
578.3
24.0
69.9
nl16
267194
285614
6.9
514.2
May 2004
77/90
Time to best
(s)
Traveling tournament problem
Computational results
• New heuristic improved by 3.9% and 1.4%
the best known solutions for the
corresponding less constrained unmirrored
instances circ18 and circ20.
• Computation times compare favorably with
other heuristics, e.g. for instance nl14:
– Anagnostopoulos et al. (2003): approximately
five days of computation time
– GRASP + ILS: 10 minutes (only 0.2%)
May 2004
78/90
Traveling tournament problem
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):
Our
solution: 506,433 kms (52% reduction)
(official
draw): 1, 048,134
kms
• Realized
Approximate
corresponding
potential
savings
in airfares:
US$ 1,700,000
May 2004
79/90
Traveling tournament problem
Summary
•
•
•
•
•
•
Formulation
Constructive heuristic
Neighborhoods
Extended GRASP + ILS heuristic
Computational results
Concluding remarks
May 2004
80/90
Traveling tournament problem
Concluding remarks
• Constructive heuristic is very fast and
effective.
• Extended GRASP + ILS heuristic found very
good solutions to benchmark instances:
– Very fast (10 minutes)
– Solutions found for some instances are even
better than those available for the
corresponding less constrained unmirrored
instances.
• Effectiveness of ejection chain
neighborhood.
May 2004
81/90
Traveling tournament problem
• Significant savings in airfares costs and
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.org
Please let us know about new links and materials!
May 2004
82/90
Traveling tournament problem
Computational results
•
Methodology used to evaluate and compare
different algorithms for the same problem:
–
May 2004
Probability distribution of time-to-targetsolution-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)
83/90
Traveling tournament problem
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.
May 2004
84/90
Traveling tournament problem
Computational results
100
GRASP+ILS
90
80
70
60
50
Instance: br24
Target: 586,000 kms
40
30
20
10
0
1
May 2004
10
85/90
100
1000
Time (seconds)
Traveling tournament problem
10000
Computational results
640000
630000
620000
GRASP+ILS solution value
610000
600000
Instance: br24
Time: 10 minutes
590000
580000
570000
560000
0
May 2004
100
200
300
400
500
600
Time (seconds)
86/90
Traveling tournament problem
Computational results
640000
630000
620000
GRASP+ILS solution value
610000
Instance: br24
Time: 12 hours
600000
590000
580000
570000
560000
550000
540000
0
May 2004
3600 720010800144001800021600252002880032400360003960043200
Time (seconds)
87/90
Traveling tournament problem
Concluding remarks
• Combination of constraint programming
with heuristics to handle difficult
constraints.
• Incorporation of additional real-life
constraints in progress: TV constraints, prescheduled games, complementary teams,
airfares + hotel costs, ...
• Talks with Brazilian federations of soccer
(CBF) and basketball (CBB) to schedule the
national tournaments.
May 2004
88/90
Traveling tournament problem