Abstract
Keywords
Introduction
The flexible job shop scheduling problem (FJSP) is an extension of the classic job shop scheduling problem (JSP), which is more in line with the characteristics of discrete manufacture environment. With the development of customization and product quality, the production process will be more flexible. The control of various time factors also needs to be more accurate. In actual production environments, the time factors include not only the processing time, but also the transportation time. These time factors affect the completion time and make the problem more complicated. If this part of the time is not taken into account, it may occur that the processing time is short but the transportation time is long during implementation, resulting in reduced scheduling efficiency. Therefore, a flexible job shop scheduling problem with transportation times (TT-FJSP) is studied in this paper.
The FJSP was first addressed by Brucker and Schile, they solved the problem by polynomial graphics algorithm. 1 Nevertheless, many experiments show that the exact algorithm is not very effective even in solving moderate-size FJSP instances. 2 Currently, the general method for solving the FJSP is to first establish a optimization model and then solve it by the intelligent optimization algorithm. The mixed integer model is one of the common used optimization model. Fattahi and colleagues3,4 established a mixed integer linear programming model with location attributes for the FJSP with two or more jobs and the FJSP with some constraints between the operations. Nowadays, manufacturing has become refined and relies on intelligent solutions. Scheduling problem exists widely in actual production and manufacturing, and many solving methods are applicable to actual production to provide efficient and feasible solutions for production. With the development of problems, relevant optimization models and theories emerge in endlessly, 5 and the value of practical application research is growing gradually.6–8 The transportation time is an important factor of the actual schedule, which affects the final scheduling results. Naderi et al. studied the displacement flow workshop that takes into account the transportation time of semi-finished products, and they established different mixed integer programming models for multi-transporter and single-transporter shops. 9 For the manufacturing system with resource flexibility, sequence-dependent setup, and transportation times, Rossi proposed a swarm intelligence approach to schedule. 10 Karimi et al. 11 proposed an imperialist competitive algorithm to solve the TT-FJSP. Zhang and colleagues12,13 successively used improved genetic algorithms (GA) solved the TT-FJSP and multi-objective FJSP with multiple time constraints.
According to the search scope, the intelligent optimization algorithms are mainly divided into two categories: global search and local search. The former has a large search range, such as GA,14–16 particle swarm optimization algorithm, 17 ant colony optimization algorithm, 18 and artificial bee colony algorithm. 19 The local search algorithm is the neighborhood search algorithm for solutions, such as the simulated annealing algorithm (SA) 20 and tabu search. 21 Nonetheless, some experimental studies showed that the hybrid algorithms have better results.22,23 The memetic algorithm (MA) is proposed by Moscato 24 to simulate the evolution of human culture. It is essentially a combination of the global population search and local search. Generally, the MA is similar to the GA, but the mutation part is replaced by a local search. Some scholars use the MA to solve the FJSP. Phu-ang and Thammano 25 presented a honeybee marriage-based MA to avoid falling into local optimal solutions. Gong et al. 26 used an MA for solving the multi-objective FJSP with worker flexibility.
In this paper, an improved memetic algorithm (IMA) is presented for solving the TT-FJSP. In the IMA, an effective SA with the elite library and mutation operation is adopted to form the local search method with parallel structure. To avoid repetitive searches and improve efficiency, the elite library is adopted to maintain outstanding solutions. Feasible solutions, according to the mutation probability, are divided into general solutions and local optimal solutions. General solutions are executed by the SA, and local optimal solutions are executed by the mutation operation. The proposed algorithm is evaluated and compared with the improved genetic algorithm (IGA), 12 and the comparison shows that the IMA is effective for the TT-FJSP.
The rest of this paper is organized as follows. The problem description and model are given in “Problem formulation” section. “The improved memetic algorithm” section formulates the IMA, and the experimental study results are given in “Experimental results and comparisons” section. The conclusions and some ideas for the future research are summarized in the final section.
Problem formulation
The FJSP can be described as follows: There are some jobs and machines. Every job has its own operation set, and the operations are processed under their process constraints. Each operation can be processed by multiple machines, and the processing time on different machines is different. The FJSP is generally divided into the fully flexible FJSP and partially flexible FJSP. 27 In the fully flexible FJSP, each operation can be processed on all machines. In the partially flexible FJSP, each operation can be processed on specific optional machines. A partially flexible FJSP instance is shown in Table 1.
An instance of the partially flexible FJSP.
FJSP: flexible job shop scheduling problem.
The TT-FJSP has one more transportation times constraint: When one operation is completed, the finish time is not equal to the start time of the next operation, but it needs to determine whether the job needs to be transferred to another machine. If necessary, the transportation time of the job between the two machines should be considered, otherwise the transportation time is 0. The objective is the minimization of the makespan when the processing times and transportation times are considered simultaneously. In the TT-FJSP, several constraints and assumptions are made:
Jobs and machines are independent and available at time 0.
Job preemption is not allowed, and each machine can handle only 1 job at a time.
The operations belonging to the same job cannot be processed simultaneously.
Processing time of each operation corresponds to its processing machine, and all processing times are given.
Once the operation is completed, the job is transported to the machine of the next operation immediately, and the corresponding transportation time is spent.
Transportation time is related only to the selected processing machine and direction, and all transportation times are given.
Transportation resources are sufficient, which do not affect the transportation process.
Setup times are included in the processing times.
The mathematical model and related variables are defined as follows: job set
s.t.
The objective is to minimize the makespan
Transportation times of the instance.

Gantt charts for two types of scheduling: (a) a scheduling scheme with transportation times; (b) a scheduling scheme without transportation times.
The improved memetic algorithm
The JSP has been proved to be an NP-hard problem, 28 while the TT-FJSP is an extension of the JSP and is also an NP-hard problem. This means that it may be difficult to get an optimal solution in finite time through exact solution methods. The MA is a meta-heuristic algorithm with both exploration and exploitation, which is suitable for this problem. The main processes of the IMA are as follows:
Step 1: Generate initial population according to encoding rules.
Step 2: Generate a new population for the next generation by the selection and crossover.
Step 3: Apply the local search and save the high-quality individuals.
Step 4: Check the termination criteria. If the criteria are not satisfied, then stop the algorithm and output the optimal individual in the population. Otherwise, go to Step 2.
The framework of the IMA is given in Algorithm 1. The encode and decode, initial population, selection, crossover, and local search are introduced in the following subsections.
The framework of the IMA.
Encode and decode
Encode is the first important step in the algorithm. Encode is the process of expressing the solutions of a problem in the form of chromosomes, or as individuals. Then the genetic operations, such as the selection and crossover, can be implemented.
The TT-FJSP contains two subproblems: machine selection and operation sequence. We use the two-section integer encode method to address these issues. The chromosome structure is divided into two sections: machine selection and operation sequencing. The machine selection determines the machines of all operations, and the operation sequencing determines the processing order. The lengths of these two sections are equal and equal to the total number of operations
Machine selection
In the machine selection, each gene position corresponds to each operation in sequence, and an integer is used to represent the sequence number of the optional processing machine of the operation, instead of the processing machine number. For example, according to Table 1, if the gene string is 4-1-2-3-3, the first gene position 4 indicates that the operation
Operation sequencing
The operation sequencing is similar to the chromosomes in the JSP. The encode of this section is based on the processing order of the job. Each gene is the job number and the number of each operation in a job is indicated by the number of occurrences in the operation sequencing section. If the gene string is 2-1-1-2-2, then the corresponding operation sequencing is
Decode
There are three types of scheduling including active scheduling, semi-active scheduling and non-delay scheduling. 27 It has been proved that the optimal scheduling exists in the active scheduling set. That is, when chromosomes are decoded as actively scheduled, the result is closest to the optimal solution. Therefore, the plug-in decode method is used to decode chromosomes into the active scheduling. Each chromosome contains two sections, so it needs to be decoded separately.
Machine selection
The machine selection of the chromosome is decoded from left to right, and converted into machine matrix
Operation sequencing
This section gets the scheduling results according to the sequencing of the chromosome from left to right, and the processing and transportation times. To decode the chromosomes into the active schedule, we use an improved insertion method to sort the chromosomes and read the operation sequencing in turn until the algorithm reaches the end of the chromosomes. The specific process is as follows: If
Population initialization method
The initial population can be obtained through a variety of methods. In general, the initial population method affects the convergence speed and the quality of the population. We use the random method to highlight the performance of other operations of the algorithm. The main steps are as follows:
Step 1: Randomly generate a chromosome to join the initial population: In the machine selection part, randomly select one from the optional machine at each gene position, and in the operation sequencing part, all operations are randomly arranged.
Step 2: Repeat Step 1 until the initial population is filled.
Selection operator
Selection is for good individuals to survive with a greater probability and avoid the disruption of good genes by operations such as the crossover and mutation. The tournament selection method was adopted as the selection method for the proposed algorithm. This method randomly selects some individuals from the population for comparison of fitness each time, then puts the highest fitness individual into the crossover pool and waits for the crossover, until the crossover pool is full.
Crossover operator
An excellent crossover can preserve the good genes in the paternal generation by exchanging information among the paternal individuals to produce good new individuals. It can also reduce a blind search and achieve a simple and efficient search. We propose a crossover method for chromosomes in the FJSP, which includes two different crossover modes.
Machine selection
A multi-point crossover is adopted to ensure that the chromosomes of solutions generated by crossover are still feasible. That is to say, the random selection of multiple intersection sites occurs, and then the exchange of genes on the same location of two parents occurs.
Operation sequencing
The multi-job crossover is adopted to avoid generating infeasible solutions. This method selects all the genes of several jobs in the parent chromosomes and crosses them in sequence. The pseudo-code of the multi-job crossover is given in Algorithm 2.
The pseudo-code of the multi-job crossover.
In fact, the crossover of the two parts is done simultaneously. When the crossover operator is executed, two individuals are first randomly selected from the population as parents. Then the machine selection and the operation sequencing of the offspring are generated by the multi-point crossover and the multi-job crossover, respectively. This process is repeated until the number of the offspring generated reaches the population size.
Local search
The IMA applies an independent local search (LS) to try to improve the quality of the solutions. The LS finds the local optimal solutions by searching the neighborhood solutions. The LS can be repeated to improve the overall quality of the whole population. In this research, an effective SA was adopted to form a new LS method by parallel structure, which adds the elite library and mutation operation of the GA. According to mutation probability

Flowchart of the local search.
Elite library
The elite library is introduced as a distribution strategy in the LS to avoid searching for the neighborhood solutions of the local optimal individual, which may lead to the output individual being the original individual itself or worse than the original individual. The elite library is a limited set and empty at first. Then the individual output by the SA is regarded as a local optimal individual and stored in the elite library as chromosome. When it is found that the individual already exists in the elite library, the mutation operation will be implemented instead of using the SA. The storage space of elite library (the number of local optimal individuals) is adjustable; if the space is too large, it will increase the time to check whether the individual exists in the library, on the contrary, if the space is too small, it will not play the role of avoiding repeated search.
Mutation operator
Common mutation operations include the interchange mutation, reverse sequence mutation, insertion mutation, and neighborhood-based search mutation. We use the random mutation for the machine selection of the chromosomes.
Step 1: Select several locations for the machine part of the mutated chromosome.
Step 2: Choose 1 machine to randomly replace the original machine.
Perturbation operator
The perturbation operator searches the neighborhood of the current individual. Since the maximum number of the perturbation is set to
Due to the additional transportation time constraint in this paper, some equations and definitions need to be modified. For each operation
For a critical operation
Termination condition
The termination condition of the IMA is that
Experimental results and comparisons
All algorithms were performed in MATLAB R2017a on a PC with an Inter(R) Core(TM) i7-4785 T CPU at 2.2 GHz with 8 GB of RAM. The experiment tested the performance of the IMA for the TT-FJSP. The main parameters of the IMA, these parameter values are determined by extensive preliminary experiments, are shown in Table 3.
Main parameters of the IMA.
IMA: improved memetic algorithm.
Experiment 1
To evaluate the effectiveness of IMA, we selected an instance (8 × 5) from Zhang et al., 12 who proposed the IGA to solve the TT-FJSP. We compared the results of the IGA and IMA after we had run the 2 algorithms 10 times. The Gantt charts of the optimal individuals from the IGA are shown in Figures 3 and 4. The Gantt charts of the optimal individuals from the IMA are shown in Figures 5 and 6. The convergence curve of the solutions of the TT-FJSP from the IGA is shown in Figure 7. The convergence curve of the solutions of the TT-FJSP from the IMA is shown in Figure 8.

Optimal scheduling scheme with transportation times from the IGA.

Optimal scheduling scheme without transportation times from the IGA.

Optimal scheduling scheme with transportation times from the IMA.

Optimal scheduling scheme without transportation times from the IMA.

Convergence curve of the IGA solutions.

Convergence curve of the IMA solutions.
As shown in Figures 4 and 6, the makespan of the optimal individual from the IMA is 5 units faster than the makespan of the optimal individual from the IGA. In the Gantt chart of the optimal individual from the IMA in Figure 6, the operations are evenly distributed, and there are no large idle time periods on each machine. In contrast, in the Gantt chart of the optimal individual from the IGA in Figure 4, there are 2 idle time periods on

Comparison of the stability of the IMA and IGA.
Experiment 2
Because of the lack of experimental data on the TT-FJSP, we chose the IGA as the object of comparison. The experimental data sets were Brandimarte’s
21
data sets, and the randomly generated transportation time are shown in Table 4. To obtain meaningful results, we ran our algorithm 10 times on the same instance. The results are shown in Table 5, the
Transportation time.
Comparison of the IMA and IGA results.
IMA: improved memetic algorithm; IGA: improved genetic algorithm; MAPE: mean absolute percentage error.
Table 5 shows that the proposed IMA has a better performance than the IGA when solving the 10 problems of Mk01-Mk10 with the transportation time, including all the optimal and average values. The optimal individual from the IMA is 26.67% better than that from the IGA. The stability of the IMA and IGA is compared using the coefficient of variation shown in Figure 9. The average value of
Let us take the Mk01 problem as an example. The Gantt chart of the optimal individual from the IMA is shown in Figure 10. The Gantt chart of the optimal individual from the IMA is shown in Figure 11. As shown in Figures 10 and 11, the makespan of the optimal individual from the IMA is 6.9 units faster than the makespan of the optimal individual from the IGA. However, in both the Gantt charts, there are relatively large idle time periods on

Optimal scheduling scheme with transportation times from the IMA.

Optimal scheduling scheme with transportation times from the IGA.
Conclusion and future research
In this paper, we studied the TT-FJSP and proposed an IMA. In this algorithm, feasible solutions are treated differently by the local search, general solutions are executed by the SA to improve the quality of the solutions, and the local optimal solutions are executed by the mutation operation to increase the diversity of the solutions. And the high-quality solutions are not lost as the population evolves because of the elite library. The IMA is evaluated and compared with an improved GA. The experimental results show that the optimal individual of each problem obtained from the IMA is better than that obtained from the IGA, and the convergence curve of the solutions is more reasonable with less uncertainty. Therefore, the IMA is effective for solving the TT-FJSP.
Our future work will address two main areas. First, we will further investigate the proposed algorithm. The SA has good search accuracy, but its search speed is not very fast, and it can be further improved. Therefore, the combination of multiple global search algorithms and local search algorithms is also worth trying. In addition, we will continue to explore the FJSP. The transportation constraints are not only the time constraints, we will also consider the limitations of routes and transportation resources.
