A GRASP-based approach to the multi activity combined timetabling and crew scheduling problem considering a heterogeneous workforce

Article history: Received November 4 2015 Received in Revised Format April 6 2016 Accepted April 7 2016 Available online April 7 2016 This paper tackles an extension to the Multi-activity Combined Timetabling and Crew Scheduling Problem (MCTCSP). The goal of the original problem is to schedule the minimum number of homogenous workers required, in order to visit a set of customers characterized by services needed against schedule availability. However, since in home services it is common to have specialized workers, a mathematical model considering a heterogeneous workforce is proposed. As a solution, a GRASP-based algorithm is designed. In order to test the metaheuristic performance, 110 instances from the literature are adapted to include categorical skills. In addition, another 10 instances are randomly generated to consider large problems. The results show that the proposed GRASP finds optimal solutions in 46% of the cases and saves 40–96% computational time. © 2016 Growing Science Ltd. All rights reserved


Introduction
The Multi-activity Combined Time tabling and Crew Scheduling Problem (MCTCSP) was proposed by Barrera et al. (2012).Since it is an extension of the two NP-hard problems, MCTCSP can also be classified as NP-hard (Fischetti et al., 1989;Burke & Petrovic, 2002;Azadeh et al., 2013).The MCTSP considers a set of customers, with different geographical locations, which requires a set of services.These services must be provided in the client's place of residence, by selecting one of their desirable schedules.To meet the requirements, a set of workers is available with identical skills.The purpose of this problem is to determine which one of the workers should visit each customer and at what time.To do so, a set of routes that consume the minimal amount of resources is built.Considering the framework proposed by Ernst et al. (2004), this can be classified as a line of work construction problem.According to Barrera et al. (2012) there are two innovative features in the problem: i) the need to decide when every client is served and ii) a multiple activities environment.This configuration was motivated by a case study in which medical staff visits schools.In this way, if a set of clients is considered, each one will determine a subset of schedules N in which it can be visited.To model this problem, a directed graph { , } is proposed.Within this graph, is the set of nodes and is the set of arcs.The set of nodes is formed by the union of the possible schedules of each costumer ( = ∪ N , ∀ i ∈ ∪ { } ∪ { }) where and represent dummy nodes.Additionally, each node j (j ∈ ) is associated with: a client i (i ∈ ), a service m (m ∈ ), a day l (l ∈ ) and a start time for the visitn (n ∈ ℋ).In the original problem, any worker k (k ∈ ) is capable of providing any services (s ∈ ); that is, the workforce is considered homogeneous.In this context, the decision to be made is whether or not to use the arc (i.j).In spite of the fact that crew scheduling is a critical activity in service delivery environments (Sureshkumar & Pillai, 2012, Hedjazi, 2015), the assumption of homogeneous workforce may involve difficulties for implementation (De Bruecker et al., 2015a).Consider, for example, the scenario in which some of the portfolio services are specialized.Consequently, there is a subset S´ of services (S´⊂ ) that requires different skills.To use the modeling approach proposed in Barrera et al. (2012), the original optimization problem, that considers the set of services , must be divided in two sub problems.The first studies the set of services S´; the second, the set S´ whenever = S´∪ S´ .In that case if where f is the optimal value for the problem that includes all of the portfolio services and x represents the points of solution space, then it is expected that, for related portfolios, f ≤ f + f , where f and f are the solutions for the two sub-problems.Consequently, when skills are incorporated, there is a greater potential for application of the solution (Parisio & Jones, 2015).Fig. 1 represents an example of the graph { , }, which is based on the information from Table 1.This example involves two clients, two services, five days, two schedule options for each customer and two types of workers.Client A requests service 1 while Client B needs both services.In addition, for Client A, service 1 can be provided on day 1 at 8:00 (node 1) or on day 3 at 10:00 (node 4).Finally, Worker 1 has the skills required to provide the two services, while Worker 2 can only provide service 2. Three recent literature reviews conclude the relevance of such kinds of extensions in workforce scheduling problems (Van den Bergh et al., 2013;De Bruecker et al., 2015a;Pinedo et al., 2015).
According to the authors it is necessary that, research in the area advances in two ways: i) include typical features of real systems to increase the impact, and ii) develop efficient algorithms as a way to close the gap between research and common practices in different industries.In this vein, multi-skilled workers have to be taken into consideration in order to find the optimal human resource allocation (Małachowski & Korytkowski, 2016).According to Olivella & Nembhard (2016), it is often most useful to obtain feasible solutions of the problem, even if they are suboptimal, rather than solving a relaxed version of the problem.Hence, recent applied research efforts, including skills modeling, cover a wide range of application areas (Henao et al., 2015).
As an example, Zacharia and Nearchou (2016), study the assembly line worker assignment and balancing problem (ALWABP).This problem seeks the best assignment of tasks to workers as well as the workers to workstations.Authors use categorical skills in order to model disabled workers planning.It is assumed that a worker found efficient to accomplish a particular set of tasks may be inefficient (or even unable to carry out) on another set.As a consequence, task times differ depending on worker skills.In this context, the proposed modeling approach allows to solve a real-world problem with particular social relevance.
On the other hand, Lieder et al. (2015) focus on home health care workforce planning.The authors include a preferred start time, for each task, which is surrounded by a penalty function for earliness and tardiness.Additionally, each task has a known duration and requires a certain qualification level (QL) of the respective care worker.Hence, the QLs are modeled as hierarchical skills.The results of this study show that, from a client perspective, using skill substitution is beneficial to the overall quality of service.Also, De Bruecker et al. ( 2015b) present a two-stage mixed integer programming approach for optimizing the skill mix and training schedule at an aircraft maintenance company.According to the authors, only workers that acquired the required license are allowed to maintain that aircraft.Hence, a categorical skills model is proposed.
Finally, Ladier (2014) propose a weekly timetabling and a daily rostering problem for warehouse personnel.Authors claim that, in logistics context, the qualifications are very specific to a person: two employees are very likely to have different skills and different licenses to drive the handling equipment.Therefore, the set of tasks mastered by a given employee will be different from the set of tasks mastered by any of his colleagues.In this context, clustering the employees according to their skills does not simplify the problem.Hence, skills modeling in classic rostering problems, it is an interesting research field for the next years in different industries (Chanpanit & Udomsakdigool, 2015;Parisio & Jones, 2015;Braekers et al., 2016).
This paper proposes an extension to MCTCSP so that workers with different skills are considered (MCTCSP-HW).In other contexts, similar extensions have been documented as site-dependent versions of classical problems (Zare-Reisabadi & Hamid Mirmohammadi, 2015).According to the classification proposed in De Bruecker et al. ( 2015a), the MCTCSP-HW studies categorical skills.This means that one service only can be provided by workers with a particular skill.In problems where the decision concerns the number of workers, this extension has two implications: a greater number of decision variables and new coverage constraints.Finally, the construction of lines of work is operational (Gutiérrez et al., 2014) and in some environments may be dynamic.Hence, the NP-hard nature of the MCTCSP-HW supports the use of a meta-heuristic solution approach.Moreover, since in the MCTCSP-HW it is possible having large infeasible regions in the search space, GRASP is an appropriate method (Glorieux et al., 2015).On the other hand, constructive procedures combined with local search are a very effective solution method for some timetabling problems (Merlot et al., 2003).Thus, GRASP allows to produce feasible solutions for large instances more efficiently The remainder of the paper is organized as follows: Section 2 shows the mathematical model for the extended problem; Section 3 describes the solution strategy; and Sections 4 and 5 present computational experiments and concluding remarks, respectively.

