Hybridisations within a Graph Based Hyper-heuristic Framework for University Timetabling Problems

. A significant body of recent literature has explored various research directions in hyper-heuristics (which can be thought as heuristics to choose heuristics ). In this paper, we extend our previous work to construct a unified graph based hyper-heuristic (GHH) framework, under which a number of local search based algorithms as the high level heuristics are studied to search upon sequences of low level graph colouring heuristics. To gain an in-depth understanding on this new framework, we address some fundamental issues concerning neighbourhood structures and characteristics of the two search spaces (namely the search spaces of the heuristics and the actual solutions). Furthermore, we investigate efficient hybridisations in GHH with local search methods and address issues concerning the exploration of the high level search and the exploitation ability of the local search. These, to our knowledge, represent entirely novel directions in hyper-heuristics. The efficient hybrid GHH obtained competitive results compared with the best published results for both benchmark course and exam timetabling problems, demonstrating its efficiency and generality across different problem domains. Possible extensions upon this simple yet general GHH framework are also discussed.


Introduction Timetabling Problems
Timetabling problems have been widely investigated in the operational research and artificial intelligence research communities for more than four decades (e.g.see [16,45,49,53]).They appear in the forms of educational timetabling (e.g.[5,20,23,24,44,45]), nurse rostering (e.g.[10]), sports timetabling (e.g.[29]) and transportation scheduling (e.g.[37]).This paper is concerned with university (course and exam) timetabling problems, which have attracted particular attention over the years.They are important administrative activities which have to be addressed on a regular basis in almost all academic institutions.There are several surveys of educational timetabling research covering a variety of research issues (e.g.[13,16,20,44,45,49,53]). Specific papers on course [24] and exam [23] timetabling provide excellent surveys up to 1998 and 1996, respectively.A discussion of the difference between course and exam timetabling is presented in [4140].
In [16], the goal of a general timetabling problem is defined as being "to assign times and resources to the meetings so as to satisfy the constraints as far as possible".This is to assign a set of events (courses or exams) to a limited timeslots while satisfying a number of constraints.Constraints in university timetabling can usually be grouped into two types:  Hard Constraints which must be satisfied under any circumstances.For example, conflicting events (i.e.those courses/exams/meetings with common resources such as students) cannot be scheduled simultaneously (i.e.x i ≠ x j , i ≠ j and D ij > 0; D ij : the number of students in both events i and j; x i : the time period that event i is assigned).Room capacity needs to be large enough to accommodate all students (i.e.∑s i ≤ C t ; x i = t; s i : number of students taking exam i; C t : room capacity of time period t).
Solutions which satisfy all of the hard constraints are often called feasible solutions.
 Soft Constraints are desirable but not essential requirements.For example, in exam timetabling, it is preferable to avoid students sitting two exams in consecutive time periods.On the other hand, in course timetabling, students may prefer to have consecutive courses.
Soft constraints are usually used to evaluate how good the feasible timetables are.For real world university timetabling problems, it is usually impossible to find solutions satisfying all the soft constraints.Indeed, it is sometimes very difficult to just find a solution which satisfies all the hard constraints.
Innovative neighbourhood design in search algorithms has also obtained some success (i.e.Very Large Scale Neighbourhood Search [1,40], multi-neighbourhood search [3] and Variable Neighbourhood Search [2], etc).An overview of the timetabling literature can be seen by consulting the following papers: [23,24,45,49].

