A DE-LS Metaheuristic Algorithm for Hybrid Flow-Shop Scheduling Problem considering Multiple Requirements of Customers

In this paper, we address a hybrid ﬂow-shop scheduling problem with the objective of minimizing the makespan and the cost of delay. The concerned problem considers the diversity of the customers’ requirements, which inﬂuences the procedures of the productions and increases the complexity of the problem. The features of the problem are inspired by the real-world situations, and the problem is formulated as a mixed-integer programming model in the paper. In order to tackle the concerned problem, a hybrid metaheuristic algorithm with Diﬀerential Evolution (DE) and Local Search (LS) (denoted by DE-LS) has been proposed in the paper. The diﬀerential evolution is a state-of-the-art metaheuristic algorithm which can solve complex optimization problem in an eﬃcient way and has been applied in many ﬁelds, especially in ﬂow-shop scheduling problem. Moreover, the study not only combines the DE and LS, but also modiﬁes the mutation process and provides the novel initialization process and correction strategy of the approach. The proposed DE-LS has been compared with four variants of algorithms in order to justify the improvements of the proposed algorithm. Experimental results show that the superiority and robustness of the proposed algorithm have been veriﬁed.


Introduction
Flow shop involves a large amount of jobs and machines, and the jobs need to be processed in machines, which formulates a series of stages in the factories. Flow-shop scheduling problem (FSP) [1,2] has been widely investigated by the researchers, which aims to find the optimal schedule in the production procedures. e FSP, with reference to many constraints of resources, the number of jobs and machines, is a complex combination optimization problem [3,4]. e research on FSP can be traced back to 1954 [5], in which an exact algorithm has been proposed to deal with the proposed three-machine flow-shop scheduling problem. en, many scholars have devoted enormous effort and time to the research of FSP. For example, Riahi and Kazemi [6] have proposed a no-wait flow-shop scheduling problem, which is a variant of FSP, considering the makespan and flow time. In the paper, the authors have provided the mathematical formulation and a hybrid metaheuristic algorithm combined ant colony optimization and simulated annealing algorithm. Marichelvam et al. [7] address a flow-shop scheduling problem with minimization of the makespan and total flow time, which is a biobjective flow-shop scheduling problem. In order to solve the proposed problem, a hybrid monkey search algorithm based on a subpopulation has been studied.
It is worth mentioning that hybrid flow-shop scheduling problem (HFSP) is one type of FSP, which need to schedule the jobs in machines and complete the assignments of machines [8][9][10]. In HFSP, there are parallel machines in a stage, which has higher requirements for the schedule Because redundancy and shortage of machines both can reduce the efficiency of the production and increase the cost. In addition, hybrid flow-shop scheduling problem has been proved the NP-hard [11,12]. For instance, Yu et al. [13] propose a HFSP to minimize the total tardiness in consideration of several practical assumptions. Moreover, a genetic algorithm has been utilized to tackle the proposed problem, which involves a novel decoding approach to get the objective. Pan et al. [14] provide nine algorithms to solve the proposed HFSP, and the objective of the concerned problem is to minimize the makespan. Zhang et al. [12] study the HSFP with a lot streaming, and the objective is to minimize the total flow time. A mathematical formulation is provided for the studied problem, and an effective modified birds optimization algorithm has been applied to obtain the results. In this paper, a hybrid flow-shop scheduling problem has been studied, which considers many stages with parallel machines and multiple requirements of customers. Different requirements of customers indicate that the manufacturer needs to produce different types of productions in a horizon. e diversity of productions reflects on the procedures in the manufacturer. For example, two productions need to be processed in different stages. e first one has two procedures and the other one has three procedures. e objective of the proposed problem is to minimize the makespan and the cost of delay. us, the schedule should not only consider the flow time but also take into account the time requirements of the customers, which is inspired by real-world situations.
Due to the NP-hard of the HFSP, in many prior studies, metaheuristic algorithms have been applied to tackle the HFSP [6,11,13], such as greedy algorithm, simulated annealing algorithm, genetic algorithm, etc. Metaheuristic algorithms can obtain the solution of complexity optimization problem in available time, which have been developed in many fields, i.e., manufacturing industry [15][16][17], airline industry [18][19][20][21], energy sources [22][23][24][25], etc. In addition, Differential Evolution (DE), firstly proposed by Storn and Price [26], is a powerful evolutionary algorithm for global optimization. Like most evolutionary algorithms, DE is a population-based algorithm involving three main operations [25,27,28], i.e., mutation operations, crossover operation, and selection operation. ese operations update the solution by the specific mechanism and help the algorithm to find the global optimal solution. Recently, DE algorithm has been widely studied by many researchers and has shown good performance in solving many optimization problems, especially in flow-shop scheduling problem. For example, Zhang and Xing [29] have utilized DE to solve a distributed limited-buffer flow-shop scheduling problem, with minimization of the makespan. In the study, two heuristics and two differential evolution metaheuristics have been proposed for various situations. Zhou et al. [30] presented a hybrid differential evolution named DE-eEDA, which combined DE with an estimation of distribution algorithm. e authors have applied the proposed DE-eEDA to tackle the reentrant hybrid flow-shop scheduling problem with the objective of minimizing the total weighted completion time. In this paper, a hybrid differential evolution with local search algorithm (denoted by DE-LS) has been proposed to solve the studied problem, which has modified the mutation process and provides the novel initialization process and correction strategy of the approach. Moreover, the local search has been utilized in the specific situation which can improve the solution by several operators, i.e., 2opt and swap. Moreover, the comparison between previous studies works and this study is provided in Table 1, which compares the studies from three aspects, i.e., types of problems, objectives, and approaches. e contributions of our paper can be organized as follows: (1) A hybrid flow-shop scheduling problem with consideration of multiple requirements of customers has been considered, with reference to diverse productions and different procedures. (2) e novel mixed-integer programming model has been provided in the paper to formulate the studied problem. (3) e hybrid metaheuristic algorithm with Differential Evolution and Local Search (DE-LS) has been proposed to tackle the proposed problem, which involves the modified mutation process, initialization process, correction strategy, etc. (4) e proposed DE-LS has been compared with four variant algorithms, and the robustness and superiority of DE-LS have been verified. e remaining components of this paper can be summarized as follows.
e problem description and mathematical formulation are provided in Section 2. In Section 3, the proposed hybrid algorithm DE-LS has been illustrated detailedly, with the encoding strategy and correction strategy, initialization, etc. e results of computational experiments can be seen in Section 4. e conclusion of the paper is presented in Section 5.

