Compromise ratio with weighting functions in a Tabu Search multi-criteria approach to examination timetabling

Compromise ratio with weighting functions in a Tabu Search multi-criteria approach to examination timetabling

Computers & Operations Research 72 (2016) 160–174 Contents lists available at ScienceDirect Computers & Operations Research journal homepage: www.el...

1016KB Sizes 0 Downloads 24 Views

Computers & Operations Research 72 (2016) 160–174

Contents lists available at ScienceDirect

Computers & Operations Research journal homepage: www.elsevier.com/locate/caor

Compromise ratio with weighting functions in a Tabu Search multi-criteria approach to examination timetabling$ Paula Amaral a, Tiago Cardal Pais b a b

Department of Mathematics and CMA, Universidade Nova de Lisboa, Portugal School of Computer Science, University of Nottingham, Nottingham, UK

art ic l e i nf o

a b s t r a c t

Available online 2 March 2016

University examination scheduling is a difficult and heavily administrative task, particularly when the number of students and courses is high. Changes in educational paradigms, an increase in the number of students, the aggregation of schools, more flexible curricula, among others, are responsible for an increase in the difficulty of the problem. As a consequence, there is a continuous demand for new and more efficient approaches. Optimisation and Constraint Programming communities have devoted considerable attention to this difficult problem. Just the definition of a satisfactory, not to mention optimal, timetabling may be complex. In fact, to characterise a timetabling solution, a single criteria may not be enough, since what may be considered good for one group of students may be regarded inappropriate for other students, or teachers. In this paper, four criteria were used to characterise the spreading of the exams over the examination period. A set of constraints regarding the non-overlapping of exams with students in common was considered. A multi-objective optimisation program was used to handle the four criteria and a Tabu Search was implemented to find a good feasible solution for this problem. Two new features to increase the automation of the algorithm were proposed. First, it uses a Fuzzy Inference Ruled Based System to choose the tabu tenure of the elements in the tabu list. Secondly, a modified version of the Compromise Ratio (CR) is proposed, where the usual fixed weights are replaced by weighting functions to rank the neighbourhood solutions in each iteration. Sufficient conditions which guarantee the monotonicity of the weighting functions are presented. & 2016 Elsevier Ltd. All rights reserved.

Keywords: Multi-objective examination timetabling Compromise Ratio Tabu Search Weighting functions

1. Introduction Timetabling problems are an important field in management. They have applications in many institutions and services, such as hospitals, transportation enterprises and educational establishments. Finding a good timetable is crucial, not only for a successful management, but also to ensure the quality of the service. These problems have attracted the interest of the Operations Research community and many contributions were made to solve timetabling problems in different areas, like in Sports [40,80]; Transportation [51,24,69] and Schools [3,31,42,46,74,77]. Universities, as well as other educational establishments, have to deal mainly with course [75,23,8,62,2,9,52,56,54,81,10,68] and examination timetabling [7,19,21,18,26,30,29,27,32,35,38,41,36,37,45,53,58–60,66,67, 70,78,79,82,86]. This paper deals only with examination time☆ This paper has been supported by Fundação para a Ciência e a Tecnologia (Portuguese Foundation for Science and Technology) through PEst-OE/MAT/ UI0297/2011 (CMA). E-mail addresses: [email protected] (P. Amaral), [email protected] (T.C. Pais).

http://dx.doi.org/10.1016/j.cor.2016.02.012 0305-0548/& 2016 Elsevier Ltd. All rights reserved.

tabling, although the methodologies could be adapted to other cases and other problems. Since the early introductory paper of Werra [34], a number of excellent contributions can be found in the examination timetabling literature. Some classical references are Carter [28], Carter and Laporte [27], Burke et al. [16], Schaerf [74]. The more recent survey of Qu et al. [70] is also worth mentioning. Different methods have been proposed over the years. For example, Clustering Methods were described in Desroches et al. [35] and Arani and Lotfi [5]. The examination timetabling problem can be modelled as a node colouring problem in a graph. For this reason, most of the heuristics for node colouring can also be applied to this problem. Some of the best known methods in this category depend mainly on an ordering strategy. The most common are Saturation Degree [13]; Largest Degree [14]; Largest Weighted Degree [27]; Largest Enrolment [85] and Colour Degree [27]. A Fuzzy Inference System to order the exams is proposed by Asmuni et al. [6]. In the category of meta-heuristics, we start by mentioning applications based on Simulated Annealing [79,78]. Other noteworthy meta-heuristics are the Great Deluge Method [39,19,15] and the Variable Neighbourhood Search (VNS) [63,47].

P. Amaral, T.C. Pais / Computers & Operations Research 72 (2016) 160–174

In Burke et al. [18], the authors applied the VNS not as a local search but as a hyper-heuristic. Erben [41] developed a Grouping Genetic Algorithm for the node colouring, which also applies to the examination timetabling problem. Costa and Hertz [33] developed a method based on Ant Colony (ANTCOL) for the node colouring problem and suggested the application to timetabling problems, as accomplished by Dowsland and Thompson [38]. Memetic Search (MS) combines evolutionary algorithms with local search. Its use for the examination timetabling problem was proposed by Burke and Newall [20]. There are some methodologies that cannot be correctly described as meta-heuristics, such as the work of Caramia et al. [26]. The authors used a greedy method to assign the exams to the smallest possible number of periods, using a technique named Penalty Trader. Abdullah et al. [1] developed an algorithm based on the Ahuja and Orlin neighbourhood [4]. Even though this last method is computationally heavy, it presents some of the best results for a collection of instances frequently used by many researchers in examination timetabling problems. Specifically regarding applications of Tabu Search (TS) to examination timetabling, the work of Hertz [49] is one of the first published proposals using this algorithmic methodology. The author presented an adaptation of a TS for the graph colouring problem [48]. Next, in Boufflet and Négre [11] an exact method, a TS and an interactive computer aided design system were developed and compared. The TS was classified as the most convenient alternative. To our knowledge one of the first approaches incorporating other techniques in the TS (specifically for examination timetabling problems) can be found in the work of White and Zhang [84]. In this case the authors developed a TS in combination with constraint logic. Other interesting references are Di Gaspero and Schaerf [37], White and Xie [82], White et al. [83]. Their research was focussed on the best characterisation of the tabu move, the definition of the aspiration criteria and the type of neighbourhood. In [83] the tabu method (OTTABU) incorporates two tabu lists and a tabu relaxation policy that allowed that both tabu lists are emptied under some conditions. In [37] it was specifically mentioned, as future work, the need to “perform an extensive parameter tuning session for all instances”. In Pais and Amaral [65] it is proposed the first approach in the literature that performs an automatic tabu tenure tuning using Artificial Intelligence techniques (Rule Based System) in conjunction with Fuzzy Logic. A Fuzzy Ruled Based System was implemented and it was proved that it was successful to perform an automatic choice of the tabu tenure, without the need to repeat several runs for the same instance using different values. The idea of addressing the examination timetabling as a multicriteria problem was presented in Burke et al. [17] and Bykov [22]. The algorithm consisted in determining compromise solutions which are close to an ideal point, using a family of metrics to measure the distance. The importance of using other search algorithms was also mentioned. In recent years, the tendency towards the flexibility of curricula and the increase in the number of students enrolled in each course have increased the difficulty of examination scheduling. In addition, the different agents involved in this problem have different perspectives and a compromise is necessary. In fact, students regard the spreading of consecutive exams as an important feature, since it allows more time for preparation, while in general teachers tend to favour a shorter examination period length to have more time to prepare the next semester and to do research. To model these preferences, a multi-objective approach was used.

161

To find a good solution for this hard optimisation problem, a Tabu Search (TS) was implemented. Two particular features for TS were proposed and are described in the next subsection. 1.1. Contributions of this paper The major contribution of this paper is the introduction of Weighting Functions in Compromise Ratio and the establishment of the theoretical results describing the sufficient conditions for the monotonicity of this new operator (presented in Theorem 1) and the identification of a set of functions that verify those conditions (described in Theorem 2). Another innovative contribution is the application of the Weighted Function Compromise Ratio (WFCR) in a Tabu Search for solving a multi-criteria optimisation problem. Tabu search is known as a good method to solve hard optimisation problems such as examination timetabling. The most severe issue about TS is the number of parameters that must be tuned to achieve the highest performance of the algorithm. In general, for each instance, the tests are repeated, for different sets of parameters. This task is cumbersome, because it must be conducted manually. If for some applications this procedure is feasible, there are many cases where this is a strong impediment for the use of TS. This happens to be the case for the development of software for examination timetabling. One cannot expect to have administrative staff tuning the tabu search. As an alternative it is often implemented an automatic tuning, for a set of predefined parameters. This “blind” procedure is not efficient, both because it still requires too many runs of the TS, increasing computational time, secondly because it does not take into account expertise knowledge. One crucial parameter in the TS is the tabu tenure. It represents the duration of a tabu item in the tabu list. In [65] a successful automatic tuning strategy was proposed for the tabu tenure, which we used also in this paper with the necessary adaptations, since it was proposed for a single objective problem. In the present work we are addressing a multi-objective problem. Regarding automation this poses even harder issues. In every iteration of the TS, a base solution is used to define a neighbourhood from which a new solution is chosen as the starting point for the next iteration. Each solution has a set of attributes which correspond to the multiple objectives. The evaluation and ranking of the solutions in the neighbourhood is a multi-criteria decision problem. In multi-criteria problems we cannot achieve an optimal solution, the goal is in general to find solutions in the Pareto front. Given two nondominated solutions how can they be compared? How can we choose between them? The intervention of a decision maker is necessary, sometimes with preferences that are hard to reproduce algorithmically. This key issue about the TS implementation is addressed in this paper in an innovative and successful way. We propose a way to choose the best solution in the neighbourhood through an automatic procedure that has the following features: it takes in consideration the decision maker reasoning, it is adaptive, dynamic and it is easy to implement which benefits computational time efficiency. We propose to combine weighting functions [71] and Compromise Ratio [55]. Compromise ratio is a known method in multi-criteria for ranking points with a set of attributes. In this paper, a modification of the Compromise Ratio is proposed which consists in the replacement of fixed weights by weighting functions. The advantage of using weighting functions is a more flexible modelling of preferences. Once these are defined, they capture the essence of

