Effective Improved NSGA-II Algorithm for Multi-Objective Integrated Process Planning and Scheduling

: Integrated process planning and scheduling (IPPS) is important for modern manufacturing companies to achieve manufacturing efficiency and improve resource utilization. Meanwhile, multiple objectives need to be considered in the realistic decision-making process for manufacturing systems. Based on the above realistic manufacturing system requirements, it becomes increasingly important to develop effective methods to deal with multi-objective IPPS problems. Therefore, an improved NSGA-II (INSGA-II) algorithm is proposed in this research, which uses the fast non-dominated ranking method for multiple optimization objectives as an assignment scheme for fitness. A multi-layer integrated coding method is adopted to address the characteristics of the integrated optimization model, which involves many optimization parameters and interactions. Elite and mutation strategies are employed during the evolutionary process to enhance population diversity and the quality of solutions. An external archive is also used to store and update the Pareto solution. The experimental results on the Kim test set demonstrate the effectiveness of the proposed INSGA-II algorithm.


Introduction
In the context of Industry 4.0, smart manufacturing is an effective way to realize sustainable production systems [1]. The application of new technologies, such as digital twins and networked manufacturing, promotes the progress of smart manufacturing and enhances data interconnection for process planning and scheduling. In order to improve the overall performance of manufacturing systems, it is important to study the integrated process planning and scheduling (IPPS) problem. Scheduling is the link between process planning and the implementation of production solutions [2,3]. Process planning is the link between part design and production, and scheduling is the link between process planning and the implementation of production solutions. Process planning establishes the processing route and resource allocation for tasks, as well as providing processing plans for scheduling. Scheduling assigns each processing task to the appropriate machine [3,4].
In the manufacturing process of most products, process planning and scheduling operate independently and are fragmented from each other, which may lead to conflicting optimization objectives and unbalanced system collaboration, and seriously affect the operational efficiency of the manufacturing process [5]. IPPS aims to bridge the gap between process planning and scheduling, unify the optimization objects, and realize system collaboration to make optimization more efficient, stable, and reasonable [6]. In a practical manufacturing system, there are many evaluation criteria, such as maximal

Literature Review
In order to effectively address the game-theoretic model of the multi-objective IPPS problem, Li et al. [14] proposed a hybrid algorithm (hybrid algorithm of genetic algorithm (GA) and tabu search (TS)) based on minimizing the makespan, minimizing the MMW, and minimizing the TMW as optimization objectives for handling multiple objectives. A priority-based optimization approach was proposed by Ausaf et al. [15] to address the multi-objective IPPS issue. This algorithm makes effective optimization possible when many objectives are taken into account by allocating various objective functions varying degrees of priority. The algorithm also employs a variety of scheduling criteria to aid in selecting the optimal answer. Mahdi et al. [16] introduced optimization algorithms for IPPS and discussed how to increase productivity and decrease production costs by using IPPS. These algorithms included GAs, ant colony algorithms (ACO), and particle swarm optimization (PSO) algorithms, which can optimize production planning by maximizing resource utilization, reducing waiting times, using real-time monitoring and adjustment, and optimizing decision making to improve production. Right now, swarm intelligence optimization algorithms and evolutionary algorithms are the primary methodologies for solving multi-objective IPPS problems.

Swarm Intelligence Optimization Algorithm
Cao et al. [17] proposed an adaptive multi-strategy artificial bee colony (AMSABC) approach to address the issues with IPPS. In AMSABC, the employed bee and the observing bee are introduced to two search algorithms with distinct characteristics, referred to as "local search" and "global search", respectively. Zhao et al. [18] came up with a two-generation Pareto-based ACO algorithm to solve multi-objective JSPs with optional process paths and parallel machines that do not work together. In order to reduce the overall workload, workload deviation, and total cost, the parent ACO resolves the subproblem of flexible process route selection and builds a "sub-tour" by choosing nodes from several alternative process plans and machines. The child ACO resolves the subproblem of process job sequencing. To find the Pareto solution set, Kwang et al. [19] presented a method combining the firefly algorithm and a GA. First, the approach makes use of the firefly algorithm's population self-segmentation and multi-modal search capabilities to simultaneously search for many optimal sites while preserving the diversity of populations in the solution space. In particular, multi-objective optimization issues benefit from this characteristic. Second, by effectively constructing chromosomal encoding techniques, crossovers, and mutation procedures, GAs are completely exploited in addressing discrete combinatorial optimization problems. For challenges involving scheduling and multi-objective integrated process planning, Wang et al. [20] introduced a PSO-based approach. The technique presents a distinctive solution representation based on binary encoding and uses specific operations (e.g., mutation and crossover) to assure the validity and viability of the solution. It also uses exploratory search and quick convergence to efficiently explore enormous solution spaces.

