错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

Course Scheduling Made Easier: A User-Friendly Web-Based Timetabling Tool Using PyGLPK

  • Barbara M. Anthony,
  • Mark Mueller

摘要

Course scheduling is a necessary but often challenging task, requiring consideration of university requirements, practical limitations, departmental needs, and faculty preferences. Furthermore, it can be difficult to determine if a proposed schedule satisfies all of the requirements, especially as changes may be made within the process. Clearly articulated schedule requirements can be translated into an integer linear program by operations researchers, and those with domain-specific knowledge can then use linear programming solvers like PyGLPK. However, few faculty members in a university are likely to have that experience, so we developed a web-based tool, including the underlying Python code, that allows for entry of information about courses and the faculty teaching them and creates a schedule consistent with the requirements. More than simply a scheduler, a user can propose changes such as swapping two courses or placing a course at a specific time; the website will either do so, or report that such a change is infeasible. In addition, a user can share the website and file with colleagues, allowing them to better appreciate what is and is not possible for the overall schedule. Recognizing that the precise set of scheduling requirements is often unique to a given university, the source code is made available in a public GitHub repository, providing opportunities for other universities to create a version customized to their needs and structure.