A Flow Shop Batch Scheduling and Operator Assignment Model with Time-Changing Effects of Learning and Forgetting to Minimize Total Actual Flow Time

Purpose: This paper aims to investigate simultaneous problems of batch scheduling and operator assignment with time-changing effects caused by learning and forgetting. Design/methodology/approach: A mathematical model was developed for the problems, and the decision variables of the model were operator assignment, the number of batches, batch sizes and the schedule of the resulting batches. A proposed algorithm worked by trying different number of batches, starting from one, and increasing the number of batches one by one until the objective function value did not improve anymore. Findings: We mathematically and numerically show that the closest batch to the due date always became the largest batch in the schedule, and the faster operators learn, the larger the difference between the closest batch to the due date and the other batches, the lower optimal number of batches, and the lower the total actual flow time. Originality/value: Previous papers have considered the existence of alternative operators but have not considered learning and forgetting, or have considered learning and forgetting but only in a single-stage system and without considering alternative operators.


Introduction
Scheduling is an activity of assigning a set of resources (machines, vehicles or people) to perform a number of tasks over time in order to achieve one or more objectives while satisfying a set of constraints (Baker, 1974). Some objectives frequently used in scheduling are flow time, lateness, tardiness and the number of tardy jobs (Bedworth & Bailey, 1987). These measures can satisfy either the need to reduce inventory level or the need to meet due date; however, they cannot do both simultaneously. To reduce inventory level and to meet due date simultaneously, the so called actual flow time defined in Halim and Ohta (1993) as the interval between starting time of production and due date was proposed. Using the actual flow time as the performance measure, parts may arrive at the shop floor when they are needed instead of arriving at time zero simultaneously, and parts will be delivered to the customer at their due date (Halim & Ohta, 1993). Batch scheduling models to minimize actual flow time have been studied such as in Halim, Miyazaki and Ohta (1994) and Yusriski, Sukoyo, Samadhi and Halim (2015). The batch scheduling model in Halim et al. (1994) assumed fixed processing times. In practical situations, processing times can vary, such as from the existence of alternative operators studied in Costa, Cappadonna and Fichera (2013) and from time-changing effects of learning and forgetting studied in Jaber and Bonney (1996) and Yusriski et al. (2015). Nevertheless, Costa et al. (2013) and Yusriski et al. (2015) only considered single-machine systems, while Jaber and Bonney (1996) have not considered batch scheduling. This paper extends the batch scheduling model in Halim et al. (1994) by considering the existence of alternative operators to perform each operation proposed in Costa et al. (2013) and time-changing effects of learning and forgetting studied in Jaber and Bonney (1996) and Yusriski et al. (2015). The effects of learning and forgetting to the objective function and decision variables will also be studied.
In manufacturing systems, machine and operator are among the most considered resources, and they are often studied separately (Pinedo, 2002). To represent real systems better, machine and operator need to be considered simultaneously in scheduling ( Van den Bergh, Beliën, De Bruecker, Demeulemeester & De Boeck, 2013), such as in Mencía, Sierra, Mencía and Varela (2015) and Frihat, Sadfi and Hadj-Alouane (2014). Mencía et al. (2015) proposed a simultaneous scheduling model of machine and operator, considering operation sequence to minimize makespan in job shop production systems, while Frihat et al. (2014) proposed scheduling model to minimize personnel cost, considering time lag between operations and due date. In both papers, processing times were assumed to be fixed In industry, operation's processing time may not be fixed. Kellerer and Strusevich (2008) and Grigoriev and Uetz (2005) proposed a process acceleration by allocating additional tools. Processes can also be accelerated by assigning additional operator as proposed in Aftab, Umer and Ahmad (2012) to minimize makespan, in Chaudhry (2010) to minimize flow time, and in Chaudhry and Drake (2009) to minimize total tardiness. Processing times can also vary due to different skill level among operators. This occurs in manufacturing systems where there are alternative operators to perform each operation, and different operator assignments may lead to different processing times. This situation has been investigated by Costa et al. (2013) who proposed a job scheduling model in a single-stage system with different operator's set up times to minimize makespan. Different with skill levels, processing times can change over time because of the so-called time-changing effects (Strusevich & Rustogi, 2017). There are two distinct forms of time-changing effects: a deterioration effect causes the processing time to increase over time, while a learning effect causes the processing time to decrease over time.
In industries with manual operations, understanding the learning effect is important for setting time standards, estimating labour costs and scheduling (Nembhard & Uzumeri, 2000). The learning effect occurs when an operator performs a particular operation repeatedly, and will be followed by a forgetting effect starting straight away when the operation stops (Yusriski et al., 2015). The learning effect phenomenon was firstly reported by Wright (1936) who showed that repetition in production process led to a constant decrease in processing time every time the cumulative produced quantity doubled. Learning and forgetting effects occur differently among operators (Jaber & Bonney, 1996). Nembhard and Uzumeri (2000) conducted an experiment in textile and automotive manufacturers and found that operators who learned more gradually tended to reach higher productivity in long term, while those who learned faster tended to experience more rapid forgetting during break times. This finding suggests managers to assign fast learning operators to short batch productions and not to assign them to secondary tasks (as they will easily forget their primary task), and to assign gradual learning operators to long batch productions and may assign them to secondary tasks. Additionally, through an experiment in an automotive manufacturer, Sebrina and Cakravastia (2011) found that learning rates were influenced by product complexity and takt times, and that a faster learning effect might lead to a higher defect rate.
To accelerate the processing of a job, it is common in industries to divide parts being produced into several batches or sublots (Baker & Jia, 1993). Through this, parts processing can overlap, thus reducing machine idle time and allowing completion time. The benefits of batch scheduling in flow shops include better makespan, mean flow time and average work-in-process level (Kalir & Sarin, 2000). The more batches made for processing parts, the more setups will be required, but in the same time, the more overlaps are allowed for parts. Thus, the problems in batch scheduling are to find the optimal number of batches and batch sizes, and to determine the schedule and the sequence of the resulting batches (Halim et al., 1994).

