Use of Case Based Reasoning In Solving Examination ... - CiteSeerX

1 downloads 0 Views 103KB Size Report
Use of Case Based Reasoning In Solving Examination Timetabling Problems. Sanja Petrovic, Yong Yang and Moshe Dror. First released: January 2004.
School of Computer Science and Information Technology University of Nottingham Jubilee Campus NOTTINGHAM NG8 1BB, UK

Computer Science Technical Report No. NOTTCS-TR-2004-6

Use of Case Based Reasoning In Solving Examination Timetabling Problems Sanja Petrovic, Yong Yang and Moshe Dror

First released: January 2004

© Copyright 2004 Sanja Petrovic, Yong Yang 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

Use of Case Based Reasoning In Solving Examination Timetabling Problems Sanja Petrovic and Yong Yang School of Computer Science and Information Technology, The University of Nottingham, Nottingham NG8 1BB, UK. email: [email protected] email: [email protected]

Moshe Dror University of Arizona, Tucson, Arizona 85721, USA email: [email protected]

Abstract Examination timetabling problems are often solved by a two-phase procedure combining a sequential construction heuristic with a metaheuristic improvement search. There can be many combinations of pairing candidate sequential construction procedures with candidate metaheuristic improvement search algorithms. Different pairings of heuristics are known to produce solutions of varying quality. In this paper we propose a Case Based Reasoning methodology for selecting the pairing of appropriate sequential construction heuristic with the Great Deluge metaheuristic. We have thoroughly tested our solution approach and obtained the best results on a number of benchmark problems. In the course of this research we have addressed the issues related to the representation of timetabling problems, similarity measures for timetabling problems, and the retrieval process of solutions for similar timetabling problems. We report our results on extensive computational experiments and summarise the success of our approach.

Key Words: Timetabling, Case-Based Reasoning

1. Introduction Examination timetabling is of a great importance for educational institutions and has to be solved numerous times at each institution consuming expensive human and computer resources. Timetabling can be defined to be the problem of assigning a set of examinations into a given set of classrooms over a limited number of time periods in such a way that there are no conflicts between any two examinations. That is no student should be required to attend two examinations at the same time and no two exams should be assigned to the same classroom during overlapping time periods. The problem is somewhat analogous to the problem of coloring an undirected graph in which a vertex corresponds to an examination and an edge links two examinations if they have one or more students in common (Welsh and Powell, 1967). The task is to colour the vertices in such a way so that no two adjacent vertices are coloured by the same colour. In the examination timetabling context, colours corresponds to time slots. It means that no two examinations which are in conflict with each other should be scheduled in the same time slot. In addition, the examination timetabling problem

1

is characterised by the existence of various additional hard and soft constraints. Hard constraints are those that must be completely satisfied. An examination timetable – a solution to a timetabling problem is considered to be feasible only when all hard constraints are satisfied. Soft constraints are those that are not essential to the feasibility of a timetable, but their satisfaction is highly desirable. One soft constraint often in use is to provide a two or three day interval for each student between two of his/her consecutive examinations. In practice, it is impossible to fully satisfy all soft constraints and usually the quality of an examination timetable is evaluated by some measure of satisfaction of soft constraints. A review of the variety of constraints imposed on examination timetabling can be found in Burke et al. (1996).

1.1. Metaheuristics for Examination Timetabling In general, the examination timetabling problem is known to be NP-complete (Garey and Johnson, 1977). It can be modelled as an integer linear programming problem (Johnson, 1990), but in practice it cannot be solved by exact optimisation techniques due complexity and the large size of the real-life problems. Over the last forty years, a large number of heuristics have been successfully developed for solving university timetabling problems.

Early research on timetabling (Carter, 1986; Foxley and Lockyer, 1968) was focused on heuristics for solving graph colouring problems because of the close link between the examination timetabling problems and the graph-coloring. The main idea of these heuristics is to schedule examinations sequentially, one by one, commencing with the examinations which are considered the most “difficult” for scheduling. However, different heuristics estimate the “difficulty” of each examination in different ways. A large number of sequential heuristics have been proposed and widely employed in many timetabling studies. The drawback of these heuristics is that their performance can vary significantly for different problem instances (Carter, Laporte, and Lee, 1996).

In recent years a number of metaheuristics have been successfully employed for solving examination timetabling problems. These techniques can take into consideration soft constraints and thus generate more satisfactory solutions. In

2

practice, timetabling problems are often solved by a two phase approach. In the first phase, an initial solution is iteratively constructed by using a sequential heuristic, and then the solution is gradually improved by a certain metaheuristic. Thompson and Dowsland (1996) used sequential heuristics to find a feasible solution and applied simulated annealing in the next stage to handle the soft constraints. Burke and Newall (1998) employed sequential heuristics to decompose a large problem into several subproblems, which were then solved by the memetic algorithm. Gaspero and Schaerf (2001) hybridised a sequential heuristic that is based on the examination enrollment and a tabu search.

Because of the varied performance of these approaches, a natural question arises as to the appropriate (successful) pairing of heuristics: which sequential heuristic should be applied with a given metaheuristic for solving the problem at hand? In practice, in order to obtain a preferred solution for a given problem, a timetable administrator has to invest great effort in order to properly “tailor” a sequential heuristics and a metaheuristics utilising the domain-specific knowledge of the problem. Moreover, the performance of some metaheuristics is known to be highly dependant on the parameter values. For example, the settings of the cooling parameters play a very important role in the simulated annealing (Thompson and Dowsland, 1996). In general, many approaches were developed specifically for solving one particular class of real world problems. As result, their performance may vary from one problem instance to another (Burke et al., 2003d). The development of more general timetabling approach that can solve a variety of problems with different characteristics equally well has attracted the attention of timetabling community.

Recently, there have been some attempts to reduce the effort required in selection of a particular appropriate metaheuristic. Burke et al. (2003c) proposed an approach based on Great Deluge Algorithm (GDA). It required for input value the time allocated for the search and the initial value of the cost function (which can be obtained by a simple algorithm such as Hill-climbing). They showed that in comparison with other metaheuristics, their approach requires less effort to “tailor” it for a given problem and produces high quality solutions. Following this result, Burke and Newall (2003a, 2003b) proposed an adaptive heuristic initialisation to construct an initial solution for GDA. 3

The research into hyper-heuristics for examination timetabling gave promising results. Hyper-heuristics is defined as ‘the process of using (meta-)heuristics to choose (meta)heuristics to solve the problem in hand’ (Burke et al., 2003a). Terashima-Marín, Ross, and Valenzuela-Rendón (1999) proposed a hyper-heuristic Evolutionary Approach for solving examination timetabling problems. In their approach, chromosomes encode different sequential heuristics, parameter value settings, and the conditions for swapping sequential heuristics during the search process. The timetable is built by using the best chromosome founded by a genetic algorithm.

