Global Constraints For Round Robin Tournament Scheduling
Global Constraints For Round Robin Tournament Scheduling
www.elsevier.com/locate/dsw
a
School of Computing, National University of Singapore, Singapore 117543, Singapore
b
Programming Systems Lab, Saarland University, 66041 Saarbr€ucken, Germany
c
Max-Planck-Institut f€ur Informatik, Im Stadtwald, 66123 Saarbr€ucken, Germany
Abstract
In the presence of side-constraints and optimization criteria, round robin tournament problems are hard combi-
natorial problems, commonly tackled with tree search and branch-and-bound optimization. Recent results indicate that
constraint-based tree search has crucial advantages over integer programming-based tree search for this problem do-
main by exploiting global constraint propagation algorithms during search. In this paper, we analyze arc-consistent
propagation algorithms for the global constraints ‘‘all-different’’ and ‘‘one-factor’’ in the domain of round robin
tournaments. The best propagation algorithms allow us to compute all feasible perfectly mirrored pattern sets with
minimal breaks for intermural tournaments of realistic size, and to improve known lower bounds for intramural
tournaments balanced with respect to carry-over effects.
2003 Published by Elsevier B.V.
allows to systematically exploit the round robin bound for intramural tournaments balanced with
and other constraints, often leading to relatively respect to carry-over effects.
small search trees for medium-sized tournaments.
To solve large problems, stronger propagation
algorithms for pruning the search trees become 2. Round robin tournaments and graphs
important. In finite domain programming systems
such as Ilog Solver [10] and Mozart [13], where In round robin sport competitions, each team
constraints are encoded as propagators that op- plays each other team a fixed number of times g
erate on a constraint store which stores domains of during the competition. Let us first assume g ¼ 1,
variables, arc-consistency is the strongest kind of thus we are dealing with single round robin tour-
propagation that can be achieved for a given naments (SRR). A temporally dense single round
constraint. The most important constraints for robin (DSRR) for n teams distributes the nðn 1Þ
round robin tournaments are matches over a minimal number of rounds such
that every team plays at most one match per
• the all-different constraint, which expresses that round. If n is even, the number of rounds is n 1.
the rows in a tournament contain every team A DSRR with an odd number of teams consists of
only once, and n rounds in each of which n 1 teams play and
• the one-factor constraint, called symmetric all- one team does not. This team is said to have a bye.
different by Regin [17], which expresses that In the following, we are limiting ourselves to an
every column groups the teams into matches. even number of teams, since the problem for an
odd number of teams n 1 can be reduced to the n
Regin gives arc-consistent propagation algo- case by introducing an additional team that always
rithms for both problems, which we will review in ‘‘plays’’ against the team with a bye. When g ¼ 2,
Section 5, after introducing graph-theoretical no- we speak of a dense double round robin (DDRR).
tation in Section 2, presenting the basic ideas of
constraint programming in Section 3, and giving a Teams Rounds
formal description of the two constraints in Sec-
tion 4. 1 2 3 4 5
A practical consideration in modeling of com- 1 2 4 6 3 5
binatorial search problems using constraint pro- 2 1 3 5 6 4
gramming is the trade-off between the strength of 3 5 2 4 1 6
propagation at each node of the search tree and its 4 6 1 3 5 2
computation time. For example, a naive non-arc- 5 3 6 2 4 1
consistent propagation algorithm for all-different 6 4 5 1 2 3
constraint sometimes outperforms the arc-consis-
tent one; in such cases, the decrease in the size of
the search trees does not outweigh the increase of The planning of a DSRR consists of assigning
time that is spent at each of their nodes. This sit- for each round an opponent team to each team.
uation is common in constraint programming and Often other decisions have to be taken as well,
necessitates an experimental evaluation for a given such as the place in which the matches are carried
application domain. out. For intermural tournaments, this amounts to
An extensive experimental evaluation of prop- the question whether a team plays home or away.
agation algorithms for the round robin tourna- For intramural tournaments, a court may need to
ments is given in Section 6. Using the empirically be selected. We first concentrate on opponent team
best propagation algorithms, we are able to com- assignment and discuss intermural tournaments in
pute all feasible perfectly mirrored pattern sets Section 6.
with minimal breaks for intermural tournaments The single round robin schedule on the right
of realistic size, and to improve a known lower shows a valid assignment of opponent teams for
94 M. Henz et al. / European Journal of Operational Research 153 (2004) 92–101
n ¼ 6 and g ¼ 1 in each round. The value in row t ðsx1 ; . . . ; sxk Þ 2 c holds. The set of all solutions to a
and column r tells the team against which team t constraint problem P is denoted by solðPÞ.
plays in round r. The constraint programming approach to solv-
In order to characterize the mathematical ing combinatorial search problems such as round
properties of round robin schedules, we need to robin scheduling problems works as follows. En-
introduce some terminology on graphs. code the problem as a constraint satisfaction
Let G ¼ ðV ; EÞ be an undirected graph with problem P, find a new problem P0 that has the
vertex set V and edge set E where ðx; xÞ 62 E (no same set of solutions by applying so-called con-
self-loops). The degree of G is the maximal number sistency techniques. Now augment P0 in two ways,
of edges incident to some vertex in G. G is called by adding a new constraint c0 and its negation,
complete, if there is an edge from any vertex to any respectively, to P0 . To the resulting problems
other. A factor of G is a subgraph of G with vertex P0 þ c0 and P0 þ :c0 , apply again consistency
set V . A factorization of G is a set of factors of G techniques, find new constraints c00 for each of the
which are pairwise edge-disjoint and whose union problems, and so on. This process leads to a binary
of edges is E. A set M E is called a matching in search tree at whose leaves are either problems
G, if no two distinct edges in M share a common that have no solution, or problems where D con-
endpoint. We call a vertex v matched by M if it is tains only singletons, which directly correspond to
incident to some edge in M, and free otherwise. A solutions.
matching M is called perfect if it covers all vertices There are many degrees of freedom in this
of G, i.e. there are no free vertices. A perfect process, including the original encoding of the
matching is also called a one-factor, because it is a problem, the consistency techniques to be applied,
factor with degree 1. A one-factorization of G is a the choice of new constraints at each step and the
factorization of G consisting of one-factors. order in which the resulting search tree is explored.
A one-factorization of the complete graph with The success of constraint programming relies on
n nodes (n being even) corresponds to a DSRR for good choices for all these components. However,
n teams as follows. Every node i represents a team, we are here mainly concerned with consistency
every one-factor represents a round, and an edge techniques. For the other aspects of constraint-
ði; jÞ in a one-factor r fixes a match between teams based round robin scheduling, see [7,8].
i and j in round r. The properties of factorizations A propagation technique is a function that
guarantee that every team plays every other team maps constraint problems P ¼ ðX ; D; CÞ to new
exactly once. This fact is employed in constructive constraint problems P0 ¼ ðX ; D0 ; CÞ, where for
methods for tournament planning (see references every x 2 X , D0x Dx , and where solðPÞ ¼ solðP0 Þ.
in [23]). A CSP is arc-consistent with respect to the
constraint c on variables x1 ; . . . ; xk , if for each
index i 2 f1; . . . ; kg, and each value v 2 Dxi , there
3. Constraint programming exists an element ðvx1 ; . . . ; vxi1 ; v; vxiþ1 ; . . . ; vxk Þ 2 c.
A CSP is arc-consistent, if it is arc-consistent with
We represent round robin tournament prob- respect to all of its constraints. Arc-consistent
lems as a constraint satisfaction problem (CSP). A propagation is a propagation technique that turns
CSP is a triple P ¼ ðX ; D; CÞ, where X is a finite a given CSP into an arc-consistent CSP.
set of variables, and D assigns to each variable
x 2 X a finite domain Dx of possible values. Each
element c of C expresses a constraint on some 4. Constraints for round robin scheduling
variables x1 ; . . . ; xk , and thus c Dx1 Dxk .
A solution s to the constraint problem P The canonical constraint satisfaction problem
assigns to each variable x a value sx 2 Dx such for opponent team assignment in DSRR repre-
that each constraint is satisfied. This means that sents the target timetable by an n ðn 1Þ matrix
for every constraint c on variables x1 ; . . . ; xk , o of variables, whose variables ot;r tell the opponent
M. Henz et al. / European Journal of Operational Research 153 (2004) 92–101 95
team against which team t plays in round r. More eqðxi ; j; rj;i Þ for 1 6 j < i 6 m ð7Þ
formally, we define a DSRR problem as
PDSRR ¼ ðX ; D; CÞ, where X contains all variables (the constraint eq reflects the equality of the
in o and Dot;r ¼ f1; . . . ; ng for every team t and first two arguments into the third argument),
round r. The set C contains the following con- (2) arc-consistent propagation with respect to
straints: these constraints, plus arc-consistent propaga-
tion with respect to the redundant constraint
all-differentðot;1 ; . . . ; ot;n1 Þ;
all-differentðx1 ; . . . ; xm Þ, and
for every t 2 f1; . . . ; ng; ð1Þ (3) arc-consistent propagation with respect to the
and one-factor constraint itself.
We conclude from these examples that arc- • Let ðv1 ; . . . ; vm Þ 2 one-factorðx1 ; . . . ; xm Þ denote
consistent propagation for the one-factor con- a solution. The set M ¼ ffxi ; xvi gj1 6 i 6 mg is
straint deserves consideration and––assuming that well-defined, a subset of E and a perfect match-
there is an efficient algorithm for it––has the po- ing in G.
tential for improving round robin scheduling be- • The matching M 0 corresponds to the solution
yond the addition of an arc-consistent redundant ðv01 ; . . . ; v0m Þ of the constraint where v0i is the
all-different constraint. index of the mate of the node xi in the matching
Most previous work on constraint-based tour- M 0.
nament planning [7,8,11,19] used only algorithm 1
for the all-different constraint and algorithm 1 for This observation motivates the following defi-
the one-factor constraint. Trick [22] suggests to use nitions: We call an edge e of G matchable if there is
algorithm 2 for the all-different constraint and al- a perfect matching M in G containing e and un-
gorithm 2 for the one-factor constraint. Our goal is matchable otherwise.
to evaluate the propagation algorithms to achieve
guidelines for using propagation algorithms in Lemma 2 (Regin [17]). The following algorithm
round robin scheduling. is a propagation technique for arc-consistent prop-
agation with respect to the constraint one-
factorðx1 ; . . . ; xm Þ. Iterate over the domains Dx1 ; . . . ;
5. Propagation algorithms Dxm to enforce constraints
i 62 Dxi for 1 6 i 6 m and
Consider the constraint all-differentðx1 ; . . . ; xm Þ.
The value graph of this constraint is the bipartite i 2 Dxj $ j 2 Dxi for 1 6 i < j 6 m ð8Þ
S
graph G ¼ ðV ; EÞ with V ¼ fx1 ; . . . ; xm g [ i Dxi and construct the variable graph G for the con-
and E ¼ ffxi ; vgjv 2 Dxi g. straint. For every pair of values i and j, such that
fxi ; xj g is not a matchable edge in G, remove i from
Lemma 1 (Regin [16]). The following algorithm is Dxj and remove j from Dxi .
a propagation technique for arc-consistent propa-
gation with respect to the constraint all-different The problem of finding the unmatchable edges
ðx1 ; . . . ; xm Þ. Construct the value graph of the con- was presented in [1, Exercise 12.42]. It was stated
straint. For every variable x and value v, such that that the problem can be solved with a variation of
fx; vg is not a matchable edge in G, remove v from EdmondsÕ blossom-shrink algorithm [5,6]. ReginÕs
Dx . algorithm follows these ideas. The running time of
the resulting algorithms is OðmsÞ, where m denotes
Regin gives an algorithm for identifying non- the number of nodes and s the number of edges
matchable edges in a value graph with m variables of the variable graph. In round robin tournaments,
and k values with complexity Oðkm3=2 Þ. For round m is bounded by the number of teams n and s is
robin tournaments, both k and m are bounded by bounded by n2 , resulting in a complexity of the
the number
pffiffiffi of teams n, resulting in a complexity of propagation algorithm of Oðn3 Þ.
Oðn2 nÞ.
Now, consider the constraint one-factor
ðx1 ; . . . ; xm Þ. The variable graph of this constraint is 6. Experimental evaluation
the graph G ¼ ðV ; EÞ with the vertex set V ¼
fx1 ; . . . ; xm g and the edge set E ¼ ffxi ; xj gjj 2 Dxi g. For the experimental evaluation, we use the
Looking at the definition of the one-factor programming system Mozart 1.1.0 [13] for the
constraint, it is easy to derive a one-to-one corre- concurrent constraint language Oz [21], which
spondence between the solutions of the con- provides extensive support for finite domain con-
straint and the perfect matchings in its variable straint programming. We implemented the prop-
graph G: agation algorithms all-different and one-factor
M. Henz et al. / European Journal of Operational Research 153 (2004) 92–101 97
described in the previous sections using the LEDA only be solved using arc-consistent propagation
library [12] and made them available to the Mozart for all-different, and thus we fix this propagation
system through MozartÕs Constraint Propagator algorithm in the rest of this section.
Interface [14]. The run times given in this section
are always the average user time of five runs on a 6.1. Unconstrained single round robin tournaments
256 MB 400 MHz Pentium II PC running Linux.
The coefficient of deviation (standard deviation/ Here, we compare the performance of arc-con-
arithmetic mean) was always below 3%. sistent one-factor versus the encoding using neq
The C++ and Oz source code for generating and eq and the redundant all-different constraint.
and running these benchmarks is available at [9]. In this and all following benchmarks, we use
The goals of the experimental evaluation are as constraint-based tree search by using constraints
follows: of the form ot1 ;r ¼ t2 as branching constraints c (see
Section 3), which means that we enumerate the
• evaluate the usefulness of the arc-consistent opponent variables. We order the variables round-
one-factor constraint for round robin applica- wise. At each node, we enumerate the first variable
tions by comparing the sizes of search trees that has a non-singleton domain. The value t2 is
and run times resulting from searches that use always the smallest element of this domain. More
the new constraint with searches that use arc- sophisticated enumeration techniques such as first-
consistent all-different or simply the encoding fail do not improve the search. Table 1 com-
using neq and eq, pares the encodings using neq/eq from Section 4,
• investigate the range of round robin problems Formula (4), the addition of a redundant arc-
to which arc-consistent one-factor provides ad- consistent all-different constraint as discussed in
vantages over other techniques, and Example 1, and the algorithm one-factor, for
• evaluate the efficiency of the arc-consistent one- finding the first DSRR.
factor constraint for practical applications. We observe that for these kinds of benchmarks,
arc-consistent one-factor achieves optimal propa-
We observe from all experiments that the use of gation in a sense that there are no failures in the
the arc-consistent all-different constraint is crucial. search trees, whereas the encoding using neq/eq
It typically leads to a reduction of the size of the requires search. From 26 teams onward, this
search tree and the runtime by one or two orders method fails to produce solutions within reason-
of magnitude. Large tournament problems can able time. Arc-consistent all-different occasionally
Table 1
Benchmarks on unconstrained DSRR
n neq/eq all-different one-factor
F UT F UT F UT
6 0 0.030 0 0.048 0 0.020
10 3 0.428 1 0.558 0 0.220
14 62 3.18 0 4.35 0 1.13
18 20 5.82 0 8.86 0 4.37
22 675 81.3 2 25.0 0 12.7
26 ? ? 2 57.1 0 32.0
30 ? ? 0 122.0 0 71.2
34 ? ? 17 241.0 0 145.0
38 ? ? 5 429.0 0 272.0
42 ? ? 4 742.0 0 484.0
n: number of teams; F : number of failures in the search tree; UT : user time. The ? symbols indicate that 30 minutes of runtime were
exceeded.
98 M. Henz et al. / European Journal of Operational Research 153 (2004) 92–101
requires a bit of search, but the performance dif- the two techniques increases with the problem size.
ference to arc-consistent one-factor is not dramatic Note that for the double round robin problems,
here. the reduction of the search tree afforded by the
redundant all-different constraint does not justify
6.2. Tightly constrained round robin tournaments its computational effort.
Table 2
Benchmarks on tightly constrained DSRR and DDRR
File n S neq/eq all-different one-factor 2
F UT F UT F UT
s_6_yes 6 4 7 0.088 5 0.124 4 0.060
s_8_yes 8 5 47 0.540 24 0.606 10 0.200
s_10_yes 10 1 37 0.704 17 0.686 1 0.106
s_12_yes 12 1 3216 77.9 1452 64.1 179 6.26
s_14_yes 14 1 8407 242.0 1328 75.3 527 20.4
s_6_no 6 0 4 0.048 4 0.066 4 0.022
s_8_no 8 0 13 0.172 12 0.246 6 0.086
s_10_no 10 0 20 0.530 13 0.646 6 0.168
s_12_no 12 0 241 6.64 111 5.37 25 0.794
s_14_no 14 0 537 16.7 182 10.9 69 2.54
s_16_no 16 0 1467 64.5 213 18.0 86 5.37
s_18_no 18 0 593 38.6 95 9.57 30 2.29
s_20_no 20 0 ? ? 2755 314.0 254 23.0
d_6_yes 6 4 21 0.066 4 0.084 2 0.020
d_8_yes 8 32 5776 19.2 2736 28.1 226 0.93
d_10_yes 10 2 76646 409.0 38251 677.0 5956 35.6
n: number of teams; S: number of solutions; F : number of failures in the search tree; UT : user time.
M. Henz et al. / European Journal of Operational Research 153 (2004) 92–101 99
With constraint-based branch-and-bound using straints [7]. However, not all such pattern sets lead
arc-consistent propagation for one-factor con- to schedules even if there are no other side con-
straints, we are able to prove the optimality of his straints. De Werra [4] gives a construction of fea-
schedule for n ¼ 6. However, for n ¼ 10, we obtain sible pattern sets with 3n 6 breaks, proves their
a schedule with a better cost (136) after 26.2 sec- optimality and states that no constructive method
onds. The best values that we obtain is 128 for is known to enumerate all feasible pattern sets. In
n ¼ 10 shown on the previous page, which is ob- this situation, it is useful to enumerate feasible
tained using a randomized search strategy (the pattern sets, which––surprisingly––has to our
runtime of about 30 minutes is therefore not very knowledge not been tackled so far. For this task
informative). Trick [22] reports an even better cost we use the constraint model given in [7] and add
(122) after 1 day of runtime, also using constraint the model for opponents given in Section 4. The
programming. For n ¼ 12, we improve the best table on the right gives the number of pattern sets
known schedule (cost 196) given in [18] and for n 6 18; the pattern sets are listed in [9]. The
achieve a schedule with a cost of 188, which is column P gives the number of pattern sets that
given in [9]. fulfill the pattern set constraints, the column F
gives the number of pattern sets that fulfill the
Teams Rounds model for opponents. For all n 6 16, there exists a
1 2 3 4 5 6 7 8 9 schedule for every computed pattern set. For
n ¼ 18, there are four cases, for which we could
1 6 5 10 9 4 8 7 2 3 neither prove infeasibility nor generate a schedule.
2 7 4 9 10 6 3 8 1 5
3 8 9 7 6 5 2 4 10 1
4 9 2 8 7 1 10 3 5 6 n P F
5 10 1 6 8 3 7 9 4 2
6 1 7 5 3 2 9 10 8 4 4 0 0
7 2 6 3 4 10 5 1 9 8 6 1 1
8 3 10 4 5 9 1 2 6 7 8 4 2
9 4 3 2 1 8 6 5 7 10 10 15 4
10 5 8 1 2 7 4 6 3 9 12 56 10
14 210 17
Small carry-over schedule for n ¼ 10. 16 792 46
In this study, the use of arc-consistent propa- 18 3003 84
gation for the one-factor constraint is again cru-
cial.
For n 6 16 the use of the arc-consistent one-
factor constraint or the redundant arc-consistent
6.4. Feasible pattern sets
all-different constraint for one-factor was not
crucial and the pattern sets were obtained faster
Here, we consider intermural dense double
with trivial propagation for the one-factor con-
round robins (DDRR) ðg ¼ 2Þ, where the second
straint. For n ¼ 18, the arc-consistent propagation
part of the double round robin repeats the first
for the one-factor constraint allows to prove the
part with opposite venues. A team is said to have a
infeasibility of 17 pattern sets; without it, the
break, if it either plays two consecutive matches
number of pattern sets generated is 101.
home or away. We consider the problem of finding
all schedules that minimize the overall number of
breaks. A widely accepted method of searching for 6.5. Intermural tournaments
intermural tournaments is to generate pattern sets
first [7,8,15,20]. These are sets of home/away pat- The intermural benchmarks in this section show
terns that satisfy simple row and column con- that the pruning obtained from arc-consistent
100 M. Henz et al. / European Journal of Operational Research 153 (2004) 92–101
Table 3
Benchmarks on intermural tournaments
File n S neq/eq all-different one-factor 2
F UT F UT F UT
i_8_yes 8 7 0 0.138 0 0.182 0 0.142
i_12_yes 12 3 0 0.440 0 0.510 0 0.436
i_16_yes 16 4 6 1.30 4 1.51 4 1.22
i_20_yes 20 10 35 4.23 22 4.63 22 3.61
acc97/98 9 179 273 19.5 273 28.4 268 22.1
n: number of teams; S: number of solutions; F : number of failures in the search tree; UT : user time.
one-factor not always outweighs its computational different constraint is crucial for efficient solution
effort. The best strategy for intermural tournament of all tournament scheduling problems considered.
problems is to first find so-called pattern sets [3]. Arc-consistent propagation for the one-factor
Table 3 shows the run times for finding all solu- constraint is essential for intramural tournaments.
tions of intermural tournament problems, all of For large unconstrained and tightly constrained
which except the last one are randomly con- single and multiple round robin tournaments, we
strained as in the previous section. The last prob- observe a typical reduction of the search tree and
lem is the ACC 1997/98 problem [8,15], which is runtime by one order of magnitude. Intermural
tightly constrained by a variety of conditions. tournaments do not benefit much from the arc-
Since we are not concerned with the computation consistent one-factor constraint.
of the pattern sets, we fix a particular pattern set Using these algorithms, we could establish new
for the benchmarks, except for the ACC 1997/98 lower bounds for the minimization of carry-over
problem. The numbers for this last problem in- effects for intramural single round robin tourna-
clude the effort for generating pattern sets, since ments and enumerate the all feasible pattern sets
the one-factor constraint already achieves some for intramural tournaments with a minimal num-
additional pruning during pattern set generation. ber of breaks for up to 16 teams. For 18 teams,
We observe that the effort for neither arc-con- there are four open cases.
sistent one-factor nor arc-consistent all-different is
justified for these intermural tournaments. The
Acknowledgements
reason is that pattern sets already enforce one-
factor to such an extent that arc-consistent one-
The authors would like to thank Ernst Althaus,
factor achieves almost no additional pruning of
Kurt Mehlhorn and Tony Tan for many helpful
the search trees. Note that the arc-consistent one-
discussions, Jan A.M. Schreuder for providing the
factor constraint could be sped up in this case by
motivation for the work on pattern sets, Michael
exploiting that the variable graph is pffiffiffibipartite, Trick for pointing out omissions and mistakes,
which would lead a complexity of Oðn2 nÞ, similar
Marleen van Brandenburg for carrying out initial
to the arc-consistent all-different.
experiments on round robin tournament bench-
marks, and the reviewers for pointing out the
potential of the optimization for intermural tour-
7. Conclusion naments.
[2] I. Anderson, Combinatorial Designs and Tournaments, arbr€ucken, Swedish Institute of Computer Science, Stock-
Oxford University Press, 1997. holm, and Universite Catholique de Louvain, 1999.
[3] W.O. Cain Jr., The computer-assisted heuristic approach [14] T. M€ uller, Constraint extensions tutorial, http://
used to schedule the major league baseball clubs, in: S.P. www.mozart-oz.org, Programming Systems Lab, Sa-
Ladany, R.E. Machol (Eds.), Optimal Strategies in Sports, arbr€ucken, Swedish Institute of Computer Science, Stock-
number 5 in Studies in Management Science and Systems, holm, and Universite Catholique de Louvain, 1999.
North-Holland, Amsterdam, 1977, pp. 32–41. [15] G.L. Nemhauser, M.A. Trick, Scheduling a major college
[4] D. de Werra, Scheduling in sports, in: P. Hansen (Ed.), basketball conference, Operations Research 46 (1) (1998)
Studies on Graphs and Discrete Programming, North- 1–8.
Holland, Amsterdam, 1980, pp. 381–395. [16] J.-C. Regin, A filtering algorithm for constraints of
[5] J. Edmonds, Maximum matching and a polyhedron with 0, difference in CSPs, in: Proceedings of the AAAI 12th
1-vertices, Journal of Research of the National Bureau of National Conference on Artificial Intelligence, AAAI
Standards 69B (1965) 125–130. Press, 1994, pp. 362–367.
[6] J. Edmonds, Paths, trees, and flowers, Canadian Journal [17] J.-C. Regin, The symmetric alldiff constraint, in: T. Dean
on Mathematics 23 (1965) 449–467. (Ed.), Proceedings of the International Joint Conference on
[7] M. Henz, Constraint-based round robin tournament plan- Artificial Intelligence, Stockholm, Sweden, vol. 1, Morgan
ning, in: D. De Schreye (Ed.), Proceedings of the Interna- Kaufmann Publishers, San Mateo, CA, 1999, pp. 420–
tional Conference on Logic Programming, Las Cruces, 425.
New Mexico, The MIT Press, Cambridge, MA, 1999, pp. [18] K.G. Russell, Balancing carry-over effects in round robin
545–557. tournaments, Biometrika 67 (1) (1980) 127–131.
[8] M. Henz, Scheduling a major college basketball confer- [19] A. Schaerf, Scheduling sport tournaments using constraint
ence––revisited, Operations Research 49 (1) (2001). logic programming, Constraints 4 (1) (1999) 43–65.
[9] M. Henz, T. M€ uller, S. Thiel, M. van Brandenburg, Bench- [20] J.A.M. Schreuder, Combinatorial aspects of construction
marks and results for round robin tournaments, http:// of competition Dutch professional football leagues, Dis-
www.comp.nus.edu.sg/~henz/roundrobin_ crete Applied Mathematics 35 (1992) 301–312.
benchmarks, 2000. [21] G. Smolka, The Oz programming model, in: J. van
[10] ILOG Inc., Mountain View, CA 94043, USA, http:// Leeuwen (Ed.), Computer Science Today, Lecture Notes
www.ilog.com, ILOG Solver 4.0, Reference Manual, in Computer Science 1000, Springer-Verlag, Berlin, 1995,
1997. pp. 324–343.
[11] K. McAloon, C. Tretkoff, G. Wetzel, Sports league [22] M.A. Trick, A schedule-then-break approach to sports
scheduling, in: Proceedings of the 1997 ILOG Optimiza- timetabling, in: E. Burke, W. Erben (Eds.), Practice and
tion Suite International UsersÕ Conference, Paris, July Theory of Automated Timetabling III, Selected Papers of
1997. PATAT 2000, Konstanz, Germany, Lecture Notes in
[12] K. Mehlhorn, S. N€aher, LEDA: A Platform for Combi- Computer Science 2079, Springer-Verlag, Berlin, 2000.
natorial and Geometric Computing, Cambridge University [23] W.D. Wallis, One-Factorizations, Kluwer Academic Pub-
Press, Cambridge, 1999. lishers, Dordrecht, 1997.
[13] Mozart Consortium, The Mozart Programming System. [24] J.P. Walser, Domain-Independent Local Search for Linear
Documentation and system available from http:// Integer Optimization, PhD thesis, Universit€at des Saarlan-
www.mozart-oz.org, Programming Systems Lab, Sa- des, Saarbr€ ucken, August 1998.