Model Development
Parameters and variables used in this paper are shown as follows. -548-According to Jaber and Bonney (1996), learning effect occurs when a person performs an activity repeatedly. In manufacturing systems, the learning effect experienced by operators results in decreasing unit processing time as the number of repetition increases, following a learning function (Wright, 1936): (1) where ℓ = -2 log (δ has a value of 0.7 to 0.9 in manufacturing system; smaller value means faster learning).
The fluctuation of part processing time caused by learning and forgetting effects in a batch production are shown in Fig. 1. Suppose that a learning effect occurs for T m,o,[i+1] during the processing of batch i+1 and followed by a forgetting effect occurs for T R . Suppose also that during T m,o, [i+1] , Q [i+1] parts are processed and that during T R , R parts can be processed if there is no interruption. ACD curve in Fig. 1 represents the learning function in Equation (1), while BCE curve shows a forgetting function shown in Equation (2). (2) At C, the value of will be equal to T [p] , or , which can be used to find , that is: (3) Substituting Equation (3) to Equation (2) we obtain: (4) To find T R , i.e. the time required to produce R parts (if interruption does not occur), the learning function in Equation (1) is integrated along this interval: After some algebraic operations on Equation (5) to find (Q [i+1] + R) we obtain: After experiencing a forgetting effect during CE, Q [i+1] units of operator's learning experience obtained when processing batch i+1 will be reduced to α units, where α is the equivalent retained number of parts of the learning experience after forgetting (0<α<Q [i+1] ). The value of α can be found by equating at E (i.e. ) to T [p] at G (because T G = T E ), i.e.: , which results: (7) Substituting Equation (6) to Equation (7) and after some algebraic operations we obtain: (8) can be rewritten as follows: We should remember that the Equation (9) occurs when the operator experiences partial forgetting after batch i+1, or when T E < T 1 . If the operator experiences a total forgetting after batch i+1, then T E = T 1 and α = 0. Therefore, Equation (9) needs to be rewritten as follows: (10) Furthermore, the value of the forgetting gradient f is determined at the beginning of the total forgetting, i.e. when the value of becomes equal to T [1] . This situation is given by , which can be used to find f: Using Equation (6) to substitute (Q [i+1] + R) and substituting T R and T 1 with their values in Equation (9) we obtain: Since this study considers multiple operator, machine and batch, ℓ will be different for each operator, while f and α will be different for each machine, operator and batch. Therefore, notations of ℓ, f and α are replaced by ℓ o , α m,o, [i] and f m,o, [i] , which is formulated as: For batch production, the batch processing time is determined by integrating part processing time, T [x] , from 0 to Q [N] for batch N, and from α m,o, [i] to α m,o,[i] +Q [i] for batch i = 1, ..., N-1. The calculation of batch processing time is given in Equation (15) and (16).

Model and Algorithm
This research extends the flow shop batch scheduling model in Halim and Ohta (1993) by introducing the existence of alternative operators to perform each operation studied in Costa et al. (2013), and by considering time-changing effects of learning and forgetting studied in Jaber and Bonney (1996). We will look at the effects of learning and forgetting effects to number of batches, batch sizes and the schedule of the resulting batches.
The problem studied in this research is described as follows. There are n parts will be processed in N batches, and each batch i will be processed through b operations with uniform routing. Each operation can be performed by one of c alternative operators with different set up times s m,o and initial processing times t m,o . Each operator o experiences a learning effect at a rate of  o . All operations must be finished no later than a due date d. The decision variables in the model are assignment of operator o to machine m (X m,o ), the number of batches N, batch sizes Q [i] , and the schedule of operation m in batch i (B m,[i] ). This study develops a model of simultaneous batch scheduling and operator assignment to minimize actual flow time in flow shops.
Assumptions used in this study are: 1. All parts, machines and operators are ready (can be scheduled) at t = 0. 2. Interruption of an operation are not allowed. 3. Each machine and operator cannot perform more than one operation at a time.
4. Machines are always available during the scheduling time horizon. 5. Set up and process of a particular operation are performed by the same operator.
6. An operator can be assigned to at most one machine.
Based on the analysis explained in Section 3, the flow shop batch scheduling and operator assignment problem to minimize actual flow time was formulated in Model 1 as follows.

Model 1.
Minimize (17) subject to Objective function (17) (18) to (21). Since this study performs a backward scheduling, the batch starting time is calculated from the last machine. Constraint (18) states that the starting time of batch i at machine m is the due date less by the sum of set up and processing time of batch 1 to batch i. Constraint (19) states that the starting time of batch 1 at machine m is calculated backward from machine c to machine m. Constraint (20) and (21) state that the starting time of other than batch 1 at other than machine c is the earliest between the starting time of the previous batch at the same machine and the starting time of the batch on the next machine, less by its set up and processing time. Set up and processing times in Constraint (18) to (21) are multiplied by operator assignment variable, because each operator has different set up and processing times at each machine. Constraint (22) states that the starting time of batch N at machine 1 must be non-negative.
Since parts in a batch have different processing times, we use batch processing times instead of part processing times in Constraint (18) to (21). The batch processing times are defined in Constraint (23) and (24), which are taken from Equation (15) and (16) in Section 2. The α m,o, [i] variables are the equivalent retained number of parts of learning experience from batch i+1 after forgetting effect, which is influenced by the previous batch learning result, interruption duration, initial processing time, learning gradient and forgetting gradient. The value of α m,o, [i] will be zero if the operator experiences a total forgetting, i.e. loses all learning experience in the previous batch. Constraint (26) shows that the learning gradient is influenced by the learning rate, while Constraint (27) indicates that the forgetting gradient is influenced by learning experience in the previous batch, the interruption duration and the learning gradient.
Constraint (28) states that the number of parts in all batches must be equal to the total number of parts. Constraint (29) states that exactly one operator must be assigned to each machine, while Constraint (30) states that an operator can be assigned to maximum one machine. Constraint (31) states that operator assignment variables are binary numbers, and Constraint (32) states that batch sizes must be positive, and the batch number must be at least one and at most equal to the total number of parts.
The existence of learning and forgetting effects experienced by operators is important to consider in the model since learning and forgetting affect the objective function and batch sizes. The effects of learning and forgetting to batch scheduling are explained in the following propositions.
Proposition 1. The size of the closest batch to the due date is larger than any other batches in the schedule.
Proposition 2. The faster operators learn, the larger the difference between the closest batch to the due date and the any other batches in the schedule.

Proposition 4. The faster operators learn, the lower the value of the objective function F and Q [1] will be larger than Q [i] not more by
Proofs. See Appendix.
The problem formulated in Model 1 cannot be solved when N is unknown. It is necessary to relax N from a decision variable to a parameter, so that Model 1 becomes solvable in O(bc2 [n/ε]-1 ) time (where ε  {1, 0.1, 0.01, …} is the desired accuracy of Q [i] value). The problem formulated in Model 1 is NP-hard since it can be reduced to a flow shop batch scheduling problem without operator assignment and without learning and forgetting effects which is classified as NP-hard in Mortezaei and Zulkifli (2013).
To find the optimal solution for the problem, we need to try all possible N values (1 < N < n) and find the best objective value. However, this is time inefficient as the computation time will increase rapidly as N increases. Therefore, using the convexity of F as conjectured in Bukchin, Tzur and Jaffe (2002), a solution method for the problem will try several N values, starting from one, and increase it one-by-one until the value of F does not improve anymore. If the objective function F does not improve at an N value, we stop the computation and set the last improving F as our solution. The solution method for Model 1 is described in Algorithm 1.
Step 3. Solve Model 1, determine F, the best solution for the current N. Go to Step 4.
Step 4. If F < F * or F * has not been set, set F as F * , go to Step 5. If not, go to Step 6.
Step 5. If N = n, go to Step 6. If not, set N = N + 1, and return to Step 3.
Step 6. Stop. The current F * is the optimal solution.
Note that in Step 1, parameters b and c are given by the system, while n and d are obtained from customer order data. Additionally, s m,o and t m,o are the standard setup and processing times, and  o is obtained by measuring the change of processing time over the time for each operator.
In Algorithm 1, we solved Model 1 after setting a value for N. We used Lingo to solve Model 1 in Step 3, as Lingo is the most comprehensive optimization tool, capable to solve small or large models efficiently, and capable to solve linear or non-linear models (Goodarzi, Ziaei & Hosseinipour, 2014).

Results and Discussion
The proposed model and algorithm were implemented to 18 data sets, consisting of 2 x 3 (2 machines and 3 operators), 2 x 4, 3 x 4, 3 x 6, 4 x 8, 4 x 4, 6 x 6 and 8 x 8 data sets. Data Set 1 to 8 examined a situation where more operators were available than machines, thus one or more operators were unassigned, while Data Set 9 to 16 examined a situation where the number of operators was equal to the number of machines. Additionally, Data Set 17 and 18 were specially developed to perform a sensitivity analysis. Parameters of the data sets are shown in Table 1.
Implementing Algorithm 1 to the data sets, the results are shown in Table 2. For example, the optimal solution for Data Set 1 was obtained when parts were split into 3 batches, the batch sizes were 97.6, 1.1 and 1.3 respectively (remember that batch 1 is the closest batch to the due date), operator 1 and 3 were assigned to machine 1 and 2 respectively and the objective function value was 21678.6. If the optimal solution for a data set is achieved at an N* value, then the algorithm must try N values from 1 to N*+1. Set of operator W* shows the operator assignment in the optimal solution, e.g. W* = 13 for Data Set 1 means that operator 1 and 3 are assigned to machine 1 and 2 respectively.
A calculation example using the algorithm is given for Data Set 12 in Table 3. We tried some N values, started from N = 1. By increasing N value one-by-one, the objective function value improved until N = 6, and then it stopped improving at N = 7. The calculation was then stopped and the objective function value at N = 6 was set as the optimal solution. The resulting Gantt-charts for Data Set 1, 5 and 14 are shown in Figure 2. 12 11 9 6 9 8 11 12 7 12 13 7 11 7 14 9 7 13 6 8 8 10 9 9 9 6 13 14 14 8  After implementing the model and algorithm to the data sets, we can see that the model worked properly for 2 to 8-machine flow shops (see Table 2). Batch 1 (the closest batch to the due date) was always larger than any other batches in the schedule. This confirms the relationships stated in Proposition 1, and is consistent with the single-machine model proposed in Yusriski et al. (2015).
To investigate this behaviour further, Data Set 1 and 12 were modified to a minimum learning by setting δ o = 1 for all o (the modified data sets were named as Data Set 1a and 12a). The results, as seen in Table 4, showed that a minimum learning has made batch 1 not anymore larger than the other batches in the modified data sets. This confirms that the behaviour (batch 1 is larger than the other batches) is caused by the existence of learning and forgetting effects, and that the faster operators learn, the larger the difference between batch 1 and the other batches, as stated in Proposition 2.
The behaviour that batch 1 is much larger than the other batches can be explained as follows. Please remember that batch 1 is the last batch processed in the schedule. The operator who processes a large batch will experience a long learning effect, which will be followed by a rapid forgetting effect. By scheduling the largest batch to be processed last in the schedule (as batch 1), this rapid forgetting effect will not affect any other batches in the schedule. This is why the model schedules the largest batch as batch 1. A sensitivity analysis was performed to identify the effect of changing the parameters to the solution. The sensitivity analysis was performed by changing the learning rate, while the other parameter values were kept constant. Data Set 12 was taken as a reference. The learning effect in Data Set 12 was accelerated by decreasing the learning rate ( o ) by 0.1 (became Data Set 17), and was decelerated by increasing the learning rate ( o ) by 0.1 (became Data Set 18). The result showed that the faster operators learn, the lower the number of batches in the optimal solution, as stated in Proposition 3. This occurred because operators with faster learning experienced a faster forgetting, so the model reduced the number of batches to reduce the forgetting effects between batches. This finding is consistent with the finding in Nembhard and Uzumeri (2000) through an empirical experiment which suggests that faster learning operators will also experience faster forgetting effect. Another finding of the sensitivity analysis was that the faster operators learn, the lower total actual flow time in the optimal solution as stated in Proposition 4. This occurred because the faster operators learned, the shorter time they needed to process batches. The effects of the learning rate changes are shown in Figure 3.
Since the objective function F is a unimodal function (i.e. to have exactly one extreme point) of N according to Bukchin et al. (2002), we can stop computation when F stops improving. Based on Bukchin et al. (2002), if the value of F* does not increase at an N value, then it will never improve again when N is increased. Thus, the last lowest F* value before it increases is the optimal solution for the problem. The advantage of considering learning and forgetting in batch scheduling can be explained as follows. As we can see in Table 4, ignoring the effects of learning and forgetting results more batches in the schedule and a higher objective function value. More batches means more setup costs spent by the system than required, while a higher actual flow time brings a higher inventory cost. Both brings out inefficiency due to poor scheduling. As stated in Nembhard and Uzumeri (2000), understanding the learning effect is important for setting time standards, estimating labour costs and scheduling.
In addition to Algorithm 1, future studies can use evolutionary algorithm heuristics to find the solution for Model 1, such as those presented in Garg (2016) and Garg (2019). The last two mentioned papers provided a beneficial approach for solving constrained nonlinear optimization problems. The solution and the computation time obtained from these heuristics can be compared to those obtained from Algorithm 1.

Concluding Remarks
This research developed a flow shop batch scheduling and operator assignment model with learning and forgetting effects to minimize total actual flow time. To solve the model, an algorithm was developed, and the algorithm worked by trying different number of batches, starting from one, then increasing the number of batches one-by-one until the objective function value did not improve anymore. We mathematically and numerically showed that the model scheduled the largest batch to be processed last in the schedule, and the faster operators learn, the larger the difference between the closest batch to the due date and the other batches, the lower number of batches in the optimal solution, and the lower the objective function. Considering the effects of learning and forgetting in a batch scheduling brings a better decision on batch sizes and a better calculation on the objective function value. Future works need to utilize evolutionary algorithm heuristics as an effort to improve the solution as well as the computation time.

Declaration of Conflicting Interests
The authors declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.

Funding
The authors received no financial support for the research, authorship, and/or publication of this article. The difference between F A and F B is given in Equation (A.5).

(A.5)
Since s c and v are positive, then F A -F B is negative, or F A < F B . This proves that the objective function F is lower when batch 1 is larger than any other batches in the schedule. The optimal value of v occurs when F A /v = 0. We need to find v at minimum and maximum learning rates, i.e. 0 and 0.5 respectively (the maximum observable learning rate is 0.514, rounded to 0.5 to simplify the computation). Setting F A /v = 0 and the learning rates to 0.5, we can rewrite Equation ( which is always positive, meaning that the difference between Q [1] and Q [i] is larger when operators learn faster. A.3. Proof of Proposition 3: The faster operators learn, the lower number of batches in the optimal solution Consider a schedule of batch i (i = 1, …, N). Batch 1, the closest batch to the due date, is larger than any other batches in the schedule (Proposition 1), and the difference v between Q [1] and Q [i] (i > 1) is larger when operators learn faster (Proposition 2). This means that the faster operators learn, the more parts will be processed in batch 1, and in turn, this will cause one or more batches (other than batch 1) to have zero size, bringing a lower number of batches in the optimal solution.
A.4. Proof of Proposition 4: The faster operators learn, the lower the value of the objective function F and Q [1] will be larger than Q [i]  which can be rewritten in Equation (A.14):