Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium...

43
Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium [email protected]

Transcript of Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium...

Page 1: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

Nurse Rostering

A Practical Case

Greet Vanden BergheKaHo Sint-Lieven, Gent, [email protected]

Page 2: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

2

Introduction• Nurse scheduling, employee timetabling, personnel

rostering• Problem in Belgian hospitals• Approach

– HARD CONSTRAINTScoverage (personnel demands per day per shift type and per skill category; minimum/preferred)

– SOFT CONSTRAINTStime related constraints on the personal schedules

Goal: schedule the resources to meet the hard constraints while aiming at a high quality result with respect to the soft constraints

Page 3: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

3

Characteristics• highly constrained• often over constrained• not suitable for OR methods• ‘cultural’ differences between countries• the requirements of the hospitals in Belgium can not be met with a

cyclical ‘three shift’ schedule• the personnel prefer a schedule in which they can express their

personal wishes and priorities ↔ cyclical schedule• the problem is mainly tackled manually in practice• heuristics: solutions in an acceptable calculation time

– Variable neighbourhood search– Tabu search– Genetic & Memetic algorithms

• the algorithms presented in this lecture are developed for commercial nurse rostering software for Belgian hospitals: Plane

Page 4: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

4

Page 5: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

5

Requirements

• Functional requirements• Conceptual consistency and continuity• Graceful degradation• Pertinent behaviour• Explanatory power• Extendibility

• Problem specific requirements• Hard constraints

• Personnel requirements (minimum and preferred coverage)• Skill category (non-hierarchical replacement organisation)

• Soft Constraints

Page 6: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

6

Soft Constraints

• Hospital constraints• Minimum time between two assignments• Allow use of an alternative skill category in certain situations

• Constraints defined by the work regulation• Maximum number of assignments during planning period• Minimum/maximum number of consecutive days• Minimum/maximum number of hours worked• Minimum/maximum number of consecutive free days• Maximum number of assignments per day of the week• Maximum number of assignments for each shift type• Maximum number of a shift type per week• Number of consecutive shift types• Assign 2 free days after night shifts

Page 7: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

7

Soft Constraints

• Assign complete weekends• Assign identical shift types during the weekend• Maximum number of consecutive working weekends• Maximum number of working weekends in a 4-week period• Maximum cumulative number of assignments on bank holidays• Restriction on the succession of shift types• Patterns enabling specific cyclic constraints• Balancing the workload among personnel

• Personal constraints• Day off / shifts off• Requested assignments• Tutorship (people not allowed to work alone)• People not allowed to work together

Page 8: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

8

Fitness Evaluation Method• Modular

• Implementation• Evaluation

• Explanatory• Violated constraints• Violation extent

• Easily extendible• New constraints• Extra features

• Modifiable• Cost parameters• Constraint values

• Considering previous planning period

• Low memory use• Simultaneous calculations of

different hospital wards• Complex real world problems

• Fast• Evolutionary algorithms• Complex real world problems

• Simple evaluation algorithm

1 evaluation run per person and per iteration: independent of the number and type of soft constraints

Page 9: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

9

General variables

• planning period (usually 4 weeks) = 28 days• shift types, time units

• scheduled event, day off• personnel members, skills

start endmorning shift (half time) 06:45 11:00morning shift 06:45 14:45day shift 08:10 16:00evening shift 14:15 22:15night shift 22:00 07:00

Page 10: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

10

Real World Issues

average • 20 personnel members per ward

• 6 shift types

• 30 types of active constraints per person

• 100 evaluations of the cost function per iteration

• 300 iterations per minute on IBM RS6000

The evaluation function is also applicable to other timetabling and scheduling problems

E.K. Burke, P. De Causmaecker, S. Petrovic, G. Vanden Berghe: Fitness Evaluation for Nurse Scheduling Problems, Proceedings of Congress on Evolutionary Computation, CEC2001, Seoul, IEEE Press, 2001, 1139-1146

Page 11: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

11

Model for solving nurse scheduling problems

