system demonstration of interactive course timetabling · • distributed allows decomposition of...

11
System Demonstration of Interactive Course Timetabling PATAT 2010 Friday, August 13, 2010 Tomáš Müller, Keith Murray, Hana Rudová

Upload: others

Post on 14-Oct-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: System Demonstration of Interactive Course Timetabling · • Distributed Allows decomposition of timetabling problems when desired (e.g., centrally managed, departmental, and other

System Demonstration of

Interactive Course Timetabling

PATAT 2010

Friday, August 13, 2010 Tomáš Müller, Keith Murray, Hana Rudová

Page 2: System Demonstration of Interactive Course Timetabling · • Distributed Allows decomposition of timetabling problems when desired (e.g., centrally managed, departmental, and other

System Highlights

Thin Client(Web browser)

Web Server(J2EE application server)

Solver Server(Java program/J2EE service)

Constraint Solver(Java Library)

+ Timetabling/Student Sectioning Extensions

ERP Student SystemStudent Portal

Space Inventory...

XMLHTTPS

RMI/SSL

Java API

• Publicly available ◦ Open Source License (GNU GPL for interface, LGPL for solver)

◦ Resources available online at www.unitime.org

• Client-server architecture ◦ Web-based interface

◦ Using JSP, Struts, Hibernate, GWT ◦ Compatible with Firefox, IE, Safari, and Chrome

• Platform independent ◦ Java, Tomcat, Oracle/MySQL

• Extensible & customizable ◦ Applicable to a variety of university timetabling problems ◦ XML interfaces

Page 3: System Demonstration of Interactive Course Timetabling · • Distributed Allows decomposition of timetabling problems when desired (e.g., centrally managed, departmental, and other

• Modular ◦ Demand and curriculum-based course timetabling, examination timetabling, event management, student sectioning (in development)...

• Distributed ◦ Allows decomposition of timetabling problems when desired (e.g., centrally managed, ◦ departmental, and other special problems) ◦ Provides for coordination of multiple sub-problems and addresses competitive behavior among users

• University-wide Applicability ◦ Tested on instances with up to 9,000 classes, 2,400 exams, and 39,000 students ◦ Modes ranging from manual data entry to fully automated timetabling ◦ Allows interactive changes

System Highlights

Page 4: System Demonstration of Interactive Course Timetabling · • Distributed Allows decomposition of timetabling problems when desired (e.g., centrally managed, departmental, and other

Configuration

Subpart

Parent Child

Class

Parent Child

Traditional Computer-Assisted

Lecture

Recitation

Lec1

Lec2

Rec1

Lecture

Recitation

Lec3

Lec4

Rec2

Instructional Offering

Introduction to Actuarial Science MATH 170STAT 170

Laboratory

Rec3 Rec4

Rec5 Rec6

Lab3 Lab4

Rec7 Rec8

Lab1 Lab2

Versatility by Design

• Robust course model ◦ Allows representation of even the most complex courses as individual classes plus a set of constraints ◦ Constraints set on various levels of course structure

• Exceptions to rules ◦ Classes can share rooms ◦ Use of multiple rooms ◦ Use of variable date patterns

• Solves problems with wide variety of individual characteristics ◦ Local-search based constraint solver framework not tailored to specific problem attributes ◦ System can support any use from completely manual to fully automated operation

• Solver framework allows problem-specific search methods ◦ Consistent set of constraint-based abstractions

Page 5: System Demonstration of Interactive Course Timetabling · • Distributed Allows decomposition of timetabling problems when desired (e.g., centrally managed, departmental, and other

Input Data

• Student Requirements ◦ Actual or last-like student course demand, or curricula requirements

• Time Requirements and Preferences ◦ Date pattern (e.g., full term, week 5) ◦ Time pattern (e.g., 3 x 50 minutes)

• Room Requirements and Preferences ◦ Capacity ◦ Room/building/equipment preferences ◦ Building distances ◦ Room availability

• Instructor Requirements and Preferences• Distribution Requirements and Preferences ◦ Constraints between several classes (e.g., precedence)

• Other (e.g., departmental balancing, efficient use of times and rooms)

Page 6: System Demonstration of Interactive Course Timetabling · • Distributed Allows decomposition of timetabling problems when desired (e.g., centrally managed, departmental, and other

Problem Model

Constraint Satisfaction and Optimization Problem ◦ Variable: class

◦ Value: assignment of both time and room(s)

◦ Objective: weighted sum of violated soft constraintsHardconstraint

Softconstraint

Times for class Time patternIndividual times

XX X

Rooms for class Individual buildings/roomsIndividual room equipment

XX

XX

Resource constraints RoomInstructor

XX

Students Conflicts between two classes X

Distribution constraints between classes

Time between classesTime precedences between classesClasses placed in similar timesSame or different meeting days/times/rooms for classes

XXXX

XXXX

◦ Some constraints may initially be hard and then weakened during search

Page 7: System Demonstration of Interactive Course Timetabling · • Distributed Allows decomposition of timetabling problems when desired (e.g., centrally managed, departmental, and other

Constraint Solver

• Local-search based framework ◦ Using constraint programming primitives

◦ Allows problem-specific search methods

◦ Applicable to a variety of constraint satisfaction and optimization problems

• Winner of two tracks of International Timetabling Competition 2007• Operates in multiple modes ◦ Data consistency checks using hard constraints and conflict-based statistics to detect and visualize problems ◦ Initial course timetabling problem ◦ Minimal perturbation problem (minimize students affected by changes) ◦ Interactive timetabling (support tool for user decisions)

• All modes have the same problem model ◦ Use same search method (except for interactive mode) ◦ But different objectives (soft constraints)

Interactive timetabling has the same objective but different search method.

Page 8: System Demonstration of Interactive Course Timetabling · • Distributed Allows decomposition of timetabling problems when desired (e.g., centrally managed, departmental, and other

Interactive Changes

Interaction• A sequence of changes based on a• desired change to an individual class

• In each step, user can: ◦ Commit or abandon the change ◦ Select a (different) suggestion or placement ◦ Remove selected assignment ◦ Select another class

• Solver provides suggestions ◦ Best N changes to selected classes and other affected classes ◦ Resolving all hard conflicts ◦ Ordered from best to least fit by the objective function

Page 9: System Demonstration of Interactive Course Timetabling · • Distributed Allows decomposition of timetabling problems when desired (e.g., centrally managed, departmental, and other

Interactive Solver

Branch & Bound with a very limited depth (and time frame) • Typically not more than two additional changes are allowed • User can increase depth and/or time limit and guide the search by filtering the results

Results comparing suggestions with and without 5 second time limitfor the interactive solver with 2 additional changes

Problem pu-fal07-llrpu-fal07-llr pu-spr07-llrpu-spr07-llrClasses 891891 803803Classes fixed in time and room [%] 31.031.0 33.833.8Time limit [s] - 5 - 5No suggestions found [%] 1.6 2.3 0.8 0.8Optimal suggestions found [%] 98.4 51.5 99.2 67.0Complete space explored [%] 98.4 21.5 99.2 33.3Number of suggestions 232.8 174.9 228.6 184.5Number of backtracks 66367.9 2886.9 13949.1 2592.0Time spent [s] 128.6 4.7 39.9 4.2Improvements in objective function [%] +1.1 +0.8 +0.9 +0.7

Page 10: System Demonstration of Interactive Course Timetabling · • Distributed Allows decomposition of timetabling problems when desired (e.g., centrally managed, departmental, and other

Selected PublicationsComplex university course timetablingH. Rudová, T. Müller, K. Murray, Journal of Scheduling, DOI 10.1007/s10951-010-0171-3, To Appear, 2010.

Comprehensive approach to student sectioningT. Müller, K. Murray, Annals of Operations Research, DOI 10.1007/s10479-010-0735-9, To Appear, 2010.

ITC2007 solver description: a hybrid approachT. Müller, Annals of Operations Research, Volume 127, Number 1 (November 2009), Pages 429-446, ISSN 0254-5330 (Print) 1572-9338 (Online), DOI 10.1007/s10479-009-0644-y, 2009.

Modeling and Solution of a Complex University Course Timetabling ProblemK. Murray, T. Müller, H. Rudová, In Edmund Burke and Hana Rudova, editors, Practice and Theory of Automated Timetabling, Selected Revised Papers, Springer-Verlag LNCS 3867, Pages 189-209, 2007.

Minimal Perturbation Problem in Course TimetablingT. Müller, R. Barták, H. Rudová, In Edmund Burke and Michael Trick, editors, Practice and Theory of Automated Timetabling, Selected Revised Papers, Pages 126-146. Springer-Verlag LNCS 3616, 2005.

Minimal Perturbation Problem - A Formal ViewR. Barták, T. Müller, H. Rudová, Neural Network World (2003), Volume 13, Number 5, Pages 501-511.

University Course Timetabling with Soft ConstraintsH. Rudová, K. Murray, Practice And Theory of Automated Timetabling, Selected Revised Papers. Springer-Verlag LNCS 2740, Pages 310-328, 2003.

Page 11: System Demonstration of Interactive Course Timetabling · • Distributed Allows decomposition of timetabling problems when desired (e.g., centrally managed, departmental, and other

Demonstration

http://demo.unitime.org