Hyper-heuristics
Most meta-heuristic [14,46] implementations need to be fine tuned for solving particular problems, and such fine-tuned methods do not usually transfer easily to different problems.The definition of hyper-heuristics is rather simple.They are "heuristics to choose heuristics" [12,47].They search upon a search space of heuristics rather than actual solutions.This implies that any heuristics (meta-heuristics and population based algorithms, etc) could be employed as high level heuristics to operate upon a search space of low level heuristics, which could also, essentially, be any heuristics.In most of the papers in the literature, metaheuristics are employed directly on a solution based search space.There is, of course, the possibility of using meta-heuristics as the "low level" heuristics (i.e.those to be selected) in a hyper-heuristics approach but, as far as we are aware, this has never been addressed in the literature.
The heuristics being searched are used (at a lower level) to solve the actual problems.The high level heuristics choose from a set of low level heuristics rather than dealing with the actual elements in the problems.The driving motivation behind this newly emerging framework is to raise the generality of search algorithms in order to solve a wider range of problems.By defining our search spaces upon heuristics rather than actual solutions, hyper-heuristics avoid dealing with the specific details of problem domains.Domain knowledge of the actual problems is left to the low level heuristics.The idea is that the high level search should be more generic.The representation of the search space is usually quite simple (rather than having complex structures representing problem solutions).The role of the high level search is purely to manage and learn upon the set of low level heuristics so that they can be adaptively applied to a range of problems.
The idea of hyper-heuristics originated in 1960s, although, at the time, the particular term was not used [12].It is thus related to some algorithms, however, is also fundamentally different from most heuristic approaches.For example, in resource constrained project scheduling [8], permutations of jobs are usually obtained by using certain (fixed) strategies and jobs are then scheduled one by one in this specific order.In hyper-heuristics, the aim is to search for a set of (low level) strategies which permute the jobs during the scheduling to construct high quality solutions.The goal is to learn to adaptively adjust the low level strategies used at different stages of the scheduling.In [27], a framework was built to integrate multiple heuristics within a stochastic sampling search algorithm, where online statistical models of the search performance were used to select heuristics during the search for resource-constrained project scheduling.As an emerging research direction, the field of hyper-heuristics is also strongly related to some other research in the literature.In [33], algorithm portfolios were developed where a set of heuristics was used for solving combinatorial optimisation problems.In [42], reinforcement learning was used to adaptively choose promising heuristics during the search process within a constraint programming environment for two optimisation problems.
Hyper-heuristics have been investigated either on using moving strategies (i.e.[15,28,32]) or on using constructive heuristics [6,11,17,21,48,51] as the low level heuristics.In [15], Tabu Search was employed as the high level heuristic upon a set of moving strategies on both the nurse rostering problems and course timetabling.A Simulated Annealing hyper-heuristic was developed in [28] to deal with the shipper sizes in transportation problems.In [32], a distributed choice function was also proposed as a hyper-heuristic for exam timetabling problems.
Another body of hyper-heuristic work has employed constructive heuristics as the low level heuristics.In [6], heuristic selection and move acceptance criteria were analysed in depth within a hyper-heuristic for both optimisation functions and exam timetabling problems.In [21], graph colouring heuristics were selected by using Case Based Reasoning to order the events upon problem solving situations.A Genetic Algorithm was also developed in [48] to evolve event picking and slot picking heuristics to construct timetables for both class and exam benchmark timetabling problems.Issues of representation and fitness functions were also addressed.Constraint satisfaction strategies were also evolved by using Evolutionary Algorithms in [51] for constructing exam timetables.
In our previous work [17], the search space under consideration consisted of sequences of graph colouring heuristics as the low level heuristics.We employed Tabu Search for solving both course and exam timetabling problems.We also raised the issue of two search spaces in hyper-heuristics.Based on the above approach, in this paper, we formally define a unified graph based hyper-heuristic (GHH) framework, within which a number of high level heuristics are analysed systematically to obtain a deeper understanding of the framework.Important issues on neighbourhood structures and the search space of heuristics, compared with search space of solutions, are addressed.Within the research covered in the hyper-heuristic literature, to our knowledge, there is no work which analyses the structure and nature of the search space of heuristics in this way.Hybridisations of the GHH framework with local search methods within the solution space are also investigated on both course and exam benchmark timetabling problems.Note that exactly the same GHH is applied for both problems which are quite different in terms of problem constraints [41].There are very few papers in the literature which deal with both problems by using the same system.

