An Integer Programming Based Ant Colony Optimisation Method For Nurse Rostering

Download as pdf or txt
Download as pdf or txt
You are on page 1of 8

Proceedings of the Federated Conference on DOI: 10.

15439/2017F237
Computer Science and Information Systems pp. 407–414 ISSN 2300-5963 ACSIS, Vol. 11

An Integer Programming based Ant Colony


Optimisation Method for Nurse Rostering
Joe D. Bunton, Andreas T. Ernst Mohan Krishnamoorthy
School of Mathematical Sciences, Department of Mechanical and Aerospace Engineering,
Monash University, Monash University,
Melbourne, Australia Melbourne, Australia
Email: {joe.bunton, andreas.ernst}@monash.edu Email: mohan.krishnamoorthy@monash.edu

Abstract—Nurse rostering problems are typically too large and Programming [12], Integer Programming with Variable Neigh-
hard to be solved exactly. In order to achieve quality solutions to bourhood Search [13], and Iterated Local Search with CP [14].
these difficult problems, meta-heuristics are often employed. One More generally, hybridisation of exact algorithms and meta-
such meta-heuristic is Ant Colony Optimisation (ACO), inspired
by the pheromone trails left by ants. ACO works by guiding heuristics is discussed and classified in [15].
a heuristic solution construction by using these pheromones What we are proposing in this paper is a new type of
to direct weighted random choices. When the problem to be hybrid meta-heuristic in which Integer Programming is not
solved is highly constrained, finding feasible solutions is difficult, only used to handle maintaining feasibility of constraints, but
which can result in poor performance for ACO. To address this, also to make an objective guided selection between a subset of
we propose an ACO algorithm using an integer programming
based solution construction method to ensure feasibility and possible schedules during solution construction of work-lines.
select from a collection of schedules. The approach also uses The ACO framework then provides a way to manage solution
a novel solution merging step that combines the information diversification and intensification.
from multiple ants to generate a better final roster. We discuss Highly constrained rostering problems feature a set of
several challenges inherent in this approach, and how they may hard constraints that cause many roster combinations to be
be overcome. Computational results on highly constrained nurse
rostering problem instances from the literature demonstrate the infeasible, reducing the feasible space of the problem. This
effectiveness of our proposed new hybrid metaheuristic. can hinder the performance of meta-heuristics such as ACO
where the random solution construction cannot achieve feasi-
I. I NTRODUCTION bility. In some cases this can be addressed by using problem
Rostering problems involve the assignment of employees to specific knowledge to ensure the construction of only feasible
shifts in order to satisfy cover demands, subject to hard and solutions, however this is not always possible. Alternatively,
soft constraints according to rules and preferences respectively. this set of hard constraints (or a subset of) may be relaxed
For a review of rostering problems and methods, see [1], or and penalised heavily to discourage violations. Such penalty
more recently [2]. approaches can be problematic as they distort the fitness
The Ant Colony Optimisation (ACO) metaheuristic [3] has landscape, often creating many more local optima so that it is
been applied successfully to a broad range of combinatorial more difficult for the optimisation to find the global optimum.
optimisation problems since its inception, including rostering To address the problem of constructing feasible solutions,
problems. ACO is inspired by the behaviour of real ants we use integer programming to generate feasible work-lines
that leave trails of pheromones in order to communicate. In for nurses which can be combined to form a complete roster.
ACO, pheromones are used to guide solution construction This allows us to ensure feasibility in the construction of
by encouraging the inclusion of solution components with a solutions for our highly constrained NRP, as well as select the
higher pheromone presence. Pheromones are left by ants in best option from a subset of schedules, however the use of
quantities proportional to solution quality to push future ants Integer Programming can introduce other challenges. Integer
towards higher quality solutions. In the past, ACO has been programs can be slow to solve for difficult problems. Quick
applied to a dynamic version of the Nurse Rostering Problem solution construction is desired for use within metaheuristics
(NRP) [4] and to a very loosely constrained NRP variant [5]. in order to meaningfully explore the solution space. Opti-
This is the only ACO and exact algorithm hybrid we have mally solving Integer Programming sub-problems can also
encountered for the NRP. lead to less solution diversity and quicker convergence to a
Various hybrid techniques involving ACO have been im- local optimum. Our proposed hybrid algorithm addresses this
plemented in literature, including hybrids with Constraint challenge by using ideas from ACO to manage diversification
Programming (CP) [6], [7], Lagrangian Relaxation [8], [9], and intensification of the search.
and Linear Programming [10]. Hybrids of exact methods We propose an Integer Programming based ACO method
with other meta-heuristics have also been applied to the for highly constrained rostering problems, making use of the
NRP, including Tabu Search with CP [11] and Integer Linear benefits of this hybrid approach while addressing possible

IEEE Catalog Number: CFP1785N-ART 2017,


c PTI 407
408 PROCEEDINGS OF THE FEDCSIS. PRAGUE, 2017