1.2. Case-Based Reasoning in Scheduling Case Based Reasoning (CBR) is a methodology which originated in artificial intelligence community as an effective alternative to traditional rule-based systems for generating intelligent decisions in weak-theory application domains (Deng, 1996; Kolodner, 1993; Watson and Marir, 1994). Instead of defining the set of rules or general guidelines, CBR systems solve the new problem by reusing previous similar problem solving experience. The assumption is that similar problems will have similar solutions. CBR comprises four steps: retrieve a case that is the most similar to the new input problem, reuse and revise the solution of the retrieved case to generate a solution for the new problem, and retain the new input problem and its solution as a new case in the case base.

In the domain of scheduling, some researchers have resorted to CBR to enhance the flexibility and robustness of scheduling. Broadly speaking, current CBR applications in the domain of scheduling can be classified into three categories: algorithm reuse, operator reuse, and solution reuse. The basic assumption underlying the CBR scheduling systems in the first category is that it is likely that an approach proved to be effective for solving a specific problem will be also effective for solving a similar problem. In such CBR systems, a case consists of a problem representation, and an algorithm known to be effective for its solving. Schmidt (1998) designed a CBR framework to choose an appropriate algorithm for a given production scheduling problem. Schirmer (2000) implemented a similar CBR system for solving project scheduling problems.

4

The CBR scheduling systems in the second category reuse the operators for solving the new input problem. A case in these systems is a context in which a previously used scheduling operator proved to be useful. Miyashita and Sycara (1995) built a CBR system called CABINS for solving job scheduling problems in which suboptimal solutions are improved by applying iteratively a number of moves operators, chosen by CBR. Petrovic, Beddoe, and Berghe (2003) developed a CBR system for nurse rostering problems in which the constraint satisfaction procedure is driven by iteratively using scheduling repair operators used in previously encountered similar situations. Burke at al. (2003b) proposed a novel case based hyper-heuristic to solve timetabling problems. A timetable is constructed by applying iteratively a number of heuristics, which are selected by a CBR controller.

In the CBR scheduling systems of the third category, it is the whole or part of the solutions of the previous problems that are reused to construct the solution for the new problem. A case contains a problem description and its solution. This method has been applied for solving job scheduling problems (Coello and Santos, 1999) and university course timetabling problems (Burke et al., 2001). It also has been employed to construct initial solutions of metaheuristics, such as simulated annealing (Cunningham and Smyth, 1997) and genetic algorithms (Louis, 1997; Oman and Cunningham, 2001).

The weakness of the CBR scheduling systems in the first two categories is that they cannot make use of the solutions of the past problems directly. Thus, previous computational efforts for solving past problems are wasted. However, solution reuse can be valuable only when the new input problem is highly similar to problems in the case base (Burke and Petrovic, 2002). The main drawback is that solutions retrieved from one instance may not be used for solving other similar problems, because small differences in constraints of the two timetabling problems may lead to completely different solutions (Burke et al., 2001). It was shown in Burke et al. (2001) that instead of reusing the whole solution, a certain number of complex cases with “rich” set of constraints stored in a case base can provide good substructures for solutions for new timetabling problem.

5

The aim of our research is to investigate algorithm reuse options in solving examination timetabling problems. We have chosen the Great Deluge algorithm as the second phase algorithm in our experimentation. This is due to the simplicity of use in terms of required parameters and to the high quality results for examination timetabling. Initialisation phase of Great Deluge algorithm greatly impacts the quality of the final solution. We aim to test whether a sequential heuristic when paired with the GDA provided a “good” starting point for GDA search in solving a particular timetabling problem will be good for GDA initialisation when solving a similar timetabling problem. A CBR system (Petrovic, Yang, and Dror, 2003) was developed to utilise the knowledge/experience of initialisation of GDA obtained when solving a timetabling problem. In the timetabling context, a case consists of two parts: an undirected weighted graph representing the examination timetabling problem, and a description of the sequential heuristic that was used to construct a good initial solution for GDA. The calculation of similarity between two cases is based on the graph isomorphism and we will return to in more detail later in the paper.

The selection of the sequential heuristic for a new input problem is made through the following steps: the similarity of the input problem with each problem in the stored case base system is calculated. A case that is the most similar to the new input problem is retrieved, and the associated sequential heuristic of the retrieved case is proposed for the new problem. Then, the problem is solved by GDA, after the proposed sequential heuristic is used to construct the initial solution. The proper definition of the similarity measure is the key to the successful implementation of the whole system. In general, the CBR system effectiveness depends on a respective definition of the similarity measure, while the system efficiency is determined by the speed of the retrieval process.

In this paper, we present a new CBR approach which aims to improve the system effectiveness and efficiency by introducing a new representation and indices of timetabling problems and new similarity measures. Section 2 provides a brief introduction to GDA and different sequential heuristics that are often used for the initialisation phase. Section 3 presents the details of the new CBR system. A series of experiments have been designed to validate the proposed solution methodology; proving that the initialisation phase affects the second phase-GDA search and that the 6

experience gained in the initialisation for one timetabling problem can be utilized for solving a new problem (Section 4). Section 5 presents the experimental results obtained on benchmark problems. Section 6 draws conclusions and suggests future research work.

2.

Great Deluge Algorithm and Sequential Heuristics

2.1. Great Deluge Algorithm Great Deluge Algorithm (GDA) is a local search method proposed by Dueck (1990) for solving combinatorial optimisation problems. Compared to the well known simulated annealing (SA) approach (Kirkpatrick, Gelatt, and Vecchi, 1983), GDA uses a simpler acceptance rule for dealing with the move that results in a decrease in the solution quality. Such a worse intermediate solution can be accepted as long as the decrease of the solution quality is smaller than a given upper boundary value, referred to as ‘water-level’. Water-level is initially set to be equal to the penalty of the initial solution multiplied by a predefined factor. After each move, the value of the waterlevel is decreased by a fixed rate, which is calculated based on the time that is allocated for the search (expressed as the total number of moves). One important characteristic of GDA is that better solutions could be obtained with the prolongation of the search time of the algorithm (Burke et al., 2003c). This may not be valid in other local search algorithms in which the search time cannot be controlled.

2.2. Sequential Heuristics A variety of sequential heuristics can be used to construct initial solutions for GDA. For instance, by sorting examinations based on the estimated difficulty of their scheduling (Carter, 1986). Heuristics that will be used in this research are briefly described below: (1) Largest Degree (LD). Examinations with the largest number of conflicts are scheduled first. (2) Largest Enrollment (LE). It is a modification of LD and takes into consideration the number of students involved in the examination. It schedules examinations with the largest student enrollment first.

