a new branch-and-price algorithm for the traveling ... · references a new branch-and-price...

Post on 08-Jun-2020

4 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

References

A new Branch-and-Price Algorithm forthe Traveling Tournament Problem (TTP)

Column Generation 2008, Aussois, France

Stefan Irnich1

sirnich@or.rwth-aachen.deRWTH Aachen University

Deutsche Post Endowed Chair of Optimization of DistributionNetworks

June 18th, 2008

1joint work with Ulrich Schrempp1 / 33

References

Round Robin Sports League Scheduling

Sports League Scheduling:in many sports leagues the teams play a double round robintournament:even number n of teamsevery team plays against each other team twice;once home and once awayeach team has n̄ := n − 1 opponent teams, i.e.,each team plays 2n̄ gamesschedule is tight: 2n̄ time slots, n

2 games in each slot

2 / 33

References

Round Robin Sports League Scheduling

Sports League Scheduling:in many sports leagues the teams play a double round robintournament:even number n of teamsevery team plays against each other team twice;once home and once awayeach team has n̄ := n − 1 opponent teams, i.e.,each team plays 2n̄ gamesschedule is tight: 2n̄ time slots, n

2 games in each slot

2 / 33

References

Round Robin Sports League Scheduling

Sports League Scheduling:in many sports leagues the teams play a double round robintournament:even number n of teamsevery team plays against each other team twice;once home and once awayeach team has n̄ := n − 1 opponent teams, i.e.,each team plays 2n̄ gamesschedule is tight: 2n̄ time slots, n

2 games in each slot

2 / 33

References

Round Robin Sports League Scheduling

Sports League Scheduling:in many sports leagues the teams play a double round robintournament:even number n of teamsevery team plays against each other team twice;once home and once awayeach team has n̄ := n − 1 opponent teams, i.e.,each team plays 2n̄ gamesschedule is tight: 2n̄ time slots, n

2 games in each slot

2 / 33

References

Round Robin Sports League Scheduling

Sports League Scheduling:in many sports leagues the teams play a double round robintournament:even number n of teamsevery team plays against each other team twice;once home and once awayeach team has n̄ := n − 1 opponent teams, i.e.,each team plays 2n̄ gamesschedule is tight: 2n̄ time slots, n

2 games in each slot

2 / 33

References

Round Robin Sports League Scheduling

Example: n = 4 teams⇒ n̄ = 3 opponents⇒ 2n̄ = 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 −4team 2: +4 −1 −3 +1 −4 +3team 3: −1 +4 +2 −4 +1 −2team 4: −2 −3 −1 +3 +2 +1

“+′′ home (H)“−′′ away (A)

3 / 33

References

Round Robin Sports League Scheduling

Example: n = 4 teams⇒ n̄ = 3 opponents⇒ 2n̄ = 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 −4team 2: +4 −1 −3 +1 −4 +3team 3: −1 +4 +2 −4 +1 −2team 4: −2 −3 −1 +3 +2 +1

“+′′ home (H)“−′′ away (A)

3 / 33

References

Round Robin Sports League Scheduling

In some sports leagues teams travel directly from one away game to the nextaway 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

References

Round Robin Sports League Scheduling

In some sports leagues teams travel directly from one away game to the nextaway 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

References

Round Robin Sports League Scheduling

In some sports leagues teams travel directly from one away game to the nextaway 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 −4team 2: +4 −1 −3 +1 −4 +3team 3: −1 +4 +2 −4 +1 −2team 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

References

Round Robin Sports League Scheduling

In some sports leagues teams travel directly from one away game to the nextaway 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 −4team 2: H −1 −3 H −4 Hteam 3: −1 H H −4 H −2team 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

References

Round Robin Sports League Scheduling

In some sports leagues teams travel directly from one away game to the nextaway 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 −4team 2: H −1 −3 H −4 Hteam 3: −1 H H −4 H −2team 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

References

Round Robin Sports League Scheduling

In some sports leagues teams travel directly from one away game to the nextaway 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 −4team 2: H −1 −3 H −4 Hteam 3: −1 H H −4 H −2team 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

References

Round Robin Sports League Scheduling

In some sports leagues teams travel directly from one away game to the nextaway 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 −4team 2: H −1 −3 H −4 Hteam 3: −1 H H −4 H −2team 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

References

Round Robin Sports League Scheduling

In some sports leagues teams travel directly from one away game to the nextaway 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 −4team 2: H −1 −3 H −4 Hteam 3: −1 H H −4 H −2team 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

References

Round Robin Sports League Scheduling

If an away game is followed by another away game ora home game is followed by another home game,this is called a break.

In an attractive schedules, the number of breaks is small.

Break minimizationno additional constraints:constructive methods→timetables with n − 2 breaks(SRR), 3n − 6 (MDRR) etc.

in general: minimization ofbreaks, s.t. additionalconstraints

approaches: heuristics, IP orcombined IP/CP (Nemhauserand Trick, 1998; Henz, 2001)

Distance minimizationobjective: minimize distance,i.e., function separable byteams

constraints: number of(consecutive) breaks

approaches: heuristics,combined IP and CP(Easton et al., 2003)

5 / 33

References

Round Robin Sports League Scheduling

If an away game is followed by another away game ora home game is followed by another home game,this is called a break.

In an attractive schedules, the number of breaks is small.

Break minimizationno additional constraints:constructive methods→timetables with n − 2 breaks(SRR), 3n − 6 (MDRR) etc.

in general: minimization ofbreaks, s.t. additionalconstraints

approaches: heuristics, IP orcombined IP/CP (Nemhauserand Trick, 1998; Henz, 2001)

Distance minimizationobjective: minimize distance,i.e., function separable byteams

constraints: number of(consecutive) breaks

approaches: heuristics,combined IP and CP(Easton et al., 2003)

