0% found this document useful (0 votes)
50 views7 pages

01 Automated Timetabling System For University Course

The document discusses an automated timetabling system for university courses. It aims to generate timetables more efficiently by developing an algorithm to create conflict-free, optimized schedules automatically in less time for large universities. Constraints from student, faculty, and resource perspectives are considered to achieve this.

Uploaded by

Nivrutti Damdhar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
50 views7 pages

01 Automated Timetabling System For University Course

The document discusses an automated timetabling system for university courses. It aims to generate timetables more efficiently by developing an algorithm to create conflict-free, optimized schedules automatically in less time for large universities. Constraints from student, faculty, and resource perspectives are considered to achieve this.

Uploaded by

Nivrutti Damdhar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 7

2021 International Conference on Emerging Smart Computing and Informatics (ESCI)

AISSMS Institute of Information Technology, Pune, India. Mar 5-7, 2021

Automated Timetabling System for University Course


Mrunmayee V. Rane Vikram M. Apte Vishakha N. Nerkar
Electronics and Telecommunication, Electronics and Telecommunication, Thadomal Shahani Engineering College,
2021 International Conference on Emerging Smart Computing and Informatics (ESCI) | 978-1-7281-8519-4/20/$31.00 ©2021 IEEE | DOI: 10.1109/ESCI50559.2021.9396906

Thadomal Shahani Engineering College, Thadomal Shahani Engineering College, University of Mumbai,
University of Mumbai, University of Mumbai, [email protected]
Maharashtra, India
K.Y. Rajput
Mani Roja Edinburgh Electronics and Telecommunication,
Electronics and Telecommunication, Thadomal Shahani Engineering College,
Thadomal Shahani Engineering College, University of Mumbai
University of Mumbai Maharashtra, India
Maharashtra, India
[email protected]

Abstract— Generating timetable for university with many These constraints can be viewed from student’s, faculty’s and
branches, different years, and multiple batches is a tiresome job. resource’s perspective.
It takes a lot of time and is required for every semester that is of
six months. Thus, a lot of time and manpower is taken up by this x Studentÿÿs point of view ̢ ĀAll my lectures must
process. In some cases, the manual process of creating timetables schedule in different time-slots to avoid clashes!ā“I
is too cumbersome. Creating temporary timetables when a want adequate time gaps between lectures so that my
faculty is on leave is impractical. In this paper, we have created time will not be wasted!’’
an algorithm to generate timetables which can save a lot of time
and pressure on the person doing this job manually. A software- x Facultyÿs point of view ̢ ĀI cannot teach more
based approach is better, as a computer can process data and than one lesson during any time slot! ā “Teaching
churn out results at a much higher rate with greater accuracy. continuously more than 2 hours is exhausting for
Also, it can be coded and optimized as per requirements set by me!’’
different universities and the base code will remain the same.
x Resourceÿs perspective ̢ Two or more lectures,
Keywords— Automated Timetabling, timetable, soft constraints, tutorial or practical cannot occupy the same
hard constraints, optimization, python, TKinter toolbox, CSV Classroom/ laboratory in a common slot.
(comma separated values) file.
The development of the algorithm to generate conflict-free,
I. INTRODUCTION optimized timetable automatically in less time for large
“Timetabling is one of the common scheduling problems, university courses exemplified in this paper by using data of
which can be described as the allocation of resources for tasks Electronics and Telecommunication (EXTC) department of
under predened constraints so that it maximizes the Thadomal Shahani Engineering College (TSEC), University of
possibility of allocation or minimizes the violation of Mumbai.
constraints” [1]. Due to the non-proportionality between a II. LITERATURE REVIEW
rapid increase in the number of students enrolled, university
courses and accessible resources, the complexity of the The problem of class teacher timetabling was first studied
problem has become multifold. “This problem is described as a by Gotlieb in 1962. [3] Since then several algorithms have
Non-Polynomial-hard combinatorial optimization problem been introduced to solve the problem. The earliest solution
having no specific solution” [2]. proposed was based on sequential methods that deal with
timetabling problems as a graph problem. [4] Later, several
Currently, in most of the institutes, this time-consuming researchers applied the Evolutionary Algorithm (EA) and
most complex problem is tackled manually by a single person Genetic Algorithm (GA) approach to find a feasible and
or a group of related people with the only goal of producing optimized solution for highly constrained systems [5]. Meta-
feasible timetables. This may lead to unnecessary wastage of heuristic methods [6], tabu search, cluster methods, simulated
faculties and concerned members precious time due to lack of annealing, scatter search methods, fuzzy logic [7] are some
optimization in the generation of timetable. One cannot deny other approaches [8] used by the intelligent methods [9] such
the human errors which will introduce conflicts such as as Swarm intelligence, [10] Artificial Neural Networks and
overlapping of resources, double booking of time-slots, etc. hybrid approach. However, all of these methods took help of
To generate conflict-free and optimized timetable, adequate foundational algorithms which are highly sensitive, even a
constraints need to be considered. These constraints are often small change results in different group level behaviour. Also,
classified as either hard or soft in nature. Fulfilling just hard the user interface was not involved, which made deployment
constraints will create a feasible solution but satisfying harder.
maximum soft constraint would give an optimized solution.