Page 12: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

12

Consistency check• Difficult to define the problem in a feasible way• Assists personnel managers or head nurses to define feasible

problems• The procedure takes hard constraints and a selection of

`precedence’ soft constraints:• Personal requests (days/shifts off e.g. absence, illness)• Personal requests (shifts)• Patterns

• Detected infeasibilities:• Too few skilled people available at a certain time• Too many skilled people scheduled at a certain time

• Two strategies:• Accept the fact that constraints will be violated • Repair: make the personnel requirements feasible

Page 13: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

13

Tools for varying needs• Freezing parts of the planning period (people –

time)• Quick re-scheduling in emergency situations• Scheduling some personnel members manually

• Formulating the personnel requirements in terms of time intervals (floating) instead of shift types • Translate the time interval requirements in shift type

requirements• allow changes of shift type combinations during the

search

Page 14: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

14

Initialisationinitial solution: feasible schedule, satisfying the hard constraints• three strategies to start:

• Current schedule (when the requirements have changed after the schedule was made)

• Previous planning period (when the requirements and constraints are similar)

• Empty schedule (often most efficient choice)

• make the schedule feasible by randomly adding or removing duties for every category until the personnel requirements are met

the first two start strategies seem very attractive but are not always interesting because they often start in a local minimum for the cost function

Page 15: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

15

Pre- and post-planning options

PRE-PLANNINGset the hard constraints equal to:

• Preferred requirements• Minimum requirementsPOST-PLANNING• Add shift types towards the preferred requirements (only

when minimum requirements were selected for the planning)

• Add shift types to reduce undertime (this option allows violations of hard constraints)• Never add shift types for which the minimum requirements are 0• Never add night shifts

Page 16: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

16

Planning options

• Quick planningapplies basic algorithms for quickly generating an acceptable schedule

• Thorough planningapplies hybrid algorithms with human-inspired improvement techniques

• Extra thorough planning with additional algorithms to solve replacement between skill categories

Page 17: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

17

Solution Approaches

• algorithms are not made-to-measurealgorithms are not made-to-measure • minimising the value of the cost function without minimising the value of the cost function without

awareness of the components of that cost functionawareness of the components of that cost function• steepest descentsteepest descent• meta-heuristicsmeta-heuristics

• hybrid tabu search (with different neighbourhoods)hybrid tabu search (with different neighbourhoods)• dynamically change the search heuristicsdynamically change the search heuristics• address particular constraints on the problemaddress particular constraints on the problem• keep the calculation time downkeep the calculation time down• some of the neighbourhoods of previous approaches have some of the neighbourhoods of previous approaches have

been re-usedbeen re-used• memetic, genetic, simulated annealing,…memetic, genetic, simulated annealing,…

Page 18: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

18

Some Meta-heuristic approaches

• Hybrid tabu search algorithmimplemented in the commercial software

E.K. Burke, P. De Causmaecker, G. Vanden Berghe: A Hybrid Tabu Search Algorithm for the Nurse Rostering Problem, B. McKay et. al. (Eds.): Simulated Evolution and Learning, 1998, Lecture Notes in Artificial Intelligence, Vol. 1585, Springer, 1999, 187-194

• Memetic algorithmsinteresting results but too time consuming for implementation in practice

E.K. Burke, P. Cowling, P. De Causmaecker, G. Vanden Berghe: A Memetic Approach to the Nurse Rostering Problem, Applied Intelligence special issue on Simulated Evolution and Learning, Vol. 15, Number 3, Springer, 2001, 199-214

Page 19: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

19

Hybrid Tabu Search algorithm

• Tabu search algorithm – No violation of hard constraints during the

search– Stop criterion

• Hybridisations– Applied in different neighbourhoods– Solving particular soft constraints

Page 20: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

20

initialisation

scheduleprevious

planning period

schedule currentplanning period empty schedule

make the schedule feasible

minimalrequirements

preferredpersonnel

requirements

according tocalculated

realistic demands

tabu search

complete weekendssolve worst personal

schedule

success

no success

results

greedy shuffling

add duties towards preferredpersonnel requirements

TS1

TS2

Page 21: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

21

Single shift-day neighbourhood• Simplest neighbourhood• Position of one assignment differs• Demonstration of a move

Mon Tue Wed Thu

Head Nurse

D D D D

Nurse A, HN

E E L L

Nurse B N N NNurse C N E E

Mon Tue Wed Thu

Head Nurse

D D D D

Nurse A, HN

E E L L

Nurse B E N N NNurse C N E E

Mon Tue Wed Thu

Head Nurse

D D D D

Nurse A, HN

E E L L

Nurse B N N NNurse C E N E E

Mon Tue Wed Thu

Head Nurse

D D D D

Nurse A, HN

E D E L L

Nurse B N N NNurse C N E E

Mon Tue Wed Thu

Head Nurse

D D D D

Nurse A, HN

E N E L L

Nurse B N N NNurse C N E E

Mon Tue Wed Thu

Head Nurse

D D D D

Nurse A, HN

E N E L L

Nurse B N N NNurse C N E E

Page 22: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

22

Original tabu search algorithm• a move takes an assigned shift type from one person to another

on the same day

• the move is not allowed if– the person does not belong to the skill category of the duty – there is already an assignment for that shift type

• the hard constraints remain fulfilled by this kind of move

• iterative calculations in each new environment:– calculate the best possible move which is not forbidden by the tabu

list (ignore the tabu list when the move leads to a better solution)– perform this move– add characteristics of the move to the tabu list

• the results are better than those of the steepest descent algorithm but they are not satisfactory in practice

Page 23: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

23

Information for the tabu list

Page 24: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

24

Some heuristics for the problem• Soft constraint related neighbourhood: complete weekends

the cost parameter of the soft constraint on complete weekends can be modified by the users but this constraint often causes problems– solve the constraint the hard way, without taking care of the other soft

constraints

• Shuffle: solve the worst personal schedule – increase the quality of the worst personal schedule by exchanging a part

of this schedule with a part of another person’s schedule

• Greedy shuffling: Model human-inspired scheduling techniques– calculate all shuffles for all the personnel in the schedule– list these moves (highest benefit of the cost function first)– perform as many moves as possible

Page 25: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

25

Soft constraint related neighbourhoods

• weekend neighbourhood

• overtime-undertime

• alternative skills

• personal requests

• most violated constraint

• etc…

Page 26: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

26

Swapping large sections of personal schedules

• shuffle neighbourhood

Mon Tue Wed Thu

Head Nurse

D D D D

Nurse A, HN

E E L L

Nurse B N N NNurse C N E E

Mon Tue Wed Thu

Head Nurse

D D D D

Nurse A, HN

E N E N L N L

Nurse B E N E N L NNurse C N E E

Mon Tue Wed Thu

Head Nurse

D D D D

Nurse A, HN

E N E L L

Nurse B E N N NNurse C N E E

Mon Tue Wed Thu

Head Nurse

D D D D

Nurse A, HN

E E L N L

Nurse B N N L N LNurse C N E E

Page 27: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

27

Swapping large sections of personal schedules (1)

• weekend shuffling

Fri Sat Sun Mon

Head Nurse

D D

Nurse A, HN

E E L L

Nurse B N N NNurse C N E E

Page 28: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

28

Swapping large sections of personal schedules (2)

• greedy shuffling• shuffling between all pairs of personal schedules• shuffling length from 1 day till half the planning period• Inspired by human improvements

Mon Tue Wed Thu

Head Nurse

D D D D

Nurse A, HN

E E L L

Nurse B N N NNurse C N E E

Page 29: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

29

Swapping large sections of personal schedules (3)

• core shuffling• greedy shuffling within greedy shuffling

Mon Tue Wed Thu

Head Nurse

D D D D

Nurse A, HN

E E L L

Nurse B N N NNurse C N E E

Mon Tue Wed Thu

Head Nurse

D D D D

Nurse A, HN

E N E L L

Nurse B E N N N LNurse C N E E

Page 30: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

30

Tabu Search algorithm in the commercial software

• Quick planning– move– weekend step/shuffle– repeat until stop criterion is met

• Thorough planning– Quick planning – finally: greedy shuffle

• Extra thorough planning – thorough planning– restart with different planning

order for the skill categories

reliable solutionsshort calculation timequick check of the constraints

high quality solutionsthe users evaluate the solutions often better than the cost function indicatesschedules are hard to improve

Excellent solution for bad skill category orderLong calculation time

Page 31: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

31

Test results hybrid tabu search

Problem 2 R-min R-min-pref R-calccost time cost time cost time

Steepest descent 1338 44’’ 1338 45’’ 1134 47’’Tabu search 1189 57’’ 1189 58’’ 933 1’03’’TS1 843 3’18’’ 843 3’18’’ 867 2’14’’TS2 809 6’25’’ 809 6’25’’ 588 10’19’’Quick

Thorough

Page 32: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

32

Genetic and Memetic Algorithms• GA (crossover - mutation)

problem to find a genetic presentation of the problem so that ‘characteristics’ can be inherited

• memetic: steepest descent on each individual, random planning order of the qualifications

• hybrid memetic: tabu search (or hybrid tabu search) on each individual

Page 33: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

33

Diagram of the genetic and memetic algorithms

Page 34: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

34

Crossover - Mutation• best personal schedule from each of the parents; random

selection of the other personal schedules from the parents• random selection of personal schedules from the parents• select per person the best schedule from the parents• select the best x events in the schedule• select the best x events per person in the schedule• first part of the planning period (before a day randomly chosen

per person) from one parent, second part from the other parent• ...

Always make the schedules feasible after recombination

Explicit mutation: randomly changing the schedule between the minimum and the preferred number of personnel

Page 35: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

35

Some examples of crossover operators for the nurse rostering problem

Original Memetic Algorithm: M• Steepest descent for each individual• applies the `move’ discussed earlier

