A new Branch-and-Price Algorithm for the Traveling Tournament - - PowerPoint PPT Presentation

a new branch and price algorithm for the traveling
SMART_READER_LITE
LIVE PREVIEW

A new Branch-and-Price Algorithm for the Traveling Tournament - - PowerPoint PPT Presentation

References A new Branch-and-Price Algorithm for the Traveling Tournament Problem (TTP) Column Generation 2008, Aussois, France Stefan Irnich 1 sirnich@or.rwth-aachen.de RWTH Aachen University Deutsche Post Endowed Chair of Optimization of


slide-1
SLIDE 1

References

A new Branch-and-Price Algorithm for the Traveling Tournament Problem (TTP) Column Generation 2008, Aussois, France

Stefan Irnich1 sirnich@or.rwth-aachen.de RWTH Aachen University Deutsche Post Endowed Chair of Optimization of Distribution Networks June 18th, 2008

1joint work with Ulrich Schrempp 1 / 33

slide-2
SLIDE 2

References

Round Robin Sports League Scheduling

Sports League Scheduling: in many sports leagues the teams play a double round robin tournament: even number n of teams every team plays against each other team twice;

  • nce home and once away

each team has ¯ n := n − 1 opponent teams, i.e., each team plays 2¯ n games schedule is tight: 2¯ n time slots, n

2 games in each slot

2 / 33

slide-3
SLIDE 3

References

Round Robin Sports League Scheduling

Sports League Scheduling: in many sports leagues the teams play a double round robin tournament: even number n of teams every team plays against each other team twice;

  • nce home and once away

each team has ¯ n := n − 1 opponent teams, i.e., each team plays 2¯ n games schedule is tight: 2¯ n time slots, n

2 games in each slot

2 / 33

slide-4
SLIDE 4

References

Round Robin Sports League Scheduling

Sports League Scheduling: in many sports leagues the teams play a double round robin tournament: even number n of teams every team plays against each other team twice;

  • nce home and once away

each team has ¯ n := n − 1 opponent teams, i.e., each team plays 2¯ n games schedule is tight: 2¯ n time slots, n

2 games in each slot

2 / 33

slide-5
SLIDE 5

References

Round Robin Sports League Scheduling

Sports League Scheduling: in many sports leagues the teams play a double round robin tournament: even number n of teams every team plays against each other team twice;

  • nce home and once away

each team has ¯ n := n − 1 opponent teams, i.e., each team plays 2¯ n games schedule is tight: 2¯ n time slots, n

2 games in each slot

2 / 33

slide-6
SLIDE 6

References

Round Robin Sports League Scheduling

Sports League Scheduling: in many sports leagues the teams play a double round robin tournament: even number n of teams every team plays against each other team twice;

  • nce home and once away

each team has ¯ n := n − 1 opponent teams, i.e., each team plays 2¯ n games schedule is tight: 2¯ n time slots, n

2 games in each slot

2 / 33

slide-7
SLIDE 7

References

Round Robin Sports League Scheduling

Example: n = 4 teams ⇒ ¯ n = 3 opponents ⇒ 2¯ n = 6 time slots, each with n

2 = 2 games

A feasible solution: ↓→ time slot 1 2 3 4 5 6 team 1: +3 +2 +4 −2 −3 −4 team 2: +4 −1 −3 +1 −4 +3 team 3: −1 +4 +2 −4 +1 −2 team 4: −2 −3 −1 +3 +2 +1 “+′′ home (H) “−′′ away (A)

3 / 33

slide-8
SLIDE 8

References

Round Robin Sports League Scheduling

Example: n = 4 teams ⇒ ¯ n = 3 opponents ⇒ 2¯ n = 6 time slots, each with n

2 = 2 games

A feasible solution: ↓→ time slot 1 2 3 4 5 6 team 1: +3 +2 +4 −2 −3 −4 team 2: +4 −1 −3 +1 −4 +3 team 3: −1 +4 +2 −4 +1 −2 team 4: −2 −3 −1 +3 +2 +1 “+′′ home (H) “−′′ away (A)

3 / 33

slide-9
SLIDE 9

References

Round Robin Sports League Scheduling

In some sports leagues teams travel directly from one away game to the next away game! In North-America: baseball, Basketball, Ice-Hockey etc. Example (Cont.): Teams always start at home and return home at the end! Distances traveled: team 1 : d12 + d23 + d34 + d41 team 2 : d21 + d13 + d32 + d24 + d42 team 3 : d31 + d13 + d34 + d43 + d32 + d23 team 4 : d42 + d23 + d31 + d14

4 / 33

slide-10
SLIDE 10

References

Round Robin Sports League Scheduling

In some sports leagues teams travel directly from one away game to the next away game! In North-America: baseball, Basketball, Ice-Hockey etc. Example (Cont.): Teams always start at home and return home at the end! Distances traveled: team 1 : d12 + d23 + d34 + d41 team 2 : d21 + d13 + d32 + d24 + d42 team 3 : d31 + d13 + d34 + d43 + d32 + d23 team 4 : d42 + d23 + d31 + d14

4 / 33

slide-11
SLIDE 11

References

Round Robin Sports League Scheduling

In some sports leagues teams travel directly from one away game to the next away game! In North-America: baseball, Basketball, Ice-Hockey etc. Example (Cont.): ↓→ time slot 1 2 3 4 5 6 team 1: +3 +2 +4 −2 −3 −4 team 2: +4 −1 −3 +1 −4 +3 team 3: −1 +4 +2 −4 +1 −2 team 4: −2 −3 −1 +3 +2 +1 “+′′ home (H) “−′′ away (A) Teams always start at home and return home at the end! Distances traveled: team 1 : d12 + d23 + d34 + d41 team 2 : d21 + d13 + d32 + d24 + d42 team 3 : d31 + d13 + d34 + d43 + d32 + d23 team 4 : d42 + d23 + d31 + d14

4 / 33

slide-12
SLIDE 12

References

Round Robin Sports League Scheduling

In some sports leagues teams travel directly from one away game to the next away game! In North-America: baseball, Basketball, Ice-Hockey etc. Example (Cont.): ↓→ time slot 1 2 3 4 5 6 team 1: H H H −2 −3 −4 team 2: H −1 −3 H −4 H team 3: −1 H H −4 H −2 team 4: −2 −3 −1 H H H “+′′ home (H) “−′′ away (A) Teams always start at home and return home at the end! Distances traveled: team 1 : d12 + d23 + d34 + d41 team 2 : d21 + d13 + d32 + d24 + d42 team 3 : d31 + d13 + d34 + d43 + d32 + d23 team 4 : d42 + d23 + d31 + d14

4 / 33

slide-13
SLIDE 13

References

Round Robin Sports League Scheduling

In some sports leagues teams travel directly from one away game to the next away game! In North-America: baseball, Basketball, Ice-Hockey etc. Example (Cont.): ↓→ time slot 1 2 3 4 5 6 team 1: H H H −2 −3 −4 team 2: H −1 −3 H −4 H team 3: −1 H H −4 H −2 team 4: −2 −3 −1 H H H “+′′ home (H) “−′′ away (A) Teams always start at home and return home at the end! Distances traveled: team 1 : d12 + d23 + d34 + d41 team 2 : d21 + d13 + d32 + d24 + d42 team 3 : d31 + d13 + d34 + d43 + d32 + d23 team 4 : d42 + d23 + d31 + d14

4 / 33

slide-14
SLIDE 14

References

Round Robin Sports League Scheduling

In some sports leagues teams travel directly from one away game to the next away game! In North-America: baseball, Basketball, Ice-Hockey etc. Example (Cont.): ↓→ time slot 1 2 3 4 5 6 team 1: H H H −2 −3 −4 team 2: H −1 −3 H −4 H team 3: −1 H H −4 H −2 team 4: −2 −3 −1 H H H “+′′ home (H) “−′′ away (A) Teams always start at home and return home at the end! Distances traveled: team 1 : d12 + d23 + d34 + d41 team 2 : d21 + d13 + d32 + d24 + d42 team 3 : d31 + d13 + d34 + d43 + d32 + d23 team 4 : d42 + d23 + d31 + d14

4 / 33

slide-15
SLIDE 15

References

Round Robin Sports League Scheduling

In some sports leagues teams travel directly from one away game to the next away game! In North-America: baseball, Basketball, Ice-Hockey etc. Example (Cont.): ↓→ time slot 1 2 3 4 5 6 team 1: H H H −2 −3 −4 team 2: H −1 −3 H −4 H team 3: −1 H H −4 H −2 team 4: −2 −3 −1 H H H “+′′ home (H) “−′′ away (A) Teams always start at home and return home at the end! Distances traveled: team 1 : d12 + d23 + d34 + d41 team 2 : d21 + d13 + d32 + d24 + d42 team 3 : d31 + d13 + d34 + d43 + d32 + d23 team 4 : d42 + d23 + d31 + d14

4 / 33

slide-16
SLIDE 16

References

Round Robin Sports League Scheduling

In some sports leagues teams travel directly from one away game to the next away game! In North-America: baseball, Basketball, Ice-Hockey etc. Example (Cont.): ↓→ time slot 1 2 3 4 5 6 team 1: H H H −2 −3 −4 team 2: H −1 −3 H −4 H team 3: −1 H H −4 H −2 team 4: −2 −3 −1 H H H “+′′ home (H) “−′′ away (A) Teams always start at home and return home at the end! Distances traveled: team 1 : d12 + d23 + d34 + d41 team 2 : d21 + d13 + d32 + d24 + d42 team 3 : d31 + d13 + d34 + d43 + d32 + d23 team 4 : d42 + d23 + d31 + d14

4 / 33

slide-17
SLIDE 17

References

Round Robin Sports League Scheduling

If an away game is followed by another away game or a home game is followed by another home game, this is called a break. In an attractive schedules, the number of breaks is small. Break minimization

no additional constraints: constructive methods →timetables with n − 2 breaks (SRR), 3n − 6 (MDRR) etc. in general: minimization of breaks, s.t. additional constraints approaches: heuristics, IP or combined IP/CP (Nemhauser and Trick, 1998; Henz, 2001)

Distance minimization

  • bjective: minimize distance,

i.e., function separable by teams constraints: number of (consecutive) breaks approaches: heuristics, combined IP and CP (Easton et al., 2003)

5 / 33

slide-18
SLIDE 18

References

Round Robin Sports League Scheduling