Benchmark Course and Exam Timetabling Problems
The course timetabling problems tested in this paper were generated by the Meta-heuristic Network (http://www.metaheuristics.net/).The problem set consists of 11 problems in three (small, medium and large) sizes, where from 100 to 400 courses need to be assigned into 45 timeslots, 9 timeslots per day for 5 days of a week.Room capacity and features need to be considered to accommodate all the students in a particular course.We list both the hard and soft constraints in Table 1.The penalty of the feasible timetables generated is the sum of the number of violations of the soft constraints.
INSERT TABLE 1 HERE.
The exam timetabling problems we tested in this paper were first introduced in [25], and have been widely tested by a number of approaches during the last ten years [45].The dataset consists of 13 problems from different institutions, among which 11 have been more heavily investigated because of errors in the other two problems.A more detailed discussion of those datasets (and the difficulties caused by different instances circulating under the same name) was given in [45].The constraints in the problems can be outlined as follows:  Hard constraint: no conflicting exams (with common students) should be scheduled into the same timeslot.
 Soft constraint: to spread conflicting exams across the timetables.
Table 2 presents the characteristics of the 11 problems in the dataset.The "conflict density" gives the density of elements with value 1 in the conflict matrix, where element C ij = 1 if events i and j conflict, C ij = 0 otherwise.The penalty of the timetable generated is the sum of costs per student, where costs w i , i  0, 1, 2, 3, 4, indicate the timeslots between two conflict exams.More details can be found at http://www.asap.cs.nott.ac.uk/resources/data.shtml.

INSERT TABLE 2 HERE.
The rest of the paper is organised as follows.The GHH framework is formally presented in Section 2. A number of high level heuristics are investigated and analysed within this framework in Section 3. In Section 4, we present a hybrid GHH and analyse the search in two search spaces.Experimental results for both the course and exam benchmark timetabling problems are reported in Section 5. We present our conclusions on this work in Section 6.

Graph Colouring Heuristics
Graph colouring heuristics [16] are constructive heuristics which order the events (courses or exams in timetabling) in terms of difficulty measures.These ordered events are then assigned, one by one from the most difficult ones, to construct the solutions (timetables).The basic assumption is that the most difficult events need to be scheduled earlier to avoid causing problems at a later stage.A list of the graph colouring heuristics widely employed in timetabling is presented in Table 3.For example, if Saturation Degree is used in an exam timetabling problem, the exams are ordered by the number of remaining valid timeslots in the partial timetable during the solution construction.These ordered exams are scheduled one by one to the timetable being constructed.

INSERT TABLE 3 HERE.
As simple constructive heuristics, straightforward implementations of graph colouring heuristics on their own are not appropriate methodologies for addressing complex timetabling problems.Indeed, for some of the problem instances we are testing in this work, they failed to even generate feasible solutions on their own.However, recent research has shown that they can be very effectively employed as initialisation methods for meta-heuristics (e.g.[16]), or intelligently hybridised to solve complex timetabling and optimisation problems [4,11,21] for exam timetabling.This motivates us to investigate using hyper-heuristics to choose graph colouring heuristics for constructing high quality timetables.

The Graph Based Hyper-heuristic Approach
In our previous Graph Based Hyper-heuristic (GHH) [17], sequences of graph colouring heuristics (at the low level) were searched by a Tabu Search and applied to construct timetables.In most of the work on classical heuristics (such as graph colouring heuristics), solutions are built by assigning events in a specified order using a single or static strategy.These approaches often failed to obtain even feasible solutions.The GHH approach searches upon sequences of graph colouring heuristics, which order the events using different strategies during the solution construction.This can be seen as adaptively employing different and appropriate heuristics in different problem solving situations.Figure 1 presents the process of the solution construction by using a sequence of graph colouring heuristics.At iteration i, the ith low level graph colouring heuristic in the sequence is employed to order the events (courses or exams) not yet scheduled by using the corresponding difficulty measuring strategy in Table 3.For example, if Saturation Degree in the heuristic sequence is employed at the current step of solution construction, the events that are not yet scheduled are ordered by the number of feasible timeslots available for the events at that time.Then the most difficult event (the 1 st event in the ordered list) is scheduled into the timetable.In the next step, the next graph colouring heuristic in the heuristic sequence will be used to reorder the events that are left by using the corresponding (maybe different) difficulty measuring strategy.This process is repeated until a complete solution is constructed or no further feasible construction can be made.In this work the same solution construction process is used within the GHH framework.
INSERT FIGURE 1 HERE.
The role of the Tabu Search is to find, at a higher level, the best heuristic sequences to construct the best solutions.The penalty of the timetable constructed by the corresponding heuristic sequence is returned as the objective value for the next step of the Tabu Search.The process is illustrated by the pseudo-code in Figure 2.

INSERT FIGURE 2 HERE.
The GHH approach [17] highlights two search spaces: the search space of high level heuristic sequences and the search space of solutions.Each of the heuristic sequences in the heuristic search space is used to construct a complete solution that corresponds to a point in the solution space.The quality of a solution in the solution space is used in the objective function for the high level heuristic in the heuristic search space.The GHH approach search is carried out upon combinations of difficulty measuring strategies (heuristic sequences) rather than actual solutions.The solutions constructed by similar ("close to each other's neighbourhood") heuristic sequences in the heuristic search space may be very different from each other in the solution space.This means that the GHH may cover solutions across different areas in the solution space by making neighbourhood moves in the high level search.Note that in most local search based timetabling methods, search is undertaken by moving just a few events in actual solutions (i.e.being just a few events apart within a local area).By making a neighbourhood move on heuristic sequences in the GHH high level heuristic, the solutions constructed have the potential to be far more different from each other.The search by the high level heuristic can be seen as jumping within the solution space.This is because the way of constructing the solutions is fundamentally changed.With the same amount of moves in the high level heuristic search, the mapping solutions are (potentially) widely distributed within the solution space.

Defining the GHH Framework
In this work, we extend the above approach by firstly presenting a formal definition of the GHH framework as follows: Given an optimisation problem P, let H be the search space of P, and let f be the objective function that we are aiming to optimise.A moving operator O changes the incumbent solution hH to its neighbourhood N(h)  H by a moving strategy M. In terms of our timetabling problems, we consider the following problem and terminology.
 Optimisation problem P: to optimise the sequences of graph colouring heuristics h, which are employed to construct timetables concerning the objective function f.That is P = min f(h), hH.
 Search space H: consists of heuristic sequences hH.
 Objective function f: maps the heuristic sequences to the penalties of the corresponding timetables constructed (by evaluating the violations of soft constraints).
 Moving operator O: randomly changes any two heuristics in the heuristic sequence h.
 Neighbourhoods N: N(h)  H are all the heuristic sequences h that can be reached by a moving operator O applied on h.
 Moving strategy M: a move is taken by using moving operator O and evaluating neighbourhoods N.This is defined by different high level heuristics.Walks, which accept moves to heuristic sequences of the same quality, are allowed in the GHH framework.
 Low level heuristics: elements (graph colouring heuristics) in the heuristic sequences h, which are used to construct timetables.
 High level heuristics: different search algorithms upon the search space H using different moving strategies M.

High Level Heuristics within the GHH Framework
We investigate a number of high level heuristics without any fine-tuning on their parameters (standard versions of the Steepest Descent method, Tabu Search, Iterated Local Search and Variable Neighbourhood Search) based on the unified framework defined above.The objective is to compare their performance under the unified framework with the aim of studying the heuristic search space, rather than fine-tuning them to get the best solutions.In practice, any of these algorithms can be employed to carry out local search.Five graph colouring heuristics (presented in Table 3) are employed as the low level heuristics in the framework.Of course, more constructive heuristics may be employed in the framework and we have investigated the effect of employing a different number of low level heuristics in the Tabu Search based GHH in [17].
In the context of testing different high level heuristics in this framework, there is no greedy local search on each complete solution that is generated at each move (as was the case in [17]).The aim is two fold.
Firstly, the high level search in the GHH framework will not deal with the domain knowledge of the actual problems but rather it will work upon the objective values returned from the low level heuristics.All the necessary information about problems is dealt with by the low level heuristics.This establishes a certain level of generality in the GHH framework.Secondly, we would like to compare their behaviour within the unified framework in order to draw general conclusions about the GHH.Our aim is not to obtain the best possible results by putting effort into developing problem specific techniques.The goal is to develop methods which can be immediately used on a broad range of problems than can be achieved at the moment.
We will investigate the performance of different high level heuristics starting from the same initial points (initial heuristic sequences consisting of only Saturation Degree) and with the same computational cost (the same total number of evaluations).Walks (which accept heuristic sequences of the same quality) are always accepted because solutions of the same quality may be constructed by different heuristic sequences.Allowing such moves within the search space of heuristic sequences gives more flexibility to the high level search.The methods that we employ are outlined in the following subsections.

Steepest Descent method (SDM)
We test a simple SDM where the best heuristic sequence among neighbourhoods is always selected if it is better than or the same as the current one.The search stops when there is no same or better neighbourhood, or after a set number of evaluations (which is the same as that used for the other high level heuristics) is carried out.

Iterated Local Search (ILS)
In the ILS [38], the search is re-started after a certain number of iterations of SDM.The re-starting point is made different from the previous one by changing the heuristics at the beginning of the heuristic sequence.
Note that the earlier a different constructive heuristic is employed in the heuristic sequences, the larger the differences in the solutions generated by them.The aim is to explore wider regions of solution space.Again the same number of evaluations is set as the stopping condition.

Tabu Search (TS)
The TS we employ here is similar to that of our previous work [17].The difference is that we do not carry out the greedy local search on the complete solutions at each step.The length of the tabu list is set to be 9, which is determined by empirical experience and suggested by classical settings in the literature [46].The search stops after the set number of evaluations is carried out.

Variable Neighbourhood Search (VNS)
The motivation for employing VNS within the framework is to investigate the effect of employing more neighbourhood structures upon the performance of the high level search.The VNS employed is an iterative process where search is re-started after a certain number of walks are made by a standard VNS (see [34,35]).
The total number of evaluations is set as the same as it is for other high level heuristics.
We define a set of simple neighbourhood structures as randomly changing 2, 3, 4 or 5 heuristics in the sequence to any other graph colouring heuristics.These neighbourhood structures are simple, general and easy to implement and are widely employed in different VNS implementations.We do not employ a swapping neighbourhood because the search is upon heuristics rather than actual solutions.The two heuristics in the sequence do not have any link/relationship in the way that two events in actual solutions may have.Swapping two heuristics in the sequence has the same effect as that of changing the two corresponding heuristics in the sequence, which is included in the neighbourhoods we defined.
Based on the GHH framework, we further explore how local search can be hybridised in terms of the search within the two search spaces.We also further investigate the hypothesis in [17] that only a subset of the solutions in the solution space can be sampled by the high level search.

Local Search within the GHH
We study two ways of hybridising the local search, which is a simple greedy search, within the GHH.They are marked in Figure 1 as ( 1) and (2), and are described below: (1) Local Improvement upon Complete Solutions (GHH1): At each step of the high level heuristic, a complete solution will be generated by a heuristic sequence.A greedy search is implemented on these complete solutions in the solution space to improve their quality in terms of their respective local optima.
(2) Local Improvement during the Solution Construction (GHH2): During the solution construction by a heuristic sequence, at each step, the 1 st event in the ordered list is scheduled into the partial solution.The greedy search is then implemented upon this partial solution to further reduce the costs to the lowest possible.In the next step of solution construction, the 1 st event measured by the next graph colouring heuristic is scheduled based on the improved partial solution from the last step.

INSERT FIGURE 3 HERE.
We present, in Figure 3, the pseudo-code of the hybrid GHH within a general framework without specifying a particular high level search algorithm.Instructions marked with a * are optional depending on the particular high level heuristics or the hybrid local search employed.

Two Search Spaces within the Hybrid GHH
In the hybrid GHH, two search spaces are involved.They are the search space of high level heuristics upon heuristic sequences, and the search space of the local search upon actual solutions.That is, not only the sequences in the search space of heuristics are searched to generate the best possible solutions mapping to certain solutions in the solution space, but also the mapping solutions are improved by the local search in the search space of actual solutions.The latter is similar to most of the local search algorithms in the literature which operate upon a search space of solutions.Table 4 presents the characteristics of these two fundamentally different search spaces in the GHH framework.Not only the representations, but also the upper bounds of the size of the search spaces (including infeasible points) are different.The objective functions are different.They evaluate the quality of the solutions generated by the corresponding sequences, or evaluate the delta costs incurred in the solutions by the neighbourhood operators, respectively.The neighbourhood operators are also different depending on the high level heuristics and local search employed in the hybrid GHH framework.

INSERT TABLE 4 HERE.
Also note that in the GHH, at each step, five possible graph colouring heuristics may be used to assign each event.The upper bound of the size of the heuristic search space is then 5 e .This is much smaller than that of the solution space (which is t e , where t is the number of timeslots) because, in practice, the number of timeslots is usually much higher than 5.This implies that the search of the high level heuristics is carried out within a much smaller search space.This also further shows that not all of the solutions in the solution space correspond to sequences in the heuristic space.

Exploring and Exploiting within the Hybrid GHH
The aim of hybridising local search methods within the GHH framework is twofold.Firstly, along with the exploration by the high level heuristics (jumping within different areas of the solution space), the local search moves (in the solution space) to local optima.Secondly, as not all of the solutions can be mapped to the heuristic sequences, performing a local search can make more solutions in the solution space reachable.At a higher level, the overall idea of the exploration and exploitation by the hybridisation in GHH is similar to that of a Memetic Algorithm or genetic local search [36], where recombination and/or mutation on population facilitates the exploration of the search, while the local search exploits within local regions.The difference is that in our hybrid GHH the high level heuristic explores the search space of solutions by searching heuristic sequences in the manner of local search at a higher level.Also in Memetic Algorithms, an initial population is needed, while the GHH constructs solutions iteratively, thus is not sensitive to initialisation methods.This makes the hybrid GHH much simpler yet still capable of exploring and exploiting the search space simultaneously.

Experimental Results on Benchmark Timetabling Problems
We carried out two sets of experiments to test the GHH which a) employs different high level heuristics (see Section 3) and b) is hybridised with local search (see Section 4).Two sets of the widely studied benchmark course and exam timetabling problems are used (see Section 1.3).These datasets are very different and have been widely employed by a number of state-of-the-art approaches (but have not been tackled together by one approach).Our aim with these experiments is not to beat the state-of-the-art approaches in the literature (although the results are competitive with the best results reported), but to present the potential of this more generic methodology to be easily employed and to perform adaptively on a range of different timetabling or optimisation problems.Fundamental issues such as neighbourhood structures and search spaces are also analysed to gain a deeper understanding of the technique.

