# Unified Genetic Algorithm Approach for Solving Flexible Job-Shop Scheduling Problem
## 2 Research Background  
### Genetic Algorithm for Solving the Flexible Job-Shop Problem  
FJSP is a well-known extension of the JSP, a classical production scheduling problem. During the past decades, GAs have been widely used to solve production scheduling problems, such as the JSP and FJSP [15]. Typically, a GA chromosome for the JSP contains only OS-type genes, since a solution for the JSP can be generated using a sequence of given operations [10; 11; 13; 17]. In contrast, a GA chromosome for the FJSP typically consists of two types of genes: MS genes and OS genes, which are manipulated by applying different kinds of genetic operators. Genetic operators adopted by previous research papers on the GA for the FJSP are summarized in Table 1.  
[PERSON] et al. [18] used extended order crossover (OX) and uniform crossover for the OS and MS parts, respectively. Furthermore, the authors proposed two kinds of mutation operators: random alternative for the MS part and immigration for the OS part. In [PERSON] et al. [19], the MS part is manipulated by assignment crossover and two mutation operators: random alternative mutation and greedy mutation. Assignment crossover is designed to exchange machine assignment information for certain operations. In other words, only some of the MS genes in a chromosome participate in a single assignment crossover. Random alternative mutation is used to assign an operation to a machine randomly chosen from the set of all alternative machines that process the operation. On the contrary, greedy mutation assigns an operation assigned to the machine with the maximum workload to the machine with the minimum workload. On the contrary, precedence preserving order-based crossover (POX) and precedence preserving shift (PPS) mutation were applied to the OS part. [PERSON] et al. [19] used a GA with the aforementioned operators to minimize the makespan of FJSP. Moreover, [PERSON] and [PERSON] [20] utilized a similar GA for the purpose of minimization of the makespan of the FJSP with sequence-dependent setup times. [PERSON] [21] applied the GA to solve the FJSP with fuzzy processing times. A two-point crossover operator was adopted for the MS part, whereas two kinds of sequencing crossover operators, i.e., generalized position crossover (GPX) and generalization of the precedence preservative crossover (GPPX), were used to recombine the genes in the OS part. Swap mutation was used to randomly modify the OS part; however, the GA in [PERSON] [21] did not contain the mutation procedure for the MS part. [PERSON] et al. [22] applied multipoint preservative crossover (MPX) to the MS part and improved precedence operation crossover (IPOX) to the OS part. They used random alternative mutation and greedy mutation to randomly modify the MS part in the chromosome. The authors proposed a greedy mutation operator designed to assign an operation to a machine that provides the shortest processing time (SPT). For the OS part, conventional insertion mutation was adopted. [PERSON] et al. [1] used classical two-point crossover and uniform crossover operators to recombine the genes in the MS part of parent solutions, while the genes in the OS part are recombined using preserving order-based crossover (POX). As in [PERSON] et al. [22], the genes in the MS part are mutated by greedy mutation based on an SPT machine. In contrast, the mutation for the OS part is performed by applying swap mutation. [PERSON] and [PERSON] [23] used two-point crossover for the MS part and POX for the OS part. The mutation operations for the MS part and OS part were random alternative and swap mutation, respectively. [PERSON] and [PERSON] [24] adopted three types of crossover operators for solving the FJSP. Uniform crossover was used to perform the crossover operation for the MS part, while two variations of POX, modified-1 POX (MPX1), and modified-2 POX (MPX2), were applied to the OS part. The mutation operators for the MS part and the OS part were random replace and swap mutation, respectively. [PERSON] et al.