5 / 33

References

Round Robin Sports League Scheduling

If an away game is followed by another away game ora home game is followed by another home game,this is called a break.

In an attractive schedules, the number of breaks is small.

Break minimizationno additional constraints:constructive methods→timetables with n − 2 breaks(SRR), 3n − 6 (MDRR) etc.

in general: minimization ofbreaks, s.t. additionalconstraints

approaches: heuristics, IP orcombined IP/CP (Nemhauserand Trick, 1998; Henz, 2001)

Distance minimizationobjective: minimize distance,i.e., function separable byteams

constraints: number of(consecutive) breaks

approaches: heuristics,combined IP and CP(Easton et al., 2003)

5 / 33

References

Round Robin Sports League Scheduling

If an away game is followed by another away game ora home game is followed by another home game,this is called a break.

In an attractive schedules, the number of breaks is small.

Break minimizationno additional constraints:constructive methods→timetables with n − 2 breaks(SRR), 3n − 6 (MDRR) etc.

in general: minimization ofbreaks, s.t. additionalconstraints

approaches: heuristics, IP orcombined IP/CP (Nemhauserand Trick, 1998; Henz, 2001)

Distance minimizationobjective: minimize distance,i.e., function separable byteams

constraints: number of(consecutive) breaks

approaches: heuristics,combined IP and CP(Easton et al., 2003)

5 / 33

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 matrixL and U integer parameters

Output: A double round robin tournament on the n teamssuch that

the number of consecutive home games andconsecutive away games are between L and Uinclusive(typically L = 1 non-restrictive), andthe total distance travelled by the teams isminimized(optional) no-repeater constraints:game A-B not followed by game B-A

6 / 33

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 matrixL and U integer parameters

Output: A double round robin tournament on the n teamssuch that

the number of consecutive home games andconsecutive away games are between L and Uinclusive(typically L = 1 non-restrictive), andthe total distance travelled by the teams isminimized(optional) no-repeater constraints:game A-B not followed by game B-A

6 / 33

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 matrixL and U integer parameters

Output: A double round robin tournament on the n teamssuch that

the number of consecutive home games andconsecutive away games are between L and Uinclusive(typically L = 1 non-restrictive), andthe total distance travelled by the teams isminimized(optional) no-repeater constraints:game A-B not followed by game B-A

6 / 33

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 matrixL and U integer parameters

Output: A double round robin tournament on the n teamssuch that

the number of consecutive home games andconsecutive away games are between L and Uinclusive(typically L = 1 non-restrictive), andthe total distance travelled by the teams isminimized(optional) no-repeater constraints:game A-B not followed by game B-A

6 / 33

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 matrixL and U integer parameters

Output: A double round robin tournament on the n teamssuch that

the number of consecutive home games andconsecutive away games are between L and Uinclusive(typically L = 1 non-restrictive), andthe total distance travelled by the teams isminimized(optional) no-repeater constraints:game A-B not followed by game B-A

6 / 33

References

Extensive Formulation

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

p:

Pt set of tours for team t

tour p ∈ Pt has cost cpAt

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

min∑t∈T

∑p∈Pt

cpλtp

s.t.∑p∈Pt :

∃t′ :p∈Ats,t′

λtp

︸ ︷︷ ︸team t

plays away

+∑t′∈T :t′ 6=t

∑p∈Pt′ :

p∈At′st

λt′p

︸ ︷︷ ︸team t′ 6= t playsaway against t

= 1∀t ∈ T∀s ∈ {1, . . . , 2n̄} (1)

∑p∈Pt

λtp = 1 ∀t ∈ T (2)

λtp ∈ {0, 1} ∀t ∈ T , p ∈ Pt (3)

7 / 33

References

Extensive Formulation

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

p:

Pt set of tours for team t

tour p ∈ Pt has cost cpAt

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

min∑t∈T

∑p∈Pt

cpλtp

s.t.∑p∈Pt :

∃t′ :p∈Ats,t′

λtp

︸ ︷︷ ︸team t

plays away

+∑t′∈T :t′ 6=t

∑p∈Pt′ :

p∈At′st

λt′p

︸ ︷︷ ︸team t′ 6= t playsaway against t

= 1∀t ∈ T∀s ∈ {1, . . . , 2n̄} (1)

∑p∈Pt

λtp = 1 ∀t ∈ T (2)

λtp ∈ {0, 1} ∀t ∈ T , p ∈ Pt (3)

7 / 33

References

Hardness of the TTP

Empirically, a problem very hard to solve!

(Easton et al., 2003):

NL4: Instance with n = 4 teamsSolved to optimality in ≈30 seconds.

NL6: Instance with n = 6 teamsSolved 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

References

Hardness of the TTP

Empirically, a problem very hard to solve!

(Easton et al., 2003):

NL4: Instance with n = 4 teamsSolved to optimality in ≈30 seconds.

NL6: Instance with n = 6 teamsSolved 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

References

Hardness of the TTP

Empirically, a problem very hard to solve!

(Easton et al., 2003):

NL4: Instance with n = 4 teamsSolved to optimality in ≈30 seconds.

NL6: Instance with n = 6 teamsSolved 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

References

Compact Formulation

Easton et al. (2003) did not provide a compact formulation

Compact formulation with binary variables x tijs , where

x t = (x tijs) represents the movement of team t

x tijs = 1 if

team tmoves at time slot s from the venue of team ito 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, . . . , 2n̄} with two artificialtime slots 0 and 2n̄ + 1

9 / 33

References

Compact Formulation

Easton et al. (2003) did not provide a compact formulation

Compact formulation with binary variables x tijs , where

x t = (x tijs) represents the movement of team t

x tijs = 1 if

team tmoves at time slot s from the venue of team ito 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, . . . , 2n̄} with two artificialtime slots 0 and 2n̄ + 1