If an away game is followed by another away game or a home game is followed by another home game, this is called a break. In an attractive schedules, the number of breaks is small. Break minimization

no additional constraints: constructive methods →timetables with n − 2 breaks (SRR), 3n − 6 (MDRR) etc. in general: minimization of breaks, s.t. additional constraints approaches: heuristics, IP or combined IP/CP (Nemhauser and Trick, 1998; Henz, 2001)

Distance minimization

  • bjective: minimize distance,

i.e., function separable by teams constraints: number of (consecutive) breaks approaches: heuristics, combined IP and CP (Easton et al., 2003)

5 / 33

slide-19
SLIDE 19

References

Round Robin Sports League Scheduling

If an away game is followed by another away game or a home game is followed by another home game, this is called a break. In an attractive schedules, the number of breaks is small. Break minimization

no additional constraints: constructive methods →timetables with n − 2 breaks (SRR), 3n − 6 (MDRR) etc. in general: minimization of breaks, s.t. additional constraints approaches: heuristics, IP or combined IP/CP (Nemhauser and Trick, 1998; Henz, 2001)

Distance minimization

  • bjective: minimize distance,

i.e., function separable by teams constraints: number of (consecutive) breaks approaches: heuristics, combined IP and CP (Easton et al., 2003)

5 / 33

slide-20
SLIDE 20

References

Round Robin Sports League Scheduling

If an away game is followed by another away game or a home game is followed by another home game, this is called a break. In an attractive schedules, the number of breaks is small. Break minimization

no additional constraints: constructive methods →timetables with n − 2 breaks (SRR), 3n − 6 (MDRR) etc. in general: minimization of breaks, s.t. additional constraints approaches: heuristics, IP or combined IP/CP (Nemhauser and Trick, 1998; Henz, 2001)

Distance minimization

  • bjective: minimize distance,

i.e., function separable by teams constraints: number of (consecutive) breaks approaches: heuristics, combined IP and CP (Easton et al., 2003)

5 / 33

slide-21
SLIDE 21

References

What is the TTP?

The Traveling Tournament Problem (TTP) is as follows: Input: n the number of teams D = (dij) an n × n integer distance matrix L and U integer parameters Output: A double round robin tournament on the n teams such that the number of consecutive home games and consecutive away games are between L and U inclusive (typically L = 1 non-restrictive), and the total distance travelled by the teams is minimized (optional) no-repeater constraints: game A-B not followed by game B-A

6 / 33

slide-22
SLIDE 22

References

What is the TTP?

The Traveling Tournament Problem (TTP) is as follows: Input: n the number of teams D = (dij) an n × n integer distance matrix L and U integer parameters Output: A double round robin tournament on the n teams such that the number of consecutive home games and consecutive away games are between L and U inclusive (typically L = 1 non-restrictive), and the total distance travelled by the teams is minimized (optional) no-repeater constraints: game A-B not followed by game B-A

6 / 33

slide-23
SLIDE 23

References

What is the TTP?

The Traveling Tournament Problem (TTP) is as follows: Input: n the number of teams D = (dij) an n × n integer distance matrix L and U integer parameters Output: A double round robin tournament on the n teams such that the number of consecutive home games and consecutive away games are between L and U inclusive (typically L = 1 non-restrictive), and the total distance travelled by the teams is minimized (optional) no-repeater constraints: game A-B not followed by game B-A

6 / 33

slide-24
SLIDE 24

References

What is the TTP?

The Traveling Tournament Problem (TTP) is as follows: Input: n the number of teams D = (dij) an n × n integer distance matrix L and U integer parameters Output: A double round robin tournament on the n teams such that the number of consecutive home games and consecutive away games are between L and U inclusive (typically L = 1 non-restrictive), and the total distance travelled by the teams is minimized (optional) no-repeater constraints: game A-B not followed by game B-A

6 / 33

slide-25
SLIDE 25

References

What is the TTP?

The Traveling Tournament Problem (TTP) is as follows: Input: n the number of teams D = (dij) an n × n integer distance matrix L and U integer parameters Output: A double round robin tournament on the n teams such that the number of consecutive home games and consecutive away games are between L and U inclusive (typically L = 1 non-restrictive), and the total distance travelled by the teams is minimized (optional) no-repeater constraints: game A-B not followed by game B-A

6 / 33

slide-26
SLIDE 26

References

Extensive Formulation

Easton et al. (2003) proposed the following extensive (CG) formulation based on the tour variables λt

p:

Pt set of tours for team t tour p ∈ Pt has cost cp At

s,t′ = {tour of team t with away game against t′ in slot s}

min

  • t∈T
  • p∈Pt

cpλt

p

s.t.

  • p∈Pt :

∃t′:p∈At s,t′

λt

p

  • team t

plays away +

  • t′∈T:

t′=t

  • p∈Pt′ :

p∈At′ st

λt′

p

  • team t′ = t plays

away against t = 1 ∀t ∈ T ∀s ∈ {1, . . . , 2¯ n} (1)

  • p∈Pt

λt

p = 1

∀t ∈ T (2) λt

p ∈ {0, 1}

∀t ∈ T, p ∈ Pt (3)

7 / 33

slide-27
SLIDE 27

References

Extensive Formulation

Easton et al. (2003) proposed the following extensive (CG) formulation based on the tour variables λt

p:

Pt set of tours for team t tour p ∈ Pt has cost cp At

s,t′ = {tour of team t with away game against t′ in slot s}

min

  • t∈T
  • p∈Pt

cpλt

p

s.t.

  • p∈Pt :

∃t′:p∈At s,t′

λt

p

  • team t

plays away +

  • t′∈T:

t′=t

  • p∈Pt′ :

p∈At′ st

λt′

p

  • team t′ = t plays

away against t = 1 ∀t ∈ T ∀s ∈ {1, . . . , 2¯ n} (1)

  • p∈Pt

λt

p = 1

∀t ∈ T (2) λt

p ∈ {0, 1}

∀t ∈ T, p ∈ Pt (3)

7 / 33

slide-28
SLIDE 28

References

Hardness of the TTP

Empirically, a problem very hard to solve! (Easton et al., 2003): NL4: Instance with n = 4 teams Solved to optimality in ≈30 seconds. NL6: Instance with n = 6 teams Solved to optimality in 20∗ · 900 seconds. NL8: Instance with n = 8 teams (relaxed) Solved to optimality in > 20∗ · 4 days.

∗ using 20 workstations in parallel

No (theoretical) complexity results, but suspected to be NP -hard! Design of good heuristic methods is a non-trivial task, see, e.g., (Van Hentenryck and Vergados, 2006)

8 / 33

slide-29
SLIDE 29

References

Hardness of the TTP

Empirically, a problem very hard to solve! (Easton et al., 2003): NL4: Instance with n = 4 teams Solved to optimality in ≈30 seconds. NL6: Instance with n = 6 teams Solved to optimality in 20∗ · 900 seconds. NL8: Instance with n = 8 teams (relaxed) Solved to optimality in > 20∗ · 4 days.

∗ using 20 workstations in parallel

No (theoretical) complexity results, but suspected to be NP -hard! Design of good heuristic methods is a non-trivial task, see, e.g., (Van Hentenryck and Vergados, 2006)

8 / 33

slide-30
SLIDE 30

References

Hardness of the TTP

Empirically, a problem very hard to solve! (Easton et al., 2003): NL4: Instance with n = 4 teams Solved to optimality in ≈30 seconds. NL6: Instance with n = 6 teams Solved to optimality in 20∗ · 900 seconds. NL8: Instance with n = 8 teams (relaxed) Solved to optimality in > 20∗ · 4 days.

∗ using 20 workstations in parallel

No (theoretical) complexity results, but suspected to be NP -hard! Design of good heuristic methods is a non-trivial task, see, e.g., (Van Hentenryck and Vergados, 2006)

8 / 33

slide-31
SLIDE 31

References

Compact Formulation

Easton et al. (2003) did not provide a compact formulation Compact formulation with binary variables xt

ijs, where

xt = (xt

ijs) represents the movement of team t

xt

ijs = 1 if

team t moves at time slot s from the venue of team i to the venue of team j (playing there at time slot s + 1)

Remarks: teams are numbered by t ∈ T := {1, 2, . . . , n} venues are numbered as their corresponding teams, i.e., i, j ∈ T = {1, 2, . . . , n} time slots are numbered s ∈ {1, 2, . . . , 2¯ n} with two artificial time slots 0 and 2¯ n + 1

9 / 33

slide-32
SLIDE 32

References

Compact Formulation

Easton et al. (2003) did not provide a compact formulation Compact formulation with binary variables xt

ijs, where

xt = (xt

ijs) represents the movement of team t

xt

ijs = 1 if

team t moves at time slot s from the venue of team i to the venue of team j (playing there at time slot s + 1)

Remarks: teams are numbered by t ∈ T := {1, 2, . . . , n} venues are numbered as their corresponding teams, i.e., i, j ∈ T = {1, 2, . . . , n} time slots are numbered s ∈ {1, 2, . . . , 2¯ n} with two artificial time slots 0 and 2¯ n + 1

9 / 33

slide-33
SLIDE 33

References

Compact Formulation

Easton et al. (2003) did not provide a compact formulation Compact formulation with binary variables xt

ijs, where

xt = (xt

ijs) represents the movement of team t

xt

ijs = 1 if

team t moves at time slot s from the venue of team i to the venue of team j (playing there at time slot s + 1)

Remarks: teams are numbered by t ∈ T := {1, 2, . . . , n} venues are numbered as their corresponding teams, i.e., i, j ∈ T = {1, 2, . . . , n} time slots are numbered s ∈ {1, 2, . . . , 2¯ n} with two artificial time slots 0 and 2¯ n + 1

9 / 33

slide-34
SLIDE 34

References

Compact Formulation

Easton et al. (2003) did not provide a compact formulation Compact formulation with binary variables xt

ijs, where

xt = (xt

ijs) represents the movement of team t

xt

ijs = 1 if

team t moves at time slot s from the venue of team i to the venue of team j (playing there at time slot s + 1)

Remarks: teams are numbered by t ∈ T := {1, 2, . . . , n} venues are numbered as their corresponding teams, i.e., i, j ∈ T = {1, 2, . . . , n} time slots are numbered s ∈ {1, 2, . . . , 2¯ n} with two artificial time slots 0 and 2¯ n + 1

9 / 33

