System Demonstration of Interactive Course Timetabling Tomᡠs M uller¨ · Keith Murray · Hana Rudová * 1 Introduction This system demonstration presents.

Slides:



Advertisements
Similar presentations
Interaction Design: Visio
Advertisements

Heuristic Search techniques
A Toolbox for Blackboard Tim Roberts
1 Constraint Satisfaction Problems A Quick Overview (based on AIMA book slides)
CS162 Week 2 Kyle Dewey. Overview Continuation of Scala Assignment 1 wrap-up Assignment 2a.
Paperless Online Payroll, Integrated HR & Report Generating System.
Session B Wrap-up Summary and Commentary Roman Barták Charles University (Czech Republic)
Project Proposal.
EE 553 Integer Programming
6 th Annual Focus Users’ Conference 6 th Annual Focus Users’ Conference Scheduling Requests and Request Reports Presented by: Sara Sayasane Presented by:
Best-First Search: Agendas
1 A Balanced Introduction to Computer Science, 2/E David Reed, Creighton University ©2008 Pearson Prentice Hall ISBN Chapter 17 JavaScript.
Garland Library Online Orientation. Introduction  This portion of the Online orientation is intended to help library users gain the basic knowledge and.
Chapter 12: Expert Systems Design Examples
1 A Web-Based Integral Evaluator: A Demonstration of the Successful Integration of WebEQ, Maple, and Java Wanda M. Kunkle Department of Mathematics & Computer.
1 Optimisation Although Constraint Logic Programming is somehow focussed in constraint satisfaction (closer to a “logical” view), constraint optimisation.
Welcome to Turnitin.com’s Peer Review! This tour will take you through the basics of Turnitin.com’s Peer Review. The goal of this tour is to give you.
WebCT: CE-6 Group Manager. Working with Groups: In WebCT Ce-6 you can: –create custom groups. –create multiple groups. –create groups with sign-up sheets.
Abstract The University Class Scheduler (U.C.S) is an innovative scheduling tool. It is intended to be used by major Universities to schedule classes into.
A game of logic where the player must assign the numbers 1..9 to cells on a 9x9 grid. The placement of the numbers must be such that every number must.
Example 9.1 Goal Programming | 9.3 | Background Information n The Leon Burnit Ad Agency is trying to determine a TV advertising schedule.
Ken Bayer, Josh Snyder, and Berthe Y. Choueiry Constraint Systems Laboratory University of Nebraska-Lincoln A Constraint-Based Approach to Solving Minesweeper.
Garland Library Online Orientation. Introduction  This portion of the Online orientation is intended to help library users gain the basic knowledge and.
Irwin/McGraw-Hill Copyright © 2000 The McGraw-Hill Companies. All Rights reserved Whitten Bentley DittmanSYSTEMS ANALYSIS AND DESIGN METHODS5th Edition.
Adobe Forms THE FORM ELEMENT PANEL. Creating a form using the Adobe FormsCentral is a quick and easy way to distribute a variety of forms including surveys.
TIBCO Designer TIBCO BusinessWorks is a scalable, extensible, and easy to use integration platform that allows you to develop, deploy, and run integration.
Chapter 9 Introduction to ActionScript 3.0. Chapter 9 Lessons 1.Understand ActionScript Work with instances of movie clip symbols 3.Use code snippets.
Students: Nadia Goshmir, Yulia Koretsky Supervisor: Shai Rozenrauch Industrial Project Advanced Tool for Automatic Testing Final Presentation.
LÊ QU Ố C HUY ID: QLU OUTLINE  What is data mining ?  Major issues in data mining 2.
DEXA 2005 Quality-Aware Replication of Multimedia Data Yicheng Tu, Jingfeng Yan and Sunil Prabhakar Department of Computer Sciences, Purdue University.
Getting started on informaworld™ How do I register my institution with informaworld™? How is my institution’s online access activated? What do I do if.
XP New Perspectives on Microsoft Access 2002 Tutorial 51 Microsoft Access 2002 Tutorial 5 – Enhancing a Table’s Design, and Creating Advanced Queries and.
Catalyst Preview: Advisor Center and Degree Audit A Presentation by Alejo Delgado and Chad Wells.
London April 2005 London April 2005 Creating Eyeblaster Ads The Rich Media Platform The Rich Media Platform Eyeblaster.
London April 2005 London April 2005 Creating Eyeblaster Ads The Rich Media Platform The Rich Media Platform Eyeblaster.
Introduction to Sequence Diagrams
Presented by Abirami Poonkundran.  Introduction  Current Work  Current Tools  Solution  Tesseract  Tesseract Usage Scenarios  Information Flow.
Copyright © 2007, Oracle. All rights reserved. Managing Concurrent Requests.
Database Applications – Microsoft Access Lesson 6A Designing Custom Forms Updated F13 24 slides in presentation 1.
Information Systems and Network Engineering Laboratory II DR. KEN COSH WEEK 1.
SunGuide® Software Development Project Release 4.3 Express Lanes Enhancements Design Review December 15, 2009 December 15, 20091R4.3 Design Review.
University Course Timetabling with Soft Constraints Hana Rudova, Keith Murray Presented by: Marlien Edward.
The Relativistic Quantum Field Calculator for Elementary Particle Interactions Brandon Green, Dr. Edward Deveney (Mentor) Department of Physics, Bridgewater.
Database Design and Management CPTG /23/2015Chapter 12 of 38 Functions of a Database Store data Store data School: student records, class schedules,
How to Read Research Papers? Xiao Qin Department of Computer Science and Software Engineering Auburn University
CP Summer School Modelling for Constraint Programming Barbara Smith 2. Implied Constraints, Optimization, Dominance Rules.
Reports and Learning Resources Module 5 1. SLMS Primary Administrator Training Module 5: Reports and Learning Resources 2.
1 CMPT 275 High Level Design Phase Modularization.
Constraint Systems Laboratory 11/26/2015Zhang: MS Project Defense1 OPRAM: An Online System for Assigning Capstone Course Students to Sponsored Projects.
March 2004 At A Glance autoProducts is an automated flight dynamics product generation system. It provides a mission flight operations team with the capability.
Algorithm Design Methods (II) Fall 2003 CSE, POSTECH.
The Refereeing Module of the SPMS FEL2005: August Heinz-Dieter Nuhn – Scientific Editor Beck Reitmeyer – Conference Editor Referee = Reviewer = Expert.
Introduction Scheduling algorithms were known many years ago, but currently there are no good tools used to work with those algorithms. Existing tools.
Chapter 3 Response Charts.
Problem Reduction So far we have considered search strategies for OR graph. In OR graph, several arcs indicate a variety of ways in which the original.
Open Incremental Model Checking (OIMC) and the Role of Contracts Model-Based Programming and Verification.
Securing and Sharing Workbooks Lesson 11. The Review Tab Microsoft Excel provides several layers of security and protection that enable you to control.
NAS101, Appendex A, Page 1 DOCUMENTATION This section briefly describes the MSC.Nastran documentation. A quick overview of these documents is shown in.
10th International Conference of the Practice and Theory of Automated Timetabling PATAT 2014, August 2014, York, United Kingdom Bullet TimeTabler.
Fall 2016/Winter 2017 Timetable in DCU
WS 9-1 ANSYS, Inc. Proprietary © 2009 ANSYS, Inc. All rights reserved. February 27, 2009 Inventory # Workshop 9 Taylor Impact Test – “What if” Study.
Information Systems and Network Engineering Laboratory I DR. KEN COSH WEEK 1.
Editor Guide: Sending Author Revision Reminders in Editorial Manager™ Created by J. Strusz 06/01/2011.
Investigate Plan Design Create Evaluate (Test it to objective evaluation at each stage of the design cycle) state – describe - explain the problem some.
Dillon: CSE470: ANALYSIS1 Requirements l Specify functionality »model objects and resources »model behavior l Specify data interfaces »type, quantity,
Data Entry Format 2017.
Adding Assignments and Learning Units to Your TSS Course
Study Guide for ES205 Yu-Chi Ho Jonathan T. Lee Nov. 7, 2000
Chapter 3 Resolution and Design.
Presentation transcript:

System Demonstration of Interactive Course Timetabling Tomᡠs M uller¨ · Keith Murray · Hana Rudová * 1 Introduction This system demonstration presents an approach to interactive timetabling used by the UniTime university timetabling system. This application, which is publicly available under an open source license, has been successfully applied at Purdue University [8], a large pub- lic university (39,000 students) with a broad spectrum of programs at the undergraduate and graduate levels. The complete system includes course timetabling, examination timetabling, event management, and student sectioning. UniTime has a completely web-based interface using the Enterprise Edition of Java (J2EE). Hibernate is used to persist data in an SQL-enabled relational database (e.g., MySQL or Oracle) and an XML interface can be used to tie the application with other systems used by a university. The course timetabling, examination timetabling and student sectioning problems are modeled as constraint satisfaction and optimization problems (CSOP) and solved using the solver library [3]. This constraint-based local search framework has also been successfully applied to the International Timetabling Competition 2007, where it was among the finalists in all three tracks and the winner of two [4]. A major goal of the system design has been to facilitate requests for changes in the timetable that inevitably occur. Interactive timetabling was previously explored in [7], con- centrating on interactive removal of clashes. [1] investigated explanations in constraint pro- gramming to handle dynamic changes in the timetable. Generation of a timetable was in- teractively controlled by the user in [2]. Earlier work by the present authors also examined construction of a timetable using minimal changes to an initial solution [5]. The work pre- * Hana Rudová is supported by the Ministry of Education, Youth and Sports of the Czech Republic under the research intent No T.Muller¨ · K.Murray Space Management and Academic Scheduling, Purdue University 400 Centennial Mall Drive, West Lafayette, IN , USA H. Rudová Faculty of Informatics, Masaryk University Botanická 68a, Brno , Czech Republic

sented here encompasses an interactive mode for exploring possible changes, and easily making them, which was also found to be necessary. While this system demonstration fo- cuses on making interactive changes to the course timetable, a similar approach is also used within the application for examination timetabling and event scheduling. Furthermore, an interactive phase of student sectioning (referred to as online student sectioning [6]) is cur- rently being developed. 2 Interactive Timetabling At Purdue, the complete university timetabling problem has been decomposed into a series of subproblems solved at the academic department level. Although each subproblem is solved separately, each solution considers all of the other problems for which a timetable has already been created. This coordination across problems is especially important when making interactive modifications to an existing timetable that may impact several others. The course timetabling user interface consist of two parts: a data entry portion and a course timetabling solver. Basic data related to rooms, instructors, and courses (including all constituent classes) are entered via a series of web forms along with any associated preferences or requirements. Once all data have been entered into the system, the timetabling solver is used to create an automated timetable for the given (sub)problem. Subsequently, most changes are made using interactive timetabling. An exception is when multiple changes are desired in the input data. In this case, a new timetable is built from scratch or by using the minimal perturbation solver [5] which creates a solution to the modified timetabling problem while trying to minimize changes between the original and the new solution. The same constraint model is used for both automated and interactive timetabling, with the same objective function consisting of satisfaction of – preferences on time and rooms, – distribution preferences that can be put between two or more classes (e.g., same room, back-to-back, or precedence), – student conflicts (i.e., students that are expected to take two classes that either overlap in time or are back-to-back in rooms that are too far apart), – divergence from the original solution, expressed as the number of students affected by a time change (room changes are usually consider less harmful), along with several less important criteria. During interactive timetabling, the solver does not make any decisions, It does, however, provide users with a set of feasible solutions (and their associated costs) that can be reached via a backtracking process of limited depth. The user then determines the best tradeoff between accommodating a desired change and the costs imposed on the rest of the solution with a knowledge of what those costs will be. Moreover, to avoid a need for changing the input data, some of the hard constraints can be relaxed in the interactive mode. This means, for instance, that the user can put a class into a room different from the ones that were initially required. This is accomplished by making these hard constraints soft, but with too large of penalty imposed for the solver to suggest a change violating the constraint. The timetabling user interface contains a set of pages that display various aspects of the current timetable. The user can view the classes in a time-resource grid for each resource (room, instructor, etc.), a list of assigned classes, or a list of yet-to-be-assigned classes. Changes to preferences or requirements made between the original and the current timetable, a history of the changes made using the interactive solver (which can also be used to easily 574

undo such a change if needed), and various reports displaying room utilization, student conflicts, and violation of other soft constraints are also available. Fig. 1 Display of a timetable for given rooms. A consistent color coding is used throughout the application. Required times or rooms are marked in blue, prohibited in red, light green and dark green for preferred and strongly preferred, yellow and orange, respectively, for discouraged and strongly discouraged. Fig- ure 1 illustrates the timetable display provided for several rooms. The user can modify the assignment of one or more classes by clicking on a class in any of these views. Each user interaction with the timetable can be seen as a sequence of changes to indi- vidual classes (beginning with the user selecting a class that needs to be changed). Figure 2 illustrates the information available to the user during each step of considering changes to the selected class of interest. The user may explore different options, consider various types of changes to the class, commit selected choices, or discard all changes considered. Selected Assignments describe changes already made to the timetable during the current interaction. Conflicting Assignments inform the user of any conflicts created in the timetable as a result of the selected assignments. Suggestions are optional changes the user may choose from that result in a feasible timetable. In each step (of an interaction), the user has the following possibilities: – Commit the change. At this point, the actual timetable is modified, all the selected as- signments are assigned and the conflicting classes, if any remain, are unassigned. The interaction is terminated. – Abandon the change. The interaction is terminated without making any changes to the actual timetable. – Select a suggestion. One of the suggestions is selected by the user, it is displayed to- gether with the selected assignments. The user can still select another suggestion or try assign the class manually in the next step, e.g., if he or she is not satisfied with the resultant quality of the solution

