Investigating Ahuja-Orlin's Large Neighbourhood Search for Examination Timetabling

Similar documents
Investigating Ahuja-Orlin s Large Neighbourhood Search Approach for Examination Timetabling

The Second International Timetabling Competition: Examination Timetabling Track

Benchmarking Curriculum-Based Course Timetabling: Formulations, Data Formats, Instances, Validation, and Results

Measurability and Reproducibility in University Timetabling Research: Discussion and Proposals

Jurnal Teknologi. A Modified Migrating Bird Optimization For University Course Timetabling Problem. Full paper

University of Groningen. Systemen, planning, netwerken Bosman, Aart

Seminar - Organic Computing

An application of Soft System Methodology

Given a directed graph G =(N A), where N is a set of m nodes and A. destination node, implying a direction for ow to follow. Arcs have limitations

A Comparison of Annealing Techniques for Academic Course Scheduling

A simulated annealing and hill-climbing algorithm for the traveling tournament problem

Multimedia Application Effective Support of Education

Learning Methods for Fuzzy Systems

ACTL5103 Stochastic Modelling For Actuaries. Course Outline Semester 2, 2014

Fragment Analysis and Test Case Generation using F- Measure for Adaptive Random Testing and Partitioned Block based Adaptive Random Testing

Laboratorio di Intelligenza Artificiale e Robotica

Radius STEM Readiness TM

ISFA2008U_120 A SCHEDULING REINFORCEMENT LEARNING ALGORITHM

Research Article Hybrid Multistarting GA-Tabu Search Method for the Placement of BtB Converters for Korean Metropolitan Ring Grid

Evolutive Neural Net Fuzzy Filtering: Basic Description

QuickStroke: An Incremental On-line Chinese Handwriting Recognition System

Rule Learning With Negation: Issues Regarding Effectiveness

Introduction to Simulation

OCR for Arabic using SIFT Descriptors With Online Failure Prediction

A Reinforcement Learning Variant for Control Scheduling

Team Formation for Generalized Tasks in Expertise Social Networks

Automating the E-learning Personalization

FUZZY EXPERT. Dr. Kasim M. Al-Aubidy. Philadelphia University. Computer Eng. Dept February 2002 University of Damascus-Syria

TABLE OF CONTENTS TABLE OF CONTENTS COVER PAGE HALAMAN PENGESAHAN PERNYATAAN NASKAH SOAL TUGAS AKHIR ACKNOWLEDGEMENT FOREWORD

Laboratorio di Intelligenza Artificiale e Robotica

AQUA: An Ontology-Driven Question Answering System

Lecture 1: Machine Learning Basics

Probabilistic Latent Semantic Analysis

Impact of Cluster Validity Measures on Performance of Hybrid Models Based on K-means and Decision Trees

A GENERIC SPLIT PROCESS MODEL FOR ASSET MANAGEMENT DECISION-MAKING

Class-Discriminative Weighted Distortion Measure for VQ-Based Speaker Identification

BMBF Project ROBUKOM: Robust Communication Networks

OPTIMIZATINON OF TRAINING SETS FOR HEBBIAN-LEARNING- BASED CLASSIFIERS

On the Combined Behavior of Autonomous Resource Management Agents

TIMSS ADVANCED 2015 USER GUIDE FOR THE INTERNATIONAL DATABASE. Pierre Foy

Decision Analysis. Decision-Making Problem. Decision Analysis. Part 1 Decision Analysis and Decision Tables. Decision Analysis, Part 1

Evolution of Symbolisation in Chimpanzees and Neural Nets

Solving Combinatorial Optimization Problems Using Genetic Algorithms and Ant Colony Optimization

An Investigation into Team-Based Planning

Designing a Rubric to Assess the Modelling Phase of Student Design Projects in Upper Year Engineering Courses

TD(λ) and Q-Learning Based Ludo Players

NUMBERS AND OPERATIONS

AN EXAMPLE OF THE GOMORY CUTTING PLANE ALGORITHM. max z = 3x 1 + 4x 2. 3x 1 x x x x N 2

Learning Methods in Multilingual Speech Recognition

Reinforcement Learning by Comparing Immediate Reward

Some Principles of Automated Natural Language Information Extraction

GACE Computer Science Assessment Test at a Glance

EECS 571 PRINCIPLES OF REAL-TIME COMPUTING Fall 10. Instructor: Kang G. Shin, 4605 CSE, ;

Python Machine Learning

A Generic Object-Oriented Constraint Based. Model for University Course Timetabling. Panepistimiopolis, Athens, Greece

Learning and Transferring Relational Instance-Based Policies

Introduction to Causal Inference. Problem Set 1. Required Problems

Rule discovery in Web-based educational systems using Grammar-Based Genetic Programming

Language properties and Grammar of Parallel and Series Parallel Languages

SARDNET: A Self-Organizing Feature Map for Sequences

Analysis of Hybrid Soft and Hard Computing Techniques for Forex Monitoring Systems

Visual CP Representation of Knowledge

Machine Learning from Garden Path Sentences: The Application of Computational Linguistics

What s in a Step? Toward General, Abstract Representations of Tutoring System Log Data

The Good Judgment Project: A large scale test of different methods of combining expert predictions

Artificial Neural Networks written examination

Major Milestones, Team Activities, and Individual Deliverables

AUTHORITATIVE SOURCES ADULT AND COMMUNITY LEARNING LEARNING PROGRAMMES

Evaluating Collaboration and Core Competence in a Virtual Enterprise

Level 6. Higher Education Funding Council for England (HEFCE) Fee for 2017/18 is 9,250*

Rule Learning with Negation: Issues Regarding Effectiveness

The 9 th International Scientific Conference elearning and software for Education Bucharest, April 25-26, / X

Discriminative Learning of Beam-Search Heuristics for Planning

ADVANCED MACHINE LEARNING WITH PYTHON BY JOHN HEARTY DOWNLOAD EBOOK : ADVANCED MACHINE LEARNING WITH PYTHON BY JOHN HEARTY PDF

Entrepreneurial Discovery and the Demmert/Klein Experiment: Additional Evidence from Germany

Applying Fuzzy Rule-Based System on FMEA to Assess the Risks on Project-Based Software Engineering Education

Evaluation of Usage Patterns for Web-based Educational Systems using Web Mining

Evaluation of Usage Patterns for Web-based Educational Systems using Web Mining

CS Machine Learning

CHAPTER 4: REIMBURSEMENT STRATEGIES 24

Cal s Dinner Card Deals

Visit us at:

Nottingham Trent University Course Specification

COMPUTER-ASSISTED INDEPENDENT STUDY IN MULTIVARIATE CALCULUS

School Competition and Efficiency with Publicly Funded Catholic Schools David Card, Martin D. Dooley, and A. Abigail Payne

Chapter 2 Rule Learning in a Nutshell

Data Structures and Algorithms

An Effective Framework for Fast Expert Mining in Collaboration Networks: A Group-Oriented and Cost-Based Method

Improving Fairness in Memory Scheduling

Abstractions and the Brain

Rover Races Grades: 3-5 Prep Time: ~45 Minutes Lesson Time: ~105 minutes

Guru: A Computer Tutor that Models Expert Human Tutors

Word Segmentation of Off-line Handwritten Documents