concerns. While our approach makes use of features that 5) Nurses cannot work more than a maximum number of
are general to rostering problems, we begin developing this days in a row without a day off - sequence.
new hybrid method by applying it to instances from a highly 6) Nurses cannot work less than a minimum number of
constrained NRP dataset to demonstrate its effectiveness at days in a row before having a day off - sequence.
generating good solutions quickly, in a way that scales well 7) Nurses cannot take less than a minimum number of days
for larger problems. off in a row - sequence.
8) Nurses cannot work more than a maximum number of
II. N URSE ROSTERING P ROBLEM weekends in a schedule - schedule.
The NRP consists of scheduling of nurses in hospitals to sat- 9) Nurses cannot work on days on which they have booked
isfy shift requirements. There are several types of shifts each leave - sequence.
day e.g. Day, Night, Early, Late, each with cover demands. 10) There is an ideal cover requirement to be achieved each
The assignment of nurses to shifts is subject to various work day, with over cover / under cover penalised -roster.
contract constraints, both hard and soft, that determine legal
and preferred components of nurse schedules. Individual nurse TABLE I
24 BENCHMARK INSTANCES
preferences for shifts on/off are also desired to be satisfied. For
reviews of models and methods for NRPs, see [16], [17]. Instance Weeks Nurses Shift Types
Due to the difficulty inherent in NRPs, in order to achieve 1 2 8 1
good solutions quickly, metaheuristics are often applied to 2 2 14 2
problems. Approaches attempted include Simulated Annealing 3 2 20 3
4 4 10 2
[18], Variable Neighbourhood Search [19], Genetic Algorithm 5 4 16 2
[20], and Tabu search [12], among others. 6 4 18 3
7 4 20 3
As discussed in [21], constraints for the NRP can be put 8 4 30 4
in 3 categories. Sequence constraints that are applied within 9 4 36 4
shift sequences (work-stretches), e.g. allowed shift transitions 10 4 40 5
11 4 50 6
and maximum / minimum consecutive work days. Schedule 12 4 60 10
constraints that apply to a work-line for a single nurse (a 13 4 120 18
combination of work-stretches), e.g. maximum number of 14 6 32 4
15 6 45 6
assignments, maximum weekends worked, personal shift re- 16 8 20 3
quests on / off. Roster constraints that apply across nurse 17 8 32 4
work-lines for the entire roster, e.g. cover requirements. 18 12 22 3
19 12 40 5
Various descriptions of the NRP have been presented in 20 26 50 6
literature, featuring different constraints and different com- 21 26 100 8
binations of these being considered hard / soft constraints. 22 52 50 10
23 52 100 16
We explore the NRP as defined in [22], and use their set 24 52 150 32
of benchmark datasets hosted online along with best known
bounds1 .
Three methods are applied to the NRP dataset in [22], the A summary of the benchmark instances is given in Table
ejection chain and branch-and-price from [23], and solving the I, varying in the 3 problem dimensions: number of weeks,
formulation provided with the integer programming software nurses, and shift types. These instances are highly constrained
Gurobi 5.6.3. The instances of the NRP dataset have also due to requirement 4, which is both an upper and lower bound
been solved as a partially weighted maxSAT problem [24] on hours worked. This requirement is often quite strict, not
The objective is to minimise the weighted sum of undercover, allowing much variation in the number of shifts each nurse
overcover, and not satisfied nurse shift preferences. This is is required to work. As a result, purely random constructions
subject to 10 requirements (with their respective category: heuristics perform poorly for these problems.
sequence, schedule, or roster): III. M ODEL
1) A nurse cannot be assigned more that one shift on a
single day - sequence. Here we will present the Integer Programming formulation
2) Certain shifts cannot follow each other on consecutive for our solution construction method. The solution construc-
days, i.e. a Day shift cannot immediately follow a Night tion involves solving an integer program (IP) for single nurse’s
shift - sequence. work-line. A typical integer programming formulation for a
3) Nurses cannot be assigned more than a certain number NRP will utilise variables representing the assignment of a
each type of shift - schedule. particular nurse to a specific shift on a given day, as in [22],
4) Nurses cannot work less than a minimum or more than [23].
a maximum number of hours in the schedule - schedule. As solution construction time is of concern, we make use
of the concept of work-stretches for the variables of our IP
1 http://www.cs.nott.ac.uk/~psztc/NRP/index.html in order to reduce complexity. We define a work-stretch as a
JOE BUNTON ET AL.: AN INTEGER PROGRAMMING BASED ANT COLONY OPTIMISATION METHOD FOR NURSE ROSTERING 409

Work-stretch TABLE II
S ETS , VARIABLES AND PARAMETERS FOR WORK - STRETCH NRP
FORMULATION

D D D N Component Type Description


