A Multistage Approach for an Employee Timetabling Problem ... · Přemysl Šůcha: An Employee...
Transcript of A Multistage Approach for an Employee Timetabling Problem ... · Přemysl Šůcha: An Employee...
Přemysl Šůcha: An Employee Timetabling Problem with a Strongly Varying Workforce Demand Přemysl Šůcha: An Employee Timetabling Problem with a Strongly Varying Workforce Demand
A Multistage Approach for an Employee Timetabling Problem with a High Diversity of Shifts as a Solution for a Strongly Varying Workforce Demand
Přemysl Šůcha, Zdeněk Bäumelt and Zdeněk Hanzálek
Department of Control Engineering,
Faculty of Electrical Engineering,
Czech Technical University in Prague,
Web: www.dce.fel.cvut.cz/suchap
11/2/2011
Přemysl Šůcha: An Employee Timetabling Problem with a Strongly Varying Workforce Demand
Introduction Motivation
11/2/2011
Employee Timetabling is the operation of assigning employees to a set of shifts during a period of time.
A real timetabling problem: one ward has around 100 employees
planning horizon 4 - 8 weeks
large set of considered shifts
large set of constraints (labor code, collective agreement, trade unions)
The objectives of the company is to:
minimize expense (reduce overtime of employees)
create a feasible timetable every month
satisfy requests of employees
Přemysl Šůcha: An Employee Timetabling Problem with a Strongly Varying Workforce Demand
Introduction Motivation
11/2/2011
Minimal number of employees required each hour is determined by a coverage function (given by air traffic).
The objective of employer is to satisfy the coverage constraint and minimize over coverage.
0:00 3:00 6:00 9:00 12:00 15:00 18:00 21:00 0:00
requirements
# e
mplo
yees
30
24
18
12
6
0
t
number of assigned employees at the given time - workforce
over coverage coverage function
Přemysl Šůcha: An Employee Timetabling Problem with a Strongly Varying Workforce Demand
Introduction Motivation
11/2/2011
0:00 3:00 6:00 9:00 12:00 15:00 18:00 21:00 0:00
requirements
# e
mplo
yees
30
24
18
12
6
0
t
Coverage by “classical” set of shifts (early, late, night) leads to huge over coverage.
early
late
night night
Přemysl Šůcha: An Employee Timetabling Problem with a Strongly Varying Workforce Demand
Introduction Motivation
11/2/2011
0:00 3:00 6:00 9:00 12:00 15:00 18:00 21:00 0:00
requirements
# e
mplo
yees
30
24
18
12
6
0
t
Better coverage requires larger number of shifts with different start and finish times and split shifts (~#60).
Přemysl Šůcha: An Employee Timetabling Problem with a Strongly Varying Workforce Demand
Introduction Problem (P) Objective and Complexity
Goal of the Employee Timetabling Problem with a High Diversity of Shifts (P)
to design the roster for the employees, i.e. to assign all requested shifts to the set of employees with respect to the given set of hard constraints and to minimize violation of soft constraints
Complexity of the problem
Nurse Rostering Problem (NRP) is a subset of the P
A basic version of NRP is NP-hard problem [Osogami & Imai, 2000]
NRP with the planning horizon 2 days – polynomial reduction to the 3-
dimensional matching problem (NP-hard)
11/2/2011
Přemysl Šůcha: An Employee Timetabling Problem with a Strongly Varying Workforce Demand
Problem Statement Input Parameters
Set of employees E
Set of shifts S
Set of days D
Initial roster Ro
Matrix of the grades G (employees x shifts)
Matrix of the requested shifts RS (days x shifts)
Set of constraints C
11/2/2011
Přemysl Šůcha: An Employee Timetabling Problem with a Strongly Varying Workforce Demand
Problem Statement Set of Constraints – Hard Constraints
More than one shift per day cannot be assigned to an employee.
Over and under coverage of shifts is not allowed.
Grades of employees have to be considered.
Personnel requests must be respected, e.g. fixed shifts assignment, day-off requests, partial day-off requests (an employee wants to work to 5pm).
Regular (minimal) time gap between two shifts must be kept.
11/2/2011
Regular time gap: a ≥ 12
Minimal time gap: a ≥ 10
Shortened time gap: a < 12 a + b ≥ 24
shift 1 shift 2 shift 3 a b
Monday Tuesday Wednesday Thursday
Přemysl Šůcha: An Employee Timetabling Problem with a Strongly Varying Workforce Demand
shift 1 shift 3
Monday Tuesday Wednesday Thursday Friday
#shifts ≤ 3 & each gap < 56 hours & |shift| ≤ 34 hours
#shifts = 4 & each gap < 56 hours & |shift| ≤ 40 hours
#shifts = 5 & each gap < 60 hours & |shift| ≤ 45 hours
shift 2
Problem Statement Set of Constraints – Soft Constraints
Block Constraints (given by the collective agreement)
The maximum and minimum number of shifts and maximum number of working hours must be kept in the working block.
The minimal rest between each two blocks have to be considered.
The minimal rest after 2 consecutive night shifts must be kept (70 hours of free).
Block of shifts validity must be respected, e.g. no more than one split shift is allowed in the block.
11/2/2011
Přemysl Šůcha: An Employee Timetabling Problem with a Strongly Varying Workforce Demand
Monday Tuesday Wednesday Thursday Friday
shift 2 shift 4
?
? 56 hours
#shifts ≤ 3 & each gap < 56 hours & |shift| ≤ 34 hours
#shifts = 4 & each gap < 56 hours & |shift| ≤ 40 hours
#shifts = 5 & each gap < 60 hours & |shift| ≤ 45 hours
Problem Statement Set of Constraints – Soft Constraints
11/2/2011
Block Constraints (given by the collective agreement)
The maximum and minimum number of shifts and maximum number of working hours must be kept in the working block.
The minimal rest between each two blocks have to be considered.
The minimal rest after 2 consecutive night shifts must be kept (70 hours of free).
Block of shifts validity must be respected, e.g. no more than one split shift is allowed in the block.
shift 1 shift 3
Přemysl Šůcha: An Employee Timetabling Problem with a Strongly Varying Workforce Demand
Monday Tuesday Wednesday Thursday Friday
shift 2
!
< 56 hours
#shifts ≤ 3 & each gap < 56 hours & |shift| ≤ 34 hours
#shifts = 4 & each gap < 56 hours & |shift| ≤ 40 hours
#shifts = 5 & each gap < 60 hours & |shift| ≤ 45 hours
Problem Statement Set of Constraints – Soft Constraints
11/2/2011
Block Constraints (given by the collective agreement)
The maximum and minimum number of shifts and maximum number of working hours must be kept in the working block.
The minimal rest between each two blocks have to be considered.
The minimal rest after 2 consecutive night shifts must be kept (70 hours of free).
Block of shifts validity must be respected, e.g. no more than one split shift is allowed in the block.
shift 4 shift 1 shift 3
Přemysl Šůcha: An Employee Timetabling Problem with a Strongly Varying Workforce Demand
Monday Tuesday Wednesday Thursday Friday
shift 2
#shifts ≤ 3 & each gap < 56 hours & |shift| ≤ 34 hours
#shifts = 4 & each gap < 56 hours & |shift| ≤ 40 hours
#shifts = 5 & each gap < 60 hours & |shift| ≤ 45 hours
Problem Statement Set of Constraints – Soft Constraints
11/2/2011
Block Constraints (given by the collective agreement)
The maximum and minimum number of shifts and maximum number of working hours must be kept in the working block.
The minimal rest between each two blocks have to be considered.
The minimal rest after 2 consecutive night shifts must be kept (70 hours of free).
Block of shifts validity must be respected, e.g. no more than one split shift is allowed in the block.
shift 4 shift 1 shift 3
Přemysl Šůcha: An Employee Timetabling Problem with a Strongly Varying Workforce Demand
Overtime hours should be balanced according to the employees’ workload.
Weekend and night hours should be in balance according to the employees’ workload.
Hours of a certain shift kind (early, late, night, split and on-call shifts should be placed equally to all employees).
Number of isolated days-on and days-off is minimized.
Number of isolated pairs of shifts is minimized.
Primarily, the block constraints in combination with the large set of shifts and lack of employees makes
the problem over-constrained!
Problem Statement Set of Constraints – Soft Constraints
11/2/2011
Přemysl Šůcha: An Employee Timetabling Problem with a Strongly Varying Workforce Demand
Proposed Approach Basic Concept of a Multistage Approach
input: An instance of P.
output: Roster R.
Stage 1: Initialization Problem transformation P P K.
Feasible initial roster RK creation.
Stage 2: Inverse transformation The requested shifts assignment to the employees,
i.e. P P K. Feasible initial roster Rinit creation.
Stage 3: Optimization Improve the quality of the roster R. Methods like Tabu Search or Variable Neigborhood
Search can be used.
11/2/2011
Přemysl Šůcha: An Employee Timetabling Problem with a Strongly Varying Workforce Demand
Stage 1: Initialization P P K Transformation
We choose the shifts with the approximately same starting times and ends and we call these groups shift kinds.
roster R shift parameters requested shifts RS
Early (E), late (L), night (N), split (S), on-call (X)
Free (_), required free (-)
roster RK shift kind parameters requested shift kinds RSK
shift kind
6am 9am 2pm 5pm 6am 9am 2pm 5pm
shifts
. . .
early
11/2/2011
Přemysl Šůcha: An Employee Timetabling Problem with a Strongly Varying Workforce Demand
Stage 1: Initialization Evolutionary Algorithm for P K
Individual ~ roster RK
Gene slot ~ part of the roster RK
11/2/2011
days
em
plo
yees
E E L N N _ _ _ E S L N _ - - L L X N _ _ _ E E
_ _ E L X N _ _ _ E S E L _ _ E E L N _ _ _ E L
N - - _ E E N N _ _ _ S L X N _ _ _ E S L L _ -
_ _ E X N - - - - - - - - - - - - - - - - - - -
E L N _ _ E E L L _ _ E S N N _ - - - - - - - -
X N _ _ E L E L _ _ _ S L X N _ _ _ E E L N _ _
E S N _ _ _ E L L _ _ _ E L X N _ _ _ E L L _ _
_ _ E L L N _ _ _ S L L L _ _ E E L X N _ _ _ E
- - - - - - - E E E L _ _ _ E S L L _ _ E L N N
_ E L L _ _ S L E N _ _ E S L N _ _ E E X N _ _
kind ‘late’ gene slot
required free
individual
Přemysl Šůcha: An Employee Timetabling Problem with a Strongly Varying Workforce Demand
Stage 2: Inverse Transformation P K P Transformation
For each day in the roster RK a bipartite graph with employees and requested shifts is created.
11/2/2011
This stage can be solved by the maximal weighted matching in the bipartite graph
Weights cij of the edges depend on:
kind on the given day from the initialization stage
assigned shifts on the previous days from the inverse transformation
s1
s2
s3
s4
cij . . .
. . .
. . .
e5
e4
e3
e2
e1
Přemysl Šůcha: An Employee Timetabling Problem with a Strongly Varying Workforce Demand
Experiments & Results Comparison of MSA with other Approaches
Multistage approach (MSA) is compared with A1 and A2:
All results are average values over 30 executions for each problem instance (different real periods).
All periods were on the edge of the solvability.
11/2/2011
MSA
Evolutionary Alg. +
Maximum Weighted
Matching Alg. +
Tabu Search Alg.
A2
Initialization [Vanden Berghe
G.] +
Tabu Search Alg.
A1
Tabu Search Alg.
Přemysl Šůcha: An Employee Timetabling Problem with a Strongly Varying Workforce Demand
Experiments & Results Tabu Search Objective Function
11/2/2011
0
100
200
300
400
500
600
p01 p02 p03 p04 p05
355
307 318
247
392 381
334 359
312
483 442
408 423
327
561
Value of the objective function Z
MSA CMPA1 CMPA2
MSA gives in average about 13 % better results in comparison with A1 and about 24 % in comparison with A2 (very relative).
In general, rosters made by MSA are more compact and balanced
MSA A1 A2
Přemysl Šůcha: An Employee Timetabling Problem with a Strongly Varying Workforce Demand
Conclusions
Formulation of the Employee Timetabling Problem with a High Diversity of Shifts (P)
Multistage heuristic approach for P
Experiments and comparison with other approaches
The algorithm is used for more than three years in a real application
[Bäumelt, Z. - Šůcha, P. - Hanzálek, Z. An Evolutionary Algorithm in a Multistage Approach for an Employee Rostering Problem with a High Diversity of Shifts In: Practice and Theory of Automated Timetabling (PATAT). Belfast, UK, 2010, p. 239-251.]
[Bäumelt, Z. - Šůcha, P. - Hanzálek, Z. A Multistage Approach for an Employee Rostering Problem with a High Diversity of Shifts as a Solution for a Strongly Varying Workforce Demand, Under review in Computers & Operations Research.]
11/2/2011