Sie sind auf Seite 1von 21

Artif Intell Rev

DOI 10.1007/s10462-013-9399-6

Review of state of the art for metaheuristic techniques


in Academic Scheduling Problems
Chong Keat Teoh Antoni Wibowo
Mohd Salihin Ngadiman

Springer Science+Business Media Dordrecht 2013

Abstract The Academic Scheduling Problems have drawn great interest from many
researchers of various fields, such as operational research and artificial intelligence. Despite
the long history of literature, the problem still remains as an interesting research topic as new
and emerging metaheuristic techniques continue to exhibit promising results. This paper surveys the properties of the Academic Scheduling Problems, such as the complexity of the
problem and the constraints involved and addresses the various metaheuristic techniques and
strategies used in solving them. The survey in this paper presents the aspects of solution
quality in terms of computational speed, feasibility and optimality of a solution.
Keywords Academic scheduling problem Course scheduling Exam scheduling
Hyper-heuristics Metaheuristic Scheduling Timetabling

1 Introduction
This paper is written as a continuity from the previous works of Lewis (2007) who performed
an in-depth survey on the metaheuristic-based techniques for Academic Scheduling Problems. Essentially, scheduling is defined as the allocation of resources over time to perform
a collection of tasks (Baker 1974) and the objective is to assign a set of entities to a limited
number of resources over time, in such a way to meet a set of pre-defined schedule requirements. In recent years, a noticeable pattern is observed in the area of academic scheduling
where many complex problems are efficiently solved using the principles of meta-heuristics.

C. K. Teoh (B) A. Wibowo M. S. Ngadiman


Faculty of Computer Science and Information Systems, Universiti Teknologi Malaysia (UTM),
81310 Johor Bahru, Johor, Malaysia
e-mail: christeoh.ck@gmail.com; ckteoh3@live.utm.my
A. Wibowo
e-mail: antoni@utm.my
M. S. Ngadiman
e-mail: salihin@utm.my

123

C. K. Teoh et al.

Academic scheduling problem is regarded as both a non-deterministic polynomial-time


hard (NP-hard) and non-deterministic polynomial-time complete (NP-complete) problem,
meaning that the computational time increases exponentially as the problem size grows
(Bardadym 1996). In general, Academic Scheduling Problems can be classified into two
distinct types which are either exam or course timetabling (Chaudhuri and De 2010). In course
scheduling, the ultimate objective is to optimally assign lecturers to a particular period of time
to teach a particular course, with regards to the specific constraints placed by the organization
while the objective of exam scheduling is to maximize the time gap between exams. According
to Zhipeng and Jin-Kao (2010), course timetabling can be further separated into 2 categories
which are post-enrolment (post-graduate) based, where scheduling of courses is based on
the students enrolment data while curriculum based (undergraduate) is based on the courses
offered by the university. Identical to other scheduling problems, its objective is to assign
from a limited amount of resources (lecturers, rooms, etc.) over a period of time (time periods
to a day) to perform a set of tasks (lectures) and this is one of the most common issues faced
in every institute of education (Baker 1974; Omar et al. 2003).
The nature of the problem can be said to be highly constrained due to its large size, variety
of variables and subjected under large amount of constraints, which may differ from one
institution to another (Pongcharoen et al. 2007). In fact, the academic scheduling problem is
also synonymous to a constraint satisfaction problem (Mariott and Stuckey 1998).
This paper is organized as follows: In Sect. 2, the background of the Academic Scheduling
Problems and their constraints are presented. In Sect. 3, the various metaheuristic approaches,
emerging metaheuristic algorithms (Ant Colony Optimization and Hyper-Heuristics) and
results are described. Sect. 4 presents the suitability of the metaheuristic methods in achieving
certain solution quality and concludes the review paper by providing some future works.

2 Problem background
The following section discusses the problem background of the Academic Scheduling Problems which encompasses the challenges, the various metaheuristic categories and concludes
with a general mathematical model.
2.1 The academic scheduling problem
In generating a good timetable in almost every university, the primary objective is to optimally
assign lecturers to teach a specific course at a specific room during a specific time. One of the
greatest challenge and common problem faced in all Academic Scheduling Problems is to
generate a conflict-free and a high quality timetable which are often very difficult to achieve
(Nuntasen and Innet 2007; Zhang et al. 2010). This is due to the stochastic behaviour of the
meta-heuristics algorithm and the highly-constrained nature of the problem.
The constraints pertaining to the academic scheduling problem can be categorized into
2 categories that are hard constraints and soft constraints. Basically, the hard constraints
are mandatory constraints which cannot be violated under any circumstances at all, lest
the timetable becomes infeasible. On the other hand, the soft constraints such as lecturer
preferences are secondary constraints which can be violated, but preferably not as they
constitute to the effectiveness and quality of the solution. These 2 types of constraints can
be further classified into 5 categories namely unary constraints, binary constraints, capacity
constraints, event spread constraints and agent constraints (Lewis 2007). One of the noted
hard constraints here is that the problem is bound to the limitation of time and space whereby

123

Review of state of the art

there are only 5 working days and (depending on institution) 89 usable hours daily. Interested
readers can refer to Pongcharoen et al. (2007) for a list of widely used common hard and
soft constraints shared by various universities. It is worth to note here that the constraints do
not encompass all educational institutions as they are unique. They are documented in this
paper to provide a framework for research purposes.
All scheduling problems share a similar behaviour, which is to generate a feasible schedule
by maximizing (or minimizing) the objective function value such that the schedule would
still remain in the feasible search space region. This value is also synonymous to the fitness
function value. The ideal fitness value is acquired through minimizing the violations for the
various assignments which are subjected to the hard and soft constraints. The lower the fitness
function value, the better the quality of the solution. An example of the list of constraints and
the translated mathematical model, adopted from Tahar (2010) is given as follow:
i.
ii.
iii.
iv.
v.

A lecturer can only teach a class at a time (Hard Constraint).


A classroom can only handle a class at a time (Hard Constraint).
Two timeslots for the same course cannot fall on the same day (Soft Constraint).
Courses in the same level cannot be at the same time (Hard Constraint).
No courses on Monday between 11.00a.m. and 12.30p.m. (Hard Constraint).

When translated into mathematical notation, it yields equation (1) and (2):
Min F (x) =


c


f


  
Aih +
f Ais

(1)

s.t.

(ci , di , ti , pi , ri , li ) and (c j , d j , t j , p j , r j , l j )

A1 : (di = d j ) and (ti = t j ) and (pi = p j )

A2 : (di = d j ) and (ti = t j ) and (ri = r j )

A3 : (ci = c j ) and (di = d j )

A4 : (li = l j ) and (ti = t j )

A5 : (di = Mon) and (ti = 11.0012.30)

(2)

where:
F(x) = F(, , Aih , Ais ) = fitness function value,
= weight attached to hard constraint,
= weight attached to soft constraint,
ci = courses corresponding to the ith course,
di = day corresponding to the ith course,
pi = professor corresponding to the ith course,
ri = room corresponding to the ith course,
li = level corresponding to the ith course,
Aih = hard constraint corresponding to the the ith course,
Ais = soft constraint corresponding to the the ith course,
i = 1, 2,, N .
N = number of courses.
Based on the formulation stated above, the objective is to locate a feasible solution in the
search space with minimal objective function value.