Evolutionary Algorithms
Mohammadi et al. [21] developed a multi-objective problem-solving strategy based on two meta-heuristics: the simulated annealing (SA) and TS algorithms. To benefit from the exploration search and fast convergence, a multi-objective hybrid SA technique (MOHSA) was suggested. The NSGA-II algorithm was used to handle the computational complexity of the problem when Mohapatra et al. [7] considered IPPS as a multi-objective optimization problem in a reconfigurable manufacturing environment, taking into account manufacturing cycle time, processing cost, and machine utilization criteria. To solve the multi-objective IPPS problem, Jin et al. [22] suggested a multi-objective memetic algorithm (MOMA). The MOMA algorithm uses a problem-specific multi-objective local search approach that combines a variable neighborhood search (VNS) procedure with an effective goal-specific intensive search strategy to optimize all potential scheduling. In order to solve the multi-objective IPPS problem, Shokouhi et al. [23] proposed a GA with the objective functions of the makespan, minimization of the critical machine workload, and minimizing the TMW. In order to save energy and lessen emissions, Zhang et al. [24] suggested a hierarchical multi-strategy GA (NSHMSGA) based on non-dominated ranking for the IPPS. A population degradation operator based on crowding distance ranking is added to the algorithm, which is built on the NSGA-II framework, to boost the diversity of repeated populations while also strengthening the genetic operator and coding approach. For the purpose of solving the multi-objective IPPS problem, Luo et al. [25] employed an effective multi-objective GA based on the immunity principle and external archives. The method uses an external archive to save non-dominated solutions for selection in following rounds and relies on the immunity principle to maintain population variety and prevent premature maturation. As an additional adaptation and assignment mechanism, the algorithm employs a quick, non-dominated sorting technique. Insights and research on using GAs to solve IPPS difficulties were offered by Chaudhry et al. [26]. To increase the effectiveness and precision of GA solutions, improved operator schemes and genetic representations were created. A control elite non-dominated sorting GA was presented by Mohapatra et al. [27], taking into account three separate goals: reducing production time, reducing processing costs, and reducing machine idle time. In order to generate a set of optimal solutions that are non-dominated under various goal functions, it blends evolutionary algorithms and non-dominated ranking techniques. To keep the present optimal solution and ensure the newly generated solution is not worse than the current optimal solution, the control elite strategy is utilized. The green multi-objective IPPS problem was addressed by Wen et al. [28] using the NSGA-II algorithm. The problem is broken down into two phases: the process planning phase, which is optimized using the fundamental NSGA-II algorithm to produce a close to optimal process plan, and the scheduling phase, which employs an improved NSGA-II algorithm to discover a non-dominated scheduling plan. For the purpose of enhancing the multi-objective IPPS problem, Li et al. [29] suggested an effective GA. The excellent characteristics of the parent individuals can be better kept by introducing a new crossover operation approach, and a new local search method can be introduced to better explore the best solutions in the solution space.
The primary objectives of the solution are makespan, TWM and MMW, etc. It is clear that the usual solution approach for the multi-objective IPPS problem is an improved version of the algorithm. However, some issues still need to be addressed more effectively. One of the key factors is that these algorithms are either not created in accordance with the problem's features or are not sufficiently consistent with those qualities. In this study, a multi-objective IPPS model is made and an INSGA-II algorithm is proposed. The following three objectives were considered. The first objective is makespan. This objective represents the shortest time required for all tasks to be completed. Minimizing makespan can shorten production cycles and improve production efficiency. The second objective is TWM and represents the sum of the workloads of all machines. Minimizing TWM can reduce machine usage and lower production costs. The third objective is MMW and repre sents the largest workload among all machines. Minimizing MMW can make machine loads more balanced, avoiding overloading some machines and affecting production efficiency. For the properties of the integrated optimization model, where there are numerous optimization parameters and they interact with one another, a multi-layer integration coding method is utilized. In order to guarantee the quality of population diversity and Pareto solutions, elite and variation strategies are built during the algorithm's progress. The Pareto solutions are also stored and maintained in an external archive.

