83
Celso C. Ribeiro OR on the Ball: Applications of Combinatorial Optimization in Sports Scheduling and Management V ALIO/EURO Workshop Paris, October 2005

OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

Celso C. Ribeiro

OR on the Ball: Applications of Combinatorial

Optimization in Sports Scheduling and Management

V ALIO/EURO WorkshopParis, October 2005

Page 2: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 2/83

Summary

MotivationQualification problems: deciding playoffs eliminationTimetabling: • Mirrored traveling tournament problem• Parallelization• Real-life application: scheduling the Brazilian soccer

championship

Referee assignment

Page 3: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83

Motivation

Sports management is a very attractive area for original, useful and motivating applications of Operations Research. Competitions involve many economic and logistic issues:• Athlete evaluation, team evaluation, tournament planning, team

management, economic estimation, marketing politics, security issues, design of fair rules, etc.

Game scheduling involves different constraints, logistic issues, multiple objectives, and several decision makers (league officials, team managers, TV, players associations, security services, etc…).Many tales about unfair draws!

Page 4: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

Applications in sports scheduling and management

Qualification: deciding playoffs elimination

Page 5: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 5/83

Motivation

Press announces very early the “chances of qualification” for each team, based on estimates and statistics that are often obscure: forecasts are frequently wrong!Guaranteed qualification problem: how many points a team must score to be qualified (i.e., to finish in the p first positions) for the playoffs of a given tournament?• Win: 3 points Tie: 1 point Lost: 0 point

Problem is NP-hard, but easy if each team scores only two points for a win!

Page 6: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 6/83

Formulation

Playoffs qualification problems:How many points a team must score to:

… be sure of finishing in the p first positions? (sufficient condition)… be able of finishing in the p first positions? (necessary condition)

2004 edition of the Brazilian soccer championship:To qualify for the League of Latin America Champions: p = 4To remain in the First Division (next year): p = 20

Page 7: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 7/83

Formulation

Guaranteed qualification problem: how many points team k must score to be sure of finishing in the p first positions?Compute the maximum number of points this team could make and still not being qualified among the p first, then add 1 to get the minimum number of points it must score to be sure of its qualification: GQS(k)Possible qualification problem: how many points team k must score to have a chance of finishing in the p first positions? PQS(k)

Page 8: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 8/83

Formulation

=otherwise

team beats team if

,0,1 ji

xij

jp j teamby daccumulatealready points =

tournament the of end theat teamby scored points jt j =

