Professional Documents
Culture Documents
SolvinguniversitycoursetimetablingproblemsusingFETsoftware
SolvinguniversitycoursetimetablingproblemsusingFETsoftware
SolvinguniversitycoursetimetablingproblemsusingFETsoftware
net/publication/328044145
CITATION READS
1 2,648
5 authors, including:
All content following this page was uploaded by Farah Adibah Adnan on 14 November 2019.
Abstract. In recent years, university course timetabling at University of Malaysia Perlis (UniMAP) given by Bahagian
Pengurusan Akademik (BPA) applied based on their experience with a little guidance from Microsoft Excel to generate the
timetable. The most challenges is not about the generating a timetable that works, but generating one that is fairly, practical
and good as possible. In general, the university course timetabling problem is an optimization problem in which a set of
events has to be scheduled in timeslots, located in suitable rooms under specific constraints. Free Educational Timetabling
(FET) is FET is open source free software for automatically scheduling the timetable of a school, high-school or university.
It uses a fast and efficient timetabling algorithm, developed with C language in 2002. In this paper, the process of adaptation
in presented to produce university course timetable, which has been practically used starting from Semester II, 2012/2013.
Due to the complexity and constraints of generating the course timetable, an experimental methodology for choosing proper
parameter setting. In particularly, the procedures allow an automatic and semi-automatic configuration of the software with a
good save in time. The successful example shows that the implementation of FET software can provide a new alternative on
solving the university course timetable problems through an experimental methodology leads to high performing algorithms
and viable solutions for hard combinatorial optimization problems in comparison to previous practices.
INTRODUCTION
Timetabling problems are important and challenging problems frequently encountered in timetabling of nurse
rostering, public transport systems, manufacturing industry and educational timetabling [1]. Generally, educational
timetabling subdivides into school timetabling, examination timetabling and course timetabling [2, 3]. A university
course timetabling refers to the allocation of courses offered to fixed timeslots and rooms with respect to the number
of lecturers available at that time. University course timetabling problem (UCTP) is one of the typical timetabling
problems and has been proven to be NP-hard [4]. Usually, course timetabling take place at the early semester (or at
semester break) before students register at the university. Course timetabling must be settled first before university
receives the enormous amount of students. Each course or subject offered has a limited of space (room capacity
constraint). The timetable produced must consider room, time and lecturer constraints.
Proceeding of the International Conference on Mathematics, Engineering and Industrial Applications 2018 (ICoMEIA 2018)
AIP Conf. Proc. 2013, 020052-1–020052-7; https://doi.org/10.1063/1.5054251
Published by AIP Publishing. 978-0-7354-1729-8/$30.00
020052-1
FIGURE 1. Diagram of university course timetabling problem [5].
of 505 subjects that need to be assigned to 317 classrooms/laboratories available. The timetable produced including
classrooms at Pauh Putra, UniMAPs main campus and also at UniMAP’s branch which at Kangar and Padang Besar.
020052-2
violation. The timetable coordinator or the scheduler must take into account constraints that may arise from teachers,
students, classrooms, laboratories and courses in scheduling courses timetable. In the following, a list of hard and soft
constraints presented which are taken from literature [6, 7, 8]
RELATED WORKS
Numerous method had been reported in the literature on course timetabling. Based on survey by Babaei, Karim-
pour, and Hadidi [5], the methods are Operational Research (including graph coloring theory, integer programming/-
linear programming, constraint-based technique), Metaheuristics (evolutionary and genetic algorithm, ant colony al-
gorithm, memetic algorithm, harmony search algorithm, partial swarm optimization, artificial bee colony optimiza-
tion, tabu search, simulated annealing, local search, variable neighborhood search), Intelligent Novel, and Cooperative
Search method. Even though these methods have their advantages and disadvantages, the objective of this study is to
find an automated system to solve the course timetabling problem. The method presented in this paper is Free Educa-
tional Timetable (FET) software which applies a heuristic technique, specifically using recursive swapping. It is fast
and able to solve difficult timetables [9].
There is much software developed in solving course timetabling problems such as Mimosa, CELCAT timetable
and Free Educational Timetable (FET). The Mimosa and CELCAT timetable is a commercial software and the price
is not cheap. FET is an open source free software for automatically scheduling the timetable of a school, high- school
or university. It uses a fast and efficient timetabling algorithm, developed with C language in 2002 [10].
A successful implementation of the FET software in course and examination timetabling is presented by Mansor,
Arbain, and Hassan [11]. They show that using FET software which applied it starting from the year 2009 and for
two years time period, with scheduling about more than 300 courses and 10 000 students, no problems reported and
the timetable produced are clashing free for lecturers, students, and classrooms. Also a study by Fahmy et al. [12]
indicate using the FET software at TATI University College, the timetable produced is more efficient in term of the
allocation of time and venue, and the distribution of hours among lecturers and student groups is more balance.
In this study, FET software is selected to be used due to its suitability with UniMAPs dataset. The process of
adaptation is presented to produce university course timetable, which has been practically used starting from Semester
II, 2012/2013. Due to the complexity and constraints of generating the course timetable, an experimental methodology
for choosing proper parameter setting.
Particularly, the procedures allow an automatic and semi-automatic configuration of the software with a good
save in time. The successful example shows that the implementation of FET software can provide a new alternative
on solving the university course timetable problems through an experimental methodology leads to high performing
algorithms and viable solutions for hard combinatorial optimization problems in comparison to previous practices.
Using the FET software, it can utilize the university resources such as minimizing the number of classrooms used
and also can solve the complex problems when the subject offered by university increase from time to time.
FET FRAMEWORK
This section presents the generic framework for the implementation of FET. According to Fahmy et al. [12], there
are four phases involved in FET implementation such as data collection, data input, activity creation and timetable
Generation
• Data Collection: In the first phase, necessarydata for the preparation of academic timetable are obtained from
various entities such as the University and Faculty. These information include venues (locations of lectures/
laboratories/ tutorial/ other academic session will take place including lecture halls, labs, workshops, etc); sub-
jects(list of subjects offered in a given semester); and grouping (list of students grouped into a particular category
such as academic programs, intake, etc).
• Data Input: The next phase, data is stored into the FET system/ database. Additional information required in
this process includes details of lecturer/ instructor; academic hours per day; and academic days per week.
• Activity Creation: Next, a set of activities are created amongst different student groups/ lecturers and venues.
Rules are also created in this phase for example a particular venue for a session or a blackout period for lecturers/
student groups.
020052-3
• Timetable Generation: Finally, the timetable is generated and locked. The generation process is successful if
there is no error reported by FET. If error is detected, execution is halted and the activities and/ or data must be
revised. Typical errors include too few hours/ days allocated for an activity, demand for a particular venue, or
too little hours allocated for a group of lecturers/ students.
1. The most difficult activities are sorted first. This is not a critical step, but this may speed up the algorithm by 10
folds or even more.
2. Try to place each activity Ai in a permitted time slot, adhering to the above order, one at a time.
(a) Find for an available slot T j for Ai , whereby this activity can be marched with the related barrier(s).
(b) Choose a random slot if more slots are available. However, recursive swapping is performed if no slot is
available.
3. Consider the consequence if Ai is placed onto T j for each time slot. A list of activities can be found upon
disagreement with the move (for example, the recurring teacher and students for several slots). The list of
contradicting activities is retained for every time slot, T j .
4. Select a time slot, T j , which has the least number of contradicting events. For example, a slot has 3 activities:
A p , Aq , and Ar .
5. Ai is placed at T j and this makes A p , Aq , and Ar unallocated.
6. In a recursive manner, try placing A p , Aq , and Ar (if the level of recursion is not too huge, say 14, and if the total
number of recursive calls counted since step 2 on Ai is not too huge, say 2n ), as performed in step 2.
7. Upon successful placement of A p , Aq , and Ar , return with success, or else, other time slots may be attempted by
revisiting step 4 to select the next time slot that appears to be the best.
8. Upon unsuccessful attempts for all time slots, return without success.
9. When it is unsuccessful to place Ai at level 0, revisit steps 4 and 5, but without recursion. As of now, there are
3 - 1 = 2 activities available for placement. Hence, revisit step 2 (cycling is avoided in this procedure).
IMPLEMENTATION
The data are extracted from the Academic Management Information System (AMIS ver2) and the information
are from the pre-registration process. The grouping is based on the the intake and program. The purpose of grouping
students based is to make sure there is no clashing among the registered student in any offered course. Figure 3 to
Figure 6 shows the view of the course timetable based on program, timetable for each lecturer, timetable for a course
and the room usage for classes.
020052-4
FIGURE 3. Example timetable by programme
020052-5
FIGURE 6. Example timetable by room
CONCLUSION
The overall goal of the work presented in this study is the FET software applied by the UniMAP to schedule
the university course timetable. It can utilize the university resources such as minimizing the number of classrooms
used and also can solve the complex problems when the subject offered by university increase from time to time. As
a conclusion, FET has all the appropriate facilities for providing valuable help to the decision maker to implement
a good course and examination timetable. Interactive tools are available to allow the user to modify solutions. This
decision support displays all the appropriate information that helps the user to evaluate the quality of the schedule. The
most important things are the student clashing problem can easily solved and it provides satisfaction to the student and
university. The FET system is very flexible to modify or make some changes. The time required to generate timetable
is very short and minimum. Generally, FET can maximize the use of the classroom and thus saving resources, energy
and the cost of university.
ACKNOWLEDGMENTS
The authors would like to acknowledge the support from the Research Acculturation Grant Scheme (RAGS) under
a grant number of RAGS/1/2015/ICT02/UNIMAP/03/1 from the Ministry of Education Malaysia.
REFERENCES
1. M.-X. Zhang, B. Zhang, and N. Qian, Natural Computing 16, 61–74 (2017).
2. A. Schaerf, Artificial intelligence review 13, 87–127 (1999).
3. J. Y. Leung, Handbook of scheduling: algorithms, models, and performance analysis (CRC Press, 2004).
4. M. R. Garey and D. S. Johnson, Computers and intractability, Vol. 29 (WH Freeman New York, 2002).
5. H. Babaei, J. Karimpour, and A. Hadidi, Computers & Industrial Engineering 86, 43–59 (2015).
6. H. Asmuni, “Fuzzy methodologies for automated university timetabling solution construction and evaluation,”
Ph.D. thesis, University of Nottingham 2008.
7. M.-R. Feizi-Derakhshi, H. Babaei, and J. Heidarzadeh, “A survey of approaches for university course
timetabling problem,” in Proceedings of 8th International Symposium on Intelligent and Manufacturing Sys-
tems, Sakarya University Department of Industrial Engineering, Adrasan, Antalya, Turkey (2012), pp. 307–
321.
020052-6
8. J. Henry Obit, “Developing novel meta-heuristic, hyper-heuristic and cooperative search for course
timetabling problems,” Ph.D. thesis, University of Nottingham 2010.
9. M. Marte, “Models and algorithms for school timetabling,” Ph.D. thesis, lmu 2002.
10. L. Lalescu and V. Dirr, Fet free timetabling software, 2017.
11. Z. Mansor, J. Arbain, and M. A. A. Hassan, “Implementation of fet application in generating a university
course and examination timetabling,” in Second International Conference on Onformation Technology and
Business Application. Anais (2013).
12. S. Fahmy, I. Ruhaida, N. Akhyari, and I. Nazri, Australian Journal of Basic and Applied Sciences Aust. J.
Basic & Appl. Sci 8, 86–91 (2014).
020052-7
View publication stats