Problem Modeling
In order to better solve the multi-objective IPPS problem, it needs to be modeled. First, the problem is described in detail. Then, assumptions are made about the actual production and processing situation, and a mathematical model of the problem is developed based on the problem description and assumptions in order to solve it using an optimization algorithm.

Problem Description
IPPS is the organic integration and coordination of all production planning components for effective and adaptable manufacturing production processes. This is how it is explained: A machine set of k machines (M 1 , M 2 ,. . . M k ) is used to process a job set (J_1, J_2,. . . J_i) having i jobs. Each job includes numerous processing features, each of which can be treated using a variety of processing techniques. If the limitations are met, the job can also have various processing orders. Different machines can execute each step of the job. Table 1 displays a case of an IPPS issue involving three jobs and five machines. Feature F 1 has two machining methods that correspond to processes O 1 -O 2 and O 3 -O 4 , and process O 4 can be machined by two machines. J_1 consists of three features to be machined, and feature F 2 must be processed before feature F 3 . Solving the production solution for this job set means determining the machining method for each job, the machining equipment, and the start and finish times of the process on the machine to ensure that the final scheduling solution meets multiple production requirements.

Mathematical Model
Based on the real manufacturing and processing environment, the following assumptions are established prior to developing the specific mathematical model: (1) Each machine is limited to processing one procedure at a time; (2) It is known how long each job will take to process; (3) Processes for the same job have sequential priorities, whereas they do not have sequential priorities for processes for distinct jobs; (4) A process cannot be stopped once it has begun; (5) Only one machine may be used to machine a given job at once; (6) There are no machine failures, and all machines are functional at time 0.
The definitions of several of the symbols used in this paper are provided in Abbreviations. The mathematical model of multi-objective IPPS addressed in this paper is stated as follows: Three objective functions are represented by Equations (1)-(3). Equations (4) and (5) place restrictions on the order in which processes must be carried out in accordance with the process route for each job. Equation (6) states that each machine can only process one process at a time. Equation (7) consists of exclusivity constraints that ensure each process can only be carried out on one machine at a given time. Equations (8) and (9) state that the variables of each parameter must be positive.

Improved NSGA-II Algorithm for Solving Multi-Objective IPPS Method
As the multi-objective problem of IPPS requires simultaneous optimization of job machining methods, process routes, job sequences, and process machine assignments, it involves many optimization parameters. In addition, the optimization parameters interact with each other, e.g., when one of the machining methods is changed, the type of the candidate machine tool will also be changed, and the process machine assignments are changed as well. Therefore, a multilayer integrated coding method is adopted, based on which the NSGA-II algorithm is improved to realize the model solution. In the evolution, the elite strategy and the variation strategy are constructed. The quality of population diversity and solution is improved, and the localization of optimization results is improved.

