Performance Analysis of the CP-SAT Algorithm for Practicum Scheduling Optimization Using Google OR-Tools



Metrics Analysis (Dimensions & PlumX)

Indexing:
Similarity:

© 2026 Novandra Satria Winata, Heny Pratiwi, Aisyah Fajriantini

Laboratory practicum scheduling at higher education institutions involving multiple study programs, limited laboratory facilities, and complex theory class constraints constitutes a combinatorial optimization problem classified as NP-Hard. Previous studies on academic scheduling have applied various meta-heuristic and exact methods; however, few have simultaneously integrated laboratory specialization rules, multi-credit session contiguity, and theory schedule blocking within a single optimization framework. This study designs and implements an automated practicum scheduling system based on the Constraint Programming with Boolean Satisfiability (CP-SAT) method using Google OR-Tools to address the scheduling challenges at STMIK Widya Cipta Dharma. A quantitative optimization approach was employed, encompassing six systematic stages: data collection, requirements analysis, Set Theory-based data preprocessing, CP-SAT mathematical model formulation with five hard constraints and a hierarchical penalty objective function, algorithm execution, and five-aspect verification testing. The dataset comprises 22 practicum courses, 63 groups, 1,327 students, 5 laboratories, and 129 theory schedule blocking entries. The computational environment utilized an AMD Ryzen 7 8845HS processor (16 logical cores, 16 GB RAM) running Python 3.14.3 with OR-Tools 9.15.6755 on Windows 11. The CP-SAT solver processed 17,010 Boolean decision variables and achieved OPTIMAL status in 1.65 seconds, producing 102 conflict-free sessions with 100% compliance across all hard constraints and effective suppression of Saturday scheduling (Z=2.0). Resilience testing across three realistic scenarios confirmed consistent OPTIMAL status. Scalability stress testing from 129 to 329 theory blocks (26.9%–68.5% saturation) demonstrated graceful performance degradation, with the solver maintaining OPTIMAL status throughout, though objective values increased from Z=2.0 to Z=52.0 at highest saturation. Post-optimization field audit revealed that discrepancies between computed and actual schedules stem from uncoordinated student-initiated group swaps rather than algorithmic errors, highlighting the need for institutional swap-management protocols to preserve schedule optimality.

 

Keywords: Constraint programming, CP-SAT, Laboratory scheduling, Google OR-Tools, Timetabling.

Abdipoor, S., Yaakob, R., Goh, S. L., & Abdullah, S. (2023). Meta-heuristic approaches for the University Course Timetabling Problem. Intelligent Systems with Applications, 19, 200253. https://doi.org/10.1016/j.iswa.2023.200253

Arratia-Martinez, N. M., Maya-Padron, C., & Avila-Torres, P. A. (2021). University Course Timetabling Problem with Professor Assignment. Mathematical Problems in Engineering, 2021(1), 1–9. https://doi.org/10.1155/2021/6617177

Bashab, A., Osman Ibrahim, A., Abakar Tarigo Hashem, I., Aggarwal, K., Mukhlif, F., A. Ghaleb, F., & Abdelmaboud, A. (2023). Optimization Techniques in University Timetabling Problem: Constraints, Methodologies, Benchmarks, and Open Issues. Computers, Materials & Continua, 74(3), 6461–6484. https://doi.org/10.32604/cmc.2023.034051

Cappart, Q., Moisan, T., Rousseau, L.-M., Prémont-Schwarz, I., & Cire, A. A. (2021). Combining Reinforcement Learning and Constraint Programming for Combinatorial Optimization. Proceedings of the AAAI Conference on Artificial Intelligence, 35(5), 3677–3687. https://doi.org/10.1609/aaai.v35i5.16484

Ceschia, S., Di Gaspero, L., & Schaerf, A. (2023). Educational timetabling: Problems, benchmarks, and state-of-the-art results. European Journal of Operational Research, 308(1), 1–18. https://doi.org/10.1016/j.ejor.2022.07.011