162

P. Amaral, T.C. Pais / Computers & Operations Research 72 (2016) 160–174

the decision-maker reasoning, henceforth, avoiding continuous human interference and ensuring algorithm automation. The merits of this approach are clearly not only conceptual but also practical. Although this technique was applied to multicriteria examination timetabling, it may be extended to other applications. In particular, the generalisation introduced in the Compromise Ratio, by means of weighting functions can be applied to general multi-attribute problems. 1.2. Structure of the paper After the literature review and motivation, this paper is structured in the following way. Section 2 describes the mathematical formulation of the problem. The new proposed features related to the implementation of the Tabu Search are presented in Section 3. The multi-criteria problem related to the neighbourhood evaluation is explained in Section 4. In this same section, the Compromise Ratio method and the main results regarding the application of weighting functions are also addressed. In Section 5, the computational results are reported. Some conclusions are given in Section 6.

2. Model assumptions and mathematical formulation A general examination timetabling problem consists of finding such a schedule where the number of overlapping exams for each student is minimal or none. Moreover, other requirements, such as rooms and invigilators, also need to be fulfilled. Usually, the most difficult part of the problem is to find a schedule that has a good distribution of the exams over the examination period. In some cases, this period is not previously fixed and the minimisation of the examination period length may be a goal. In this case, a set of constraints are defined to guarantee that a schedule does not have any overlapping exams with students in common. However, in most cases, the examination period is previously established, since the academic calendar must be defined at the beginning of the academic year, prior to students' enrolment in courses. Generally, past experience is sufficient to dictate a comfortable choice of the examination period length. Regarding rooms and invigilators, many authors prefer to deal with these issues in a second phase, since these constraints are less restrictive and easier to verify. Following these arguments, we will consider in this paper that

 the period of exams is predefined and corresponds to a   

sequence of time slots; the overlapping of exams with candidates in common is not allowed; invigilators and rooms are not considered; the goal is to have a good distribution of the exams over the evaluation period.

The next question is how to define these goals as an objective function. The quality of an examination schedule from the individual point of view of each student will most likely depend on the spreading of exams, which allows for more preparation time between consecutive exams. Let, N ¼ number of exams:

ð1Þ

cij ¼ number of students enrolled in course i and j for i; j ¼ 1; …; N: ð2Þ P ¼ number of slots:

ð3Þ

The slots assigned to pairs of exams i and j where cij a 0 should be as distant as possible. The total number of common enrolments, P  1 PN M¼ N i¼1 j 4 i cij , gives a good measure of the difficulty in achieving this goal. The characterisation of a well-distributed calendar is also difficult to model in just one objective. In fact, different aspects should be considered, such as the avoidance for every pair of exams i and j such that cij a 0, of their schedule: 1. in consecutive periods on the same day; 2. on the same day; 3. in overnight consecutive periods (except from Saturday to Monday); 4. on consecutive days. The order by which the above criteria are presented is related to their degree of undesirability. For instance, it is worse to have two exams in consecutive slots on the same day than in consecutive days. The first criterion is only applied if there is more than one slot per day. The second criterion only makes sense if there are more than two daily periods, for instance, one period in the morning and two in the afternoon. It is clear that in most situations it is not possible to enforce all four conditions for all students as hard constraints. This would make the search for a feasible solution almost impracticable. Hence, they should be set as soft constraints and addressed as goals. The minimisation of these four criteria will produce desirable timetables. To encode the solution, a vector of variables T ¼ ðt i Þ; i ¼ 1; …; N was considered, where ti represents the time slot assign to exam i. The set of variables dti ; i ¼ 1; …; N, represent the day associated to timeslot slot ti in which exam i takes place. Their definition is convenient for a more elegant and clearer formulation. However, this definition is not necessary in practice, especially if the number of slots per day is fixed. When for i and jA f1; …; Ng; ia j, cij a 0, then cij students are affected by the scheduled vicinity of exams i and j. In the following, these situations are described as producing cij “conflicts” for simplicity. As in [22] the following four objectives are considered:

 Total number of conflicts generated by the occurrence of exams in adjacent slots on the same day,

f 1 ðTÞ ¼

N 1 X

N X

cij  adjsðt i ; t j Þ;

i ¼ 1 j ¼ iþ1

 where adjsðt i ; t j Þ ¼

1

if ðj t i  t j j ¼ 1Þ 4 ðdti ¼ dtj Þ

0

otherwise:

ð4Þ

 Total number of conflicts generated by the occurrence of two or more exams on the same day,

f 2 ðTÞ ¼

N 1 X

N X

cij  sdayðt i ; t j Þ;

i ¼ 1 j ¼ iþ1

 where sdayðt i ; t j Þ ¼

1

if dt i ¼ dt j

0

otherwise:

ð5Þ

P. Amaral, T.C. Pais / Computers & Operations Research 72 (2016) 160–174

 Total number of conflicts generated by the occurrence of exams in overnight adjacent periods, f 3 ðTÞ ¼

N 1 X

N X

cij  ovntðt i ; t j Þ;

i ¼ 1 j ¼ iþ1



where ovntðt i ; t j Þ ¼

1

if ðj t i  t j j ¼ 1Þ 4 ðj dti  dt j j ¼ 1Þ

0

otherwise:

ð6Þ

 Total number of conflicts generated by the occurrence of exams in adjacent days, f 4 ðTÞ ¼

N 1 X

N X

cij  adjdðt i ; t j Þ;

i ¼ 1 j ¼ iþ1



where adjdðt i ; t j Þ ¼

1

if j dti  dt j j ¼ 1

0

otherwise:

ð7Þ

From (4) to (7) it follows that f 1 ðTÞ r f 2 ðTÞ and f 3 ðTÞ r f 4 ðTÞ. A single set of hard constraints was considered, to guarantee that no student has more than one exam in the same slot, N 1 X

N X

cij  clashðt i ; t j Þ ¼ 0;

i ¼ 1 j ¼ iþ1

where clashðt i ; t j Þ ¼



1

if t i ¼ t j

0

otherwise:

cii  clashðt i ; sÞ rcaps

for s ¼ 1; …; P;

added to the tabu list and remains there for a number of iterations which are designated as “tabu tenure”. However, the tabu list can be too prohibitive, it may prevent the selection of new good candidate solutions, even when there is no danger of cycling. To overcome this an algorithmic devise, designated as “aspiration criterion” can be implemented, enabling us to revoke the tabu status for a solution. An example of an aspiration criteria is to accept a solution (under a tabu status) if it has a value that is better than the best known solution. This iterative process is repeated until some termination criteria are reached, for instance the maximum number of iterations. There are many interesting additional refinements that can greatly increase the performance of the TS. Algorithm 1 describes the main steps of a general implementation of a Tabu Search (TS). Details of the implementation of steps 1 (Initial Solution), 4 (Aspiration Criteria) and 8 (Adjusting the tabu tenure) can be found in [65]. The adaptation for the multi-objective case is straightforward, so only a short overview will be given here. Regarding the more complex steps 3 (Neighbourhood – Section 3.1) , 6 (Memory – Section 3.2) and 7 (Fuzzy Management of the Tabu Tenure – Section 3.3) a slightly more extensive description is given.

ð8Þ Table 1 A small example solution T0 for an exam timetabling problem with 8 exam and 2 time slots.

If rooms and invigilators were introduced our methodology could still be applied. The only implication would be an additional set of P constraints to define the feasibility of the solution, N X

163

Index of the vector (exams) Vector component (time slot)

1 1

2 1

3 1

4 1

5 2

6 2

7 2

8 2

ð9Þ

i¼1

where caps represents the number of available seats in slot s.

3. Tabu search Tabu search [43,44] is a meta-heuristic that has successfully been applied to find good feasible solutions for hard optimisation problems. In general, it can be described as an iterative neighbourhood search method which incorporates techniques for escaping local optima while trying to avoid cycling through the construction of a tabu list. The tabu list consists of information that tries to prevent revisiting points. Each element in the list is a partial or a complete solution, or just a simple rule. To store the solutions, themselves, is too expensive regarding memory, so the most used alternative is to store parts, or just partial information, of the solution. As a consequence other solutions, different than the one last visited, may be rejected. To begin the algorithm, an initial feasible solution (vector of variables) is necessary. A general and basic TS iteration k, consists in generating from a known feasible solution Tk points in its neighbourhood that are not tabu. A neighbourhood of a solution Tk consists of a collection of solutions (unequivocally obtained from Tk by the application of a set of operations) that differ from Tk in the value assigned to a group of variables. In general, these points are evaluated using an objective function and the one that has the best evaluation is chosen as the new search point, T k þ 1 , as the starting point for the next iteration. To avoid revisiting this same point, the tabu list is updated. The search point, or an action related to it (a move), is

Fig. 1. Sequence of moves.

Table 2 Rules in FRBS. Rule Rule Rule Rule Rule Rule Rule Rule Rule

1: IF Frequency is 2: IF Frequency is 3: IF Frequency is 4: IF Frequency is 5: IF Frequency is 6: IF Frequency is 7: IF Frequency is 8: IF Frequency is 9: IF Frequency is

LOW MEDIUM HIGH LOW MEDIUM HIGH LOW MEDIUM HIGH

AND AND AND AND AND AND AND AND AND

Inactivity Inactivity Inactivity Inactivity Inactivity Inactivity Inactivity Inactivity Inactivity

is is is is is is is is is

HIGH HIGH HIGH MEDIUM MEDIUM MEDIUM LOW LOW LOW

