Benchmarking curriculum-based course timetabling: formulations, data formats, instances, validation, visualization, and results.
ABSTRACT We propose a set of formulations for the Curriculum-Based Course Timetabling problem, with the aim of “capturing” many real-world
formulations, and thus encouraging researchers to “reduce” their specific problems to one of them, gaining the opportunity
to compare and assess their results. This work is accompanied by a web application that maintains all the necessary infrastructures for benchmarking: validators, data formats, instances, reference scores, lower bounds, solutions, and visualizers. All instances
proposed here are based on real data from various universities and they represent a variety of possible situations.
- [Show abstract] [Hide abstract]
ABSTRACT: In this paper, harmony search algorithm is applied to curriculum-based course timetabling. The implementation, specifically the process of improvisation consists of memory consideration, random consideration and pitch adjustment. In memory consideration, the value of the course number for new solution was selected from all other course number located in the same column of the Harmony Memory. This research used the highest occurrence of the course number to be scheduled in a new harmony. The remaining courses that have not been scheduled by memory consideration will go through random consideration, i.e. will select any feasible location available to be scheduled in the new harmony solution. Each course scheduled out of memory consideration is examined as to whether it should be pitch adjusted with probability of eight procedures. However, the algorithm produced results that were not comparatively better than those previously known as best solution. With proper modification in terms of the approach in this algorithm would make the algorithm perform better on curriculum-based course timetabling.01/2014; - SourceAvailable from: Broes De Cat[Show abstract] [Hide abstract]
ABSTRACT: Timetabling is the task of assigning sets of events to periods of time, taking into account resource-constraints and preferences among assignments. It is a well-studied field of research and is generally recog-nized to be a hard problem, both from the perspective of encoding it as from a computational point of view. In recent years, there has been increased interest in combining efficient search algorithms with modelling languages capable of high-level rep-resentations of real-world domains. Research into such systems is con-ducted, a.o., in the fields of Constraint Programming and Knowledge Representation. In this paper, we investigate the use of the modelling language of first-order logic extended with constructs such as aggregates, types, definitions and arithmetic, and the idp system, which implements model generation for this language, to the timetabling problem. We show the feasibility of the approach and argue that there are impor-tant advantages both from the modelling point of view, leading to nat-ural representation of the problem, and from the solving point of view, taking advantage of efficient automated search techniques like SAT and constraint propagation.01/2011; - SourceAvailable from: Andrew J. Parkes[Show abstract] [Hide abstract]
ABSTRACT: A branch-and-cut procedure for the Udine Course Timetabling problem is described. Simple compact integer linear programming formulations of the problem employ only binary variables. In contrast, we give a formulation with fewer variables by using a mix of binary and general integer variables. This formulation has an exponential number of constraints, which are added only upon violation. The number of constraints is exponential. However, this is only with respect to the upper bound on the general integer variables, which is the number of periods per day in the Udine Course Timetabling problem. A number of further classes of cuts are also introduced, arising from: enumeration of event/free-period patterns; bounds on the numbers of days of instruction; the desire to exploit integrality of the objective function value; the graph colouring component; and also from various implied bounds. An implementation of the corresponding branch-and-cut procedure is evaluated on the instances from Track 3 of the International Timetabling Competition 2007. KeywordsInteger programming–Branch-and-cut–Cutting planes–Soft constraints–Educational timetabling–University course timetablingAnnals of Operations Research 01/2012; 194(1):71-87. · 1.03 Impact Factor
Page 1
Noname manuscript No.
(will be inserted by the editor)
Benchmarking Curriculum-Based Course Timetabling:
Formulations, Data Formats, Instances, Validation, and
Results
Fabio De Cesco · Luca Di Gaspero · Andrea
Schaerf
Abstract We propose a set of formulations for the Curriculum-Based Course Time-
tabling problem, with the aim of “capturing” many real-world formulations, and thus
encouraging researchers to “reduce” their specific problems to one of them, gaining the
opportunity to compare and assess their results. This work is accompanied by a web
site that maintains all the necessary infrastructures for benchmarking: i.e., validators,
data formats, instances, reference scores, lower bounds, and solutions. All instances
proposed here are based on real data from various universities, and they represent a
variety of possible situations.
1 Introduction
Course timetabling (CTT) consists of the weekly scheduling of the lectures of a set of
university courses within a given number of rooms and time periods, satisfying various
constraints due to conflicts and other features [22].
CTT is a practically-important and widely-studied problem; nevertheless, if we go
through the research literature on it, we see that many papers create a new formulation
and do not consider the previously-defined ones. This is due to the indisputable truth
that, like for other timetabling problems, it is impossible to write a CTT formulation
that suits all cases: every institution (and even every department) has its own rules,
features, costs, and fixations.
On the other hand, when we think about research, measurability is an important
issue, and thus this inconvenient situation should not be taken as an excuse to refrain
from performing fair comparisons and, more generally, from assessing (or benchmark-
ing) the absolute quality of a solution method proposed.
F. De Cesco
EasyStaff S.r.l.
via Oderzo 1, I-33100, Udine, Italy
E-mail: fabio@easystaff.it
L. Di Gaspero and A. Schaerf
DIEGM, University of Udine
via delle Scienze 208, I-33100, Udine, Italy
E-mail: l.digaspero@uniud.it, schaerf@uniud.it
Page 2
2
The International Timetabling Competitions, ITC-1 in 2002-03 and ITC-2 in 2007-
08, have been organized specifically with the aim of creating the common ground for
comparison. The success of the competitions confirms that there is a wide awareness
in the community of the need for such ground.
Among the different versions of CTT, one distinguishing feature is whether student
enrollments are available (and reliable) or not. In the negative case, conflicts between
courses are set according to the curricula published by the university, and not on
the basis of enrollment data. In this work, we focus on this case, in which conflicts
are based on curricula, and the resulting problem is named Curriculum-Based Course
Timetabling (CB-CTT).
The CB-CTT problem, in one of the possible formulations, has been used as one
of the tracks of ITC-2, namely track 3. The competition formulation of CB-CTT have
been designed with the twofold objective of being, on the one side, very realistic and,
on the other side, simple and general enough to attract many researchers. In fact, it
has been created by starting form a real formulation and stripping out features and
cost components in a careful way so as to maintain the general flavor of the problem
but removing a lot of overwhelming details.
Despite this effort, the competition formulation of CB-CTT has been criticized
by some of the participants for not being well-designed, in the sense that the cost
components used are not the most important or they do not penalize the right patterns.
In order to answer to these type of (reasonable) critics and to push forward the
spirit of the competition, we propose here a larger set of possible formulations for CB-
CTT. Our overall objective is thus to create a portfolio of “standard” versions of the
problem that could be accepted by a larger community of researchers.
Obviously, we do not believe that we could “hit” exactly the formulation adopted
by others; nevertheless, we hope to make simpler the “reduction” process from ad hoc
formulations, considered by researchers for their institution, to an already existing one.
The reduction would allow the researcher to work on both her/his formulation and the
“standard” one, for which results are already available and thus the assessment process
would be much easier. Thus also trying to help in bridging the gap between theory and
practice [14].
In addition, if this portfolio starts to get a footing, new formulations could be
added, by others or by ourselves, based on the feedback obtained from the timetabling
community.
In order to give a chance to this ambitious plan to become effective, we provide
along with the problem formulations all the necessary infrastructures for benchmarking:
i.e., validators, data formats, instances, scores, lower bounds, and solutions. In fact,
we believe that all the above mentioned tools are mandatory in order to foster the
necessary sharing and cross-fertilization [23]. For example, the validator is needed to
double-check that all the information has been made clear and unambiguous; and the
solutions (along with the corresponding scores) provide a set of reference results1,
which in our opinion are very useful for a first evaluation of the own solutions of the
perspective users.
This paper is therefore accompanied by a web site (http://tabu.diegm.uniud.
it/ctt) from which all datasets can be downloaded and solutions can be validated. All
updates and news about the problem will be posted there.
1The solver that we use for our solutions is a dynamic tabu search algorithm.
Page 3
3
2 Problem Definition
The basic features of CB-CTT are presented in the ITC-2 web site and in the corre-
sponding technical report [8]. However, the model has to be extended to consider the
addition components. In order to make this paper self-contained, we present here the
full extended model. The problem consists of the following basic entities:
Days, Timeslots, and Periods. We are given a number of teaching days in the week
(typically 5 or 6). Each day is split in a fixed number of timeslots, which is equal
for all days. A period is a pair composed of a day and a timeslot. The total number
of scheduling periods is the product of the days times the day timeslots.
Courses and Teachers. Each course consists of a fixed number of lectures to be sched-
uled in distinct periods, it is attended by a given number of students, and is taught
by a teacher. For each course there is a minimum number of days that the lectures
of the course should be spread in, moreover there are some periods in which the
course cannot be scheduled.
Rooms. Each room has a capacity, expressed in terms of number of available seats,
and a location expressed as an integer value representing a separate building. Some
rooms may be not suitable for some courses (because they miss some equipment).
Curricula. A curriculum is a group of courses such that any pair of courses in the
group have students in common. Based on curricula, we have the conflicts between
courses and other soft constraints.
The solution of the problem is an assignment of a period (day and timeslot) and a
room to all lectures of each course.
We split the cost component into two sets: the basic ones, which belong to all
formulations and constitute the core of CB-CTT, and the optional ones, which are
considered only in some formulations.
2.1 Basic cost components
Lectures: All lectures of a course must be scheduled, and they must be assigned to
distinct periods. A violation occurs if a lecture is not scheduled or two lectures are
in the same period.
Conflicts: Lectures of courses in the same curriculum or taught by the same teacher
must be all scheduled in different periods. Two conflicting lectures in the same
period represent one violation. Three conflicting lectures count as 3 violations: one
for each pair.
RoomOccupancy: Two lectures cannot take place in the same room in the same period.
Two lectures in the same room at the same period represent one violation. Any
extra lecture in the same period and room counts as one more violation.
Availability: If the teacher of the course is not available to teach that course at a given
period, then no lecture of the course can be scheduled at that period. Each lecture
in a period unavailable for that course is one violation.
RoomCapacity: For each lecture, the number of students that attend the course must
be less or equal than the number of seats of all the rooms that host its lectures.
All the basic cost components are hard constraint for all formulations, except for
RoomCapacity which is soft, and each student above the capacity counts as 1 point of
Page 4
4
penalty. The weight for this component is 1 in all formulations, and it can be interpreted
as the basic unit of penalty.
2.2 Optional cost components
MinWorkingDays: The lectures of each course must be spread into the given minimum
number of days. Each day below the minimum counts as 1 violation.
IsolatedLectures (CurriculumCompactness v. 1): Lectures belonging to a curriculum should
be adjacent to each other (i.e., in consecutive periods). For a given curriculum we
account for a violation every time there is one lecture not adjacent to any other
lecture within the same day. Each isolated lecture in a curriculum counts as 1
violation.
Windows (CurriculumCompactness v. 2): Lectures belonging to a curriculum should
not have time windows (i.e., periods without teaching) between them. For a given
curriculum we account for a violation every time there is one windows between two
lectures within the same day. Each time window in a curriculum counts as many
violation as its length (in periods).
RoomStability: All lectures of a course should be given in the same room. Each distinct
room used for the lectures of a course, but the first, counts as 1 violation.
StudentMinMaxLoad: For each curriculum the number of daily lectures should be within
a given range. Each lecture below the minimum or above the maximum counts as 1
violation.
TravelDistance: Students should have the time to move from one building to another
one between two lectures. For a given curriculum we account for a violation every
time there is an instantaneous move: two lectures in rooms located in different
building in two adjacent periods within the same day. Each instantaneous move in
a curriculum counts as 1 violation.
RoomSuitability: Some rooms may be not suitable for a given course because of the
absence of necessary equipment (projector, amplification, ...). Each lecture of a
course in an unsuitable room counts as 1 violation.
DoubleLectures: Some courses require that lectures in the same day are grouped to-
gether (double lectures). For a course that requires grouped lectures, every time
there is more than one lectures, a lecture non-grouped to another is not allowed.
Two lectures are grouped if they are both adjacent and in the same room. Each
non-grouped lecture counts as 1 violation.
2.3 Formulations
With the term formulation here we mean a specific set of cost components, along
with the weights assigned to each of them. The weights are necessary because we
consider only weighted-sum single-objective functions, as multi-objective formulations
and Pareto optimality issues are out of the scope of this work.
Up to now, only two formulations have been proposed: The first one has been
introduced in our previous work [10,11] and it has been used also by Burke et al [3,4]
with an IP-based approach. The second one has been specifically designed for ITC-2.
We name these formulations as UD1 and UD2, respectively (UD for Udine), and
we introduce three new ones, UD3, UD4, and UD5. Among all possible formulations
Page 5
5
Problem Formulation:
Cost Component
Lectures
Conflicts
RoomOccupancy
Availability
RoomCapacity
MinWorkingDays
IsolatedLectures
Windows
RoomStability
StudentMinMaxLoad
TravelDistance
RoomSuitability
DoubleLectures
UD1UD2UD3UD4UD5
H
H
H
H
1
5
1
—
—
—
—
—
—
H
H
H
H
1
5
2
—
1
—
—
—
—
H
H
H
H
1
—
—
4
—
2
—
3
—
H
H
H
H
1
1
—
1
—
1
—
H
1
H
H
H
H
1
5
1
2
—
2
2
—
—
Table 1 Problem formulation descriptions
(exponentially many w.r.t. the number of cost components), these ones have been
designed with the aim of capturing different university settings. Once the “machinery”
is consolidated, new formulations can be very easily added in response to stimuli from
the community.
Table 1 presents the formulations in terms of which cost components they include.
For each pair formulation/component we write in the cell the weight associated to the
component in the formulation, or ‘H’ if the component is hard. A dash sign ‘—’ means
that the component is not included in the formulation. The horizontal line separates
the basic components from the optional ones.
It is clear that the weight used in the formulations are quite arbitrary. They are
used to create common single-objective formulations, but it is understood that multi-
objective ones would be more appropriate in many cases.
3 Benchmarking
We present in this section all the information that are needed to benchmark the algo-
rithms, and thus to share the problem with other researchers.
3.1 Instances
All instances are downloadable from the problem web site. The set of instances includes
the 4 instances used in [10], called test1, ..., test4, and the 21 proposed for the
competition, called comp01, ..., comp21, which are all real cases taken mainly from our
university.
For many among those instances, the additional information needed in the new
formulations was not available, not reliable, or not meaningful. For example, for many
instances, rooms were all in the same building, therefore the travel distance was always
0. In this and similar cases, some information has been added in an arbitrary way.
Nevertheless, most of the information is composed of real data.
We have added 7 new instances, also coming from real world settings, which come
mainly from different institutions, and thus represent new cases to be dealt with. We
name these instances as DDS1, ..., DDS7.
Page 6
6
Instance
comp01
comp02
comp03
comp04
comp05
comp06
comp07
comp08
comp09
comp10
comp11
comp12
comp13
comp14
comp15
comp16
comp17
comp18
comp19
comp20
comp21
test1
test2
test3
test4
DDS1
DDS2
DDS3
DDS4
DDS5
DDS6
DDS7
toy
C
30
82
72
79
54
108
131
86
76
115
30
88
82
85
72
108
99
47
74
121
94
46
52
56
55
201
82
50
217
109
107
49
4
LR
6
16
16
18
9
18
20
18
18
18
5
11
19
17
16
20
17
9
16
19
18
12
12
13
10
21
11
8
31
18
17
9
3
PpD
6
5
5
5
6
5
5
5
5
5
9
6
5
5
5
5
5
6
5
5
5
4
4
4
5
15
11
11
10
12
5
10
4
D
5
5
5
5
6
5
5
5
5
5
5
6
5
5
5
5
5
6
5
5
5
5
5
5
5
5
6
5
5
6
5
6
5
Cu
14
70
68
57
139
70
77
61
75
67
13
150
66
60
68
71
70
52
66
78
78
26
30
55
55
99
11
9
105
44
62
37
2
MML
2-5
2-4
2-4
2-4
2-4
2-4
2-4
2-4
2-4
2-4
2-6
2-4
2-3
2-4
2-4
2-4
2-4
2-3
2-4
2-4
2-4
2-4
2-4
2-4
2-4
3-7
3-6
3-6
3-6
3-6
2-4
3-6
2-3
Co
13.2
7.97
8.17
5.42
21.7
5.24
4.48
4.52
6.64
5.3
13.8
13.9
5.16
6.87
8.17
5.12
5.49
13.3
7.45
5.06
6.09
5.25
5.57
5.89
5.98
4.58
23.2
12.4
2.85
2.19
5.79
14
75
TA
93.1
76.9
78.4
81.9
59.6
78.3
80.8
81.7
81
77.4
94.2
57
79.6
75
78.4
81.5
79.2
64.6
76.4
78.7
82.4
97.6
86.1
78.1
76.8
21.3
34.8
58.8
91.4
66
77.8
89
90
CL
3.24
2.62
2.36
2.05
1.8
2.42
2.51
2
2.11
2.54
3.94
1.74
2.01
2.34
2.36
2.39
2.33
1.53
2.42
2.5
2.25
1.97
2.11
2
2
5.18
4.06
4.76
3.78
1.89
2.38
3.01
2.1
RO
88.9
70.8
62.8
63.6
46.9
80.2
86.8
72
62
82.2
72
55.1
64.8
64.7
62.8
73.2
79.8
42.6
69.2
82.1
72.7
86.2
92.9
96.9
100
57.1
20.1
46.8
62.7
43.2
76.2
47
26.7
160
283
251
286
152
361
434
324
279
370
162
218
308
275
251
366
339
138
277
390
327
207
223
252
250
900
146
206
972
560
324
254
16
Table 2 Description of the instances
Finally, we have one small instance, called toy, that in our case turned out very
useful for debugging and testing. This instance is build in such a way that for all
formulations it is easy to find a zero-cost solution and it can be verified also by human
inspection.
Table 2 shows the main features of all instances together with some statistical
quantities. In details, it shows: courses (C), total lectures (L), rooms (R), periods per
day (PpD), days (D), curricula (Cu), min and max lectures per day per curriculum
(MML), average number of conflicts (Co), average teacher availability (TA), average
number of lectures per curriculum per day (CL), average room occupation (RO).
The feature Co (conflicts) counts the pairs of lectures that cannot be scheduled at
the same time (same course, same teacher, and same curriculum) divided by the total
number of distinct pairs of lectures.
Notice that Co and TA are computed for single lecture rather than at course level,
so as to take into account the fact that courses have different number of lectures.
Page 7
7
3.2 Data formats
The .ctt data format used for ITC-2 could not be used as is for formulations UD3,
UD4, and UD5, because it needs to be extended for adding the extra data necessary
for the new features and cost components.
We believe that it would be too complicated to maintain separated data formats for
each formulation, therefore we decide to create an extended format that accommodates
all the features. Researchers that are interested in one specific formulation can simply
ignore the unnecessary additional information from the input files.
The outcome is the .ectt file format (e for extended) which largely resembles the
.ctt one, but with extra data added in various points: header, courses, rooms, and
constraints sections. For brevity, it is not presented here but it is fully described in the
web site.2
In addition, we propose an XML format, along with its DTD (Document Type
Definition), that contains the same information. We post on the website all instances
also in this alternative format, for the convenience of researchers that are accustomed
to use this (very flexible) technology.
Finally, we provide the translators from one format to the other.
3.3 Validators
In order to allow other researchers to test whether they correctly evaluate their solu-
tions, we provide a solution validator along the lines of the one for ITC-2 track 3. This
tool is a simple program that requires three command-line arguments: the formulation,
the input file, and the solution file. The result of the validation is an output of all
specific violations (one per line), and a summary report that shows the costs for each
component plus the total one.
The validator can be downloaded form the web site as C++ source code. We provide
it open-source so that it can be inspected, improved, and extended by the community.
In addition, we also set up a web-based validator that allows the user to upload
a solution file, select an existing instance and obtain the same report information
(without having to compile and execute the validator).
Finally, we also developed a validator for the instance files, so as to guide the
process for other researchers to add their own instances to the benchmark set. This
input validator reads an instance file (in .ectt or XML format) and checks if the data
is coherent and correctly formatted, and it issues errors, warnings, and statistics. For
example, if there is a constraint to a non-existing course, this creates an error, wherever,
if a course does not belong to at least one curriculum, this generates a warning.
The use of the input validator should avoid the publication of non well-defined
instances, that could create ambiguity on the computation of the cost. In any case,
new instances would be published on the web only upon approval of the administrator.
2It also corrects an incongruity in the use of the separators in the .ctt format: in .ectt
files data fields are always separated by one single blank.
Page 8
8
3.4 Reference Results
Our solutions are obtained by a dynamic tabu search algorithm. In details, the solver
uses a short-term tabu prohibition with variable-size tabu length, but also includes the
dynamic modification of the weights of the cost components (including hard ones) based
on the number of violations. The neighborhood relation used is the simple one that
moves one lecture to a different period and/or a different room. The main parameters,
namely the tabu length range and the rate of modification of the weights have been
selected based on statistical tests.
We present here some of our (preliminary) results, with the aim of providing some
reference values for everybody interested in the problem. All corresponding solution
files are available from the web site.
Table 3 shows the results obtained using the competition timeout (360s on our
PC) and taking the best out of 40 repetitions. For all instances and all formulations
we obtained a feasible solution, and thus Table 3 reports only the total (soft) penalty.
We show only the best solution rather than the full distribution, because the scope is
to have this reference results instead of describing the results in a statistically principled
way.
In general, publishing on the web the best scores obviously gives only a partial view
of the results of a research, which indeed involves also distributions, running times, and
many other features. However, in our opinion, this information pertains to the papers
written by the authors, and it is outside the scope of the website, that has the objective
of collecting, validating, and classifying the results.
4 Related Work
The inspiration and the guidelines for this work come from Johnson’s seminal paper
[12] that emphasizes, among other features, the importance of the measurability of the
experimental results in computer science.
The motivations come also from the observation of the evolution in the last decade
of the literature on the “twin” problem, namely the examination timetabling prob-
lem(ETT). For ETT, Carter et al [6] proposed in 1996 a set of formulations which
differ from each other based on some components of the objective function. Carter also
made available a set of benchmark instances [5] extracted from real data, which rep-
resent a large variety of different situations. Many researches (see, e.g., [1,7,9]) have
adopted one of Carter’s formulations using his instances, and also have added new
instances and new formulations3. For the most complex new formulations, additional
data have been added by other researchers, mainly in an arbitrary but realistic way.
Available formulations and instances, and the corresponding best results, up to 2003,
have been published on the web [16] by Liam Merlot. More recently, Rong Qu has
created a new web site [19] that allows the visitors to download an executable that
validates ETT solutions (using a raw fixed-structure output format). Up to now, the
executable validates only solutions for the basic version of ETT. Finally, a new version
of the problem has been defined for ITC-2 (track 1) together with the online validator
to test solutions [15].
3Incidentally, as documented in detail in [20], at some time two slightly different versions
of Carter’s datasets were available on the web.
Page 9
9
Form./ Instance
UD1
UD2
UD3
UD4
UD5
comp01
4
5
8
6
11
comp02
35
75
34
49
270
comp03
52
93
45
371
206
comp04
21
45
2
20
92
comp05
244
326
434
408
1269
comp06
27
62
14
28
202
comp07
13
38
12
35
213
Form./ Instance
UD1
UD2
UD3
UD4
UD5
comp08
24
50
8
20
102
comp09
61
119
18
47
208
comp10
10
27
2
18
190
comp11
0
0
0
0
0
comp12
268
358
140
147
665
comp13
38
77
32
51
195
comp14
30
59
2
21
138
Form./ Instance
UD1
UD2
UD3
UD4
UD5
comp15
46
87
30
42
259
comp16
28
47
12
23
182
comp17
44
86
14
38
216
comp18
41
71
10
32
150
comp19
36
74
34
39
224
comp20
25
54
24
39
309
comp21
69
117
30
60
247
Form./ Instance
UD1
UD2
UD3
UD4
UD5
test1
214
234
200
213
245
test2
8
17
0
4
24
test3
36
86
18
22
108
test4
43
132
24
37
173
Form./ Instance
UD1
UD2
UD3
UD4
UD5
DDS1
238
1024
5944
2593
9677
DDS2
0
0
128
78
93
DDS3
0
0
22
11
22
DDS4
233
261
3988
6735
13064
DDS5
0
0
56
165
128
DDS6
5
11
2
10
185
DDS7
0
0
40
29
97
Table 3 Reference results
Learning from the reported experience with ETT, we hope to give to CTT a similar,
but hopefully more systematic, development that could converge rapidly to a mature
state.
Besides some earlier attempts to define a standard timetabling language [2,13,18],
a remarkable effort for CTT in this direction has been made by M¨ uller and Murray:
they published on the web [21] all their instances and the source code of the solution
methods [17]. Their approach is however somewhat complementary to our, as they
provide directly the general problem formulation with all its complex details. Our idea
instead has been to start with simpler formulations and add complexity in a controlled
way only when (and if) the time is mature for it. In our opinion, both can be useful
for the evolution of the field.
5 Discussion, Conclusions, and Future Work
In [23] we advocated for the necessity of developing a web application, the so-called
PMS (problem management system), rather than a simple web site for managing an
optimization problem. Our current web site is the first step toward the development
Page 10
10
of the complete PMS, which is currently under development. At present, the most
important feature that is still missing is the possibility for other researchers to add
(validated) solutions and new instances in an automatic way. Another remarkable fea-
ture that is under development is the visualization of the solution with the highlight
of the violations and penalties.
Regarding the problem, the full-fledged formulation used at the University of Udine,
with respect to the five proposed here, still contains some extra features:
– For most cost components, the hard and the soft version are both available to the
user. For example, it is possible to set soft conflicts for courses and soft unavail-
ability for teachers.
– There is a cost component dealing with the lunch break for students: at least one
slot among those around the lunch time should be free.
– If a room is too big for a class, this is also penalized (this is not only for the
unpleasant feeling that an empty room provokes, but also to save big rooms for
unforeseen activities).
– Weight assigned to soft violations are not fixed. The have a complex penalty scheme,
which depends also on the number of students in the curriculum.
These features are among the first candidates to be inserted in future formulations,
depending also on the general interest they rise.
Acknowledgments
We thank Marco Chiarandini for his comments of an earlier draft of this paper that
helped us to improve it.
We are grateful to Barry McCollum and the other members of the team of ITC-2
for their work for the organization of the competition.
Finally, we also thank Jakub Mareˇ cek and Harald Michalsen for fruitful discussions
about the formulation of Course Timetabling.
References
1. E. Burke and J. Newall. A multi-stage evolutionary algorithm for the timetable problem.
IEEE Transactions on Evolutionary Computation, 3(1):63–74, 1999.
2. E. Burke, P. Pepper, and J. Kingston. A standard data format for timetabling instances.
In E. Burke and M. Carter, editors, Proc. of the 2nd Int. Conf. on the Practice and Theory
of Automated Timetabling (PATAT-97), selected papers, volume 1408 of Lecture Notes in
Computer Science, pages 213–222, Berlin-Heidelberg, 1997. Springer-Verlag.
3. Edmund K. Burke, Jakub Mareˇ cek, Andrew J. Parkes, and Hana Rudov´ a. On a clique-
based integer programming formulation of vertex colouring with applications in course
timetabling. Technical Report NOTTCS-TR-2007-10, The University of Nottingham, Not-
tingham, 2007.
4. Edmund K. Burke, Jakub Mareˇ cek, Andrew J. Parkes, and Hana Rudov´ a. Penalising pat-
terns in timetables: Novel integer programming formulations. In Stefan Nickel and J¨ org
Kalcsics, editors, Operations Research Proceedings 2007, Operations Research Proceed-
ings, Berlin, 2008. Springer.
5. M. W. Carter. Carter’s test data.URL: ftp://ftp.mie.utoronto.ca/pub/carter/
testprob/, 2005. Viewed: March 13, 2007, Updated: June 7, 2005.
6. M. W. Carter, G. Laporte, and S. Y. Lee. Examination timetabling: Algorithmic strategies
and applications. Journal of the Operational Research Society, 74:373–383, 1996.
Page 11
11
7. S. Casey and J. Thompson. Grasping the examination scheduling problem. In Edmund
Burke and Patrick De Causmaecker, editors, Proc. of the 4th Int. Conf. on the Practice and
Theory of Automated Timetabling (PATAT-2002), selected papers, volume 2740 of Lecture
Notes in Computer Science, pages 232–244, Berlin-Heidelberg, 2003. Springer-Verlag.
8. Luca Di Gaspero, Barry McCollum, and Andrea Schaerf. The second international timeta-
bling competition (ITC-2007): Curriculum-based course timetabling (track 3). Technical
Report QUB/IEEE/Tech/ITC2007/CurriculumCTT/v1.0/1, School of Electronics, Elec-
trical Engineering and Computer Science, Queens University, Belfast (UK), August 2007.
ITC-2007 site: http://www.cs.qub.ac.uk/itc2007/.
9. Luca Di Gaspero and Andrea Schaerf. Tabu search techniques for examination timetabling.
In E. Burke and W. Erben, editors, Proc. of the 3rd Int. Conf. on the Practice and Theory
of Automated Timetabling (PATAT-2000), selected papers, volume 2079 of Lecture Notes
in Computer Science, pages 104–117. Springer-Verlag, Berlin-Heidelberg, 2001.
10. Luca Di Gaspero and Andrea Schaerf. Multi-neighbourhood local search with application
to course timetabling. In Edmund Burke and Patrick De Causmaecker, editors, Proc. of
the 4th Int. Conf. on the Practice and Theory of Automated Timetabling (PATAT-2002),
selected papers, volume 2740 of Lecture Notes in Computer Science, pages 262–275, Berlin-
Heidelberg, 2003. Springer-Verlag.
11. Luca Di Gaspero and Andrea Schaerf. Neighborhood portfolio approach for local search
applied to timetabling problems. Journal of Mathematical Modeling and Algorithms,
5(1):65–89, 2006. DOI: 10.1007/s10852-005-9032-z.
12. D. S. Johnson. A theoretician’s guide to the experimental analysis of algorithms. In M. H.
Goldwasser, D. S. Johnson, and C. C. McGeoch, editors, Data Structures, Near Neighbor
Searches, and Methodology: Fifth and Sixth DIMACS Implementation Challenges, pages
215–250. American Mathematical Society, 2002. Available from http://www.research.
att.com/~dsj/papers.html.
13. Jeffrey H. Kingston. Modelling timetabling problems with STTL. In E. Burke and W. Er-
ben, editors, Proc. of the 3rd Int. Conf. on the Practice and Theory of Automated Timeta-
bling (PATAT-2000), selected papers, volume 2079 of Lecture Notes in Computer Science,
pages 309–321. Springer-Verlag, Berlin-Heidelberg, 2001.
14. Barry McCollum. A perspective on bridging the gap in university timetabling. In E. Burke
and H. Rudov´ a, editors, Proc. of the 6th Int. Conf. on the Practice and Theory of Au-
tomated Timetabling (PATAT-2006), selected papers, volume 3867 of Lecture Notes in
Computer Science, pages 3–23, Berlin-Heidelberg, 2007. Springer-Verlag.
15. Barry McCollum, Paul McMullan, Edmund K. Burke, Andrew J. Parkes, and Rong Qu.
The second international timetabling competition: Examination timetabling track. Techni-
cal Report QUB/IEEE/Tech/ITC2007/Exam/v4.0/17, Queens University, Belfast (UK),
September 2007.
16. Liam Merlot. Public exam timetabling data sets. URL: http://www.or.ms.unimelb.edu.
au/timetabling, 2005. Viewed: March 13, 2007, Updated: October 13, 2003.
17. Keith S. Murray, Tom´ as M¨ uller, and Hana Rudov´ a. Modeling and solution of a complex
university course timetabling problem. In Proc. of the 6th Int. Conf. on the Practice and
Theory of Automated Timetabling (PATAT-2006), selected papers, pages 189–209, 2007.
18. E.¨Ozcan. Towards an XML-based standard for timetabling problems: TTML.
G. Kendall, E. Burke, S. Petrovic, and M. Gendreau, editors, Proc. of the 1st Multidisci-
plinary International Conference on Scheduling : Theory and Applications (MISTA-03),
selected papers, pages 163–185. Springer, 2005.
19. R. Qu. The exam timetabling site. URL: http://www.cs.nott.ac.uk/~rxq/ETTP.htm,
2006. Viewed: March 13, 2007, Updated: July 8, 2006.
20. R. Qu, E. Burke, B. McCollum, L. Merlot, and S.Y. Lee. The state of the art of exami-
nation timetabling. Technical Report NOTTCS-TR-2006-4, School of CSiT, University of
Nottingham, UK, 2006.
21. Tom´ aˇ s M¨ uller and Keith Murray. University course timetabling & student scheduling.
URL: http://www.unitime.org, 2008. Viewed: January 24, 2008, Updated: November 28,
2007.
22. Andrea Schaerf. A survey of automated timetabling.
13(2):87–127, 1999.
23. Andrea Schaerf and Luca Di Gaspero. Measurability and reproducibility in timetabling
research: Discussion and proposals. In E. Burke and H. Rudov´ a, editors, Proc. of the
6th Int. Conf. on the Practice and Theory of Automated Timetabling (PATAT-2006),
selected papers, volume 3867 of Lecture Notes in Computer Science, pages 40–49, Berlin-
Heidelberg, 2007. Springer-Verlag.
In
Artificial Intelligence Review,
View other sources
Hide other sources
- Available from Luca Di Gaspero · May 27, 2014
- Available from uniud.it