Integrated Optimization Approach of Hybrid Flow-Shop Scheduling Based on Process Set

Considering that process planning and production scheduling are independent of each other in a hybrid flow-shop, this study categorizes the process route into parallel process-set, batch set and unordered process-set, and builds a multi-objective optimization model to minimize the maximum completion time and the minimum processing cost. An improved artificial bee colony algorithm has been developed to solve the model. A segmented decoding method based on the insertion principle and the release time of the predecessor process is proposed to effectively use the idle time of the machine. A dynamic triggering neighborhood mechanism is introduced to enhance the local searchabilit of the algorithm. Finally, the feasibility and effectiveness of this algorithm to solve such problems are verified via simulation experiments.


I. INTRODUCTION
An appropriate feasible workshop scheduling plan is key to transform and upgrade the manufacturing industry and improve manufacturing efficiency, particularly in process industries, such as chemical processes, textiles, metallurgical, printed circuit boards, and automobile manufacturing enterprises [1]. Generally, a hybrid flow-shop (HF) consists of multiple processing stages. There are strict order constraints between different processing stages, with multiple parallel machines in at least one processing stage. The research objective of HF scheduling (HFS) is to strategize a feasible and effective arrangement of a processing sequence of different manufacturing tasks to satisfy the goals pursued by managers, such as the equipment load balance in each processing stage, minimum total flow time, and minimum maximum completion time. This has been proven to be an NP-hard problem [2]. Most studies consider certain assumptions (e.g., ignoring the setup times of operations, non-sequence-dependent) to simplify the construction model [3]. However, in a real-time production process, there are different production constraints The associate editor coordinating the review of this manuscript and approving it for publication was Zhiwu Li .
(e.g., one stage of the machine is a batch machine instead of a single parallel machine, or the processing sequence can be interchanged) and different dynamic events (e.g., new manufacturing tasks or machine failure) that increases the corresponding processing time to delay the total completion time of the original scheduling scheme.
Recently, the methods to solve HFS have been generally divided into two categories: accurate method and approximate method [4]. Accurate methods include mathematical programming method [5], [6], branch and bound method [7], [8] and Lagrange Relaxation algorithm [9], which can solve small scale simple problems. However, the solution space of practical problems is generally large and its calculation time is unacceptable. The approximate method is an experience-based solution algorithm, generally a range of solving time, space, and feasible solutions has been given. The solution speed is relatively fast, and the result is a feasible approximate optimal solution. The method mainly includes a heuristic approach and hybrid intelligence optimization algorithm. For the integrated optimization model of permutation flow shop scheduling problems with HFS, Pang et al. developed an improved fireworks algorithm to minimize the makespan [10]. Mirsanei et al. proposed a novel simulated annealing algorithm to produce a reasonable manufacturing schedule within an acceptable computational time for solving the HFS with sequence-dependent setup times [2]. Zhou et al. proposed a hybrid different algorithm with estimation of distribution algorithm to solve a reentrant HFS, where inspection and repair operations are carried out as soon as a layer has completed fabrication [11]. Yu et al. presented a genetic algorithm incorporating a new decoding method to solve the HFS with unrelated machines and machine eligibility to minimize the total tardiness [12]. Marichelvam et al. developed a cuckoo search metaheuristic algorithm to minimize the makespan for the multistage HFS scheduling problem [13]. Liu et al. combined the estimation of distribution algorithm and differential evolution algorithm to address a specialized two-stage HFS scheduling problem with parallel batching machines; a job-dependent deteriorating effect and non-identical job sizes were considered simultaneously [14]. Choong et al. combined particle swarm optimization with simulated annealing and tabu search, respectively, which were applied to the HFS scheduling problem [15].
The artificial bee colony (ABC) algorithm is a metaheuristic algorithm based on relative populations. It was first introduced by Karaboga to solve multi-variable, multi-modal continuous functions [16]. It was inspired by the behavior of bees collecting honey, it has fast convergence speed and strong optimization ability when compared with other metaheuristic algorithms [17]- [20]. Therefore, further intensive studies on the application of ABC algorithm have been conducted in the research field of job scheduling, such as single machine scheduling [21], multi-machine parallel scheduling [22], flexible job shop scheduling [23], open shop scheduling [24], flow shop scheduling [25].
The ABC algorithm has received much attention for its application in the HFS scheduling problem. Lin et al. developed a hybrid ABC algorithm with bi-directional planning to minimize the makespan of scheduling multistage HFS with multiprocessor tasks. Computational evaluations of two well-known benchmark problem sets supported the proposed hybrid ABC algorithm with high performance against the best-so-far algorithm [26]. Cui et al. proposed an improved discrete ABC algorithm that combined a novel differential evolution and modified variable neighborhood search to minimize the makespan of HFS [27]. Li et al. proposed an improved discrete ABC algorithm to solve the hybrid flexible flowshop scheduling problem with dynamic operation skipping features in molten iron systems. A dynamic encoding mechanism, flexible decoding strategy, and right-shift strategy were proposed [28]. Li et al. proposed a hybrid ABC algorithm to solve a parallel batching-distributed flowshop problem with deteriorating jobs. Two types of problemspecific heuristics were introduced, and five types of local search operators were designed [29]. To solve the largescale HFS scheduling problem with limited buffers, Li et al. combined the ABC algorithm with tabu search to minimize the maximum completion time [30]. Considering a twostage HFS with multilevel product structures and requirement operations, Kheirandish et al. developed an ABC algorithm along with a genetic algorithm to obtain near-optimal solutions to minimize the maximum completion time in reasonable run-times [31]. Pan et al. developed an effective discrete ABC algorithm with a hybrid representation and combination of forward decoding and backward decoding methods to solve the HFS scheduling problem in order to minimize the makespan [32].
Generally, several unexpected disruptions occur in realistic production systems. Peng et al. studied a real-world HFS rescheduling problem in which machine breakdown was considered as the disruption. They developed an improved ABC algorithm with a population initialization heuristic and worst solution replacement strategy [33]. Li et al. addressed the steelmaking scheduling problem with continuous casting constraint and resource constraints simultaneously. They proposed several heuristics and developed a discrete ABC algorithm with a two-phased-based encoding mechanism and local search procedure [34]. To save energy in sustainable manufacturing, Zhang et al. studied an HFS green scheduling problem with variable machine processing speeds to minimize the mankespan and total energy consumption, and developed a decomposition-based multiobjective discrete ABC algorithm [35]. Generally, a conventional foundry manufacturing process (as shown in FIGURE 1) demonstrates partial sequence flexibility and batch processing machines. Furthermore, several other complicated characteristics are as follows: (1) different processes of the same job can be processed at the same time (e.g., modeling and core-making stage), (2) the same process of different jobs can be processed in batches (e.g., melting stage), and (3) the processing order can be exchanged between different processes of the same job (e.g., detection phase).
Therefore, our research aims to propose an integrated optimization approach for HFS scheduling based on the process-set division scheme to support production process tracking and monitoring. The main contributions of our study are as follows: (1) a feasible division method of process-set is proposed to satisfy the requirement of integrating the process route with scheduling, (2) an HFS scheduling model with batch processors in the middle stage was considered, (3) an initialization method based on opposite learning was proposed, and (4) four effective neighborhood search strategies were formulated to improve the optimization ability of the solving algorithm. This paper is organized as follows: problem description and mathematical modeling are presented in Section 2, an improved ABC algorithm with dynamic trigger neighborhood search (DTNS) is developed in Section 3, a case analysis is demonstrated in Section 4, and conclusions and scope for future work are provided in Section 5.