9 / 33

References

Compact Formulation

Easton et al. (2003) did not provide a compact formulation

Compact formulation with binary variables x tijs , where

x t = (x tijs) represents the movement of team t

x tijs = 1 if

team tmoves at time slot s from the venue of team ito 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, . . . , 2n̄} with two artificialtime slots 0 and 2n̄ + 1

9 / 33

References

Compact Formulation

Easton et al. (2003) did not provide a compact formulation

Compact formulation with binary variables x tijs , where

x t = (x tijs) represents the movement of team t

x tijs = 1 if

team tmoves at time slot s from the venue of team ito 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, . . . , 2n̄} with two artificialtime slots 0 and 2n̄ + 1

9 / 33

References

Compact Formulation

Easton et al. (2003) did not provide a compact formulation

Compact formulation with binary variables x tijs , where

x t = (x tijs) represents the movement of team t

x tijs = 1 if

team tmoves at time slot s from the venue of team ito 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, . . . , 2n̄} with two artificialtime slots 0 and 2n̄ + 1

9 / 33

References

Compact Formulation

Easton et al. (2003) did not provide a compact formulation

Compact formulation with binary variables x tijs , where

x t = (x tijs) represents the movement of team t

x tijs = 1 if

team tmoves at time slot s from the venue of team ito 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, . . . , 2n̄} with two artificialtime slots 0 and 2n̄ + 1

9 / 33

References

Compact Formulation

Easton et al. (2003) did not provide a compact formulation

Compact formulation with binary variables x tijs , where

x t = (x tijs) represents the movement of team t

x tijs = 1 if

team tmoves at time slot s from the venue of team ito 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, . . . , 2n̄} with two artificialtime slots 0 and 2n̄ + 1

9 / 33

References

Compact Formulation

Easton et al. (2003) did not provide a compact formulation

Compact formulation with binary variables x tijs , where

x t = (x tijs) represents the movement of team t

x tijs = 1 if

team tmoves at time slot s from the venue of team ito 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, . . . , 2n̄} with two artificialtime slots 0 and 2n̄ + 1

9 / 33

References

Compact FormulationInterpretation of decision variables as arcs of a layered network (V ,A)

nodes v tis ∈ V “team t is at venue i at time s” ∼ i-s

artificial node v th0 (“source”) and v t

h,2n̄+1 (“sink”)arcs (v t

is , vtj,s+1) ∈ A corresponding to decision variables x t

ijs

Network for team t = 4:

10 / 33

References

min∑t∈T

∑i∈T

∑j∈T

2n̄∑s=0

dijx tijs

s.t.2n̄∑s=1

∑j∈T

x tijs = 1 ∀t, i ∈ T : i 6= t (1)

∑i∈T

x tijs −

∑i∈T

x tji,s+1 = 0 ∀t, j ∈ T , ∀s ∈ {0, .., 2n̄ − 1} (2)

U−1∑u=0

x ttt,s+u ≤ U − 1 and

U−1∑u=0

∑i 6=t

∑j 6=t

x tij,s+u ≤ U − 1

∀t ∈ T , ∀s ∈ {1, .., 2n̄ − U} (3)∑i∈T :i 6=t

∑j∈T

x tijs

︸ ︷︷ ︸team t

plays away

+∑t′∈T :t′ 6=t

∑j∈T

x t′tjs

︸ ︷︷ ︸team t′ 6= t playsaway against t

= 1∀t ∈ T∀s ∈ {1, .., 2n̄} (4)

x tijs ∈ {0, 1} ∀t, i , j ∈ T ,∀s ∈ {0, .., 2n̄} (5)

Explanation:(1) each team t must play once at every opponent’s venue

11 / 33

References

min∑t∈T

∑i∈T

∑j∈T

2n̄∑s=0

dijx tijs

s.t.2n̄∑s=1

∑j∈T

x tijs = 1 ∀t, i ∈ T : i 6= t (1)

∑i∈T

x tijs −

∑i∈T

x tji,s+1 = 0 ∀t, j ∈ T , ∀s ∈ {0, .., 2n̄ − 1} (2)

U−1∑u=0

x ttt,s+u ≤ U − 1 and

U−1∑u=0

∑i 6=t

∑j 6=t

x tij,s+u ≤ U − 1

∀t ∈ T , ∀s ∈ {1, .., 2n̄ − U} (3)∑i∈T :i 6=t

∑j∈T

x tijs

︸ ︷︷ ︸team t

plays away

+∑t′∈T :t′ 6=t

∑j∈T

x t′tjs

︸ ︷︷ ︸team t′ 6= t playsaway against t

= 1∀t ∈ T∀s ∈ {1, .., 2n̄} (4)

x tijs ∈ {0, 1} ∀t, i , j ∈ T ,∀s ∈ {0, .., 2n̄} (5)

Explanation:(2) flow conservation

11 / 33

References

min∑t∈T

∑i∈T

∑j∈T

2n̄∑s=0

dijx tijs

s.t.2n̄∑s=1

∑j∈T

x tijs = 1 ∀t, i ∈ T : i 6= t (1)

∑i∈T

x tijs −

∑i∈T

x tji,s+1 = 0 ∀t, j ∈ T , ∀s ∈ {0, .., 2n̄ − 1} (2)

U−1∑u=0

x ttt,s+u ≤ U − 1 and

U−1∑u=0

∑i 6=t

∑j 6=t

x tij,s+u ≤ U − 1

∀t ∈ T , ∀s ∈ {1, .., 2n̄ − U} (3)∑i∈T :i 6=t

∑j∈T

x tijs

︸ ︷︷ ︸team t

plays away

+∑t′∈T :t′ 6=t

∑j∈T

x t′tjs

︸ ︷︷ ︸team t′ 6= t playsaway against t