Integer programming model for MCTCSP-HW
The extension of the model proposed in Barrera et al. (2012) considers the same definition for the graph { , }, detailed in Section 1.This is a directed and pre-processed graph so that the arc (i.j) exists only if the start time at node is later than the finishing time at node , plus the traveling time between both nodes.The sets of nodes ( ), arcs ( ), clients ( ) and services ( ) are defined.Finally, in order to model the skills, a set of types of worker ( ) is included.
Additionally, it is known that a client demands a service , which is represented by the binary parameter .The skills of a worker are included by the binary parameter that takes the value 1 if the worker type can use the arc (i.j); that is, if he/she has the required skills for providing the services at nodes and .Finally, the nodes' information is modeled by the parameter that takes the value of 1 if the node corresponds to client and service .The decision variable is , which takes the value of 1 if a worker type uses the arc (i.j).

: ∈ ∈
(1) subject to: The objective function given in Eq. ( 1) is the minimization of the number of workers calculated as the number of arcs leaving the source node.The set of constraints represented in Eq. ( 2) guarantees that worker balance exists at each node.Eq. ( 3) guarantees the satisfaction of demand.Finally, Eq. ( 4) guarantees that workers without the required skills for providing a service are not assigned.The last set of constraints (Eq.( 5)) defines the nature of the decision variables.