INSGA-II for Scheduling
In this paper, a multilayer integrated coding method that simultaneously optimizes multiple parameters of the IPPS problem in a single iteration is used and an improved NSGA-II algorithm is designed to solve it. Figure 1 depicts the algorithm's flowchart. The main steps of INSGA-II for scheduling are described as follows: Step 1: Initialization parameters, such as the population size, the number of iteration allowed, the likelihood of variation and crossover, and the size of external archives; Step 2: Using the non-dominated sorting method [25] and the crowding calculation The main steps of INSGA-II for scheduling are described as follows: Step 1: Initialization parameters, such as the population size, the number of iterations allowed, the likelihood of variation and crossover, and the size of external archives; Step 2: Using the non-dominated sorting method [25] and the crowding calculation to identify individuals who are not dominated; Step 3: Modifying the external archive established under the external archiving plan; Step 4: Crossover and mutation. The elite strategy saves the better individuals to the elite library "temppop", and, after performing crossover and mutation, if the children are better than the parents, it replaces it, otherwise, it remains unchanged and the remaining individuals are directly replaced with children; Step 5: Combining the children and parent populations, performing non-dominated sorting and calculating crowding, and selecting the optimal solution as the new population; Step 6: Check to see if the algorithm's termination condition is met. Execute Step 7 if it is satisfied; otherwise, continue with Step 2; Step 7: Output the collection of Pareto-optimal solutions.

Encoding and Decoding Method
The integrated optimization model requires optimization of a large number of parameters, including the machining features of all jobs, the process route, the sequence of job machining, and the machine assignment of each process. The general coding method can only employ cyclic alternating optimization, first optimizing the machining method and process route, then the job machining sequence and the machine assignment of each process, and, finally, returning to optimizing the machining method and process route once more.
In this paper, a multi-layer integrated coding approach is used [30] and the first layer is the processing feature coding, which indicates the processing method corresponding to all the processing features of the job. The total length of the feature code is equal to the sum of all the features of the job, and the gene is a processing feature of a job. The first layer in Figure 2 consists of 10 gene bits to form the processing method code layer, which indicates the processing order of each of the three jobs; for example, the first three gene bits indicate that the processing order of the features of J_1 is F 1 -F 2 -F 3 .
process, and, finally, returning to optimizing the machining method and once more.
In this paper, a multi-layer integrated coding approach is used [30] an is the processing feature coding, which indicates the processing method co all the processing features of the job. The total length of the feature code sum of all the features of the job, and the gene is a processing feature of layer in Figure 2 consists of 10 gene bits to form the processing method cod indicates the processing order of each of the three jobs; for example, the fi bits indicate that the processing order of the features of J_1 is F1-F2-F3.
The second layer is the process selection coding, which represents the tion scheme for all jobs. The total length of the process route coding is equa coding. The gene positions represent the processing sequence correspondi chining feature of each job in turn. Combined with the machining informa for example, the digit 1 at the second gene position indicates that the mac F2 of J_1 selects the first processing method, that is, operation O5.
The third layer is the machine selection coding, indicating that all job selected according to the second layer of process selection after the length sum of the total number of processes of all jobs, while each part is the to processes of its individual jobs. Combined with the processing information fifth genetic digit 2 indicates that the O5 processing machine is M4. The n code indicates that the process was not selected when the job was processe The fourth layer is the processing sequence coding, which shows the all job operations should be completed, and its total length is the same a selection coding. The occurrence of a certain job number in the gene positio processing sequence of that job, and the meaning of the number 0 in the cod as that of the machine selection coding.
The process path and scheduling plan for all jobs are simultaneously o this technology, which integrates four sets of parameters. By using this nique, the search space can be shrunk, search effectiveness and optimiz increased, and computational complexity decreased. The machining information from Table 1 shows that there are three job chines. J_1 and J_2 have three machining features, while J_3 has 4 mach Since the coding schemes are related to one another, obtaining the machini for the jobs requires decoding the coding. The following describes how to coding technique in Figure 2.
The gene bits are obtained from left to right in the order of processing for each task, starting with the first layer of decoding features:  The second layer is the process selection coding, which represents the process selection scheme for all jobs. The total length of the process route coding is equal to the feature coding. The gene positions represent the processing sequence corresponding to each machining feature of each job in turn. Combined with the machining information in Table 1, for example, the digit 1 at the second gene position indicates that the machining feature F 2 of J_1 selects the first processing method, that is, operation O 5 .
The third layer is the machine selection coding, indicating that all jobs are machine selected according to the second layer of process selection after the length is equal to the sum of the total number of processes of all jobs, while each part is the total number of processes of its individual jobs. Combined with the processing information in Table 1, the fifth genetic digit 2 indicates that the O 5 processing machine is M 4 . The number 0 in the code indicates that the process was not selected when the job was processed.
The fourth layer is the processing sequence coding, which shows the order in which all job operations should be completed, and its total length is the same as the machine selection coding. The occurrence of a certain job number in the gene position indicates the processing sequence of that job, and the meaning of the number 0 in the coding is the same as that of the machine selection coding.
The process path and scheduling plan for all jobs are simultaneously optimized using this technology, which integrates four sets of parameters. By using this encoding technique, the search space can be shrunk, search effectiveness and optimization precision increased, and computational complexity decreased.
The machining information from Table 1 shows that there are three jobs and five machines. J_1 and J_2 have three machining features, while J_3 has 4 machining features.
Since the coding schemes are related to one another, obtaining the machining information for the jobs requires decoding the coding. The following describes how to decode the encoding technique in Figure 2.
The gene bits are obtained from left to right in the order of processing characteristics for each task, starting with the first layer of decoding features: Following is the genetic position from left to right to determine the machining process chosen for the machining features of each job in the second layer of process selection decoding: To obtain the processing machine for each task in the sequence of processing processes, the third layer of machine selection decoding uses genetic position from left to right, as follows: The fourth layer is in charge of sequential decoding. Using the decoding information from the first three layers, the active scheduling decoding method is used to create the final decoded Gantt chart shown in Figure 3. The fourth layer is in charge of sequential decoding. Using the decodin from the first three layers, the active scheduling decoding method is use final decoded Gantt chart shown in Figure 3.