CSC200: Lecture 4. Allan Borodin

A Metacognitive Approach to Support Heuristic Solution of Mathematical Problems

Module 12. Machine Learning. Version 2 CSE IIT, Kharagpur

Foothill College Summer 2016

A Case-Based Approach To Imitation Learning in Robotic Agents

Math 181, Calculus I

Learning Structural Correspondences Across Different Linguistic Domains with Synchronous Neural Language Models

Transcription:

School of Computer Science and Information Technology University of Nottingham Jubilee Campus NOTTINGHAM NG8 1BB, UK Computer Science Technical Report No. NOTTCS-TR-2004-8 Investigating Ahuja-Orlin's Large Neighbourhood Search for Examination Timetabling Salwani Abdullah, Samad Ahmadi Edmund K. Burke and Moshe Dror First released: August 2004 Copyright 2004 Salwani Abdullah, Samad Ahmadi, Edmund K. Burke and Moshe Dror In an attempt to ensure good-quality printouts of our technical reports, from the supplied PDF files, we process to PDF using Acrobat Distiller. We encourage our authors to use outline fonts coupled with embedding of the used subset of all fonts (in either Truetype or Type 1 formats) except for the standard Acrobat typeface families of Times, Helvetica (Arial), Courier and Symbol. In the case of papers prepared using TEX or LATEX we endeavour to use subsetted Type 1 fonts, supplied by Y&Y Inc., for the Computer Modern, Lucida Bright and Mathtime families, rather than the public-domain Computer Modern bitmapped fonts. Note that the Y&Y font subsets are embedded under a site license issued by Y&Y Inc. For further details of site licensing and purchase of these fonts visit http://www.yandy.com

Investigating Ahuja-Orlin s Large Neighbourhood Search Approach for Examination Timetabling SALWANI ABDULLAH 1, SAMAD AHMADI 2, EDMUND K. BURKE 1, MOSHE DROR 3 1 Automated Scheduling, Optimization and Planning Research Group, School of Computer Science & Information Technology, University of Nottingham, Jubilee Campus, Wollaton Road, Nottingham NG8 1BB, United Kingdom. 2 School of Computing, De Montfort University, The Gateway, Leicester LE1 9BH, United Kingdom. 3 MIS Department, College of Business and Public Administration, University of Arizona, Tucson, Arizona 85721, USA. {sqa@cs.nott.ac.uk, sahmadi@dmu.ac.uk, ekb@cs.nott.ac.uk, mdror@bpa.arizona.edu} Abstract: Since the 1960 s automated approaches to examination timetabling have been explored and a wide variety of approaches have been investigated and developed. In this paper we build upon a recently presented, sequential solution improvement technique which searches efficiently over a very large set of adjacent (neighbourhood) solutions. This solution search methodology, originally developed by Ahuja and Orlin, has been applied successfully in the past to a number of difficult combinatorial optimization problems. It is based on an improvement graph construction of solution adjacency and identifies improvement moves by solving negative cost subset-disjoint graph cycles using a modified shortest path label-correcting algorithm. We have drawn upon Ahuja-Orlin s basic methodology to develop an effective automated exam timetabling methodology. We have evaluated our approach against the latest methodologies in the literature on standard benchmark problems. We demonstrate that our approach produces best known results and that it represents one of the strongest techniques in the literature on these problems. Keywords: examination timetabling, large neighbourhood, improvement graph, modified shortest path label-correcting algorithm. Correspondence to: Salwani Abdullah This work has been supported by the Public Services Department of Malaysia (JPA) and the University Kebangsaan Malaysia (UKM). Prof. Dror s contribution was funded by an EPSRC Visiting Fellowship (GR/S071241/01). 1

1. Introduction Examination timetabling represents a major administrative activity for academic institutions. It is often a difficult and demanding process and it affects a significant number of people. Indeed Romero [49] reports that there are three broad categories of people that are affected from its outcome: administrators, academic staff and students. Many universities are seeing an increasing number of student enrolments into a wider variety of courses and an increasing number of combined degree courses. This is contributing to the growing challenge of developing examination timetabling software to cater for the broad spectrum of constraints and demands that are required by educational institutions across the world. Examination timetabling problems have attracted the attention of the Operational Research and Artificial Intelligence communities for the last four decades. A wide variety of approaches for constructing examination timetabling have been described and discussed in the literature over the period. Carter [32] divided these approaches into four broad categories: sequential methods, cluster methods, constraint-based methods and meta-heuristics. Petrovic and Burke [48] extended this to also include multi criteria approaches, case based reasoning approaches, and hyper-heuristics and self adaptive approaches. Sequential methods for timetabling problems usually abstract the problem in the form of a graph where exams are represented as nodes. Conflicts between two exams are represented by an edge (de Werra [38], Burke et al. [29], and Carter and Johnson [35]). The construction of a conflict-free timetable is then modelled as a graph colouring problem which is a well known NP-hard problem. A variety of graph colouring based timetabling heuristics have been presented in the literature and for more details see a recent survey by Burke et al. [29]. Clustering based methods split exams into groups that satisfy hard constraints. The groups are then assigned to timeslots to fulfil the soft constraints. Examples of such approaches can be seen in Balakrishnan et al. [8], and White and Chan [56]. Constraint-based approaches to timetabling problems have appeared consistently in the literature over the last twenty years or so. Examples include David [37] and Boizumault et al. [10] and more examples can been seen in (Burke and Ross (eds) [19], Burke and Carter (eds) [12], Burke and Erben (eds) [14] and Burke and De 2

Causmaecker (eds) [13]). An overview of such approaches can be seen in Carter [32], and Carter and Laporte [33]. The last twenty years has also seen the emergence of a numerous metaheuristic approaches to examination timetabling which include simulated annealing, tabu search, genetic algorithms and hybrid approaches such as memetic algorithms. Thompson and Dowsland [53] investigated a 2 phase simulated annealing exam timetabling technique. The first phase finds a feasible solution and the second phase addresses the soft constraints. The Great Deluge Algorithm for exam timetabling by Burke et al. [28] has certain similarities with Simulated Annealing. However, this approach is far less dependent upon parameters. It needs just two parameters: the amount of computational time that the user wishes to spend and an estimate of the quality of solution that a user requires. An example of a tabu search based approach was presented by Di Gaspero and Schaerf [39]. They incorporated several features of graph colouring into their approach. White and Xie [57] employed a long term memory mechanism which was combined with tabu relaxation. Genetic Algorithms have been widely applied to examination timetabling. Example of such approaches can be seen in (Burke and Ross (eds) [19], Burke and Carter (eds) [12], Burke and Erben (eds) [14] and Burke and De Causmaecker (eds) [13]). Hybridization of evolutionary methods with other heuristics has been particularly effective. There have been several papers published in this area (e.g. Burke et al. [20,23] and Burke and Newall [15]). In the majority of timetabling algorithms, a single cost function is used to evaluate a subset of constraints. However multi criteria approaches to timetabling offer a more flexible way of handling different types of constraints simultaneously (see Petrovic and Burke [48]). In this approach each criterion measures the number of violations of the corresponding constraints as discussed in Burke et al. [24]. Petrovic and Bykov [47] applied a modified great deluge algorithm (from Burke et al. [28]) with dynamic weights which direct the search of the solution space along a trajectory by changing the acceptance level of the cost function values. Merlot et al. [46] applied a hybrid method that consists of constraint programming, simulated annealing and hill climbing for uncapacitated and capacitated examination timetabling and obtained the best known results on some benchmarks. Casey and Thompson [36] employed Greedy Randomized Adaptive 3

