Automatic Study Timetable Maker in PHP

Automatic Study Timetable Maker in PHP

Abstract:

There is a growing need to automatically timetable viva presentations for postgraduate candidates due to the increasing number of students enrolled each year, and hence, requiring additional personnel effort. The automatic timetabling process involves the assignment of the people involved in the viva timetable into a limited number of timeslots and rooms. In order to produce a feasible timetable, we must satisfy some regulations (hard constraints), while attempting to accommodate as much as possible some preferences (soft constraints). In this work, we tackle the problem of scheduling viva presentations for the Masters degree students at FTSM-UKM as a case study. Each presentation must be attended by a chair of the school (or representative), a chair of the viva presentation, a technical committee member, a student (presenter), an internal examiner and supervisor(s). The presentation must be scheduled into a room and timeslot. In this work, we propose a new objective function to model the problem and to evaluate the quality of the timetable (schedule). We also introduce a greedy constructive heuristic to construct a valid timetable that satisfies all of the hard constraints and tries to satisfy the soft constraints as much as possible. The heuristic will assign the committee and students into an empty timetable based on a pre-ordered list of prioritized elements. These elements are ordered based on the largest enrolment: specifically a technical person who has the largest number of students enrolled under his/her supervision and examination will be ordered first in the list and is first to be assigned into the timetable. Results show that the automated timetabling solver can efficiently produce good quality timetable in reasonable time.