slide-35
SLIDE 35

References

Compact Formulation

Easton et al. (2003) did not provide a compact formulation Compact formulation with binary variables xt

ijs, where

xt = (xt

ijs) represents the movement of team t

xt

ijs = 1 if

team t moves at time slot s from the venue of team i to the venue of team j (playing there at time slot s + 1)

Remarks: teams are numbered by t ∈ T := {1, 2, . . . , n} venues are numbered as their corresponding teams, i.e., i, j ∈ T = {1, 2, . . . , n} time slots are numbered s ∈ {1, 2, . . . , 2¯ n} with two artificial time slots 0 and 2¯ n + 1

9 / 33

slide-36
SLIDE 36

References

Compact Formulation

Easton et al. (2003) did not provide a compact formulation Compact formulation with binary variables xt

ijs, where

xt = (xt

ijs) represents the movement of team t

xt

ijs = 1 if

team t moves at time slot s from the venue of team i to the venue of team j (playing there at time slot s + 1)

Remarks: teams are numbered by t ∈ T := {1, 2, . . . , n} venues are numbered as their corresponding teams, i.e., i, j ∈ T = {1, 2, . . . , n} time slots are numbered s ∈ {1, 2, . . . , 2¯ n} with two artificial time slots 0 and 2¯ n + 1

9 / 33

slide-37
SLIDE 37

References

Compact Formulation

Easton et al. (2003) did not provide a compact formulation Compact formulation with binary variables xt

ijs, where

xt = (xt

ijs) represents the movement of team t

xt

ijs = 1 if

team t moves at time slot s from the venue of team i to the venue of team j (playing there at time slot s + 1)

Remarks: teams are numbered by t ∈ T := {1, 2, . . . , n} venues are numbered as their corresponding teams, i.e., i, j ∈ T = {1, 2, . . . , n} time slots are numbered s ∈ {1, 2, . . . , 2¯ n} with two artificial time slots 0 and 2¯ n + 1

9 / 33

slide-38
SLIDE 38

References

Compact Formulation

Easton et al. (2003) did not provide a compact formulation Compact formulation with binary variables xt

ijs, where

xt = (xt

ijs) represents the movement of team t

xt

ijs = 1 if

team t moves at time slot s from the venue of team i to the venue of team j (playing there at time slot s + 1)

Remarks: teams are numbered by t ∈ T := {1, 2, . . . , n} venues are numbered as their corresponding teams, i.e., i, j ∈ T = {1, 2, . . . , n} time slots are numbered s ∈ {1, 2, . . . , 2¯ n} with two artificial time slots 0 and 2¯ n + 1

9 / 33

slide-39
SLIDE 39

References

Compact Formulation

Interpretation of decision variables as arcs of a layered network (V , A) nodes v t

is ∈ V “team t is at venue i at time s” ∼

i-s artificial node v t

h0 (“source”) and v t h,2¯ n+1 (“sink”)

arcs (v t

is, v t j,s+1) ∈ A corresponding to decision variables xt ijs Network for team t = 4: 10 / 33

slide-40
SLIDE 40

References

min

  • t∈T
  • i∈T
  • j∈T

2¯ n

  • s=0

dijxt

ijs

s.t.

2¯ n

  • s=1
  • j∈T

xt

ijs = 1

∀t, i ∈ T : i = t (1)

  • i∈T

xt

ijs −

  • i∈T

xt

ji,s+1 = 0

∀t, j ∈ T, ∀s ∈ {0, .., 2¯ n − 1} (2)

U−1

  • u=0

xt

tt,s+u ≤ U − 1

and

U−1

  • u=0
  • i=t
  • j=t

xt

ij,s+u ≤ U − 1

∀t ∈ T, ∀s ∈ {1, .., 2¯ n − U} (3)

  • i∈T:

i=t

  • j∈T

xt

ijs

  • team t

plays away +

  • t′∈T:

t′=t

  • j∈T

xt′

tjs

  • team t′ = t plays

away against t = 1 ∀t ∈ T ∀s ∈ {1, .., 2¯ n} (4) xt

ijs ∈ {0, 1}

∀t, i, j ∈ T, ∀s ∈ {0, .., 2¯ n} (5) Explanation: (1) each team t must play once at every opponent’s venue

11 / 33

slide-41
SLIDE 41

References

min

  • t∈T
  • i∈T
  • j∈T

2¯ n

  • s=0

dijxt

ijs

s.t.

2¯ n

  • s=1
  • j∈T

xt

ijs = 1

∀t, i ∈ T : i = t (1)

  • i∈T

xt

ijs −

  • i∈T

xt

ji,s+1 = 0

∀t, j ∈ T, ∀s ∈ {0, .., 2¯ n − 1} (2)

U−1

  • u=0

xt

tt,s+u ≤ U − 1

and

U−1

  • u=0
  • i=t
  • j=t

xt

ij,s+u ≤ U − 1

∀t ∈ T, ∀s ∈ {1, .., 2¯ n − U} (3)

  • i∈T:

i=t

  • j∈T

xt

ijs

  • team t

plays away +

  • t′∈T:

t′=t

  • j∈T

xt′

tjs

  • team t′ = t plays

away against t = 1 ∀t ∈ T ∀s ∈ {1, .., 2¯ n} (4) xt

ijs ∈ {0, 1}

∀t, i, j ∈ T, ∀s ∈ {0, .., 2¯ n} (5) Explanation: (2) flow conservation

11 / 33

slide-42
SLIDE 42

References

min

  • t∈T
  • i∈T
  • j∈T

2¯ n

  • s=0

dijxt

ijs

s.t.

2¯ n

  • s=1
  • j∈T

xt

ijs = 1

∀t, i ∈ T : i = t (1)

  • i∈T

xt

ijs −

  • i∈T

xt

ji,s+1 = 0

∀t, j ∈ T, ∀s ∈ {0, .., 2¯ n − 1} (2)

U−1

  • u=0

xt

tt,s+u ≤ U − 1

and

U−1

  • u=0
  • i=t
  • j=t

xt

ij,s+u ≤ U − 1

∀t ∈ T, ∀s ∈ {1, .., 2¯ n − U} (3)

  • i∈T:

i=t

  • j∈T

xt

ijs

  • team t

plays away +

  • t′∈T:

t′=t

  • j∈T

xt′

tjs

  • team t′ = t plays

away against t = 1 ∀t ∈ T ∀s ∈ {1, .., 2¯ n} (4) xt

ijs ∈ {0, 1}

∀t, i, j ∈ T, ∀s ∈ {0, .., 2¯ n} (5) Explanation: (3) upper bound on number of consecutive home/away games

11 / 33

slide-43
SLIDE 43

References

min

  • t∈T
  • i∈T
  • j∈T

2¯ n

  • s=0

dijxt

ijs

s.t.

2¯ n

  • s=1
  • j∈T

xt

ijs = 1

∀t, i ∈ T : i = t (1)

  • i∈T

xt

ijs −

  • i∈T

xt

ji,s+1 = 0

∀t, j ∈ T, ∀s ∈ {0, .., 2¯ n − 1} (2)

U−1

  • u=0

xt

tt,s+u ≤ U − 1

and

U−1

  • u=0
  • i=t
  • j=t

xt

ij,s+u ≤ U − 1

∀t ∈ T, ∀s ∈ {1, .., 2¯ n − U} (3)

  • i∈T:

i=t

  • j∈T

xt

ijs

  • team t

plays away +

  • t′∈T:

t′=t

  • j∈T

xt′

tjs

  • team t′ = t plays

away against t = 1 ∀t ∈ T ∀s ∈ {1, .., 2¯ n} (4) xt

ijs ∈ {0, 1}

∀t, i, j ∈ T, ∀s ∈ {0, .., 2¯ n} (5) Explanation: (4) coupling constraints: each team t must play in every time slot s

11 / 33

slide-44
SLIDE 44

References

Compact Formulation

Dantzig-Wolfe Decomposition: decomposition by teams t constraints (1), (2), and (3) are separable by team →constraints of the CG pricing problem constraints (4) are coupling constraints between different teams →constraints of the CG master Result is identical to CG formulation given by Easton et al. (2003). Compact formulation is useful to show that branching rules are (in)complete to derive new branching rules to derive valid inequalties compatible with pricing (→robust cuts)

12 / 33

slide-45
SLIDE 45

References

Compact Formulation

Dantzig-Wolfe Decomposition: decomposition by teams t constraints (1), (2), and (3) are separable by team →constraints of the CG pricing problem constraints (4) are coupling constraints between different teams →constraints of the CG master Result is identical to CG formulation given by Easton et al. (2003). Compact formulation is useful to show that branching rules are (in)complete to derive new branching rules to derive valid inequalties compatible with pricing (→robust cuts)

12 / 33

slide-46
SLIDE 46

References

Compact Formulation

Optional No-Repeater Constraints (NRC) can be easily added: xt

tt′s + xt′ tt′s ≤ 1

∀t, t′ ∈ T, t = t′, ∀s ∈ {1, .., 2¯ n − 1} first variable: t plays away against t′ in slot s + 1 second variable: t′ plays away against t in slot s Remarks: this is a cubic number of constraints: n(n − 1)(2¯ n − 1) NRC mix variables of different teams t = t′ ⇒ NRC cannot be modelled in the pricing problem; must remain in the CG master program ⇒ dynamic constraint generation implemented!

13 / 33

slide-47
SLIDE 47

References

Compact Formulation

Optional No-Repeater Constraints (NRC) can be easily added: xt

tt′s + xt′ tt′s ≤ 1

∀t, t′ ∈ T, t = t′, ∀s ∈ {1, .., 2¯ n − 1} first variable: t plays away against t′ in slot s + 1 second variable: t′ plays away against t in slot s Remarks: this is a cubic number of constraints: n(n − 1)(2¯ n − 1) NRC mix variables of different teams t = t′ ⇒ NRC cannot be modelled in the pricing problem; must remain in the CG master program ⇒ dynamic constraint generation implemented!

13 / 33

slide-48
SLIDE 48

References

Solution of the Pricing Problem

Easton et al. (2003) suggest solving the pricing problem by constraint programming (CP): Advantages: easy to implement; easy to extend to cope with additional constraints Drawback: CP does not exploit the structure of the network The Pricing Problem of each team t is a Shortest-Path Problem with Resource Constraints (SPPRC):

1 one resource α ∈ {0, 1, . . . , U − 1} for counting the number of

