a hybrid bees/demon optimization algorithm for solving the university course ... · 2015-02-06 ·...

8
A Hybrid Bees/Demon Optimization Algorithm for Solving the University Course Timetabling Problem NAJLAA ALHUWAISHEL, MANAR HOSNY College of Computer and Information Sciences King Saud University Riyadh Kingdom of Saudi Arabia [email protected] [email protected] Abstract: - The University Course Timetabling Problem (UCTP) is a critical and difficult decision making problem for almost every university, since it must be settled to start every academic year or semester. The larger the number of decision variables involved, the more cost and effort is spent in the planning process. In addition, the manually produced schedules usually suffer from many problems, such as the inefficient utilization of resources, the dissatisfaction of the persons involved, and the deficiency in fulfillment of all constraints. There is an urgent need for automating this process, especially with the increase in the number of students, teachers, disciplines, resources, etc. Despite the large number of research in this area, there is still a need for efficient algorithms that can solve this problem in order to reduce cost, time, and effort. This paper aims to solve the UCTP using a hybridized Bees Algorithm (BA). BA is a relatively recent population based metaheuristics that has been successfully used in solving difficult optimization problems. Our BA is designed in a way to achieve a balance between exploration of the search space, and exploitation of good solutions, by hybridizing it with simple local search in addition to a more intelligent form of local search called the Demon Algorithm (DA). Preliminary test results on benchmark test cases indicated that the new algorithm produced near optimal solutions with reasonable computational cost, which could save time and effort compared to the manual planning process. Key-Words: - University Course Timetabling Problem, Bees Algorithm, Combinatorial Optimization, Metaheuristics Algorithms, Demon Algorithm. 1 Introduction The University Course Timetabling problem (UCTP) is a famous problem that almost every school and university is facing periodically. In general, the UCTP can be described as the problem of assigning a list of different events to a set of timeslots in an acceptable time with consideration of satisfying some pre-defined constraints. The University Course Timetabling problem is considered as an NP-Hard problem, which is very difficult to solve using conventional search methods[1]. It belongs to the combinatorial optimization problems that may be solved heuristically. There are many complex sub-problems and constraints that need to be solved and satisfied in this problem. There is no simple way to define these constraints, though, as they usually differ from one university to another. However, we can generally categorize them into two types: hard constraints and soft constraints. Hard constraints are those that are mandatory and must to be satisfied in the solution process, while soft constraints should be maintained as much as possible. Socha in [2] indicates that the UCTP problem is similar to the vertex (graph) coloring problem in placing events in timeslots such that some events cannot be overlapping with each other. Thus, many algorithms were proposed depending on solutions for the graph coloring problem. Paechter in [1] explains how to convert the UCTP into a graph coloring problem, where the nodes represent the events, the colors are the timeslots, and the edges represent the ‘event- clash’ as they are placed between any conflicting nodes. However, the UCTP is often more complex since there is a third factor that must be considered, which is the need to assign rooms to each event [2], [3]. The University Course Timetabling Problem (UCTP) has grabbed the attention of the Metaheuristics Network (MN) 1 , which is a project sponsored by the Improving Human Potential Program of the European Community. The MN 1 http://www.metaheuristics.net Advances in Mathematics and Statistical Sciences ISBN: 978-1-61804-275-0 371

Upload: others

Post on 17-Jul-2020

8 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: A Hybrid Bees/Demon Optimization Algorithm for Solving the University Course ... · 2015-02-06 · University Course Timetabling problem is considered as an NP-Hard problem, which

A Hybrid Bees/Demon Optimization Algorithm for Solving the University Course Timetabling Problem

NAJLAA ALHUWAISHEL, MANAR HOSNY College of Computer and Information Sciences

King Saud University Riyadh

Kingdom of Saudi Arabia [email protected] [email protected]

