Creative Commons Attribution 4.0 International license
In high school timetabling, some institutions adopt a university-like structure in which students follow different curricula and multiple sections are offered for each course, without pre-assigning students to specific sections. In such settings, student sectioning and timetabling are strongly interdependent. Timetabling is usually carried out with integer linear programming or metaheuristics, before assigning students to sections on the fixed schedule. However, several Canadian high schools construct their schedules according to predefined block patterns designed to ensure a balanced distribution of instructional time. While this structure eliminates many classical timetabling constraints, it introduces a specific challenge: courses occupying half-blocks must be paired to form full blocks. This allows students to have the rest of their courses on well balanced, full blocks, thus easing student mixing between sections for improved student sectioning. The pairing of half-block courses is a critical step, as it directly impacts the balance of students across sections. Based on this context, this paper introduces a constraint programming approach to generate a feasible half-block courses schedule leading to good student balancing. The model is designed to enhance computational efficiency, accommodate additional practical constraints, and reduce the need for manual adjustments by scheduling operators. The approach is evaluated on anonymized real-world data from Canadian high schools for the 2024-2025 academic year, provided by Dash Computer Solutions, a company responsible for the annual design of many high school schedules in Quebec, and is integrated with their existing student sectioning algorithm. Our results show that our approach provides solutions of comparable quality to a human-guided local search with a hand-crafted initial solution, while reducing the designing time from 10 hours to an hour in the best case.
@InProceedings{dubois_et_al:LIPIcs.CP.2026.22,
author = {Dubois, B\'{e}r\'{e}nice and Walsh, Stephen and Cappart, Quentin},
title = {{Constraint Programming for Curriculum-Based High School Timetabling with Half-Blocks}},
booktitle = {32nd International Conference on Principles and Practice of Constraint Programming (CP 2026)},
pages = {22:1--22:17},
series = {Leibniz International Proceedings in Informatics (LIPIcs)},
ISBN = {978-3-95977-432-1},
ISSN = {1868-8969},
year = {2026},
volume = {379},
editor = {Beldiceanu, Nicolas},
publisher = {Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
address = {Dagstuhl, Germany},
URL = {https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.CP.2026.22},
URN = {urn:nbn:de:0030-drops-266554},
doi = {10.4230/LIPIcs.CP.2026.22},
annote = {Keywords: High school timetabling, curriculum-based timetabling with blocks}
}