Initial Population Acquisition and Crossover and Mutation Operations
According to the encoding approach, the initial population is made a each layer of processing characteristics, process selection, machine selec cessing order is made after the model constraints and encoding rules are m

Initial Population Acquisition and Crossover and Mutation Operations
According to the encoding approach, the initial population is made at random, and each layer of processing characteristics, process selection, machine selection, and processing order is made after the model constraints and encoding rules are met.
The precedence operation crossover (POX) crossover operator is made to adjust to the situation for the four-layer coding because crossover and variation are needed for each coding layer independently. This larger-scale genetic information exchange, as seen in Figure 4, is the first crossover operation with a strong global search capability. This can increase the population's diversity and broaden the algorithm's search scope. This is achieved by first randomly dividing the job numbers {1, 2, 3} into two non-empty job subsets {3} and {1, 2}. Then, the feature layer, process layer, and machine layer of the jobs belonging to the job set {3} in the parent generations P1 and P2 are copied to the corresponding positions of the children generations C1 and C2, respectively. Finally, the feature layer, process layer, and machine layer of the artifacts belonging to the job sets {1, 2} are copied to the corresponding positions of the children C2 and C1, respectively. The second crossover operation complements the first by performing a more thorough search of the solution space, and the two approaches work best together. When the population meets the requirements of the process selection coding layer with at least one artifact that shares the same coding information as its counterparts in the other population, this operation is initiated, and only two chromosomes, which correspond to the processing feature layer and the machine selection layer, need to be exchanged. Four variation operations are created to disturb each of the four layers in order to boost population variety and enhance the search dimension of the algorithm. Mutations and more detailed crossover manipulations are described in the literature [30]. In the algorithm iteration, these six evolutionary operations are carried out concurrently to search the solution space from various breadths and depths, enhancing the algorithm's search capability.

Mutation Strategy and Elite Strategy Solutions
Large mutation probabilities in evolution can introduce more diversity in the search space and increase the global exploration ability of the algorithm. When the algorithm is stuck in a local optimal solution, large mutation probabilities can quickly jump out of the local optimal solution and re-explore other possible solutions. However, large mutation probabilities may also lead to slower convergence of the algorithm because they increase the randomness of the algorithm. The role of the elite strategy is to retain the better individuals in the evolutionary process and avoid the loss of good information, thus speeding up the convergence of the algorithm. However, the implementation of the elite strategy may lead to a reduction in the diversity of the population, which affects the exploration ability of the algorithm. To balance the relationship between elite individuals and diversity, it is often necessary to use it in combination with other optimization strategies.
The elite strategy and variation strategy are combined in this study using the follow-