=otherwise

) team of ahead finishnot does team (i.e., if

,0,1 jktt

y kjj

Page 9: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 9/83

Formulation

[ ]

played be to still game

played be to still game

:tosubject

max

njyjinjnix

py

njyMtt

njxxxpt

jinjnixx

tkGQS

j

ij

kj j

jjk

ji ji jiijjijj

jiij

k

,...,1}1,0{),(:,...,1;,...,1}1,0{

,...,1)1(

,...,1)(1.3

),(:,...,1;,...,11

1)(

=∀∈

=∀=∀∈

=∀−≤−

=∀+−++=

=∀=∀≤+

+=

∑ ∑

≠ ≠

tk > tj ⇒ yj = 0

k = team being considered

Page 10: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 10/83

Formulation

Ties in the number of points may be resolved in favor of teams with more wins.In this model, add a very small value (necessarily smaller than one) to the number of points:

Use, e.g., .Using a similar model, compute PQS(k): minimum number of points for possible classification

(3 ) [1 ( )]j j ji ij jii j i jt p x x xε

≠ ≠= + + + − +∑ ∑

0.01ε =

Page 11: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 11/83

Formulation

When is team k considered as “mathematically qualified”?Team k is mathematically qualified when the previous problem is infeasible.When does team k depend only on itself to be qualified?Team k depends only on itself if GQS(k) is less than or equal to the total number of points it still has to play (all wins).When is team k considered as “mathematically eliminated”?Team k is mathematically eliminated when the associated possible qualification problem is infeasible.

Page 12: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 12/83

FUTMAX in the Net

FUTMAX project:• Multiagent system collects results from the web. • Integer programming models generated for all teams.• Models solved by CPLEX. • HTML file automatically created from results.

Automatic publication of the results: http://www.futmax.org (L.A. league of champions)

Page 13: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 13/83

FUTMAX in the press

Articles in journals, radio, and TV.SPORTV broadcasts statistics provided by FUTMAX.Spin-offs: HockeyPlex project (same idea applied to the National Hockey League, USA)FUTMAX was used several times to disprove statements made by team managers and the press.

Page 14: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 14/83

FUTMAX in the press

FALSE !

Page 15: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 15/83

Results

0

10

20

30

40

50

60

70

80

0 5 10 15 20 25 30

"PCG""PCP"

"Pontos""Posiveis"

FUTMAX may be used to address the behavior of each team:

Maximum points

Points for guaranteedqualification

Points for possiblequalification

Accumulated points

FLUMINENSE

Page 16: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 16/83

Publications

Ribeiro & Urrutia, “OR on the ball”, OR/MS Today, 2004.Ribeiro & Urrutia, “An application of integer programming to playoff elimination in football championships”, International Transactions in OR, 2005.Noronha, Lucena, Ribeiro, & Urrutia, “A multi-agent framework to retrieve and publish information about qualification and elimination in sports championships”, 2005.

Page 17: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

Applications in sports scheduling and management

Timetabling: mirrored traveling tournament problem

Page 18: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 18/83

Motivation

Game scheduling involves different constraints, logistic issues, multiple objectives, and several decision makers (league officials, team managers, TV stations, players’associations, security services, etc.).Total distance to be traveled is one of the important variables to be optimized, to reduce traveling costs and to give more time to the players for resting and training: unfair schedules should be avoided.Timetabling is the major area of applications of OR in sports.

Page 19: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 19/83

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.

Page 20: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 20/83

Problem formulation

Conditions:• Compact double round-robin tournament:

There are 2(n-1) rounds, each one with n/2 games.Each team plays against every other team twice, once at home andonce away.

• No team can play more than three games in a home stand (home games) or in a road trip (away games).

Traveling tournament problem (TTP): minimize the total distance traveled by all teams.Complexity: still open!Largest instance solved to date (sequential): n=6

Page 21: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 21/83

Problem formulation

Mirrored Traveling Tournament Problem (MTTP):• All teams face each other once in the first phase with the first

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.

Set of feasible solutions to the MTTP is a subset of the feasible solutions to the TTP.

Page 22: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 22/83

1-factorizations

Given a graph G=(V, E), a factor of G is a graph G’=(V,E’) with E’⊆E.G’ is an 1-factor if all its nodes have degree equal to one.An 1-factorization of G=(V,E) is a set of edge-disjoint 1-factors G1=(V,E1), ..., Gp=(V,Ep), such that E1∪...∪Ep=E.Oriented 1-factorization: assign orientations to the edges of an 1-factorization.Ordered oriented 1-factorization: assign an order to the factors of an oriented 1-factorization.

Page 23: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 23/83

1-factorizations

4 3

1

25

Example: Ordered oriented1-factorization of K6

6

Page 24: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 24/83

1-factorizations

4 3

21

5

6

1

4 3

21

5

6

2

4 3

21

5

6

3

4 3

21

5

6

4

4 3

21

5

6

5

Page 25: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 25/83

1-factorizations

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 oriented 1-factorization of Kn represents a

schedule for n teams.

Problem is huge: there are 526,915,620 non-isomorphic 1-factorizations of K12 (Dinitz, Garnick, & McKay, 1995)

Page 26: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 26/83

Constructive heuristic

Initial solution: three phases1. Schedule games using abstract teams: polygon method

defines the structure of the tournament, which will not change in the other steps.

2. Assign real teams to abstract teams: greedy heuristic to QAP (number of travels between stadiums of the abstract teams x distances between the stadiums of the real teams).

3. Select stadium for each game (home/away pattern) in the first phase (mirrored tournament): random assignment in the first round, simple rules, local search using home-away swaps.

Page 27: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 27/83

Constructive heuristic

Phase 1:• Schedule games using abstract teams: polygon method

defines the structure of the tournament. • Tornament structure will not change in the other

phases.

Page 28: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 28/83

Constructive heuristic

4 3

2

1

5

Example: polygon method for n=6

6

1st round

Page 29: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 29/83

Constructive heuristic

3 2

1

5

4

Example: polygon method for n=6

6

2nd round

Page 30: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 30/83

Constructive heuristic

2 1

5

4

3

Example: polygon method for n=6

6

3rd round

Page 31: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 31/83

Constructive heuristic

1 5

4

3

2

Example: polygon method for n=6

6

4th round

Page 32: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 32/83

Constructive heuristic

5 4

3

2

1

Example: polygon method for n=6

6

5th round

Page 33: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 33/83

Constructive heuristic

Phase 2: assign real teams to abstract teams• Build a matrix with the number of consecutive games for each

pair of abstract teams X and Y: the entry corresponding to X and Y gives the total number of times another team plays consecutively with X and Y, in any order.

• Assign real teams to abstract teams using a greedy algorithm: pairs of real teams whose stadiums are close are assigned to pairs of abstract teams with large entries in the matrix of consecutive games (QAP heuristic).

Page 34: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 34/83

Constructive heuristic

034344F

302562E

420255D

352026C

465201B

425610A

FEDCBA

Page 35: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 35/83

Constructive heuristic

Phase 3: assign stadiums to games• Build a feasible assignment of stadiums, starting from a

random assignment in the first round.• Improve this assignment, using a simple local search

algorithm based on home-away swaps.

Page 36: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 36/83

Metaheuristics based on local search.Local search explores moves in three neighborhoods:• Home-away swaps: change the stadium of a single game• Team swaps: exchange the games of two teams over all rounds• Partial round swaps: find two games AxB and CxD in round X

and two games AxC and BxD in round Y and exchange the rounds where they take place (only for n≥8, not always exist).

Moves in these neighborhoods are easy to be computed, but not always lead to good hidden solutions.

Local search

Page 37: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 37/83

Neighborhood: home-away swap

4 3

21

5

64 3

21

5

64 3

21

5

6

4 3

21

5

64 3

21

5

6

Page 38: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 38/83

Neighborhood: home-away swap

1

4 3

21

5

64 3

21

5

6

4 3

2

6

5

4 3

21

5

64 3

21

5

6

Page 39: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 39/83

Neighborhood: team-swap

4 3

21

5

64 3

21

5

64 3

21

5

6

4 3

21

5

64 3

21

5

6

Page 40: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 40/83

Neighborhood: team-swap

4 3

12

5

64 3

12

5

64 3

12

5

6

4 3

12

5

64 3

12

5

6

Page 41: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 41/83

Neighborhood: partial round swap

7 4

3

1

8

6

2

5

7 4

3

1

8

5

2

6

Page 42: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 42/83

Neighborhood: partial round swap

7 4

3

1

8

6

1 22

55

7 4

38

6

Page 43: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 43/83

Local search

Moves in a more complex neighborhood are explored as perturbations.Ejection chain:• Enforce a game into a given round.• Use an ejection chain to recover an 1-factorization.

Page 44: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 44/83

Ejection chain: game rotation

4 3

21

5

64 3

21

5

64 3

21

5

6

4 3

21

5

64 3

21

5

6

Page 45: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 45/83

Ejection chain: game rotation

1

4 3

21

6

15

4 3

25

64 3

25

6

4 3

21

5

64

5

3

2

6

1

Page 46: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 46/83

Ejection chain: game rotation

4 3

21

6

5

3

21

6

1

4

5

4 3

25

6

4 3

21

6

15

3

2

64

5

Page 47: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 47/83

Ejection chain: game rotation

4 3

21

6

5

4 3

21

6

15

4 3

25

6

4 3

21

5

6

1

3

2

64

5

Page 48: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 48/83

Ejection chain: game rotation

1

63

21

6

1

4 3

25

4

5

4 3

25

6

4

15

3

2

6

1

3

2

64

5

Page 49: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 49/83

Ejection chain: game rotation

3

21

64 3

21

6

15

4

5

4 3

25

6

4

15

3

2

6

1

3

2

64

5

Page 50: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 50/83

Ejection chain: game rotation

3

21

64 3

21

6

15

4

5

4 3

25

6

4

15

3

2

6

1

3

2

64

5

Page 51: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 51/83

Ejection chain: game rotation

3

21

63

25

4

1

6

1

4

5

4 3

25

6

4

15

3

2

64

51

2

36

Page 52: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 52/83

Ejection chain: game rotation

4 3

2

6

15

4

15

3

21

6

1

4

5

4 3

25

6

3

2

64

51

6

2

3

Page 53: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 53/83

Ejection chain: game rotation

4 3

2

6

15

4

15

3

21

6

1

4

5

4 3

25

6

3

2

64

51

63

2

Page 54: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 54/83

Local search

Moves in a more complex neighborhood are explored as perturbations.Ejection chain:• Enforce a game into a given round.• Use an ejection chain to recover an 1-factorization.• Length of the ejection chain is variable.• Ejection chain is able to find solutions that cannot be reached

by the other neighborhoods.• Partial round swaps may appear after an ejection chain move.• Only partial round swaps and game rotations may change the

structure of the schedule.

Page 55: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 55/83

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 56: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 56/83

Computational results

Circular instances with n = 12, ..., 20 teams.MLB instances with n = 12, ..., 16 teams. • All available from http://mat.gsia.cmu.edu/TOURN/• Largest instances exactly solved to date:

n=6 (sequential), n=8 (20 processors in parallel on 4 days)

Computational experiments on a Pentium IV 2.0 MHz.Comparisons with the best known solutions to the corresponding less constrained not necessarily mirrored instances (TTP).

Page 57: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 57/83

Computational results

Constructive heuristic:• Very fast

Instance MLB16: 1000 runs in approximately 1 second

• Average gap is 17.1%.• Better solutions than those found after several days of

computations by some metaheuristic approaches to the not necessarily mirrored version of the problem.

• Quick constructive heuristic is very effective in terms of solution quality: other approaches start from random initial solutions.

Page 58: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 58/83

Computational results

GRASP + ILS heuristic: time limit is 15 minutes only. Before this work, times were measured in days.Largest gap with respect to the best known solution to the less constrained not necessarily mirrored problem was 9,5%.

Page 59: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 59/83

Computational results

nl16

nl14

nl12

circ20

circ18

circ16

circ14

circ12

Instance

267194

190056

112298

1908

1420

976

682

420

Best unmirrored

285614

208086

120655

1882

1364

1004

714

456

Best mirrored

6.9

9.5

7.4

-1.4

-3.9

2.9

4.7

8.6

gap (%)

514.2

69.9

24.0

578.3

284.2

115.3

1.1

8.5

Time to best (s)

Page 60: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 60/83

Computational results

nl16

nl14

nl12

circ20

circ18

circ16

circ14

circ12

Instance

267194

190056

112298

1908

1420

976

682

420

Best unmirrored

285614

208086

120655

1882

1364

1004

714

456

Best mirrored

6.9

9.5

7.4

-1.4

-3.9

2.9

4.7

8.6

gap (%)

514.2

69.9

24.0

578.3

284.2

115.3

1.1

8.5

Time to best (s)

Page 61: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 61/83

Computational results

nl16

nl14

nl12

circ20

circ18

circ16

circ14

circ12

Instance

267194

190056

112298

1882

1364

976

682

420

Best unmirrored

285614

208086

120655

1882

1364

1004

714

456

Best mirrored

6.9

9.5

7.4

0.0

0.0

2.9

4.7

8.6

gap (%)

514.2

69.9

24.0

578.3

284.2

115.3

1.1

8.5

Time to best (s)

Page 62: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 62/83

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 kmsOur solution: 506,433 kms (reduction of 52%)

Page 63: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 63/83

Time-to-target-solution-value plot

0

10

20

30

40

50

60

70

80

90

100

1 10 100 1000 10000

Cum

ulat

ive

prob

abili

ty

Time (seconds)

GRASP+ILS

Instance: br24Target: 586,000 kms

Page 64: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 64/83

Computational results

560000

570000

580000

590000

600000

610000

620000

630000

640000

0 100 200 300 400 500 600

Sol

utio

n va

lue

Time (seconds)

GRASP+ILS solution value

Instance: br24Time: 10 minutes

Page 65: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 65/83

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

Sol

utio

n va

lue

Time (seconds)

GRASP+ILS solution value

Instance: br24Time: 12 hours

Page 66: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 66/83

Computational results

New heuristic improved by 3.9% and 1.4% the best known solutions to the corresponding less constrained unmirrored instances circ18 and circ20.Computation times are smaller than those of other heuristics, e.g. for instance MLB14:• Anagnostopoulos et al. (2003): approximately five days• GRASP + ILS: 15 minutes

Effectiveness of the ejection chain mechanism Optimal solutions for a new class of constant instances (up to n=16)

Page 67: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 67/83

Computational results

Page 68: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 68/83

Publications

Ribeiro & Urrutia, “Heuristics for the mirrored traveling tournament problem”, European Journal of Operational Research, to appear.Ribeiro & Urrutia, “Minimizing travels by maximizing breaks in round robin tournament schedules”, Electronic Notes in Discrete Mathematics, 2005.Urrutia & Ribeiro, “Maximizing breaks and bounding solutions to the mirrored traveling tournament problem”, Discrete Applied Mathematics, to appear.

Page 69: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 69/83

Parallel implementations

Four different parallel versions of the GRASP + ILS sequential heuristic:• Parallel independent (PAR-I)• Parallel one-off cooperation (PAR-0) (very weak cooperation) • Parallel with one elite solution (PAR-1P)• Parallel with M elite solutions (PAR-MP) (strong cooperation)

PAR-1P and PAR-MP are truly cooperative parallel versions.PAR-MP: master handles a pool of at most M elite solutions that are collected from and distributed upon request to the slaves at the end of their ILS phases.

Page 70: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 70/83

Parallel implementations

Algorithms implemented using:

• C++

• MPI-LAM (version 7.0.6)

• Globus

• EasyGrid middleware

Experiments:• Dedicated Linux cluster of 1.7 GHz Pentium IV machines, each

with 256 Mbytes of RAM

Page 71: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 71/83

Computational results

503158503158506433br24

272272276circ10

nl16circ18circ16

Instance

28561413641004

Sequential

2801741308

984

PAR-I/O/1P

2796181306

980

PAR-MP

Better solutions found by each parallel version

Page 72: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 72/83

Time-to-target-solution-value plot

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

1 10 100 1000 10000

prob

abili

ty

time to target value (seconds)

version PAR-Iversion PAR-O

version PAR-1Pversion PAR-MP

PAR-MP is more robust, to the left of the other strategies.

Instance nl16 on 8 processors, 100 runs

Cooperation helps!

Page 73: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 73/83

Time-to-target-solution-value plot

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

1 10 100 1000

prob

abili

ty

time to target value (seconds)

4 machines8 machines

16 machines24 machines

Instance br24 on 4, 8, 16, and 24 processors, 200 runs

Scalability of PAR-MP

Page 74: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 74/83

Publications

Best known solution for TTP and MTTP instance circ18 was obtained by the PAR-MP implementation of the GRASP + ILS heuristic.True (shared) grid implementation running on 80 machines distributed over 3 cities (100 kms away): significant speedups for same solution quality. Araújo, Boeres, Rebello, Ribeiro, & Urrutia, “A grid implementation of a GRASP-ILS heuristic for the MTTP”, Metaheuristics International Conference, 2005.

Page 75: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

Applications in sports scheduling and management

Scheduling the Brazilian soccer championship

Page 76: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 76/83

Brazilian soccer championship

TTP may be the appropriate model for some US tournaments (NHL, MLB, NBA) ...... but not for Brazilian tournaments!• MLB: a team may have to play up to 140 games in 6 months.• Brazil: few games in the middle of the week, teams return to

their home cities after each game.

What is the real problem to be solved?

Page 77: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 77/83

Brazilian soccer championship

Technical criteria:• Minimize the sequences of home and away games: ideally,

alternate home and away games (not possible for all teams).• A team that plays at home in the first round will play away in the

last (and vice-versa).• No important regional games in the last four rounds.• Stadium availability: all games take place at the same time in the

last round.• Security: complementary patterns for teams in the same city (to

avoid clashes of fans).

Page 78: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 78/83

Brazilian soccer championship

TV standards are the most important:• TV Globo is the major sponsor.• Set of more important teams: “Club of 13”• There should be an away game of an important team of Rio de

Janeiro (resp. São Paulo) against another team of “Club of 13” to be broadcast to Rio de Janeiro (resp. São Paulo) in every round, since TV does not broadcast games to the same city where they take place.

• Number of PPV channels available for broadcasting.• Availability of uplink transmission units.

Problem: minimize the number of violated criteria.

Page 79: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

Applications in sports scheduling and management

Referee assignment

Page 80: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 80/83

Referee assignment problem

Regional amateur leagues in the US (baseball, basketball, soccer): hundreds of games every weekend in different divisions• boys, girls• age: 8-10, 10-12, 12-14, 14-16, 16-18

In a single league in California there might be up to 500 soccer games in a weekend, to be refereed by 600 certified referees.Problem: assign referees to games.

Page 81: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 81/83

Referee assignment problem

Constraints:• Up to three referees may be necessary for each game.• Games require referees with different levels of certification.• A referee cannot be assigned to a game where he/she is a player.• Timetabling conflicts and traveling times.• Referee groups: cliques of referees that request to be assigned to

the same games (relatives, car pools).• Number of games a referee is willing to referee.• Traveling constraints.

Page 82: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 82/83

Referee assignment problem

Multicriteria optimization problem:• Difference between the number of games the referee is willing

to referee and the number of games to which he/she is assigned.

• Traveling times between different games.

Constructive + local search heuristicsResults soon!

Page 83: OR on the Ball: Applications of Combinatorial …celso/talks/AlioEuroParis.pdfOctober 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 3/83 Motivation

October 2005 V ALIO/EURO Workshop on Applied Combinatorial Optimization OR on the ball 83/83

Final remarks

Slides:http://www.inf.puc-rio.br/~celso/talks.htmPapers:http://www.inf.puc-rio.br/~celso/publicacoes.htm

OR applications in sports:http://www.esportemax.orgPlease let us know about new links and materials!