I Set Set of Nurses i
D Set Set of Days in the schedule period d
Minimum length T Set Set of Shift types t, e.g. t ∈ {D, A, N }
off-stretch Wid Set Set of all work-stretches j that start on day
d ∈ D for nurse i ∈ I
E
Wid Set Set of all work-stretches j that end the day
Fig. 1. Definition of a work-stretch as a continuous sequence of work shifts
including the following minimum length stretch of off-days (requirement 7). before day d ∈ D for nurse i ∈ I
N
Wit Set Set of all work-stretches j that contribute a
shift of type t ∈ T for nurse i ∈ I
C
Wtd Set Set of all work-stretches j that contribute a
continual sequence of shift assignments for a specific nurse shift of type t ∈ T on day d ∈ D
with no off-days in between, combined with a stretch of off- lt Parameter length of shift type t ∈ T in hours
days of the minimum required length as shown in Figure 1. cstj Parameter penalty cost of assigning work-stretch j
cstoid Parameter penalty cost of assigning nurse i ∈ I an off-
These work-stretches are able to incorporate all the sequence day on day d ∈ D
constraints of the problem, as well as the costs due to nurse wej Parameter 1 if work-stretch j involves working a week-
preferences not satisfied. Only work-stretches that satisfy all of end, 0 otherwise
citj Parameter number of shifts of type t ∈ T that work-
the sequence constraints (and so are feasible for our problem) stretch j contributes for nurse i ∈ I
are generated and added to the problem as variables. amax
i Parameter maximum number of weekends that nurse i ∈
There are several examples in literature of the use of work- I can work
mmax
it Parameter maximum number of shifts of type t ∈ T that
stretch like structures for the NRP, mainly for use in heuristics, can be assigned to nurse i ∈ I
including [21] who also present a brief summary of work- bmin
i Parameter minimum number of hours that nurse i ∈ I
stretches in NRP. For rostering problems more generally, must be assigned
bmax Parameter maximum number of hours that nurse i ∈ I
[25] present a general column generation approach based i
can be assigned
upon work-stretches to reduce complexity. They use a nested h Parameter last day of the horizon
resource constrained shortest path that builds work-stretches udt Parameter preferred total number of nurses assigned shift
type t ∈ T on day d ∈ D
then uses these to construct columns of work-lines for nurses. min
vtd Parameter weight if below the preferred cover for shift
Their method is further refined and utilised in a branch-and- type t ∈ T on day d ∈ D
max
vtd Parameter weight if exceeding the preferred cover for
price framework [26].
shift type t ∈ T on day d ∈ D
In using work-stretches to model our NRP, we reduce the xij Variable 1 if nurse i ∈ I is assigned work-stretch j ∈
S
number of constraints we need to formulate explicitly in our d∈D Wid , 0 otherwise
model. Each nurse’s schedule is modelled as a network flow oid Variable 1 if nurse i ∈ I is assigned an off-day on day
with side constraints that cover only the schedule and roster d∈D
ytd Variable total below the preferred cover for shift type
constraints. By introducing single off-day variables, we can t ∈ T on day d ∈ D
model all combinations of shifts on and off by allowing ztd Variable total above the preferred cover for shift type
transitions from work-stretches to other work-stretches or to t ∈ T on day d ∈ D
cvtd Variable Total cover for shifts of type t ∈ T on day
these single off-day variables. The mathematical formulation d∈D
of this integer programming model for a given nurse i ∈ I is
given here in terms of the notation described in Table II.
First, we construct the network flow for this nurse. Equa- Equations (4), (5), and (6) cover the schedule requirements
tions (1) and (2) set up the source and sink of the flow 3, 4, and 8 respectively for the nurse. Equation (4) specifies
respectively. Equation (3) defines the flow conservation for that for each shift type t ∈ T the sum of shifts of that
all other nodes, that the sum of work-stretches or off days type worked by the nurse is less than the maximum allowed.
finishing on a given day equals the sum of those starting the Equation (5) specifies that the sum of hours worked by the
next day. nurse is within the allowed bounds. Equation (6) specifies
Day 0 flow: X that the sum of weekends worked by the nurse is less that
xij + oi0 = 1. (1) the allowed number.
j∈Wi0
X X
Day h (last day) flow: citj xij ≤ mmax
it ∀t ∈ T, (4)
X N
d∈D j∈Wit
xij + oih = 1. (2)
X X
bmin lt xij ≤ bmax
E
j∈Wih+1
i ≤ i , (5)
Middle day flows: t∈T j∈Wit
N

X X X X
xij +oid−1 = xij +oid , ∀d ∈ D\{0, h}. (3) wej xij ≤ amax
i . (6)
E
j∈Wid j∈Wid d∈D j∈Wid
410 PROCEEDINGS OF THE FEDCSIS. PRAGUE, 2017