= 1∀t ∈ T∀s ∈ {1, .., 2n̄} (4)

x tijs ∈ {0, 1} ∀t, i , j ∈ T ,∀s ∈ {0, .., 2n̄} (5)

Explanation:(3) upper bound on number of consecutive home/away games

11 / 33

References

min∑t∈T

∑i∈T

∑j∈T

2n̄∑s=0

dijx tijs

s.t.2n̄∑s=1

∑j∈T

x tijs = 1 ∀t, i ∈ T : i 6= t (1)

∑i∈T

x tijs −

∑i∈T

x tji,s+1 = 0 ∀t, j ∈ T , ∀s ∈ {0, .., 2n̄ − 1} (2)

U−1∑u=0

x ttt,s+u ≤ U − 1 and

U−1∑u=0

∑i 6=t

∑j 6=t

x tij,s+u ≤ U − 1

∀t ∈ T , ∀s ∈ {1, .., 2n̄ − U} (3)∑i∈T :i 6=t

∑j∈T

x tijs

︸ ︷︷ ︸team t

plays away

+∑t′∈T :t′ 6=t

∑j∈T

x t′tjs

︸ ︷︷ ︸team t′ 6= t playsaway against t

= 1∀t ∈ T∀s ∈ {1, .., 2n̄} (4)

x tijs ∈ {0, 1} ∀t, i , j ∈ T ,∀s ∈ {0, .., 2n̄} (5)

Explanation:(4) coupling constraints: each team t must play in every time slot s

11 / 33

References

Compact Formulation

Dantzig-Wolfe Decomposition:decomposition by teams tconstraints (1), (2), and (3) are separable by team→constraints of the CG pricing problemconstraints (4) are coupling constraints between differentteams→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)completeto derive new branching rulesto derive valid inequalties compatible with pricing(→robust cuts)

12 / 33

References

Compact Formulation

Dantzig-Wolfe Decomposition:decomposition by teams tconstraints (1), (2), and (3) are separable by team→constraints of the CG pricing problemconstraints (4) are coupling constraints between differentteams→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)completeto derive new branching rulesto derive valid inequalties compatible with pricing(→robust cuts)

12 / 33

References

Compact Formulation

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

x ttt′s + x t′

tt′s ≤ 1 ∀t, t ′ ∈ T , t 6= t ′,∀s ∈ {1, .., 2n̄ − 1}

first variable: t plays away against t ′ in slot s + 1second variable: t ′ plays away against t in slot s

Remarks:this is a cubic number of constraints: n(n − 1)(2n̄ − 1)

NRC mix variables of different teams t 6= t ′

⇒ NRC cannot be modelled in the pricing problem; must remainin the CG master program

⇒ dynamic constraint generation implemented!

13 / 33

References

Compact Formulation

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

x ttt′s + x t′

tt′s ≤ 1 ∀t, t ′ ∈ T , t 6= t ′,∀s ∈ {1, .., 2n̄ − 1}

first variable: t plays away against t ′ in slot s + 1second variable: t ′ plays away against t in slot s

Remarks:this is a cubic number of constraints: n(n − 1)(2n̄ − 1)

NRC mix variables of different teams t 6= t ′

⇒ NRC cannot be modelled in the pricing problem; must remainin the CG master program

⇒ dynamic constraint generation implemented!

13 / 33

References

Solution of the Pricing Problem

Easton et al. (2003) suggest solving the pricing problem byconstraint programming (CP):

Advantages: easy to implement;easy to extend to cope with additional constraintsDrawback: CP does not exploit the structure of the network

The Pricing Problem of each team t is a Shortest-PathProblem with Resource Constraints (SPPRC):

1 one resource α ∈ {0, 1, . . . ,U − 1} for counting the number ofconsecutive home/way games

2 paths must be (task-)elementaryvisit every opponent’s venue at most (=exactly) oncevisit home venue at most (=exactly) n̄ times

14 / 33

References

Solution of the Pricing Problem

Easton et al. (2003) suggest solving the pricing problem byconstraint programming (CP):

Advantages: easy to implement;easy to extend to cope with additional constraintsDrawback: CP does not exploit the structure of the network

The Pricing Problem of each team t is a Shortest-PathProblem with Resource Constraints (SPPRC):

1 one resource α ∈ {0, 1, . . . ,U − 1} for counting the number ofconsecutive home/way games

2 paths must be (task-)elementaryvisit every opponent’s venue at most (=exactly) oncevisit home venue at most (=exactly) n̄ times

14 / 33

References

Solution of the Pricing Problem

Easton et al. (2003) suggest solving the pricing problem byconstraint programming (CP):

Advantages: easy to implement;easy to extend to cope with additional constraintsDrawback: CP does not exploit the structure of the network

The Pricing Problem of each team t is a Shortest-PathProblem with Resource Constraints (SPPRC):

1 one resource α ∈ {0, 1, . . . ,U − 1} for counting the number ofconsecutive home/way games

2 paths must be (task-)elementaryvisit every opponent’s venue at most (=exactly) oncevisit home venue at most (=exactly) n̄ times

14 / 33

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 = Hcreates 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 away6 (1, {3}, 0)

7 (2, {1, 3}, 1)

8 (d , {1, 2, 3}, 0) (destination node d)15 / 33

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 = Hcreates 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 away6 (1, {3}, 0)

7 (2, {1, 3}, 1)

8 (d , {1, 2, 3}, 0) (destination node d)15 / 33

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 = Hcreates 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 away6 (1, {3}, 0)

7 (2, {1, 3}, 1)

8 (d , {1, 2, 3}, 0) (destination node d)15 / 33

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 = Hcreates 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 away6 (1, {3}, 0)

7 (2, {1, 3}, 1)