7

(3) Largest Colour Degree (CD). It is a dynamic version of LD. It prioritises examinations with the largest number of conflicts that they have with already scheduled examinations. (4) Largest Weighted Degree (LWD). LWD is a combination of LD and LE. The highest priority is given to the examination with the largest sum of the weighted conflicts, where each conflict is weighted by the number of students who are enrolled in both examinations. (5) Least Saturation Degree (SD). Examinations with the least number of available periods for placement are scheduled first.

These sequential heuristics can be enriched in a variety of ways. The most common ones are listed below: (1) Maximum Clique Detection (MCD). The maximum clique is the largest completely connected subgraph of a graph. The cardinality of the maximum clique determines the lower bound on the number of time periods needed to obtain a feasible solution of the timetable (Carter, 1986). Finding the maximum clique is an NP-hard problem. Vertices of the maximum clique are regarded as the most difficult examinations to schedule and therefore should be scheduled first (Carter, Laporte, and Lee, 1996). In this research, a tabu search heuristic approach proposed by Gendreau, Soriano, and Salvail (1993) was implemented to find the vertices of the heuristic solution for the maximum clique of a given graph. (2) Adding Random Elements (ARE). The examination to be scheduled next is selected from a subset of randomly chosen examinations (Burke, Newall, and Weare, 1998). The size of the subset is given as a percentage of the full set of examinations. (3) Backtracking (BT). Some examinations cannot be assigned to any time period without violating hard constraints. In order to schedule these examinations, some previously scheduled examinations that are in conflict with the examination at hand are rescheduled. Several rules are defined to prevent cycles (Laporte and Desroches, 1984).

Sequential heuristics investigated in this research are hybridised with MCD, and/or BT, and ARE where the size of the subset of examinations to choose from is 30% or 70% of examinations not yet scheduled. Such a hybridised heuristic is denoted by a 48

tuple H = (C, MCD, BT, ARE), where C denotes a sequential heuristic, C∈{LD, LE, CD, LWD, SD}, MCD∈{0, 1}, BT∈{0, 1}, ARE∈{30%, 70%}. In the remaining part of the paper we will demonstrate that the selection of a suitable heuristic for construction of the initial solution for the GDA is of great importance, because it can significantly affect the quality of the final solution.

3.

CBR System For Examination Timetabling

In this section, a new CBR system developed for GDA initialisation is described. The architecture of the CBR system is provided in Figure 1. The system consists of 3 modules: Case Retrieval, Case Reuse and Case Retain. Case Retrieval selects the case most similar to the new timetabling problem, while Case Reuse module takes the heuristic of the retrieved case and applies it to the problem generating an initial solution ready for the application of the GDA. The new timetabling problem is solved by GDA, and it is stored together with the heuristic used for the GDA initialisation in the Case Retain module. Case Retain New Problem Case Retrieval Feature-Based Case Retrieval

New Case

Case Base

Subset CB

Tabu Search Algorithm Retrieval Retrieved Case Case Reuse

Construct an Initial Solution By the Retrieved Sequential Heuristic Apply Great Deluge Algorithm Solution

Figure 1. Architecture of the CBR System for Timetabling

In the remainder of the section, the modules are described in more details together with the following issues: the representation of an examination timetabling problem, identification of indices that are useful for the retrieval process, similarity measures, and the hierarchical case retrieval.

9

3.1. Case Representation Timetabling problems are usually represented as graphs where vertices represent exams while edges denote conflicts between exams (the exams are in conflict if they have common students). For illustration purposes, a part of an examination timetabling problem (with 4 exams) is depicted in Figure 2. The left part of the figure shows the students enrollment record while the right part shows the associated graph, G = (V, E), where V is the set of vertices that represent examinations while E ⊆ V × V is the set of edges that represent conflicts between two examinations. For example, there Student ID. 2000101 2000102 2000103 2000104 2000105 2000106 2000107

Enrolled Examination AI; PR1 C. AI; PR1 C. AI; PR1 C. AI; Physics. Math; PR1 C. Math; PR1 C. Physics: PR1 C.

PR1.C.

Math

AI

Physics

Fig. 2. A simple examination timetabling problem (left) and its graph representation (Right)

is an edge connecting AI and Physics because there is one student (ID.2000104), who needs to take both exams. The corresponding graph enables representation of the complex structure of an examination timetabling problem. However, graph representation imposes a burden on the retrieval process. Namely, the problem of finding a graph (referred to as a case in the case base) with the most similar structure to the new timetabling problem is equivalent to the problem of graph isomorphism, which is known to be NP-complete.

A case base system may contain a large number of cases. In order to enable the faster retrieval process the filtering phase is defined whose purpose is to select a subset of cases from a given case base based on properties that reflect the size and the complexity of the problem: number of examinations, number of enrollments, number of timeslots available and the density of the conflict matrix. The conflict matrix is used to represent the conflicts between a pair of examinations. Rows and columns of the matrix represent examinations, while each element of the matrix shows the number of students common for a pair of examinations. The density of the conflict matrix is calculated as the ratio of the number of exams in conflict to the total number of exams. These properties of timetabling problems which are used for the case base

10

filtering will be referred to as shallow properties, while properties represented by a graph will be denoted as deep properties.

A case C is defined as C = (F, G, H), where F is the feature set which contains the shallow properties of the problem, G is the undirected graph which represents the deep properties of the problem, H is the sequential heuristic that has constructed a good initial solution for GDA and thus led GDA to generate a final solution of high quality.

3.2. Similarity Measure Before we present the similarity measures defined for our retrieval process, we introduce the notation. We denote a new input problem to be solved (the query case) by Cq = (Fq, Gq, Hq) and a source case stored in the case base by Cs = (Fs, Gs, Hs). Three similarity measures are defined for calculating the similarity degree between two cases based on the shallow and deep properties, and the general similarity degree between the two cases.

3.2.1.

Similarity Measure based on the Shallow Properties

The similarity degree between two cases based on the shallow properties represented by the feature sets Fq and Fs is calculated as the nearest neighbour (Liao, Zhang, and Mount, 1998): SIM f (Fq, Fs) = 1 −

2 1 n ∑ distance( fqi, fsi ) i = 1 n

(1)

where n is the number of features, and fqi , fsi are the values of ith feature in Fq and Fs, respectively, and the distance between two feature values fqi and fsi is defined as:

distance(fqi, fsi) =

fqi − fsi fmaxi − fmini

(2)

the values fmaxi and fmini are the maximum and minimum values of the i feature recorded in the case base.