II. PROBLEM DESCRIPTION AND MATHEMATICAL MODELING A. PROCESSES-SET DEFINITION
Assuming n jobs, and each job J i has m operations, and that its technological route is   O i,n . . . , O i,m }, there are many different process-set in the process route. However, there is only one process-set for each job. As shown in FIGURE 2, based on the directed acyclic graph [36], this work studies the phenomenon where the process route contains three special process-set: parallel processset (T pp ), batch process-set (T bp ), and unordered process-set (T up ). The difference between T pp and T up is whether the internal processes can be processed at the same time. There is no processing order requirement for the processes in T pp and T up . j+1 of the job J i in the process route can be processed by different parallel machines simultaneously; O i,j and O i,j+1 are called parallel processes. As shown in FIGURE 2, the parallel processes O 1,2 and O 1,3 form a parallel process-set T pp1 . 2) Batch process-set T bp : T bpn = J 1,k ,. . . , J n,k > n >, i.e., the k process of n jobs in the batch stage can be processed in batches on a batch processing machine. The corresponding process is called batch process. As shown in FIGURE 2, the batch process O 1,5 and O 2,5 form the batch process-set T bp1 , and O 3,5 form the batch process-set T bp2 . 3) Unordered process-set T up : i.e., the process O i,n and O i,n+1 of the job J i in the process route have no processing order requirements, but they cannot be simultaneously processed, O i,n and O i,n+1 are called unorder processes. As shown in

B. PROBLEM DESCRIPTION
This work studies the HFS scheduling problem with batch processors and flexibly sequenced processes. Each job passes through multiple processing stages, in sequence, of a same process route; each stage has at least one parallel machine. This problem contains three special processing stages: parallel processing, batch processing, and unorder processing stages. The remaining stages are non-parallel single processing stages. In the parallel processing and unorder processing stages, we should determine the processing sequence. In the batch processing stage, we should determine the grouping and batching of a job. In the grouping phase, the batch processor is divided into several job clusters based on the job selection first, and then further decomposed according to the threshold method. Therefore, the described problem can be divided into three sub-problems: (1) determining each job's process route, (2) assigning a processing machine to each job, and (3) determining each job's status on the machine processing order. Moreover, the following assumptions are considered for the problem addressed in this study: (1) All machines are available at the initial time 0.
(2) Each job has strict processing order constraints between the other processes except the parallel process set and unordered process set. (3) The processing time of each parallel process set and unordered process set should be processed between its predecessor and subsequent processes. (4) Except for the batch process set, the remaining operations are processed on a single parallel machine. (5) The batch processing machine has a processing threshold, and the weight of each batch of jobs cannot exceed the processing threshold of the batch processing machine. (6) The start time of the batch process set is not earlier than the maximum completion time of all its predecessor processes and the previous batch process set. (7) The completion time of the batch process set should be earlier than the start time of all subsequent processes. (8) The processing time of the batch processing stage is related to the weight of the batch of jobs, and the processing time of the jobs in the remaining stages is fixed. (9) There is no influence on each other. (10) Each job can belong to only one processing batch. (11) Each machine will run until all jobs pertaining to the machine are processed and stopped.
The notations used throughout this paper are list in TABLE 1.

2) DECISION VARIABLES
The objective of this study is to minimize the makespan and cost. The mathematical model is described according to the aforementioned assumptions and notations.

a: MAKESPAN
The completion time is the longest time consumed after the completion of all processes, expressed as f 1 , as shown below.
The completion cost is determined in two parts: material and processing costs. Further, the processing cost includes two parts: standby state processing cost and working state processing cost, denoted by f 2 , as shown below.
Constraints (3) and (4) indicate that the processing time of the parallel process set and unordered process set is between their predecessor and successor processes. Constraint (5) indicates that except the parallel process and unordered process sets, there are strict processing order constraints. Constraint (6) indicates that only one processing machine can be selected for each process of the job. Constraint (7) indicates that each job can only belong to one processing batch. Constraint (8) indicates each batch total weight is the sum of the weights of all the jobs in the batch. Constraint (9) indicates that the weight of each batch cannot exceed the processing threshold of the batch machine. Constraint (10) indicates that the processing time of each batch set depends on the batch weight and basic melting time constant. Constraint (11) indicates that the start time of each batch process set is earlier than the completion time of all its predecessor processes.

III. SOLUTION REPRESENTATION
The ABC algorithm has the advantages of few parameters and strong versatility. It has been widely applied in solving scheduling problems. Three types of bees are defined for the original ABC algorithm: employee, onlook, and scouter bees. The number of employee and onlook bees are equal. While the employee bees correspond to the honey source (the solution number of the problem), the richness of the honey source represents the adaptation of the solution degree. Employee stage: Employee bees are responsible for finding new honey sources. If the quality of the new honey sources is better than the original, the latter will be replaced and the new honey source information will be shared with the onlook bees.
Onlook stage: Onlook bees work by sharing the honey source information with employee bees and deciding whether to follow the employee bee to collect honey through roulette.
Scouter stage: Scouter bees update the honey source by updating the unimproved honey source several times.
The HFS problem based on the process set studied here is a multi-objective optimization problem. Therefore, this study first proposes an improved artificial bee colony (IABC) based on process coding. Then, the DTNS is introduced to improve the local optimization ability of the algorithm during the iteration process. The details are as follows.

A. ENCODING
Coding is used to solve problems represented by a set of vectors. A feasible coding method can increase the speed of convergence of an algorithm to easily find an optimal solution of a given problem. This study employs the process-machine-based coding method to generate the job scheduling sequence. Each group of vectors X = [Xj|Xm],which represents an effective solution to the problem, where X j represents the job. The appears order represents the process sequence of the job, X m represents the machine sequence of the optional machine set corresponding to the process, and not the machine number.

B. DECODING
Decoding is a practical solution to a set of vector mapping problems. Because the scheduling problem studied in this work has three special processing stages, different corresponding decoding methods are employed.  Step1: Determine the processing time period of each parallel process-set and its front operations in order regardless of the parallel processes. (In FIGURE 3, parallel process O i,3, start time T e = S i3 , and processing time period Step2: Determine the idle time segment of processing machine M from T b −T e , and sort it in the order of the earliest idle time to obtain T = {T 1 , . . . T n }; Step3: Select the later process in the parallel process to the processing time period [S i3 , E i3 ] and insert each of them in turn with T j until it can be put into a certain period of time. If there is no such period of time, maintain the original start-up time of O i,3 unchanged; Step4: Determine the start time of O i,4 . The start time is not earlier than the maximum finish time of the parallel processset.

2) BATCH DECODING
The processes in this stage are batch operations; different jobs can be processed in batches. This job first divides the job cluster based on the number of batch machines (each job cluster is processed on only one batch), and then groups batches according to the threshold method in each job cluster. The processing time of each batch machine is determined according to Constraint (10). Each job cluster, as shown in FIGURE 4, is grouped using the rules of Early Release Time Fit, assuming that there are a total of n jobs, where O i,4 can be processed on the batch machine. The decoding steps are as follows: Step1: Determine the completion time of the forward operations for all batch set of each job cluster and increments by the completion time to obtain the sorted artifacts. If its precursor operation is a parallel process-set, the entire parallel process-set is the precursor operation.
Step2: Create a new batch and place the sorted jobs in the batch in turn until the machining threshold for the batch machine is met or the batch is assigned to each job. The start time for each batch is selected as the maximum of the operations contained in the batch and completion time of the previous batch.

3) UNORDERED DECODING
The processes in this stage constitute an unordered processset. The processing order can be exchanged between the processes, but they cannot be processed simultaneously. As shown in FIGURE 5, this study is based on the principle of SBI. Final processing order of unordered operations. The composition of the unordered process O i, 5 and O i,6 is considered as an example, where the precursor process is O i,4 . The subsequent process is O i,7 , the decoding steps are as follows: Step1: Determine the processing time period of each unordered process-set and its precursor operations in order regardless of the sequence of operations (in FIGURE 5, the start time of O i, 6 , T e = S i3 , and processing time period is [S i3 , E i3 ]); VOLUME 8, 2020 The scheduling Gantt chart after decoding is shown in FIGURE 6.

C. INITIALIZATION STRATEGY
The quality of the initial population affects the convergence speed of the algorithm and quality of the final solution. This work studies the multi-objective optimization problem; hence, a population initialization strategy based on opposite learning is proposed to improve the quality of the initial population. The opposite learning mechanism is a machine learning method proposed by Tizhoosh [37], where an algorithm can be identified faster by considering the solution of the current problem and distance of the opposite solution from the optimal solution. The concept of opposite learning is introduced below: In this study, all the SN (the number of honey sources) population is first produced, and then the same amount opposite population is produced based on initial population. The opposite population is produced according to the order of the forward population and machine number, e.g., a vector solution of seven processes for three jobs X = Finally, the two populations are combined to sort the Pareto non-dominant The preceding SN is selected as the initial population.