978-1-7281-8519-4/21/$31.00 ©2021 IEEE 328

Authorized licensed use limited to: California State University Fresno. Downloaded on June 26,2021 at 14:30:50 UTC from IEEE Xplore. Restrictions apply.
Mohamed Abdelfattah and Ahmed Shawish published a from VII semester onwards. These options are the
paper on ‘Automated Academic Schedule Builder for same for different departments.
University’ which “the genetic algorithm to produce an optimal
timetable for each faculty within a university. The proposed x Fixing lecture in fixed timeslot: Time slots and
application produced a nearly optimal timetable”. The fitness rooms of some lectures are fixed. No other class
function designed here is generic in nature to fit in any should be taken at that time.
environment, hence require some manual modification in the x Interdepartmental courses: Students are allowed to
end to satisfy all the requirements. The more complex take some courses which are taught by other
environment will take more time to produce results using departments.
genetic algorithm approach.” [11]
x Practical and tutorial: Every subject has either 2
Another research paper on ‘automated college timetable hours of practical or 1 hour of tutorial every week.
generator’ was published by Adithya R Pai, Ashwitha S,
Raksha Shetty, Prof. Geethalaxmi in 2018. “In this paper, x Contact Hours: Every subject has a fixed number of
researchers have first approached the problem with Genetic contact hours to complete within a week.
Algorithm and further compared it with a Genetic Artificial
x Faculty Load: Each faculty must have a total load of
Immune Network (GAIN). Results showed that GAIN is able
14 – 16 hours in a week.
to reach the optimal feasible solution faster than that of GA”.
[12] Use of genetic algorithms and GAIN makes it The timetabling problem includes different constraints,
computationally expensive. these are classified into hard constraints and soft constraints.
The goal is to satisfy all hard constraints and to minimize the
In IIT Kanpur, Dilip Datta, Kalyanmoy Deb and Carlos M.
violation of the soft constraints.
Fonseca came up with the solution for a very complex system
of their institute. In this work, “The potentiality of IV. PROPOSED SOLUTION
Evolutionary Algorithms (EAs) has been exploited to schedule
the even-semester classes of the institute. Using a multi- The ‘Automated Timetabling System for University
objective EA-based university class timetable optimizer, a Course’ is split into three modules, Input module, Operational
number of trade-off solutions, in terms of multiple objectives, module and Display module.
were obtained very easily”. [13] However, this approach is x Input Module: The fundamental data regarding
restricted to their institution. branch, semester, time slots, subject, faculty,
classroom/laboratories, practical and electives;
III. PROBLEM STATEMENT
required for creating timetables are entered, stored
The general timetable problem can be expressed as, a and updated in this module.
multidimensional [14] assignment problem, in which available
time slots are allocated to lectures and assign them several x Operational Module: The automated timetables for
resources (faculty, students and classrooms/laboratories) such students, faculties and classrooms/laboratories are
that no clashes occur with optimum usage of time. The generated using the input data and proposed
cumbersome timetabling problem is repeated twice a year in algorithm.
every academic institute. The complexity of the timetabling x Display Module: Generated studentÿs, facultyÿs
problem of EXTC department of TSEC institute depends on
and respective classrooms ÿ / laboratories ÿ
the following aspects which are taken into consideration in the
paper: timetables are displayed in this module through the
graphical user interface (GUI).
x Semester pattern: The whole engineering course is
divided into eight semesters (even and odd) of six
months. In the first half of the academic year, students
complete odd semesters, in the next half even
semesters.
x Dividing into batches: Due to a large population of
students and limitations of resources, each batch is
divided into multiple batches according to number
students in a class for practical and tutorial courses.
x Multiple faculties: Single-subject can be taught by
more than one faculty.
Fig. 1. System Architecture.
x Departmental level elective subjects: Courses
according to their interests from V semester onwards. A. Graphical User Interface (GUI)
These options are distinct for different departments. For user-friendly access to the system's input module and
x Institutional level electives: Students are given display module, interactive interfaces are built. These GUIs are
options to choose courses according to their interests created using Tkinter toolbox.

329

Authorized licensed use limited to: California State University Fresno. Downloaded on June 26,2021 at 14:30:50 UTC from IEEE Xplore. Restrictions apply.
B. Access to Modules x Some classes need to be held consecutively. For
x Input Module: The authorized faculty of the example, a four-hour-long practical.
department has access to the input module to D. Input Module
preserve the integrity and authorization of the
information. Access is given after verifying Login The option 'Enter Details' will direct the user to an input
Id and Password. module after validating login ID and password. The following
details are taken from the user and stored into CSV files. The
x Operational Module: Access is given to only the details are entered in the input module as shown in Fig. 2.
software developing team.
x Display Module: Every student and faculty can
access.
C. Constraints
Constraints are the rules that should be followed by an
operational module to create conflict-free, flexible and
optimized timetables.
1) Hard Constraints: These are the set of rules that must
be realized to construct a conflict-free timetable. The
following hard constraints are taken into
consideration.
x Students must not have two lectures/practical at the
same time.
x All batches should be allotted practical if falling
between two lectures.
x There should not be a free slot other than a working
break.
x Faculty should not be given two different classes at Fig. 2. Input Module
the same time.
1) Branch Details: Branch name for which the timetables
x Each faculty has their minimum and maximum limit
of weekly working hours. should be generated is selected.
2) Working Days: Select all the working days of the week.
x Rooms and laboratories should not be double-booked 3) Time-Slots Detail: The start and end time of working
in the same time-slot. slots and break slots in a day are entered.
x Weekly load of every subject should meet the 4) Subject Details: The name of each subject with a
university subject requirement. semester in which it is taught, it's weekly theory, practical and
tutorial load, classroom and laboratory details are provided.
x Each lecture/practical must be assigned to 5) Faculty Details: Faculty name, subject which he/she is
its appropriate room.
going to teach, total theory, practical and tutorial load shared
x Elective lectures in the same time slot must be allotted by him/her is given. These faculty details are entered multiple
to different rooms. times if he/she teaches multiple subjects.
2) Soft Constraints: Conditions those are optional but 6) Elective Details: The name of elective subjects, the
advocated to achieve more enhanced timetable for the semester in which they are taught with their theory load,
faculty and students. practical load, classroom and laboratories details are provided.
The type of elective (departmental level/institutional level) is
x All parameters are customized by the user. entered.
x No two tutorials in one day so students can prepare 7) Special Case Input: Interdepartmental
properly. subjects/practical, institutional level electives, two-hour-long
tutorial, etc. such as exceptional cases or any new changes to
x Faculty should not have consecutive lectures in a day.
the system can be added manually to maintain the flexibility
x Lectures should be scheduled in one building or at of software. The fixed time-slot with faculty and
one location on campus to minimize delays and avoid classroom/lab details are provided in such cases. The special
exhaustion for students and faculties. case inputs are shown in Fig. 3.

330

Authorized licensed use limited to: California State University Fresno. Downloaded on June 26,2021 at 14:30:50 UTC from IEEE Xplore. Restrictions apply.
Fig. 3. Special Case Input

E. Operational Module
1) Initialization: An empty timetable for each faculty,
classroom, laboratory and students are initialized. The inputs
are fetched from the input module in the required format.
2) Special Case Allocation: First, the special case inputs
are allocated as fixed slots according to the flowchart in Fig 4.
3) Removing Extra Slots: To satisfy the hard constraint
there shouldn't be free slot between two working slots except
for breaks', delete the extra available slots. Extra slots are
removed according to the flowchart in Fig. 5.

1. Count the number of extra slots.


Number of extra slots = Total working slots - Total workload
2. Choose random marginal slot. Marginal slot: *Time-
slot which does not have any available working slot
before or after it.
3. Check if it is available. If available proceed to step 4,
else go to step 2.
4. Remove the slot.
5. Mark the adjacent slot of the removed slot as a
marginal slot.
6. Decrement extra slot count.
Fig. 4. Special Case Allocation Flowchart
7. Repeat steps 1 to 4 until the count becomes zero.

331

Authorized licensed use limited to: California State University Fresno. Downloaded on June 26,2021 at 14:30:50 UTC from IEEE Xplore. Restrictions apply.
Fig. 5. Removing of the Extra Slots.

4) Elective Allocation: Electives are allocated


according to the flowchart in Fig. 6.

1. Choose random slot from student timetable.


2. Check for slot’s availability. If available go to step
3 else 1.
3. Select the same type of elective subjects from the
elective list whose workload is non-zero.
4. Check for faculties and classrooms availability
from faculty and classroom timetable. If available
proceed to step 5, else step 1. Fig. 6. Elective Allocation Flowchart

5. Allot the electives subject to the slot and update 5) Practical Allocation: Practical slots are allocated
the respective changes into faculty and class according to the flowchart in Fig. 7.
timetable. 1. Choose random two consecutive time-slots.
6. Decrease the respective subject load and faculty 2. Check for slot’s availability. If available go to step
load by 1 hour. 3 else step 1.
7. Repeat the steps 1 to 6 until all elective theory 3. Choose a batch.
hours become zero.
4. Choose random practical subject whose workload
8. Finish. is non-zero.
5. Check for faculty and lab availability from faculty
and lab timetable. If available proceed to step 6,
else step 4.
6. Repeat step 3-5 for every batch.

332

Authorized licensed use limited to: California State University Fresno. Downloaded on June 26,2021 at 14:30:50 UTC from IEEE Xplore. Restrictions apply.
7. If all batches are allotted to distinct practical 6) Theory Lectures Allocation: Theory lectures are
subjects, go to step 8, else step 1. allocated according to the following algorithm.
8. Allot the practical slot in student, faculty and lab 1. Choose random slot from student timetable.
timetable. 2. Check for time-slot’s availability. If available go to
9. Decrease the respective practical and faculty step 3 else go to step 1.
workload by 2 hours. 3. Select a random subject from theory subject list
10. Repeat the steps 1 to 9 until all the practical whose workload is non-zero.
subjects are allotted. 4. Check for faculty and classrooms availability from
11. Finish. faculty and classroom timetable. If available proceed
to step 5, else step 1.
5. Allot the subject and update the respective changes
into faculty and class timetable.
6. Decrease the respective subject’s theory load and
faculty load by 1 hour.
7. Repeat the steps 1 to 6 until all elective theory hours
become zero.
8. Finish.
7) Tutorial Allocation: Tutorial slots are allocated
according to the following alorithm.
1. Choose a random marginal slot.
2. Check for time-slot’s availability. If available go to
step 3 else go to step 1.
3. Select a random tutorial subject from whose workload
is non-zero.
4. Check for faculty and classrooms availability. If
available proceed to step 5, else step 1.
5. Allot the tutorial to the slot and update the respective
changes into faculty and class timetable.
6. Decrease the respective subject’s tutorial load and
faculty load by 1 hour.
7. Repeat the steps 1 to 6 until all elective theory hours
become zero.
8. Finish.
8) Operational Module Flowchart: Operational Module
works according to the following algorithm.
1. After fetching the required details from the input
module. If special case input is not empty allot them
first. If not, go to step 2.
2. Remove all the extra slots.
3. If there are elective subjects in the curriculum, allot
them next. If not, go to step 4.
4. If there are practical subjects in curriculum, allot them
in 2-hours slots for every batch. If not, go to step
5. Next, allot all the theory subjects.
6. If there are tutorials in the curriculum, allot them next.
7. Repeat the whole algorithm until all subjects are
allotted.

333

Authorized licensed use limited to: California State University Fresno. Downloaded on June 26,2021 at 14:30:50 UTC from IEEE Xplore. Restrictions apply.
V. RESULTS This research work can be extended to be utilized by
The proposed algorithm was programmed using python 3, different colleges/universities and even places where the same
uses Tkinter as a Graphic User Interface (GUI) and the type of timetabling is required. The program can be hooked up
algorithm was tested for timetable generation of Electronics with college’s/university’s mobile app and/or website, thus
and Telecommunication department. The GUI is user friendly making the data more accessible and notifying the concerned
and simplified; it contains a help section to guide you through students/professors, if there is a change in a timetable. Letting
the application. The algorithm after implementation leads to the students and faculties control some soft constraints of
the generation of a timetable for a class of students (Fig 8), timetable, like duration of a lecture, or the starting time for the
faculties (Fig 9), classrooms and laboratories. It also addresses day. The most interesting future direction in the development
all hard constraints such as different laboratories for all the of this algorithm lies in an automatic adaption of timetable if
batches and availability of faculties. any lecture gets cancelled or any faculty is on long leave.

The soft constraints of the algorithm are effectively REFERENCES


handled. Our algorithm was capable of finding a feasible [1] N. D. Thanh, “Solving timetabling problem using genetic and heuristics
timetable for the second year, third year, and final year with algorithms,” J. Sched., vol. 9, no. 5, pp. 403–432, 2006.
respective faculty and classroom timetables. The average [2] S. Even, A. Itai, and A. Shamir, “On the complexity of timetable and
iterations taken to generate all timetables were 1320. The Intel multi commodity flow problems,” SIAMJ.Comput., vol.5,no.4,pp.691–
i5- 6200U processor was used; maximum process utilization 703, 1976.
was 30%. The average time was 17 sec and RMS time was [3] Gotlieb, C.C., The construction of class-teacher timetables. In
22sec, for 100 runs. Proceedings of IFIP Congress, North-Holland Pub. Co., Amsterdam,
1962, 73-77. DOI: https://doi.org/10.1016/0305-0548(74)90058-6
[4] T. A. Redl, "On Using Graph Coloring to Create University Timetables
with Essential and Preferential Conditions," Proceedings of the 3rd
Inter. Conf. on Computational and Information Sciences, University of
Houston-Downtown, pp 162- 167, 2006.
[5] Limkar S., Khalwadekar A., Tekale A., Mantri M., Chaudhari Y. (2015)
Genetic Algorithm: Paradigm Shift over a Traditional Approach of
Fig. 7. Student Timetable Timetable Scheduling. In: Satapathy S., Biswal B., Udgata S., Mandal J.
(eds) Proceedings of the 3rd International Conference on Frontiers of
Intelligent Computing: Theory and Applications (FICTA) 2014.
DOI:https://doi.org/10.1007/978-3-319-11933-5_87
[6] Ricardo santiago-mozos , sancho salcedo-sanz_ ,mario deprado-
cumplido and carlos bouso~no-calz_on , a two-phase heuristic
evolutionary algorithm for personalizing course timetables: a case study
in a Spanish university (2005)
Fig. 8. Faculty Timetable [7] [Arindam Chaudhuri and Kajal De “Fuzzy Genetic Heuristic for
University Course Timetable Problem” Int. J. Advance. Soft Comput.
Appl., Vol. 2, No. 1, March 2010 ISSN 2074-8523; Copyright © ICSRS
VI. CONCLUSION AND FUTURE SCOPE Publication, 2010
This paper addresses a solution for timetabling problems of [8] S. Abdullah, E. K. Burke and B. McCollum, “A Hybrid Evolutionary
complex environments having electives, tutorials, multiple Approach to the University Course Timetabling Problem”, Proceedings
of the IEEE Congress Evolutionary Computation, Singapore, (2007).
student batches, practical subjects, interdepartmental courses.
The solution considers a wide range of constraints divided into [9] Anmar abuhamdah, masri ayob, graham kendall, population based local
search for university course timetabling problems, applied intelligence
soft and hard, to generate faculty, classroom/laboratory and (2014)
student timetables. The implementation of the ‘Automated [10] Humza turabeih, salwani abdullah, barry mccollum and pual mcmullan,
Timetabling System’ in our institute, resulted in feasible fish swarm intelligent algorithm for course timetabling problem,
timetables, which are much more optimized and accurate than springer- verlag berlin Heidelberg Rskt 2010, pp. 588-595
if they were created manually. The complexity of the proposed [11] Mohamed Abdelfattah and Ahmed Shawish “Automated Academic
algorithm is n3. Given the generality of the algorithm, it can be Schedule Builder for University’s Faculties” Proceedings of the World
further adapted to suit as per the requirements of different Congress on Engineering 2016 Vol I WCE 2016, June 29 - July 1, 2016,
London, U.K.
institutes and universities.
[12] Adithya R Pai, Ashwitha S, Raksha Shetty, Prof. Geethalaxmi
Moreover, the proposed algorithm saves hours of “Automated college timetable generator” International Journal of
administrator's precious time which can be utilized in other Scientific & Engineering Research Volume 9, Issue 4, April-2018
fruitful things. The program based on this algorithm has been [13] Dilip Datta, Kalyanmoy Deb, Carlos M. Fonseca “Solving Class
proved effective for replacing an old-fashioned, time- Timetabling Problem of IIT Kanpur using Multi-Objective
consuming timetabling system with an enhanced, flexible and Evolutionary Algorithm”
more reliable automated system. Also, the graphical user [14] M. W. Carter and G. Laporte, “Recent developments in practical course
interfaces designed for input and display modules are very timetabling,” inProc. 2nd Int. Conf. Pract. Theory Automated
Timetabling, (Lecture Notes in Computer Science).
convenient to save, add or delete any input data or created DOI:https://doi.org/10.1007/BFb005
timetables.

334

Authorized licensed use limited to: California State University Fresno. Downloaded on June 26,2021 at 14:30:50 UTC from IEEE Xplore. Restrictions apply.

You might also like