Minimizing Labor Cost by Developing Workforce Scheduling Model: A Case Study
Article History
Received: 14. 02.2022 Revision: 28.02.2022 Accepted: 08.03.2022 Published: 20.03.2022
Author Details
My Pham Thi1, Minh Nguyen Thanh*1
and Hien Ngoc Do1
Authors Affiliations
1Industrial Systems Engineering Department, Ho Chi Minh City University of Technology, VNU-HCM, Vietnam
Abstract: This research focused on improving the workforce scheduling problem at a plastic company. The research developed a computer program to solve two problems: shift scheduling and labor allocation, with the objective of minimizing labor costs, based on the constraints on the number of workers, the number of products, the suitability of each worker and other related constraints. The workforce scheduling program is built on the interface of MS. Excel software, VBA project and Solver, OpenSolver tool. The purpose of the program is to calculate the number of workers required for each working shift so as to optimize costs, then allocate workers to working shifts. The program was built and validated with data from the studied shop floor in 7 months. The results show that the program has arranged workers according to the corresponding shift and the speed of completing the shift schedule has been reduced by 8 times compared to the present, the total labor cost is saving average 15.1% per month. The program meets the set parameters: completion time is reduced, worker response level is increased and the time difference between shifts is less than 40%.
Keywords: Workforce scheduling, shift scheduling, labor allocation.
INTRODUCTION AND LITERATURE REVIEW
In this work, we studied the operation of blowing shop floors at a plastic manufacturing company in Vietnam. Because of customers’ high demand, the shop floors continuously operate 24/7. Therefore, it is extremely necessary to schedule working shifts and days off for each worker, but it’s a hard problem due to related constraints. Derived from the company's production practice and the importance of this problem, this research aims to improve the workforce scheduling problem. The research only considers data in 7 months. All data are considered in a deterministic environment, ignoring random factors such as: sudden absence of workers, urgent orders,... In a 24/7 continuous work environment, managers are required to consider assigning workers to work shifts so that they do not disrupt the work cycle and to ensure optimal labor costs. Therefore, workforce scheduling is a challenging yet critical problem in both manufacturing (Hast, J. 2017; & Stark, C., & Zimmermann, J. 2004) and services (Caprara, M., & Monaci, P. Toth. 2003; Talbot, F.B., & Patterson, J.H. (1978; & Talbot, F.B., & Patterson, J.H. 1978). Workforce scheduling (human resource scheduling) deals with the arrangement of shift schedules and the assignment of workers to shifts in order to cover the demand for resources that vary over time (Pinedo, M. L. 2009). The schedules are typically subject to various constraints dictated by equipment requirements, union rules.The resulting problems tend to be combinatorially hard. Also according to Pinedo (Pinedo, M. L. 2009), in shift scheduling - one of the problems of workforce scheduling, we consider a cycle that is fixed in advance. In certain settings the cycle may be a single day, while in others it may be a week or a number of weeks. Besides, each work assignment pattern over a cycle has its own cost and the objective is to minimize the total cost.
In the past, Jari Hast (2017) pointed out the necessary input parameters for a shift scheduling problem including: total number of current workers, the required number of workers per shift and the number of working hours per week of each worker. There were several solution models to this problem depending on their own constraints, since Barnhart et al., (1998) studied formulations of integer programs with a huge number of variables and their solution by column generation methods, some approaches possibly combined with column generation were used in many other staff scheduling applications (Stark, C., & Zimmermann, J. 2004; & Mehrotra, K. E., & Murphy, M. A. Trick. 2000). Specifically, as in Stark, C., & Zimmermann, J. (2004) proposed a multi-commodity flow network for the workforce scheduling problem under consideration and show how branch-and-price can be used to solve this problem. The branch-and-price solution
procedure is able to generate solutions that are on average within 10% of the lower bound in less than 20 minutes for problem instances with 50 workers.
Caprara, M., & Monaci, P. Toth. (2003) proposed mathematical models and solution algorithms for a family of staff scheduling problems. Their main objective is the minimization of the number of employees needed to perform all daily assignments in the horizon, methodology is to decompose the problem into two steps: the definition of the sequence of working and rest periods for each employee, and the definition of the daily assignment to be performed in each working period by each employee. Besides, some mathematical models of workforce scheduling problems were established depending on their own constraints as in (Aykin, T. (2000; Billionnet, 1999; Jaumard, F., & Semet, T. V. 1998; Brusco, M. J., & Jacobs, L. W. 1998; Thompson, G. M 1997; & Beaumont, N. 1997). The algorithms of these researches have contributed to the diversity of the literature review in this field.
In the next section, we focus on gathering and analyzing data to identify problems of our case study, then building a mathematical model based on literature review and presenting the research findings. For the last section, we discuss the research results and make some recommendations for the company to achieve operational efficiency.
PROBLEM DESCRIPTION
The blowing shop floors currently operate 24/7, which makes a big problem of days-off scheduling and shift scheduling. The manager arranges to coordinate between 8-hour shifts/day and 12-hour shifts/day for all workers. The 12-hour shift includes 8 hours of normal working time and 4 hours of overtime. Overtime pay is 1.5 times an employee's normal salary per hour, which means that the more 12-hour shifts are arranged, the more labor costs will be increased. Moreover, it is necessary to balance the number of existing workers with the number of workers required from the production plan, so it’s merely important to reschedule the workforce to meet the daily required number of workers and minimize the labor costs.
The effectiveness of a workforce scheduling model was evaluated by 3 criterions: the total time of scheduling, worker response level (the level of meeting the number of workers required) and the balance rate between 8-hour shift and 12-hour shift. In fact, the manager spent around 4 hours scheduling the workforce manually at least one day in advance. However, with manual scheduling calculation, the number of workers highly varies over day (Figure 1).
INTRODUCTION AND LITERATURE REVIEWINTRODUCTION AND LITERATURE REVIEWIn this work, we studied the operation of blowing shop floors at a plastic manufacturing company in Vietnam. Because of customers’ high demand, the shop floors continuously operate 24/7. Therefore, it is extremely necessary to schedule working shifts and days off for each worker, but it’s a hard problem due to related constraints. Derived from the company's production practice and the importance of this problem, this research aims to improve the workforce scheduling problem. The research only considers data in 7 months. All data are considered in a deterministic environment, ignoring random factors such as: sudden absence of workers, urgent orders,... In a 24/7 continuous work environment, managers are required to consider assigning workers to work shifts so that they do not disrupt the work cycle and to ensure optimal labor costs. Therefore, workforce scheduling is a challenging yet critical problem in both manufacturing (Hast, J. 2017; & Stark, C., & Zimmermann, J. 2004) and services (Caprara, M., & Monaci, P. Toth. 2003; Talbot, F.B., & Patterson, J.H. (1978; & Talbot, F.B., & Patterson, J.H. 1978). Workforce scheduling (human resource scheduling) deals with the arrangement of shift schedules and the assignment of workers to shifts in order to cover the demand for resources that vary over time (Pinedo, M. L. 2009). The schedules are typically subject to various constraints dictated by equipment requirements, union rules.The resulting problems tend to be combinatorially hard. Also according to Pinedo (Pinedo, M. L. 2009), in shift scheduling - one of the problems of workforce scheduling, we consider a cycle that is fixed in advance. In certain settings the cycle may be a single day, while in others it may be a week or a number of weeks. Besides, each work assignment pattern over a cycle has its own cost and the objective is to minimize the total cost. In the past, Jari Hast (2017) pointed out the necessary input parameters for a shift scheduling problem including: total number of current workers, the required number of workers per shift and the number of working hours per week of each worker. There were several solution models to this problem depending on their own constraints, since Barnhart et al., (1998) studied formulations of integer programs with a huge number of variables and their solution by column generation methods, some approaches possibly combined with column generation were used in many other staff scheduling applications (Stark, C., & Zimmermann, J. 2004; & Mehrotra, K. E., & Murphy, M. A. Trick. 2000). Specifically, as in Stark, C., & Zimmermann, J. (2004) proposed a multi-commodity flow network for the workforce scheduling problem under consideration and show how branch-and-price can be used to solve this problem. The branch-and-price solution procedure is able to generate solutions that are on average within 10% of the lower bound in less than 20 minutes for problem instances with 50 workers.Caprara, M., & Monaci, P. Toth. (2003) proposed mathematical models and solution algorithms for a family of staff scheduling problems. Their main objective is the minimization of the number of employees needed to perform all daily assignments in the horizon, methodology is to decompose the problem into two steps: the definition of the sequence of working and rest periods for each employee, and the definition of the daily assignment to be performed in each working period by each employee. Besides, some mathematical models of workforce scheduling problems were established depending on their own constraints as in (Aykin, T. (2000; Billionnet, 1999; Jaumard, F., & Semet, T. V. 1998; Brusco, M. J., & Jacobs, L. W. 1998; Thompson, G. M 1997; & Beaumont, N. 1997). The algorithms of these researches have contributed to the diversity of the literature review in this field.In the next section, we focus on gathering and analyzing data to identify problems of our case study, then building a mathematical model based on literature review and presenting the research findings. For the last section, we discuss the research results and make some recommendations for the company to achieve operational efficiency.PROBLEM DESCRIPTIONThe blowing shop floors currently operate 24/7, which makes a big problem of days-off scheduling and shift scheduling. The manager arranges to coordinate between 8-hour shifts/day and 12-hour shifts/day for all workers. The 12-hour shift includes 8 hours of normal working time and 4 hours of overtime. Overtime pay is 1.5 times an employee's normal salary per hour, which means that the more 12-hour shifts are arranged, the more labor costs will be increased. Moreover, it is necessary to balance the number of existing workers with the number of workers required from the production plan, so it’s merely important to reschedule the workforce to meet the daily required number of workers and minimize the labor costs.The effectiveness of a workforce scheduling model was evaluated by 3 criterions: the total time of scheduling, worker response level (the level of meeting the number of workers required) and the balance rate between 8-hour shift and 12-hour shift. In fact, the manager spent around 4 hours scheduling the workforce manually at least one day in advance. However, with manual scheduling calculation, the number of workers highly varies over day (Figure 1).Figure Image is Available in PDF FormatFigure 1: Total number of workers per day.Although worker response level is maintaining well because of the large number of workers, Fig. 1 shows that the number of workers varies from day to day and requires a large amount of over 200 workers per day. Therefore, calculating the number of workers for each work day is necessary.Besides, the rate between 8-hour shift and 12-hour shift is not balanced while the 12-hour shift accounts for 85% total shifts, the 8-hour shift only takes 15% the remaining one. Table 1 shows the summary of total workers per month and percentage rate of 8-hour shift and 12-hour shift.Table 1: Total Workers in Each Shift per Month Month8-hour shift% 8-hour shift12-hour shift% 12-hour shiftTotal workers

Jan233033.5%462866.5%6958

Feb53612.5%374987.5%4285

Mar74210.7%622289.3%6964

Apr68511.2%543588.8%6120

May91412.9%615087.1%7064

Jun82011.1%657988.9%7399

Jul92213.3%601086.7%6932

Total694915.2%3877384.8%45722

The unbalanced rate between the 8-hour shift and the 12-hour shift causes the high labor cost at the shop floor, where overtime pay is 1.5 times an employee's normal salary per hour. As a result, the cost of overtime is currently very large, accounting for nearly 40% of the total labor cost, which leads to the high labor cost. Figure Image is Available in PDF FormatFigure 2: Total overtime cost and normal working time cost per month.Generally, the company’s workforce scheduling method needs optimizing time and labor cost but still meets the production plan requirement. This research focuses on generic workforce scheduling problems, including shift scheduling and labor allocation, then develops a computer program to support the company's leader.MATHEMATICAL MODELThere are some fixed constraints of workforce scheduling problem at shop floor:Make sure each employee gets 3 days off per month.The number of workers in shifts meets the number of workers required from the production plan.Some special products are assigned to specific workers to implement.Model 1: Shift scheduling problemAccording to Pinedo (2005), the problem can be formulated in matrix type as follows.Objective:Minimize
Z
=
x
´
×
c
´
Z= acute {x} × acute {c}
(1)

Constraints:
A
x
´
≥
b
´
A acute {x} ≥ acute {b}
(2)

x
´
≥
0
acute {x} ≥0
(3)

Where: i is the index of time period (i = 1, 2, …, m); j is the index of working shift (j = 1, 2,..., n); aij is the binary variable, aij = 1 if period i is a work period and 0 otherwise; bi is number of workers required from the production plan; cj is the cost of assigning a worker to shift j; xj is the decision variable representing the number of workers assigned to shift j; A is the matrix of aij and
x
´
acute {x}
;
c
´
acute {c}
;
b
´
acute {b}
is the vector of xj; cj; bi.Model 2: Labor allocation problemOutput of model 1 (shift scheduling) is the number of workers for each working shift in a day, this will be the input model 2 (labor allocation). The objective of model 2 is to find a schedule for each worker including their days off, working days, working shifts in order to minimize total labor cost. In particular, it is necessary to consider the skills and suitability of workers for the types of products from the production plan.Objective:Minimize
Z
=
∑
i
∑
j
x
ij
c
j
Z= sum from {i} {sum from {j} {{x} rsub {ij} {c} rsub {j}}}
(4)

Constraints:
∑
i
x
ij
≥
D
sum from {i} {{x} rsub {ij}} ≥D
∀
i
∈
I
;
∀ i∈I;
j
∈
J
j ∈J
(5)

∑
j
x
ij
≤
1
sum from {j} {{x} rsub {ij}} ≤1
∀
i
∈
I
∀ i∈I
(6)

∑
j
x
ij
l
j
≤
12
sum from {j} {{x} rsub {ij} {l} rsub {j}} ≤12
∀
i
∈
I
∀ i∈I
(7)

∑
j
x
ij
l
j
≥
8
sum from {j} {{x} rsub {ij} {l} rsub {j}} ≥8
∀
i
∈
I
∀ i∈I
(8)

x
ik
+
x
ih
≤
1
+
(
e
k
−
s
h
)
/
8
{x} rsub {ik} + {x} rsub {ih} ≤1+( {e} rsub {k} - {s} rsub {h} )/8
∀
i
∈
I
;
∀ i∈I;
k
,
h
∈
J
k,h∈J
(9)

x
ik
+
x
ih
≤
1
+
(
s
h
−
s
k
)
/
21
{x} rsub {ik} + {x} rsub {ih} ≤1+( {s} rsub {h} - {s} rsub {k} )/21
∀
i
∈
I
;
∀ i∈I;
k
,
h
∈
J
k,h∈J
(10)

∑
k
x
ik
−
∑
h
x
ih
=
0.4
∑
j
x
ij
sum from {k} {{x} rsub {ik}} - sum from {h} {{x} rsub {ih}} =0.4 sum from {j} {{x} rsub {ij}}
∀
i
∈
I
;
∀ i∈I;
k
,
h
∈
J
k,h∈J
(11)

∑
i
∑
j
x
ija
≥
D
a
sum from {i} {sum from {j} {{x} rsub {ija}} ≥ {D} rsub {a}}
∀
i
∈
I
;
∀ i∈I;
k
,
h
∈
J
;
k,h∈J;
a
∈
A
a∈A
(12)

where I is the set of workers; J is the set of working shifts; lj is the time of shift j (length of shift j); sj is the start time of the shift j; ej is the end time of the shift j; D is the number of workers required from the production plan, A is the set of products with high quality requirements; c is the normal working time labor cost per hour (1.5c: overtime labor cost per hour); xij is the decision variable (binary variable), xij = 1 if worker i is assigned to shift j, otherwise xij = 0 and Da: number of workers required for a-type product.The objective function (4) is to minimize the total labor cost in the working shifts. Constraint (5) ensures that the number of workers working in a day meets the number of workers needed that day. Constraint (6) shows that each worker can only work 1 shift per day. Constraint (7) and (8) show that the maximum and minimum time of a working shift are 12 hours and 8 hours. Constraint (9) demonstrates the time between 2 shifts of 1 worker is at least 8 hours, similarly, constraint (10) is about that the time of day-off is at least 21 hours (the time between start time and end time of day-off). Constraint (11) shows that the difference between 12-hour shift and 8-hour shift is less than or equal to 40%. Last, constraint (12) is a hard constraint, workers are assigned to shift with appropriate skills.Data CollectionLevel of products, level of workers and number of workers required for each product: The blowing shop floor currently produces 310 products and has 260 workers. Because of the company’s private policy, products and workers are encoded: SP001, SP002,…, SP310 (products) and CN001, CN002,…, CN260 (workers). Products are divided into 4 levels based on their difficulties. Correspondingly, workers are also divided into 4 levels depending on their skills. 4-level workers can make all products of 4 levels. 3-level workers can make products of level 3 or below. Similarly, 2-level workers can make products of level 1 and level 2. 1-level workers are only arranged to make products of level 1. Besides, each product requires a certain number of workers. These were shown in Table 2, Table 3, Table 4.Table 2: Number of workers required for each productsProductNumber of workers required

SP0013

SP0023

SP0033

……

SP3091

SP3101

Table 3: Level of each workerWorkerLevel of worker

1234

CN001X

CN002X

CN003X

……………

CN259X

CN260X

Table 4: Level of each productProductLevel of product

1234

SP001X

SP002X

SP003X

……………

SP309X

SP310X

Matrix A(m,n): Divide each day into 24 intervals of 1 hour. In fact, the blowing workshop divides the working shift of 12 hours/day and 8 hours/day, so each day can be divided into 2 shifts of 12 hours and 3 shifts of 8 hours. The detailed information of working shifts are shown in Table 5, then matrix A(m,n) is built as Table 6.Table 5: Information of working shiftsShift (S1)Shift (S2)Shift (S3)Shift (S4)Shift (S5)

Length of shift12 hour12 hour8 hour8 hour8 hour

Start time6am6pm8am4pm12am

End time6pm6am4pm12am8am

Table 6: Matrix A(m,n)Time intervalShift (S1)Shift (S2)Shift (S3)Shift (S4)Shift (S5)

6 - 711

7 - 811

8 - 911

9 - 1011

10 - 1111

11 - 1211

12 - 1311

13 - 1411

14 - 1511

15 - 1611

16 - 1711

17 - 1811

18 - 1911

19 - 2011

20 - 2111

21 - 2211

22 - 2311

23 - 011

0 - 111

1 - 211

2 - 311

3 - 411

4 - 511

5 - 611

Labor cost unit: With the assumption of normal working time cost is 20,000 VND/hour, the overtime cost is 1.5 times and the night working cost is 1.2 times normal working time cost. Table 7 demonstrates the summary of labor cost of each shift.Table 7: Summary of labor cost for each shiftShiftS1S2S3S4S5

Labor cost(kVND/worker)280312160184184

RESULTSThe workforce scheduling program is built on the interface of MS. Excel software, VBA project and Solver, OpenSolver tool. Running 2 mathematical models, the results were demonstrated in this sections.Shift schedulingBased on the required number of workers per day, then run the shift scheduling program to calculate the number of workers working in each shift. With the number of workers required for each hour is 100 workers / hour, the solving speed of the program is 2 minutes / time. Table 8 shows the result of the shift scheduling program for the first 14 days of July.Table 8: Shift scheduling resultDate1-Jul2-Jul3-Jul4-Jul5-Jul6-Jul7-Jul8-Jul9-Jul10-Jul11-Jul12-Jul13-Jul14-Jul

# of workers required10296929810110192101102100102989785

(S1)6258565961615661626062595957

(S2)6258565961615661626062595957

(S3)4038363940403640404040393838

(S4)4038363940403640404040393838

(S5)4038363940403640404040393838

Due to the constraint that the total number of workers in the 12-hour shift must be larger than in the 8-hour shift (the company's policy to ensure wages for workers), the program calculates that the number of workers in the 12-hour shift is larger than in the 8-hour shift, but still ensure optimal labor costs.Table 9: Total workers of each shift per day using shift scheduling programDate8-hour shift(S3 + S4 + S5)12-hour shift(S1 + S2)% 8-hour shift% 12-hour shift

1-Jul12012449%51%

2-Jul11411650%50%

3-Jul10811249%51%

4-Jul11711850%50%

5-Jul12012250%50%

6-Jul12012250%50%

7-Jul10811249%51%

8-Jul12012250%50%

9-Jul12012449%51%

10-Jul12012050%50%

11-Jul12012449%51%

12-Jul11711850%50%

13-Jul11411849%51%

14-Jul11411450%50%

Table 10: Total workers of each shift per day using manual method (current stage)Date8-hour shift(S3 + S4 + S5)12-hour shift(S1 + S2)% 8-hourshift% 12-hourshift

1-Jul172267%93%

2-Jul142156%94%

3-Jul2319810%90%

4-Jul2421210%90%

5-Jul192238%92%

6-Jul152266%94%

7-Jul62153%97%

8-Jul13011154%46%

9-Jul192258%92%

10-Jul2521410%90%

11-Jul232219%91%

12-Jul2920812%88%

13-Jul2820312%88%

14-Jul111915%95%

Figure Image is Available in PDF FormatFig. 3: The different rate of shifts before and after improving Based on the results of the workforce scheduling program shown in Table 9, compared to the company's data shown in Table 10, the workforce scheduling program is much more optimal. The unbalanced rate between 8-hour shift and 12-hour shift has improved a lot and still ensures the required number of workers per day (Figure 3). On July 1, with a total required worker of 102 people/hour, the program calculated that the total number of workers working in the 12-hour shift was 124 people and the 8-hour shift was 120 people, a difference of 2%. Meanwhile, the manual shift has quite a large difference, the total number of workers in the 8-hour shift is only 17 people while in the 12-hour shift, it is up to 226 people, similar to other days.Labor allocationRunning the labor allocation program can specifically arrange which workers work in which shifts per day. The program runs with 1300 binary variables (aij), the solving speed is about 5 minutes/time. For example with the data of July 1st 2019, the number of workers required is 102 workers/hour, the result from shift scheduling program is 120 workers working the 8-hour shift and 124 workers working the 12-hour shift (detailed in previous section), the results of the labor allocation program are shown in Fig. 4, corresponding to the result of the shift scheduling program.Figure Image is Available in PDF FormatFig. 4: Labor allocation resultLabor costTotal labor cost calculated by workforce scheduling program and manual method are shown in Table 11.Apparently, total labor cost using workforce scheduling program is more optimal than manual scheduling due to the balanced rate between 8-hour shift and 12-hour shift. The average saving rate of labor cost is 15.1%.Table 11: Total labor cost using workforce scheduling program and manual method.DateWorkforce scheduling programManual scheduling

1-Jul57,824,000 69,880,000

2-Jul54,400,000 66,112,000

3-Jul52,160,000 62,648,000

4-Jul55,520,000 66,976,000

5-Jul57,232,000 69,352,000

6-Jul57,232,000 69,536,000

7-Jul52,160,000 64,680,000

8-Jul57,232,000 55,704,000

9-Jul57,824,000 69,912,000

10-Jul56,640,000 67,728,000

11-Jul57,824,000 69,440,000

12-Jul55,520,000 66,664,000

13-Jul54,992,000 64,984,000

14-Jul53,808,000 58,448,000

DISCUSSION AND CONCLUSIONAs mentioned before, there are 3 criterions to evaluate the workforce scheduling model: the total time of scheduling, the level of meeting the number of workers required and the balance rate between 8-hour shift and 12-hour shift. For the first criterion, the total time of scheduling has been reduced much lower than the actual stage. Currently, the manager spent around 4 hours scheduling the workforce manually. When using our model, it takes about 10 minutes to run the program from entering the production plan until the shift allocation table is produced. Including the time to be considered and adjusted by the shift leader, it only takes about 30 minutes to arrange the next day's shift. The model calculates the optimal cost of allocating workers, but still ensures that the number of workers is always greater than or equal to the required number of the production plan. For the last criterion, the unbalanced percentage rate has been greatly reduced as shown in the result section. The rate between 8-hour shifts and 12-hour shifts is only about 10% - 20%, but still ensures the number of workers required.The company is growing, the manual workforce scheduling model is no longer effective. Therefore, application of this new workforce scheduling model is necessary and completely suitable with the current conditions. Workforce scheduling research at a plastic company with shift scheduling model and labor allocation model gives optimal results, which is more efficient than the current method. However, the research only considers deterministic conditions, ignoring unexpected factors, so when operating the model, it is necessary to consider and be evaluated by the shift leader. In the future, we recommend expanding the related research on workforce scheduling problems considering more random factors. Moreover, it’s considerable to develop a computer program for workforce scheduling, which helps users easily access and store information.ACKNOWLEDGEMENTWe are grateful to the company for sharing and giving us an opportunity to implement the improvement.REFERENCEHast, J. (2017). Optimal work shift scheduling: a heuristic approach. Master’s Programme in Mathematics and Operations Research, Aalto UniversityStark, C., & Zimmermann, J. (2004). An Exact Branch-and-Price Algorithm for Workforce Scheduling. Operations Research Proceedings Volume 2004, 207-212, Springer.Caprara, M., & Monaci, P. Toth. (2003). Models and algorithms for a staff scheduling problem. Math. Program., Ser. B 98, 445–476.Talbot, F.B., & Patterson, J.H. (1978). An Efficient Integer Programming Algorithm with Network Cuts for Solving Resource-Constrained Scheduling Problems. Management Science 24(11): 1163-1174.Millar, H.H., & Kiragu, M., (1998). Cyclic and Non-Cyclic Scheduling of 12h Shift Nurses by Network Programming. European Journal of Operational Research 104, 582-592.Pinedo, M. L. (2009). Planning and Scheduling in Manufacturing and Services. Springer, New York.Barnhart, C., Johnson, E. L., Nemhauser, G. L., Savelsbergh, M. W., & Vance, P. H. (1998). Branch-and-price: Column generation for solving huge integer programs. Operations research, 46(3), 316-329.Mehrotra, K. E., & Murphy, M. A. Trick. (2000). Optimal shift scheduling: a branch-and-price approach. Naval Research Logistics 47, 185–200.Aykin, T. (2000). A comparative evaluation of modeling approaches to the labor shift scheduling problem. European Journal of Operational Research 125, 381–397.Billionnet, (1999). Integer programming to schedule a hierarchical workforce with variable demands. European Journal of Operational Research 114, 105–114.Jaumard, F., & Semet, T. V. (1998). A generalized linear programming model for nurse scheduling. European Journal of Operational Research 107, 1–18. Brusco, M. J., & Jacobs, L. W. (1998). Personnel tour scheduling when starting-time restrictions are present. Management Science 44, 534–547.Thompson, G. M (1997). Labor staffing and scheduling models for controlling service levels. Naval Research Logistics 44, 719–740.Beaumont, N. (1997). Scheduling staff using mixed integer programming. European European Journal of Operational Research 98, 473–484.