TEMJournalFebruary2019 211 2211
TEMJournalFebruary2019 211 2211
net/publication/331995150
CITATIONS READS
15 1,949
4 authors, including:
All content following this page was uploaded by Belkacem Athamena on 21 December 2020.
Abstract – In the university, course scheduling and Keywords – Multi-agents, Scheduling problem,
preparation for each semester can be defined as the Course timetable.
process of determining what courses to offer, the
number of sections needed for each course, assigning of
1. Introduction
a faculty member to teach each section, and allocating
a timeslot and a classroom for each section to avoid Nowadays, creating a functional schedule is
clashes. The output of this activity (which is a exceptionally important. Scheduling is a commitment
timetable) affects every faculty member and student in
to enabling a reliable execution of planned tasks for
various departments. This process is essentially broken
down into three main stages: determining the courses
an individual person and entire industrial systems as
to be offered as well as their section numbers, assigning well. Timetabling is a really hard task that belongs to
faculty members to different sections, and scheduling the larger area of scheduling and can be defined as
of the sections into timeslots and classrooms. daily schedules of railroad transport, weekly periodic
This paper investigates each of these steps and schedules of flights considering multiple airports,
congregates them in a scheduling and Decision Support best course schedules in academic institutions, etc. In
System (DSS). The DSS is used to make easy the these problems type the timeslot, representing the
process of course offerings by taking into consideration interval needed to perform tasks, is known in
the students’ suggestions because the department advance. Therefore, reducing the schedule length is
resources are limited. The faculty member preferences
not generally the main goal and however other
are also considered in the assignment of sections for the
sake of lessening disappointments in the department.
criteria are proposed to estimate the schedule quality.
Also, the couples (faculty, section) are planned into For instance, in case of academic institutions, the
university timeslots based on faculty member timetable schedule should satisfy the following
preferences. Our proposed system considers student constraints: reduction of working day length,
suggestions and preferences and the time availability of reduction of the whole number for students and
a faculty member since it minimizes disappointments faculty members, maximizing the satisfaction of
and avoids conflicts between faculty members and preferences for both students and faculty members in
classrooms and courses. term of time and classroom location, etc.
Academic timetabling is a special case of
DOI: 10.18421/TEM81-30
timetabling and belongs to NP-complete problems
https://dx.doi.org/10.18421/TEM81-30 [1]. It involves scheduling a group of resources over
restricted timeslots under certain constraints called
Corresponding author: Belkacem Athamena, hard and soft constraints. The staff, students, courses,
Business Administration Department, Al Ain University of classrooms, and timeslots represent the resources.
Science and Technology, Al Ain, Abu Dhabi, UAE According to Burke et al. [2], this problem is
Email: athamena@gmail.com formalized regarding four finite sets: resources,
timeslots, constraints, and meetings. The main
Received: 22 January 2019.
difficulty is how to assign resources and timeslots to
Accepted: 21 February 2019.
the meetings in order to overdue as many constraints
Published: 27 February 2019.
as possible.
© 2019 Zina Houhamdi et al; published by The solution to timetable scheduling issues is
UIKTEN. This work is licensed under the Creative generally time-consuming, iterative and has clashed
Commons Attribution-NonCommercial-NoDerivs 3.0 preferences (this makes the problem of searching an
License. optimal solution harder). To arrive at the solution to
this problem, it is essential to find a compromise
The article is published with Open Access
between all the preferences, generally conflicting.
at www.temjournal.com
percentage of soft constraint satisfaction is used Table 2: Timetabling Problems and Solutions
to differentiate between valid solutions (i.e., the Problems Proposed Solutions
optimal solution is a valid solution which The increase of students
Relevant human coordination
number
satisfies more soft constraints) [9].
Fuzzy algorithms, Meta-Heuristics,
Event series in one module
Table 1. shows a list of hard and soft constraints Events classification
Optimization techniques and high-
which are related to university course timetabling Optimization goal
level heuristics
problems [5], [7]. Timetabling of dependent
No current solution
events
Table 1: Hard and Soft Constraints to University Course
Timetabling Problems McCollum [10] singles out a list of relevant
Hard Constraints Soft Constraints
problems related to university course timetabling
The timetable is valid for a The instructor may prefer some which need more investigation:
semester timeslots
The classrooms number is fixed
The instructor may prefer a specific • Production of timetables within an institution
working day.
Classrooms have limited seats Avoid gap between the lectures
that is equitable and fair to all concerned
Timeslot are defined by the Avoid to schedule course in the last members.
university timeslot • The balance between the section sizes when
A classroom is assigned to just Course may need to be scheduled
one lecture at a time before/after another course
proposing maximum choices to the students.
Spread the load smoothly over the • Generation of optimal solution that keeps a
Limited resources during a week balanced satisfaction of all the stakeholders
specific timeslot The instructor may prefer a specific
classroom (students’ choice, Instructor preferences, and
Some students may have an off-day classroom usage).
Students and instructors can be in during the week
one classroom at a specific time Instructors may prefer to teach
more than one lecture per day 4. Multi-Agent System for Timetable Generation
McCollum [10] has confirmed the existence of a This section starts by giving a brief description of
gap between the practical and theoretical aspects of the university structure. Then it presents the
university course timetabling. He explains that the suggested architecture of the course scheduling by
majority of investigations in this domain focus on the using a MAS. First, we describe our proposed system
evaluation of proposed approaches and methods, and architecture; then we define the protocol to manage
the computerized solution deals only with databases the communication between agents and finally we
and disregards the human factors. Moreover, Carter describe in depth the generation of the timetable by a
has noticed that limited suggested methods for collaboration of three agents.
timetabling were implemented and used in real
institutions [3]. The reason is that there were a few 4.1. University Organization
investigations of real-world issues and insufficient
Since our goal is to mimic the real-world
understanding of human approaches. Moreover,
timetabling process; this subsection presents a
institutions have different sets of constraints during
university structure. The university defines the
timetable generation, thus, determining a general
hierarchical organization as follows:
relevant solution to this complicated problem, is
really hard. • University Level: a university is composed of a
Accordingly, the previous studies can be set of colleges.
considered as an initial attempt to solve the • College Level: a college is composed of a set of
timetabling problem by providing strong search departments.
methods. Additional effort is required to investigate • Department Level: department offers one or
the problem formulation and modeling [11]. more programs.
Computerized timetabling frequently strive to deal • Program Level: a program has a study plan
with, not just, increasing student numbers, but also which is composed of a set of courses.
with a set of events that should be incorporated in • Course Level: a course is composed of one or
one component (such as lectures, tutorials, and more sections. It is taught by an instructor who is
practical and/or laboratory classes). Furthermore, specialized in the course. Usually, the course and
getting the optimal solution is given up in order to the instructor belong to the same department.
obtain a valid solution. Table 2. shows a set of the
• A Shared Course is a course that is common to
problems of timetabling and the proposed solutions.
various programs.
The course timetabling involves a set of resources: a) System Architecture: Figure 1. depicts the
students, instructors, classrooms, courses, and suggested system architecture.
timeslots. Every resource type belongs to one
particular level of a university’s structure.
• Student: student belongs to one particular
NA MPA
program of the specific department.
• Instructor: instructor is a faculty member of one
University
particular department. Website Database
• Classroom: classroom belongs to the college,
which manages the classrooms directly. A Student Email
classroom is represented by its name and its Account DGA
maximum seat number.
Instructor
• Course: a course belongs to one program of a Email
specific department, which takes in charge the
scheduling of the course by assigning an
instructor and setting up the course timetable. Instructor Student
The same scenario for the shared courses, but the Figure 1. System Architecture
other departments must avoid conflicts with the
shared timeslots during the organization of their The MAS contains three agents and a database:
owned timetables. • Data Gathering Agent (DGA): This agent
• Timeslot: usually, each working day is split into a gathers data from instructors (including Head of
set of timeslots. A period is defined as a couple Departments (HoD)) and saves it in a database.
of (day, timeslot). In fact, the context changes when the DGA stores
user data in the database. The DGA
There are three different agents in MATTS. In communicates and collaborates with MPA and
literature, we found diverse existing systems sometimes may save data in a database on the
designed to develop a timetable. However, some of MPA request. Also, the DGA can call MPA
them are desktop systems and some lack intelligence (upon an instructor or HoD request) to execute a
approaches, while some are not implemented. Fang particular task such as report generation and
[12] proposes a UML based course scheduling information announcement. For instance,
system that has many limitations such are: it is not an generation of a report about who is teaching the
intelligent system, and it is a desktop system. These same course. DGA then forwards the request to
same limitations are found in the system presented by MPA which collects needed data from the
Takegami [13]. This system uses spread-sheets and database; puts it in a report shape and at the end
was developed for commercial organizations. Oprea call NA to send the report to the HoD.
[14] suggests a MAS system for university timetable • Notification Agent (NA): This agent sends emails
scheduling by presenting its framework and showing (e.g., notification, announcement, alert, etc.) to
coordination protocol through several diagrams instructors, students, and HoD and publishes
without validating his proposed system. We propose information on the website. He performs this job
Multi-Agent Time Table System (MATTS) which is on the request of MPA.
a web-based system, to assist managerial people such • Managing and Processing Agent (MPA): This
as Head of Department (HoD) or directors of agent represents the heart of the system. It
academic college in working out an infallible executes all important activities of the system.
timetable with no face-to-face meeting with MPA supervises its context continuously and
concerned people. MATTS overcomes all previously reacts immediately by taking suitable action if
mentioned problems. Particularly, MATTS is the context changes. Context changes in case the
intelligent, and it is a web-based system. database are modified by DGA. Thus, MPA
reacts in two different situations: the first
4.2. System Description situation is related to the reception of a message
Software architecture shows the relationship directly from an instructor or HoD requesting a
between system components. The main objective of specific task execution. The second situation
the software architecture is reduction of the software relates to the database (context) modification.
development cost and establishment of an agreement • Database: Actually, this database represents the
between the developer and the system customer [15]. agents’ context. It contains the data essential to
First, this section presents system architecture and MPA in order to execute different tasks. Any
then it gives the details of three-tier architecture. modification in this database forces MPA to react
by performing a pertinent action. The database KQML to reply that Dr. Zina wants to teach
contains data grouped into different tables with “Artificial Intelligence” (see Figure 4.).
appropriate relationships. Figure 2. shows the Table 3: KQML dialogue between DGA and MPA
Entity Relationship Diagram of the database. (ask-one (tell
MPA observes this database around the clock. :sender DGA :sender MPA
:content “course-owner (Artificial :content “course-owner (Artificial
Intelligence, Course instructor)” Intelligence, Dr. Zina)”
Major Credited Course
Name Hours
Course Id
Name
Prerequisite
Instructor
:receiver MPA :receiver DGA
Instructor Id
Name
:reply_with instructor-query ;in_reply_to instructor-query
Major Id
N M
:language Prolog :language Prolog
Major Course Seniority
Study Plan Taught Instructor :ontology MATTS) :ontology MATTS)
1
Semester Load
study identifying
Year
Teaches Ask-one
Student Id M DGA MPA
N M
Enroll Section No
Student Student Section tell
Name
Figure 4. Communication between DGA and MPA
M
1 At
1
Timeslot
Slot period 4.3. Timetable Generation Process
Room
Day Id
The timetable is generated by executing the
Slot Id
NA
courses in the list L where the weight of the course is
equal or more than the required number of students
processing layer
Data management Application
Database course.
If the instructor number is sufficient to cover all
Figure 3. Three Tier Architecture courses in the list 𝐿(𝑀𝑎𝑥 ≥ 𝑙𝑒𝑛𝑔𝑡ℎ(𝐿)) then the
final list of offered courses is equal to all the courses
c) Agents communication: Table 3. shows KQML in the list of possible courses. Otherwise 𝑀𝑎𝑥 <
communication between MPA and DGA agents. 𝑙𝑒𝑛𝑔𝑡ℎ(𝐿) agent MPA will reduce the list L to
This communication is established when DGA become equal to Max by asking agent NA to send
performs a task for HoD. In case the HoD asks emails for students to provide their suggestions. Each
the DGA to inform the faculty members who student can select courses from L that he is eligible to
want to teach a specific subject for example register. After the period specified for students to
“Artificial Intelligence”. DGA uses ask-one provide feedback is over, the system will determine
KQML to send a query to MPA which uses tell the final list of offered courses 𝐿′ by assigning a high
weight for courses that have been chosen by students. preferred time and day as much as possible the MPA
If students did not provide sufficient feedback, the will search for available classrooms in that timeslot
system will go back to the previous list L and select and day and assign that classroom for one of the
the remaining courses to fulfil the load of instructors. clashed courses. In case there is no available
Step 2: Assignment of courses for the instructors. classroom, it will try to change the timeslot in a way
Once the list of lectures is developed, agent MPA that doesn’t create more clashes. If there isn’t any
will ask agent NA to send emails to instructors to available timeslot, the system will change the days of
provide their preferences about the course(s), that course.
classrooms and timeslots. Then DGA saves the Once all clashes are resolved the timetable is ready,
instructor's preferences data in the database. Agent and MPA will ask the NA to publish it on the
DGA will notify highest seniority instructors first to website. Figure 5. shows the process of timetable
provide their preferences during a specific period of development which involves the cooperation and
time; once they have provided their feedback or their collaboration of three agents DGA, MPA, and NA.
time is done it will notify the lower seniority The system sequence diagram of MATTS is shown
instructors and so on. Preferences are the lectures in Figure 5.
(representing a section of an offered course), its Figure 6. shows the MATTS use case diagram.
timeslot, day and classroom. From the offered
courses, each instructor will be able to select only the 5. Results and Discussions
courses from his major and courses he taught before
and not preferred by a higher seniority instructor. Our system provides an interface for instructors to
Instructors are not allowed to choose the same enter their preferences about the courses, day,
timeslots and day for two different lectures. timeslot, and classroom. This interface, shown in
Instructors are obligated to select a specific number Figure 7., provides a list of offered courses which are
of lectures to complete their load. related to the instructor’s major or have been already
At each seniority level the MPA will allocate taught by the instructor in previous semesters and not
courses chosen by instructors from that seniority, and selected by instructors with high seniority. This list is
in case two instructors have chosen the same course labeled as ‘course list’. An Instructor chooses a
the system will allocate it for the instructor who has course which he prefers to teach and moves to the list
taught it a number of times, and in case both labeled as ‘preferred courses’ by clicking the ‘select’
instructors have taught it the same number of times button. An instructor can select between three and
the system will assign it for the instructor who has five courses in a semester according to his load.
joined the university first. Once a course is assigned ‘unselect’ button is used to move back the selected
to an instructor, the instructor will enter the timeslot, course from the ‘preferred course’ list to the list
day and classroom that he prefers for that lecture. ‘course list’. ‘show’ button below the ‘course list’ is
Instructors whose preferred courses have been used to display information about a course which has
assigned for another instructor will have the already been selected by other instructors. The
preferred time, day and classroom preferred for that information includes classroom, day, time and
course saved by the DGA and assigned for another instructor information. When an instructor decides to
course. select the ‘show’ button, he will be asked to select a
The MPA will look for instructors who are still course that has already been chosen by another
under load (because one of their preferred courses instructor, the details of which are displayed in a new
was allocated for a more eligible instructor, or did window. Furthermore, an instructor can select the
not provide any feedback) and assign the remaining preferred time, day and classroom. ‘submit’ button
courses (courses which were not chosen by any requests the DGA to store data in the database.
instructor) for instructors of the same major. And in Our system provides an interface for students to
case a load of instructors of the same major is full it enter their suggestions about the courses to be
will be assigned for any instructor in the department. offered in the upcoming semester. The interface
For instructors that didn't provide any feedback, shown in Figure 8. provides a list of courses to be
the MPA will assign time, day and classroom for offered for the next semester. For each student, the
courses that have been assigned to them in such a list labelled as ‘course name’, contains the list of
way that it does not create clashes with already courses for which the student is eligible to register
existing timeslots in the timetable. Now, the MPA (prerequisite requirements are satisfied). The student
has the initial timetable. The MPA will look for is allowed to select between three and six courses.
clashes and try to resolve them by performing the The remaining buttons are similar to Figure 7.
following steps: at this point, a clash is identified as
two courses have the same timeslot and the same day
in the same classroom. To maintain instructors'
Start
Registration database
DGA collects data Study plan
Data
Yes
End
MPA resolves
clashes
Compare(max instructors
load, list of courses)
loop
next seniority
[Max instructors load >= list of courses || List of couress is reduced] send (email)
Allocate(instructors,courses,
time,day, room)
Resolve clashes
Puplish (Timetable)
Course
<<include>>
Time
<<include>>
Select
Preferences <<include>>
Day
<<include>>
Instructor <<include>>
Room
Submit Registration
Database
User name
<<include>>
Log in <<include>>
Password
Student
select courses <<include>>
Submit
DGA is responsible for the storage of all entered between theory and practice in university course
data in the database. Once the data is saved in the timetabling research.
database, the MPA starts its work. If a delay or a The datasets which are used in this research are
clash in offering a course by any instructor is taken from the real world. They have been selected
detected, the MPA attempts to work out the problem. from a large set of interesting cases from a real-world
In case the MPA isn’t able to find a solution, then it institution (Al Ain University of Science and
notifies and allows the HoD to solve the problem. In Technology) in the UAE. The experimental results
the end, the MPA calls the NA to publish the show that the principles used in our agent model are
timetable on the website. A timetable developed in able to achieve the goal and also satisfy the defined
interaction and coordination of the three agents’ hard and soft constraints. That means the model
looks like Figure 9. could be working in a real-world situation.
Several solutions were suggested for The agent technology is recognized as an effective
approximately fifty years of research in timetabling approach to solving course timetabling problem.
domain, as example, Genetic algorithms [16], Tabu McCollum detected the existence of a gap between
Search [17], Graph Coloring Algorithms [18], Ant the theory and practice in university timetabling
Colony [19], and Constraint Programming [11]. The because the majority of the proposed solutions are
existence of gaps between theory and practice was interested in the evaluation of specific methods and
noticed especially in the university timetabling. This techniques.
is a direct consequence of human factor of ignorance The proposed solution in this investigation
in computerized timetabling during the evaluation of concentrated on the timetable generation process from
methods and approaches. Nevertheless, a useful end-to-end by identifying the course offerings,
timetable needs to fulfil the hard constraints required assigning instructors to courses, and scheduling
by the academic activities and also the soft courses to timeslots. At the system level (considering
constraints reflecting the real world requirements of the whole process), our system integrates a set of
both instructors and students. pieces together and generates an effective timetable.
During the last ten years, researchers used the Our approach combines instructors’ courses, day and
agent technology to solve the university timetabling time preferences, and student suggestions to generate
problem, such as, Meisels and Kaplansky [20] an ideal timetable. With the integration of a decision
suggested a model with two collaborative agents with support system, the time required to generate a
different roles that are Room agent and Scheduling timetable was extremely decreased. The prototype is
Agents. Whereas Oprea [14] proposed four agents tested with a real database, and the generated
working together consistent with the university’s timetable succeeds to avoid overlaps. Accordingly,
organization, which are Instructor Agents, Person the students keep on track with their graduation
Agents, Department Agents and University Agent. progress, and consequently, delays due to conflicts
Finally, Strnad and Guid [21] designed a model with are reduced.
three types of collaborative agents that are Central As instructor’s preferences were considered during
Agents, Course Agents, and Scheduling Agent. Each the process, the feedback from instructors on the
author suggested a different architecture that fulfils generated timetable was extraordinarily positive (with
distinct constraints at the time of the timetable. Still, exceptions). Usually, with the manual process, around
some of them take into consideration the hard 50% of the instructors are unsatisfied with the
constraints; only whereas others consider both hard generated timetable and consequently arduous
and soft constraints that are related to their modifications needed to be implemented otherwise
perspective. the instructors will conciliate and ask for particular
In this paper, we proposed to use a system which is arrangements to adjust the generated timetable. If the
an extension of MUTSS proposed by Tariq et al. [22] assigned courses to instructors fit their enthusiasm
by taking into consideration students suggestions. and experience and the proposed schedule fits their
The system imitates the timetable scheduling process lifestyle, certainly they will deliver high-quality
used by a human planner in the real world; each lectures. Consequently, this strategy encourages the
agent makes its decisions according to its own needs teaching spirit and passion that ensures the success of
under any circumstance at that given moment. the education system.
Negotiation and collaboration are embodied within a To extend our system, we suggest thinking about a
set of protocols designed for solving conflicts, and distributed timetable scheduling system by proposing
for collaborating among the agents in order to reach a solution to the overlapping between common
the best solution. The results help to narrow the gap courses.