Abstract: - The University Course Timetabling Problem (UCTP) is a critical and difficult decision making problem for almost every university, since it must be settled to start every academic year or semester. The larger the number of decision variables involved, the more cost and effort is spent in the planning process. In addition, the manually produced schedules usually suffer from many problems, such as the inefficient utilization of resources, the dissatisfaction of the persons involved, and the deficiency in fulfillment of all constraints. There is an urgent need for automating this process, especially with the increase in the number of students, teachers, disciplines, resources, etc. Despite the large number of research in this area, there is still a need for efficient algorithms that can solve this problem in order to reduce cost, time, and effort. This paper aims to solve the UCTP using a hybridized Bees Algorithm (BA). BA is a relatively recent population based metaheuristics that has been successfully used in solving difficult optimization problems. Our BA is designed in a way to achieve a balance between exploration of the search space, and exploitation of good solutions, by hybridizing it with simple local search in addition to a more intelligent form of local search called the Demon Algorithm (DA). Preliminary test results on benchmark test cases indicated that the new algorithm produced near optimal solutions with reasonable computational cost, which could save time and effort compared to the manual planning process. Key-Words: - University Course Timetabling Problem, Bees Algorithm, Combinatorial Optimization, Metaheuristics Algorithms, Demon Algorithm. 1 Introduction

The University Course Timetabling problem (UCTP) is a famous problem that almost every school and university is facing periodically. In general, the UCTP can be described as the problem of assigning a list of different events to a set of timeslots in an acceptable time with consideration of satisfying some pre-defined constraints. The University Course Timetabling problem is considered as an NP-Hard problem, which is very difficult to solve using conventional search methods[1]. It belongs to the combinatorial optimization problems that may be solved heuristically. There are many complex sub-problems and constraints that need to be solved and satisfied in this problem. There is no simple way to define these constraints, though, as they usually differ from one university to another. However, we can generally categorize them into two types: hard constraints and soft constraints. Hard constraints are those that are mandatory and must to be satisfied in the solution process, while soft constraints should be

maintained as much as possible. Socha in [2] indicates that the UCTP problem is similar to the vertex (graph) coloring problem in placing events in timeslots such that some events cannot be overlapping with each other. Thus, many algorithms were proposed depending on solutions for the graph coloring problem. Paechter in [1] explains how to convert the UCTP into a graph coloring problem, where the nodes represent the events, the colors are the timeslots, and the edges represent the ‘event-clash’ as they are placed between any conflicting nodes. However, the UCTP is often more complex since there is a third factor that must be considered, which is the need to assign rooms to each event [2], [3].

The University Course Timetabling Problem (UCTP) has grabbed the attention of the Metaheuristics Network (MN)1, which is a project sponsored by the Improving Human Potential Program of the European Community. The MN

1 http://www.metaheuristics.net

Advances in Mathematics and Statistical Sciences

ISBN: 978-1-61804-275-0 371

Page 2: A Hybrid Bees/Demon Optimization Algorithm for Solving the University Course ... · 2015-02-06 · University Course Timetabling problem is considered as an NP-Hard problem, which

identified the UCTP as one of the combinatorial optimization problems. Thereafter, the International Timetabling Competition (ITC) started a contest in 2002, in order to encourage researchers to develop efficient search methods that can reach the best optimal or near optimal solution, using one of the metaheuristics algorithms [3].

Afterwards, there were many attempts to find near optimal solutions for UCTP using different metaheuristics algorithms, such as the Ant Colony System, Genetic Algorithms, Tabu search, Simulated Annealing, different variants of evolutionary algorithms, and many others.

In this paper we propose to solve the UCTP using one of the newly proposed metaheuristic techniques, which is the Bees algorithm (BA), proposed by Pham et al. in 2005 [4]. The BA has been successfully used in solving difficult combinatorial optimization problems. It is distinguished by its ability to obtain good solutions by combining random search with neighborhood search. To the best of our knowledge, the BA was not previously tried for solving the UCTP. In particular, it has not been applied to the problem variant considered in the ITC competition.