• Offspring: 2 new individuals per parent pair• Genes: Entire personal schedules• Newly generated schedules are not feasible

change the coverage to make them feasible

Page 36: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

36

Original memetic algorithm: M

Page 37: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

37

DM: diverse memetic algorithm

• The same ideas as in M

• The planning order of the skill categories is randomly chosen

DMR: diverse memetic algorithm with random selection

• The same as DM

• random selection of personal schedules

Page 38: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

38

MSR: Memetic algorithm with string recombination

• Based om DM• Offspring takes personal schedules partially from

both parents • Crossover per personal schedule at a random

day/shiftMEx: Memetic algorithm copying the x best events

• Based om DM• Copying x best assignments from each parent

Page 39: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

39

Combining hybrid tabu search & evolutionary approaches

TSPOP: different initial solutions and randomising the planning order of skill categories

• quick hybrid tabu search on each individual

• greedy shuffling on the final solution

Page 40: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

40

MEH: memetic algorithm with human-inspired improvement functions

Page 41: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

41

SWT: switch

• The only algorithm in which the coverage can change

• Based on ME4 (MEx with x=4)• Random mutation by adding or removing

assignments within the feasible domain (between minimum and preferred coverage)

Page 42: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

42

Comparison of test results▀

Page 43: Nurse Rostering A Practical Case Greet Vanden Berghe KaHo Sint-Lieven, Gent, Belgium greetvb@kahosl.be.

43

Conclusion• automating the nurse rostering problem:

– reduction of scheduling effort and time– quick evaluation of schedules, taking care of all the constraints– manually adaptable– good quality of solutions; objective schedules

• combining tabu search with some specific problem solving heuristics: hybrid tabu search

– better quality of solutions– acceptable increase in calculation time

• genetic:– calc time about 100 times longer than hybrid TS– the same quality of solutions

• memetic:– calc time: 10 times longer than genetic– results: about 10% better– less dependent on initialisation and parameter changes