Analysis on the High Level Search Space of Heuristics
Different high level heuristics described in Section 3 are tested on both of the benchmark problems within the unified GHH framework.Due to the fact that there is no domain knowledge required in the framework, the only difference in the GHH upon these two different problems is the evaluation functions that are used to evaluate the solutions generated.This can be easily switched between different problems and this is the key achievement of the work: to develop a methodology that can be easily switched between different problems.
In both sets of experiments, the best and average results obtained from five runs with distinct seeds are reported.As the same number of evaluations is set as the stopping condition for all the high level heuristics, similar computational time is observed for each of these approaches.It is important to note that the purpose of this section is to investigate the employment of different methods on the heuristic space.We use the results of this section to produce the better results which are generated by the hybridised method in the next section.

Course Timetabling Problems
Table 5 presents the best and average results by the GHH employing the Steepest Descent Method (SDM), Iterated Local Search (ILS), Tabu Search (TS) and Variable Neighbourhood Search (VNS) as the high level heuristics for the benchmark course timetabling problems.It can be seen that within the unified GHH framework, most of the high level heuristics (except SDM) perform similarly.VNS obtained the best results (on a small scale) on 6 out of 11 problems, and the best average results on 5 out of 11 problems.
Another observation is that when GHH is applied to course timetabling problems, some of the soft constraints (such as soft constraint 3 in Table 1) cannot be evaluated accurately during the solution construction until a complete solution is generated.This may affect GHH's ability to obtain high quality solutions for some problems.
INSERT TABLE 5 HERE.