Chen, M. C., Sze, S. N., Goh, S. L., Sabar, N. R., & Kendall, G. (2021). A Survey of University Course Timetabling Problem: Perspectives, Trends and Opportunities. IEEE Access, 9, 106515–106529. https://doi.org/10.1109/ACCESS.2021.3100613

Da Col, G., & Teppan, E. C. (2022). Industrial-size job shop scheduling with constraint programming. Operations Research Perspectives, 9, 100249. https://doi.org/10.1016/j.orp.2022.100249

De Coster, A., Musliu, N., Schaerf, A., Schoisswohl, J., & Smith-Miles, K. (2022). Algorithm selection and instance space analysis for curriculum-based course timetabling. Journal of Scheduling, 25(1), 35–58. https://doi.org/10.1007/s10951-021-00701-x

Dokeroglu, T., Kucukyilmaz, T., & Talbi, E.-G. (2024). Hyper-heuristics: A survey and taxonomy. Computers & Industrial Engineering, 187, 109815. https://doi.org/10.1016/j.cie.2023.109815

Eldharif, E. A., Sallabi, O. M., & Mosa Eltharif, A. A. (2024). An Improved Genetic Algorithm Tool for Exam Timetabling Solutions. 2024 IEEE 4th International Maghreb Meeting of the Conference on Sciences and Techniques of Automatic Control and Computer Engineering (MI-STA), 672–677. https://doi.org/10.1109/MI-STA61267.2024.10599714

Fan, H., Xiong, H., & Goh, M. (2021). Genetic programming-based hyper-heuristic approach for solving dynamic job shop scheduling problem with extended technical precedence constraints. Computers & Operations Research, 134, 105401. https://doi.org/10.1016/j.cor.2021.105401

Fatemi-Anaraki, S., Tavakkoli-Moghaddam, R., Foumani, M., & Vahedi-Nouri, B. (2023). Scheduling of Multi-Robot Job Shop Systems in Dynamic Environments: Mixed-Integer Linear Programming and Constraint Programming Approaches. Omega, 115, 102770. https://doi.org/10.1016/j.omega.2022.102770

Lailiyah, S. (2020). PENERAPAN ALGORITMA TABU SEARCH PADA SISTEM PENJADWALAN UJIAN TUGAS AKHIR MAHASISWA. Jurnal Informatika Wicida, 10(1), 1–10. https://doi.org/10.46984/inf-wcd.1193

Lan, L., & Berkhout, J. (2025). PyJobShop: Solving scheduling problems with constraint programming in Python. ArXiv Preprint ArXiv:2502.13483. https://doi.org/https://doi.org/10.48550/arXiv.2502.13483

Lavanya, A., Gaurav, L., Sindhuja, S., Seam, H., Joydeep, M., Uppalapati, V., Ali, W., & S.D, V. (2023). Assessing the Performance of Python Data Visualization Libraries: A Review. International Journal of Computer Engineering in Research Trends, 10(1), 28–39. https://doi.org/10.22362/ijcert/2023/v10/i01/v10i0104

Lemos, A., Monteiro, P. T., & Lynce, I. (2022). Introducing UniCorT: an iterative university course timetabling tool with MaxSAT. Journal of Scheduling, 25(4), 371–390. https://doi.org/10.1007/s10951-021-00695-6

Lindner, N., & Reisch, J. (2022). An analysis of the parameterized complexity of periodic timetabling. Journal of Scheduling, 25(2), 157–176. https://doi.org/10.1007/s10951-021-00719-1

Mokhtari, M., Vaziri Sarashk, M., Asadpour, M., Saeidi, N., & Boyer, O. (2021). Developing a Model for the University Course Timetabling Problem: A Case Study. Complexity, 2021(1), n/a-n/a. https://doi.org/10.1155/2021/9940866