123

C. K. Teoh et al.

3 Approaches in the academic scheduling problem


Current survey indicates that all metaheuristic techniques fall under one of these categories
One-stage optimization algorithm, Two-stage optimization algorithm and algorithms that
allow relaxation (Lewis 2007). In a one-stage algorithm, satisfaction of both the hard and soft
constraints is being attempted simultaneously as opposed to two-stage algorithm, where the
satisfaction of hard constraints will be attempted first in order to obtain a feasible timetable
before satisfying the soft constraints. In algorithms that allow relaxation, the first phase
will generate a population of feasible and high quality solutions which are obtained based
on a specific primary criterion (relaxes other criteria). In the second phase, the algorithm
searches for a compromised solution which satisfies as many soft constraints as possible
without violating the solution obtained from the first phase. In measuring the performance
of a timetable, the computational time required to generate a feasible timetable and the
effectiveness (the degree of usability) of the timetable are always being considered. It is
very difficult to generate an optimal (or near optimal) timetable which does not violate any
constraints at all within the shortest period of time.
As an NP-hard and NP-complete problem, conventional heuristics such as Graph Colouring (Burke et al. 1994, 1995), usage of mathematical models such as integer linear programming, dynamic programming (Kanit et al. 2009) and manual timetabling are often
inefficient and ineffective for solving the resource-constrained problem effectively. Instead,
meta-heuristics methods were used and have grown popular over the years in the area
of optimization due to its robustness and capability of modelling many real world problems such as nurse scheduling, airline crew scheduling, round-robin sports scheduling
etc. (Guang-Feng and Woo-Tsong 2011; Lewis and Thompson 2011; Lim and Razamin
2010). Moreover, meta-heuristics methods can greatly reduce the usage of rigid mathematical models which requires a substantial amount of precision, which often at times
are difficult to model as they are unable to take preferences (soft constraints) into account
(Pinedo 2012).
There have been many papers which described the usage of meta-heuristics method to
solve the Academic Scheduling Problems, such as Tabu-Search (Alvarez-Valdes et al. 2001),
Hyper-heuristics (Burke et al. 2007), Genetic Algorithm (GA) (Pongcharoen et al. 2007),
Simulated Annealing (SA) (Aycan and Ayav 2009), Tabu Search (Casusmaecker et al. 2009),
Ant Colony Optimization (Lutuksin and Pongcharoen 2010), The Great Deluge (Turabieh
and Abdullah 2011), Particle Swarm Optimization (PSO) (Tassopoulos and Beligiannis 2012)
and hybrid algorithms such as Fuzzy Genetic (Chaudhuri and De 2010), 2-Point Hybrid
Evolutionary algorithm (Md Sultan et al. 2008) and many more. Results from these works
have exhibited very promising results and have motivated the development of many new
meta-heuristics algorithm today.
3.1 Tabu search
Tabu-Search (TS) is a type of local search algorithm and was first introduced in 1986 by Glover
and McMillan (1986). The advantage to TS is that it incorporates an adaptive memory and
a responsive exploration (Gonzalez 2007). It utilizes a temporary memory to keep a tabu
list which stores the most recent visited solution. These solutions are of course marked as
taboo and prevents re-evaluation (also known as cycling) in the future (Glover 1986).
With the list containing all the taboo solutions, the algorithm then continues to iteratively
evaluate the immediate neighbouring candidate solution for a potentially better solution. The
TS algorithm is described in the works of Brownlee (2011).

123

Review of state of the art


Table 1 Results of the three strategies for the use of candidate list Alvarez-Valdes et al. (2001)

Change
weights
(oscillation)
Non-change
weights
(without
oscillation)

With candidate list

Without candidate list

Temporal use of
candidate list

Recover

Non-recover

Recover

Non-recover

Recover

Non-recover

63,213

65,246

57,150

54,801

58,551

57,180

64,341

64,695

58,691

56,950

58,829

55,282

The TS algorithm was applied by Alvarez-Valdes et al. (2001) in the academic scheduling
problem to generate a master timetable, a timetable which does not concern the preferences
of students. The authors employed 2 consecutive phases which comprised of a main method
used to generate a clash-free feasible timetable and subsequently a tabu-search algorithm to
enhance the generated timetable. Additionally, the authors added another phase to enhance
the room assignment process towards the end of phase 2. The purpose of enhancing the room
assignment was to minimize the movement of students between classes which is an important
criterion to increase the quality of the timetable. In order to diversify the neighbourhood
structure, the authors employed 3 move methods namely simple move, swap, multiswap
and oscillation of weights which allowed greater exploration and of the three methods,
multiswap proved to be the most reliable as it allowed major modifications to be done unto
the solution. Comparisons were also made with the parameters of candidate list, tabu-list and
solution recovery and it was found that the use of a candidate list reduces the search space
by concentrating the search around the potential candidate solution neighbourhood. Recover
is an intensification strategy used to recover the best candidate solution after the algorithm
stalls for a period of time. Using the best candidate solution, another search process was
carried out around the region to see if a better solution could be obtained. The results for
each strategy are tabulated in Table 1 and it was found that simple move and swap methods
were not appropriate in solving a relatively large sized problem. The utilization rate of each
room for the institution reported an average of 83 % which is considerably satisfactory.
The author concluded that the ideal combinations for the TS algorithm should consist of
the following:
i. The move is multiswap (The most critical parameter and is ideal for exploring complex
neighbourhood).
ii. Temporal use of candidate list (To improve the objective function and reduce the number
of search move).
iii. Tabu list with dynamically changing length (Significantly enhances the robustness of the
algorithm).
iv. Strategic oscillation of weights (To diversify the exploration of the search space).
v. Recovering (Recovery) the best known solution after a given number of iterations without
improvement (An intensification process to obtain better solutions).
The TS algorithm is heavily dependent on the neighbourhood structure in locating the
global optimum value as clearly demonstrated in the works of Casusmaecker et al. (2009)
who proposed four different techniques to diversify the neighbourhood structure namely
Swap move, Time-Swap neighbourhood, Room-Swap neighbourhood and Time-Room Swap

123

C. K. Teoh et al.

