Article

A branch-and-cut procedure for the Udine Course Timetabling problem

Details

Citation

Burke E, Maracek J, Parkes AJ & Rudova H (2012) A branch-and-cut procedure for the Udine Course Timetabling problem. Annals of Operations Research, 194 (1), pp. 71-87. https://doi.org/10.1007/s10479-010-0828-5

Abstract
A branch-and-cut procedure for the Udine Course Timetabling problem is described. Simple compact integer linear programming formulations of the problem employ only binary variables. In contrast, we give a formulation with fewer variables by using a mix of binary and general integer variables. This formulation has an exponential number of constraints, which are added only upon violation. The number of constraints is exponential. However, this is only with respect to the upper bound on the general integer variables, which is the number of periods per day in the Udine Course Timetabling problem. A number of further classes of cuts are also introduced, arising from: enumeration of event/free-period patterns; bounds on the numbers of days of instruction; the desire to exploit integrality of the objective function value; the graph colouring component; and also from various implied bounds. An implementation of the corresponding branch-and-cut procedure is evaluated on the instances from Track 3 of the International Timetabling Competition 2007

Keywords
Integer programming; Branch-and-cut; Cutting planes; Soft constraints; Educational timetabling; University course timetabling; Algorithm Analysis and Problem Complexity;Discrete Mathematics in Computer Science; Computer Graphics; Data Structures; Numeric Computing

Journal
Annals of Operations Research: Volume 194, Issue 1

StatusPublished
Publication date30/04/2012
URLhttp://hdl.handle.net/1893/15714
PublisherSpringer
ISSN0254-5330