A FUZZY-BASED PARTICLE SWARM OPTIMISATION APPROACH FOR TASK ASSIGNMENT IN HOME HEALTHCARE

Home healthcare (HHC) organisations provide coordinated healthcare services to patients at their homes. Motivated by the ever-increasing need for home-based care, the assignment of tasks to available healthcare staff is a common and complex problem in homecare organisations. Designing high quality task schedules is critical for improving worker morale, job satisfaction, service efficiency, service quality, and competitiveness over the long term. The desire is to provide high quality task assignment schedules that satisfy the patient, the care worker, and the management. This translates to maximising schedule fairness in terms of workload assignments, avoiding task time window violation, and meeting management goals as much as possible. However, in practice, these desires are often subjective as they involve imprecise human perceptions. This paper develops a fuzzy multi-criteria particle swarm optimisation (FPSO) approach for task assignment in a home healthcare setting in a fuzzy environment. The proposed approach uses a fuzzy evaluation method from a multi-criteria point of view. Results from illustrative computational experiments show that the approach is promising.


INTRODUCTION
Home healthcare (HHC) service providers are concerned with the provision of coordinated medical and paramedical services to patients in their homes [1].In providing coordinated home care services, healthcare workers have to attend to acute illness, posthospitalisation, post-operation, chronic illness, permanent disability, terminal illness, or pandemics such as HIV/AIDS, and other related duties [2,3].The home care services include nursing, therapy activities, medical and social services, house cleaning, and drug deliveries.These services are necessitated by an increasingly ageing population, chronic diseases, pressure from society for improved healthcare service quality, and pressure from governments for healthcare organisations to contain their healthcare costs.It is often advantageous to allow elderly people and patients with varying degrees of healthcare needs to live in their own homes for as long as possible, since a long-term stay in a nursing home is often much more costly.Consequently, healthcare service providers are compelled to offer home care services in an attempt to limit costs and to improve their quality of service.In most cases, it is desirable to establish and maintain a relationship between individual care givers and specific patients over the long term [3].In so doing, HHC organisations can keep patients and care givers satisfied, which is crucial in the medium-to long-term.Overall, the provision of HHC services is known to improve patients' quality of life [1] [3].Thus, home care services are an essential cost-effective and flexible instrument for modern social systems.
Within the health care service domain, HHC is one of the fastest-growing sectors [1] [2].Due to intensive competition among healthcare service providers, it is vital to optimise healthcare operations, taking into account the target management goals, patient satisfaction, and healthcare worker satisfaction.To satisfy the healthcare professionals, unbalanced workload assignments and overtime work should be minimised to an acceptable degree.On the other hand, patient satisfaction should be achieved by providing high quality service to the patients, and visiting them at their preferred time of day.In essence, all healthcare tasks should be performed satisfactorily, preferably within the pre-specified time window.In addition, management goals regarding patient and care worker preferences should be satisfied.The overall aim is to ensure that the preferences and goals of the three players -that is, the patient, the care worker, and management -are simultaneously satisfied from a multi-criteria view point.However, these goals are imprecise.To our knowledge, this approach has not been attempted in the literature.
In view of the above issues, the design of effective and efficient decision support tools is essential for task assignment in the HHC organisations.The ultimate goal is to improve the service quality of patient care and to satisfy the expectations of the healthcare professionals and the management, which is a complex multi-criteria problem.As such, the aim of this research is to develop a fuzzy-based particle swarm optimisation (FPSO) as a global optimisation approach for task assignment in a typical HHC service organisation.The approach incorporates fuzzy multi-criteria evaluation techniques, based on fuzzy set theory.The specific objectives for this research are: 1. To provide a brief description of the task assignment problem for a home healthcare service set up; 2. To propose a fuzzy multi-criteria particle swarm optimisation approach to solve the care task assignment problem; and, 3. To provide computational illustrations, showing the effectiveness and efficiency of the algorithm.
The rest of the paper is structured as follows: The next section presents a review of the related literature.Section 3 describes the home healthcare task assignment problem, highlighting its underlying context and the pertinent assumptions.Section 4 provides a brief background to fuzzy set theory.Section 5 presents the proposed FPSO approach.Section 6 provides illustrative computational experiments, results, and discussion.Concluding remarks and further research prospects are provided in Section 7.

RELATED LITERATURE
Decision-makers in the home healthcare service sector are often faced with complex decision problems involving care task assignment [2], patient assignment to care givers, outsourcing strategy [5], and staff routing [6].Assigning home care tasks to nursing staff, in particular, is a complex but important assignment problem for improving home healthcare operations.Designing high quality schedules that provide a high level of satisfaction to care workers is imperative.Poor quality schedules may lead to low worker morale, job dissatisfaction, absenteeism, inefficiency, poor service quality, and ultimately the loss of business [7].To achieve high quality task schedules, care workloads should be assigned in the fairest and most equitable manner; a high quality schedule is one that is fair and balanced among the care givers.In retrospect, the desired goal is to balance the workload and meet patient expectations.However, the desired goal is often imprecise, as it is subject to human perception: the desired goal should ideally satisfy the patient, the care giver, and management.Such a goal tends to be imprecise or fuzzy, adding to the complexity of the problem.The problem is also characterised by a number of fuzzy conflicting criteria that make it difficult to use conventional optimisation methods such as linear programming.In practice, the task scheduling problem is extremely time-consuming, especially when performed manually.Developing flexible and interactive decision support tools is therefore necessary to assist the decision-maker to design highly satisfactory task schedules for home care services.As more and more healthcare services move into the home care setting, the need for novel innovative solutions to task assignment continues to increase.
Extant research articles in home health care scheduling problems fall into two categories.
The first category deals with staff routing and patient assignment, where the healthcare worker visits a set of patients in succession and returns to the homecare centre after visiting all the patients [6,7,8].The second category deals with task assignment where healthcare staff are required to perform a mix of tasks that may be performed at the HHC centre, and may also involve intermittent patient visits at their homes.In this respect, healthcare staff travel times are assumed to be part of the task whenever a patient is visited.
The first category is the most common problem to have received appreciable attention.For instance, Akjiratikarl et al. [3] proposed a particle swarm-based algorithm for the home care worker scheduling problem arising in the United Kingdom.Bertels and Fahle [6] proposed a hybrid approach combining linear programming, constraint programming, and heuristics, with the objective of minimising transportation costs and maximising care provider and patient satisfaction.In the same vein, Borsani et al. [7] proposed a mathematical model based on integer linear programming techniques.Eveborn et al. [8] introduced a homecare scheduling problem for a variety of care providers, formulating the problem using a set partitioning approach.Cheng and Rich [9] presented the problem as a vehicle routing problem with time windows and multiple depots.The authors proposed a mixed integer programming (MIP) model, and an heuristic approach aimed at minimising labour costs.Begur et al. [10] developed a decision support system based on simplified scheduling heuristics.However, to our knowledge, research activities on task assignmentthe second category -are very rare, let alone in a fuzzy multi-criteria environment.Bachouch et al. [2] presented an optimisation model particularly focused on task assignment in a home healthcare set up.The authors proposed an integer linear programming (ILP) model and solved it using LINGO solver and MS Excel.Although in the paper by Akjiratikarl et al. [3], a particle swarm-based algorithm was developed for the homecare worker routing and scheduling problem, inherent fuzzy goals in such problem environments have not been considered.The current study seeks to address these voids.

PROBLEM DESCRIPTION
From our previous studies on the complicating features in HHC staff scheduling, we define the homecare task assignment problem as follows [17]: Consider a set n homecare tasks, where each task k (k = 1,…,n) is defined by a task duration p k and a time window [e k ,l k ]; where e k and l k denote the earliest and latest start times of the task, respectively.Tasks may be in the form of patient visits, administrative duties, and drug delivery.The tasks are to be performed by an available set of care workers, where each worker i (i = 1,...,m) has a scheduled working time [u i ,v i ], where u i and v i are the start time and end time respectively of the shift of worker i.Each task must be allocated to a qualified care worker, with skills indicated by q i , according to the required competency c i .In this study, the workload allocation should be balanced.This implies that the variation of individual workloads should be within acceptable limits.More mathematically, the objective is to limit, as much as possible, the variation of care workers' individual workloads from the average workload, and the violation of the pre-specified task time window constraints.This maximises the overall schedule quality.
In a practical sense, when viewing the criteria of balancing the workload and satisfying time window preferences, the determination of the objective goals often involves nonstochastic uncertainties or imprecisions.In other words, the management goals associated with workload fairness and patient satisfaction are, in most cases, not precise but fuzzy.Therefore, there is a need to make the modelling procedure more flexible and adaptable to the human decision-making process.In a fuzzy environment, therefore, the problem should be treated as a fuzzy multi-criteria decision-making problem.

Problem assumptions
To develop our task assignment model, we make the following simplifying assumptions about the task assignment problem:

•
The travel times involving patient visits are treated as part of the task duration (in minutes).

•
Each task has a specific time window [e k ,l k ] in which the assigned care giver must begin the task operation.

•
Each task should only be assigned to a care worker with the necessary skills or competencies.

•
All tasks assigned to a care worker must be completed within the care worker's working time of day, defined by start and end time u i , and v i respectively.

•
Care worker skills are expressed as q i in the range [1,h], where 1 and h represent the lowest and highest skills respectively.

Problem constraints
It follows that the care task assignment problem can be addressed by minimising the variation of each individual care giver's workload from the average workload, and by minimising time window violations.The following constraints must be realized [1] [2]: • Each task can only be assigned to one and only one available care giver.

•
Each task should begin within its respective time window, [e k ,l k ].

•
Each care worker's workload must be within acceptable lower and upper bounds.

•
All tasks assigned to each care giver must be completed within the care giver's working time In order to illustrate the fuzzy multi-criteria evaluation technique applied in this study, we provide a brief background to the basic concepts of fuzzy set theory in the next section.

Basic concepts
The concept of fuzzy set theory was developed to model imprecision and uncertainty in a non-stochastic sense [11,12,13].Fuzzy numbers are used to represent imprecise quantities such as "about 10 hours", "preferably 10 hours", and "substantially greater than 10".As a result, a fuzzy set can be visualised as a class of elements without a sharp boundary between the elements that belong to that class and those that do not.Contrary to Boolean logic, fuzzy set theory deals with degrees of membership rather than with membership or non-membership [12].To clarify the concept of fuzzy theory further, we distinguish fuzzy sets from crisp sets according to the following definitions: Definition 1: A crisp set.Let X be the universe of objects having elements x, and A denote a proper subset of the universe X; A ⊆ X.Then, the membership of x in a classic crisp set A is defined by a characteristic transformation function μ A from X to {0,1}, such that Definition 2: A fuzzy set.If X is the universe of discourse with elements denoted by x, then the grade of membership of x in a fuzzy set A is defined by μ A (x)∈[0,1], where μ A (x) is the membership function of x in A, which maps each element of X to a membership value in [0,1].The fuzzy set A in X is a set of ordered pairs: It follows that the closer the value of μ A (x) is to 1, the more x belongs to A, and vice versa.Therefore, elements of a fuzzy set indicate the value of each element in the set as well as its grade of membership.

Membership functions for task assignment
Several researchers have used a number of membership functions in different applications to represent uncertainty or fuzzy membership [12].The most widely-applied functions are generalised bell, gaussian, triangular, and trapezoidal functions.However, it has been shown that linear membership functions can be used to provide equally good quality solutions with as much ease [11,12,16].In the HHC sector, the triangular and trapezoidal membership functions (or any other related forms of linear functions) are quite applicable and sufficient to model most healthcare operations problems, particularly care task assignment problems [17,18].The membership function of x in the fuzzy set A, µ A : X → [0,1] is given by the following expression (3):

Interval-valued fuzzy membership function
Evaluation functions can also be expressed in terms of an interval-valued fuzzy number, B (0, a, b), where a and b represent the fuzzy parameters, as illustrated in Figure 2.

Basic particle swarm optimisation algorithm
Particle swarm optimisation (PSO) is a stochastic optimisation technique that is inspired by the social behaviour of fish schooling and bird flocking [14,15].Its mechanism uses a velocity vector to update the current position of each particle in the swarm.While flying, each particle adjusts its position according to its own experience and that of the most successful particle.The velocity and the position updates are determined by the following expressions, respectively: i i i x t x t v t (6) where, v i (t) and x i (t) are, respectively, the velocity component and the location component of particle i at iteration t; v i (t+1) and x i (t+1) are, respectively, the velocity component and the location component of particle i at iteration t + 1; pbest i is the best location of particle i, and gbest i is the global best location of the whole swarm; c 1 and c 2 are, respectively, the cognitive and social parameters; and η 1 and η 2 are uniformly generated random numbers in the range [0,1].

Fuzzy particle swarm approach
The FPSO algorithm begins by randomly initialising a flock, where each bird is called a particle.Particles fly at a certain velocity to find a global best position after a number of iterations.As in the basic PSO procedure, each particle iteratively adjusts its velocity according to its momentum, its best position (pbest), and that of its neighbours (gbest), which then determines its new position.Given a search space D and the total number of particles N, the position of the i th particle can be expressed as x i = [x i1 , x i2 ,...,x iD ], the best position of i th particle is given by pbest i = [pbest i1 , pbest i2 ,...,pbest iD ], and the velocity of the i th particle as Therefore, the position and velocity at (t+1) iteration are updated according to the following: where c 1 and c 2 are constants, η 1 and η 2 are uniformly distributed random variables in [0,1], and w is an inertia weight showing the effect of previous velocity on the new velocity vector.
Figure 3 summarises the logic of the FPSO approach, consisting of initialisation, particle coding scheme, fitness evaluation, and velocity update.