consecutive home/way games

2 paths must be (task-)elementary

visit every opponent’s venue at most (=exactly) once visit home venue at most (=exactly) ¯ n times

14 / 33

slide-49
SLIDE 49

References

Solution of the Pricing Problem

Easton et al. (2003) suggest solving the pricing problem by constraint programming (CP): Advantages: easy to implement; easy to extend to cope with additional constraints Drawback: CP does not exploit the structure of the network The Pricing Problem of each team t is a Shortest-Path Problem with Resource Constraints (SPPRC):

1 one resource α ∈ {0, 1, . . . , U − 1} for counting the number of

consecutive home/way games

2 paths must be (task-)elementary

visit every opponent’s venue at most (=exactly) once visit home venue at most (=exactly) ¯ n times

14 / 33

slide-50
SLIDE 50

References

Solution of the Pricing Problem

Easton et al. (2003) suggest solving the pricing problem by constraint programming (CP): Advantages: easy to implement; easy to extend to cope with additional constraints Drawback: CP does not exploit the structure of the network The Pricing Problem of each team t is a Shortest-Path Problem with Resource Constraints (SPPRC):

1 one resource α ∈ {0, 1, . . . , U − 1} for counting the number of

consecutive home/way games

2 paths must be (task-)elementary

visit every opponent’s venue at most (=exactly) once visit home venue at most (=exactly) ¯ n times

14 / 33

slide-51
SLIDE 51

References

Solution of the Pricing Problem

Standard labeling approach in network for team t: use labels (i, S, α, ˜ c), where i is the last node (venue) S ⊆ T \ {t, i} is the set of previously visited opponent venues α is the number of consecutive home/away games ˜ c is the minimum (reduced) cost to reach state (i, S, α)

Example with n = 4 teams, U = 3: Tour (3, H, H, H, 1, 2) of team t = 4 = H creates the following sequence of labels (cost ˜ c omitted):

1

(s, ∅, 0) (initial source node s)

2

(3, ∅, 0)

3

(H, {3}, 0)

4

(H, {3}, 1)

5

(H, {3}, 2)←next game must be away

6

(1, {3}, 0)

7

(2, {1, 3}, 1)

8

(d, {1, 2, 3}, 0) (destination node d)

15 / 33

slide-52
SLIDE 52

References

Solution of the Pricing Problem

Standard labeling approach in network for team t: use labels (i, S, α, ˜ c), where i is the last node (venue) S ⊆ T \ {t, i} is the set of previously visited opponent venues α is the number of consecutive home/away games ˜ c is the minimum (reduced) cost to reach state (i, S, α)

Example with n = 4 teams, U = 3: Tour (3, H, H, H, 1, 2) of team t = 4 = H creates the following sequence of labels (cost ˜ c omitted):

1

(s, ∅, 0) (initial source node s)

2

(3, ∅, 0)

3

(H, {3}, 0)

4

(H, {3}, 1)

5

(H, {3}, 2)←next game must be away

6

(1, {3}, 0)

7

(2, {1, 3}, 1)

8

(d, {1, 2, 3}, 0) (destination node d)

15 / 33

slide-53
SLIDE 53

References

Solution of the Pricing Problem

Standard labeling approach in network for team t: use labels (i, S, α, ˜ c), where i is the last node (venue) S ⊆ T \ {t, i} is the set of previously visited opponent venues α is the number of consecutive home/away games ˜ c is the minimum (reduced) cost to reach state (i, S, α)

Example with n = 4 teams, U = 3: Tour (3, H, H, H, 1, 2) of team t = 4 = H creates the following sequence of labels (cost ˜ c omitted):

1

(s, ∅, 0) (initial source node s)

2

(3, ∅, 0)

3

(H, {3}, 0)

4

(H, {3}, 1)

5

(H, {3}, 2)←next game must be away

6

(1, {3}, 0)

7

(2, {1, 3}, 1)

8

(d, {1, 2, 3}, 0) (destination node d)

15 / 33

slide-54
SLIDE 54

References

Solution of the Pricing Problem

Standard labeling approach in network for team t: use labels (i, S, α, ˜ c), where i is the last node (venue) S ⊆ T \ {t, i} is the set of previously visited opponent venues α is the number of consecutive home/away games ˜ c is the minimum (reduced) cost to reach state (i, S, α)

Example with n = 4 teams, U = 3: Tour (3, H, H, H, 1, 2) of team t = 4 = H creates the following sequence of labels (cost ˜ c omitted):

1

(s, ∅, 0) (initial source node s)

2

(3, ∅, 0)

3

(H, {3}, 0)

4

(H, {3}, 1)

5

(H, {3}, 2)←next game must be away

6

(1, {3}, 0)

7

(2, {1, 3}, 1)

8

(d, {1, 2, 3}, 0) (destination node d)

15 / 33

slide-55
SLIDE 55

References

Solution of the Pricing Problem

Standard labeling approach in network for team t: use labels (i, S, α, ˜ c), where i is the last node (venue) S ⊆ T \ {t, i} is the set of previously visited opponent venues α is the number of consecutive home/away games ˜ c is the minimum (reduced) cost to reach state (i, S, α)

Example with n = 4 teams, U = 3: Tour (3, H, H, H, 1, 2) of team t = 4 = H creates the following sequence of labels (cost ˜ c omitted):

1

(s, ∅, 0) (initial source node s)

2

(3, ∅, 0)

3

(H, {3}, 0)

4

(H, {3}, 1)

5

(H, {3}, 2)←next game must be away

6

(1, {3}, 0)

7

(2, {1, 3}, 1)

8

(d, {1, 2, 3}, 0) (destination node d)

15 / 33

slide-56
SLIDE 56

References

Solution of the Pricing Problem

Standard labeling approach in network for team t: use labels (i, S, α, ˜ c), where i is the last node (venue) S ⊆ T \ {t, i} is the set of previously visited opponent venues α is the number of consecutive home/away games ˜ c is the minimum (reduced) cost to reach state (i, S, α)

Example with n = 4 teams, U = 3: Tour (3, H, H, H, 1, 2) of team t = 4 = H creates the following sequence of labels (cost ˜ c omitted):

1

(s, ∅, 0) (initial source node s)

2

(3, ∅, 0)

3

(H, {3}, 0)

4

(H, {3}, 1)

5

(H, {3}, 2)←next game must be away

6

(1, {3}, 0)

7

(2, {1, 3}, 1)

8

(d, {1, 2, 3}, 0) (destination node d)

15 / 33

slide-57
SLIDE 57

References

Solution of the Pricing Problem

Standard labeling approach in network for team t: use labels (i, S, α, ˜ c), where i is the last node (venue) S ⊆ T \ {t, i} is the set of previously visited opponent venues α is the number of consecutive home/away games ˜ c is the minimum (reduced) cost to reach state (i, S, α)

Example with n = 4 teams, U = 3: Tour (3, H, H, H, 1, 2) of team t = 4 = H creates the following sequence of labels (cost ˜ c omitted):

1

(s, ∅, 0) (initial source node s)

2

(3, ∅, 0)

3

(H, {3}, 0)

4

(H, {3}, 1)

5

(H, {3}, 2)←next game must be away

6

(1, {3}, 0)

7

(2, {1, 3}, 1)

8

(d, {1, 2, 3}, 0) (destination node d)

15 / 33

slide-58
SLIDE 58

References

Solution of the Pricing Problem

Standard labeling approach in network for team t: use labels (i, S, α, ˜ c), where i is the last node (venue) S ⊆ T \ {t, i} is the set of previously visited opponent venues α is the number of consecutive home/away games ˜ c is the minimum (reduced) cost to reach state (i, S, α)

Example with n = 4 teams, U = 3: Tour (3, H, H, H, 1, 2) of team t = 4 = H creates the following sequence of labels (cost ˜ c omitted):

1

(s, ∅, 0) (initial source node s)

2

(3, ∅, 0)

3

(H, {3}, 0)

4

(H, {3}, 1)

5

(H, {3}, 2)←next game must be away

6

(1, {3}, 0)

7

(2, {1, 3}, 1)

8

(d, {1, 2, 3}, 0) (destination node d)

15 / 33

slide-59
SLIDE 59

References

Solution of the Pricing Problem

Standard labeling approach in network for team t: use labels (i, S, α, ˜ c), where i is the last node (venue) S ⊆ T \ {t, i} is the set of previously visited opponent venues α is the number of consecutive home/away games ˜ c is the minimum (reduced) cost to reach state (i, S, α)

Example with n = 4 teams, U = 3: Tour (3, H, H, H, 1, 2) of team t = 4 = H creates the following sequence of labels (cost ˜ c omitted):

1

(s, ∅, 0) (initial source node s)

2

(3, ∅, 0)

3

(H, {3}, 0)

4

(H, {3}, 1)

5

(H, {3}, 2)←next game must be away

6

(1, {3}, 0)

7

(2, {1, 3}, 1)

8

(d, {1, 2, 3}, 0) (destination node d)

15 / 33

slide-60
SLIDE 60

References

Solution of the Pricing Problem

Standard labeling approach in network for team t: use labels (i, S, α, ˜ c), where i is the last node (venue) S ⊆ T \ {t, i} is the set of previously visited opponent venues α is the number of consecutive home/away games ˜ c is the minimum (reduced) cost to reach state (i, S, α)

Example with n = 4 teams, U = 3: Tour (3, H, H, H, 1, 2) of team t = 4 = H creates the following sequence of labels (cost ˜ c omitted):

1

(s, ∅, 0) (initial source node s)

2

(3, ∅, 0)

3

(H, {3}, 0)

4

(H, {3}, 1)

5

(H, {3}, 2)←next game must be away

6

(1, {3}, 0)

7

(2, {1, 3}, 1)

8

(d, {1, 2, 3}, 0) (destination node d)

15 / 33

slide-61
SLIDE 61

References

Solution of the Pricing Problem

Standard labeling approach in network for team t: use labels (i, S, α, ˜ c), where i is the last node (venue) S ⊆ T \ {t, i} is the set of previously visited opponent venues α is the number of consecutive home/away games ˜ c is the minimum (reduced) cost to reach state (i, S, α)

Example with n = 4 teams, U = 3: Tour (3, H, H, H, 1, 2) of team t = 4 = H creates the following sequence of labels (cost ˜ c omitted):

1

(s, ∅, 0) (initial source node s)