Search Procedure (GRASP) that produced the best result on one data set compared to other approaches in the literature (up until the publication of the results in this paper). Caramia et al. [31] employed a local search based method which include optimization step after allocating each exam) and obtained the best known results on several of the benchmark instances. Fuzzy reasoning has recently been investigated with some success for examination timetabling by Asmuni et al. [6]. Case Based Reasoning (see Burke et al. [25]) is an approach that is motivated by the human process of learning from previous experience and using that experience to solve new problems. An overview of case based reasoning for exam timetabling can be seen in Burke and Petrovic [18], Petrovic and Burke [48] and Burke et al. [30]. Ross et al. [50] observed that a fruitful area of research may be investigated Genetic Algorithms as a method for finding good timetabling algorithms rather than solving the problem directly. Indeed hyper-heuristics (which can be defined as heuristic to choose heuristics) are emerging as powerful approaches which are raising the level of generality of timetabling systems (e.g. see Terashima-Marín et al. [52], Burke et al. [27], Lan and Kendall [42,43], Burke and Petrovic [18], Petrovic and Burke [48], and Kendall and Hussin [45]). For more details about hyper-heuristics in general see Burke et al. [26]. Burke and Newall [17] have recently presented an adaptive heuristic approach which drew upon the squeaky wheel optimization methodology developed by Joslin and Clements [44]. This method reduces the dependency on the choice of heuristics. Indeed, in Burke and Newall [17] it is shown that poor heuristics can be automatically turned into good ones. Burke and Newall [16] hybridize this approach with the great deluge method by Burke et al. [28] to build a method which has the best known results on certain benchmark problem. Interested readers can find more details about examination timetabling research in the following papers by Schaerf [51], Carter [32], Carter and Laporte [33], de Werra [38], Bardadym [9], Burke et al. [21], Burke et al. [22], Burke and Petrovic [18], and Petrovic and Burke [48]. In this paper, we focus on a specific adaptation of a solution improvement technique which can search efficiently over a very large set of adjacent (neighbourhood) solutions. This search methodology was originally described by Ahuja et al. [2]. Our adaptation follows the procedure described by Ahuja et al. 4

[3] for solving the capacitated spanning tree problem. Most of the neighbourhood search algorithms in the literature use small size neighbourhood since they explicitly evaluate all neighbours. The most popular neighbourhood in the literature is the so called two-exchange neighbourhood (see Ahuja et al. [2]). Thompson and Orlin [54] proposed the cyclic exchange neighbourhood (this is a generalisation of the two-exchange neighbourhood). Successful applications which employ a cyclic exchange neighbourhood search for the vehicle routing problem have been presented by Thompson and Psaraftis [55], Fahrion and Wrede [40], and Gendreau et al. [41]. Another example of a very large neighbourhood approach is described in Ahuja et al. [3]. There they applied a large neighbourhood search methodology to the construction of a capacitated minimum cost spanning tree problem. The capacitated minimum cost spanning tree problem can be viewed as a fundamental problem in telecommunication network design. In Ahuja et al. [3], the authors created a neighbourhood structure by employing a linked node-exchange approach (by performing multi-exchange involving nodes from several rooted sub-trees) and a tree-based neighbourhood structure. This neighbourhood is substantially larger even of exponential size. The unification of the node-based and the treebased neighbourhood structure (called the composite neighbourhood structure) has also been explored and tested in Ahuja et al. [5] on capacitated minimum spanning tree problem. The results indicate that the composite algorithm was better than the node-based and the tree-based neighbourhood search algorithm. For more details on large neighbourhood search applied to hard combinatorial optimisation problems refer to Ahuja et al. [2,3,4,5]. This paper draws upon the research on large neighbourhood search described above to investigate its suitability as the basis of an approach to automated examination timetabling. The overall contributions that are presented in this paper as follows: We treat examination timetabling problem as a variant of the problem in which we partition the exams into subsets of disjoined cliques (nodes in a clique are linked with zero cost arc). Each such clique is assigned a timeslot. Cliques (subsets of exams) assigned to the same day are linked in a time chain. 5

We create a very large scale neighbourhood structure by employing a cyclic-exchange neighbourhood that is substantially larger than a twoexchange neighbourhood structure (by moving nodes from one clique to another and so on). We investigate large neighbourhood search techniques which are based upon an improvement graph to identify an improved neighbour implicitly without evaluating all the neighbours in the neighbourhood. We use a network flow optimisation technique called the modified shortest path label-correcting algorithm by Ahuja et al. [1] to find such neighbours by identifying a negative cost clique-disjoint cycle (or path) in the improvement graph. We investigate and adapt the search methodology from Ahuja et al. [3] to present a powerful and effective automated technique for examination timetabling. We present a rigorous evaluation of our algorithm by presenting a series of computational results on benchmark instances which are available in the literature. We compare our results against the best known methods from the literature. We conclude that our approach produces the best results on certain benchmark problems and that it represents one of the most effective approaches in the literature (on these benchmarks). This paper is organised as follows. The next section formally presents the examination timetabling problem. The solution approach adapted in Ahuja et al. [3] is outlined in section 3. In section 4, we develop and describe the implementation of Ahuja-Orlin s large neighbourhood to the examination timetabling problem. Our results are also presented, discussed and evaluated in this section. This is followed by some brief concluding comments in section 5. 2. Examination Timetablling Examination timetabling is concerned with allocating exams into a limited number of timeslots (periods) subject to a set of constraints (see Burke et al. [21]). The constraints are divided into two categories: hard and soft. Hard constraints must be completely satisfied and cannot be violated. Generally accepted hard constraints are: no resources (classrooms) can be demanded to be in more than one place at a time 6

the demand for the events (exams) scheduled must not exceed the resources available Solutions that satisfy all hard constraints are often called feasible solutions. No other solutions are considered. In this paper, we consider the hard constraints to be that no student can sit two exams simultaneously and that room capacity must not be exceeded. It is not absolutely necessary to satisfy soft constraints. They are desirable but not essential. A particularly common soft constraint refers to spreading exams as evenly as possible over the schedule as discussed in Burke et al. [21]. In real-world situation, it is usually impossible to satisfy all soft constraints, but minimising the violations of soft constraints represents an increase in the quality of the solution. 2.1 Problem Description This problem description is adapted from Burke et al. [28]. The input for the examination timetabling problem can be stated as follows N is a number of exams T is a given number of available timeslots M is a number of students C = (c ij ) NxN is a conflict matrix where each element denoted by c ij, i,j {1,,N} is the number of students taking exams i and j. The first series of experiment that we carry out in section 4 considers the proximity between two consecutive exams taken by a student as a measure of quality (once the hard constraints are satisfied). However, room capacity is not considered in this first series of experiments). The objective is to minimise the cost function, F c formulated as follows. where F c = N N 1 cij i= 1 j = i+ 1 proximity ( ti, t j ) M (1) subject to: ti t j 5 2 / 2 proximity( ti, t j ) = 0 if 1 t otherwise i t 5 j (2) 7

N 1 N ij i 1 j = i+ 1 ( t, t ) = 0 c x (3) i j where x ( t t ) i 1 if t i = t j, j = (4) 0 otherwise where t k (1 t k <T) which specifies the assigned timeslot for exam k (k {1,,N}). Equation 2 presents a proximity value between two exams and this value was suggested by Carter et al. [34]. For example if a student has two consecutive exams then a proximity value of 16 is assigned. If a student has two exams with a free timeslot in between then a value of 8 is assigned. The value will be 4 if there are 2 timeslots in between and so on. These values are summed up and divided by the number of students, M, to give an average penalty per student. Equation 3 represents a clash-free requirement so that no student is asked to sit two exams at the same time. The clash-free requirement is considered as a hard constraint. The second series of experiments that we undertake in section 4 deals with the capacitated problem where the constraint of room capacity is taken into account in addition to the clash-free requirement. We assume that exams start on Monday. Each week day has 3 timeslots. Saturday has 1 timeslot and Sunday has none. We can represent this as a vector. Indeed, Burke et al. [28] present the following vector which clearly demonstrates the idea: D T = {1,1,1,2,2,2,3,3,3,4,4,4,5,5,5,6,8,8,8,9,9,9,10,10,10,11,11,11,12,12,12,13,15,15,15,16,16,16 } (5) Corresponding timeslot vector = {1,2,3,4,5,6,7,8,9,.}. (6) We can see that there is just one 6 entry (one timeslot on the first Saturday 6 th day) and one 13 entry (one timeslot on the second Saturday 13 th day). Sundays (days 7 and 14) are missing altogether because there are no timeslots on Sundays. With this idea in mind we define D = (d t ) T to be the appropriate representation vector. The elements of the vector are represented by d t where t = 1,,T and T is the total number of timeslots available. For example, d 2 would be {2,2,2} and d 6 would be {6} (from equation 5). If the total examination period run for 2 weeks then T=32 (i.e. 10 working days with 3 timeslots each and two Saturdays with 1 timeslot each). The days should not be confused with the 8