The reset of the paper is organized as the follows: Section 2 defines the problem, Section 3 presents some of the related work in the literature, the proposed algorithm details are in Section 4, experimental results are presented in Section 5 and Section 6 concludes the paper study.

2 Problem Definition In this paper we propose a Hybrid

Bees/Demon algorithm to solve the University Course Timetabling Problem (UCTP). The UCTP has the same description, irrespective of the university that is dealing with it. It is the problem of assigning a list of events to specific timeslots during the day; taking under consideration teachers that will teach the courses, students that will enrol in the courses, and rooms where the courses will be taught. Paechter originally presented the UCTP in 2001 for the Metaheuristic Network (MN) [5], where he declared that there is no unified benchmark of the UCTP that generalizes the problem parameters and constraints, since most of the UCTPs are presented each for a specific university having its own constraints [1]. Paechter presented a reduction of a typical university timetabling problem by identifying a specific set of hard and soft constraints. This definition is the one adopted in the International Timetabling Competition (ITC) [5], and used as a reference for researchers who want to

develop different algorithms for solving the UCTP. Because of the verities of the UCTP problem, we are considering Paechter’s definition and constraints along with the related work through the literature as a framework for this research.

The UCTP constraints can be divided into two types: hard constraints, which are mandatory and must be satisfied by any solution, and soft constraints, which are preferred to achieve; however, they can be broken with a certain penalty on the solution quality. Furthermore, a feasible solution is defined as the solution that satisfies all of the hard constraints [2], [3].

The newly proposed algorithm in this paper is designed for the same problem that has been defined by Paechter [1], [3]. Also, we are using the same hard and soft constraints defined for that problem. The problem definition and the hard and soft constraints of the problem are as the following: UCTP definition:

• Number of events E associated with a pre-defined number of students to enrol.

• Timeslots T = {𝑇!,  𝑇!, 𝑇!…𝑇!} where n is the maximum number of hours (n=45 hours, 9 working hours per day, 5 days per week).

• Number of classrooms R with specified seating capacity and special features such as: Computers, Projectors, Blackboards,..etc.

Hard constraints:

• H1: No student enrols in two events at the same timeslot.

• H2: Room size assigned to an event is big enough to have all the enrolled students, and the room satisfies all the features needed by the event.

• H3: No more than one event can be assigned to the same timeslot in the same room.

Soft constraints:

• S1: A student has an event in the last timeslot in the day.

• S2: A student has more than two events in a row.

• S3: A student has only one event in a day.

3 Related Work The literature for the University Course

Timetabling problem can be divided into two main

Advances in Mathematics and Statistical Sciences

ISBN: 978-1-61804-275-0 372

Page 3: A Hybrid Bees/Demon Optimization Algorithm for Solving the University Course ... · 2015-02-06 · University Course Timetabling problem is considered as an NP-Hard problem, which

categories: metaheuristic algorithms that have been developed for solving the general framework that was proposed by Paechter, and the other metaheuristic approaches that were intended for solving the UCTP for specific universities, using special problem parameters and constraints [1].

Most of the literature of the first category was developed for the International Timetabling Competition (ITC), which was supervised by the Metaheuristic Network (MN), held back in 2003. The contest’s proposed algorithms and later studies used the same problem definition and instances that have been proposed by Paechter as test data for their new algorithms, for the ease and fairness of comparisons [3]. The problem definition that has been used was the same as previously explained in Section 2, and the problem instances used in experimental testing were generated using a coded generator written by Paechter [3]. Most of the proposed algorithms used the following fitness function, for any solution s:

𝑓 𝑠 = #ℎ𝑐𝑣(𝑠)×𝑐 + #𝑠𝑐𝑣(𝑠) Where hcv is the violated hard constraints, scv is the violated soft constraints, and c is constant that should be larger than the maximum number of scv [3]. Several metaheuristic approaches have been proposed under this category:

Abdullah et al. in [6] adopted an evolutionary algorithm approach. It considered room assignments in the solution process. A penalty was imposed on each soft constrain that the objective function will use to evaluate the quality of the solution. The authors used a hybridization of evolutionary algorithm with a local search algorithm embedded as part of it. The algorithm uses a direct representation and a heuristic to generate a randomized initial population of feasible solutions. The proposed algorithm consists of two sequential steps in the evolutionary process: mutation and local search, where a better solution is always accepted and a worse solution is accepted depending on a certain probability [6]. Lewis & Paechter [1] introduced the genetic grouping concept. The Grouping genetic algorithm is a version of the original Genetic Algorithm (GA). Mostly, it is suitable for problems where we can divide the problem into clusters or groups with no shared specifications between each other. A 2D array (matrix) was used to represent each timetable, where the columns represent the timeslots, rows represent the rooms and the cells will contain the assigned events (courses). To build the initial population, this algorithm starts with an empty timetable with no assigned timeslots. It will then

gradually open timeslots until all events are assigned. The idea here is to allow extra timeslots to be added whenever needed (i.e., the number of timeslots could be more than the allowed number of 45). Two schemes were applied and tested for this idea: 1) opening a timeslot for every group of unassigned events, and 2) opening a timeslot for each unassigned event. The comparison results of the two methods showed that the first one is much better in efficiency, complexity, time and cost. Constructing a timetable in this way insures that all of the events are with no hard constraints violations. However the solutions may not be feasible if it has extra timeslots. Thus, the fitness function attempts to assess the feasibility of the solution by calculating how many events are in the extra timeslots as this represents the timetable distance to feasibility [1]. This algorithm was exceptional, since it used the same problem definition and constraints defined by Paechter in [3], [5] while using different data set instances. In [7], the authors used the same matrix representation proposed in the grouping genetic algorithm of [1]. They introduced a hybridization of genetic algorithm and a Hill Climbing (HC) algorithm.

The ITC contest in 2002 witnessed the first use of the ACO for the timetabling problem [3]; this algorithm assigns events to timeslots one by one from a pre-ordered list. Before each assignment, it calculates the violations that will result from this assignment, taking into consideration the events that are already assigned.

The work in [8] demonstrated the robustness of the Ant Colony System (ACS), and how it can perform better when it is hybridized with other metaheuristic algorithms. The authors used the same objective function and similar Ant Colony System to the one proposed by Socha in [2], along with a new proposed single-solution based metaheuristic algorithm to be used with the ACS. Two hybrid Ant Colony Systems were proposed, the first one is hybridized with a Simulated Annealing algorithm and the second one with a Tabu search algorithm. The ACS in both algorithms was used to construct a full events assignment for the given timeslots in a four-stage process: initialization phase, construction phase, improvement phase, and finally termination phase. In each iteration, an ant constructs a full timetable by assigning the events to timeslots from a pre-ordered events list. Other algorithms in the literature were proposed for solving the UCTP that relates to a specific university with special conditions and

Advances in Mathematics and Statistical Sciences

ISBN: 978-1-61804-275-0 373

Page 4: A Hybrid Bees/Demon Optimization Algorithm for Solving the University Course ... · 2015-02-06 · University Course Timetabling problem is considered as an NP-Hard problem, which

constraints, and used a special dataset that was developed for the use of their new algorithm.

Aldasht et al. [9] applied an Evolutionary Programming (EP) algorithm for the UCTP. The EP adopted here concentrates on the mutation operation from generation to another without having any crossover operations [9]. In [10], they introduced two level of hybridization, where they used Genetic Algorithm (GA) with two local search algorithms simultaneously to enhance the diversification of the GA [10].

In [11], they applied a GA to construct the solution along with a simple array representation of real numbers. The array is divided so that each 5 blocks contain: subject, section, instructor, time, and room. The problem constraints used were constructed specifically for the university for which they applied the proposed solution. The hard constraints used were more detailed, and the soft constraints highlighted the teachers’ preferences, where they have been considered to be satisfied in the solution [11].

4 Proposed Algorithm In this research, a new Hybrid Bees/Demon