For the roster requirement of meeting cover demand, we d given solution S, τitd is the pheromone value, and α and β
sum assigned work-stretches for all nurses in the current are parameters to adjust the influence of η and τ .
solution: After each iteration, all of the pheromone components are
X X evaporated according to some evaporation rate, ρ, then updated
cvtd = x i′ j . (7) with an additional pheromone amounts for each solution in that
i′ ∈I j∈Wtd
C iteration. The amount of pheromone left is proportional to the
1
quality of the solution, objval(S) for a minimisation problem
Assigning under and over-cover variables the correct values:
with solution S, scaled by a constant Q:
ytd ≥ utd − cvtd ∀t ∈ T, d ∈ D, (8) X Q
τitd = (1−ρ)·τitd + ∀i ∈ I, t ∈ T, d ∈ D,
ztd ≥ cvtd − utd ∀t ∈ T, d ∈ D. (9) objval(S)
S∈Sn
(12)
The objective function is then the sum of work-stretch and where Sn is the set of solutions for iteration n. To avoid
off-day costs with under and over cover: extreme pheromone values, it is typical to control the values of
pheromones using fixed maximum and minimum pheromone
levels. We do not run our algorithm for long enough for this
XX X XX
min cstj xw
i′ j + cstoi′ d oi′ d
i′ ∈I d∈D j∈Wi′ d i′ ∈I d∈D
to become necessary.
XX The approach as described above makes use of the η and
min max

+ vtd ytd + vtd ztd . (10) τ components to choose the work-stretches that are included
t∈T d∈D in the integer programming problem for each nurse, but not
IV. ACO-IP A LGORITHM to influence the decisions made directly. The decision of
what schedule to choose is limited by the options given
ACO is a meta-heuristic based upon quality solutions by the pheromone guided random choice of shifts, but is
leaving pheromones to encourage future solutions. Generally, made to minimise the objective given in Equation 10 for the
the solution construction heuristic that is guided by these available options of work-stretches. This limits the influence
pheromones is just a weighted random selection. In the case of of the pheromones in directing the search. It is possible to
highly constrained rostering problems, this weighted random address this by similarly randomly weighting the objective
selection may choose shift / off-day combinations early on coefficients for undercover of the corresponding shift and day
that means upper or lower bounds for work hours cannot combinations.
be satisfied. To address this, we use an integer programming
based ant construction in our ACO-IP hybrid algorithm. Algorithm 1 Ant Construction: make_ants()
Our ant construction is still guided by random choices in the for ant in num_ants do
ACO fashion, using a heuristic component, η, calculated using 2: new_sol = best solution copy
problem specific knowledge, and a pheromone component, τ . for all nurse in nurses do
Typically, there is one η and τ component per decision made 4: remove work-line for current nurse from new_sol
in the ant construction. As our decisions are the assignment of for all day in horizon do
whole work-stretches, the number of which is exponential in 6: calculate heuristic weight from new_sol cover
number of shift types, we instead use one of each component randomly choose num_shift shifts weighted by
η and τ for each shift for each nurse for each day. Rather than heuristic weight and pheromone
directly informing the choice of work-stretch, the weightings 8: end for
are used to choose the reduced set of shifts that will make the make_workstretches(chosen_shifts)
components of the work-stretches. All feasible work-stretches 10: solve_nurse()
are then generated from this subset of shifts, with integer add work-line to new_sol
programming used to select the best schedule from these 12: end for
subset of all work-stretches. From the set of available shifts, end for
each is given a probability of being chosen, then shifts are
selected for each day without replacement until the desired
number of shifts are chosen. Only work-stretches comprising Also of interest are the heuristic weights η, which if
the chosen set of shifts on their given days will be added to calculated for the first few nurses of a solution, will give
the integer programming problem. Thus we have for each ant: little information as to which shifts should be scheduled as
most of the solution is empty. This can be addressed with
β
τitd (S)α · ηitd a pseudo-elitist strategy where the best know solution is
pitd (S) = P β
∀i ∈ I, t ∈ T, d ∈ D,
u∈T τiud (S)α · ηiud assumed to be present for nurses whose work-lines have not
(11) yet been constructed. This both gives the η components a more
where S is the current solution, pitd (S) is the probability of insightful value and encourages solutions closer to the best
choosing shift t for nurse i and day d given solution S, ηitd (S) known solution. The algorithm for the ant construction in this
is the calculated heuristic value of shift t for nurse i on day way is shown in Algorithm 1. The construction of multiple
JOE BUNTON ET AL.: AN INTEGER PROGRAMMING BASED ANT COLONY OPTIMISATION METHOD FOR NURSE ROSTERING 411

