273
Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham for the degree of Doctor of Philosophy, 2004

Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

Case-Based Reasoning in PersonnelRostering

by Gareth Richard Beddoe, BSc

Thesis submitted to The University of Nottingham

for the degree of Doctor of Philosophy, 2004

Page 2: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

ii

Contents

List of Tables viii

List of Figures x

1 Introduction 11.1 Personnel Rostering 11.2 Case-Based Reasoning 51.3 Research Objectives 71.4 Layout of the Thesis 9

I Background 12

2 Personnel Rostering Problems 132.1 Introduction 132.2 Dimensions 142.3 Rostering Approaches 262.4 Conclusion 58

3 Case-Based Reasoning 613.1 Introduction 613.2 Methodology and Research Issues 643.3 Case-Based Reasoning for Scheduling and Planning 743.4 Conclusion 82

II The CABAROST Model 85

4 A Nurse Rostering Model 864.1 Introduction 864.2 Nurses and Shifts 884.3 Constraints and Constraint Violations 924.4 Repairs 98

Page 3: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

CONTENTS iii

4.5 Problem and Solution Spaces 994.6 Problem Data 1014.7 Conclusion 103

5 Case-based Repair Generation 1065.1 Introduction 1065.2 Case Structure 1075.3 Case Retrieval 1145.4 Repair Adaptation 1205.5 Example 1245.6 An Extended Adaptation Algorithm 1275.7 Case-base Training 1315.8 Performance 1325.9 Conclusion 136

6 Violation Features and Weighting 1376.1 Introduction 1376.2 Measuring Classification Accuracy 1396.3 Violation Features 1406.4 Genetic Algorithm for Feature Weighting and Selection 1476.5 Results 1496.6 Conclusion 161

III Meta-heuristic Hybrids 163

7 Combining CABAROST with Tabu Search 1647.1 Introduction 1647.2 Algorithm Variants 1657.3 Comparison of Algorithms 1717.4 Conclusion 181

8 A Memetic Algorithm for Determining Repair Orderings 1848.1 Introduction 1848.2 Memetic Algorithm 1858.3 Learning 1878.4 System Evaluation 1898.5 Conclusion 197

Page 4: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

CONTENTS iv

IV Discussion 199

9 Conclusions 2009.1 Contribution 2009.2 Method Evaluation 2119.3 Applicability to Other Domains 2139.4 Future Work 2159.5 Dissemination 216

A Violation Feature Indices 221

B Repair Adaptation Rules 229

References 237

Page 5: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

Abstract

In this thesis a novel Case-Based Reasoning (CBR) system called CABAROST (CAsed-

BAsed ROSTering) for a complex, real-world, personnel rostering problem is pre-

sented. CBR is an artificial intelligence paradigm which attempts to solve new prob-

lems using information about the solution to previously encountered problems. CBR

is used to capture and store examples of expert rostering behaviour which are then

used to solve future problems. Previous examples of constraint violations in rosters

and the repairs that were used to solve the violations are stored as cases. CABAROST

generates repairs for violations found in a roster which imitate the decision making

practice of the expert which trained it.

A number of research issues that arise from using CBR for personnel rostering

problems are addressed including: (a) representation of the nurse rostering problem

as a constraint optimisation problem; (b) generalisation, selection, and weighting

of case indices which will make the cases applicable to new problem instances; (c)

retrieving and adapting cases from the case-base so that they are suitable to new

problems; (d) hybridisation of CBR with meta-heuristic search methods; (e) and

on-going case-base training and learning from failure.

The research was carried out in collaboration with the Queen’s Medical Centre

University Hospital NHS Trust, Nottingham, UK. They provided their experience in

rostering in the form of examples and real-world data, and are actively involved in the

testing and evaluation of the developed software system. In addition, the methods

are applicable more generally to a wide variety of scheduling and other combinatorial

optimisation problems.

v

Page 6: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

Acknowledgements

I would like to thank my supervisor Sanja Petrovic for all the advice and support

that she gave me throughout my doctoral studies.

This research would not have been possible without the advice and expertise of Ella

Bowers, Ann Watts, and the staff of the Ophthalmology ward at the Queens Medical

Centre University Hospital NHS Trust, Nottingham, UK. I appreciate the time that

they took out of their busy schedules to help us with this work.

The project was sponsored by the Engineering and Physical Sciences Research Council

(EPSRC) under grant number GR/N35205/01.

Finally, I would like to thank the staff and students of the ASAP Research Group for

making my time with them so enjoyable and productive.

vi

Page 7: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

To Mum and Dad,

Thank you for all the support and en-couragement you have given me overthe years. I couldn’t have done thiswithout you.

vii

Page 8: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

viii

List of Tables

4.1 The fields of NurseType . . . . . . . . . . . . . . . . . . . . . . . . . 90

5.1 Reassign repair features . . . . . . . . . . . . . . . . . . . . . . . . . 1155.2 Swap repair features . . . . . . . . . . . . . . . . . . . . . . . . . . . 1155.3 Switch repair features . . . . . . . . . . . . . . . . . . . . . . . . . . . 1185.4 A simple example of a nurse roster . . . . . . . . . . . . . . . . . . . 1245.5 Example of case ranking . . . . . . . . . . . . . . . . . . . . . . . . . 1255.6 Example of repair ranking . . . . . . . . . . . . . . . . . . . . . . . . 127

6.1 An example roster . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1436.2 The features used to represent constraint violations in the case-base . 1466.3 Classification accuracy (with full initial feature set) . . . . . . . . . . 1516.4 The average number of selected features (with full initial feature set) 1526.5 Classification accuracy (with refined initial feature set) . . . . . . . . 1546.6 Average number of selected features (with refined initial feature set) . 154

7.1 Algorithm Performance. . . . . . . . . . . . . . . . . . . . . . . . . . 183

8.1 Constraints for the QMC problem . . . . . . . . . . . . . . . . . . . . 1908.2 Initial case-base contents . . . . . . . . . . . . . . . . . . . . . . . . . 1908.3 Roster quality - CABAROST vs. Random Repair Generation . . . . 1918.4 Roster quality: static (no training) vs. ongoing training . . . . . . . . 1928.5 Roster quality: static (no case weighting) vs. case weighting on failure 194

A.1 Cover constraint violation feature indices . . . . . . . . . . . . . . . . 221A.2 HardRequest constraint violation feature indices . . . . . . . . . . . . 222A.3 MaxDaysOn constraint violation feature indices . . . . . . . . . . . . 223A.4 MaxHours constraint violation feature indices . . . . . . . . . . . . . 223A.5 MinDaysOn constraint violation feature indices . . . . . . . . . . . . 224A.6 MinHours constraint violation feature indices . . . . . . . . . . . . . . 224A.7 SingleNight constraint violation feature indices . . . . . . . . . . . . . 225A.8 SoftRequest constraint violation feature indices . . . . . . . . . . . . 226A.9 Succession constraint violation feature indices . . . . . . . . . . . . . 227

Page 9: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

LIST OF TABLES ix

A.10 WeekendBalance constraint violation feature indices . . . . . . . . . . 227A.11 WeekendFill constraint violation feature indices . . . . . . . . . . . . 228A.12 WeekendsInARow constraint violation feature indices . . . . . . . . . 228

Page 10: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

x

List of Figures

3.1 A reasoning episode according to Kolodner (1993) . . . . . . . . . . . 653.2 The CBR cycle by Aamodt and Plaza (1994) . . . . . . . . . . . . . . 66

4.1 Nurse hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 914.2 Basic repair action types . . . . . . . . . . . . . . . . . . . . . . . . . 994.3 Sample preference roster . . . . . . . . . . . . . . . . . . . . . . . . . 104

5.1 Example: Generalisation of a Cover Violation . . . . . . . . . . . . . 1105.2 Example: Generalisation of a HardRequest Violation . . . . . . . . . 1115.3 Example: Generalisation of a Succession Violation . . . . . . . . . . . 1115.4 Example: Generalisation of a Reassign Repair . . . . . . . . . . . . . 1145.5 Example: Generalisation of a Swap Repair . . . . . . . . . . . . . . . 1165.6 Example: Generalisation of a Switch Repair . . . . . . . . . . . . . . 1175.7 Case structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1185.8 The retrieval algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . 1195.9 Adaptation algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . 1225.10 The alternative adaptation algorithm . . . . . . . . . . . . . . . . . . 1295.11 Average cumulative number of exact and equivalent matches against

case-base size over five 120 iteration runs. . . . . . . . . . . . . . . . . 1355.12 Effects of case-base size on solution quality. . . . . . . . . . . . . . . . 135

6.1 Pseudo-code for the algorithm for measuring classification accuracy . 1396.2 Feature weights for Cover Violations . . . . . . . . . . . . . . . . . . 1556.3 Feature weights for MaxDaysOn Violations . . . . . . . . . . . . . . . 1566.4 Feature weights for MaxHours Violations . . . . . . . . . . . . . . . . 1576.5 Feature weights for MinDaysOn Violations . . . . . . . . . . . . . . . 1586.6 Feature weights for Succession Violations . . . . . . . . . . . . . . . . 159

7.1 Mean, maximum, and minimum number of constraint violations . . . 1747.2 Mean, maximum, and minimum nurse satisfaction . . . . . . . . . . . 1757.3 Effects of tabu list on average number of constraint violations for the

MARCH 2001 problem . . . . . . . . . . . . . . . . . . . . . . . . . . 176

Page 11: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

LIST OF FIGURES xi

7.4 Effects of tabu list on average nurse preference satisfaction for theMARCH 2001 problem . . . . . . . . . . . . . . . . . . . . . . . . . . 176

7.5 Effects of objective function on average number of constraint violationsfor the APRIL 2001 problem . . . . . . . . . . . . . . . . . . . . . . . 177

7.6 Effects of objective function on average nurse preference satisfactionfor the APRIL 2001 problem . . . . . . . . . . . . . . . . . . . . . . . 177

7.7 A manually produced roster . . . . . . . . . . . . . . . . . . . . . . . 1797.8 A roster produced using CB-OBJ-TL-R10 . . . . . . . . . . . . . . . 180

8.1 Roster quality: static (no training) vs. ongoing training . . . . . . . . 1938.2 On-going training: number of queries (1.5 and 2.5 thresholds) . . . . 1948.3 Roster quality: case weighting on failure . . . . . . . . . . . . . . . . 1958.4 A roster produced using the memetic algorithm . . . . . . . . . . . . 196

B.1 Adaptation rule for generating Reassign repairs of Cover violations . 229B.2 Adaptation rules for generating Reassign repairs of HardRequest, Sin-

gleNight, SoftRequest, Succession, and WeekendSplit violations . . . . 230B.3 Adaptation rules for generating Reassign repairs of MaxDaysOn, Max-

Hours, MinDaysOn, and MinHours violations . . . . . . . . . . . . . 230B.4 Adaptation rules for generating Reassign repairs of WeekendBalance

and WeekendsInARow violations . . . . . . . . . . . . . . . . . . . . 231B.5 Adaptation rule for generating Swap repairs of Cover violations . . . 231B.6 Adaptation rules for generating Swap repairs of HardRequest, Sin-

gleNight, SoftRequest, Succession, and WeekendSplit violations . . . . 232B.7 Adaptation rules for generating Swap repairs of MaxDaysOn, Max-

Hours, MinDaysOn, and MinHours violations . . . . . . . . . . . . . 233B.8 Adaptation rules for generating Swap repairs of WeekendBalance and

WeekendsInARow violations . . . . . . . . . . . . . . . . . . . . . . . 233B.9 Adaptation rule for generating Switch repairs of Cover violations . . . 234B.10 Adaptation rules for generating Switch repairs of HardRequest, Sin-

gleNight, SoftRequest, Succession, and WeekendSplit violations . . . . 234B.11 Adaptation rules for generating Switch repairs of MaxDaysOn, Max-

Hours, MinDaysOn, and MinHours violations . . . . . . . . . . . . . 235B.12 Adaptation rules for generating Switch repairs of WeekendBalance and

WeekendsInARow violations . . . . . . . . . . . . . . . . . . . . . . . 236

Page 12: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

1

Chapter 1

Introduction

In this thesis a novel case-based reasoning approach to personnel rostering is pre-

sented. The problem of rostering nurses at the Queens Medical Centre, Nottingham,

UK will be investigated. A framework for solving this problem is presented which

is sufficiently general to apply to many similar problems. In this chapter the basic

concepts of personnel rostering and case-based reasoning are introduced and the over-

all research objectives identified. The layout of the thesis and the contents of each

chapter will be described.

1.1 Personnel Rostering

The problem of allocating working patterns to employees is both difficult and time

consuming. Personnel managers often spend a large percentage of their time con-

structing rosters and in most cases do not succeed in producing rosters which satisfy

both operational requirements and staff preference. Poorly constructed rosters can

have a number of detrimental effects on an organisation’s performance. Overstaffing

leads to high employment costs but is often necessary for organisations with unpre-

dictable service demands. Conversely, understaffing can result in lost revenues or

poor service provision. Rosters which are perceived by employees to be inflexible or

unfair can significantly affect staff morale and lead to increased absenteeism and staff

turnover.

Rostering problems are found in many different types of organisations and in-

Page 13: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

1. introduction 2

dustries, including manufacturing, call centres, schools, emergency services, energy

producers, and transportation. This thesis will focus on the health-care industry, and

in particular on nurse rostering. Nurse rostering provides some of the most highly

constrained and difficult personnel rostering problems. Hospitals must balance staff

shortages and budget restrictions with consistent and high quality patient care. In

recent years, a recognition of the importance of flexible employment practices has in-

creased the need for automated rostering tools which can cope with ever more complex

problems.

Personnel rostering is defined as the problem of placing resources into slots in a

pattern, subject to given constraints, where the pattern denotes a set of legal shifts

defined in terms of work to be done [251]. However, the constraints imposed on

the problem cannot often be satisfied completely, and the aim is to find the solu-

tion which violates as few as possible. Real-world personnel rostering problems are

highly constrained resource allocation problems which are difficult to solve manually

[72]. Conflicting legal, management, and staff requirements must be considered when

making rostering decisions. For example, management requirements for the cover and

skill mix needed for a particular task often conflict with the maximum working hours

allowed (by law and contract) as well as with individual staff preferences. In general,

it is difficult, if not impossible, to predict how an attempt to satisfy one constraint

will affect the others.

Personnel rostering problems have been a subject of interest within both artificial

intelligence and operational research communities for a number of decades. Tradi-

tional operational research optimisation methods, especially mathematical program-

ming, were initially employed to solve simple problems with few constraints. However,

these were rarely useful for real-world problems, particularly as they frequently in-

curred computational cost exponential in the number of employees considered. Many

mathematical formulations of personnel rostering problems are NP-hard - at the time

of writing no algorithm is known which will solve such problems in polynomial time

[19]. Consequently, many optimisation techniques from the artificial intelligence com-

munity have been explored for finding good quality (but not provably optimal) solu-

tions. Rostering problems are often represented as constraint optimisation problems,

Page 14: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

1. introduction 3

where the objective is to minimise the overall violation of constraints. Many ap-

proaches have been developed using constraint satisfaction methods or meta-heuristic

techniques such as tabu search, simulated annealing, and evolutionary algorithms. In

general, they measure roster quality using objective functions which represent the vi-

olation of constraints in rosters, usually weighted according to the perceived relative

importance of each constraint type.

From a mathematical modelling perspective personnel rostering problems are dif-

ficult for a number of reasons:

- combinatorial solution space: the number of possible solutions to rostering prob-

lems usually increases exponentially with the number of staff, shift types, and

with the size of the planning horizon [208]. Consequently, brute-force methods

quickly become computationally intractable for all but the smallest of problems.

- highly constrained : operational requirements, complex employment laws, and staff

requests all translate into a large number of constraints. For most problems it is

impossible to satisfy all constraints and so solutions must be found which meet

a core set of strict requirements, and otherwise violate as few of the remaining

constraints as possible [235].

- organisation-dependent : the definitions of staff skill, shift types, planning periods,

and, of course, of the myriad constraints vary considerably both between and

within organisations. Methods suitable for one problem are not easily trans-

ferred to other problems - and frequently the unsatisfactory approach of ‘chang-

ing the problem to suit the method’ is employed, with poor results. The problem

modelling process also suffers from the knowledge acquisition bottleneck due to

the difficulties present in translating operational information into mathematical

models.

- subjective: also linked to problems of knowledge acquisition is the issue of subjectiv-

ity [174]. Many of the decisions made by rostering experts (for example nurse

managers) are of a personal, subjective nature, and are therefore difficult to

model systematically. This is particularly true when considering the treatment

Page 15: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

1. introduction 4

of staff requests and preferences, which may need to be treated on a case by

case basis.

Despite decades of research into automated methods, and some significant ‘aca-

demic’ successes, many organisations still resort to manual practices. Managers are

reluctant to use automated rostering tools because they cannot use them to accu-

rately and easily model their problems. Some of the unresolved issues in personnel

rostering research are:

(a) Representation of domain knowledge: The development of successful personnel

rostering methods is highly dependent on the correct representation of domain

knowledge. Many of the early mathematical models were not flexible because of

the rigid structure that they imposed on the problem representation. Although

there has been a lot of research effort in the development of artificial intelligence

techniques for solving scheduling problems in general, and personnel rostering

in particular, the development of knowledge-based scheduling systems, which

attempt to emulate the methods of the human schedulers, is recognised to be a

difficult task [128]. In view of the complexity of real-world scheduling problems

it is very difficult to define a list of ‘IF-THEN’ rules that describe the reasoning

of scheduling managers. It is an inexact and time-consuming process, and can

also lead to the development of inflexible and incomplete domain models [192,

222]. The nature of the human scheduling process is based on specific experience

rather than on a set of general guidelines or first principles.

(b) Adapting the domain model : Personnel rostering problems can change rapidly

due to evolving employment law, organisational restructuring, staff turn-over,

and service demand, and most models struggle to ‘keep up’. Even the meta-

heuristic methods that have been developed for rostering suffer from inflexibility.

Their drawback is that they usually work well only in environments that are very

similar to the instance of the problem for which they were designed. Each new

instance of the problem requires significant changes to the model, for example,

changes to the objective function which depend heavily on the researcher’s a

Page 16: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

1. introduction 5

priori understanding of the problem, changes to the neighbourhood structure

in local search methods, etc.

(c) Reacting to unexpected events : Organisations such as hospitals must provide ser-

vices around the clock. Events such as sudden increases in demand, unplanned

leave, and staff sickness must be dealt with in ‘real-time’ by altering the ros-

ter [115]. Such alterations can have long-term effects on the satisfaction of

constraints over the remainder of the planning period. Most automated meth-

ods are unable to handle such events gracefully and managers must resort to

rescheduling manually.

These issues are addressed in this thesis by the introduction of a novel method for

acquiring rostering knowledge from domain experts. This method provides a highly

intuitive means by which experts can specify their treatment of rostering decisions.

It is demonstrated that methods which use the acquired knowledge are capable of

imitating human rostering methods and producing good quality rosters.

1.2 Case-Based Reasoning

Case-based reasoning (CBR) is an artificial intelligence methodology which uses so-

lutions to previous problems to solve similar new problems. A data-base of past

experience, called a case-base, is constructed and then used to solve new problems

through processes of retrieval, adaptation, and memorising. Each experience is stored

within a case, which usually represents a description of the problem, the solution, and

an assessment of the outcome of using the case. Because knowledge is represented in

CBR by example, rather than in the form of rules or functions, it can be used to model

problems in complex real-world domains which are difficult to model systematically.

CBR operates on the premise that ‘similar problems will require similar solutions’.

Indeed, the notion of similarity, of both problems and solutions, is key to the devel-

opment of successful case-based systems. Problems are represented by sets of feature

indices which store information about the problem relevant to the problem solving it

will be used for. Similarity between problems is usually measured as a function of the

Page 17: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

1. introduction 6

differences between index values, although many other schemes exist. The choice of

relevant case indices and accurate similarity measures are two of the most important

design tasks faced by developers of CBR systems.

When a new problem is encountered a CBR system must first search for the most

similar case (or cases) in the case-base. This process of retrieval may use a similarity

measure to rank the cases in the case-base. The retrieved case, or cases, contain the

solutions that were used to solve the problems that they represent. These solutions

are used to solve the new problem. However, it is rarely possible to directly apply

the old solution to the new problem, and therefore solutions must be adapted to

the context of the new problem. Solutions in cases may represent instantiations of

the domain variables, or the methods (and method parameters) that were previously

used.

Learning is achieved in CBR systems by memorising new cases as they are en-

countered. When supervised by human experts case-based systems can be trained

both initially and continuously throughout their lifetime. Under automated opera-

tion case memorisation must be undertaken with great care, to ensure that the cases

stored are relevant, useful, and consistent with the existing knowledge. A large body

of research is dedicated to the subject of case-base maintenance, which attempts to

ensure that the quality of the cases in the case-base is maximal, and that the number

of cases in the case-base does not increase unnecessarily (and thus impact negatively

on the retrieval speed).

CBR has been used successfully for a wide range of applications including planning

and motivational analysis, navigation, building and circuit board design, military bat-

tle planning, purchase selection, legal analysis, machine control, medical diagnosis,

automated theorem proving, classification, etc. It is particularly suited to complex

real-world domains where problems can be solved (albeit slowly) by human experts,

who rely on a combination of intuition, subjective judgement, and ‘rules-of-thumb’.

CBR provides an intuitive interface for eliciting knowledge from domain experts be-

cause it requires only examples of problem solving episodes and not systematic details

about how or why a particular method or solution was used. It can be applied to

problems in a number of ways, from fully supervised interactive tools through to fully

Page 18: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

1. introduction 7

automated solution finding methods.

Recent years have seen an acceleration of interest in developing CBR systems

for a variety of combinatorial optimisation problems including scheduling. In this

thesis the focus will be on CBR applications in scheduling. These approaches use

CBR to produce solutions in a variety of different ways. Some methods store full or

partial solutions to scheduling problems which are re-used for problems with similar

descriptions. Other methods are used to suggest algorithms or heuristics for solving

problems based on certain descriptive or structural features. A third variety store

examples of repair operations which are applied to schedules in certain circumstances

in order to improve their quality. In this thesis, the operator re-use approach is

explored for personnel rostering problems.

As a solution methodology CBR has great potential in the field of personnel roster-

ing. Staff managers exist with many years of experience at solving real-world rostering

problems. These experts can provide a case-by-case history of rostering decisions with

which to seed a case-base. The flexibility of CBR means that after training, solutions

can be provided without supervision or, if the user wishes, a CBR system can be used

as a decision support system whereby problems are solved interactively.

1.3 Research Objectives

In this thesis a CBR approach to personnel rostering is investigated. The novel CAsed-

BAsed ROSTering (CABAROST) method was developed to imitate the rostering

decisions made by human rostering experts. During its development the field of

personnel rostering was thoroughly investigated. This thesis presents the outcomes of

research guided by the following objectives regarding the field of personnel rostering:

(a) To gain an understanding of the complexity of real-world rostering problems, in

particular focusing on the use and treatment of constraints.

(b) To explore the use of various methods for solving rostering problems and to

determine the current state-of-the-art in rostering technology. In particular,

Page 19: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

1. introduction 8

those methods developed recently for highly constrained real-world problems

should be assessed.

(c) To model a complex rostering problem from a UK hospital and to explore the

relevance of this model to other problems in the literature.

(d) To investigate the nature of human expert decision making for personnel ros-

tering. This includes determination of the factors which influence the decision

making, the types of decisions made for specific problems, and the circumstances

in which alternative decision can be made.

(e) To develop methods for solving the rostering problem modelled which are gen-

eral enough to apply to a wide range of similar problems, in both rostering,

scheduling, and the wider field of constraint optimisation.

(f) To investigate the subdivision of rostering problems into problem solving episodes,

particularly focusing on the order in which violations of constraints should be

repaired.

In addition to these personnel rostering research objectives the development of

CABAROST was required to meet these additional CBR objectives:

(a) Explore the use of CBR for complex real-world problems, particularly in the

problem domains of scheduling and planning, and combinatorial and constraint

optimisation in general.

(b) Determine the suitability of CBR as a methodology for solving rostering prob-

lems.

(c) Explore the issues of problem representation and generalisation. Problem solving

information in the case-base must be abstract and general enough that it can

be applied to a wide range of future problems.

(d) Develop a CBR system for storing, retrieving, and adapting rostering episodes

which imitate the behaviour of human experts. In order to evaluate the per-

Page 20: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

1. introduction 9

formance of the CBR system methods for measuring the reasoning quality of a

case-base must also be developed.

(e) Integrate the CBR system with meta-heuristic search methods for personnel ros-

tering. Such methods should combine the abilities to successfully traverse the

solution space with the knowledge contained in the case-base.

(f) Develop a strategy for training the case-base with expert knowledge. This in-

volves both initial training (i.e. before the case-base is used) and on-going

training to improve the system’s performance.

(g) Investigate how the CBR system can learn from failed reasoning episodes. This is

vital if the methods are to be employed in real-world settings, where the chance

of poor-quality cases entering the case-base may exist.

(h) Investigate technologies for maintaining case-base performance. Methods for

tuning the representation of problems in cases to the contents of the case-base

should be developed.

1.4 Layout of the Thesis

The chapters of this thesis describe how the research objectives were achieved. In

Part I of the thesis background information will be given, describing the current

state of research in the fields of personnel rostering and case-based reasoning. Part

II describes the problem model and details of the CABAROST system. In Part III

integrated approaches which combine CABAROST with two meta-heuristic search

methods are presented. The thesis concludes with a discussion and overall evaluation

of the research.

The individual chapters of the thesis are summarised as follows:

- Chapter 2 ‘Personnel Rostering Problems’ : An overview of the large body of re-

search on automated methods for personnel rostering is presented. The problem

Page 21: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

1. introduction 10

types are classified based on a variety of factors and the dimensions of the prob-

lem are defined. A comprehensive review of the most important methods in the

literature is given.

- Chapter 3 ‘Case-Based Reasoning’ : In this chapter case-based reasoning is intro-

duced as a framework for imitating human reasoning. The key research areas

in the field are defined. The chapter concludes with a review of the use of CBR

in scheduling and planning problem domains.

- Chapter 4 ‘A Nurse Rostering Model’ : The problem of rostering nurses at the

Queen’s Medical Centre University Hospital NHS1 Trust, Nottingham, UK (ab-

breviated as QMC herein) is presented as a constraint optimisation problem.

The problem is defined in terms of an extensive set of customisable constraints

which the nurse managers would like to see satisfied. Different types of simple

‘repair’ operations for solving constraint violations are defined. Sample data

from the QMC is presented.

- Chapter 5 ‘Case-Based Repair Generation’ : CABAROST is presented as a method

for storing examples of constraint violations and corresponding repairs. The

issues of abstraction and generalisation are addressed so that the information

about violations and repairs can be widely applied to future problems. The im-

portant process of case retrieval and solution adaptation are described. During

retrieval cases are found in the case-base containing violations which are similar

to the violation which is being repaired. The repairs stored in the retrieved

cases must be adapted before they can be used to solve the new violation. The

chapter includes a discussion of the methodologies used to train the case-base

using examples of real-world rostering decisions from the QMC. Some basic

experiments are used to determine how closely CABAROST can imitate the

decision making of experts.

- Chapter 6 ‘Violation Features and Weighting’ : A large number of different in-

dices were used to describe the violations inside cases in CABAROST. Chapter

1National Health Service

Page 22: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

1. introduction 11

6 presents an automated method which simultaneously chooses good quality

problem features and determines their relative importance based on the cases

in the case-base.

- Chapter 7 ‘Combining CABAROST with Tabu Search’ : CABAROST is used to

generate repairs to individual constraint violations. In Chapter 7, algorithms

are presented which use CABAROST in an iterative fashion to attempt to solve

all of the constraint violations in a problem. These algorithms are based on

the commonly used meta-heuristic tabu-search. Tabu search algorithms which

incorporate CABAROST generated repairs perform considerably better than

those which employ random repair generation strategies.

- Chapter 8 ‘A Memetic Algorithm for Determining High Quality Repair Orderings’ :

This chapter deals with the important issue of repair ordering for highly con-

strained rostering problems. A memetic algorithm is used to evolve good qual-

ity sequences of CABAROST generated repairs. In addition to the problem of

repair ordering, this hybrid method also addresses the issue of learning from

failure. The algorithm keeps a memory of violations which have been repaired

and can detect when a violation ‘re-appears’ in the roster. When this occurs the

case which was originally used to repair it is deemed to have failed, and a case-

weighting strategy is used to penalise it accordingly. An increase in case weight

reduces the chance that the case will be erroneously used for future problems.

The thesis concludes with a discussion about the effectiveness of the methods

presented and an analysis of how the research objectives were met. Suggestions are

given for future research which could continue the work presented in this thesis.

Page 23: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

12

Part I

Background

Page 24: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

13

Chapter 2

Personnel Rostering Problems

2.1 Introduction

Rostering problems can be found in almost all working environments but the most

interesting and difficult problems are found in organisations which employ large num-

bers of staff with multiple skills. The quality of the rosters produced for these or-

ganisations can have a tremendous impact on their survival. The financial success of

private companies is dependent on the conflicting factors of cost-effective man-power

utilisation and the wider effects of staff satisfaction and morale [229]. In the public

health-care and education sectors the cost of staffing must be balanced with com-

plex skill requirements and effective personnel management in order to best serve the

needs patients and students [208].

Personnel rostering can be defined to be the problem of placing resources (staff

members), subject to constraints, into slots in a pattern, where the pattern denotes a

set of legal shifts defined in terms of work that needs to be done [251]. A wide variety

of constraints can be imposed on rosters depending on the legal, management, and

staffing requirements of individual organisations. The measurement of the quality of

rosters is also highly dependent on the organisation they are created for. In most

real-life problems this measurement must represent a wide variety of different factors.

The class of personnel rostering problems is a sub-set of the wider class of schedul-

ing problems [251]. In fact, they form some of the most highly constrained, and

therefore difficult to solve, examples of scheduling problems. This chapter does not

Page 25: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 14

attempt to cover the literature in the wider field of scheduling, except where it is

directly applicable to personnel rostering. In general the nouns roster, schedule, and

timetable will be used interchangeably to describe the working pattern allocated to a

member of staff or group of staff members over a period of time.

Research into personnel rostering problems can be found in the literature from

the mid 1960s. Many examples of rostering problems, and the methods used to solve

them, have been published. In this chapter the main features of various problems will

be introduced and some of the key texts will be reviewed. Particular attention will

be paid to those approaches which represented significant progress in the field. The

reader is directed to any of the numerous review papers referenced in this chapter for

details of other, less significant, advances.

The methods which will be introduced later in this thesis were developed for

rostering nurses in hospitals. Consequently, the focus of this chapter will be on

methods for the rostering of nurses rather than more general personnel scheduling.

However, the definitions used are generally applicable to the wider class of problems,

and important approaches from outside nurse rostering will be considered. Nurse

rostering problems were among the first to be investigated by computer scientists

and operational researchers and have been used as test problems for many different

approaches.

This chapter will be organised as follows. The various dimensions which can

be used to categorise and describe personnel rostering problems will be defined in

Section 2.2. In Section 2.3 a comprehensive review of the state-of-the-art in personnel

rostering will be presented.

2.2 Dimensions

2.2.1 Employees

There are a number of ways that employees can be modelled in automated rostering

systems. Often the choice of representation reflects the solution approach being used.

The key differences between them are highlighted here.

Page 26: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 15

Staff Pool Size

Many authors distinguish between two distinct employee planning problems: staffing

and assignment [32, 229, 240]. Staffing problems include the determination of the

number of staff to employ according to some forecast of the demand over a period, the

mix of skills that are needed in a particular unit, the design of shifts (i.e. start time

and length) which effectively cover particular demand profiles, and the generation

of working regulations for all staff and for different subsets of staff. Assignment

problems include the generation of on-off working patterns (deciding when staff will

take days off) and the allocation of specific shifts to specific employees. Although

there is a large degree of inter-dependency between these issues most of the published

research focuses on one problem or the other. The case-based reasoning methodology

presented in this thesis addresses the assignment problem and so staffing problems

will be referred to only briefly in this chapter. Nevertheless, they are an important

and relevant research area as the solutions to staffing issues are passed directly on to

the assignment problems in the form of parameters and constraints [239].

Some methods do solve both staffing and assignment problems simultaneously.

Burns and Carter [63] present a heuristic rostering approach which used daily demand

statistics and some simple working time constraints to calculate both the number of

staff required and the cyclical off-day pattern that these nurses would follow. Beau-

mont [32] developed a mathematical approach which determined the number of staff

required over different periods (according to heavily fluctuating demand), the times

at which shifts should start, and generated schedules for individuals. Some nurse

rostering methods use a pool of float nurses to address the problem of shortages in

rosters either during scheduling or after assignment has taken place [162, 235, 239].

Most of the methods described in the literature roster single units at a time al-

though some do consider entire organisations. In assignment problems for hospitals,

staff size per ward is typically in the region of 5-50 nurses (e.g. 6 in a Canadian ward

[43], around 20 in some Belgian hospital wards [55], 30 in a UK hospital ward [10].

However, most methods are designed to allow variable staffing levels (constrained by

obvious computational implications for mathematically intensive approaches). Ap-

Page 27: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 16

proaches that tackle institution-wide problems have been developed. Meisels and

Kaplansky [159] developed an agent-based approach which treats the hospital as a

controller and the individual staffing units as agents.

Representation

The representation of employees in rostering problems has evolved over the years.

In staffing problems there is usually no need to model actual employees because the

objective is to determine staff size. The emphasis on more flexible and staff-friendly

working regulations in recent years has enforced ‘individuality’ onto nurse rostering

problems. With this in mind, rostering methods can be classified as follows:

- Anonymous : employees are not modelled as individuals in the problem. Most cycli-

cal rostering method by nature must treat employees in this way. Warner and

Prawda [239] identify staffing patterns for individual wards which will minimise

certain objectives, and then suggest that these patterns be used as an input to

an assignment scheduler. Ozkarahan and Bailey [187] generate good quality,

feasible sets of shift patterns for a number of wards across a hospital and then

suggest that nurses (and wards) should choose from the pattern sets according

to their individual circumstances.

- Personal : employees are modelled explicitly in the system. This approach has

the advantage that individual preferences and requests can be modelled rather

than simply relying on generalised requests for all nurses or groups of nurses.

Most algorithms use this approach as it was recognised very early that personal

factors are vital to successful employment [229]. Warner developed a form-based

methodology for eliciting preference and request information from individual

employees - and introduced the concept of ‘fairness’ with regards to the influence

that nurses have over rostering decisions. Modern commercial systems such as

ANROM [235], ORBIS Dienstplan [162, 163, 164], and INTERDIP [4] allow

individual ‘account’ style representations of nurses - and provide the means by

which to specify complex planning regulations on a per-nurse basis.

Page 28: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 17

Skills and Qualifications

Some of the most significant decisions that must be made during rostering are those

concerning the type of staff concerned [249, 250]. Employees can be categorised ac-

cording to a number of factors, including their basic qualifications, skills and training,

experience, and even personality, gender and nationality. Managers must make plan-

ning decisions concerning the substitutability of staff - that is the ability of staff

members of one category to take over the roles and responsibilities of those in other

categories. In the literature a wide range of approaches are considered. For the

purpose of this thesis the following categories have been identified:

- Single-skill class : all staff are ‘the same’ from the point of view of the scheduler.

- Disjoint skill classes : staff can be divided into classes according to a single criterion.

These problems can be further subdivided according to the specification of

global requirements for minimum staffing levels (irrespective of class). When

there are no such requirements then each class can be rostered separately thus

considerably decreasing the problem size for those methods with combinatorial

complexity [17, 84].

- Multi-skilled : individual staff members have a set of skills associated with them.

This scenario is typical of problems which take a task -oriented approach (see

below) where a particular staff members assignability to a task is dependent on

their skills [66, 102, 248]. Under a multi-skilled model staff members cannot be

subdivided easily into classes and this may have consequences for the tractability

of solution approaches.

- Hierarchical : staff members are arranged into a hierarchical structure. This struc-

ture may represent seniority (for example, qualified nurses outrank nursing

aides) or substitutability (staff members higher in the hierarchy can be used

when no staff of lower level are available, or vice versa), and commonly a com-

bination of both. Often penalties are associated with substitution of staff. This

can be used to represent dissatisfaction that senior staff may feel at taking on

Page 29: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 18

remedial roles, or managerial dissatisfaction that unsuitably trained staff are

being given too much responsibility. Hierarchical structures can also be used

to represent supervisory roles, for example between qualified staff and trainees

[10, 157, 167].

- Mixed : the most flexible approaches in the literature adopt an approach which

mixes the multi-skill and hierarchical models [52]. In the method described in

this thesis a background hierarchy based on qualification levels is superimposed

on a set of skills for each nurse.

2.2.2 Shifts and Planning Period

The wide variety of real-world scheduling problems that can be found in organisations

has lead to a number of different approaches to representation. Representation issues

are inevitably a trade-off between the desire to realistically model real-world situations

and the demands of the scheduling methods employed (including the availability of

computational resources). In this section the differences between cyclical and non-

cyclical schedule, shift assignment types, and the length of the planning period will

be discussed.

Cyclical vs Non-cyclical

A cyclical roster is a common pattern of shifts which groups of employees follow

on a rotating basis. Many early automated rostering methods produced cyclical

schedules [8, 16, 30, 62, 68, 114, 152, 200, 228]. Tien and Kamiyama [229] define an

individual schedule as one assigned to a staff member which is different to that of

his/her co-workers. They define a common (cyclical, or rotational) schedule as one

which over time is the same as that of his/her co-workers. There are advantages to

using both approaches but it is noted that most modern scheduling systems focus on

the production of individual schedules.

Cyclical schedules have a number of advantages for both administrators and staff

members. These schedules need only be produced when there is a change in scheduling

requirement and so their maintenance overhead is reduced [49]. Furthermore, cyclic

Page 30: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 19

schedules are predictable and allow staff to plan their social or family life around

working patterns which are certain well into the future. They are also perceived

as ‘fair’ because all staff members work unpopular shifts and work-stretches equally

[49, 152, 213]. From a mathematical point of view the formulation of problems is

simpler and many exact algorithms exist for the simple problems [63, 167, 213].

The most serious disadvantage of cyclical rostering is the lack of flexibility. In-

dividual preference are difficult to incorporate and disruptive events such as staff

training, sick-leave, and annual leave tend to distort cyclic patterns [49]. It is very

difficult to model fluctuations in supply and demand using cyclic approaches [211].

Cyclic approaches are suitable for organisations with small numbers of low-skilled

staff and for such environments are still used today. They have fallen out of the scope

of modern rostering research due to the focus on larger, more difficult, real-world

rostering problems.

This thesis describes a non-cyclical approach to personnel rostering. Non-cyclical

rosters allow greater flexibility at a cost of reduced regularity and predictability.

Most of the modern, large scale rostering approaches described in this chapter are

for non-cyclical problems. Despite the lack of regularity and predictability of non-

cyclical rosters, employees appear to prefer their ad hoc nature [235]. Non-cyclical

rosters can more easily handle staff preferences and requests, fluctuating demand,

and disruptions due to staff absence.

Assignment Types

The traditional method for representing rosters for manual nurse scheduling is as a

two-dimensional grid with each row representing the roster, over the rostering period,

for a single nurse. Columns represented a subdivision of the rostering period into

(usually) even lengths of time (e.g. one day). In other applications columns might

represent tasks. For automated nurse rostering Cheang et al. [70] distinguish between

three ‘views’:

1. nurse-day views represent directly the two-dimensional grid used in manual

rostering where each variable is assigned a value describing the shift assigned

Page 31: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 20

to a nurse on a particular day. For simple models binary variables are used

describing on (1) and off (0) assignments. More realistic models assign different

values according to the time of day that the staff member is to work.

2. nurse-task (or nurse-time) views are generalisations of nurse-day views. Each

variable represents the assignment of a nurse to a particular task or time-period

in the planning period.

3. nurse-shift pattern views use variables to assign nurse to pre-defined shift pat-

terns. The shift-patterns are designed to be feasible with respect to certain

hard constraints and can be pre-evaluated with respect to their satisfaction of

soft-constraints.

Nurse-day views are used most often throughout the literature [4, 26, 110, 121,

167]. Nurse-task views have been used for some nurse rostering problems [123, 240]

and the generalised concept is used frequently in the wider-employee rostering lit-

erature for task-oriented problems such as manufacturing [233] and transportation

[67, 227]. Pattern-oriented rostering can infer considerable computation advantages

due to the reduction in solution space [10, 57, 83, 84, 152, 208] but at the cost increased

pre-processing demands (many shift patterns must be established and evaluated be-

fore scheduling can commence). In general, it is difficult to ascribe advantages and

disadvantages to the choice of representation as it is highly dependent on the nature

of the problem domain.

The length of shift patterns used depends on the organisation involved. Shifts can

be categorised as:

- On-Day/Off-day : Staff either work or they are off. For non-continuous operations

this represents the definition of a single shift type [62]. For continuous opera-

tions establishing on-off days can be a management task which is solved before

individual shifts or tasks are assigned [229].

- Fixed Shifts : The working day is subdivided into disjoint or overlapping shifts of

fixed starting time and length. Many hospitals operate on a three shift system

Page 32: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 21

with day, evening, and night shifts defined [17, 52, 235]. This author found

that in British hospitals overlapping shift types are often used to accommodate

part-time staff.

- Variable shifts : In very flexible systems shifts’ starting and ending times are not

defined a priori but are established as part of the scheduling process[23, 179,

187, 198].

- Tasks : Task assignment models are used for scheduling staff with specialised skills

and qualifications [94, 176, 233, 248]. These models often specify working times

implicitly by the starting and ending times of the assigned tasks.

Planning Period

The length of the planning period has obvious computation implications. Many early

methods were severely restricted by the limited computing power available - in 1972

Warner and Prawda [239] limited this period to 4 days although this was blamed

on limited demand forecasting. Cyclic scheduling approaches over-came this to some

extent because working patterns did not need to be established for each individual

[49]. Non-cyclic scheduling methods usually tackle problems over four weeks (or

one month) [5, 7, 20, 43, 68, 121, 156, 162, 181, 215]. Other planning periods used

include one week [22, 66, 72, 84, 119, 145], two weeks [17, 46, 178], three weeks

[13], six weeks [29, 168, 240], twenty one weeks [111], and up to a year [45, 68]. A

characteristic of modern, well designed systems is the ability to specify the planning

period dynamically [52, 187].

2.2.3 Constraints

Real world rostering problems are particularly difficult to solve because of the large

sets of constraints which are imposed on them. These constraints are usually con-

flicting - satisfying one constraint may lead to another constraint being violated in all

but a handful of solutions [165]. For most real-world problems satisfaction of every

Page 33: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 22

constraint is impossible and so methods for relaxing or weighting constraints must be

considered [164].

In this section the focus will be on constraints with significant operational rel-

evance. Such constraints act as a high level description of the rostering problems.

Constraints used by individual methods for mathematical modelling purposes, such

as those which specify that a member of staff cannot be in two different places at the

same time, will not be described here.

Coverage and Demand

From a management perspective ensuring that an adequate number of staff are avail-

able to meet the demands of the organisation is perhaps the most fundamental re-

quirement of rostering algorithms. Aside from employment costs, which are generally

measured as objectives to be minimised if they are included, meeting demand for

employee time is the key element used to measure the performance of staffing policy.

This author notes that all of the personnel rostering methods he has encountered

include coverage constraints of some kind. Coverage constraints define the numbers

of staff required over certain periods, or for certain tasks, and the mix of skills that

those staff members must possess.

Establishing coverage constraints for a rostering problem involves determining

the demand for employee time and skills. For nurse rostering problems this can be

measured in terms of patient numbers and the seriousness of the conditions being

treated [211]. Call centres measure the number of incoming phone-calls they get over

their hours of operation to determine how many operators to employ - and they must

ensure that there is sufficient redundancy to cope with periods of peak traffic [22].

The methods used for defining coverage requirements from historical demand are

beyond the scope of this thesis. It is assumed for the majority of personnel rostering

algorithms that these coverage requirements are fixed.

Coverage constraints generally define at least one of the following levels:

- Minimum Requirement : The smallest number of staff or the lowest ‘quality’ mix of

staff possible for the operation of the unit. For most methods this level must

Page 34: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 23

be met for the produced roster to be considered feasible [4, 7, 29, 52, 123, 125,

155, 164, 219, 239].

- Ideal Requirement : The level of staffing which allows the unit to run comfortably.

This level indicates desired staff numbers for periods of average demand and

may not be met in circumstances such as staff shortages [52, 164].

- Maximum Limit : The largest number of staff that may be working over specified

times [29, 52, 120, 219]. This constraint is rarely stated explicitly and for units

with static staff levels may be ignored (usually because it is satisfied due to

strict temporal constraints). In some models this constraint is treated as an

objective - i.e. to minimise staffing cost through surplus [187].

Time related

There are a large number of different temporal constraints which can be applied to

rostering problems. These constraints are measured over varying periods of times

and for some real world problems are very detailed. The main types of time-related

constraints are listed here:

- Working hours : minimum/maximum hours that a staff member may work over

a set period (usually over one or two weeks but could be anything between a

single day through to a year [75] in some examples) [4, 55, 64, 73, 135, 178].

Minimum hours are important for problems where staff members have guaran-

tees stipulated in their employment contracts (such as in the problem described

in this thesis).

- Rest periods : minimum number of hours between working shifts [4, 55, 64, 73, 107,

135].

- Consecutive shifts/days : minimum, maximum, or exact number of shifts or days

that can be worked in a row [43, 62, 64, 72, 135, 234]. Some problems also

specify the minimum, maximum, or exact number of shifts of a specific type

that can be worked in a row (e.g. night shifts) [72, 73, 122].

Page 35: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 24

- Shift Patterns : patterns of shift types which should not be assigned. These could

be illegal pairs of shifts or undesirable shift patterns of larger length [55, 73].

- Weekends : minimum/maximum number of consecutive weekends or the maximum

number that can be worked over a period [62]. Some problems specify that staff

members must work both days of the weekend so that a split of the weekend

does not occur [43, 55, 62, 64, 72, 178, 234].

- Holidays : public holidays, annual leave, study periods, and other forms of pre-

dictable unavailability [53, 72].

- Historical : constraints which are specified over periods larger than the current

planning period such as yearly working hours constraints or on-going weekend

constraints [4, 53, 73, 135, 239].

Personnel Preferences and Requests

Low staff morale can have very negative consequences for an organisation. In health-

care institutions it can have tremendous implications on the quality of patient care

[74, 169, 210]. Poorly designed rosters can cause considerable staff dissatisfaction and

lead to increased absenteeism and staff turnover [185]. One of the most important

factors affecting staff satisfaction is the level of perceived involvement of staff members

in the rostering process [210].

Staff members’ requests for individual days off, or specific shifts on certain days,

are allowed in many of the rostering methods described in the literature [4, 43, 121,

135, 230, 234, 239]. The treatment of these requests varies considerably between

approaches and numerous attempts to ensure ‘fairness’ of request allocation have

been proposed [17, 91, 239].

Requests usually represent ‘one-off’ constraints that do not occur on a regular

basis. Some methods include additional constraints which specify shift patterns which

staff prefer not to be assigned that are then applied on a regular basis. Warner

[240] introduced a questionnaire-based system which allowed nurses to weight certain

possible roster characteristics (e.g. single days off, long work stretches), according to

Page 36: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 25

their ‘aversion’ to them. To ensure fairness each nurse was given a bank of 50 aversion

weights which they could spread throughout the choices. Arthur and Ravindran

[17] described a similar approach which involved nurses ranking characteristics on

a scale of 1 to 5. The rostering problem described by Dowsland [84] assessed a

large number of possible shift patterns according to their satisfaction of a number of

constraints, including nurse preferences and requests, and used the evaluated costs in

the objective function. The ANROM method [235] allows contracts to be specified on

a per-nurse basis which can include complex specifications of preference for certain

working patterns.

Hard and Soft Constraints

It is common throughout the literature to describe constraints as being either hard

or soft [52, 60]. Hard constraints are strictly applied and must be satisfied in order

for a roster to be considered feasible. Soft constraints are more flexible and do not

have to be satisfied. They are frequently used to describe roster quality through the

inclusion of penalty weights into objective functions.

The definition of constraints as hard or soft varies considerably between problems

and methods. Coverage constraints are generally considered to be hard - especially

when they define minimum coverage requirements [10, 52, 55, 125, 157, 202, 239].

However some methods do treat them as soft constraints [71, 163, 164, 168, 182,

183, 240]. Some temporal constraints, such as working hours that are set by law,

are described as hard constraints [43, 168], but usually the large number of temporal

constraints defined for most real world problems ensure they are treated as soft [53,

158, 164, 168, 240]. All methods surveyed treat staff preferences and requests as soft

constraints.

2.2.4 Objectives

Nearly all automated methods treat rostering as an optimisation problem and use

an objective function to define roster quality [70]. Early mathematical program-

ming methods are formulated to guarantee optimality with respect to these objective

Page 37: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 26

functions and a wide variety of different objectives were defined for each problem ad-

dressed. Heuristic methods also limited the definition of objectives. Meta-heuristics

and constraint methods are generally more flexible and define roster quality by aggre-

gating the penalties associated with violated constraints. The objectives and mod-

elling approaches used by each method are described in more detail in Section 2.3.

Some of the characteristics of roster used to define objective or penalty functions

are:

- Minimising deviation from demand : can be defined as positive or negative deviation

or both [17, 43, 95, 186, 187, 239].

- Minimising number of employees : for methods which also plan staffing levels [13,

17, 21, 86].

- Minimising personnel cost : can restrict the number of employees planned, or the

higher cost of assigning many hours to highly qualified staff [164, 226].

- Minimising violation of soft constraints : usually using a penalty function [17, 55,

240].

2.3 Rostering Approaches

In this section the most significant methods that have been published in the scientific

literature will be discussed. The papers described here represent a fraction of those

that have been written - in one recent review over 700 published articles were refer-

enced [89]. This author notes that there is a high degree of duplication of solution

approaches. For the purpose of this thesis papers have been selected as representatives

of their class.

As the focus of this thesis is nurse rostering most of the papers reviewed address

these problems. However a number of important general rostering methods are also

considered. Significant approaches from other domains, especially transportation, are

also presented as examples of some of the dimensions discussed in the previous section.

Page 38: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 27

The papers also focus on assignment as opposed to staffing problems, although a

number of mixed approaches will be discussed.

The papers presented are categorised according to the solution approach used.

The approaches will be discussed in the order: mathematical programming, constraint

programming, artificial intelligence, decision support systems, heuristic methods, and

finally meta-heuristic search.

2.3.1 Survey Papers

Before describing some of the approaches to personnel rostering that can be found in

the literature some survey papers will be examined. Particular attention will be paid

to both the classifications that are used by each paper and the authors’ observations

of trends and potential research directions.

Tien and Kamiyama [229] subdivide the manpower scheduling problem into a five-

stage framework. They identify some key difference in rostering approaches including

the distinction between cyclical and non-cyclical rosters, the length of the planning

period, and the nature of the constraints applied. They define constraints into two

categories: those which are “inherent to the structure of the [manpower rostering]

problem” (including coverage requirements and legal working hours), and those con-

straints which are specific to the application of the problem model. The five stages

of the framework are:

1. Temporal manpower requirements : the coverage requirements for each shift on

each day are determined according to the demand profile.

2. Total manpower requirements : the total number of staff (of each type) that

is required to meet both the coverage requirements and the other temporal

constraints is determined.

3. Identification of recreation blocks : the identification of periods in which em-

ployees are not assigned shifts - including the identification of single days and

weekends, and the maximum and minimum number of consecutive days that

can be taken off.

Page 39: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 28

4. Scheduling the recreation blocks : the blocks identified in Stage 3 are assigned to

specific nurses either individual or as part of a rotating cyclic roster.

5. Assignment of shift schedule: the specific shifts assigned to nurses on their

assigned on-days are determined.

The authors present a number of models that are used by various approaches

to solve each of these stages. They also note that some of the stages are solved

simultaneously. The CBR-based methods introduced in this thesis do not address

Stages 1 and 2 - these values are presented as parameters of the problem being

solved. Stages 3 to 5 are addressed simultaneously - although the formulation does

not explicitly determine recreation blocks as identifiable elements.

Bradley and Martin [49] identify the importance of good personnel scheduling on

staff recruitment and retention. They define three basic rostering decisions: staffing,

personnel scheduling, and allocation. The authors investigate the relationship be-

tween these decisions - and the impact that each has on the final solution. They

conclude that there exists extensive interdependencies and suggest that a feedback

mechanism should be included to ensure that information about deficiencies in sched-

ules affects future staffing decisions. The authors also determined two features by

which to uniquely classify rostering algorithms. The first is the cyclical/non-cyclical

nature of the scheduling output, and the second is the underlying solution technique

used (heuristic, mathematical programming, or self-scheduling). The paper concludes

with an analysis of the issues that had not yet been addressed by scheduling algo-

rithms, including the design of shifts that meet the requirements of both staff and

employers.

Sitompul and Randhawa [211] surveyed the different models for the personnel

rostering problem, noting that heuristic, optimisation (i.e. mathematical and goal

programming), and artificial intelligence methods were employed. They characterise

rostering problems as being either cyclical or non-cyclical and note the complex sets

of constraints that can be required by hospitals. Their paper investigates the use of

decision support systems (DSS) for nurse rostering. In particular the authors note

that nurse rostering problems may have elements with a large degree of structural

Page 40: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 29

consistency, but that some components require subjective assessment. They identify

four characteristics of a DSS for nurse rostering:

1. Problem models are less structured.

2. Models and solution methods are integrated with database access and retrieval

functions.

3. Ease of use and interactivity.

4. Flexibility and adaptability.

These characteristics lead to the design of systems which are less rigid in structure

and more in-tune with the needs of the user. The elements of a DSS noted in this

paper can be found in many of the most successful nurse rostering methods developed

in the last decade. Of particular relevance to this thesis is the recognition that the

concept of decision making in personnel rostering is key to the generation of rosters

which satisfy both staff and managers.

Warner et al. [241] divides nurse management into two conflicting sets of issues:

patient-oriented and employee-oriented. The patient-oriented issues include the pa-

tient care philosophy used within the hospital which covers such factors as care plans,

necessary staff contact, and the assignment of individual staff members to individual

patients. The authors identify six employee-oriented issues which focus on different

staff management issues such as employee cost budgeting, staffing requirement deter-

mination, and long and short range scheduling. The paper includes a description of

what hospital administrators look for in rostering systems. Such qualities include ef-

fective scheduling of nurses and reporting functionality which measures and monitors

the performance and utilisation of staffing resources.

Jelinek and Kavois [124] wrote a survey paper with a similar format to that of

Warner et al. and Sitompul and Randhawa (in fact it was published in the same

publication). They make prediction about the future of nurse staffing and rostering.

The emphasis is placed on the effective management of staffing information and on

interactive decision-based scheduling systems.

Page 41: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 30

Wren [251] defined the relationship between various scheduling problems, includ-

ing personnel rostering. He identifies the key aspects which scheduling problems share

in common:

- Objects : are the people, vehicles, classes, examinations, machines, jobs in a factory,

et cetera that must be linked in space and time in order to solve a particular

problem.

- Pattern: an ordering of events (e.g. working shifts) which may be created as part of

the scheduling process, or may be pre-defined to form a feasible set from which

members can be chosen to create overall schedules.

- Constraint : define physical or legal relationships between objects and between ob-

jects and patterns. The author notes that constraints can be seen in two dif-

ferent ways. Constraints may be seen as prescriptive rules which hinder the

achievement of the goals. However, they may also be seen as integral to the

problem specification and may help guide the user or solver towards a solu-

tion. It is also noted that decisions about relaxing constraints may need to be

included into the scheduling process in order to find good solutions.

- Schedule: includes all of the spacial and temporal information necessary to describe

how a task must be completed referring to the placement of objects in a pattern.

The author notes that the words ‘schedule’, ‘sequence’, and ‘timetable’ are used

as if they were synonymous in many papers. They give definitions for the latter

two terms which show the subtle difference in meaning. A timetable gives the

times at which certain events are to take place and not necessarily where or

how. Sequences define the order in which events will occur (or resources will be

processed) but without necessarily including information about how long the

events will take.

Wren goes on to define rostering as “the placing, subject to constraints, of re-

sources into slots in a pattern. One may seek to minimise some objective, or simply

to obtain a feasible allocation. Often the resources will rotate through a roster.” Im-

portantly, Wren noted that many rostering problems do not have well-defined goals

Page 42: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 31

- either in terms of satisfaction of constraints or minimising (maximising) certain

objectives. He asserts that the use of non-optimising methods can be justified when

different players (decision makers) have differing goals and expectations about the

solution outcomes.

Methods that are commonly used to solve scheduling problems are identified.

These include mathematical and heuristic methods and one of the first review of

the impact of meta-heuristic methods on the field of scheduling. Wren concluded

that meta-heuristic methods, including simulated annealing, tabu search, evolutionary

algorithms, heuristic based constraint logic programming, and ant algorithms, have

been largely successful despite their inability to guarantee optimality. Wren concludes

his survey with the observation that many researchers have attempted to ‘carry over’

approaches from one branch of scheduling to another with little apparent success.

He suggests that ‘cross-fertilisation’ may be feasible between closely related branches

(e.g. education timetabling and personnel rostering) and not between problems with

considerable structural differences.

Spyropoulos [221] wrote a review on the use of artificial intelligence techniques for

planning and scheduling problems in hospitals. Spyropoulos identifies personnel ros-

tering as just one of the many problems in the hospital environment. Other problems

include therapeutic planning, drug logistics, ambulance scheduling, and operation

theatres scheduling. Importantly, Spyropoulos notes that these problems are not in-

dependent but must be substantially integrated in successful hospitals. A number of

different artificial intelligence techniques have been used for these problems including,

agent systems, machine-learning, rule-based systems, and constraint reasoning.

Silvestro and Silvestro [210] reviewed the nature of manual rostering in British

hospitals. They identified three different approaches to nurse rostering for hospital

units (e.g. wards):

1. Departmental rostering which is conducted by a senior staff member who pro-

duces the roster for the whole unit.

2. Team rostering, where staff are divided into teams. Within each team the staff

members cooperate in order to produce team rosters. The team rosters are

Page 43: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 32

coordinated for the whole unit either through discussions between team leaders

or through the mediation of the unit manager.

3. Self -rostering, where the roster is prepared by the unit staff, usually overseen

by a senior staff member.

These three approaches sat on a continuum with self-rostering and departmental

rostering at either extreme and team rostering in the centre. The paper reported

that staff satisfaction increase towards the self-rostering end of the continuum but

that self-roster was unable to cope with complex rostering problems. Departmental

rostering was perceived as autocratic by staff members. It was also open to the risks

of favouritism and, if unsatisfactory rosters were produced, increased absenteeism.

However, departmental rosters were well coordinated and balanced and allowed for

far greater complexity with regards to constraints, shift size, and skill mix. It was

reported that the team-rostering/self-rostering rostering approaches were increasingly

used within British hospitals.

Cheang et al. [70] provided a bibliographic survey of nurse rostering problems.

They described some of the various formulations that can be used to represent ros-

tering problems mathematically. Their classification method for the representation

of decision variables in nurse rostering problems is described in Section 2.2.2. The

authors also describe many of the different constraint types which are found in ros-

tering problems (see Section 2.2.3) and the standard techniques for measuring roster

quality. They go on to describe a number of solution techniques and discuss such

issues as problem initialisation and post/pre-planning processing.

Ernst et al. [89, 90] present a review of staffing scheduling over a wide-range of

industrial applications. They describe the rostering problems for the transportation

industry, health-care systems, emergency services, call centres, hotels, restaurants,

financial services, tourism, venue management, manufacturing, and retail stores. The

authors argue that rostering methods need to be further generalised in order to in-

crease their flexibility and applicability. In [89] the authors give an annotated biblio-

graphical survey of over 700 papers. This massive survey classifies papers according

to the application industry and the method used to solve the problems.

Page 44: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 33

Blochliger [47] give a basic introduction to staff rostering. They present a simple

generalised model of rostering problems intended as a tutorial for those new to the

field. The level of detail included in this paper is fairly limited, but it does give a

good summary of the basics of personnel scheduling. Alfares [14] present a review of

tour-scheduling literature. The tour-scheduling problem involves determining both

the hours during the day and the days during the week for each employee. Solution

techniques for these problems fall into one of ten categories: manual production,

integer programming, implicit modelling, decomposition, goal programming, working

set generation, LP-based solution, construction and improvement, metaheuristics,

and other approaches. Kohl and Karisch [132] review airline crew rostering methods

and describe in detail the different mathematical formulations of these problems.

A comprehensive review of survey and other key papers for the nurse rostering

problem has been written by Burke et al. [56] for publication shortly after the sub-

mission of this thesis.

2.3.2 Mathematical Programming Methods

Mathematical programming methods were among the first to be used to solve person-

nel rostering problems. They are capable of finding provably optimal solutions but in

general require restrictive models which satisfy sets of basic assumptions. As a result

they tend to be inflexible and incapable of solving realistic problems [235]. Their

combinatorial complexity also means that they tend to be slow at solving all but the

smallest of problems. Nevertheless, they have been successfully applied to specific

problems and have been used in a number of commercial products - particularly for

industrial domains in which guaranteed optimality is vital.

Most of the methods described here use integer or linear programming models.

The formulation of rostering problems in this way has the advantage that readily

available commercial LP/IP solver software such as CPLEX [116] or Microsoft Excel

Solver [98] can be used to find solutions. These methods are capable of finding optimal

solutions with respect to a single objective. Multiple objectives are tackled using goal

programming methods. These methods attempt to find solutions which satisfy sets of

Page 45: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 34

objectives according to target levels and priority relationships. They provide a degree

of flexibility which the single objective methods lack.

Integer and Linear Programming

Many examples of these algorithms exist in the literature across a wide range of

industrial applications. The methods in general can be characterised by their focus on

a particular objective which must be maximised or minimised. Many of the methods

employ problem subdivision techniques and/or heuristic assignment rules in order

to reduce their complexity and thus increase their applicability to realistically sized

problems.

Warner and Prawda [239] formulated a mixed integer quadratic programming

problem to identify shift patterns which minimise the shortage costs in nursing care

over a rostering period over a number of wards. It also calculates the numbers of

each skill class that will be assigned to each ward for each shift. The problem is

constrained by the total number of nurses of each skill class that are employed by the

hospital and minimum coverage requirements for the wards during shifts. A degree of

substitutability is allowed in the model with which allows nurses of one skill class to

take over the roles of another skill class which is in high demand. This is constrained

by a fixed substitutability level which limits how many times it can occur in a given

period. The model is generally applied to rostering periods of four days or less. The

method is anonymous in the sense that no personal information about individual

nurses is used - and hence no shift requests or individual preferences are considered.

The research is extended by Warner [240] with the introduction concepts of

scheduling quality. A roster is measured according to its “desirability as judged

by the nurse who will have to work it”. A number of factors are incorporated in this

measure including the number of weekends off, periods of consecutive shifts, single

days on, as well as by taking into account the nurses’ requests for days off. A notion

of ‘fairness’ is also defined which measures the quality of nurses’ schedules against

those of their colleagues. The objective function is formulated as a summation of

penalty weights which apply to the violation of the constraints and thus represents

Page 46: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 35

the penalty cost of the schedules. Nurses are assigned a certain number of weights,

proportional to the number of hours they work per period, which they then use to

weight their aversion to particular rostering features (e.g. weekends, split shifts, single

days on, etc.). This system allows for very fair evaluation of the quality of schedules.

The method is partially interactive by encouraging certain rostering decisions to be

made before using the automated algorithm. The algorithm was implemented in a

number of US hospitals.

Abernathy et al. [5] use a stochastic programming model to solve the problem

of both planning staff numbers according to fluctuating demand and designing fixed-

period rosters. They represent the demand for nurses for a particular day and location

as a random variable. Two types of decisions are made by the algorithm. Policy

decisions dictate the numbers of nurses required on the ward over the rostering period.

Allocation decisions use the coverage requirements set out by the established policy

as constraints for the generation of rosters for the nurses. An complicated iterative

algorithm is developed which minimises the cost of employing nurses according to

the policy decisions and the deviation from the daily demand levels according to the

shift allocations of the nurses’ rosters. The authors suggest that their algorithm is

particularly useful for organisations with large and uncertain variations in the demand

for staff.

Trivedi and Warner [231] present a branch and bound algorithm for allocation of

float nurses for short-term rostering. This method is used to assign a pool of float

nurses to various wards in a hospital on a real-time basis (i.e. at the start of each

shift). A measurement of severity is used in order to determine the requirement level

of each ward according to the shortages that exist (due to staff absence, increased

patient load, etc.). The branch and bound method then searches for ward allocations

which minimise the shortage severity of the whole hospital, and also minimise the

variance in the shortage severity over all the wards. The method is presented as

a decision support tool which helps managers determine the severity of shortages

according to the reports they receive from the ward managers. The algorithm is

tested in a hospital over 5 nursing units.

Miller et al. [168] introduces a subdivision of constraints into hard constraints

Page 47: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 36

(called the feasibility set) and soft constraints (called non-binding). The hard con-

straints dictate minimum staffing levels, restrictions on the work stretches, and the

maximum/minimum numbers of days nurses should work. The soft constraints set

stricter requirements to the hard constraints which should be met if possible. It is of

interest that individual nurses shift requests are given the highest importance in the

model. Even the hard constraints may be violated if this will preserve the nurses’ pref-

erences. This results in penalties being used to measure violation of hard constraints

and the possibility that feasible solutions can not be obtained. Overall the algorithm

attempts to minimise the sum of the penalties of the violations of constraints by as-

signing schedules consisting of days on or off. A cyclic-descent algorithm is used to

find near-optimal solutions with guaranteed convergence .

Bailey and Field [23] defines the concept of ‘flexshifts’ for problems which nor-

mally subdivide days into three 8-hour shifts. Shifts of 6, 8, and 10 hours are allocated

to employees in a linear programming model, allowing individual staff members to

choose shift lengths that suit them. Rosters are optimised by minimising the cost

of labour and the idle-times of staff members. In an alternative formulation Bailey

[22] presents an algorithm which treats rostering as the integration of two processes.

The first process involves allocating days on to employees over a period according to

constraints on the working patterns. The second process is that of determining when

on each of the allocated days on each employee must start. This second process aims

to schedule staff in order to meet fluctuating levels of demand over each day. The

method utilises algorithms that had been developed previously for the separate prob-

lems arguing that the process must be integrated because their constraints interact.

The problem is modelled as an integer program which minimises staffing costs and

customer inconvenience due to understaffing.

Mason and Smith [156] developed an integer programming model for solving nurse

rostering problems. It considers a number of constraints including shift costs which in-

dicate nurses’ individual dislike of particular shifts, ‘shift transitions’ which encourage

consecutive shifts to start at the same time if possible but with the second shift later

otherwise, and penalty costs for particular combinations of days on and off. Variation

from target hours for each employee is also penalised. Solutions are calculated using

Page 48: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 37

a graph modelling approach where nodes represent the shift assignments or days off.

Constraint penalties are dynamically modelled by weighting the arcs between these

nodes. The problem is thus that of finding lowest cost paths. The method allows for

non-overlapping skill definitions. The method is tested on data involving 86 nurses

with 7 skill levels, 5 shift types over 28 day periods.

Jaumard et al. [123] gives a linear programming model for rostering nurses which

satisfies coverage demands whilst minimising salary costs and maximising staff pref-

erence and the balance of shift assignments over teams. A variety of overlapping

shift types are defined which are used to cover a set of irregularly sized demand pe-

riods. Nurse preference is incorporated into the objective function and is weighted

according to seniority. Coverage constraints are complex in that they specify combi-

nations of nurse skills that must be present on the wards at any time. This method

allows nurses to have complex contractual agreements which can dictate very specific

working requirements. The algorithm was tested on data from a hospital in Canada.

Millar and Kiragu [167] introduce a mathematical model for cyclic and non-cyclic

rostering of nurses who work 12 hour shifts. This models an individual nurse’s ros-

ter as an alternating sequence of work-stretch and off-stretch patterns. The work-

stretches are used as nodes in a network used to generate an acyclic graph by which

the roster can be defined. The method allows for the definition of complex coverage

and working hours constraints. The method is implemented on CPLEX and tested on

small real-world problems. Although the method allows for the definition of reason-

ably complex problems it is not clear that it would be scalable to the large problems

encountered in many hospitals.

Bard and Purnomo [28, 29] give a combined linear programming and heuristic

model for solving nurse rostering problems with emphasis placed on satisfying in-

dividual requests whilst maintaining minimum coverage levels. The combination of

heuristic approaches with linear programming greatly reduces the computation time

required.

Eitzen et al. [88] present a method for solving workforce optimisation problems

with non-hierarchical, multi-skilled staff members. Because the skill structure is non-

hierarchical there is very little skill-substitution allowed. Employees are grouped

Page 49: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 38

according to their core skills and the algorithm ensures that shift patterns are fair

within these groups. The algorithm simultaneously schedules the days off for each

staff member, constructs suitable sequences of tasks according to skill, and schedules

shifts to employees accordingly. The method attempts to minimise the number of

understaffed shifts whilst maximising roster fairness between employees. The method

is tested on data from a power station.

Other approaches have been developed for various staffing problems. Byrne and

Potts [65] developed an eight phase linear programming model for scheduling toll

collectors based on historical data about demand throughout 24 hour periods which

takes into account complicated working regulations for both full and part time staff.

Other LP/IP programming approaches have been used for the rostering of customs

staff [155], postal service staff [27] and staff at a container terminal [144].

The staffing of call centres has received specific attention in the literature and a

number of mathematical approaches have been used. Beaumont [32] used a mixed

integer approach to solve a call centre problem with very detailed demand statistics.

The problem model took into account staff cost, exchange capacity, and the cost of

having customers waiting. Integer programming methods are combined with sim-

ulation techniques by Henderson and Mason [108] and Atlason et al. [18]. These

methods use simulations to evaluate performance of rosters. The advantage of this

approach is that the complexity of the problem can be increased without the need to

calculate objective values on other models.

Mathematical approaches have been used in the domain of passenger transporta-

tion. Yan and Chang [253] developed a set-partitioning method which minimises

cockpit crew cost and which plans suitable pairings of cockpit crew members. Weir

and Johnson [244] introduced a three phase system to produce work-rest schedules

for flight crews by trying to take into account circadian rhythms. Freling et al. [96]

developed a flexible branch and bound system for airline and railway crew schedul-

ing which allowed a variety of complex constraints to be established by the user.

Other approaches include a CPLEX implementation of mixed integer programming

approach to roster crews on the London Underground [220], and a set-partitioning

approach to the problem of roster staff in a multiple depot system [48].

Page 50: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 39

Goal Programming

Goal programming methods allow decision makers to include multiple goals (or ob-

jectives) into their models and then rank them according to their preference. A target

level can be set for each goal and algorithms then attempt to satisfy all the goals,

or if this is not possible they satisfy them in the order of priority set by the decision

maker. These methods tend to provide good decision making tools because they allow

users to manipulate the input variables in an intuitive and natural fashion.

Arthur and Ravindran [17] introduce a multiple objective nurse scheduling model.

Their method minimises staff size, minimises the deviation from desired staffing levels,

satisfies nurses’ shift requests, and minimises staff dissatisfaction (with respect to the

quality of shift sequence). They allow the decision maker to decide on the priority

ordering of these objectives according to their perception of the problem. The days

on and off are first assigned using a 0-1 goal programming model. A heuristic is then

used to assign specific shifts to nurses according to the existing on-off pattern. In their

model the authors allow non-overlapping skill classes to be established and the model

schedules these classes one at a time - there is no substitution of skill levels allowed. A

set of questionnaire forms are introduced in order to elicit information from both the

ward managers and the individual staff. These ask the nurses to indicate their level of

dislike for certain characteristic patterns (such as split weekends) and to mention any

specific shift requests that they might have. However, the method does not include

the fairness weighting that was used by Warner in [240] to ensure that all nurses

receive equal treatment. The method is tested on data from hospitals in the United

States.

Ozkarahan and Bailey [187] present a goal programming approach to set-covering

models. Their method aims to simultaneously minimise deviation from required

staffing levels, minimise the deviation from available staffing levels so that all staff

members are allocated enough shifts to satisfy their contractual arrangements, and

to ensure that the number of days on are sufficient to allow the number of shifts

required for each day to be covered. The authors present a number of alternative for-

mulations based on alterations to the objective functions for each goal. This allows

Page 51: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 40

decision makers to choose the combination which is most suited to their problems.

The method finds on-off patterns and allocations of shifts before assigning these to

individual nurses. As a consequence the method does not define any constraints based

on individual preference or contractual agreements.

Berrada et al. [43] have developed a multi-objective model for real-world nurse

rostering problems. This model includes a number of goals which are essential soft

constraints which are satisfied if possible. These goals are to limit the number of

consecutive working days (to prevent long work-stretches), preventing nurses from

working single days-on in isolation (off-on-off situations), satisfying special requests

of individual nurses, and group days-off (including grouping them with weekends-off if

possible). A number of hard constraints are also specified including specific weekend

working patterns, the maximum number of weekly working days, and the uniform

distribution of any surpluses or shortages of nurses over the week days. However, two

major simplifications have been made which limit the applicability of the approach.

The first is that only one skill-class has been defined and the authors do not discuss

the possibility for extending the model to include multiple skills. The second is that

nurses must work the same shift on every on-day. This is a significant assumption

which does not reflect the flexibility required of staff in modern hospitals.

Blake and Carter [45] introduce a goal programming approach for allocating hos-

pital physicians within acute care units. The paper present model for the selection

of cases to assign to physicians according to their capabilities and interests. The

objectives are to maximise revenue for the hospital, ensure physicians receive their

agreed level of income over a period (usually year by year), and to meet physicians

preferences for a preferred and consistent mix and volume of cases. Experimental

results are presented on data from a hospital in Canada.

Azaiez and Sharif [20] present a 0-1 goal programming model for nurse scheduling

for Saudi Arabian hospitals. This model incorporates a large number of constraints

that are specific to the hospitals that were surveyed. Of interest is the requirement

that night shifts must constitute at least 25% of the total workload for each nurse.

The method subdivides the nurses into a number of subgroups and produces schedules

for each separately.

Page 52: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 41

2.3.3 Constraint Programming Methods

Constraint programming methods are powerful artificial intelligence techniques which

have been used for many different combinatorial optimisation problems. The con-

straint satisfaction problem (CSP) is the problem of assigning the values belonging

to finite domains to the variables so as to satisfy all constraints which involve those

variables [138]. Constraint based methods can be programmed using a variety of tools

- from generic programming languages such as C++ or Prolog, specialised libraries

for constraint methods such as ILOG Solver [117] and CHIP [82], to dedicated con-

straint programming tools. Their greatest advantage is in the natural way in which

constraint information is modelled. This facilitates the generation of intuitive sys-

tems with interfaces that can directly communicate any difficulties that may exist

with a given formulation. Many of the methods discussed here have been successfully

incorporated into commercial rostering packages.

Darmoni et al. [79] present a software system called Horoplan for rostering nurses

in French hospitals. This method generates rosters over a 6 week period using a 9

step process. This process specifies when certain planning decisions are made and

the order in which parameters should be elicited from the concerned parties. Two

types of constraints are defined for the problem - hard constraints and ‘floppy’ (soft)

constraints. The hard constraints include satisfaction of daily coverage requirements

for each shift and the requirement for at least one day-off in every seven day period.

The soft constraints take into account a large range of temporal restrictions including

the long-term accounting requirements of French employment law.

Meisels et al. [157] present a flexible rostering method using a mixed constraint

network and rule-based approach. They argue that complex problems cannot be

solved by one method alone - constraint networks lack the flexibility to represent

real-world constraint information and the implicit nature of the knowledge in rule-

bases is difficult to process in a robust and predictable way. The authors establish a

set of non-trivial ‘generic explicit constraints’ which they believe are common to all

employee timetabling problems. These include constraints which control demand for

particular resource (skill) types and many types of temporal constraints, as well as

Page 53: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 42

constraints necessary for the formulation of satisfiable constraints satisfaction prob-

lems. They introduce generic search heuristics and strategies for satisfying these

constraints. The rule-based part of the system is used to specify preference informa-

tion including individual shift requests as well as substitutability rules for employees

of different skill classes. The authors analyse a wide variety of real-world and theo-

retical problems and determine those combinations of constraints which are difficult

(or impossible) to solve. This method has been implemented in the commercial soft-

ware package TORANIT. TORANIT provides an interactive user interface which

guides users towards problem formulations which will be solvable by the system. In

a later paper [158] Meisels et al. describe an even more flexible approach which is

implemented in the EasyStaff software.

In a similar approach Meisels and Lusternik [161] investigate the nature of con-

straint networks of employee timetabling problems. This investigation focusses on

the relative difficulty of employee timetabling problems given different domain sizes.

In particular they discovered that for constraint networks an increase in the size of

the problem variables increases the likelihood that problems will be unsolvable. The

authors compare a number of different constraint processing techniques including for-

ward checking, conflict directed backjumping, and a combined approach. Detailed

results are presented based on experiments on randomly generated test problems. In

particular, the number of solutions that can be generated for problems of varying

characteristics is determined.

Two constraint based approaches have been developed for rostering problems in

Hong Kong hospitals. Cheng et al. [72] developed an algorithm which utilised a

redundant modelling approach in order to reduce the search time. This approach

analyses the set of constraints to determine those constraints which are redundant

because they are implied or ‘entailed’ by other constraints. This approach allows a

large number of constraints to be established with less risk of creating intractable

formulations. Chun et al. 2000 [73] describe the SRS nurse rostering system which

has been deployed across a large number of public hospitals in Hong Kong. This

approach is very practical and includes a large number of constraint definitions which

can be altered for individual problems.

Page 54: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 43

Meyer auf’m Hofe [162, 164] has developed personnel rostering methods imple-

mented in the ORBIS Dienstplan software. His approach is among the most detailed

and flexible approaches in the literature. The system provide a library of different

constraint types which can be picked by the user - an approach which will be used

for the methods described in this thesis (albeit using a different mathematical for-

mulation). A large variety of different shift types can also be specified by the user

- including disjoint shifts and multiple similar shift types (e.g. shifts who’s starting

and ending times differ by half an hour). Constraint types include:

- Minimal and Preferred Crews: the system allows the user to specify the minimal

and preferred number of nurses required for each shift type. Similar shift types

can also be grouped to have the same requirement. Skill mix can be specified

by the user by specifying those nurses who can be used to fulfill a particular

requirement - although it is not clear if this is achieved through the labelling of

nurse skills or through explicit specification of individual nurses.

- Balancing Time Accounts: these provide a large variety of temporal constraints

and ensure that there is minimum deviation from the working time specified in

individual staff members’ contracts. These can be specified over time periods of

varying lengths. Constraints can also be specified which balance the overtime

given to nurses across the unit.

- Rest Times: dictate the minimum and preferred rest times between shifts.

- Working Time Models: A database of preferred shift sequences is stored. If these

sequences are not used then a penalty value can be used.

- Undesired Sequences of Shifts: Specifies shift sequences which will be penalised if

they appear in the roster.

The system integrates traditional branch and bound methods for solving con-

straint satisfaction problems with local search approaches. The result is a system

which has been successfully applied to real world problems and is currently in use in

many German hospitals.

Page 55: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 44

This work is extended to try and rectify some problems with feasibility in the

existing model [163] . Soft constraint information is modelled as sets of ‘fuzzy con-

straints’. These fuzzy constraints allow the notion of partial satisfaction of constraints

to be handled efficiently. The extended approach also includes more efficient variable

ordering heuristics.

Scott and Simpson [208] have developed a nurse rostering algorithm which com-

bines case-based reasoning with constraint technologies. A case-base of good quality

shift patterns is stored and used to provide initial solutions. These solutions are then

refined and corrected using constraint methods. This approach is especially relevant

to this thesis and will be described in more detail in Chapter 3.

There are a number of other constraint approaches which are similar to those

mentioned here such as a cyclical scheduling system for producing staff timetables

for up to 150 people over a year long period [68], a multi-skill crew rostering system

implemented using the ILOG Solver to solve the problem of rostering technical crew

for TV productions [140], and the commercial software INTERDIP developed by

Abdennadher and Schlenker [4] for rostering nurses using a highly interactive user

interface.

2.3.4 Artificial Intelligence

A number of approaches have been developed using a variety of artificial intelligence

models. The methods that will be described in this thesis are based on the case-

based reasoning paradigm and approaches in rostering (including Scott and Simpson’s

CBR/CSP approach) and more general scheduling will be discussed in more detail in

Chapter 3. Some interesting rostering methods based on other artificial intelligence

concepts will be discussed here.

Meisels and Kaplansky [159] proposed a distributed agent based personnel roster-

ing system which combines constraint satisfaction methods with the agent paradigm.

This method is designed for organisations which consist of departments whose roster-

ing problems are solved locally and then combined in such a way that they conform

to a set of global (organisation-wide) constraints. The model consists of a Central

Page 56: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 45

Agent which coordinates a search performed by a number of Scheduling Agents. The

Scheduling Agents generate weekly schedules for individual wards in a hospital us-

ing standard constraint techniques. A process of negotiation is then coordinated by

the Central Agent to modify the ward schedules so that the overall solution satisfies

the global constraints. The method has been used to successfully solved distributed

employee timetabling problems in large hospitals.

Li and Aickelin [145] describe an approach to nurse rostering using Bayesian op-

timisation. This novel approach to nurse rostering attempts to explicitly learn good

scheduling rules from a set of promising rules. A rule is used to schedule every nurse

in a problem and the method works by evolving good quality rule strings. A network

is generated with 4 nodes per nurse, representing the 4 different scheduling rules that

could be used to determine the nurses working pattern. The network is trained on a

set of promising solutions by counting the usages of each of the rules and calculating

the conditional probability for every node. The four scheduling rules are:

1. Random Rule: The nurse’s shift pattern for the week is selected at random.

Feasibility is not considered by this rule.

2. k-Cheapest Rule: The shift pattern is selected randomly from a list of the k -

cheapest patterns according to the fitness function. Feasibility is not considered

by this rule.

3. Cover Rule: The nurse’s shift pattern is constructed by assigning them to the

days and nights over the week with the highest number of uncovered shifts.

This rule choose from the set of feasible shift patterns that could be assigned

to the nurse.

4. Contribution Rule: This rule cycles through all the shift patterns which could

be assigned to the nurse and assigns each one a score according to a combination

of how well it covers uncovered shifts and the preference cost it entails for the

nurse. The best (feasible) shift pattern is then applied.

Feasibility is defined in terms of meeting cover requirements and ensuring cor-

rect working hours for the nurses. The fitness function is based on total preference

Page 57: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 46

cost. An evolutionary approach is used to evolve good quality rule strings in an

iterative algorithm. The approach is used to generate weekly schedules for wards

with around 30 nurses. The authors found that the Bayesian approach rivals the

genetic algorithm and tabu search approaches developed previously [10, 84] for the

same problem. The Bayesian approach “mimics human behaviour more strongly than

a GA based scheduling system” and the authors hope to include more ‘human-like’

learning into scheduling algorithms in the future.

2.3.5 Decisions Support Systems

Whilst most successful employee rostering methods must have a large interactive

element there are some notable examples of methods that can be classified as decision

support systems. These methods are characterised by their ability to help users

(i.e. decision makers) to make operational decisions by providing highly interactive

tools for manipulating decision variables. They often provide a means by which to

test ‘what if’ scenerios and can supply alternative decisions and analyses of possible

consequences.

Smith et al. [214] developed a decision support system which allows users to

alter rosters by assigning and changing constraint weights. This feature enables users

to ‘tune’ the solutions produced according to their perception of the importance of

different objectives and staff preferences.

Khoong et al. [129] presented the ROMAN manpower rostering system, which was

designed to handle rostering problems in a wide variety of industries. This approach

subdivides the rostering tasks into long-term planning, rostering, and deployment

subtasks. The scheduling tasks are based around a set-covering algorithm which is

used to produce both cyclic and non-cyclic rosters, depending on the users’ require-

ments. The system allows manual changes to rosters through an interactive interface.

Abdelghany et al. [3] developed a decision support tool for ‘crew recovery’ in the

airline industry. The term ‘crew recovery’ describes the process of bringing staff from

one location, where they are not needed, to another location where they are needed,

in cases of disruption to services (e.g. due to adverse weather conditions). The system

Page 58: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 47

uses a rolling approach to determine sequences of repair operations on the airline’s

schedule, to minimise the delays cause to flights. The user is given the option to test

scenarios involving different repair operations to determine their effectiveness.

2.3.6 Heuristic Methods

A heuristic is a ‘rule of thumb’ used to solve a problem and is defined by Reeves as

a method that produces a solution of an acceptable quality and incurred computa-

tional cost [197]. Heuristic solutions can never guarantee optimality in the way that

mathematical methods and some constraint programming methods can. In this re-

view the distinction will be drawn between constructive heuristics and meta-heuristic

approaches. Constructive heuristics provide very fast tools for generating solutions to

problems in a systematic fashion but require a relatively simple problem formulation

to be established. Meta-heuristic methods operate on existing solutions to try and

make them better and provide very flexible and adaptable tools. They have been

a very popular research area in recent years and have been implemented in several

successful commercial rostering products.

Constructive heuristics attempt to build or manipulate solutions by using simple

rules or procedures. These methods can in some cases be proven to solve problems to

optimality (or within certain acceptable bounds) using mathematical analysis (partic-

ularly for simple problems). For other approaches an empirical study of the success of

the method on example problems may suffice. Many heuristic approaches are highly

problem specific - they are designed to solve problems with particular characteristics

and are therefore often not suitable for more general application. Nevertheless the

low computational cost of many heuristic methods is very attractive and numerous

bespoke algorithms have been implemented for industrial and commercial problems.

These heuristic methods are also interesting for researchers as they can give informa-

tion about the success or failure of the methods that are often used during manual

human reasoning.

Smith [213] developed an interactive algorithm for developing cyclical nurse ros-

ters. This method helps the user to construct cyclical schedules by considering the

Page 59: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 48

tradeoff between desired cover and temporal constraints. The temporal constraints

it considers are simplistic and no individual preference or request constraints are

allowed. Three shift types were scheduled - day, evening, and night shifts.

Burns and Carter [63] introduced a heuristic method for building cyclic rosters

and calculating workforce size for single shift problems. Their method allows for

variable demand and a number of simple temporal constraints (including weekend

constraints). Again, there is no provision for individually specifiable constraints due

to the cyclic nature of the rostering. The authors present a proof that their algorithm

is optimal in linear time. Narasimhan [180] developed an algorithm for generating

non-cyclical rosters for single shift problems. Their method assumes hierarchical

workforce organisation and computes the workforce size and optimal mix of skills as

well as generating the rosters.

Caprara et al. [67] developed a heuristic rostering method for crew rostering on

mass-transit systems. This method aims to minimise the number of crews whilst

satisfying a large number of union and contract based temporal constraints. A fuzzy

set theory approach to aircrew rostering has been developed by Teodorovic and Lucic

[227]. This method uses fuzzy reasoning to determine the strength of the decision

makers preference to assign a certain shift pattern to a certain crew. Vairaktarakis et

al. [233] present a method for scheduling trained workers in synchronous production

systems. This method is aimed towards increasing the productivity of the plant and

does not include notions of staff preference.

2.3.7 Meta-heuristic Search

Compared to constructive heuristics, meta-heuristics demonstrate relative indepen-

dence from specific characteristics of the problems they aim to solve [197]. The

meta-heuristics used for most scheduling problems are generally described as neigh-

bourhood search methods. These algorithms typically start with a solution in which

all the variables have been assigned values, and then attempts to find better solutions

by exploring different ways by which to change the variable assignments. In this sec-

tion meta-heuristic search methods for the employee rostering problem are grouped

Page 60: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 49

according to the algorithmic approach used.

Tabu-Search

Tabu-Search methods employ a memory of previously visited solutions in order to

avoid getting trapped in local optima in the search space. This memory usually takes

the form of a list of previous solutions or previous ‘moves’ (defined as operations which

change the variable assignment of a solution). This technique can cause temporary

degradation in solution quality because it always accepts the best neighbouring solu-

tion (not on the tabu list) even if this solution is of worse quality than the current one.

The degrading effects can be limited by including aspiration criteria which specify the

maximum reversal in quality allowed. If no available neighbour meets these criteria

then a solution from the tabu list may be considered (this works particularly well for

methods which store move operations on the list).

Berrada et al. [43] developed a tabu-search alternative to the mathematical ap-

proach described earlier in this chapter. This search generated a set of feasible solu-

tions around the current feasible solution. The search then moved to the solution in

this set with the largest value according to the objective function unless that solution

is on the tabu list. The neighbours are generated by exchanging the positions of a

day off and a working day for each nurse. The rather simple tabu-search algorithm

generated by the authors was found to be less efficient at finding solutions than the

branch and bound method originally proposed - although they did acknowledge that

this was due to the experimental nature of the implementation.

Dowsland [84] and Dowsland and Thompson [83] describe a tabu-search method

for rostering nurses. They base their research on a problem in a ward of a major UK

hospital. Their method searches for shift patterns to assign to nurses from a set of

patterns which have been pre-evaluated according to the soft constraints. The soft

constraints considered are:

- individual nurses’ requests for specific shifts or days off.

- individual nurses’ preference to work days or nights, or to work a particular shift.

Page 61: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 50

- days off together or separate.

- number of consecutive days on.

- rotating night or weekend work.

- roster fairness and balance.

- working history (in terms of the cost of the previous schedule).

The feasibility of rosters is determined by its satisfaction of hard constraints con-

cerning cover and skill mix requirements and strict temporal constraints pertaining to

the working hours of nursing staff. The approach used an branch and bound method

in order to determine if the combination of nurses and cover requirements could pos-

sibly lead to a feasible roster before the scheduling began. If it was not possible then

bank nurses were added.

The tabu search they proposed used a variety of different neighbourhood struc-

tures. It used an ‘oscillation’ approach to move between feasible and infeasible so-

lutions - thus increasing the range of solutions it could sample. The neighbourhood

chosen at any time depended on the feasibility status of the current solution and

the change of value of the fitness evaluation based on the soft constraints. When

stagnation was detected abrupt alterations were made to solutions in order to move

the search to a new region of the search space. Although the method developed by

the authors was designed for a particular problem the general nature of their solution

should lend itself well to other similarly formulated problems.

Vanden Berghe [235] wrote a PhD thesis describing her work on the commercial

nurse rostering product ANROM. This work is also described in the papers she co-

authored with Burke et al. [52, 53, 54, 55]. This thesis provides one of the most

comprehensive descriptions of the nurse rostering problem in the literature. ANROM

was designed to solve the wide variety of nurse rostering problems that can be found in

Belgian hospitals. It is highly configurable and allows users to specify a large number

of different constraints, and even to create their own using a variable counting sys-

tem. It attempts to provide maximum flexibility with regards to the description (i.e.

Page 62: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 51

skills/qualifications) of staff members, the specification of shift requests, preferences,

and individual working contracts, and the design of shift types, planning periods, and

scheduling goals.

Vanden Berghe defines the following categories of soft constraints:

- Hospital Constraints : These are the general rules that the hospital imposes on

every ward. These include constraints dictating the minimum time between

assignments for individual nurses, and rules for the legal substitution of skill

categories (including upward and downward substitution - the author notes that

the upward substitution of staff is in fact more common in practice).

- Work Regulation Constraints : ANROM allows many different constraints to be de-

fined which describe the legal and preferable working patterns for all nurses,

subsets of nurses, and even individual nurses. These include standard temporal

constraints limiting, for example, the maximum number of assignments over a

period, the maximum/minimum number of consecutive assignments, the maxi-

mum/minimum number of consecutive free days, and the maximum/minimum

number of hours worked over a period. They include constraints limiting the

number of shifts of a particular type that can be worked over a period or in a

row. Weekend, bank holiday, and night shift constraints can also be defined.

Finally, constraints can be defined indicating penalty levels for particular shift

combinations and patterns of shifts.

- Personal Constraints : These are defined for specific nurses and include requests

for days off (which can be weighted individually depending on their severity),

requests for particular assignments, and tutorship relationships which specify

nurses who should be scheduled together if possible. It is also possible to define

pairs of individuals who should not work together.

All soft constraints are treated within the objective function through penalty

weights which can be manipulated by the user interactively. Solutions are evaluated

through a modular approach [53] which allows for maximum flexibility when spec-

ifying new soft constraints. This approach is designed to be efficient so that large

Page 63: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 52

numbers of constraints can be modelled simultaneously without adversely affecting

the usability of the system.

The hard constraints define the cover and skill mix required on the ward over

varying time periods. ANROM includes a complex series of processes which checks

that rosters will be feasible with respect to the hard constraints before the actual

meta-heuristic search commences. These processes also perform an initial rough ros-

tering of the nurses to generate a feasible roster. One of the meta-heuristics used to

improve solutions is a hybrid tabu-search. This approach combines the tabu-list and

aspiration concepts with diversification strategies and ‘greedy shuffling’ - a technique

which models human scheduling behaviour. This greedy shuffling approach considers

all possible combinations of shuffle moves in the current solution and then performs

the best one. The author argues that this technique results in solutions which expert

human rosters find very hard to manually improve. A variable neighbourhood ap-

proach has also been implemented for the ANROM system [54]. ANROM is currently

being used in a large number of Belgian hospitals.

Burke et al. [57] use tabu-search as the basis for a hyper-heuristic nurse rostering

method. The authors attempt to develop generic algorithms which are not restricted

to one problem. Hyper-heuristic approaches add an extra control layer on top of

classical meta-heuristics. This layer chooses heuristics and meta-heuristics according

to the state of the solution and the ongoing performance of each heuristic. The

algorithm is tested on the same problem described by Aickelin [9] and Dowsland [84]

and the results are competitive. However, it is not clear from the experimentation

carried out thus far that the method is applicable to a wide range of problems.

Tabu search approaches have been used by many others in the literature. Nonobe

and Ibaraki [181] use tabu search approach for the constraint satisfaction problem.

This approach includes mechanisms for the automatic adjustment of the tabu tenure

(the length of the tabu list) according to the performance of the algorithm. Valouxis

and Housos [234] hybridise tabu search with an approximate integer linear program-

ming model to create a robust and efficient nurse rostering algorithm. A tabu search

algorithm for scheduling doctors in a hospital is described by White and White [248].

This algorithm focuses on the skills of doctors and the simultaneous rostering of the

Page 64: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 53

medical students who work with them. A local search approach to designing good

shifts (in terms of their length and how they overlap) using tabu-like mechanisms is

presented by Musliu et al. [179].

Evolutionary Algorithms

Evolutionary algorithms are used to solve optimisation problems by imitating biolog-

ical models of natural evolution. Usually they are applied to scheduling problems as

genetic algorithms. These algorithms build populations of solutions and then com-

bine different parts of the best solutions to form new generations - thus mimicking

the processes of Darwinian evolution [31]. Local mutations can be applied to indi-

vidual solutions in order to diversify the search process. Memetic algorithms have

also been developed to solve scheduling problems. These algorithms generally consist

of a genetic algorithm combined with a local search approach [195]. In most of the

papers presented here a significant focus is placed on maintaining solution feasibility

through the design of complicated recombination and mutation operators.

Bailey et al. [24] developed a relatively simple genetic algorithm for the nurse

rostering problem. Simple constraints are defined, including cover requirements, skill

mix, and time between shifts. The objective function is a weighted sum of the staff

shortages, surpluses, and lack of continuity in the roster, and the goal is to min-

imise this objective. They use the rostering problem to demonstrate the ability of

meta-heuristics to escape local optima in the solution space. The authors intend

to investigate ways in which to incorporate staff preferences and requests into the

objective function.

Aickelin and Dowsland [9, 10] recognised that genetic algorithms are not good at

dealing with the conflicts between objectives and constraints. They used a classical

GA to solve the nurse rostering problem from a UK hospital described previously

in [84, 83] but found that it was unable to handle the constraints and produced

poor quality solutions. To improve the GA four different types of problem specific

knowledge were introduced:

- Co-operating sub-populations : A co-operative co-evolution strategy is used to breed

Page 65: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 54

sub-populations representing solutions for each grade of nurses. A sub-fitness

function is introduced which measures the under-coverage for each nurse type

and is used to guide the evolution of the sub-populations.

- Incentives : Solutions are penalised if they are not balanced with respect to the

coverage of shifts over the period. This acts as an incentive to the GA to evolve

solutions with evenly spread violations of coverage constraints which will be

easier to improve in future.

- Repair : Improvement heuristics are used to cycle through shift patterns for each

nurse, accepting those which improve the solution fitness.

- Local-search; A hill-climbing algorithm is used to improve feasible solutions with

respect to nurse preference.

The authors found that the rosters produced by the improved GA approach were

as good as those produced by the tabu search approach developed by Dowsland [84]

when used for small time periods, but did not do as well over longer runs.

In a different GA approach by the same authors an indirect encoding strategy

was used [11] . The GA operated on permutations of the nurses. A heuristic-decoder

function was used to convert good-quality orderings of nurses into feasible rosters.

This approach was able to produce rosters which were as good as those produced

using the tabu-search approach.

Cai and Li [66] used a multi-criteria genetic algorithm approach to schedule staff

with mixed skills. This approach defines three objectives. The primary objective is

to minimise the staffing costs required to meet the skill mix and cover requirements.

The other two objectives aim to balance the staffing by aiming to maximise the

staff surplus over all the best solutions according to the primary objectives, and to

reduce the variation of the staff surplus over time. The selection of members of the

population for crossover and mutation is performed using a lexicographical ordering

of the solutions according to the three objectives. This method does not consider staff

preference or requests. It enables the modelling of different skill levels and includes

provision for skill substitution.

Page 66: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 55

Jan et al. [121] developed a ‘population-less cooperative genetic algorithm’ ap-

proach to solve a multi-objective nurse rostering problem. In this method the nurses

are modelled as agents whose shift patterns are optimised according to temporal con-

straints and shift preferences. A reasonable number of soft constraints are defined

which measure the quality of nurses’ shift patterns. Simultaneously, the quality of

the whole schedule is optimised according to the average and standard deviation of

the quality of all the nurses shift patterns. The genetic algorithm operates on feasible

solutions - defined by the rosters satisfaction of cover and skill mix requirements. The

algorithm is tested on simulation data.

Burke et al. [55] present a memetic algorithm approach to the problem described

in [52, 53]. A number of variations to the basic memetic algorithm are described

- which is a combination of genetic algorithm and a steepest descent improvement

heuristic. The memetic algorithm is then combined with the tabu search approach

used previously in a hybrid algorithm. The authors report that the memetic algorithm

alone produced solutions which rival those of the tabu-search approach but takes a lot

longer to do so. The hybrid memetic/tabu approach produces solutions significantly

better than the tabu-search and it is recommended that this method be used when

schedulers do not need fast results.

Kawanaka et al. [125] developed a genetic algorithm approach for rostering nurses

of different skill classes. This approach defines two types of constraints, ‘absolute’ and

‘desirable’, which roughly translate to hard and soft. The absolute constraints include

minimum coverage and skill mix and temporal constraints regarding night shifts, free

days, and weekends. Desirable constraints are weighted and used to measure the

fitness of solutions. Staff requests, preferences, and some pattern definitions are used

to define these soft constraints. The crossover operations they use in the genetic

algorithm are allowed to generate infeasible offspring and a number of tools are used

to re-impose feasibility. The algorithm is compared to a GA approach in which

absolute constraints are included in the fitness measure. The authors argue that

inclusion in this way hinders the search process due to the steep peaks and troughs

it created in the fitness landscape. This hypothesis is validated by the experimental

results, although the results presented appear to pertain to only a single dataset.

Page 67: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 56

Another genetic algorithm approach to nurse rostering is presented by Duenas

et al. [85]. This approach uses a multi-objective nurse rostering model incorporat-

ing individual nurse preferences and an emphasis on the role of the decision maker.

Ingolfsson et al. [118] describe a workforce scheduling algorithm which takes into

account the queueing effects that can be found in units with unpredictable demands.

A fuzzy genetic algorithm is presented by Li and Kwan [146] for scheduling drivers

in the public transport industry. This bi-objective approach formulates goals using

fuzzy sets to model the weighting of individual shifts which will then be chosen to

form the final schedule.

Simulated Annealing

Simulated annealing is based upon an analogy with the physical process of annealing.

In this process a solid material was initially heated and then cooled in order to improve

certain qualities. For optimisation problems this principle is used in order to escape

local optima in the solution space. A cooling schedule is represented by a formula

which describes the probability that inferior quality solutions can be accepted in the

search process. Hence at the beginning of the process the search has a higher ability

to escape local optima than later in the search when it is encouraged to find the

optimal solution in the current local region.

Brusco and Jacobs [51] present a simulated annealing algorithm for the tour

scheduling problem. In this approach long term working patterns (tours) are selected

from a list of feasible patterns. These tours consist of full-time tours and part-time

tours. The method is used to produce schedules for an organisation which operates

continuously with demand levels that fluctuates on an hourly basis. The algorithm at-

tempts to minimise the staffing costs while still meeting the demand requirements and

does not include any notions of staff preference or satisfaction. Different maximum

ratios of full time to part time staff are considered.

Bailey et al. [24] developed a simulated annealing approach alongside the genetic

algorithm approach previously described. They also compared the results achieved

with an integer programming formulation and a steepest descent algorithm. They

Page 68: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 57

found that the simulated annealing algorithm produced solutions of comparable qual-

ity to the genetic algorithm but in much less time. They identified that the steepest

descent algorithm was the most scalable, followed by the simulated annealing and

genetic algorithms, and that the IP formulation was the least.

Other Approaches

Schaerf and Meisels [202] describe a ‘generalised local search’ approach to employee

timetabling problems. This approach considers many complex constraints and allows

employees to have one or more skills associated with them in an overlapping fashion.

The method allows individual employee requests. The research focuses on the ability

of local search algorithms to successfully navigate the search space. Neighbourhoods

are defined using three different operators: Replace, Insert, and Delete. These opera-

tors manipulate the assignment of particular task to employees. The neighbourhoods

are defined so that partial solutions can be accepted - these are solutions in which all

of the requirements (with respect to cover of tasks) are not satisfied. Violations of the

requirements and of the soft constraints contribute towards the cost function. Meisels

and Kaplansky [160] experiment with iterative restart techniques. These methods de-

tect stagnation in the search process and restart from a new random solution.

Aickelin and White [12] used statistical methods to compare rostering algorithms.

The comparison methods are then used to systematically evaluate alterations to algo-

rithms. In particular the problem of comparing algorithms which sometimes return

‘infeasible’ results is addressed. The result is a tool which can be used to identify

successful modifications to existing algorithms and thus improve them. The authors

report that the final, improved algorithm that they developed outperforms the genetic

algorithm developed previously [9, 10, 11].

Bellanti et al. [38] developed a greedy-based neighbourhood search to solve a

nurse rostering problem from a ward in an Italian hospital. In this problem the

constraints are very similar to those that will be described in this thesis although

the complexity of the problem is reduced by considering all nurses as being equally

skilled. The approach is multi-objective and a lexicographical approach is used to

Page 69: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 58

order the following goals:

- minimise the deviation in the number of days each nurse has off per month from

the pre-defined ward average.

- minimise the shortages from required cover both morning and evening shifts for day

shifts.

- minimise the shortages from required cover for either shift for day shifts.

- minimise the shortages from required cover for night shifts.

- minimise the weighted sum of the soft constraint penalties.

The approach uses an ordering heuristic to generate initial solutions and then a

number of different strategies are used in order to escape local optima in the search

space. Partial solutions can be accepted during the search but are then repaired using

a greedy procedure.

De Causmaecker and Vanden Berghe [81] investigate the problem of relaxing cov-

erage constraints when feasible solutions can not be found to real-world rostering

instances. They found that by reducing requirements for individual wards better

solutions could be found, and the problem of users over-constraining problems can

be mitigated. Franses and Post [94] describe an automated personnel scheduling al-

gorithm for laboratories. This algorithm uses mathematical techniques with greedy

local search and has been implemented in the commercial product IPS.

2.4 Conclusion

This chapter has described the development of automated personnel rostering meth-

ods over the last 50 years. The characteristics which are fundamental to most ros-

tering problems were identified. In particular, attention was paid to the wide variety

of different formulations which can arise from real-world rostering problems. Many

papers have been written suggesting methods for generating staff schedules and some

of the key results have been presented in this chapter.

Page 70: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 59

The early methods were developed using mathematical techniques such as integer

programming and usually focussed on satisfying a limited range of constraints and

objectives. These methods lacked flexibility and were unable to solve problems of a

realistic size, and consequently have not been used extensively in real-world settings.

Nevertheless, they introduced some of the key concepts which were combined and

improved in later methods. For example, the notions of staff preference and shift

requests introduced by Warner [240] have been used in the most successful modern

methods.

Constraint programming and meta-heuristic approaches have been used to suc-

cessfully solve real world problems. In particular, three nurse rostering systems stand

out as examples of both theoretically successful methodologies and viable commercial

products:

- ANROM [52, 53, 54, 55] is capable of modelling an exhaustive range of constraint

types, and even allows users to configure new constraints. The system utilizes a

number of different technologies centred around a hybrid tabu-search method.

- The hybrid tabu search and branch and bound method developed by Dowsland et

al. [84, 83] successfully solves real-world problems by searching through both

feasible and infeasible solutions. Through the use of pattern-assignments it

allows a large number of constraints to be specified.

- ORBIS Dienstplan [162, 164] uses a constraint reasoning approach which allows

many different constraints to be specified by the user in a very natural fashion.

A hyrbidisation of branch and bound and local search approaches is used to

find good quality solutions.

These methods are successful largely due to their ability to handle many different

user-configurable constraints. They also use mixed methodologies to solve problems

- taking advantage of the good characteristics of the available technologies to solve

key tasks. The method described in this thesis attempts to incorporate both of these

features by being both highly configurable and by combining different approaches (i.e.

CBR, tabu search, genetic/memetic algorithms).

Page 71: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

2. personnel rostering problems 60

Many other methods in the literature provide duplicated approaches and con-

tribute little to the advancement of the field beyond a validation of existing principles.

Such methods include the tabu search by Berrada et al. [43], the genetic algorithms

by Bailey et al. [24] and Cai and Li [66] and many other methods not cited in this

thesis. Often these methods fail to include concepts of staff satisfaction (particu-

larly with regards to preferences and requests) and other key constraint types. The

chief criticism, however, is that the authors do little to generalise their methodologies

beyond the particular problem instance they were attempting to solve.

Eliciting problem solving knowledge from personnel rostering experts is an issue

which is thusfar unsolved in the literature. The successful methods listed above

rely on weighting constraints or patterns, and prioritisation of constraint types for

capturing some of the knowledge about the qualities users would like to see in their

rosters, without providing a means to acquire information about how this should be

achieved. This thesis attempts to address this problem using a method which allows

users to specify how they would like problems to be solved.

Page 72: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

61

Chapter 3

Case-Based Reasoning

3.1 Introduction

Case-Based Reasoning (CBR) [133] is an artificial intelligence (AI) methodology

which aim to solve new problems by using information about the solutions to previous

similar problems. It operates under the premise that similar problems require similar

solutions. A history of previous problem solving episodes, or cases, is stored in a

database (called a case-base). When a new experience is judged to contain informa-

tion which may aid future problem solving it is stored as a new case in the case-base,

thus increasing the knowledge it contains. This basic model provides a framework

for a vast array of different CBR approaches, some of which will be discussed in this

chapter.

Reasoning in artificial intelligence methodologies has traditionally been treated as

a process of sequentially applying rules in order to draw conclusions [141]. Rule-based

systems, for example, must establish a priori a set of relations which explicitly define

the behaviour of model elements. The development of CBR grew out of a realisation

that these systems lacked robustness and flexibility, were confined to narrow problem

domains, and were difficult to maintain and adapt over time [1]. The acquisition of

knowledge in the form of rules, particularly in complex real-world domains, can be

highly time consuming and often inaccurate [222].

CBR can address many of these issues because it does not call for an explicit

model of the problem domain [243]. CBR systems make use of specific information

Page 73: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

3. case-based reasoning 62

about previous reasoning and so knowledge acquisition is reduced to the process

of recording previous experiences. Domain experts can interact directly with such

systems because they can provide domain knowledge by example [133]. This process

can be on-going and therefore provides both flexibility and adaptability. CBR systems

learn by memorising new knowledge as cases [243] and therefore improve over time by

filling any ‘gaps’ in their knowledge or by replacing experiences which are no longer

representative due to changes in domain structure.

The origins of CBR can be found in both cognitive science and artificial intelli-

gence. CBR can be considered as a model for human problem solving [141]. It is

believed that humans solve new problems by remembering how they solved previous

similar problems in the past [242]. Kolodner gives an instructive example of this

kind of human reasoning in [133]. She describes a host planning a meal for several

people including vegetarians, allergy sufferers, and those with particularly restrictive

tastes. In order to solve the problem the host thinks about meals that she has served

to her guests in the past. As part of this remembering process the host recalls who

she served the particular meals to and what problems arose (for example regarding

allergies). She also spends time thinking about how the meals served in the past

could be adapted to the makeup of her new group of guests. She finally chooses to

make the meal which she previously served to a group that is most similar to the new

group and to which adaptations can be made to resolve any outstanding issues.

Schank and Abelson conducted some of the initial research into the case-based rea-

soning model [204]. They defined the concept of a script as a structure used within

human conceptual memories to store information about stereotypical situations. On

the basis of these scripts human beings can reason and draw conclusions about situa-

tions in which they find themselves. This idea was extended by Schank in a dynamic

memory model [203] which emphasised the importance of indexing when using past

experience for understanding. They postulated that the processes of remembering,

understanding, experiencing, and learning are mutually inclusive. Human memory

is dynamic not only because we are constantly adding new experiences but also be-

cause these new experiences change the way we think about our older memories. As

a result, no two acts of ‘remembering’ are guaranteed to produce the same results.

Page 74: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

3. case-based reasoning 63

It was generally recognised that similarity and metaphor [99], concepts and concep-

tual structure, and analogy are key to human reasoning. In cognitive science the

concepts which embody case-based reasoning generally come under a research area

called analogical reasoning [237].

An AI view of the case-based reasoning model was given by Porter and Bareiss

[191]. The Category and Exemplar Model works on the basis that natural concepts

in the real world should be defined ‘extensionally’ - their characteristics should de-

fined explicitly and enumerated to represent different instances. The case-memory

is defined as a network of categories, cases, and index pointers. Each case is associ-

ated with a category and features are weighted according to their importance. Three

types of indices are defined: pointers from features to cases or categories, pointers

from categories to all their associated cases, and difference links which describe how

a case differs from its neighbours in terms of the features. This networks is traversed

when solving problems and cases are retrieved for reasoning through knowledge-based

pattern matching which is highly dependent on the problem domain.

The early CBR literature described a framework for solving problems which could

be implemented using a variety of computational and information technological tools.

Watson [242] describes CBR as a methodology rather than a technology because it

gives a contractual description of what must be done without describing exactly how

it can be achieved. Technologies are chosen to implement the CBR methodology

according to their suitability to the problem being addressed. Examples include

nearest neighbour similarity measures, neural networks, fuzzy logic, rule-based rea-

soning and/or rule induction, graph theory, database languages such as SQL, and even

optimisation-type tools such as mathematical programming and meta-heuristics.

In this chapter some of the key issues and methological/technological approaches

to CBR will be described, with particular attention to those which are relevant to the

work described in this thesis. In Section 3.2 the basic CBR model will be presented.

Section 3.3 will provide reviews of the key research that has been carried out to date

into the scheduling applications of CBR.

Page 75: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

3. case-based reasoning 64

3.2 Methodology and Research Issues

There have been a number of models suggested for case-based reasoning and in this

section the most important of these will be described. This subject field is vast and

the author will attempt to limit the descriptions to those models and details rele-

vant to the application of case-based reasoning in scheduling and planning problems.

Comprehensive descriptions of case-based reasoning and its history can be found in

the key text by Kolodner [133].

3.2.1 The Case-Based Reasoning Cycle

A single reasoning episode can be decomposed into a set of distinct phases. Kolodner

[133] distinguishes between two styles of CBR. In problem-solving CBR solutions are

proposed by retrieving previous experience and adapting it to solve new problems.

Problem-solving CBR is used to solve problems where solutions cannot be determined

in advance (e.g. nurse rostering). Interpretive CBR uses retrieved experiences to

justify conclusions about situations and requires the creation of a set of steps or

arguments needed to generate the desired solution. This style of CBR is used for

process planning in domains such as law where a desired outcome (e.g. to win the case)

is known and the steps need to get to this state must be determined. In either style

the retrieval/adaptation/justification process is followed by processes of criticism and

evaluation. If outcomes are not of sufficiently high quality or relevance then phases

can be repeated. This model of a single reasoning episode is presented graphically in

figure 3.1.

Many authors have described case-based reasoning in terms of a cyclic learning

model. One of the most cited is that of Aamodt and Plaza [2] and a pictorial repre-

sentation of the model is given in Figure 3.2.

The various tasks performed by CBR are often described as the ‘4 REs’: REtreive,

REuse, REvise, and RETain. This ‘R4’ [242] model can be summarised as follows:

- Retrieve: Find the most similar case(s) to the current problem in the case-base.

- Reuse: The solutions in the retrieved cases are then used to solve the new problem.

Page 76: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

3. case-based reasoning 65

Figure 3.1: A reasoning episode according to Kolodner (1993)

- Revise: The suggested solutions are adapted to the context of the current problem.

- Retain: Any useful information or experience that can be gained from the current

problem solving instance is retained for future reasoning.

More recently an ‘R5’ model has been suggested with the insertion of a new first

step: Repartition [92]. In this approach the case-base is analysed off-line in order to

reorganise the case-base by ensuring that the relationships between problems and so-

lutions are partitioned correctly according to the case-matching technique employed.

Many authors recognise the need for off-line reorganisation of the case-base and a

large number of papers are dedicated to the subject of case-base maintenance.

The phases identified in the R4/5 model have been given different names by au-

thors throughout the literature. Allen describes the R4 steps as ‘retrieval’, ‘adap-

tation’, ‘validation’, and ‘update’ and adds an initial step called presentation [15].

In this step the current problem is identified and organised in such as way that it

becomes compatible with the contents and retrieval methods of the case-base. Voss

[238] describes the phase of problem decomposition as an optional initial step for

complex problems. The decomposition of problems into smaller sub-problems allows

Page 77: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

3. case-based reasoning 66

Figure 3.2: The CBR cycle by Aamodt and Plaza (1994)

each to be solved separately using CBR (or other approaches). The use of an initial

decomposition step may make it necessary to include a composition step as a final

phase which combines all the solutions to the sub-problems into a single full solution.

Voss [238] categorises different CBR strategies as follows:

- single case adaptation: a similar case is retrieved from the case-base and adapted

to produce a solution.

- a priori decomposition with incremental adaptation: the problem is decomposed

into sub-problems which are solved sequentially and added to the final evolving

solution.

- a priori decomposition with simultaneous adaptation: the problem is decomposed

into sub-problems which are solved simultaneously. The resulting solutions are

composed into a final solution.

Page 78: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

3. case-based reasoning 67

- incremental decomposition and adaptation: the problem is solved through a series

of decomposition-adaptation steps resulting in a solution which evolves over

time.

- multi-case retrieval and simultaneous adaptation: a number of similar cases are

retrieved from the case-base and a solution is built using a single adaptive step.

Voss surveyed the strategies used by a number of well known CBR systems to

produce this categorisation. She concludes that for many complex problem domains

a CBR approach may need to hybridise the five basic strategies described.

Often the phases of reuse and revision of the R4/5 models are combined into one

of adaptation [15, 243], as they are in this thesis. There are a number of justifications

for this. The processes of finding the relevant cases in the case-base and then using

the knowledge contained in these can easily be separated (although in some methods

this is not the case). However, the phases of reusing solutions and adapting them are

intrinsically linked and it is difficult to identify their borders and interfaces. For the

remainder of this thesis they shall be treated as a single ‘adaptation’ phase.

3.2.2 Case Structure

Key to the success of any CBR system is the choice of information to store in cases.

Information must be relevant to the type of problem solving it will be used for. It

is argued by some researchers that the burden of knowledge acquisition which rule-

based methods suffer from is mirrored by the need for careful consideration of case

structure in CBR [76]. However, it is evident that in case-based reasoning only the

features of the problem need to be identified and not necessarily the relationships

between them [2].

Before describing how cases can be structured it is useful to define what a case

is in the abstract sense. A case is a unit encapsulating knowledge relevant to a

particular experience [243]. Typically cases contain a description or representation

of the problem, the solution that was used to address the problem, the outcome (i.e.

success, failure or a description of the outcome state of an experience), and sometimes

Page 79: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

3. case-based reasoning 68

the context in which the case was generated (or the context in which it can be used

in the future). The solution to the problem can be represented in a number of ways.

In some systems solutions represent actual instantiations of the problem formulation

- and describe a state to which the objects in the problem must be moved to [25]. In

others, the solutions represent methods for solving the problem [237]. CBR systems

have also been designed to predict outcomes to particular scenarios.

In their simplest form cases are represented as vectors of attribute-value pairs. The

data types that can be stored in these can be numeric, symbolic, Boolean, or even

object-based. More complex domains, however, need more structured representations.

These can be used to encode relationships between the attributes or facilitate faster

and more accurate searching of the case-base. Cases may be classified according to

the following characteristics [2]:

- concrete/abstract : cases may represent concrete experiences or more generalised

episodes.

- complete/partial : cases may correspond to separate knowledge units or be dis-

tributed between sub-units. In some systems partial knowledge is stored when

knowledge elicitation is inconsistent or suffers from stochastic interference.

- isolated/related : cases may be defined totally independently of one another, or

they can be linked to each other in the form of a case hierarchy or relationship

network.

The choice of actual structural representation for cases depends heavily on the

problem domain. Cases should contain enough detail to allow future problems to be

solved. They must store sensible characteristics of the problems so that the system’s

performance is not degraded by the presence of erroneous, incomplete, or irrelevant

information.

The objects used to describe problems are commonly referred to as indices and

the process of assigning indices to cases is indexing [243]. There is much debate as

to the qualities which define good indices but in general they must (according to

[44, 105, 133]) be:

Page 80: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

3. case-based reasoning 69

- predictive: they must describe the aspects of the problem which were taken into

account in producing the solution. This can include information about the final

outcomes of the solution (e.g. degrees of success/failure or state descriptions).

- abstract : information stored about problems should be as generally applicable to

possible future problems as possible. This increases the applicability of the

knowledge. It may require that additional salience indices are stored alongside

the descriptive indices to highlight the important aspects of each case.

- concrete: indices must not be too abstract or they will loose so much descriptive

content that future cases cannot be recognised as being similar without extensive

inference.

- useful : they must be relevant to the problem being solved.

Designers of CBR systems can use a variety of manual and automatic case indexing

algorithms. In general, manual methods focus on identifying the aims of the system

and the purpose of each case. Apart from vector feature selection algorithms, which

will be explored in Chapter 6, automated indexing methods are beyond the scope of

this thesis. Readers are directed to [133] for details of some frequently used methods.

3.2.3 Retrieval

The retrieval phase starts with a description of the current problem (sometimes re-

ferred to as the focus case) and returns either the most similar case in the case-base

[2], or a set of the most similar cases [133]. Crucial to this phase is the definition

of the level of similarity between cases. Many approaches have been developed and

depend heavily on the nature of the data stored in the cases.

Case-bases containing problems which can be represented with feature vectors use

a nearest neighbour (NN) similarity measure to determine the distance between cases.

Cases can be represented as points in a feature space where the Euclidian distance

between cases is inversely proportional to the similarity between them. One of the

most common nearest neighbour distance functions used for NN methods is:

Page 81: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

3. case-based reasoning 70

∑ni=1 wisim(f I

i , fRi )∑n

i=1 wi

(3.1)

for cases represented by n features, where wi is the weight of feature i, sim is the

defined distance function for single features, and f Ii and fR

i are the values for feature

i in the input (focus) case and retrieved case respectively. The distance functions

used for each feature depend on the feature type. NN approaches will be discussed

in more detail in Chapter 6.

NN methods can be extended by retrieving a set of the nearest cases to the focus

case [247]. The size of this set is fixed to be a certain number k. These so called

k Nearest Neighbour (k-NN) methods often use a voting system to determine which

solution will be passed on to the adaptation phases.

Some CBR systems use induction algorithms for case retrieval. Induction al-

gorithms generate decision trees to organise cases in memory by determining those

features which best allow a classifier to discriminate between them [153]. Famous

examples include the ID family [194] and the AQ family [166] of algorithms. Machine

learning algorithms are used to induce rule-sets from the decision trees which are then

used for future retrieval. Rule-sets provide fast retrieval for CBR but may need to

be adjusted as more cases are added to the case-base. The induction process can be

time-consuming and therefore induction based CBR systems are more suited to less

dynamic domains.

Template retrieval is used in CBR systems designed for highly descriptive domains

involving linguistic or labelled indices. Cases are selected from the case-base using

SQL-like queries which specify required values for individual parameters [133]. This

approach is often used to trim the initial case-base before the application of a more

computationally intensive approach such as nearest neighbour is used [2, 199, 243].

Aamodt and Plaza [2] identify two distinct approaches to the definition of similar-

ity for case retrieval: syntactical and semantical. Methods which employ syntactical

similarity retrieve cases based on superficial, ‘knowledge poor’, comparisons of the

feature values. The advantage of these methods is that they can be used in domains

where explicit knowledge is difficult to elicit. Semantic similarity assessment makes

Page 82: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

3. case-based reasoning 71

use of deep and complex domain knowledge to compare feature values - including

their relative weights. In general, methods which use semantic similarity matching

produce explanations of why two cases match.

3.2.4 Adaptation

Many authors believe that case reuse is the most difficult phase of CBR to describe

generally. Adaptation is problem-specific because it depends on how solutions can be

reused in the problem domain. However, there are some general patterns that can be

observed.

The most simple form of case reuse occurs in classification type CBR systems

where the ‘outcome’ of retrieval is usually the assignment of a class label to the

unclassified problem [87]. In these systems the differences between cases within the

same class are deemed unimportant and only the similarities (i.e. the class label) are

considered [2].

In more complex domains the adaptation phase must fit reused solutions into the

context of the new problems. In these systems adaptation focuses not only on the

parts of the solutions that can be reused for the new problem, but also on how the

differences between the past and current problems will affect this reuse [142]. Aamodt

and Plaza [2] identify two main ways that solutions can be reused. Transformational

(or structural [243]) reuse involves using the old solution as a basis for the new

solution. This is facilitated by transformational operators which use information

about the differences between cases to transform old solutions [105]. Other CBR

systems employ derivational reuse, where the method used to generate the old solution

is reused. In these systems cases may also store method parameters and operators,

subgoals considered, and failed search paths to guide the replay of the method for

the new problem [237].

Watson and Marir [243] categorise adaptation techniques in a more detailed way

as follows:

- null adaptation: simple case reuse (classification) [201].

Page 83: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

3. case-based reasoning 72

- parameter adjustment : transformational reuse where the differences between prob-

lem parameters are used to modify the solution [25].

- critic-based adaptation: rules are generated which identify feature instantiations

which are not compatible because they violate domain constraints [77].

- reinstantiation: features of the old solution are instantiated with features that

must be present in the new solution because they are specified in the problem

description [104].

- derivational replay : derivational reuse as described above [148].

- model-guided repair : causal models of the problem domain are used to guide the

adaptation phase by repairing elements in the old solution which are infeasible

(or sub-optimal) in the new solution [225].

- case-based substitution: other cases are used to suggest appropriate adaptations

[106, 109, 175].

3.2.5 Maintenance

CBR systems must be maintained intelligently, systematically, and preferably auto-

matically in order to be successful in real-world applications [130]. The success of

CBR can be measured in a variety of different ways, depending both on the tech-

nologies used to implement the various phases, and on the domain it is applied in.

Most often maintenance in CBR refers to maintenance of the case-base in terms of

the cases it contains. It can, however, also refer to the revision of the case indices or

of the retrieval and adaptation phases.

Smyth [216] identifies two separate CBR maintenance issues. Efficiency directed

maintenance aims to minimise the computational costs associated with the storage

of case in the case-base and with the retrieval and adaptation phases. Competence

directed maintenance focuses on improving the quality of cases in the case-base and

of the reasoning outcomes.

Page 84: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

3. case-based reasoning 73

Efforts at efficiency directed maintenance most commonly involve the identifica-

tion and subsequent removal of redundant cases from the case-base. Much research

has been carried in the broader knowledge-based reasoning community into the con-

cept of a saturation point in knowledge acquisition [93, 217]. This point is reached

when the addition of more knowledge into the knowledge-base (case-base) is deemed

to have an overall negative effect on the trade-off between the effectiveness of the

system and the processing cost. A number of methods which limit case-base size

according to a measurement of this tradeoff have been developed [126, 154, 170].

Measuring the competence of a case-base is more complex and a number of dif-

ferent metrics have been investigated [143]. The number, density, and distribution

of cases in the case-base all have an impact on quality. It has been observed that

measurements of size (i.e. the number of cases) do not provide accurate performance

guidance because they do not take into account the difference in effect of different

cases [217]. The density and distribution of cases in the case-base can be determined

using the similarity measure used during retrieval [218]. Cases which are ‘closer to-

gether’ in the problem space induced by the similarity measure more often produce

the same (or similar) outcomes. Some of the cases in these dense regions may be

redundant and in general cases in such regions have less influence on the reasoning

process than those in sparse regions [184]. The distribution of outcomes amongst

cases in the case-base can also be measured. Case-bases which contain dense regions

representing a large number of different solution outcomes are more likely to produce

inconsistent or erroneous results.

Smith and Keane [218] define coverage as a measure of case-base competence.

This measure determines the performance of individual cases with respect to the

CBR system’s retrieval and adaptation methods. It is defined, for each case, as the

set of problems contained in other cases which the case can solve with the knowledge

it contains. Smith and Keane use this measure in a case-base maintenance method

which targets the removal of cases who share coverage sets with other cases whilst

maintaining the overall set of problems that the whole case-base can solve.

Other research has been carried out into the transferal of knowledge contained

in cases to the adaptation phase. Shiu et al. [209] describe a fuzzy decision tree

Page 85: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

3. case-based reasoning 74

approach which converts some of the cases in the case-base into fuzzy rules which are

used during adaptation on the new, smaller case-base. They found that this approach

could considerably reduce the size of a case-base with only minor losses in accuracy.

3.3 Case-Based Reasoning for Scheduling and Planning

Recent years have seen an acceleration of interest in developing CBR systems for

a variety of combinatorial optimisation problems including scheduling. The use of

intelligent systems, including CBR, has improved the applicability of many academic

scheduling methods to real world problems, and this trend is set to continue [134, 151].

The re-use of previous problem solving experience is a goal which has the potential to

greatly improve the speed and usefulness of automated scheduling methods, especially

for dynamic problems such as reactive scheduling [224].

CBR approaches to scheduling problems can be classified into three groups with

respect to the type of knowledge contained in the cases [190]:

(a) A case is used to construct a whole or partial solution to a new scheduling

problem. Therefore a case contains the description of the scheduling problem

and the full or partial solution to it. This approach was used in a number

of production scheduling systems [77, 144, 148]. It was also successfully used

in university course timetabling where each problem was represented by an

attribute graph which enables the representation of courses to be scheduled

and the relationships between them [58]. In order to enable the CBR system

to handle timetabling problems of large size, a multiple retrieval system was

developed which constructs a new timetable by iteratively using partial solutions

of the previous timetabling problems.

(b) A case suggests an algorithm for the new scheduling problem that worked well

for a similar problem in the past [136, 137]. For example, such an approach was

used in [205] where a case stored machine scheduling problems, while the cases in

the case base were organised in a transformation graph which showed relations

between cases. A vertex in the graph represented a group of scheduling problems

Page 86: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

3. case-based reasoning 75

for which an appropriate algorithm was suggested. Instead of suggesting an

algorithm for the whole problem, in a CBR system for university examination

timetabling a heuristic which worked well in the previous similar situations was

selected at each step during the construction of a timetable [61]. These ‘replay’

type CBR systems have shown great promise for the problems they have been

defined for, although it is not clear that they would scale well to larger sets

of more complex problems. In particular the definition of ‘similarity’ between

large problems instances could potentially be problematic.

(c) A case describes a context in which a scheduling operator is used to repair/adapt

a schedule in order to improve its quality (in terms of constraint satisfaction).

Miyashita et al. [171] used the knowledge capturing capabilities of CBR to

elicit human experts’ preference for particular measures of roster quality when

making repairs to sub-optimal schedules. Operator re-use methods recognise

the importance of expert decision makers in the scheduling process and provide

the potential for effective integration of human and automated problem solving

techniques [150]. The research presented in this thesis is focused on the operator

reuse in personnel rostering.

Despite the existence of various CBR approaches to a wide range of scheduling

problems limited research has been conducted on the investigation of CBR approaches

to personnel rostering problems. Moreover, a majority of the algorithms developed so

far for personnel rostering problems tend to form the solution from scratch, starting

from an empty roster, rather than understanding a new problem in terms of old

experience. To the best of our knowledge Scott and Simpson were the only researchers

who combined CBR and constraint logic programming to solve simple nurse rostering

problems [208].

In the remainder of this section the use of CBR for scheduling and planning type

problems will be investigated. The scheduling research will be divided according to the

problem type: personnel rostering, educational timetabling, and industrial scheduling.

Much of the work in the literature has focused on the industrial scheduling problems,

particularly in dynamic ‘reactive’ environments. Personnel rostering and educational

Page 87: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

3. case-based reasoning 76

timetabling problems have received little attention. In the last part of this section

other related CBR approaches will be discussed including those developed for planning

problems, the Travelling Salesman Problem, and air traffic control problems.

3.3.1 Personnel Rostering

Scott and Simpson [208] developed the only case-based approach to personnel ros-

tering found in the literature. They combined case-based reasoning and constraint

logic programming (CLP) to solve simple nurse rostering problems. A case-base of

commonly used weekly shift patterns is collected from manual rostering solutions.

These shift patterns are then allocated to nurses according to the number and type

of nurses in the problem being solved. They are used as a ‘draft solution’ which is

then improved with local search. The authors define the following steps:

1. Set up a Case-Base of sets of efficient shift patterns.

2. Analyse the current problem or partial problem situation and find the best case

match.

3. Allocate shift patterns from the selected case to nurses using an ordering rule.

4. Analyse shift allocation to find problems of cover.

5. If possible, fix problems of cover by legal swaps of shifts.

6. Store the solution as a generalised case if it is sufficiently different to existing

cases.

In subsequent research Scott et al. [207] investigated combining multiple case

retrieval with objective driven adaptation techniques to maximise result quality. They

have also applied these methods to the travelling salesman problem [206].

3.3.2 Educational Timetabling

Burke et al. [58, 193] developed a CBR approach for solving the problem of assigning

courses to a limited number of time-slots. Their approach was based on the definition

Page 88: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

3. case-based reasoning 77

of structural cases. These cases represented previous problems as ‘attribute graphs’

rather than feature-value pairs. The attribute graphs consisted of nodes representing

events (courses) and edges representing relations between the events (constraints).

Each node and edge is given an attribute which corresponds to a descriptive label.

These labels define certain features about the object they are attributed to. For

example, courses can be labelled according to the number of times they must take

place each week. The edges (relations) between these courses can be labelled as being

consecutive or conflicting, according to the students that must take each course. Case

matching is defined as the graph isomorphism problem and solved using Messmer’s

algorithm which organises the graphs into a decision tree. New problems are then

compared to those in the case-base by navigating the decision tree and applying a

similarity measure which compares the attribute values. The retrieved solutions are

adapted using a graph heuristic method which attempts to minimise the violations of

constraints in the new solution. The authors found that their method could success-

fully solve course timetabling problems when the case-base is seeded with good quality

schedules. The method was particularly useful for problems which are solved on a

regular on-going basis because the structural similarities between successive problems

(and therefore solutions) could be successfully exploited.

Burke et al. [61] use CBR in an attempt to increase the generality of existing

university timetabling systems. They developed a tool for selecting heuristics for

solving course and examination timetabling problems. They memorise cases which

contain problem descriptions and the heuristics which worked well to solve them.

Problems are represented by simple features which describe different characteristics

including numbers of courses/exams, rooms, time-periods, students, and events which

cannot clash or be assigned consecutively. Other features are defined which are ratios

of the simple features. Knowledge discovery algorithms are used to select and weight

the features according to the performance of the heuristics on test problems.

3.3.3 Industrial Scheduling

Miyashita et al. [171, 172, 174, 173] developed the case-based scheduling system

Page 89: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

3. case-based reasoning 78

CABINS (CAse-Based INteractive Scheduling). CABINS uses the knowledge captur-

ing capabilities of CBR to elicit human experts’ preference for particular measures

of roster quality when making repairs to sub-optimal schedules. A number of differ-

ent measures of solution quality can be established for scheduling problems including

tardiness, machine utilisation, inventory usage, setup times, make-span, and product

quality/yield. Experts prioritise these measures according to their individual goals.

CABINS learns to improve schedules using repairs which imitate the experts’ goals

without needing to establish complex objective functions a priori. The system oper-

ates in one of three different modes:

- Knowledge acquisition interactive mode to acquire user preferences and generate

the case base.

- Decision-support interactive mode where the previously acquired case base that

incorporates user preferences suggests revision actions and evaluation outcomes

to the user who can accept a suggestion or override it with a new suggestion.

- Automatic mode where previously acquired user preferences are re-used to guide

scheduling decisions without any interaction with the user.

CABINS stores cases which contain different objective measurements of the sched-

ule when repairs were made. These measurements are global (pertaining to the entire

schedule) and local (pertaining to individual jobs on individual machines). Each case

stores a repair history which gives a series of repair tactics that were used to improve

the schedule. Each tactic used is assessed to determine the outcome (did it solve the

problem) and the overall effect on the schedule.

The system operated using the following steps:

- A focal job in the initial suboptimal schedule is randomly identified to be re-

paired.

- Activities in a focal-job are repaired in a forward fashion starting with the

earliest activity of that job that has enough upstream slack.

Page 90: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

3. case-based reasoning 79

- A repair strategy is selected for the current problem using CBR.

- After a repair has been executed, CBR is used to predict and evaluate the repair

outcome.

- If repair is deemed a success, find the next activity of the focal-job to repair,

else (if repair outcome is a failure), CBR is invoked to select the next repair

tactic to repair the current focal-activity.

The authors conclude that CBR is an excellent tool for modelling decision making

in complex ill-defined domains such as scheduling. CABINS can successfully elicit

domain knowledge by learning from human experts and apply it iteratively to improve

schedule quality.

MacCarthy and Jou [148] developed a CBR expert system for scheduling problems

with sequence dependent setup times. Simulation is used to generate cases which

consist of schedules which may or may not satisfy all the constraints. Cases are

retrieved based on the existence of conflicts between the constraints and schedule

performance measures. The retrieved cases contain heuristics and algorithms used to

solve problems which are then adapted to the current problem. MacCarthy and Jou

[149] later describe a more general framework for CBR in scheduling. They describe

the elements needed to successfully apply CBR to scheduling problems. In particular,

they emphasise the importance of case design in the development of CBR scheduling

systems.

Szelke and Markus [225] describe a case-based reasoning approach for reactive

scheduling. This method performs repairs to schedules when they are damaged by

external factors. The automated scheduler SUPREACT uses a multi-agent approach

whereby individual agents solve sub-problems in order to work towards common ob-

jectives. The agents perform case-based, rule-based, or model-based reasoning and

take responsibility for key aspects of the re-scheduling. The CBR agents are responsi-

ble for tuning the behaviour of the system according to past performance. Over-time

they choose search heuristics to decrease average response time and increase solution

quality. They use statistics about the current schedule, the ordering of jobs, resource

Page 91: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

3. case-based reasoning 80

status, machine availability, and operators’ rosters to make decisions.

Cunningham and Smyth [77] introduce a case-based approach to scheduling by

reusing previous good quality solution components. They use their system to solve a

travelling salesman problem and a single-machine scheduling problem with sequence

dependent setup times. Two separate CBR solutions are proposed. The first retrieves

cases from the case-base based on information about the jobs being scheduled and

then uses the solution stored to produce a ‘skeletal’ solution which is then completed

using a separate algorithm. The second approach retrieves cases repeatedly and uses

the retrieved solutions to gradually build the final schedule. Sub-sections of the

problem are identified and compared to the cases in the case-base according to the

jobs. Adaptation methods remove jobs which violate constraints and add them back

to a pool of unscheduled jobs. The authors conclude that the methods can successfully

solve single machine problems but they note that the adaptation techniques are very

problem-specific.

Schmidt [205] used case-based reasoning in a decision support system for produc-

tion scheduling problems. They used problem classification information from schedul-

ing theory to describe problems stored in cases. For each problem a corresponding

best performing solution strategy was also stored in the case. This simple approach

was presented as an interactive tool which could suggest solution techniques to the

decision maker.

Xia and Rao [252] presented a case-based reasoning system for process operation

support. They introduce the concept of dynamic case-based reasoning (DCBR) a

more realistic model for domains involving complex systems and fault propagation

phenomena. Their approach uses time-dependent indices, dynamic feature selection,

and multiple case retrieval strategies. Of particular interest are the time-dependent

features which represent changes in values over time (e.g. changes in temperature).

The system recognised the symptoms of potential faults and advised production man-

agers of appropriate corrective actions. The author’s found that the DCBR model

could accurately predict system faults and significantly improve the performance of

a paper production system.

Louis and McDonnell [147] developed a hybrid CBR and Genetic Algorithm (GA)

Page 92: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

3. case-based reasoning 81

approach for optimisation problems and tested it using examples of job shop schedul-

ing, military asset allocation, and circuit-board design problems. Their approach uses

case-based reasoning to store promising solutions which are then periodically injected

into a genetic algorithm’s population. They argue that CBR is good at memory or-

ganisation and the GA is good at solution adaptation. They found that case-injected

genetic algorithms are able to find better solutions than GAs alone, and are able to

converge on good solutions over a smaller number of generations.

3.3.4 Other Problems

Veloso [236] present the PRODIGY/ANALOGY system which is used to solve pro-

cess planning problems. The system integrates automatic case generation, retrieval,

storage, adaptation with more general planning methods. PRODIGY/ANALOGY

does not attempt to reuse solution components when they are retrieved, but instead

relies on reconstructive methods to interpret how the previous solutions were con-

structed. In later work Stone and Veloso [223] explore the use of user-knowledge

in an interactive version of PRODIGY. This system allows users to interrupt the

planning processes during their execution and change the behaviour of the system.

Bergmann and Wilke [42] describe the PARIS case-based reasoning system for

“Plan Abstraction and Refinement in an Integrated System”. They formalise the ab-

straction of cases from their domain-specific (or concrete) descriptions with a complete

mathematical model. The PARIS system learns abstract planning cases automatically

from sets of concrete training cases.

The PRODIGY/ANALOGY and PARIS systems are discussed in more detail in

Bergmann et al. [40] and Bergmann et al. [41] along with other CBR planning

systems CAPLAN/CBC [177] and ABALONE. The authors show that there is a

relationship between the workload required to solve a problem and the modification

that is required to adapt a retrieved case.

Cunningham et al. [78] developed a CBR system for solving travelling salesman

type problems. They found that CBR could produce solutions of average quality

very quickly but had more difficulty producing good quality solutions no matter how

Page 93: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

3. case-based reasoning 82

much time it was given. They determined that solution quality is lost during case

adaptation. They conclude that efforts to use CBR for optimisation problems must

ensure that solution quality is maintained in adapted solutions.

Changchien and Lin [69] describe an interactive CBR system for marketing plan-

ning. This method stores cases using the meta-language XML and retrieves cases

using a combination of XML parsing the Analytic Hierarchy Process. Adaptation

is performed by identifying core elements of similarity and filling in the gaps iden-

tified by Multi-Attribute Gap Analysis diagrams. They found that the combination

of CBR with multi-attribute decision making techniques facilitated faster marketing

planning.

3.4 Conclusion

This chapter has introduced some of the key research areas in the field of case-based

reasoning. The issues of case structure design, retrieval and adaptation algorithms,

and case-base maintenance have been discussed. CBR is defined as a framework

for solving problems which can be implemented using many different computational

tools.

The use of CBR for personnel rostering problems is virtually unexplored in the

literature. A single approach is cited, that of Scott and Simpson [208], which attempts

to solve a simple nurse rostering problem. Their research focusses on how CBR can

be used as a domain reduction technique to enhance constraint logic programming.

The authors draw positive conclusions about the success of such a hybridisation but

provide little insight into the applicability of CBR to rostering problems of real-world

complexity. It is possible that the method could be enhanced to solve larger problems

but there is no evidence that this has been explored by the authors to date.

In this chapter the application of CBR to the wider field of scheduling and plan-

ning was divided into three distinct classes, based on the type of information stored

within each case in the case-base. In the first class, cases store whole or partial sched-

ules which are use to construct new solutions to problems or sub-problems deemed to

be similar. Such methods are particularly suited to problems which are composed of

Page 94: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

3. case-based reasoning 83

elements which change little between instances. One of the most successful examples

of this approach is given by Burke et al. [58] for university course timetabling prob-

lems. These problems display a high degree of similarity between instances - a large

percentage of the the courses offered in one year will be offered again in the next.

Consequently it is practical to use those parts of old solutions which will apply to a

new problem with minimal adaptation. Scott and Simpson’s nurse rostering method

is also an example of the use of partial solutions (i.e. shift patterns) to solve new

problems.

Methods in the second class store cases containing algorithms for solving problems

with common characteristics based on their past good performance. This approach

was used successfully for machine scheduling problems by Schmidt [205] through

the exploitation of certain common structural characteristics. Some good results

have been demonstrated by methods of this class. However, this author remains

unconvinced that meaningful measures of problem similarity can be defined for entire

problems of reasonable complexity.

The final class of methods store examples of repair or construction operators used

to adapt a solution. These methods tend to manipulate individual objects (e.g. jobs,

employees, time slots, shifts, etc.) rather than representations of entire or partial

solutions. The best example of this class is CABINS [171, 172, 174, 173] - indeed

CABINS is undoubtedly the most comprehensively researched example of an appli-

cation of CBR to scheduling problems in the literature. CABINS can be used both

interactively, in order to increase the amount of experience in the case-base, or as

an automatic tool. It operates on individual job, attempting to improve the over-

all quality of the schedule through repair strategies generated from past scheduling

experience. The concepts of individual repair operations and interactive training in-

troduced by CABINS are used in the personnel rostering method described in this

thesis.

Research into the use of CBR for scheduling problems is relatively recent but

has produced some successful and promising methods. It is surprising that CBR is

not used more often for scheduling problems - particularly for solving problems with

a large degree of repetition of certain characteristics between successive instances.

Page 95: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

3. case-based reasoning 84

Apart from one simple approach, the use of CBR for personnel rostering is unexplored.

This thesis attempts to address this and apply many of the lessons learnt from the

CBR approaches to machine scheduling and planning problems to the problem of

personnel rostering.

Page 96: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

85

Part II

The CABAROST Model

Page 97: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

86

Chapter 4

A Nurse Rostering Model

4.1 Introduction

The novel problem formulation that will be introduced in this chapter is based on

the author’s analysis of the complex nurse rostering problem in the Ophthalmological

ward at the Queens Medical Centre University Hospital NHS Trust (referred to herein

as the QMC ward). This problem provided the primary motivation for the methods

that will be described in this thesis and will be used as the main source for illustrative

examples and experimental data. However, the formulation and algorithms have been

designed to be both flexible and expandable by considering the implications for other

problems described in the literature. In particular, it is reasonable to conclude that

the methods described here are generally applicable to a large number of the rostering

problems that might be found in UK hospitals.

Throughout this thesis many of the practical aspects of nurse rostering will be

discussed in terms of the rostering decisions that may be made. This terminology is

used to describe scheduling and re-scheduling actions that an expert decision maker

(i.e. the ward managers) makes when they are producing rosters. Particular attention

is paid to the decisions that are made when experts repair damaged areas of the roster

such as violations of nurse preferences or constraints.

The QMC ward consists of between 30 and 35 nurses and cover is required on a

24 hour basis. By NHS standards it is considered to be a medium sized ward with

high demand predictability and therefore reasonably constant staffing requirements.

Page 98: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

4. a nurse rostering model 87

Typically, rosters are produced over periods of 28 days and are described by the

months in which they fall. The rosters are non-cyclical in nature and do not adhere

to pre-established working patterns.

A number of different factors are considered when making rostering decisions. The

nurses in the ward are described using several different categorisations. Qualifications,

experience, and specific specialty training all affect the supervisory roles that nurses

may take. Factors such as gender, international status, and even personality have

bearing on the decisions that are made. The context in which decisions are made

determine the influence these factors may have. For example, decisions made during

tightly constrained periods may ignore factors which would otherwise be considered.

Manual roster production in the QMC ward is a three stage process involving

all nurses. The self rostering planning approach is used to give employees greater

involvement in the rostering process. This approach provides an efficient means by

which staff can indicate detailed preference information. It recognises that nurses are

professionals who will fulfill their responsibilities without excessive administrative

direction. The approach is becoming more popular throughout hospitals in the UK.

A comprehensive survey of the use of this approach in NHS hospitals can be found

in [210].

The three stages are:

1. Nurses are assigned to teams (according to a particular skill mix).

2. Nurses produce partial rosters (called preference rosters) for the planning period

in consultation with other members of their teams.

3. Partial rosters are combined to produce the ward roster. Constraint violations

in the ward roster are then repaired by senior staff members.

Preference rosters represent individual nurse’s requests to work particular shifts

on particular days. If they have no preference on a particular day then they can leave

it blank. Preference rosters vary considerably between nurses with regards to the

amount of detail included and individual flexibility. The third stage is the most time

consuming in the process and burdens a senior nurse with numerous hours of extra

Page 99: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

4. a nurse rostering model 88

work every month. The constraint violations present in the roster must be repaired

whilst maintaining as much information from the preference rosters as possible. In

some extreme circumstances, when preference information has been severely damaged,

certain constraint violations can be ignored (at the discretion of the senior nurse).

In this chapter the nurse rostering problem will be formulated. In Section 4.2 the

basic problem variables will be introduced including the nurses and the shifts and

shift preferences they may be assigned. The representation of constraint information

will be described in Section 4.3 along with the data structures used to describe specific

violations of constraints. In Section 4.4 the repairs that may be used to make changes

to rosters are described. Section 4.5 introduces the concept of problem and solution

spaces as a framework for the methods described in later chapters. The data-sets from

the QMC ward are described in Section 4.6 and some sample rosters are discussed.

4.2 Nurses and Shifts

The nurse rostering problem is represented by the ordered pair

R = 〈N,C〉 (4.1)

where

N = {nursei : 0 ≤ i < I} (4.2)

is the set of I nurses to be rostered, and

C = {φk : 0 ≤ k < K} (4.3)

is the set of K constraints. The set N contains information about the nurses to be

rostered, the shifts they have been assigned and the shifts that they would prefer to

work over the rostering period. The set C imposes constraints on the shift assignments

in N .

Each nurse is denoted by a 4-tuple,

Page 100: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

4. a nurse rostering model 89

nursei = 〈NurseTypei, hoursi, NRi, NPi〉 (4.4)

where NurseTypei is an array of descriptive information about nursei, and hoursi are

the maximum number of hours that nursei should work according to their contract

(for example this is 37.5 for full time nurses in the QMC). The set of assignment

variables, NRi, is defined:

NRi = {si,j : 0 ≤ j < p}, 0 ≤ i < I (4.5)

where si,j are the shift assignments of nursei on days j over the rostering period of

length p (usually 28 days). Similarly, the set of preferred assignments, NPi, is defined:

NPi = {〈pi,j, hi,j〉 : 0 ≤ j < p}, 0 ≤ i < I (4.6)

where pi,j are the shifts that nursei would prefer to work on days j over the rostering

period, and the hi,j are Boolean variables indicating whether the corresponding pref-

erence is a hard request or not (in which case it is called a soft request). Hard and

soft requests are treated differently during the rostering process and it is expected

that hard requests will only be violated in exceptional circumstances. NPi will be

referred to as the preference roster of nursei.

The shifts that can be assigned to the si,j and pi,j variables are:

UNASSIGNED: (U) No shift is currently assigned and the nurse has no request.

OFF: (O) No shift is currently assigned and the nurse has requested that they do

not work.

EARLY: (E) The early shift (0700-1445).

LATE: (L) The late shift (1330-2115).

NIGHT: (N) The night shift (2100-0715).

The descriptive information about a nurse is stored in the NurseType structure.

As well as being used to describe individual nurses, this data structure is also used

Page 101: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

4. a nurse rostering model 90

Table 4.1: The fields of NurseType

Field Domain Descriptionqual {RN,EN, AN, SN,QN, PN, XN} the qualification level of the nursegend {M, F} the gender of the nurse - (M)ale

or (F)emaleintl {I,H} the nationality of the nurse -

(I)nternational or (H)ometrain {ET, NT} the specialty training of the nurse

- eye-trained (ET) or non-eye-trained (NT)

grade {A,B,C,D, E, F,G, H, I} the grade of the nurse accordingto the NHS grading system

to describe nurse requirements for the definitions of constraints. The structure is

represented as an 5-tuple of fields as follows:

NurseTypeγ = 〈qualγ, gendγ, intlγ, trainγ, gradeγ〉, γ ∈ Γ (4.7)

where the fields are defined in Table 4.1.

Nurses in the QMC ward belong to one of four possible qualification categories.

These are, in descending order of seniority: registered (RN), enrolled (EN), auxil-

iary (AN), and student (SN). Registered nurses are the most qualified and have had

extensive training in both the practical and managerial aspects of nursing, whereas

enrolled nurses have received mainly practical training. Auxiliary nurses are unquali-

fied nurses who can perform basic duties and student nurses are training to be either

registered or enrolled. These four nurse qualifications are classified hierarchically by

using three additional qualifications. RNs and ENs are classified as qualified (QN)

while QNs and ANs, are both employed (PN). Finally, XN denotes nurses of any qual-

ification level. Figure 4.1 shows the relationships between the different qualification

categories. The bold text indicates the four real qualifications.

Registered and enrolled nurses can receive additional training specific to the ward

that they work in. In the ophthalmology ward these nurses receive eye-training,

denoted ET (a nurse without eye-training is called non-eye-trained denoted NT).

Page 102: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

4. a nurse rostering model 91

Figure 4.1: Nurse hierarchy

The specialty training allows nurses to perform certain procedures and to supervise

staff who do not have the training. A certain minimum number of specialty trained

nurses are required to be on the ward at all times.

The grade of each nurse is determined by a National Health Service (NHS) stan-

dard which is based on the qualification level of the nurse and the amount of hospital

experience that they have. In NHS hospitals grades can range from ‘A’ (most junior)

through to ‘I’ (most senior) although in practice only a subset are used. The grading

system establishes supervisory relationships between nurses. All nurses of grade D

and below who do not have specialty training must be supervised by nurses of grade

E or above. In extreme circumstances eye-trained D grade nurses may supervise but

this is discouraged due to litigation risk.

The gender and nationality of a nurse are also factors that affect rostering deci-

sions. NHS hospitals are recruiting significant numbers of international nurses due

to the fall in the number of home-trained nurses. It is unofficial policy that these

international nurses are spread evenly between shifts so that they are adequately su-

pervised by UK staff. The gender of nurses is important particularly when dealing

with older patients, many of whom are not comfortable with being cared for by mem-

bers of the opposite sex. Again, this is dealt with by ensuring a balance of staff of

each gender are on the ward at all times.

Page 103: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

4. a nurse rostering model 92

4.3 Constraints and Constraint Violations

In this section constraints are defined for the nurse rostering problem. They are

deliberately general and flexible with the intention that decision makers can choose

and adapt the constraints that are appropriate for their individual rostering problems.

Each constraint type has a number of parameters which can be set. For all of the

constraints the decision maker can specify which nurses are affected according to the

nurse type information defined in the previous section.

In the literature constraints are often divided into two categories, hard and soft

[53]. Hard constraints are those that must not be violated. A roster is considered to

be feasible if it violates none of the hard constraints. Soft constraints are considered

to be more flexible and do not have to be satisfied. They are often used to describe

roster quality by adding a penalty to an objective function proportional to the degree

of their violation. In this thesis the difference between hard and soft constraints is not

defined explicitly. It will be shown later that the treatment of constraint violations

is captured implicitly within the experience stored in the case-base.

This decision reflects the reality of real-world rostering problems where the bor-

derline between hard and soft is difficult to discern. In fact the treatment can depend

heavily on the context in which constraint violations take place. Constraints which

would normally be considered hard, such as cover or work hours constraints, can be

relaxed in extreme circumstances. The rigid subdivision of constraints into the two

categories fails to provide a flexible enough model for most real world problems.

Each constraint φk in C is defined as a function which operates on a structure

containing information about the constraint, Constraintk, and the set of nurses, N :

φk(Constraintk, N) = {violationkm : 0 ≤ m < Mk}, 0 ≤ k < K (4.8)

where the violationkm are the Mk violations of constraint φk in the current roster.

Constraints may be one of twelve different types, and different parameters are used

for each type. In general, each Constraintk is a 3-tuple:

Constraintk = 〈cTypek, NurseTypek, cParamSetk〉, 0 ≤ k < K (4.9)

Page 104: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

4. a nurse rostering model 93

where cTypek is the type of constraint, NurseTypek describes the nurses whose shift

assignments will be restricted by the constraint, and cParamSetk is a set of param-

eters specific to the constraint type.

The twelve constraint types defined are:

Cover constraints define the minimum number of nurses of a particular description

(represented by the NurseType structure used to describe nurses) that must be

assigned to a particular shift. It is normal that large number of cover constraints

are defined for rostering problems. A set of cover constraints imposed on a single

shift together define the skill mix that must be present on the ward for that

shift. The flexibility provided by the use of the NurseType structure allows

for overlapping constraints which are often used in real-world problems. For

example, it may be the case that 4 qualified nurses and 1 registered nurse are

required for the early shift and this would be represented as two constraints.

The second constraint is satisfied if one of the 4 qualified nurses is an RN, but

if this is not the case then an RN must be assigned to the shift in addition to

the 4 nurses already assigned.

HardRequest constraints are violated if a nurse’s preferred shift is different from

their assigned shift, and the preferred shift is a hard request. It is assumed that

HardRequest constraints will represent shift preferences which should only be

violated in extreme circumstances. They can also be used to represent the pre-

ferred working patterns of nurses with strictly specified contracts. For example

many part time nurses only work early shifts on specified days so that they can

collect their children after school.

MaxDaysOn constraints limit the number of days that nurses may work in a row.

For the QMC ward this is generally 6 for all nurses. This constraint is often

violated by nurses’ shift requests and it is up to individual ward managers to

decide in which circumstances this is acceptable.

MaxHours constraints set the maximum number of hours a nurse may work over

a period. This can differ considerably between nurses and depends on their

Page 105: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

4. a nurse rostering model 94

individual working contracts. Full time nurses at the QMC ward may not work

more than 75 hours in a fortnight. Specifying limits over a fortnight allows for

some flexibility in shift assignments in individual weeks. Nurses who work more

hours during one week will be compensated with extra time off in the following

week.

MinDaysOn constraints define the minimum number of days that nurses may work

successively. This is generally set at 2 days for full-time nurses. It is not used for

most part-time nurses because of the smaller number of shifts that are assigned

each week.

MinHours constraints set the minimum number of hours a nurse may work over a

period. This constraint is violated if nurses’ time is under-utilised by the roster.

SingleNight constraints are violated if nurses are assigned individual night shifts.

Nurses at the QMC ward prefer to work night shifts in blocks of two or more.

Again, this applies mainly to full time nurses - it is often the case that part

time nurses will work a single night shift in isolation.

SoftRequest constraints are violated if a nurse’s preferred shift is different from

their assigned shift and the preferred shift is a soft request. During the self-

rostering process nurses may provide very detailed sequences of preferred shifts.

These preferences however are not considered to be binding and they are often

violated during the repair of the roster.

Succession constraints define illegal shift combinations for nurses. It is not desirable

to work shifts of one type on one day followed by shifts of another type on the

day after. For example, a NIGHT shift followed by an EARLY shift is one

such combination.

WeekendBalance constraints set the number of weekends that nurses may work

over a period. They state the maximum number of weekends a nurse may work

in any given number of weekends. For example, nurses in the QMC ward may

Page 106: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

4. a nurse rostering model 95

not work more than 2 weekends out of every 4, unless it is stipulated in their

contracts.

WeekendsInARow constraints set the maximum number of weekends that nurses

may work in a row. This is usually three in the QMC ward. This constraint

is often covered by the WeekendBalance requirement and may only be used for

certain nurses.

WeekendSplit constraints are violated if a nurse works only one of the days in a

weekend. This constraint encourages weekends to be used in full and makes

adhering to WeekendBalance and WeekendsInARow constraints more likely.

The parameter set associated with each constraint varies in size and content de-

pending on the constraint type:

Cover: cParamSet = {shift, min} where shift ∈ {E,L,N} and min ∈ Z+. There

must be at least min nurses working the indicated shift;

HardRequest: cParamSet = ∅. No additional parameters are used to describe

these constraints;

MaxDaysOn: cParamSet = {max} where max ∈ Z+. Nurses may work no more

than max days in a row;

MaxHours: cParamSet = {max, period} where max ∈ R+ and period ∈ [0, p− 1].

Nurses may work no more than max hours in any stretch of period days;

MinDaysOn: cParamSet = {min} where min ∈ Z+. Nurses may work no less

than min days in a row;

MinHours: cParamSet = {min, period} where min ∈ R+ and period ∈ [0, p − 1].

Nurses may work no less than min hours in any stretch of period days;

SingleNight: cParamSet = ∅. No additional parameters are used to describe these

constraints;

Page 107: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

4. a nurse rostering model 96

SoftRequest: cParamSet = ∅. No additional parameters are used to describe these

constraints;

Succession: cParamSet = {shift1, shift2} where shift1, shift2 ∈ {U,E,L,N}.Nurses may not work shift1 followed immediately by shift2;

WeekendBalance: cParamSet = {max, num} where max, num ∈ Z+. Nurses may

not work more than max weekends in every num weekends;

WeekendsInARow: cParamSet = {max} where max ∈ Z+. Nurses may work no

more than max weekends in a row;

WeekendSplit: cParamSet = ∅. No additional parameters are used to describe

these constraints.

For an example of the instantiation of a Constraint structure consider a constraint

which restricts the maximum number of consecutive days on which any nurse may

work to six:

〈MaxDaysOn, 〈XN, ∗, ∗, ∗, ∗〉, {6}〉 (4.10)

where the wildcard symbol * in the NurseType structure indicates that the field may

take any value.

A distinction is made between the constraints imposed upon a particular rostering

problem and the violations of those constraints. Here constraints are defined as

functions which generate information about the parts of the roster in which they are

not satisfied. This information is represented by violation structures which describe

specific occurrences of constraint violations in the roster.

When constraint function φk of type cTypek is applied to N it produces violations

of the form:

violationkm = 〈cTypek, vParamSetkm〉, 0 ≤ km < Mk (4.11)

where vParamSetkm is a set of parameters describing the violation. The parameter

sets for violations differ according to the type of constraint they were generated by.

Page 108: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

4. a nurse rostering model 97

The parameters for violations of the same three constraints described above are given

here:

Cover: vParamSet = {NurseType, day, shift} where NurseType is taken from the

constraint which generated the violation, day ∈ [0, p−1] and shift ∈ {E,L,N}.There are insufficient nurses of type NurseType assigned to shift on day.

HardRequest: vParamSet = {day, nurse} where day ∈ [0, p− 1] and nurse ∈ N .

The hard request of nurse on day has been violated.

MaxDaysOn: vParamSet = {startDay, numDays, nurse} where startday ∈ [0, p−1], numDays ∈ [1, p − startDay], and nurse ∈ N . Here nurse is working too

many shifts in a row starting on startDay for numDays days.

MaxHours: vParamSet = {startDay, numDays, nurse} where startday ∈ [0, p −1], numDays ∈ [1, p − startDay], and nurse ∈ N . Here nurse is working too

many hours starting from startDay for numDays days.

MinDaysOn: vParamSet = {startDay, numDays, nurse} where startday ∈ [0, p−1], numDays ∈ [1, p − startDay], and nurse ∈ N . Here nurse is working too

few shifts in a row starting from startDay for numDays days.

MinHours: vParamSet = {startDay, numDays, nurse} where startday ∈ [0, p −1], numDays ∈ [1, p − startDay], and nurse ∈ N . Here nurse is working too

few hours starting from startDay for numDays days.

SingleNight: vParamSet = {day, nurse} where day ∈ [0, p − 1] and nurse ∈ N .

Here nurse is working a single night shift on day.

SoftRequest: vParamSet = {day, nurse} where day ∈ [0, p − 1] and nurse ∈ N .

The soft request of nurse on day has been violated.

Succession: vParamSet = {day, nurse} where day ∈ [0, p − 2] and nurse ∈ N .

Here nurse has an illegal pair of shifts on days day and day + 1.

Page 109: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

4. a nurse rostering model 98

WeekendBalance: vParamSet = {day, numWeekends, nurse} where day ∈ [0, p−1], numWeekends ∈ Z+, and nurse ∈ N . Here nurse is working too many

weekends with in the period from day for numWeekends.

WeekendsInARow: vParamSet = {day, numWeekends, nurse} where day ∈ [0, p−1], numWeekends ∈ Z+, and nurse ∈ N . Here nurse is working too many

weekends in a row from day for numWeekends.

WeekendSplit: vParamSet = {day, nurse} where day ∈ [0, p− 1] and nurse ∈ N .

Here nurse is a working only one of the days of the weekend on day.

Following the previous example of a MaxDaysOn constraint (4.10), a violation

involving nurse8 starting on day 0 for six days would be written:

〈MaxDaysOn, {0, 6, nurse8}〉 (4.12)

4.4 Repairs

In this section the actions that can be used to change the shift assignments of nurses

are defined. A repair is defined as an action which alters the assignment of shifts for

the nurses in N . The notation used is:

repairn = 〈rTypen, rParamSetn〉 (4.13)

where rTypen is the type of repair and rParamSetn is a set of parameters specific to

the type of repair.

Four different repair operations have been identified for this rostering problem.

They are the natural repairs that are most commonly used by rostering experts.

Figure 4.2 gives a graphical examples of three of the repairs. They are defined below

along with the parameter sets used to describe them.

Reassign: rParamSet = {nurse, day, shift} where nurse ∈ N , day ∈ [0, p − 1],

and shift ∈ {U,E,L,N}. Action: Assign shift to nurse on day.

Page 110: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

4. a nurse rostering model 99

Figure 4.2: Basic repair action types

Swap: rParamSet = {nurse1, nurse2, day} where nurse1, nurse2 ∈ N and day ∈[0, p − 1]. Action: Interchange the shift assignments of nurse1 and nurse2 on

day.

Switch: rParamSet = {nurse, day1, day2} where nurse ∈ N and day1, day2 ∈[0, p − 1]. Action: Interchange the shift assignments of nurse on day1 and

day2.

Ignore: rParamSet = ∅. Action: Do nothing.

For example, a repair which assigns the EARLY shift to nurse7 on day 3 would

be written:

〈Reassign, {nurse7, 3,E}〉 (4.14)

4.5 Problem and Solution Spaces

The formulation of the nurse rostering problem as described in this chapter allows

for the development of novel methods. The definitions of constraint violations and

Page 111: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

4. a nurse rostering model 100

repairs as identifiable objects reflects the reality of expert decision making for these

types of real-world problems. Constraint violations are modelled as problems that

must be solved and the actions that are used to repair them are the solutions. Given

this interpretation it is sensible to define problem and solution spaces in order to

complete the formulation.

The set of violations of constraints in a particular instance of a rostering problem

and the set of possible repairs that can be made to the roster are described as the

instance spaces of violations and repairs, respectively.

Given R = 〈N, C〉, the instance space of violations, PRv , is defined as the union of

all the sets of violations generated by applying the constraints in C to N :

PRv =

φk∈C

φ(constraintk, N) (4.15)

The instance space of repairs, PRr is the set of all possible repairs given the set of

nurses N . This can be formulated using the following sets of repairs:

AReassign = {〈Reassign, {nurse, day, shift}〉} (4.16)

for all nurse ∈ N , day ∈ [1..p], and shift ∈ {U,E,L,N},

ASwap = {〈Swap, {nurse1, nurse2, day}〉} (4.17)

for all nurse1, nurse2 ∈ N and day ∈ [1..p], and

ASwitch = {〈Switch, {nurse, day1, day2}〉} (4.18)

for all nurse ∈ N and day1, day2 ∈ [0, p− 1].

Then PRr is defined:

PRr = AReassign ∪ ASwap ∪ ASwitch ∪ {〈Ignore, ∅〉} (4.19)

These instance spaces are dynamic in the sense that every time a violation is

repaired their contents will change. It is likely that many of the repairs that are used

Page 112: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

4. a nurse rostering model 101

to repair violations will in turn cause more violations. Any changes to the roster will

also alter the effect of the repairs in PRr .

The nurse rostering problem modelled in this way can be seen as the problem of

finding suitable members of PRr for each violation in PR

v . If it is possible to find a PRv

with no members then the roster a complete solution will be found.

4.6 Problem Data

The problem description and data were elicited from the QMC ward through a series

of interviews with the senior nursing staff. During these interviews the nature of the

rostering problem at the QMC was discussed. In particular, the constraints were

discussed in great detail. The existing system used by the ward was also discussed.

The preference rosters and information about nurses was provided for a number

of months. This real-world data is used for the experiments presented in this thesis.

Seven months of data are used in the experiments - from March 2001 until September

2001. Throughout the development of the research the number of constraints that

were applied to the problems has grown. Following is a list of the constraints that

apply to the problems for each chapter.

Chapter 5 Basic Cover and MaxHours constraints. These experiments were used to

investigate the potential of the case-based method in the early stages:

1. Cover: EARLY shifts require 4 Qualified Nurses

2. Cover: EARLY shifts require 1 Registered Nurse

3. Cover: EARLY shifts require 1 Eye-Trained Nurse

4. Cover: EARLY shifts require 1 Auxiliary Nurse

5. Cover: LATE shifts require 3 Qualified Nurses

6. Cover: LATE shifts require 1 Registered Nurse

7. Cover: LATE shifts require 1 Eye-Trained Nurse

8. Cover: LATE shifts require 1 Auxiliary Nurse

Page 113: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

4. a nurse rostering model 102

9. Cover: NIGHT shifts require 2 Qualified Nurses

10. Cover: NIGHT shifts require 1 Eye-Trained Nurse

11. Cover: NIGHT shifts require 1 Auxiliary Nurse

12. MaxHours: The maximum number of hours any nurse may work in a

fortnight (14 days) is 75

Chapters 6, 7 MaxDaysOn, MinDaysOn, Succession and contract based MaxHours

constraints. These constraints made the problems considerably more realistic

and provide a good basis for testing meta-heuristic hybrid algorithms:

1. MaxDaysOn: The maximum number of consecutive shifts for nurses of any

type is 6

2. MinDaysOn: The minimum number of consecutive shifts for full time

nurses is 2

3. Succession: An EARLY shift must not follow a NIGHT shift

4. MaxHours: The maximum number of hours any nurse may work is as set

in their contracts

Chapter 8 Fully constrained problems. These problems included all of the con-

straints that were discussed with the senior nurses at the QMC ward:

1. HardRequest: Hard requests should be satisfied

2. MinHours: The minimum number of hours any nurse may work is 5 less

than the maximum set in their contract

3. SingleNight: Nurses can not work only one night shift

4. SoftRequest: Soft requests should be satisfied

5. WeekendBalance: Nurses may work no more than 3 weekends out of every

4

6. WeekendsInARow: Nurses may work no more than 3 weekends in a row

Page 114: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

4. a nurse rostering model 103

7. WeekendSplit: Nurses must work either both days of a weekend or not at

all

It should be noted that in the early experiments nurse preference requests were

not modelled as constraints because they were incorporated into the solutions through

the definitions of features used to choose repairs.

Figure 4.3 gives a sample preference roster for Registered and Enrolled nurses for

March 2001. This shows the division of the ward into various teams. The names of

the nurses have been changed for data protection reasons. The letters in brackets after

the nurses’ names indicates their qualification level and eye-training status. The shift

label ‘AL’ is an abbreviation for annual leave. When this is indicated in the preference

roster no rostering action can change this request. Of interest is the wide variation

in the amount of preferences that nurses provide - and this is independent of the

qualifications or specialty training of the nurse. Although it is not indicated in this

figure the number of hours per week in the nurses’ contracts does have an affect on

the level of detail they provide in the preference roster.

The preference rosters are used as a starting point for the rostering process. The

constraint violations in the preference roster are repaired to produce the final roster.

The number of violations present in a preference roster is usually very high. In general,

Cover, MinHours, and MinDaysOn violations are present in the highest numbers. On

average, there are around 100 of these violations in the preference roster.

4.7 Conclusion

In this chapter the basic problem formulation has been introduced. The different

types of nurses have been defined along with the shifts that they can be assigned.

The self-rostering paradigm has been introduced as the mechanism for collecting

nurse preferences. Constraints and constraint violations have been formulated as

data structures which represent the problems in the current roster. A number of

simple repair actions have been defined which are used in order to solve constraint

violations.

Page 115: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

4. a nurse rostering model 104

Figure 4.3: Sample preference roster

Page 116: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

4. a nurse rostering model 105

The formulations used in this chapter are motivated by the case-based reasoning

approach which will be defined in Chapter 5. In particular the correspondence be-

tween constraint violations and repairs will be explored as a means by which to solve

rostering problems.

Page 117: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

106

Chapter 5

Case-based Repair Generation

5.1 Introduction

This chapter will introduce the basic framework of the case-based reasoning approach

to personnel rostering. This approach operates on the mathematical model of the

nurse rostering problem defined in Chapter 4. The methods described in this chapter

do not aim to solve entire rostering problems, but rather define a mechanism for

repairing subproblems which can then be combined to solve full problems. This case-

based mechanism will be used within hybrid algroithms described in Chapters 7 and

8.

The subjectivity and complexity of personnel rostering problems make case-based

reasoning an ideal modelling tool. The ‘learning by example’ framework that CBR

provides can be used to elicit rostering knowledge from experts in a very natural

manner. The CAse-BAsed ROSTering (CABAROST) method was developed as a

mechanism for capturing examples of individual constraint violations and the repairs

that were used by human experts to solve them [188]. This rostering knowledge is then

used for automated rostering and as a decision support system for senior nurses. The

automated methods can use the knowledge to repair constraint violations in rosters

starting either from the initial roster of nurse preferences or from a final roster which

has been disrupted by events such as staff illness or an increase in patient numbers.

In the interactive mode the knowledge can be used to guide nurses towards rostering

decisions that they have made before, whilst allowing them to change and adapt their

Page 118: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

5. case-based repair generation 107

responses to unique circumstances.

Violations and repairs are stored as cases in a case-base and are used to solve

new violations in new rosters. When a new violation is identified in a roster the case

containing the most similar violation in the case-base is retrieved. The repair from

the retrieved case is used to generate a set of possible repairs that could be performed

on the current roster. These repairs are then compared with the repair from the

retrieved case and the most similar is selected.

The case-base is used to store historical problem solving knowledge in a generalised

context. The violations and repairs it contains must be independent of any individual

problem instance. This is essential if the experience stored about solving violations

in previous problem instances is to be used to solve violations in new instances. This

can be illustrated by considering a MaxDaysOn violation involving a particular nurse,

nurse10, in N . In order to solve this violation cases containing similar violations are

retrieved from the case-base. It is clear that the applicability of past experience is

increased if the search is not limited to previous violations involving only nurse10.

Violations of the same type involving other nurses must also be considered. The

information stored within the case-base about violations and repairs is deliberately

not roster specific. Hence, the experience stored about repairing the violations in one

roster can be used to solve violations (of the same type) in any other roster, regardless

of any staffing differences.

This chapter is arranged as follows. In Section 5.2 the issues of knowledge gen-

eralisation and representation are addressed. Sections 5.3 and 5.4 describe the re-

trieval and adaptation algorithms and a simple example is presented in Section 5.5.

An alternative representation of repair information is described in Section 5.6. The

performance of the CABAROST method is demonstrated with some simple initial

experiments in Section 5.8.

5.2 Case Structure

The case-base is a database of previous violations of constraints and their corre-

sponding repairs. Each case represents an individual problem solving episode which is

Page 119: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

5. case-based repair generation 108

defined for the rostering problem as the repair of a single constraint violation. Cases

store the characteristics of the violations which are used by the rostering experts to

determine the action that will be used to address them. They also store information

about the repairs that were used to solve violations which is used in the future to

generate solutions to new problems.

Typically, a case-base will contain between 100 and 1000 cases. The number of

cases depends mainly on the number of constraints defined for the problem - more

constraints will require more cases to represent the different ways in which the con-

straint’s violations should be repaired. The number of cases needed for each constraint

will vary according to the type. The repairs of some constraints may not require the

consideration of many alternatives (for example if a constraint must be satisfied in

nearly every circumstance) and so would not require many cases to represent this

behaviour. Other constraints may depend more heavily on the circumstances sur-

rounding them and complex interactions between the shifts already rostered and any

preferences indicated by the nurses must be considered. Such constraints may require

many cases to represent all of the possible combinations.

Each case in the case-base consists of a pair representing a violation and the repair

that was used to solve it. The case-base can be represented as the Cartesian product

of the space of problems and the space of solutions. For the nurse rostering problem

this is defined:

CB = Wv ×Wr (5.1)

where Wv is the set of previously encountered constraint violations and Wr is the set

of repairs of these violations. A case is therefore defined as an ordered pair:

caseγ = 〈vγ, rγ〉 , γ ∈ Γ (5.2)

where vγ and rγ represent a violation and a repair, respectively.

In the case-base, a generalised violation is defined as a duple

vγ = 〈vStructureγ, vγ〉 , γ ∈ Γ (5.3)

Page 120: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

5. case-based repair generation 109

where vStructureγ represents structural information about the violation being stored

and vγ is a vector of violation feature values.

When a problem solving episode is stored in a case the structural information

about the violation is extracted from the roster through a process called generalisa-

tion. This process identifies information about the violation which is not specific to

the current roster. For example, only the NurseType information is stored about

any nurses that are involved in the violation. The type of the violation and any shifts

involved are also stored in this structure.

In general the vStructureγ variable is defined:

vSructureγ = 〈cTypeγ, NurseTypeγ, vParamSetγ〉 (5.4)

where cTypeγ is the type of constraint which was violated, NurseTypeγ is the type

information about the nurse involved, and vParamSetγ is a set of parameters which

depends on the constraint type.

Following are the details of the parameter sets stored for each of the example

constraint violations that were given in Chapter 4.

Cover: vParamSet = {shift} where shift ∈ {E,L,N}. There were insufficient

nurses of type NurseType assigned to the indicated shift.

HardRequest: vParamSet = {assigned, requested} where assigned ∈ {U,E,L,N}and requested ∈ {O,E,L,N}. A nurse had asked to be assigned the requested

shift but instead was given the assigned shift.

MaxDaysOn: vParamSet = ∅.

MaxHours: vParamSet = ∅.

MinDaysOn: vParamSet = ∅.

MinHours: vParamSet = ∅.

SingleNight: vParamSet = ∅.

Page 121: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

5. case-based repair generation 110

The Cover violation describing a shortage of Reg-istered Nurses for the early shift on day 3 is

〈Cover, {〈RN, ∗, ∗, ∗, ∗〉, 3,E}〉,

and is generalised using θRv to be

〈Cover, 〈RN, ∗, ∗, ∗, ∗〉, {E}〉 .

Figure 5.1: Example: Generalisation of a Cover Violation

SoftRequest: vParamSet = {assigned, requested} where assigned ∈ {U,E,L,N}and requested ∈ {O,E,L,N}. A nurse had asked to be assigned the requested

shift but instead was given the assigned shift.

Succession: vParamSet = {shift1, shift2} where shift1, shift2 ∈ {E,L,N}. A

nurse was assigned shift1 followed by shift2.

WeekendBalance: vParamSet = ∅.

WeekendsInARow: vParamSet = ∅.

WeekendSplit: vParamSet = ∅.

Given R = 〈N, C〉 and violation problem instance space PRv we define the gener-

alisation as a function, θRv , such that

θRv : PR

v −→ Wv (5.5)

When a violation is generalised the NurseType and other parameter information

is extracted from it to store in the case-base. Figures 5.1 to 5.3 show examples of the

generalisation process for the non-trivial generalisations (those violation types with

non-empty parameter sets).

The vector of feature values, vγ, stores a range of different measurements of the

roster at the time which the violation took place. These features were initially de-

signed through consultation with the rostering experts at the QMC. A subset of the

Page 122: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

5. case-based repair generation 111

The HardRequest violation describing the assign-ment of a shift other than that requested by nurse8

on day 6 is

〈HardRequest, {6, nurse8}〉,

and is generalised using θRv to be

〈HardRequest, 〈EN, F, H, ET, D〉, {E,O}〉,

where NurseType8 = 〈EN, F, H, ET, D〉, s8,6 =E is the shift assigned to nurse8 on day 6, andp8,6 = O was the shift that nurse8 had requestedon day 6.

Figure 5.2: Example: Generalisation of a HardRequest Violation

The Succession violation describing the assign-ment of an illegal pair of shifts (EARLY afterNIGHT) on days 11 and 12 to nurse2 is

〈Succession, {11, nurse2}〉,

and is generalised using θRv to be

〈Succession, 〈RN, M, H, NT, D〉, {N,E}〉

where NurseType2 = 〈RN, M,H, NT, D〉, ands2,11 = N, s2,12 = E were the illegal shift assign-ments.

Figure 5.3: Example: Generalisation of a Succession Violation

Page 123: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

5. case-based repair generation 112

features was then selected automatically from the larger candidate set using a data

mining algorithm. A description of this algorithm, and a detailed discussion of the

different features used, is given in Chapter 6.

The vector of features represent the characteristics of violations which affect the

choice of repairs that will be used to solve them. They are the factors which human

experts take into account when making rostering decisions. They differ from the

structural information stored about violations, which represent clearly identifiable

differences in violation type. Feature values represent the characteristics of the roster

which cannot be systematically linked to the repair outcomes without the input of

the domain expert.

The features fall into one of three categories:

Statistical information is stored about various aspects of the roster. This includes

measurements of the current levels of shift assignment (as percentages of the

total number of assignable hours available), nurse preference satisfaction, the

magnitude of the violation, and the total number of constraint violations. Nurse

preference satisfaction levels are measured as the proportion of nurses shift

requests which are satisfied. The measurement of violation magnitude depends

on the type of constraint. For example, the magnitude of a cover violation is

shortfall in the number of nurses required. The magnitude of a MaxDaysOn

violation is the number of days assigned over the maximum limit specified.

These measurements can be taken over the whole roster or over subsets of

nurses and days, depending on the violation being stored.

Cover information is the measurement of the number of nurses working on a specified

shift. This is subdivided by nurse type and the shifts measured depend on the

type of violation. The ‘cover’ of UNASSIGNED and OFF shifts is also measured

in certain instances - when it is important to record the number of nurses who

are not currently assigned on-shifts on a particular day.

Shift Patterns are recorded on and around days during which violations have oc-

curred. This is particularly useful for violations which involve a single nurse

Page 124: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

5. case-based repair generation 113

over a relatively short period - for example Succession and MinDaysOn viola-

tions. The knowledge of shift patterns allows rostering decisions to be made

which take into account the assignments that nurses have on the days either

side of the day on which the violation occurs.

The repair that was used to solve the violation during a recorded problem solving

episode is also stored in the case in a generalised form:

rγ = 〈rStructureγ, rγ〉 , γ ∈ Γ (5.6)

where rStructureγ describes structural information about the repair, and rγ is a

vector of repair feature values.

The structural information about a repair is information about the types of nurses

and shifts that were involved in the repair. In general this takes the form:

rStructureγ = 〈rTypeγ, rParamSetγ〉 (5.7)

The parameter sets stored in the case-base about each repair type, with respect

to the definitions of the actual repairs being generalised, are:

Reassign: rParamSet = {NurseType, newShift, oldShift} where NurseType is

taken from the nurse field of the actual repair, oldShift is the shift that the

nurse originally had on the day of the repair, and newShift is what they were

reassigned.

Swap: rParamSet = {NurseType1, NurseType2, shift1, shift2} where NurseType1

and NurseType2 are taken from the nurse1 and nurse2 fields of the actual re-

pair, respectively, and shift1 and shift2 are the shifts originally assigned to

each of the nurses on the day of the repair.

Switch: rParamSet = {NurseType, shift1, shift2} where NurseType is taken

from the nurse field of the actual repair, shift1 was the nurses shift on day1

of the repair, and shift2 was the nurses shift on day2.

Ignore: rParamSet = ∅. No repair was performed.

Page 125: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

5. case-based repair generation 114

The Reassign repair describing the assignment ofan early shift to nurse6 on day 4 is

〈Reassign, {nurse6, 4,E}〉,

and is generalised using θRr to be

〈Reassign, {〈EN, F, H,ET, D〉,E,U}〉

where NurseType6 = 〈EN,F, H, ET,D〉, ands2,4 = U was the shift assigned to nurse2 beforethe repair.

Figure 5.4: Example: Generalisation of a Reassign Repair

Repairs are generalised using the same principal that was used to generalise vio-

lations. The generalisation function for repairs, θRr , is a mapping:

θRr : PR

r −→ Wr (5.8)

During generalisation the parameter information is extracted from the repairs

when they are stored in the case-base. Figures 5.4 to 5.6 show examples of the

generalisation process for the non-trivial generalisations (all repairs expect for Ignore

repair).

The repair indices are statistical information about the parameters of the repair

- the cover of shifts before and after the repair and the utilisation and satisfaction of

the nurses involved. Tables 5.1 to 5.3 list the features used for Reassign, Swap, and

Switch repairs. No features are defined for Ignore repairs. In these tables the ‘#’

symbol denotes ‘number of’.

5.3 Case Retrieval

The case retrieval phase begins after a violation has been chosen from the roster.

This violation is called the focus violation. Violations are generally chosen at random

when rosters are being solved by an automated algorithm. When CABAROST is

Page 126: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

5. case-based repair generation 115

Table 5.1: Reassign repair features

Given 〈Reassign, {nursei, day, shift}〉:1) # nurses assigned shift on day2) # nurses of type NurseTypei assigned shifton day3) # nurses assigned si,day on day4) # nurses of type NurseTypei assigned si,day

on day5) Assigned/Contract Hours for nursei

6) Shift pattern for nursei for two days aroundday

Table 5.2: Swap repair features

Given 〈Swap, {nursei, nursej, day}〉:1) # nurses assigned si,day on day2) # nurses assigned sj,day on day3) # nurses of type NurseTypei assigned si,day

on day4) # nurses of type NurseTypei assigned sj,day

on day5) # nurses of type NurseTypej assigned si,day

on day6) # nurses of type NurseTypej assigned sj,day

on day7) Assigned/Contract Hours for nursei

8) Assigned/Contract Hours for nursej

9) Shift pattern for nursei for two days aroundday10) Shift pattern for nursej for two days aroundday

Page 127: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

5. case-based repair generation 116

The Swap repair describing the interchanging ofthe shifts assigned to nurses nurse6 and nurse1 onday 18 is

〈Swap, {nurse6, nurse1, 18}〉,

and is generalised using θRr to be

〈Swap, {〈AN, F, I,NT, B〉, 〈AN,M, H,NT, B〉,L,O}〉

where NurseType6 = 〈AN,F, I, NT,B〉,NurseType1 = 〈AN, M,H, NT,B〉, and s6,18 = Land s1,18 = O were the shifts assigned to nurse6

and nurse1, respectively, before the repair.

Figure 5.5: Example: Generalisation of a Swap Repair

used in interactive mode the user can choose the violation they wish to solve from a

list.

After the focus violation has been chosen from the set PRv it must first be gener-

alised using the θRv function so that it can be compared to the historical violations in

the case-base. The retrieval algorithm (Figure 5.8) involves two searches of the case-

base. The first search identifies the cases in the case-base whose violations match the

structural information of the focus violation. This ensures that the retrieved cases

contain only violations of the same type, and involving the same types of nurses and

shifts, as the focus violation.

The first search results in a trimmed case-base consisting of cases containing only

matching violations. It is possible that after the first search no cases are returned

in the trimmed case-base. This is an indication that the case-base does not contain

sufficient experience to solve the current violation. The user would need to supply

some examples which cover this type of constraint. It is desirable that the method

behave in this manner - information about the repairing of other constraints could

not be successfully used in most instances. More details about the on-going training

of the case-base in a semi-automated setting is given in Chapter 8.

Page 128: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

5. case-based repair generation 117

The Switch repair describing the interchanging ofthe shifts assigned to nurse18 on days 7 and 9 is

〈Switch, {nurse18, 7, 9}〉,

and is generalised using θRr to be

〈Reassign, {〈RN,F,H, ET, E〉,U,N}〉

where NurseType18 = 〈RN,F, H, ET,E〉, ands18,7 = U and s18,9 = N were the shifts assignedto nurse18 on days 7 and 9 before the repair.

Figure 5.6: Example: Generalisation of a Switch Repair

The matching violations in the trimmed case-base are ranked according to the

distance of their feature index vector vγ from the feature index vector of the focus

violation, vα. Given a vector of feature weights w and the case weight Wγ, distance

is calculated using a weighted nearest neighbour function:

dv(vγ, vα) = Wγ

√√√√F−1∑i=0

w[i]fi(vγ[i], vα[i])2 (5.9)

where fi(vγ[i], vα[i]) is the distance function for the ith feature and depends on the

feature type, and F is the number of features. The distance functions for each feature

are defined according to the nature of the data used to represent it. For real-valued

data the standard difference measure is used (i.e. |b − a|). For more structured

data specialised distance measures have been developed and are described in detail

in Chapter 6. In particular, the distance between two shift patterns is determined

using an adaptation of the Hamming distance.

The distance measure described by Formula 5.9 returns a value indicating the

dissimilarity of the two cases. Cases containing two identical violations will have zero

distance between them. It should be noted that all of the distance functions used to

measure the distance between individual feature values normalise the output to the

interval [0,1]. For example, real-valued data is normalised using the minimum and

Page 129: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

5. case-based repair generation 118

Table 5.3: Switch repair features

Given 〈Switch, {nursei, day1, day2}〉:1) # nurses assigned si,day1 on day12) # nurses assigned si,day2 on day13) # nurses assigned si,day1 on day24) # nurses assigned si,day2 on day25) # nurses of type NurseTypei assigned si,day1

on day16) # nurses of type NurseTypei assigned si,day2

on day17) # nurses of type NurseTypei assigned si,day1

on day28) # nurses of type NurseTypei assigned si,day2

on day29) Assigned/Contract Hours for nursei

10) Shift pattern value for nursei around day111) Shift pattern value for nursei around day2

• Statistical features • Shift patterns

CASE (caseγ ) VIOLATION (v γ ) STRUCTURE (vStructure γ ) FEATURE INDICES (v γ )

REPAIR (r γ ) STRUCTURE (rStructure γ ) FEATURE INDICES (r γ )

• Constraint violation type (cType γ ) • Nurse type (NurseType γ ) • Violation parameters (vParamSet γ ) • Statistical features • Cover information • Shift patterns

• Repair type (rType γ ) • Repair parameters (rParamSet γ ) Figure 5.7: Case structure

Page 130: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

5. case-based repair generation 119

Given violationα and case-base CB,1: CBTEMP ← ∅2: generate vα = 〈vStructα, vα〉 ← θR

v (violationα)3: for all caseγ = 〈vγ, rγ〉 ∈ CB, where vγ = 〈vStructγ, vγ〉 do4: if vStructγ = vStructα then CBTEMP ← CBTEMP ∪ {caseγ}5: if CBTEMP = ∅ then return false6: generate an array vDistance[|CBTEMP|]7: for all caseγ = 〈vγ, rγ〉 ∈ CB, where vγ = 〈vStructγ, vγ〉 do8: vDistance[γ] ← dv(vγ, vα)9: return vDistance and CBTEMP, both sorted according to vDistance

Figure 5.8: The retrieval algorithm

maximum values for the feature present in the case-base.

Figure 5.8 shows the pseudo-code for the retrieval algorithm. In line 1 the trimmed

case-base CBTEMP is initialised and in line 2 the focus violation is generalised using

Formula 5.5. CBTEMP is filled in lines 3 and 4 with cases whose violations have the

same structural information as the generalised focus violation. The search fails in

line 5 if no such cases can be found. An array of real numbers is generated of the

same size as the trimmed case-base in line 6. In lines 7 and 8 this array is filled with

the distances between the feature vectors of the cases in CBTEMP and the feature

vector of the generalised focus violation. The algorithm sorts both the distance array

vDistance and the trimmed case-base according to the values in the distance array,

before returning them in line 9.

For an example of the retrieval phase consider a violation of a Cover constraint

which requires that at least four qualified nurses be assigned to the EARLY shift.

The focus violation is first generalised to extract the information needed to compare

it to other cases in the case-base, including its structural information and its fea-

ture vector. The case-base is initially searched for all examples of Cover violations

involving qualified nurses. This trimmed case-base is then ranked according to the

distance that each of the violation feature vectors is from the feature vector of the

focus violation. The result is an ordered list of cases which contain examples of Cover

violations involving qualified nurses, ordered according to the similarity to the Cover

Page 131: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

5. case-based repair generation 120

violation being solved.

In this chapter, and throughout the thesis, retrieval of cases from the case-base

is presented as a search which iterates through the entire case-base in order to find

the nearest case(s). This approach is adopted for ease of explanation. However,

such a naive approach to case-base retrieval would lead to a linear increase in search

time as the size of the case-base increases. In the implementation of CABAROST a

multi-dimensional binary search tree (or kd-tree)is in fact used to store cases in the

case-base. Such a structure allows searches to miss portions of the case-base which will

not yield similar cases, and generally provides solutions in logarithmic expected time.

Although the structure was adapted for use with CABAROST data structures it is

not described in detail in this thesis, due to the additional complexity it introduces

to the description of algorithms. Further information about kd-trees and their use in

case-based reasoning can be found in [39, 50, 97, 245].

5.4 Repair Adaptation

The retrieval algorithm returns a sorted case-base of relevant cases, each of which

contains information about a repair. In order to generate a repair for the focus

violation these generalised repairs must be adapted to the context of the current

roster.

Before discussing the adaptation of repairs let us consider the example given for

the retrieval phase where the sorted cases all contained the repairs that were used to

solve cover violations involving qualified nurses. Consider the first case in the sorted

case-base, which could, for example, contain information about a Reassign repair,

involving a qualified nurse, who had their shift assignment on the day of the violation

changed from UNASSIGNED to EARLY. In order to adapt this repair information

to the current roster a set of Reassign repairs must be created, one for each qualified

nurse in the roster whose current shift assignment is UNASSIGNED on the day of

the violation. This set of repairs is then ranked according to the distance from the

repair in the most similar case and the repair with the smallest distance is chosen.

The generation of a new repair from the sorted case-base is performed by the

Page 132: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

5. case-based repair generation 121

adaptation algorithm (Figure 5.9). This algorithm initially generates a set of candi-

date repairs from each of the cases in the trimmed case-base. This set is a subset of

PRr , the set of all possible repairs of roster R. The candidate repairs are of the same

type as the repairs from the cases they are adapted from and use the same types of

nurses and shifts (the information in the rStructure field of the repairs stored in the

cases). They must also be adapted to meet the requirements of the focus violation.

In particular, it is ensured that any nurses specified in the focus violation are also

included in the repairs. For example the repairs generated for a cover violation will

always involve the day on which the violation occurs. Likewise, for a MaxDaysOn

violation the generated repairs will always include the nurse who was working too

many days in a row.

A nearest neighbour function is used to measure the distance between two repairs

which is similar to that used for violation distance. Given the candidate repair feature

vector rβ and the feature vector rγ from the retrieved case:

dr(rγ, rβ) =

√√√√F−1∑i=0

fi(rγ[i], rβ[i])2 (5.10)

where fi(rγ[i], rβ[i]) is the distance function for the ith feature and depends on the

feature type, and F is the number of features.

Figure 5.9 shows the pseudo-code for the repair adaptation algorithm. In line 1

the set of candidate repairs Candidates is initialised. For the first k cases in the

trimmed case-base CBTEMP a set of candidate repairs is generated and added to the

Candidates array in lines 2 through 8. These repairs are generated by the function

GenerateCandidates, which takes the current violation and the structure of the

repair from the retrieved case as parameters. If no repairs can be generated from

the retrieved cases then the process fails in line 9. In line 10 an array of distances is

created of the same size as the array of candidate repairs. The distance between each

of the candidate repairs and the repair from the cases they were generated from is

calculated in lines 11 to 14. Finally, the list of candidate repairs is sorted according

to distances and returned in line 16.

The function GenerateCandidates generates a set of repairs of the same type as

Page 133: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

5. case-based repair generation 122

Given CBTEMP - the trimmed set of cases;vDistance - the set of violation distances;k - a search parameter;violationα - the focus violation:

1: Candidates ← ∅2: i ← 03: while |Candidates| = 0 do4: casei = 〈vi, ri〉 ← CBTEMP[i], where ri = 〈rStructi, vSeti〉5: Candidates ← Candidates ∪ GenerateCandidates (violationα, rStructi)6: i ← i + 1.7: if i = k then break8: end while9: if |Candidates| = 0 then return false

10: generate an array rDistance[|Candidates|]11: for all repairβ ∈ Candidates do12: rβ = 〈rStructβ, rβ〉 ← θR

r (repairβ)13: rDistance[β] ← dr(rγ, rβ)14: end for15: return Candidates sorted according to rDistance

Figure 5.9: Adaptation algorithm

Page 134: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

5. case-based repair generation 123

the repair from the retrieved case. The repairs that it generates will always feature

the nurses and shifts involved in the violation and this ensures that the adapted

repairs are relevant to the problem currently being addressed. The function applies

one of a set of rules depending on the type of the focus violation and the repair from

the retrieved case. These rules force the generated repairs to adhere to some basic

principals. For example, they ensure that repairs of HardRequest and SoftRequest

violations take place on the day that the violation took place (a repair on any other

day would definitely not solve the violation). The rules are designed to allow the

user maximum choice whilst ensuring that the repairs generated will have the desired

effect.

Figures B.1 to B.12 give the adaptation rules for each of the 36 different possible

combinations of repair and violation types, and can be found in Appendix B. They

are grouped according to the parameters of the focus violation (given at the top

of each figure). Given in each figure is a table whose columns represent the value

assigned to the parameters of the repair. Some combinations are used rarely because

they represent decisions which unlikely be made by rostering experts (for example

a switch repair of a cover violation). They are included to guarantee the maximum

level of expressiveness possible for the decision maker.

To illustrate the use of adaptation rules a simple example is given. When reassign

repairs are generated for cover violations three parameters must be set, namely the

nurse, day, and new shift assignment. The corresponding adaptation rule states that

the day and shift must be as they are specified in the violation being repaired. The

nurse must be selected from the set of nurses in the roster who’s NurseType is the

same as that specified in the generalised repair from the retrieved case. In fact,

one repair is then generated for each nurse in this set and the ranking part of the

adaptation algorithm will determine the distance of each of these repairs from the

retrieved repair.

The adaptation algorithm returns a sorted list of repairs. When CABAROST is

used in interactive mode these repairs are presented to the user as options. The deci-

sion maker may choose one of the generated repairs or they may make a modification

if none of the repairs are suitable. If the later occurs then the new violation/repair

Page 135: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

5. case-based repair generation 124

Table 5.4: A simple example of a nurse roster

0 1 2 3 4 5 6nurse0 E U U U L E Enurse1 L L L U U L Unurse2 U E E L E U L

combination can be stored in the case-base. In the automated mode the first repair

on the list is used.

5.5 Example

To illustrate the retrieval and adaptation phases a simple example will be given.

Consider the roster in Table 5.4 where E = EARLY, L = LATE, and U = UNAS-

SIGNED. Here nurse0 and nurse1 are registered, female, non-international, eye-

trained, E-grade nurses and nurse2 is an enrolled, female, non-international, eye-

trained, D-grade nurse. Hence, NurseType0 = NurseType1 = 〈RN, F, H,ET, E〉and NurseType2 = 〈EN, F, H, ET, D〉.

A single constraint is applied to the roster, requiring that a minimum of 1 qualified

nurse is assigned to every early shift. It can be seen that on day 3 there is no nurse

assigned to the early shift. Therefore the violation that needs to be repaired is

violationα = 〈Cover, {〈QN, ∗, ∗, ∗, ∗〉, 3,E}〉, (5.11)

where ‘*’ in the feature set indicates that a feature can take any value. The violation

is passed to the retrieval phase where all the examples of cover violations involving

qualified nurses are identified in the case-base. The retrieval phase first converts the

violation into its generalised form by calculating the violation feature indices and

instantiating the structural information as follows:

θRv (violationα) = 〈vStructureα, vα〉 = 〈〈Cover, 〈QN, ∗, ∗, ∗, ∗〉, {E}〉, vα〉, (5.12)

The case-base is then searched for cases containing violations that match vStructureα.

Page 136: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

5. case-based repair generation 125

Table 5.5: Example of case ranking

Feature Index Values d (distance)V-Mag D-G-Ass D-L-Ass D-G-Un D-L-Un

α 1 32.0 16.0 52.5 37.5 NAcase0 1 35.5 20.0 48.0 40.0 0.106case1 2 54.0 48.0 32.0 16.0 0.774case2 1 56.0 56.0 12.5 8.0 0.974

Suppose, for this example, that three such cases are found. These cases are ranked

according to the distance measure (Formula 5.9) and the results are described in

Table 5.5.

For the clarity of this example all of the violation feature indices described are

real or integer valued. In reality more complex feature index types are used, and

these will be described in detail in Chapter 6 and in Appendix A. For this example

the violation feature indices are:

• V-Mag - The magnitude of the constraint violation - for cover violations this

is the difference between the number of nurses of the required type and the

number currently assigned;

• D-G-Ass - The number of hours assigned to nurses of any type on the day of

the violation;

• D-L-Ass - The number of hours assigned to nurses of the required type (i.e.

according to the NurseType variable of the cover constraint) on the day of the

violation;

• D-G-Un - The number of unassigned hours, based on the number of hours a

nurse is contracted to work each day, which could be assigned shifts on the day

of the violation, for nurses of any type;

• D-L-Un - The number of unassigned hours for nurses of the required type.

The case with the smallest distance from the focus problem is retrieved from the

Page 137: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

5. case-based repair generation 126

case-base, case0 = (v0, r0), where

v0 = 〈〈Cover, 〈QN, ∗, ∗, ∗, ∗〈, {E}〉, {1, 35.5, 20.0, 48.0, 40.0}〉 , and (5.13)

r0 = 〈〈Reassign{〈RN,F,H, ET, E〉,E,U}〉, {1, 0, 3, 2, 85.0, 0}〉 (5.14)

The repair information stored in case0 must now be adapted to create a repair for

the current violation. In this example case0 contains a (generalised) repair of type

Reassign that uses a nurse with NurseType = 〈RN,F, H, ET,E〉 (i.e. a registered,

female, non-international, eye-trained, E-Grade nurse) who was originally assigned an

UNASSIGNED shift on the day of the repair. The adaptation phase generates a set

of reassign repairs using nurses with the correct parameter set and who are currently

assigned UNASSIGNED on day 3 (see Figure B.1 from Appendix B. In the roster

given in Table 5.4 we have two nurses with such characteristics and therefore two

repairs are generated:

repaira = 〈Reassign, {nurse0, 3,E}〉; (5.15)

repairb = 〈Reassign, {nurse1, 3,E}〉. (5.16)

We generalise these repairs by calculating index sets and compare them to the

repair from case0. These repairs are then ranked according to the distance between

the repair feature indices, as described in Table 5.6. The repair indices are:

• SCOA - The number of nurses of all types assigned to the original shift (i.e.

UNASSIGNED) on the day of the repair;

• SCOT - The number of nurses of the NurseType described in the repair assigned

to the original shift on the day of the repair;

• SCNA - The number of nurses of all types assigned to the new shift (i.e. EARLY)

on the day of the repair;

• SCNT - The number of nurses of the NurseType described in the repair assigned

to the new shift on the day of the repair;

Page 138: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

5. case-based repair generation 127

Table 5.6: Example of repair ranking

repair Feature Index Values d (distance)SCOA SCOT SCNA SCNT Util SP

RepairIndices0 1 0 3 2 85.0 0 NArepaira 2 2 0 0 80.0 1 0.812repairb 2 2 0 0 100.0 4 1.276

• Util - The percentage of contract hours assigned to the nurse in the repair;

• SP - A shift pattern distance score which sums the difference in shift assignments

over two equal length periods (see Formula 6.2).

Therefore the first repair, 〈Reassign, {nurse0, 3,E}〉, is returned as a solution.

The case containing the constraint violation and the applied repair is then added

to the case-base by generalising both the violation and repair, thus increasing the

case-base’s experience.

The example here is simpler than many encountered for ease of explanation. Other

combinations of violation and repair types involve a more complex search for candi-

date repairs. However all the principals needed for more complex instances are the

same.

5.6 An Extended Adaptation Algorithm

The adaptation algorithm described in Section 5.4 was developed early in the research

and performed well for problems involving smaller numbers of constraints. For the

more realistic problems that were tackled later in the research a different adaptation

algorithm was developed.

The notion of similarity between repairs used in the described algorithm was

based on the distance between vectors of repair features. These features described

the state of the roster before and after the repair took place. They do not directly

represent the damage that may be done to the roster by applying the repair (i.e. the

new violations that the repair causes). The improved adaptation algorithm stores

Page 139: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

5. case-based repair generation 128

generalised versions of the violations that are caused when a repair is applied to the

roster. The similarity between repairs is then defined in terms of the distance between

the violations that it causes.

Before describing the altered case structure it is necessary to define a method for

determining the violations that are caused by a repair. The function damageR takes

a repair and returns the set of violations that are caused by it:

damageR(repairβ) = {violationm : violationm is caused by repairβ} (5.17)

When a case is stored in the case-base the repair is generalised by extracting the

structural information and generalising all of the violations in the set returned by

damageR. Therefore the repair part of a case is now defined:

rγ = 〈rStructureγ, vSetγ〉 , γ ∈ Γ (5.18)

where vSetγ is the set of generalised violations:

vSetγ{θRr (violationm) : violationm ∈ damageR(repairβ)} (5.19)

where repairβ was the repair that was used to solve the original violation.

Figure 5.10 gives the new adaptation algorithm, much of which is the same as the

earlier version. Although the candidate repairs produced by GenerateCandidates

are of the same type as the generalised repairs from the cases in the trimmed case-

base, the violations that they cause are often very different. The violations caused by

each candidate repair must be compared with the violations that were caused by the

generalised repairs it was generated from. In order to do this the candidate repairs

are themselves generalised using the θRr function given in (5.8).

A comparison between two sets of newly created violations must take into account

two complicating factors. First, the number of constraint violations caused by two

different repairs is likely to be different. Furthermore, even if the number of violations

is the same, their types are very likely to be different. Hence the direct measurement

of the difference between the sets of generated violations needs to be tackled carefully.

Page 140: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

5. case-based repair generation 129

Given CBTEMP - the trimmed set of cases;vDistance - the set of violation distances;k - a search parameter;violationα - the focus violation:

1: Candidates ← ∅2: i ← 03: while |Candidates| = 0 do4: casei = 〈vi, ri〉 ← CBTEMP[i], where ri = 〈rStructi, vSeti〉5: Candidates ← Candidates ∪ GenerateCandidates (violationα, rStructi)6: i ← i + 1.7: if i = k then break8: end while9: if |Candidates| = 0 then return false

10: generate an array rDistance[|Candidates|]11: for all 〈repairβ, casei〉 ∈ Candidates do12: rβ = 〈rStructβ, vSetβ〉 ← θR

r (repairβ)13: rDistance[β] ← vDistance[i]× (1 + dr(vSeti, vSetβ))14: end for15: return Candidates sorted according to rDistance

Figure 5.10: The alternative adaptation algorithm

Page 141: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

5. case-based repair generation 130

The distance between two sets of violations vSeti and vSetβ is determined using the

following measure:

dr(vSeti, vSetβ) =1

c

[Ji−1∑j=0

D(vi,j, vSetβ) + (Jβ − h)

](5.20)

where Ji = |vSeti| and Jβ = |vSetβ| are the number of violations in each set, h is

the number of violations in vSeti whose structural information is the same as that of

a violation in vSetβ, c = Ji + Jβ − h is a normalising variable, and

D(vi,j, vSetβ) =

dv(vi,j ,vβ,µ)

dMaxif ∃ vβ,µ ∈ vSetβ s.t. vStructi,j = vStructβ,µ

1 otherwise

(5.21)

where dMax =√

dim(vi,j) is the maximum possible distance between any two

feature vectors of the same type. Dividing the distance in this way ensures that the

function D always returns values in the interval [0, 1].

Formula 5.20 finds the distance between two sets of violations by summing the

distances between each of the violations in the first set from the whole of the second

set. For each violation in the first set the distance is calculated as being maximal

(i.e. equal to 1) if there are no violations in the second set with the same structural

information. Otherwise, the distance for the violation is calculated as the distance

from the matching violation within the second set. Every time a matching violation

is found in the second set the value h is incremented. After all the violations in the

first set have been considered the sum is increased by the number of violations in

the second set which have not been compared. The normalisation is performed by

dividing by the total number of comparisons that have been made.

The overall distance measure (line 13 of Figure 5.10) is the product of the violation

distance, calculated in the retrieval stage and stored in the vDistance array, and the

repair distance, which is calculated using Formula (5.20) as the distance between

the two sets of violations, vSeti and vSetβ. The value 1 is added to the repair

distance in order to ensure that two identical repairs of two non-identical violations

Page 142: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

5. case-based repair generation 131

do not have a zero distance between them. However, two repairs generated for two

identical violations should always have zero distance between them. The definition

of this measure ensures that when the candidate repairs are sorted at the end of the

adaptation algorithm the distances between the focus violation and the violations

from the retrieved cases are also reflected in the rankings.

5.7 Case-base Training

In order to successfully train a case-base care must be taken. It is important that the

case-base contains a range of different experiences - representing a large number of dif-

ferent possible rostering scenarios. In particular, it is vital that there are cases in the

case-base which represent good examples of behaviour in contrasting circumstances.

With this in mind, an attempt is made in this section to give a set of guidelines for

the construction of a case-base.

Case-bases should be trained on real world data rather than on artificially created

problems. It is difficult to artificially create the complexity found in real problems in

such a way that will be useful for future problem solving. The real world problems

should include a wide range of different constraint violations. The (expert) user

should select a representative cross-section of these before training commences.

For each violation that the user chooses to include in the training some key points

must be considered:

1. The user must provide a repair to the given violation, making sure that it

takes into account the context that the violation occurs in. In particular, any

violations which are caused by the repair should be thought about in terms of

the user’s overall goals for the roster.

2. If other repairs could also be used to address the violation then they could

also be added into the case-base. This provides the case-base with a range of

experience.

3. The user should consider what they would have done if circumstances had been

slightly different. For example, if no nurses on the day of the violation had unas-

Page 143: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

5. case-based repair generation 132

signed shifts then the possible alternative repair would have to be considered.

By manually altering the roster the user can generate an alternative scenario

for which a significantly different repair should be used. By including these

examples of similar violations which require different repairs the case-base is

trained to recognise the border regions in the decision space.

4. It is useful to also provide repairs to any violations created by the original repair.

This teaches the case-base how to solve a series of violations.

It is difficult to set a figure to the number of cases that should be stored in the

case-base. One advantage of the CABAROST method is that after representatives

of each violation type have been stored in the case-base the algorithm can provide

suggested solutions to the user during training. In this way the user can develop an

idea of when the case-base has been adequately trained by monitoring the number of

suggestions it made which they accepted without change.

Training of the case-base can also be considered as an on-going process. In au-

tomated mode the CABAROST system can detect if the repair distance is above a

certain threshold. This threshold can be set so as to represent the point at which

CABAROST can not be confident in the decisions it is making. By setting this

threshold to a small value the user can indicate that they want to supervise the deci-

sion making closely and change any repairs that they disagree with. When the user is

confident that the decisions being made are correct then the threshold can be set at

a high value - so that they are required to intervene in extreme circumstances only.

5.8 Performance

The results presented in this section illustrate how the method performs at imitat-

ing the rostering decisions of humans. We do not compare performance with other

rostering methods for two reasons. Firstly, the amount of information used and the

way it is presented is incompatible with most existing problem formulations. More

significantly, the case-based reasoning method here treats constraint violations as in-

dividual problems rather than providing solutions to entire rostering problems in the

Page 144: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

5. case-based repair generation 133

traditional sense.

The method has been implemented and tested on real-world data from the QMC.

This data consisted of seven 28-day rosters and the corresponding preference infor-

mation for 19 nurses of various qualification and training levels. In this experiment

two constraint types were used, namely Cover constraints and MaxHours constraints.

The actual constraints defined are:

1. Cover: EARLY shifts require 4 Qualified Nurses

2. Cover: EARLY shifts require 1 Registered Nurse

3. Cover: EARLY shifts require 1 Eye-Trained Nurse

4. Cover: EARLY shifts require 1 Auxiliary Nurse

5. Cover: LATE shifts require 3 Qualified Nurses

6. Cover: LATE shifts require 1 Registered Nurse

7. Cover: LATE shifts require 1 Eye-Trained Nurse

8. Cover: LATE shifts require 1 Auxiliary Nurse

9. Cover: NIGHT shifts require 2 Qualified Nurses

10. Cover: NIGHT shifts require 1 Eye-Trained Nurse

11. Cover: NIGHT shifts require 1 Auxiliary Nurse

12. MaxHours: The maximum number of hours any nurse may work in a fortnight

(14 days) is 75

The aim of the experiment was to determine the quality of the reasoning process in

terms of the agreement between automated decisions and those of the nurse rostering

expert. Constraint violations were identified at random and the repairs suggested by

this method were compared to the repairs actually made in the final roster. These

expert repairs were determined by comparing the final and preference rosters. The

Page 145: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

5. case-based repair generation 134

‘quality’ of a generated repair was assessed by comparing it with the expert repair

and assigning one the following verdicts:

Exact Match: The generated repair is identical to the expert’s repair.

Equivalent Match: The generated repair involves nurses of the same types and the

same shifts as those used in the expert’s repair.

Fail: The generated repair is not an exact or equivalent match, or no repair was

generated.

The experiment was run 5 times and 120 constraint violations were repaired during

each run. For each violation three repairs were suggested by the method ranked

according to the repair distance and compared to the expert repair. The case-base

was empty at the start of each run and the expert repair for each of the constraint

violations was stored after it was applied to the roster. In this way CABAROST was

storing more experience in the case-base as the run progressed. Figure 5.11 shows

the average cumulative number of exact and equivalent matches against the case-base

size for each of the three suggested repairs. The bold lines are the first (or best with

respect to the reasoning process) repairs for each iteration.

The results in Figure 5.11 show an increasing gradient of all lines indicating an

increasing number of repairs of the given verdict per iteration. It can be seen from this

that the case-base learns how to produce more exact or equivalent repairs as its size

increases. An increase in the amount of training given to the case-base corresponds

to an increase in the quality of the repairs produced. It is particularly encouraging

that the first suggestions in general score more exact and equivalent matches than

the second and third. The increases in solution quality are made more apparent in

Figure 5.12. This shows the percentage of exact and equivalent repairs at different

stages in the runs. In general, in the later stages, when the case-base contains more

experience, a larger number of good suggestions are produced.

Page 146: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

5. case-based repair generation 135

Figure 5.11: Average cumulative number of exact and equivalent matches againstcase-base size over five 120 iteration runs.

Figure 5.12: Effects of case-base size on solution quality.

Page 147: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

5. case-based repair generation 136

5.9 Conclusion

This chapter has introduced a mechanism for repairing constraint violations within

personnel rostering problems using case-based reasoning. This method is used to

capture rostering experience on a case-by-case basis by recording the way in which

human rostering experts perform repairs. This rostering knowledge is used to solve

future problems by retrieval and adaptation methods which can successfully imitate

the behaviour of the expert who provided the training.

The problem of data generalisation has been addressed to allow experience that

has been stored in the case-base to be applied to future, perhaps significantly different,

problem instances. Information about the nurses involved in both the constraints vio-

lations and the corresponding repairs is non-specific. This increased the applicability,

and therefore usefulness, of the experience stored in the case-base.

The similarity between constraint violations has been described by structural and

statistical feature information. During retrieval cases are selected which are identical

to the current problem in terms of the structural information and closest in terms of

the distance between the statistical feature vectors.

Two methods for adapting the repair information from cases have been described,

both using notions of structural similarity. Both methods initially generate sets of

structurally identical repairs which can be applied to the current problem. The first

method ranks these according to statistical features using the same distance measure

used to rank violations in the retrieval phase. The second approach considers the new

violations which are caused by the repairs which are generated. A distance measure

based on the distance between these new violations was described.

A simple experiment was used to verify that the CABAROST algorithm is capable

of learning rostering experience from experts. The experiment also showed that the

case-based method can produce the same, or similar, repairs with reliable accuracy.

In the following chapters further experimentation will be used to demonstrate the

effectiveness of the method.

Page 148: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

137

Chapter 6

Violation Features and Weighting

6.1 Introduction

In CABAROST, cases are retrieved from the case-base using a two stage retrieval

phase. The first stage retrieves those cases containing violations of the same type

as the current problem. The second stage calculates the similarity of these cases to

the current problem using the weighted nearest neighbour method. The violations

are represented by a set of characteristic features and can be interpreted as points

in a feature space. Weights are assigned to the features representing their relative

importance. The most similar case is then defined as the one with the smallest

weighted distance from the feature vector representing the current problem. It is vital

for the retrieval phase that appropriate features are selected to represent the violations

and that these features are carefully weighted. In this chapter an automated feature

weighting and selection algorithm will be described.

One of the most common ways to determine the accuracy of a case-base is to

measure its classification accuracy [80, 103, 131]. The CABAROST method can be

viewed as a classifier which determines the type and parameters of a repair for a

given violation. Its classification accuracy can be measured by repeatedly removing

a case from the case-base, performing a retrieval to determine the nearest case to the

removed case, and then comparing the repairs in the removed and the retrieved case.

In the literature, nearest neighbour classification algorithms [87] have been used

successfully to solve a number of different classification problems. They allow com-

Page 149: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

6. violation features and weighting 138

plex relationships between input parameters to be captured without the need to model

them explicitly [113]. However, they can be sensitive to noise in the data sets and

erroneous or irrelevant features [6]. These effects can be reduced by selecting only rel-

evant features from the feature set and assigning a weight to each feature representing

its relative importance [232].

A number of different feature weighting and selection methods have been de-

veloped including Salzberg’s [201] feature weighting algorithm based on a heuristic

approach for his EACH classification method, a random mutation hill climbing ap-

proach for feature selection by Skalak [212], and a genetic algorithm by Kuncheva

and Jain [139]. Many more feature selection and weighting algorithms are described

in reviews by Wettschereck et al. [246, 247]. In this chapter we investigate an ap-

proach to automated weighting and feature selection based on the genetic algorithm

GA-WKNN developed by Kelly and Davis [127] and a dimensionality reduction algo-

rithm developed by Raymer et al. [196]. These approaches are adapted so that they

can handle the types of data used in the CABAROST method to model the nurse

rostering problem.

In this chapter an adaptation of a feature weighting and selection algorithm to a

complex real life nurse rostering problem will be presented. This algorithm allows us

to learn which features are important when making rostering decisions and which fea-

tures are irrelevant, thus increasing our understanding of the nurse rostering problem.

The accuracy of the CABAROST method is increased by weighting the features and

the search time is decreased by reducing the number of features that it is necessary to

store in each case. Furthermore, the flexibility and adaptability of the case-based ap-

proach is enhanced because its behaviour can be tuned more precisely to the decision

making style of the expert who trained it. The training data used for the experiments

in this chapter has been derived from the QMC rosters.

This chapter is organised as follows. Section 6.2 describes the method for measur-

ing the classification accuracy of the CABAROST algorithm. Section 6.3 introduces

the different types of features used to describe the generalised violations in the case-

base. The genetic algorithm for feature weighting and selection is presented in Section

6.4. The results obtained by applying the algorithm to a case-base of rostering deci-

Page 150: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

6. violation features and weighting 139

Given case-base CB,initialise total := 0initialise correct := 0for all caseL ∈ CB

total := total + 1remove caseL from CBretrieve caseγ ∈ CB most similar to caseL

if repair′γ = repair′L thencorrect := correct + 1

end ifrestore caseL to CB

end forreturn (100× correct/total)

Figure 6.1: Pseudo-code for the algorithm for measuring classification accuracy

sions are presented in Section 6.5.

6.2 Measuring Classification Accuracy

One of the most common ways to assess the performance of a CBR system is to mea-

sure its classification accuracy [247]. Although the CABAROST method is more than

simply a classification algorithm, this measure is still very important as it indicates

how well CABAROST identifies which type of repair to generate for a given viola-

tion. It is important that the method correctly classifies violations as this increases

the likelihood that the adaptation method will generate appropriate repairs.

The classification accuracy of a case-base is measured by performing retrievals on

the cases it contains (see Figure 6.1). A leave-one-out cross-validation strategy is

used whereby a case is removed from the case-base and then passed to the retrieval

algorithm as the focus case. The retrieval algorithm returns the most similar (nearest)

case to the focus case. If the retrieved case and the focus case contain repairs with the

same structural information then the focus case is deemed to be correctly classified.

This operation is performed on every case in the case-base and the classification

accuracy is measured as the percentage of correctly classified cases.

Page 151: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

6. violation features and weighting 140

An additional measure of classification accuracy is performed on the data in the

case-base. This involves a random retrieval of cases from the case-base for each focus

case. Instead of using the retrieval algorithm a random case is selected and compared

to each focus case. The percentage of correctly classified cases is calculated and

referred to as the random classification accuracy (RCA) of the case-base. It is useful

to calculate this value to ensure that the CBR mechanism is doing more than just

randomly selecting cases. Therefore it is important to ensure that the classification

accuracy of a case-base is significantly higher than its random classification accuracy.

6.3 Violation Features

The first stage of the retrieval phase chooses cases that are structurally the same

as the focus violation. A large number of such cases can exist within a case-base

and therefore it is necessary to rank them according to their violation features. The

violation features are statistical characteristics of the roster and the violation. They

can be seen as a ‘snap-shot’ of the state of the roster at the time the violation was

repaired. They are considered to be important when making rostering decisions but

their exact relationships with each other and with the decisions that are made are

not known a priori. Nearest neighbour similarity measures such as those employed

by case-based reasoning allow these relationships to be captured without the need for

explicit representation [247].

In order to represent sufficient information about a roster and its violations a

number of different types of data are used for the features. Four different types of

features are used here: Real-Valued, Shift Pattern, On-Off Pattern, and Cover Array.

The inclusion of features that are not real or integer valued also necessitates the

definition of alternative difference measures.

6.3.1 Real-Valued Features

The real-valued features are statistical measurements of the roster and violation.

They are normalised to the interval [0,1]. An example is the percentage of nurse

preferences satisfied. The distance measure used for real-valued features is:

Page 152: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

6. violation features and weighting 141

f(a, b) = |b− a| (6.1)

where a, b ∈ [0, 1].

6.3.2 Shift and On-Off Pattern Features

A significant amount of the information needed to make rostering decisions is present

in the working patterns of the nurses involved. Shift pattern features are arrays

representing the shifts that an individual nurse works over a specific number of days.

On-off pattern arrays are similar but only represent whether or not an individual

nurse is working any shift on each day. The number of days can vary depending on

the type of constraint violation that is being recorded in the case-base.

The distance between patterns is calculated as the total number of positions in

which the shift is different and is normalised by dividing by the pattern length. Given

a = [a0, a1, . . . , aP−1] and b = [b0, b1, . . . , bP−1],

f(a,b) =1

P

P−1∑i=0

δ(ai, bi) (6.2)

where

δ(ai, bi) =

{0 ai = bi

1 ai 6= bi

(6.3)

It may be unclear why both shift patterns and on-off patterns are defined as

separate feature types. Shift patterns contain more information than on-off patterns

but could potentially cloud the similarity measure if the extra detail is not relevant.

Hence both types are included with the intention that the genetic algorithm will

decide whether either or both types are useful to the retrieval phase.

6.3.3 Cover Array Features

Cover arrays provide a data structure for storing information about the different types

of nurse working a particular shift on a single day, or over a number of days. There

are two types of cover array: ordinary cover arrays and average cover arrays.

Page 153: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

6. violation features and weighting 142

An ordinary cover array counts the number of nurses of different qualifications or

specialty training working on a particular shift. The ordinary cover array x is defined

as an array of integers:

x = [[x0,0, x0,1, . . . , x0,S−1], [x1,0, x1,1, . . . , x1,S−1], . . . , [xD−1,0, xD−1,1, . . . , xD−1,S−1]]

(6.4)

where S is the number of different types of nurse and D is the number of days. For

cover arrays measuring the number of nurses based on qualification level S will be

equal to 7 (i.e. XN, SN, PN, AN, QN, EN, RN) and based on skill level S will equal

2 (ET or NT). The number of days that a cover array is measured over depends

on the type of constraint violation for which it is being used. Cover arrays over

several days are useful for storing shift pattern information around the day in which

a violation occurs (for violations such as Cover, Succession, and MinDaysOn). They

store information which indicates the possibility of different repair types that could

take place around the violation.

An average cover array records the average of the number of nurses of each type

over a specified period. It takes the same format as the ordinary cover array, but

with D set to 1 and with real-valued elements.

The distance measure for cover arrays takes into consideration the difference be-

tween each corresponding pair of elements. Given cover arrays a and b the difference

function is defined as follows:

f(a,b) =1

D

D−1∑

d=0

1

S

S−1∑s=0

|bd,s − ad,s| (6.5)

When designing features for the nurse rostering problem it became evident that

the definition of similarity of violations must include information about the scope

for repair. For example, if the EARLY shift on a particular day is not sufficiently

covered then information about the number of nurses of each type who are currently

UNASSIGNED, or OFF, indicates how ‘easy’ it will be to solve the violation. The

number of available nurses of each type is very relevant to decision making and should

Page 154: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

6. violation features and weighting 143

be captured by the case-base. Cover arrays provide a way in which to record shift

pattern information about a large number of nurses.

This can be illustrated with several examples. Consider the following seven day

roster in Table 6.1.

Table 6.1: An example roster

Nurse NurseType 0 1 2 3 4 5 6nurse0 〈RN,M, H, ET,E〉 E L E E L U Unurse1 〈RN,F,H, NT, D〉 N N U U E L Enurse2 〈EN, F, H,ET, D〉 U U N N U U Enurse3 〈AN,F,H, NT,B〉 E L U U E L U

The ordinary cover array that counts the nurses based on their qualification (XN,

SN, PN, AN, QN, EN, or RN) for the EARLY shift on day 4 is:

[[2, 0, 2, 1, 1, 0, 1]] (6.6)

indicating that there are 2 nurses (of any qualification), 0 student nurses, 2 employed

nurses, 1 auxiliary nurse, 1 qualified nurse, and 1 registered nurse working the early

shift on day 4.

The cover array for unassigned shifts over the three day period from day 3 to day

5 is:

[[2, 0, 2, 1, 1, 0, 1], [1, 0, 1, 0, 1, 1, 0], [2, 0, 2, 0, 2, 0, 2]] (6.7)

Finally, the average skill mix for the unassigned shift over the seven day period

based on specialty training is:

[[1.57, 0.00, 1.57, 0.14, 1.14, 0.57, 0.57]] (6.8)

indicating that there is an average of 1.57 nurses with unassigned shifts over the

period, 0 student nurses, 1.57 employed nurses, 0.14 auxiliary nurses, and so on.

Page 155: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

6. violation features and weighting 144

6.3.4 Features

The set of constraint violation features used for each violation type has grown through-

out the development of the CABAROST method. Features have been added and re-

fined through experimentation and contact with the experts at the QMC. One of the

goals of this research is to discover which aspects of the roster are important when

making rostering decisions by selecting the ‘best’ of the large number of violation

features. The genetic algorithm described in this chapter will reduce the number of

features (perhaps significantly) and thus increase both the quality and efficiency of

the CABAROST method.

Table 6.2 describes the features used for five violation type. The first column

contains the feature descriptions, and the second, third, and fourth columns describe

the nurses, shifts, and period (number of days), respectively, over which each feature

is measured. The fifth and sixth columns give the abbreviation for each violation and

the data type used to represent them. The final columns indicate the violations for

which the features are used.

Features can be measured over different combinations of nurses, shifts, and pe-

riods. The second column in Table 6.2 shows which nurses are considered for each

feature. Features that measure over all of the nurses in the roster have ‘All’ in this

column. The features who have ‘NurseType’ in this column consider only those

nurses in the roster with type information that matches the NurseType variable of

the violation. For example, if the violation describes a problem involving an enrolled

nurse then the associated features will measure their statistics for all enrolled nurses

in the roster. When ‘Specific’ appears in this column it indicates that the feature

considers only the specific nurse involved in the violation.

The first six features in the table are used by all of the violation types. They

are general, real-valued statistics measured over the entire rostering period. They

describe the overall state of the roster at the time the violation was repaired. The

next four features are unique to cover violations and describe the number of hours

that have been assigned to nurses on the day that the violation of the cover constraint

took place. The final six real-valued features are used by all of the violation types

Page 156: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

6. violation features and weighting 145

except cover violations. They all measure the percentage of contract hours that are

currently allocated within the period of the violation (the number of days over which

the violation takes place) and also outside this period. These features are measured

for all nurses, the specific nurse involved in the violation, and nurses of the same type

as the nurse involved in the violation.

The shift pattern feature is a feature of all of the violations except cover violations.

It records the shift assignments of a particular nurse and is not used for violations

of cover constraints as these do not involve a single identifiable nurse. Similarly, the

on-off pattern feature is not used to describe cover violations or succession violations.

Succession violations always involve a two day period, both of which will always be

assigned as ‘on’ shifts for the nurse, and consequently on-off pattern features are not

useful.

Eight features which use ordinary cover arrays to represent their values are used for

cover violations, four of which count the nurses who have OFF shifts and four which

count UNASSIGNED shifts. They measure cover on both the single day that the cover

violation takes place and for five days around the violation (two days either side),

for nurse qualification and specialty training. MaxDaysOn and MaxHours violations

take place over larger periods (e.g. 14 days) and so average cover arrays are used.

Four of these are defined, counting nurses who have OFF and UNASSIGNED shifts

for both qualification and specialty training. Six average cover arrays are used for

MinDaysOn violations, measuring cover around the period of the violation (i.e. over

the period and one day either side) for EARLY, LATE, and NIGHT shifts. These are

summarised in two lines on the table for brevity. This is also the case for the twelve

ordinary cover array features used by the Succession violation. These are measured

on both days of the violation separately for the OFF shifts and UNASSIGNED shifts

as well as for the specific shift that the nurse had on the day.

A large number of features have been described here. These features are predicted

to have an impact on rostering decisions. The feature selection algorithm aims to

reduce this number and identify the features that are most relevant for the nurse

rostering problem.

Page 157: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

6. violation features and weighting 146

D

escr

iptio

n N

urse

S

hift

Per

iod

C

od

e D

ata

Typ

e C

ove

r

Max

Da

ysO

n M

axH

our

s M

inD

ays

On

Suc

cess

ion

Nu

mb

er o

f Vio

latio

ns

- -

All

Da

ys

W-V

iol

Rea

l •

• •

Vio

latio

n M

agni

tud

e -

- A

ll D

ays

V

-Ma

g R

eal

• •

• •

Per

cent

age

Ass

igne

d H

our

s A

ll -

All

Da

ys

W-G

-Ass

R

eal

• •

• •

Per

cent

age

Ass

igne

d H

our

s N

urse

Typ

e -

All

Da

ys

W-L

-Ass

R

eal

• •

• •

Pre

fere

nce

Sat

isfa

ctio

n A

ll -

All

Da

ys

W-G

-Sat

R

eal

• •

• •

Pre

fere

nce

Sat

isfa

ctio

n N

urse

Typ

e -

All

Da

ys

W-L

-Sa

t R

eal

• •

• •

Nu

mb

er o

f A

ssig

ned

Ho

urs

All

- 1

Day

D

-G-A

ss

Rea

l •

Nu

mb

er o

f A

ssig

ned

Ho

urs

Nur

seT

ype

- 1

Day

D

-L-A

ss

Rea

l •

Nu

mb

er o

f Una

ssig

ned

Ho

urs

All

- 1

Day

D

-G-U

n R

eal

Nu

mb

er o

f Una

ssig

ned

Ho

urs

Nur

seT

ype

- 1

Day

D

-L-U

n R

eal

Per

cent

age

of

Ass

igne

d H

our

s A

ll -

Out

sid

e P

erio

d

O-G

-Ass

R

eal

• •

Per

cent

age

of

Ass

igne

d H

our

s A

ll -

Per

iod

P

-G-A

ss

Rea

l

• •

• •

Per

cent

age

of

Ass

igne

d H

our

s S

pec

ific

- O

utsi

de

Per

iod

O

-N-A

ss

Rea

l

• •

• •

Per

cent

age

of

Ass

igne

d H

our

s S

pec

ific

- P

erio

d

P-N

-A

ss

Rea

l

• •

• •

Per

cent

age

of

Ass

igne

d H

our

s N

urse

Typ

e -

Out

sid

e P

erio

d

O-L

-Ass

R

eal

• •

Per

cent

age

of

Ass

igne

d H

our

s N

urse

Typ

e -

Per

iod

P

-L-A

ss

Rea

l

• •

• •

Shi

ft P

atte

rn

Sp

ecifi

c -

Per

iod

P

-N-S

pat

S

hift

Pat

ter

n

• •

• •

On

-Off

Pat

tern

S

pec

ific

- P

erio

d

P-N

-OO

Pat

O

n-O

ff P

atte

rn

• •

Qua

lific

atio

n C

ove

r A

rra

y A

ll O

5

Day

s 5

-O-Q

CA

O

CA

Qua

lific

atio

n C

ove

r A

rra

y A

ll O

D

ay

D-O

-QC

A

OC

A

Qua

lific

atio

n C

ove

r A

rra

y A

ll U

5

Day

s 5

-U-Q

CA

O

CA

Qua

lific

atio

n C

ove

r A

rra

y A

ll U

D

ay

D-U

-QC

A

OC

A

Sp

ecia

lty T

rain

ing

Co

ver

Arr

ay

All

O

5 D

ays

5-O

-SC

A

OC

A

Sp

ecia

lty T

rain

ing

Co

ver

Arr

ay

All

O

Da

y D

-O-S

CA

O

CA

Sp

ecia

lty T

rain

ing

Co

ver

Arr

ay

All

U

5 D

ays

5-U

-SC

A

OC

A

Sp

ecia

lty T

rain

ing

Co

ver

Arr

ay

All

U

Da

y D

-U-S

CA

O

CA

Ave

rage

Qua

lific

atio

n C

ove

r A

rra

y A

ll O

P

erio

d

P-O

-Q

CA

A

CA

• •

Ave

rage

Sp

ecia

lty T

rain

ing

Co

ver

Arr

ay

All

O

Per

iod

P

-O-S

CA

A

CA

• •

Ave

rage

Sp

ecia

lty T

rain

ing

Co

ver

Arr

ay

All

U

Per

iod

P

-U-S

CA

A

CA

• •

Ave

rage

Qua

lific

atio

n C

ove

r A

rra

y A

ll U

P

erio

d

P-U

-Q

CA

A

CA

• •

Ave

rage

Qua

lific

atio

n C

ove

r A

rra

y A

ll E

/L/N

A

rou

nd

P-E

/L/N

-QC

A

AC

A

Ave

rage

Sp

ecia

lty T

rain

ing

Co

ver

Arr

ay

All

E/L

/N

Ar

ou

nd

P-E

/L/N

-SC

A

AC

A

Qua

lific

atio

n C

ove

r A

rra

y A

roun

d D

ay1

A

ll S

pec

ific/U/O

4

Day

s 4

-S/U

/O-Q

CA

-1

OC

A

Qua

lific

atio

n C

ove

r A

rra

y A

roun

d D

ay2

A

ll S

pec

ific/U/O

4

Day

s 4

-S/U

/O-Q

CA

-2

OC

A

Sp

ecia

lty T

rain

ing

Co

ver

Arr

ay

Aro

und

Da

y1

All

Sp

ecific/

U/O

4

Day

s 4

-S/U

/O-S

CA

-1

OC

A

Sp

ecia

lty T

rain

ing

Co

ver

Arr

ay

Aro

und

Da

y2

All

Sp

ecific/

U/O

4

Day

s 4

-S/U

/O-S

CA

-2

OC

A

Table 6.2: The features used to represent constraint violations in the case-base

Page 158: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

6. violation features and weighting 147

6.4 Genetic Algorithm for Feature Weighting and Selection

The nearest neighbour distance function which is used in the retrieval phase requires

a good selection of features and an appropriate set of feature weights. The effect of

an increase in the weight of a particular feature is an increase in the influence that

the feature has on the selection process. By decreasing their weighting, irrelevant

features exert less influence on the calculation of the distance between cases, thus

increasing the accuracy of the system.

It is not always the case that a set of equal-valued feature weights is appropriate

for any given case-base. The definition of a good set of feature weights is not a trivial

problem. Manual selection of weights is a difficult task and can introduce unwanted

bias to the classification process. The automated feature weighting algorithm used

here is an adaptation of the GA-WKNN algorithm proposed by Kelly and Davis [127].

This method uses genetic algorithms to find a good set of feature weights with respect

to the classification accuracy of the case-base.

Feature selection is effectively an extension of feature weighting. Feature weights

set at zero (or close to zero) represent a deselection of the corresponding features.

Feature selection introduces the concept of an optimal subset of features as an ex-

tension of the optimal set of feature weights. One of the major advantages of feature

selection is the reduction in the dimensionality of the feature space. By selecting

only those features that are most relevant to the problem the storage requirements of

the case-base are reduced and the speed with which cases are retrieved is increased.

The feature selection algorithm presented here works alongside the feature weighting

algorithm, in a combination similar to that first suggested by Raymer et. al. in [196].

Genetic algorithms are optimisation tools based on the concepts of natural evo-

lution. A population of solutions is manipulated through a number of generations

according to the principals of natural selection. The solutions are represented as

chromosomes which can be combined to produce offspring through crossover opera-

tions. Crossover operations use information from two or more parent chromosomes

to generate new chromosomes. Members of the population can be altered between

generations by applying local mutations to chromosomes. Members of a current pop-

Page 159: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

6. violation features and weighting 148

ulation are selected for crossover and mutation according to their fitness - a measure

of the quality of the solution that they represent. Members with higher fitness are

more likely to be selected than those with lower fitness and are therefore more likely

to pass good solution information to the next generation. There is a large body of

literature dedicated to the theory and practice of genetic algorithms. Some key texts

are [101, 112, 165].

In this problem chromosomes are vectors of real and binary values. The vector

can be split into four sections. The first section contains the real valued weights for

each of the features. The remaining three sections represent binary feature selection

variables - three for each feature. A voting system is used to determine if a feature is

selected. At least two out of the three selection variables must have value 1 for the

associated weighted feature to be used in the distance function given in Formula 5.9,

otherwise the feature’s weight is set to 0 and the feature is excluded (deselected) from

the distance function. The use of three sets of selection variables effectively smooths

out the fitness landscape by reducing the impact of a change in the selection status of

a feature on a chromosomes fitness [196]. Given violation feature vectors of dimension

F , a member of a population is represented as:

m = {w0, . . . , wF−1︸ ︷︷ ︸, f0,0, . . . , f0,F−1, f1,0, . . . , f1,F−1, f2,0, . . . , f2,F−1︸ ︷︷ ︸}feature weights feature selection sets

(6.9)

One-point crossover [31] was used to combine two parents with a 0.6 probability.

This operation chooses a position on two chromosomes at random and then creates

two children by swapping the parent’s values to the right of the selected position.

Given two children x = {x0, x1, . . . , xZ−1} and y = {y0, y1, . . . , yZ−1}, and crossover

point c ∈ [0, Z − 1], where Z = 4 × F (the number of features), the two children

produced by a crossover of x and y are:

x’ = {x0, . . . , xc, yc+1, . . . , yZ−1} and y’ = {y0, . . . , yc, xc+1, . . . , xZ−1} (6.10)

Parents were selected for crossover using a roulette wheel selection process [165].

In this method, individuals are selected with a probability equal to the proportion

Page 160: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

6. violation features and weighting 149

that their calculated fitness contributes to the sum of the fitness of all members of

the population. Chromosomes are mutated by adding or subtracting a set amount

from one of their weights, or by performing a NOT operation on a feature selection

variable. Children undergo mutation with a 0.7 probability. Finally, an elitist strategy

is used whereby the chromosome with the highest fitness is always passed on, without

mutation, to the next generation.

The fitness of an individual chromosome is calculated by first converting it into a

standard weight vector by setting those weights to 0 whose feature selection variables

vote for deselection. The vector is then normalised so that the total sum of weights is

equal to one. This weight vector is then used in the weighted nearest neighbourhood

function and the classification accuracy of the case-base is calculated.

The initial population is filled with randomly generated vectors. The feature

selection variables are set randomly with no bias placed on how many features are

selected. The feature weights of all members of the population vectors are normalised

before the mutation and crossover operators are applied.

The feature set used for each type of violation is different and so the algorithm

must be run separately for each. The result of this is that each different violation type

will have a different set of feature weights and a different subset of selected features.

There are clear advantages to treating violations of different types separately in the

case-base. It is intuitive that different information is needed to make decisions about

different types of problems, and the separation of weighting and feature selection

allows the appropriate emphasis to be placed on the relevant data.

6.5 Results

The algorithm was used to select features and feature weights based on a case-base

trained using the expert rostering knowledge of nurses at the QMC. It was trained

over two months on rosters involving 12 different constraints:

1. Cover: EARLY shifts require 4 Qualified Nurses

2. Cover: EARLY shifts require 1 Registered Nurse

Page 161: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

6. violation features and weighting 150

3. Cover: EARLY shifts require 1 Eye-Trained Nurse

4. Cover: LATE shifts require 3 Qualified Nurses

5. Cover: LATE shifts require 1 Registered Nurse

6. Cover: LATE shifts require 1 Eye-Trained Nurse

7. Cover: NIGHT shifts require 2 Qualified Nurses

8. Cover: NIGHT shifts require 1 Eye-Trained Nurse

9. MaxDaysOn: The maximum number of consecutive shifts for nurses of any type

is 6

10. MaxHours: The maximum number of hours any nurse may work in a fortnight

(14 days) is 75

11. MinDaysOn: The minimum number of consecutive shifts for nurses of any type

is 2

12. Succession: An EARLY shift must not follow a NIGHT shift

This case-base contained 237 cases representing different numbers of each violation

type: 97 Cover, 29 MaxDaysOn, 34 MaxHours, 48 MinDaysOn, and 29 Succession.

The comparatively large number of cover violations reflects their prevalence within

the rosters used to train the case-base.

In this section three different approaches to feature selection and weighting are

evaluated by measuring the classification accuracy of the CABAROST method. Fea-

ture selections and weights generated by the genetic algorithm and by a simple local

search algorithm are compared to a flat (all equal) weighting of the nearest neigh-

bour function with all features selected. The local search method applies a simple

greedy heuristic and includes no mechanism for avoiding local optima. It uses two

neighbourhood definitions. The first generates neighbouring vectors by switching the

selection status of each feature in turn. The second chooses a feature at random and

Page 162: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

6. violation features and weighting 151

Table 6.3: Classification accuracy (with full initial feature set)

Violation Type RCA CB-1 CB-LS CB-GA CB-GA+LSCover 47.42 (6.98) 70.10 75.72 (3.69) 80.88 (1.48) 80.88 (1.48)

MaxDaysOn 18.97 (5.92) 58.62 73.10 (4.82) 78.28 (2.98) 78.92 (2.64)

MaxHours 18.46 (11.27) 23.53 48.24 (5.68) 52.65 (1.88) 53.15 (1.76)

MinDaysOn 21.88 (8.35) 83.33 95.10 (3.72) 97.60 (1.02) 97.60 (1.02)

Succession 25.07 (8.23) 55.16 85.17 (4.67) 90.52 (2.47) 90.52 (2.47)

OVERALL: 31.88 62.87 76.54 81.08 81.23

generates neighbouring vectors by setting the weight of the feature to all values be-

tween 0 and 1 with a discretisation step of 0.1. At every iteration the best neighbour

is selected from these two neighbourhoods. The search stops when no improvement

is made for a number of iterations which was determined based on the size of the two

neighbourhoods. The local search method is also applied to the GA generated weight

vectors to ensure that these have been locally optimised.

The genetic algorithm was run 20 times on the case-base, each time for 60 gen-

erations with a population size of 60. Table 6.3 shows the average (and standard

deviation) classification accuracy of the case-base for each type of violation using the

different weighting approaches. The bottom row gives the overall classification accu-

racy for the whole case-base (i.e. taking into account all violation types). The RCA

and CB-1 columns show the random classification accuracy of the case-base (calcu-

lated 20 times) and the classification accuracy using flat weights, respectively. The

results for the local search (CB-LS) and genetic algorithm (CB-GA) are presented

in the fourth and fifth columns. The final column shows the results for the genetic

algorithm followed by the local search (CB-GA+LS).

It is clear from the results that the overall classification accuracy of the CABAROST

method is significantly increased by applying the feature weighting and selection al-

gorithms. The results also verify that the flat weighted nearest neighbour similarity

measure performs significantly better than a random selection strategy. The genetic

algorithm produces consistently better weight vectors than the local search method

due to its ability to escape bad local optima. The weight vectors produced by the

Page 163: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

6. violation features and weighting 152

Table 6.4: The average number of selected features (with full initial feature set)

Violation Type CB-1 CB-LS CB-GA CB-GA+LSCover 18 3.4 4.1 4.1

MaxDaysOn 18 2.8 2.9 2.9MaxHours 18 3.6 3.2 3.2

MinDaysOn 20 3.1 3.7 3.7Succession 25 2.6 3.1 3.1

local search method vary more considerably and this is evident in the larger stan-

dard deviations in the results produced. Furthermore, applying local search to the

final solutions produced by the genetic algorithm did not increase performance in the

vast majority of instances. This indicates that the genetic algorithm is capable of

converging to good local optima.

It should be noted that the classification accuracies for MaxHours constraint vi-

olations are significantly lower than for other constraint types. MaxHours violations

usually occur over larger periods than other violations - typically 14 days. This low

classification accuracy is a reflection of how difficult it is for the nearest neighbour

distance measure to differentiate between different cases when data about so many

days must be considered.

Table 6.4 shows the average number of features selected in the best solutions of

each weighting algorithm. The random classification method does not use the feature

sets and so is not included in the table. The results are shown for the flat weighting

(i.e. the original feature set), the local search method, the genetic algorithm, and the

genetic algorithm followed by local search.

The feature weighting and selection algorithms all found good solutions with sig-

nificantly smaller sets of selected features. The genetic algorithm selected slightly

more features than the local search. This is probably due to the fact that if the local

search deselects features very early on in the search it may be unable to re-select

them without first reducing the overall quality of the weight vector. Its inability to

escape local optima prohibits it from performing this kind of optimisation. When

applied to the final solutions of the genetic algorithm the local search did not change

Page 164: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

6. violation features and weighting 153

the number of selected features in any instance. This re-enforces the conclusion that

the genetic algorithm is capable of converging to local optima in the search space.

Each run took approximately half an hour on a machine with an Intel Pentium 4 -

3.0GHz processor. This large run time was in part due to the large number of features

used for each type of violation. The most computationally expensive operation of

the algorithm is the calculation of chromosome fitness. One goal of this work is to

reduce the number of features that are stored in cases. This will reduce the runtime

to operationally feasible levels and potentially allow the algorithm to achieve even

better classification accuracy by re-weighting and selecting from the relevant subset.

In order to test this hypothesis a further round of experiments was performed on a

refined subset of the features.

The refined sets of features were determined using the results of the initial exper-

iments. A simple selection heuristic was applied based on two conditions. A feature

was retained in the refined set if one of the following conditions was true:

1. It was selected in at least half of the ten best performing solutions produced by

the genetic algorithm over the 20 runs.

2. It was selected in the best solution produced by the genetic algorithm over the

20 runs.

A new case-base was then created with cases which included only these features in

their violation feature vectors. The feature weighting and selection algorithms were

then applied to the new case-base. The genetic algorithm was then run 20 times for

50 generations and with a population size of 50. Each run of the algorithm took

less than 5 minutes. Table 6.5 shows the classification accuracy of the CABAROST

method using flat weights, local search, the genetic algorithm, and the genetic algo-

rithm followed by the local search. The average number of features selected by each

algorithm is presented in Table 6.6.

The genetic algorithm outperforms the other weighting methods for all of the

violation types. The solutions it produced from the refined set of features are signifi-

cantly better than the solutions it produced using the larger set, with greatly reduced

Page 165: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

6. violation features and weighting 154

Table 6.5: Classification accuracy (with refined initial feature set)

Violation Type CB-1 CB-LS CB-GA CB-GA+LSCover 78.35 79.43 (4.20) 81.96 (0.85) 81.96 (0.85)

MaxDaysOn 72.41 78.44 (3.33) 82.06 (1.80) 82.06 (1.80)

MaxHours 50.00 53.09 (1.50) 54.12 (1.48) 54.12 (1.48)

MinDaysOn 91.67 97.81 (0.47) 97.92 (0.00) 97.92 (0.00)

Succession 86.21 89.83 (2.62) 93.10 (0.00) 93.10 (0.00)

OVERALL: 77.22 80.53 82.57 82.57

Table 6.6: Average number of selected features (with refined initial feature set)

Violation Type CB-1 CB-LS CB-GA CB-GA+LSCover 5 3.0 3.8 3.8

MaxDaysOn 8 3.3 3.5 3.5MaxHours 4 2.6 2.2 2.2

MinDaysOn 11 3.0 4.1 4.1Succession 9 3.4 3.7 3.7

run-times. The classification accuracy of the CABAROST method using flat weights

is also improved for the refined feature set. The local search is again unable to find

solutions of as high a quality as the genetic algorithm although the difference between

them is not as large. Applying the local search after the genetic algorithm lead to no

improvement in fitness for any violation type. Although the reduction in the numbers

of features selected was less significant for this experiment it is of interest that only

around half of the features in the refined sets were selected in the best solutions.

Figures 6.2 to 6.6 show the best set of weights discovered by the genetic algorithm

for each violation type. For each violation type the following observations are made:

Cover. The 20 solutions produced by the genetic algorithm for the large initial fea-

ture set displayed a high degree of homogeneity and consequently the refined

feature set chosen by the feature selection conditions was relatively small. In-

deed the best solutions of the 20 runs on the refined set selected all five features.

The largest weight was given to W-G-Ass, the percentage of assigned hours for

all nurses over the whole roster. This could indicate that the order in which

violations are repaired is being captured by the case-base. Early in the rostering

Page 166: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

6. violation features and weighting 155

Figure 6.2: Feature weights for Cover Violations

Page 167: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

6. violation features and weighting 156

Figure 6.3: Feature weights for MaxDaysOn Violations

Page 168: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

6. violation features and weighting 157

Figure 6.4: Feature weights for MaxHours Violations

Page 169: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

6. violation features and weighting 158

Figure 6.5: Feature weights for MinDaysOn Violations

Page 170: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

6. violation features and weighting 159

Figure 6.6: Feature weights for Succession Violations

Page 171: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

6. violation features and weighting 160

process, when fewer nurses have assigned shifts, cover violations are more easily

solved using highly qualified nurses. This is not the case later in the process

when less qualified nurses must be assigned due to previous rostering actions.

Information about the qualifications of nurses who have UNASSIGNED shifts

on the day of the violation (D-U-QCA), and around the violation (5-U-QCA)

is also important when repairing cover violations.

MaxDaysOn. A further ‘refinement’ of the features was carried out by the genetic

algorithm during the second round of experiments. Four of the features which

were included in the refined set by the selection conditions were deselected in the

best solution produced during the second 20 runs. The most important features

according to the weighting were O-L-Ass, the percentage of hours assigned to

nurses of the same type as the nurse involved in the violation on days outside

the period of the violation, and P-U-SCA, the specialty training cover array

over the period of the violation counting nurses who have the UNASSIGNED

shift. This shows that the level of shift assignment both inside and outside

the violation period is used to make repairs of MaxDaysOn violations. It is

also evident that the specialty training of other nurses during the period of the

violation must be considered. This reflects the fact that swap operations are

frequently used to repair these violations.

MaxHours. Of the four features included in the refined set three were selected by

the second round of experiments. The most important of these was O-N-Ass,

which measures the percentage of assigned hours outside of the period of the

violation. It is difficult to explain this result and the low classification accuracy

for Totals violations indicates that more relevant features must be designed.

MinDaysOn. A large number of features were included in the refined set by the

selection conditions. However, in the best solution of the second round of ex-

periments only two of these were selected. P-N-SPat received the larger weight,

showing that the shift pattern that the nurse has over the violation period is

very important when choosing which repair to use.

Page 172: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

6. violation features and weighting 161

Succession. Again, only two features from the refined set were selected in the best

solution over the second 20 runs of the genetic algorithm. The most important

feature describing the Succession violation is the specialty training cover array

measured over four days around the second day of the violation counting nurses

who have the UNASSIGNED shift (4-U-SCA-2). The bad succession described

by the violations in the case-base was NIGHT-EARLY. The weighting shows

that most repairs are made by considering the possibilities for swapping the

EARLY shift to another nurse (i.e. one with an UNASSIGNED shift if possible)

and leaving the NIGHT shift where it is.

6.6 Conclusion

This chapter has described a method for the automated selection and weighting of

features for the similarity measure used by the CABAROST method. A genetic

algorithm is used to find a subset of weighted features by searching for combinations

of features and corresponding feature weights that increase the overall classification

accuracy of the case-base retrieval method. The increase in classification accuracy

improves the quality of the repairs that are generated by the CABAROST method by

ensuring that the repair types, and the subsequent nurses, days, and shifts involved,

are more likely to be appropriate for the constraint violations they are used to repair.

At the same time, the decrease in the number of features used to represent cases in

the case-base reduces the time needed for retrieval.

The results of the test using the genetic algorithm on real-world data has also

provided an insight into the nature of manual nurse rostering. The relative impor-

tance of features present in the roster to the making of rostering decisions has been

determined. This kind of information could be very beneficial to other researchers

who are developing nurse rostering algorithms. Meta-heuristic approaches, in partic-

ular, could benefit from the use of such knowledge in the defining of neighbourhood

structures and evaluation functions. For example, information about the staff qual-

ification levels and training should be considered when performing swap operations

on shifts or shift patterns between nurses.

Page 173: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

6. violation features and weighting 162

The CABAROST method is enhanced by the inclusion of automatically deter-

mined feature weights. One of the fundamental characteristics of the method is its

ability to adapt to the operational priorities of different nurse rostering experts. Au-

tomatic weighting and feature selection increases this ability by focusing on the data

that is important from a given case-base of experience.

Page 174: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

163

Part III

Meta-heuristic Hybrids

Page 175: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

164

Chapter 7

Combining CABAROST with Tabu

Search

7.1 Introduction

The CABAROST algorithm, working alone, provides a technique for acquiring knowl-

edge about personnel rostering on a case by case basis and can be used in an interac-

tive mode, helping senior staff to build new rosters based on their previous rostering

decisions. In this chapter, the problem of automatically producing final rosters us-

ing the knowledge in the case-base is addressed. The CABAROST method is used

within a simple iterative algorithm which starts with an initial roster consisting only

of the nurses’ preferences (the preference roster) and ‘searches’ for a solution which

violates as few constraints as possible. To determine the benefits gained by using

CABAROST in this way, it will be compared with algorithms constructed using com-

mon meta-heuristic mechanisms.

Meta-heuristic approaches to rostering problems search through the solution space

by iteratively selecting solutions and exploring their neighbourhoods. The neighbour-

hood is defined by generating a number of new solutions around the current solution.

An objective function is used to choose which solution in the neighbourhood to move

to next. The traditional tabu search approach is a meta-heuristic which keeps a

memory of recently visited solutions which may not be revisited within a certain

time period (or tenure). This diversifying feature helps the search to avoid local

Page 176: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

7. combining cabarost with tabu search 165

optima by forcing it to explore new areas of the search space.

In this chapter we will describe seven different variants of a simple meta-heuristic

framework. These algorithms will not define the neighbourhood around a solution

in the same way as ‘classical’ meta-heuristics. Instead of applying an operator to

an entire solution, these algorithms will choose a violation within a solution and

attempt to repair it. The goal of the search is to find a feasible solution, or at

least to minimise the number of constraint violations in the roster. In addition, the

nurses’ shift preferences should be satisfied wherever possible. The hard constraints

defined within the set C are used to define roster feasibility and the nurse preference

information, which is usually modelled as one or more soft constraints, is used as a

measure of roster quality. The difference with these algorithms is that we do not

represent levels of nurse satisfaction quantitatively during the search, or indeed when

generating repairs.

This chapter is organised as follows. Section 7.2 will describe the different meta-

heuristic variants incorporating CABAROST repair generation with tabu search mech-

anisms. The solutions produced by these algorithms will be compared in Section 7.3.

7.2 Algorithm Variants

A number of different mechanisms are available that can help such a local search

algorithm find good quality, feasible solutions. The seven algorithms described here

are composed of different combinations of these mechanisms. The mechanisms are:

Case-based repair generation: Repairs for constraint violations are generated us-

ing the expert knowledge in the case-base. In particular, whilst addressing the

hard constraint violations, these repairs also imitate the expert’s handling of

the nurses’ shift preferences.

Tabu Lists: Repairs are not repeated within a certain number of iterations by plac-

ing them on a tabu list of forbidden repairs. This reduces the chance that the

search will get trapped in a ‘loop’ of repeating violations and repairs.

Page 177: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

7. combining cabarost with tabu search 166

Objective function: The search is guided by an objective function which counts the

number of violated constraints in the roster and must be minimised. Repairs

are chosen based on their ability to reduce the total number of violations in the

roster.

The motivation for defining these algorithms is to determine what effect each

mechanism has on search quality. We shall use them to show that knowledge from

a case-base can be successfully combined with traditional meta-heuristic search con-

cepts thus reducing the knowledge acquisition overhead required to model problem

domains. All of the algorithms search for new solutions by iteratively repairing con-

straint violations. In each instance the initial roster consists solely of the nurses’

individual shift preferences. This roster violates a large number of constraints and

the goal of the algorithms presented here is to repair all of these violations. It must

be emphasised that the algorithms without an objective function have no explicit rep-

resentation of this goal. In these algorithms the burden is placed on the mechanism

which generates the repairs to guide the search in the ‘correct’ direction.

The seven algorithms are described below. The first three algorithms generate

repairs randomly and utilise the tabu lists (R-TL), the objective function (R-OBJ),

and both mechanisms combined (R-OBJ-TL). The last four methods use the case-

base retrieval and adaptation methods described in the previous section to generate

repairs - the ‘pure’ CABAROST repair generation (CB), with the tabu lists (CB-TL),

with the objective function (CB-OBJ), and the final algorithm (CB-OBJ-TL) uses all

three mechanisms. All of the algorithms are based on the following iterative repair

structure:

1. While (true) Do

2. Generate PRv by applying the constraints in C to N

3. If |PRv | = 0 Then exit

4. Pick random element violationα ∈ PRv

5. Perform repair generation for violationα and apply repair to N

Page 178: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

7. combining cabarost with tabu search 167

6. Repeat

Each algorithm described in the remainder of this section implements a different

version of Step 5. Steps 2 and 3 generate the set of constraint violations in the roster

at each iteration and Step 4 chooses a violation to be repaired. After a repair has

been generated and applied to the roster the entire process is repeated.

7.2.1 Random Repair Generation with Tabu List (R-TL)

This algorithm uses no problem solving knowledge to generate repairs but uses the

idea of tabu search proposed by Glover in [100]. A tabu list of repairs is used to

help the algorithm to avoid local optima in the number of constraint violations and

a tenure is specified which sets the length of the list (and therefore the number of

iterations for which a stored repair will be considered ‘tabu’). This tenure must be

enforced whenever a repair is added to the tabu list by removing the oldest repair.

Some help is given to the algorithm by ensuring that the parameters of the violations,

including the nurses, days, and shifts involved, are also included as parameters of the

repairs. Otherwise the choice of repair type (Reassign, Swap, or Switch) and the

other parameters involved is entirely random. No evaluation of the quality of repairs

or the degree of violation of the roster is used when deciding on repairs.

Given roster R = 〈N,C〉 and tabu list T = ∅ with tenure t :

5.1. Randomly create repairβ ∈ PRr using the parameters of violationα

as appropriate

5.2. If repairβ ∈ T Then goto 5.1

5.3. Apply repairβ to N

5.4. Add repairβ to T and update T w.r.t. t

7.2.2 Random Repair Generation with Objective Function (R-OBJ)

This algorithm generates a set of repairs for a given violation and chooses the repair

that will cause the largest decrease (or smallest increase) in the number of constraint

Page 179: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

7. combining cabarost with tabu search 168

violations in the roster. The algorithm is a basic local search [165] and includes

no mechanism for avoiding local optima. The method for randomly generating the

repairs is the same as used for R-TL. Given roster R and repairβ, the objective

function fR(repairβ) is defined:

fR(repairβ) = (|PRv | before applying repairβ)− (|PR

v | after applying repairβ) .

(7.1)

Given roster R = 〈N,C〉 and objective function fR:

5.1. Randomly generate the set of all possible repairs from PRr using the

parameters of violationα

5.2. Choose the element repairβ from the set of repairs with highest

fR(repairβ)

5.3. Apply repairβ to N

7.2.3 Random Repair Generation with Tabu List and Objective Function (R-OBJ-TL)

The tabu list and objective function mechanisms are combined in this algorithm. It

is essentially a tabu search algorithm for the constraint satisfaction problem which

operates on specific constraint violations in the roster.

Given roster R = 〈N,C〉, objective function fR, and tabu list T = ∅ with tenure

t :

5.1. Randomly generate the set of all possible repairs from PRr using the

parameters of violationα

5.2. Choose the element repairβ from the set of repairs with highest

fR(repairβ)

5.3. If repairβ ∈ T Then remove repairβ from the set of repairs and goto

5.2

Page 180: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

7. combining cabarost with tabu search 169

5.4. Apply repairβ to N

5.5. Add repairβ to T and update T w.r.t. t

7.2.4 Case-Based Repair Generation (CB)

Here the experience stored in the case-base is used to generate repairs. It is assumed,

for the experiments that follow, that the case-base has been well trained and contains

sufficient examples of a variety of different problem solving episodes. There is no

objective function used to choose repairs - the similarity to the retrieved repairs from

the case-base drives the search. The most similar repair from the most similar case

is used at every iteration. There is no method for diversification of the search in this

algorithm. This algorithm is performing a ‘blind’ search for feasibility relying on the

quality of repairs stored in the case-base.

Given roster R = 〈N,C〉 :

5.1. Generate repairβ ∈ PRr using the case-based retrieval and adaptation

methods

5.2. Apply repairβ to N

7.2.5 Case-Based Repair Generation with Tabu List (CB-TL)

The R-TL algorithm described in Section 7.2.1 is not guided by any rostering knowl-

edge as the repairs for each violation are randomly generated. CABAROST guides

the search using the knowledge in the case-base but is unable to cope when violations

are repeatedly created - it will create the same repair for the violation each time

it is encountered. The diversification provided by the tabu lists and the rostering

knowledge stored in the case-base are combined in the CB-TL algorithm. The tabu

lists can store either repairs, cases, or a combination of both. If the nearest case

found in the case-base is currently on the tabu list then the next nearest case will

be retrieved. Similarly, if a repair generated is on the tabu list then the next nearest

repair generated from the retrieved case is used.

Page 181: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

7. combining cabarost with tabu search 170

Given roster R = 〈N, C〉 and tabu lists TRepair = ∅ and TCase = ∅ with tenures

tr and tc respectively:

5.1. Retrieve the most similar case case0 ∈ CB

5.2. If case0 ∈ TCase Then discard case0 and goto 5.1

5.3. Generate repairβ ∈ PRr from case0 such that repairβ /∈ TRepair

5.4. Add case0 to TCase and repairβ to TRepair and update tabu lists

w.r.t. tr and tc

5.5. Apply repairβ to N

7.2.6 Case-Based Repair Generation with Objective Function (CB-OBJ)

This algorithm combines the explicit representation of the search goal using the ob-

jective function with the case-base repair generation method. Each repair generated

is scored according to a combination of its similarity to the repair from the retrieved

case and the reduction in the number of hard constraints it causes in the roster.

Given the objective function fR (Formula 7.1), candidate repair repairβ, retrieved

repair r0 = 〈rStructure0, r0〉, and roster R, the function Score is defined

Score(repairβ) = a× 1

dr(rβ, r0)+ b× fR(repairβ), (7.2)

where rβ is the feature information generalised from repairβ (see Section 5.2). The

summation weights a and b have been found through experimentation to work well

when they are equal - although this may not be the case for all problems.

Given roster R = 〈N,C〉 and score function weights a and b:

5.1. Retrieve the most similar case case0 = (v0, r0)

5.2. Generate a set of repairs based on r0 from case0

5.3. Choose the repairβ with the highest value according to Score(repairβ)

5.4. Apply repairβ to N

Page 182: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

7. combining cabarost with tabu search 171

7.2.7 Case-Based Repair Generation with Tabu List and Objective Function (CB-OBJ-

TL)

This final algorithm combines all of the mechanisms. It can be described as a tabu

search for the constraint satisfaction problem with neighbourhoods determined by

the case-base repair generation method for each constraint violation (i.e. at each

iteration).

Given roster R = 〈N, C〉 and tabu lists TRepair = ∅ and TCase = ∅ with tenures

tr and tc respectively:

5.1. Retrieve the most similar case case0 = (v0, r0)

5.2. If case0 ∈ TCase Then discard case0 and goto 5.1

5.3. Generate a set of repairs based on r0 from case0

5.4. Choose the repairβ with the highest value according to Score(repairβ)

5.5. If repairβ ∈ TRepair Then remove repairβ from the set of repairs

and goto 5.4

5.6. Add case0 to TCase and repairβ to TRepair and update tabu lists

w.r.t tr and tc

5.7. Apply repairβ to N

7.3 Comparison of Algorithms

The algorithms were tested on real world data from the QMC using eleven different

variants:

• Case-based repair generation (CB);

• Case-based repair generation with tabu lists of cases with tenure 5 (CB-TL-

C5), of repairs with tenure 10 (CB-TL-R10), and with both tabu lists (CB-TL-

C5R10);

Page 183: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

7. combining cabarost with tabu search 172

• Case-based repair generation with objective function (CB-OBJ);

• Case-based repair generation with objective function and tabu lists of cases

(CB-OBJ-TL-C5), repairs (CB-OBJ-TL-R10), and both cases and repairs (CB-

OBJ-TL-C5R10)

• Random repair generation with tabu list of repairs with tenure 10 (R-TL-R10);

• Random repair generation with objective function (R-OBJ);

• Random repair generation with objective function and tabu list of repairs with

tenure 10 (R-OBJ-TL-R10);

The tenures for the tabu lists were chosen during preliminary experimentation and

they showed good performance over a number of problems. It was noticed that an

increase in repair tenure causes little change in algorithm performance. However, case

tenure is very sensitive and setting this value too high can decrease the performance

of the case-based repair generation significantly. Some of the cases in the case-base

are used with higher frequency due to a higher than average occurrence of the vio-

lation that they represent in the roster. Consequently, when case tenure is increased

it is more likely that the case retrieved from the case-base for a given violation is

insufficiently similar, which could lead to the generation of an inappropriate repair.

A case-base was trained using 300 examples of violations and repairs derived from

preference and final rosters acquired from the QMC. This case-base was an expanded

version of the case-base used to do the experiments described in Chapters 5 and 6 -

examples of violations of the new constraint types (see Section 4.6) were provided as

well as some additional examples of Cover and MaxHours violations. The types of

violations represented in the case-base were not evenly spread, with cover violations

making up the majority of cases. This reflects both the proportion of violations found

in the rosters and the variety of repairs used for cover violations involving different

types of nurses and shifts. The case-base was trained according to the guidelines set

out in Section 5.7.

The algorithms were run on two test problems in which preference rosters from

the four week periods in March and April 2001 were used as initial solutions. Each

Page 184: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

7. combining cabarost with tabu search 173

algorithm was run 10 times on each problem with a maximum of 500 iterations. The

solution with the least number of constraint violations found in each run was kept and

the results summarised in Table 7.1. The first column of results shows the mean (and

standard deviation in brackets) of the number of constraint violations in the solutions

found over each of the 10 runs of each algorithm. A value of 0 indicates that feasible

solutions were found on every run. The total number of feasible solutions found by

each algorithm (out of 10) is shown in the second column. The mean of the number

of iterations needed to get the solution and the speed (average number of violations

solved per iteration) are shown in the third and fourth columns. In the fifth column

the time taken (in seconds) to find the solution is given. The final column contains

the percentage of nurse shift preferences satisfied.

It is clear from the results in Table 7.1 that all of the algorithms that employed

case-based repair generation were able to find solutions with fewer constraint vio-

lations than those that used randomly generated repairs. Figure 7.1 compares the

mean, minimum, and maximum number of constraint violations in the solutions found

by each algorithm. The CB algorithms are also able to reach these better solutions

much faster than their random counterparts in terms of the number of iterations, and

in comparable or better time in seconds. In fact, prolonging the run times of the

random algorithms did not help them find significantly better solutions.

The nurse preference satisfaction results shown in Figure 7.2 also show that the

CB algorithms outperform their random counterparts. It should be emphasised that

the random algorithms were not given any information about nurse preference and so

they are expected to perform badly. However, these experiments do show that repairs

generated using the nurse preference information implicitly stored in the case-base

are able to guide the search in the direction of better solutions.

Tabu lists should help the algorithms to avoid local optima by reducing the oc-

currence of repeating loops of repairs and violations. Indeed, the experiments show

that the CB algorithms without tabu lists are more likely to get ‘stuck’ in such loops.

The improvements in the number of violations in the best solutions obtained by the

CB algorithms with tabu lists for both problems are statistically significant at the

Page 185: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

7. combining cabarost with tabu search 174

Figure 7.1: Mean, maximum, and minimum number of constraint violations

0.01 confidence level1. However, the random results do not show this behaviour. In

fact the R-OBJ-TL-R10 algorithm performs slightly worse than R-OBJ, though this

difference is not significant. The lack of improvement is possibly due to the fact that

the neighbourhoods defined by the random repair generation method are too large

for such a small tabu tenure. The tabu lists are then unable to help move the search

away from local optima. The average progress of the CB, CB-TL-C5R10, R-OBJ,

and R-OBJ-TL-R10 for the MARCH 2001 problem can be seen in Figure 7.3.

These experiments do not show clearly which type of tabu list works best for the

CB algorithms. The TL-C5, TL-R10, and TL-C5R10 variants of the CB and CB-OBJ

algorithms show similar improvements. It is almost certainly true that the choice of

tabu list is dependent on the problem being solved and on the content of the case-

base. We suggest that the combined tabu list (TL-C5R10) would be the best option

for most problems because it incorporates both types of diversification.

1Using a two-sample t-test for statistical significance assuming equal population variance

Page 186: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

7. combining cabarost with tabu search 175

Figure 7.2: Mean, maximum, and minimum nurse satisfaction

Nurse preference satisfaction is not adversely affected by the use of tabu lists with

the CB algorithms (see Figure 7.4). This issue should be approached with caution

however. It is conceivable that keeping repairs and cases on tabu lists could increase

the probability that new repairs violate nurse preference. In particular, the use of

tabu cases may force the case-base to retrieve less similar cases and therefore generate

less suitable repairs. This can be avoided by including sufficient cases in the case-base

and by keeping the tenure of the case tabu list relatively low.

Both the CB and random algorithms were significantly improved by the use of an

objective function (at the 0.05 confidence level). However the improvement to the

random algorithms by using an objective function was not as great as that gained by

using CABAROST alone. For the CB algorithms, the objective function introduced a

trade-off between repair similarity and repair quality which guided the search towards

feasibility in fewer iterations. The scoring function ensures that when very similar

repairs are generated from the case-base they will be used, but when it is not possible

Page 187: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

7. combining cabarost with tabu search 176

Figure 7.3: Effects of tabu list on average number of constraint violations for theMARCH 2001 problem

Figure 7.4: Effects of tabu list on average nurse preference satisfaction for theMARCH 2001 problem

Page 188: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

7. combining cabarost with tabu search 177

Figure 7.5: Effects of objective function on average number of constraint violationsfor the APRIL 2001 problem

Figure 7.6: Effects of objective function on average nurse preference satisfaction forthe APRIL 2001 problem

Page 189: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

7. combining cabarost with tabu search 178

to generate similar repairs the objective function has a larger influence. Figure 7.5

shows the average progress of the CB, CB-OBJ, R-TL-R10, and R-OBJ-TL-R10

algorithms. A statistically significant improvement in nurse satisfaction can also be

seen in the experimental results. This can be explained by the increased speed in

which the OBJ algorithms arrived at their best solutions (see Figure 7.6). In general,

faster convergence to feasible solutions reduces the chance of unnecessary damage to

the nurse preferences.

Figures 7.7 and 7.8 show the final roster produced manually for the month of April

and a roster produced by the CB-OBJ-TL-R10 variant respectively. The rosters

indicate when a request was violated with a shaded background. Where ‘AL’ is

given as a shift the nurse had pre-arranged annual leave and changing these shift

assignments is not possible.

It is immediately evident that the CBR-Tabu hybrid generated roster violates

fewer nurse requests than the manual roster. This could indicate that when training

the case-base the expert paid more attention to satisfying shift requests - or it could

indicate that the automated algorithm found the final roster in fewer iterations thus

causing less damage to the preferences. In a number of places the CBR-Tabu roster

has identical or similar shift assignments to the manually produced roster (in fact the

rosters are identical in 328 out of 490 assignments, i.e. 66.9%, if annual leave is not

counted). An example of similar shift assignments can be found in the final week of

Malinka’s roster - where in the manual roster the assignments are EELUULE and in

the CBR-Tabu roster they are LEEUUEL. This reflects the fact that the expert treats

assignments of Early and Late shifts in a similar fashion - probably concentrating on

satisfying the cover requirements rather than worrying about the order in which shifts

occur. There are some differences in the assignment patterns for Night sifts - this can

be attributed to the lack of additional constraint types (e.g. constraints which do not

allow single night shifts to be rostered) which are taken into account by the method

given in the Chapter 8.

Overall, these results show very clearly the benefits of a hybrid approach. CABAROST

guides the search towards solutions with very few constraint violations and high nurse

preference satisfaction but is unable to reliably find feasible solutions. The addition

Page 190: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

7. combining cabarost with tabu search 179

Figure 7.7: A manually produced roster

Page 191: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

7. combining cabarost with tabu search 180

Figure 7.8: A roster produced using CB-OBJ-TL-R10

Page 192: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

7. combining cabarost with tabu search 181

of tabu lists helps the search out of these ‘good quality’ local optima and increases

the chance of finding feasible solutions. The objective function increases the rate of

convergence by placing more weight on those repairs that cause a decrease in the

number of constraint violations whilst still taking advantage of the knowledge in the

case-base.

The results presented here are not intended to show that the case-based approach

can out-perform methods that employ a tabu search strategy per se. The random

methods shown here are by no means tailored to the problem - any sensible implemen-

tation would at least include explicit rules for avoiding violation of nurse preference

under specific conditions and would probably choose repairs by minimising the num-

ber of new violations created. However, the results do show that when combined

with a simple meta-heuristic algorithm, case-based repair generation can increase

performance significantly.

7.4 Conclusion

In this chapter we demonstrate that a case-base can capture expert rostering knowl-

edge by storing examples of constraint violations and their corresponding repairs.

This knowledge can then be used to generate repairs to constraint violations in new

problems. Our experiments show that a simple iterative algorithm employing only

the case-based repair generation mechanism can successfully find good quality (albeit

usually sub-optimal) solutions. We have shown that the case-based repair generation

methodology not only imitates repairs which lead to feasible or near-feasible rosters,

but that the repairs are also good at preserving the nurses’ shift preference requests

in the final roster.

The benefits of such a case-based guided search approach are threefold. The

expert-quality repair examples stored in the case-base help the search find feasibility

much faster because they guide the search in sensible directions. They help to guide

the search away from areas of the search space containing ‘bad’ local optima (solutions

which are locally optimal but contain many constraint violations). The repairs stored

in the case-base avoid violating nurse shift preferences wherever possible and so guide

Page 193: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

7. combining cabarost with tabu search 182

the search towards feasible solutions with high nurse satisfaction. Finally, all of this

information is stored implicitly in the case-base and therefore does not need to be

hard-coded into an algorithm using explicit rostering rules.

We have shown that the quality of rosters produced using the case-based repair

methodology alone are better than those produced using two standard meta-heuristic

mechanisms, namely an objective function and tabu lists. A hybrid approach incor-

porating the case-based repair generation with tabu lists and an objective function

quickly produces good quality solutions with high levels of nurse shift preference

satisfaction.

It is clear from the results in this chapter that kind of knowledge captured within

CABAROST reduces the burden of knowledge representation within the objective

function. Most single-objective meta-heuristic methods must represent preferential

treatment of constraint violations using a system of constraint weights, which can

be difficult to discern automatically or from domain experts. By demanding that

experts supply rostering knowledge by example, the CBR based method reduces the

risk, present in methods which employ weighting, of misrepresentation and misunder-

standing.

Page 194: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

7. combining cabarost with tabu search 183

|PRv | #Feas #Its Spd Secs NSat (%)

MARCH 2001CB 1.4 (1.07) 2 195.4 0.402 17.8 88.5 (0.90)

CB-TL-C5 0.0 (0.00) 10 205.5 0.410 18.7 87.2 (1.81)

CB-TL-R10 0.7 (0.67) 4 181.1 0.440 16.5 88.7 (1.00)

CB-TL-C5R10 0.2 (0.42) 8 189.0 0.442 17.2 88.5 (1.81)

CB-OBJ 0.3 (0.48) 7 119.4 0.681 16.8 90.3 (1.26)

CB-OBJ-TL-C5 0.2 (0.42) 8 117.7 0.676 16.6 90.4 (1.34)

CB-OBJ-TL-R10 0.1 (0.32) 9 110.4 0.720 15.6 90.1 (2.19)

CB-OBJ-TL-C5R10 0.1 (0.32) 9 117.6 0.680 16.6 90.3 (1.28)

R-TL-R10 43.2 (5.83) 0 435.4 0.084 17.6 61.2 (5.74)

R-OBJ 19.6 (0.84) 0 220.9 0.292 71.5 44.8 (1.90)

R-OBJ-TL-R10 20.0 (1.49) 0 218.6 0.315 70.8 46.4 (2.41)

APRIL 2001CB 1.0 (0.94) 3 151.0 0.591 13.8 88.1 (1.74)

CB-TL-C5 0.3 (0.48) 7 153.7 0.587 14.0 87.6 (2.28)

CB-TL-R10 0.0 (0.00) 10 142.2 0.629 13.0 88.0 (1.57)

CB-TL-C5R10 0.0 (0.00) 10 156.2 0.581 14.2 87.3 (0.91)

CB-OBJ 0.1 (0.32) 9 114.5 0.812 16.2 88.7 (1.80)

CB-OBJ-TL-C5 0.1 (0.32) 9 106.1 0.850 15.0 90.6 (1.95)

CB-OBJ-TL-R10 0.0 (0.00) 10 104.5 0.861 14.7 90.7 (2.36)

CB-OBJ-TL-C5R10 0.1 (0.32) 9 105.7 0.850 14.9 90.4 (1.82)

R-TL-R10 37.9 (8.88) 0 436.0 0.118 17.6 59.2 (4.52)

R-OBJ 18.9 (0.88) 0 265.4 0.326 85.9 49.9 (2.10)

R-OBJ-TL-R10 19.5 (0.97) 0 314.4 0.244 101.8 48.1 (1.76)

Table 7.1: Algorithm Performance.

Page 195: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

184

Chapter 8

A Memetic Algorithm for Determining

Repair Orderings

8.1 Introduction

The CABAROST system generates repairs for violations that appear in rosters. It

is possible to repeatedly attempt to solve every violation in a roster in an iterative

fashion, using techniques such as those proposed in Chapter 7. However, the order in

which repairs are applied to the roster has a great effect on the quality of the final so-

lution. In this chapter the problem of finding good quality sequences of CABAROST

generated repairs is addressed. A memetic algorithm, which is a hybridisation of a

genetic algorithm and CBR, was developed to take sequences of repairs produced by

CABAROST and attempt to evolve good quality orderings.

Memetic algorithms [195] combine the concept of biological evolution used by ge-

netic algorithms with the optimisation powers of local search algorithms. There are

a number of different ways to incorporate local search algorithms into the genetic

algorithm. Usually the members of a population are locally optimised between each

generation. Consequently the genetic operators act only on the locally optimal indi-

viduals generated by the local search thus theoretically reducing the overall size of

the search space [59]. Here, the local search used by traditional memetic algorithms

is replaced by the CABAROST repair generation. This is applied iteratively to repair

a small number of violations each time it is invoked. Consequently, the size of the

Page 196: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

8. a memetic algorithm for determining repair orderings 185

repair sequences produced by the algorithm increases with each generation as more

and more constraint violations are addressed.

The problem of learning from failure is also addressed in this chapter. In the

context of repair sequences failure is defined as the reappearance of a violation that

has already been repaired. When this happens the case from which the repair was

generated has to be penalised to reduce the possibility that it will be selected in future.

In order to accomplish this, a case weighting strategy that would enable the system

to avoid repetition of the same mistake again is proposed. This strategy compliments

the optimisation characteristics of the memetic algorithm, and improves the quality

of the rosters produced over a series of experiments.

The combination of CABAROST with a genetic algorithm allows on-going training

to be carried out to improve the quality of the case-base. Case acceptance thresholds

can be defined which detect when users might need to verify or correct certain repair

actions. In this chapter the use of the memetic hybrid in an interactive fashion is

explored.

The chapter is organised as follows. In Section 8.2 the memetic algorithm is

introduced. Section 8.3 describes the strategy for weighting failed cases. In Section

8.4 some experiments on the QMC data are described and the results are discussed.

8.2 Memetic Algorithm

The memetic algorithm that was developed evolves populations of A chromosomes

which consist of variable length sequences of CABAROST generated repairs. Each

repair sequence sa has the following form:

sa = repaira,0, repaira,1, . . . , repaira,Ba−1, 0 ≤ a < A (8.1)

where Ba is the length of sequence sa.

Initially a population of short repair sequences is created. Each sequence is gen-

erated from the initial preference roster, from which violations are chosen at random

and then repaired using CABAROST. The length of the sequence is also randomly

chosen from an interval which is a parameter of the search.

Page 197: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

8. a memetic algorithm for determining repair orderings 186

The fitness of a repair sequence is measured by summing the magnitudes of all

the constraint violations that occur in a roster after the sequence has been applied.

For example, the magnitude of a cover violation is equal to the shortfall (the number

of extra nurses required to satisfy the constraint). The magnitude of MaxHours and

MinHours violations is the number of hours over or under the maximum or minimum

specified in the constraints, respectively. The constraint violations are not weighted in

any way. The specification of relative importance of constraints is stored in the case-

base. The nature of the repairs used for the different types of violations, and indeed

the different repairs used for different violations of the same type, implicitly represent

relative constraint importance. The reciprocal of the summed violation magnitudes is

used by the selection operator, thus turning the problem into a maximisation problem.

At each generation the population is manipulated firstly by the genetic operators

of selection, crossover, and mutation, followed by the memetic operation which adds

more repairs to each of the sequences by repairing more violations from the roster

using CABAROST. The genetic operators work towards finding good quality permu-

tations of the existing repair sequences, whilst the memetic stage increases the size

of the sequences thus allowing them to repair more violations within the roster.

One-point crossover [31] with a repetition filter was used to combine two parents

with a 0.8 probability. This operation chooses a position in each of two chromosomes

at random and then creates two children by swapping the parent’s values to the right

of the selected positions and removing all repetitions of repairs. Given two children

x = x0, x1, . . . , xX−1 and y = y0, y1, . . . , yY−1, and crossover points cX ∈ [0, X − 1]

and cY ∈ [0, Y − 1] the two children produced by a crossover of x and y are:

x’ = x0, . . . , xcX, ycY +1, . . . , yY−1 s.t. yi 6= xj, 0 ≤ j ≤ cX (8.2)

y’ = y0, . . . , ycY, xcX+1, . . . , xX−1 s.t. xi 6= yj, 0 ≤ j ≤ cY (8.3)

The removal of repetitions from the repairs sequences is an important part of

the crossover operation. Repeated copies of Reassign repairs will not have any effect

on the roster and are redundant. When swap and switch repairs are repeated they

Page 198: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

8. a memetic algorithm for determining repair orderings 187

effectively ‘undo’ themselves (for example, a swap repair applied twice will result in

unchanged assignments for the nurses involved). Consequently, if they remain in the

repair sequence after crossover they will reverse the repairs of previous violations,

thus increasing the total number of violations in the roster and therefore reducing the

fitness of the chromosome.

Parents were selected for the crossover operator using a roulette wheel selection

process [165]. In this method, individuals are selected with a probability equal to

the proportion that their calculated fitness contributes to the sum of the fitness of

all members of the population. An elitist strategy is used, guaranteeing that the

fittest member of the old population is copied into the new population. This strategy

ensures that at least one member of the new population is of the highest quality found

thus far.

There are two mutation operators that are applied to members of the new popu-

lation. The delete mutation chooses a random number of repairs to delete from each

sequence. The number of deleted repairs is restricted to the interval [1,5]. The delete

mutation helps to limit the size of the sequences over time by removing repairs which

do not contribute to the overall chromosome quality. The swap mutation changes

the order of the repairs in a sequence by choosing a swap point and then swapping

all of the repairs that were before this point to the end of the sequence. Each of the

mutation operators is applied to sequences with a 0.1 probability.

After the genetic operators have been applied to the chromosomes in a population

each of them is extended by a random number of repairs using the CABAROST repair

generation method. The repair sequences are successively applied to the roster and

then a random selection of the remaining (and potentially newly generated) violations

are repaired. Again, after each sequence is extended the roster is reset back to its

original state.

8.3 Learning

A fundamental property of CBR systems is that of learning capability. During the use

of the memetic algorithm learning can be performed in two ways. When CABAROST

Page 199: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

8. a memetic algorithm for determining repair orderings 188

is not confident about the quality of repairs it produced it can prompt the user to

confirm or suggest an alternative. The distance between the generated repairs and the

repairs in the retrieved cases is considered. A confidence threshold is established for

repairs generated by CABAROST. If a repair has distance greater than this threshold

then the user is queried. This mechanism has the effect of increasing the coverage

of the cases in the case-base over time. The threshold can be set at different levels

depending on the amount of interaction desired. If the user would like to interact

frequently with search process then it should be set at a low distance. If it is set at

a high value then the user will be prompted less often.

Learning is driven not only by successfully repaired violations but also by repairs

that are considered to be failures. In this problem a failure is defined as the reappear-

ance of a violation after it has already been repaired using a case from the case-base.

This is assessed each time a repair is added to each repair sequence in the population.

A record is kept of the violation that was solved by each repair in the repair sequence.

When a violation is selected for repair the record is checked and if it has previously

been solved then the case which was used to generate the repair is deemed to have

failed.

The failure of a case is registered in the case-base by increasing the overall case

weighting (Wγ) used in formula 5.9. This increase in weight acts as a penalty on the

case. The effect of an increase in the weighting of a case is to increase its distance

from any future violations - thus reducing the chance that it will be used to solve

future violations.

It is likely that the majority of cases in the case-base will fail at some point due

to the highly constrained nature of rostering problems. Consequently, it is important

that the increase in weight upon failure is small so that cases with a low rate of

failure are still used to repair violations. The weighting is a gradual process which

will penalise most the cases which consistently fail.

Page 200: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

8. a memetic algorithm for determining repair orderings 189

8.4 System Evaluation

The CABAROST method depends very strongly on the quality of the case-base. A

set of experiments was designed to: (a) show the performance of the case-base as a

repair generation tool within a meta-heuristic algorithm; (b) explore the effects of

ongoing training of the case-base throughout its use; and (c) investigate the use of

case weighting as a means by which to penalise failure.

A new case-base was trained for these experiments using the method described in

Section 5.7 using violations and repairs of one month of rostering data (MARCH2001)

from the QMC. The case-base had to be retrained from the versions used in previous

chapters due to the new repair adaptation algorithm - the information required could

not be derived from the existing cases. This case-base was trained with experience

of all of the constraint types listed in Section 4.6. In this problem instance 20 nurses

were rostered over a four week period according to the constraints listed in Table 8.1.

The case-base contained 189 cases, with cases containing mix of violations listed

in Table 8.2. The number of cases stored for each violation is a reflection of the

variety of different decisions that can be made. For example, HardRequest violations

(when a nurse’s preferred shift is not assigned) are always repaired by swapping the

affected nurse’s assigned shift with a nurse of any other type who happens to be

currently assigned the requested shift. The number of cases stored is low because

this repair behaviour takes place in all circumstances. Cover violations, however,

require different repairs to be used in different circumstances and so a large number

of contrasting examples are used in the case-base.

In the experiments described in this section the memetic algorithm is applied to

the problem instances for the five months after March 2001. We investigate a number

of variations of the algorithm. Each variation of the algorithm was run 20 times for

each problem instance. All of the roster quality results presented are averages (and

standard deviations) of the best solution found during each of the 20 runs. The roster

quality results represent the sum of the magnitudes of the violations in the roster - i.e.

they are the reciprocals of the fitness values calculated within the memetic algorithm.

The first experiment compares the results achieved by using the memetic algorithm

Page 201: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

8. a memetic algorithm for determining repair orderings 190

Table 8.1: Constraints for the QMC problem

Constraint Type DescriptionCover EARLY shifts require 4 Qualified NursesCover EARLY shifts require 1 Registered NurseCover EARLY shifts require 1 Eye-Trained NurseCover EARLY shifts require 1 Auxiliary NurseCover LATE shifts require 3 Qualified NursesCover LATE shifts require 1 Registered NurseCover LATE shifts require 1 Eye-Trained NurseCover LATE shifts require 1 Auxiliary NurseCover NIGHT shifts require 2 Qualified NursesCover NIGHT shifts require 1 Eye-Trained NurseCover NIGHT shifts require 1 Auxiliary Nurse

MaxDaysOn maximum number of consecutive shifts is 6MaxHours maximum number of hours in a fortnight (14 days) is 75MaxHours maximum number of hours is as set in nurse contracts

MinDaysOn minimum number of consecutive shifts is 2MinHours minimum number of hours is 5 less than the contract maximum

SingleNight nurses can not work only one night shiftSuccession an EARLY shift must not follow a NIGHT shift

WeekendBalance no more than 3 weekends out of every 4WeekendsInARow no more than 3 weekends in a row

WeekendSplit either both days of a weekend or not at all

Table 8.2: Initial case-base contents

Violation Type NumberCover 54

HardRequest 12MaxDaysOn 7

MaxHours 13MinDaysOn 20

MinHours 46SingleNights 3SoftRequest 14

Succession 4WeekendBalance 5

WeekendsInARow 6WeekendSplit 5

Page 202: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

8. a memetic algorithm for determining repair orderings 191

Table 8.3: Roster quality - CABAROST vs. Random Repair Generation

Month Initial Random CABAROSTQuality Time Quality Time

April2001 545.00 197.30 (21.67) 365.2 161.34 (7.01) 623.5May2001 592.75 224.35 (38.07) 392.4 198.01 (10.49) 589.8June2001 698.25 243.84 (31.41) 315.2 229.73 (23.29) 623.4July2001 530.00 271.14 (41.69) 341.5 233.15 (17.36) 821.9

August2001 675.25 234.51 (36.91) 299.3 189.04 (24.29) 615.2

with the CABAROST generated repairs, and with repairs that have been created at

random. The random repair generation uses the basic parameter information for the

focus violation and creates a repair of random type, with random nurses and shifts

involved. By generating the repairs randomly the memetic algorithm is effectively

performing a search ‘by itself’ - i.e. with no knowledge coming from the case-base.

In this experiment the case-base trained using the MARCH2001 data was used with

no additional cases added.

Table 8.3 shows the results for the first experiment. The first column of results

shows the starting quality of each month’s roster (i.e. the preference roster). In next

two columns the results of the memetic algorithm with random repair generation

are given for each month along with the average time taken (in seconds) to reach

the best solution. The final columns shows the qualities and processing times of the

solutions produced by the memetic algorithm with CABAROST generated repairs.

The results show that the knowledge contained in the case-base significantly improves

the performance of the memetic algorithm. The quality of the solutions produced is

better using CABAROST repairs for all five problem instances. The CABAROST

repair generation also leads to more consistent solutions. This is demonstrated by

the lower standard deviations of the results of the twenty runs.

In the second experiment the effect of on-going training on the quality of solutions

is assessed. On-going training of the case-base is performed by allowing the user to

interactively participate in the search process. Whenever a repair is generated for a

violation the repair distance is measured and this can be interpreted as a measure of

confidence in the quality of the repair. If this repair distance is larger than a certain

Page 203: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

8. a memetic algorithm for determining repair orderings 192

Table 8.4: Roster quality: static (no training) vs. ongoing training

Month Static Case-Base Threshold = 1.5 Threshold = 2.5April2001 161.34 (7.01) 145.63 (9.64) 155.15 (11.28)

May2001 198.01 (10.49) 161.18 (12.64) 182.15 (13.16)

June2001 229.73 (23.29) 206.73 (10.17) 210.38 (10.85)

July2001 233.15 (17.36) 187.86 (17.02) 223.97 (16.30)

August2001 189.04 (24.29) 181.15 (8.38) 186.54 (11.23)

threshold value then the user is asked to confirm the repair. The user can accept the

generated repair or improve it if it is not satisfactory. The new repair is added to the

case-base thus increasing the experience it contains.

The memetic algorithm is used to solve each of the problem instances in turn.

Any new cases added to the case-base during the run of the memetic algorithm are

kept and used in the case-base for the following month. The algorithm is used with

repair confidence thresholds of 1.5 and 2.5, and also with no on-going training (where

all repairs retreived from the case-base are accepted and only MARCH2001 is used

for training).

Table 8.4 shows the average results over the 20 runs of the algorithms. The first

column shows the average and standard deviations of the results achieved by the

memetic algorithm using CABAROST and the static case-base (trained using only

the MARCH2001 data). The second and third columns show the results using on-

going training with repair confidence thresholds set at 1.5 and 2.5, respectively. These

results are also presented graphically in Figure 8.1

It is evident that performing constant training of the case-base gives a consid-

erable advantage. For most problems the performance of the algorithm improved

significantly when it used the 1.5 acceptance threshold. As would be expected, the

performance increase was greater for the 1.5 acceptance threshold than it was for 2.5

because of the increased feedback from the user. The experience that is added to the

case-base about one months problem also improves the performance of the memetic

algorithm for later problems.

The number of times that the user is asked for feedback about repairs is an im-

Page 204: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

8. a memetic algorithm for determining repair orderings 193

Figure 8.1: Roster quality: static (no training) vs. ongoing training

portant issue to be considered. An algorithm which requires consistently high levels

of user interaction may become tedious to use. Figure 8.2 shows the sharp decrease

in the average number of times that the user is asked for input for each problem.

For the APRIL2001 problem an average of 105.2 queries were presented to the user

when the threshold was set at 1.5. This had reduced to just 12 for the AUGUST2001

problem, 5 months later. The figure also shows the difference in number of queries

when different thresholds are used. By allowing the user to choose the threshold they

can specify the amount of input they want to have depending on how much time they

want to spend supervising the algorithm.

The third experiment is used to show that the penalising of cases which perform

badly in the search by using case weights increases the overall performance of the

memetic algorithm. The amount which is added to the case weight when the case has

failed is set at 0.1, 0.5, and 1. It is expected that the value of 1 will not lead to good

quality rosters because its effect on the case-base is too severe. Increments of 0.1 and

0.5 have a more gradual effect on performance by penalising most heavily those cases

which consistently fail.

Table 8.5 shows the results for the different case weighting levels. The first column

Page 205: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

8. a memetic algorithm for determining repair orderings 194

Figure 8.2: On-going training: number of queries (1.5 and 2.5 thresholds)

Table 8.5: Roster quality: static (no case weighting) vs. case weighting on failure

Month No Weighting Inc. = 0.1 Inc. = 0.5 Inc. = 1.0April2001 161.34 (7.01) 154.95 (6.27) 159.74 (6.86) 179.01 (24.65)

May2001 198.01 (10.49) 185.73 (14.93) 195.63 (14.24) 216.48 (34.80)

June2001 229.73 (23.29) 213.15 (5.45) 199.86 (7.40) 234.86 (30.27)

July2001 233.15 (17.36) 227.99 (13.22) 234.14 (16.30) 251.17 (34.92)

August2001 189.04 (24.29) 176.75 (15.33) 188.53 (26.84) 216.35 (42.23)

Page 206: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

8. a memetic algorithm for determining repair orderings 195

Figure 8.3: Roster quality: case weighting on failure

shows the results for the memetic algorithm with CABAROST generated repairs

and no case weighting. The second, third, and fourth columns show the results for

increments of 0.1, 0.5 and 1.0 respectively. The results are represented graphically in

Figure 8.3.

The results show that the weighting of failed cases increases the overall perfor-

mance of the memetic algorithm. The increment level 0.1 performed best on average

for all but one of the months data. An increment level of 0.5 shows a small improve-

ment on the un-weighted algorithm, except for the JULY2001 problem instance. An

increment level of 1.0 is clearly too high and the algorithm performed considerably

worse when this value was used.

Figure 8.4 shows a roster produced by the memetic algorithm for the month of

April. This result can be compared to the manual and CBR-Tabu results given in

Figures 7.7 and 7.8 in Chapter 7. Again, the shaded background indicates violations of

shift requests and the ‘AL’ symbol indicates Annual Leave which cannot be changed.

The roster produced using the memetic algorithm shows some qualitative im-

provements over the CBR-Tabu result given in Figure 7.8. These improvements can

be attributed to the additional constraints defined - constraints which could not be

Page 207: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

8. a memetic algorithm for determining repair orderings 196

Figure 8.4: A roster produced using the memetic algorithm

Page 208: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

8. a memetic algorithm for determining repair orderings 197

handled very well by the CBR-Tabu algorithms. For example, in the memetic re-

sult weekend shifts are allocated more evenly due to the definition of three weekend

constraints. There are a number of examples of violations of these constraints in

the CBR-Tabu roster. Fiona, Claire, Anita, Tess, Daryl, and Linda all have shift

assignments which violate both the “three in a row” and “three out of four” weekend

constraints in the CBR-Tabu solution. There are no violations of these constraints

in the memetic solution. However, the constraint which requires that either both

or neither of the days in a weekend are assigned seems harder to satisfy and in the

memetic solution it is still violated in a number of places. This is also the case for the

SingleNight constraint - which requires that night shifts are not assigned in isolation.

It is interesting to note that both of these constraint types are also frequently violated

in the manually produced solution - indicating that these constraints are considered

to be less important by the rostering expert. We can conclude that this rostering

‘behaviour’ has been captured successfully by the case-base.

The memetic roster violates fewer nurse requests than both the CBR-Tabu and

manual rosters - in fact it leaves the nurse preferences almost entirely intact. Al-

though, due to a lack of space the details are not given, the memetic roster also

conforms more closely to the working hours constraints than the CBR-Tabu result.

The nurses’ total assignment time is close to their contract specified hours. In this

sense, the memetic result is more similar to the manually produced roster.

Overall, the results show that the knowledge that can be captured and used

through case-based repair generation and the combinatorial search capabilities of

genetic algorithms can be successfully combined in a novel memetic algorithm. This

algorithm is capable of generating good quality sequences of repairs based on the

knowledge and experience held in the case-base.

8.5 Conclusion

This chapter has described a novel memetic algorithm. Sequences of repairs are

produced using the CABAROST system. Obviously the order of the repairs in these

sequences affects the quality of the final roster. A memetic algorithm searches for

Page 209: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

8. a memetic algorithm for determining repair orderings 198

optimal sequences of repairs generated by the CBR system. This memetic algorithm

differs from others in the literature through its use of CABAROST in place of the

local search that would normally be applied to populations between generations. The

results of experiments on the data from the QMC indicate that this hybridisation

provides an excellent tool for solving nurse rostering problems.

The quality and coverage of the case-base is maintained through a combination

of on-going training and case weighting. By using a case acceptance threshold the

algorithm can determine those instances for which it can not be confident that the

decision it has made is correct. The user can set this threshold depending on the

amount of input they wish to have in the process. Cases which generate repairs which

are not of a high quality are detected by the memetic algorithm by monitoring the

appearance and reappearance of constraint violations. When a violation reappears in

the roster the case that was used to solve it is penalised by increasing its weight. This

increase in weight means that the case will be less likely to be used to solve future

similar violations.

This chapter has shown that CBR can be used to improve the performance of

evolutionary approaches to constraint optimisation. The memetic framework provides

an ideal basis for both detection of case failure, and for interactive involvement of

the user. The results show that using CABAROST, failure weighting strategies, and

interactive learning, the quality of the rosters produced is improved.

Page 210: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

199

Part IV

Discussion

Page 211: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

200

Chapter 9

Conclusions

This chapter provides a summary and discussion of the contents of the thesis. Section

9.1 begins with an analysis of the contribution which has been made, in terms of the

research objectives enumerated in the introduction chapter. Some of the key successes

are highlighted and discussed in a wider context. Details of the dissemination of the

research in publications and conferences are given in Section 9.5. In Section 9.2 the

comparison of the CABAROST system with other rostering methods is discussed and

in Section 9.3 some guidelines for applying similar case-based reasoning methods to

other combinatorial optimisation problems are described. The chapter concludes in

Section 9.4 with a discussion on some future research issues which should be addressed.

9.1 Contribution

The contribution made in this thesis are divided into two parts. The issues pertaining

to the problem of personnel rostering are described first, followed by the contribution

made within the field of CBR.

9.1.1 Personnel Rostering

(a) Personnel rostering problems from the literature and from hospitals have been

analysed (see Chapter 2). This thesis has presented details of the key parame-

ters, constraints, and dimensions which are present in rostering problems. The

overwhelming complexity of these problems has been described, especially the

Page 212: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

9. conclusions 201

differing treatments of staff qualifications, working and shift patterns, and of

the many different constraints which make rostering problems difficult to solve.

The issues of self-scheduling and participatory rostering practices have been ex-

plored in light of the more recent awareness that involvement in the rostering

process can considerably increase staff morale.

(b) Many of the most influential and successful automated rostering methods for

solving rostering problems have been described (see Chapter 2). The progress

of rostering research over the years has been charted, from the initial simplified

models which employed computationally expensive mathematical programming

tools, to the most modern meta-heuristic, constraint programming, and artificial

intelligence based approaches, which are capable of solving problems of ‘real-

world’ complexity.

(c) A real-world rostering problem from a UK hospital has been modelled (see Chap-

ter 4). The nurse rostering problems is modelled as a set of constraints which

should be satisfied (if possible). A complex set of personnel characteristics can

be defined which are simultaneously hierarchical and overlapping, and include

such details as qualifications, specialty training, experience, gender, and inter-

national status. Customisable constraint types are defined which can be applied

to all employees, or over a subset of employees with certain characteristics. Re-

quests made by members of staff for particular shifts are collected in preference

rosters which later become the starting point of the rostering process. The

problem model was designed to be as generally applicable as possible and could

be used to model a wide variety of the problems described in the literature.

(d) This thesis has investigated the nature of human expert decision making for

personnel rostering. In Chapter 4 a set of simple repair operations was identified.

These repairs represented the kind of actions which manual rostering experts use

to try and resolve constraint violations. In Chapter 5 the CABAROST system

is described, which stores cases consisting of individual examples of constraint

violations and the corresponding repair operation which was used by a rostering

Page 213: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

9. conclusions 202

expert to solve them. When a new constraint is given to CABAROST the

first process involves searching through the case-base to find the cases which

contain the most similar constraint violation. The repairs contained in the

most similar cases are then adapted by generating sets of candidate repairs

(consisting of nurses from the current roster) and ranking these according to

their similarity to the retrieved repairs. The CABAROST system provides a

very flexible tool for collecting rostering knowledge from rostering experts. It

allows experts to demonstrate their treatment of constraints on a literally ‘case-

by-case’ basis. For example, a nurse manager treats staff requests in different

ways according to factors including (but by no means limited to) the importance

of other constraints on the day of requests, the number and skill of the other

nurses available on the day, and the number of requests that the nurses have

satisfied (or indeed violated) over the rest of the planning period.

The retrieval and adaptation phases both use notions of similarity when gener-

ating repairs for constraint violations. Cases consist of sets of feature indices.

These are characteristics of the constraint violations and repairs which are rele-

vant to the rostering decisions which must be made. In Chapter 6 the different

feature types which describe constraint violations are described. The initial

sets of features were determined through consultation with the rostering ex-

perts at the QMC. To refine these large initial sets, a data mining method

was developed which simultaneously selected relevant features and determined

their relative importance. A genetic algorithm is used to search for sets of fea-

tures, and feature weights, which maximise the classification accuracy of the

CABAROST retrieval phase. This ‘off-line’ approach improved the quality of

repairs produced by CABAROST. It also gave an insight into the nature of deci-

sion making for personnel rostering problems by identifying those characteristics

of the roster which were relevant to the repairing of constraint violations.

(e) CABAROST has been applied to solve rostering problems in a number of ways.

In interactive mode CABAROST can be used by rostering experts to guide

the rostering process. Rostering experts can choose violations to repair from

Page 214: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

9. conclusions 203

a roster and CABAROST will present them with repairs which are similar to

those which have been used for similar problems in the past. The expert can

then choose from the most similar repairs and the chosen repair will be applied

to the roster. If none of the repairs are suitable then the expert can specify a

different repair based on their knowledge and experience. This new constraint

violation and corresponding repair can then be stored in the case-base thus

increasing the knowledge contained.

To produce entire rostering solutions CABAROST is combined with meta-

heuristic tools. These hybrid approaches attempt to find solutions containing

minimal numbers of constraint violations. In Chapter 7 a set of algorithms were

presented which iteratively addressed the constraint violations in a roster. The

algorithms were constructed from different mechanisms, including tabu lists,

objective functions, random repair generation, and CABAROST repair genera-

tion. The results presented demonstrated that CABAROST generated repairs

significantly increased the performance of the algorithms in which it was used.

(f) The CABAROST method described in Chapter 5 treated constraint violations in

rosters as individual problems. Constraint violations are addressed using single

repair operations. When a constraint violation is repaired one of these three

scenarios results:

(i) The constraint violation is unaffected (the repair has failed);

(ii) The constraint violation is removed (the repair has succeeded);

(iii) The magnitude of the constraint violation is reduced in which case we

consider the resulting violation of the constraint to be new.

The repair adaptation rules ensure that the first scenario doesn’t happen by

guaranteeing that the generated repairs will always have an effect on the con-

straint violation. By treating the repair of constraint violations in this way

CABAROST can model the solution to constraint violations by recording both

the repairs to violations and the subsequent repairs made to the new violations

Page 215: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

9. conclusions 204

which result. Using the extended adaptation algorithm the new violations cre-

ated as a result of a repair are also recorded in the case-base. This information

represents the acceptability of violating constraints in specific circumstances.

Repair ordering knowledge is not applied directly through the case-base mech-

anism, but is exploited successfully through the hybrid memetic algorithm de-

scribed in Chapter 8. This algorithm searches for sequences of CABAROST

generated repairs which lead to minimally violated rosters.

9.1.2 Case-Based Reasoning

(a) The use of CBR for real-world problems was explored, particularly in the problem

domains of scheduling and planning, and combinatorial and constraint optimi-

sation in general (see Chapter 3). The basic CBR framework was presented as

a methodology for solving complex problems with incomplete domain models.

Some of the successful implementations of CBR for scheduling and planning

problems were discussed.

(b) The suitability of CBR as a methodology for solving rostering problems was ex-

plored. Some of the defining characteristics of rostering problems lead naturally

to CBR solutions. In particular, the somewhat subjective nature of decision

making in rostering causes difficulty when it comes to systematically eliciting

knowledge from experts. CBR provides a means by which experts can provide

knowledge by example. This contrasts with existing approaches which represent

domain knowledge by defining sets of ‘IF-THEN’ rules which can be restric-

tive and are often inaccurate, or by confining knowledge to utility functions

which measure roster quality by summing violations of arbitrarily weighted

constraints.

(c) Problem solving knowledge stored in cases must be general enough that it can be

applied to a wide range of problems. In this thesis the problems of generalising

domain objects for storage in the case-base was addressed (see Chapter 5). Vi-

olations and repairs are stored in cases without any ‘roster-specific’ knowledge.

Page 216: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

9. conclusions 205

Such knowledge includes details about the actual nurses, days, and sometimes

shifts involved. The information stored in the case-base is more general, and

describes nurse characteristics (such as qualifications or specialty training) and

information about the types of shifts already assigned on and around the af-

fected days. By storing only generalised information it is possible to uses cases

stored during the solving of one roster to repair constraint violations in many

future rosters, even those consisting of entirely different sets of nursing person-

nel.

(d) Chapter 5 describes the CABAROST system for personnel rostering. Algorithms

for retrieving and adapting cases from the case-base were developed. The re-

trieval algorithm consisted of two phases. In the first phase all of the cases in

the case-base containing constraint violations of the same type as the current

problem were identified. These cases were then ranked according to the distance

from their violation feature vectors to the feature vector of the new violation.

The adaptation phase generated sets of repairs of the same type as those in

the retrieved cases. These generated repairs are then ranked according to their

distance from the retrieved repairs.

The CABAROST method was designed to imitate the behaviour of human ex-

perts. The performance of CABAROST in this respect has been measured

in two ways. In Chapter 5 the decisions made by CABAROST were compared

with those of a rostering expert. It was shown that the accuracy of CABAROST

improved with the addition of more cases to the case-base. Furthermore, the

decisions made by CABAROST were similar to those made by the expert for

a high percentage of the constraint violations presented. In Chapter 6 the per-

formance of CABAROST was measured in terms of its classification accuracy.

This is a measure of the percentage of cases in the case-base which can be iden-

tically solved if they are removed. For most of the constraint violation types

CABAROST performed well, and this performance was enhanced further by the

genetic algorithm which selected and weighted the constraint violation features

according to their relevance.

Page 217: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

9. conclusions 206

(e) It has been shown in this thesis that the hybridisation of CBR systems with

meta-heuristic search methods is a promising research area. Chapter 7 described

an integration of CABAROST with tabu search concepts and in Chapter 8 a

memetic algorithm was developed. In the experiments performed on the data

from the QMC the use of CABAROST generated repairs greatly increased the

performance of the hybrid approaches.

(f) Guidelines for the initial training of the case-base were given in Chapter 5. If

followed, these guidelines ensure that the cases stored in the case-base will

be useful for future reasoning and ensure that there is sufficient knowledge in

the case-base to solve a wide range of problems. In Chapter 8 an interactive

memetic algorithm is presented which prompts the decision maker for additional

knowledge if the decisions made do not fall within a certain confidence limit

based on the distance between generated and retrieved repairs. It is shown that

this form of on-going training significantly increases the performance of the

‘stand-alone’ memetic algorithm. To ensure that decision maker is not required

to answer ‘too many’ queries the confidence threshold can be set to represent

the amount of interactivity desired.

(g) In general, a CBR system should be able to learn from failure. The memetic

algorithm in Chapter 8 searches for sequences of CABAROST generated repairs

which lead to minimal violations in the final roster. In the context of repair

sequences failure is defined as the reappearance of a violation that has already

been repaired. When this happens the case from which the repair was generated

has to be penalised to reduce the possibility that it will be selected in future.

In order to accomplish this, a case weighting strategy that enables the system

to avoid repetition of the same mistake again is proposed. The experimental

results show that the application of this strategy, over time, increases the quality

of final rosters.

(h) This research has investigated technologies for maintaining case-base perfor-

mance. Chapter 6 describes a genetic algorithm for selecting and weighting the

Page 218: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

9. conclusions 207

features used to describe constraint violations. The application of this off-line

algorithm increases the performance of CABAROST in two ways. The accuracy

of the decision making is improved because only features relevant to the prob-

lem are used to generate repairs. The reduction in the number of features also

reduces the storage requirements for cases in the cases-base. The method for

learning from case failure has a positive side-effect, namely that it can be used

to limit the size of the case-base to only those cases which are performing well.

Cases which receive frequent penalty for their failure can be identified during

off-line processing and removed from the case-base. A reduction in case-base

size will increase the speed with which cases are retrieved.

In the introduction chapter three key areas of deficiency were identified in existing

approaches to personnel rostering. The following sections discuss these areas in turn,

and describe how successful the methods described in this thesis are at addressing

them.

9.1.3 Knowledge Acquisition

The problems of reliably eliciting domain knowledge from experts in complex, ill-

defined domains is well documented. This so called knowledge acquisition bottle-neck

occurs because operational research practitioners often have difficulty translating the

management requirements of domain experts into the mathematical models needed to

apply most OR methods. For example, rule based approaches require the reasoning

of domain experts to be represented by sets of ‘IF-THEN’ rules. Acquiring knowledge

in this way is difficult and time-consuming, and frequently leads to inaccurate and

incomplete domain models.

In general, automated rostering methods represent domain knowledge in a limited

number of ways. The main ‘locations’ for such knowledge are:

- Objective functions : Arguably, most of the ‘reasoning’ knowledge about rostering

problems is represented by an objective (utility or fitness) function. For the

majority of problems, no matter what the method, this function consists of

Page 219: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

9. conclusions 208

a weighted sum of the constraint violations in the roster. The weights are

set, in consultation with domain experts, to represent the relative importance

of constraints. The effect of a higher weight assigned to a constraint type is a

more severe penalty added to the objective function if the constraint is violated.

The ‘bottle-neck’ with this form of representation is the setting of these weights.

Indeed, the most successful approaches applied to real problems have been those

which allow the user to interactively change the weights until the solution fits

their requirements.

- Constraints : Reasoning knowledge can be represented as complex feasibility con-

straints on the possible instantiations of decision variables. Constraint reason-

ing methods have had some success representing knowledge in this way because

they provide a fairly intuitive ‘language’ for representing constraint informa-

tion. However, it is not easy to represent all forms of reasoning in this way,

particularly when requirements are not feasibility defining but rather represent

desirable solution characteristics. In general, these requirements are still repre-

sented purely in the definition of the objective function.

- Neighbourhood definitions : Meta-heuristic search methods can represent a large

amount of knowledge in the definition of ‘neighbourhoods’ around current solu-

tions. These definitions tend to be very problem specific, and sometimes lack a

clearly intuitive link to the operational requirements which they are supposed

to model. Consequently, methods developed using such definitions tend to be

excellent at solving the problems they were designed for, but cannot easily be

used to solve new problems.

Case-based reasoning provides a new means by which to represent domain knowl-

edge for scheduling problems. The case-base consists of examples of actual instances

of expert reasoning. The episodic nature of cases provides a flexible framework for

eliciting domain knowledge from experts in a natural and intuitive fashion. In par-

ticular, the need to find broader patterns in the reasoning behaviour of experts is

removed by the direct application of stored experience to future problem solving.

Page 220: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

9. conclusions 209

The CABAROST system described in thesis represents rostering domain knowl-

edge using case-based reasoning. Of course, some of the domain knowledge still resides

in the definitions of the decision variables and of the customisable constraint types.

But an attempt has been made to limit these to representations of static domain

knowledge. The knowledge about how the constraints and instantiations of decision

variables interact to produce satisfactory solutions is collected and reused through

the case-base. We have shown that it is possible to accurately imitate the decisions

of rostering experts by comparing the decision produced by CABAROST with those

made by rostering experts. Furthermore, the high classification accuracy achieved by

CABAROST once trained demonstrates that this form of knowledge representation

is both valid and successful.

When CABAROST is used in conjunction with meta-heuristic approaches the

situation becomes more mixed. Some knowledge is represented within the meta-

heuristic’s objective function. However, in the approaches described in this thesis

this is kept to a minimum, and in general such objective functions are used to merely

guide the search process towards rosters which violate few constraints. Importantly,

the results of experiments on the tabu search and memetic algorithm hybrids show

that it is possible to solve problems successfully without relying solely on the definition

of the objective function.

9.1.4 Adapting the Domain Model

Most real-world problems are not static in nature. This is particularly true of per-

sonnel rostering problems in modern organisations, where management requirements

change rapidly to react to changes in the types of service that must be provided.

Automated rostering methods are generally poor at adapting to these changes, often

due to the highly instance-specific nature of the problem solving knowledge used.

Significant progress has been made towards designing systems which allow users to

change static problem knowledge, such as staff characteristics, planning periods, and

shift types. But there is still a need for methods which allow more flexibility for

representing reasoning knowledge.

Page 221: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

9. conclusions 210

CABAROST provides a more adaptable model for representing personnel roster-

ing problems. At the most basic level CABAROST can be adapted to changes in

the problem domain through re-training - either starting from an empty case-base,

or by defining the new constraints and training the case-base specifically for these.

The modular nature of the problem representation allows decision makers to remove

cases which are no longer valid. These could be individual cases representing one-off

decisions. Alternatively, they could be groups of cases pertaining to a particular con-

straint type which is no longer used. This entire process is facilitated by the intuitive

knowledge acquisition tools which case-based reasoning methods naturally provide.

The memetic algorithm described in Chapter 8 provides further scope for problem

adaption, in more of an ‘on-line’ sense. The thresholds on the acceptable distance

of generated repairs from those retrieved from the case-base can, over time, act as

an automatic method for detecting a shift in the nature of the problem domain. In

circumstances where the threshold is exceed CABAROST interactively requests new

domain knowledge in the form of cases. As a result, any gaps in the knowledge stored

in the case-base which have appeared due to changes in the problem domain are filled.

The ability of the case-base to learn from failure also helps CABAROST to adapt.

Cases which start to fail regularly may do so because they are no longer valid for new

problems. If this happens often enough then these cases will naturally fall out of

use, and can be removed from the case-base once their penalty weight increases to a

pre-defined level.

9.1.5 Reacting to Unexpected Events

In organisations such as hospitals the absence of staff members due to unexpected

illness or unplanned leave can have a severely detrimental and even dangerous effect

on the quality of service provided. Sudden increases in the demand can also require

that more staff are assigned on-shifts. Quick manual changes to working rosters are

often made whereby other staff members are called in to work on a ‘last-minute’

basis, or temporary staff are borrowed from floating pools. This may be acceptable

if it happens very rarely, but regular adjustments to rosters can cause violations to

Page 222: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

9. conclusions 211

longer term temporal constraints which will often remain unresolved. Such violations

have a negative effect on the morale of the remaining staff members.

CABAROST provides a decision support tool which can help nursing managers re-

solve such staffing crises. The removal of a staff member from the roster will inevitably

produce violations of coverage constraints, and CABAROST will be able to suggest

repairs for these based on the expert’s previous rostering decisions. Any further vio-

lations, generated as a result of the repair of the coverage violation, can be dealt with

subsequently either interactively or through the use of a hybrid CABAROST/meta-

heuristic approach.

9.2 Method Evaluation

The CABAROST system is significantly different to the approaches discussed in the

literature. Many of the qualitative operational advantages of the system have been

discussed in the previous sections. In this thesis the performance of the system

on a set of real-world rostering problems from a UK hospital have been measured.

CABAROST proved to be capable of imitating the rostering decisions made by nurs-

ing managers reliably. Additionally, hybrid meta-heuristic methods incorporating

CABAROST generated repairs out-performed those which make use of random re-

pair generation strategies for all of the QMC data. It is clear that the CBR-based

methods described in this thesis are capable of solving a complex real-world rostering

problem.

At the time of writing this thesis the CABAROST method is being implemented

at the Beaumont Hospital in Dublin, Republic of Ireland. This hospital is in the

process of implementing an institution-wide, web-based, rostering database for the

wide variety of different rostering problems in different wards. The CABAROST

method will be incorporated with this system, initially as an interactive decision

support system for the nurse managers in each ward. Later, the hybrid meta-heuristic

methods will be implemented to allow central management to automatically generate

rosters using the case-bases trained by the ward managers.

A great deal of work has been carried out to make sure that the problem model is as

Page 223: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

9. conclusions 212

general as possible through the analysis of the problem descriptions of many research

papers in the literature. Collaborative research was carried out with researchers at

Kaho St. Lieven, in Gent, Belgium, to determine the portability of problems between

the CABAROST based system, and the successful commercial nurse rostering system

ANROM [52, 53, 54, 55, 235], which is in use in many Belgian hospitals. In general, it

was possible to model problems using both systems. However, the following problems

were discovered with regards to comparing the performance of the systems away from

the domain experts who defined the problems:

- Domain Knowledge. Reasoning knowledge is represented largely in the case-base

in CABAROST, but largely in the objective function in ANROM. Transferring

knowledge between these two representations was highly problematic - it was

essentially equivalent to the knowledge elicitation bottle-neck described earlier

for problem modelling in general. Consequently, the models created by the

use of each system for the other’s problems were heavily influenced by the

interpretation and bias of the researchers.

- Assessment of Roster Quality : No standardised method exists for comparing the

quality of rosters produced by different methods. In ANROM the objective

function represented the complex interactions and relative importance of the

constraints. Many of these problem characteristics are represented in the case-

base in CABAROST, reducing the objective function used by the meta-heuristic

hybrids to a guiding role.

Comparing meta-heuristic methods for rostering and other scheduling problems

has traditionally been a simple matter of applying them to problems using the same

objective function to measure quality. However, this approach is not possible when the

objective functions used by methods are necessarily different for the same problems.

In fact, to argue that these are ‘the same problems’ is certainly erroneous in a strictly

mathematical sense. Clearly, real-world problems can be represented in many ways

depending on the solution approach adopted.

Consequently, two research tasks traditionally carried out by operational researchers

Page 224: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

9. conclusions 213

cannot be performed here. The application of CABAROST to problems from the lit-

erature was not possible because domain experts were not available to provide the

relevant case-by-case examples of their rostering behaviour. Likewise, other methods

from the literature could not be directly applied to the problem at the QMC, which

was represented by the knowledge contained in the case-base. The process of ap-

plying these methods to ‘translated’ versions of the problems would re-introduce the

modelling deficiencies which CABAROST was engineered to avoid, and the solutions

produced by the methods could not be compared to those produced by CABAROST

due to incompatibilities in the objective functions.

This problem of accurate comparison of dissimilar methods needs to be urgently

addressed by the academic scheduling community. A detailed statistical analysis of

solutions to determine their quality, perhaps in a multi-objective sense, could be one

way forward. As a first step, a realisation of the fact that blindly applying identical

objective functions for use in different methods is not a valid basis for comparison is

essential.

9.3 Applicability to Other Domains

The case-based reasoning principles used in the CABAROST method could be applied

to many scheduling and other combinatorial optimisation problems. To facilitate the

development of such methods it is useful to identify the key objects and processes

which must be defined. These are:

- Constraints/Violations : The definition of constraints is a concept common to most

methods for solving combinatorial optimisation problem. To apply case-based

reasoning it would be necessary to represent the structural characteristics of

both constraints and their violations. This would include information such as

the type of constraint, the type of domain objects involved (e.g. jobs, resources,

routes), and the requirements dictated by the constraint in terms of those ob-

jects.

- Repair Operations : The operations used to repair constraint violations must be de-

Page 225: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

9. conclusions 214

fined. These may be elicited from domain experts by determining how manual

changes to solutions are made. Alternatively, they may be determined through

analysis of the mathematical characteristics of the problem. Again, the struc-

tural features of these repairs must be determined in terms of the domain ob-

jects.

- Generalisation: Key to the success of a case-based reasoning system would be the

translation of domain object characteristics into objects suitable for storing in

the case-base. To do this, objects must be abstracted out of their particular

problem instance by, for example, removing resource identification labels. One

principle must be adhered to when designing object generalisations, namely

that no representation of a case should be applicable to only one instance of a

problem.

- Feature Indices : After the structural characteristics of domain objects have been

identified the feature index set must be established for each type of constraint

violation. Initially, a large set of features could be identified through analysis

of the problem and interviews with domain experts. In order to reduce the size

of this large set to computationally feasible number of features, and to ensure

that the features are relevant, the feature selection and weighting algorithm

from Chapter 6 could be used. This algorithm would not need to be adapted

for new problems - it could be used exactly as it is described in this thesis.

Alternatively, other methods for improving classification accuracy of case-bases

by reducing the size of the feature space could be employed.

- Repair Adaptation Rules : The cases retrieved from the case-base must be adapted

to the context of the problem instance being solved. In particular, the gen-

eralised objects used to describe violations and repairs in the case-base must

be combined with the information from the violation being solved in a sensible

way. Adaptation rules must be designed so that they produce repairs that will

have a measurable effect on the constraint violation in the problem instance,

but they must not be too restrictive in their interpretation of the cases.

Page 226: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

9. conclusions 215

A case-based method which addresses these five issues could use the retrieval and

adaptation algorithms described in this thesis with very few alterations. The devel-

opment of such methods should be the focus of future research into the application

of case-based reasoning to combinatorial optimisation problems.

9.4 Future Work

This thesis has described an exploratory attempt at applying case-based reasoning

methodology to the problem of producing personnel rosters which has produced some

successful outcomes. However, a large number of the different technologies which can

be used to build CBR systems would be very applicable to rostering problems and

should be explored. In this section some suggestions for promising research directions

are described.

A more systematic approach to case-base maintenance should be developed to

ensure that the quality, consistency, and coverage of the case-base are optimal. It

may be necessary to develop a quantitative measure of the success of a repair for a

constraint violation in order to provide a direction for the improvement of solution

quality. More complex representations of case failure could be used to purge the

case-base of erroneous cases, perhaps by interactively allowing the decision maker to

define failure from their point of view.

More constraint types could be added to CABAROST increasing its applicability

to a wider range of problems. In particular, constraints which take into account his-

torical data should be implemented. The mathematical representation of constraints

could be extended to better represent the subjective nature of personnel rostering

through the use of fuzzy reasoning. One obvious area for the application of fuzzy rea-

soning is for coverage constraints. Fuzzy sets could be used to represent the expert’s

minimum, desired, and maximum preference for the number of staff needed at any

time. Such definitions could be extended to allow for fuzzy representation of violation

similarity, and of the distance between generated and retrieved repairs.

One of the most promising directions for future research is the hybridisation of

CABAROST, and other case-based reasoning approaches in general, with traditional

Page 227: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

9. conclusions 216

meta-heuristic and constraints satisfaction methods. CBR provides an excellent tool

for increasing the level of abstraction of methods for solving combinatorial optimisa-

tion problems. In particular, using CBR to help meta-heuristic methods avoid local

optima in the solution space could greatly improve their speed and reliability.

9.5 Dissemination

The research described in this thesis has been disseminated through conferences and

publications in both the artificial intelligence and operational research fields. Follow-

ing is a list of the publications and conference abstracts which have been produced.

9.5.1 Journal Papers

[37] G R Beddoe and S Petrovic. Selecting and weighting features using a genetic

algorithm in a case-based reasoning approach to personnel rostering. Accepted

for publication in the European Journal of Operational Research, November

2004;

Cases in the case-based approach to nurse rostering consist of descriptions of

constraint violations and the repairs that were used to solve them. Constraint

violations are represented by sets of feature indices, which describe their char-

acteristics which are relevant to the type of problem solving which they will

be used for. Similarity between violations (and therefore cases) is measured

using a Euclidean distance function which is weighted according to the relative

importance of each feature index. In this paper, the problem of automatically

selecting and weighting feature indices is investigated. A genetic algorithm is

developed which simultaneously searches for good quality feature selections and

weightings according to the classification accuracy of the case-base. This algo-

rithm significantly increases the performance of the case-base and reduces the

memory requirements per case by removing irrelevant and erroneous feature

indices. The results also provide an insight into the nature of manual nurse ros-

tering, by highlighting the roster characteristics which are used when making

Page 228: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

9. conclusions 217

rostering decisions.

[35] G R Beddoe and S Petrovic. Case-based reasoning for combinatorial optimisa-

tion problems. Submitted to Artificial Intelligence, November 2004;

In this paper the case-based approach is discussed in terms of its applicabil-

ity to the wider field of combinatorial optimisation problems, in particular to

those which can be modelled as constraint optimisation problems. The paper

focuses on three key issues: (a) the generalisation and abstraction of domain

knowledge to ensure cases are applicable to a wide variety of potential future

problems; (b) choosing the order in which to repair constraint violations; and

(c) learning from the failure of reasoning episodes; (d) interactive training of the

case-base during meta-heuristic search. A memetic algorithm is described which

is a hybridisation of a genetic algorithm and the case-based repair generation

system. This evolutionary approach generates populations of repair sequences

from the case-base and then searches for the optimal ordering of the repairs

using crossover, mutation, and selection operators. At each generation a small

number of the remaining constraint violations in the roster are repaired, thus in-

creasing the length of the repair sequences. Learning from failure is addressed

by monitoring the repair sequences for constraint violations which reappear.

When a constraint violations reappears in a roster the case which was origi-

nally used to solve it is deemed to have failed. This failure is represented in

the case-base by a case-weighting strategy, which penalises poorly performing

cases. The case-base can be continuously trained throughout the use of the

memetic algorithm by employing acceptance thresholds which detect when the

case-based repair generation can not confidently produce repairs. The user can

be prompted to verify or correct the repairs generated throughout the search

process. The memetic algorithm is tested on a series of monthly data from the

QMC. The results show that the use of case-failure weighting and interactive

training strategies increases the quality of the produced rosters over time.

[36] G R Beddoe and S Petrovic. Combining case-based reasoning with tabu search

Page 229: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

9. conclusions 218

for personnel rostering problems. Submitted to Annals of Operations Research

special issue on Personnel Scheduling and Planning, January 2004;

This paper investigates the use of case-based reasoning to improve the perfor-

mance of meta-heuristic algorithms. A basic framework for iteratively solving

constraint optimisation problems is presented. A series of algorithms are de-

scribed which use combinations of the following operators: case-based or random

repair generation, tabu lists, and objective functions. The results of experiments

on the data from the QMC show that it is possible to model significant domain

requirements by representing it as episodic knowledge in the case-base. This

reduces the need to describe these requirements through definitions of objec-

tive functions alone. The algorithms which used case-based repair generation

performed significantly better than those which generated repair to constraint

violations randomly. The use of tabu lists and objective functions complimented

the case-based repair generation methods, resulting in an algorithm capable of

producing good quality nurse rosters with very few remaining constraint viola-

tions.

[33] G R Beddoe, P De Causmaecker, S Petrovic, G Vanden Berghe Comparison

of methods for nurse rostering. In preparation for submission to Journal of

Scheduling;

[189] S Petrovic, G R Beddoe, and G Vanden Berghe Case-based reasoning in em-

ployee rostering: learning repair strategies from domain experts. In preparation

for submission to Applied Artificial Intelligence;

9.5.2 Conference Papers

[34] G R Beddoe and S Petrovic A novel approach to finding feasible solutions to per-

sonnel rostering problems. In Proceedings of the 14th Annual Conference of the

Production and Operations Management Society (POM), Savannah, Georgia,

United States, April 2003;

The problem of finding rosters which do not violate any constraint violations

Page 230: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

9. conclusions 219

is investigated in this paper. The case-based methods for repairing constraint

violations in rosters are described. These methods can be applied to rosters

iteratively in an attempt to solve every violation present. A number of iterative

algorithms are presented which combine the case-based repair generation with

the meta-heuristic concept of a tabu list. The results of experiments from the

QMC show that algorithms which use case-based repair generation perform

significantly better than those which generate such repairs randomly.

[188] S Petrovic, G R Beddoe, and G Vanden Berghe Storing and adapting repair ex-

periences in employee rostering, Practice and Theory of Automated Timetabling

IV - Selected Papers from PATAT 2002, Lecture Notes in Computer Science Se-

ries LNCS2740, Springer-Verlag, 2003, ISBN 3-540-40699-9, pp 149-166;

This paper describes a mathematical framework for repairing constraint viola-

tions in personnel rosters using case-based reasoning. Retrieval and adaptation

algorithms are described in detail. The paper describes the notion of violation

and repair similarity using a weighted similarity measure. Experiments on the

QMC data showed that the case-base performance improves as the number of

cases it contains increases. Some initial results of experiments with variable

weighting are described, which give some insight into the types of roster char-

acteristics which are used when making rostering decisions.

9.5.3 Abstracts

- CORS/INFORMS Joint International Meeting 2004, Banff, Alberta, Canada, 16th

- 19th May,2004. G R Beddoe, T E Curtois, P De Causmaecker, S Petrovic, G

Vanden Berghe. A Model for the Nurse Rostering Problem

- EURO/INFORMS Joint International Meeting 2003, Istanbul, Turkey, 6th - 10th

July, 2003. G R Beddoe and S Petrovic. Determining Feature Weights in a

Case-Based Reasoning Approach to Personnel Rostering

- 4th International Conference on the Practice and Theory of Automated Timetabling,

KaHo St.-Lieven, Gent, Belgium, 21st-23rd August, 2002. S Petrovic and G R

Page 231: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

9. conclusions 220

Beddoe and G Vanden Berghe. Storing and adapting repair experiences in per-

sonnel rostering

- 16th Triennial Conference of the International Federation of Operational Research

Societies, University of Edinburgh, Edinburgh, UK, July 7th-12th, 2002. S

Petrovic and G R Beddoe and G Vanden Berghe. Case-based reasoning in

employee rostering: learning repair strategies from domain experts

- EPSRC Inter-disciplinary Scheduling Network PhD Student Workshop on Schedul-

ing, University of Nottingham, 8th April, 2002. G R Beddoe. A case-based

reasoning approach to personnel rostering

Page 232: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

221

Appendix A

Violation Feature Indices

Table A.1: Cover constraint violation feature indices

1. Violation magnitude2. Number of assigned hours on the day of the viola-

tion (all nurses)3. Number of assigned hours on the day of the viola-

tion (NurseType)4. Number of unassigned hours on the day of the vi-

olation (all nurses)5. Number of unassigned hours on the day of the vi-

olation (NurseType)6. Qualification cover array for UNASSIGNED shifts

on the day of the violation7. Qualification cover array for OFF shifts on the day

of the violation8. Specialty training cover array for UNASSIGNED

shifts on the day of the violation9. Specialty training cover array for OFF shifts on

the day of the violation10. Specialty training cover array for UNASSIGNED

shifts for 4 days around the violation11. Specialty training cover array for OFF shifts for 4

days around the violation

Page 233: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

a. violation feature indices 222

Table A.2: HardRequest constraint violation feature indices

1. Number of assigned hours on the day of the viola-tion (all nurses)

2. Number of assigned hours on the day of the viola-tion (NurseType)

3. Number of unassigned hours on the day of the vi-olation (all nurses)

4. Number of unassigned hours on the day of the vi-olation (NurseType)

5. Shift pattern for the nurse for 4 days around theviolation

6. On-off pattern for the nurse for 4 days around theviolation

7. Qualification cover array for UNASSIGNED shiftson the day of the violation

8. Qualification cover array for OFF shifts on the dayof the violation

9. Specialty training cover array for UNASSIGNEDshifts on the day of the violation

10. Specialty training cover array for OFF shifts onthe day of the violation

11. Specialty training cover array for UNASSIGNEDshifts for 4 days around the violation

12. Specialty training cover array for OFF shifts for 4days around the violation

Page 234: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

a. violation feature indices 223

Table A.3: MaxDaysOn constraint violation feature indices

1. Violation magnitude2. Percentage of assigned hours over the period of the

violation (all nurses)3. Percentage of assigned hours over the period of the

violation (NurseType)4. Shift pattern for the nurse over the period of the

violation5. On-off pattern for the nurse over the period of the

violation6. Average qualification cover array for UNAS-

SIGNED shifts over the period of the violation7. Average qualification cover array for OFF shifts

over the period of the violation8. Average specialty training cover array for UNAS-

SIGNED shifts over the period of the violation9. Average specialty training cover array for OFF

shifts over the period of the violation

Table A.4: MaxHours constraint violation feature indices

1. Violation magnitude2. Percentage of assigned hours over the period of the

violation (all nurses)3. Percentage of assigned hours over the period of the

violation (NurseType)4. Shift pattern for the nurse over the period of the

violation5. On-off pattern for the nurse over the period of the

violation6. Average qualification cover array for UNAS-

SIGNED shifts over the period of the violation7. Average qualification cover array for OFF shifts

over the period of the violation8. Average specialty training cover array for UNAS-

SIGNED shifts over the period of the violation9. Average specialty training cover array for OFF

shifts over the period of the violation

Page 235: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

a. violation feature indices 224

Table A.5: MinDaysOn constraint violation feature indices

1. Violation magnitude2. Percentage of assigned hours over the period of the

violation (all nurses)3. Percentage of assigned hours over the period of the

violation (NurseType)4. Shift pattern for the nurse over the period of the

violation5. On-off pattern for the nurse over the period of the

violation6. Average qualification cover array for UNAS-

SIGNED shifts over the period of the violation7. Average qualification cover array for OFF shifts

over the period of the violation8. Average specialty training cover array for UNAS-

SIGNED shifts over the period of the violation9. Average specialty training cover array for OFF

shifts over the period of the violation

Table A.6: MinHours constraint violation feature indices

1. Violation magnitude2. Percentage of assigned hours over the period of the

violation (all nurses)3. Percentage of assigned hours over the period of the

violation (NurseType)4. Shift pattern for the nurse over the period of the

violation5. On-off pattern for the nurse over the period of the

violation6. Average qualification cover array for UNAS-

SIGNED shifts over the period of the violation7. Average qualification cover array for OFF shifts

over the period of the violation8. Average specialty training cover array for UNAS-

SIGNED shifts over the period of the violation9. Average specialty training cover array for OFF

shifts over the period of the violation

Page 236: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

a. violation feature indices 225

Table A.7: SingleNight constraint violation feature indices

1. Percentage of assigned hours over the period of theviolation (all nurses)

2. Percentage of assigned hours over the period of theviolation (NurseType)

3. Shift pattern for the nurse over the period of theviolation

4. On-off pattern for the nurse over the period of theviolation

5. Qualification cover array for UNASSIGNED shiftsover the period of the violation

6. Qualification cover array for OFF shifts over theperiod of the violation

7. Qualification cover array for NIGHT shifts over theperiod of the violation

8. Specialty training cover array for UNASSIGNEDshifts over the period of the violation

9. Specialty training cover array for OFF shifts overthe period of the violation

10. Specialty training cover array for NIGHT shiftsover the period of the violation

Page 237: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

a. violation feature indices 226

Table A.8: SoftRequest constraint violation feature indices

1. Number of assigned hours on the day of the viola-tion (all nurses)

2. Number of assigned hours on the day of the viola-tion (NurseType)

3. Number of unassigned hours on the day of the vi-olation (all nurses)

4. Number of unassigned hours on the day of the vi-olation (NurseType)

5. Shift pattern for the nurse for 4 days around theviolation

6. On-off pattern for the nurse for 4 days around theviolation

7. Qualification cover array for UNASSIGNED shiftson the day of the violation

8. Qualification cover array for OFF shifts on the dayof the violation

9. Specialty training cover array for UNASSIGNEDshifts on the day of the violation

10. Specialty training cover array for OFF shifts onthe day of the violation

11. Specialty training cover array for UNASSIGNEDshifts for 4 days around the violation

12. Specialty training cover array for OFF shifts for 4days around the violation

Page 238: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

a. violation feature indices 227

Table A.9: Succession constraint violation feature indices

1. Percentage of assigned hours over the period of theviolation (all nurses)

2. Percentage of assigned hours over the period of theviolation (NurseType)

3. Average qualification cover array for UNAS-SIGNED shifts over the period of the violation

4. Average qualification cover array for OFF shiftsover the period of the violation

5. Qualification training cover array for the assignedshift on day 1 of the violation

6. Qualification training cover array for the assignedshift on day 1 of the violation

7. Average specialty cover array for UNASSIGNEDshifts over the period of the violation

8. Average specialty cover array for OFF shifts overthe period of the violation

9. Specialty training cover array for the assigned shifton day 2 of the violation

10. Specialty training cover array for the assigned shifton day 2 of the violation

Table A.10: WeekendBalance constraint violation feature indices

1. Violation magnitude2. Percentage of assigned hours over weekend days

(all nurses)3. Percentage of assigned hours over weekend days

(NurseType)4. Shift pattern for the nurse over weekend days5. On-off pattern for the nurse over weekend days6. Average qualification cover array for UNAS-

SIGNED shifts over weekend days7. Average qualification cover array for OFF shifts

over weekend days8. Average specialty training cover array for UNAS-

SIGNED shifts over weekend days9. Average specialty training cover array for OFF

shifts over weekend days

Page 239: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

a. violation feature indices 228

Table A.11: WeekendFill constraint violation feature indices

1. Percentage of assigned hours over the period of theviolation (all nurses)

2. Percentage of assigned hours over the period of theviolation (NurseType)

3. Shift pattern for the nurse over the period of theviolation

4. On-off pattern for the nurse over the period of theviolation

5. Qualification cover array for UNASSIGNED shiftsover the period of the violation

6. Qualification cover array for OFF shifts over theperiod of the violation

7. Specialty training cover array for UNASSIGNEDshifts over the period of the violation

8. Specialty training cover array for OFF shifts overthe period of the violation

Table A.12: WeekendsInARow constraint violation feature indices

1. Violation magnitude2. Percentage of assigned hours over weekend days

(all nurses)3. Percentage of assigned hours over weekend days

(NurseType)4. Shift pattern for the nurse over weekend days5. On-off pattern for the nurse over weekend days6. Average qualification cover array for UNAS-

SIGNED shifts over weekend days7. Average qualification cover array for OFF shifts

over weekend days8. Average specialty training cover array for UNAS-

SIGNED shifts over weekend days9. Average specialty training cover array for OFF

shifts over weekend days

Page 240: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

229

Appendix B

Repair Adaptation Rules

Given ParamSet = {NurseType, day, shift},and generalised repair 〈Reassign, {NurseTypeβ, newShiftβ, oldShiftβ}〉

cType nursec dayc shiftcCover {nursei ∈ N : {day} {shift}

NurseTypei = NurseType,si,day = oldShiftβ}

Figure B.1: Adaptation rule for generating Reassign repairs of Cover violations

Page 241: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

b. repair adaptation rules 230

Given ParamSet = {day, nursei},and generalised repair 〈Reassign, {NurseTypeβ, newShiftβ, oldShiftβ}〉

cType nursec dayc shiftcHardRequest {nursei} {day} {pi,day}

SingleNight {nursei} {d ∈ [day − 1, day + 1] : {shift}si,d = oldShiftβ}

SoftRequest {nursei} {day} {pi,day}

Succession {nursei} {d ∈ [day, day + 1] : {shift}si,d = oldShiftβ}

WeekendSplit {nursei} {d ∈ [day − 1, day + 1] : {shift}d is a weekend day,si,d = oldShiftβ}

Figure B.2: Adaptation rules for generating Reassign repairs of HardRequest, Sin-gleNight, SoftRequest, Succession, and WeekendSplit violations

Given ParamSet = {startDay, numDays, nursei},and generalised repair 〈Reassign, {NurseTypeβ, newShiftβ, oldShiftβ}〉

cType nursec dayc shiftcMaxDaysOn {nursei} {d ∈ [startDay, startDay + numDays− 1] : {shift}

si,d = oldShiftβ}

MaxHours {nursei} {d ∈ [startDay, startDay + numDays− 1] : {shift}si,d = oldShiftβ}

MinDaysOn {nursei} {d ∈ [startDay − 1, startDay + numDays] : {shift}si,d = oldShiftβ}

MinHours {nursei} {d ∈ [startDay, startDay + numDays− 1] : {shift}si,d = oldShiftβ}

Figure B.3: Adaptation rules for generating Reassign repairs of MaxDaysOn, Max-Hours, MinDaysOn, and MinHours violations

Page 242: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

b. repair adaptation rules 231

Given ParamSet = {day, wknds, nursei},and generalised repair 〈Reassign, {NurseTypeβ, newShiftβ, oldShiftβ}〉

cType nursec dayc shiftcWeekendBalance {nursei} {d ∈ [day − 1, {shift}

day + (wknds− 1) ∗ 7 + 1] :d is a weekend day,si,d = oldShiftβ}

WeekendsInARow {nursei} {d ∈ [day − 1, {shift}day + (wknds− 1) ∗ 7 + 1] :d is a weekend day,si,d = oldShiftβ}

Figure B.4: Adaptation rules for generating Reassign repairs of WeekendBalanceand WeekendsInARow violations

Given ParamSet = {NurseType, day, shift},and generalised repair 〈Swap, {NurseType1β, NurseType2β, shift1β, shift2β}〉

cType nursec1 nursec2 dayc

Cover {nursei ∈ N : {nursei ∈ N : {day}NurseTypei = NurseType1β, NurseTypei = NurseType2β,si,day = shift1β} si,day = shift2β}

Figure B.5: Adaptation rule for generating Swap repairs of Cover violations

Page 243: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

b. repair adaptation rules 232

Given ParamSet = {day, nursei},and generalised repair 〈Swap, {NurseType1β, NurseType2β, shift1β, shift2β}〉

cType nursec1 nursec2 dayc

HardRequest {nursei} {nursej ∈ N : {day}NurseTypej = NurseType2β,sj,dayc = shift2β}

SingleNight {nursei} {nursej ∈ N : {d ∈ [day − 1, day + 1] :NurseTypej = NurseType2β, si,d = shift1β}sj,dayc = shift2β}

SoftRequest {nursei} {nursej ∈ N : {day}NurseTypej = NurseType2β,sj,dayc = shift2β}

Succession {nursei} {nursej ∈ N : {d ∈ [day, day + 1] :NurseTypej = NurseType2β, si,d = shift1β}sj,dayc = shift2β}

WeekendSplit {nursei} {nursej ∈ N : {d ∈ [day − 1, day + 1] :NurseTypej = NurseType2β, d is a weekend day,sj,dayc = shift2β} si,d = shift1β}

Figure B.6: Adaptation rules for generating Swap repairs of HardRequest, Sin-gleNight, SoftRequest, Succession, and WeekendSplit violations

Page 244: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

b. repair adaptation rules 233

Given ParamSet = {startDay, numDays, nursei},and generalised repair 〈Swap, {NurseType1β, NurseType2β, shift1β, shift2β}〉

cType nursec1 nursec2 dayc

MaxDaysOn {nursei} {nursej ∈ N : {d ∈ [startDay,NurseTypej = NurseType2β, startDay + numDays− 1] :sj,dayc = shift2β} si,d = shift1β}

MaxHours {nursei} {nursej ∈ N : {d ∈ [startDay,NurseTypej = NurseType2β, startDay + numDays− 1] :sj,dayc = shift2β} si,d = shift1β}

MinDaysOn {nursei} {nursej ∈ N : {d ∈ [startDay − 1,NurseTypej = NurseType2β, startDay + numDays] :sj,dayc = shift2β} si,d = shift1β}

MinHours {nursei} {nursej ∈ N : {d ∈ [startDay,NurseTypej = NurseType2β, startDay + numDays− 1] :sj,dayc = shift2β} si,d = shift1β}

Figure B.7: Adaptation rules for generating Swap repairs of MaxDaysOn, Max-Hours, MinDaysOn, and MinHours violations

Given ParamSet = {day, wknds, nursei},and generalised repair 〈Swap, {NurseType1β, NurseType2β, shift1β, shift2β}〉

cType nursec1 nursec2 dayc

WeekendBalance {nursei} {nursej ∈ N : {d ∈ [day − 1,NurseTypej = NurseType2β, day + (wknds− 1) ∗ 7 + 1] :sj,dayc = shift2β} d is a weekend day,

si,d = shift1β}

WeekendsInARow {nursei} {nursej ∈ N : {d ∈ [day − 1,NurseTypej = NurseType2β, day + (wknds− 1) ∗ 7 + 1] :sj,dayc = shift2β} d is a weekend day,

si,d = shift1β}

Figure B.8: Adaptation rules for generating Swap repairs of WeekendBalance andWeekendsInARow violations

Page 245: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

b. repair adaptation rules 234

Given ParamSet = {NurseType, day, shift},and generalised repair 〈Switch, {NurseTypeβ, shift1β, shift2β}〉

cType nursec day1c day2c

Cover {nursei ∈ N : {day} {d ∈ [0, p] :NurseTypei = NurseType, d 6= day,si,day = shiftβ} si,d = shift2β}

Figure B.9: Adaptation rule for generating Switch repairs of Cover violations

Given ParamSet = {day, nursei},and generalised repair 〈Switch, {NurseTypeβ, shift1β, shift2β}〉

cType nursec day1c day2c

HardRequest {nursei} {day} {d ∈ [0, p] :d 6= day,si,d = shift2β}

SingleNight {nursei} {d ∈ [day − 1, day + 1] : {d ∈ [0, p] :si,d = shift1β} d 6= day1c,

si,d = shift2β}

SoftRequest {nursei} {day} {d ∈ [0, p] :d 6= day,si,d = shift2β}

Succession {nursei} {d ∈ [day, day + 1] : {d ∈ [0, p] :si,d = shift1β} d 6= day1c,

si,d = shift2β}

WeekendSplit {nursei} {d ∈ [day − 1, day + 1] : {d ∈ [0, p] :si,d = shift1β} d 6= day1c,

si,d = shift2β}

Figure B.10: Adaptation rules for generating Switch repairs of HardRequest, Sin-gleNight, SoftRequest, Succession, and WeekendSplit violations

Page 246: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

b. repair adaptation rules 235

Given ParamSet = {startDay, numDays, nursei},and generalised repair 〈Switch, {NurseTypeβ, shift1β, shift2β}〉

cType nursec day1c day2c

MaxDaysOn {nursei} {d ∈ [startDay, {d ∈ [0, p] :startDay + numDays− 1] : d /∈ [startDay,si,d = shift1β} startDay + numDays− 1],

si,d = shift2β}

MaxHours {nursei} {d ∈ [startDay, {d ∈ [0, p] :startDay + numDays− 1] : d /∈ [startDay,si,d = shift1β} startDay + numDays− 1],

si,d = shift2β}

MinDaysOn {nursei} {d ∈ [startDay − 1, {d ∈ [0, p] :startDay + numDays] : d /∈ [startDay − 1,si,d = shift1β} startDay + numDays],

si,d = shift2β}

MinHours {nursei} {d ∈ [startDay, {d ∈ [0, p] :startDay + numDays− 1] : d /∈ [startDay,si,d = shift1β} startDay + numDays− 1],

si,d = shift2β}

Figure B.11: Adaptation rules for generating Switch repairs of MaxDaysOn, Max-Hours, MinDaysOn, and MinHours violations

Page 247: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

b. repair adaptation rules 236

Given ParamSet = {day, wknds, nursei},and generalised repair 〈Reassign, {NurseTypeβ, newShiftβ, oldShiftβ}〉

cType nursec dayc shiftcWeekendBalance {nursei} {d ∈ [day − 1, {d ∈ [0, p] :

day + (wknds− 1) ∗ 7 + 1] : d is a weekend day,d is a weekend day, d /∈ [day − 1,si,d = shift1β} day + (wknds− 1) ∗ 7 + 1],

si,d = shift2β}

WeekendsInARow {nursei} {d ∈ [day − 1, {d ∈ [0, p] :day + (wknds− 1) ∗ 7 + 1] : d is a weekend day,d is a weekend day, d /∈ [day − 1,si,d = shift1β} day + (wknds− 1) ∗ 7 + 1],

si,d = shift2β}

Figure B.12: Adaptation rules for generating Switch repairs of WeekendBalanceand WeekendsInARow violations

Page 248: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

237

References

[1] A Aamodt. Knowledge acquisition and learning from experience - the role

of case-specific knowledge. In Machine Learning and Knowledge Acquisition;

Integrated Approaches, pages 197–245. Academic Press, 1995.

[2] A Aamodt and E Plaza. Case-base reasoning: foundational issues, method-

ological variations, and system approaches. AI Communications, 7(1):39–59,

1994.

[3] A Abdelghany, G Ekollu, R Narasimhan, and K Abdelghany. A proactive

crew recovery decision support tool for commercial airlines during irregular

operations. Annals of Operations Research, 127:309–331, 2004.

[4] S Abdennadher and H Schlenker. INTERDIP – an interactive constraint based

nurse scheduler. In Proceedings of The First International Conference and Ex-

hibition on The Practical Application of Constraint Technologies and Logic Pro-

gramming, PACLP, 1999.

[5] W J Abernathy, N Baloff, J C Hershey, and S Wandel. A three-stage manpower

planning and scheduling model - a service-sector example. Operations Research,

22:693–711, 1973.

[6] D W Aha. Tolerating noisy, irrelevant and novel attributes in instance-based

learning algorithms. International Journal of Man-Machine Studies, 36:267–

287, 1992.

[7] J Ahmad, M Yamamoto, and A Ohuchi. Evolutionary algorithms for nurse

Page 249: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

REFERENCES 238

scheduling problem. In Proceedings of the 2000 Congress on Evolutionary Com-

putation, pages 196–203, 2000.

[8] H Ahuja and R Sheppard. Computerized nurse scheduling. Industrial Engi-

neering, 7:24–29, 1975.

[9] U Aickelin. Genetic Algorithms for Multiple-Choice Optimisation Problems.

PhD thesis, University of Wales, 1999.

[10] U Aickelin and K A Dowsland. Exploiting problem structure in a genetic algo-

rithm approach to a nurse rostering problem. Journal of Scheduling, 3(3):139–

153, 2000.

[11] U Aickelin and K A Dowsland. An indirect genetic algorithm for a nurse schedul-

ing problem. Computers and Operational Research, 31(5):761–778, 2003.

[12] U Aickelin and P White. Building better nurse scheduling algorithms. Annals

of Operations Research, 128:159–177, 2004.

[13] H K Alfares. Days-off employee scheduling over a three-week work cycle. In

Proceedings of the 3rd International Conference on the Practice and Theory of

Automated Timetabling, pages 251–258, 2000.

[14] H K Alfares. Survey, categorization, and comparison of recent tour scheduling

literature. Annals of Operations Research, 127:145–175, 2004.

[15] B P Allen. Case-based reasoning: business applications. Communications of

the ACM, 37(3):40–42, 1994.

[16] B Arnold and M E Mills. Core 12: implementation of flexible scheduling.

Journal of Nursing Administration, 13:9–14, 1983.

[17] J L Arthur and A Ravindran. A multiple objective nurse scheduling model.

AIIE Transactions, 13(1):55–60, 1981.

Page 250: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

REFERENCES 239

[18] J Atlason, M A Epelman, and S G Henderson. Call center staffing with simula-

tion and cutting plane methods. Annals of Operations Research, 127:333–358,

2004.

[19] G Ausiello, P Crescenzi, G Gambosi, V Kann, A Marchetti-Spaccamela, and

M Protasi. Complexity and approximation: Combinatorial optimization prob-

lems and their approximability properties. Springer, 1999.

[20] M N Azaiez and S S Al Sharif. A 0-1 goal programming model for nurse

scheduling. Computers & Operations Research, In Press, 2005.

[21] C S Azmat, T Hurlimann, and M Widmer. Mixed integer programming to

schedule a single-shift workforce under annualized hours. Annals of Operations

Research, 128:199–215, 2004.

[22] J Bailey. Integrated days off and shift personnel scheduling. Computing and

Industrial Engineering, 9(4):395–404, 1985.

[23] J Bailey and J Field. Personnel scheduling with flexshift models. Journal of

Operations Management, 5(3):327–338, 1985.

[24] R N Bailey, K M Garner, and M F Hobbs. Using simulated annealing and

genetic algorithms to solve staff scheduling problems. Asia-Pacific Journal of

Operational Research, 14:27–43, 1997.

[25] W Bain. Judge. In C K Riesbeck and R C Schank, editors, Inside Case-Based

Reasoning. Northvale NJ, 1989.

[26] N Balakrishnan and R T Wong. A network model for the rotating workforce

scheduling problem. Networks, 20:25–41, 1990.

[27] J F Bard, C Binici, and A H De Silva. Staff scheduling at the United States

Postal Service. Computers & Operations Research, 30:745–771, 2003.

Page 251: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

REFERENCES 240

[28] J F Bard and H W Purnomo. A column generation-based approach to solve the

preference scheduling problem for nurses with downgrading. Socio-Economic

Planning Sciences, In Press, 2004.

[29] J F Bard and H W Purnomo. Preference scheduling for nurses using column

generation. European Journal of Operational Research, In Press, 2004.

[30] J J Bartholdi, J B Orlin, and H D Ratliff. Cyclic scheduling via integer pro-

gramming with circular ones. Operations Research, 28:1074–1085, 1980.

[31] D Beasley, D Bull, and R Martin. An overview of genetic algorithms: Part 1,

fundamentals. University Computing, 15(2):58–69, 1993.

[32] N Beaumont. Scheduling staff using mixed integer programming. European

Journal of Operational Research, 98:473–484, 1997.

[33] G R Beddoe, P De Causmaecker, S Petrovic, and G Vanden Berghe. Comparison

of methods for nurse rostering. In preparation for submission to Journal of

Scheduling, 2005.

[34] G R Beddoe and S Petrovic. A novel approach to finding feasible solutions to

personnel rostering problems. In Proceedings of the 14th Annual Conference of

the Production and Operation Management Society, Savannah, Georgia, United

States, 2003.

[35] G R Beddoe and S Petrovic. Case-based reasoning for combinatorial optimisa-

tion problems. Submitted to Artificial Intelligence, 2004.

[36] G R Beddoe and S Petrovic. Combining case-based reasoning with tabu search

for personnel rostering problems. Submitted to Annals of Operations Research,

2004.

[37] G R Beddoe and S Petrovic. Selecting and weighting features using a genetic

algorithm in a case-based reasoning approach to personnel rostering. Accepted

for publication in the European Journal of Operational Research, 2004.

Page 252: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

REFERENCES 241

[38] F Bellanti, G Carello, F Della Croce, and R Tadei. A greedy-based neigh-

borhood search approach to a nurse rostering problem. European Journal of

Operational Research, 153:28–40, 2004.

[39] J L Bentley. Multidimensional binary search trees used for associative searching.

Communications of the ACM, 18(9):509–517, 1975.

[40] R Bergmann, H Munoz-Avila, and M Veloso. General-purpose case-based plan-

ning: Methods and systems. AI Communications, 9(3):128–137, 1996.

[41] R Bergmann, H Munoz-Avila, M Veloso, and E Melis. Case-based reasoning

applied to planning. In Case-Based Reasoning Technology from Foundation to

Applications, pages 169–200. Springer Verlag, 1998.

[42] R Bergmann and W Wilke. Building and refining abstract planning cases by

change of representation language. Journal of Artificial Intelligence Research,

3:53–118, 1995.

[43] I Berrada, J A Ferland, and P Michelon. A multi-objective approach to nurse

scheduling with both hard and soft constraints. Socio-Economic Planning Sci-

ences, 30/3:183–193, 1996.

[44] L Birnbaum and G Collings. Remindings and engineerings design themes: a

case study in indexing vocabulary. In Proceedings of Second Workshop on Case-

Based Reasoning, 1989.

[45] J T Blake and M W Carter. A goal programming approach to strategic resource

allocation in acute care hospitals. European Journal of Operational Research,

140:541–561, 2002.

[46] R Blau and A Sear. Nurse scheduling with a microcomputer. Ambulance Care

Management, pages 1–13, 1983.

[47] I Blochliger. Modeling staff scheduling problems. A tutorial. European Journal

of Operational Research, 158:533–542, 2004.

Page 253: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

REFERENCES 242

[48] M A Boscheti, A Mingozzi, and S Ricciardelli. An exact algorithm for the sim-

plified multiple depot crew scheduling problem. Annals of Operations Research,

127:177–201, 2004.

[49] D J Bradley and J B Martin. Continuous personnel scheduling algorithms.

Journal of the Society for Health Systems, 2(2):8–23, 1990.

[50] A J Broder. Strategies for efficient incremental nearest neighbour search. Pat-

tern Recognition, 23(1):171–178, 1990.

[51] M J Brusco and L W Jacobs. Cost analysis of alternative formulations for

personnel scheduling in continuously operating organizations. European Journal

of Operations Research, 86:249–261, 1995.

[52] E K Burke, P De Causmaecker, and G Vanden Berghe. A hybrid tabu search

algorithm for the nurse rostering problem. In Selected Papers from the 2nd Asia

Pacific Conference on Simulated Evolution and Learning Volume, volume 1585

of LNAI, pages 187–194. Springer Verlag, 1998.

[53] E K Burke, P De Causmaecker, S Petrovic, and G Vanden Berghe. Fitness

evaluation for nurse scheduling problems. In Proceedings of the 2001 IEEE

Congress on Evolutionary Computation, Seoul, Korea, pages 1139–1146, 2001.

[54] E K Burke, P De Causmaecker, S Petrovic, and G Vanden Berghe. Variable

neighbourhood search for nurse rostering problems. In 4th Metaheuristics In-

ternational Conference, pages 755–760, 2001.

[55] E K Burke, P I Cowling, P De Causmaecker, and G Vanden Berghe. A memetic

approach to the nurse rostering problem. Applied Intelligence, pages 199–214,

2001.

[56] E K Burke, P De Causmaecker, G Vanden Berghe, and H Van Landeghem. The

state of the art of nurse rostering. Journal of Scheduling, 7(6):441–499, 2004.

[57] E K Burke, G Kendall, and E Soubeiga. A tabu-search hyperheuristic for

timetabling and rostering. Journal of Heuristics, 9(6):451–470, 2003.

Page 254: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

REFERENCES 243

[58] E K Burke, B MacCarthy, S Petrovic, and R Qu. Structured cases in case-based

reasoning - re-using and adapting cases for time-tabling problems. Knowledge-

Based Systems, 13:159–165, 2000.

[59] E K Burke, J P Newall, and R F Weare. A memetic algorithm for university

exam timetabling. In 1st International Conference on the Practice and Theory

of Automated Timetabling (ICPTAT’95, Napier University, Edinburgh, UK,

30th Aug - 1st Sept 1995), pages 496–503, 1995.

[60] E K Burke and S Petrovic. Recent research directions in automated timetabling.

European Journal of Operational Research, 140:266–280, 2002.

[61] E K Burke, S Petrovic, and R Qu. Case-based heuristic selection for timetabling

problems. Journal of Scheduling, 2005 In Press.

[62] R N Burns. Manpower scheduling with variable demands and alternate week-

ends off. INFOR, 16:101–111, 1978.

[63] R N Burns and M W Carter. Work force size and single shift schedules with

variable demands. Management Science, 31(5):599–607, 1985.

[64] R N Burns and G J Koop. A modular approach to optimal multiple-shift

manpower scheduling. Operations Research, 35:100–110, 1987.

[65] J L Byrne and R B Potts. Scheduling of toll collectors. Transportation Science,

7:224–245, 1973.

[66] X Cai and K N Li. A genetic algorithm for scheduling staff of mixed skills under

multi-criteria. European Journal of Operational Research, 125:359–369, 2000.

[67] A Caprara, P Toth, and D Vigo. Modeling and solving the crew rostering

problem. Operations Research, 46(6):820–830, 1998.

[68] P Chan and G Weil. Cyclical staff scheduling using constraint logic program-

ming. In Selected Papers from the 3rd international conference on Practice

Page 255: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

REFERENCES 244

and Theory of Automated Timetabling (PATAT), Lecture Notes on Computer

Science, pages 159–175. Springer-Verlag, 2000.

[69] S W Changchien and M Lin. Design and implementation of a case-based rea-

soning system for marketing plans. Expert Systems with Applications, pages

1–11, 2004 (In Press).

[70] B Cheang, H Li, A Lim, and B Rodrigues. Nurse rostering problems - a biblio-

graphic survey. European Journal of Operational Research, 151:447–460, 2003.

[71] J G Chen and T Yeung. Hybrid expert system approach to nurse scheduling.

Computers in Nursing, pages 183–192, 1993.

[72] B M W Cheng, J H M Lee, and J C K Wu. A constraint-based nurse roster-

ing system using a redundant modeling approach. In IEEE 8th International

Conference on Tools with Artificial Intelligence, 1996.

[73] A H W Chun, S H C Chan, G P S Lam, F M F Tsang, J Wong, and D W M Ye-

ung. Nurse rostering at the hospital authority of Hong Kong. In 12th Conference

on Innovative Applications of Artificial Intelligence, pages 951–956, 2000.

[74] F Cooperrider. Staff input in scheduling boosts morale. Hospitals, 54:58–61,

1980.

[75] A Corominas, A Lusa, and R Pastor. Planning annualised hours with a finite

set of weekly working hours and joint holidays. Annals of Operations Research,

128:217–233, 2004.

[76] P Cunningham and A Bonzano. Knowledge engineering issues in developing a

case-based reasoning application. Knowledge-Based Systems, 12:371–379, 1999.

[77] P Cunningham and B Smyth. Case-based reasoning in scheduling: reusing so-

lution components. International Journal of Production Research, 35(11):2947–

2961, 1997.

Page 256: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

REFERENCES 245

[78] P Cunningham, B Smyth, and N Hurley. On the use of CBR in optimisation

problems such as the TSP. In Case-Based Reasoning Research and Development,

LNAI, pages 401–410. Springer-Verlag, 1995.

[79] S J Darmoni, A Fajner, N Mahe, A Leforestier, M Vondracek, O Stelian, and

M Baldenweck. Horoplan: computer-assisted nurse scheduling using constraint-

based programming. Journal of the Society for Health Systems, 5:41–54, 1995.

[80] M Dash and H Liu. Consistency-based search in feature selection. Artificial

Intelligence, 151:155–176, 2003.

[81] P De Causmaecker and G Vanden Berghe. Relaxation of coverage constraints

in hospital personnel rostering. In Selected Papers from the 4th international

conference on Practice and Theory of Automated Timetabling (PATAT), Lecture

Notes on Computer Science, pages 129–147. Springer-Verlag, 2002.

[82] M Dincbas, P van Hentenryck, H Simonis, A Aggoun, and T Graf. The con-

straint logic programming language CHIP. In Fifth Generation Computer Sys-

tems, Tokyo, 1988.

[83] K A Dowsland and J M Thompson. Solving a nurse scheduling problem with

knapsacks, networks and tabu search. Journal of the Operational Research

Society, 51:825–833, 2000.

[84] Kathryn Dowsland. Nurse scheduling with tabu search and strategic oscillation.

European Journal of Operational Research, 106:393–407, 1998.

[85] A Duenas, N Mort, C Reeves, and D Petrovic. Handling preferences using

genetic algroithms for the nurse scheduling problem. In Proceedings of The

First Multidisciplinary International Conference on Scheduling: Theory and

Applications (MISTA), volume 1, pages 180–196, 2003.

[86] F Easton and N Mansour. A distributed genetic algorithm for employee staffing

and scheduling problems. In Conference on Genetic Algorithms, San Mateo,

pages 360–367, 1993.

Page 257: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

REFERENCES 246

[87] B V Dasarathy (Ed). Nearest neighbor(NN) norms: NN pattern classification

techniques. IEEE Computer Society Press, 1991.

[88] G Eitzen, D Panton, and G Mills. Multi-skilled workforce optimisation. Annals

of Operations Research, 127:359–372, 2004.

[89] A T Ernst, H Jiang, M Krishnamoorthy, B Owens, and D Sier. An anno-

tated bibliography of personnel scheduling and rostering. Annals of Operations

Research, 127:21–144, 2004.

[90] A T Ernst, H Jiang, M Krishnamoorthy, and D Sier. Staff scheduling and

rostering: a review of applications, methods and models. European Journal of

Operational Research, 153:3–27, 2004.

[91] P Eveborn and M Ronnqvist. Scheduler - a system for staff planning. Annals

of Operations Research, 128:21–45, 2004.

[92] G Finnie and Z Sun. R5 model for case-based reasoning. Knowledge-Based

Systems, 16:59–65, 2003.

[93] A G Francis and A Ram. The utility problem in case-based reasoning. In

Case-Based Reasoning: Papers from the 1993 Workshop. AAAI Press, 1993.

[94] P Franses and G Post. Personnel scheduling in laboratories. In Selected Papers

from the 4th international conference on Practice and Theory of Automated

Timetabling (PATAT), Lecture Notes on Computer Science, pages 113–119.

Springer-Verlag, 2002.

[95] L S Franz, H M Baker, G K Leong, and T R Rakes. A mathematical model for

scheduling and staffing multiclinic health regions. European Journal of Opera-

tional Research, 41:277–289, 1989.

[96] R Freling, R M Lentink, and A P M Wagelmans. A decision support system

for crew planning in passenger transportation using a flexible branch-and-price

algorithm. Annals of Operations Research, 127:203–222, 2004.

Page 258: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

REFERENCES 247

[97] J H Friedman and J L Bentley. An algorithm for finding best matches in loga-

rithmic expected time. ACM Transactions on Mathematical Software, 3(3):209–

226, 1977.

[98] D Fylstra and L Lasdon. Design and use of Microsoft Excel Solver. Interfaces,

28(5):29–55, 1998.

[99] D Gentner. Structure-mapping: A theoretical framework for analogy. Cognitive

Science, 7(2):155–170, 1983.

[100] F Glover. Tabu search - part I. ORSA Journal of Computing, 1:190–206, 1989.

[101] D Goldberg. Genetic algorithms in search, optimisation, and machine learning.

Addison Wesley, 1989.

[102] J C Goodale and G M Thompson. A comparison of heuristics for assigning

individual employees to labor tour schedules. Annals of Operations Research,

128:47–63, 2004.

[103] H A Guvenir and I Sirin. A genetic algorithm for classification by feature

partitioning. In Proceedings of the Fifth International Conference on Genetic

Algorithms, pages 543–548, 1993.

[104] K J Hammond. CHEF: A model of case-based planning. In Proceedings of the

American Association for Artificial Intelligence, 1986.

[105] K J Hammond. On functionally motivated vocabularies: an apologia. In Pro-

ceedings of the International Joint Conferences on Artificial Intelligence, 1987.

[106] K Hanney and M Keane. Learning adaptation rules from a case-base. In

Advances in Case-Based Reasoning, volume 1168 of Lecture Notes in Artificial

Intelligence, pages 179–192. Springer-Verlag, 1996.

[107] G Hao, K K Lai, and M Tan. A neural network application in personnel schedul-

ing. Annals of Operations Research, 128:65–90, 2004.

Page 259: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

REFERENCES 248

[108] S G Henderson and A J Mason. Rostering by iterating integer programming

and simulation. In 1998 Winter Simulation Conference, pages 677–684, 1998.

[109] D H Hennessy and D Hinkle. Applying case-based reasoning to autoclave load-

ing. IEEE Expert, 7(5):21–26, 1992.

[110] K Heus and G Weil. Constraint programming a nurse scheduling applications. In

Proceedings of the Second International Conference on the Practical Application

of Constraint Technology, pages 115–127, 1996.

[111] A J Higgins and S Postma. Australian sugar mills optimise siding roster to

increase profitability. Annals of Operations Research, 128:235–249, 2004.

[112] J Holland. Adaption in natural and artificial systems. MIT Press, 1975.

[113] N Howe and C Cardie. Examining locally varying weights for nearest neigh-

bor algorithms. In Case-Based Reasoning Research and Development: Second

International Conference on Case-Based Reasoning, pages 455–466, 1997.

[114] J P Howell. Cyclical scheduling of nursing personnel. Hospitals, 40:77–85, 1966.

[115] D Hur, V A Mabert, and K M Bretthauer. Real-time schedule adjustment

decisions: a case study. Omega, 32:333–344, 2004.

[116] CPLEX Optimization Inc. The CPLEX linear optimizer and mixed integer

optimizer with barrier. Technical report, 1993.

[117] ILOG Inc. ILOG Solver user’s manual. Technical report, 1997.

[118] A Ingolfsson, M A Haque, and A Umnikov. Accounting for time-varying queue-

ing effects in workforce scheduling. European Journal of Operational Research,

139:585–597, 2002.

[119] M W Isken. An implicit tour scheduling model with applications in healthcare.

Annals of Operations Research, 128:91–109, 2004.

Page 260: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

REFERENCES 249

[120] M W Isken and W M Hancock. A heuristic approach to nurse scheduling in

hospital units with non-stationary urgent demand, and a fixed staff size. Journal

of the Soceity for Health Systems, 2(2):24–40, 1990.

[121] A Jan, M Yamamoto, and A Ohuchi. Evolutionary algorithms for nurse schedul-

ing problem. In 2000 Congress on Evolutionary Computation, pages 196–203,

2000.

[122] A Jaszkiewicz. A metaheuristic approach to multiple objective nurse scheduling.

Foundations of Computing and Decision Sciences, 22(3):169–183, 1997.

[123] B Jaumard, F Semet, and T Vovor. A generalized linear programming model

for nurse scheduling. European Journal of Operations Research, 107:1–18, 1998.

[124] R C Jelinek and J A Kavois. Nurse staffing and scheduling: past solutions and

future directions. Journal of the Society for Health Systems, 3(4):75–82, 1992.

[125] H Kawanaka, K Yamamoto, T Yoshikawa, T Shinogi, and S Tsuruoka. Genetic

algorithm with the constraints for nurse scheduling problem. In 2001 IEEE

Cogress on Evolutionary Computation, pages 1123–1130, 2001.

[126] M R Keller. Concept learning in context. In Proceedings of the 4th International

Workshop on Machine Learning, pages 482–487, 1987.

[127] J D Kelly Jr and L Davis. A hybrid genetic algorithm for classification. In Pro-

ceedings of the International Joint Conference on Artificial Intelligence, pages

645–650, 1991.

[128] K Kempf, C Le Pape, C Smith, and B R Fox. Issues in the design of AI-based

schedulers: workshop report. AI Magazine, 11:37–46, 1991.

[129] C M Khoong, H C Lau, and L W Chew. Automated manpower rostering:

techniques and experience. International Transactions in Operational Research,

1(3):353–361, 1994.

Page 261: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

REFERENCES 250

[130] K Kim and I Han. Maintaining case-based reasoning systems using a genetic

algorithms approach. Expert Systems with Applications, 21:139–145, 2001.

[131] K Kira and L A Rendell. A practical approach to feature selection. In Pro-

ceedings of the Ninth International Conference on Machine Learning, pages

249–256, 1992.

[132] N Kohl and S Karisch. Airline crew rostering: problem types, modeling, and

optimization. Annals of Operations Research, 127:223–257, 2004.

[133] J L Kolodner. Case-Based Reasoning. Morgan Kaufmann Publishers Inc., 1993.

[134] S C Kong and L F Kwok. A conceptual model of knowledge-based time-tabling

system. Knowledge-Based Systems, 12:81–93, 1999.

[135] M M Kostreva and K S B Jennings. Nurse scheduling on a microcomputer.

Computers and Operational Research, 18(8):731–739, 1991.

[136] D R Kraay and P T Harker. Case-based reasoning for repetitive combinatorial

optimization, Part I: Framework. Journal of Heuristics, 2:55–85, 1996.

[137] D R Kraay and P T Harker. Case-based reasoning for repetitive combinatorial

optimization problems, Part II: Numerical results. Journal of Heuristics, 3:25–

42, 1996.

[138] V Kumar. Algorithms for constraint satisfaction problems: a survey. AI Mag-

azine, 13(1):32–44, 1992.

[139] L I Kuncheva and L C Jain. Nearest neighbor classifier: simultaneous editing

and feature selection. Pattern Recognition Letters, 20:1149–1156, 1999.

[140] H C Lau and S C Lua. Efficient multi-skill crew rostering via constrained sets.

In Second ILOG Solver and Scheduler Users Conference, 1997.

[141] D B Leake. Case-Based Reasoning: Experiences, Lessons, & Future Directions,

chapter CBR in context: the present and future, pages 3–30. AAAI Press, 1996.

Page 262: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

REFERENCES 251

[142] D B Leake, A Kinley, and D Wilson. Case-based CBR: Capturing and reusing

reasoning about case adaptation. International Journal of Expert Systems,

10:197–213, 1997.

[143] D B Leake and D C Wilson. Categorizing case-base maintenance: dimensions

and directions. In Advances in Case-Based Reasoning, volume 1488 of Lecture

Notes in Artificial Intelligence, pages 196–207. Springer-Verlag, 1998.

[144] P Legato and M F Monaco. Human resources management at a marine container

terminal. European Journal of Operational Research, 156:769–781, 2004.

[145] J Li and U Aickelin. A bayesian optimization algorithm for the nurse scheduling

problem. In 2003 Congress on Evolutionary Computation, pages 2149–2156,

2003.

[146] J Li and R Kwan. A fuzzy genetic algorithm for driver scheduling. European

Journal of Operational Research, 147:334–344, 2003.

[147] S J Louis and J McDonnell. Learning with case-injected genetic algorithms.

IEEE Transactions on Evolutionary Computation, 8(4):316–328, 2004.

[148] B L MacCarthy and P Jou. A case-based expert system for scheduling problems

with sequence dependent set up times. In Applications of Artificial Intelligence

in Engineering, pages 89–96. 1995.

[149] B L MacCarthy and P Jou. Case-based reasoning in scheduling. In Proceedings

of the Symposium on Advanced Manufacturing Processes, Systems and Tech-

niques, pages 211–218, 1996.

[150] B L MacCarthy and J R Wilson. The human role and organizational issues

in production planning and scheduling. In Proceedings of the Workshop on

Production Planning and Control, pages 132–136, 1996.

[151] B L MacCarthy and R Ye. Intelligent planning and scheduling: The state of

the art. In The Third International Symposium on Logistics, pages 275–280,

1997.

Page 263: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

REFERENCES 252

[152] C Maier-Rothe and H B Wolfe. Cyclical scheduling and allocation of nursing

staff. Socio-Economic Planning Sciences, 7:471–487, 1973.

[153] G Mani. Some approaches to handle noise in concept learning. International

Journal of Man-Machine Studies, 36:167–181, 1992.

[154] S Markovitch and P D Scott. Information filtering. Selection mechanisms in

learning systems. Machine Learning, 10:113–151, 1993.

[155] A J Mason, D M Ryan, and D M Panton. Integrated simulation, heuristic and

optimisation approaches to staff scheduling. Operations Research, 46(2):161–

175, 1998.

[156] A J Mason and M C Smith. A nested column generator for solving rostering

problems with integer programming. In International Conference on Optimisa-

tion: Techniques and Applications, pages 827–834, 1998.

[157] A Meisels, E Gudes, and G Solotorevski. Employee timetabling, constraint

networks and knowledge-based rules: A mixed approach. In Practice and The-

ory of Automated Timetabling, First International Conference, pages 93–105.

Springer, 1995.

[158] A Meisels, E Gudes, and G Solotorevsky. Combining rules and constraints for

employee timetabling. Intelligent Systems, 12(6):419–439, 1997.

[159] A Meisels and E Kaplansky. Scheduling agents - distributed timetabling prob-

lems. In Selected Papers from the 4th international conference on Practice and

Theory of Automated Timetabling (PATAT), Lecture Notes on Computer Sci-

ence, pages 166–177. Springer-Verlag, 2002.

[160] A Meisels and E Kaplansky. Iterative restart technique for solving timetabling

problems. European Journal of Operational Research, 153:41–50, 2004.

[161] A Meisels and N Lusternik. Experiments on networks of employee timetabling

problems. In E Burke and M Carter, editors, Practice and Theory of Automated

Page 264: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

REFERENCES 253

Timetabling: Selected Papers from PATAT 1997, volume LNCS1408 of Lecture

Notes in Computer Science. Springer, 1998.

[162] H Meyer auf’m Hofe. ConPlan/SIEDAplan: personnel assignment as a problem

of hierarchical constraint satisfaction. In Third International Conference on the

Practical Application of Constraint Technology, pages 257–272, 1997.

[163] H Meyer auf’m Hofe. Nurse rostering as constraint satisfaction with fuzzy con-

straints and inferred control strategies. In Volume on Constraint Programming

and Large Scale Optimisation Problems, Series in Discrete Mathematics and

Theoretical Computer Science. DIMACS, 2000.

[164] H Meyer auf’m Hofe. Solving rostering tasks as constraint optimization. In

Selected Papers from the 3rd international conference on Practice and Theory

of Automated Timetabling (PATAT), Lecture Notes on Computer Science, pages

280–297. Springer-Verlag, 2000.

[165] Z Michalewicz and D B Fogel. How to Solve It: Modern Heuristics. Springer,

2000.

[166] R S Michalski. A theory and methodology of inductive learning. Artificial

Intelligence, 20:111–116, 1983.

[167] H M Millar and M Kiragu. Cyclic and non-cyclic scheduling of 12 h shift nurses

by network programming. European Journal of Operational Research, 104:582–

592, 1998.

[168] H E Miller, W P Pierskalla, and G J Rath. Nurse scheduling using mathematical

programming. Operations Research, 24(5):857–870, 1976.

[169] M L Miller. Implementing self-scheduling. Journal of Nursing Administration,

14(3):33–36, 1984.

[170] S Minton. Qualitative results concerning the utility of explanation-based learn-

ing. Artificial Intelligence, 42:363–391, 1990.

Page 265: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

REFERENCES 254

[171] K Miyashita and K Sycara. CABINS: A framework of knowledge aquisition

and iterative revision for schedule improvement and reactive repair. Artificial

Intelligence, 76:377–426, 1995.

[172] K Miyashita and K Sycara. Improving system performance in case-based itera-

tive optimization through knowledge filtering. In Proceedings of the Internation

Joint Conference on Artificial Intelligence IJCAI’95, pages 371–376, 1995.

[173] K Miyashita, K Sycara, and R Mizoguchi. Modeling ill-structured optimization

tasks through cases. Decision Support Systems, 17(4):345–364, 1996.

[174] K Miyashita, K Sycaras, and R Mizoguchi. Capturing scheduling knowledge

from repair experiences. International Journal of Human-Computer Studies,

41:751–773, 1994.

[175] K Moorman and A Ram. A case-based approach to reactive control for au-

tonomous robots. In Proceedings AAAI Fall Symposium on AI for Real-World

Autonomous Robots, 1992.

[176] M Moz and M Vaz Pato. Solving the problem of rerostering nurse schedules

with hard constraints: new multicommodity flow models. Annals of Operations

Research, 128:179–197, 2004.

[177] H Munoz-Avila, J Paulokat, and S Wess. Controlling a nonlinear hierarchi-

cal planner using case replay. In Advances in Case-Based Reasoning: Second

European Workshop, pages 266–279, 1994.

[178] A Musa and U Saxena. Scheduling nurses using goal-programming techniques.

IEEE, pages 216–221, 1984.

[179] N Musliu, A Schaerf, and W Slany. Local search for shift design. European

Journal of Operational Research, 153:51–64, 2004.

[180] R Narasimhan. An algorithm for single shift scheduling of hierarchical work-

force. European Journal of Operational Research, 96:113–121, 1996.

Page 266: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

REFERENCES 255

[181] K Nonobe and T Ibaraki. A tabu search approach to the constraint satisfaction

problem as a general problem solver. European Journal of Operational Research,

106:599–623, 1998.

[182] M Okada. An approach to the generalised nurse scheduling problem - generation

of a declaritive program to represent institution-specific knowledge. Computers

and Biomedical Research, 25:417–434, 1992.

[183] M Okada and M Okada. Prolog-based system for nursing staff scheduling imple-

mented on a personal computer. Computers and Biomedical Research, 21:53–63,

1988.

[184] D E O’Leary. Verification and validation of case-based systems. Expert Sstems

with Applications, 6:87–100, 1993.

[185] J Ovretveit. Health Service Quality. Blackwell Science, 1992.

[186] I Ozkarahan. Allocation of surgical procedures to operating rooms. Journal of

Medical Systems, 19(4):333–352, 1995.

[187] I Ozkarahan and J E Bailey. Goal programming model subsystem of a flexible

nurse scheduling support system. IIE Transactions, 20(3):306–316, 1988.

[188] S Petrovic, G R Beddoe, and G Vanden Berghe. Storing and adapting re-

pair experiences in employee rostering. In Practice and Theory of Automated

Timetabling IV - Selected Papers from PATAT’2002, volume LNCS2740 of Lec-

ture Notes in Computer Science, pages 149–166. Springer Verlag, 2003.

[189] S Petrovic, G R Beddoe, and G Vanden Berghe. Case-based reasoning in em-

ployee rostering: learning repair strategies from domain experts. In preparation

for submission to Applied Artificial Intelligence, 2004.

[190] S Petrovic, Y Yang, and M Dror. Case-based initialisation for examination

timetabling. In G Kendall, E Burke, and S Petrovic, editors, Proceedings of

the 1st Multidisciplinary International Conference on Scheduling: Theory and

Page 267: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

REFERENCES 256

Applications (MISTA2003), pages 137–154, 2003. Accepted for publication in

the Volume of Selected Papers.

[191] B Porter and R Bareiss. PROTOS: An experiment in knowledge acquisition for

heuristic classification tasks. In Proceedings of the First International Meeting

on Advances in Learning, pages 159–174, 1986.

[192] L Portinale, D Magro, and P Torasso. Multi-modal diagnosis combining case-

based and model-based reasoning: a formal and experimental analysis. Artificial

Intelligence, 158:109–153, 2004.

[193] R Qu. Case-based reasoning for course timetabling problems. PhD thesis, School

of Computer Science, University of Nottingham, 2002.

[194] J R Quinlan. Induction of decision trees. Machine Learning, 1:81–106, 1986.

[195] N J Radcliffe and P D Surry. Formal memetic algorithms. Evolutionary Com-

puting, 865:250–263, 1994.

[196] M L Raymer, W F Punch, E D Goodman, L A Kuhn, and A K Jain. Dimension-

ality reduction using genetic algorithms. IEEE Transactions on Evolutionary

Computation, 4:164–171, 2000.

[197] C R Reeves, editor. Modern Heuristic Techniques for Combinatorial Problems.

Blackwell Scientific Publications, 1993.

[198] M Rekik, J-F Cordeau, and F Soumis. Using benders decomposition to im-

plicitly model tour scheduling. Annals of Operations Research, 128:111–133,

2004.

[199] A M Richter and S Weiss. Similarity, uncertainty and case-based reasoning in

PATDEX. In Automated Reasoning, essays in honour of Woody Bledsoe, pages

249–265. Kluwer, 1991.

[200] E S Rosenbloom and N F Goertzen. Cyclic nurse scheduling. European Journal

of Operational Research, 31:19–23, 1987.

Page 268: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

REFERENCES 257

[201] S Salzberg. A nearest hyperrectangle learning method. Machine Learning,

6:251–276, 1991.

[202] A Schaerf and A Meisels. Solving employee timetabling problems by generalized

local search. In Advances in Artificial Intelligence, Lectures Notes in Artificial

Intelligence, pages 380–389. Springer Verlag, 2000.

[203] R Schank. Dynamic memory: A theory of learning in computers and people.

Cambridge University Press, 1982.

[204] R C Schank. Rules and topics in conversation. Cognitive Science, 1:421–441,

1977.

[205] G Schmidt. Case-based reasoning for production scheduling. International

Journal of Production Economics, 56-57:537–546, 1998.

[206] S Scott, H Osborne, and R Simpson. Assessing case value in case-based reason-

ing with adaptation. In Proceedings of the World Multiconference on Systems,

Cybernetics, and Informatics, 1999.

[207] S Scott, H R Osborne, and R Simpson. Selecting and comparing multiple cases

to maximise result quality after adaptation in case-based adaptive scheduling.

In Selected Papers from EWCBR 2000, LNAI 1898, pages 517–528. Springer-

Verlag, 2000.

[208] S Scott and R Simpson. Case-bases incorporating scheduling constraint dimen-

sions - experiences in nurse rostering. In Advances in Case-Based Reasoning

- EWCBR98, Lecture Notes in Artificial Intelligence, pages 392–401. Springer

Verlag, 1998.

[209] S C K Shiu, D S Yeung, C H Sun, and X Z Wang. Transferring case knowledge to

adaptation knowledge: an approach for case-base maintenance. Computational

Intelligence, 17:295–314, 2001.

[210] R Silvestro and C Silvestro. An evaluation of nurse rostering practices in the

National Health Service. Journal of Advanced Nursing, 32(3):525–535, 2000.

Page 269: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

REFERENCES 258

[211] D Sitompul and S U Randhawa. Nurse scheduling models: a state of the art

review. Journal of the Society for Health Systems, 2(1):62–72, 1990.

[212] D B Skalak. Prototype and feature selection by sampling and random mutation

hill climbing algorithms. In Proceedings of the International Conference on

Machine Learning, pages 293–301, 1994.

[213] L D Smith. The application of an interactive algorithm to develop cyclical

rotational schedules for nursing personnel. INFOR, 14(1):53–70, 1976.

[214] L D Smith, D Bird, and A Wiggins. A computerised system to schedule nurses

that recognises staff preferences. Hospital & Health Service Administration,

pages 19–35, 1979.

[215] L D Smith and A Wiggins. A computer-based nurse scheduling system. Com-

puters and Operations Research, 4(3):195–212, 1977.

[216] B Smyth. Case-base maintenance. In Proceedings of the Eleventh International

Conference on Industrial and Engineering Application sof Artificial Intelligence

and Expert Systems, pages 507–516, 1998.

[217] B Smyth and M T Keane. Remembering to forget: a competence preserving

case deletion policy for CBR systems. In Proceedings of the 14th International

Joint Conference on Artificial Intelligence, pages 377–382, 1995.

[218] B Smyth and E McKenna. Modelling the competence of case-bases. In Pro-

ceedings of the European Workshop on Case Based Reasoning, 1998.

[219] B Smyth and E McKenna. Building compact competent case-bases. In Case-

Based Reasoning Research and Development, Lecture Notes in Artificial Intel-

ligence, pages 343–357. Springer Verlag, 1999.

[220] M S Sodhi and S Norris. A flexible, fast, and optimal modeling approach applied

to crew rostering at London Underground. Annals of Operations Research,

127:259–281, 2004.

Page 270: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

REFERENCES 259

[221] C D Spyropoulos. AI planning and scheduling in the medical hospital environ-

ment. Artificial Intelligence in Medicine, 20:101–111, 2000.

[222] M H Sqalli and E C Freuder. Integration of CSP and CBR to compensate for

incompleteness and incorrectness of models. In Proceedings of the AAAI-98

Spring Symposium on Multimodal Reasoning, Stanford University, March 1998.

[223] P Stone and M Veloso. User-guided interleaving of planning and execution. In

New Directions in AI Planning, pages 103–112. IOS Press, 1996.

[224] E Szelke and R M Kerr. Knowledge-based reactive scheduling. Production

Planning and Control, 5(2):124–145, 1994.

[225] E Szelke and G Markus. A learning reactive scheduler using CBR/L. Computers

in Industry, 33:31–46, 1997.

[226] J Tanomaru. Staff scheduling by a genetic algorithm with heuristic operators.

In Proceedings of the IEEE Conference on Evolutionary Computation, pages

456–461, 1995.

[227] D Teodorovic and P Lucic. A fuzzy set theory approach to the aircrew rostering

problem. Fuzzy sets and systems, 95:261–271, 1998.

[228] W Tharmmaphornphilas and B A Norman. A quantitative method for deter-

mining proper job rotation intervals. Annals of Operations Research, 128:251–

266, 2004.

[229] J M Tien and A Kamiyama. On manpower scheduling algorithms. Society for

Industrial and Applied Mathematics Review, 24(3):275–287, 1982.

[230] S Topaloglu and I Ozkarahan. An implicit goal programming model for the

tour scheduling problem considering the employee work preferences. Annals of

Operations Research, 128:135–158, 2004.

[231] V M Trivedi and D M Warner. A branch and bound algorithm for optimum

allocation of float nurses. Management Science, 22(9):972–981, 1976.

Page 271: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

REFERENCES 260

[232] H Vafaie and K De Jong. Improving the performance of a rule induction system

using genetic algorithms. In Proceedings of the 1st International Conference on

Multi-Strategy Learning, pages 305–315, 1991.

[233] G L Vairaktarakis, X Cai, and C Lee. Workforce planning in synchronous

production systems. European Journal of Operational Research, 136:551–572,

2002.

[234] C Valouxis and E Housos. Hybrid optimization techniques for the workshift

and rest assignment of nursing personnel. Artificial Intelligence in Medicine,

20:155–175, 2000.

[235] G Vanden Berghe. An advanced model and novel meta-heuristic solution meth-

ods to personnel scheduling in healthcare. PhD thesis, University of Gent, 2002.

[236] M M Veloso. Topics in Case-Based Reasoning, chapter PRODIGY/ANALOGY:

Analogical reasoning in general problem solving, pages 33–50. Springer Verlag,

1994.

[237] M M Veloso and J Carbonell. Derivational analogy in PRODIGY. Machine

Learning, 10(3):249–278, 1993.

[238] A Voss. How to solve complex problems with cases. Engineering Applications

of Artificial Intelligence, 9(4):377–384, 1996.

[239] D M Warner and J Prawda. A mathematical programming model for scheduling

nursing personnel in a hospital. Management Science, 19(4):411–422, 1972.

[240] M Warner. Scheduling nursing personnel according to nurse preference: A

mathematical programming approach. Operations Research, 24:842–856, 1976.

[241] M Warner, B J Keller, and S H Martel. Automated nurse scheduling. Journal

of the Society for Health Systems, 2(2):66–80, 1990.

[242] I Watson. Case-based reasoning is a methodology not a technology. Knowledge-

Based Systems, 12:303–308, 1999.

Page 272: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

REFERENCES 261

[243] I Watson and F Marir. Case-based reasoning: A review. The Knowledge Engi-

neering Review, 9/4:327–354, 1994.

[244] J D Weir and E L Johnson. A three-phase approach to solving the bidline

problem. Annals of Operations Research, 127:283–308, 2004.

[245] S Wess, K Althoff, and G Derwand. Using k-d trees to improve the retrieval

step in case-based reasoning. In Proceedings of the European Workshop on

Case-Based Reasoning, 1993.

[246] D Wettschereck and D W Aha. Weighting features. In Proceedings of the First

International Conference on Case-Based Reasoning, 1995.

[247] D Wettschereck, D W Aha, and T Mohri. A review and empirical evaluation

of feature weighting methods for a class of lazy learning algorithms. Artificial

Intelligence Review, 11(1):273–314, 1997.

[248] C A White and G M White. Scheduling doctors for clinical training unit rounds

using tabu optimization. In Selected Papers from the 4th international con-

ference on Practice and Theory of Automated Timetabling (PATAT), Lecture

Notes on Computer Science, pages 120–128. Springer-Verlag, 2002.

[249] H Wolfe and J P Young. Staffing the nursing unit: Part I. Controlled variable

staffing. Nursing Research, 14(3):236–243, 1965.

[250] H Wolfe and J P Young. Staffing the nursing unit: Part II. The multiple

assignment technique. Nursing Research, 14(4):299–303, 1965.

[251] A Wren. Scheduling, timetabling and rostering - a special relationship? In

E Burke and P Ross, editors, Practice and Theory of Automated Timetabling,

volume LNCS 1153 of Lecture Notes in Computer Science, pages 46–75. Springer

Verlag, 1996.

[252] Q Xia and M Rao. Dynamic case-based reasoning for process operation support

systems. Engineering Applications of Artificial Intelligence, 12:343–361, 1999.

Page 273: Case-Based Reasoning in Personnel Rostering · 2015-07-28 · Case-Based Reasoning in Personnel Rostering by Gareth Richard Beddoe, BSc Thesis submitted to The University of Nottingham

REFERENCES 262

[253] S Yan and J Chang. Airline cockpit crew scheduling. European Journal of

Operational Research, 136:501–511, 2002.