11

3.2.2.

Similarity Measure based on the Deep Properties

In order to calculate the similarity degree between two timetables based on deep properties a graph (or sub-graph) isomorphism has to be established between their associated undirected graphs: Gq = (Vq, Eq) and Gs = (Vs, Es). A graph-isomorphism is presented by a vertex-to-vertex correspondence f: Vq → Vs which associates vertices in Vq with those in Vs. The similarity between the vertices and edges is defined in order to evaluate the quality of the established isomorphism (Wang and Ishii, 1997). Vertices and edges of two graphs Gq and Gs are denoted by Latin and Greek letters, respectively. The similarity degree between two vertices a and χ on the correspondence f is defined as follows: DSf (a, χ) =

1,

If f (a) = χ

0,

otherwise

(3)

The similarity degree between two edges x and γ, where x = (a, b) ∈ Eq and γ = (χ, δ) ∈ Es, on the correspondence f is denoted by DSf (x, γ):

DSf (x, γ) =

1,

If f (a) = χ and f (b) = δ

0,

otherwise

(4)

Denote by φ an extraneous vertex or edge which is not mapped by the correspondence f. Then DSf (a, φ ), DSf ( φ ,χ), DSf ((a, b), φ ) and DSf ( φ , (χ, δ)) are equal to 0.

The similarity degree DSf (Gq, Gs) between two undirected graphs Gq and Gs on correspondence f is calculated as:

DSf (Gq, Gs) =

Fv + Fe Mv + Me

(5)

where

Fv = ∑ ∑ DSf (a, )

(6)

Fe = ∑ ∑ DSf ( x, )

(7)

Mv = Min (|Vq|, |Vs|)

(8)

Me = Min (|Eq|, |Es|)

(9)

a∈Vq ∈Vs

x∈Eq ∈Es

12

where |V| and |E| denote the cardinality of the sets V and E, respectively. The goal of the retrieval process is to find an isomorphism (a graph mapping) which yields the maximum similarity degree. A Tabu search algorithm has been developed to find such an isomorphism (Petrovic, Kendall, and Yang, 2002). In this research, this algorithm has been modified to accommodate the new timetabling representation by undirected graphs and new similarity measure.

3.2.3.

General Similarity Measure between Two Cases

In order to retrieve the timetabling problem from the case base which is useful for solving a new one, the two respective problems must be similar on both the shallow and the deep properties. The general similarity degree between two cases, Cq and Cs, denoted by SIM (Cq, Cs), is calculated in the following way: SIM (Cq, Cs) = SIM f (Fq, Fs)m · SIM g (Gq, Gs)

(10)

where m ∈ R is used to assign higher/lower importance to shallow properties in the retrieval process.

3.3. Hierarchical Case Retrieval A three-phase retrieval process was developed in which a subset of ‘elite’ cases whose similarity to the new timetabling problem with respect to the shallow properties is greater than a predefined threshold is selected first. The threshold is empirically set to 0.6 and the largest allowable size of the subset is 40 percent of the number of the cases in the whole case base. The selected subset of cases is passed to Tabu search algorithm which produces a measure of isomorphism between the new problem and each of the cases using the similarity degree based on deep properties as objective function. Finally, the general similarity measure is calculated between the input timetabling problem and the subset of ‘elite’ cases taking into consideration both shallow and deep properties.

4.

Experiments on the Initialisation Phase of GDA Search

A number of real-world examination problems from different universities has been collected and used as benchmark problems within the timetabling community. They

13

can be seen at ftp://ftp.mie.utoronto.ca/pub/carter/testprob/. The characteristics of these problems are shown in Table 1. Table 1. Data

Institution

Examination timetabling benchmark problems Periods

Number of Exams

Number of Students

Number of Enrolments

Density of Conflict Matrix

ear-f-83

Earl Haig Collegiate Institute, Toronto

24

190

1,125

8109

0.29

hec-s-92

Ecole des Hautes Etudes Commercials, Montreal

18

81

2,823

10632

0.20

kfu-s-93

King Fahd University Dharan

20

461

5,349

25113

0.06

lse-f-91

London School of Economics

18

381

2,726

10918

0.06

sta-f-83

St Andrew’s Junior High School, Toronto

13

139

611

5751

0.14

tre-s-92

Trent University, Peterborough, Ontario

23

261

4,360

14901

0.18

yor-f-83

York Mills Collegiate Institute, Toronto

21

181

941

6034

0.27

The cost function that is in use and enables comparison between different approaches takes into consideration the spread of student’s examinations. A cost ws is given to a solution whenever a student has to sit two examinations s periods apart, where w1 = 16, w2 = 8, w3 = 4, w4 = 2, w5 = 1. The quality of a solution is calculated as the average cost assigned to all students.

A number of experiments have been designed with the following objectives: 1.

To demonstrate that the initial solution does affect the GDA search. To evaluate the effectiveness of the CBR system, namely to investigate the capability of the retrieval process to suggest the most suitable initial heuristic for the new timetabling problem.

2. To demonstrate that for similar timetabling problems the same heuristics can be used in the initialisation phase of the GDA. 3.

To evaluate and compare different similarity measures defined in Section 3.2.

4. To evaluate the performance of the developed CBR system on the benchmark problems. All the experiments were run on a PC with a 1400 Mhz Athlon processor and 256 MB RAM.

14

4.1. Importance of the Initialisation Phase of GDA The first set of experiments was designed with the aim to set the foundation of this research, namely to show that different initial solutions affect significantly the GDA search. Each sequential heuristics (in total 40) was run on each benchmark problem. Both average values of the cost function of initial solution and of its final solution produced by GDA were recorded. GDA was run for 5 times by 20*106 iterations (this value was set empirically), while the ‘water-level’ was set to be 1.3 and this value is taken from Burke et al. (2003b). These values for the number of iterations and for the water-level will be used in most of the experiments presented in this paper.

For illustration purpose, we selected one problem instance (hec-s-92) to show that there is relation between the quality of the initial solution and the final solution produced by GDA. In Figure 3.a and 3.b, x-axis represents different heuristics (C, MCD, BT, ARE), while y-axis contains average values of the cost function obtained by the sequential heuristic alone and hybridised with GDA in 5 runs, respectively.

Cost 20

C=SD

C=LD

C=CD

C=LE

C=LWD

C=SD

C=LD

C=CD

C=LE

C=LWD

Cost 12.5

18.5

12.3

17

12.1

15.5

11.9

14

11.7

12.5

11.5

11 (C,0,0,30%)

11.3 (C,0,0,70%)

(C,0,1,30%)

(C,0,1,70%)

(C,1,0,30%)

(C,1,0,70%)

