DOI QR코드

DOI QR Code

A Constraint Programming-based Automated Course Timetabling System

  • Hwang, Junha (Dept. of Computer Engineering, Kumoh National Institute of Technology)
  • 투고 : 2019.03.20
  • 심사 : 2019.04.17
  • 발행 : 2019.04.30

초록

The course timetabling problem is a kind of very complex combinatorial optimization problems, which is known as an NP-complete problem. Sometimes a given course timetabling problem can be accompanied by many constraints. At this time, even if only one constraint is violated, it can be an infeasible timetable. Therefore, it is very difficult to make an automated course timetabling system for a complex real-world course timetabling problem. This paper introduces an automated course timetabling system using constraint programming. The target problem has 26 constraints in total, and they are expressed as 24 constraints and an objective function in constraint programming. Currently, we are making a timetable through this system and applying the result to the actual class. Members' satisfaction is also much higher than manual results. We expect this paper can be a guide for making an automated course timetabling system.

키워드

CPTSCQ_2019_v24n4_27_f0001.png 이미지

Fig. 1. An Example of Variable Expression

CPTSCQ_2019_v24n4_27_f0002.png 이미지

Fig. 2. Class Groups to Ensure Registering Simultaneously

CPTSCQ_2019_v24n4_27_f0003.png 이미지

Fig. 3. An Example of a Professor’s Schedule

CPTSCQ_2019_v24n4_27_f0004.png 이미지

Fig. 4. An Example of Preference Score Table

CPTSCQ_2019_v24n4_27_f0005.png 이미지

Fig. 5. Automated Timetabling Process

CPTSCQ_2019_v24n4_27_f0006.png 이미지

Fig. 6. Search Patterns for Each Data

CPTSCQ_2019_v24n4_27_f0007.png 이미지

Fig. 7. An Example of a Schedule for a Professor

CPTSCQ_2019_v24n4_27_f0008.png 이미지

Fig. 8. An Example of a Schedule for the Second Grade

Table 1. Number of Subject and Professor per Semester

CPTSCQ_2019_v24n4_27_t0001.png 이미지

Table 2. The Result of Professors’ Satisfaction

CPTSCQ_2019_v24n4_27_t0002.png 이미지

참고문헌

  1. E. Tsang, "Foundations of Constraint Satisfaction," Academic Press, London, 1993.
  2. H. Babaei, J. Karimpour, and A. Hadidi, "A Survey of Approaches for University Course Timetabling Problem," Computers & Industrial Engineering, Vol. 86, pp.43-59, Aug. 2015. https://doi.org/10.1016/j.cie.2014.11.010
  3. B. Paechter, "International Timetabling Competition," http://sferics.idsia.ch/Files/ttcomp2002/, 2001.
  4. L. di Gaspero, A. Schaerf, and B. McCollum, "The Second International Timetabling Competition: Curriculum-based Course Timetabling (Track 3)," Technical Report, Queen's University, Aug. 2007.
  5. S. Abdullah, and H. Turabieh, "On the Use of Multi Neighbourhood Structures within a Tabu-based Memetic Approach to University Timetabling Problems," Information Sciences, Vol. 191, pp.146-168, May 2012. https://doi.org/10.1016/j.ins.2011.12.018
  6. R. Bellio, S. Ceschia, L. di Gaspero, A. Schaerf, and T. Urli, "Feature-based Tuning of Simulated Annealing Applied to the Curriculum-based Course Timetabling Problem," Computers & Operations Research, Vol. 65, pp.83-92, Jan. 2016. https://doi.org/10.1016/j.cor.2015.07.002
  7. A. Bettinelli, V. Cacchiani, R Roberti, and P. Toth. "An Overview of Curriculum-based Course Timetabling," TOP, Vol. 23, No. 2, pp.2-37, July 2015.
  8. H. H. Kim, and Y. N. Choi, "An University Timetabling System Using Genetic Algorithm," Journal of Science & Culture, Vol. 2, No. 1, pp.333-342, Feb. 2005.
  9. N. Ahn, "Mathematical Modeling Approach for Classroom Assignment Problem," Journal of the Korea Academia-Industrial cooperation Society, Vol. 18, No. 10, pp.580-587, 2017. https://doi.org/10.5762/KAIS.2017.18.10.580
  10. C. S. Kim, and J. Hwang, "Constraint Programming Approach for a Course Timetabling Problem," Journal of The Korea Society of Computer and Information, Vol. 22, No. 9, pp.9-16, Sep. 2017. https://doi.org/10.9708/jksci.2017.22.01.009
  11. "IBM Decision Optimization CPLEX Modeling for Python", V2.9, IBM Corporation, 2019.