© J. Christopher Beck 20051 Lecture 19: Timetabling with Operator Constraints.

Slides:



Advertisements
Similar presentations
Constraint Satisfaction Problems
Advertisements

Constraint Satisfaction Patrick Prosser. An Example, Exam Timetabling Someone timetables the exams We have a number of courses to examine how many? Dept.
Constraint Satisfaction Problems Russell and Norvig: Chapter
University of Toronto Mechanical & Industrial Engineering An Introduction to Constraint Programming J. Christopher Beck Dept. of Mechanical & Industrial.
Constraint Satisfaction Problems
Register Usage Keep as many values in registers as possible Register assignment Register allocation Popular techniques – Local vs. global – Graph coloring.
1 Constraint Satisfaction Problems A Quick Overview (based on AIMA book slides)
Lecture 6: Job Shop Scheduling Introduction
© J. Christopher Beck Lecture 7: Shifting Bottleneck.
© J. Christopher Beck Lecture 17: Tabu Search.
Artificial Intelligence Constraint satisfaction problems Fall 2008 professor: Luigi Ceccaroni.
Constraint Satisfaction problems (CSP)
Lecture 10: Integer Programming & Branch-and-Bound
© J. Christopher Beck Lecture 15: CP Search.
Graph Algorithms: Minimum Spanning Tree We are given a weighted, undirected graph G = (V, E), with weight function w:
4 Feb 2004CS Constraint Satisfaction1 Constraint Satisfaction Problems Chapter 5 Section 1 – 3.
© J. Christopher Beck Lecture 24: Workforce Scheduling 2.
© J. Christopher Beck Lecture 4: Project Planning 1.
Foundations of Constraint Processing, Fall 2005 October 20, 2005Ordering heuristics1 Foundations of Constraint Processing CSCE421/821, Fall 2005:
Constraint Satisfaction Problems
© J. Christopher Beck Lecture 18: Timetabling with Workforce Capacity.
Chapter 5 Outline Formal definition of CSP CSP Examples
Exam Timetabling Problem using Graph Coloring
4/18/2005EE5621 EE562 ARTIFICIAL INTELLIGENCE FOR ENGINEERS Lecture 7, 4/25/2005 University of Washington, Department of Electrical Engineering Spring.
CSE 589 Applied Algorithms Spring Colorability Branch and Bound.
Constraint Satisfaction Problems
© J. Christopher Beck Lecture 18: Service Scheduling & Timetabling.
© J. Christopher Beck Lecture 5: Project Planning 2.
I am Patrick Prosser I am a senior lecturer at Glasgow (and Strathclyde till mid April) I teach algorithms & data structures in java I am a member of.
© J. Christopher Beck Lecture 13: Modeling in Constraint Programming.
Constraint Satisfaction Problems Chapter 6. Review Agent, Environment, State Agent as search problem Uninformed search strategies Informed (heuristic.
Constraint Satisfaction Read Chapter 5. Model Finite set of variables: X1,…Xn Variable Xi has values in domain Di. Constraints C1…Cm. A constraint specifies.
Chapter 5 Section 1 – 3 1.  Constraint Satisfaction Problems (CSP)  Backtracking search for CSPs  Local search for CSPs 2.
Stocs – A Stochastic CSP Solver Bella Dubrov IBM Haifa Research Lab © Copyright IBM.
CP Summer School Modelling for Constraint Programming Barbara Smith 2. Implied Constraints, Optimization, Dominance Rules.
Constraint Satisfaction CPSC 386 Artificial Intelligence Ellen Walker Hiram College.
Hande ÇAKIN IES 503 TERM PROJECT CONSTRAINT SATISFACTION PROBLEMS.
Chapter 5: Constraint Satisfaction ICS 171 Fall 2006.
© J. Christopher Beck Lecture 24: Workforce Scheduling.
© J. Christopher Beck Lecture 6: Time/Cost Trade-off in Project Planning.
© J. Christopher Beck Lecture 17: Introduction to Timetabling.
Lecture 9: Simplified Shifting Bottleneck
© J. Christopher Beck Lecture 25: Workforce Scheduling 3.
Chapter 5 Constraint Satisfaction Problems
Constraints and Search Toby Walsh Cork Constraint Computation Centre (4C) Logic & AR Summer School, 2002.
© J. Christopher Beck Lecture 21: IP and CP Models for Sports Scheduling.
An Introduction to Artificial Intelligence Lecture 5: Constraint Satisfaction Problems Ramin Halavati In which we see how treating.
CHAPTER 5 SECTION 1 – 3 4 Feb 2004 CS Constraint Satisfaction 1 Constraint Satisfaction Problems.
1. 2 Outline of Ch 4 Best-first search Greedy best-first search A * search Heuristics Functions Local search algorithms Hill-climbing search Simulated.
Register Usage Keep as many values in registers as possible Keep as many values in registers as possible Register assignment Register assignment Register.
EXAMPLE: MAP COLORING. Example: Map coloring Variables — WA, NT, Q, NSW, V, SA, T Domains — D i ={red,green,blue} Constraints — adjacent regions must.
© J. Christopher Beck Lecture 16: Local Search.
1 Constraint Satisfaction Problems (CSP). Announcements Second Test Wednesday, April 27.
ARTIFICIAL INTELLIGENCE (CS 461D) Dr. Abeer Mahmoud Computer science Department Princess Nora University Faculty of Computer & Information Systems.
CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12
CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12
Basic Project Scheduling
Constraint Satisfaction Problems Lecture # 14, 15 & 16
Lecture 11: Tree Search © J. Christopher Beck 2008.
Basic Project Scheduling
CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12
Artificial Intelligence
Lecture 9: Tabu Search © J. Christopher Beck 2005.
Constraints and Search
Constraint Satisfaction Problems. A Quick Overview
Artificial Intelligence
CS 8520: Artificial Intelligence
Constraint Satisfaction Problems
Constraint Satisfaction Problems (CSP)
Presentation transcript:

© J. Christopher Beck Lecture 19: Timetabling with Operator Constraints

© J. Christopher Beck Outline Adding Operator/Tooling Constraints Graph coloring Heuristics – Brelaz Example Minimizing Timetabling Costs Algorithm Example 9.5.5

© J. Christopher Beck People are Different So far we have been assuming that we have W people that are all equivalent Any set of W j people could do activity j Obviously this isn’t true in many applications E.g., Medical or language specialties

© J. Christopher Beck Operator or Tool Constraints The operator has to have specific skills to do the activity Able to speak French, certified accountant A specific tool is needed 1/8” drill bit, refrigerator truck If two activities require the same operator or tool, they cannot be done at the same time

© J. Christopher Beck Restricted Problem Assume some set of specific people are needed to do each activity All activities have a duration of 1 Problem is still hard Equivalent to the graph coloring problem Aka “node coloring”, “vertex coloring”

© J. Christopher Beck Graph Coloring Color each node such that No two connected nodes have the same color Use the minimum number of colors

© J. Christopher Beck Mapping from Graph Coloring to Timetabling Nodes are activities Arcs mean the activities require the same operator Colors are time slots Minimizing the number of colors is minimizing makespan

© J. Christopher Beck Constraint Programming for Graph Coloring Remember CP Make heuristic decisions Color a node Propagate Remove that color from the domain of nodes connected to the node you just colored (This level of propagation is called “forward checking”)

© J. Christopher Beck CP for GC “Domain”

© J. Christopher Beck CP for GC Algorithm Step 0: Propagate Remove the color from all neighbors nodes Color nodes with singleton domains Step 1: Pick a node and color it Step 2: Propagate If a domain is empty, undo last color and assign a different color, goto 2 Else goto 1

© J. Christopher Beck Variable and Value Ordering Heuristics How do you pick a node (variable) to color next? Smallest domain first Maximum forward degree How do you pick a color (value) for that node? Randomly Lexicographically Order colors and assign the lowest possible

© J. Christopher Beck Brelaz Heuristic Choose node with smallest domain Break ties with maximum forward degree Forward degree: # arcs to uncolored nodes Choose colors lexicographically

© J. Christopher Beck Example Schedule 7 one-hour meetings in 4 hours Represent as a GC problem and use CP with Brelaz heuristic meeting Gary Hamilton Izak Reha

© J. Christopher Beck Other Examples To Look At Example OPL project mapgr.prj On ECF and Pinedo CDROM

© J. Christopher Beck A More General Problem There is a “slot cost”, c’ jt, if activity j is assigned to slot t There is a “changeover cost”,  (a i,a j ), if a i and a j are scheduled close together E.g.,  (a i,a j ) = 5 * |slot(a i ) – slot(a j )|  (a i,a j ) = 0, if a i and a j don’t conflict Objective is to minimize the sum of all slot and changeover costs See Algorithm 9.5.4!

© J. Christopher Beck And Another One: Multilingual Call Centre Assign calls to minimize makespan? Can this be represented as a GC problem? PersonLanguages AlexEnglish, French, German BarbaraGerman, Russian, Korean CharlesSerbo-Croatian, Polish DavidKorean, French, Polish EllenMandarin, Russian, English CallsLanguage 1English 2Korean 3 4French 5Russian 6Polish CallsLanguage 7German 8Russian 9Polish 10Mandarin 11French 12Russian

© J. Christopher Beck Modeling is VERY Important Remember back to Lec11 on CP If you have some solution technique (CP, GC, IP, …) an extremely important step is trying to fit your problem to the technique What do the nodes, arcs, colors represent? Is this a useful representation?