Sequential Heurisitc (C,MCD,BT,ARE)

(C,1,1,30%)

(C,1,1,70%)

(C,0,0,30%)

(C,0,0,70%)

(C,0,1,30%)

(C,0,1,70%)

(C,1,0,30%)

(C,1,0,70%)

(C,1,1,30%)

(C,1,1,70%)

Sequential Heuristic (C,MCD,BT,ARE)

b. GDA hybridised with sequential heuristics a. Sequential heuristics Figure 3. Performance of sequential heuristics and hybridised GDA on problem instance hec-s-92.

It can be noted that sequential heuristic (LWD, 0, 1, 70%) constructed the best initial solution (in average) while its corresponding average final solution is worst. On the contrary, the sequential heuristic (LWD, 0, 0, 30%) led GDA to generate the best average final solution while its initial solutions were on average of mediocre quality. Based on these results, we can conclude that selecting the appropriate algorithm in the initialisation phase plays a significant role in the future success of GDA search.

15

4.2. Selection of Heuristics The purpose of the second set of experiments is to demonstrate that the choice of “good” heuristics for GDA initialisation depends on the problem itself. As an illustrative example, we will present and compare results obtained on 2 problem instances: yor-f-83 and sta-f-83. Cost

C=SD

C=LD

C=CD

C=LE

C=LWD

C=SD

C=LD

C=CD

C=LE

C=LWD

40.7

Cost 176

40

173

39.3

170

38.6

167

37.9

164

37.2

161

158

36.5 (C,0,0,30%)

(C,0,0,70%)

(C,0,1,30%)

(C,0,1,70%)

(C,1,0,30%)