algorithm, which we will call HBD, is designed and implemented for the first time on Paetcher’s framework. The Bees algorithm is one of the recent Bio-inspired metaheuristics algorithms. It is inspired from bees behavior in nature [12]. In fact there is more than one algorithm that was proposed depending on the behavior of bees. The one adopted here is an algorithm that is inspired from the way bees find food source or what is called “foraging process” [4]. Von Frisch, was the first scientist to discover that the bee movement -called “waggle dance”- is actually an encoded dance performed when a bee finds a food source. With this waggle dance, a bee informs the entire colony with the food source’s coordinates and position. The duration of the dance represents 1 km per 1 second of the dance circle, with the sun position as the y-axis. According to this information, bees can take the needed decisions, whether to follow this information to the food source or start a new search In principle, patches of flowers with more or better quality food are visited by more bees [12], [13].

The Bees Algorithm starts with an initial population of predefined number of solutions. The promising solutions are selected to search with their neighborhood for better solutions to be carried to the next generation. The number of population in the BA is constant for all the generations starting from

the initial population. The steps of the BA are shown below [4]:

1. Initialize the population with random solutions

2. Evaluate the fitness of the population 3. While (stopping criterion is not met) //Forming new population 4. Select “best-fit” sites for neighbourhood

search 5. Recruit bees for selected sites (more bees

for elite sites) and evaluate the fitness. 6. Select the fittest bee from each patch 7. Assign remaining bees to search

randomly and evaluate their fitness. 8. End while Our algorithm is divided into two main

phases the pre-processing phase and the main algorithm phase. The first phase is to process the given data files to construct some matrixes that will help in constructing the solution and to sort the given events in a conflict list. In the sorted conflict list U, a conflict means the number of conflicting events that a student attending this event has. This conflict list depends on the schedule of each student enrolled in an event. The event with the largest number of conflicts will be the first element on top of the list. The most conflicting events will have the privilege to be assigned first in the table during the solution constructing process. This phase is done once in the beginning of each algorithm run. The second phase- the main Hybrid Bees/Demon phase- is the iterative process that will start searching for proper solutions in the search space.

For the second phase, we need to define the following components of the HBD algorithm: Solution Representation: The Solution representation that has been adopted for the HBD algorithm is based on Lewis & Paechter’s representation in [1]. This representation uses a two dimensions array (Matrix), where rows represent the rooms from Room!…  Room!, and the columns represent the timeslots from T!…T!". Each cell or index in the array represents the assigned pair; it contains the event number assigned to this timeslot in this room. As proven by Lewis & Paechter in [1], this representation gurantees the satisfaction of the third hard constraint (H3), by having only one course in each cell (Room/Timeslot) of the matrix. The other two hard constraints (H1 & H2) are dealt with during the solution construction process. Figure 1 shows an example of how a solution is represented.

Advances in Mathematics and Statistical Sciences

ISBN: 978-1-61804-275-0 374

Page 5: A Hybrid Bees/Demon Optimization Algorithm for Solving the University Course ... · 2015-02-06 · University Course Timetabling problem is considered as an NP-Hard problem, which

Fig.1: Solution Representation Initial Population Generation: To generate the initial population, we use a greedy randomized procedure, which works as the follows. Initially we have an empty timetable of 45 timeslots and n rooms, and all events are placed in a list U ordered according to the difficulty of assignment from the hardest to the easiest, such that the hardest course to assign is the course that has the largest number of conflicts with other event. This step constitutes the greedy component of our algorithm.

In each iteration of the construction process, an event from U will be assigned to a random timeslot in the table and in one of the rooms that satisfy all the features required by the event. When all feasible assignments have been made, the list U will be empty.

During the process, if there are events that cannot be assigned, because they don’t have a feasible assignment in the current timetable, a timeslot “column” will be added to try to assign theses unassigned events (a timeslot for every unassigned event). This step is repeated as long as there are still unassigned events.

