Adaptive Tabu Search for course timetabling
Post on 21-Jun-2016
Embed Size (px)
ng intent decs, eachrces sthis a5], emn. In t.s are
2007) . One of the main objectives of this competition is to re-duce the gap between research and practice within the area of edu-cational timetabling .
phases solution algorithm for solving the CB-CTT problem andinvestigating some essential ingredients of the proposed algo-rithm. The proposed ATS algorithm follows a general frameworkcomposed of three phases: Initialization, intensication and diver-sication (Section 3). The initialization phase builds a feasible ini-tial timetable using a fast greedy heuristic. Then the intensicationand diversication phases are adaptively combined to reduce thenumber of soft constraint violations while maintaining the satis-faction of hard constraints. The performance of the proposed
* Corresponding author. Address: LERIA, Universit dAngers, 2 Boulevard Lavoi-sier, 49045 Angers, France. Tel.: + 33 2 41 73 52 94.
E-mail addresses: firstname.lastname@example.org, email@example.com (Z. L), hao@
European Journal of Operational Research 200 (2010) 235244
Contents lists availab
European Journal of O
.einfo.univ-angers.fr (J.-K. Hao).two categories : exam timetabling and course timetabling.The latter can be further divided into two sub-categories: postenrollment-based course timetabling and curriculum-based coursetimetabling. The main difference is that for post enrollment timet-abling, conicts between courses are set according to the studentsenrollment data, whereas the curriculum-based course timetable isscheduled on the basis of the curricula published by the university.In this paper, our study is focused on the curriculum-based coursetimetabling (CB-CTT), which was recently proposed as the thirdtrack of the Second International Timetabling Competition (ITC-
difcult. In this context, exact solutions would be only possiblefor problems of limited sizes. Instead, heuristic algorithms basedon metaheuristics have shown to be highly effective. Examples ofthese algorithms include graph coloring heuristics , Tabu Search, simulated annealing , evolutionary algorithms , case-based reasoning , two-stage heuristic algorithms [8,10,17] andso on. Interested readers are referred to  for a comprehensivesurvey of the automated approaches for university timetablingpresented in recent years.
The objective of this paper is two-fold: Describing a three-1. Introduction
Timetabling is an area of increasiof both research and practice in recesists in assigning a number of eventtures, to a limited number of resouand soft) constraints. Typical cases intimetabling , sport timetabling [2transport timetabling  and so oan educational timetabling problem
Educational timetabling problem0377-2217/$ - see front matter 2008 Elsevier B.V. Adoi:10.1016/j.ejor.2008.12.007rest in the communityades. In essence, it con-with a number of fea-ubject to certain (hardrea include educationalployee timetabling ,his paper, we consider
usually classied into
For university curriculum-based course timetabling, a set of lec-tures must be assigned into timeslots and rooms subject to a givenset of constraints. Usually, two types of constraints can be dened:Those which must be strictly satised under any circumstances(hard constraints) and those which are not necessarily satisedbut whose violations should be desirably minimized (soft con-straints). An assignment that satises all the hard constraints iscalled a feasible timetable. The objective of the CB-CTT problem isto minimize the number of soft constraint violations in a feasibletimetable.
The general timetabling problem is known to be complex andITC-2007 2008 Elsevier B.V. All rights reserved.Innovative Applications of O.R.
Adaptive Tabu Search for course timetab
Zhipeng L a,b,*, Jin-Kao Hao a
a LERIA, Universit dAngers, 2 Boulevard Lavoisier, 49045 Angers, Franceb School of Computer Science and Technology, Huazhong University of Science and Tech
a r t i c l e i n f o
Article history:Received 13 September 2008Accepted 1 December 2008Available online 24 December 2008
Keywords:TimetablingHeuristicTabu SearchIterated Local SearchPerturbation operator
a b s t r a c t
This paper presents an Adaulum-based course timetaphases: initialization, intential timetable using a fasttion phase is used to reduchard constraints. The propnal double Kempe chains ntive search mechanism.algorithm, compared withalso shows an analysis to
journal homepage: wwwll rights reserved.g
gy, Wuhan 430074, China
e Tabu Search algorithm (denoted by ATS) for solving a problem of curric-g. The proposed algorithm follows a general framework composed of threecation and diversication. The initialization phase constructs a feasible ini-dy heuristic. Then an adaptively combined intensication and diversica-e number of soft constraint violations while maintaining the satisfaction ofATS algorithm integrates several distinguished features such as an origi-
hborhood structure, a penalty-guided perturbation operator and an adap-putational results show the high effectiveness of the proposed ATSreference algorithms as well as the current best known results. This paperain which are the essential ingredients of the ATS algorithm.
le at ScienceDirect
l sevier .com/locate /e jor
2.2. Problem formulation
We choose a direct solution representation for simplicity rea-sons. A candidate solution is represented by a pm matrix Xwhere xi;j corresponds to the course label assigned at period tiand room rj. If there is no course assigned to period ti and roomrj, then xi;j takes the value 1. With this representation we en-sure that there will be no more than one course assigned to eachroom in any period, meaning that the second hard constraint H2will always be satised. For courses, rooms, curricula and solutionrepresentation X, a number of symbols and variable denitions arepresented in Table 1.
Given these notations, we can describe the CB-CTT problem in aformal way for a candidate solution X. The four hard constraintsand the penalty costs for the four soft constraints are as follows:
H1. Lectures: 8ck 2 C,Xi1;...;p;j1;...;m
vfxi;j ckg lk;
where v is the truth indicator function which takes values of 1 ifthe given proposition is true and 0 otherwise.
Table 1Notations used for the CB-CTT problem.
n The total number of coursesm The total number of roomsd The number of working days per weekh The number of timeslots per working dayp The total number of periods, p d hs The total number of curriculaC Set of the courses, C fc1; ; cng, jCj nR Set of the rooms, R fr1; ; rmg, jRj mT Set of the periods, T ft1; ; tpg, jTj pCR Set of the curricula, CR fCr1; ;Crsg, jCRj sCrk The kth curriculum including a set of coursesli The number of lectures of course cil The total number of all lectures, l Pn1listdi The number of students attending course citci The teacher instructing course cimdi The number of minimum working days of course cicapj The capacity of room rjuav i;j Whether course ci is unavailable at period tj . uav i;j 1 if it is
unavailable, uav i;j 0 otherwise
perational Research 200 (2010) 235244The CB-CTT problem consists of a set of n courses C fc1;c2; . . . ; cng to be scheduled in a set of p periods T ft1; t2; . . . ; tpgand a set ofm rooms R fr1; r2; . . . ; rmg. Each course ci is composedof li same lectures to be scheduled. For simplicity and when noconfusion is possible, we do not distinguish between lecture, courseand course label in the following context. A period is a pair com-posed of a day and a timeslot, p periods being distributed in d dayshybrid algorithm was assessed on a set of 4 instances used in theliterature and a set of 21 public competition instances from ITC-2007, showing very competitive results (Section 4).
As the second objective of this paper, we carefully investigateseveral important features of the proposed algorithm (Section 5).The analysis shed light on why some ingredients of our ATS algo-rithm are essential and how they lead to the efciency of ourATS algorithm.
2. Curriculum-based course timetabling
2.1. Problem description
The CB-CTT problem consists in scheduling lectures of a set ofcourses into a weekly timetable, where each lecture of a coursemust be assigned a period and a room in accordance with a givenset of constraints . A feasible timetable is one in which all lec-tures have been scheduled at a timeslot and a room, so that thehard constraints H1 H4 (see below) are satised. In addition, afeasible timetable satisfying the four hard constraints incurs a pen-alty cost for the violations of the four soft constraints S1 S4. Then,the objective of the CB-CTT problem is to minimize the number ofsoft constraint violations in a feasible solution. The four hard con-straints and four soft constraints are:
H1. Lectures: Each lecture of a course must be scheduled in adistinct period and a room.
H2. Room occupancy: Any two lectures cannot be assigned inthe same period and the same room.
H3. Conicts: Lectures of courses in the same curriculum ortaught by the same teacher cannot be scheduled in the sameperiod, i.e., no period can have an overlapping of students norteachers.
H4. Availability: If the teacher of a course is not available at agiven period, then no lectures of the course can be assigned tothat period.
S1. Room capacity: For each lecture, the number of studentsattending the course should not be greater than the capacityof the room hosting the lecture.
S2. Room stability: All lectures of a course should be scheduledin the same room. If this is impossible, the number of occupiedrooms should be as few as possible.
S3. Minimum working days: The lectures of a course should bespread into the given minimum number of days.
S4. Curriculum compactness: For a given curriculum, a viola-tion is counted if there is one lecture not adjacent to any otherlecture belonging to the same curriculum within the same day,which means the agenda of students should be as compact aspossible.
We present below a mathematical formulation of the problemwhich is missing in the literature.
236 Z. L, J.-K. Hao / European Journal of Oand h daily timeslots, i.e., p d h. In addition, there are a set of scurricula CR fCr1;Cr2; . . . ;Crsg where each curriculum Crk is agroup of courses that share common students.conij Whether course ci and cj are conict with each other;
conij 0; if tcitcj ^ 8Crq ; ci R Crq _ cj R Crq;1; otherwise:
xi;j The course assigned at period ti and room rjnriX Number of rooms occupied by course ci for a candidate solution X;
rijX 1; if 8xk;j 2 X; xk;j ci;0; otherwise:
ndiX Number of working days that course ci takes place at in candidatesolution X; ndiX
bijX 1; if 8xu;v 2 X; xu;v ci ^ u=h j;0; otherwise:
appk;iX Whether curriculum Crk appears at period ti in candidate solution X;
1; if 8xi;j 2 X; xi;j cu ^ cu 2 Crk;appk;iX 0; otherwise:
f c mdi ndiX; if ndiX < mdi;
pera3 i 0; otherwise:
S4. Curriculum compactness: 8xi;j ck 2 X,f4xi;j
vfck 2 Crqg isoq;iX;
isoq;iX 1; if i mod h 1 _ appq;i1X 0;^ i mod h 0 _ appq;i1X 0;
With the above formulation, we can then calculate the total softpenalty cost for a given candidate feasible solution X according tothe cost function f dened in formula (1). The goal is then to nd afeasible solution X such that f X 6 f X for all X in the feasiblesearch space
f X Xxi;j2X
a1 f1xi;j Xci2C
a2 f2ci Xci2C
a4 f4xi;j; 1
a1, a2, a3 and a4 are the penalties associated to each of the soft con-straints. In the CB-CTT formulation, they are set as: a1 1;a2 1;a3 5;a4 2. Note that a1 a4 are xed in the problemformulation and should not be confused with the penalty parame-ters used by some solution procedures.
3. Solution method
Our Adaptive Tabu Search algorithm (ATS) follows a generalframework composed of three phases: initialization, intensicationand diversication. The initialization phase (Section 3.1) constructsa feasible initial timetable using a fast greedy heuristic. As soon asa feasible initial assignment is reached, the adaptively combinedintensication and diversication phase is used to reduce the num-ber of soft constraint violations. The intensication phase (Section3.2) employs a Tabu Search algorithm  while the diversicationphase (Section 3.3.1) is based on a penalty-guided perturbationoperator borrowed from Iterated Local Search . Furthermore,two self-adaptive mechanisms (Section 3.3.2) are employed to pro-vide a tradeoff between intensication and diversication.
3.1. Initial solution H2. Room occupancy: This hard constraint is always satisedusing our solution representation.
H3. Conicts: 8xi;j; xi;k 2 X; xi;j cu; xi;k cv ,conuv 0:
H4. Availability: 8xi;j ck 2 X,uavk;i 0:
S1. Room capacity: 8xi;j ck 2 X,
f1xi;j stdk capj; if stdk > capj;0; otherwise:
S2. Room stability: 8ci 2 C,f2ci nriX 1:
S3. Minimum working days: 8ci 2 C,
Z. L, J.-K. Hao / European Journal of OThe rst phase of our algorithm generates a feasible initial solu-tion satisfying all the hard constraints (H1 H4). This is achievedby a sequential greedy heuristic starting from an empty timetable,from which course assignments are constructed by inserting oneappropriate lecture into the timetable at each time. At each step,two distinct operations are carried out: one is to select an unas-signed lecture of a course, the other is to determine a period-roompair for this lecture.
In the lecture selection heuristic, the courses with a small num-ber of available periods and a large number of unassigned lectureshave priority. This heuristic is similar to the greedy coloring heu-ristic DSATUR . Once we have chosen one lecture of a courseto assign, we want to select a period among all available ones thatis least likely to be used by other unnished courses at later steps.For this purpose, when attempting to make a feasible insertionmove, we count the total number of unnished courses that be-come unavailable at the current period. The feasible lecture inser-tion moves with small value of this number are highly favored. Tiesare broken according to the soft constraint penalty incurred.
We have no proof that this greedy heuristic guarantees to nd afeasible solution for a given instance. However, for all the tested in-stances in this paper, a feasible solution is always easily obtained.Notice that infeasibility of the initial solution does not change thegeneral ATS approach since unsatised hard constraints can be re-laxed and incorporated into the evaluation function of the ATSalgorithm.
3.2. Tabu Search algorithm
In this section, we focus on the basic search engine of our ATSalgorithm Tabu Search . Our TS procedure exploits two neigh-borhoods (denoted by N1 and N2, see below) in a token-ring way. More precisely, we start the TS procedure with one neighbor-hood.When the search ends at its best local optimum, we...