Problem Description and
Mathematical Formulation e flow-shop scheduling problem has been proved as NPhard [35]. Moreover, the hybrid flow-shop scheduling problem with two machines in one stage has also been proved NP-hard [36]. In this paper, a hybrid flow-shop scheduling problem with consideration of several machines in one working processing and more than one stage is being studied, which is NP-hard.
is study focuses on the multiple demands of customers in the hybrid flow-shop scheduling problem, which is based on the real-world situations. Generally, the manufacturers will revive many bookings from different customers, which have different requirements about the productions. For example, some customers need the productions adding one or more processes based on the basic productions. On the contrary, some of them may need the productions omitting one or more processes based on the basic productions. e differences between customers directly influence the efficiency and the working patterns of the manufacturers. us, the paper considers the differential demands of the customers. Moreover, the paper aims to improve the efficiency of the manufacturers and reduce the delay cost. e notations used in the paper can be found in Table 2.
To better understand the proposed problem, an example of the processes of the manufacturing and the delivering is shown in Figure 1. Firstly, the suppliers provide the original materials, and then the following processes can be started. Due to the different requirements of the customers, the jobs need to be processed with the specific sequences of the machines. For example, job 2 and job 3 need to be processed in the first process, while job 1 and job N do not need that. Jobs with different processing sequences can manufacture the productions with multiple types, which aims to satisfy the differential demands of customers.
In order to study the proposed problem, the following assumptions have been made in this paper: (a) e job will not be interrupted when it starts (b) e production with the same type is homogeneous (c) e machine can process the jobs list with different types of jobs (d) e arrival times of all jobs are known and the same.
Decision variables are as follows:  [12] HFSP Minimize the total flow time Effective modified migrating birds optimization Yu et al. [13] HFSP Minimize the total tardiness Genetic algorithm Pan et al. [14] HFSP Minimize the makespan Nine effective metaheuristics Tasgetiren et al. [33] Blocking FSP Minimize the makespan Iterated greedy algorithm Yagmahan and Yenisey [34] FSP Minimize the makespan and total flow time Ant colony system algorithm Zhang and Xing [29] FSP Minimize the makespan Differential evolution Zhou et al. [30] HFSP Minimize the total weighted completion time A hybrid differential evolution with an estimation of distribution algorithm is study HFSP Minimize the makespan and cost of delay A hybrid differential evolution and local search  Scientific Programming x njm � 1, if the job n is processed with machine m in j working process, 0, otherwise, y nk � 1, if the job n will be processed to production with type k, 0, otherwise, (1) e MIP formulation is x njm , y nk , z nc , Objective (2) involves two phases, which are C max and the penalty part. e definition of C max is provided in (3). Equation (3) means that C max is the maximum makespan in all jobs. e penalty part means that it will have an external cost if the production is delayed to each customer. Constraint (4) denotes that the demands of each customer will be satisfied. Constraint (5) means that the number of jobs assigned to one machine in a working process will not exceed the limitation of the machine. Constraint (6) limits that one job will not be scheduled to more than one machine in each working process. Constraint (7) denotes that only one type can be assigned to a job, and constraint (8) means one job only can be assigned to one customer. Constraint (9) is the definition of the completion time, which can be calculated by the begin time of the job and the processing time. Constraint (10) means that the completion time of any job is less than C max . Constraint (11) defines that if two jobs are processed in one machine, the completion time of the latter one is larger than the former one. Four decision variables are defined in constraint (12).

The Proposed Hybrid Approach DE-LS
In this section, a hybrid metaheuristic algorithm DE-LS has been proposed, which involves a specific encoding strategy, correction strategy, initialization, etc., for the studied problem. In addition, the mutation strategy of the DE has been modified in order to improve the solution. e framework of the proposed DE-LS has also been provided in the section, which describes all processes and operation logic of the proposed algorithm.

Encoding Strategy and Correction Strategy.
e difference of the productions lies in the processes in the manufacturing. For example, there are four kinds of the productions and three processes in the manufacturing totally. Production A needs to be processed by the first two processes, and production B is processed by the last two processes.
e example of the relationship between productions and processes is provided in Figure 2. erefore, we define the procedures according to the different processes, and each job corresponds to a procedure. e processes in each procedure is defined before. Firstly, each job must be assigned to one kind of procedure, which will indicate one type of production. us, the number of each procedure is limited by the requirements of the customers. We provide an example of solution presentation in Figure 3. In the figure, there are seven jobs, and each job has a specific encoding number, which indicates the assigned procedure of the job. For example, the encoding number of job 3 and job 5 is 3, which means that these two jobs will be processed with procedure 3. e last line of the figure is the customers' requirements, which is known as the limitation of the encoding. e solutions in this paper are integer and have a specific range. However, noninteger and out-of-range solutions will be generated during the processes of solutions computation. A correction strategy of solution is provided in the paper. Firstly, the range of the solution should be determined, which is related to the number of procedures. For example, there are four procedures totally, and each element in the solutions is integer in [1,4]. en, correct each element in the solution using round-off method. Moreover, the out-ofrange elements are corrected according to the bound of the solution. Finally, count the number of procedures in the solutions and compare them with the customers' requirements. A simple example of the correction strategy is provided in Figure 4. e first line in the picture is the computed solution which is noninteger and did not meet the range of solution. After rounding the solution, a new solution is generated which is integer and met the range of solution. However, another limitation of the solution is the requirements of customers. e number of procedure 4 in the solution is more than the requirements of customers and the number of procedures 2 and 3 is less than the requirements of customers. Hence, randomly select two jobs with procedure 4 (i.e., job 4 and job 7) and change the procedure of them into 2 and 3, respectively. For a better understanding, we provide the pseudocode of the correction strategy in Algorithm 1.

Initialization.
e initial solution should be generated before the solution changing, which is the available solution of the proposed problem. e initialization of the classical DE generated the initial solution using the minimum and maximum values of the solution. In this paper, the first step of the initialization is also to generate random variables for each solution, which are integer and between the range of the solution. en, the limitation of the customers' requirements should be considered. e correction strategy can be used to make the solution available. e details of the initialization can be found in Algorithm 2.

Details of the Proposed DE-LS.
e details of the proposed DE-LS can be seen in this section, which involves the mutation strategy, crossover, selection, and local search. e first three phases are the part of the classical DE, and the local search in the paper is to improve the searched solution.

Selective Mutation Strategy.
Generally, many mutation operators are widely used in the DE, such as rand/1, rand/2, best/1, etc. e solution can be changed after using the mutation operations, and we call the new solution mutant solution, V i � v i1 , v i2 , . . . , v ij , . . . , v i D . Some popular mutation operators can be found as follows: where the integer variables r 1 , r 2 , r 3 , r 4 , r 5 , i are from [1,NP]. e variable i is determined, and other five variables are randomly generated. Moreover, they satisfy the inequation r 1 ≠ r 2 ≠ r 3 ≠ r 4 ≠ r 5 ≠ i. X best is the current best solution. e variable F is randomly generated between 0 and 1.

Scientific Programming
In this paper, selective mutation strategy is proposed to update the solutions. For instance, if the best solution is updated in the last iteration, the current-to-best/1 operation will be applied in the mutation process. Otherwise, a random mechanism will be utilized to select the mutation operator. e details of the proposed selective mutation strategy are described as follows: (1) If rand(0, 1) < CR or j �� j rand then (2) If X best is updated then (3) Apply current-to-best/1: If s < S 1 then Else (8) Apply best/1: End if (10) End if (11) End if where the parameters CR and S 1 are random numbers between 0 and 1. e integer parameter j rand is randomly generated between 1 and D. 3  Customers' requirements: production A: 2, production B: 2, production C: 2, and production D: 1 vector. Each element in trial vector is selected from the corresponding element which may from solution before mutation or mutated solution. In this paper, binomial crossover operation is applied, and the details can be represented as follows: index � True (25) break (26) End if (27) End for (28) Else k � k + 1 (29) End while (30) End for (31) End if (32) i � i + 1 (33) End while ALGORITHM 1: e pseudocode of the correction strategy.
Initialization: the population size NP, the dimension of the solution D, the lower-bound of the solution X L � x L 1 , x L 2 , . . . , x L D , the upper-bound of the solution X U � x U 1 , x U 2 , . . . , x U D , the empty initial solution X � X 1 , X 2 , . . . , X i , . . . , X NP , and x ij � round(x ij ) (5) End for (6) End for (7) Using the processes of correcting the limitation of customers' requirements which can be found in the Algorithm 1. where CR is a random number between 0 and 1, and the integer number j rand is selected from 1 to D. e index i ∈ 1, 2, . . . , NP { } means the individual of the solution. e equation indicates that when the random number is less than CR and j �� j rand , the element of mutated solution is selected for the trial solution. Otherwise, the element of solution before being mutated is selected for trial solution.

Selection.
e selection is the last process of DE in an iteration. e selection mechanism in the paper is the same as that in most studies, which remains the better solution after the solution changing. e selection regulation can be found as follows: where obj(U i ) and obj(X i ) are the objective value of the solution U i and X i , respectively. e equation means that the solution with lower objective value can survive to the next generation.

Local Search.
Local search (LS) has been widely applied to solve complex optimization problems, which can get the optimal solution in an available time. Moreover, local search is to find neighborhoods of the selected solution by using specific neighborhood structure operators, such as, 2opt, exchange, swap, etc. In order to improve the efficiency of the proposed approach, local search has been used in this paper. e proposed local search is utilized after the selection process, which search the neighborhoods by the improved solutions. In addition, two neighborhood structure operations have been applied in the paper, i.e., 2-opt and swap. ese two operations are very popular and simple. In Figure 5, the changing mechanisms of 2-opt and swap operations have been illustrated. For example, two jobs need to selected before the operations. In the example, job 2 and job 5 have been selected for the 2-opt operation, and job 1 and job 7 have been selected for the swap operation. en, the 2-opt operation is to convert all jobs between the selected two jobs as seen in the figure. e swap operation is to exchange the value of the selected two jobs. We provide the pseudocode of the proposed local search, which can be found in Algorithm 3.

e Proposed DE-LS.
In this section, the proposed DE-LS approach is described in Algorithm 4, which involves the basic processes of DE, i.e., mutation, crossover, and selection, and a proposed local search is also embedded.

Computational Experiments
In this section, the performance of the proposed algorithm will be evaluated by 18 randomly generated instances. e computational experiments are set with the number of jobs n ∈ 20, 30, 40, 50, 60, 70, 80, 90, 100 { }. We classify the number of jobs into two scales, i.e., the small scale and large scale. e small scale has number of jobs more than 50; otherwise, when the number of jobs is more than 50, it is the large scale. Moreover, there are two scales for the number of machines for each number of jobs, and we define each instance according to the number of jobs and machine. For example, the first instance is defined as J30-M3, which means the problem setting for this instance is 30 jobs and 3 machines. e processing time of production with each type in each working process is generated from a discrete uniform distribution. All experiments are implemented in Python and run on a PC with 8 GB of RAM memory, 64-bit operating system, and Intel ® Core ™ i7-6600U CPU @ 2.60 GHz 2.81 GHz.
e study proposes a DE-LS to tackle the concerned hybrid flow-shop scheduling problem, which combined the metaheuristic differential evolution algorithm with local search in order to improve the quality of the found solution and solve the study problem efficiently. Moreover, A selective mutation strategy of differential evolution has been provided, such as mutation strategy. erefore, four algorithms have been compared with the proposed DE-LS, i.e., without LS, best/1, current-to-best/1, and rand/1, which are the variants of the proposed DE-LS. In other words, the without LS algorithm is the proposed DE-LS while without using local search. e other three algorithms, best/1, current-to-best/1, and rand/1, are different in their mutation processes and do not have the selected mechanism; for example, the best/1 algorithm only uses the best/1 mutation operation in the mutation process. In addition, each instance has been executed 10 times for avoiding the random results. e mutant factor F is randomly generated from (F′, 1), and the parameter F ′ is set as 0.4. e crossover control parameter CR is randomly generated from (CR ′ , 1), and the parameter CR ′ is set as 0.6. e population size NP is set as 10, and the dimensions of solution D is equal to the number of jobs. e local search selection is limited by the parameter S ′ , which is set as 0.5. e maximum number of iterations for each instance is 200, which is the terminal condition for each algorithm. e objective (denoted by Obj) of each algorithm in each instance is the average objective value of 10 runtimes. e minimum value (denoted by Min) is the minimum objective that the algorithm could find in 10 runtimes. e relative percentage deviation (denoted by RPD) is used as the performance measure in the paper which is widely used to evaluate the performance of algorithms [31,33]. e RPD can be calculated by the given formulation as follows: where Z(Objective i ) is the average objective value of the algorithm i. Z(Minimum) denotes the minimum objective has been found in all the compared algorithms for the same instance. RPD i is the RPD value of the specific algorithm i. Moreover, the standard deviation (denoted by SD) is also applied to measure the robustness of the compared algorithm, which is calculated as follows: (1) While t < T then (2) opt � rand(0, 1) Get the new solution X i ′ by using 2-opt operation, and the selected jobs are j 1 and j 2 (7) Else (8) Get the new solution X i ′ by using swap operation, and the selected jobs are j 1 and j 2 (9) End if (10) Calculate the objective value obj(X i ′ ) . , x U D , the empty initial solution X � X 1 , X 2 , . . . , X i , . . . , X NP , and X i � x i1 , x i2 , . . . , x ij , . . . , x iD , maximum number of iterations Iter max , F′, CR′, and S′ are the pre-defined parameters.
Scientific Programming 9 where Z(Objective r ) means the objective value of algorithm i in rth runtimes, and then Z(Minimum) denotes the minimum objective has been found in all the compared algorithms for the same instance. e standard deviation value of algorithm i is denoted by SD i , which measures the deviation between the found optimal solution and the calculated solutions of algorithm i in all runtimes. e smaller the value of SD, the more robust the algorithm.
In Table 3, the average objective value and minimum objective value of each compared algorithm for each instance have been provided. We can find that the proposed DE-LS has found the optimal solution in all instances. Moreover, the average objectives of DE-LS in all instances are also better than the other four compared algorithms. In addition, we can find that when the number of jobs is 20 whatever the number of machines is, 3 or 4, the minimum values of all compared algorithms are the same. Moreover, the average objectives value of the proposed DE-LS is equal to the minimum value found, which means that the proposed algorithm can find the minimum value in all runtimes. Although other compared algorithms can find the minimum value, the robustness of other compared algorithms is worser than the proposed DE-LS. When the number of jobs is 30 and 40, and the number of machines is 4, the minimum objective value of Rand/1 algorithm is the same as that of the proposed algorithm. When the number of jobs is 30 and the number of machines is 4, the currentto-best/1 algorithm has found the minimum objective value as same as that of the proposed algorithm. With the increasing number of jobs, the deviation between the proposed DE-LS and the other four compared algorithms becomes obvious.
e RPD values and SD values of each algorithm for all instances have been provided in Table 4. It is easy to find that RPD and SD values of the proposed DE-LS are smaller than those of the other compared algorithms in all instances. In addition, the RPD values of the proposed DE-LS in all instances are no more than 1, and the SD values of the  (28) Else (29) Apply the proposed local search which can be found in Algorithm 3 to update the solution X i (30) End if (31) End for (32) Search the new best solution and update the solution X best and obj(X best ) (33) iter � iter + 1 (34) End while ALGORITHM 4: e proposed DE-LS. 10 Scientific Programming proposed DE-LS are smaller than 5, which indicate that the proposed DE-LS has stronger robustness than the other compared algorithms. It is worth mentioning that when the number of jobs is 20, the RPD and SD values of the proposed DE-LS are equal to zero, which means that DE-LS has found the minimum value in all runtimes in these two instances. When the number of jobs is no more than 60, the RPD values of DE-LS are no more than 0.5 and the SD values of DE-LS are no more than 1.6, which indicates the proposed DE-LS has shown more superiority in the small-scale problem than in the large-scale problem. Moreover, two-dimensional comparison plots have been provided in Figures 6 and 7 in order to make a deeper analysis of the experimental results. We select the average objective value and RPD as the variables of the combination-comparison plots. Furthermore, according to the number of machines, we classify all instances into two groups, i.e., the number of machines equal to 3 and the number of machines equal to 4. ere is a two-dimensional comparison plot for each group, respectively. e objective value in the diagram for each algorithm is the further average objective, which is calculated by the average objective of the algorithm for each instance in the specific group. Similarly, the RPD value in the diagram for each algorithm is the average RPD, which is calculated by the RPD value of the algorithm for each instance in the specific group. ese two combination plots show that  In addition, consider the stochastic features of the metaheuristic algorithms; the stability of the proposed algorithm has been further evaluated using the box-plot analysis. e box-plot can describe the discrete distribution of the data in a relatively stable way, which means the plot will not be influenced by the abnormal value. In this part, the box-plot of the RPD value for five algorithms for 16 instances in 10 independent runs is shown in Figure 8. Appling the concept of quartile, there are six elements having been drawn for each box plot, i.e., the up limb, the up quartile, the average value, the median, the low quartile, and the low limb. In the figure, we can find that all elements in the RPD boxplot graphics of the proposed DE-LS are smaller than other compared algorithms, which shows that there is significant difference in RPD values between the proposed DE-LS and other algorithms. Moreover, the gap between the up limb and low limb of the proposed DE-LS is the smallest. On the contrary, the gap between the up limb and low limb of the rand/1 algorithm is the largest.

Conclusions
is paper addresses a hybrid flow-shop scheduling problem with considering different requirements of customers, which reflects the procedures of the productions. A mixed-integer programming model has been formulated for the concerned problem. e objective of the studied problem is to minimize the makespan and cost of delay. Different requirements of customers indicate the diverse productions need to be processed in different procedures and have the specific number of the procedures, which increases the complexity of the studied problem. Moreover, a hybrid metaheuristic algorithm which combined differential evolution and local search named DE-LS has been proposed in the paper to solve the studied problem. e differential evolution and local search are efficient metaheuristic algorithms, which can search for the better solution in a short time. us, the paper combines these two algorithms in order to find the optimal solution of the concerned problem in an available time. Moreover, the proposed DE-LS has been compared with four variant algorithms, and the experimental results show that the proposed DE-LS outperforms the compared algorithms. In future study, more practical features in flow-shop scheduling problem will be investigated, such as the delivery requirements of customers, the deteriorating effect of the machines, etc.
Data Availability e raw/processed data required to reproduce these findings cannot be shared at this time as the data forms part of an ongoing study.

Conflicts of Interest
e authors declare that there are no conflicts of interest regarding the publication of this paper.

12
Scientific Programming