8 (d , {1, 2, 3}, 0) (destination node d)15 / 33

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 = Hcreates 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 away6 (1, {3}, 0)

7 (2, {1, 3}, 1)

8 (d , {1, 2, 3}, 0) (destination node d)15 / 33

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 = Hcreates 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 away6 (1, {3}, 0)

7 (2, {1, 3}, 1)

8 (d , {1, 2, 3}, 0) (destination node d)15 / 33

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 = Hcreates 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 away6 (1, {3}, 0)

7 (2, {1, 3}, 1)

8 (d , {1, 2, 3}, 0) (destination node d)15 / 33

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 = Hcreates 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 away6 (1, {3}, 0)

7 (2, {1, 3}, 1)

8 (d , {1, 2, 3}, 0) (destination node d)15 / 33

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 = Hcreates 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 away6 (1, {3}, 0)

7 (2, {1, 3}, 1)

8 (d , {1, 2, 3}, 0) (destination node d)15 / 33

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 = Hcreates 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 away6 (1, {3}, 0)

7 (2, {1, 3}, 1)

8 (d , {1, 2, 3}, 0) (destination node d)15 / 33

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 = Hcreates 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 away6 (1, {3}, 0)

7 (2, {1, 3}, 1)

8 (d , {1, 2, 3}, 0) (destination node d)15 / 33

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 = Hcreates 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 away6 (1, {3}, 0)

7 (2, {1, 3}, 1)

8 (d , {1, 2, 3}, 0) (destination node d)15 / 33

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 = Hcreates 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 away6 (1, {3}, 0)

7 (2, {1, 3}, 1)

8 (d , {1, 2, 3}, 0) (destination node d)15 / 33

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 = Hcreates 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 away6 (1, {3}, 0)

7 (2, {1, 3}, 1)

8 (d , {1, 2, 3}, 0) (destination node d)15 / 33

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 lastnode i and subset S

2 in case of a lower bound L > 1 on consecutive home/awaygames, there is no dominance (at all) between differentlabels

3 if L = 1 (i.e. no lower bound), a label with α = 0 can onlydominate 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 algorithmfor ordinary SPP

16 / 33

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 lastnode i and subset S

2 in case of a lower bound L > 1 on consecutive home/awaygames, there is no dominance (at all) between differentlabels

3 if L = 1 (i.e. no lower bound), a label with α = 0 can onlydominate 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 algorithmfor ordinary SPP

16 / 33

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 lastnode i and subset S

2 in case of a lower bound L > 1 on consecutive home/awaygames, there is no dominance (at all) between differentlabels

3 if L = 1 (i.e. no lower bound), a label with α = 0 can onlydominate 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 algorithmfor ordinary SPP

16 / 33

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 lastnode i and subset S

2 in case of a lower bound L > 1 on consecutive home/awaygames, there is no dominance (at all) between differentlabels

3 if L = 1 (i.e. no lower bound), a label with α = 0 can onlydominate 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 algorithmfor ordinary SPP

16 / 33

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 lastnode i and subset S

2 in case of a lower bound L > 1 on consecutive home/awaygames, there is no dominance (at all) between differentlabels

3 if L = 1 (i.e. no lower bound), a label with α = 0 can onlydominate 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 algorithmfor ordinary SPP

16 / 33

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 lastnode i and subset S

2 in case of a lower bound L > 1 on consecutive home/awaygames, there is no dominance (at all) between differentlabels

3 if L = 1 (i.e. no lower bound), a label with α = 0 can onlydominate 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 algorithmfor ordinary SPP

16 / 33

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 lastnode i and subset S

2 in case of a lower bound L > 1 on consecutive home/awaygames, there is no dominance (at all) between differentlabels

3 if L = 1 (i.e. no lower bound), a label with α = 0 can onlydominate 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 algorithmfor ordinary SPP

16 / 33

References

Solution of the Pricing Problem

Expanded Network for n = 4:

17 / 33

References

Solution of the Pricing Problem

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

#teams #nodes #arcs #tours Factorn |Vex | |Aex | #tours/#arcs4 92 198 120 ≈ 0.66 1138 3596 23280 ≈ 6.58 8548 32108 9.93888·106 ≈ 31010 55448 245910 7.43831·109 ≈ 30,00012 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 (Gloverand Punnen, 1994; Ahuja et al., 1999)

18 / 33

References

Solution of the Pricing Problem

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

#teams #nodes #arcs #tours Factorn |Vex | |Aex | #tours/#arcs4 92 198 120 ≈ 0.66 1138 3596 23280 ≈ 6.58 8548 32108 9.93888·106 ≈ 31010 55448 245910 7.43831·109 ≈ 30,00012 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 (Gloverand Punnen, 1994; Ahuja et al., 1999)

18 / 33

References

Solution of the Pricing Problem

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

#teams #nodes #arcs #tours Factorn |Vex | |Aex | #tours/#arcs4 92 198 120 ≈ 0.66 1138 3596 23280 ≈ 6.58 8548 32108 9.93888·106 ≈ 31010 55448 245910 7.43831·109 ≈ 30,00012 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 (Gloverand Punnen, 1994; Ahuja et al., 1999)

18 / 33

References

Solution of the Pricing Problem

Observations:networks are symmetric:slots 1, . . . , n̄ are mirror images of slots n̄ + 1, . . . , 2n̄only rdc on arcs differ

Consequences:build and store only the “first half” of the expanded networkcorresponding 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 2n̄, . . . , n̄ + 13 merge step: combine fw and bw labels from slots n̄ and n̄ + 1

i.e. `fw = (i , S , α) and `bw = (i ′, S ′, α′) withS ∪ S ′ ∪ {i , i ′} = T \ {t} and α + α′ < U − 1

19 / 33

References

Solution of the Pricing Problem