Mutation Strategy and Elite Strategy Solutions
Large mutation probabilities in evolution can introduce more diversity in the search space and increase the global exploration ability of the algorithm. When the algorithm is stuck in a local optimal solution, large mutation probabilities can quickly jump out of the local optimal solution and re-explore other possible solutions. However, large mutation probabilities may also lead to slower convergence of the algorithm because they increase the randomness of the algorithm. The role of the elite strategy is to retain the better individuals in the evolutionary process and avoid the loss of good information, thus speeding up the convergence of the algorithm. However, the implementation of the elite strategy may lead to a reduction in the diversity of the population, which affects the exploration ability of the algorithm. To balance the relationship between elite individuals and diversity, it is often necessary to use it in combination with other optimization strategies.
The elite strategy and variation strategy are combined in this study using the following methodology: since the solutions consist of multiple targets, dominance rank is used as the fitness allocation scheme. Before each evolution, the population's good solutions that satisfy the evolutionary conditions are stored separately in the elite pool. By determining the size of the dominance rank, it is decided which is better, the parent or the children; if the evolved children outperform their parent, the parent is removed, and the offspring is then stored in the new population. If not, the parent is retained in the new population and the offspring is discarded.

External Archive Maintenance Scheme
The result of a multi-objective optimization problem is the set of Pareto optimal solutions rather than a single solution. The solutions obtained throughout the optimization process, which are not dominated by one another, are stored and maintained in the external archive. The external archive is updated in accordance with the following steps whenever a new solution is discovered during an IPPS iteration: (1)

Time Complexity of INSGA-II Algorithm
The time complexity of an algorithm is the number of basic operations required to complete the entire algorithm, given the overall scale, number of iterations, and problem size of the algorithm. In the algorithm, the number of times a statement is executed is called frequency, denoted as T(n). T(n) is a function of the overall scale, number of iterations, and problem size. For ease of calculation, we assume that the population size of the INSGA-II algorithm is N, the number of iterations of the population is G, and the variables F n , P n , O n , and n ml represent the number of features, process numbers, process numbers, and machine string lengths of the job; J n represents the number of jobs and M n represents the number of machines. The following is a frequency analysis of the main steps.
Constants in computation indicate the number of times an algorithm performs a certain operation. Their effect is usually not taken into account when calculating time complexity. Let the function f = G × N × J n 2 be a function. When the problem size is infinitely large, T 6 /f is a constant. Therefore, the time complexity of INSGA-II algorithm is O(G × N × J n 2 ).

Experimental Studies and Discussion
The present research tests the algorithm's effectiveness using the IPPS problem test set recommended by Kim et al. Information on the specific cases is available in the literature [31]. For comparison, the problem was solved using many rounds of the NSGA-II and INSGA-II algorithms. The NSGA-II algorithm, in contrast to the INSGA-II algorithm, only uses multi-layer integrated coding methods. All of the algorithm programs in this paper were created in Visual C++ and ran on a machine with an Intel i7 12700F 2.10 GHz CPU and 16 GB of RAM. The configuration of parameters affects the performance of INSGA-II. The possible range of parameter values was determined based on literature and experience. Table 2 lists all possible parameter combinations. From the table, it can be seen that population sizes are 200, 400, 600, and 800, respectively, while crossover probability (P C ) and machine layer mutation probability (P M ) are 0.6, 0.8, and 0.9, respectively. Feature layer mutation probability (P F ), operation layer mutation probability (P O ), and scheduling layer mutation probability (P S ) are 0.1, 0.2, and 0.3, respectively. After verification, when the parameter combination is as shown in Table 3, the performance of INSGA-II is better.  Table 3. The parameters in the proposed algorithm.