neighbourhood. These techniques were also referred to as the horizontal swap as they involved
contents swapping within the same candidate solution. In tackling the issue of modular
courses, a grouping technique adopted from the works of Kingston (2004) was used as part
of the solution model to avoid generating numerous independent timetables. In this algorithm,
a grouping technique is used to form a group between lecturers and lab sessions that take
place in the same room in order to reduce the complexity of the combinatorial problem.
3.2 Genetic algorithm
Inspired by the process of natural selection and genetics, the GA is an optimization and
population-based search technique based on the aforementioned principles. It was first introduced by Holland (1975) and was later on diversified to many other fields of discrete optimization after the works authored by Goldberg (1989). According to Haupt and Haupt (2004), GA
is ideal at solving complex problems as it possesses great variable optimization technique.
One of it is observed in the nature of the algorithm where the encoding is performed directly
onto the variables as a set of candidate solutions. A typical GA consists of a representation
of potential solutions known as population, genetic operators, fitness function, a selection
scheme and stopping criteria. The GA algorithm is described in Brownlee (2011).
Conventional GA often encodes the candidate solutions in binary strings. However, in the
area of academic scheduling, the candidate solutions are usually encoded in sets because it
adds to the robustness of the genetic operators such as the crossover operation (Sabri et al.
2010). These sets would contain the parameters to be optimized as noted in the works of
Nuntasen and Innet (2007), Tahar (2010) and the encoding style may vary slightly depending
on the requirement of the problem instance. For instance, in the works of Nuntasen and
Innet (2007), the candidate solutions (chromosomes) were encoded in the form of set with 3
parameters, namely Lecturer (L), Subject (S) and Room (R) given as follow:
Chromosome Encoding, E = {L, S, R}.
where E is the chromosome, L is the lecturer, S is the subject and R is the room.
Each of the parameters contain a subset of their own, which can be described as L =
{L 1 , L 2 , . . . , L n }, S = {S1 , S2 , . . . , Sm } and R = {R1 , R2 , . . . , Rn }.
On the contrary, in the works proposed by Tahar (2010), the parameters that were taken
into account during the encoding of the chromosome were course (c), day (d), time (t),
professor ( p), classroom (r ), level (l) and a list of students (s).
Chromosome Encoding : {(ci , di , ti , pi , ri , li )/i = 1, 2, . . . , N }
where N is the number of courses.
The encoded chromosomes will then undergo the selection process, where they are evaluated by a fitness function and the higher quality chromosomes are carried to the next round.
The will then undergo the crossover operator, where the exchange of information is performed
between the two parent chromosomes, followed by the mutation operator, which prevents the
algorithm to be stuck in a local minimum (Sivanandam and Deepa 2008). Nevertheless, it is
possible to omit the crossover operation (since it adds to the complexity and computational
time) as demonstrated in the works of Beligiannis et al. (2008) and Suyanto (2010). The
result of the experiment by the latter is shown in Table 2.
Based on Table 2, it can be observed that the crossover percentage affects the fitness
function value. A higher percentage of crossover enhances the fitness function value with
an increased computational time. On the contrary, a higher percentage of mutation enables a
feasible solution to be obtained in lesser generations, but with a higher fitness function value.

123

Review of state of the art


Table 2 Ratio of GA operator,
best generation and fitness
function value (Suyanto 2010)

Ratio of GA operator

Best generation Fitness function value

Crossover 80%:Mutation 20% 423

2,070

Crossover 50%:Mutation 50% 197

1,520

Crossover 20%:Mutation 80% 103

2,318

Table 3 Costs and execution times with three neighbourhood search algorithms (Aycan and Ayav 2009)
SSN

S3 WN

SWN

Cost

CPU (s)

Cost

CPU (s)

Cost

CPU (s)

3,900

29

9,300

40

4,300

34

3.3 Simulated annealing


Simulated Annealing is a local search method and was first introduced by Kirkpatrick et al.
(1983) which mimics the principles of metallurgy of metals boiling and cooling to achieve a
stable crystal lattice structure with minimal energy state. The pseudocode for a standard SA
is described in the works of Gonzalez (2007).
The algorithm initializes by generating an initial random solution. After that, adjacent
solution is being generated and these two solutions will be evaluated by an objective function.
If the cost of the neighbour is lower than the cost of the initial solution and lowers the energy
of the system, the neighbour will be accepted as an improved solution. As for a non-improving
solution, it will gradually be accepted with a probability value given by a probability function.
In SA, the performance of the algorithm is highly dependent on its parameters, such as
how meticulous the neighbourhood is being explored, update moves and cooling rate. Wellexplored neighbourhood provides the opportunity for quality solutions to be obtained as
demonstrated in the works of Aycan and Ayav (2009). In their work, 3 neighbourhood search
methods were proposed, which were Simple-Searching Neighbourhoods (SSN), Swapping
Neighbourhoods (SWN) and Simple-Searching and Swapping Neighbourhoods (S 3 W N ),
each with the ability to explore the search space region distinctly. Tables 3, 4, 5 give the
results of the search methods.
Additionally, high-quality solution is achievable if the update moves at each temperature
stage is set to be proportional to the neighbourhood size (Johnson and McGeoch 1997). The
works of Elmohamed et al. (1998) demonstrate how the different types of cooling schedule
can add to the solution quality. The cooling schedules consist of the typical geometric cooling
schedule, adaptive cooling schedule and adaptive cooling schedule with reheating function.
Geometric cooling schedule is the most widely used annealing schedule and has the advantage
of being well understood. In Adaptive cooling schedule, a new temperature is computed
based on the existing temperature with slight deviation so as to maintain the system close
to equilibrium. Reheating allows the algorithm to escape the local minima by reheating the
system temperature above transition phase which in turn allows the algorithm to explore
other optima.
It was found that the adaptive cooling schedule, when used together with a pre-processor
(to yield a good starting point), produced the best result. To further enhance the solution, the
final solution can be reheated further as well. The results are presented in Table 6.

123

C. K. Teoh et al.
Table 4 Costs and execution times with the combinations of SN, SWN and S3 WN (Aycan and Ayav 2009)
SSN and S3 WN

SSN and SWN

SWN and S3 WN

Cost

CPU (s)

Cost

CPU (s)

Cost

CPU (s)

3,900

28

4,900

27

3700

31

Table 5 Costs and execution


times when SSN, SWN and
S3 WN are used altogether
(Aycan and Ayav 2009)

Case A (sequentially)

Case B (in turn)

Cost

CPU (s)

Cost

CPU (s)

4,100

87

3,600

28

Table 6 Percentage of scheduled classes, averaged over 10 runs of the same initial temperature and other
parameters, for three terms using simulated annealing with an expert system as pre-processor (Elmohamed et
al. 1998)
Academic time period

Algorithm

First semester

SA (geometric)
SA (adaptive)
SA (cost-based)

Second semester

93.90
98.80
100.0

Highest
scheduled %
95.12
99.20
100.0

Lowest
scheduled %
85.20
95.00
100.0

SA (geometric)

95.00

98.95

89.40

SA (adaptive)

99.00

99.50

98.50

SA (cost-based)
Third semester

Scheduled
(average) %

SA (geometric)

100.0
97.60

100.0
98.88

100.0
90.90

SA (adaptive)

100.0

100.0

100.0

SA (cost-based)

100.0

100.0

100.0

A comparison between the SSN, SWN and S 3 W N shows that the Simple-Searching Neighbourhood structure yields the best result of all the 3 neighbourhood search methods. Upon
hybridizing SWN and S 3 W N , a combination of all 3 neighbourhood search algorithm yielded
the best result with the cost of 3,700 within 31 s. The effectiveness of the hybrid algorithm
was tested and evaluated based on 2 casesCase A and B. In Case A, the algorithm was
executed sequentially and in Case B, the algorithm was executed in turn basis. From the
experiment, it was found that the algorithm performs more effectively when executed in turn
basis.
From Table 6, it is evident that the adaptive cooling schedule outperforms the geometric
cooling schedule. The cost-based SA can only be used upon obtaining the best solution from
the adaptive SA. In the experiment, it was used with a pre-processor, reheating function and
will always return a valid solution.
3.4 Particle swarm optimization
Particle swarm optimization was first proposed by Kennedy and Eberhart (1995). The algorithm mimics the social behaviour of collective species such as a school of fishes, a flock
of birds and a group of humans. It is also closely associated with GA due to their many