When all events have been assigned, we will have a timetable that may or may not be using the required number of timeslots (i.e., it could be using more than 45 timeslots). This timetable will be satisfying all the hard problem constraints, although with possibly a larger number of timeslots than permitted, Figure 2 shows and example of timetable with extra timeslots (columns).

Fig.2: Timetable with Extra Timeslots (columns)

Fitness Function: Two fitness functions are used in our HBD algorithm, one for selecting the best-fit group, and the other during the soft constraints intensification phase to improve the selected solutions. To select the best-fit solutions, we use a fitness function that evaluates the violations of hard

constraints only. Hard constraints are evaluated by counting the number of extra timeslots used; the less this number, the closer the solution is to feasibility. A solution x is considered feasible if f!(x) equals to zero:

𝑓! 𝑥 =  𝛴  #𝑒𝑥𝑡𝑟𝑎  𝑡𝑖𝑚𝑒𝑠𝑙𝑜𝑡𝑠 After selecting the best-fit patches (which

are the solutions that are closer to feasibility), we start the intensification phase. For this phase, we are considering only the soft constraints in the fitness function to try to obtain the best possible solution. All soft constraints have the same weights, so the fitness function for the number of soft constraints violations scv is:

𝑓! 𝑥 =  𝛴  #𝑠𝑐𝑣

By having two different fitness functions for the two phases of our algorithm, we are trying to limit the targeted search areas during the first phase by considering only solutions that are “close” to feasibility without the distraction of the soft constraints. In the second phase, though, we are trying to improve the solution to its fullest potential by considering both hard and soft constraints. Neighbourhood Move: In order to generate a new neighbouring solution during the intensification process, we are using a “Vertical Swap” move, where we swap timeslots for two random events. This will swap only the timeslot, while keeping the rooms for both events intact. This move is intended to give diversity to the solutions by exploring more solutions in the search space in order to reach optimal or near optimal solutions.

Demon Algorithm (DA): The DA is deterministic version of the to Simulated Annealing (SA) algorithm, with a simpler acceptance function [14]. Similar to SA, in the DA better solution are always accepted during the search, while worse solutions may be accepted depending on the demon (credit) value. The demon value is initialized at the beginning of the search with a relatively high value. During the search process, the fitness function of the new solution will be evaluated, and the difference ΔE between the fitness of the new solution and the pervious solution is calculated. If the value of ΔE is less than the demon, the new solution will be accepted and ΔE is credited to the demon. The DA is computationally less expensive than Simulated Annealing and has the property of occasionally accepting worse solution, which gives the opportunity to escape local optima in contrast to

Advances in Mathematics and Statistical Sciences

ISBN: 978-1-61804-275-0 375

Page 6: A Hybrid Bees/Demon Optimization Algorithm for Solving the University Course ... · 2015-02-06 · University Course Timetabling problem is considered as an NP-Hard problem, which

simple local search [14]. The general frame work of the Demon Algorithm is shown in Figure 2.

Fig.3: Demon Algorithm [14]

4.1 The Hybrid Bees/ Demon Algorithm (HBD)

After the pre-processing phase we start the main algorithm steps as follows:

1. Generates an initial population n using the greedy random heuristic algorithm explained above, where in each iteration of the algorithm, an event from the ordered list U is assigned to a random timeslot in the table and in one of the rooms that satisfies all the features required by the event. During this process, events that cannot be assigned, because they don’t have a feasible assignment in the current timetable, are assigned to an added timeslot “column”.

2. Evaluate the hard constrains violations hcv for the initial population n using the first fitness function. Then select the group of best-fit solutions m, where these solutions have the minimum hcv among all solutions.

3. Starts the first phase of the intensification process on the m best-fit using a simple Local Search (LS) algorithm that generates a new neighbouring solution and accepts it only if it is better than the current solution. This local search tries to improve the hcv of the best-fit solutions.

4. After the local search, the best-fit group m is evaluated using the same hcv evaluation function used in step 2. The solutions with minimum hcv are chosen as the elite group e.