Parametric Description Value
Maximum generations of iterations 400 Population size 400 Reproduction probability 0.2 Table 4 shows the total number of non-dominated solutions each algorithm produced for each set of issues, and Table 5 compares the experimental outcomes of the INSGA-II algorithm to those of the other methods. Figure 5 compares the outcomes of the INSGA-II and NSGA-II algorithms. Figure 6 displays the Gantt chart for the instance 20.  (b) instance20 In order to compare the optimization of the two algorithms in 24 instances, all the Pareto solution sets acquired by the two methods are combined, and Table 4 shows the number of non-dominated solutions in the combined solution set. To clearly show the value of the suggested method, the results of the two methods in instances 6 and 20 are displayed in Figure 5. It can be seen that the outcomes produced by INSGA-II are better than those produced by NSGA-II. Table 5 lists the comparison of the results obtained by the INSGA-II algorithm and MOMA algorithm in literature [22]. The same method as in the literature was used to find the most satisfactory scheduling scheme from the Pareto front obtained by the algorithm for comparison. Where for the same instance if one is dominated by another, it is identified by an asterisk (*) on the non-dominated solution. It is not straightforward to discover that six solutions generated by the INSGA-II algorithm outperform solutions discovered in the literature in all metrics, and three of the examples (instances 3, 11, and 14) find the lower bound on the completion time. In five of the remaining 18 cases (instances 5, 7, 9, 13, and 15), the machine maximum workload metric is obviously superior in the non-dominated solution obtained by the INSGA-II method, and the instances 5, 10, and 12 reach the lower limit of the completion time. The suggested INSGA-II algorithm is superior in the remaining 18 instances, when two solutions are not dominated by one another. In order to compare the optimization of the two algorithms in 24 instances, all the Pareto solution sets acquired by the two methods are combined, and Table 4 shows the number of non-dominated solutions in the combined solution set. To clearly show the value of the suggested method, the results of the two methods in instances 6 and 20 are displayed in Figure 5. It can be seen that the outcomes produced by INSGA-II are better than those produced by NSGA-II. Table 5 lists the comparison of the results obtained by the INSGA-II algorithm and MOMA algorithm in literature [22]. The same method as in the literature was used to find the most satisfactory scheduling scheme from the Pareto front obtained by the algorithm for comparison. Where for the same instance if one is dominated by another, it is identified by an asterisk (*) on the non-dominated solution. It is not straightforward to discover that six solutions generated by the INSGA-II algorithm outperform solutions discovered in the literature in all metrics, and three of the examples (instances 3, 11, and 14) find the lower bound on the completion time. In five of the remaining 18 cases (instances 5, 7, 9, 13, and 15), the machine maximum workload metric is obviously superior in the non-dominated solution obtained by the INSGA-II method, and the instances 5, 10, and 12 reach the lower limit of the completion time. The suggested INSGA-II algorithm is superior in the remaining 18 instances, when two solutions are not dominated by one another. Finally, an illustration is provided to show how it is critical to take several needs into account in a practical production setting. Figure 7 shows the Gantt chart for instance 5, In order to compare the optimization of the two algorithms in 24 instances, all the Pareto solution sets acquired by the two methods are combined, and Table 4 shows the number of non-dominated solutions in the combined solution set. To clearly show the value of the suggested method, the results of the two methods in instances 6 and 20 are displayed in Figure 5. It can be seen that the outcomes produced by INSGA-II are better than those produced by NSGA-II. Table 5 lists the comparison of the results obtained by the INSGA-II algorithm and MOMA algorithm in literature [22]. The same method as in the literature was used to find the most satisfactory scheduling scheme from the Pareto front obtained by the algorithm for comparison. Where for the same instance if one is dominated by another, it is identified by an asterisk (*) on the non-dominated solution. It is not straightforward to discover that six solutions generated by the INSGA-II algorithm outperform solutions discovered in the literature in all metrics, and three of the examples (instances 3, 11, and 14) find the lower bound on the completion time. In five of the remaining 18 cases (instances 5, 7, 9, 13, and 15), the machine maximum workload metric is obviously superior in the non-dominated solution obtained by the INSGA-II method, and the instances 5, 10, and 12 reach the lower limit of the completion time. The suggested INSGA-II algorithm is superior in the remaining 18 instances, when two solutions are not dominated by one another.
Finally, an illustration is provided to show how it is critical to take several needs into account in a practical production setting. Figure 7 shows the Gantt chart for instance 5, which solely takes into account the makespan. The Gantt chart produced by the INSGA-II algorithm is preferable, even though the two schedules have the same total completion time (318), when the two metrics, maximum machine workload and total machine workload, are compared. Figure 8 displays the workloads on each machine in both Gantt charts. It is obvious that each machine has a more uniform workload in the scheduling scheme produced by the INSGA-II algorithm when several goals are taken into account. The maximum and minimum machine workloads for the scheduling scheme considering three targets are 129 and 61, respectively, in comparison to the scheduling scheme considering only one target. This shows that the latter workload is more evenly distributed across machines, which is significant for extending the machine's life. The suggested technique also lowers the maximum machine workload by moving unnecessary operations to more practical computers. The scheduling schemes with single objective values of 1687 and multiple objective values of 1645 for the total machine workload index, respectively, show that the proposed algorithm also optimizes the total machine workload. which solely takes into account the makespan. The Gantt chart produced by the INSGA-II algorithm is preferable, even though the two schedules have the same total completion time (318), when the two metrics, maximum machine workload and total machine workload, are compared. Figure 8 displays the workloads on each machine in both Gantt charts. It is obvious that each machine has a more uniform workload in the scheduling scheme produced by the INSGA-II algorithm when several goals are taken into account. The maximum and minimum machine workloads for the scheduling scheme considering three targets are 129 and 61, respectively, in comparison to the scheduling scheme considering only one target. This shows that the latter workload is more evenly distributed across machines, which is significant for extending the machine's life. The suggested technique also lowers the maximum machine workload by moving unnecessary operations to more practical computers. The scheduling schemes with single objective values of 1687 and multiple objective values of 1645 for the total machine workload index, respectively, show that the proposed algorithm also optimizes the total machine workload. The machine load in the scheduling plan obtained by a single-objective algorithm The machine load in the scheduling plan obtained by the improved NSGA-II algorithm

