Sie sind auf Seite 1von 6

Automated Course Timetabling in a Multiagent System

Thiri Haymar Kyaw, Ni Lar Thein


University of Computer Studies, Yangon, Myanmar.
thirihaymarkyaw@gmail.com

ABSTRACT
Academic course timetabling is a large, complex and time-consuming process. The course timetabling
process consists of scheduling a sequence of lectures between teachers and classrooms to a number of
time-slots, satisfying a set of constraints. Our multiagent system intends to support some workflows of the
university and provide automated tasks such as timetabling. Its architecture includes Coordinators and
composite agents. Course scheduling is accomplished through Coordinators and using a mobile agent
called mobile inference engine. In this paper, we present a timetabling approach used in our multiagent
system architecture. This approach can successfully generate an effective and efficient solution to the
timetabling problem.

Keywords: Course Timetabling, Hard and Soft Constraints, Coordinator Agents.

1. Introduction should be satisfied for better model. Since


timetabling approaches differ from one
Multiagent system technology has become a university to another based on the type of
popular paradigm for designing, modeling and constraints, we concentrated on generating
implementing software solutions. In our appropriate timetable for our University of
Multiagent University architecture, Intelligent Computer Studies.
Coordinator agent (ICo) communicates and The manual solution of timetabling problem
coordinates between composite agents using is a complex and time consuming work. In our
token-based approach. A composite agent is multiagent system, when a composite agent
composed of individual agents or agent teams. called AdminAgent wants to schedule a course
For example, DeptAgent is composed of seven timetable, it creates a token with task
faculties or department agent teams which information and sends it to ICo. After collecting
include individual teacher agents. required information and selecting appropriate
Communication, coordination and negotiation composite agent which is DeptAgent, ICo
among individual agents are the duties of passes the token to it. ACo in DeptAgent
Assistant Coordinator agent (ACo). Coordinator generates a course timetable after performing
agents use Mobile Inference Engine (MIE) to three-step process with the help of MIE. The
determine token movement decisions and to timetabling constraints are satisfied by rules
compute the required functions. MIE has which embedded in MIE. MIE can move to
mobility property which can move to every site negotiate among agents in different
and embedded many rule based functions to be departments.
done automated tasks and decisions. The rest of the paper is organized as follows:
Course scheduling is a coordination problem Some of the existing timetabling approaches are
to find an appropriate timetable for each course reviewed in section 2. Section 3 introduces the
and class while avoiding hard and soft problems and constraints of our timetabling
constraints. To ensure feasibility of the model, model. We describe the proposed timetabling
hard constraints must be satisfied and cannot be model in section 4 and show the preliminary
violated. Soft constraints may be violated but

1
results in section 5. We draw conclusion with application for course scheduling system is
our future direction in the last section, section 6. designed and implemented. It emphasizes a
constraint-based interactive decision making
2. Related Work process.

Many research papers related to course