Exam Timetabling Problems
The results on the benchmark exam timetabling problems by the GHH employing SDM, ILS, TS and VNS are presented in Table 6.It can be observed that, again, all high level heuristics (except SDM) perform quite similarly.ILS obtained the best results on 6 out of 11 problems and the best average results on 5 out of 11 problems.VNS is the 2 nd best algorithm (again on a small scale though) on these problems, obtaining the best results for 4 out of 11 problems and the best average results for 5 out of 11 the problems.

Discussion
The comparisons between the different high level heuristics on both course and exam timetabling problems have shown that high level heuristic moving strategies are not crucial within the unified GHH framework.
Elaborate algorithms such as TS are not effective for searching in the search space of heuristics.Iterative techniques such as ILS and VNS (which is, overall, an iterative process -see Section 3.4) were shown to be effective on both the course and exam timetabling problems tested.
The reason is that very large and different areas of the solution space can be covered by relatively small moves in the heuristic space.With the search in the heuristic space, the chance of the high level search having better or same quality neighbourhoods is higher than that of local search methods.During the high level heuristic search, it was observed that a large number of walks were performed before the search obtained the next better heuristic sequences.The search space of the high level heuristic is more likely to be smooth and to contain large areas of plateaus where different heuristic sequences can produce similar quality solutions.
Due to the characteristics of the high level search space of heuristic sequences, we thus conclude that the role of high level heuristics within the GHH is to search quickly within limited areas and to restart iteratively at different areas.More parts of the solution space (even disconnected from each other) can thus be searched, which increases the chance of obtaining more high quality solutions in a limited time.