Initialisation
In the initialisation phase, an initial population of size p is created by random assignments of tasks to care givers.The assigned tasks represent the coordinates (positions) of each particle, while each particle segment represents a group of tasks assigned to a particular care giver.The FPSO assigns tasks to care givers by generating continuous position values using the following formula: where X min and X max are the pre-defined range of position values and U(0,1) is a uniform random number in the range [0,1].
To convert the continuous position values to integer positions, the generated values are mapped to the nearest integer number using a rounding function, round().

FPSO coding scheme
For the proposed FPSO, we develop a unique coding scheme intended to exploit the group structure of the problem.We let A = [1, 2, 3,…,n] be a string representing a set of n tasks to be performed by m care givers.Then, the evaluation of A involves partitioning tasks along A into m groups so that the workload is balanced -or else the workload variation between the care givers is minimised, the cumulative load for each group does not exceed the care giver working time limit, and time window violation is minimised to the highest degree possible.Figure 4 illustrates the group structure of the particle, consisting of two parts.Part 1 represents the assignment of care workers s1, s2, and s3, to groups of tasks {1,2}, {3,4,5}, and {6}, respectively.This is the actual group structure of the problem.Part 2 denotes the last position of each task group.Therefore it records the position of the delimiter or frontier "|" separating the task groups.

Fuzzy fitness evaluation
The fitness of each particle is obtained through fuzzy evaluation.Two membership functions were formulated to evaluate candidate solutions.

Membership function 1 -Workload balance:
Let A represent a feasible task assignment, and x ik be a binary variable that defines whether or not a task k with duration p k is assigned to care giver i.Then the aim is to minimise a function f i , the variation of each care giver's workload from the average workload: , for all where ω is the average workload.
However, since the workload variation f i is fuzzy and should be within acceptable limits, we use fuzzy evaluation.The normalised membership function μ i shows the desirability of the task assignment relative to the most preferred (average) workload, ω.Since the workload assigned to every individual care giver should be close to the most preferred workload ω, the following fuzzy membership function holds true for every care worker i: where ω l and ω u are the lower and upper bounds of the fuzzy membership function.

Membership function 2 -Time window violation:
To maximise patient satisfaction, time windows should be satisfied as much as possible.It follows that time window violation by caregiver i must be minimised as much as possible.The time window violation can be expressed as follows: where g k is the actual start time of task k with time window [e k ,l k ].Assuming the intervalvalued membership function: where a and b are the acceptable limits determined by management; e k and l k are the earliest and latest acceptable task start times.

Overall fitness evaluation:
Using a comprehensive evaluation, it follows that the overall objective function can be formulated in terms of the normalised membership functions µ 1i and µ 2i as follows: ( ) Here w 1 and w 2 denote the weight behind satisfaction in respect of workload balance and time windows respectively.The weights give the decision-maker an opportunity to model the choices or preferences of the patients, the staff, and the management.
To evaluate the relative fitness of each particle, our FPSO maps the objective function to a fitness function F c (t), according to the expression: where z c (t) is the objective function of particle c at iteration t; and z m is the maximum objective function in the current population.

The overall FPSO algorithm
The proposed FPSO approach has a number of desirable advantages in its application.First, its procedure is easy to follow, and so it can be easily implemented in a number of problem situations.It is robust and versatile in that it is applicable to similar problems with little or no fine tuning.Moreover, the algorithm is computationally efficient, obtaining good solutions within reasonable computation times.Most importantly, incorporating fuzzy evaluation into the algorithm allows the global optimisation process to pass through inferior solutions that will eventually yield improved solutions.Fuzzy multi-criteria evaluation ensures that instances of infeasible solutions are avoided during algorithm execution.Based on the descriptions provided in previous sections, we summarise the flow of the FPSO algorithm pseudo-code in Figure 5.

Figure 5: A pseudo-code for the FPSO algorithm
In the next section we present illustrative examples and computational results, together with the relevant discussions.

COMPUTATIONAL ILLUSTRATIONS
The FPSO was implemented in JAVA on a 3.06 GHz speed processor with 4GB RAM.The FPSO parameters were set as follows: the number of particles N = 20, w = 0.71, and c 1 = c 2 = 1.46.The stopping criterion was determined by the maximum number of iterations t max = 300, or the number of iterations, t o = 30, without solution improvement.Each computational experiment was run 30 times.