5. The Demon algorithm is then implemented to intensify the elite group e to reach feasibility. This is the second phase of the hcv intensification process.

6. The last algorithm used is another local search algorithm for the soft constraints

violations scv for the e group, where the LS algorithm improves the solutions to minimize the scv, using the second fitness function.

7. After the intensification process, the best solution from each of the m patches (including the elite) will be preserved and migrated to the new population, while the remaining individuals (n-m) of the population will be generated using our greedy randomization heuristic, used to generate the initial population, to update the population and maintain the size of the population n.

8. The process will be repeated until the fitness function equals to zero (all constraints are satisfied), or a predefined number of iterations is reached.

The overall workflow of the HBD algorithm is shown in Figure 4.

Fig.4: Hybrid Bees/Demon Algorithm Flowchart

Advances in Mathematics and Statistical Sciences

ISBN: 978-1-61804-275-0 376

Page 7: A Hybrid Bees/Demon Optimization Algorithm for Solving the University Course ... · 2015-02-06 · University Course Timetabling problem is considered as an NP-Hard problem, which

5 Experimental Results The coding for the new proposed algorithm is done using JAVA programming language and the available libraries and was tested on the same data set instances used in the ITC competition available in [3]. The following parameters have been selected after some trials for the HBD algorithm:

• Population size n = 30 • Best fit group m = 20 % of n = 6 • Elite group e = 2 • Demon Credit D = 200 • Number of Bees generations (number of

iterations) = 10

For each test data instance the algorithm was tested 10 times. Each time the best results were recorded depending on the minimum number of hard constraints violation (hcv) and soft constraints violations (scv). Also the processing time was noted together with the number of iterations (BA generations). Table 1 shows the best solutions among all of the 10 runs for each instance file, and the average results of all of the best solutions from each run. In the table, instances from 1-4 are small size, instances 5-9 are medium size, and instance 10 is a large size instance.

Table 1: Best and Average Results for all Test Cases

As Table 1 indicates, for all of the 100 runs

on the test data, the HBD algorithm was able to reach feasibility for all of the solution candidates. Also, the algorithm reached feasible solutions in an acceptable time span, as indicated by the short processing time.

By comparisons with the results in [3], where different metaheuristics have been tested on the same data set, the new HBD algorithm shows better results in terms of having feasible solutions for all runs and for all test instances.

Moreover, unlike most algorithms in the

literature, instances with a large number of students or events do not affect the processing time of the HBD algorithm, since the algorithm’s performance is related directly the number of candidate elements to be intensified or improved. For example, a large type of test data may have only two feasible solutions to intensify, while a medium type of test data may have more than 60 feasible solutions that will be intensified; so the medium type instances will consume more processing time than the large type instances in this case. Figure 5 shows the average processing time in minutes for the different types of test data instances, where it can be seen that the algorithm reaches the best solutions in less than 1.5 minutes, even for medium and large instances

Fig.5: Test Data Instances Processing Time in Minutes

The experiments done so far are preliminary and more testing needs to be done with different parameters, trying to reach near optimal solutions with minimum number of soft constraints violation. 6 Conclusion

We have presented and discussed solving the University Course Timetabling Problem (UCTP) using a new Bees Algorithm hybridized with a Demon Algorithm (DA). We defined in this paper all of the characteristics of the UCTP that we are dealing with: the problem definition, constraints, data set, solution representation, and fitness function.

Although the UCTP is well established in the literature and has been attempted using many traditional metaheuristics, to the best of our knowledge, the Bees Algorithm has not been utilized for solving it before. We proposed a new randomized greedy construction method, a new hybridization of the BA with a Demon Algorithm, and a new adaptation of the fitness function for the different phases of the algorithm.

Advances in Mathematics and Statistical Sciences

ISBN: 978-1-61804-275-0 377

Page 8: A Hybrid Bees/Demon Optimization Algorithm for Solving the University Course ... · 2015-02-06 · University Course Timetabling problem is considered as an NP-Hard problem, which

