Discrete Optimization
New approaches to nurse rostering benchmark instances

https://doi.org/10.1016/j.ejor.2014.01.039Get rights and content

Highlights

  • New upper and lower bounds for benchmark nurse rostering instances.

  • A general model which can be applied to a wide variety of staff rostering problems.

  • A powerful dynamic programming method used to solve sub-problems.

Abstract

This paper presents the results of developing a branch and price algorithm and an ejection chain method for nurse rostering problems. The approach is general enough to be able to apply it to a wide range of benchmark nurse rostering instances. The majority of the instances are real world applications. They have been collected from a variety of sources including industrial collaborators, other researchers and various publications. The results of entering these algorithms in the 2010 International Nurse Rostering Competition are also presented and discussed. In addition, incorporated within both algorithms is a dynamic programming method which we present. The algorithm contains a number of heuristics and other features which make it very effective on the broad rostering model introduced.

Introduction

Rostering problems are found in a wide range of workplaces and industries including healthcare, manufacturing, transportation, emergency services, call centres and many more. Using a computational search algorithm to address these problems results in cost savings and better work schedules. As such, rostering problems in various forms have received a large amount of research attention over the years. This body of research grew steadily throughout the 1960s, 1970s and 1980s and then accelerated in growth as more powerful desktop personal computers became commonplace in workplaces during the 1990s. As the computational and processing power has grown so has the range and complexity of algorithms that can be applied and the size and complexity of the instances that can be solved. For an overview of rostering problems and solution methodologies see (Ernst, Jiang, Krishnamoorthy, & Sier, 2004). A very large annotated bibliography of publications relating to staff scheduling is also provided by Ernst, Jiang, Krishnamoorthy, Owens, and Sier (2004). For a literature review specifically aimed at the nurse rostering problem, see (Burke, De Causmaecker, Vanden Berghe & Van Landeghem, 2004).

As these review papers show, many different approaches have been used to solve nurse rostering problems. These include metaheuristics (Bellanti et al., 2004, Burke et al., 2008, Burke, Curtois, Qu, et al., 2010, Ikegami and Niwa, 2003, Moz and Pato, 2007), constraint programming (Darmoni et al., 1995, Meyer auf’m Hofe, 2000, Weil et al., 1995), mathematical programming (Azaiez and Al Sharif, 2005, Bard and Purnomo, 2005), other artificial intelligence techniques (such as case-based reasoning (Beddoe & Petrovic, 2007) and hybrid approaches (Burke, Li, et al., 2010, Qu and He, 2008). Each method has strengths and weaknesses. For example, as will be shown in this paper, a mathematical programming approach may be able to solve some instances to optimality extremely quickly but on other instances it may take infeasible amounts of time or use too much memory. A metaheuristic, on the other hand, may be able to find a good solution to difficult instances quite quickly but may not be able to find the optimal solution to another instance which an exact method can solve very quickly. An obvious solution to this well-known phenomenon is to combine and hybridise different techniques. This is one of the principles behind adaptive approaches such as hyperheuristics.

The aim of this paper, however, is to provide new results (upper bounds and lower bounds) for a large collection of diverse rostering benchmark instances. This is the first occasion that a branch and price method has been applied to these instances. We also introduce the dynamic programming algorithm which is at the core of the branch and price method and we present a general rostering model which was used for all the instances tested.

Branch and price is a branch and bound method in which each node of the branch and bound tree is a linear programming relaxation which is solved using column generation. The column generation consists of a restricted master problem and a pricing problem. Solving the pricing problem provides new negative reduced cost columns to add to the master problem. The pricing problem can be considered as the problem of finding the optimal work schedule for an individual employee but with the addition of dual costs, that is, additional (possibly negative) costs based on which shift assignments are made or not made. In non-root nodes of the branch and bound tree, there may also be additional branching constraints on certain assignments that must or must not be made.

Although this is the first time that branch and price has been applied to these instances, it has previously been used on the nurse rostering problem (Eveborn and Rönnqvist, 2004, Jaumard et al., 1998, Maenhout and Vanhoucke, 2010, Mason and Smith, 1998). All these earlier applications have similar structure and the same structure is adopted here. The master problem is modelled as a set covering problem and solved using a linear programming method such as the simplex method. The pricing problem is formulated as a resource constrained shortest path problem and solved using a dynamic programming approach. The branch and bound tree is generally too large for a complete search and so heuristic, constraint branching schemes are adopted in which branching is performed on shift assignments in the roster. Although the dynamic programming algorithms all use the same principles (dominance pruning and bound pruning), the actual implementations are dependent on the constraints and objectives present in the pricing problem. For a recent overview of column generation see (Lubbecke & Desrosiers, 2005) and for further reading on resource constrained shortest path problems see (Irnich & Desaulniers, 2005).

In the next section, we discuss the challenge of modelling such a wide variety of instances and how it was solved. In Section 3, we introduce the benchmark instances and Section 4 presents the branch and price algorithm. Section 5 contains the results of applying the algorithms to the benchmark instances. In Section 6, we discuss the International Nurse Rostering Competition and finish with conclusions in Section 7.

Section snippets

Modelling the problem

One of the most significant challenges in addressing a large diverse collection of instances is developing a model which can be used for all the instances with their varying types of constraints and objectives. In all the instances, there are common types of constraints/objectives which are relatively straightforward to model. These include the cover constraints (ensuring that there is a correct or a preferable number of employees assigned to each shift). However, the types of constraints that

Benchmark instances

In order to validate our algorithms and encourage more competition and collaboration between researchers working on rostering we have built a collection of diverse and challenging benchmark instances. The collection has grown over several years and has been drawn from various sources such as industrial collaborators (including software companies and hospitals), scientific publications and other researchers. The collection continues to grow, is currently drawn from thirteen different countries

The branch and price algorithm

The implementation of the branch and price approach follows the previously published algorithms mentioned in section 1. However, quite a lot of time was spent improving the performance of the implementation. For example, profiling the algorithm reveals that during the column generation, typically about 5% of the computation time is spent re-solving the restricted master problem (using the simplex method) whereas the other 95% of the time is used in solving the sub-problems (generating the new

Results

In addition to providing results for the branch and price algorithm, we also compare them to an ejection chain based approach called variable depth search (VDS). Although the core of the algorithm is an ejection chain method, it contains a number of other features that have been added since it was originally described in Burke et al. (2013). These include incorporating a dynamic programming method into an iterative constructive method at the start of the algorithm. (This is the same dynamic

2010 International Nurse Rostering Competition

In 2010, the First International Nurse Rostering Competition was held. The competition consisted of three ‘tracks’ each with different instances. For the first track (sprint) the algorithms were allowed a maximum of 10 seconds computation time to solve each instance. For the second track (medium) the algorithms were allowed 10 minutes and for the third track (long) 10 hours were permitted. A number of instances for each track were released at the start of the competition and, at the end,

Conclusion

We have presented new results for benchmark nurse rostering problems which will be particularly useful to other researchers. The results also show that a branch and price method can solve some instances very effectively. For other instances, the time and resource requirements may be restrictive though. However, with new heuristics and other new ideas it may be possible to improve the performance further. For example, more advanced branching schemes in the branch and bound tree or decomposing

References (36)

  • C. Valouxis et al.

    Hybrid optimization techniques for the workshift and rest assignment of nursing personnel

    Artificial Intelligence in Medicine

    (2000)
  • G.R. Beddoe et al.

    Enhancing case-based reasoning for personnel rostering with selected tabu search concepts

    Journal of the Operational Research Society

    (2007)
  • P. Brucker et al.

    A shift sequence based approach for nurse scheduling and a new benchmark dataset

    Journal of Heuristics

    (2009)
  • E.K. Burke et al.

    A scatter search methodology for the nurse rostering problem

    Journal of Operational Research Society

    (2010)
  • E.K. Burke et al.

    The state of the art of nurse rostering

    Journal of Scheduling

    (2004)
  • Burke, E. K., Curtois, T., Ochoa, G., Hyde, M., & Vazquez-Rodriguez, J. A. (2010). A hyflex module for the personnel...
  • E.K. Burke et al.

    A time predefined variable depth search for nurse rostering

    INFORMS Journal on Computing

    (2013)
  • COIN-OR Linear programming solver (2010)....
  • Cited by (81)

    View all citing articles on Scopus
    View full text