Computers & Operations Research 39 (2012) 1692–1700
Contents lists available at SciVerse ScienceDirect
Computers & Operations Research journal homepage: www.elsevier.com/locate/caor
On the separation in 2-period double round robin tournaments with minimum breaks Lishun Zeng n, Shinji Mizuno Graduate School of Decision Science and Technology, Tokyo Institute of Technology, Tokyo 152-8552, Japan
a r t i c l e i n f o
a b s t r a c t
Available online 13 October 2011
This paper considers the separation in 2-period double round robin tournaments (2P-DRRTs) with minimum breaks. The separation is a lower bound on the number of slots between the two games with the same opponents. None of known schemes provides 2P-DRRTs with minimum breaks and a positive separation. We first propose a new scheme to generate 2-separation 2P-DRRTs with minimum breaks, based on single round robin tournaments (SRRTs) with minimum breaks which have the last break in the third slot from the end. Our experiment results show that such SRRTs exist for 8–68 teams. Secondly, we consider maximizing the separation in general 2P-DRRTs with minimum breaks by integer programming and constraint programming, respectively. The two approaches of direct formulation and ‘‘first-break, then-schedule’’ decomposition are presented and compared. We obtain the maximum separation for up to 14 teams. Furthermore, we consider the application with place constraints to show the flexibility and efficiency of scheduling 2P-DRRTs with minimum breaks and a positive separation. & 2011 Elsevier Ltd. All rights reserved.
Keywords: Sports scheduling Round robin tournament Constraint programming Separation Breaks
1. Introduction Sports scheduling has been becoming an active field of research in combinatorial optimization in recent years with the growing value of professional sports leagues and major sports events. Round robin scheduling is the most studied topic in sports scheduling for its interesting mathematical structures and wide application in practice. Rooted from constructive methods based on graph theory in early publications, recent sports scheduling problems with real-world constraints (e.g. [1–3]) are discussed based on various state-of-the-art techniques, including integer programming (IP) [4–7], constraint programming (CP) [8–11], and meta-heuristics [12–15]. We refer to the surveys of sports scheduling by Kendall et al. [16] and round robin scheduling by Rasmussen and Trick [17]. Given a set of n teams (we assume n is always even in this work), a round robin tournament is a tournament where each team meets all other teams a fixed number of times, usually once (in a single round robin tournament, SRRT) or twice (in a double round robin tournament, DRRT). Each team plays exactly one game in each time slot. Each game is played between a home team and an away team, and it is assigned to the venue associated with the home team. In DRRTs, there are one home and one away game for
n
Corresponding author. E-mail address:
[email protected] (L. Zeng).
0305-0548/$ - see front matter & 2011 Elsevier Ltd. All rights reserved. doi:10.1016/j.cor.2011.10.004
each team in every pairing. Typical considerations in round robin scheduling include the breaks and the separation. The breaks are consecutive home or away games of a team, whose number is usually minimized (e.g. [18–20]) since alternating patterns of home and away games are preferred for attractiveness to home fans. The separation constraint requires that the two games with the same pairing must be separated for at least k slots, namely k-separation (e.g. [1,4,17]). The objective of this research is to unify the conflicting constraints of a minimum number of breaks (for convenience, we mention as minimum breaks from now on) and a positive separation in the framework of 2-period double round robin tournaments (2P-DRRTs). 2P-DRRTs are widely used in practice in which tournaments are partitioned into two periods from the midst, and the two games of a pairing are assigned to different periods. To our knowledge, minimizing the number of breaks in 2P-DRRTs has not been tackled so far, except the pioneer work of de Werra [21]. De Werra discusses 2P-DRRTs constructed from SRRTs by the schemes, which we shall mention as the mirrored (see also e.g. [15]) and the reversed-mirrored. Another scheme called the English [22] is also discussed in the literature. However, none of the three schemes provides 2P-DRRTs with minimum breaks as well as a positive separation. We thus aim to develop an efficient method of generating 2P-DRRTs satisfying both constraints. In this paper, we first propose a new scheme to generate 2-separation 2P-DRRTs with minimum breaks based on SRRTs
L. Zeng, S. Mizuno / Computers & Operations Research 39 (2012) 1692–1700
with minimum breaks. The scheme additionally requires that the SRRTs have the last break in the third slot from the end. Our experiment results show that such SRRTs exist for practical size 8 rn r68. Secondly, we consider the problem of maximizing the separation in general 2P-DRRTs with minimum breaks by IP and CP techniques, respectively. The two approaches of direct formulation and decomposition are presented and compared. We obtain the maximum separation with the number of teams n r14 by a decomposition approach with CP. Furthermore, we consider place constraints to show the ease and efficiency of our model to tackle practical constraints, as well as the flexibility of scheduling general 2P-DRRTs compared to known simple schemes. The remainder of this paper is organized as follows. The new scheme for 2-separation 2P-DRRTs with minimum breaks is proposed in Section 2. Section 3 states the problem of maximizing the separation in 2P-DRRTs with minimum breaks and gives direct formulation models. Section 4 analyzes the problem by a decomposition approach with IP and CP, respectively. Section 5 is the application in addition with place constraints. Computational results are reported in Section 6. Some concluding remarks are given in Section 7.
2. A scheme for 2-separation 2P-DRRTs with minimum breaks In a DRRT, let T ¼ f1; 2, . . . ,ng denote the set of teams and P ¼ f1; 2, . . . ,2n2g the set of slots. For p A P\f1g, we say a team has a break in slot p if and only if it plays at home or away consecutively in slots p1 and p. Minimizing the number of breaks is an important topic in round robin scheduling. De Werra [21] gives a well known result on the minimum number of breaks: any SRRT with even n teams has at least n2 breaks. De Werra also proposes a constructive method called canonical for scheduling n2 breaks SRRTs for any even n. For any arbitrary DRRT, the minimum number of breaks would be also n2, which is experimentally reported by Rasmussen and Trick [4]. In fact, we can construct DRRTs with n2 breaks for any even n based on the canonical SRRTs. Denote a canonical SRRT as ðS1 , . . . ,Sn1 Þ where Sp is the schedule in slot p of the SRRT, and the schedule with the same pairings of Sp but reversed venues as S p . A DRRT with n2 breaks could be constructed as ðS1 ,S 1 ,S 2 ,S2 ,S3 , . . . ,S n2 ,Sn2 ,Sn1 ,S n1 Þ. However, such a DRRT is the worst in terms of the separation constraint since every pairing occurs in two consecutive slots. In practice, DRRTs are usually partitioned into two periods, P1 ¼ f1; 2, . . . ,n1g and P 2 ¼ fn,n þ 1, . . . ,2n2g, and the two games of a pairing are assigned to different periods. A 2P-DRRT is actually composed of two SRRTs, and the lower bound of the number of breaks in 2P-DRRTs is thus 2ðn2Þ ¼ 2n4. Three schemes to construct a 2P-DRRT from a given SRRT ðS1 , . . . ,Sn1 Þ are discussed in the literature. In all three schemes, the schedule in P1 is exactly the same as the given SRRT, and later we shall discuss the schedule in P2 for each scheme. The most widely used scheme is the mirrored DRRT ðS 1 , . . . ,S n1 Þ, in which for p ¼ 1, . . . ,n1, the pairings in slot n1þ p are the same as in slot p. De Werra [21] proves that a mirrored DRRT has at least 3n6 breaks, which is much larger than the lower bound 2n4. The mirrored scheme is usually preferred because it is simple and the best in terms of the separation constraint. In order to minimize the number of breaks, de Werra [21] considers the reversed-mirrored DRRT ðS n1 , . . . ,S 1 Þ, in which for p ¼ 1, . . . ,n1, the pairings in slot 2n1p are the same as in slot p. Reversedmirrored DRRTs are 2P-DRRTs with minimum breaks. Another alternative strategy is the English DRRT ðS n1 ,S 1 , . . . ,S n2 Þ, where the pairings in the first slot of P2 are the same as the last slot of P1, and for p ¼ 2, . . . ,n1, the pairings in slot n1 þp are the same as in slot p1. If there are breaks in slot n1 (which is the case in
1693
canonical schedules), English DRRTs are 2P-DRRTs with minimum breaks, too. However, neither the reversed-mirrored nor the English scheme satisfies a positive separation since the pairings in slot n1 occur consecutively in slot n. We propose a new scheme in a similar manner to generate 2-separation 2P-DRRTs with minimum breaks based on some special SRRTs. We begin by stating some terminology. The sequence of home and away games is known as a home-away pattern of a team. The collection of patterns of all teams in a tournament is called a home-away pattern set. A pattern set is feasible if there exists a schedule consistent with it. For SRRTs, de Werra [21] gives the characteristics of the pattern set with minimum breaks (PSMB):
the n teams can be partitioned into n=2 pairs with complementary patterns;
two teams have no break, the remaining n2 teams have exactly one break;
in each slot, there are exactly two breaks or no breaks. As a result, each PSMB can be completely characterized by the n=21 break slots where breaks occur. We use a sequence ðb1 ,b2 , . . . ,bn=2 Þ with 1 ¼ b1 ob2 o o bn=2 r n1, to represent a PSMB, where b2 , . . . ,bn=2 are the break slots. b1 ¼ 1 because a pattern without break may also be considered as having break in slot 1. For example, the PSMB of the schedule in Fig. 1 could be represented as (1,2,4,5). Consider a SRRT with minimum breaks as shown in Fig. 1, in which each element in the table shows the opponent of team i in slot p. A positive number denotes a home game while a negative number denotes an away game. This SRRT has the last break in the third slot from the end ðbn=2 ¼ n3Þ. Based on this SRRT, we could construct a 2P-DRRT with ðS n3 ,S n2 ,S n1 ,S 1 , . . . ,S n4 Þ in P2 and the same schedule as Fig. 1 in P1. The schedule in the last three slots are mirrored to the first three slots in P2, and the schedule in slots 1, . . . ,n4 are mirrored to the rest. The schedule in P2 of the resulting 2P-DRRT is illustrated in Fig. 2. No break occurs in slot n in this DRRT. In P2, the teams with no break in P1 have one break in slot n þ3; the teams with a break in slot bn=2 have no break; other teams have a mirrored break from P1. Thus such a scheme gives a 2-separation 2P-DRRT with minimum breaks. From the result of Miyashiro et al. [23], none of such SRRTs exists for n r6. We experimentally verify the existence of such SRRTs for practical size 8 rn r 68. Computational results show that the PSMB ð1,b2 , . . . ,bn=2 Þ with bi ¼ 2ði1Þ,i ¼ 2; 3, . . . ,n=21 and bn=2 ¼ n3 is feasible for all the tested n. We conjecture that such PSMBs are always feasible for n Z8. If we have a SRRT with smaller odd bn=2 , e.g. bn=2 ¼ n5 or n7, we could generate a 2P-DRRT with larger even k-separation by the same scheme. However, by enumerating all feasible PSMBs for n r 26, we find that no SRRT with bn=2 rn5 exists. Thus we can
i/p 1 2 3 4 5 6 7 8
1 +2 -1 -8 -7 -6 +5 +4 +3
2 -4 -3 +2 +1 +7 +8 -5 -6
3 +3 +4 -1 -2 -8 -7 +6 +5
4 -6 -5 -4 +3 +2 +1 +8 -7
5 +5 +8 +7 +6 -1 -4 -3 -2
Fig. 1. SRRT with PSMB (1,2,4,5).
6 -8 -7 -6 -5 +4 +3 +2 +1
7 +7 +6 +5 +8 -3 -2 -1 -4
1694
L. Zeng, S. Mizuno / Computers & Operations Research 39 (2012) 1692–1700
i/p 1 2 3 4 5 6 7 8
8 -5 -8 -7 -6 +1 +4 +3 +2
9 +8 +7 +6 +5 -4 -3 -2 -1
10 -7 -6 -5 -8 +3 +2 +1 +4
11 -2 +1 +8 +7 +6 -5 -4 -3
12 +4 +3 -2 -1 -7 -8 +5 +6
13 -3 -4 +1 +2 +8 +7 -6 -5
(
14 +6 +5 +4 -3 -2 -1 -8 +7
2
r ip ¼
1
iff team i has a break in slot p,
0
otherwise:
FindSchedule(k) could be modeled as the following IP: X X X xijp max z1 ¼
ð1Þ
i A T j A T\figp A P
X
s:t:
xijp r1
8i A T, j A T\fig,
ð2Þ
pAP
X 1
Fig. 2. P of a 2-separation 2P-DRRT with minimum breaks (see Fig. 1 for P ).
X obtain at most 2-separation 2D-DRRTs with minimum breaks for n r 26 by this scheme. In the next section we turn to the problem of finding the maximum separation in general 2P-DRRTs with minimum breaks.
ðxijp þ xjip Þ r 1
ð3Þ
ðxijp þxjip Þ r1
8i,j A T, j o i,
ð4Þ
p A P1
X
ðxij,p1 þxijp Þr ip r 1
8i A T, p A P\f1g,
ð5Þ
ðxji,p1 þxjip Þr ip r 1
8i A T, p A P\f1g,
ð6Þ
j A T\fig
X 3. The maximum separation in 2P-DRRTs with minimum breaks
8i A T, p A P,
j A T\fig
j A T\fig
X X
r ip r2n4,
ð7Þ
i A T p A P\f1g
A good schedule in practice usually prefers minimum breaks and a large separation. With the hard constraint of minimum breaks, the new scheme proposed in Section 2 gives 2-separation 2P-DRRTs, which is better than those of 0-separation given by the known schemes. In this section, we further consider the problem of scheduling 2P-DRRTs which maximizes the separation. Initially we formulate the problem with the statement of maximizing the separation value k in objective functions. However, such models only give disappointing results that k¼ 0 for small instances with n r6 and need long computation time. Taking into account that the domain of k is small, i.e. 0 r ko n2 (note that k ¼ n2 corresponds to mirrored DRRTs, which never have minimum breaks), we formulate the problem as a feasibility problem given k, namely FindSchedule(k). FindSchedule(k) checks whether or not a 2P-DRRT with minimum breaks exists for given k-separation. It stops and returns TRUE if such a schedule is found and returns FALSE if none exists. We consider direct formulation models of FindSchedule(k) by integer programming (IP) and constraint programming (CP) techniques, respectively, both of which were shown successful in sports scheduling applications. The framework is shown in Algorithm 1. The initial value k0 is set based on the result of Section 2. For n r 6, k0 ¼ 0 and for n Z8, k0 ¼ 2. Algorithm 1. MaxSeparation. 1: 2: 3: 4: 5:
k’k0 while FindScheduleðkþ 1Þ do k’k þ1 end while return k
lþk X
ðxijp þxjip Þ r1
8i, j A T, j o i, l ¼ nk, . . . ,n1,
ð8Þ
p¼l
xijp A f0; 1g
8iA T, j A T\fig, p A P,
r ip A f0; 1g
8iA T, p A P\f1g:
ð9Þ ð10Þ
The objective function (1) is to assign as many games as possible. If z1 ¼ nðn1Þ, FindSchedule(k) returns TRUE, otherwise FALSE. Constraints (2) and (3) define a DRRT. Constraint (2) makes each game occur at most once, and (3) makes each team play at most one game in each slot. Constraint (4) ensures that each pairing of teams occurs at most once in P1. Constraints (5) and (6) define breaks, and constraint (7) ensures that the number of breaks is not more than the lower bound 2n4. Constraint (8) ensures that in any consecutive kþ 1 slots at the border between the two periods, no pairing occurs twice. Notice that in a 2PDRRT, the violation on the separation constraint may only occur at the border. FindSchedule(k) could be formulated more directly by CP. We make modifications to the CP model presented by Rasmussen and Trick [4] to tackle 2P-DRRTs. We introduce the following variables: ( 1 iff team i plays a home game in slot p, hip ¼ 0 otherwise, ( r ip ¼
1
iff team i has a break in slot p,
0
otherwise,
yij A P, the slot in which team i plays at home against j: The CP version of FindSchedule(k) is stated as
Briskorn [24] considers an IP model to check the feasibility of a given SRRT pattern set. The idea is to state necessary constraints for an SRRT with the objective function to assign as many games as possible. If all games could be assigned, the IP model finds a feasible schedule of the pattern set. We generalize this idea to 2PDRRTs. Let xijp and rip be the binary decision variables with ( 1 iff team i plays at home against j in slot p, xijp ¼ 0 otherwise,
alldifferentðall ðj A T\figÞfyij ,yji gÞ
8i A T,
ð11Þ
minðyij ,yji Þ A P1
8i, j A T, j o i,
ð12Þ
maxðyij ,yji Þ A P 2
8i, j A T, j oi,
ð13Þ
maxðyij ,yji Þminðyij ,yji Þ 4 k ðhip ¼ 0Þ3ðhjp ¼ 1Þ ) ðyij a pÞ
8i, j A T, j o i, 8i, j A T, i aj, p A P,
ð14Þ ð15Þ
L. Zeng, S. Mizuno / Computers & Operations Research 39 (2012) 1692–1700
ðr ip ¼ 1Þ3ðhi,p1 ¼ hip Þ X X
8i A T, p A P,
ð16Þ
r ip ¼ 2n4,
ð17Þ
i A T p A P\f1g
sequenceð1; 2,3,all ðp A PÞhip ,1,n1Þ r in ¼ 0 X
8i A T,
8i A T,
r ip r 2
ð18Þ ð19Þ
8i A T,
ð20Þ
8p A P,
ð21Þ
p A P\f1g
X hip ¼ n=2 iAT
! ! _ X X r ip ¼ 0 r ip ¼ 2 iAT
8p A P\f1g,
ð22Þ
iAT
ðhi,n1 ¼ 1Þ4ðhi þ n=2,n1 ¼ 0Þ
8i A f1, . . . ,n=2g,
8i A T, p A P,
ð24Þ
r ip A f0; 1g
8i A T, p A P\f1g,
ð25Þ
8i,j A T, i aj:
Algorithm 2. Decompose(k). 1: 2: 3:
a set of 2P-DRRT pattern sets S’| a set of sequences B’ all feasible PSMBs
4:
for all B2 A B do if 9fm A B1 : m is eveng9 ¼ 9fm AB2 : m is odd,m a 1g9 then add to S pattern sets combining B1 and B2 end if end for end for for all s A S do if CheckFeasibility(k,s) then return TRUE end if end for return FALSE
5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15:
for all B1 A B do
ð23Þ
hip A f0; 1g
yij A P
1695
ð26Þ
In this model, constraint (11) guarantees that all games of team i are assigned to different slots. Constraints (12) and (13) ensure the DRRT is a 2P-DRRT. The separation constraint is considered in (14). Constraint (15) defines home-away patterns and constraint (16) defines breaks. Constraint (17) restricts that the number of breaks must be 2n 4. Constraints (18)–(23) are surrogate constraints from the properties of feasible 2P-DRRT pattern sets, which are discussed in Sections 3 and 4 in detail. Experiments show that these surrogate constraints reduce computation time greatly. Constraint (18) requires that each team plays exactly n 1 home games during the tournament, and there are 1 or 2 home games in any three consecutive slots. For further explanation of the sequence constraint, see [4] and [25]. Constraint (19) ensures no break in slot n. Constraint (20) considers that each team has at most two breaks. Constraint (21) states that the number of home games in each slot is exactly half of the number of teams. Constraint (22) forces that each slot has exactly two breaks or no break. In addition, (23) is imposed for symmetry breaking. The CP model would instantiate variables rip first, then hip and yij. Notice that the constraints in this model could be well separated into two parts. Constraints (11)–(14) consider only the assignment of team pairings, while constraints (16)–(23) consider the home-away pattern set. Constraint (15) is a connection between the two parts. This idea is useful in the decomposition approach discussed in Section 4.
4. Decomposition approach Algorithm 1 illustrated in Section 3 could be solved in practical computation time for only small instances with n r 6 in our experiments. In this section, we turn to the common decomposition approach in which the pattern set and the schedule without venue information (called timetable) of a tournament are considered in different stages. Although pioneer works on round robin scheduling mainly discuss constructive methods based on graph theory, recent research on the problem turns to the decomposition approach since constructive schedules usually violate various real-world constraints.
The order of stages in a decomposition approach may vary. Trick [10] argues that the stage with the most critical aspects should be ordered early. In our problem of scheduling 2P-DRRTs, the pattern set with minimum breaks is crucial. We thus apply a ‘‘first-break, then-schedule’’ decomposition in which the pattern set is considered before the timetable. We first enumerate candidate pattern sets based on the characteristics of 2P-DRRTs with minimum breaks, and then check the feasibility of candidate pattern sets. The framework is the same as that in Algorithm 1, but FindSchedule(k) is replaced by Decompose(k) in Algorithm 2. This algorithm initially enumerates all candidate pattern sets subject to some necessary conditions of feasibility. For each candidate pattern set, it checks whether or not a k-separation consistent schedule exists by IP and CP models, respectively. Based on Miyashiro et al. [23], each feasible SRRT pattern set with minimum breaks (PSMB) could be characterized by a break slot sequence, which could be generated rapidly for n r26. A feasible 2P-DRRT pattern set with minimum breaks must be a combination of two PSMBs, namely B1 and B2, with no break in slot n. Fig. 3 illustrates a candidate pattern set combining PSMBs (1,2,4) and (1,3,5), where ‘‘H’’ denotes home games and ‘‘A’’ denotes away games. By definition of DRRTs, the total numbers of ‘‘H’’ and ‘‘A’’ in each pattern must be equal. Thus not every pairing of patterns from two PSMBs could be combined. Taking the example of Fig. 3, we could not append the pattern of team 2 in P2 (‘‘AHAHH’’) to that of team 1 in P1 (‘‘HAHAH’’). We carefully observe the numbers of ‘‘H’’ and ‘‘A’’ in patterns and classify them by where they have breaks: even slots, ‘‘normal’’ odd slots, and no break (recall that we denote them as ‘‘1’’). In P1, we think of a no break pattern as a pattern with an odd break slot; in P2, we think of it as a pattern with an even one. Then in general, for a pairing of patterns with break slots b1 and b2, respectively, we could summarize that a possible pairing satisfies:
if b1 is even, then b2 is odd (‘‘1’’ excluded); if b1 is odd, then b2 is even (‘‘1’’ included). i/p 1 2 3 4 5 6
1 H A A A H H
2 A A H H H A
3 H H A A A H
4 A A A H H H
5 H H H A A A
6 A A A H H H
7 H H H A A A
8 A A H H A H
9 H H A A H A
10 A H H H A A
Fig. 3. Candidate combining PSMBs (1,2,4) and (1,3,5).
1696
L. Zeng, S. Mizuno / Computers & Operations Research 39 (2012) 1692–1700
Table 1 Numbers of possible combinations and candidate pattern sets.
0
1 X X @ w 1 2þ wjip1 p2 A r 1 ijp p
X
n
# PSMB
# combination
# candidate
4 6 8 10 12 14 16
2 3 8 10 30 49 136
2 3 20 24 214 511 3844
5 44 1080 22 032 1 242 000 56 067 840 1 297 241 600
p2
AP
AP
1 X X @ w 1 2þ wjip1 p2 A r 1 ijp p 1
joi
wijp1 p2 r h^ ijp1 p2 X X i A T j A T,j o i
1
For example, in pattern 2 shown in Fig. 3, b ¼ 2. Thus b2 must be 2 an odd number excluding ‘‘1’’, in this case b ¼ 5. Therefore, for a possible combination of PSMBs, the number of even breaks in B1 must be equal to that of ‘‘normal’’ odd breaks in B2. In a possible combination, denote m the number of even breaks in B1. Consider the m patterns in P1 with even break slots and ‘‘H’’ in slot n 1, there must be correspondingly m patterns starting with ‘‘A’’ in P2 satisfying the above conditions. Any of the m! permutations of these pattern pairings is valid. The same discussion is applied for other patterns. In sum, there exist ðm!ðn=2mÞ!Þ2 candidates for each possible combination. Due to the symmetry of ‘‘H’’ and ‘‘A’’ (a candidate replacing all ‘‘H’’ with ‘‘A’’ and vice versa has the same feasibility), nearly half of these candidates do not have to be checked. However, the number of candidates still grows explosively with n. We compare the numbers of feasible PSMBs, the numbers of possible PSMB combinations, and the total numbers of candidates of 2P-DRRT pattern sets for n r16 in Table 1. For a candidate pattern set s and a specific separation value k, we try to find a consistent schedule by CheckFeasibility(k,s). In the ‘‘first-break, then-schedule’’ decomposition framework, such a problem is called the pattern set feasibility problem, which is discussed in e.g. [23,24,4]. The necessary condition from [23] is implicitly satisfied by all candidates in our problem. We apply the idea from [24,4] to model the pattern set feasibility problem by IP and CP, respectively, and compare their efficiency. The IP model of CheckFeasibility(k,s) follows the same idea of Briskorn [24] in which the objective is to assign as many games as possible, as discussed in Section 3. We specify the model for 2PDRRTs to improve computational efficiency. Given the pattern set s represented by a set of parameters hip (1 means ‘‘H’’ and 0 means ‘‘A’’), we first convert them to parameters h^ ijp1 p2 indicating the possibility to assign the pairing of teams i and j in slots p1 A P 1 and p2 A P2 . Since DRRTs require that these two games are assigned in different venues, we have
h^ ijp1 p2
8 1 > < ¼ 1 > : 0
hip1 ¼ hjp2 ¼ 1,hip2 ¼ hjp1 ¼ 0,
( wijp1 p2 ¼
1: 2: 3: 4:
iff teams i, j meet in slots p1 , p2 , otherwise:
ð30Þ
8i,j A T, j o i, p1 A P 1 , p2 A P 2 , 8p1 A P1 , p2 A P 2 , p2 p1 rk,
8i,j A T, j o i, p1 A P 1 , p2 A P2 :
ð31Þ ð32Þ
ð33Þ
Algorithm 3. DecomposeC(k).
5:
1
8i A T, p2 A P 2 ,
The objective function (27) is to assign as many pairings as possible. Notice that the maximum value of z2 is nðn1Þ=2 instead of nðn1Þ of z1 in Section 3. Constraint (28) restricts that each pairing of i and j could be assigned to at most one pair of slots p1 and p2. Constraints (29) and (30) enforce that in each slot, one team has at most one game. Constraint (31) guarantees that the game assignment is consistent with the given pattern set. Constraint (32) is the separation constraint. The CP model of CheckFeasibility(k,s), following the idea of Rasmussen and Trick [4], is neat and simple in contrast to the tricky formulation of the IP model. Recall that the CP model of FindSchedule(k) in Section 3 could be well separated into two parts, one takes care of the timetable and the other takes care of the pattern set. As a result the CP model of CheckFeasibility(k,s) is exactly the constraints (11)–(15) in FindSchedule(k), although hip are no longer variables but parameters. Moreover, we consider a CP model combining the stages of enumerating candidate pattern sets and CheckFeasibility(k,s). This model, namely CheckFeasibilityCðk,B1 ,B2 Þ, would check whether or not a consistent schedule exists for a given PSMB combination. For problems under complex constraints, CP could reduce the search space more efficiently than simple enumeration by its propagation techniques. We use CP to directly express our discussion for candidate pattern sets, in the hope that CP could save us from the vast number of candidates. Since computational results show that CP is much more efficient than IP for our problem, we did not consider the IP formulation on combinations. The modified algorithm for the decomposition approach on combinations is shown in Algorithm 3.
otherwise:
0
ð29Þ
j4i
wijp1 p2 ¼ 0
wijp1 p2 A f0; 1g
hip1 ¼ hjp2 ¼ 0,hip2 ¼ hjp1 ¼ 1,
Introduce binary variables wijp1 p2 considering pairings instead of games with
8i A T, p1 A P 1 ,
j4i
0
X p1
joi
2
a set of sequences B’ all feasible PSMBs for all B1 A B do for all B2 A B do if 9fm A B1 : m is eveng9 ¼ 9fm AB2 : m is odd,m a 1g9 then
if CheckFeasibilityCðk,B1 ,B2 Þ then 6: return TRUE 7: end if 8: end if 9: end for 10: end for 11: return FALSE
We could state the IP model as max
z2 ¼
X X
X X
wijp1 p2
ð27Þ
8i, j A T, j oi,
ð28Þ
i A T j A T,j o ip1 A P1 p2 A P2
s:t:
X X p1 A P 1 p2 A P 2
wijp1 p2 r1
In Algorithm 3, we use CheckFeasibilityCðk,B1 ,B2 Þ to directly check the feasibility of a possible combination. Denote the two 1 1 1 2 2 2 PSMBs as B1 ¼ ðb1 ,b2 , . . . ,bn=2 Þ and B2 ¼ ðb1 ,b2 , . . . ,bn=2 Þ, where 1 2 ^ b1 ¼ b1 ¼ 1. Denote T ¼ f1; 2, . . . ,n=2g. We use the same definitions of variables hip and rip in the CP model of FindSchedule(k), except that for convenience of modeling, we allow dummy breaks r ip ¼ 1
L. Zeng, S. Mizuno / Computers & Operations Research 39 (2012) 1692–1700
versa. Finally, constraint (44) is used for symmetry breaking in the two groups of index variables, because the feasibility is unchanged even if the values of di and di þ n=2 are exchanged for all i A T^ .
for p ¼1 or n. In addition, we introduce new variables 2
2
si A B , the break slot of team i in P , di A T^ , the auxiliary index variable of team i in B2 : si, which characterizes the pattern of team i in P2, is an element of B2, e.g. in Fig. 3, s1 ¼ 1, s2 ¼ 5. The index variable di is used to state the element constraint for each team i. The CP model of CheckFeasibilityCðk,B1 ,B2 Þ would consist of the following constraints accompanied with (11)–(15): ðr ip ¼ 1Þ3ðhi,p1 ¼ hip Þ X
X
r ip ¼
p A P1
r ip ¼ 1
8i A T, p A P\f1,ng, 8iA T,
ð34Þ ð35Þ
p A P2
hi,n1 ¼ hi þ n=2,n ¼ 1, hi,n ¼ hi þ n=2,n1 ¼ 0
8i A T^ ,
ð36Þ
r i,b1 ¼ r i þ n=2,b1 ¼ 1
8iA T^ ,
ð37Þ
elementðB2 ,di Þ ¼ si
8i A T,
ð38Þ
i
i
alldifferentðallði A T^ Þdi Þ,
ð39Þ
alldifferentðallði A T\T^ Þdi Þ,
ð40Þ
elementðallðp A P2 Þr ip ,si Þ ¼ 1
8i A T,
ð41Þ
di ad,di þ n=2 ad
8iA I1e , d A I2e ,
ð42Þ
di ad,di þ n=2 ad
8iA I1o , d A I2o ,
ð43Þ
lexicographicðallði A T^ Þdi ,allðiA T\T^ Þdi Þ,
ð44Þ
si A B2
8iA T,
ð45Þ
di A T^
8i A T,
ð46Þ
hip A f0; 1g
8i A T, p A P,
ð47Þ
r ip A f0; 1g
8i A T, p A P,
ð48Þ
yij A P
8i, j A T, i aj,
1697
ð49Þ
where 1
I1e ¼ fi A T^ 9bi is eveng, 1 I1o ¼ fi A T^ 9bi is oddg, 2 I2e ¼ fi A T^ 9bi is even ð‘‘1’’ includedÞg, 2
I2o ¼ fi A T^ 9bi is odd ð‘‘1’’ excludedÞg: We make use of element and lexicographic constraints in this CP model. We refer to [25] for further explanation of these constraints. In this model, constraint (34) is the definition of breaks. Notice that breaks are not defined in slot 1 and n where there must be no break. Constraint (35) ensures that there is always exactly one break in P1 and P2 for any pattern, including the dummy breaks. Constraints (36) and (37) are for symmetry breaking by fixing the patterns in P1. Constraint (36) sets the border slots such that no breaks occur in slot n. Constraint (37) fixes the break slots in P1 as indexed by B1. Constraints (38)–(40) are the CP words saying that each si is an element of the sequence B2. Constraint (41) sets the breaks as indicated by si. Constraints (42) and (43) are stating the discussed conditions for candidate pattern sets: if team i has an even break in B1, the index variable di could not take the values such that the break of B2 is even, and vice
5. An application with additional constraints In this section, we discuss an application with additional practical constraints, i.e. to find a 2P-DRRT maximizing the separation subject to minimum breaks as well as these constraints. We consider additional constraints for two reasons. First is to show the ease and efficiency to extend our models for realworld applications. In practice, organizers have many different considerations besides the constraints of minimum breaks and a maximum separation. The ease and efficiency of taking additional constraints into account is thus necessary for a good model in practice. Secondly, we are interested in the flexibility of general 2P-DRRTs, which is one of the aspirations of this research. In typical 2P-DRRT scheduling, we attain simplicity from schemes like mirrored at the expense of low flexibility: other constraints might conflict with the mirrored constraints and lead to infeasibility in scheduling. Usually the symmetry in two periods is not really what we want but is used for the purpose of simplifying the problem. We thus compare the flexibility of scheduling typical mirrored DRRTs and general 2P-DRRTs with additional constraints in our experiments. We consider a simple and typical constraint in practice called the place constraint, which is often used and discussed in the literature [4,6]. A place constraint is to enforce a team to play ‘‘H’’/‘‘A’’ in a specific slot. The mirrored DRRT scheduling (which is actually a SRRT problem) often fails in place constraints because the requirement of minimum breaks in a SRRT often conflicts with place constraints. In this paper, the place constraints are A given as the sets of slots IH t and It in which team t must play ‘‘H’’ and ‘‘A’’, respectively. We consider this application based on Decompose(k) with CP. Computational results show that this model is fast enough for n r 12 such that we could test the feasibility of each pattern set for each k. Thus in application, we could make use of this feasibility information, and check the feasible pattern sets only by an extended model of it. For the application without this feasibility information, e.g. instances with n 412, we suggest using an extended model of DecomposeC(k) instead, though we did not perform such experiments. To extend the CP model to tackle place constraints, or any constraints on a specific team, we have to be careful to distinguish the so-called placeholders [17] and the ‘‘real’’ teams. The idea of placeholders, or ‘‘abstract’’ teams in some literature, is that we could assign different ‘‘real’’ teams to patterns in a pattern set and get different schedules. For example in Fig. 3, the pattern of placeholder (row) 1 might not necessarily denote team 1, and a game between placeholder 1 and 2 might actually mean one between team 3 and 4 if we choose such an assignment. As in Section 4, the assignment of teams to placeholders is not important in the pattern set feasibility problem since any permutation of patterns does not change the feasibility. However, in case that place constraints are taken into account, this assignment is crucial. Based on our CP model, we introduce new variables ai A T, the ‘‘real’’ team to which placeholder i is assigned: We could figure out the inconsistency between the pattern of placeholder i and the place constraints of team t and force ai a t. Thus we add the following constraints to the CP model of CheckFeasibility(k,s): alldifferentðallði A TÞai Þ,
ð50Þ
1698
L. Zeng, S. Mizuno / Computers & Operations Research 39 (2012) 1692–1700
ðhip ¼ 0Þ ) ðai a tÞ
8t, i A T, p A IH t ,
ð51Þ
ðhip ¼ 1Þ ) ðai atÞ
8t, i A T, p A IAt ,
ð52Þ
ai A T
8i A T:
ð53Þ
Another point in the application with place constraints is that we might be able to identify infeasibility by a pre-check procedure. Several place constraints on a single team may not be consistent with any pattern in a 2P-DRRT with minimum breaks. Our pre-check procedure is used to identify it in an early stage. We use also CP to perform the pre-check procedure by using the constraints (16) and (18)–(20), which describe the properties of a valid pattern, in addition to the place constraints (50)–(52). This pre-check procedure could be finished in a very short time and is effective to identify infeasibility in our experiments.
6. Computational results This section reports computational results of our models described in previous sections. We first compare the computation time of the five different models, two direct formulation models and three decomposition models, to show the efficiency of the decomposition approach with CP. Then we enumerate all the feasible pattern sets of 2P-DRRTs with minimum breaks, and store them in a database for the application with additional constraints. After that we perform experiments on our model with place constraints to show that it is practical for applications. We also present the flexibility of general 2P-DRRTs by a comparison to mirrored DRRTs with place constraints. The experiments have been performed on a computer with a 3.0 GHz Intel Core 2 DUO processor and 4 GB RAM. Both the IP and CP models are implemented by CPLEX Optimization Studio 12.2 [25]. All parameters are in default settings except for the inference level of CP. Based on our trial experiments, we set it Medium (bound consistency) for the CP model on pattern sets, and Extended (domain consistency) for that on combinations. We implement and run the five models described, two direct formulation models in Section 3 and three decomposition models in Section 4. We present in Table 2 the computation time elapsed from the beginning until the algorithm finds a schedule with k-separation, or it proves such schedule does not exist (denoted as (k)). The order of combinations and candidates are the same for all decomposition models. For each k, the algorithm checks all candidates from the first one even though some of them might be already proved infeasible for k 1, in order to clearly show the Table 2 Computation time (in sec) of models. n
k
IP, F
CP, F
IP, D
CP, D
CP, C
4 (1)
0.1
0.1
0.1
0.1
0.1
(1)
510.2
6.4
0.5
0.1
0.1
(3)
–
7148.2
61.5
1.2
0.6
3 4 (5)
– – –
– – –
6858.0 – –
5.8 11.0 42.6
5.4 9.6 15.8
3 4 5 6 (7)
– – – – –
– – – – –
– – – – –
1.0 1.8 2140.5 3588.7 6638.4
0.2 1.2 450.1 751.7 947.9
difference in computation time. In Table 2, we denote the direct formulation models as F, the decomposition models on pattern sets as D, and the model on combinations as C, respectively. The time limit is set to be 7200 s and ‘‘-’’ is marked in the table if the algorithm reaches the limit before it stops normally. Instances with more than 12 teams are too time-consuming and the results of them are not reported in this table. Table 2 shows that decomposition approaches clearly outperform direct formulation models. The direct formulation of either IP or CP can hardly solve instances with more than six teams. Comparing IP and CP, we could see that the CP models outperform the IP ones for our problem. Only the two decomposition approaches with CP could solve the problem for 12 teams within the time limit. Comparing the two CP models, computation time of the one on combinations is shorter. This model could check the feasibility of a PSMB combination much more efficiently, especially for large n and k. For n ¼14 with k¼7, this model checks all combinations in about one day and proves that no schedule with 7-separation exist. On the other hand, we find a schedule for n¼14 with k¼6. As discussed by Trick [10], CP is a better choice than IP for most feasibility problems, but its performance may vary comparably greater for some instances which appear to be of similar size. This problem is more severe for larger instances with larger variable domains since the propagation techniques of CP may not be able to consistently recognize infeasibility. This is also observed in our experiments for n¼14. We then set the CP model a time limit of 2 s for each combination and we successfully find a schedule with k¼6 within several minutes. For n ¼16, we find an 8-separation schedule, but our model cannot prove the infeasibility for k ¼9 in reasonable computation time. We sum up in Table 3 the maximum k-separation, kmax, for each n r 16. Based on the comparison above we perform the CP model of CheckFeasibility(k,s) on all candidate pattern sets of 2P-DRRTs with minimum breaks. We store the feasible pattern sets for each k in a database, which would be used in the application with additional practical constraints. Enumerating feasible pattern sets for 12 teams takes as long as 10 days in our experiments. More sophisticated formulation of the problem may be needed for solving instances with larger n since the number of candidates grows explosively. We show the number of feasible pattern sets of 2P-DRRTs with minimum breaks for each k in Table 4. Compared to the large numbers of candidates in Table 1, the numbers of feasible pattern sets are small especially for large k. With the known feasible pattern sets for each k, we perform the experiments with place constraints. For n ¼8, 10, and 12, we have instance sets with different numbers of place constraints p¼5, 10, 15, and 20. Each set, named with the number of teams n and the number of place constraints p, includes 10 instances of randomly generated place constraints. The algorithm here is different from the one we used to enumerate feasible pattern sets on two points. First, since we have already known and stored all the feasible pattern sets for each k, we search in descending order of k from kmax. We would only test the pattern sets that are known feasible for the specific k, by the CP model discussed in
6 8
Table 3 Maximum separation.
10
12
n
kmax
4 6 8 10 12 14 16
0 0 2 4 6 6 Z8
L. Zeng, S. Mizuno / Computers & Operations Research 39 (2012) 1692–1700
Table 4 Numbers of feasible pattern sets. n
k
# feasible
4
0
3
6
0
8
8 8 8
0 1 2
240 93 93
10 10 10
0 1 2
5966 2150 2150
1699
Table 7 Comparison of mirrored and 2P-DRRTs for instance sets. n
k
# feasible
10 10
3 4
78 50
12 12 12 12 12 12 12
0 1 2 3 4 5 6
362 625 171 922 171 922 18 890 16 504 7 7
Table 5 Computational results for instance sets. Instance set
# kmax
# k o kmax
# infeasible
n8p5 n8p10 n8p15 n8p20
10 8 4 1
0 0 0 0
0 2 6 9
n10p5 n10p10 n10p15 n10p20
10 9 8 9
0 0 0 0
0 1 2 1
n12p5 n12p10 n12p15 n12p20
10 10 6 2
0 0 2 5
0 0 2 3
Table 6 Computation time (in sec) for instance sets. Instance set
Min.
Max.
Avg.
n8p5 n8p10 n8p15 n8p20
0.08 0.01 0.02 0.01
0.12 39.64 2.85 1.19
0.10 4.30 0.45 0.37
n10p5 n10p10 n10p15 n10p20
0.11 0.03 0.02 0.03
0.17 0.98 0.25 0.32
0.14 0.28 0.13 0.16
n12p5 n12p10 n12p15 n12p20
1.60 1.61 1.58 1.64
3.80 3.92 462.67 1077.14
1.87 1.86 50.86 266.74
Section 5. Secondly, we use the pre-check procedure described in Section 5 to examine place constraints of each team. We observe that in most cases a consistent schedule could be found in a very short time if the pattern set is indeed feasible with place constraints. We thus set a time limit of 2 s for each pattern set in order to explore more pattern sets in a short time. We summarize the computational results of our experiments on instance sets with place constraints in Tables 5–7. In Table 5, # kmax and # ko kmax present the numbers of instances we found feasible with kmax-separation and other smaller value of separation, respectively. We observe that in most cases, we could find a kmax-separation schedule for the problem if it is not infeasible. This is always true in our experiments for n ¼8 and 10. For n ¼12, it should be mentioned that actually all the instances with k okmax means k ¼4, which we considered a good enough separation. Table 6 gives computation time of the algorithm to find the
Instance set
# mirrored infeasible
# 2P-DRRT infeasible
# pre-check
n8p5 n8p10 n8p15 n8p20
1 4 8 10
0 2 6 9
0 1 6 9
n10p5 n10p10 n10p15 n10p20
1 2 5 7
0 1 2 1
0 1 2 1
n12p5 n12p10 n12p15 n12p20
0 1 4 7
0 0 2 3
0 0 2 3
first schedule with place constraints or to prove infeasibility. The minimum, maximum, and average times within an instance set are listed. Most of the time values in Table 6 are very small, showing the efficiency of the algorithm in application. The efficiency to find a feasible schedule is due to the stored pattern sets we enumerated beforehand, while that to prove infeasibility is mainly due to the pre-check procedure. We notice that, however, when there exists no feasible schedule with kmax-separation, it takes the algorithm much longer search time as we see in instance sets n12p15 and n12p20, since the numbers of feasible pattern sets for smaller k are much larger. Based on the above results, it could be concluded that our model is able to efficiently find a 2P-DRRT with a good separation, minimum breaks, as well as other additional constraints, at least for the considered instance size. We finally compare scheduling of mirrored DRRTs and general 2P-DRRTs to show the flexibility of the latter. We only compare to mirrored DRRTs since other schemes are the same in the sense of flexibility. A problem of scheduling mirrored DRRTs could be reduced to that of scheduling SRRTs. In our comparison, we require the reduced SRRTs have n 2 breaks. We compare the numbers of infeasible instances of scheduling such mirrored DRRTs and 2P-DRRTs with minimum breaks out of 10 in each instance set in Table 7. As we expected, the numbers of infeasible instances are obviously smaller for general 2P-DRRTs than mirrored DRRTs. We also list the numbers of infeasible instances identified by the pre-check procedure. To our surprise, the infeasibility of scheduling 2P-DRRTs is mostly due to too many place constraints for a single team, which could be identified by the pre-check procedure quickly. In our experiments, only one instance in n8p10 passing the pre-check procedure is proved infeasible finally, which becomes the outlier with long computation time in Table 6.
7. Concluding remarks In this paper we discussed the separation in 2-period double round robin tournaments with minimum breaks. Our objective is to unify the conflicting constraints of minimum breaks and a positive separation in 2P-DRRTs, and give more insight of 2P-DRRTs besides the existing discussion on mirrored DRRTs in the literature. We have presented two methods to generate 2P-DRRTs with both minimum breaks and a positive separation, which was never touched upon in the literature. First is a new scheme to construct 2-separation 2P-DRRTs from SRRTs with minimum breaks, given that the SRRTs have the last break in the third slot from the end. The second method is, by using the techniques of IP and CP,
1700
L. Zeng, S. Mizuno / Computers & Operations Research 39 (2012) 1692–1700
respectively, we developed and compared five different models to maximize the separation in 2P-DRRTs with minimum breaks. We used a decomposition approach with CP to obtain the maximum separation for n r 14. Based on this result, we also considered the application with place constraints and showed the flexibility and efficiency of scheduling 2P-DRRTs with minimum breaks and a positive separation by numerical experiments. 2P-DRRTs are widely used in practice, although usually not in the general form but the mirrored. Existing literature pays little attention to general 2P-DRRTs: some discusses the more general DRRT problems, e.g. the Traveling Tournament Problem [2], others discusses the more specific mirrored DRRT problems, which could be reduced to SRRT problems. 2P-DRRTs are closely related to SRRTs and many ideas in SRRTs could be extended directly. For example, in a ‘‘first-schedule, then-break’’ decomposition, Miyashiro and Matsui [19] prove that given a SRRT timetable, the problem of finding a pattern set with n 2 breaks can be solved in polynomial time by reducing the problem to n2SAT problems. From the same idea, we can also prove that the problem of finding a pattern set with 2n 4 breaks given a 2PDRRT timetable can also be solved in polynomial time. Nevertheless, like the separation constraint we discussed in this paper, there are unique features in 2P-DRRTs that may deserve further attention. For further research, one direction would be to find a constructive method for 2-separation 2P-DRRTs, to prove the existence of 2P-DRRTs with minimum breaks and a positive separation for any n Z8. Moreover, more sophisticated or specific techniques for 2P-DRRT problems may be required. Although not as large as that of general DRRT problems, the search space of 2PDRRT problems is much larger than that of SRRT problems with the same number of teams.
Acknowledgments This research is supported in part by Grant-in-Aid for Science Research (A) 20241038 of Japan Society for the Promotion of Science. We would like to acknowledge the help of two anonymous reviewers for their constructive comments to improve the paper. References [1] Nemhauser GL, Trick MA. Scheduling a major college basketball conference. Operations Research 1998;46(1):1–8. [2] Easton K, Nemhauser GL, Trick MA. The traveling tournament problem: description and benchmarks. In: Walsh T, editor. Principles and practice of constraint programming. Lecture notes in computer science, vol. 2239. Berlin: Springer; 2001. p. 580–5.
[3] Easton K, Nemhauser GL, Trick MA. Solving the travelling tournament problem: a combined integer programming and constraint programming approach. In: Burke E, de Causmaecker P, editors. The fourth international conference on the practice and theory of automated timetabling. Lecture notes in computer science, vol. 2740. Berlin: Springer; 2003. p. 100–9. [4] Rasmussen RV, Trick MA. A benders approach for the constrained minimum break problem. European Journal of Operational Research 2007;177(1): 198–213. [5] Briskorn D, Drexl A. A branching scheme for finding cost-minimal round robin tournaments. European Journal of Operational Research 2009;197(1): 68–76. ¨ [6] Knust S, Lucking D. Minimizing costs in round robin tournaments with place constraints. Computers & Operations Research 2009;36(11):2937–43. [7] Melo RA, Urrutia S, Ribeiro CC. The traveling tournament problem with predefined venues. Journal of Scheduling 2009;12(6):607–22. [8] Henz M. Scheduling a major college basketball conference—revisited. Operations Research 2001;49(1):163–8. [9] Re´gin JC. Minimization of the number of breaks in sports scheduling problems using constraint programming. In: Freuder E, Wallace R, editors. Constraint programming large scale discrete optimization; DIMACS series in discrete mathematics and theoretical computer science, vol. 57; 2001. p. 115–30. [10] Trick MA. Integer and constraint programming approaches for round robin tournament scheduling. In: Burke E, de Causmaecker P, editors. The fourth international conference on the practice and theory of automated timetabling. Lecture notes in computer science, vol. 2740. Berlin: Springer; 2003. p. 63–77. ¨ [11] Henz M, Muller T, Thiel S. Global constraints for round robin tournament scheduling. European Journal of Operational Research 2004;153(1):92–101. [12] Anagnostopoulos A, Michel L, Van Hentenryck P, Vergados Y. A simulated annealing approach to the traveling tournament problem. Journal of Scheduling 2006;9(2):177–93. [13] Lim A, Rodrigues B, Zhang X. A simulated annealing and hill-climbing algorithm for the traveling tournament problem. European Journal of Operational Research 2006;174(3):1459–78. [14] Di Gaspero L, Schaerf A. A composite-neighborhood tabu search approach to the traveling tournament problem. Journal of Heuristics 2007;13(2): 189–207. [15] Ribeiro CC, Urrutia S. Heuristics for the mirrored traveling tournament problem. European Journal of Operational Research 2007;179(3):775–87. [16] Kendall G, Knust S, Ribeiro CC, Urrutia S. Scheduling in sports: an annotated bibliography. Computers & Operations Research 2010;37(1):1–19. [17] Rasmussen RV, Trick MA. Round robin scheduling—a survey. European Journal of Operational Research 2008;188(3):617–36. ¨ [18] Elf M, Junger M, Rinaldi G. Minimizing breaks by maximizing cuts. Operations Research Letters 2003;31(5):343–9. [19] Miyashiro R, Matsui T. A polynomial-time algorithm to find an equitable home-away assignment. Operations Research Letters 2005;33(3):235–41. [20] Miyashiro R, Matsui T. Semidefinite programming based approaches to the break minimization problem. Computers & Operations Research 2006;33(7):1975–82. [21] de Werra D. Scheduling in sports. In: Hansen P, editor. Studies on graphs and discrete programming. Amsterdam: North Holland; 1981. p. 381–95. ¨ [22] Bartsch T, Drexl A, Kroger S. Scheduling the professional soccer leagues of austria and germany. Computers & Operations Research 2006;33(7): 1907–37. [23] Miyashiro R, Iwasaki H, Matsui T. Characterizing feasible pattern sets with a minimum number of breaks. In: Burke E, de Causmaecker P, editors. The fourth international conference on the practice and theory of automated timetabling. Lecture notes in computer science, vol. 2740. Berlin: Springer; 2003. p. 78–99. [24] Briskorn D. Feasibility of home-away-pattern sets for round robin tournaments. Operations Research Letters 2008;36(3):283–4. [25] IBM ILOG CPLEX Optimization Studio 12.2—User’s Manual; 2010.