timeslots (which will be numbered 1,,32 in the example above) (see equation 6). For example, if exam k were held in timeslot 4 then t k = 4. However d t = 2. k In the second of our series of experiment, we use an identical objective function (see Burke et al. [20]) that minimizes the number of students having two exams in a row on the same day. The formal presentation is as follows: where Adj N 1 F = c. Adj( t, t ) (7) c ( t t ) i= 1 subject to equation 3 and: where T t= 1 N ij j= i+ 1 1 if ( ti t j = 1) ^ ( d = d = 0 otherwise i j t i t j 1, 2 (8) ( S S). exc( S ) = 0 (9) t t 1 if S t > S exc ( S ) = (10) t 0 otherwise where S t is the number of students taking exams in timeslot t. Equation 9 represents the room capacity that states the number of seats S available in each timeslot. The total number of students taking exams in any timeslot S t should be less than or equal to S. 2.2 A Very Large Scale Neighbourhood for Examination Timetabling: Solution Approach To investigate solution procedures for examination timetabling which are based upon the methodologies of Ahuja et al. [3], we first have to present a tree representation for the exam timetabling problem. 2.2.1 Representation of the Problem The input for the initial feasible assignment of exams schedule is given as follows: H is the number of days P is the maximum number of timeslots used in one day We construct a tree with H chains in addition to a root node (dummy node). We represent the subset of exams to a timeslot m (m {1,,P} in day n (n ) 9

{1,,H}) as a cliques (subsets). S nm represents a subset of exams that are schedule in day n timeslot m. Figure 1 shows the tree construction for examination timetabling which just has one single large room (i.e. room capacity is not an issue). Root node (dummy node) Timeslot 1 Day 1 Day 2 Day 3 Day n Day H Timeslot 2 Timeslot m S nm Timeslot P Figure 1. Tree representation of exam timetabling problem 2.2.2 Cyclic Exchange Neighbourhood Consider a set of N exams in an exchange iteration represented as {E 1, E 2,, E N }. We create a neighbourhood structure by transferring single element among K subsets (cliques) where K is the maximum number of cliques. We present a cyclic exchange as E 1 E 2 E 3 E N E 1, where E 1, E 2,, E N are exams which belong to different cliques. This move is called a cyclic exchange. The exam E 1 moves from its current clique (a subset) to the clique that contains exam E 2, exam E 2 moves from its current clique to the clique that contains exam E 3, and so on, and finally exam E N moves from its current clique to the clique that contains exam E 1, thus completing a cycle of changes. A cyclic exchange is feasible if the result of the cyclic exchange is a feasible clique. Path exchange is defined similarly to cyclic exchange but without exchanging back to the original clique. The neighbourhood generated in this manner is extremely large. We will present a small illustrative example by assuming that we have a one day exam period with three timeslots and a set of seven exams given by N, where N {1,,7}. By employing the notation described above we have three cliques, S nm with n {1} and m {1,2,3}. Suppose that the three cliques are: S 11 = {E 2,E 3,E 7 }, S 12 = {E 4,E 6 } and S 13 = {E 1,E 5 } (see figure 2). To form a neighbourhood structure using a cyclic exchange operation, we select an exam from one clique (say E 3 ) from S 11 and insert it into S 12, E 6 moves from S 12 to S 13 10

and finally E 1 moves from S 13 to S 11, thus completing a cycle of changes (see figure 3). We represent a cyclic exchange as E 3 E 6 E 1 E 3 where E 3, E 6 and E 1 all belong to different cliques. This notation (E 3 E 6 E 1 E 3 ) can be read as E 3 goes to E 6 s old clique, E 6 goes to E 1 s old clique and E 1 goes to E 3 s old clique. After the cyclic exchange, S 11 = {E 2,E 1,E 7 }, S 12 = {E 4,E 3 } and S 13 = {E 6,E 5 } (see figure 4). The number of exams in each subset remains unchanged. Of course, the represented neighbourhood can be very large. S 11 S 12 E 2 E 7 E 6 E 3 E 4 E 1 E 5 S 13 Figure 2. Cliques before a cyclic exchange operation S 11 S 12 E 2 E 7 E 6 E 3 E 4 E 1 E 5 S 13 Figure 3. A cyclic exchange takes place S 11 S 12 E 2 E 7 E 3 E 1 E 4 E 6 E 5 S 13 Figure 4. Cliques after a cyclic exchange operation 11

2.2.3 Improvement Graph Once the neighbourhood is created, we proceed by defining a directed graph called an improvement graph. The improvement graph was introduced in Thompson and Orlin [54] and first explored in Thompson and Psaraftis [55]. The improvement graph for the cyclic exchange neighbourhood is defined with respect to the feasible partition S nm, (n {1,,H} and (m {1,,P}) and is represented by G. A directed arc in the improvement graph, for instance the directed arc (3,6) (see figure 5) signifies that exam E 3 leaves its current clique S 11 and moves to the clique contains exam E 6 (S 12 in this case) and at the same time exam E 6 leaves S 12. We refer to E 3 as an inserted exam, E 6 as an ejected exam, and S 12 as an old clique of the ejected exam. Taking into account the same simple illustrative example as the one presented in section 2.2.2, we construct the improvement graph by considering every pair of exams (E r,e z ) where r, z {1,,N}. We add the directed arc (E r,e z ) to G if and only if (i) the exams E r and E z belong to different cliques and (ii) the clique {E r } {the old clique which E z belonged to} \ {E z } is a feasible clique. 1,3 E 2 3,4 E 4 4,1 E 1 E 3 E 7 3,6 7,1 7,5 E 6 6,1 4,5 1,4 E 5 1,6 S 11 S 12 S 13 Figure 5. Improvement graph of the example in section 2.2.2 The original cost for all the cliques is defined as: H T n= 1 m= 1 F ({ S }) (11) c nm where F c is defined in section 2.1. After the cyclic exchanges, the cost for the clique is given by: cost of ({ inserted exam }) + cost of ({ old clique of the ejected exam }) cost of ({ ejected exam }). Thus, the cost for the directed arc is defined as: cost of ({ inserted exam } { old clique of the ejected exam }) \ { ejected exam }) cost of (( oldclique of the ejected exam }). We then resort to a network flow 5,6 12

optimization technique to find improving moves by heuristically solving negative cost clique-disjoint cycle (referred to as a valid cycle where exams in a cycle belong to a different clique) for the improvement graph using a modified shortest path label-correcting algorithm presented by Ahuja et al. [1]. 3. The Search Algorithm 3.1 An Algorithm for Examination Timetabling Problem Figure 6 illustrates the pseudo-code that is used in these experiments. The algorithm starts with a feasible initial solution. Then the cliques are created based on days and timeslots. We construct the improvement graph once. In each iteration in the do-while loop, we implement the modified shortest path labelcorrecting algorithm by Ahuja et al. [1] to find the negative cost clique-disjoint cycle (or path) for the improvement graph. The modified shortest path labelcorrecting algorithm is run several times with a different source exam (origin node), since the success of finding a valid cycle (or path) is related to the source exam from which the search is initiated. The probability of accepting a worse move is computed using Exponential Monte Carlo acceptance criteria (see Ayob and Kendall [7]) if there is no improvement in the cost function. We update the improvement graph after performing a cyclic (or path) exchange by recalculating the cost for the cliques that are involved in this exchange and the cost for every directed arc from/to these. The cost for the rest of the directed arcs remains unchanged. Figure 7 depicts the pseudo code for updating the improvement graph. 13

Obtain a feasible initial solution given as InitSol; From InitSol, create clique S nm {S 11,,S HT }, n {1,,H} and m {1,,P}; Given E as a set of exams N, then assign exams to S nm where S nm = {E 1,E 2,..,E q,,e N } such that q = 1 to N, exam E q is scheduled in day n timeslot m; Create the neighbourhood structure through cyclic exchange; Construct the improvement graph, G; Do while (not termination-criteria) Find a negative cost clique-disjoint cycle (or path) for G using modified shortest path label-correcting algorithm; if ( is non-positive, where represents the improvement in the objective function) Perform the cyclic (or path) exchange; else { /* Execute the exponential Monte Carlo acceptance criteria as below: */ δ = Sol Best Sol Cur where Sol Best is the best solution on hand and Sol Cur is a current solution obtained; Generate random number [0,1], given as RandNum; if (RandNum < e -δ ) Perform the cyclic (or path) exchange; else Perform best worse cyclic (or path) exchange; } Update the solution, SolUpdate; Create cliques S nm from SolUpdate; Update the G; End do; Figure 6. Pseudo-code for the examination timetabling problem 14

Identify the clique involved in a cyclic exchange, given as AffS vw where v {1,,H} and w {1,,P} and Q is maximum number of AffS vw ; Keep all the directed arc in the G that are not connected to/from AffS vw, given as NotAffArc ab where a,b E; Set counter = 1; while (counter < Q) Transfer every exam in Affs vw to other clique S nm, n {1,,H}, m {1,,P} v n and w m and does not violate the hard constraints, given as NewArc1 ef, where e,f E; Calculate the cost of NewArc1 ef ; counter++; end while counter=1; while (counter < K) Transfer every element in S nm to AffS vw for n v and m w and does not violate the hard constraints, given as NewArc xy, where f,g E; Calculate the cost of NewArc2 xy ; counter++; End for Combine NotAffArc ab, NewArc1 ef and NewArc2 xy as an improvement graph, G; Figure 7. Pseudo-code for updating the improvement graph 3.2 A Search Algorithm for A Cyclic Exchange We use a standard modified shortest path label-correcting algorithm by Ahuja et al. [1] to find improvement moves in the improvement graph. The basic idea of this algorithm is to find a shortest distance from one exam as a source exam to other exams. We maintain a predecessor index that records the prior exam in the current directed path. The details of the algorithm can be seen in Ahuja et al. [1]. We performed some initial tests to understand the behaviour of the algorithm by using different categories of the source exam while trying to find the shortest path in the improvement graph. Since our initial solution consists of exams with timeslots assigned to them and is sorted in descending order based on the number of clashes, we categorized this solution into three categories: first: high complexity. second: medium complexity. 15

third: low complexity. We choose the source exam randomly from each category. Our initial tests indicate that the source exam that was being selected from the medium complexity category was the most suitable compared to the other two categories because: i. If the source exam is taken from the high complexity group, it restricts further moves to look for a negative cost clique-disjoint cycle (or path) because this exam does not have many directed arc (connected edges) to other exams in the improvement graph. ii. If the source exam is taken from the low complexity group, it means that we try to move the exams with less clashes thus yielding less impact to the cost function. 4. Experiments and Results We demonstrate the strength of our approach by evaluating it on two sets of accepted benchmark problems: (i) The single room problem and (ii) The capacitated problem (where room capacities play a role). 4.1 The Uncapacitated Problem In this series of experiments we employ Micheal Carter s [34] collection of exam timetabling data that can be freely downloaded from archive at fttp://ftp.mie.utoronto.ca.pub/carter/testprob from different universities during 1983 1993. The Ahuja-Orlin s method described in this paper was run on the datasets as shown in Table 1 (taken from Carter et al. [34]). Table 1: Uncapacitated benchmark problems used Density of Conflict Matrix Data Institution Periods Number of Exams Number of Students car-f-92 Carleton University, Ottava 32 543 18419 0.14 car-s-91 Carleton University, Ottava 35 682 16925 0.13 ear-f-83 Earl Haig Colleagiate Institute, Toronto 24 190 1125 0.29 hec-s-92 18 81 2823 0.42 Ecole des Hautes Etudes Commerciales, Montreal 16

kfu-s-93 lse-f-91 rye-s-93 sta-f-83 tre-s-92 uta-s-92 ute-s-92 yor-f-83 King Fahd University, Dharan 20 461 5349 0.06 London School of Economic 18 381 2726 0.06 Ryeson University, Toronto 23 481 11483 0.07 St. Andrew s Junior High School, Toronto 13 139 611 0.14 Trent University, Peterborough, 23 261 4360 0.18 Ontario Faculty of Arts and Sciences, University 35 622 21267 0.13 of Toronto Faculty of Engineering, 10 184 2750 0.08 University of Toronto York Mills Collegiate Institute, Toronto 21 181 941 0.27 We ran the experiments for 100 iterations overnight (12 hours) for each of the datasets. The data sets with a small number of exams can complete 100 iterations in less than 12 hours but we used this amount of time on all the problems in order to be consistent. We note that examination is a problem that is usually tackled several months before the schedule is required. An overnight run for examination timetabling is perfectly acceptable in a real world environment. This is a scheduling problem where the time taken to solve the problem is not critical. We ran the experiments on the Athlon machine with a 1.2 GHz processor and 256 MB RAM. An initial solution to be fed to the Ahuja-Orlin s algorithm is generated by a saturation degree graph colouring heuristic (see Carter et al. [34], Burke et al. [29] and Brelaz [11]) which is known to be a reasonable and relatively quick. We carried out some additional experiments to test the distribution of the results. We executed five runs on six data sets. We present the Standard Deviations that are calculated as a percentage of the average for a given set of results. From the results presented in Table 2, it can be seen that in all cases, our algorithm improves the initial solution within a standard deviation of around 5% from the average, indicating that the results produced are consistent and do not include huge variations. 17

Table 2: Improvement results Data Initial Solution Percentage of Improvement Standard Deviation (%) Average Final Solution ear-f-83 52.80 30.09 5.03 36.91 hec-s-92 16.45 35.50 2.36 10.61 sta-f-83 175.23 13.82 0.45 151.02 tre-s-92 11.80 29.75 0.95 8.21 ute-s-92 36.63 30.42 2.51 25.15 Table 3 provides the comparison of our results with the previous state of the art given by Carter et al. [34] (several sequencing heuristics with backtracking), Di Gaspero and Schaerf [39] (hybrid tabu search), Burke and Newall [16] (a hybridised adaptive approach with the great deluge algorithm), Merlot et al. [46] (hybrid constraint programming, simulated annealing and hill climbing), and Casey and Thompson [36] (GRASP) and Caramia et al. [31] (local search based method which include optimization step after allocating each exam). Table 3: Results on the Uncapacitated Problem using Proximity Cost Data Our method Carter et al. Di Gaspero and Schaerf Burke and Newall Merlot et al. Casey and Thompson Caramia et.al car-f-92 4.36 6.2 5.2 4.10 4.3 4.4 6.0 car-s-91 5.21 7.1 6.2 4.65 5.1 5.4 6.6 ear-f-83 34.87 36.4 45.7 37.05 35.1 34.8 29.3 hec-s-92 10.28 10.8 12.4 11.54 10.6 10.8 9.2 kfu-s-93 13.46 14.0 18.0 13.90 13.5 14.1 13.8 lse-f-91 10.24 10.5 15.5 10.82 10.5 14.7 9.6 rye-s-93 8.74 7.3 - - 8.4-6.8 sta-f-83 150.28 161.5 160.8 168.73 157.3 134.9 158.2 tre-s-92 8.13 9.6 10.0 8.35 8.4 8.7 9.4 uta-s-92 3.63 3.5 4.2 3.20 3.5-3.5 ute-s-92 24.21 25.8 29.0 25.83 25.1 25.4 24.4 yor-f-83 36.11 41.7 41.0 37.28 37.4 37.5 36.2 The best results are presented in bold. Our algorithm produces better results on all problems when compared against the method of Di Gaspero and Schaerf [39]. Note that Di Gaspero and Schaerf [39] do not attempt the rye-s-93 data set. The algorithm produces better results than Carter et al. [34] on ten out of twelve data sets. Note that Carter et al. [34] use different heuristics in their paper (not one method across all problems). Our algorithm produces better results than Casey and Thompson [36] on eight data sets. Note that Casey and Thompson [36] do not attempt the rye-s-93 and the uta-s-92 data sets. Burke and Newall [16], and Merlot et al. [46] narrowly outperformed our method on three and four data sets respectively. Note that Burke and Newall [16] do not attempt the rye-s-93 18

data set and they reported the average individuals results. Burke and Newall s method has three of the best results across all these methodologies. Casey and Thompson s method has one best result of all (on the sta-f-83 data set). The method of Caramia et al. [31] produces better results than our approach on five of the twelve data sets. It has four of the best results across all the methods discussed here. Our algorithm obtained the best results on four benchmark problems (as did Caramia et al. s method). Figures 8 to 11 show the behaviour of the algorithm when applied to four of the data sets, hec-s-92, sta-f-83, ute-s-92 and yor-f-83 respectively. The search algorithm applied to the graph structure of timetabling solutions is able to find a valid improvement cycle (or path), and may consist of more than one move in a single iteration. Thus, this solution scheme helps in reducing the penalty cost when compared to a single move, which is normally used in many of the approaches employed for exam timetabling. Cost 18 16 14 12 10 8 6 4 2 0 1 3 5 7 9 11 13 15 17 19 21 23 25 Iteration hec-s-92 Figure 8. The behaviour of our algorithm on hec-s-92 Cost 180 175 170 165 160 155 150 145 140 135 1 4 7 10 13 16 19 22 25 28 31 34 37 Iteration sta-f-83 Figure 9. The behaviour of our algorithm on sta-f-83 19

Cost 40 35 30 25 20 15 10 5 0 1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 Iteration ute-s-92 Figure 10. The behaviour of our algorithm on ute-s-92 Cost 60 50 40 30 20 10 0 1 3 5 7 9 11 13 15 17 19 21 23 Iiteration yor-f-83 Figure 11. The behaviour of our algorithm on yor-f-83 The results in figures 8 to 11 indicate that the algorithm can escape from local optima by accepting local worse moves using the Exponential Monte Carlo acceptance criteria (see Ayob and Kendall [7]). 4.2 The Capacitated Problem We evaluated the performance of our method with five capacitated benchmarks. In this problem, we add another hard constraint (room capacity equation 7) in addition to the clash free requirement as stated in equation 3. The objective is to minimize the number of students having two exams in a row on the same day (equation 5). The characteristics of the datasets used are: Table 4: Capacitated benchmarks Data Periods Capacity tre-s-92 35 655 kfu-s-93 20 1955 car-f-92 31 2000 car-s-91 51 1550 uta-s-92 38 2800 20

The computational results from our algorithm are summarized in Table 5. The results obtained by our algorithm are compared with the published results by Burke et al. [30], Di Gaspero and Schaerf [39], Merlot et al. [46] and Caramia et al. [31] as shown in Table 5. Table 5: Results on Capacitated Problem Data Our method Di Gaspero and Schaerf Burke et al.. Merlot et al. Caramia et.al car-f-92 525 424 331 158 268 car-s-91 47 88 81 31 74 kfu-s-93 206 512 974 247 912 tre-s-92 4 4 3 0 2 uta-s-92 310 554 772 334 680 Once again the best results are presented in bold. Our algorithm obtained the best result for kfu-s-93 and uta-s-92 with 82.15% and 51.18% improvement respectively (with respect to the initial solution). It had 16.60% and 7.19% improvement (with respect to the result presented in Merlot et al. [46]). Our main competitor for the capacitated problem is the algorithm of Merlot et al. [46]. In the uncapacitated problem, Merlot et al. s did not obtain any best results but here it provides the best solution in three of five data sets. Our method gets the best results for two of the data sets. Our results are better and competitive than the other results published in the literature except on the car-f-92 data set, where our method performs quiet poorly. Figures 12 to 16 show the behaviour of our algorithm applied on these benchmarks. Figures 12, 13, 15 and 16 show that the solutions are trapped in the cycle. We believe that this causes a poor result on certain instances (e.g. car-f-92). In this situation, we need a mechanism to escape from the cycle to obtain a better solution. Such a mechanism is the subject of future work. 2500 2000 Cost 1500 1000 car-f-92 500 0 1 4 7 10 13 16 19 22 25 28 31 34 37 40 Iteration Figure 12. The behaviour of our algorithm on car-f-92 21

200 150 100 car-s-91 50 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 Iteration Figure 13. The behaviour of our algorithm on car-s-91 Cost 1400 1200 1000 800 600 400 200 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Iteration kfu-s-93 Figure 14. The behaviour of our algorithm on kfu-s-93 35 30 25 Cost 20 15 10 5 0 1 6 11 16 21 26 31 36 41 46 51 56 61 66 71 76 81 Iteration tre-s-92 Figure 15. The behaviour of our algorithm on tre-s-92 800 600 Cost 400 200 uta-s-92 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Iteration Figure 16. The behaviour of our algorithm on uta-s-92 22

5. Conclusion and Future Work In this paper, we modeled an improvement procedure for the examination timetabling problem as a variant of a very large-scale neighbourhood search structure through a cyclic exchange operation. We investigated the search ideas proposed by Ahuja et al. [3] for the capacitated minimum cost spanning tree problem. This is a new procedure in the timetabling arena and it finds improvement move which out performs the current state of the art on several benchmarks problems. We demonstrate that the solution quality is dependent upon the neighbourhood structure and the search approach. The key feature of our approach is that the combination of a very large neighbourhood structure (based on the concept of an improvement graph) and the technique of identifying improvement move by solving negative cost clique-disjoint cycle (or path) using a modified shortest path label-correcting algorithm. We also show that our cyclic exchange operation is for superior to simply employing two exchanges when defining a neighbourhood structure for examination timetabling. However, the limitation of our system is that a relatively long running time is needed to identify the improvement moves in the improvement graph that is proportional to the number of exams. We note that in real world situations, examination timetabling is an off line problem, and the processing time is not very critical. However, our future research work aims to shorten the required time to identify the improvement moves in the improvement graph. We also aim to investigate mechanisms to avoid cycling during the search process. 23

Reference 1. Ahuja RK, Magnanti LT and Orlin JB (1993) Network Flows: Theory, Algorithms, and Applications. ISBN 1000499012, Prentice Hall, New Jersey, pp 133-165 2. Ahuja RK, Orlin JB and Sharma D (2000) Very Large Scale Neighbourhood Search. International Transaction in Operational Research 7, 301-317 3. Ahuja RK, Orlin JB and Sharma D (2001) Multiexchange Neighbourhood Search Algorithm for Capacitated Minimum Spanning Tree Problem. Math Problem 91, 71-97 4. Ahuja RK, Ozlem Ergun, Orlin JB and Abraham O Punnen (2002) A Survey Of Very Large-scale Neighborhood Search Techniques. Discrete Applied Mathematics 123, 75-102 5. Ahuja RK, Orlin JB and Sharma D (2003) A Composite Neighbourhood Search Algorithm for Capacitated Spanning Tree Problem. Operations Research Letters 31, 185-194 6. Asmuni H, Burke EK and Garibaldi JM (2004) Fuzzy Multiple Ordering Criteria for Examination Timetabling. Accepted Paper for Practice and Theory of Automated Timetabling V (PATAT V) 7. Ayob M and Kendall G (2003) A Monte Carlo Hyper-Heuristic To Optimise Component Placement Sequencing For Multi Head Placement Machine. Proc. of the International Conference on Intelligent Technologies, InTech 03, Chiang Mai, Thailand, 132-141 8. Balakrishnan N, Lucena A and Wong RT (1992) Scheduling Examinations to Reduce Second Order Conflicts. Computers and Operation Research 19, 353-361 9. Bardadym VA (1996) Computer-Aided School and University Timetabling: The New Wave. In Edmund Burke and Peter Ross, editors, The Practice and Theory of Automated Timetabling. Lecture Notes in Computer Science 1153, 22-45. Springer-Verlag, Berlin 10. Boizumault P, DelonY and Peridy L (1996) Constraint Logic Programming For Examination Timetabling. Journal of Logic Programming, 29(2):217-233 11. Brelaz D (1979) New Methods to Color The Vertices of A Graph. Communication of the ACM 22(4), 251-256 12. Burke EK and Carter MW, editors, (1998) Practice and Theory of Automated Timetabling II, volume 1408 of Lecture Notes in Computer Science. Springer-Verlag 13. Burke EK and De Causmaecker P, editors, (2002) Practice and Theory of Automated Timetabling IV, volume 2740 of Lecture Notes in Computer Science. Springer-Verlag 14. Burke EK and Erben W, editors, (2000) Practice and Theory of Automated Timetabling III, volume 2079 of Lecture Notes in Computer Science. Springer-Verlag 15. Burke EK and Newall JP (1999) A Multi-Stage Evolutionary Algorithm for the Timetable Problem, the IEEE Transactions on Evolutionary Computation, Vol 3.1, pp. 63-74 16. Burke EK and Newall JP (2002) Enhancing Timetable Solutions with Local Search Methods.. In Edmund Burke and Patrick De Causmaecker, editors, The Practice and Theory of Automated Timetabling: Selected Papers from the 4 th International Conference, Lecture Notes in Computer Science 2740, 195-206. Springer-Verlag, Berlin 17. Burke EK and Newall JP (2004) Solving Examination Timetabling Problems through Adaption of Heuristic Orderings. Accepted for publication in Annals of Operations Research 18. Burke EK and Petrovic S (2002) Recent Research Direction in Automated Timetabling. European Journal of Operational Research 140, 266-280 19. Burke EK and Ross P, editors, (1996) Practice and Theory of Automated Timetabling I, volume 1153 of Lecture Notes in Computer Science. Springer-Verlag 20. Burke EK, Newall JP and Weare RF (1996) A Memetic Algorithm For University Exam Timetabling. In Edmund Burke and Peter Ross, editors, The Practice and Theory of Automated Timetabling: 24

Selected Papers from the 1 st International Conference, Lecture Notes in Computer Science 1153, 3-21. Springer-Verlag, Berlin 21. Burke EK, Elliman D, Ford PH and Weare D (1996) Examination Timetabling in British Universities A Survey. In Burke, E., and Ross,P., editors, The Practice and Theory of Automated Timetabling: Selected Papers from the 1 st International Conference, Lecture Notes in Computer Science 1153, 76-90. Springer-Verlag, Berlin 22. Burke EK, Jackson KS, Kingston JH and Weare RF (1997) Automated Timetabling: The State of the Art, The Computer Journal, Vol. 40, No. 9, pp 565-571 23. Burke EK, Newall JP and Weare RF (1998) Initialisation Strategies and Diversity in Evolutionary Timetabling. Evolutionary Computation Journal (special issue on Scheduling), vol 6.1, pp. 81-103 24. Burke EK, Petrovic S and Bykov Y (2000) A Multicriteria Approach to Examination Timetabling. In Edmund Burke and Peter Ross, editors, The Practice and Theory of Automated Timetabling: Selected Papers from the 3 rd International Conference, Lecture Notes in Computer Science 2079, 118-131. Springer-Verlag, Berlin 25. Burke EK, MacCarthy B, Petrovic S and Qu R (2000) Structured Cases in CBR Re-using and Adapting Cases for Timetabling Problems. Knowledge-Based Systems 13 (2-3), 159-165 26. Burke EK, Hart E, Kendall G, Newall JP, Ross P and Schulenburg S (2003) Hyper-Heuristics: An Emerging Direction in Modern Search Technology, Ch. 16 in Handbook of Meta-Heuristics, (eds. F. Glover and G. Kochenberger), pp 457 474, Kluwer 27. Burke EK, Kendall G and Soubiega E (2003) A Tabu-Search Hyper-Heuristic for Timetabling and Rostering, Journal of Heuristics, 9: 451-470 28. Burke EK, Bykov Y, Newall JP and Petrovic S (2004) A Time-Predefined Local Search Approach to Exam Timetabling Problem. To appear in IIE Transaction on Operations Engineering 29. Burke EK, Kingston J and de Werra D (2004) Applications to Timetabling, Handbook of Graph Theory, (editors, J. Gross and J. Yellen), pp 445-474, Chapman Hall/CRC Press 30. Burke EK, Petrovic S and Qu R (To appear 2005) Case Based Heuristic Selection for Timetabling Problems. Accepted for publication in the Journal of Scheduling 31. Caramia M, Dell Olmo P and Italiano GF (2001) New Algorithms for Examinations Timetabling. In Naher, S., Wagner, D., editors, Algorithm Engineering 4 th Int. Workshop, Proc. WAE 2000 Saarbrucken, Germany, September. Lecture Notes in Computer Science, Vol. 1982, 230-241. Springer-Verlag, Berlin Heidelberg New York 32. Carter MW (1986) A Survey Of Practical Applications of Examination Timetabling. Operations Research 34, 193-202 33. Carter MW and Laporte G (1996) Recent Developments in Practical Examination Timetabling. In Edmund Burke and Peter Ross, editors, The Practice and Theory of Automated Timetabling. Lecture Notes in Computer Science 1153, 3-21. Springer-Verlag, Berlin 34. Carter MW, Laporte G and Lee SY (1996) Examination Timetabling: Algorithmic Strategies and Applications. Journal of the Operation Research Society 74, 373-383 35. Carter MW and Johnson DG (2001) Extended Clique Initialization in Examination Timetabling. Journal of the Operation Research Society 74, 373-383 36. Casey S and Thompson J (2002) GRASPing the Examination Scheduling Problem. In Edmund Burke and Patrick De Causmaecker, editors, The Practice and Theory of Automated Timetabling: Selected Papers from the 4 th International Conference, Lecture Notes in Computer Science 2740, 232-244. Springer-Verlag, Berlin 37. David P (1997) A Constraint-Based Approach for Examination Timetabling Using Local Repair Technique. In E. Burke, M. Carter, editors, The Practice and Theory of Automated Timetabling: 25

Selected Papers from the 2 nd International Conference, Lecture Notes in Computer Science 1408, 169-186. Springer-Verlag, Berlin 38. de Werra D (1985) An Introduction to Timetabling. European Journal of Operations Research, 19, 151-162 39. Di Gaspero L and Schaerf A (2001) Tabu Search Techniques for Examination Timetabling. In Edmund Burke and Wilhelm Erbens, editors, The Practice and Theory of Automated Timetabling: Selected Papers from the 3 rd International Conference, Lecture Notes in Computer Science 2079, 104-117. Springer-Verlag, Berlin 40. Fahrion R and Wrede M (1990) On A Principle Of Chain Exchange For Vehicle Routing Problems (I- VRP). J. Oper. Res. Soc., 821-827 41. Gendreau M, Guertin F, Potvin JY and Seguin R (1998) Neighbourhood Search Heuristics For A Dynamic Vehicle Dispatching Problem With Pick-ups And Aeliveries. CRT-98-10 42. Han L and Kendall G (2003a) Guided Operators for a Hyper-Heuristic Genetic Algorithm. In proceedings of AI-2003: Advances in Artificial Intelligence. The 16th Australian Conference on Artificial Intelligence (AI'03) (eds Tamás D Gedeon and Lance Chun Che Fung), Perth, Australia, pp. 807-820, Dec 3-5 43. Han L and Kendall G (2003b) Investigation of a Tabu Assisted Hyper-Heuristic Genetic Algorithm. In proceedings of Congress on Evolutionary Computation (CEC2003), Canberra, Australia, Dec 8-12, pp. 2230-2237 (Vol. 3), IEEE Catalog Number: 03TH8674, ISBN: 0-7803-7804-0 44. Joslin DE and Clements DP (1999) Squeaky Wheel Optimisation. Journal of Artificial Intelligence Research, 10:353-373 45. Kendall G and Hussin MN (2004) An Investigation of a Tabu Search Based Hyper-heuristic for Examination Timetabling. Selected Papers for The 1 st Multidisciplinary International Conference on Scheduling: Theory and Applications (MISTA) 46. Merlot TG Liam, Boland N, Hughes DB and Stuckey J P (2002) A Hybrid Algorithm for the Examination Timetabling Problem. In Edmund Burke and Patrick De Causmaecker, editors, The Practice and Theory of Automated Timetabling. Lecture Notes in Computer Science 2740, 207-231. Springer-Verlag, Berlin 47. Petrovic S and Bykov Y (2002) A Multi-objective Optimisation Technique for Exam Timetabling Based on Trajectories. In Edmund Burke and Patrick De Causmaecker, editors, The Practice and Theory of Automated Timetabling: Selected Papers from the 4 th International Conference, Lecture Notes in Computer Science 2740, 181-206. Springer-Verlag, Berlin 48. Petrovic S and Burke EK (2004) University Timetabling, Ch. 45 in the Handbook of Scheduling: Algorithms, Models, and Performance Analysis (eds. J. Leung), Chapman Hall/CRC Press 49. Romero BP (1982) Examination Scheduling In A Large Engineering School: A Computer Assisted Participative Procedure. Interfaces 12, 17-23 50. Ross P, Hart E and Corne D (1997) Some Observations About GA-based Exam Timetabling. In Edmund Burke and Micheal Carter, editors, The Practice and Theory of Automated Timetabling: Selected Papers from the 2 nd International Conference, Lecture Notes in Computer Science 1408, 115-129. Springer-Verlag, Berlin 51. Schaerf A (1999) A Survey of Automated Timetabling. Artificial Intelligence Review, 13(2): 87-127 52. Terashima-Marín H, Ross P and Valenzuela-Rendón M (1999) Evolution of Constraint Satisfaction Strategies in Examination Timetabling. Proceedings of the Genetic and Evolutionary Conference, Orlando, FL. July 13-17, pp 635-642 53. Thompson JM and Dowsland KA (1998) A Robust Simulated Annealing Based Examination Timetabling System. Computers Operations Research, 25, 637-648 26