4 research outputs found
A multi-phase approach to university course timetabling
ix, 117 leaves ; 29 cmCourse timetabling is a well known constraint satisfaction optimization (CSOP) problem,
which needs to be solved in educational institutions regularly. Unfortunately, this course
timetabling problem is known to be NP-complete [7, 39].
This M.Sc. thesis presents a multi-phase approach to solve the university level course
timetabling problem. We decompose the problem into several sub-problems with reduced
complexity, which are solved in separate phases. In phase-1a we assign lectures to professors,
phase-1b assigns labs and tutorials to academic assistances and graduate assistants.
Phase-2 assigns each lecture to one of the two day-sequences (Monday-Wednesday-Friday
or Tuesday-Thursday). In Phase-3, lectures of each single day-sequence are then assigned
to time-slots. Finally, in phase-4, labs and tutorials are assigned to days and time-slots.
This decomposition allows the use of different techniques as appropriate to solve different
phases. Currently different phases are solved using constraint programming and integer
linear programming. The multi-phase architecture with the graphical user interface allows
users to customize constraints as well as to generate new solutions that may incorporate
partial solutions from previously generated feasible solutions
University Timetabling Using Constraint Handling Rules
Timetabling the courses offered at the Computer Science Department of the University of Munich requires the processing of hard and soft constraints. Hard constraints are conditions that must be satisfied, soft constraints however may be violated, but should be satisfied as much as possible. This paper shows how to model our timetabling problem as a partial constraint satisfaction problem and gives a concise finite domain solver implemented with Constraint Handling Rules that, by performing soft constraint propagation, allows for making soft constraints an active part of the problem solving process. Furthermore, we improve efficiency by reusing parts of the previous year's timetable