A GRASP-based approach
GRASP is a multi-start and iterative metaheuristic for combinatorial problems, in which each iteration consists of two phases: construction and local search (Resende & Ribeiro, 2010).Fig. 2 describes the proposed algorithm for the MCTCSP-HW.In the construction phase, the algorithm starts by selecting one type of worker who can provide a service that no other can.In the case that this does not exist, the type of worker that provides more services of those requested is selected.After selecting the type of worker, visits are randomly assigned within a specified size of RCL.The RCL is constructed taking into account the relations of precedence.Since the graph is directed and oriented, when it is not possible to assign more visits, a new worker is selected.
The local search phase aims to reduce the number of workers.Initially it selects the worker with the least amount of assigned services, and attempts to allocate their visits to other workers of the solution.If that is not possible, it selects the next least used.This procedure continues until one of two stopping criteria is met: i) all the workers have been examined or ii) the process has reached a maximum runtime.
In order to set the parameters of GRASP, an Experimental Design was carried out.According with Ridge & Kudenko (2010) Design of Experiments (DOE) is an efficient way for tuning parameters in terms of the amount of data that need to be collected.This fact is critical to comprehend the algorithm design spaces.Authors analyze a case study and demonstrate the benefits of using DOE for parametrizing an Ant Colony to solve a Travelling Salesman Problem.Having this in mind, a nested three-factor experiment was designed.

Fig. 2. Algorithm for the MCTCSP-HW
The factor A is the instance's size, factor B the runtime and factor C the RCL's size.The levels of factor B are nested to factor A. From the runtime of the linear programming model, three levels of factor A were defined: 150, 300 and 900 nodes.As factor B is nested in A, their levels are distinct for each instance's size.For instances of 150 nodes, it has the levels 5, 15 and 25 s; for instances of 300 nodes, 5, 25 and 45 s; and for instances of 900 nodes, 5, 70 and 135 s.As a final point, factor C has the levels 3, 6 and 9.Ten observations were analyzed for each treatment.The ANOVA allows us to conclude that the three factors A, B and C significantly influence the results of the GRASP (values-p of 3.2E-37, 3.6E-13 and 1.9E-2 respectively).To check the assumptions of the ANOVA, the normality (Shapiro-Wilks) and homogeneity of variances (Bartlett) tests were performed.Since the experiment did not meet the assumptions, non-parametric tests of Mood's means difference were performed.
For instances of 150 nodes, there is no significant difference between the resultant workers under 15 and 25 s of execution (p-value = 0.448).Nonetheless, with a p-value<0.001the number of workers is less significant than the results obtained with a runtime of 5 s.Thus, the selected runtime was 15 s.A similar analysis was carried out for instances of 300 and 900 nodes.The conclusion is that the stop time for the metaheuristic was 15, 25 and 70 s respectively.Interaction plots are shown in Fig. 3.

Computational Experiments
For the experiment, instances reported in Barrera et al. (2012) were used.Those instances were randomly generated using information from a real problem.Additionally, in order to prove the extension at larger problems, 10 instances of 300 client-service combinations (900 nodes) were generated.Due to the nature of MCTCSP-HW, it was necessary to generate an additional parameter that associates a set of five types of worker with certain services.The generation of this parameter was random, ensuring two things: i) all requested services must be provided by at least one type of worker, and ii) the skills portfolio will cross at least two types of worker.
The model was implemented on Gusek and run on a computer Intel Xeon E5-2667 of 2.9 GHz and 256 GB RAM.
Table 2 reports the average objective function, for each size of the problem, in the instances that were solved to optimality within 3600 s.Thus, for example, of the instances of 35 client-service combinations (105 nodes), it was possible to solve eight within the proposed runtime of Barrera et al. (2012).The average time of those instances was 28.6 s and the objective function was 5.4 workers.For some instances it was not possible to find an optimal solution within 3600 s.Table 3 reports the best integer solution found by the model and the GAP of the solution regarding the relaxed problem.This means that, for example, for instances of 75 client-service combinations, there were three that found integer solutions within 3600 s.Those solutions have an average objective function of 9.7 workers and a GAP of 20%.Finally, for instances of 900 nodes, it was not possible to find any integer solution within 3600 s.Table 4 reports the results of the relaxed model.These results are especially interesting, because one of the main challenges is the design of algorithms that allow a quality solution in reasonable computational time (De Bruecker et al., 2015a).In large instances, as was expected, obtaining exact solutions is not an option.However, the purpose of this experiment is to establish comparison values that allow conclusions to be drawn about the quality of the solutions found with GRASP.Table 5 summarizes the results of GRASP and found optimal solutions.As shown, in instances of 35 customer-service combinations, using GRASP means a saving of 47.5 % of the computational effort compared to 4.1% of sacrifice in the objective function.For the first five instances' sizes it was possible to find solutions with GAP below 5%.Finally, in instances of 40 and 45 customer-service combinations GRASP found optimal solutions in 100% of cases.Similar results were found with the instances that could not be solved within 3600 s or less.For these cases, the saving of computational time is up to 96%.Another interesting comparison is the performance of the metaheuristic in instances where it was not possible to find optimal solutions.Table 6 presents the results compared among GRASP and the best solutions found in the entire maximum runtime.As shown, only in two instances is there a difference between the two solutions.Finally, in instances where integer solutions could not be found, GRASP reports an average GAP of 23% regarding the relaxed problem.Although the data are not directly comparable, it is important to note that for the second group of instances, the best solution for the linear programming model has an average GAP of 28%.

Conclusions
This paper proposed an extension to a problem in which workforce scheduling for home services is considered.The original version of the problem deals with homogeneous workers.However, in the context of service delivery, it is common to find that workers are specialized.Consequently, the original modeling strategy may involve sacrifices in the objective function in environments with related portfolios.Hence, a formulation that includes workers with categorical skills is proposed.Additionally a GRASP-based solution technique, for larger instances, is designed.This extension responded to what recent reviews in the field have considered potentially interesting future lines of work.
The proposed mathematical formulation is able to solve 75% of instances to optimality within less time than the maximum proposed by Barrera et al. (2012).The remaining 25% is divided into two groups: first, for 16% of the instances integer solutions were found.The average GAP of these solutions, regarding the relaxed problem, is 28%.On the other hand, for 9% of the instances it was not possible to integer find solutions within the limited runtime.In this case, the problem was solved by relaxing the constraint of variables' integrality.
For instances where it was not possible to find optimal solutions in good computational time, a GRASPbased algorithm is proposed as a solution technique.From 120 instances tested, GRASP found optimal solutions in 46%.Additionally, in 46% of instances, the difference between the exact solution and the one found by the metaheuristic is one worker; that is, the minimum difference.In terms of computational time, using GRASP, savings vary between 40-96%.
This approach is particularly relevant for real-life applications.According to Barrera et al. (2012), stochastic times must be considered.It is therefore necessary to design efficient solution strategies that can be articulated with Monte Carlo Simulation (Juan et al., 2015).The designed GRASP-based algorithm saves up to 96.5% of computational effort.

Table 1
Data for example

Table 2
Instances solved to optimality

Table 3
Best integer solution and GAP within 3600 s

Table 4
Results of relaxed model with large instances

Table 5
Comparison with instances solved within 3600 s

Table 6
Comparison among GRASP and best integer solutions