Analysis of the Hybridisations within the GHH Framework
In this section, the two hybridisations of the GHH (see GHH1 and GHH2 in Section 4.1) are tested on both benchmark course and exam timetabling problems.Due to the above observations (see subsection 5.2.3), we employ ILS as the high level heuristic.

Course Timetabling Problems
Table 7 presents the results of our hybrid GHH, together with the best results reported in the literature by different approaches.We can observe that both of the hybrid GHH methods work well.In particular, GHH2 obtained the best and best average results on all of the small instances and two of the medium instances among all of the approaches reported in the literature.During the experiments of GHH2, we observed that high quality solutions can usually be obtained fairly quickly after each re-start of the high level ILS.This, in practice, can significantly reduce the computational time of this hybrid GHH.Also note that for GHH2, the best and average results on all the problems are very close, meaning that the approach is consistent over different runs.
As explained above, because GHH searches for heuristic sequences to construct solutions, some of the soft constraints (such as soft constraint 3 in Table 1) cannot be accurately evaluated on the partial solution built at that time.By hybridising local search upon actual solutions, these soft constraints can be effected on a complete or a partial solution during the solution construction.

Exam Timetabling Problems
Table 8 presents the results on the benchmark exam timetabling problems by the two hybrid GHH approaches.Again, GHH2 outperforms GHH1 over all of the problems on average results, and 9 out of 11 problems on the best results.Hybridising local greedy search to carry out exploitive search upon partial solutions during the solution construction is observed to be more effective than that of on a complete solution.Again the GHH2 is very consistent on all of the runs with distinct seeds.