Conclusions
The makespan, the MMW, and the TMW are all minimized in this paper's multiobjective IPPS problem model. To increase the depth of search for the features of the integrated optimization model, which has numerous optimization parameters and how they interact with one another, multi-layer integrated coding is utilized. An INSGA-II method using the elite strategy and variation strategy is proposed to overcome the issues of limited population diversity and low quality of the traditional NSGA-II solution set. The Pareto solutions are also maintained and stored in an external archive. Finally, the algorithm's performance was evaluated using the Kim test set, and the findings demonstrated the algorithm's efficiency in resolving problems relating to multi-objective IPPS.
In future research, considering the actual situation in production, several directions can be considered to further improve the proposed method. Firstly, uncertain processing times should be included, and a multi-objective algorithm for the IPPS problem with uncertain processing time can be considered. Secondly, more objectives, such as machining cost and energy consumption, can be taken into account. Thirdly, more effective diversity maintenance schemes can be explored. Finally, exploring more effective algorithms to solve multi-objective IPPS problem is also a promising direction.

Abbreviations
Explanation of symbols in mathematical model. Symbol Description n The set of jobs. m The set of machines. k The number of machines. h i The set of operations in job i. i,h The number of jobs. j,p The number of operations. O i,j The j-th operation of the i-th job. t i,j,k The processing time of operation O ij on machine k. S i,j The starting time of O ij . f i,j The ending time of O ij . y i,j,h,p If process O i,j is processed before O h,p is 1,otherwise is 0, ∀i, h ∈ n, j, p ∈ h i . x i,j,k If O i,j processed on machine k is 1,otherwise is 0,∀i ∈ n, j ∈ h i , k ∈ m. M A very large positive integer.

C i
The completion time of job i.

C max
The maximal completion time of machines.

TWM
The total workload of machines.

MMW
The maximum machine workload.