123

Review of state of the art

similarities (Shu-Chuan and Yi-Tin 2006). The PSO algorithm is particularly concerned with
the exploration and exploitation of the search space. Essentially, exploration is the ability to
explore the different regions of a search space in order to locate the global optimum value
whereas exploitation is the ability to concentrate the search around a promising region in
hope to refine an existing candidate solution (Ghalia 2008). It is reported by Salman et al.
(2002) that PSO excels GA in terms of solutions quality and computational speed. In PSO, a
population of candidate solutions known as particles is initialized over random positions in a
search space. As the iterations increase, each of the particles with their individual and global
experience will share information with one another and converge to a global optimum.
The encoding of the particles is similar to that of GA. In the works of Tassopoulos and
Beligiannis (2012), the encoded solution model proposed satisfied 3 hard constraints during
the initialization phase in contrast to the work proposed by Qarouni-Fard et al. (2007) where
it satisfied only one constraint. It is desirable for the solution model to satisfy as many hard
constraints as possible as this reduces the stress on the algorithm which in turn, decreases
the computational time. The satisfied hard constraints guarantee that all lecturers cannot
be lecturing 2 different subjects in a class at all time, can only teach up to a maximum
number of hours as stipulated by the school and the total hours assigned to each class should
equal to the total hours permitted to teach. Additionally, the timetabling system possesses an
inherent adaptive behaviour, which added to the quality of the solutions produced. The author
incorporated a feature where lecturers can specify their preferences by attaching priorities in
the form of (adjustable) weights to the selected constraints. The results of the experiment are
described in Tables 7, 8 and 9. In Table 7, the algorithm records 13/18 cases in outperforming
other methods, 3/18 cases with similar results and 2/18 cases with unsatisfactory results. In
Table 8, 8/12 cases for outstanding performance, 3/12 cases with similar results and 1/12
case with unsatisfactory results. In Table 9, 6/9 cases for outperforming other methods, 2/9
cases with similar results and 1/9 case for unsatisfactory result.
One of the noted soft constraints which add to the solution quality is to minimize the
teachers idle time as much as possible. In order to achieve this, a local search method
known as the Refining procedure was incorporated after obtaining a fairly good solution in
the first phase. In the distribution teachers column in Table 7, the first number indicates
the number of teachers whose teaching hours are not evenly distributed while the number
in the parentheses indicates the frequency of the uneven distribution. The first number in
the distribution courses indicates the classes in which the same course is being taught
repeatedly while the number in the parentheses indicates the total number of classes in which
the incident occurs. In the teachers idle periods column, the first number indicates the
teacher who has idle hours while the number in the parentheses indicates the total hour idles
for all teachers.
3.5 Fuzzy logic algorithm
Fuzzy logic (FL) is a form of probabilistic logic which provides a greater range of options
when it comes to making decisions and was proposed by Zadeh (1965). In conventional
decision making option, an algorithm can only evaluate a condition using binary logic, which
is either true or false. When FL was introduced, it expands the capability of evaluation
by the introduction of linguistic variables, enhancing the ability to evaluate constraints with
a certain degree of truth. In other words, FL is able to provide good reasoning even under
vague conditions and uncertainties.
The algorithm was adopted by Petrovic et al. (2005) and Asmuni et al. (2005) in the field
of academic scheduling. In the works of Petrovic et al. (2005), flexible constraints pertaining

123

123

21(48)

15(34)

9(23)

6(14)

6(17)

24(56)

13(36)

0(0)

0(0)

3(3)

0(0)

1(1)

24(33)

15(39)

15(31)

8(24)

30(52)

25(34)

24(50)

1(2)

5(12)

4(8)

15(34)

18(40)

13(27)

0(0)

0(0)

3(3)

0(0)

1(1)

Distribution
courses

Distribution
teachers

Teachers
idle periods

Distribution
teachers

Distribution
courses

Genetic algorithm
(Beligiannis et al. 2009)

Timetables used at schools

Test
data set

24(32)

8(8)

17(29)

9(9)

26(42)

25(29)

Teachers
idle periods

24(50)

1(2)

5(12)

4(8)

15(34)

18(40)

Distribution
teachers

13(27)

0(0)

0(0)

3(3)

0(0)

1(1)

Distribution
courses

Evolutionary algorithm
(Beligiannis et al. 2008)

24(32)

8(8)

17(29)

9(9)

26(42)

25(29)

Teachers
idle periods

0(0)

0(0)

2(3)

2(4)

1(2)

1(2)

Distribution
teachers

PSO algorithm

0(0)

0(0)

0(0)

3(3)

2(2)

2(2)

Distribution
courses

20(43)

0(0)

9(10)

0(0)

12(19)

11(15)

Teachers
idle periods

Table 7 Comparing timetables constructed by the proposed PSO algorithm with real-world timetables used at schools and timetables created in Beligiannis et al. (2008, 2009)

C. K. Teoh et al.

Genetic algorithm
(Beligiannis et al. 2009)

Evolutionary algorithm
(Beligiannis et al. 2008)

PSO Algorithm

5(10)

6(12)

6(16)

6(16)

10

11

8(29)

6(16)

6(22)

5(15)

0(0)

0(0)

0(0)

0(0)

6(14)

4(6)

7(14)

4(8)

9(29)

7(22)

6(21)

5(15)

0(0)

0(0)

0(0)

0(0)

6(13)

2(4)

7(14)

3(6)

9(29)

7(22)

6(21)

5(15)

0(0)

0(0)

0(0)

0(0)

0(0)

0(0)

0(0)

0(0)

8(18)

6(10)

0(0)

5(11)

0(0)

0(0)

2(2)

0(0)

Distribution Distribution Teachers


Distribution Distribution Teachers
Distribution Distribution Teachers
Distribution Distribution Teachers
teachers
courses
idle periods teachers
courses
idle periods teachers
courses
idle periods teachers
courses
idle periods

Column generation approach


(Papoutsis et al. 2003)

Test
data set

Table 8 Comparing timetables constructed by the proposed PSO algorithm with timetables created in Beligiannis et al. (2008, 2009) and Papoutsis et al. (2003)

Review of state of the art

123

123

5(10)

5(10)

6(16)

10

6(16)

6(22)

5(15)

0(0)

0(0)

0(0)
2(4)

7(14)

3(6)
7(22)

6(21)

5(15)

Distribution
courses

Distribution
teachers

Teachers idle
periods

Distribution
teachers

Distribution
courses

Evolutionary algorithm
(Beligiannis et al. 2008)

Constraint programming approach


(Valouxis and Housos 2003)

Test
data set

0(0)

0(0)

0(0)

Teachers idle
periods

0(0)

0(0)

