SIAKAD

Automatic Class Scheduling: Why Schedules Clash and How to Fix It

By the Kampusin Team, PT Creative Digitech Indonesia · · 5 min read

Class and exam schedules are a puzzle with many constraints. Learn why clashes happen and how an automatic scheduler works.

Why class schedules are hard to build

A single schedule must satisfy many constraints at once: a lecturer cannot teach in two places at the same time, a room cannot be double-booked, room capacity must be sufficient, students in the same cohort must not clash, and lecturers have days or hours when they are unavailable. The number of combinations is enormous, so building a schedule by hand takes a long time and often leaves clashes behind.

Hard constraints and soft constraints

  • Hard constraints must be met: no clashes in rooms, lecturers, or student groups.
  • Soft constraints are preferences: avoid schedules that are too early or too late, reduce long gaps, or spread out lecturer workloads.

How an automatic scheduler works

An automatic scheduler models all the constraints and searches for an arrangement that satisfies them using an optimization tool, for example the CP-SAT solver from Google OR-Tools. The result can be several options with different profiles, so the admin can choose the one that best fits campus policy.

Exams are the same

Exam scheduling adds constraints on invigilators and room capacity. The same scheduler can be used to make sure there are no room or invigilator clashes.

What campuses need to prepare

  • Accurate room and capacity data.
  • Lecturer availability and teaching load.
  • Division of classes and student groups.
  • Special rules, for example Friday prayer times or practicum days.