Minimum Dissatisfaction Personnel Scheduling Mugurel Ionut Andreica Politehnica University of Bucharest Computer Science Department Romulus Andreica, Angela.

Slides:



Advertisements
Similar presentations
Algorithm Design Methods (I) Fall 2003 CSE, POSTECH.
Advertisements

Algorithm Design Methods Spring 2007 CSE, POSTECH.
Linear Time Methods for Propagating Beliefs Min Convolution, Distance Transforms and Box Sums Daniel Huttenlocher Computer Science Department December,
ECE 667 Synthesis and Verification of Digital Circuits
Adopt Algorithm for Distributed Constraint Optimization
Lesson 08 Linear Programming
Linear Programming. Introduction: Linear Programming deals with the optimization (max. or min.) of a function of variables, known as ‘objective function’,
Chapter 3 Workforce scheduling.
Greedy Algorithms.
CHEN 4460 – Process Synthesis, Simulation and Optimization
Linear Programming – Simplex Method
Evaluating Heuristics for the Fixed-Predecessor Subproblem of Pm | prec, p j = 1 | C max.
Chapter 5 Fundamental Algorithm Design Techniques.
Greed is good. (Some of the time)
Online Scheduling with Known Arrival Times Nicholas G Hall (Ohio State University) Marc E Posner (Ohio State University) Chris N Potts (University of Southampton)
5-1 Chapter 5 Tree Searching Strategies. 5-2 Satisfiability problem Tree representation of 8 assignments. If there are n variables x 1, x 2, …,x n, then.
Greedy Algorithms Basic idea Connection to dynamic programming
Linear Programming 1.6 (M3) p. 30 Test Friday !!.
From HRT-HOOD to ADA95 Real-Time Systems Lecture 5 Copyright, 2001 © Adam Czajka.
Greedy Algorithms Basic idea Connection to dynamic programming Proof Techniques.
Efficient Algorithmic Techniques for Several Multidimensional Geometric Data Management and Analysis Problems Mugurel Ionut Andreica Politehnica University.
1 Pseudo-polynomial time algorithm (The concept and the terminology are important) Partition Problem: Input: Finite set A=(a 1, a 2, …, a n } and a size.
Lowest common ancestors. Write an Euler tour of the tree LCA(1,5) = 3 Shallowest node.
Greedy Algorithms Reading Material: –Alsuwaiyel’s Book: Section 8.1 –CLR Book (2 nd Edition): Section 16.1.
1 More On Dynamic programming Algorithms Shortest path with edge constraint: Let G=(V, E) be a directed graph with weighted edges. Let s and v be two vertices.
Optimal Throughput Allocation in General Random Access Networks P. Gupta, A. Stolyar Bell Labs, Murray Hill, NJ March 24, 2006.
Jean-Charles REGIN Michel RUEHER ILOG Sophia Antipolis Université de Nice – Sophia Antipolis A global constraint combining.
Rossella Lau Lecture 1, DCO20105, Semester A, DCO Data structures and algorithms  Lecture 1: Introduction What this course is about:  Data.
Linear Programming (LP)
1 Branch and Bound Searching Strategies 2 Branch-and-bound strategy 2 mechanisms: A mechanism to generate branches A mechanism to generate a bound so.
5-1 Chapter 5 Tree Searching Strategies. 5-2 Breadth-first search (BFS) 8-puzzle problem The breadth-first search uses a queue to hold all expanded nodes.
Linear Programming – Max Flow – Min Cut Orgad Keller.
1 IOE/MFG 543 Chapter 7: Job shops Sections 7.1 and 7.2 (skip section 7.3)
HELSINKI UNIVERSITY OF TECHNOLOGY *Laboratory for Theoretical Computer Science Helsinki University of Technology **Department of Computing Science University.
LP formulation of Economic Dispatch
Linear Programming Operations Research – Engineering and Math Management Sciences – Business Goals for this section  Modeling situations in a linear environment.
Introduction to Mathematical Programming OR/MA 504 Chapter 5 Integer Linear Programming.
Decision Optimization Techniques for Efficient Delivery of Multimedia Streams Mugurel Ionut Andreica, Nicolae Tapus Politehnica University of Bucharest,
Column Generation Approach for Operating Rooms Planning Mehdi LAMIRI, Xiaolan XIE and ZHANG Shuguang Industrial Engineering and Computer Sciences Division.
Computer Science Department University of Pittsburgh 1 Evaluating a DVS Scheme for Real-Time Embedded Systems Ruibin Xu, Daniel Mossé and Rami Melhem.
Offline Algorithmic Techniques for Several Content Delivery Problems in Some Restricted Types of Distributed Systems Mugurel Ionut Andreica, Nicolae Tapus.
Optimal Scheduling of File Transfers with Divisible Sizes on Multiple Disjoint Paths Mugurel Ionut Andreica Polytechnic University of Bucharest Computer.
Spreadsheet Modeling & Decision Analysis:
Spreadsheet Modeling and Decision Analysis, 3e, by Cliff Ragsdale. © 2001 South-Western/Thomson Learning. 6-1 Integer Linear Programming Chapter 6.
Solve problems by using linear programming.
Maximum Reliability K-Hop Multicast Strategy in Tree Networks Mugurel Ionut Andreica, Nicolae Tapus Polytechnic University of Bucharest Computer Science.
The LCA Problem Revisited
Euro-Par, A Resource Allocation Approach for Supporting Time-Critical Applications in Grid Environments Qian Zhu and Gagan Agrawal Department of.
3 -1 Chapter 3 The Greedy Method 3 -2 A simple example Problem: Pick k numbers out of n numbers such that the sum of these k numbers is the largest.
Efficient Data Structures for Online QoS-Constrained Data Transfer Scheduling Mugurel Ionut Andreica, Nicolae Tapus Politehnica University of Bucharest.
알고리즘 설계 및 분석 Foundations of Algorithm 유관우. Digital Media Lab. 2 Chap4. Greedy Approach Grabs data items in sequence, each time with “best” choice, without.
Network Flow. Network flow formulation A network G = (V, E). Capacity c(u, v)  0 for edge (u, v). Assume c(u, v) = 0 if (u, v)  E. Source s and sink.
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
Two Discrete Optimization Problems Problem: The Transportation Problem.
4-1 Copyright © 2010 Pearson Education, Inc. Publishing as Prentice Hall Linear Programming: Modeling Examples Chapter 4- Part2.
Parallel Machine Scheduling
1 Inventory Control with Time-Varying Demand. 2  Week 1Introduction to Production Planning and Inventory Control  Week 2Inventory Control – Deterministic.
Lagrangean Relaxation
LINEAR PROGRAMMING 3.4 Learning goals represent constraints by equations or inequalities, and by systems of equations and/or inequalities, and interpret.
3-5: Linear Programming. Learning Target I can solve linear programing problem.
1 Comparative Study of two Genetic Algorithms Based Task Allocation Models in Distributed Computing System Oğuzhan TAŞ 2005.
Distributed Control and Autonomous Systems Lab. Sang-Hyuk Yun and Hyo-Sung Ahn Distributed Control and Autonomous Systems Laboratory (DCASL ) Department.
Section 3.5 Linear Programing In Two Variables. Optimization Example Soup Cans (Packaging) Maximize: Volume Minimize: Material Sales Profit Cost When.
Approximation Algorithms
Exam 2 LZW not on syllabus. 73% / 75%.
Data structures and algorithms
Algorithm Design Methods
1.6 Linear Programming Pg. 30.
IIS Progress Report 2016/01/18.
Integer Linear Programming
Presentation transcript:

Minimum Dissatisfaction Personnel Scheduling Mugurel Ionut Andreica Politehnica University of Bucharest Computer Science Department Romulus Andreica, Angela Andreica Commercial Academy Satu Mare

Minimum Dissatisfaction Personnel Scheduling 2 Summary Motivation Personnel Scheduling Model Scheduling with Personnel Ordering Restrictions Scheduling with Increasing Optimal Employee Times Conclusions & Future Work

Minimum Dissatisfaction Personnel Scheduling 3 Motivation personnel scheuling objectives –maximize productivity –minimize losses –maximize profit –maximize satisfaction –minimize dissatisfaction

Minimum Dissatisfaction Personnel Scheduling 4 Personnel Scheduling Model fixed quantity of work –arbitrarily decomposable into a sequence of activities N employees employee dissatisfaction=time dependent linear function constraints –ordering constraints –time constraints

Minimum Dissatisfaction Personnel Scheduling 5 Scheduling with Personnel Ordering Restrictions (1/5) any number of activities –take “zero” time to execute –ta i =time when activity i is scheduled dissatisfaction of employee j: ds(j,t) –ds(j,t)=w j ·|t-te j | –w j =“weight” of the employee j –te j =optimal employee time (for employee j) a(j)=the activity to which employee j is assigned total dissatisfaction:

Minimum Dissatisfaction Personnel Scheduling 6 Scheduling with Personnel Ordering Restrictions (2/5) we can choose –total number of activities –times when activities are executed ordering of activties: ta i i<j –assignment of employees to activities objective: minimize total dissatisfaction constraints –u a(u)≤a(v) –ordering of employees (1,2,...,n) => employee u must be assigned to an earlier (the same) activity than (as) employee v (u<v)

Minimum Dissatisfaction Personnel Scheduling 7 Scheduling with Personnel Ordering Restrictions (3/5) T max =max{te i } not too large + integer time moments => dynamic programming algorithm (O(N·T max )) –D min [i,t]=the minimum overall dissatisfaction of the employees i, i+1, …, N, if they are assigned to activities scheduled at time moments t’≥t – D min [N+1, t]=0 –

Minimum Dissatisfaction Personnel Scheduling 8 Scheduling with Personnel Ordering Restrictions (4/5) greedy algorithm –T max may be arbitrary –(integer time moments) tasgn[i]=the time moment when a(i) is scheduled initially, tasgn[i]=0 (for all employees) during the algorithm’s execution –if (tasgn[i]=t) => may increase to t’>t (preserving the ordering constraints) –dinc[j]=the value by which the dissatisfaction of employee j increases if the employee is reassigned to an activity starting at time (tasgn[i]+1) dinc[j]=w j, if te j ≤tasgn[j] dinc[j]=–w j, if te j >tasgn[j] –maintain an array incsum:

Minimum Dissatisfaction Personnel Scheduling 9 Scheduling with Personnel Ordering Restrictions (5/5) select the minimum value of the array incsum (incsum[p]) –incsum[p]<0 T shift =largest negative value from the set {tasgn[q]-te q | p≤q≤N } increase tasgn[q] (p≤q≤N) by |T shift | –incsum[p]≥0 the algorithm stops easy implementation: O(N 2 ) tricky implementation (using the segment tree data structure): O(N·log(N))

Minimum Dissatisfaction Personnel Scheduling 10 Scheduling with Increasing Optimal Employee Times (1/3) same problem parameters as before, except: –te 1 ≤te 2 ≤…≤te N constraints –fixed number of activities: k –schedule activities only at optimal employee times extra parameter: –if an activity is scheduled at time te i => de i (employer’s dissatisfaction) new objective –minimize total dissatisfaction: employees’ dissatisfaction + employer’s dissatisfaction

Minimum Dissatisfaction Personnel Scheduling 11 Scheduling with Increasing Optimal Employee Times (2/3) dynamic programming algorithm D min [i,j,0]=the minimum overall dissatisfaction if the i th activity is scheduled at time te j (and all the employees 1,2,…,j are assigned to one of the activities 1,2,..,i) D min [i,j,1]=the minimum overall dissatisfaction if the i th activity is scheduled at a time moment t≤te j (and all the employees 1,2,…,j are assigned to one of the activities 1,2,..,i)

Minimum Dissatisfaction Personnel Scheduling 12 Scheduling with Increasing Optimal Employee Times (3/3) initial values –D min [0,0,0]=D min [0,0,1]=0 –D min [0,j,0]=D min [0,j,1]=+∞ (for j>0) the answer=D min [k,N,1] naive algorithm: O(N 2 ·k) tricky implementation: O(N·k) –lower envelope of half-lines –double-ended queue (deque) data structure

Minimum Dissatisfaction Personnel Scheduling 13 Conclusions & Future Work two (related) personnel scheduling problems employee dissatisfaction -- time- dependent linear functions complete matehmatical models + efficient algorithms for computing optimal schedules results: mainly of theoretical interest => first step towards (more) practical situations

Minimum Dissatisfaction Personnel Scheduling 14 Thank You !