0(0)

Distribution
teachers

PSO algorithm

6(10)

0(0)

5(11)

Distribution
courses

Table 9 Comparing timetables constructed by the proposed PSO algorithm with timetables created in Beligiannis et al. (2008) and Valouxis and Housos (2003)

0(0)

2(2)

0(0)

Teachers idle
periods

C. K. Teoh et al.

Review of state of the art


Table 10 Comparison between
manual, GA and FGH Solutions
(Chaudhuri and De 2010)

Feature

Manual
solution

GA solution
(Gupta et al. 2006)

FGH
solution

Fitness

2, 286

2, 599

2, 809

Objective value

2, 286

1, 107

809

Penalty value

2, 000

2, 000

Number of hard
constraints violated
Number of soft
constraints violated
Classroom hour gaps

90

Teacher hour gaps

98

to exam timetabling were introduced to loosen the evaluation process as opposed to a rigid
evaluation. For example, in determining the size of an exam, 2 extra linguistic variables
were introduced which are size and time period defined by small, medium, large and early,
middle, late respectively. 9 different combinations of possibilities were then derived based on
the linguistic constraints to determine the degree of constraint satisfaction. Similarly, in the
work proposed by Asmuni et al. (2005), exam ranking was taken into consideration by taking
into account multiple heuristics methods such as largest degree (LD) first, largest enrolment
(LE) first and least saturation degree (LSD) first with largest enrolment (LE) first excelling
the rest.
Fuzzy logic can easily be hybridized with other algorithms as demonstrated in the works of
Chaudhuri and De (2010)where it was hybridized with GA denoted as Fuzzy Genetic Heuristic (FGH). In the works proposed, the timetable generation was constructed in 2 phasesthe
first phase was to obtain a feasible timetable with the GA operator and the second phase was to
minimize the violation of soft constraints as much as possible using the notation sets of Fuzzy
Logic. During the first phase, whenever a feasible timetable (satisfies all hard constraints and
a certain amount of soft constraints) is produced, the solution was often impractical to implement as it possessed some invalid solutions. Hence, the author introduced a direct and indirect
encoding method into the construction of the timetable. In direct encoding, all the parameters in GA were encoded into the chromosome while indirect encoding invoked a timetable
builder which allowed FL to solve the soft constraints violated. A comparison between the
manual solution, GA solution and FGH solution is given in Table 10 while the execution time
of fuzzy genetic against other instances of GA-based heuristic is shown in Table 11.
In Table 10, the results of three methods which comprised of manual solution, GA and
FGH were tabulated and FGH was able to achieve a reasonably good solution. The FGH
algorithm scored the least in the objective function value, obtained a minimum classroom
hour gaps of 5 h and was able to minimize the teachers idle time to 1 h, increasing the resource
utility rate. Moreover, the algorithm was reported to satisfy both the hard and soft constraints
in a balanced manner rather than satisfying only the hard constraints as solved by the manual
method. In Table 11, the execution time of the FGH algorithm was compared against other
GA methods on different problem instances and FGH exhibited almost similar results with
the other algorithms.
3.6 Ant colony optimization
Ant colony optimization (ACO) was first proposed by Dorigo et al. (2006) and is a relatively
new algorithm. It is inspired by the foraging behaviour of ants through their deposit of
pheromone where they are able to identify the shortest path to transport their food. Despite

123

C. K. Teoh et al.
Table 11 Execution time (in minutes) of various GA instances against FGH (Chaudhuri and De 2010)
GA3
GA4
Datasets GA1
GA2
(Cupic
(Ghaemi (Qu et al. (Moreira
2008)
et al. 2009) and Vakili 2009)
2006)

GA5
(Singh
et al. 2008)

GA6
GA7
FGH
(Gupta
(Kordalewski
et al. 2006) et al. 2009)

Small1

11.55

15.79

16.60

17.45

14.56

16.62

18.32

19.76

Small2

11.59

15.86

16.64

17.46

14.57

16.64

18.33

19.90

Small3

11.62

15.96

16.66

17.47

14.59

16.66

18.34

19.86

Small4

11.64

15.98

16.69

17.50

14.60

16.67

18.35

19.89

Small5

11.69

15.99

16.86

17.52

14.69

16.69

18.37

19.89

Medium1 109.96

106.90

116.99

115.90

111.30

112.30

112.28

119.07

Medium2 104.86

109.50

107.84

107.86

86.32

80.32

79.86

119.56

Medium3 110.99

118.30

117.99

114.37

112.37

112.16

118.66

Medium4

100.79

104.56

115.57

114.54

112.50

112.37

117.96

Medium5

105.99

115.96

85.69

75.69

69.86

118.98

Large

116.32

119.30

119.55

119.99

the fact that it is a stochastic and multi-directional search algorithm, it does not guarantee
the discovery of an optimal solution (Lutuksin and Pongcharoen 2010). The algorithm is
developed based on a parameterized probabilistic model known as the pheromone model
with various pheromone values. A pheromone value is associated to each pheromone trail
and is updated during every runtime in order to obtain a bias towards high quality solutions
(Dorigo and Blum 2005). However, it was also reported by the same author that the original
ACO suffers from bias deception known as the first order and second order deception whereby
some solution components are updated more frequently than the others on the average, which
in turn may not guarantee an optimum solution at all (Blum and Dorigo 2002, 2004). The
algorithm for ACO is given in Fig. 1.
Recent works in the Ant Colony Optimization algorithm, ACO have resulted in many variants of the algorithm. For example, the works of Cordon et al. (2002) have led to algorithms
such as the Ant System (AS), Ant Colony System (ACS), Best-Worst Ant System (BWAS) and
Best-Worst Ant Colony System (BWACS).
In his study, 3 parameters namely Restart (Rs), Mutation(M) and Worst Ant Update (W )
were taken into account. Rs is a mechanism that enables the algorithm to escape from its
local optima should it get stuck, M mutates the pheromone trails to enhance the exploration
of the search space and W is an updating mechanism of the worst ant. Among the proposed
algorithms, the BWAS and BWACS models performed excellently in obtaining a high quality
solution. It was found that the W parameter would remove irrelevant search spaces while
both mutation and restart would avoid the algorithm to be trapped in local optima. A priority
order was also established to denote the importance of each parameter: Restart, Mutation and
Worst Ant Trail Update. The proposed algorithm was applied by Lutuksin and Pongcharoen
(2010) in solving the academic scheduling problem using 6 problem instances adopted from
the literature review of Cordon et al. (2000).
The computational results for MMAS, ACS and BWACS are given in Table 12, and from
the results, the MMAS outperformed the ACS and BWACS method for problems 1 and 2 which
were relatively small. However, the ACS method excelled in solving problem 3. Problems 4,
5 and 6 were relatively large and they were effectively solved by the BWACS method. The

123

Review of state of the art

Fig. 1 Algorithm for Ant Colony Optimization (Brownlee 2011)