INSERT TABLE 8 HERE.
It can be observed that the best results reported in the literature were obtained by different approaches over the years.Among the 8 approaches compared (which have obtained the best results in the literature on the benchmarks), our hybrid GHH obtained competitive results.However, the most important point to make here is that all of the other approaches were specifically designed for the exam timetabling problem.Only our method, which does not require parameter tuning, can also work well on the course timetabling problem by simply changing its evaluation function.

Conclusions and Future Work
This paper defined a unified graph based hyper-heuristic (GHH) framework.It investigated different high level heuristics on both benchmark course and exam timetabling problems.Hybridisations of the GHH with local search methods were also investigated.
We studied the search space of high level heuristics within the GHH framework.Experimental results indicate that iterative techniques such as Iterated Local Search and Variable Neighbourhood Search are more effective than Tabu Search and Steepest Descent Method within this GHH framework on both course and exam timetabling problems.It is observed that by employing neighbourhood moves within the heuristic search space, the high level search is capable of jumping within the solution space of problems.The heuristic sequences cover only a subset (but well distributed areas) of the solution space.It is also observed that the search space of heuristics is relatively smooth (i.e. it contains a large number of plateaus where solutions with the same quality exist).We thus suggest that the role of the high level heuristic in GHH is to search within the limited areas quickly and to explore as widely as possible the solution space by re-starting from different heuristic sequences within a limited computational time.
We investigated two ways of hybridising the GHH with local search.Of particular interest is the hybridisation of local search during the solution construction, which can quickly obtain good results for both benchmark course and exam timetabling problems compared with the different approaches that appeared in the literature over the years.Compared with the basic GHH, the hybridisation of local search during the solution construction presented significant improvement on solution quality and computational time.
The comparisons of the characteristics of the two search spaces (of heuristics and of solutions) further strengthen the views that not all of the solutions in the solution space can be mapped to the heuristic sequences in the heuristic search space.This implies that the high level search is carried out within a much smaller search space (of heuristics) but is still able to cover wide areas of the solution space.The hybrid GHH has the ability of exploring and exploiting within the solution space simultaneously by searching within the two search spaces.
The hybrid GHH is a more general framework than other timetabling methods.Simple and fast search techniques can be employed as the high level heuristic and the local search on the solution space without much tuning effort.In fact, the basic methodology can be applied to any problems that can be modelled as graph colouring problems.Testing on a wider range of application domains such as general timetabling and scheduling problems represents a significant direction in our future research.The hyper-heuristic search has a simple structure and is focused on high level heuristics, leaving much scope for hybridisation with other techniques.Further in-depth performance analysis and understanding may also lead to general observations benefiting general meta-heuristic research.For example, knowledge of the good sequences that generate high quality solutions can be extracted and collected in helping build fundamentally more general approaches for timetabling and optimisation problems.As an iterative constructive approach, the computational time of GHH is usually much larger than that of local search improvement algorithms.More knowledge and better understanding of the GHH framework may further improve the efficiency of this general approach for a range of optimisation problems.order the rest of events by the i th graph heuristic    small problems; m1-m5: medium problems).The best results and the best average results are highlighted and italicised for each problem, respectively."x%": the percentage of runs where no feasible solutions can be obtained.