Observations:networks are symmetric:slots 1, . . . , n̄ are mirror images of slots n̄ + 1, . . . , 2n̄only rdc on arcs differ

Consequences:build and store only the “first half” of the expanded networkcorresponding 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 2n̄, . . . , n̄ + 13 merge step: combine fw and bw labels from slots n̄ and n̄ + 1

i.e. `fw = (i , S , α) and `bw = (i ′, S ′, α′) withS ∪ S ′ ∪ {i , i ′} = T \ {t} and α + α′ < U − 1

19 / 33

References

Solution of the Pricing Problem

Observations:networks are symmetric:slots 1, . . . , n̄ are mirror images of slots n̄ + 1, . . . , 2n̄only rdc on arcs differ

Consequences:build and store only the “first half” of the expanded networkcorresponding 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 2n̄, . . . , n̄ + 13 merge step: combine fw and bw labels from slots n̄ and n̄ + 1

i.e. `fw = (i , S , α) and `bw = (i ′, S ′, α′) withS ∪ S ′ ∪ {i , i ′} = T \ {t} and α + α′ < U − 1

19 / 33

References

Solution of the Pricing Problem

Observations:networks are symmetric:slots 1, . . . , n̄ are mirror images of slots n̄ + 1, . . . , 2n̄only rdc on arcs differ

Consequences:build and store only the “first half” of the expanded networkcorresponding 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 2n̄, . . . , n̄ + 13 merge step: combine fw and bw labels from slots n̄ and n̄ + 1

i.e. `fw = (i , S , α) and `bw = (i ′, S ′, α′) withS ∪ S ′ ∪ {i , i ′} = T \ {t} and α + α′ < U − 1

19 / 33

References

Solution of the Pricing Problem

Observations:networks are symmetric:slots 1, . . . , n̄ are mirror images of slots n̄ + 1, . . . , 2n̄only rdc on arcs differ

Consequences:build and store only the “first half” of the expanded networkcorresponding 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 2n̄, . . . , n̄ + 13 merge step: combine fw and bw labels from slots n̄ and n̄ + 1

i.e. `fw = (i , S , α) and `bw = (i ′, S ′, α′) withS ∪ S ′ ∪ {i , i ′} = T \ {t} and α + α′ < U − 1

19 / 33

References

Solution of the Pricing Problem

Observations:networks are symmetric:slots 1, . . . , n̄ are mirror images of slots n̄ + 1, . . . , 2n̄only rdc on arcs differ

Consequences:build and store only the “first half” of the expanded networkcorresponding 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 2n̄, . . . , n̄ + 13 merge step: combine fw and bw labels from slots n̄ and n̄ + 1

i.e. `fw = (i , S , α) and `bw = (i ′, S ′, α′) withS ∪ S ′ ∪ {i , i ′} = T \ {t} and α + α′ < U − 1

19 / 33

References

Solution of the Pricing Problem

Observations:networks are symmetric:slots 1, . . . , n̄ are mirror images of slots n̄ + 1, . . . , 2n̄only rdc on arcs differ

Consequences:build and store only the “first half” of the expanded networkcorresponding 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 2n̄, . . . , n̄ + 13 merge step: combine fw and bw labels from slots n̄ and n̄ + 1

i.e. `fw = (i , S , α) and `bw = (i ′, S ′, α′) withS ∪ S ′ ∪ {i , i ′} = T \ {t} and α + α′ < U − 1

19 / 33

References

Solution of the Pricing Problem

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

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

2 corresponding lower bound zLB = 11>π for TTP3 and an upper bound UB on TTP

Proposition A: If the rdc c̃tp(π) of a tour variable λt

p exceeds theoptimality gap UB − zLB , then λt

p = 0 in any optimal solution.

Proposition B: If a ∈ Atex 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

References

Solution of the Pricing Problem

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

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

2 corresponding lower bound zLB = 11>π for TTP3 and an upper bound UB on TTP

Proposition A: If the rdc c̃tp(π) of a tour variable λt

p exceeds theoptimality gap UB − zLB , then λt

p = 0 in any optimal solution.

Proposition B: If a ∈ Atex 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

References

Solution of the Pricing Problem

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

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

2 corresponding lower bound zLB = 11>π for TTP3 and an upper bound UB on TTP

Proposition A: If the rdc c̃tp(π) of a tour variable λt

p exceeds theoptimality gap UB − zLB , then λt

p = 0 in any optimal solution.

Proposition B: If a ∈ Atex 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

References

Solution of the Pricing Problem

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

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

2 corresponding lower bound zLB = 11>π for TTP3 and an upper bound UB on TTP

Proposition A: If the rdc c̃tp(π) of a tour variable λt

p exceeds theoptimality gap UB − zLB , then λt

p = 0 in any optimal solution.

Proposition B: If a ∈ Atex 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

References

Solution of the Pricing Problem

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

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

2 corresponding lower bound zLB = 11>π for TTP3 and an upper bound UB on TTP

Proposition A: If the rdc c̃tp(π) of a tour variable λt

p exceeds theoptimality gap UB − zLB , then λt

p = 0 in any optimal solution.

Proposition B: If a ∈ Atex 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

References

Solution of the Pricing Problem

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

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

2 corresponding lower bound zLB = 11>π for TTP3 and an upper bound UB on TTP

Proposition A: If the rdc c̃tp(π) of a tour variable λt

p exceeds theoptimality gap UB − zLB , then λt

p = 0 in any optimal solution.

Proposition B: If a ∈ Atex 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

References

Solution of the Pricing Problem

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

ex canbe computed with a bidirectional SPP approach:

1 solve full fw SPP; cost labels c̃ fw (v) at nodes v2 solve full bw SPP; cost labels c̃bw (v) at nodes v3 value rdc(v ,w) := c̃ fw (v) + c̃vw + c̃bw (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 · |Atex |), i.e., same as pricing

21 / 33

References

Solution of the Pricing Problem

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

ex canbe computed with a bidirectional SPP approach:

1 solve full fw SPP; cost labels c̃ fw (v) at nodes v2 solve full bw SPP; cost labels c̃bw (v) at nodes v3 value rdc(v ,w) := c̃ fw (v) + c̃vw + c̃bw (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 · |Atex |), i.e., same as pricing

21 / 33

References

Solution of the Pricing Problem

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

ex canbe computed with a bidirectional SPP approach:

1 solve full fw SPP; cost labels c̃ fw (v) at nodes v2 solve full bw SPP; cost labels c̃bw (v) at nodes v3 value rdc(v ,w) := c̃ fw (v) + c̃vw + c̃bw (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 · |Atex |), i.e., same as pricing

21 / 33

References

Solution of the Pricing Problem

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

ex canbe computed with a bidirectional SPP approach:

1 solve full fw SPP; cost labels c̃ fw (v) at nodes v2 solve full bw SPP; cost labels c̃bw (v) at nodes v3 value rdc(v ,w) := c̃ fw (v) + c̃vw + c̃bw (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 · |Atex |), i.e., same as pricing

21 / 33

References

Solution of the Pricing Problem

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

ex canbe computed with a bidirectional SPP approach:

1 solve full fw SPP; cost labels c̃ fw (v) at nodes v2 solve full bw SPP; cost labels c̃bw (v) at nodes v3 value rdc(v ,w) := c̃ fw (v) + c̃vw + c̃bw (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 · |Atex |), i.e., same as pricing

21 / 33

References

Solution of the Pricing Problem

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

ex canbe computed with a bidirectional SPP approach:

1 solve full fw SPP; cost labels c̃ fw (v) at nodes v2 solve full bw SPP; cost labels c̃bw (v) at nodes v3 value rdc(v ,w) := c̃ fw (v) + c̃vw + c̃bw (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 · |Atex |), i.e., same as pricing

21 / 33

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

References

Branching

Easton et al. (2003) suggest branching on home/away decisions forteam 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 rulehowever: most effective branching rule in practice

23 / 33

References

Branching

Easton et al. (2003) suggest branching on home/away decisions forteam 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 rulehowever: most effective branching rule in practice

23 / 33

References

Branching

Easton et al. (2003) suggest branching on home/away decisions forteam 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 rulehowever: most effective branching rule in practice

23 / 33

References

Branching

Easton et al. (2003) suggest branching on home/away decisions forteam 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 rulehowever: most effective branching rule in practice

23 / 33

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 nodessecond (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 lesscandidates should be considered!

#Candidates := b1 + MaxCand ·(UB − zLB(node)

UB − zLB(root)

)γc

good results for γ ∈ [1.5; 2] and MaxCand ∈ [10, 200]24 / 33

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 nodessecond (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 lesscandidates should be considered!

#Candidates := b1 + MaxCand ·(UB − zLB(node)

UB − zLB(root)

)γc

good results for γ ∈ [1.5; 2] and MaxCand ∈ [10, 200]24 / 33

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 nodessecond (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 lesscandidates should be considered!

#Candidates := b1 + MaxCand ·(UB − zLB(node)

UB − zLB(root)

)γc

good results for γ ∈ [1.5; 2] and MaxCand ∈ [10, 200]24 / 33

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 nodessecond (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 lesscandidates should be considered!

#Candidates := b1 + MaxCand ·(UB − zLB(node)

UB − zLB(root)

)γc

good results for γ ∈ [1.5; 2] and MaxCand ∈ [10, 200]24 / 33

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 nodessecond (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 lesscandidates should be considered!

#Candidates := b1 + MaxCand ·(UB − zLB(node)

UB − zLB(root)

)γc

good results for γ ∈ [1.5; 2] and MaxCand ∈ [10, 200]24 / 33

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 nodessecond (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 lesscandidates should be considered!

#Candidates := b1 + MaxCand ·(UB − zLB(node)

UB − zLB(root)

)γc

good results for γ ∈ [1.5; 2] and MaxCand ∈ [10, 200]24 / 33

References

Breaking Symmetry for Symmetrical Distances

Observations:symmetry causes B&B-trees to grow rapidlysymmetric distances (dij) impose that TTP solutions can bereversed in time:tour −→p = (i1, i2, . . . , in̄, in̄+1, . . . , i2n̄) becomestour ←−p = (i2n̄, . . . , in̄+1, in̄, . . . , i2, i1)

“middle arc” is (in̄, in̄+1) and (in̄+1, in̄), respectively

Rule: Choose one team t andmodify “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 ≤ j3 remove arc (i , j ′) iff i > j

25 / 33

References

Breaking Symmetry for Symmetrical Distances

Observations:symmetry causes B&B-trees to grow rapidlysymmetric distances (dij) impose that TTP solutions can bereversed in time:tour −→p = (i1, i2, . . . , in̄, in̄+1, . . . , i2n̄) becomestour ←−p = (i2n̄, . . . , in̄+1, in̄, . . . , i2, i1)

“middle arc” is (in̄, in̄+1) and (in̄+1, in̄), respectively

Rule: Choose one team t andmodify “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 ≤ j3 remove arc (i , j ′) iff i > j

25 / 33

References

Breaking Symmetry for Circular Instances

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

D = (dij ) =

0 1 2 3 4 3 2 11 0 1 2 3 4 3 22 1 0 1 2 3 4 33 2 1 0 1 2 3 44 3 2 1 0 1 2 33 4 3 2 1 0 1 22 3 4 3 2 1 0 11 2 3 4 3 2 1 0

⇒ Extremely hard to solve because of inherent symmetry!

26 / 33

References

Breaking Symmetry for Circular Instances

Symmetry in one time slot s w.r.t. home/away decisions can beremoved:

How may essentially different home/away (H/A) assignmentsto teams exist?n2 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

References

Breaking Symmetry for Circular Instances

Symmetry in one time slot s w.r.t. home/away decisions can beremoved:

How may essentially different home/away (H/A) assignmentsto teams exist?n2 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

References

Breaking Symmetry for Circular Instances

Symmetry in one time slot s w.r.t. home/away decisions can beremoved:

How may essentially different home/away (H/A) assignmentsto teams exist?n2 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

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 branches28 / 33

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 branches28 / 33

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 branches28 / 33

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 (=equivalenceclasses) is equal to the average number of fixed points

#orbits =1|G |

∑g∈G

|{m ∈ M : mg = m}|

.

29 / 33

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 (=equivalenceclasses) is equal to the average number of fixed points

#orbits =1|G |

∑g∈G

|{m ∈ M : mg = m}|

.

29 / 33

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 (=equivalenceclasses) is equal to the average number of fixed points

#orbits =1|G |

∑g∈G

|{m ∈ M : mg = m}|

.

29 / 33

References

Breaking Symmetry for Circular Instances

What do we save?

The number of possible H/A assignments to a time slot s is( nn/2

).

n( nn/2

)#orbits factor

4 6 2 36 20 3 ≈78 70 8 ≈910 252 16 ≈1612 924 50 ≈18

30 / 33

References

Breaking Symmetry for Circular Instances

What do we save?

The number of possible H/A assignments to a time slot s is( nn/2

).

n( nn/2

)#orbits factor

4 6 2 36 20 3 ≈78 70 8 ≈910 252 16 ≈1612 924 50 ≈18

30 / 33

References

Computational Results

(Rasmussen and Trick, 2008):

“The most obvious challenge within the area and a greatmilestone to reach would be to prove optimality of theTTP instance NL8.”

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

LB UB opt? Time opt TimeNL4 no 8276 30s 8276 <0.3sNL4 yes 8276 ? 8276 <0.3sNL6 no 23552 20· 900s 23552 <116sNL6 yes 23916 ? 23916 <19minNL8 no 39479 >20· 4 days 39479 <12hrsNL8 yes 39479 39721 open – 39721 <18hrsNL10 no 57500 59436 open – LB>57836 100hrsNL10 yes 57500 59436 open – LB>57817 >306hrs

31 / 33

References

Computational Results

(Rasmussen and Trick, 2008):

“The most obvious challenge within the area and a greatmilestone to reach would be to prove optimality of theTTP instance NL8.”

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

LB UB opt? Time opt TimeNL4 no 8276 30s 8276 <0.3sNL4 yes 8276 ? 8276 <0.3sNL6 no 23552 20· 900s 23552 <116sNL6 yes 23916 ? 23916 <19minNL8 no 39479 >20· 4 days 39479 <12hrsNL8 yes 39479 39721 open – 39721 <18hrsNL10 no 57500 59436 open – LB>57836 100hrsNL10 yes 57500 59436 open – LB>57817 >306hrs

31 / 33

References

Computational Results

Circular Instances:

n/U/NRC Before Our resultsLB UB opt? opt Time

4/U = 3/yes 20 20 <0.2s4/U = n/no 20 20 <0.2s4/U = n/yes 20 20 <0.2s

6/U = 3/yes 64 64 <18hrs6/U = n/no ? 54 open 54 ≈1.5hrs6/U = n/yes ? 56 open 56 <6hrs

8/U = 3/yes 128 132 open LB=130 <84hrs8/U = n/no ? 100 open LB=92 <141hrs8/U = n/yes ? 102 open LB=85 <2hrs

32 / 33

References

Conclusions

Improvements:1 Fast solution of pricing problems:

Expanded networkVariable elimination

2 BranchingComplete branching rulesStrong branching: #candidates dependent on remaining gap

3 Breaking Symmetries esp. for circular instances

Outlook:Handling of mirrored TTP instancesAddition of strong valid inequalities

33 / 33

References

Conclusions

Improvements:1 Fast solution of pricing problems:

Expanded networkVariable elimination

2 BranchingComplete branching rulesStrong branching: #candidates dependent on remaining gap

3 Breaking Symmetries esp. for circular instances

Outlook:Handling of mirrored TTP instancesAddition of strong valid inequalities

33 / 33

References

Ahuja, R., Ergun, O., Orlin, J., and Punnen, A. (1999). A survey ofvery large-scale neighborhood search techniques. Technicalreport, Department of Industrial & Systems Engineering,University of Florida, Gainesville, FL 32611.

Easton, K., Nemhauser, G., and Trick, M. (2003). Solving thetravelling tournament problem: A combined intergerprogramming and constraint programming approach. In E. Burkeand P. De Causmaecker, editors, Practice and Theory ofAutomated Timetabling IV, volume 2740 of Lecture Notes inComputer Science, pages 100–109. Springer VerlagBerlin/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, Universityof 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

References

Irnich, S., Desaulniers, G., Desrosiers, J., and Hadjar, A. (2007).Path reduced costs for eliminating arcs. Les Cahiers du GERADG-2007-79, HEC Montréal, Montréal, Canada.

Nemhauser, G. and Trick, M. (1998). Scheduling a major collegebasketball conference. Operations Research, 46(1), 1–8.

Rasmussen, R. and Trick, M. (2008). Round robin scheduling – asurvey. European Journal of Operational Research, 188(3),617–636.

Van Hentenryck, P. and Vergados, Y. (2006). Travelingtournament scheduling: A systematic evaluation of simulatedannealling. In Integration of AI and OR Techniques in ConstraintProgramming for Combinatorial Optimization Problems, LectureNotes in Computer Science, pages 228–243. Springer.

33 / 33

top related