Exploiting problem structure in a genetic algorithm approach to a nurse rostering problem
📝 Abstract
There is considerable interest in the use of genetic algorithms to solve problems arising in the areas of scheduling and timetabling. However, the classical genetic algorithm paradigm is not well equipped to handle the conflict between objectives and constraints that typically occurs in such problems. In order to overcome this, successful implementations frequently make use of problem specific knowledge. This paper is concerned with the development of a GA for a nurse rostering problem at a major UK hospital. The structure of the constraints is used as the basis for a co-evolutionary strategy using co-operating sub-populations. Problem specific knowledge is also used to define a system of incentives and disincentives, and a complementary mutation operator. Empirical results based on 52 weeks of live data show how these features are able to improve an unsuccessful canonical GA to the point where it is able to provide a practical solution to the problem
💡 Analysis
There is considerable interest in the use of genetic algorithms to solve problems arising in the areas of scheduling and timetabling. However, the classical genetic algorithm paradigm is not well equipped to handle the conflict between objectives and constraints that typically occurs in such problems. In order to overcome this, successful implementations frequently make use of problem specific knowledge. This paper is concerned with the development of a GA for a nurse rostering problem at a major UK hospital. The structure of the constraints is used as the basis for a co-evolutionary strategy using co-operating sub-populations. Problem specific knowledge is also used to define a system of incentives and disincentives, and a complementary mutation operator. Empirical results based on 52 weeks of live data show how these features are able to improve an unsuccessful canonical GA to the point where it is able to provide a practical solution to the problem
📄 Content
Exploiting problem structure in a genetic algorithm approach to a nurse rostering problem.
Journal of Scheduling, 3 (3): 139-153, 2000.
Uwe Aickelin School of Computer Science University of Nottingham NG8 1BB UK uxa@cs.nott.ac.uk
Kathryn A. Dowsland European Business Management School University of Wales Swansea Singleton Park Swansea SA2 8PP k.a.dowsland@swan.ac.uk
Summary. There is considerable interest in the use of genetic algorithms to solve problems arising in the areas of scheduling and timetabling. However, the classical genetic algorithm paradigm is not well equipped to handle the conflict between objectives and constraints that typically occurs in such problems. In order to overcome this, successful implementations frequently make use of problem specific knowledge. This paper is concerned with the development of a GA for a nurse rostering problem at a major UK hospital. The structure of the constraints is used as the basis for a co-evolutionary strategy using co- operating sub-populations. Problem specific knowledge is also used to define a system of incentives and disincentives, and a complementary mutation operator. Empirical results based on 52 weeks of live data show how these features are able to improve an unsuccessful canonical GA to the point where it is able to provide a practical solution to the problem.
Keywords: manpower scheduling, genetic algorithms, heuristics, co-evolution.
2
Exploiting problem structure in a genetic algorithm approach to a nurse rostering problem.
- Introduction
In recent years, genetic algorithms (GAs) have emerged as a useful tool for the heuristic solution of complex discrete optimisation problems. In particular, there has been considerable interest in their use in the solution of scheduling and timetabling problems, for example [3], [8], [20] and [23]. However, such problems frequently involve conflicting objectives and constraints, which tend to cause problems for the classical GA paradigm. Hence, successful implementations require mechanisms for overcoming these difficulties, and these can often be provided by exploiting problem specific knowledge. This paper examines these issues in the context of a GA approach to the solution of a nurse scheduling problem arising at a major UK hospital. A simple canonical GA is unable to deal with the constraints in the problem, even when violations are penalised adaptively. This is remedied by the incorporation of three types of problem specific knowledge. The most effective of these is a co-evolutionary strategy using co-operating sub-populations. The objective of the research was to investigate the efficacy of such knowledge, rather than to produce the best possible evolutionary algorithm approach to the problem. Nevertheless, the final implementation is able to provide high quality solutions in less than a minute of computation time on a standard Pentium II 200 PC.
The paper starts with a detailed description of the problem and the canonical GA that forms the basis of our algorithm. The shortcomings of this implementation are highlighted and a co-evolutionary strategy, based on a partition of the population into a number of co-operating sub-populations, is developed to overcome these. Empirical results are used to illustrate the efficacy of this approach. We then show how solutions can be further improved by a combination of rewards, penalties and intelligent mutations, designed to guide the search towards promising solutions and to help them fulfil their potential. We conclude with some observations as to the applicability of such modifications to other scheduling problems.
- The Nurse Scheduling Problem and IP Model
Our problem is that of creating weekly schedules for wards of up to 30 nurses at a major UK hospital. These schedules have to satisfy working contracts and meet the demand for given numbers of nurses of different grades on each shift, while being seen to be fair by the staff concerned. The latter objective is achieved by meeting as many of the nurses’ requests as possible and by considering historical information to ensure that unsatisfied requests and unpopular shifts are evenly distributed. The day is partitioned into three shifts: two day shifts known as ‘earlies’ and ‘lates’, and a longer night shift. Due to hospital policy, a nurse would normally work either days or nights in a given week, and because of the difference in shift length, a full week’s work would normally include more days than nights. For example, a full time nurse would work 5 days or 4 nights, whereas typical part-time contracts are for 4 days or 3 nights, 3 days or 3 nights and 3 days or 2 nights.
As described in [7], the problem can be decomposed into three independent stages. The first uses a knapsack model to ensure that sufficient nurses are available to meet the covering constraints. If not, additional ‘bank’ nurses are alloc
This content is AI-processed based on ArXiv data.