Tabu Search for Solving Personnel Scheduling Problem

Slides:



Advertisements
Similar presentations
Heuristic Search techniques
Advertisements

© J. Christopher Beck Lecture 17: Tabu Search.
Neural and Evolutionary Computing - Lecture 4 1 Random Search Algorithms. Simulated Annealing Motivation Simple Random Search Algorithms Simulated Annealing.
Lecture 24 Coping with NPC and Unsolvable problems. When a problem is unsolvable, that's generally very bad news: it means there is no general algorithm.
Branch & Bound Algorithms
Greedy vs Dynamic Programming Approach
Re-ranking for NP-Chunking: Maximum-Entropy Framework By: Mona Vajihollahi.
MAE 552 – Heuristic Optimization Lecture 24 March 20, 2002 Topic: Tabu Search.
CAPS RoutePro Routing Environment. Solution Methods. Backhauls. Dispatcher Interface. Demonstration.
Constraint Satisfaction Problems
A TABU SEARCH APPROACH TO POLYGONAL APPROXIMATION OF DIGITAL CURVES.
MAE 552 – Heuristic Optimization Lecture 25 March 22, 2002 Topic: Tabu Search.
Metaheuristics The idea: search the solution space directly. No math models, only a set of algorithmic steps, iterative method. Find a feasible solution.
Elements of the Heuristic Approach
Escaping local optimas Accept nonimproving neighbors – Tabu search and simulated annealing Iterating with different initial solutions – Multistart local.
CS 533 Information Retrieval Systems.  Introduction  Connectivity Analysis  Kleinberg’s Algorithm  Problems Encountered  Improved Connectivity Analysis.
CP Summer School Modelling for Constraint Programming Barbara Smith 2. Implied Constraints, Optimization, Dominance Rules.
Computer Science CPSC 322 Lecture 16 CSP: wrap-up Planning: Intro (Ch 8.1) Slide 1.
FORS 8450 Advanced Forest Planning Lecture 11 Tabu Search.
G5BAIM Artificial Intelligence Methods
Single-solution based metaheuristics. Outline Local Search Simulated annealing Tabu search …
Search CPSC 386 Artificial Intelligence Ellen Walker Hiram College.
FORS 8450 Advanced Forest Planning Lecture 6 Threshold Accepting.
Solving the Logic Satisfiability problem Solving the Logic Satisfiability problem Jesus De Loera.
Lecture 3: Uninformed Search
Optimization Problems
Lecture 7: Constrained Conditional Models
Linear Programming Many problems take the form of maximizing or minimizing an objective, given limited resources and competing constraints. specify the.
CSCI 4310 Lecture 10: Local Search Algorithms
Data Driven Resource Allocation for Distributed Learning
Hard Problems Some problems are hard to solve.
BackTracking CS255.
CS 425 / ECE 428 Distributed Systems Fall 2016 Nov 10, 2016
Backtracking And Branch And Bound
CS 425 / ECE 428 Distributed Systems Fall 2017 Nov 16, 2017
Design and Analysis of Algorithm
Maximal Independent Set
Tabu Search Review: Branch and bound has a “rigid” memory structure (i.e. all branches are completed or fathomed). Simulated Annealing has no memory structure.
B. Jayalakshmi and Alok Singh 2015
Optimizing OSPF Bernard Fortz (Université Libre de Bruxelles)
Computer Science cpsc322, Lecture 14
Subject Name: Operation Research Subject Code: 10CS661 Prepared By:Mrs
Games with Chance Other Search Algorithms
Multi - Way Number Partitioning
Advanced Artificial Intelligence Evolutionary Search Algorithm
Linear Programming.
Study Guide for ES205 Yu-Chi Ho Jonathan T. Lee Nov. 7, 2000
Eight-QueenS Problem: Fuzzy Constraint Satisfaction Problem Using Soar
Heuristic search INT 404.
Haim Kaplan and Uri Zwick
Optimization Problems
Multi-Objective Optimization
Operating systems Process scheduling.
CPU SCHEDULING.
Principles of Computing – UFCFA3-30-1
School of Computer Science & Engineering
Subset of Slides from Lei Li, HongRui Liu, Roberto Lu
Lecture 9: Tabu Search © J. Christopher Beck 2005.
Design & Analysis of Algorithms Combinatorial optimization
EMIS 8373: Integer Programming
Processes and operating systems
Constraint satisfaction problems
Chapter 5. Advanced Search
Incremental Problem Solving for CS1100
NP-Completeness Reference: Computers and Intractability: A Guide to the Theory of NP-Completeness by Garey and Johnson, W.H. Freeman and Company, 1979.
Machine Learning: UNIT-4 CHAPTER-2
Text Categorization Berlin Chen 2003 Reference:
Optimization of Real-Time Systems with Deadline Miss Ratio Constraints
ICS 353: Design and Analysis of Algorithms
Constraint satisfaction problems
Presentation transcript:

Tabu Search for Solving Personnel Scheduling Problem Amol C. Adamuthe Rajankumar S. Bichkar Presenter: Aaron Leonard CS 6385 Nov 9, 2016

Personnel scheduling problem Special case of Constraint Satisfaction Problem Assign tasks to employees Without violating constraints And getting the “best” assignment

Personnel scheduling problem Known number of tasks in advance Time effort required Half day, full day, week, … Person effort required One person, two person, … Priority Dependency on other tasks

Personnel scheduling problem Known set of employee personnel Skillset What can/can't they do? How well can they do it? Especially compared to their coworkers Work schedule

Hard scheduling constraints Must be satisfied, or the schedule is worthless Task effort Each task should have required number of personnel Work schedule regulations Each person should not work more than possible to schedule them Or when they can’t be scheduled Skillset Task should be assigned to person with ability to do it

Soft scheduling constraints OK not to satisfy, but solution is considered worse than if they had been Task should be assigned to person with best skillset for the task Or if not the best, then the 2nd best Or if not the 2nd best, then the 3rd best...

Our personnel scheduling problem Schedule a lab for one week of tasks Tasks 7 tasks Each takes whole week Each requires 1 or 2 people Employees 14 employees Each employee available any given day May work maximum of 16, 24, or 40 hours depending on employee We know the skillsets of each History of hours they work on each task. More hours => bettter skill

Our personnel scheduling problem Skillsets:

Our personnel scheduling problem Tasks 5 tasks require 1 person 2 tasks require 2 persons

Tabu search Applied to any optimization problem Neighborhood search algorithm Start from an initial position Search for best neighbor position Continue until convergence, or run out of time Keep list of “tabu” neighborhood moves, to prevent returning to previous solutions Allow search to proceed in non optimal direction, when it can help avoid local optima Helps “push” the solution out of local optima

Applying tabu search Search space Any schedule We'll see how to restrict searching to partially feasible schedules

Applying tabu search Neighborhood structure Given a schedule, how to find neighbors? Swapping: Take two task assignments, and swap them If person 1 has task A, person 2 has task B in first schedule Person 1 has task B, person 2 has task A in second schedule Neighborhood is all new schedules that we can form by 1 or 2 swaps.

Applying tabu search Initial position Conventionally, pick a random schedule Instead, we start from partially feasible schedule Pick a schedule where work effort constraints are satisfied Just randomly assign people to each task until that’s done Neighborhood search won’t let this constraint become violated

Applying tabu search Tabu list What is tabu? Swapping Tabu tenure length List of size 15, FIFO behavior

Applying tabu search Objective function Weighted sum of constraint violations H is a hard constraint violated by the solution Whether the person is assigned too much work Whether the person is assigned a task they aren't qualified for S is a soft constraint violated by the solution Whether the person is assigned a task they aren't the best at The weight for hard constraint violations should be much larger than soft constraint Concrete numbers aren't specified in the paper

Applying tabu search Aspiration criteria Should we sometimes allow tabu moves? Allow a tabu move, if objective function value is higher than the current known maximum Since the new solution hasn’t been seen and is better Probabilistic neighborhood evaluation Only evaluate a random subset of the neighborhood, to save time

Results Tabu will find some optimal schedule Is it globally optimal? Search tree is gigantic, 9^70 distinct nodes We cannot exhaustively search Is it good? Compare to solutions found using other algorithms Yes

Evaluating schedule Enumerating skillset score Employee has experience with 5 tasks 32 hrs, 36 hrs, 48 hrs, 64 hrs, 68 hrs Value for task is the rank of time spent on that task If employee is assigned that task in the schedule In order, they receive values 1, 2, 3, 4, 5 If a schedule assigns that task, add the value to schedule’s score Compute and sum for all employees

Evaluating schedule Weighted skillset score Take variation of hours into account Should be more precise Employee has experience with 5 tasks 32 hrs, 36 hrs, 48 hrs, 64 hrs, 68 hrs Value for task is the fraction of time spent on that task, compared to total hours worked in skillset In order, they receive values 0.129, 0.145, 0.194, 0.258, 0.274 If a schedule assigns that task, add the value to schedule’s score Compute and sum for all employees

Schedule quality

Convergence time

Generalizing Does it generalize? We only tried a single problem instance so far What happens if we try with different employee skillsets? 5 “simple” skillsets Tabu gives better results in less time 5 “complex” skillsets Tabu is only better in two instances

Generalizing 6 “simple” skillsets Tabu gives better results in less time

Generalizing 4 “complex” skillsets Tabu is only better in two instances

Conclusion Defined the personnel scheduling problem as an optimization problem Solved it using tabu search Compared the solution to prior results, and found it to be Better Less time to converge Compared prior results for new solution instances Tabu still better at simple instances Tabu only better in 2 of 4 of complex instances