Study on Heuristic Timetabling Method, Study Guides, Projects, Research of Operational Research

promlems with assigning students/lecturers to classes and time-slots

Typology: Study Guides, Projects, Research

2016/2017

Uploaded on 04/04/2017

isaac-teoh
isaac-teoh 🇲🇾

3

(1)

9 documents

1 / 3

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
A Study on Heuristic Timetabling Method for
Faculty Course Timetable Problem
Bong Chia Lih, Sze San Nahand Noor Alamshah Bolhassan
Faculty of Computer Science and Information Technology
Universiti Malaysia Sarawak
Sarawak, Malaysia
Abstract—This paper studies university course timetabling
problem in a case study related to faculty management system,
which is concerned with assigning students/lecturers to classes
and time-slots. In order to increase flexibility choices of timeslot
for “repeaters”, the problem has become more tight in scheduling.
A two-stage heuristic approach is presented, where the initial
stage groups the courses that are able to conduct simultaneously.
The second stage then assigns the weekly timeslots for each group
of courses, followed by venue for each course. Computational
results are presented for the proposed solution using real data. It
shows that the proposed solution is effective to handle the faculty
course timetabling.
Keywordsautomated timetabling; two-stage heuristic
I. INTRODUCTION
Course timetabling is well known as NP-complete [1] and
has been studied extensively over the past decades [2], [3] and
[4]. However, it is “ambitious” to develop a fully automated
timetabling mechanism to meet the needs of all concerned.
Eventually, the timetabling process requires a lot of manual
effort.
In Universiti Malaysia Sarawak (UNIMAS), course
timetabling is managed by two parties: faculty management
and Centre of Applied Learning and Multimedia (CALM).
Each faculty owns a number of lecture/tutorial rooms, while
CALM manages four Centres of Teaching Facilities (CTF).
Every CTF consists of one lecture hall (LH) with capacity of
540 students and six seminar rooms (SR) with capacity of 150
students. In the beginning of the timetabling setup, CALM will
pre-assign each faculty a number of slots at CTFs based on
past experience, to accommodate courses with large number
of students. Together with the pre-assigned rooms allocation
from CALM and own faculty’s facilities, the responsibility
of constructing faculty course timetable falls on each faculty
management. This is mainly because each faculty has different
preference or request from lecturers.
Previously, Faculty of Computer Science and Information
Technology (FCSIT) course timetabling was handled by two
experience planners. The planning process was overwhelmed
with abundance of constraints and time consuming to even
find a feasible solution. This paper presents a real solution to
this faculty course timetabling by using a two-stage heuristic
method.
II. P ROP OSE D APPRO ACH
In this timetabling problem, we consider a set of offered
courses, C={C1, C2, . . . , Cn}will be enrolled by a set of
students (including lecturers), S={S1, S2, . . . , Su}. Each
course ihas a list of potential students and lecturers. Let
define the set of potential students and lecturers as PC=
{PC1, PC2, . . . , PCn}, where PCiSand CiC.
A two-stage heuristic is proposed to solve this course
timetabling case study. This is due to its simplicity to cope
with different hard and soft constraints in two stages.
A. Stage I (Course Grouping)
All the courses will be divided into a few groups based on
the following constraints:
1) Students can max enrol one course in each group.
2) Lecturers can max enrol one course in each group.
3) Takes into account the repeating students to enable
them to enrol in certain courses.
The main idea of course grouping is to cluster several
courses into one group so that these courses can have lecture
concurrently during the same timeslot in different venues by
different lecturers and students. The task of this stage is to
reduce the problem size, from ncourses to mgroups where
n > m. Let define a set of group, G={G1, G2, . . . , Gm}
where Gi6=and G1G2. . . Gm=C. The course
grouping algorithm is shown as follow:
Step 1 Calculate each course’s pairing ability, Yiwith other
courses
Algorithm 1 Calculate pairing ability
n=number of courses
for i=1 to ndo
Yi=0
for j=1 to ndo
if (PCiPCj=)then
Xij =1
else
Xij =0
end if
Yi=Yi+Xij
end for
end for
pf3

Partial preview of the text

Download Study on Heuristic Timetabling Method and more Study Guides, Projects, Research Operational Research in PDF only on Docsity!

A Study on Heuristic Timetabling Method for

Faculty Course Timetable Problem

Bong Chia Lih∗, Sze San Nah†^ and Noor Alamshah Bolhassan‡

Faculty of Computer Science and Information Technology Universiti Malaysia Sarawak Sarawak, Malaysia Email:∗[email protected], †[email protected], ‡[email protected]

Abstract—This paper studies university course timetabling problem in a case study related to faculty management system, which is concerned with assigning students/lecturers to classes and time-slots. In order to increase flexibility choices of timeslot for “repeaters”, the problem has become more tight in scheduling. A two-stage heuristic approach is presented, where the initial stage groups the courses that are able to conduct simultaneously. The second stage then assigns the weekly timeslots for each group of courses, followed by venue for each course. Computational results are presented for the proposed solution using real data. It shows that the proposed solution is effective to handle the faculty course timetabling.

Keywords—automated timetabling; two-stage heuristic

I. INTRODUCTION

Course timetabling is well known as NP-complete [1] and has been studied extensively over the past decades [2], [3] and [4]. However, it is “ambitious” to develop a fully automated timetabling mechanism to meet the needs of all concerned. Eventually, the timetabling process requires a lot of manual effort.

In Universiti Malaysia Sarawak (UNIMAS), course timetabling is managed by two parties: faculty management and Centre of Applied Learning and Multimedia (CALM). Each faculty owns a number of lecture/tutorial rooms, while CALM manages four Centres of Teaching Facilities (CTF). Every CTF consists of one lecture hall (LH) with capacity of 540 students and six seminar rooms (SR) with capacity of 150 students. In the beginning of the timetabling setup, CALM will pre-assign each faculty a number of slots at CTFs based on past experience, to accommodate courses with large number of students. Together with the pre-assigned rooms allocation from CALM and own faculty’s facilities, the responsibility of constructing faculty course timetable falls on each faculty management. This is mainly because each faculty has different preference or request from lecturers.

Previously, Faculty of Computer Science and Information Technology (FCSIT) course timetabling was handled by two experience planners. The planning process was overwhelmed with abundance of constraints and time consuming to even find a feasible solution. This paper presents a real solution to this faculty course timetabling by using a two-stage heuristic method.

II. PROPOSED APPROACH

In this timetabling problem, we consider a set of offered courses, C = {C 1 , C 2 ,... , Cn} will be enrolled by a set of students (including lecturers), S = {S 1 , S 2 ,... , Su}. Each course i has a list of potential students and lecturers. Let define the set of potential students and lecturers as PC = {PC 1 , PC 2 ,... , PCn }, where PCi ⊂ S and Ci ∈ C.

A two-stage heuristic is proposed to solve this course timetabling case study. This is due to its simplicity to cope with different hard and soft constraints in two stages.

A. Stage I (Course Grouping)

All the courses will be divided into a few groups based on the following constraints:

  1. Students can max enrol one course in each group.
  2. Lecturers can max enrol one course in each group.
  3. Takes into account the repeating students to enable them to enrol in certain courses.

The main idea of course grouping is to cluster several courses into one group so that these courses can have lecture concurrently during the same timeslot in different venues by different lecturers and students. The task of this stage is to reduce the problem size, from n courses to m groups where n > m. Let define a set of group, G = {G 1 , G 2 ,... , Gm} where Gi 6 = ∅ and G 1 ∩ G 2 ∩... ∩ Gm = C. The course grouping algorithm is shown as follow:

Step 1 Calculate each course’s pairing ability, Yi with other courses

Algorithm 1 Calculate pairing ability n = number of courses for i = 1 to n do Yi = 0 for j = 1 to n do if (PCi ∩ PCj = ∅) then Xij = 1 else Xij = 0 end if Yi = Yi + Xij end for end for

Step 2 Course with minimum pairing ability, Yk, Ck ∈ C is added into a new group, Gm with group number m. Then add courses in Gm. This step is repeats until all courses been assigned for a group.

Algorithm 2 Assign courses into groups m = 1 while (all assign[C] = false) do k = index of minimum Y INSERT Ck ∈ Gm for j = 1 to n do if (Xkj = 1) then for every course i in Gm do if (every Xij = 1) then if (fulfil total venues capacity) then INSERT Cj ∈ Gm assign[Cj ] = true end if end if end for end if end for assign[Ck] = true m = m+ 1 end while

B. Stage II (Timeslot Allocation)

This stage takes into account time-related constraints:

  1. One timeslot allocated for only one group.
  2. Spread the lecture time for each major/program evenly throughout the weekdays.

Due to the limited availability of bigger venues given by CALM, a pre-processing algorithm is conducted. First, let us define a set of timeslot types, Q = {Q 1 , Q 2 ,... , Q 5 } (as in TABLE I), and a set of timeslot throughout a 5-day week (11 timeslot per day), Vi,j = {V 1 , 1 , V 1 , 2 ,... , V 5 , 11 }. For each Vi,j is assigned a timeslot type, Qi ∈ Q based on its venues availability. Meanwhile, each Gk ∈ G is also assigned a timeslot type, Qi ∈ Q based on its need.

TABLE I. TYPE OF TIMESLOT

Timeslot types, Q Number of room available LH SR Q 1 1 2 Q 2 1 1 Q 3 1 0 Q 4 0 2 Q 5 0 1

In this stage, each of the group Gk ∈ G from previ- ous stage is assigned a timeslot. A new timeslot set T = {T 1 , 1 , T 1 , 2 ,... , T 5 , 11 } is proposed to update the timeslot allo- cation for each Gk ∈ G. Besides matching the group venue’s need and timeslot ability, we consider the even distribution of the lecture of students.

Algorithm 3 Timeslot Allocation for k = 1 to m do i = day with least lecture hours for the most junior course in Gm for j = 1 to 11 do if (Vi,j = Gk) then UPDATE timeslot for Gk, Ti,j = k end if end for end for

Some groups with all small size courses do not need any big lecture room. These groups have not been labelled with any type and thus unallocated. They will be allocated into empty timeslots which are not occupied by any venue of CTF.

III. RESULT ANALYSIS

FCSIT had roughly 600 students at the semester 1 of academic year 2011/2012, taking five different programmes. The faculty owns ten tutorial rooms, TR (with capacity of 30 students) and one lecture theatre, MMT (with capacity of 120 students). On top of that, the faculty was given one lecture hall, LH and two seminar rooms, SR at CTF for certain timeslots. The venue availability is illustrated in TABLE II. In that semester, 49 courses were offered and conducted by 46 academics. The data was studied to evaluate the performance of proposed heuristic.

TABLE II. SUMMARY ON VENUE

Management Team Venue

Number of Room Available

Student Capacity

Available Timeslot

CALM LHSR^1 540 Limited 2 150 FCSIT MMTTR 1 120 All the time 10 30

The heuristic experiment was coded in C# and all the ex- periments were carried out on a Toshiba i5 2.6GHz computer. All experimental tests can be computed in less than 2 minutes. While the manual course timetable planning took two to three weeks.

The grouping stage has successfully clustered 49 courses into 16 groups with minimum two and maximum five courses per group. The result shows that the grouping algorithm is able to average the courses into 16 groups; i.e. and the mod of statistic is also 3 (refer to TABLE III). The total number of the groups, 16 groups is the minimum number that the algorithm can generate. There are sufficient timeslots (48 hours weekly) to allocate 16 groups of courses. If the number of groups generated is large, it might not be able to get a feasible solution unless more timeslots available (night time or Saturday).