Moreira, É. J. B., & De Freitas, S. A. A. (2024). A CP-SAT Approach for Academic Resource Timetabling in Higher Education Institutions: A Case Study at a Major Public University. 2024 21st International Conference on Information Technology Based Higher Education and Training (ITHET), 1–8. https://doi.org/10.1109/ITHET61869.2024.10837617

Naderi, B., Ruiz, R., & Roshanaei, V. (2023). Mixed-Integer Programming vs. Constraint Programming for Shop Scheduling Problems: New Results and Outlook. INFORMS Journal on Computing, 35(4), 817–843. https://doi.org/10.1287/ijoc.2023.1287

pandas development team, T. (2024). pandas-dev/pandas: Pandas. Zenodo. https://doi.org/10.5281/zenodo.10537285

Perron, L., Didier, F., & Gay, S. (2023). The CP-SAT-LP solver (invited talk). 29th International Conference on Principles and Practice of Constraint Programming (CP 2023), 1–3. https://doi.org/10.4230/LIPIcs.CP.2023.3

Perron, L., & Furnon, V. (2024). OR-Tools. Google. https://developers.google.com/optimization/

Rafida, V., Widiyatni, W., Harpad, B., & Yulsilviana, E. (2021). Implementation of Multi-attribute Rating Technique Simple in Selection of Acceptance Scholarship of PMDK (Case Study: STMIK Widya Cipta Dharma). International Journal of Modern Education and Computer Science, 13(1), 22–33. https://doi.org/10.5815/ijmecs.2021.01.02

Rappos, E., Thiémard, E., Robert, S., & Hêche, J.-F. (2022). A mixed-integer programming approach for solving university course timetabling problems. Journal of Scheduling, 25(4), 391–404. https://doi.org/10.1007/s10951-021-00715-5

Siew, E. S. K., Sze, S. N., Goh, S. L., Kendall, G., Sabar, N. R., & Abdullah, S. (2024). A Survey of Solution Methodologies for Exam Timetabling Problems. IEEE Access, 12, 41479–41498. https://doi.org/10.1109/ACCESS.2024.3378054

Sylejmani, K., Gashi, E., & Ymeri, A. (2023). Simulated annealing with penalization for university course timetabling. Journal of Scheduling, 26(5), 497–517. https://doi.org/10.1007/s10951-022-00747-5

Tan, J. S., Goh, S. L., Kendall, G., & Sabar, N. R. (2021). A survey of the state-of-the-art of optimisation methodologies in school timetabling problems. Expert Systems with Applications, 165, 113943. https://doi.org/10.1016/j.eswa.2020.113943

Thepphakorn, T., Kuntasup, M., & Pongcharoen, P. (2025). Moth flame optimisation based timetabling tool for educational course timetabling. International Journal of Innovation and Learning, 1(1). https://doi.org/10.1504/IJIL.2025.10067328

Waskom, M. (2021). seaborn: statistical data visualization. Journal of Open Source Software, 6(60), 3021. https://doi.org/10.21105/joss.03021

Yesin, V., Karpinski, M., Yesina, M., Vilihura, V., & Warwas, K. (2021). Ensuring Data Integrity in Databases with the Universal Basis of Relations. Applied Sciences, 11(18), 8781. https://doi.org/10.3390/app11188781

Yunusoglu, P., & Topaloglu Yildiz, S. (2022). Constraint programming approach for multi-resource-constrained unrelated parallel machine scheduling problem with sequence-dependent setup times. International Journal of Production Research, 60(7), 2212–2229. https://doi.org/10.1080/00207543.2021.1885068

Refbacks

  • There are currently no refbacks.


Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.

The copyright is reserved to Research in Education, Technology, and Multiculture that is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.

Address:

CV. IMRECS: Jalan Gagak I, Kecamatan Larangan, Kota Tangerang. Postal Code: 15155

STKIP Al Islam Tunas Bangsa: Jalan Z.A. Pagar Alam No. 41 Gedong Meneng Bandar Lampung