Fig. 2 Interactive solver interface for MA after selection of a new time assignment. – Select a placement. Instead of choosing a suggestion, user picks a time and/or a room manually (for the selected class). This assignment is added into the list of selected as- signments and the list of conflicts is recomputed together with the suggestions. The user may choose a different placement in the next step, e.g., if there are too many classes conflicting with the new assignment. – Remove a selected assignment. An assignment is removed from the list of selected as- signments, conflicts and suggestions are recomputed. – Select another class. A different class (e.g., one of the conflicting classes) is selected. Suggestions are recomputed to include the selected class. Besides the above actions, the user has a wide variety of additional choices that may help to find a desired change. For instance, the list of available suggestions can be filtered by additional criteria or the number of allowed additional changes of the provided suggestions can be increased. Suggestions are computed using a branch and bound algorithm of a limited depth (ini- tially allowing 2 additional changes). This process starts from the list of selected assign- ments, trying all possible placements for the selected class and resolving hard conflicts cre- 576

ated by these changes. Only solutions that do not violate any hard constraints are allowed, which along with the quality of the n-th best solution found ( n being the number of sug- gestions to be displayed) bounds the search. A more formal description of the algorithm is available in [8]. It is also shown here, based on comparison runs with no time limit on the branch and bound solutions, that a 5 second time limit is sufficient to present an optimal suggestion incorporating up to two additional changes in more than half of the cases (for the timetabling problem at Purdue). This time limit is important to keep the user interface interactive; however, when the limit is reached, the user has the option (e.g., when no desired suggestion is found) to recompute these suggestions with an increased time limit. 3 Conclusion An extension of the UniTime course timetabling application has been presented that allows users to modify automatically computed timetables when a small number of changes are necessary to accommodate new parameters added after a timetable has been published. This interactive component allows the user to to find high quality options for meeting the additional problem parameters and deciding whether to modify the previous solution. The presented application is publicly available under an Open Source license 1, and can be down-loaded from the UniTime web site This site also contains information about ongoing research, online documentation for the described system, and various real-life benchmark data sets for course timetabling, examination timetabling and student sectioning problems. References 1.Hadrien Cambazard, Fabien Demazeau, Narendra Jussien, and Philippe David. Interactively solving school timetabling problems using extensions of constraint programming. In Edmund Burke and Michael Trick, editors, Practice and Theory of Automated Timetabling V, pages 190–207. Springer- Verlag LNCS 3616, Hans-Joachim Goltz and Dirk Matzke. Combined interactive and automatic timetabling. In Proceedings of the Practical Application of Constraint Technology and Logic Programming, pages 529–535. The Practical Application Company Ltd, Tomás ˇ Mu¨ller. Constraint-based Timetabling. PhD thesis, Charles University in Prague, Faculty of Mathematics and Physics, Tomás ˇ M¨uller. ITC2007 solver description: a hybrid approach. Annals of Operations Research, 127:429– 446, Tomás ˇ M¨uller, Roman Barták, and Hana Rudová. Minimal perturbation problem in course timetabling. In Edmund Burke and Michael Trick, editors, Practice and Theory of Automated Timetabling, Selected Revised Papers, pages 126–146. Springer-Verlag LNCS 3616, Tomás ˇ M¨uller and Keith Murray. Comprehensive approach to student sectioning. In PATAT 2008– Proceedings of the 7th International Conference on the Practice and Theory ofAutomated Timetabling, Montreal, Canada, Sylvain Piechowiak, Jingxua Ma, and René Mandiau. An open interactive timetabling tool. In Edmund Burke and Michael Trick, editors, Practice and Theory ofAutomated Timetabling V, pages 34– 50. Springer-Verlag LNCS 3616, Hana Rudová, Tomás ˇ M¨uller, and Keith Murray. Complex university course timetabling. Journal of Scheduling, To appear. 1 Constraint-based solver, including course timetabling, examination timetabling and student sectioning extensions is available under GNU Lesser General Public License (LGPL), the complete timetabling appli- cation is available under GNU General Public License (GPL)