ants is able to parallelised easily, and we make use of this in selection of some parameters were made explicitly with time
our application of the method. or computational hardware considerations in mind.
The termination criteria was set to 50 iterations of the ACO
Algorithm 2 ACO-IP: ACO meta-heuristic and merge solve loop then 5 minutes for the integer programming merge step
while not iteration limit & not time limit do (or until optimality is proven). The iteration limit chosen is
2: make_ants() aimed at reducing the run time for instances.
if new best solution then The number of shift types to choose as options for building
4: store best solution work-stretches in the ant construction was chosen to be 3
end if for all instances. As the number of work-stretches can be
6: update_pheromones() exponential in the number of shift types, this number of shifts
end while was chosen to give a balance of choices available, which
8: for last n solutions do influences convergence performance, and also keeping solve
add unique solution work-stretches to merge_stretches times short. For instances with 3 shift types or less, this means
10: end for that we are reducing greatly the variability in our approach,
add merge_stretches to merge_IP especially when the number of employees is small and time
12: add best solution to merge_IP (as incumbent) horizon is short. As such we omitted the 7 smallest instances
solve merge_IP from our experiments.
The ant construction in our algorithm is able to be done
Solving single work-lines to optimality in serial can result in parallel, this allows multiple ants to be constructed at
in less solution diversity than other random construction meth- each iteration without increase in overall solution time (given
ods, especially when we do not alter the objective coefficients enough CPUs). The ant population size was chosen to be 4 ants
for undercover of shifts. To consistently achieve good solutions per iteration for all instances. This was mainly due to compu-
and properly explore the search space, it is desirable to have tational hardware constraints, enabling each ant construction
some diversity in the solutions being constructed. one CPU core in parallel.
In order to improve solution quality, we can make use what The pheromone evaporation rate ρ was chosen to be 0.05.
diversity there is in the solution set, even for solutions of As we initiate all pheromone values at 1, the evaporation rate
varied quality, by solving an IP as a final merging step for was chosen such that after the 50 iteration limit the pheromone
solutions explored. By combining work-stretches from previ- values would be reduced by about an order of magnitude.
ous solutions into an IP and taking the current best solution The parameters selected for tuning were the constant mul-
as an incumbent solution, we can explore the neighbourhood tiplier for pheromone placement, Q, and the heuristic and
around our best solution. As we do not consider all possible pheromone influence parameters, α and β. These parameters
work-stretches, this keeps the IP a more manageable size. were tuned for the whole of our ACO-IP algorithm, not
The overarching ACO algorithm is described in Algorithm including the integer programming merge step, as the variation
2, with the integer programming merge step as described as a in solutions generated in the ACO-loop of our algorithm also
final step to improve solutions. influences the performance of the merge step.
The choice of the constant Q affects the amount of
V. E XPERIMENTAL R ESULTS pheromones placed by ants each iteration. This effects the
To determine the effectiveness of our new approach, we convergence of pheromone values. As the solution quality
1
evaluate its performance on the 24 NRP benchmark instances ( objval ) is instance dependent, this constant Q was chosen
discussed above. Parameter tuning was performed on a sub- in terms of the objective value of the initial solution, scaled
set of the benchmark instances to improve solution quality. by some constant Qs . This gives:
Our algorithm was then applied to the full NRP benchmark Qs · inisol
dataset with the tuned parameters, with ant construction run Q= , (13)
objval
in parallel. We also analyse the variance of performance of
the algorithm on a subset of the NRP dataset. The results where inisol is the objective value of the initial solution for the
are compared with existing results for this NRP dataset from solve. This makes the choice of value specific for the instance,
the literature. The ACO-IP hybrid algorithm was implemented without the need for any a priori knowledge.
in Python to construct 4 ants in parallel for each iteration, The α and β parameters effect the relative influence of the
using the commercial solver Gurobi 7.0 to evaluate the integer heuristic information and pheromone values on the random
programs. All runs were conducted on 4 threads of an Intel solution construction. To determine the best combination of
Xeon CPU E5-2680 v3 @ 2.50GHz. Qs , α, and β, combinations were evaluated for a subset of
instances (instances 12, 15, and 19) for 10 runs each.
A. Parameter Tuning The choices of parameters for testing were Qx ∈
There are several parameters in our algorithm that can [0.1, 0.5, 1], α ∈ [0, 0.5, 1], and β ∈ [1]. The results of
affect performance. Here we present a brief study over sev- these runs are shown in Table III. The use of pheromones
eral choices of parameter values to tune our algorithm. The to guide the search can be seen to have a beneficial effect as
412 PROCEEDINGS OF THE FEDCSIS. PRAGUE, 2017

TABLE III
AVERAGE BEST SOLUTION AFTER ACO LOOP OF OUR ALGORITHM FOR DIFFERENT Qs , α, AND β COMBINATIONS AFTER 10 RUNS .

Qs = 0.1, β = 1 Qs = 0.5, β = 1 Qs = 1, β = 1
Instance α=0 α = 0.5 α=1 α=0 α = 0.5 α=1 α=0 α = 0.5 α=1
12 5875 4518.7 5031.1 5682.1 5034.8 5043.6 5064 4911.9 5059.7
15 5026.3 5220.2 5511.2 5060 5392.9 5435.1 5234.5 5552.3 5548.6
19 4154.5 3756.5 3773.8 3722.9 3788.2 3845.8 4017.5 3799.5 3919.2

TABLE IV
C OMPARISON OF RESULTS WITH EXISTING APPROACHES . B EST RESULTS ARE IN BOLD , AND O O M INDICATES THE SOLVE RAN OUT OF AVAILABLE
MEMORY. I NSTANCE DIMENSIONS IN TERMS OF NUMBER OF WEEKS IN HORIZON (W), NUMBER OF NURSES TO SCHEDULE (N), AND NUMBER OF SHIFT
TYPES (S) ARE SHOWN ALONG WITH INSTANCE NUMBER . B EST RESULTS HIGHLIGHTED IN BOLD .