scheduling or timetabling have been published 3. Problems and Constraints
in the literature and applications have been The timetabling problems can be classified
developed to generate automated timetables. M. into three main classes: school timetabling,
Oprea [2] presented the university course course timetabling and examination timetabling
timetable scheduling as a multiagent system. [1]. School timetabling consists of scheduling
The university includes five faculties and each for all classes in a school, avoiding teachers
has a scheduler multiagent system which has to meeting two classes at the same time. Course
schedule the courses of that faculty. The main timetabling consists in scheduling all lectures to
scheduler agent, the university scheduler agent a set of university courses, minimizing the
will allocate the rooms. Each faculty level overlaps of lectures of courses having common
Multiagent System includes a faculty scheduler students. Examination timetabling is the
agent and expert assistants (EA) for each scheduling for the exams of a set of university
specialized courses of that faculty. courses’ exams that have common students and
Y. Yang, et al. proposed agent based distributing the exams for the students as much
mechanisms for solving the course scheduling as possible.
problem [3, 5]. In their first agent model, each In our university, course timetabling is very
mobile agent represents a course named Course similar to school timetabling. Our goal is to find
agent that negotiates with each other through a an academic year timetable for five-year master
Signboard Agent for each day of the week. degree programs of computer science and
Their general solution model includes CHC computer technology. We assume that each
Agent which represents the Common Hard class may take a number of lectures with a set of
Constraints, HC Agents which represent other specific teachers or some specific subjects. In
additional Hard Constraints and SC Agents addition, a teacher may teach different subjects
which represent the Soft Constraints in the and different teachers may teach the same
course timetabling problem. This model is subject.
designed in three different modes: the passive The following hard constraints must be
mode, the active mode and the parallel-active satisfied to get the better feasible course
mode to overcome two key difficulties: timetable according to our university’s nature.
application-specific issues and dynamic- - Each class has its own classroom and no
constraint issues. classroom assignments are made.
An academic course scheduling system - All classes have fixed time-slots that are time
using IAEDS (Intelligent Agent Enabled intervals of a day in which courses can be
Decision Support) system is proposed in [4]. It assigned. Currently, there are 4 time-slots in
uses software agents that utilize the course a day from 8:00 am to 3:35 pm including
schedule information of previous terms, the lunch time for all week days from Monday to
estimated number of students for every course, Friday.
availability of classrooms and different - The courses listed in the lecture plan of each
instructors’ teaching interests, to develop a pre- class must be considered.
assignment of courses to instructors. A mobile - Each teacher is pre-assigned to certain
scheduling agent requests every instructor to courses and classes.
respond to this pre-assignment of courses. The - A teacher cannot be assigned more than one
final course schedule is determined by resolving class at the same time interval.
conflicts which rose after assimilating the - Each teacher must be assigned at most three
instructors’ responses. In [8], a UML time-slots per day for all days.

2
- Some courses consist of two lecture times composed of seven department teams which
and a tutorial time in a week. Some courses include several teacher agents.
consist of two lecture times in a week and a
tutorial time per two weeks.
- Some classes have a lab time in a week.
Tutorial times should be at the end of the day
and lab times should not be at the beginning
of the day.
These are handled in the second step of our
three-step process.
During the negotiation process, possible soft
constraints are resolved to satisfy the course
timetable. The soft constraints we try to satisfy
as much as possible are:
- Some teachers prefer certain time-slots or Fig.1. The general architecture of course
days for teaching. timetabling module.
- The time-slots assigned to a course should be
spread over week days. When Intelligent Coordinator agent (ICo)
- There should be at least one time-slot break receives a task token to draw a course timetable
between two lectures of a teacher. before starting next academic year, ICo
- The preferences of the teachers related to decomposes timetabling according to courses,
courses must be satisfied. i.e. first year course, second year course, etc.
And then ICo creates and sends request tokens
4. The Proposed Course Timetabling to AdminAgent and StuAffairAgent for asking
information about classrooms and students.
Model After collecting information, ICo sends task
token to Assistant Coordinator agent (ACo) in
4.1. Multiagent Architecture
DeptAgent for assigning each course to teacher
Multiagent architecture in this proposed agents.
approach consists of Intelligent Coordinator The task token includes the number of
agent (ICo) and composite agents such as classrooms for specific class name such as first
AdminAgent which represents administration year class or second year class, the number of
department, StuAffairAgent which represents courses that are assigned to such class and the
student affair department or DeptAgent number of teachers who will be assigned to
represents all departments in the university. A courses. The same subjects are assigned to
composite agent is composed of several different teachers according to the number of
individual agents. ICo takes the duty of classrooms for the same class name and
coordination and communication between different courses are assigned to the same
composite agents. Assistant Coordinator agent teachers according to the teachers’ preferences.
(ACo) provides the internal communication
between individual agents within the same 4.2. Three-Step Process for Timetabling
composite agent. Agent communication is
In the architecture of Fig. 1, ACo performs
performed by passing tokens which encapsulate
as a three-step process to reach the final
control and information for message informing,
satisfied timetable. These three steps are Course
task allocation and resource sharing and so on.
Assignment to Teachers, Allocation Initial
The general architecture for timetabling is
Timetable and Negotiation.
described in Fig.1. The composite agents have
As the first step of the timetabling, ACo
related databases to access for required
selects appropriate agents to send the task
information. In this architecture, DeptAgent is
assignment token for each course according to
the Matching function in MIE. The Matching