THEN THEN THEN THEN THEN THEN THEN THEN THEN

z1 z2 z3 z4 z5 z6 z7 z8 z9

164

P. Amaral, T.C. Pais / Computers & Operations Research 72 (2016) 160–174

Algorithm 1. A Tabu Search algorithm.

The main focus of this paper is related to Steps 2, 5 and 9 (involving the comparison and choice between solutions) because in this paper we are considering a multi-objective problem. For a single objective function a simple numerical operation is sufficient to rank two solutions, in order to decide which one outperforms the other. In a multi-objective problem, given two nondominated solutions, it is not immediate to make such choice. In general, the goal is to obtain solutions in the Pareto Front, and leave to the decision maker (DM) the final choice between these nondominated solutions. To evaluate and quantify the trade off in

satisfying the different objectives, in order to find a single solution is not simple, and sometimes depends on subjective preferences. For the Tabu Search implementation it is obviously necessary to have a method, that does not depend on human interference, and which is able to compare and rank different solutions with multiple attributes. In addition it must be simple enough so that the computational effort is low, since this action must be performed several times in each iteration. One way to deal with the multiple objective functions is by making “a priori” aggregation or scalarisation of the objective functions. The weights must be defined in

P. Amaral, T.C. Pais / Computers & Operations Research 72 (2016) 160–174

advance, reflecting the decision maker preferences. This procedure is computationally easy to implement but has many drawbacks [25]. Unless some solid justification for the choice of the weights can be trusted, since this choice highly influences the outcome, a good practice requires several runs for different weights, and again, a final evaluation by the DM. A better choice would be to use a multi-attribute method that casts the preferences of the DM in a more realistic way, but that can be automatically adjusted. This combination of features is very difficult but the proposal in this work makes a good attempt to approximate this algorithmic property. The introduction of Compromise Ratio, together with the innovative use of weighting functions instead of fixed weights constitutes a reliable proposal to emulate the required characteristics:

 realistic definition of preferences;  automation (no human interference in the inner iterations of the method);

 computational simplicity. Also it helps to avoid preconditioning, it enables the change of the preferences towards the different criteria along the sequence of iterations and in addition it can also act as a sort of search diversification strategy. The most basic issue about the TS is the solution encoding. In this work the solution is encoded by a vector with a dimension equal to the number of exams. The integer value recorded in the icomponent of the vector is ti and corresponds to the time slot assigned to exam i. A small example is given in Table 1, where exams f1; 2; 3; 4g and f5; 6; 7; 8g are assigned to slot 1 and slot 2, respectively. Regarding step 1 (Initial Solution), a graph colouring heuristic known as “Saturation Degree” [13], based on the work of Carter and Laporte [27], was used to find a starting solution. This heuristic has a good performance in comparison with several other heuristic approaches. This greedy heuristic mainly consists in ranking exams by increasing order of the number of their still available slots. For instance, if exam i and j can only be assigned to two and three slots, respectively, then exam i is ranked before exam j. After this ranking is established, the first exam is assigned to the first available slot and the ranking of exams is updated. In case of a tie, the preference is given to the exam with more students. Next we present a description of step 3.

165

from slot (period) 1 to 2.

The second neighbourhood is based on Kempe chains as introduced by Morgenstern [64]. A neighbourhood of timetable T0 is a set of feasible timetables differing from T0 by the exchange of exams between two time slots. A move corresponds to a feasible swapping of two subsets of exams I and R between two slots s and j. ði; jÞ-ði; sÞ for iA I ðr; sÞ-ðr; jÞ for r A R: The construction of a neighbour solution based on Kempe chains, for a chosen pair of slots j and s is iterative. Sets I and R are the results of a procedure starting with a single move, ði0 ; jÞ-ði0 ; sÞ

for fi0 g ¼ I 0 D J;

where J and S are the sets of exams previously assigned to slot j and s, respectively. When exam i0 is moved to the new time slot s, a chain of simple movements is triggered. All scheduled exams in period s that have a conflict with i0 ðr A R0 D SÞ are moved to slot j. If this set of exams R0 has any conflict in slot j, the previously scheduled exams in j, in conflict with R0, say I 1 D J, are moved to period s. This chain of simple movements continues until there are no conflicts between exams. Then I ¼ ⋃I k and R ¼ ⋃Rk represent, respectively, the exams that transited from slot j to s and from s to j. Fig. 1 illustrates this concept. The smallest Kempe chain occurs when I ¼ I 0 and R ¼ ∅ corresponding to a single swap of periods by one exam. On the other hand, a complete transfer of exams between two slots may happen. In that case I ¼J and R ¼S. It is noteworthy that a feasible solution will always be reached given any two slots. For both neighbourhoods, a complete inspection of the neighbouring solutions was performed. For instance, given the example above of timetable T0, a neighbouring solution Ti is obtained when exams 1 and 2 in period 1 and exams 5, 6 and 7 in period 2 swap periods.

3.1. Neighbourhood A feasible neighbourhood of a solution T0 consists of a set of feasible solutions that can be obtained from T0 by the application of a rule that changes the value of a subset of variables in T0. In our case, it consisted of different assignments of slots to some exams and two different neighbourhoods were considered. An elementary one, corresponding to a given timetable T0, to all timetabling Ti differing from T0 in the assignment of just one exam. For this neighbourhood, a move consists of a slot change for a given exam. Considering a pair (i,j) where i; j are the exam and slot number, respectively, a move is represented by the change of j to k. ði; jÞ-ði; kÞ For example, considering again the set of 8 exams and 2 slots, a possible neighbour of T0 is timetable Ti where exam 3 changes

3.2. Memory Memory in TS refers to the items stored in the tabu list and its management depends on the considered neighbourhood. For the simple neighbourhood, the index of the exam that is moved is recorded. As a consequence, in a number of iterations equal to the tabu tenure, the time slot of this exam is not allowed to change. For the Kempe chains neighbourhood, recording all the chain of moves required too much time and memory. On the other hand, recording all the exams that changed period may lead to an over restricting tabu list. After a few iterations, it could happen that all possible movements are tabu. As a compromise, a pair consisting of both the exam and the time slot of each exam involved in the chain of movements was recorded. So if exam i moved to slot k then the pair (i,k) was added to the tabu list. Exam i is allowed to change from time slot k to r, but cannot return to time slot k while (i,k) remains in the tabu list.

166

P. Amaral, T.C. Pais / Computers & Operations Research 72 (2016) 160–174

3.3. Fuzzy rule based system to manage the length of a tabu move

Inactivity

The number of iterations during which a tabu remains in the tabu list (tabu tenure) has a great impact in the performance of the TS. If the tabu tenure is low, it can happen that in a few iterations a local optimum is revisited and so the algorithm goes into a loop. On the other hand, it favours an intensification of the search in a region. If the tabu tenure is high, the search space is diversified, but a refined local search is less likely to occur and good solutions may go unnoticed. In practice, it is common to run the method repeatedly for the same instance while varying the value of the tabu tenure. This task is cumbersome if conducted manually. The importance of an automatic implementation of the TS is paramount if we consider that most of the staff responsible for the creation of the timetables has no technical skills to conduct the parametrisation of the TS. Ideally, the algorithm should be able to automatically choose between low and high values for the tabu tenure in order to combine intensification with diversification. This tuning strategy can be formulated as a decision problem. To perform the task of deciding the length of the corresponding tabu tenure, a Fuzzy Rule Based System (FRBS) was implemented in each iteration and for each tabu item. The details of this implementation can be found in [65]. In a brief description, the idea behind the FRBS is to emulate a strategy that penalises moves (assigning a high value for the tabu tenure) that in the recent past

Table 3 Normalised values. i 1 2 3 4

fi

mi

di

f~ i

20 61 80 120

40 60 100 400

347.44 781.73 2171.47 34743.56

0.32 0.01 0.05 0.66

iterations were often present in the tabu list. In opposition, moves that were rare and not recently present in the tabu list received lower values for the tabu tenure. Given the tabu list history, two measures were recorded for each element in the tabu list: Frequency : its relative frequency, that is, the ratio between the number of times it has entered the tabu list and the actual number of iterations; Inactivity : the last iteration in which it entered the tabu list. The idea is to construct a Rule Based System where, for each entering tabu item, giving it corresponding pair (Frequency, Inactivity) a rule is fired indicating how long (number of iterations) it will remain in the tabu list, that is, its tabu tenure. The two concepts (Frequency and Inactivity) were defined as Linguistic Variables [87] with 3 linguist terms each – LOW, MEDIUM and HIGH, and fuzzyfield using a gaussian membership function. Since there are two linguistic variables, with 3 linguistic terms, a total of 9 rules were used to find a value zi, i ¼ 1; …; 9 as shown in Table 2. This value is used to produce an integer value, the tabu tenure, using a 0-order Sugeno system [76]. The details are similar to the implementation in [65]. To graphically show the behaviour of the Sugeno system, Fig. 2 illustrates the pattern of the tabu tenure value according to the values of Frequency and Inactivity. Darker colours indicate higher values for the tabu tenure. Further details can be found in [65]. 3.4. Neighbourhood evaluation and selection

0.5

For the current iteration solution, a set of neighbouring points is generated and evaluated. The best point according to some criteria will be chosen as the new starting point for the next iteration. In a single objective problem, its value is often used to rank the solutions. In the multi-objective case, one possibility is to aggregate the several functions into a single objective. In this paper we chose a different approach and a multi-attribute problem was considered. The reason for doing so was to avoid a premature conditioning of the problem, allowing a broader inspection of solutions in a sort of diversification strategy. For a given set of points, T 1 ; T 2 ; …; T r , their corresponding values of the above-mentioned objectives functions f 1 ; f 2 ; f 3 ; f 4 were calculated. To select a point, a multi-attribute decisionmaking (MADM) problem had to be solved where the points are regarded as alternatives and the value of the objective functions can be viewed as attributes.