Gurobi 7.0 WPM3 B&P Ejection Chain ACO-IP


Instance (WxNxS) Sol. Sol. Sol. Sol. Avg. Sol. Avg. Time (s)
8 (4x30x4) 1306 11018 1308 2260 1450.2 1059.3
9 (4x36x4) 439 10949 439 463 570.6 1562.49
10 (4x40x5) 4631 16435 4631 4797 4891.1 1433.99
11 (4x50x6) 3443 12183 3443 3661 3460 1897.53
12 (4x60x10) 4040 18770 4046 5211 4350.8 2698.77
13 (4x120x18) 2663 6110163 OoM 3037 6423.9 4007.09
14 (6x32x4) 1278 16303 OoM 1847 1456.9 1586.9
15 (6x45x6) 4843 30833 OoM 5935 5074 2417.75
16 (8x20x3) 3225 10292 3323 4048 3547.1 828.37
17 (8x32x4) 5749 22002 OoM 7835 5853.4 1388.78
18 (12x22x3) 5078 18498 OoM 6404 5347 1120.19
19 (12x40x5) 3591 1698538 OoM 5531 3760 2295.05
20 (26x50x6) 132445 5519316 OoM 9750 5177.3 5782.54
21 (26x100x8) 265504 14715064 OoM 36688 2247.4 9186.65
22 (52x50x10) - - OoM 516686 34262.3 14295.70
23 (52x100x16) - - OoM 54384 34068.2 19648.3
24 (52x150x32) - - OoM 156858 98552 25188.57

TABLE V
performance is worse when α is set to 0 (when pheromone AVERAGE (AVG .) AND S TANDARD DEVIATION (SD) OF BEST SOLUTION
values are ignored). The algorithm tends to perform better with AFTER THE ACO LOOP AND F INAL SOLUTION AFTER THE INTEGER
PROGRAMMING MERGE STEP AFTER 30 RUNS OF OUR ACO-IP
more of an influence on the heuristic values. This may be due
ALGORITHM .
to the limited number of iterations not allowing convergence
of the pheromone values. For further runs a Qs walue of 0.1, ACO Search Final
α value of 0.5, and β value of 1 were chosen. Instance Avg. SD Avg. SD
12 5577.03 229.23 4347.3 334.76
B. Variance of Performance 15 5735.86 220.93 5055.6 326.38
19 4411.22 214.32 3782.22 371.04
As with other random searches, the variance in performance
of the ACO algorithm can be quite large. Here we aim to
analyse the variance of performance for our ACO-IP hybrid
algorithm. To do this we tested our algorithm more extensively the work of [24] who model the NRP using Partial Weighted
on a subset of the NRP dataset (instances 12, 15, and 19). maxSAT and solve it using the WPM3 algorithm of [27]
Our algorithm was run 30 times on each instance, with the for 4 hours runtime, both an ejection chain heuristic method
mean performance and standard deviation presented for both (reported after 10 and 60 minutes, solutions after 60 minutes
after the ACO loop is complete, and after the final integer shown) and a branch-and-price method implemented by [22] as
programming merge step. The results are summarised in Table in [23], and finally results for a complete integer programming
V. It is clear that our integer programming merge step leads to implementation of the problem instances from [22], run on
a significant improvement in solutions achieved. The standard Gurobi 7.0 with a 1 hour runtime limit.
deviation of solution achieved does not decrease significantly The best results for these methods are compared with the
after the merge step, and in fact increases, indicating there is average result of 10 runs of our ACO-IP approach in Table
still variability in the performance of the integer programming IV. Note that in our parameter tuning we trained on Instances
merge step. 12, 15, and 19. Other methods were not similarly trained on
a subset of the instances used for comparison.
C. Comparison of Results Best results across all methods are highlighted in bold.
Finally our algorithm was run on all instances of the NRP While Gurobi obtains the best solution for the largest number
dataset with tuned parameters for comparison with existing of test instances, it is clear that it does not scale well with
results in literature for the dataset used. Existing results on increasing problem size. Indeed, as the problem size increases
this dataset for comparison are shown in Table IV, including our method clearly starts to outperform the others presented
JOE BUNTON ET AL.: AN INTEGER PROGRAMMING BASED ANT COLONY OPTIMISATION METHOD FOR NURSE ROSTERING 413