(C,1,0,70%

(C,1,1,30%)

(C,1,1,70%)

(C,0,0,30%)

(C,0,0,70%)

Sequential Heurisitc (C,MCD,BT,ARE)

a. Problem instance yor-f-83

(C,0,1,30%)

(C,0,1,70%)

(C,1,0,30%)

(C,1,0,70%)

(C,1,1,30%)

(C,1,1,70%)

Sequential Heuristic (C,MCD,BT,ARE)

b. Problem instance sta-f-83

Figure 4. Performance of GDA initialised with different heuristics

It is obvious from Figures 4a and 4b that initial solutions of different quality lead GDA to different final solutions. None of the heuristics proves to be the best for initialisation of both instances. The best heuristic for initialisation of yor-f-83 (LWD, 1, 1, 70%) provided mediocre result for the other instance sta-f-83 and vice verse. The best heuristic (CD, 0, 0, 70%) for sta-f-83 gives solutions of average quality for yor-f83.

4.3. Initialisation of Similar Timetabling Problems The premise for successful application of CBR in the initialisation phase of metaheuristics for which the initial solution is important as a starting point, is that for similar examination timetabling problems it is advisable to use the same sequential heuristic. The following set of experiments investigates whether similar timetabling problems benefit from initialisation by the same heuristics.

A collection of similar timetabling problems was created in order to investigate the initialisation process. For each of the seven benchmark problems, 4 problems were created which are similar to a different extent to each of the seven problems. These problems were generated by deleting a number of randomly selected examinations 16

and student enrollments from the benchmark problems. The modified problems were denoted by x/y, where x and y give the percentage of examinations and student enrolments which were deleted from the benchmark problems, respectively. Four groups of modified problems were created: 1/3.5, 2/7, 4/14, and 6/21. Note that the undirected graph of such a created similar problem is a sub-graph of the graph representing the corresponding benchmark problem. In general, the larger the value of x or y, the less similar the modified problem is to the corresponding benchmark problem.

For each benchmark and its modified problems, GDA was run 5 times initialised by each sequential heuristic. For each problem, sequential heuristics were sorted in ascending order by the average final solution cost obtained. The following notation is used: R(H, P) denotes the rank of the sequential heuristic H for the problem P. Heuristic Distance HD(H, H*, P, P*) ∈ [0, 1] is defined to measure the distance between the best heuristic H for the problem P (in terms of GDA initialisation) and the best one H* for the modified problem P*. It is calculated as:

HD( H , H *, P, P*) =

| R( H , P*) − R ( H *, P) | N −1

(11)

where N is the total number of heuristics used for GDA initialisation. The values of HD are calculated for each heuristics pair of benchmark problem and its modified problem. Figure 5a shows an average value of HD of all heuristics for seven benchmark problems and their modified problems. The experiments show that the more similar the benchmark problem is to the modified problem (the smaller values of x and y), the smaller is the value of HD.

We were also interested to see how much the first 10 heuristics for both problems P and P* coincide in their scheduling solution with each other. We define intersection degree ID(P, P*) ∈ [0, 1] as the cardinality of the intersection set of the first 10 heuristics for the GDA initialisation of the problems P and P*. Values of ID are calculated for each pair of a benchmark problem and a modified one. Average values of ID of modified problems are given in Figure 5b. It can be noticed that similar 17

problems have higher intersection degree. We can conclude that similar timetabling problems have either the same heuristics that are the best for initialisation for both of them or the heuristics that is best for one problem is very good (although not the best) for the similar problem too. 1

HD

1

0.8

0.8

0.6

0.6

0.4

0.4

0.2

0.2

ID

0

0 1/3.5

2/7

4/14

6/21 Modified Problems

a. Average HD Values

1/3.5

2/7

4/14

6/21 Modified Problems

b. Average ID Values

Figure 5. Average HD and ID of the benchmark problems and modified ones

5.

Experiments on CBR System

In this section we will describe the experiments whose purpose is twofold. The first set of experiments investigates the effectiveness of the CBR and the impact of different similarity measures on the retrieval process. The second set of experiments evaluates the system performance on benchmark problems and compares our approach with the other state-of-the-art approaches in examination timetabling.

5.1. Case Base Initialisation In our experiments, the initial case base was seeded with a number of randomly generated examination timetabling problems. The size of these seeding problems was controlled by the number of examinations (n), the number of students (s), and the density of the conflict matrix (d). The number of examination that each examination is in conflict with (c) (i.e. the number of edges per examination) was generated by a normal distribution whose mean was set as n*d, and the proportion of the standard deviation and the mean (coefficient of variation) had a uniform distribution within an interval [0.05, 0.09]. Therefore we will obtain different degrees of examinations in the graph representation of the problem. The enrolment of each student (r) was generated randomly one by one and has a uniform distribution in the [1, 6] interval. 18

A procedure for generating the student’s enrolment is described as follows. Examinations are allocated to each student one bye one until the value r for the student is reached. Each examination added to the student’s enrolment causes changes to the density matrix. If the added examinations violate the value c (i.e. increases the degree of the examinations) then these examinations are replaced with the examinations from a complete sub-graph (in such a way the degree of each examination will be preserved). This process stopped when predefined values of n, s and d were reached.

We created three different seeding problems for each combination of n, s and d. These parameters are random variables with a normal distribution where mean of n ∈ {100, 200, 300, 400}, mean of s ∈ {10*n, 20*n}, and mean of d ∈ {0.07, 0.15, 0.23}. For each mean of the three parameters, the proportion of the standard deviation and the mean was set as 0.05. Thus, we obtained 3*4*2*3=72 different seeding problems for the case base. For each seeding problem, the best initialisation heuristic was found after 5 runs of GDA. Using these cases, we established three case bases: the small, the middle and the large case base with 24, 48 and 72 cases, respectively.

5.2. Evaluation of Similarity Measures In order to investigate the impact of shallow and deep properties of timetabling problems on the retrieval process a series of experiments were conducted assigning different importance to shallow/deep properties of timetabling in the similarity measure.

In addition, we wanted to investigate both timetabling representation: by the undirected unweighted graphs (used in this research) which show conflicts between the examinations but not the number of students enrolled in the conflicts nor in the examinations themselves, and the undirected weighted graphs where weights are associated with both vertices and edges, representing the number of students enrolled in the examinations and the number of students common for two corresponding examinations. The similarity measure between two weighted graphs was introduced in Petrovic, Yang, and Dror (2003).

19

In total 4 different similarity measures were introduced: SIM1, SIM2 and SIM3 with different importance assigned to shallow properties and based on unweighted graphs for timetabling representation, and SIM4 which does not consider shallow properties of the timetabling problems in the retrieval process and employs undirected weighted graphs. Their characteristics are shown in table 2. Table 2. Similarity Measures with Various Settings Similarity Measure

m

Deep Property Representation

SIM1:

0.5

undirected graph

SIM2:

1.0

undirected graph

SIM3:

2.0

undirected graph

SIM4:

0

undirected weighted graph

Having established three case bases and defined four different similarity measures, each combination of a case base and a similarity measure was used to select a sequential heuristic for each of the seven benchmark problems. In order to evaluate whether the retrieved sequential heuristic is effective for the benchmark problem, we define a measure, the System Effectiveness Degree SED(P), which indicates the distance between the retrieved sequential heuristic HCB from the heuristic which is the best for GDA initialisation for the benchmark problem P. It is calculated as:

SED( P) = 1 −

R( H CB , P) − 1 N −1

(12)

The higher the value of SED, the more effective the retrieved sequential heuristic is. For each combination of the case base and the similarity measure, the average SED(P) values were calculated for all benchmark problems, and are shown in Figure 6. SED Value 1

Small Case Base

Middle Case Base

Large Case Base

0.9

0.8

0.7

0.6

0.5

0.4 SIM1

SIM2

SIM3

SIM4 Similarity Measures

Figure 6. Performance of different Similarity Measures

20

It is evident that the SED values of SIM1, SIM2 and SIM3, are much higher than those of SIM4. This result justifies the undirected unweighted graph representation of timetabling problem. The experimental results show that hierarchical retrieval process (based on similarity measures SIM1-SIM3) is very effective although it investigates the structure of only a subset of cases in the case base. It can also be seen that the similarity measures in which shallow and deep properties are weighted equally have the best performance, e.g. SIM2 slightly dominates SIM1 and SIM3. This observation suggests that both size of the timetabling problem (shallow properties) and its structure (deep properties) are equally important for the effective reuse of the previous knowledge/experience in solving timetabling problems.

5.3. System Performance on Benchmark Problems The CBR methodology described above was used with the similarity measure SIM2 to solve benchmark problems. Each of the benchmark problems was solved by using the small, middle, and large case base. In each experiment, our CBR system selected a sequential heuristic for a benchmark problem, then the problem was solved by running the retrieved sequential heuristic and GDA successively for 200*106 iterations five times with varying random number seeds. System Effectiveness Degree SED is calculated for each retrieved sequential heuristic. The obtained average costs are summarised in Table 3. Table 3. Comparison of results for benchmark problems obtained by different case base sizes Small Case Base (|CB| = 24)

Data

Retrieval

Run GDA

Middle Case Base (|CB| = 48) Retrieval

Run GDA

Large Case Base (|CB| = 72) Retrieval

Run GDA

SED

Time

Cost

Time

SED

Time

Cost

Time

SED

Time

Cost

ear-f-83

1.00

123

34.78

690

1.00

230

34.78

690

1.00

340

34.78

Time 690

hec-s-92

0.435

26

11.56

998

0.923

50

11.36

1021

0.923

79

11.36

1021

kfu-s-93

0.974

231

14.35

751

0.974

827

14.35

751

0.974

1222

14.35

751

lse-f-91

0.205

378

11.44

627

0.872

662

10.96

665

0.872

957

10.96

665

sta-f-83

0.436

43

165.45

649

0.436

72

165.45

649

0.436

102

165.45

649

tre-s-92

0.179

247

8.24

814

0.744

542

8.10

844

0.744

782

8.10

844

yor-f-83

0.667

76

37.09

1243

0.667

175

37.09

1243

0.667

231

37.09

1243

We can see that for four problem instances ear-f-83, hec-s-92, kfu-s-93 and lse-f-91, our CBR system successfully selected either the best (SED(P) = 1), or the heuristics that are among the 6 best (0.872 ≤ SED(P) ≤ 0.974). We also investigated the impact of the growth of the case base size on the SED values and the solution costs. For the problem instances hec-s-92, lse-f-91 and tre-s-92 (the corresponding rows are bolded 21

in the table), it can be seen that the growth of the case base size (from the small to the middle case base) leads to better solutions, as the average solution costs of hec-s-92, lse-f-91 and tre-s-92 are decreased by 0.20(11.56–11.36), 0.48 (11.44–10.96) and 0.14 (8.24–8.10), respectively. Obviously, better sequential heuristics were retrieved, as we can see that the SED values are increased.

For the remaining four problem instances the three case bases produced the same solutions, because the same cases have been retrieved. Therefore, the growth of the case base size can lead to better solutions, but with the cost of the increased retrieval time, which is proportional to the number of cases in the case base.

The next experiment aims to investigate the effectiveness of our CBR initialisation (with hierarchical retrieval process based on SIM2 and the middle case base), by comparing our results with the best results achieved by exhaustive search across all heuristics. The results are summarised in Table 4. Table 4. Comparison of results for benchmark problems obtained by different case retrieval Exhaustive test

Data

Retrieval

CBR (|CB| = 48, SIM2)

Run GDA

Retrieval

Run GDA

SED

Time

Cost

Time

SED

Time

Cost

ear-f-83

1.00

15245

34.78

690

1.00

230

34.78

Time 690

hec-s-92

1.00

20874

11.32

1490

0.923

50

11.36

1021 751

kfu-s-93

1.00

19643

14.11

689

0.974

827

14.35

lse-f-91

1.00

15095

10.78

595

0.872

662

10.96

665

sta-f-83

1.00

12368

158.02

676

0.436

72

165.45

649

tre-s-92

1.00

16495

8.03

730

0.744

542

8.10

844

yor-f-83

1.00

26723

36.85

1200

0.667

175

37.09

1243

It can be seen that CBR was successful in suggesting the appropriate heuristics for GDA initialisation which resulted in high quality solutions. Even more, the CBR initialisation succeeded in finding the best heuristic for the benchmark problem ear-f83. The differences on the remains benchmark problems are slight, except for the problem instance sta-f-83 where our CBR system did retrieve a mediocre sequential heuristic (SED = 0.436). It is important to note that it took more than 35 hours to run an exhaustive test on seven problem instances, while the developed CBR initialisation needed less than 43 minutes.

22

The average results obtained on the benchmark problems by our CBR system compared with those generated by three other state-of-the-art approaches: GDA where the initial solution was constructed by Saturation Degree SD (Burke et al., 2003c), GDA initialised by the adaptive heuristic (Burke and Newall, 2003a and 2003b), GDA where the Saturation Degree heuristic was applied with the maximum clique detection and backtracking (this heuristic was suggested by Carter at al. to be the best constructive heuristic (Carter, Laporte, and Chinneck, 1994; Carter and Laporte, 1996). The time (in seconds) shown is the average time spent on the search (each problem instance was solved 5 times). GDA was also allocated the same number of iterations for each approach 200*106. We use the higher number of iterations in order to compare our results with the published ones. The times shown are different due to the use of computers of different characteristics. Table 5. Comparison of results for benchmark problems obtained by different initialisation of GDA Data

SD

Adaptive

SD & MCD & BT

GDA

Best

Avg.

GDA

Best

Avg.

GDA

Best

Avg.

Time

Cost

Cost

Time

Cost

Cost

Time

Cost

Cost

CBR (|CB| = 48) Retrieval GDA Time Time

Best

Avg.

Cost

Cost

ear-f-83

806

34.85

36.04

377

--

37.05

767

33.82

36.26

230

690

33.75

34.78

hec-s-92

1471

11.27

12.43

516

--

11.54

1411

11.08

11.48

50

1021

10.83

11.36

kfu-s-93

843

14.33

14.64

449

--

13.90

996

14.35

14.62

827

751

13.82

14.35

lse-f-91

646

11.61

11.65

341

--

10.82

675

11.57

11.94

662

665

10.63

10.96

sta-f-83

675

165.12

169.7

418

--

168.73

674

166.07 166.31

72

649

165.27 165.45

tre-s-92

907

8.13

8.29

304

--

8.35

751

8.19

8.27

542

844

7.92

8.10

yor-f-83

1381

36.17

36.59

695

--

37.28

1261

36.31

37.27

175

1243

36.35

37.09

For four benchmark problems best average results were obtained (highlighted by the bold characters). For the remaining three problems, our CBR system obtained second best average results. It is clear that additional time on the case retrieval is required by our CBR system. However the time spent on the selection of an appropriate sequential heuristic, which determines a good starting point for GDA, is justified by the quality of the results.

6.

Conclusions

In this paper we have presented a novel CBR system, which selects an appropriate sequential heuristic for constructing the initial solution (a starting point) for the Great Deluge Algorithm (GDA). By generating a series of experiments on a range of real world examination timetabling problems, we have demonstrated that our CBR system

23

is both effective (manages to propose a good heuristic for initialisation) and efficient (takes significantly shorter time than the exhaustive test for all heuristics takes). For a number of benchmark problems it produced better result than the other state-of-the-art solution approaches.

The success of metaheuristics which have been developed for examination timetabling highly depends on the domain-specific knowledge which needs to be properly incorporated. However, there are numerous differences in examination timetabling specification in educational institutions. The drawback of special purpose heuristics is that they usually work well only in environments that are very similar to the instance of the problem for which they were designed. This research significantly contributes to the attempt of building a general metaheuristic framework for timetabling. Instead of “tailoring” the solution approach for a new timetabling problem, it uses the domain-specific knowledge gained in solving timetabling problems in the past.

The case base contains cases with complex structures represented by graphs. We have shown that in the timetabling problems where the case base contains a large number of cases and graphs are of large sizes, the hierarchical case retrieval is capable of retrieving appropriate cases. We believe that such hierarchical case retrieval is also applicable to other domains such as job shop scheduling, planning, industrial design, and the graph-structured pattern recognition. The results obtained so far provide us with a good foundation for developing a general CBR system for solving timetabling problems. We will also investigate the hybridisation of sequential heuristics and other local search methods such as simulated annealing, GRASP (Greedy Randomised Adaptive Search Procedures) and tabu search.

Acknowledgments The authors wish to thank Dr. Jim Newall for giving us the source code of the timetabling library.

Reference Brelaz D. (1979). “New Methods to Color the Vertices of a Graph”, Communication

24

of ACM, 22: 251-256. Burke E.K., D.G. Elliman, P.H. Ford, and R.F. Weare. (1996). “Examination Timetabling in British Universities - A Survey”, The Practice and Theory of Automated Timetabling, LNCS 1153, Springer Verlag, 76-92. Burke E. K., E. Hart, G. Kendall, J. Newall, P. Ross, and S. Schulenburg. (2003a). “Hyper-Heuristics: An Emerging Direction in Modern Search Technology”, Handbook of Meta-Heuristics, Chapter 16: 457– 474, Kluwer. Burke E.K. and J.P. Newall. (1999). “A Multi-Stage Evolutionary Algorithm for the Timetable Problem”, The IEEE Transactions on Evolutionary Computation 31(1), 63-74. Burke E.K., J.P. Newall, and R.F. Weare. (1998). “A Simple Heuristically Guided Search for the Timetable Problem”, In Proceedings of the International ICSC Symposium on Engineering of Intelligent Systems, 574-579. Burke E.K., B. MacCarthy, S. Petrovic, and R. Qu. (2001). “Case-Based Reasoning in Course Timetabling: An Attribute Graph Approach”, In Proceedings of 4th International Conference on Case-Based Reasoning, LNAI 2080, 90-104. Burke E.K., S. Petrovic, and R. Qu. (2003b). “Case Based Heuristic Selection for Timetabling Problems”, Accepted for publication in the Journal of Scheduling. Burke E.K., Y. Bykov, J.P. Newall, and S. Petrovic. (2003c). “A Time-Predefined Local Search Approach to Exam Timetabling Problems”, Accepted for publication in IIE Transactions on Operations Engineering. Burke E.K., A.J. Eckersley, B. McCollum, S. Petrovic, and R. Qu. (2003d). “Similarity Measures For Exam Timetabling Problems”, In Proceedings of the first Multidisciplinary International Conference on Scheduling: Theory and Applications, 137-155. Burke E.K. and J.P. Newall. (2003a). “Solving Examination Timetabling Problems through Adaptation of Heuristic Orderings”, Accepted for publication in Annals of Operations Research. Burke E.K. and J.P. Newall. (2003b). “Enhancing Timetable Solutions with Local Search Methods”, Practice and Theory of Automated Timetabling IV, LNCS 2740, Springer-Verlag, 195-206. Burke E.K. and S. Petrovic. (2002). “Recent Research Directions in Automated Timetabling”, European Journal of Operational Research 140(2), 266-280. Carter M.W. (1986). “A Survey of Practical Applications on Examination Timetabling”, Operations Research 34(2), 193-202. Carter M.W., G. Laporte, and J.W. Chinneck. (1994). “A General Examination Scheduling System”, Interfaces 24(3), 109-120.

25

Carter M.W. and G. Laporte. (1996). “Recent Developments in Practical Course Timetabling. The Practice and Theory of Automated Timetabling”, LNCS 1153, Springer-Verlag, Berlin, 3-21. Carter M.W., G. Laporte, and S.Y. Lee. (1996). “Examination Timetabling: Algorithmic Strategies and Applications”, Journal of the Operational Research Society 47, 373-383. Coello J.M.A. and R.C. Santos. (1999). “Integrating CBR and Heuristic Search for Learning and Reusing Solutions in Real-Time Task Scheduling”, In Proceedings of 3rd International Conference on Case-Based Reasoning, LNAI 1650, 89-103. Cunningham P. and B. Smyth. (1997). “Case-Based Reasoning in Scheduling: Reusing Solution Components”, The International Journal of Production Research 35(11), 2947-2961. Deng P.S. (1996). “Using Case-Based Reasoning Approach to the Support of Illstructured Decisions”, European Journal of Operational Research 93, 511-521. Dueck G. (1993). “New Optimization Heuristics”, Journal of Computational Physics 104, 86-92. Foxley E. and K. Lockyer. (1968). “The Construction of Examination timetable by Computer”, The Computer Journal 11, 264-268. Garey M.R. and D.S. Johnson. (1977). Computers and Intractability a Guide to the Theory of NP-Completeness. W.H. Freeman. Gaspero L.D. and A. Schaerf. (2001). “Tabu Search Techniques for Examination Timetabling”, Practice and Theory of Automated Timetabling third International Conference, LNCS 2079, Springer Verlag, 104-117. Gendreau M., P. Soriano, and L. Salvail. (1993). “Solving the Maximum Clique Problem Using a Tabu Search Approach”, Annals of Operations Research 41, 385403. Glover F. and M. Laguna. (1997). Tabu Search. Kluwer Academic Publishers. Johnson D. (1990). “Timetabling University Examinations”, Journal of Operational Research Society 41(1), 39-47. Kirkpatrick S., C.D. Gelatt, and M.P. Vecchi. (1983). “Optimisation by Simulated Annealing”, Science 220(4598), 671-680. Kolodner J. (1993). Case-Based Reasoning. Morgan Kaufmann Publishers. Laporte G. and S. Desroches. (1984). “Examination Timetabling by Computer”, Computers & Operations Research 11, 351-360.

26

Feo T. and M.G.C. Resende. (1995). “Greedy Randomized Adapative Search Procedures”, Journal of Global Optimization 2, 1-27. Liao T.W., Z. Zhang, and C. Mount (1998). “Similarity Measures for Retrieval in Case-based Reasoning Systems”, Applied Artificial Intelligence 12, 267-288. Louis S. (1997). “Working from Blueprints: Evolutionary Learning for Design”, Artificial Intelligence in Engineering 11, 335-341. Miyashita K. and K. Sycara. (1995). “CABINS: A Framework of Knowledge Acquisition and Iterative Revision for Schedule Improvement and Reactive Repair”, AI 76, 377-426. Oman S. and P. Cunningham. (2001). “Using Case Retrieval to Seed Genetic Algorithms”, International Journal of Computational Intelligence and Applications 1(1), 71-82. Petrovic S., G.R. Beddoe, G. V. Berghe. (2003). “Storing and Adapting Repair Experiences in Employee Rostering”, Practice and Theory of Automated Timetabling IV, LNCS 2740, Springer-Verlag, 149-166. Petrovic S., G. Kendall, and Y. Yang. (2002). “A Tabu Search Approach for GraphStructured Case Retrieval”, In Proceedings of the STarting Artificial Intelligence Researchers Symposium, 55-64, IOS Press. Petrovic S, Y. Yang, and M. Dror. (2003). “Case-based Initialisation of Metaheuristics for Examination Timetabling”, In Proceedings of the first Multidisciplinary International Conference on Scheduling: Theory and Applications, 137-155. Saleh Elmohamed M.A., P. Coddington, and G. Fox. (1998). “A Comparison of Annealing Techniques for Academic Course Scheduling”, The Practice and Theory of Automated Timetabling II, LNCS 1408, Springer Verlag, Berlin, 92-112. Schirmer A. (2000). “Case-Based Reasoning and Improved Adaptive Search for Project Scheduling”, Naval Research Logistics 47, 201-222. Schmidt G. (1998). “Case-based Reasoning for Production Scheduling”, International Journal of Production Economics 56-57, 537-546. Terashima-Marín H., P. Ross, and M. Valenzuela-Rendón. (1999). “Evolution of Constraint Satisfaction Strategies in Examination Timetabling, In Proceedings of the Genetic and Evolutionary Conference, 635-642. Thompson J.M. and K.A. Dowsland. (1996). “Variants of Simulated Annealing for the Examination Timetabling Problem”, Annual of Operation Research 63, 105-128. Wang Y. and N. Ishii. (1997). “A Method of Similarity Metrics for Structured Representations”, Expert Systems with Applications 12(1), 89-100.

27

Watson I. and F. Marir. (1994).: “Case-Based Reasoning: A Review”, The Knowledge Engineering Review 9(4), 327-354. Welsh D. J. A. and M. B. Powell. (1967). “An Upper Bound on the Chromatic Number of a Graph and its Application to Timetabling Problems”, The Computer Journal 10, 85-86.

28