0.4

3.5. Data normalisation

0.3

Typically, the attributes in multi-attribute problems are normalised since they may be defined according to different measures. To make them comparable, a rescaling of the values is most often performed. One common technique is the division by the maximum, but in some cases it happens that the reference value is a smaller value than the maximum. For instance, when one attribute is price, the user may have a threshold that is lower than the most expensive item. In this case, the utility of an item where

Frequency Fig. 2. Tabu Tenure depending on Frequency and Inactivity.

1 0.9 0.8 0.7 0.6

0.2 0.1 0

0

5

10

15

20

25

Fig. 3. Gaussian mapping function.

30

35

40

P. Amaral, T.C. Pais / Computers & Operations Research 72 (2016) 160–174

price is above the threshold should be set to zero. Our approach was to map the values on the interval ½0; 1, in a sort of fuzzyfication approach. The positive tail of a gaussian function with zero mean and unitary variance was used. This function's smoothness and shape perform a good representation of utility (Fig. 3). In this case, the 0 is transformed into the highest possible value of 1. It corresponds to the ideal situation of complete satisfaction of the objective function. For values near the ideal, the penalty is not severe, but there is a deep accentuation of this severity for values higher than an average value. The same expression for the four objectives f i ðTÞ; i ¼ 1; …; 4 was used:  2 ðf i ðTÞÞ m2i ~f ðTÞ ¼ e di ; where d ¼ ; ð10Þ i i log ð10  2 Þ where the only difference is in the value of the constant mi for i ¼ 1; …; 4. These values were set to

167

aforementioned techniques are not suitable. Their inclusion as a subroutine in each iteration of the TS represents a significant computational effort. Other simple methods, such as MaxiMin, MiniMax and Conjunctive & Disjunctive, could be implemented, but they lack some sophistication necessary to produce a good selection strategy, which is a vital step in the success of the Tabu Search. A good balance between computational simplicity and a satisfactory criteria to rank the solutions leads to the choice of Compromise Ratio [55]. This method can be viewed as an extension of TOPSIS (Technique for Order of Preference by Similarity to Ideal Solution) [50]. The Compromise Ratio is based on the idea that the best alternative should be as close as possible to the ideal solution a þ (a four-dimensional vector of ones in our case), and as far as possible from the negative-ideal solution a  (a four-dimensional vector of zeros) (Fig. 4). If the attributes have different degrees of importance for the decision-maker, a component-wise weighting of matrix Xnm ¼ ðxij Þ may be performed,

m1 ¼ 0:10M;

ð11Þ

m2 ¼ 0:15M;

ð12Þ

vij ¼ xij  wij :

m3 ¼ 0:25M;

ð13Þ

m4 ¼ M;

ð14Þ

In general, the weights depend only on the attributes, so wij ¼ wj . For each point Ti, we needed to compute the distances to the ideal and negative-ideal point, respectively vffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi uX m u p þ Dp ðT i Þ ¼ t ðajþ  vij Þp ; 8 i ¼ 1; …; n ð16Þ

where M is the total number of enrolments for exams. These mi values are related to a threshold that corresponds to the highest reasonable value above which it is considered an undesirable situation. The value of 10  2 in (10) depends on the working precision and corresponds to f~ i ðmi Þ. Numerical example 1. Given a set of 100 students and considering M ¼400, Table 3 depicts an attribute value (fi), the constant mi, the value di in (10), and the normalised attribute value f~ i . Moreover, each row corresponds to different objective function values which can be viewed as attributes. This small example helps to understand the effect of constants mi. In a total of 400 exams’ enrolments, 40, 60, 100 and 400 represent a threshold for each objective above which the utility is less or equal than 10  2.

ð15Þ

j¼1

Dp ðT i Þ ¼

vffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi uX m u p t ðvij  aj Þp ;

8 i ¼ 1; …; n:

ð17Þ

j¼1

Given these distances and in order to rank the alternatives, the following parametrised ratio was used,

ξp ðT i Þ ¼ θ 

D1p ðT þ Þ  Dpþ ðT i Þ þ

þ

D1p ðT Þ  D2p ðT Þ

þ ð1  θÞ 

Dp ðT i Þ  D2p ðT  Þ ; D1p ðT  Þ  D2p ðT  Þ

ð18Þ

where θ A ½0; 1; and 8 þ þ > < D1p ðT Þ ¼ max fDp ðT i Þg i A f1;…;ng

þ > fDpþ ðT i Þg : D2p ðT Þ ¼ i Amin f1;…;ng 8   > < D1p ðT Þ ¼ max fDp ðT i Þg

4. Compromise Ratio

i A f1;…;ng

In each iteration of the TS, the set of V neighbouring points T i , for i¼ 1,…,V, is evaluated using the four objective functions. After normalising the values, a matrix X with V alternatives and 4 attributes is obtained.

ALTERNATIVES

X 8 T1 > > > < T2 > ⋮ > > : TV

ATTRIBUTES zfflfflfflfflfflfflfflfflfflfflfflffl ffl}|fflfflfflfflfflfflfflfflfflfflfflfflffl{ ~f f~ 2 f~ 3 f~ 4 1 2 x11 x12 x13 6 x21 x22 x23 6 6 4 … … …

xV 1

xV2

xV3

 fDp ðT i Þg > : D2p ðT Þ ¼ i Amin f1;…;ng

The value of θ reflects the decision-maker's attitude towards the proximity to the ideal and the negative-ideal solution. If θ is close

3 x14 x24 7 7 7 … 5 xV 4

To proceed to the next iteration, it is necessary to choose one of the timetabling solutions from fT 1 ; T 2 ; …; T V g which will be set as the next reference solution. If a solution dominates all the others its choice is clear. Domination of a solution Ti with attributes ðxni1 ; xni2 ; xni3 ; xni4 Þ implies that xnik ¼ max fxjk g j ¼ 1;…;V

for k ¼ 1; 2; 3; 4:

Typically, none of these solutions dominate the others. Hence, it is necessary to make a choice based on the 4 criteria already mentioned. Different multi-attribute methods like AHP [73], ELECTRE [72], PROMETHEE [12] can be used to select a solution. Since this multi-attribute problem must be solved in every iteration, the

Fig. 4. Distance to ideal and negative-ideal point.

168

P. Amaral, T.C. Pais / Computers & Operations Research 72 (2016) 160–174

to 1, it means that solutions near the ideal are more valued than solutions away from the negative-ideal. Equal importance to both distances is given by θ ¼ 1=2. Solutions are ranked based on ξp ðT i Þ, which measures how alternative Ti complies with the compromise established by θ. Note that if a solution Ti is simultaneously the closest to the ideal solutions and the furthest from the negativeideal solution, then ξp ðT i Þ ¼ 1 attains the maximal value.

Theorem 1. The inequalities 0 r g k r1; ∂g k Z 0; ∂xik xpik 1 g k 

8 k A f1; …; mg;

ð23Þ

8 k A f1; …; mg; ∂g k Z 0; ∂xik

ð24Þ

8 k A f1; …; mg;

ð25Þ

4.1. Weighting functions

are sufficient conditions for the monotonicity of

The weights in (15) are defined by the user, and highly influence the final ranking of the alternatives. Hence, their choice must be careful. An interactive definition of the weights by the user is a drawback since an important feature of timetabling software is automation. In addition, capturing preferences by a simple linear model seems too restrictive. Sometimes, the decision-maker does not react in a linear or independent fashion regarding the attributes. For instance, consider the classical situation of buying a car. The evaluation of alternatives can include price and comfort as main attributes. If the car is expensive, it is also expected to be very comfortable. However, if the car is not expensive, then there is no such expectation. In this situation, the value of one attribute influences the weight given to another attribute. The same happens to the attributes regarding the examination timetabling problem. For instance, if many students have more than one exam on the same day, then it is necessary to reinforce the weight that penalises the occurrence of exams in consecutive periods. In [71], to model similar situations, the use of weighting functions instead of fixed weights was proposed. The gain is that preferences are modelled in a more general way, capturing more complex relations than in a simple linear model. The weights are defined by the following expression:

Proof. To guarantee the monotonicity of ∂ξ ensure that ∂xikp Z 0. Since

g ðx Þ ~ ij ðxij Þ ¼ Pm j ij ; w t ¼ 1 g t ðxit Þ

ð19Þ

where the gj are weights generating functions. Mixture operators, in the context of aggregation operators were introduced in [57], and in [71] some interesting applications were presented. In this work, weighting functions are used in the context of Compromise Ratio. By replacing in (15) the weights by weighting functions, a new procedure for ranking the alternatives is proposed which has a more realistic way of modelling preferences. 4.2. Modified compromise Ratio

Pm



t¼1

g t ð1Þ

 g 1 ð1Þ; …; g m ð1Þ ;

ð20Þ

∂Dpþ ∂xik

∂Dpþ ∂xik

þ

þ

D1p ðT Þ D2p ðT Þ

r0, and

∂Dp ∂xik

þ ð1  θÞ 

Dp ðT i Þ  D2p ðT  Þ

D1p ðT  Þ  D2p ðT  Þ

;

∂ ξp ∂xik Z 0.

First it is proved that

for p Z 1:

ð26Þ

Z 0, we have

r 0:

By definition vffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi

uX m u g j ð1Þ  xij g j ðxij Þ p p þ Pm Dp ðT i Þ ¼ t t ¼ 1 g t ðxit Þ j¼1

To simplify (26) consider the expressions:

g ð1Þ  xiq g q ðxiq Þ p γ q ðxi Þ ¼ q for q ¼ 1; …; m; ð27Þ εðxi Þ P εðxi Þ ¼ m and where xi ¼ ðxi1 ; …; xim Þ, t ¼ 1 g t ðxit Þ, Pm σ ðxi Þ ¼ q ¼ 1 γ q ðxi Þ. Now vffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi vffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi

uX uX m m ffiffiffiffiffiffiffiffiffiffi u p u g j ð1Þ xij g j ðxij Þ p p p þ p Dp ðT i Þ ¼ σ ðxi Þ ¼ t γ q ðxi Þ ¼ t for p Z 1; εðxi Þ q¼1 j¼1 ð28Þ and we have ∂Dpþ ∂xik

∂σ 1 ∂xik ¼ : p ðDpþ ðT i ÞÞp  1

ð29Þ

P ∂γ q ðxi Þ ∂gk ∂σ , and ∂x ¼ m Once ∂x∂εik ¼ ∂x q ¼ 1 ∂xik , then when q¼ k we have ik ik



 ∂g ∂g 

p  1  xik k  g k ðxik Þ εðxi Þ  k g k ð1Þ  xik g k ðxik Þ ∂γ q g k ð1Þ  xik g k ðxik Þ ∂xik ∂xik ¼p : ∂xik εðxi Þ εðxi Þ2

Using the left inequality of hypothesis (23) we may conclude that

εðxi Þ Z0:

ð31Þ

Since xij r 1 and using condition (24) we know that

and the negative-ideal is the null vector. The equations analogue to (16) and (17) are vffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi uX m  p u p þ ~ ij ðxij Þ ; 8 i ¼ 1; …; n; ð21Þ ajþ  xij w Dp ðT i Þ ¼ t j¼1

Dp ðT i Þ ¼

then if

D1p ðT þ Þ  Dpþ ðT i Þ

ξp it is sufficient to

ð30Þ

If we use weighting functions, then the ideal point a þ becomes 1

ξp ðT i Þ ¼ θ 

ξp as defined in (18).

vffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi uX m  u  p t ~ ij ðxij Þ p ; xij w

8 i ¼ 1; …; n:

ð22Þ

j¼1

Now the issue is to choose the functional expression of the weighting functions. We know that the operator ξp is not monotonic for all weighting functions. In order to guarantee the monotonicity of ξp, we devised a condition similar to the one presented in [57,61].

g k ð1Þ  xik g k ðxik Þ Z 0:

ð32Þ

From (31) to (32) and taking in consideration that p Z1, we proved that

g ð1Þ  xik g k ðxiq Þ p  1 p k Z 0: ð33Þ εðxi Þ Since xij Z 0, and using condition (31), hypotheses (24), and the left side of condition (23) we have

∂g  xik k  g k ðxik Þ εðxi Þ r 0: ð34Þ ∂xik From (32) and (24), 

 ∂g k  g ð1Þ  xik g k ðxik Þ r 0: ∂xik k

ð35Þ

P. Amaral, T.C. Pais / Computers & Operations Research 72 (2016) 160–174

So from (33) to (35) it is proved that ∂γ q r 0: ∂xik

ð36Þ

Now, when q a k we have

∂γ q g q ð1Þ  xiq g q ðxiq Þ ¼p ∂xik εðxi Þ

p  1

  ∂g k  g q ð1Þ xiq g q ðxiq Þ ∂xik ; εðxi Þ2

1 p ε ðxi Þ

∂γ q r 0: ∂xik

ð37Þ

From (36) and (37) ∂σ r 0: ∂xik

ð38Þ

Since Dpþ Z 0 and p Z 1 then 1 pðDpþ ðT i ÞÞp  1

Z 0:

ð39Þ

Using (29), (38) and (39) we may conclude that ∂Dpþ ∂xik

r 0:

ð40Þ

Next we prove that ∂Dp ∂xik

ð41Þ

First we take in consideration that vffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi

p uX m u xij g j ðxij Þ p  Pm for p Z 1: Dp ðT i Þ ¼ t t ¼ 1 g t ðxit Þ j¼1

ð42Þ

Again for simplification we introduce the following:

x g ðx Þ p γ q ðxi Þ ¼ iq q iq for q ¼ 1; …; m ð43Þ ε ðxi Þ Pm Pm where xi ¼ ðxi1 ; …; xim Þ, ε ðxi Þ ¼ t ¼ 1 g t ðxit Þ, and σ ðxi Þ ¼ q ¼ 1 γ q ðxi Þ. Now, ∂Dp ∂xik

∂ε ∂xik

∂g k ¼ ∂x ik

∂σ ∂xik

ð44Þ

¼ then when q ¼k we have

 ∂g k ∂g 

p  1 xik þ g k ðxik Þ ε ðxi Þ  k xik g k ðxik Þ ∂γ q xik g k ðxik Þ ∂xik ∂xik ¼p ∂xik ε ðxi Þ ε ðxi Þ2

Once

and

 ∂g 

 k x g ðx Þ ∂γ q 1 p  1 ∂xik ik k ik Z p : ∂xik ε ðxi Þ ε ðxi Þ2

ð46Þ

 ∂g 

 k x g ðx Þ xik g k ðxik Þ p  1 ∂xik ik k ik : p ε ðxi Þ ε ðxi Þ2

ð50Þ

From (49) and (50) we obtain

∂g

p  1 xik k þ g k ðxik Þ ε ðxi Þ ∂σ x g ðx Þ ∂xik Z p ik k ik ∂xik ε ðxi Þ ε ðxi Þ2

ð51Þ

∂g k m  ∂xik X  xis g s ðxis Þ : ε ðxi Þ2 s ¼ 1   P Since xis r 1, ε ðxi Þ Z m s ¼ 1 xis g s ðxis Þ , and we conclude that

∂g

p  1 xik k þ g k ðxik Þ ε ðxi Þ ∂σ x g ðx Þ ∂xik Z p ik k ik ∂xik ε ðxi Þ ε ðxi Þ2 1 p ε ðxi Þ



1 p ε ðxi Þ

p  1 

∂g k ∂xik ε ðxi Þ; ε ðxi Þ2



ð47Þ

ð52Þ

ð53Þ

p  1 

ð54Þ



∂σ 1 1 ∂g p1 p  1 p ∂g k Zp xik þp g k ðxik Þp  k : p g k ðxik Þ p xik ∂xik ∂xik ∂xik ε ðxi Þ ε ðxi Þ

ð55Þ

Given conditions (23), (24), ε ðxi Þ Z 0, and p Z 1 we obtain 1

g k ðxik Þp  1 xpik

∂g k Z0: ∂xik

ð56Þ

The hypotheses (25), ε ðxi Þ Z 0, and p Z 1 ensure that

1 ∂g k p1 p x g ðx Þ  p Z 0: ∂xik ε ðxi Þp ik k ik ð45Þ



∂g

p  1 xik k þ g k ðxik Þ ε ðxi Þ ∂γ q x g ðx Þ ∂xik ¼ p ik k ik ∂xik ε ðxi Þ ε ðxi Þ2

ð49Þ

Since g k ðxik Þ r1 and xik r 1 we have

ε ðxi Þp

∂γ q ðxi Þ q ¼ 1 ∂xik ,

 ∂g k  x g ðx Þ ∂xik ik k ik : ε ðxi Þ2

 ∂g k 

∂γ q xiq g q ðxiq Þ p  1 ∂xik xiq g q ðxiq Þ ¼p : ∂xik ε ðxi Þ ε ðxi Þ2

p

Pm

p  1 

When q a k we obtain



Z 0:

∂σ 1 ∂xik ¼ : p ðDp ðT i ÞÞp  1

Using the right inequality of hypothesis (23), and the fact that xik r1 we may conclude that

∂g

p  1 xik k þ g k ðxik Þ ε ðxi Þ ∂γ q x g ðx Þ ∂xik Z p ik k ik ð48Þ ∂xik ε ðxi Þ ε ðxi Þ2

and by (33) and (35) we obtain

169

Finally, from (57)

∂Dp ∂xik

ð57Þ

Z0, which concludes the proof.□

The next issue is the choice of the weighting functions verifying conditions of Theorem 1. Clearly linear functions do not meet the requirements, so other functions are proposed in Theorem 2. Theorem 2. The following functions verify the hypotheses (23)–(25) of Theorem 1. gðxÞ ¼ ðα  δÞxp þ δ;

ð58Þ

Table 4 Variation of ponderation by weighting functions for three solutions. T0

x0i

gi

~ 0i w

v~ 0i

T1

x1i

gi

~ 1i w

v~ 1i

T2

x2i

gi

~ 2i w

v~ 2i

3 20 20 90

0.97 0.60 0.83 0.79

0.88 0.63 0.67 0.61

0.32 0.22 0.24 0.22

0.31 0.13 0.20 0.17

10 20 25 200

0.75 0.60 0.75 0.32

0.77 0.63 0.64 0.49

0.30 0.25 0.25 0.19

0.23 0.15 0.19 0.06

10 20 1 00 200

0.75 0.60 0.01 0.32

0.77 0.63 0.50 0.49

0.32 0.26 0.21 0.21

0.24 0.16 0.00 0.06

170

P. Amaral, T.C. Pais / Computers & Operations Research 72 (2016) 160–174

Table 5 Comparison of operators. Operator

Parameter

T0 ¼ ð3; 30; 40; 77Þ

T1 ¼ ð5; 28; 45; 95Þ

T2 ¼ ð10; 20; 40; 75Þ

ξW

θ ¼ 0:3 θ ¼ 0:5 θ ¼ 0:8

0.71 0.51 0.22

0.35 0.25 0.10

0.30 0.50 0.80

ξL

θ ¼ 0:3 θ ¼ 0:5 θ ¼ 0:8

0.72 0.60 0.40

0.00 0.00 0.00

1.00 1.00 1.00

Lin-Ag

α ¼ ð0:9; 0:8; 0:7; 0:75Þ

0.66

0.62

0.67

Table 6 Data set. Data set

Table 8 Computational results – average discrimination. Institution

No. of periods

No. of exams

No. of students

D.C.M.

York Mills Collegiate Ins., Toronto uta-s-92 Faculty of Arts and Sciences, Uni. of Toronto tre-s-92 Trent Uni., Peterborough, Ontario hec-s-92 Ecole des Hautes Et. Com., Montreal

21

181

941

0.27

35

622

21,267

0.13

23

261

4360

0.18

18

81

2823

0.42

ute-s-92

10

184

2750

0.08

24

190

1125

0.29

23 20

486 461

11,483 5349

0.07 0.06

Carleton Uni., Ottawa 32 Carleton Uni., Ottawa 35 St. Andrew's Junior H.S., 13 Toronto

543 682 139

18,419 16,925 611

0.14 0.13 0.14

yor-f-83

ear-f-83 rye-s-93 kfu-s-93 car-f-92 car-s-91 sta-f-83

Faculty of Engineering, Uni. of Toronto Earl Haig Collegiate Inst., Toronto Ryeson Uni., Toronto King Fahd Uni., Dharan

Table 7 Computational results – complete discrimination.

ute-s-92

Objective 1

Objective 2

Objective 3

Objective 4

(1,1,1,1) (1,0.2,0.2,0.2) (0.2,1,0.2,0.2) (0.2,0.2,1,0.2) (0.2,0.2,0.2,1)

4885 3794 4126 3982 5145

7249 6628 6624 (10.01%) 6021 7431

72 328 328 34 471

2384 3278 3278 5427 1747

ear-f-83

Objective 1

Objective 2

Objective 3

Objective 4

(1,1,1,1) (1,0.2,0.2,0.2) (0.2,1,0.2,0.2) (0.2,0.2,1,0.2) (0.2,0.2,0.2,1)

2379 475 650 988 2051

3196 1602 1292 1535 3480

116 542 367 126(8.67%) 424

2970 5911 5896 5799 2576

rye-s-93

Objective 1

Objective 2

Objective 3

Objective 4

(1,1,1,1) (1,0.2,0.2,0.2) (0.2,1,0.2,0.2) (0.2,0.2,1,0.2) (0.2,0.2,0.2,1)

10,108 1659 1686 3936 9147

15,023 6331 3318 6527 14,007

221 2260 1827 248(12.21%) 783

5599 22,614 21,806 25,546 8883(58.65%)

kfu-s-93

Objective 1

Objective 2

Objective 3

Objective 4

(1,1,1,1) (1,0.2,0.2,0.2) (0.2,1,0.2,0.2) (0.2,0.2,1,0.2) (0.2,0.2,0.2,1)

6230 831 1452 2198 3424

10,075 3271 3359 (2.69%) 3619 7687

424 1307 872 209 481

9687 13,066 12,438 14,415 5123

yor-f-83

Objective 1

Objective 2

Objective 3

Objective 4

(1,1,1,1) (1,0.2,0.2,0.2) (0.2,1,0.2,0.2) (0.2,0.2,1,0.2) (0.2,0.2,0.2,1)

627 342 619 934 1141

1279 1422 1137 1416 2076

182 607 346 99 423

4346 4406 4687 4947 2660

uta-s-92

Objective 1

Objective 2

Objective 3

Objective 4

car-f-92

Objective 1

Objective 2

Objective 3

Objective 4

(1,1,1,1) (1,0.2,0.2,0.2) (0.2,1,0.2,0.2) (0.2,0.2,1,0.2) (0.2,0.2,0.2,1)

1861 1619 1674 5189 4962

3188 3712 2554 7295 7505

936 2167 1076 600 759

11,310 13,767 12,505 10,606 8694

(1,1,1,1) (1,0.2,0.2,0.2) (0.2,1,0.2,0.2) (0.2,0.2,1,0.2) (0.2,0.2,0.2,1)

5220 4093 4470 4191 4262

6566 5734 6378(13.37%) 5626 5896

233 330 339 253(8.58%) 373

7811 8074 6753 8332 7296(8.04%)

tre-s-92

Objective 1

Objective 2

Objective 3

Objective 4

car-s-91

Objective 1

Objective 2

Objective 3

Objective 4

(1,1,1,1) (1,0.2,0.2,0.2) (0.2,1,0.2,0.2) (0.2,0.2,1,0.2) (0.2,0.2,0.2,1)

576 332 554 919 978

966 1297 899 1471 1893

203 599 356 149 401

4762 4920 5001 5637 3175

(1,1,1,1) (1,0.2,0.2,0.2) (0.2,1,0.2,0.2) (0.2,0.2,1,0.2) (0.2,0.2,0.2,1)

4010 3929(0%) 3929 4015 3998

5297 5090 5090(0%) 5304 5637

286 327 327 286 343

11,457 10,595 10,595 11,452 9764

hec-s-92

Objective 1

Objective 2

Objective 3

Objective 4

sta-f-83

Objective 1

Objective 2

Objective 3

Objective 4

(1,1,1,1) (1,0.2,0.2,0.2) (0.2,1,0.2,0.2) (0.2,0.2,1,0.2) (0.2,0.2,0.2,1)

475 250 599 915 1112

870 1427 800 1507 3054

170 581 421 84 173

5103 5512 5385 5830 2019

(1,1,1,1) (1,0.2,0.2,0.2) (0.2,1,0.2,0.2) (0.2,0.2,1,0.2) (0.2,0.2,0.2,1)

3195 3202(0.22%) 3202 3254 3202

4669 4678 4678(5.67%) 4427 4678

1121 1148 1148 838 1148

8432 8422 8422 9577 8422(0%)

Table 9 Computational results – special cases.

(0%)

P. Amaral, T.C. Pais / Computers & Operations Research 72 (2016) 160–174

gðxÞ ¼ δ

αxp

δ

;

ð59Þ

  gðxÞ ¼ log 1 þ eα  δ  1Þxp þ δ:

ð60Þ

In (58)–(60), the constant α belongs to the unit interval and represents the importance (weight) of the attribute when its satisfaction is maximal. Constant δ represents the importance (weight) of the attribute when its satisfaction is minimal. However, δ must belong to the interval ½lower_bound; α, where lower_bound depends on the α value. In the computational experiments, the function (58) and a value of p¼ 2 was used for all attributes. From the conditions presented in Theorem 1 the value of lower_bound was set to 23α. Numerical example 2. Using the normalisation defined (10), we considered 3 different solutions T 0 ; T 1 and T2, δ ¼ 0:1 and αi for i ¼ 1; 2; 3; 4 in (58) equal to ð0:9; 0:8; 0:7; 0:75Þ, respectively. Tables 4 and 5 summarise the results of the weighted Compromise Ratio. The columns x0i, x1i and x2i in Table 4 represent the normalised values. For each xj, the weighting generation function's values from (58) are given in column gi and the weights as in (19) are repre~ ij . The average values similar to (15) are dissented in column w played in columns v~ ji . Analysing the bold values in the second row below the header for the same value of 20, we see that the corresponding weight is aggravated in the sequence of the three solutions, influenced by the remaining values. Considering now another set of solutions in Table 5, the performance of the combination of the weighting functions with Compromise Ratio (ξW) is exemplified in comparison with a classical Compromise Ratio (ξL) and a linear operator (Lin-Ag) with α weights. For the Compromise Ratio, three different values of θ (18) are tested. The results show that the linear aggregation hardly differentiates the three solutions. It is also clear that the Compromise Ratio with weighting function has a greater ability to capture subtle differences among solutions and is more sensitive towards changes in θ.

5. Computational experience The algorithm proposed in this paper for the multi-objective approach for exams timetabling problem was tested using the Toronto's benchmark data set [27]. The main characteristics of the data instances are displayed in Table 6. The last column D.C.M. represents the density of the conflict matrix. This matrix has a number of columns and rows equal to the number of exams, and each entry (i,j) represents the number of students enrolled in both courses, indexed by i and j. The percentage of non-zero elements represents its density. In general, higher density values increase the difficulty of the problem. The experiments were performed on a Pentium Intel Core2 Duo T9400 with 2.53 GHz and 3 GB of memory. The stopping conditions used in Tabu Search were 1 h or 25,000 iterations. In all experiments, the algorithm stopped after 1 h, never reaching 25,000 Table 10 Computational results – Tabu tenure comparison. Tabu tenure

Objective 1

Objective 2

Objective 3

Objective 4

FRBS 5 10 15

223 270 239 241

876 1658 1233 1490

463 452 447 454

3571 3827 4078 4328

171

iterations. For some larger instances, we allowed the algorithm to run for 2 h. To evaluate the performance of a multi-objective problem is not straightforward. The comparison of solutions from different methods requires, for each solution, analysing the outcome of several objectives, 4 in this case. Even for unsophisticated methods, like linear aggregation, most likely the solution will be a Pareto solution. How can we compare two non-dominated solutions? They represent different compromises. So what is fundamental is to assess if the method performs well by “following” the preferences expressed in the definition of the weights. In this paper we performed a computational study similar to the one presented in [17]. The main goal was to test the algorithm for the minimisation of all the objectives and also to understand how the algorithm performs when using different weighting factors – α in (58) (δ was fixed to lower_bound which was set to 23α). The chosen weights accentuated the preference towards every criteria, one at each time. With this choice we want to test the capability of the method to discriminate between objectives. The computational results are depicted in Tables 7–9. The αweights for the different objectives are described in the first column of each table as a four-dimensional vector. For instance, in Table 7 for the data yor-f-83, the weights regarding the first, second, third and fourth objective are ð1; 1; 1; 1Þ. In each column, the lower value obtained for the tested α-weights is displayed in bold. The results are presented in three tables to distinguish the outcome. In Table 7, a complete discrimination of objectives was obtained in relation to the highest α-weight. As expected, high values of α in one objective tend to induce lower values for that objective value at the expense of the remaining objectives. For the data in Table 8, it is still possible to identify similar but less strict  best value behaviour. However, the relative gap 100x best % towards value the best known value is still small in most cases. Moreover, considering that this happened just for one objective, it cannot be considered a failure. Preliminary results for instances uta-s-92, rye-s-93 and kfu-s93 with a 1 h running time limit presented a poor ability to discriminate between objectives. This limit was increased to 2 h for these three data sets and the quality of the results was improved. A complete discrimination was obtained for uta-s-92 (Table 7) and small gaps for rye-s-93 and kfu-s-93 (Table 8). Table 9 presents the cases where a strict discrimination between objectives was not achieved for two objectives. However, the gaps are still small. In car-s-91, and particularly for sta-f-83, there are many different weights which obtain the same values. One possible explanation is that the regions of attraction of the 4 objectives are very close. This can also be corroborated by the fact that the absolute gaps are also small when the first row is taken as a reference. It is interesting to note that the performance does not seem to be related to the potential difficulty induced by higher values of D.C.M.. It can also be observed that increasing the running time may be crucial. The benefits of applying the automatic tabu tenure using the FRBS in Section 3.3 are clear since it avoids the difficult and cumbersome task of tuning this parameter and was confirmed experimentally in [65]. Nevertheless it is interesting to see how it performs for the multi-objective case. In Table 10 it is possible to see a comparison between the FRBS and predefined fixed values for the tabu tenure. The behaviour was similar for all the data sets and we present here in particular the results for hec-s-92, using 1000 iterations and 5 min of running time. The active stopping criteria were in all 4 cases the number of iterations. All the remaining parameters (constants for the weighting function and θ for the compromise ratio) were the same in all runs. These results illustrate a typical behaviour in TS. The best performance is not related with smaller or larger values for the tabu tenure. In this example comparing the tabu tenure is equal to 5, 10 and 15, the best result was

172

P. Amaral, T.C. Pais / Computers & Operations Research 72 (2016) 160–174

Fig. 5. Comparison of weights – CR versus constant.

obtained for the middle value 10. It is expected that smaller values allow for a deeper local search, at the risk of being trapped in a local optimum, larger values increase the diversification of the search at the risk of stepping over the optimal value. So in general several values must be tried for the same instance. The unquestionable merit of the FRBS is that it defines the tabu tenure differently for each tabu item, promoting intensification or diversification based on the recorded information about that item. In this example, using FRBS the best value was obtained for Objectives 1, 2 and 4. The next experiment is an attempt to highlight the influence in the final solution of the Modified Compromise Ratio (MCR) in comparison with the aggregation of the objective functions (AOF). Again for the data hec-s-92, using 1000 and 5 min respectively as the iterations and time limit, 10 runs for the MCR and 10 runs using the AOF were executed. In MCR the values of the polynomial weighting function factors (α in (58)) for objective functions 1, 2 and 4 were set to 0.9, 0.6 and 0 respectively. The factor δ was set to 23α. For the AOF we used the same constant weights for the correspondent objective functions. The weight for the objective function 3 varied in the interval ½0:1; 1 using a regular step of 10  1, both for MCR and AOF (horizontal axes). As we mentioned before the values of the solutions cannot be individually compared, but it is interesting to notice experimentally the behaviour of these two approaches. Fig. 5 shows the value of the final solution for the first 3 objectives (vertical axes). The left graph is related to the MCR, the graph on the right to AOF. First we may notice an almost perfect consistent decrease in the objective 3 (serie CR-Obj3) as the factor increases for MCR while for AOR the variations have ups and downs (serie Const-Obj3). As expected the decreasing value of objective 3 is achieved at expenses of the other objectives, but in MCR, since the value of the weighting functions is influenced by the values of the attributes, the balance between the values of the objective functions is smoother.

6. Conclusions In this paper, we presented a new approach to solve a multiobjective examination timetabling problem. The difficulty in addressing these problems is well known, and so it is always a challenge to develop more efficient approaches. The use of the Tabu Search is well justified due to the complexity of the problem. In order to increase the automation of the method, a Fuzzy Inference Ruled Based System was developed to manage an appropriate choice of the tabu tenure. In order to evaluate the neighbouring solutions in each iteration, a modified version of the Compromise Ratio multi-attribute method was developed. The replacement of the fixed weights by weighting generating functions was proposed. This change resulted in a more automatic, complex and realistic

modelling of preferences by the decision-maker. To guarantee the monotonicity of the aggregation operator, some sufficient conditions were established for the weighting generation function. Moreover, a set of functions were identified which satisfy these conditions. The proposal presented in this paper can be easily adapted to other problems and the theoretical results presented for the modified Compromise Ratio method can be used for any other multi-attribute problem. In future work, to make the method more automatic we want to develop an intelligence interface that can settle the weights based on a simple inference system answered by the decision-maker. We would like to thank the anonymous referees for their valuable comments and suggestions which helped us to improve the quality of the paper.

References [1] Abdullah S, Ahmadi S, Burke EK, Dror M. Investigating Ahuja-Orlin's large neighbourhood search approach for examination timetabling. OR Spectr 2007;29(2):351–72. [2] Abdullah S, Turabieh H, McCollum B, McMullan P. A hybrid metaheuristic approach to the university course timetabling problem. J Heuristics 2012; 18(1):1–23. [3] Abramson D, Krishnamoorthy M, Dang H. Simulated annealing cooling schedules for the school timetabling problem. Asia Pac J Oper Res 1999;16:1–22. [4] Ahuja RK, Orlin JB, Sharma D. Multi-exchange neighborhood structures for the capacitated minimum spanning tree problem. Math Progr 2001;91(1):71–97. [5] Arani T, Lotfi V. A three phased approach to final exam scheduling. IIE Trans 1989;21(1):86–96. [6] Asmuni H, Burke EK, Garibaldi J, McCollum B. Fuzzy multiple heuristic orderings for examination timetabling. In: Burke EK, Trick M, editors. Practice and theory of automated timetabling V, Lecture notes in computer science, vol. 3616. Berlin: Springer; 2005. p. 334–53. [7] Awad RM, Chinneck JW. Proctor assignment at Carleton university. Interfaces 1998;28(2):58–71. [8] Banbara M, Soh T, Tamura N, Inoue K, Schaub T. Answer set programming as a modeling language for course timetabling. Theory Pract Log Progr 2013;13:783–98. [9] Bellio R, Di Gaspero L, Schaerf A. Design and statistical analysis of a hybrid local search algorithm for course timetabling. J Sched 2012;15(1):49–61. [10] Boland N, Hughes BD, Merlot LTG, Stuckey PJ. New integer linear programming approaches for course timetabling. Comput Oper Res 2008;35(7):2209–33. [11] Boufflet JP, Négre S. Three methods used to solve an examination timetable problem. In: Practice and theory of automated timetabling, Lecture notes in computer science, vol. 1153. Berlin, Heidelberg: Springer; 1996. p. 327–44. [12] Brans JP, Vincke Ph. A preference ranking organisation method: (the Promethee method for multiple criteria decision-making). Manag Sci 1985; 31(6):647–56. [13] Brélaz D. New methods to color the vertices of a graph. Commun ACM 1979; 22(4):251–6. [14] Broder S. Final examination scheduling. Commun ACM 1964;7(8):494–8. [15] Burke E, Bykov Y, Newall J, Petrovic S. A time-predefined local search approach to exam timetabling problems. IIE Trans 2004;36(6):509–28. [16] Burke E, Jackson K, Kingston JH, Weare R. Automated university timetabling: the state of the art. Comput J 1997;40(9):565–71. [17] Burke EK, Bykov Y, Petrovic S. A multicriteria approach to examination timetabling. In: Burke E, Erben W, editors. Practice and theory of automated

P. Amaral, T.C. Pais / Computers & Operations Research 72 (2016) 160–174

[18]

[19]

[20] [21]

[22]

[23] [24]

[25]

[26] [27] [28] [29] [30]

[31] [32]

[33] [34] [35] [36]

[37] [38] [39] [40]

[41]

[42] [43] [44] [45]

[46] [47] [48] [49] [50]

timetabling III (PATAT 2000, Konstanz, Germany), Lecture notes in computer science, vol. 2079. Berlin, Heidelberg, New York: Springer-Verlag; 2001. p. 118–31. Burke EK, Eckersley AJ, McCollum B, Petrovic S, Qu R. Hybrid variable neighbourhood approaches to university exam timetabling. Eur J Oper Res 2010; 206(1):46–53. Burke EK, Newall J. Enhancing timetable solutions with local search methods. In: Proceedings of the 4th international conference on practice and theory of automated timetabling IV, PATAT 2002. Gent, Belgium, August 21–23; 2002. Selected revised papers, Lecture notes in computer science, vol. 2740. Berlin, Heidelberg: Springer; 2003. p. 195–206. Burke EK, Newall JP. A multistage evolutionary algorithm for the timetable problem. IEEE Trans Evol Comput 1999;3(1):63–74. Burke EK, Qu R, Li J. A hybrid model of integer programming and variable neighbourhood search for highly-constrained nurse rostering problems. Eur J Oper Res 2009;203(2):484–93. Bykov Y. Time-predefined and trajectory-based search: single and multiobjective approaches to exam timetabling [Ph.D. thesis]. School of Computer Science& Information Technology, University of Nottingham; 2003. Cacchiani V, Caprara A, Roberti R, Toth P. A new lower bound for curriculumbased course timetabling. Comput Oper Res 2013;40(10):2466–77. Caprara A, Fischetti M, Guida PL, Monaci M, Sacco G, Toth P. Solution of realworld train timetabling problems. In: Proceedings of the 34th annual Hawaii international conference on system sciences; 2001. p. 1057–66. Caramia M, Dell'Olmo, P. Increasing capacity, service level and safety with optimization algorithms. Multi-objective management in Freight Logistics, London: Springer-Verlag. Caramia M, Dell'Olmo P, Italiano G. New algorithms for examination timetabling. Algorithm Eng 2001:230–41. Carter M, Laporte G. Recent developments in practical examination timetabling. In: Practice and theory of automated timetabling; 1996. p. 1–21. Carter MW. A survey of practical applications of examination timetabling algorithms. Oper Res 1986:193–202. Carter MW, Laporte G, Chinneck JW. A general examination scheduling system. Interfaces 1994:109–20. Casey S, Thompson J. GRASPing the examination scheduling problem. Burke E, Causmaecker P. (Eds.). In: Proceedings of the 4th international conference on practice and theory of automated timetabling IV: PATAT 2002. Gent, Belgium, August 21–23, 2002. Selected Revised Papers. Berlin, Heidelberg: Springer; 2003. p. 232–244. ISBN: 978-3-540-45157-0. http://dx.doi.org/10.1007/978-3540-45157-0_15. Colorni A, Dorigo M, Maniezzo V. Metaheuristics for high school timetabling. Comput Optim Appl 1998;9(3):275–98. Corr P, McCollum B, McGreevy M, McMullan P. A new neural network based construction heuristic for the examination timetabling problem. In: Parallel problem solving from nature – PPSN IX. Berlin, Heidelberg: Springer; 2006. p. 392–401. Costa D, Hertz A. Ants can colour graphs. J Oper Res Soc 1997;48(3):295–305. De Werra D. An introduction to timetabling. Eur J Oper Res 1985;19(2):151–62. Desroches S, Laporte G, Rousseau JM. Horex: a computer program for the construction of examination schedules. INFOR 1978;16:294–8. Di Gaspero L. Recolour, shake and kick: a recipe for the examination timetabling problem. In: Proceedings of the 4th international conference on the practice and theory of automated timetabling; 2002. p. 404–7. Di Gaspero L, Schaerf A. Tabu search techniques for examination timetabling. In: Practice and theory of automated timetabling III; 2001. p 104–17. Dowsland KA, Thompson JM. Ant colony optimization for the examination scheduling problem. J Oper Res Soc 2004;56(4):426–38. Dueck G. New optimization heuristics: the great deluge algorithm and the record-to-travel. J Comput Phys 1993;104:86–92. Easton K, Nemhauser G, Trick M. Handbook of scheduling: algorithms, models, and performance analysis. Chapman and Hall (CRC); 2004. p. 52 [chapter Sports scheduling]. Erben W. A grouping genetic algorithm for graph colouring and exam timetabling. In: Practice and theory of automated timetabling III; 2001. pp. 132–56. Filho G, Lorena L. A constructive evolutionary approach to school timetabling. Appl Evol Comput 2001:130–9. Glover F. Future paths for integer programming and links to artificial intelligence. Comput Oper Res 1986;13(5):533–49. Glover F, Laguna M. Tabu search, Norwell, MA, USA: Kluwer Academic Publishers; 1997. Gogos C, Alefragis P, Housos E. An improved multi-staged algorithmic process for the solution of the examination timetabling problem. Ann Oper Res 2012;194(1):203–21. Hansen MP, Vidal RVV. Planning of high school examinations in Denmark. Eur J Oper Res 1995;87(3):519–34. Hansen P, Mladenović N. Variable neighborhood search. In: Handbook of metaheuristics; 2003. p. 145–84. Hertz A. Using tabu search techniques for graph colouring. Computing 1987;39:345–51. Hertz A. Tabu search for large scale timetabling problems. Eur J Oper Res 1991;54:39–47. Hwang CL, Yoon K. Multiple attribute decision making: methods and applications: a state-of-the-art survey. Lecture notes in economics and mathematical systems. Berlin, Heidelberg: Springer-Verlag; 1981.

173

[51] Isaai MT, Singh MG. Hybrid applications of constraint satisfaction and metaheuristics to railway timetabling: a comparative study. IEEE Trans Syst Man Cybern Part C: Appl Rev 2001;31(1):87–95. [52] Jat SN, Yang SX. A hybrid genetic algorithm and tabu search approach for post enrolment course timetabling. J Sched 2011;14(6):617–37. [53] Kendall G, Hussin N. An investigation of a tabu-search-based hyper-heuristic for examination timetabling. In: Multidisciplinary scheduling: theory and applications; 2005. p. 309–28. [54] Landa-Silva D, Obit JH. Evolutionary non-linear great deluge for university course timetabling. In: Corchado E, Wu X, Oja E, Herrero A, Baruque B. (Eds), Hybrid artificial intelligence systems, Lecture notes in artificial intelligence, vol. 5572; 2009. p. 269–76 [4th international workshop on hybrid artificial intelligence systems]. [55] Li DF. Compromise ratio method for fuzzy multi-attribute group decision making. Appl Soft Comput 2007;7(3):807–17. [56] Lu ZP, Hao JK, Glover F. Neighborhood analysis: a case study on curriculumbased course timetabling. J Heuristics 2011;17(2):97–118. [57] Marques Pereira RA, Pasi G. On non-monotonic aggregation: mixture operators. In: Proceedings of the 2nd international conference on soft and intelligent computing; 1999. p. 513–17. [58] McCollum B, McMulla P, Parkes AJ, Burke EK, Abdullah S. An extended great deluge approach to the examination timetabling problem. In: Proceedings of the 4th multidisciplinary international scheduling conference: theory and applications (MISTA 2009); 2009. p. 424–34. [59] McCollum B, McMulla P, Parkes AJ, Burke EK, Qu R. A new model for automated examination timetabling. Ann Oper Res 2012;194(1):291–315. [60] Merlot L, Boland N, Hughes B, Stuckey P. A hybrid algorithm for the examination timetabling problem. In: Practice and theory of automated timetabling IV; 2003. p. 207–31. [61] Mesiar R, Spirková J, Vavríková L. Weighted aggregation operators based on minimization. Inf Sci 2008;178(4):1133–40. [62] MirHassani SA, Habibi F. Solution approaches to the course timetabling problem. Artif Intell Rev 2013;39(2):133–49. [63] Mladenovic N, Hansen P. Variable neighborhood search. Comput Oper Res 1997;24(11):1097–100. [64] Morgenstern CA. Algorithms for general graph coloring [Ph.D. Thesis]. University of New Mexico; 1990. [65] Pais TC, Amaral P. Managing the tabu list length using a fuzzy inference system: an application to examination timetabling. Ann Oper Res 2012:1–23. [66] Paquete LF, Fonseca CM. A study of examination timetabling with multiobjective evolutionary algorithms. In: 4th metaheuristics international conference (MIC 2001); 2001. p. 149–54. [67] Petrovic S, Bykov Y. A multiobjective optimisation technique for exam timetabling based on trajectories. In: Practice and theory of automated timetabling IV; 2003. p. 181–94. [68] Pongcharoen P, Promtet W, Yenradee P, Hicks C. Stochastic optimisation timetabling tool for university course scheduling. Int J Prod Econ 2008;112 (2):903–18. [69] Qi X, Yang J, Qi GY, Yang J, Yu G. Scheduling problems in the airline industry. Handbook of scheduling: algorithms, models, and performance analysis. Chapman and Hall; 2004. p. 50. [70] Qu R, Burke EK, McCollum B, Merlot LTG, Lee SY. A survey of search methodologies and automated system development for examination timetabling. J Sched 2009;12(1):55–89. [71] Ribeiro RA, Marques Pereira RA. Generalized mixture operators using weighting functions: a comparative study with wa and owa. Eur J Oper Res 2003;145(2):329–42. [72] Roy B. Classement et choix en présence de points de vue multiples. Rech Opér 1968;2(6):57–75. [73] Saaty TL. Analytic hierarchy process. New York: McGraw-Hill; 1980. [74] Schaerf A. Local search techniques for large high school timetabling problems. IEEE Trans Syst Man Cybern Part A: Syst Hum 1999;29(4):368–77. [75] Schimmelpfeng K, Helber S. Application of a real-world university-course timetabling model solved by integer programming. OR Spectr 2007; 29(4):783–803. [76] Sugeno M, Kang GT. Structure identification of fuzzy model. Fuzzy Sets Syst 1988;28(1):15–33. [77] Tassopoulos IX, Beligiannis GN. A hybrid particle swarm optimization based algorithm for high school timetabling-problems. Appl Soft Comput J 2012; 12(11):3472–89. [78] Thompson JM, Dowsland KA. Variants of simulated annealing for the examination timetabling problem. Ann Oper Res 1996;63(1):105–28. [79] Thompson JM, Dowsland KA. A robust simulated annealing based examination timetabling system. Comput Oper Res 1998;25(7–8):637–48. [80] Trick M. A schedule-then-break approach to sports timetabling. In: Practice and theory of automated timetabling III; 2001. p. 242–53. [81] Turabieh H, Abdullah S, McCollum B. Electromagnetism-like mechanism with force decay rate great deluge for the course timetabling problem. In: Wen P, Li Y, Polkowski L, Yao Y, Tsumoto S, Wang G. (Eds.), Rough sets and knowledge technology, Lecture notes in artificial intelligence, vol. 5589; 2009. p. 497–504 [4th international conference on rough sets and knowledge technology]. [82] White G, Xie B. Examination timetables and tabu search with longer-term memory. In: Practice and theory of automated timetabling III; 2001. p. 85–103. [83] White G, Xie B, Zonjic S. Using tabu search with longer-term memory and relaxation to create examination timetables. Eur J Oper Res 2004;153:80–91.

174

P. Amaral, T.C. Pais / Computers & Operations Research 72 (2016) 160–174

[84] White G, Zhang J. Generating complete university timetables by combining tabu search with constraint logic. In: Lecture notes in computer science, vol. 1408; 1998. p. 187–98 [4th International conference on rough sets and knowledge technology]. [85] Wood DC. A system for computing university examination timetables. Comput J 1968;11(1):41–7.

[86] Yang Y, Petrovic S. A novel similarity measure for heuristic selection in examination timetabling. In: Practice and theory of automated timetabling V; 2005. p. 247–69. [87] Zadeh LA. The concept of a linguistic variable and its application to approximate reasoning, part i. Inf Sci 2005;8(3):199–249.