D. EMPLOYEE STAGE
In the employee bee stage, the precedence operation crossover (POX) cross method was employed, as shown FIGURE 7, to produce a new honey source. The parents of the cross are the current honey source while the other are randomly selected in the population. If the number selected is consistent with the current honey source, then it is crossed with the current optimal individual to produce two children.
Through the aforementioned cross-method used to produce two new honey sources, we compare the two new sources of honey to check their dominance over the original honey source, and the source of raw honey is chosen as a new solution. If two new sources of honey dominate the source of raw honey, one of the new sources is randomly selected; else, the source of raw honey is not replaced.

E. ONLOOK STAGE
To find a better honey source, this stage first creates a new honey source X * by inserting the current honey source X (randomly producing two locations and inserting the post-position job into the front position). Then, the DTNS mechanism is introduced based on the fitness of the new honey source. The method is as follows: first, the tournament method is considered to select solution X . Then, an insert operation is performed on X to produce a new solution X * . If the new solution X * is dominated by X , then X is replaced; else, the four neighborhood structures defined in this study are triggered in turn until a better solution is identifies or after executing the four neighborhood structures. The steps are shown in FIGURE 8.
In the conventional ABC algorithm, the adaptation function is determined by the target value. This study mainly    focuses on the multi-objective optimization problem. Therefore, a concept based on the Pareto dominance quantity is proposed to determine the fitness function, i.e., to determine the number of remaining solutions dominated by each solution, and finally, to determine the following probability of following bees according to the fitness function, as shown in the Eq. (12) and Eq. (13): For the mathematical model constructed in this study, the following four neighborhood searches are defined. After using the following neighborhood structure to generate a new solution, we should check the process to avoid illegal solutions. Each neighborhood may generate more neighborhood solutions, and the smallest Pareto non-dominated level is the new solution. If there are multiple solutions, we randomly select one of them. NS1: Batch process exchanges neighborhoods-Randomly select several batch processes and reassign process positions in ascending order of job weight; VOLUME 8, 2020 NS2: Neighborhood based on critical path-Select the key block with more than two operations in the critical path (do not select if it does not exist), and insert the block head or block end operation into a point that is not adjacent to it in the path; NS3: Random full neighborhood-Randomly select three procedures in a vector solution to generate all possible neighborhood solutions after the entire arrangement of the selected procedures; NS4: Neighbor reselection of processing resources-Randomly select several parallel processes or unordered processes and redistribute the processing machines for the selected processes.

F. SCOUTER STAGE
The scouter bee is responsible for searching for new honey sources instead of the unknown honey source, as the quality of the random searched honey source may be poor. Therefore, this study performs an insertion operation and swap operation on the optimal honey source [38], [39] to replace the randomly generated honey source.

G. DEVELOPED IABC+ DTNS ALGORITHM
Based on the aforementioned theories and methods, the developed IABC+DTNS algorithm in this study is as follows: Step1: Set the number of iterations of the IABC-DTNS algorithm Maxcycle, number of searches Limit, number of honey sources SN, and size of the external archive set SN. According to the concept of opposite learning, two populations are produced, two populations are integrated, and Pareto is sorted as non-dominant. The pre-SN is selected as the initial population; it is placed in an external archive set with a Pareto non-dominant rating of 1; Step2: Generate a new solution based on the crossover method in Section III-D and perform Pareto non-dominated sorting on the population; Step3: Determine the following probability of each individual according to the sorted population; Step4: Perform neighborhood search for each individual according to Section III-E and perform Pareto non-dominated sorting on the updated population; Step5: Update the external file set, remove the solutions that are dominated, and leave only the non-dominated solutions. If the size of the external file set is reached, the solution with the smaller crowding distance is replaced.
Step6: Reinitialize according to Section III-F to reach the limit nonupdated solution.
Step7: Determine whether the specified number of searches is reached. If the output Pareto non-dominated solution set is not reached, repeat Step2−Step6.
The flowchart of the IABC+DTNS algorithm proposed in this study is shown in FIGURE 9 below:

H. COMPLEXITY OF IABC-DTNS
Algorithm complexity is an important index to evaluate algorithm performance, which determines the efficiency of

IV. EXPERIMENTS AND DISCUSSION
This study focuses on the HFS scheduling problems based on three proposed process sets. There are no benchmark instances to verify it. Therefore, a practical casting shop   Further detailed illustrations and formulations of these metrics are found in References [40], [41].

C. EFFECTIVENESS OF THE OPPOSITE LEARNING STRATEGY
In this study, the initialization method based on opposite learning is used to improve the quality of the initial population. To verify the effectiveness of the initialization strategy, a random initialization strategy (RI) and an initialization strategy based on opposite learning (OL) are employed in    the initialization stage of the proposed IABC+DTNS algorithm. The initialization parameters of the two algorithms are same; the population number is SN = 100, Limit = 10, and algorithm running time is 500 s. To avoid randomness, the    6 shows that the MID and POD values based on OL initialization are better than those of the RI, and the value of the initialization method based on opposite learning is much less than random initialization. Although the value of SNS based on OL initialization is less than that of the RI, the differences between them are too small to affect the diversity of feasible solutions. Therefore, the proposed initialization method based on OL is feasible and effective.

D. PARAMETER SETTINGS
To investigate the influence of different parameters on the performance of the algorithm, an orthogonal experiment with a scale of (33) was selected to optimize the algorithm parameters. To avoid the randomness of the results, each algorithm ran independently 30 times, and the average value was taken (Eq. (14)) as the evaluation index. The experimental results are shown in TABLE 7: According to the orthogonal test table, the horizontal trend chart of parameters, as shown in FIGURE 10, is drawn. From the diagram, the performance of the algorithm is the best when SN = 150, Limit = 10, P m = 0.2.
Each algorithm runs independently 30 times, and the termination time is set to 1500 s. The values of MID, SNS, and POD are shown in TABLE 8. It can be seen that the IABC-DTNS algorithm achieved the best results of MID and POD, which indicates that the convergence ability and effectiveness of IABC-DTNS are better than those of the other algorithms. The Pareto front scatterplot of the six compared algorithms is shown in FIGURE 11. It can be seen that the proposed IABC-DTNS algorithm proposed is similar to the real Pareto front. The scheduling Gantt chart of the six compared algorithms' non-dominated solution sets is shown in FIGURE 12. Each batch in the FIGURE is processed on the batch process machine 24. The maximum completion time and cost are listed in TABLE 8. For the algorithms' running time, the proposed algorithm consumes a shorter running time than those of the other algorithms. Further, the cost value is smaller than those of the other algorithms. In conclusion, the IABC-DTNS has better performance than the other algorithms.

V. CONCLUSION AND FUTURE WORK
In this study, an improved ABC algorithm based on the ABC algorithm and DTNS was developed to solve the HFS scheduling problem. Three process sets have been introduced to address the multi-production procedure, such as parallel operation, batch operation, and unordered operation. The three process sets are parallel process set, batch process set, and unorder process set. For the IABC algorithm, the operation-based three-stage decoding method is designed, an effective initialization strategy based on opposite learning is proposed to improve the quality of the initial population, and four neighborhood search strategies based on DTNS are introduced to improve the local optimization ability of the algorithm during the iteration process. Comparisons with other published algorithms are conducted on a practical casting HFS scheduling case. The analysis results show that the IABC-DTNS algorithm has better exploitation capability, exploration capability, and performance reliability in solving the HFS scheduling problem.
In consideration of further exploration, the following conclusions can be drawn. (1) Further work can be conducted on constructing an effective green scheduling mathematical model of HFS, particularly in certain high-energy-consumption flow manufacturing enterprises.
(2) Constructing a dynamic decision system with real-time scheduling data and developing a corresponding prototype system is extremely important for enterprise managers.