here. For the medium to large instances, our method is [8] D. Thiruvady, A. Ernst, and M. Wallace, “A Lagrangian-ACO
comparable to or outperforms the best other heuristic method matheuristic for car sequencing,” EURO Journal on Computational
Optimization; Heidelberg, vol. 2, no. 4, pp. 279–296, Nov. 2014.
(ejection chain). While the ability to solve larger problems is http://dx.doi.org/10.1007/s13675-014-0023-6
encouraging for the scalability of our method, further research [9] D. Thiruvady, G. Singh, and A. T. Ernst, “Hybrids of Integer
is required to improve the method. Gurobi is able to generate Programming and ACO for Resource Constrained Job Scheduling,”
in Hybrid Metaheuristics. Springer, Cham, Jun. 2014, pp. 130–
solutions of better quality for the medium sized instances, and 144, dOI: 10.1007/978-3-319-07644-7_10. http://dx.doi.org/10.1007/
further work is required to ensure we are generating good 978-3-319-07644-7_10
solutions for the larger instances. [10] S. Al-Shihabi, “A hybrid of maxâĂŞmin ant system and linear
programming for the k-covering problem,” Computers & Operations
VI. C ONCLUSIONS Research, vol. 76, pp. 1–11, Dec. 2016. http://dx.doi.org/10.1016/j.cor.
2016.06.006
We have presented a new ACO-IP hybrid metaheuristic [11] H. Li, A. Lim, and B. Rodrigues, “A Hybrid AI Approach
for highly constrained rostering problems. It uses an integer for Nurse Rostering Problem,” in Proceedings of the 2003 ACM
Symposium on Applied Computing, ser. SAC ’03. New York,
programming based solution construction to avoid problems NY, USA: ACM, 2003. ISBN 978-1-58113-624-1 pp. 730–735.
of finding feasible solutions inherent in other random con- http://dx.doi.org/10.1145/952532.952675
struction methods typical of ACO when problems are highly [12] C. Valouxis and E. Housos, “Hybrid optimization techniques for
the workshift and rest assignment of nursing personnel,” Artificial
constrained, as well as to enhance the quality of the schedule Intelligence in Medicine, vol. 20, no. 2, pp. 155–175, Oct. 2000.
chosen over a subset of all options. Performance of the algo- http://dx.doi.org/10.1016/S0933-3657(00)00062-2
rithm is improved by a novel integer programming merge step [13] E. K. Burke, J. Li, and R. Qu, “A hybrid model of integer
programming and variable neighbourhood search for highly-constrained
which uses past solutions to explore the neighbourhood around nurse rostering problems,” European Journal of Operational Research,
the best solution achieved. While unable to compete against vol. 203, no. 2, pp. 484–493, Jun. 2010. http://dx.doi.org/10.1016/j.ejor.
Gurobi for solution quality in the small to medium sized 2009.07.036
[14] M. Stolevik, T. E. Nordlander, A. Riise, and H. Froyseth, “A
instances, our method scales well and outperforms Gurobi and Hybrid Approach for Solving Real-World Nurse Rostering Problems,”
all other methods for large instances, and is generally able to in Principles and Practice of Constraint Programming âĂŞ CP
achieve good solutions to medium instance comparable to or 2011. Springer, Berlin, Heidelberg, Sep. 2011, pp. 85–99. http:
//dx.doi.org/10.1007/978-3-642-23786-7_9
better than the ejection chain heuristic. [15] J. Puchinger and G. R. Raidl, “Combining Metaheuristics and
These results show that our ACO-IP hybrid algorithm can be Exact Algorithms in Combinatorial Optimization: A Survey and
effective for highly constrained problems, this encourages the Classification,” in Artificial Intelligence and Knowledge Engineering
Applications: A Bioinspired Approach. Springer, Berlin, Heidelberg,
further improvement of the method and application to rostering Jun. 2005, pp. 41–53. http://dx.doi.org/10.1007/11499305_5
problems more generally. [16] B. Cheang, H. Li, A. Lim, and B. Rodrigues, “Nurse rostering problems
- a bibliographic survey,” European Journal of Operational Research,
R EFERENCES vol. 151, no. 3, pp. 447–460, Dec. 2003. http://dx.doi.org/10.1016/
S0377-2217(03)00021-3
[1] A. T. Ernst, H. Jiang, M. Krishnamoorthy, and D. Sier, “Staff [17] E. K. Burke, P. D. Causmaecker, G. V. Berghe, and H. V. Landeghem,
scheduling and rostering: A review of applications, methods and “The State of the Art of Nurse Rostering,” Journal of Scheduling,
models,” European Journal of Operational Research, vol. 153, no. 1, vol. 7, no. 6, pp. 441–499, Nov. 2004. http://dx.doi.org/10.1023/B:
pp. 3–27, Feb. 2004. http://dx.doi.org/10.1016/S0377-2217(03)00095-X JOSH.0000046076.75950.0b
[2] J. Van den Bergh, J. Belien, P. De Bruecker, E. Demeulemeester, and [18] M. J. Brusco and L. W. Jacobs, “Cost analysis of alternative formulations
L. De Boeck, “Personnel scheduling: A literature review,” European for personnel scheduling in continuously operating organizations,”
Journal of Operational Research, vol. 226, no. 3, pp. 367–385, May European Journal of Operational Research, vol. 86, no. 2, pp.
2013. http://dx.doi.org/10.1016/j.ejor.2012.11.029 249–261, Oct. 1995. http://dx.doi.org/10.1016/0377-2217(94)00063-I
[3] M. Dorigo and T. Stutzle, “The Ant Colony Optimization [19] E. K. Burke, T. Curtois, G. Post, R. Qu, and B. Veltman, “A hybrid
Metaheuristic: Algorithms, Applications, and Advances,” in Handbook heuristic ordering and variable neighbourhood search for the nurse
of Metaheuristics, ser. International Series in Operations Research rostering problem,” European Journal of Operational Research, vol.
& Management Science, F. Glover and G. A. Kochenberger, Eds. 188, no. 2, pp. 330–341, Jul. 2008. http://dx.doi.org/10.1016/j.ejor.
Springer US, 2003, no. 57, pp. 250–285. ISBN 978-1-4020-7263-5 2007.04.030
978-0-306-48056-0. http://dx.doi.org/10.1007/0-306-48056-5_9 [20] U. Aickelin and K. A. Dowsland, “An indirect Genetic Algorithm
[4] W. J. Gutjahr and M. S. Rauner, “An ACO algorithm for a for a nurse-scheduling problem,” Computers & Operations Research,
dynamic regional nurse-scheduling problem in Austria,” Computers vol. 31, no. 5, pp. 761–778, Apr. 2004. http://dx.doi.org/10.1016/
& Operations Research, vol. 34, no. 3, pp. 642–666, Mar. 2007. S0305-0548(03)00034-0
http://dx.doi.org/10.1016/j.cor.2005.03.018 [21] P. Brucker, E. K. Burke, T. Curtois, R. Qu, and G. V. Berghe, “A shift
[5] J. j. Wu, Y. Lin, Z. h. Zhan, W. n. Chen, Y. b. Lin, and J. y. Chen, “An sequence based approach for nurse scheduling and a new benchmark
Ant Colony Optimization Approach for Nurse Rostering Problem,” in dataset,” Journal of Heuristics, vol. 16, no. 4, pp. 559–573, Nov. 2008.
2013 IEEE International Conference on Systems, Man, and Cybernetics, http://dx.doi.org/10.1007/s10732-008-9099-6
Oct. 2013, pp. 1672–1676. http://dx.doi.org/10.1109/SMC.2013.288 [22] T. Curtois and R. Qu, “New computational results for nurse rostering
[6] B. Meyer, “Hybrids of Constructive Metaheuristics and Constraint benchmark instances,” 2014. http://www.cs.nott.ac.uk/~psztc/new_
Programming: A Case Study with ACO,” in Hybrid Metaheuristics, computational_results_for_nurse_rostering_benchmark_instances.pdf
ser. Studies in Computational Intelligence, D. C. Blum, D. M. J. B. [23] E. K. Burke and T. Curtois, “New approaches to nurse rostering
Aguilera, D. A. Roli, and D. M. Sampels, Eds. Springer Berlin benchmark instances,” European Journal of Operational Research, vol.
Heidelberg, 2008, no. 114, pp. 151–183. ISBN 978-3-540-78294-0 237, no. 1, pp. 71–81, Aug. 2014. http://dx.doi.org/10.1016/j.ejor.2014.
978-3-540-78295-7. http://dx.doi.org/10.1007/978-3-540-78295-7_6 01.039
[7] M. Khichane, P. Albert, and C. Solnon, “Integration of ACO in [24] E. Demirovic, N. Musliu, and F. Winter, “Modeling and Solving Staff
a Constraint Programming Language,” in SpringerLink. Springer, Scheduling with Partial Weighted maxSAT,” in PATAT 2016: Proceed-
Berlin, Heidelberg, Sep. 2008, pp. 84–95. http://dx.doi.org/10.1007/ ings of the 11th International Conference of the Practice and Theory of
978-3-540-87527-7_8 Automated Timetabling, Udine, Italy, Aug. 2016.
414 PROCEEDINGS OF THE FEDCSIS. PRAGUE, 2017

[25] A. J. Mason and M. C. Smith, “A Nested Column Generator for solving generation,” European Journal of Operational Research, vol. 230, no. 1,
Rostering Problems with Integer Programming,” in L. Caccetta; K. L. pp. 157–169, Oct. 2013. http://dx.doi.org/10.1016/j.ejor.2013.03.018
Teo; P. F. Siew; Y. H. Leung; L. S. Jennings, and V. Rehbock (eds.), [27] C. Ansotegui, F. Didier, and J. Gabas, “Exploiting the Structure of Un-
Curtin University of Technology, Perth, Australia, Apr. 1998, pp. p827– satisfiable Cores in MaxSAT,” in Proceedings of the 24th International
834. Conference on Artificial Intelligence, ser. IJCAI’15. Buenos Aires,
[26] A. Dohn and A. Mason, “Branch-and-price for staff rostering: An Argentina: AAAI Press, 2015. ISBN 978-1-57735-738-4 pp. 283–289.
efficient implementation using generic programming and nested column

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy