DM872 (S24)

Mathematical Optimization at Work

Obligatory Assignment 2

Deadline: June 20, 2023, at 18:00

The goal of this assignment is to implement a MILP model for the problem of scheduling course classes at the Faculty of Science of SDU. A starting package containing data and code is available from the directory CTT of the repository Material in github.

The goals of the assignment are to:

The project has to be carried out individually. The deliverables, to be collected in a tar gzip archive and submitted via ITSLearning, are:

You do not need to hand in the input data and you should remove large files generated by your code, eg, .lp files. The source code must be organized as in the CTT repository made available. The report must be placed in a directory called doc inside CTT. Archive and compress everything with tar czvf and submit via ITSLearning. ITSLearning will rename the archive file that you submit with your name.

Problem description

Given:

Task:

A timetable is a schedule of events in timeslots and rooms throughout the semester.

A conflict arises if a resource (room, teacher, student) is used by more than one event at a time.

A timetable is feasible if it satisfies all (hard) constraints given below.

The task of the assignment is to find a timetable that is feasible and good with respect to the desirability criteria given below.

Constraints (hard constraints):

Desirability criteria (soft constraints):

trends

The formalization of the criteria and the way to handle the multi-criteria aspect is left open.

Output

Use at most twenty minutes of computation time for any of your models.

You should report in the final document the computational results of the models you developed. This includes evidence that the solution is correct, for example by assessing a posteriori that the constraints are satisfied or reporting statistics on the degree of dissatisfaction of those that are not satisfied (for example, the soft constraints).

Report also statistics about the solution process: number of variables and constraints before preprocessing and after preprocessing, whether the final solution was optimal, what was the dual bound given by the linear relaxation and the initial optimality gap, eventually the development of primal and dual bound through the solution process, and the number of nodes in the examined in the branch and bound tree.

Remarks