List of Tables
Table 6 Different high level heuristics in the GHH framework on benchmark exam timetabling problems (the best and best average results are highlighted and italicised, respectively.)Table 7 State-of-the-art approaches and GHH hybridising local search (GHH1: on complete solutions; GHH2: during solution construction) on benchmark course timetabling problems."x/y": the percentage x that cannot obtain feasible solutions, and the best result y of feasible solutions.The best results and the best average results are highlighted and italicised, respectively.Table 8 State-of-the-art approaches and GHH hybridising local search (GHH1: on complete solutions; GHH2: during solution construction) on benchmark exam timetabling problems.A selection of appropriate methods which includes those that generate the best results among all of the approaches in the literature are highlighted.

Figure 1 Figure 2 Figure 3
Figure 1 Solution construction by a sequence of graph heuristics

Figure 1
Figure 1 Solution construction by a sequence of graph heuristics.

Figure 2
Figure 2 Pseudo-code of the graph based hyper-heuristic.

Table 1
Constraints of the benchmark course timetabling problems

Table 2
Characteristics of the benchmark exam timetabling problems

Table 3
Difficulty measuring strategies based upon graph heuristics for timetabling problems

Table 4
Characteristics of the search spaces of the heuristics and solutions in the hybrid GHH

Table 5
Different high level heuristics in the GHH framework on benchmark course timetabling problems (s1-s5: small problems; m1-m5: medium problems).The best results and the best average results are highlighted and italicised for each problem, respectively."x%": the percentage of runs where no feasible solutions can be obtained.

Table 6
Different high level heuristics in the GHH framework on benchmark exam timetabling problems (the best and best average

Table 1
Constraints of the benchmark course timetabling problems

Table 2
Characteristics of the benchmark exam timetabling problems

Table 3
Difficulty measuring strategies based upon graph heuristics for timetabling problems

Table 4
Characteristics of the search spaces of the heuristics and solutions in the hybrid GHH

Table 5
Different high level heuristics in the GHH framework on benchmark course timetabling problems (s1-s5: