Abstract
In this paper, a problem of scheduling jobs with different sizes and fuzzy processing times (FPT) on non-identical parallel batch machines to minimize makespan is investigated. Moreover, the processing time (PT) of each batch is subject to the location-based learning and total-PT-based deterioration effect. Since this is an NP-hard combinatorial optimization problem, an improved intelligent algorithm based on fruit fly optimization algorithm (IFOA) is proposed. To verify the performance of the algorithm, the IFOA is compared with three state-of-the-art algorithms. The comparative results demonstrate that the proposed IFOA outperforms the other compared algorithms.
Introduction
Scheduling on batch processing machines (BPMs) is originated from the final test phase of chip production in semiconductor industry and widely applied in the fields of electronics manufacturing, harbour handling, pharmaceutical industries, and so on [1]. Compared with classical machine, one BPM in batch scheduling problems (BSPs) can process more than one job simultaneously. Moreover, all jobs in one batch have identical PT, equal to the longest PT of the job in the batch. Once the processing of a batch begins, it cannot be interrupted until the process is completed.
With the development of industries, the production environments of BSP have become diverse, including single machine [2, 3], parallel machines [4–6] and flow shop [7–9], etc. Furthermore, the complex constraints related to jobs have been taken into consideration. Zhou et al. [10] investigated the BSP on one single BPM with non-identical job sizes and dynamic arrivals and proposed several efficient constructive heuristics to address this problem. Ribas et al. [11] proposed an iterated greedy algorithm to schedule jobs with fixed PTs and setup times under a blocking flow shop.
Since the decision-maker of an enterprise often has to consider many factors, such as costs and profits, different objectives related to BSPs have been studied. Zhou et al. [12] studied an energy-efficient BSP on parallel BPMs with dynamic job arrivals and time-of-use pricing scheme to minimize makespan and total electricity costs. Shahvari et al. [13] investigated a bi-objective BSP with dual-resources on unrelated machines and designed a bi-objective MILP model and an improved PSO algorithm with local search. Recently, meta-heuristics have also been applied to solve BSPs. Costa [14] developed a dedicated hybrid genetic algorithm with a two-stage encoding to deal with complex BSPs. To improve solution quality, a strategy of problem-oriented local search was incorporated. Chung et al. [15] investigated a BSP in hybrid flow shop to minimize the makespan, and an artificial immune system based on immunoglobulin was put forward to solve the problem.
The BSPs in most studies are deterministic. However, there are a lot of uncertainties in reality, such as PT. Hence, to represent the uncertainties in scheduling, fuzzy mathematics [16, 17] is applied. Geyik et al. [18] studied a problem with FPT of jobs on non-identical BPMs and employed the Mamdani fuzzy inference method based on expert knowledge in determining the crisp PT.
The phenomenon of learning and deterioration can be found in many real-life scenarios. For example, the actual PT is generally reduced due to the operator learning from his past experiences in the process of repeating the same operation for a long time. The reason can be explained as the more time you spend, the better skills you obtain. Additionally, when the machine has worked for a long time, the wear of parts will deteriorate the performance of the machine, resulting in the extension of actual PT. Since both the learning and deterioration effects in measuring productivity is helpful in improving the accuracy of production planning and productivity estimation, the scheduling problems with the effects of learning [19, 20] and deteriorating [21, 22] were investigated.
Fruit fly optimization algorithm (FOA) [25] is a noval swarm intelligence optimization algorithm, which is inspired by the foraging behaviors of fruit flies. Compared with other existing optimization algorithms, the FOA has a well-understood principle and strong global search ability. Furthermore, the FOA is easy to implement due to fewer adjustable parameters. It has been successfully applied to a variety of optimization problems. Wang et al. [32] proposed a multi-objective knowledge-guided FOA for multi-skill resource-constrained project scheduling problem to minimize the makespan and total cost. A two-stage adaptive FOA [33] was proposed to address the scheduling problem on unrelated parallel BPMs with additional resource constraints in which two operators were put forward to generate neighboring solutions. To reduce the carbon footprint and makespan in the manufacturing industry, Liu et al. [34] designed a novel FOA based on a hybrid step-size of smell search to obtain better exploration performance.
To our knowledge, no research has been published on scheduling of BSP with the effects of learning and deterioration simultaneously when the processing time of jobs are represented by fuzzy numbers. In this paper, fuzzy theory is applied to the BSP on non-identical parallel machines, where the processing time of each job is defined as a triangular fuzzy number. Moreover, the effects of location-based learning and total-PT-based deterioration are simultaneously taken into consideration. Due to the complexity of the studied problem, a novel meta-heuristic algorithm based on fruit fly optimization algorithm is proposed. In the remainder of this paper, Section 2 describes the studied problem. In Section 3, an improved fruit fly optimization algorithm (IFOA) is presented to address the problem. The results of numerical comparative experiments are described and analyzed in Section 4. Finally, the paper is concluded in Section 5.
Problem description
Fuzzy theory
In this paper, the PT of job is represented as a triangular fuzzy number (TFN). A TFN

Triangular fuzzy number.
(1) Fuzzy addition (+)
(2) Fuzzy subtraction (-)
(3) Fuzzy multiplication (×)
(4) Fuzzy comparison
To determining the maximum of TFNs, the method of integral value [17] is applied to compare. The total integral value (IV) of the TFN
where θ ∈ [0, 1] indicates the degree of decision maker’s optimism. The ranking method of TFNs is formulated as follows:
(1) If
(2) If
(3) If
According to the first learning model based on location [23], the actual PT (APT) of J
j
at the kth position on M
i
, denoted by P
kij
, equeals to p
ij
k
c
1
, where c1 ≤ 0 and p
ij
represent the learning coefficient and the original PT of J
j
. However, it is neglected in Biskup’s model that the APT of a job is close to zero when the job is processed late enough, which is considered in DeJong’s learning curve [24], where p
kij
is defined as Eq. (6).
where
In this section, a Fuzzy Mixed-integer Nonlinear Programming (FMNLP) model is presented. The assumptions are as follows:
(1) There is a set of n jobs, denoted by J = {J1, J2 . . . J
n
}. Each job J
j
has non-identical FPT
(2) A set of BPMs is denoted by M = {M1, M2 . . . M m }. Each machine M i has capacity denoted by Z i .
(3) The generated set of batches is denoted by B. B ki represents the kth batch on M i . Each batch is only processed on one machine once time. The size of B ki denoted by S ki . Once a batch is processed, it cannot be interrupted until the processing is completed.
The decision variable is defined as follows:
Based on the above discussion, the mathematical model of the studied problem is described as follows:
Subject to:
The fruit fly optimization algorithm (FOA) [25], an intelligent optimization algorithm, mimics the foraging behavior of fruit fly. FOA is easier to be understood and implemented due to its fewer parameters. To the best of our knowledge, FOA has been applied to address many continuous optimization problems and some combinatorial ones, except BSPs. Therefore, a novel FOA is proposed to address the studied BSP.
Fruit flies have powerful senses of smell and vision. There are two main steps for fruit fly foraging. First, the fruit flies fly out of the population in random directions, looking for nearby food resources through their sensitive olfactory organs. The location with the strongest smell will be recorded. In the second step, the fruit flies will fly to the recorded location and form a new population. This process is repeated until food is found. In order to improve the performance of the fruit fly optimization algorithm for BSPs, some efficient strategies based on the characteristics of the problem are designed. The improvements of FOA can be summarized as follows: The multi-population strategy is designed to improve the exploration capability of the algorithm. Instead of random initialization, a heuristic algorithm is proposed to generate an initial solution with high quality. Special smell-based search, vision-based search and cooperative search were designed to balance exploitation and exploration of algorithm among the search space.
Specific implementation details can be found in Section 3.2, 3.3 and 3.4.
Encoding
In the proposed improved FOA (IFOA), each fruit fly represents a solution encoded as a 2 * n vector, each column of which corresponds to a job. Each number in the first row represents the index of batch that accommodates the job in the corresponding column. Each number in the second row denotes the index of machine that processes the batch in the corresponding first row. In IFOA, makespan can be used as the fitness value of the fruit fly. Therefore, the fitness function (FF) of the algorithm is calculated as Eq. (18).
An example of encoded solution with 10 jobs is shown as Table 1. From Table 1, it can be seen that J1 is assigned to the first batch on machine M1.
An example of solution code
In the classical FOA, the fruit fly swarm will be generated around the central position. To improve the search capability of FOA, a multiple-swarm strategy is presented to enhance the exploration in this paper. The number of sub-swarms is denoted by NC. Due to the central position of the swarm being generated randomly, the fruit flies are very likely to fly far away from the food. Hence, it is significant to generate promising initial center through utilizing the knowledge of problem.
In the studied problem, due to the limited capacities of machines and non-identical job sizes, different assignments of jobs greatly affect the makespan. However, most studies only consider how to take full advantage of the unoccupied space in batch and fail to analyze the impact of PTs of jobs on batches. The PT of the job will be affected by the one with the largest PT in the batch. Therefore, sizes and PTs of jobs are utilized to determine which job should be added into the current batch. Based on the features of batch, if the following two conditions are satisfied simultaneously after some job is added into the current batch, the job is to be selected with a higher priority:
(1) The minimum difference between the size of the job and the remaining space of the current batch;
(2) The PT of this job is closest to that of the current batch.
Therefore, the heuristic information H kij for job J j in batch B ki is formulated as Eq. (19).
To describe the process of solution construction, a 1 * n vector, denoted by TL, is designed to record the processing status of jobs. TL is initialized as [1, 1, ⋯ , 1]. Once one job is batched, the corresponding element in TL is set to zero. Hence, TL = [0, 0, ⋯ , 0] indicates that all jobs are batched. Furthermore, because the sizes of some jobs are larger than the capacities of some machines, a candidate list of jobs, denoted by CL ki , consisting of the jobs whose sizes are smaller than the remaining space of B ki , is built.
In order to avoid the algorithm falling into local optimum, the initial solution is generated randomly with a certain probability to improve the exploration ability. To be specific, a random number r will be generated when the batch is selecting a job. If r is not greater than the probability ϕ ∈ (0, 1), the job with the largest heuristic information value is selected. Otherwise, randomly select a job and add it to the batch. According to preliminary experiments, the parameter is set to 0.8 can balance the exploration and exploitation capabilities of the algorithm. The heuristic to generate the initial center for each sub-swarm, called HIP, is described as
1: Initialize TL ← [1, 1, ⋯ , 1].
2:
3:
4: Generate CL for each machine according to Eq. (10).
5: Select M i with the minimum completion time and CL i ≠∅.
6: Build an empty batch B b on M i . Add one job randomly selected from CL i into B b .
7: Update TL and CL i .
8:
9: Calculate heuristic information for each job in CL i according to Eq. (9).
10: Generate a random number r ∈ [0, 1].
11:
12: Select J
j
with the maximum
13:
14: Randomly select a job from CL i and add it into B b .
15:
16: Update TL and CL i .
17:
18: Insert B b in a position randomly selected in M i .
19:
20:
21:
The smell-based search (SBS), the key step of FOA, has a great influence on search ability of FOA. In SBS, fruit flies are generated around the center in each swarm to construct the sub-swarm [25]. In the IFOA, five novel SBS operations, called OP1, OP2, OP3, OP4 and OP5, are presented for constructing sub-swarms. In OP1, a new fruit fly is generated by exchanging the position of two randomly selected batches on the same machine. In OP2, two batches are randomly selected on two machines with the same capacity and swapped with each other to generate a new solution. In OP3, two batches on two machines are selected randomly to exchanging processing position. The batch will be rebuilt if its size exceeds the changed machine capacity. To be specific, a new batch will be created at the current location, and jobs will be added to the batch based on the heuristic information. If there are jobs left, each of them will be placed in the first batch where the job can be placed among all batches of the current machine. If one job cannot be placed in any batch of the current machine, a new batch containing the job will be created at the last position of the machine. In OP4, OP1 and OP3 are executed simultaneously r times, where r is a operating parameter subject to uniform distribution. In OP5, OP2 and OP3 are run for r times simultaneously. After all the fruit flies in each sub-swarm are evaluated by fitness function, the solution with best fitness value is obtained. In the strategy of vision-based search (VBS), the center of each sub-swarm is updated by the best solution in the sub-swarm.
To make the algorithm more readable, an example of the SBS is provided here. Suppose there are three machines, i.e., M1, M2, M3, their capacities are 6, 6, 10, respectively. Figure 2 shows the process of OP1, where B1 represents a batch consisting of two jobs of size 3. The completion time of the machine will be affected by learning and deterioration effects when the positions of B2 and B3 are swapped. In addition, Figure 3 shows the exchange process of OP2 between machines with the same capacity. From Figure 4, we can see that the batch will be rebuilt if OP3 is performed between machines of different capacities.

The process of OP1.

The process of OP2.

The process of OP3.
The strategy of search based on smell and vision (SBSV), described as
1:
2: Randomly select one operation from OP1, OP2, OP3, OP4, OP5 to generate a solution. /*SBS*/
3: Evaluate the fruit fly by fitness function in each sub-swarm.
4:
5: Update the center of the sub-swarm by the best solution in this sub-swarm. /*VBS*/
To avoid converging to the local optimum and improve the diversity of population, reinitialization is employed. Specifically, the center of each swarm is replaced by a new solution if the center keeps unchanged for five generations. Furthermore, fruit fly swarms will be sorted by fitness values and initialized for the poorer Ω percent of them in each generation. The Ω represent initial probability and is set to 0.8 according to preliminary experiments.
However, some solutions with good fitness values in neighborhood may be lost according to the above initialization operators. In order to exploit the promising area effectively, NE elite sub-swarms are generated. The elite sub-swarms and the normal ones share information through cooperative search to improve their search abilities of exploitation and exploration, simultaneously. Specifically, the elite population is initialized as an empty set. At each iteration, the best solution in all the NC normal sub-swarms is chosen to update the worst center in the NE elite sub-swarms. Furthermore, the SBSV will also be implemented in elite populations but will not be initialized.
The implementation of cooperative search (CS), described as
1: Initialize fruit fly swarms that have not improved fitness values in five iterations.
2: Initialize Ω percent of fruit fly swarms with poor fitness values.
3: Select the fruit fly swarm with the optimal fitness value (Opt).
4: Determine the size of the elite population (EP).
5:
6: The Opt will join the elite population.
7:
8: The worst swarm of the elite fruit fly population will be replaced by Opt.
9:
Algorithm description
The proposed IFOA is described as
1: Initialize: M, J, the maximum iteration Tmax, the numbers of normal populations (NC) and elite populations (NE), the size of sub-swarms (S).
2:
3: Call HIP to generate initial center for each normal population.
4:
5:
6:
7: Call SBSV to generate solutions and update sub-swarms.
8:
9: Call CS to update the elite populations.
10:
11: Call SBSV to generate solutions and update sub-swarms.
12:
13:
14: Output the obtained best solution.
Experimental results
To verify the effectiveness of IFOA, a set of testing instances are generated. The parameters of the testing instances are shown as Table 2.
Parameter settings
Parameter settings
The number of machines is set to 5 and 10 according to the suggestions in [29], denoted by M1 and M2, respectively. There are three different capacities in the machines, i.e., 10, 25 and 65, represented by Z1, Z2, Z3, respectively. Considering that machines with large capacities are generally much more expensive than those with small capacities in reality, the number of the small-capacity machines is set to not less than that of the large-capacity machines. Specifically, the number of machines corresponding to the three capacities is (2, 2, 1) for the 5 machines, and (5, 3, 2) in the case of 10 machines, respectively. The maximum iteration number Tmax is set to 200.
Three key parameters of jobs have a significant impact on objective value, i.e., the number, the size, and the processing time of job. Four different levels of job numbers, i.e., N1 = 90, N2 = 126, N3 = 180, N4 = 270, are selected [30]. Furthermore, the size of each job is uniformly distributed in (0, Z3). For each level of job numbers, three types of job sizes are chosen and denoted by K1, K2 and K3, respectively. Specifically speaking, the jobs in K1 have smaller sizes and can be scheduled on any machine. The jobs in K2 have the medium size and can be scheduled on machines whose capacities are not smaller than 10. However, the jobs in K3 can only be scheduled on the machines with capacity larger than 25. In addition, the numbers of jobs in K1, K2 and K3 are set to 2n/3, 2n/9 and n/9, respectively. Considering the cost of machine, it is unnecessary to process few jobs in a large number of machines. Therefore, the number of machines for scheduling 90 and 126 jobs is set to 5 and that of processing 180 and 270 jobs is set to 10. In this study, the processing time of job is represented by TFN. To fuzz a crisp number and generate a fuzzy processing time [29],
Moreover, to test the effects of learning and deterioration on outcomes, four combinations of learning and deterioration coefficients of the batch are set to (-0.1, 0.1), (-0.1, 0.3), (-0.3, 0.1), and (-0.3, 0.3), denoted by E1, E2, E3, and E4, respectively [31]. Furthermore, the operating parameter r is set to U [5, 10] according to preliminary experiments.
The proposed algorithm is implemented by C++ programming language and executed on a PC with Intel Core i7 3.4 GHz. For each parameter combination, 10 independent instances are randomly generated. Each instance is run 30 times and the average of result will be reported.
There are three key parameters in IFOA, i.e. the number of normal populations (NC), the size of sub-swarms (S), and the number of elite populations (NE), which are determined through the Taguchi method of experimental design (DOE) [26]. Specifically speaking, four levels are listed as Table 3 for each parameter. Table 4 displays an orthogonal array L16(43). For each combination of parameters, the algorithm are set to run 30 times, and the average results are calculated as the response value (RV). In order to display the data more directly, the value of IV is used, instead of fuzzy numbers, to represent the experimental results. It is noted that small value of RV implies better parameter values.
Factor levels of parameters
Factor levels of parameters
Orthogonal array and RV values
Figure 5 shows the trend of factor levels of the three parameters. From Figure 5, it can be seen that NC and S have great influence on experimental results. A larger value of NC and a smaller value of S are preferable for exploration. On the contrary, a smaller value of NC and a larger value of S can cause the algorithm to trap into a local optimal solution. Therefore, to balance between exploration and exploitation, the values of NC and S should be determined appropriately. Moreover, NE significantly affects the global cooperation-based search. A larger value of NE can result in premature convergence of algorithm. According to Figure 5, the parameter combination is chosen as NC = 50, S = 7, and NE = 5 for the following experiments.

Trends of factor levels.
To verify the performance of IFOA, three state-of-the-art algorithms are selected for comparison, that is, PSO ff [9], FHACO [17], and RKGA [6]. To be applied to the studied problem, the arrivals of all jobs are set to zero in RKGA. Since the FHACO is not designed to solve the BSP, the method of building batches in IFOA is adopted in FHACO. The other parameter values of the comparative algorithms are all the same as those in their original papers.
To analyze the performance of each algorithm, the relative percentage deviation (RPD) [27], defined as Eq. (21), is adopted.
where Sol Alg denotes the objective value obtained by the corresponding algorithm, and Sol best denotes the best result among those obtained by all algorithms. Obviously, the smaller the value of RPD, the better the quality of solution.
Table 5 lists the results of four comparative algorithms. The first column in Table 5 represents the codes of instance groups. Columns 2 to 4 give the results of the best, the maximum, and the average of RPD, denoted by BRPD, MRPD, and ARPD, respectively. The best result in each instance group is shown in boldface.
Comparative results of comparative algorithms
From Table 5, it can be seen that IFOA significantly outperforms PSO ff , FHACO, and RKGA on all instances. Specifically, the average BRPD of IFOA is no more than four percent, meaning that IFOA can obtain the better results in most cases. MRPD values obtained by IFOA are smaller than ARPD values of the other algorithms, indicating that the worst results of IFOA still beat the average results of the other comparative algorithms. Furthermore, PSO ff shows the worst average performance among all comparative algorithms, but it has obvious advantages in dealing with large-scale problems. Additionally, the results of IFOA seldom fluctuates with the change of numbers of machines and jobs, indicating that the IFOA has better robustness among all algorithms.
The average run time of the algorithms on different instance groups are displayed as Figure 6. The x-axis represents the instance groups with different numbers of machine and job, and the y-axis represents the average computation time. From Figure 6, it can be observed that IFOA takes less time than the other algorithms in the case of small-scaled instances. As the complexity of problem increases, the computation time of IFOA is less than that of FHACO and RKGA, but slightly more than that of PSO ff . This is because IFOA requires more time to reconstruct sub-swarms during the process of generating fruit flies and to reinitialize the sub-swarms with poor quality in each iteration.

Results of average computation time.
In summary, the overall performance of IFOA is obviously better than those of the other comparative algorithms, demonstrating the effectiveness of IFOA. On the one hand, the algorithm can obtain high-quality solutions in promising search area through a elaborate design of initialization. On the other hand, search strategies based on problem knowledge can balance between exploration and exploitation effectively.
To verify the effectiveness of presented strategies, IFOA without the heuristic of initialization and CS, denoted by IFOA nh and IFOA nc respectively, are compared. In IFOA nh , batches are generated through selecting jobs randomly. Experimental results of the three algorithms are shown in Table 6, where "AVG" and "t" represent the average makespan and run time obtained by each algorithm, respectively. "Imp nh " [27] in the eighth column denotes the improvement of adopting the strategy of initialization, and is computed according to Eq. (22). The same operation is also applied to "Imp nc ". It is remarkable that the larger the value of Imp, the more effective the strategy.
Comparative results of different strategies
Comparative results of different strategies
As shown in Table 6, the results of IFOA are superior to those of IFOA nh in all instances. It demonstrates that the strategy of initialization can generate better solutions, which is preferable for fruit flies to determine promising search area in advance and reduce a large amount of useless exploration. Moreover, it can be found that the makespan of IFOA outperforms IFOA nc because CS is able to balance between exploitation and exploration. It is notable that IFOA nc takes much less computation time than IFOA and IFOA nh , because the elite populations require more time to generate individuals and communicate with the normal populations during the search.
The learning and deterioration effect has a significant effect on the results. To show the influence of learning and deterioration effects directly and clearly, the boxplots are provided according to the numbers of machines and jobs as Figure 7. The x-axis represents different combinations of learning and deterioration effects, and the y-axis represents the IV values of makespan. It can be seen that a higher rate of learning effect leads to better results. Furthermore, the makespan are going to get bigger as the learning effect remains unchanged and the deterioration effect increases. Therefore, the best results can be obtained when the learning effect is the largest and the deterioration effect is the smallest, corresponding to E3.

The effects of learning and deterioration.
Figure 8 depicts the sensitivity of algorithms to deterioration effect, where the x-axis represents the rate of deterioration effect and the y-axis represents the IV values of makespan. From Figure 8, it can be observed that the makespan obtained by all algorithms becomes larger with the increase of deterioration effect. However, the results obtained by IFOA vary slightly than those of the other algorithms, indicating that IFOA has good stability in terms of deterioration effect.

Sensitivity of the algorithms to deterioration effect.
To further analyze the experimental results, the non-parametric statistical hypothesis test is applied to verify the performance of algorithms. The Wilcoxon signed-rank test [28], without assuming the data is normally distributed, judges whether the overall data distribution is the same by comparing two related samples. After the Wilcoxon test is performed, three evaluation parameter values of each pair of algorithms are obtained. That is, R+ (the sum of ranks calculated from the first algorithm outperformed the second), R- (the opposite situation), and ρ - value (the significance level of the hypothesis test). If ρ - value is not more than μ, the assumption is statistically significant with 100 ×(1 - μ)% confidence level.
The results of Wilcoxon signed-rank test obtained by IFOA, PSO ff , FHACO and RKGA are shown in Table 7. From Table 7, it is obvious that IFOA remarkably outperforms PSO ff , FHACO and RKGA with 95% confidence level since the ρ - value of each of the pairs is smaller than 5%. Moreover, it can be seen that RKGA is superior to PSO ff and FHACO, while the worst result is obtained by PSO ff .
The results of Wilcoxon signed-rank test
The results of Wilcoxon signed-rank test
In this paper, a scheduling problem on non-identical parallel BPMs with learning and deterioration effects under fuzzy environment is investigated. To improve search efficiency, a novel FOA-based algorithm is proposed to minimize the fuzzy makespan. Firstly, a heuristic is developed to guide the fruit flies to generate better initial solutions. Secondly, five neighborhood-based operations are presented and employed in BSPs. Thirdly, a CS strategy oriented to two different populations is further presented to balance between exploration and exploitation. In future research, other manufacturing environments (including unrelated BPMs and flow shop) or different uncertain factors (including fuzzy job sizes and fuzzy arrival time) can be considered.
Footnotes
Acknowledgement
This work is supported by the National Natural Science Foundation under grants 61872002, 71971002 and 71871076, the Humanity and Social Science Youth Foundation of Ministry of Education of China under grant 15YJC630041, the Natural Science Foundation of Anhui Provincial Department of Education under grant KJ2015A062.
