University Timetabling System Highlights

System Highlights
  • Publicly available
    • Open source
    • Server-client application with web-based interface
    • Platform independent (implemented using Java J2EE, and SQL database)
  • Covers all university timetabling needs
    • Course timetabling, student sectioning, examination timetabling, and event management
  • Distributed
    • Allows decomposition into several timetabling problems if desired
    • Provides distributed management and coordination across multiple organizational units
    • Accommodates competitive behavior
  • Applications
    • Timetabling system successfully applied in practice at Purdue University
      • Large university-wide problem
        9,000 classes, 570 rooms
        2,400 examinations, 39,000 students
        190,000 course requests
    • Allows interactive changes
    • Can be used in modes ranging from manual data entry to fully automated timetabling
  • Extensible & Customizable
    • Applicable to a variety of university timetabling problems

System architecture

Data Entry

User interface provides an easy and intuitive means of data entry.

Preferences and requirements can be set on various levels of the course structure.

Classes are organized in a visual representation of the course structure. Preferences and requirements can be set at multiple levels.

Problem model and constraints consider complexity of all university courses.

  • Constraint Solver Library
    • Local search based framework using constraint programming primitives
    • Publicly available (GNU LGPL)
    • Winner of two tracks of International Timetabling Competition 2007 (finalist in all three tracks)
    • Applicable to a variety of constraint satisfaction and optimization problems
    • Identifies any inconsistencies and potential problems in input data

Timetabling solver can provide a fully automated solution.

It also allows for interactive changes while providing suggestions.

Student Sectioning

Students request courses. Class assignments are optimized respecting course structure, reservations, and student preferences.
  • Batch Sectioning
    • Once a timetable is created, pre-registered students are immediately enrolled to the most suitable classes
  • Online Sectioning
    • Additional student registrations and change requests are made online with schedules available immediately

Sample comparison: Average number of choices available per course request during sectioning (online v. student self-schedule).
  • Dynamic reservations protect course availability, allowing slightly fewer choices, but resulting in considerably less unmet course demand

For more information...
  • Visit our web-site at
  • Software available for download
    • University Timetabling Application
    • Constraint Solver Library
  • Online documentation
  • Application demo
  • Ongoing research
    • Publications & presentations
    • Benchmark real-life data sets
  • Application support
    • Both free (via email) or commercial support is available
      • Installation, configuration, maintenance, customization, training, etc.
  • Collaboration on interesting timetabling problems