Computational experiments
To illustrate the efficiency and effectiveness of the FPSO approach, we test the algorithm on task assignment problems in the literature [2].Table 1 presents task information comprising task duration p k , time window [e k ,l k ], and the competence requirement c k .The task duration consists of the time taken to travel to and from the patient and the actual care execution time.The earliest and latest start times of each task k are denoted by e k and l k respectively.Table 2 provides information for the care worker, where u i and v i are the start and end times of the working time of worker i, and the corresponding qualification ranking q i , which assumes an increasing range of skill level from 1 to 5; a higher level is capable of performing all tasks in the lower ranks.All the time parameters are in minutes.Further problem examples of sizes 10, 15, 20, and 30 tasks, with 3 to 10 care givers, were generated randomly and tested using the FPSO approach.The next section provides the computational results obtained and our discussion.

Computational results and discussion
Table 3 provides the optimal solution obtained by the FPSO approach, similar to the results presented in [2].The task assignment solution shows the start time of each task and the care giver assigned to each task.It is interesting to note that all the requirements relating to time windows, working times, staff competences, and workload balance were satisfied.
Here, it is also noted that the total workload can be carried by two care workers.This implies that, with better use of resources, care worker 2 is available for other administrative responsibilities.
Further experimentations with randomly-generated problem instances of different sizes, ranging from 10 to 30 tasks for 3 to 10 care givers, were conducted.Table 4 presents a comparative analysis based on mean computation times obtained by solving each problem 30 times.The performance of FPSO is compared with an ILP approach in [2].It can be seen that the algorithm performed better for problems with 15 and 20 tasks, while ILP performed better for problems with 10 tasks.This shows that FPSO is more efficient and effective: it can provide good solutions within reasonable computation times.Computations on large-scale problems with a large number of tasks and care givers demonstrated that the algorithm can solve large-scale task assignment problems within a few seconds or minutes, while respecting all the competence and time window constraints.From our experience, the algorithm showed potential for solving large-scale problems with in excess of 100 workers and 500 tasks.This is especially important when performing staff scheduling, where patient visits and other related duties (e.g., administrative duties, drug deliveries) are to be assigned to staff in a home healthcare environment.In such situations, decisionmakers have to make good decisions within a limited time frame.Thus FPSO is a useful decision support tool in healthcare operations decisions.

CONCLUSION
Home healthcare task assignment is a complex but crucial problem.Developing multicriteria optimisation approaches for such a problem is imperative.High-quality task schedules are important for promoting high worker morale while avoiding absenteeism and attrition.In a homecare environment, where the preference on workload is ill-defined or imprecise, the use of fuzzy set theory concepts is beneficial.
This paper proposed a fuzzy particle swarm optimisation approach to solve task assignment problems in a homecare environment, given a set of tasks and a set of available care workers to perform the tasks.An illustrative example was adopted from the literature, demonstrating the effectiveness of the algorithm.The suggested approach provides useful contributions to researchers, academicians, and practitioners in the health service sector.
The proposed algorithm is an invaluable contribution to the industrial engineering community, as it provides an approach to solving task assignment problems from a multicriteria view point, where the preferences and choices of the patient, the care worker, and the management are imprecise or ill-structured.This makes decision-making more realistic.Compared with linear programming methods, the algorithm is capable of handling largescale problems more efficiently, providing useful solutions in a reasonable computation time of up to a few minutes.This is essential in real-life healthcare decisions.Therefore the proposed approach is an invaluable solution approach for the further development of decision support systems for home healthcare institutions.The method also provides useful contributions to the practicing decision-maker.
The proposed fuzzy multi-criteria particle swarm optimisation approach provides an opportunity to use weights, giving a way of incorporating the decision-maker's preferences and choices in an interactive manner.In practice, decision-makers appreciate using interactive decision support that does not prescribe the solution, but rather provides a listing of good alternative solutions.Thus the decision-maker uses information from care givers and the management to make adjustments to the solution process in terms of weights.Overall, the fuzzy particle swarm optimisation approach proposed in this paper is an effective and efficient approach that provides a viable platform for developing decision support tools for solving task assignment problems for home healthcare service providers.
Evaluation functions, such as workload, can be modelled using a triangular fuzzy number to model care task assessment.A triangular fuzzy parameter is defined by A = <a,b,c>, where b denotes the desired value of the fuzzy parameter, and a and c are the lowest maximum acceptable values, as shown in Figure1

Figure 1 :
Figure 1: A triangular fuzzy membership function (a,b,c)

Figure 3 :
Figure 3: Flowchart for the proposed FPSO