proposed methods were found to be effective for certain problems, hence it can be concluded
that the methods available are unique based on the attributes of the problem.
3.7 Hyper-heuristics
Hyper-heuristics first surfaced when there was a need for a robust algorithm which could
easily generalize and extend to a new but yet similar problem. Proposed by Denzinger et al.
(1996), the idea is very similar to that of hybridized algorithms, except that hyper-heuristics
is a high level algorithm which consists of a huge amount of lower level heuristics algorithm
(Burke et al. 2010. The algorithm is designed such that it is able to generate a solution
of acceptable quality within the shortest period of time (Chakhlevitch and Cowling 2008).
While conventional meta-heuristics method searches for a possible solution in the search
space, hyper-heuristics differ to meta-heuristics by searching for combinations of lowerheuristics techniques in a space of heuristics than a space of solutions (Burke et al. 2010). It
operates on a higher level of meta-heuristics to select an ideal combinations of lower level
heuristics method solve the problem based on the assignment of weights, rather than solving
the problem directly. The fundamental algorithm of hyper-heuristics is described in Fig. 2.
A choice function whose preference can be easily specified is used to guide the hyperheuristics in selecting the best method to solve a problem. Equation 3 describes a simple
choice function.

123

C. K. Teoh et al.
Table 12 Computational results obtained from the MMAS, ACS and BWACS methods (Lutuksin and
Pongcharoen 2010)
Problem

Methods

Best so far solutions


Minimum

MMAS
ACS

Maximum

Average

Standard deviation

Time (h)

62

78

72

6.52

1.08

105

117

110.8

5.36

1.05

83.8

31.68

1.06

BWACS

49

130

MMAS

22

31

26

3.24

2.25

ACS

52

59

56.2

3.03

2.30

BWACS

30

43

38

4.84

2.23

MMAS

520

566

539.4

18.08

3.66

ACS

515

541

522

10.98

3.86

BWACS

517

572

548.2

20.96

3.17

MMAS

406

458

426.4

23.69

4.09

ACS

349

385

359

15.54

4.33

BWACS

314

349

337.8

14.51

4.53

MMAS

339

369

355

11.11

5.91

ACS

263

286

274

8.89

5.92

BWACS

254

289

267.6

13.01

5.94

MMAS

405

441

424

15.33

5.54

ACS

331

341

336.6

4.39

5.57

BWACS

318

340

330.2

9.49

5.67

Fig. 2 Algorithm for hyper-heuristics (Burke et al. 2003)



G (Hk ) = f 1 (Hk ) + f 2 H j , Hk + f 3 (HK )

(3)

where:
Hk is the kth heuristic,
, and are weights which reflect the importance of each term. (Can be varied according
to users preference where + + = 1.0),
f 1 (Hk ) is the recent performance of heuristic Hk .
f 2 (Hj , Hk ) is the recent performance of heuristic pair Hj , Hk .
f 3 (Hk) is a measure of the amount of time since heuristic Hk was called.
In the algorithm applied by Terashima-Marin et al. (1999) in an academic scheduling
problem, the algorithm was tested on several problem instances known as the Toronto problem

123

Review of state of the art


Table 13 Brelaz algorithm on Carters real-life exam timetable (Toronto set) with edge, near-clash and
capacity constraints using various heuristics (Terashima-Marin et al. 1999)
Problems

Slots

Maximum
exam size

Seats

Heuristics
1

HECS92

21

634

1, 250

0/318/0

0/302/0

0/322/0

0/1,112/0

STAF83

15

237

600

0/1,338/0

0/1,348/0

0/1,450/0

0/2,418/0

YORF83

21

175

500

0/790/0

0/865/0

0/783/0

0/1,171/0

UTES92

12

482

1, 250

0/816/0

0/870/

0/1,593/0

0/2,643/0

EARF83

24

232

700

0/880/0

0/933/0

0/946/0

0/1,448/0

TRES92

27

407

655

0/613/0

0/645/0

0/716/0

0/1,239/0

LSEF91

21

382

900

0/421/0

0/428/0

0/302/0

0/1,309/0

KFUS93

24

1, 280

1, 955

0/951/0

0/957/0

0/996/0

0/2,484/0

RYES93

27

943

2, 500

0/1,471/0

0/1,045/0

0/1,451/0

0/4,676/0

CARF92

40

1, 566

2, 000

0/428/0

0/383/0

0/427/0

0/2,441/0

UTAS92

38

1, 314

2, 800

0/952/0

0/1,104/0

0/1,032/0

0/2,984/0

CARS91

51

1, 385

1, 550

0/342/0

0/230/

0/356/0

0/2,217/0

set, which is a collection of real-world data. Whenever a condition which involves a selected
amount of constraints is marked X , the heuristics involved will be H 1 and H 2. After the
first round of evaluation, it will proceed to the second phase which deals with the remaining
set of constraints, which then involves heuristics H 3 and H 4. The higher level heuristics in
this instance is GA while the lower level heuristics are composed by the variations of Brelaz
algorithms. The variations of Brelaz algorithm handle the clash and capacity constraints while
GA was used to search for the ideal heuristic combinations to solve the various constraints
for various datasets. The results are described in Tables 13 and 14 respectively.
In Table 13, the Slots column denotes the available timeslots for the problem; the Maximum Exam Size column denotes the size of the exams with the most number of registered
students and the Seats column denotes the capacity for any timeslot. The generated schedules were all feasible because the number of seats was larger than the exam size, fulfilling
the capacity constraint. The values present in the Heuristics column refer to the edge (with
exam being the node, and the edge implicates that 2 nodes cannot be at the same time),
near clash and capacity constraints respectively (e.g. 0/318/0 implies 0 edge, 318 near clash
instances and 0 room whose students exceeded the room capacity). It can be concluded that
each variant of the heuristics was capable of solving a problem effectively through the interaction of heuristics. The results in bold denote the best heuristic in solving the particular
dataset.
In Table 14, the GABest column is further divided into 3 sub-columns. The first subcolumn describes the violation result in the form of edge/ near clash/ capacity. The second
sub-column describes the combination of the modified Brelaz algorithm together with the
heuristics strategies (values in parentheses) which involved Brelaz (BR), Backtracking (BT)
and Forward Checking (FC). The third sub-column describes the rules that were used to
change the strategies which involved With-Large (WL) and With- (W) and the number
of events scheduled. The results in bold denote the best heuristic in solving the particular
dataset. From the table, it is evident that the strategies obtained from GA yielded a more

123

C. K. Teoh et al.
Table 14 Evolution of CSP strategies against best solution of modified Brelaz algorithm on Carters real-life
exam timetable (Toronto set) problems (Terashima-Marin et al. 1999)
Problems

Slots

Seats

Brelaz best

GA average

ABest (best strategy)

HECS92

21

1, 250

0/302/0

0/190/0

0/154/0

BR(7,1)-BT(0,1)

WL-24

STAF83

15

600

0/1,338/0

0/932/0

0/821/0

BR(8,2)-BT(3,0)

W-127

YORF83

21

500

0/783/0

0/764/0

0/708/0

BR(0,2)-FC(2,1)

W-119

UTES92

12

1, 250

0/816/0

0/632/

0/594/0

BR(2,0)-BT(1,1)

W-16

EARF83

24

700

0/880/0

0/723/0

0/723/0

FC(4,0)

TRES92

27

655

0/613/0

0/599/0

0/586/0

FC(4,1)-BT(3,0)

LSEF91

21

900

0/302/0

0/247/0

0/221/0

BR(8,0)

KFUS93

24

1, 955

0/951/0

0/231/0

0/223/0

BR(1,0)-FC(3,0)

RYES93

27

2, 500

0/1,045/0

0/754/0

0/671/0

BR(8,1)

WL-25
W-97

CARF92

40

2, 000

0/383/0

0/285/0

0/285/0

BR(2,0)

UTAS92

38

2, 800

0/952/0

0/936/0

0/902/0

BR(0,0)-BR(6,2)

W-262

CARS91

51

1, 550

0/230/0

0/170/0

0/130/0

BR(8,0)

WL-24

effective overall result. It can be concluded that a better overall performance and solution
quality can be achieved by discreetly choosing and evolving a suitable pair or combinations
of strategies rather than solving a problem with a single strategy. As for GA, the authors also
suggested to using a non-direct representation of chromosomes in solving similar problems
because in a large problem instance, long chromosomes are required to represent the solution
which could lead to various failures.

4 Conclusion
In this review, the nature of the Academic Scheduling Problems and the properties of the
various meta-heuristics techniques used in solving the academic scheduling problem have
been surveyed. In general, Academic Scheduling Problems encompass both course scheduling and exam scheduling problem. The difference between them is that the goal in course
scheduling is to minimize the time gap for both lecturers and students while exam scheduling
maximizes the time gap between each examination.
From the survey, it can be said that each metaheuristic technique has the ability to yield feasible solutions with certain characteristics and tradeoffs. For example, the Academic Scheduling Problems have been successfully solved by SA, a method which promises high quality
solutions with the condition of an optimum parameter tuning while GA promises greater
exploration of the search space due to the algorithm operators but with a longer computational time. Primitive decision making skills which involved only binary outcome have
also evolved into an algorithm known as Fuzzy Logic which has the ability to offer multiple options which benefited the decision making process. In order to effectively utilize
the strength of each algorithm, hybridization techniques were proposed such as the Fuzzy
Genetic Heuristics which employed the operators from GA and the enhanced decision making ability by fuzzy logic and hyper-heuristics which functions as a collection of algorithms
tailored to specific problem types. It is no doubt that meta-heuristics methods are capable of
producing high quality solutions with the development of hyper-heuristics which involved
hybridization of more than one technique. However, it is due to the various parameter set-

123

Review of state of the art

tings and stochastic nature of the algorithm, that obtaining high quality solutions becomes
difficult.
In conclusion, it can be said that there is no definite algorithm which is more superior
to solving an academic scheduling problem as each algorithm possesses a unique strength.
It simply depends on the difficulty of the problem which increases proportionately with the
problem size. Additionally, the parameter settings and the complexity of the algorithm are
also a key factor in contributing to the quality of the solutions. On one hand, in view of
aspects such as exploration of the search space, it can be observed that GA and PSO seem to
perform better. On the other, high quality solutions seem to be achievable with SA and FGH
which satisfied a considerable amount of soft constraints.

References
Alvarez-Valdes R, Crespo E, Tamarit JM (2001) Design and implementation of a course scheduling system
using Tabu search. Eur J Oper Res 137(3):512523
Asmuni H, Burke EK, Garibaldi JM, McCollum B (2005) Fuzzy multiple heuristic orderings for examination
timetabling. Paper presented at the PATAT, LNCS
Aycan E, Ayav T (2009) Solving the course scheduling problem using simulate snnealing. Paper presented at
the IEEE international advance computing conference (IACC)
Baker KR (1974) Introduction to sequencing and scheduling. Wiley, New York
Bardadym VA (1996) Computer-aided school and university timetabling: the new wave. In: Practice and theory
of automated timetabling. Lecture notes in Computer Science, vol 1153. pp 2245
Beligiannis GN, Moschopoulos CN, Kaperonis GP, Likothanassis SD (2008) Applying evolutionary computation to the school timetabling problem: the Greek case. Comput Oper Res 35(4):12651280
Beligiannis GN, Moschopoulos CN, Likothanassis SD (2009) A genetic algorithm algorithm approach to
school timetabling. J Oper Res Soc 60(1):2342
Blum C, Dorigo M (2002) On a particularity in model-based search. In: Paper presented at the genetic and
evolutionary computation conference
Blum C, Dorigo M (2004) Theoretical and practical aspects of ant colony optimization. Theor Comput Sci
344(23):243278
Brownlee J (2011) Clever algorithms: nature-inspired programming pecipes: Lulu Enterprises
Burke EK, Elliman DG, Weare RF (1994) A University timetabling system based on graph colouring and
constraint manipulation. J Res Comput Educ 27(1):118
Burke EK, Elliman DG, Weare RF (1995) A hybrid genetic algorithm for highly constrained timetabling
problems. In: Proceedings of the 6th international conference on genetic algorithms, pp 605610
Burke EK, Hart E, Kendall G, Newall J, Ross P, Schulenberg S (2003) Hyper-heuristics: an emerging direction
in modern search technology handbook of metaheuristics. In: International series in operations research
and management science, vol 57. Kluwer
Burke EK, Hyde M, Kendall G, Ochoa G, Ozcan E, Qu R (2010) Hyper-heuristics: a survey of the state of the
art: School of Computer Science and Information Technology. University of Nottingham
Burke EK, McCollum B, Meisels A, Petrovic S, Qu R (2007) A graph-based hyper-heuristic for educational
timetabling problems. Eur J Oper Res 176:177192
Casusmaecker PD, Demeester P, Berghe GV (2009) A decomposed metaheuristic approach for a real-world
university timetabling problem. Eur J Oper Res 195:307318
Chakhlevitch K, Cowling P (2008) Hyperheuristics: recent developments. In: Cotta C, Sevaux M, Srensen
K (eds) Adaptive and multilevel metaheuristics SE - 1, 136. Springer, Berlin, pp 329
Chaudhuri A, De K (2010) Fuzzy genetic heuristic for university course timetable problem. Int J Adv Soft
Comput Appl 2(1):100121
Cordon O, Viana IFD, Herrera F (2002) Analysis of the best-worst ant system and its variants on the QAP. In:
Paper presented at the third international workshop on ant algorithms
Cordon O, Viana IFD, Herrera F, Moreno L (2000) A new ACO model integrating evolutionary computation
concepts: the best-worst ant system. In: Paper presented at the 2nd international workshop on ant algorithm.
Universite Libre de Bruxelles, Belgium
Cupic M, Golub M, Jakobovic D (2009) Exam timetabling using genetic algorithm. In: Paper presented at the
ITI 31st international conference on information technology interfaces, Croatia

123

C. K. Teoh et al.
Denzinger J, Fuchs M, Fuchs M (1996) High performance ATP systems by combining several AI methods.
University of Fachbereich Informatik, Berlin
Dorigo M, Birattari M, Stutzle T (2006) Ant colony optimization. Comput Intell Mag IEEE 1(4):2839
Dorigo M, Blum C (2005) Ant colony optimization theory: a survey. Theor Comput Sci 344:243278
Elmohamed MAS, Coddington P, Fox G (1998) A comparison of annealing techniques for academic course
scheduling. Springer, Berlin
Ghaemi S, Vakili MT (2006) Using a genetic algorithm optimizer tool to solve university timetable scheduling
problem. Faculty of Electrical and Computer Engineering, University of Tabriz, Iran
Ghalia MB (2008) Particle swarm optimization with an improved exploration-exploitation balance. In: Paper
presented at the 51st IEEE international midwest symposium on circuits and systems.
Glover F (1986) Future paths for integer programming and links to artificial intelligence. Comput Oper Res
13(533):533549
Glover F, McMillan C (1986) The general employee scheduling problem: an integration of MS and AI. Comput
Oper Res 13(5):563573
Goldberg DE (1989) Genetic algorithms in search optimization and machine learning. Addison-Wesley,
Reading
Gonzalez TF (2007) Handbook of approximation algorithms and metaheuristics. CRC Press INC
Guang-Feng D, Woo-Tsong L (2011) Ant colony optimization-based algorithm for airline crew scheduling
problem. Expert Syst Appl 38:57875793
Gupta P, Bansal M, Prakash H (2006) Implementation of timetable problem using genetic algorithm. Department of Computer Science Engineering, Indian Institute of Technology, Kanpur, Project Report
Haupt RL, Haupt SE (2004) Practical genetic algorithms. Wiley, Hoboken, New Jersey
Holland JH (1975) Adaption in natural and artificial systems. University of Michigan Press, Ann Harbor
Johnson DS, McGeoch LA (1997) The travelling salesman problem: a case study in local optimization. Wiley,
New York
Kanit R, Ozkan O, Gunduz M (2009) Effects of project size and resource constraints on project duration
through priority rule-base heuristics. Artif Intell Rev 32(14):115123
Kennedy J, Eberhart R (1995) Particle swarm optimization. In: Paper presented at the IEEE international
conference on neural networks, pp 19421948
Kingston JH (2004) A tiling algorithm for High School timetabling. In: Paper presented at the fifth international
conference on practice and theory of automated timetabling
Kirkpatrick S, Gelatt CD, Vecchi MP (1983) Optimization by simulated annealing. Science 220:671680
Kordalewski D, Liu C, Salvesen K (2009) Solving an exam scheduling problem using a genetic algorithm.
Department of Statistics, University of Toronto, Toronto, Canada
Lewis R (2007) A survey of metaheuristic-based techniques for university timetabling problems. OR SpectR
30(1):167190
Lewis R, Thompson J (2011) On the application of graph colouring techniques in round-robin sports scheduling. Comput Oper Res 38:190204
Lim HT, Razamin R (2010) Recent advancements of nurse scheduling models and a potential path. In: Paper
presented at the IMT-GT conference on mathematics, statistics and its applications (ICMSA2010), Universiti Tunku Abdul Rahman, Kuala Lumpur, Malaysia
Lutuksin T, Pongcharoen P (2010) Best-worst ant colony system parameter investigation by using experimental design and analysis for course timetabling problem. In: Paper presented at the second international
conference on Computer and Network Technology
Mariott K, Stuckey PJ (1998) Programming with constraints: an introduction. MIT Press, Cambridge
Md Sultan AB, Ramlan M (2008) Selecting quality initial random seed for metaheuristic approaches: a case
of timetabling problem. Int J Comput Internet Manag 16(1):8
Moreira JJ (2008) A system for automatic construction of exam timetable using genetic algorithms. TkhneRevista de Estudos Politchnicos (9):319336
Nuntasen N, Innet S (2007) A novel approach of genetic algorithm for solving university timetabling problems:
a case study of thai universities. In: Paper presented at the international conference on Applied Computer
Science
Omar M, Ainon RN, Zainuddin R (2003) Using a genetic algorithm optimizer tool to generate good quality
timetables. In: Proceedings of the 10th IEEE international conference, electronics, circuits and systems,
vol 3, pp 13001303
Papoutsis K, Valouxis C, Housos E (2003) A column generation approach for the timetabling problem of
Greek high schools. J Oper Res Soc 54(3):230238
Petrovic S, Patel V, Yang Y (2005) Examination timetabling with fuzzy constraints. In: Practice and theory of
automated timetabling V. Lecture Notes in Computer Science, vol 3616
Pinedo ML (2012) Scheduling theory, algorithms and systems. Springer, Berlin

123

Review of state of the art


Pongcharoen P, Promtet W, Yenradee P, Hicks C (2007) Stochastic optimisation timetabling tool for university
course scheduling. Int J Prod Econ 112(2):903918
Qarouni-Fard D, Najafi-Ardabli A, Moeinzadeh M-H, (2007) Finding Feasible Timetables with Particle Swarm
Optimization. In: Proceedings of the 4th international conference on innovations in information technology,
pp 387391
Qu R, Burke EK, Mccollum B, Merlot LT, Lee SY (2009) A survey of search methodologies and automated
system development for examination timetabling. J Sched 12(1):5589
Sabri MFM, Husin MH, Chai SK (2010) Development of a timetabling software using soft-computing techniques with a case study. IEEE 5:394397
Salman A, Ahmad I, Al-Madani S (2002) Particle swarm optimization for task assignment problem. Microprocess Microsyst 26(8):363371
Shu-Chuan C, Yi-Tin C (2006) Timetable scheduling using particle swarm optimization. In: Paper presented
at the first international conference on innovative computing, information and control
Singh E, Joshi VD, Gupta N (2008) Optimizing highly constrained examination timetable problems. J Appl
Math Stat Inf 4(2):193197
Sivanandam SM, Deepa SN (2008) Introduction to genetic algorithms. Springer, Berlin
Suyanto S (2010) An informed genetic algorithm for university course and student timetabling problems. In:
Proceedings of the 10th international conference on artifical intelligence and soft computing: Part II, Berlin,
Heidelberg, pp 229236
Tahar M (2010) Universal tool for university course schedule using genetic algorithm. (IJCNS). Int J Comput
Netw Secur 2(6):16
Tassopoulos IX, Beligiannis GN (2012) Solving effectively the school timetabling problem using particle
swarm optimization. Expert Syst Appl 39:60296040
Terashima-Marin H, Ross P, Valenzuela-Rendon M (1999) Evolution of constraint satisfaction strategies
in examination timetabling. In: Paper presented at the genetic and evolutionary computation conference
(GECCO-99)
Turabieh H, Abdullah S (2011) An integrated hybrid approach to the examination timetabling problem. Int J
Manag Sci 39:598607
Valouxis C, Housos E (2003) Constraint programming approach for school timetabling. Comput Oper Res
30(10):15551572
Zadeh LA (1965) Fuzzy sets. Inf Control 8(3):338353
Zhang D, Liu Y, MHallah R (2010) A simulated annealing with a new neighborhood structure based algorithm
for high school timetabling problems. Eur J Oper Res 203(3):550558
Zhipeng L, Jin-Kao H (2010) Adaptive Tabu search for course imetabling. Eur J Oper Res 200:235244

123

Das könnte Ihnen auch gefallen