3
function matches the teachers whose degrees 2 and pick up according to the descending order
and departments are related to the courses. to get the pre-defined number of teachers. Then,
Databases consisting TeachersProfiles and the picked up teachers are assigned to this
Courses are handled by DeptAgent. A course.
TeachersProfiles table includes teachersID,
name, rank, dept, role, degree, Experience
(year), workload (times), prefer course1, prefer
course2, prefer course3, last-year course1, last-
year course2 and timetable for week days. A
Courses table includes courseID, paper no.,
description, dept, class name.
Then, ACo chooses the predefined number Fig. 2. A part of grouping together descending
of appropriate teacher agents to assign each ordered P′ matrices with teachersID.
course according to the priority matrix in
working with MIE. The priority matrix includes In the second step, the courses, which were
role, rank, degree, experience; prefer courses assigned to teachers, are allocated to
and last year assigned courses for each teacher. classrooms’ time-slots during a week. Courses
Role variable (Rl) is determined as integer are firstly assigned to master classes’ timetables
values 1 to 4 based on working year and then graduate classes and under graduate
experiences, best teaching experiences for classes, etc. We assume that the number of
courses and qualified degrees. Rank of teachers classrooms of a class, the number of courses
(Rn) may be professor, assistant professor, which must be taken in this class and the
lecturer, assistant lecturer or tutor and defined number of lecture and tutorial times for each
as integer values. Degree (d) is the qualified course are pre-defined after collecting
degree of teachers such as Ph.D, Ph.D(thesis), information by ICo.
M.C.Sc., M.C.Tech, etc. The highest role or The time-slots in a week are constructed as a
rank or degree is assigned with largest integer two dimensional matrix. For the first time
value and the lower roles or ranks or degrees are courses to classroom assignment, courses are
assigned with smaller values. randomly assigned to time-slots. If it is not first
Experience (Expr) is expressed as integer assignment for any teacher’s course, we must
value according to the number of working years check whether the time-slot is free in the
that is worked as a teacher. While prefer course teacher’s timetable before allocating. The
1 is more prefer to teach than prefer course 2 or allocating process is repeated until all time-slots
3 and prefer course 1 is equal to current course in a week are filled with courses. After
which will be assigned, prefer course (PrC) is allocation a time-slot to a teacher, it must be
assigned to largest integer value. If the course updated to the teacher’s timetable. The
which will be assigned is equal to the course the preliminary allocated course timetable has not
teacher took in last year, last year assigned fully completed to satisfy the teachers’
course (LaC) is 1. Otherwise, LaC is 0. Priority preferences.
Matrix P is as follows : P = [ Rl Rn d Expr The third step is negotiation process. If the
PrC LaC ]. conflicts arise among teachers’ preferences,
T represents an available time to teach the negotiation needs to be resolved. ACo works as
course. If a teacher has a free time to assign the a negotiator among the individual teachers in
course and this course is not the currently different departments passing the negotiate
assigned course for this academic year, T is 1. tokens. All rules and computing modules are
After extracting priority matrix P for each embedded in the Mobile Inference Engine
teacher, MIE computes P′ = P Λ T. Otherwise, (MIE) and it can move to the location of the
T is 0. TeachersID (TID) and P′ matrices of all databases or other sites to take the required data
teachers who accepted to teach the course are for computations. The example negotiation rules
putting together as a decreasing order as in Fig. are as follows:

4
- When the two courses conflicts, the minor
course changes its time-slot.
- When the two teachers’ preference time-slot
or day conflicts, teachers with the lower P′
values or teachers with minimum workload
changes its time-slot or day.
- When the two teachers with the same rank or
same P value conflict about the time-slot or
day, one teacher with ongoing research or a
visited professor is given its preferences and
another teacher changes its time.
When no conflicts exist between the
teachers’ preferences, ACo generates the
timetable. After generating final timetable, ACo
replies the task token it received from ICo with Fig. 3. A part of the initial timetable.
the course timetable forms. The timetable for all
courses is stored in DeptAgent. If any schedule
6. Conclusion
changes arise during the academic year, the
timetable must be updated immediately. In this paper, a course timetabling approach
that is included in a multiagent system is
5. Preliminary Results described. Our multiagent system architecture
includes coordinator agents (ICo and ACo) and
We consider there are 6 classrooms for first composite agents. Course timetabling module is
year class. This class must take 7 courses performed by ACo in the department composite
including minor subjects. Two teachers are agent called DeptAgent. This module consists
assigned for each course and each teacher is of three steps: course assigning, timetable
assigned to 3 classrooms. These teachers may allocating and negotiating. After negotiation
take other courses for other classes. One lab process, the final timetable is successfully
time is included in the time-slots of each generated for coming academic year. We
classroom. For this class, there is one lab room believe that this agent-based approach is
which accommodating the students of two promising to satisfy the constraints of course
classrooms. The initial timetable for 3 timetabling problem and improving manual
classrooms is shown in Fig. 3. paper-based scheduling. Although, currently we
Agents in this model are created on the focus on automated course timetabling for
JADE platform [12] and MySQL Server 5.0 is University of Computer Studies, we will extend
used for databases. The initial timetable satisfies to the general course timetabling model in the
the hard constraints but to become final future.
timetable fully satisfying the soft constraints it
must pass the negotiation process until reaching
References
the global agreement.
[1] A. Schaerf, “A Survey of Automated
Timetabling”, Artificial Intelligence
Review, vol. 13, no. 2, pp. 87-127, 1999.
[2] M. Oprea, MAS_UP_UCT: “A Multi-
Agent System for University Course
Timetable Scheduling”, International
Journal of Computers, Communications
and Control. vol. 2, no. 1. pp. 94-102,
2007.

5
[3] Y. Yang, R. Paranjape and L. Benedicenti, the Practical Application of Intelligent
“An Agent Based General Solution Model Agents and Multi-Agents. 1997.
For the Course Timetabling Problem”, 5th
Intl. Conf. on Autonomous Agents and
Multiagent Systems, AAMAS’06, 2006.
[4] P. Dasgupta and D. Khazanchi, “Adaptive
Decision Support for Academic Course
Scheduling Using Intelligent Software
Agent”, International Journal of
Technology in Teaching and Learning,
vol. 1, no. 2, pp. 63-78, 2005.
[5] Y. Yang, R. Paranjape and L. Benedicenti,
“An Examination of Mobile Agents
System Evolution in the Course
Scheduling Problem”, Canadian
Conference on Electrical and Computer
Engineering, CCECE, Canada, 2004.
[6] E. Babkin, H. Adbulrab and T. Babkina,
AgentTime: “A Distributed Multi-agent
Software System for University’s
Timetabling”, Emergent Properties in
Natural and Artificial Complex Systems,
EPNACS, Germany, 2007.
[7] E. Kaplansky and A. Meisels,
“Negotiation among Scheduling Agents
for Distributed Timetabling”, Proc. of the
5th Intl. Conf. on Practice and Theory of
Automated Timetabling, Pittsburgh, 2004.
[8] S. Fang, “University Course Scheduling
System (UCSS) – A UML Application
with Database and Visual Programming”,
Consortium for Computing Sciences in
Colleges, CCSC, 2005.
[9] S. Abdennadher and M. Marte,
“University Timetabling using Constraint
Handling Rules”, Applied Artificial
Intelligence, vol. 14, no. 4, pp. 311-325,
2000.
[10] H. Rudova and K. Murray, “University
Course Timetabling with Soft
Constraints”, Practice and Theory of
Automated Timetabling IV, vol. 2740, pp.
310-328, 2003.
[11] R. Willemen, “School Timetable
Construction Algorithms and
Complexity”, Ph.D thesis, 2002.
[12] F. Bellifemine, A. Poggi and G. Rimassa,
“JADE – A FIPA-Compliant Agent
Framework”, 4th Intl. Conf. and Exhib on

Das könnte Ihnen auch gefallen