We have implemented the designed hybrid Bees/Demon algorithm using JAVA and conducted preliminary experimental testing using published benchmark instances. Test results and evaluation analysis showed a very good performance for the new algorithm with respect to the hard constraints violations, as it succeeds in all trials to reach feasible solutions in a very short time span.

As a future work, we would like tune the testing parameters hoping to reach better performance with respect to the violation of soft constraints. Also we would like to get more complex test data instances to conduct additional testing on the algorithm.

References: [1] R. Lewis and B. Paechter, “Finding feasible timetables using group-based operators,” Evol. Comput. IEEE Trans., vol. 11, no. 3, pp. 397–413, 2007. [2] K. Socha, J. Knowles, and M. Sampels, “A max-min ant system for the university course timetabling problem,” in Ant algorithms, Springer, 2002, pp. 1–13. [3] O. Rossi-Doria, M. Sampels, M. Birattari, M. Chiarandini, M. Dorigo, L. M. Gambardella, J. Knowles, M. Manfrin, M. Mastrolilli, and B. Paechter, “A comparison of the performance of different metaheuristics on the timetabling problem,” Pract. Theory Autom. Timetabling IV, pp. 329–351, 2003. [4] D. T. Pham, A. Ghanbarzadeh, E. Koc, S. Otri, S. Rahim, and M. Zaidi, “The bees algorithm-a novel tool for complex optimisation problems,” in Proceedings of the 2nd Virtual International Conference on Intelligent Production Machines and Systems (IPROMS 2006), 2006, pp. 454–459. [5] “International Timetabling Competition.” [Online].Available: http://www.idsia.ch/Files/ttcomp2002/. [6] S. Abdullah, E. K. Burke, and B. McCollum, “A hybrid evolutionary approach to the university course timetabling problem,” in Evolutionary

Computation, 2007. CEC 2007. IEEE Congress on, 2007, pp. 1764–1768. [7] A. H. Karami and M. Hasanzadeh, “University course timetabling using a new hybrid genetic algorithm,” in Computer and Knowledge Engineering (ICCKE), 2012 2nd International eConference on, 2012, pp. 144–149. [8] M. Ayob and G. Jaradat, “Hybrid ant colony systems for course timetabling problems,” in Data Mining and Optimization, 2009. DMO’09. 2nd Conference on, 2009, pp. 120–126. [9] M. Aldasht, M. Alsaheb, S. Adi, and M. A. Qopita, “University course scheduling using evolutionary algorithms,” in Computing in the Global Information Technology, 2009. ICCGI’09. Fourth International Multi-Conference on, 2009, pp. 47–51. [10] S. N. Jat and S. Yang, “A memetic algorithm for the university course timetabling problem,” in Tools with Artificial Intelligence, 2008. ICTAI’08. 20th IEEE International Conference on, 2008, vol. 1, pp. 427–433. [11] O. M. K. Alsmadi, Z. S. Abo-Hammour, D. I. Abu-Al-Nadi, and A. Algsoon, “A novel genetic algorithm technique for solving university course timetabling problems,” in Systems, Signal Processing and their Applications (WOSSPA), 2011 7th International Workshop on, 2011, pp. 195–198. [12] L.-P. Wong, M. Y. H. Low, and C. S. Chong, “A Generic Bee Colony Optimization Framework for Combinatorial Optimization Problems,” in Mathematical/Analytical Modelling and Computer Simulation (AMS), 2010 Fourth Asia International Conference on, 2010, pp. 144–151. [13] D. Karaboga, “An idea based on honey bee swarm for numerical optimization,” Technical report-tr06, Erciyes university, engineering faculty, computer engineering department, 2005. [14] E.-G. Talbi, Metaheuristics: from design to implementation, vol. 74. John Wiley & Sons, 2009.

Advances in Mathematics and Statistical Sciences

ISBN: 978-1-61804-275-0 378