2

(3, ∅, 0)

3

(H, {3}, 0)

4

(H, {3}, 1)

5

(H, {3}, 2)←next game must be away

6

(1, {3}, 0)

7

(2, {1, 3}, 1)

8

(d, {1, 2, 3}, 0) (destination node d)

15 / 33

slide-62
SLIDE 62

References

Solution of the Pricing Problem

Standard labeling approach in network for team t: use labels (i, S, α, ˜ c), where i is the last node (venue) S ⊆ T \ {t, i} is the set of previously visited opponent venues α is the number of consecutive home/away games ˜ c is the minimum (reduced) cost to reach state (i, S, α)

Example with n = 4 teams, U = 3: Tour (3, H, H, H, 1, 2) of team t = 4 = H creates the following sequence of labels (cost ˜ c omitted):

1

(s, ∅, 0) (initial source node s)

2

(3, ∅, 0)

3

(H, {3}, 0)

4

(H, {3}, 1)

5

(H, {3}, 2)←next game must be away

6

(1, {3}, 0)

7

(2, {1, 3}, 1)

8

(d, {1, 2, 3}, 0) (destination node d)

15 / 33

slide-63
SLIDE 63

References

Solution of the Pricing Problem

Standard labeling approach in network for team t: use labels (i, S, α, ˜ c), where i is the last node (venue) S ⊆ T \ {t, i} is the set of previously visited opponent venues α is the number of consecutive home/away games ˜ c is the minimum (reduced) cost to reach state (i, S, α)

Example with n = 4 teams, U = 3: Tour (3, H, H, H, 1, 2) of team t = 4 = H creates the following sequence of labels (cost ˜ c omitted):

1

(s, ∅, 0) (initial source node s)

2

(3, ∅, 0)

3

(H, {3}, 0)

4

(H, {3}, 1)

5

(H, {3}, 2)←next game must be away

6

(1, {3}, 0)

7

(2, {1, 3}, 1)

8

(d, {1, 2, 3}, 0) (destination node d)

15 / 33

slide-64
SLIDE 64

References

Solution of the Pricing Problem

Standard labeling approach in network for team t: use labels (i, S, α, ˜ c), where i is the last node (venue) S ⊆ T \ {t, i} is the set of previously visited opponent venues α is the number of consecutive home/away games ˜ c is the minimum (reduced) cost to reach state (i, S, α)

Example with n = 4 teams, U = 3: Tour (3, H, H, H, 1, 2) of team t = 4 = H creates the following sequence of labels (cost ˜ c omitted):

1

(s, ∅, 0) (initial source node s)

2

(3, ∅, 0)

3

(H, {3}, 0)

4

(H, {3}, 1)

5

(H, {3}, 2)←next game must be away

6

(1, {3}, 0)

7

(2, {1, 3}, 1)

8

(d, {1, 2, 3}, 0) (destination node d)

15 / 33

slide-65
SLIDE 65

References

Solution of the Pricing Problem

Non-standard approach to cope with this kind of SPPRC required! Observations:

1 there is dominance only between labels with identical last

node i and subset S

2 in case of a lower bound L > 1 on consecutive home/away

games, there is no dominance (at all) between different labels

3 if L = 1 (i.e. no lower bound), a label with α = 0 can only

dominate U − 1 labels with α = 1, 2, . . . , U − 1 Consequences: we ignore dominance between labels with different α (→factor U − 1 is small, typically U = 3) we use an expanded network where nodes are states (i, S, α) no dominance check required; solution with pulling algorithm for ordinary SPP

16 / 33

slide-66
SLIDE 66

References

Solution of the Pricing Problem

Non-standard approach to cope with this kind of SPPRC required! Observations:

1 there is dominance only between labels with identical last

node i and subset S

2 in case of a lower bound L > 1 on consecutive home/away

games, there is no dominance (at all) between different labels

3 if L = 1 (i.e. no lower bound), a label with α = 0 can only

dominate U − 1 labels with α = 1, 2, . . . , U − 1 Consequences: we ignore dominance between labels with different α (→factor U − 1 is small, typically U = 3) we use an expanded network where nodes are states (i, S, α) no dominance check required; solution with pulling algorithm for ordinary SPP

16 / 33

slide-67
SLIDE 67

References

Solution of the Pricing Problem

Non-standard approach to cope with this kind of SPPRC required! Observations:

1 there is dominance only between labels with identical last

node i and subset S

2 in case of a lower bound L > 1 on consecutive home/away

games, there is no dominance (at all) between different labels

3 if L = 1 (i.e. no lower bound), a label with α = 0 can only

dominate U − 1 labels with α = 1, 2, . . . , U − 1 Consequences: we ignore dominance between labels with different α (→factor U − 1 is small, typically U = 3) we use an expanded network where nodes are states (i, S, α) no dominance check required; solution with pulling algorithm for ordinary SPP

16 / 33

slide-68
SLIDE 68

References

Solution of the Pricing Problem

Non-standard approach to cope with this kind of SPPRC required! Observations:

1 there is dominance only between labels with identical last

node i and subset S

2 in case of a lower bound L > 1 on consecutive home/away

games, there is no dominance (at all) between different labels

3 if L = 1 (i.e. no lower bound), a label with α = 0 can only

dominate U − 1 labels with α = 1, 2, . . . , U − 1 Consequences: we ignore dominance between labels with different α (→factor U − 1 is small, typically U = 3) we use an expanded network where nodes are states (i, S, α) no dominance check required; solution with pulling algorithm for ordinary SPP

16 / 33

slide-69
SLIDE 69

References

Solution of the Pricing Problem

Non-standard approach to cope with this kind of SPPRC required! Observations:

1 there is dominance only between labels with identical last

node i and subset S

2 in case of a lower bound L > 1 on consecutive home/away

games, there is no dominance (at all) between different labels

3 if L = 1 (i.e. no lower bound), a label with α = 0 can only

dominate U − 1 labels with α = 1, 2, . . . , U − 1 Consequences: we ignore dominance between labels with different α (→factor U − 1 is small, typically U = 3) we use an expanded network where nodes are states (i, S, α) no dominance check required; solution with pulling algorithm for ordinary SPP

16 / 33

slide-70
SLIDE 70

References

Solution of the Pricing Problem

Non-standard approach to cope with this kind of SPPRC required! Observations:

1 there is dominance only between labels with identical last

node i and subset S

2 in case of a lower bound L > 1 on consecutive home/away

games, there is no dominance (at all) between different labels

3 if L = 1 (i.e. no lower bound), a label with α = 0 can only

dominate U − 1 labels with α = 1, 2, . . . , U − 1 Consequences: we ignore dominance between labels with different α (→factor U − 1 is small, typically U = 3) we use an expanded network where nodes are states (i, S, α) no dominance check required; solution with pulling algorithm for ordinary SPP

16 / 33

slide-71
SLIDE 71

References

Solution of the Pricing Problem

Non-standard approach to cope with this kind of SPPRC required! Observations:

1 there is dominance only between labels with identical last

node i and subset S

2 in case of a lower bound L > 1 on consecutive home/away

games, there is no dominance (at all) between different labels

3 if L = 1 (i.e. no lower bound), a label with α = 0 can only

dominate U − 1 labels with α = 1, 2, . . . , U − 1 Consequences: we ignore dominance between labels with different α (→factor U − 1 is small, typically U = 3) we use an expanded network where nodes are states (i, S, α) no dominance check required; solution with pulling algorithm for ordinary SPP

16 / 33

slide-72
SLIDE 72

References

Solution of the Pricing Problem

Expanded Network for n = 4:

17 / 33

slide-73
SLIDE 73

References

Solution of the Pricing Problem

Size of the expanded network (Vex, Aex): Here for U = 3!

#teams #nodes #arcs #tours Factor n |Vex| |Aex| #tours/#arcs 4 92 198 120 ≈ 0.6 6 1138 3596 23280 ≈ 6.5 8 8548 32108 9.93888·106 ≈ 310 10 55448 245910 7.43831·109 ≈ 30,000 12 320416 1621450 8.63608·1012 ≈ 5,300,000

Note: Pulling algorithm for SPP has time complexity O (|Aex|) Factor #tours/#arcs shows combinatorial leverage effect (Glover and Punnen, 1994; Ahuja et al., 1999)

18 / 33

slide-74
SLIDE 74

References

Solution of the Pricing Problem

Size of the expanded network (Vex, Aex): Here for U = 3!

#teams #nodes #arcs #tours Factor n |Vex| |Aex| #tours/#arcs 4 92 198 120 ≈ 0.6 6 1138 3596 23280 ≈ 6.5 8 8548 32108 9.93888·106 ≈ 310 10 55448 245910 7.43831·109 ≈ 30,000 12 320416 1621450 8.63608·1012 ≈ 5,300,000

Note: Pulling algorithm for SPP has time complexity O (|Aex|) Factor #tours/#arcs shows combinatorial leverage effect (Glover and Punnen, 1994; Ahuja et al., 1999)

18 / 33

slide-75
SLIDE 75

References

Solution of the Pricing Problem

Size of the expanded network (Vex, Aex): Here for U = 3!

#teams #nodes #arcs #tours Factor n |Vex| |Aex| #tours/#arcs 4 92 198 120 ≈ 0.6 6 1138 3596 23280 ≈ 6.5 8 8548 32108 9.93888·106 ≈ 310 10 55448 245910 7.43831·109 ≈ 30,000 12 320416 1621450 8.63608·1012 ≈ 5,300,000

Note: Pulling algorithm for SPP has time complexity O (|Aex|) Factor #tours/#arcs shows combinatorial leverage effect (Glover and Punnen, 1994; Ahuja et al., 1999)

18 / 33

slide-76
SLIDE 76

References

Solution of the Pricing Problem

Observations: networks are symmetric: slots 1, . . . , ¯ n are mirror images of slots ¯ n + 1, . . . , 2¯ n

  • nly rdc on arcs differ

Consequences: build and store only the “first half” of the expanded network corresponding to slots 1, . . . , ¯ n solve SPP bidirectionally:

1

SPP forward to create rdc labels at slots 1, . . . , ¯ n

2

SPP backward to create rdc labels at slot 2¯ n, . . . , ¯ n + 1

3

merge step: combine fw and bw labels from slots ¯ n and ¯ n + 1 i.e. ℓfw = (i, S, α) and ℓbw = (i′, S′, α′) with S ∪ S′ ∪ {i, i′} = T \ {t} and α + α′ < U − 1

19 / 33

slide-77
SLIDE 77

References

Solution of the Pricing Problem

Observations: networks are symmetric: slots 1, . . . , ¯ n are mirror images of slots ¯ n + 1, . . . , 2¯ n

  • nly rdc on arcs differ

Consequences: build and store only the “first half” of the expanded network corresponding to slots 1, . . . , ¯ n solve SPP bidirectionally:

1

SPP forward to create rdc labels at slots 1, . . . , ¯ n

2

SPP backward to create rdc labels at slot 2¯ n, . . . , ¯ n + 1

3

merge step: combine fw and bw labels from slots ¯ n and ¯ n + 1 i.e. ℓfw = (i, S, α) and ℓbw = (i′, S′, α′) with S ∪ S′ ∪ {i, i′} = T \ {t} and α + α′ < U − 1

19 / 33

slide-78
SLIDE 78

References

Solution of the Pricing Problem

Observations: networks are symmetric: slots 1, . . . , ¯ n are mirror images of slots ¯ n + 1, . . . , 2¯ n

  • nly rdc on arcs differ

Consequences: build and store only the “first half” of the expanded network corresponding to slots 1, . . . , ¯ n solve SPP bidirectionally:

1

SPP forward to create rdc labels at slots 1, . . . , ¯ n

2

SPP backward to create rdc labels at slot 2¯ n, . . . , ¯ n + 1

3

merge step: combine fw and bw labels from slots ¯ n and ¯ n + 1 i.e. ℓfw = (i, S, α) and ℓbw = (i′, S′, α′) with S ∪ S′ ∪ {i, i′} = T \ {t} and α + α′ < U − 1

19 / 33

slide-79
SLIDE 79

References

Solution of the Pricing Problem

Observations: networks are symmetric: slots 1, . . . , ¯ n are mirror images of slots ¯ n + 1, . . . , 2¯ n

  • nly rdc on arcs differ

Consequences: build and store only the “first half” of the expanded network corresponding to slots 1, . . . , ¯ n solve SPP bidirectionally:

1

SPP forward to create rdc labels at slots 1, . . . , ¯ n

2

SPP backward to create rdc labels at slot 2¯ n, . . . , ¯ n + 1

3

merge step: combine fw and bw labels from slots ¯ n and ¯ n + 1 i.e. ℓfw = (i, S, α) and ℓbw = (i′, S′, α′) with S ∪ S′ ∪ {i, i′} = T \ {t} and α + α′ < U − 1

19 / 33

slide-80
SLIDE 80

References

Solution of the Pricing Problem

Observations: networks are symmetric: slots 1, . . . , ¯ n are mirror images of slots ¯ n + 1, . . . , 2¯ n

  • nly rdc on arcs differ

Consequences: build and store only the “first half” of the expanded network corresponding to slots 1, . . . , ¯ n solve SPP bidirectionally:

1

SPP forward to create rdc labels at slots 1, . . . , ¯ n

2

SPP backward to create rdc labels at slot 2¯ n, . . . , ¯ n + 1

3

merge step: combine fw and bw labels from slots ¯ n and ¯ n + 1 i.e. ℓfw = (i, S, α) and ℓbw = (i′, S′, α′) with S ∪ S′ ∪ {i, i′} = T \ {t} and α + α′ < U − 1

19 / 33

slide-81
SLIDE 81

References

Solution of the Pricing Problem

Observations: networks are symmetric: slots 1, . . . , ¯ n are mirror images of slots ¯ n + 1, . . . , 2¯ n

  • nly rdc on arcs differ

Consequences: build and store only the “first half” of the expanded network corresponding to slots 1, . . . , ¯ n solve SPP bidirectionally:

1

SPP forward to create rdc labels at slots 1, . . . , ¯ n

2

SPP backward to create rdc labels at slot 2¯ n, . . . , ¯ n + 1

3

merge step: combine fw and bw labels from slots ¯ n and ¯ n + 1 i.e. ℓfw = (i, S, α) and ℓbw = (i′, S′, α′) with S ∪ S′ ∪ {i, i′} = T \ {t} and α + α′ < U − 1

19 / 33

slide-82
SLIDE 82

References

Solution of the Pricing Problem

Observations: networks are symmetric: slots 1, . . . , ¯ n are mirror images of slots ¯ n + 1, . . . , 2¯ n

  • nly rdc on arcs differ

Consequences: build and store only the “first half” of the expanded network corresponding to slots 1, . . . , ¯ n solve SPP bidirectionally:

1

SPP forward to create rdc labels at slots 1, . . . , ¯ n

2

SPP backward to create rdc labels at slot 2¯ n, . . . , ¯ n + 1

3

merge step: combine fw and bw labels from slots ¯ n and ¯ n + 1 i.e. ℓfw = (i, S, α) and ℓbw = (i′, S′, α′) with S ∪ S′ ∪ {i, i′} = T \ {t} and α + α′ < U − 1

19 / 33

slide-83
SLIDE 83

References

Solution of the Pricing Problem

Variable Elimination (→Network Reduction): Results of (Irnich et al., 2007) can be used to eliminate arcs from the (individual!) expanded networks of each team. Given

1 a dual feasible solution π to the LP-relaxation of the CG

master program

2 corresponding lower bound zLB = 1

1⊤π for TTP

3 and an upper bound UB on TTP

Proposition A: If the rdc ˜ ct

p(π) of a tour variable λt p exceeds the

  • ptimality gap UB − zLB, then λt

p = 0 in any optimal solution.

Proposition B: If a ∈ At

ex is an arc of the expanded network of

team t and every tour through a has rdc greater than UB − zLB, then no optimal tour p ∈ Pt contains a.

20 / 33

slide-84
SLIDE 84

References

Solution of the Pricing Problem

Variable Elimination (→Network Reduction): Results of (Irnich et al., 2007) can be used to eliminate arcs from the (individual!) expanded networks of each team. Given

1 a dual feasible solution π to the LP-relaxation of the CG

master program

2 corresponding lower bound zLB = 1

1⊤π for TTP

3 and an upper bound UB on TTP

Proposition A: If the rdc ˜ ct

p(π) of a tour variable λt p exceeds the

  • ptimality gap UB − zLB, then λt

p = 0 in any optimal solution.

Proposition B: If a ∈ At

ex is an arc of the expanded network of

team t and every tour through a has rdc greater than UB − zLB, then no optimal tour p ∈ Pt contains a.

20 / 33

slide-85
SLIDE 85

References

Solution of the Pricing Problem

Variable Elimination (→Network Reduction): Results of (Irnich et al., 2007) can be used to eliminate arcs from the (individual!) expanded networks of each team. Given

1 a dual feasible solution π to the LP-relaxation of the CG

master program

2 corresponding lower bound zLB = 1

1⊤π for TTP

3 and an upper bound UB on TTP

Proposition A: If the rdc ˜ ct

p(π) of a tour variable λt p exceeds the

  • ptimality gap UB − zLB, then λt

p = 0 in any optimal solution.

Proposition B: If a ∈ At

ex is an arc of the expanded network of

team t and every tour through a has rdc greater than UB − zLB, then no optimal tour p ∈ Pt contains a.

20 / 33

slide-86
SLIDE 86

References

Solution of the Pricing Problem

Variable Elimination (→Network Reduction): Results of (Irnich et al., 2007) can be used to eliminate arcs from the (individual!) expanded networks of each team. Given

1 a dual feasible solution π to the LP-relaxation of the CG

master program

2 corresponding lower bound zLB = 1

1⊤π for TTP

3 and an upper bound UB on TTP

Proposition A: If the rdc ˜ ct

p(π) of a tour variable λt p exceeds the

  • ptimality gap UB − zLB, then λt

p = 0 in any optimal solution.

Proposition B: If a ∈ At

ex is an arc of the expanded network of

team t and every tour through a has rdc greater than UB − zLB, then no optimal tour p ∈ Pt contains a.

20 / 33

slide-87
SLIDE 87

References

Solution of the Pricing Problem

Variable Elimination (→Network Reduction): Results of (Irnich et al., 2007) can be used to eliminate arcs from the (individual!) expanded networks of each team. Given

1 a dual feasible solution π to the LP-relaxation of the CG

master program

2 corresponding lower bound zLB = 1

1⊤π for TTP

3 and an upper bound UB on TTP

Proposition A: If the rdc ˜ ct

p(π) of a tour variable λt p exceeds the

  • ptimality gap UB − zLB, then λt

p = 0 in any optimal solution.

Proposition B: If a ∈ At

ex is an arc of the expanded network of

team t and every tour through a has rdc greater than UB − zLB, then no optimal tour p ∈ Pt contains a.

20 / 33

slide-88
SLIDE 88

References

Solution of the Pricing Problem

Variable Elimination (→Network Reduction): Results of (Irnich et al., 2007) can be used to eliminate arcs from the (individual!) expanded networks of each team. Given

1 a dual feasible solution π to the LP-relaxation of the CG

master program

2 corresponding lower bound zLB = 1

1⊤π for TTP

3 and an upper bound UB on TTP

Proposition A: If the rdc ˜ ct

p(π) of a tour variable λt p exceeds the

  • ptimality gap UB − zLB, then λt

p = 0 in any optimal solution.

Proposition B: If a ∈ At

ex is an arc of the expanded network of

team t and every tour through a has rdc greater than UB − zLB, then no optimal tour p ∈ Pt contains a.

20 / 33

slide-89
SLIDE 89

References

Solution of the Pricing Problem

Variable Elimination (→Network Reduction) (Cont.): Smallest rdc of tours through an arbitrary arc a = (v, w) ∈ At

ex can

be computed with a bidirectional SPP approach:

1 solve full fw SPP; cost labels ˜

cfw(v) at nodes v

2 solve full bw SPP; cost labels ˜

cbw(v) at nodes v

3 value rdc(v, w) := ˜

cfw(v) + ˜ cvw + ˜ cbw(w) is minimum rdc of paths through a = (v, w)

4 Rule: Eliminate a = (v, w) if rdc(v, w) > UB − zLB

Effort: O (3 · |At

ex|), i.e., same as pricing

21 / 33

slide-90
SLIDE 90

References

Solution of the Pricing Problem

Variable Elimination (→Network Reduction) (Cont.): Smallest rdc of tours through an arbitrary arc a = (v, w) ∈ At

ex can

be computed with a bidirectional SPP approach:

1 solve full fw SPP; cost labels ˜

cfw(v) at nodes v

2 solve full bw SPP; cost labels ˜

cbw(v) at nodes v

3 value rdc(v, w) := ˜

cfw(v) + ˜ cvw + ˜ cbw(w) is minimum rdc of paths through a = (v, w)

4 Rule: Eliminate a = (v, w) if rdc(v, w) > UB − zLB

Effort: O (3 · |At

ex|), i.e., same as pricing

21 / 33

slide-91
SLIDE 91

References

Solution of the Pricing Problem

Variable Elimination (→Network Reduction) (Cont.): Smallest rdc of tours through an arbitrary arc a = (v, w) ∈ At

ex can

be computed with a bidirectional SPP approach:

1 solve full fw SPP; cost labels ˜

cfw(v) at nodes v

2 solve full bw SPP; cost labels ˜

cbw(v) at nodes v

3 value rdc(v, w) := ˜

cfw(v) + ˜ cvw + ˜ cbw(w) is minimum rdc of paths through a = (v, w)

4 Rule: Eliminate a = (v, w) if rdc(v, w) > UB − zLB

Effort: O (3 · |At

ex|), i.e., same as pricing

21 / 33

slide-92
SLIDE 92

References

Solution of the Pricing Problem

Variable Elimination (→Network Reduction) (Cont.): Smallest rdc of tours through an arbitrary arc a = (v, w) ∈ At

ex can

be computed with a bidirectional SPP approach:

1 solve full fw SPP; cost labels ˜

cfw(v) at nodes v

2 solve full bw SPP; cost labels ˜

cbw(v) at nodes v

3 value rdc(v, w) := ˜

cfw(v) + ˜ cvw + ˜ cbw(w) is minimum rdc of paths through a = (v, w)

4 Rule: Eliminate a = (v, w) if rdc(v, w) > UB − zLB

Effort: O (3 · |At

ex|), i.e., same as pricing

21 / 33

slide-93
SLIDE 93

References

Solution of the Pricing Problem

Variable Elimination (→Network Reduction) (Cont.): Smallest rdc of tours through an arbitrary arc a = (v, w) ∈ At

ex can

be computed with a bidirectional SPP approach:

1 solve full fw SPP; cost labels ˜

cfw(v) at nodes v

2 solve full bw SPP; cost labels ˜

cbw(v) at nodes v

3 value rdc(v, w) := ˜

cfw(v) + ˜ cvw + ˜ cbw(w) is minimum rdc of paths through a = (v, w)

4 Rule: Eliminate a = (v, w) if rdc(v, w) > UB − zLB

Effort: O (3 · |At

ex|), i.e., same as pricing

21 / 33

slide-94
SLIDE 94

References

Solution of the Pricing Problem

Variable Elimination (→Network Reduction) (Cont.): Smallest rdc of tours through an arbitrary arc a = (v, w) ∈ At

ex can

be computed with a bidirectional SPP approach:

1 solve full fw SPP; cost labels ˜

cfw(v) at nodes v

2 solve full bw SPP; cost labels ˜

cbw(v) at nodes v

3 value rdc(v, w) := ˜

cfw(v) + ˜ cvw + ˜ cbw(w) is minimum rdc of paths through a = (v, w)

4 Rule: Eliminate a = (v, w) if rdc(v, w) > UB − zLB

Effort: O (3 · |At

ex|), i.e., same as pricing

21 / 33

slide-95
SLIDE 95

References

Solution of the Pricing Problem

Variable Elimination (→Network Reduction):

Instance Bounds before reduction

  • avg. after reduction

LB UB |Vex| |Aex| |Vex| |Aex| % |Aex| remaining NL4[-NRC] 8160 8276 92 198 72 119 60% NL6 22557 23552 1138 3596 763 1727 48% NL6-NRC 22557 23916 1138 3596 1056 2821 78% NL8 38670 39480 8548 32108 5618 13200 41% NL8-NRC 38670 39721 8548 32108 7470 20016 62% NL10[-NRC] 56659 59436 55448 245910 55442 245561 99%

22 / 33

slide-96
SLIDE 96

References

Branching

Easton et al. (2003) suggest branching on home/away decisions for team t and time slot s: team plays home in slot 3 team plays away in slot 3 Remarks: branching rule is incomplete! must be supplemented with complete branching rule however: most effective branching rule in practice

23 / 33

slide-97
SLIDE 97

References

Branching

Easton et al. (2003) suggest branching on home/away decisions for team t and time slot s: team plays home in slot 3 team plays away in slot 3 Remarks: branching rule is incomplete! must be supplemented with complete branching rule however: most effective branching rule in practice

23 / 33

slide-98
SLIDE 98

References

Branching

Easton et al. (2003) suggest branching on home/away decisions for team t and time slot s: team plays home in slot 3 team plays away in slot 3 Remarks: branching rule is incomplete! must be supplemented with complete branching rule however: most effective branching rule in practice

23 / 33

slide-99
SLIDE 99

References

Branching

Easton et al. (2003) suggest branching on home/away decisions for team t and time slot s: team plays home in slot 3 team plays away in slot 3 Remarks: branching rule is incomplete! must be supplemented with complete branching rule however: most effective branching rule in practice

23 / 33

slide-100
SLIDE 100

References

Branching

Branching on nodes of the (non-expanded) network arcs of the (non-expanded) network is complete, i.e., guarantees integer solutions! Strategy: Branching on home/away decisions first, branching on nodes second (if all home/away decision are made) Strong branching is essential, since B&B-tree get extremly large: consider a number of candidate branching decisions completely evaluate corresponding son nodes (→full CG) choose branching variable, where weaker son gives largest LB How many candidates? The deeper a node in the tree, the less candidates should be considered! #Candidates := ⌊1 + MaxCand · UB − zLB(node) UB − zLB(root) γ ⌋ good results for γ ∈ [1.5; 2] and MaxCand ∈ [10, 200]

24 / 33

slide-101
SLIDE 101

References

Branching

Branching on nodes of the (non-expanded) network arcs of the (non-expanded) network is complete, i.e., guarantees integer solutions! Strategy: Branching on home/away decisions first, branching on nodes second (if all home/away decision are made) Strong branching is essential, since B&B-tree get extremly large: consider a number of candidate branching decisions completely evaluate corresponding son nodes (→full CG) choose branching variable, where weaker son gives largest LB How many candidates? The deeper a node in the tree, the less candidates should be considered! #Candidates := ⌊1 + MaxCand · UB − zLB(node) UB − zLB(root) γ ⌋ good results for γ ∈ [1.5; 2] and MaxCand ∈ [10, 200]

24 / 33

slide-102
SLIDE 102

References

Branching

Branching on nodes of the (non-expanded) network arcs of the (non-expanded) network is complete, i.e., guarantees integer solutions! Strategy: Branching on home/away decisions first, branching on nodes second (if all home/away decision are made) Strong branching is essential, since B&B-tree get extremly large: consider a number of candidate branching decisions completely evaluate corresponding son nodes (→full CG) choose branching variable, where weaker son gives largest LB How many candidates? The deeper a node in the tree, the less candidates should be considered! #Candidates := ⌊1 + MaxCand · UB − zLB(node) UB − zLB(root) γ ⌋ good results for γ ∈ [1.5; 2] and MaxCand ∈ [10, 200]

24 / 33

slide-103
SLIDE 103

References

Branching

Branching on nodes of the (non-expanded) network arcs of the (non-expanded) network is complete, i.e., guarantees integer solutions! Strategy: Branching on home/away decisions first, branching on nodes second (if all home/away decision are made) Strong branching is essential, since B&B-tree get extremly large: consider a number of candidate branching decisions completely evaluate corresponding son nodes (→full CG) choose branching variable, where weaker son gives largest LB How many candidates? The deeper a node in the tree, the less candidates should be considered! #Candidates := ⌊1 + MaxCand · UB − zLB(node) UB − zLB(root) γ ⌋ good results for γ ∈ [1.5; 2] and MaxCand ∈ [10, 200]

24 / 33

slide-104
SLIDE 104

References

Branching

Branching on nodes of the (non-expanded) network arcs of the (non-expanded) network is complete, i.e., guarantees integer solutions! Strategy: Branching on home/away decisions first, branching on nodes second (if all home/away decision are made) Strong branching is essential, since B&B-tree get extremly large: consider a number of candidate branching decisions completely evaluate corresponding son nodes (→full CG) choose branching variable, where weaker son gives largest LB How many candidates? The deeper a node in the tree, the less candidates should be considered! #Candidates := ⌊1 + MaxCand · UB − zLB(node) UB − zLB(root) γ ⌋ good results for γ ∈ [1.5; 2] and MaxCand ∈ [10, 200]

24 / 33

slide-105
SLIDE 105

References

Branching

Branching on nodes of the (non-expanded) network arcs of the (non-expanded) network is complete, i.e., guarantees integer solutions! Strategy: Branching on home/away decisions first, branching on nodes second (if all home/away decision are made) Strong branching is essential, since B&B-tree get extremly large: consider a number of candidate branching decisions completely evaluate corresponding son nodes (→full CG) choose branching variable, where weaker son gives largest LB How many candidates? The deeper a node in the tree, the less candidates should be considered! #Candidates := ⌊1 + MaxCand · UB − zLB(node) UB − zLB(root) γ ⌋ good results for γ ∈ [1.5; 2] and MaxCand ∈ [10, 200]

24 / 33

slide-106
SLIDE 106

References

Breaking Symmetry for Symmetrical Distances

Observations: symmetry causes B&B-trees to grow rapidly symmetric distances (dij) impose that TTP solutions can be reversed in time: tour − → p = (i1, i2, . . . , i¯

n, i¯ n+1, . . . , i2¯ n) becomes

tour ← − p = (i2¯

n, . . . , i¯ n+1, i¯ n, . . . , i2, i1)

“middle arc” is (i¯

n, i¯ n+1) and (i¯ n+1, i¯ n), respectively

Rule: Choose one team t and modify “middle” of its expanded network:

1 number the nodes at stages ¯

n and ¯ n + 1 (same index i and i′ for mirrored node pairs)

2 leave arc (i, j′) iff i ≤ j 3 remove arc (i, j′) iff i > j 25 / 33

slide-107
SLIDE 107

References

Breaking Symmetry for Symmetrical Distances

Observations: symmetry causes B&B-trees to grow rapidly symmetric distances (dij) impose that TTP solutions can be reversed in time: tour − → p = (i1, i2, . . . , i¯

n, i¯ n+1, . . . , i2¯ n) becomes

tour ← − p = (i2¯

n, . . . , i¯ n+1, i¯ n, . . . , i2, i1)

“middle arc” is (i¯

n, i¯ n+1) and (i¯ n+1, i¯ n), respectively

Rule: Choose one team t and modify “middle” of its expanded network:

1 number the nodes at stages ¯

n and ¯ n + 1 (same index i and i′ for mirrored node pairs)

2 leave arc (i, j′) iff i ≤ j 3 remove arc (i, j′) iff i > j 25 / 33

slide-108
SLIDE 108

References

Breaking Symmetry for Circular Instances

Circular Instances: Venues of teams are located on a circle; distance 1 between neighboring venues

D = (dij) =             1 2 3 4 3 2 1 1 1 2 3 4 3 2 2 1 1 2 3 4 3 3 2 1 1 2 3 4 4 3 2 1 1 2 3 3 4 3 2 1 1 2 2 3 4 3 2 1 1 1 2 3 4 3 2 1            

⇒ Extremely hard to solve because of inherent symmetry!

26 / 33

slide-109
SLIDE 109

References

Breaking Symmetry for Circular Instances

Symmetry in one time slot s w.r.t. home/away decisions can be removed: How may essentially different home/away (H/A) assignments to teams exist?

n 2 teams play home; n 2 teams play away

Case n = 4: Two classes of H/A assignments 2 branches on first level of B&B:

27 / 33

slide-110
SLIDE 110

References

Breaking Symmetry for Circular Instances

Symmetry in one time slot s w.r.t. home/away decisions can be removed: How may essentially different home/away (H/A) assignments to teams exist?

n 2 teams play home; n 2 teams play away

Case n = 4: Two classes of H/A assignments 2 branches on first level of B&B:

27 / 33

slide-111
SLIDE 111

References

Breaking Symmetry for Circular Instances

Symmetry in one time slot s w.r.t. home/away decisions can be removed: How may essentially different home/away (H/A) assignments to teams exist?

n 2 teams play home; n 2 teams play away

Case n = 4: Two classes of H/A assignments 2 branches on first level of B&B:

27 / 33

slide-112
SLIDE 112

References

Breaking Symmetry for Circular Instances

Case n = 6: Three classes of H/A assignments 3 branches on first level of B&B: Cases n = 8, 10, and 12: 8, 16, and 50 branches

28 / 33

slide-113
SLIDE 113

References

Breaking Symmetry for Circular Instances

Case n = 6: Three classes of H/A assignments 3 branches on first level of B&B: Cases n = 8, 10, and 12: 8, 16, and 50 branches

28 / 33

slide-114
SLIDE 114

References

Breaking Symmetry for Circular Instances

Case n = 6: Three classes of H/A assignments 3 branches on first level of B&B: Cases n = 8, 10, and 12: 8, 16, and 50 branches

28 / 33

slide-115
SLIDE 115

References

Breaking Symmetry for Circular Instances

Finite Group Theory: The dihedral group D2n is the group consisting of n rotations by multiples of 2π

n (including identity) and

n reflections (through nodes and edges of the n-gonal dihedron). It operates on the set of colored n-gonal dihedrons, here: with two colors (red, green) and the same number of red and green vertices. Lemma (Burnside, Frobenius & Schur) Let group G operate on set M. The number of orbits (=equivalence classes) is equal to the average number of fixed points #orbits = 1 |G|  

g∈G

|{m ∈ M : mg = m}|   .

29 / 33

slide-116
SLIDE 116

References

Breaking Symmetry for Circular Instances

Finite Group Theory: The dihedral group D2n is the group consisting of n rotations by multiples of 2π

n (including identity) and

n reflections (through nodes and edges of the n-gonal dihedron). It operates on the set of colored n-gonal dihedrons, here: with two colors (red, green) and the same number of red and green vertices. Lemma (Burnside, Frobenius & Schur) Let group G operate on set M. The number of orbits (=equivalence classes) is equal to the average number of fixed points #orbits = 1 |G|  

g∈G

|{m ∈ M : mg = m}|   .

29 / 33

slide-117
SLIDE 117

References

Breaking Symmetry for Circular Instances

Finite Group Theory: The dihedral group D2n is the group consisting of n rotations by multiples of 2π

n (including identity) and

n reflections (through nodes and edges of the n-gonal dihedron). It operates on the set of colored n-gonal dihedrons, here: with two colors (red, green) and the same number of red and green vertices. Lemma (Burnside, Frobenius & Schur) Let group G operate on set M. The number of orbits (=equivalence classes) is equal to the average number of fixed points #orbits = 1 |G|  

g∈G

|{m ∈ M : mg = m}|   .

29 / 33

slide-118
SLIDE 118

References

Breaking Symmetry for Circular Instances

What do we save? The number of possible H/A assignments to a time slot s is n

n/2

  • .

n n

n/2

  • #orbits

factor 4 6 2 3 6 20 3 ≈7 8 70 8 ≈9 10 252 16 ≈16 12 924 50 ≈18

30 / 33

slide-119
SLIDE 119

References

Breaking Symmetry for Circular Instances

What do we save? The number of possible H/A assignments to a time slot s is n

n/2

  • .

n n

n/2

  • #orbits

factor 4 6 2 3 6 20 3 ≈7 8 70 8 ≈9 10 252 16 ≈16 12 924 50 ≈18

30 / 33

slide-120
SLIDE 120

References

Computational Results

(Rasmussen and Trick, 2008): “The most obvious challenge within the area and a great milestone to reach would be to prove optimality of the TTP instance NL8.”

National League (NL) Instances (baseball): Name NRC Before Our results LB UB

  • pt?

Time

  • pt

Time NL4 no 8276 30s 8276 <0.3s NL4 yes 8276 ? 8276 <0.3s NL6 no 23552 20· 900s 23552 <116s NL6 yes 23916 ? 23916 <19min NL8 no 39479 >20· 4 days 39479 <12hrs NL8 yes 39479 39721

  • pen

– 39721 <18hrs NL10 no 57500 59436

  • pen

– LB>57836 100hrs NL10 yes 57500 59436

  • pen

– LB>57817 >306hrs

31 / 33

slide-121
SLIDE 121

References

Computational Results

(Rasmussen and Trick, 2008): “The most obvious challenge within the area and a great milestone to reach would be to prove optimality of the TTP instance NL8.”

National League (NL) Instances (baseball): Name NRC Before Our results LB UB

  • pt?

Time

  • pt

Time NL4 no 8276 30s 8276 <0.3s NL4 yes 8276 ? 8276 <0.3s NL6 no 23552 20· 900s 23552 <116s NL6 yes 23916 ? 23916 <19min NL8 no 39479 >20· 4 days 39479 <12hrs NL8 yes 39479 39721

  • pen

– 39721 <18hrs NL10 no 57500 59436

  • pen

– LB>57836 100hrs NL10 yes 57500 59436

  • pen

– LB>57817 >306hrs

31 / 33

slide-122
SLIDE 122

References

Computational Results

Circular Instances:

n/U/NRC Before Our results LB UB

  • pt?
  • pt

Time 4/U = 3/yes 20 20 <0.2s 4/U = n/no 20 20 <0.2s 4/U = n/yes 20 20 <0.2s 6/U = 3/yes 64 64 <18hrs 6/U = n/no ? 54

  • pen

54 ≈1.5hrs 6/U = n/yes ? 56

  • pen

56 <6hrs 8/U = 3/yes 128 132

  • pen

LB=130 <84hrs 8/U = n/no ? 100

  • pen

LB=92 <141hrs 8/U = n/yes ? 102

  • pen

LB=85 <2hrs

32 / 33

slide-123
SLIDE 123

References

Conclusions

Improvements:

1 Fast solution of pricing problems:

Expanded network Variable elimination

2 Branching

Complete branching rules Strong branching: #candidates dependent on remaining gap

3 Breaking Symmetries esp. for circular instances

Outlook: Handling of mirrored TTP instances Addition of strong valid inequalities

33 / 33

slide-124
SLIDE 124

References

Conclusions

Improvements:

1 Fast solution of pricing problems:

Expanded network Variable elimination

2 Branching

Complete branching rules Strong branching: #candidates dependent on remaining gap

3 Breaking Symmetries esp. for circular instances

Outlook: Handling of mirrored TTP instances Addition of strong valid inequalities

33 / 33

slide-125
SLIDE 125

References

Ahuja, R., Ergun, O., Orlin, J., and Punnen, A. (1999). A survey of very large-scale neighborhood search techniques. Technical report, Department of Industrial & Systems Engineering, University of Florida, Gainesville, FL 32611. Easton, K., Nemhauser, G., and Trick, M. (2003). Solving the travelling tournament problem: A combined interger programming and constraint programming approach. In E. Burke and P. De Causmaecker, editors, Practice and Theory of Automated Timetabling IV, volume 2740 of Lecture Notes in Computer Science, pages 100–109. Springer Verlag Berlin/Heidelberg. Glover, F. and Punnen, A. (1994). The traveling salesman problem: Linear time heuristics with exponential combinatorial leverage. Technical report, US West Chair in Systems Science, University

  • f Colorado, Boulder, School of Business, Campus Box 419,

Boulder, CO, 80309. Henz, M. (2001). Scheduling a major college basketball conference

  • revisited. Operations Research, 49(1), 163–168.

33 / 33

slide-126
SLIDE 126

References

Irnich, S., Desaulniers, G., Desrosiers, J., and Hadjar, A. (2007). Path reduced costs for eliminating arcs. Les Cahiers du GERAD G-2007-79, HEC Montréal, Montréal, Canada. Nemhauser, G. and Trick, M. (1998). Scheduling a major college basketball conference. Operations Research, 46(1), 1–8. Rasmussen, R. and Trick, M. (2008). Round robin scheduling – a

  • survey. European Journal of Operational Research, 188(3),

617–636. Van Hentenryck, P. and Vergados, Y. (2006). Traveling tournament scheduling: A systematic evaluation of simulated

  • annealling. In Integration of AI and OR Techniques in Constraint

Programming for Combinatorial Optimization Problems, Lecture Notes in Computer Science, pages 228–243. Springer.

33 / 33