1 Introduction
Scheduling problems are found in many different types of organizations and industries including transportation, call centres, health care, protection and emergency services, civic services and utilities, venue management, financial services, hospitality and tourism, retail and manufacturing. This paper will focus on the health care industry and in particular on nurse scheduling. Besides nurse scheduling [1,2]; other scheduling in the health care industry includes the physicians [3]; the emergency medicine residents [4]; and the master surgery scheduling [5].
The nurse scheduling problem involves generating a schedule of working days and days off for each nurse. The nurse scheduling is the most highly constrained and difficult personnel scheduling problems. Scheduling is the process of constructing work timetables for the staff so that an organisation can satisfy the demands for their services. The people involved in developing schedules need decision support tools to help provide the right employees at the right time and at the right cost while achieving a high level of employee job satisfaction.
The study on nurse scheduling has been revised over 30 years ago. There are a few approaches introduced by the past researchers in order to solve the nurse scheduling problem such as using the mathematical programming, goal programming, constraints programming, artificial intelligence, heuristics and meta heuristics [6-8]. A goal programming is one of the techniques that has been studied and used widely because of its capability to solve and seek the optimum of multi objectives problem that occurred in nurse scheduling [3,4,8- 14]. It defines a target level for each objective or goal and relative priorities to achieve these goals. This technique is flexible enough to cope with relative ranking assigned to various goals.
The research on modelling nurse scheduling using goal programming has been studied by Arthur & Ravidran [9] which focused on two phases. Phase 1 is to assign the working days and days off for each nurse while phase 2 is to assign the shift types of their working days. Arthur & Ravidran [9] limits the scope with small set of constraints and restricts the problem dimensions with the size of nurses is 4. Musa & Saxena [15] have used a 0-1 goal programming that applied to one unit of a hospital with the considerations of the hospital policies and nurses' preferences. However, the complexity of the problem is rather low with a two week planning period and just one single shift.
In Ozkarahan & Bailey [13], the nurse scheduling modelling showed the flexibility of goal programming in handling various goals which fulfilled the hospital's objectives and the nurses' preferences. The problem defines three basic goals and divides the work into two phases. The 0-1 goal programming model in nurse scheduling has been applied in Berrada, et al. [11] with administrative and union contract specifications has been considered as hard constraints while work patterns and nurses preferences has been formulated as soft constraints. The outcome shows satisfactory result by combining goal programming approach and tabu search technique.
Azaiez & Al Sharif [10] and Wan Rosmanira, et al. [14] also used the 0-1 goal programming approach with the considerations of hospital's objectives as hard constraints and the nurses' preferences as soft constraints to develop the schedules. Both models solved by Azaiez & Al Sharif [10] and Wan Rosmanira, et al. [14] are measured to execute reasonably well. Nevertheless, the models limit to one off schedule where they have to build new schedule for each planning period. The models are not the cyclical scheduling. Hence, in this paper, the authors deal with the cyclical nurse scheduling problem with a 0-1 goal programming approach that includes several objectives or goals to achieve subject to both several hard and soft constraints.
There are few studies done in cyclical scheduling problem. A cyclic schedule consists of a set of work patterns which is rotated among a group of workers over a set of scheduling horizon. At the end of the scheduling horizon each worker would have completed each pattern exactly once. Harvey and Kiragu [16] presented a mathematical model for cyclic and non-cyclic scheduling of 12 hours shift nurses. The model is quite flexible and can accommodate a variety of constraints. In spite of this, the model deals with small requirements which are not appropriate to embed in real situations. Chan and Weil [12] studied the context and the use of work cycles with various constraints to produce timetables of up to 150 people. Therefore, this study is carried out to highlight the new model of the nurse scheduling problem. A cyclical nurse scheduling with multiple objectives and subject to various constraints is developed. The schedule will rely on fairness among nurses and will consider nurses' preferences to maximize their satisfaction. This will help the nurses to provide adequate quality of service.
2 Problem Descriptions
This work is catered in one ward that has 18 nurses with the number of nurses required for morning shift is at least 4 nurses, evening shift is at least 4 nurses and night shift is exactly 3 nurses. The planning period for the problem is 4-week or 28 days with 3 different shifts. There are morning shift starting from 7 a.m. till 2 p.m. for 7 hours, evening shift starting from 2 p.m. till 9 p.m. for 7 hours, and night shift starting from 9 p.m. till 7 a.m. for 10 hours.
On the other hand, this work was focused on solving the cyclical nurse scheduling problem. Thus, there is an adjustment to the planning period for the problem. The length of the cyclical schedules for this problem is 21 days. As the staff requirement per shift is homogenous, the minimum required number of days to assign to each nurse is calculated as follows:
Minimum Required Number of Days (MRND)
\[= \left( \left\lceil \frac{\text{number of nurses}}{\text{staff requirement per night shift}} \right\rceil \times \text{number of consecutive night shift} \right)\]
In this case, the number of nurses is 18 while the staff requirement per night shift is 3 and the number of consecutive night shift is 3. Thus, MRND = \(\lceil 18/3 \rceil \times 3 = 18\). For ergonomic purposes, the schedule length would be measured in weeks. Therefore, the schedule length chosen is 21 days (3 weeks) where a nurse would have to work 3 consecutive night shifts twice in 3 weeks. The cyclical schedules would however have the same set of constraints but with small changes due to the new length of the schedule.
The model considers the hospital's objectives as the hard constraints which must be satisfied and the nurses' preferences as the soft constraints. The schedules would satisfy the following objectives set by the management of the hospital:
- 1. Each unit is covered by 3 shifts for 24 hours a day and 7 days a week.
- 2. Minimum staff level requirement must be satisfied.
- 3. Each nurse works at most one shift a day.
- 4. Avoid any isolated days patterns of "off-on-off".
- 5. Each nurse must have three days off after having three consecutive night shifts.
- 6. Each nurse works between 12 to 14 days per schedule.
- 7. Each nurse works not more than 6 consecutive days.
- 8. Evening shift constitutes at least 25% of total workload.
- 9. Morning shift constitutes at least 30% of total workload.
Meanwhile the nurses' preferences are as follows:
- 1. Avoid working in an evening shift followed by a morning shift or a night shift the next day.
- 2. Avoid working in a morning shift followed by an evening shift or a night shift the next day.
- 3. Each nurse has at least one day off in one weekend.
- 4. All nurses have the same amount of total workload.
3 Formulations
The development of nurse scheduling model is based on the hospital's objectives and the nurses' preferences. The hospital's objectives are a set of hard constraints that must be satisfied while the nurses' preferences are a set of soft constraints that may be violated. The model will attempt to minimize the violations of the soft constraints.
The scheduling problem contains 13 sets of constraints. It is not expected however that a feasible solution may be obtained while satisfying all sets of constraints. Therefore, these sets are divided into two groups: one group consists of sets of hard constraints that must be satisfied. The other group consists of remaining sets of soft constraints, which if could not be fulfilled, the model will reduce to at least the violations of these constraints. The hospital's policies will be considered as hard constraints while the nurses' preferences will be considered as soft constraints.
3.1 Notations
The following notations are used to specify the model:
n = number of days in the schedule (n = 21)
m = number of nurses available for the unit of interest (m = 18)
i = index for days, i = 1...n
k = index for nurses, k = 1...m
\(P_i\) = staff requirement for morning shift of day i, i = 1...n
\(T_i\) = staff requirement for evening shift of day i, i = 1...n
\(M_i\) = staff requirement for night shift of day i, i = 1...n
3.2 Decision Variables
The decision variables are defined as follows:
\[X_{i,k} = \begin{cases} 1 \text{ if nurse } k \text{ is assigned a morning shift for day } i \\ 0 \text{ otherwise} \end{cases}\]
\[Y_{i,k} = \begin{cases} 1 \text{ if nurse } k \text{ is assigned an evening shift for day } i \\ 0 \text{ otherwise} \end{cases}\]
\[Z_{i,k} = \begin{cases} 1 \text{ if nurse } k \text{ is assigned a night shift for day } i \\ 0 \text{ otherwise} \end{cases}\]
\[C_{i,k} = \begin{cases} 1 \text{ if nurse } k \text{ is assigned a day off for day } i \\ 0 \text{ otherwise} \end{cases}\]
3.3 Hard Constraints
The hard constraints of the formulation are given below.
Set 1: Minimum staff level requirement must be satisfied:
\[\sum_{k=1}^{m} X_{i,k} \ge P_i, \ i = 1, 2, ..., n \tag{1}\]
\[\sum_{k=1}^{m} Y_{i,k} \ge T_i, \ i = 1, 2, ..., n\] (2)
\[\sum_{k=1}^{m} Z_{i,k} = M_i, \ i = 1, 2, ..., n\] (3)
Set 2: Each nurse works only one shift a day:
\[X_{i,k} + Y_{i,k} + Z_{i,k} + C_{i,k} = 1, i = 1, 2, ..., n \text{ and } k = 1, 2, ..., m\] (4)
Set 3: Avoid any isolated days patterns of "off-on-off":
\[C_{i,k} + X_{i+1,k} + Y_{i+1,k} + Z_{i+1,k} + C_{i+2,k} \le 2, i = 1, 2, ..., n-2 \text{ and } k = 1, 2, ..., m\] (5)
Set 4: Each nurse works 3 consecutive days of night shift and followed by 3 days off. Each nurse will be assigned to their night shifts and off days as follow:
\[Z_{1,k} + Z_{2,k} + Z_{3,k} + C_{4,k} + C_{5,k} + C_{6,k} + Z_{19,k} + Z_{20,k} + Z_{21,k} = 9, k = 1,7,13\] (6)
\[C_{1k} + C_{2k} + C_{3k} + Z_{16k} + Z_{17k} + Z_{18k} + C_{19k} + C_{20k} + C_{21k} = 9, k = 2,8,14\] (7)
\[Z_{13,k} + Z_{14,k} + Z_{15,k} + C_{16,k} + C_{17,k} + C_{18,k} = 6, k = 3,9,15\] (8)
\[Z_{10k} + Z_{11k} + Z_{12k} + C_{13k} + C_{14k} + C_{15k} = 6, k = 4,10,16\] (9)
\[Z_{7,k} + Z_{8,k} + Z_{9,k} + C_{10,k} + C_{11,k} + C_{12,k} = 6, k = 5,11,17\] (10)
\[Z_{4,k} + Z_{5,k} + Z_{6,k} + C_{7,k} + C_{8,k} + C_{9,k} = 6, k = 6,12,18\] (11)
Set 5: Each nurse works between 12 to 14 days per schedule:
\[\sum_{i=1}^{n} \left( X_{i,k} + Y_{i,k} + Z_{i,k} \right) \ge 12, \ k = 1, 2, ..., m\] (12)
\[\sum_{i=1}^{n} \left( X_{i,k} + Y_{i,k} + Z_{i,k} \right) \le 14, \ k = 1, 2, ..., m\] (13)
Set 6: Each nurse works not more than 6 consecutive days:
\[C_{i,k} + C_{i+1,k} + C_{i+2,k} + C_{i+3,k} + C_{i+4,k} + C_{i+5,k} + C_{i+6,k} \ge 1,\] \[i = 1, 2, \quad n-4 \text{ and } k = 1, 2, \quad m\] (14)
\[\sum_{i=n-\nu}^{n} C_{i,k} + \sum_{i=1}^{6-\nu} C_{i,k+1} \ge 1, \ \nu = 0,1,...,5; \ k = 1,2,...,m-1\] (15)
\[\sum_{i=n-\nu}^{n} C_{i,m} + \sum_{i=1}^{6-\nu} C_{i,1} \ge 1, \ \nu = 0, 1, \dots, 5\] (16)
Set 7: Evening shift constitutes at least 25% of total workload:
\[\sum_{i=1}^{n} Y_{i,k} \ge 3, \ k = 1, 2, ..., m \tag{17}\]
Set 8: Morning shift constitutes at least 30% of total workload:
\[\sum_{i=1}^{n} X_{i,k} \ge 4, \ k = 1, 2, ..., m \tag{18}\]
3.4 Soft Constraints
The soft constraints of the formulation are given below.
Set 1: Avoid working in an evening shift followed by a morning shift or a night shift the next day:
\[Y_{i,k} + X_{i+1,k} + Z_{i+1,k} \le 1, i = 1, 2, ..., n-1 \text{ and } k = 1, 2, ..., m\] (19)
\[Y_{n,k} + X_{1,k+1} + Z_{1,k+1} \le 1, k = 1,2,...,m-1\] (20)
\[Y_{n,m} + X_{1,1} + Z_{1,1} \le 1 \tag{21}\]
Set 2: Avoid working in a morning shift followed by an evening shift or a night shift the next day:
\[X_{i,k} + Y_{i+1,k} + Z_{i+1,k} \le 1, i = 1, 2, ..., n-1 \text{ and } k = 1, 2, ..., m\] (22)
\[X_{n,k} + Y_{1,k+1} + Z_{1,k+1} \le 1, k = 1, 2, ..., m-1\] (23)
\[X_{nm} + Y_{11} + Z_{11} \le 1 \tag{24}\]
Set 3: Each nurse has at least one weekend off:
\[C_{7k} + C_{14k} + C_{21k} \ge 1, k = 1, 2, ..., m\] (25)
Set 4: All nurses have the same amount of total workload:
\[\sum_{i=1}^{n} (X_{i,k} + Y_{i,k} + Z_{i,k}) = 13, \ k = 1, 2, ..., m\] (26)
3.5 Goals
The soft constraints are incorporated in the model as the goals and formulated as follows:
Goal 1: It avoids assigning a nurse to have an evening shift followed by a morning shift or a night shift the next day. Here \(\eta I_k\) (respectively \(\rho I_k\)) is the amount of negative (positive) deviation from goal 1 for nurse k. Only positive deviations are penalized.
\[Y_{i,k} + X_{i+1,k} + Z_{i+1,k} + \eta 1_{i,k} - \rho 1_{i,k} \le 1, i = 1, 2, ..., n-1 \text{ and } k = 1, 2, ..., m\] (27)
\[Y_{n,k} + X_{1,k+1} + Z_{1,k+1} + \eta 1_{n,k} - \rho 1_{n,k} \le 1, \ k = 1, 2, ..., m-1\] (28)
\[Y_{n,m} + X_{1,1} + Z_{1,1} + \eta I_{n,m} - \rho I_{n,m} \le 1\] (29)
Goal 2: It avoids assigning a nurse to have a morning shift followed by an evening shift or a night shift the next day. Here \(\eta 2_k\) (respectively \(\rho 2_k\)) is the amount of negative (positive) deviation from goal 2 for nurse k. Only positive deviations are penalized.
\[X_{i,k} + Y_{i+1,k} + Z_{i+1,k} + \eta 2_{i,k} - \rho 2_{i,k} \le 1, i = 1, 2, ..., n-1 \text{ and } k = 1, 2, ..., m\] (30)
\[X_{nk} + Y_{1k+1} + Z_{1k+1} + \eta 2_{nk} - \rho 2_{nk} \le 1, \ k = 1, 2, ..., m-1\] (31)
\[X_{n,m} + Y_{1,1} + Z_{1,1} + \eta 2_{n,m} - \rho 2_{n,m} \le 1\] (32)
Goal 3: It ensures that each nurse has at least one day off on weekend in the 3-week schedule. Here \(\eta 3_k\) (respectively \(\rho 3_k\)) is the amount of negative (positive) deviation from goal 3 for nurse k. Only negative deviations are penalized.
\[C_{7,k} + C_{14,k} + C_{21,k} + \eta 3_k - \rho 3_k \ge 1, \ k = 1, 2, ..., m\] (33)
Goal 4: It ensures that all nurses are scheduled to have 13 days as possible in the 3-week schedule. Here \(\eta 4_k\) (respectively \(\rho 4_k\)) is the amount of negative (positive) deviation from goal 4 for nurse k. Both negative and positive deviations are penalized.
\[\sum_{i=1}^{n} (X_{i,k} + Y_{i,k} + Z_{i,k}) + \eta A_k - \rho A_k = 13, \ k = 1, 2, ..., m\] (34)
Thus, the preemptive goal programming for this model is
Minimize \[\left(\sum_{i=1}^{n}\sum_{k=1}^{m}\rho 1_{i,k}, \sum_{i=1}^{n}\sum_{k=1}^{m}\rho 2_{i,k}, \sum_{k=1}^{m}\eta 3_{k}, \sum_{k=1}^{m}(\eta 4_{k}+\rho 4_{k})\right)\]
Subject to
Equations (1)-(18);
Equations (27)-(34);
\[X = 0 \text{ or } 1; Y = 0 \text{ or } 1; Z = 0 \text{ or } 1; C = 0 \text{ or } 1;\]
\[\eta 1, \ \rho 1, \ \eta 2, \ \rho 2, \ \eta 3, \ \rho 3, \ \eta 4, \ \rho 4 \ge 0.\]
4 Results and Discussion
The 0-1 goal programming model was implemented in one ward that has 18 nurses with the number of nurses required for morning shift is at least 4 nurses, evening shift is at least 4 nurses and night shift is exactly 3 nurses. The model was solved using preemptive method where the priority ordering used is G G G G 1 2 3 4 . The model is optimized using one goal at a time such that the optimum value of a higher priority goal is never degraded by a lower priority goal.
Before running the model using LINGO software, a computer code has been developed. A few models has been developed and adjusted in order to get a good solution. Nevertheless, the model presented here is the best model for the nurse scheduling. Table 1, Table 2 and Table 3 summaries the result of the model using the Lingo software.
| Day | Schedule's Pattern | |||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| S1 | S2 | S3 | S4 | S5 | S6 | S7 | S8 | S9 | S10 | S11 | S12 | S13 | S14 | S15 | S16 | S17 | S18 | |
| 1 | E | A | M | A | M | E | A | M | E | A | M | |||||||
| 2 | E | A | M | M | E | A | E | A | M | A | M | |||||||
| 3 | E | A | M | E | M | M | A | E | A | M | A | |||||||
| 4 | A | M | E | M | M | M | A | E | A | A | E | |||||||
| 5 | A | M | M | E | M | M | A | E | A | A | A | E | ||||||
| 6 | A | M | M | E | M | M | E | A | A | A | E | |||||||
| 7 | A | A | M | E | M | M | M | E | A | A | E | |||||||
| 8 | A | A | E | M | M | M | E | M | A | M | A | E | ||||||
| 9 | A | M | A | E | M | A | E | M | A | M | E | |||||||
M E M M A A E A M E A M E M A A E A M M E A M M E M A E A A M E A M M E M A E A A M E A M E M M A E A A M E A M E M M A E A A E M A M E A M A E A A M E M E A A A E A M M E M M E A A A E A M M E M M M E E A A A E A M M E M E E A E A M M E A A M E E A E A M M E A A M
Table 1 The schedule's pattern using 0-1 goal programming technique.
Table 1 shows the patterns of the shift of the working day and the day off for the 3-weeks (21 days) planning period that resulted from the model. The schedule satisfied all the hard constraints and soft constraints where all goals are achieved. Table 1 shows that both goals 1 and 2 are fulfilled. Thus, there is no evening shift followed by morning shift or night shift the next day and also, there is no morning shift followed by evening shift or night shift the next day is assigned to each schedule's pattern.
(M=Morning, E=Evening, A=Afternoon)
Table 2 Summary of the number of shifts and weekend off for each schedule's pattern.
| Number | Schedule's pattern | |||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| of | S1 | S2 | S3 | S4 | S5 | S6 | S7 | S8 | S9 | S10 | S11 | S12 | S13 | S14 | S15 | S16 | S17 | S18 |
| Morning | 4 | 6 | 5 | 5 | 6 | 7 | 4 | 5 | 4 | 6 | 4 | 4 | 4 | 4 | 4 | 4 | 6 | 4 |
| Afternoon | 3 | 4 | 5 | 5 | 4 | 3 | 3 | 5 | 6 | 4 | 6 | 6 | 3 | 6 | 6 | 6 | 4 | 6 |
| Evening | 6 | 3 | 3 | 3 | 3 | 3 | 6 | 3 | 3 | 3 | 3 | 3 | 6 | 3 | 3 | 3 | 3 | 3 |
| Total | 13 | 13 | 13 | 13 | 13 | 13 | 13 | 13 | 13 | 13 | 13 | 13 | 13 | 13 | 13 | 13 | 13 | 13 |
| Weekend | 1 | 1 | 1 | 1 | 1 | 2 | 1 | 1 | 1 | 1 | 1 | 2 | 1 | 1 | 1 | 1 | 1 | 2 |
Table 2 shows the summary for the number of shifts and weekend off for each schedule's pattern. Here, goal 3 where all nurses in each schedule's pattern must have at least one weekend off in 21 days is satisfied. Goal 4 is also satisfied where all schedule's pattern have the same 13 days of total number of shifts in 21 days planning period. Table 3 shows the summary for the number of shifts for each day. The distributions of shifts for each day is also seem in balance for each day in the 21 days of planning period. The total nurses on duty for the 21 days varied between 11 to 12 nurses per day.
Table 3 Summary of the number of shifts for each day.
| Day | Morning | Afternoon | Evening | Total |
|---|---|---|---|---|
| 1 | 4 | 4 | 3 | 11 |
| 2 | 4 | 4 | 3 | 11 |
| 3 | 4 | 4 | 3 | 11 |
| 4 | 4 | 4 | 3 | 11 |
| 5 | 4 | 5 | 3 | 12 |
| 6 | 4 | 4 | 3 | 11 |
| 7 | 4 | 4 | 3 | 11 |
| 8 | 5 | 4 | 3 | 12 |
| 9 | 4 | 4 | 3 | 11 |
| 10 | 4 | 4 | 3 | 11 |
| 11 | 4 | 4 | 3 | 11 |
| 12 | 4 | 4 | 3 | 11 |
| 13 | 4 | 4 | 3 | 11 |
| 14 | 4 | 4 | 3 | 11 |
| 15 | 4 | 4 | 3 | 11 |
| 16 | 4 | 4 | 3 | 11 |
| 17 | 4 | 4 | 3 | 11 |
| 18 | 5 | 4 | 3 | 12 |
| 19 | 4 | 4 | 3 | 11 |
| 20 | 4 | 4 | 3 | 11 |
| 21 | 4 | 4 | 3 | 11 |
| Schedule | Nurse | |||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| (week) | J1 | J2 | J3 | J4 | J5 | J6 | J7 | J8 | J9 | J10 | J11 | J12 | J13 | J14 | J15 | J16 | J17 | J18 |
| 1 (1-3) | S1 | S2 | S3 | S4 | S5 | S6 | S7 | S8 | S9 | S10 | S11 | S12 | S13 | S14 | S15 | S16 | S17 | S18 |
| 2 (4-6) | S2 | S3 | S4 | S5 | S6 | S7 | S8 | S9 | S10 | S11 | S12 | S13 | S14 | S15 | S16 | S17 | S18 | S1 |
| 3 (7-9) | S3 | S4 | S5 | S6 | S7 | S8 | S9 | S10 | S11 | S12 | S13 | S14 | S15 | S16 | S17 | S18 | S1 | S2 |
| 4 (10-12) | S4 | S5 | S6 | S7 | S8 | S9 | S10 | S11 | S12 | S13 | S14 | S15 | S16 | S17 | S18 | S1 | S2 | S3 |
| 5 (13-15) | S5 | S6 | S7 | S8 | S9 | S10 | S11 | S12 | S13 | S14 | S15 | S16 | S17 | S18 | S1 | S2 | S3 | S4 |
| 6 (16-18) | S6 | S7 | S8 | S9 | S10 | S11 | S12 | S13 | S14 | S15 | S16 | S17 | S18 | S1 | S2 | S3 | S4 | S5 |
| 7 (19-21) | S7 | S8 | S9 | S10 | S11 | S12 | S13 | S14 | S15 | S16 | S17 | S18 | S1 | S2 | S3 | S4 | S5 | S6 |
| 8 (22-24) | S8 | S9 | S10 | S11 | S12 | S13 | S14 | S15 | S16 | S17 | S18 | S1 | S2 | S3 | S4 | S5 | S6 | S7 |
| 9 (25-27) | S9 | S10 | S11 | S12 | S13 | S14 | S15 | S16 | S17 | S18 | S1 | S2 | S3 | S4 | S5 | S6 | S7 | S8 |
| 10 (28-30) | S10 | S11 | S12 | S13 | S14 | S15 | S16 | S17 | S18 | S1 | S2 | S3 | S4 | S5 | S6 | S7 | S8 | S9 |
| 11 (31-33) | S11 | S12 | S13 | S14 | S15 | S16 | S17 | S18 | S1 | S2 | S3 | S4 | S5 | S6 | S7 | S8 | S9 | S10 |
| 12 (34-36) | S12 | S13 | S14 | S15 | S16 | S17 | S18 | S1 | S2 | S3 | S4 | S5 | S6 | S7 | S8 | S9 | S10 | S11 |
| 13 (37-39) | S13 | S14 | S15 | S16 | S17 | S18 | S1 | S2 | S3 | S4 | S5 | S6 | S7 | S8 | S9 | S10 | S11 | S12 |
| 14 (40-42) | S14 | S15 | S16 | S17 | S18 | S1 | S2 | S3 | S4 | S5 | S6 | S7 | S8 | S9 | S10 | S11 | S12 | S13 |
| 15 (43-45) | S15 | S16 | S17 | S18 | S1 | S2 | S3 | S4 | S5 | S6 | S7 | S8 | S9 | S10 | S11 | S12 | S13 | S14 |
| 16 (46-48) | S16 | S17 | S18 | S1 | S2 | S3 | S4 | S5 | S6 | S7 | S8 | S9 | S10 | S11 | S12 | S13 | S14 | S15 |
| 17 (49-51) | S17 | S18 | S1 | S2 | S3 | S4 | S5 | S6 | S7 | S8 | S9 | S10 | S11 | S12 | S13 | S14 | S15 | S16 |
| 18 (52-54) | S18 | S1 | S2 | S3 | S4 | S5 | S6 | S7 | S8 | S9 | S10 | S11 | S12 | S13 | S14 | S15 | S16 | S17 |
Table 4 The cyclical schedule's pattern for each nurse.
The head nurse will allocate each schedule's pattern to each nurse as shown in Table 4. For schedule i 1,...,18 , nurse j works according to pattern j n S ; where n j i j 1 mod18 if j i 1 18 , and 18 j n if j i 1 18 . The cyclical scheduling for each nurse is as shown in Table 4. The pattern will be rotated among the nurses and each nurse will be working according to each schedule's pattern at the end of week 54, or 18 schedules. After completing 18 schedules, then each nurse will revisit the starting schedule. In Table 4, it shows that the cyclical nurse scheduling rotates equally through the desirable and undesirable work stretches among the nurses and requires relatively less scheduling effort of the head nurse.
The schedule satisfies the factors of completeness and continuity. While the fairness factor is dealt with since the schedule's pattern is going to rotate among the nurses. All nurses will have the opportunity to work with the satisfactory and unsatisfactory schedule's patterns. The nurse will have the least satisfactory schedule's pattern when they have the pattern S6 with total number of morning shift is 7 as shown in Table 2. While the most satisfactory schedule's pattern is when they have the patterns S6, S12 and S18 with the total number of weekend off is 2 days (see Table 2). Each nurse will also have a long days off (3 days off after 3 consecutive evening shifts followed by 2 days off) when they have the schedule's pattern S8 followed by schedule's pattern S9, then schedule's pattern S11 and S17. The more weekend off and a long days off are good for nurses to plan any activities with their families and social life. This implies unbiased of the schedule to all nurses. Furthermore, with this cyclical scheduling, it gives nurses more control over their work life because they know the type of shift schedule in the future which should have a positive effect on their job satisfaction.
5 Conclusions
Modeling nurse scheduling using a 0-1 goal programming has shown its capability of generating schedules considering all the hard and soft constraints in the scheduling environment. The developed scheduling has been found not only to satisfy hospital's objectives but also nurses' preferences. Both parties obtained higher satisfaction when all goals are achieved. All the nurse's preferences or goals on having an evening shift not followed by a morning shift or a night shift the next day; having a morning shift not followed by an evening shift or a night shift the next day, having at least one day off on weekend in 21 days of planning period; and having the same total number of shifts are fulfilled with the optimum solution.
The 0-1 goal programming technique has been proved to solve the multiple objectives problem effectively and aided the decision maker on making a wise and appropriate decision of the schedule. The developed model with various constraints and goals using the 0-1 goal programming technique gives the optimum solution that showed both the hard constraints and soft constraints are satisfied. The optimum solution gathers when all the goals are achieved with the objective function value is equal to zero and thus there is no penalty.
The cyclical scheduling for the developed model help the head nurse to have less effort on building the new schedules. All nurses have 18 patterns of schedule in periodicity of 378 days (54 weeks) or approximately 12 months or a year. Then they meet the first schedule's pattern again. The nurses will go through the satisfactory and unsatisfactory schedule's pattern without feeling biased among them and thus lead to an overall higher satisfaction of the nurses. New schedule will only need to be produced when changes occur in its average daily staff requirements.
For further research, one of possible work is to embed the model into userfriendly software that would be easy to use and reliable. The cyclical nurse scheduling should be considered to improve the ways of developing the schedule and save more time. The model also should be extended to account for other important scheduling aspects such as requested day off in order to being acceptable to all parties.
