Integrated optimization of process planning and scheduling for reducing carbon emissions

In order to reduce environment impacts of manufacturing processes and fill in research gaps that most previous separated optimization of process planning and scheduling ignored influences of process planning on scheduling, a multi-objective integrated optimization model of process planning and scheduling for reducing carbon emissions in manufacturing processes is proposed. The model aims at minimizing makespan and carbon emissions in manufacturing processes by integrated optimizing machining methods for all machining features of workpieces, machine allocations of processes, process routes and machining sequence of workpieces. Because there are many parameters in the proposed model needed to be optimized and they are interactional, a four segment encoding method is designed and a Non-dominated Sorting Genetic Algorithm II is adopted to solve the proposed model. A case study including three workpieces with twenty-three machining features to be processed by turning, milling, drilling, boring and grinding is used to verify the proposed integrated model and algorithm. Results show that the proposed integrated optimization method can further reduce carbon emissions and makespan in manufacturing processes compared with conventional separated optimization of process planning and scheduling. The proposed integrated optimization method is validated.


(Communicated by Changzhi Wu)
Abstract. In order to reduce environment impacts of manufacturing processes and fill in research gaps that most previous separated optimization of process planning and scheduling ignored influences of process planning on scheduling, a multi-objective integrated optimization model of process planning and scheduling for reducing carbon emissions in manufacturing processes is proposed. The model aims at minimizing makespan and carbon emissions in manufacturing processes by integrated optimizing machining methods for all machining features of workpieces, machine allocations of processes, process routes and machining sequence of workpieces. Because there are many parameters in the proposed model needed to be optimized and they are interactional, a four segment encoding method is designed and a Non-dominated Sorting Genetic Algorithm II is adopted to solve the proposed model. A case study including three workpieces with twenty-three machining features to be processed by turning, milling, drilling, boring and grinding is used to verify the proposed integrated model and algorithm. Results show that the proposed integrated optimization method can further reduce carbon emissions and makespan in manufacturing processes compared with conventional separated optimization of process planning and scheduling. The proposed integrated optimization method is validated.

Introduction.
With rapid development of manufacturing industry, environment issues have been becoming more and more important. Carbon emission in manufacturing processes is one of sources affecting environment. Carbon emissions in a manufacturing system mainly include that caused by energy consumptions of machines and handling equipment, consumptions of coolant, wears of cutting tools and material swarfs etc. [28]. Process planning would determine cutting parameters and processing times of processes, and potential moving distances of workpieces between processes and scheduling would determine idling times of machines, and actual moving distances of workpieces between machines. Therefore, optimization of process planning and scheduling are essential to reduce carbon emissions in manufacturing processes.
Process planning is to analyze and plan machining methods, process routes, cutting parameters, and cutting tools required for production etc. [5]. Previous researchers optimized process planning for reducing cost [35,25], production time (contains machining time of processes and transmission time between machines) [22], times of machine and tool changing and balancing the machine workload [34]. As machining methods, process routes, cutting parameters and cutting tools in process planning have significant impacts on carbon emissions in manufacturing process, some researchers have begun to optimize process planning for reducing energy consumptions of machines and carbon emissions in manufacturing processes. Yin [41] optimized machining methods and process routes to reduce carbon emissions caused by consumptions of fossil fuel (e.g., natural gas consumed by a heat treatment process), total electricity consumptions of machines in machining state and manufacturing of the total removed material in a process plan. Tan et al. [36] proposed an assessment methodology of process routes based on IPO model and checklist analysis though quantitatively analyzing and assessing the raw material consumed, the supplementary manufacturing materials (e.g., tools, cutting fluid, etc.) consumed, the power consumed, the emissions of air and water pollution and other indices in manufacturing processes. Zhang and Ge [44] tried to reduce production cost and energy consumptions of machines in machining state by selecting machining methods, cutting tools and cutting parameters for machining features. Yi et al. [40] presented a multi-objective model to reduce total process time and total carbon emissions caused by electric consumptions of machines in machining state and material consumptions of cutting tools and cutting fluid by optimizing machining methods, process routes and cutting tool selection. Researches have shown that optimization of process planning could reduce carbon emissions in manufacturing processes. However machine allocation and machining sequences of all workpieces on machines have not been determined in process planning. Handling distances of workpiece between two machines, setup time and idling time of machines could only be determined after scheduling. Carbon emissions caused by energy consumption of handling equipment and machines in idling and setup states cannot be optimized in process planning. Therefore the effects of process planning on carbon reduction in manufacturing processes are limited.
Scheduling is to determine machining sequence of workpieces and allocate machines for processes [9]. Conventional optimization objectives of scheduling are to minimize makespan [10,38], tardiness [24], total work-in-process inventory [30] and maximize equipment utilization [15] etc. Recently some researchers have begun to optimize energy efficiency and carbon emission in manufacturing processes through scheduling. Liu et al. [26] presented a scheduling model to reduce makespan and energy consumptions of machines in machining and idling states. Yi et al. [39] established an emission-aware multi-machine scheduling model to minimize makespan and carbon emissions caused by energy consumptions of machines in machining and idling states. Liu and Huang [23] proposed a scheduling model to optimize total delay, peak power and carbon footprints caused by energy consumptions of machines in machining and idling states. However carbon emissions caused by consumptions of lubricant and coolant, energy consumptions of handling equipment and machines in setup state etc. were ignored in literatures mentioned above. Zhang et al. [44] proposed a multi-objective optimization model of flexible job-shop scheduling to minimize makespan, maximal makespan interval of different jobs, maximal workload of machines and carbon emissions caused by energy consumptions of machines in machining states, energy consumptions of handling equipment, material consumption of cutting tools and auxiliary material consumption of coolant and lubricant oil. Generally, scheduling is optimized after process planning. Machining methods and process routes of workpieces have been determined in process planning. Processing time of each process and carbon emissions caused by energy consumption of corresponding machines in machining state are also determined. As a result of this, optimizing effects of scheduling alone on reducing makespan and carbon emissions in manufacturing processes are limited.
Chryssolouris et al. [7,8] proposed the optimization of integrated process planning and scheduling (IPPS) to improve the productivity of manufacturing processes. In current literatures on IPPS, the integrated optimization of cutting parameters and scheduling has been researched to explore effects of cutting parameter on scheduling. Fang et al. [12] proposed a mutil-objective scheduling model to minimize makespan, peak total power consumptions and carbon footprints of machines in machining and idling states under several sets of cutting speed. But only limited sets of cutting speed could not ensure to yield the best solution for scheduling. Lin et al. [20] presented an integrated optimization model of cutting parameter and blocking flowshop scheduling for minimizing makespan and carbon footprints caused by energy consumption of machines in machining and idling states and material consumption of cutting tools. To reduce the search space, the preliminary optimization strategy of cutting parameters was used to obtain the Pareto-optimal sets of the cutting parameters before scheduling. Actually, cutting parameters and scheduling were not solved in an integrated way. Zhang et al. [45] achieved real integrated optimization of cutting parameters and scheduling and proposed a multi-objective integrated optimization model to minimize completion time and carbon emissions caused by energy consumption of machines in machining and idling states and material consumption of cutting tools and cutting fluid in manufacturing processes. Apart from this, most researches on IPPS are to explore integrated optimization of scheduling and process routes and machining methods in process planning. Chaudhry and Usman [6] studied integrated optimization of process routes and scheduling to minimize makespan, but a set of process routes predetermined in advance for each workpiece and the decision is to select one process route for each workpiece before scheduling. Qiao and Lv [31] established a mathematical model for IPPS to minimize makespan and mean flow time, but they firstly generated a near-optimal process plan for each workpieces which was regarded as the input of scheduling. They didn't achieve real integrated optimization of process planning and scheduling. Bettwyet al. [4] proposed an integrated model to minimize makespan by optimizing process routes, machining sequence of workpieces and machine allocation. However transportation time between machines and setup time between processes were not considered. Recently, some researchers have begun to optimize energy consumptions in manufacturing processes through process planning and scheduling. Li et al. [19] studied sustainable process planning and scheduling to optimize multiple objectives including makespan, machine utilization and energy consumption of machines in powered on, idling, preheated, machining and powered off states. But in their studies, a group of alternative process plan are generated in advance for each workpiece and then the workpieces and their processes are assigned and scheduled to specific machines based on a fixed process plan. Zhang et al. [46] presented an integrated model to reduce energy consumptions of machines in machining and idling states, but alternative process plans of each workpiece are predetermined before scheduling. Since cutting parameter optimization is a continuous optimization problem in CNC machining but optimization of machining method, process route and scheduling is a discrete optimization problem, it is very difficult to optimize both simultaneously, Wang et al. [37] optimized cutting parameters first and then conducted integrated optimization of process routes and scheduling to reduce makespan and energy consumptions of machines in machining, idling and setup states by using optimized cutting parameters as constants.
As a whole, three shortages of existing researches on IPPS have been summarized as followings. (1) In researches on IPPS, the integrated optimization of cutting parameters and scheduling has been conducted, but literatures on the integrated effects of cutting parameters and process routes in process planning on scheduling aren't found. (2) Most researches of IPPS focus on the integrated optimization of machining methods, process routes and scheduling. But some of them adopt a sequential optimizing method that a process plan for each workpiece is determined and then workpieces with fixed process plans are scheduled, which doesn't satisfy the concept of real integrated optimization. The results of sequential optimization of process planning and scheduling are not effective as that of integrated optimization, which has been proved by Li et al. [21]. (3) In addition to traditional optimization objectives of IPPS, such as minimizing makespan and maximizing machine utilization, energy consumptions or carbon emissions caused by machines in machining and idling states and material consumption of cutting tools and cutting fluid in manufacturing processes are also minimized. But carbon emissions caused by energy consumptions of machines in setup states and handling equipment in workshops are ignored in most studies. Generally longer makespan means longer processing time or idling time of machines. However carbon emissions from energy consumption of machines in machining or idling state are determined not only by processing or idling time, but also by power of machines. Carbon emissions in manufacturing processes includes carbon emissions not only caused by energy consumption of machines in machining and idling state, but also energy consumptions of machines in setup states and of handling equipment etc. Therefore, it is necessary to do further researches on IPPS to reduce all related carbon emissions in manufacturing processes.
In order to fill the research gaps that most previous separated optimization of process planning and scheduling ignored influences of process planning on scheduling and some types of carbon emissions in manufacturing process are not considered in IPPS, the comprehensive effects of process planning and scheduling on reducing carbon emissions in manufacturing processes are explored and a multi-objective integrated optimization model of process planning and scheduling is proposed to minimize carbon emissions caused by energy consumption of machines in machining, idling and setup states and of electric fork lifts and material consumption of coolant and lubricant in manufacturing processes and makespan.
In order to fill the research gaps that most previous separated optimization of process planning and scheduling ignored influences of process planning on scheduling and some types of carbon emissions in manufacturing process are not considered in IPPS, the comprehensive effects of process planning and scheduling on reducing carbon emissions in manufacturing processes are explored and a multi-objective integrated optimization model of process planning and scheduling is proposed to minimize carbon emissions caused by energy consumption of machines in machining, idling and setup states and of electric fork lifts and material consumption of coolant and lubricant in manufacturing processes and makespan. In order to fill the research gaps that most previous separated optimization of process planning and scheduling ignored influences of process planning on scheduling and some types of carbon emissions in manufacturing process are not considered in IPPS, the comprehensive effects of process planning and scheduling on reducing carbon emissions in manufacturing processes are explored and a multi-objective integrated optimization model of process planning and scheduling is proposed to minimize carbon emissions caused by energy consumption of machines in machining, idling and setup states and of electric fork lifts and material consumption of coolant and lubricant in manufacturing processes and makespan.
In order to solve the proposed multi-objective integrated optimization model, two kinds of methods, i.e., weight sum method and Pareto-based method are widely used. Weight sum method [29] is to solve multi-objective optimization problems by allocating weights to objectives, so that a multi-objective optimization problem is become a single-objective problem. Li et al. [19] used the weight sum method to solve multi-objectives including energy consumption, makespan and the balanced machine utilization in a sustainable process planning and scheduling problem. Yu et al. [42] used the weight sum method to optimize machining cost and makespan in integrated process planning and scheduling. The weight sum method is easy for decision-makers to understand, convenient for developers to implement and available to change the weight of different objectives for satisfying the requirement of decision-makers [32], but the weights need to be predetermined and the optimal result is influenced by weight allocation. By means of the weight sum method, only one result can be obtained. But in practical production, decision-makers prefer a set of trade-off results. So the weight sum method can't meet this demand [27]. The Pareto-based approach is used to optimize multi-objective optimization problems using a Pareto optimality, which is to generate a set of Pareto optimum solutions. A feasible solution is Pareto optimum if there exists no feasible solution which would increase values of some optimization objectives without causing a simultaneous decrease in at least one optimization objective [14]. Pareto optimum solutions achieve a trade-off among usually conflicting optimization objectives. As a Pareto-based approach, a fast and elitist Non-dominated Sorting Genetic Algorithm II (NSGA-II) has been widely used in multi-objective discrete optimization problems. A fast non-dominated sorting approach, a crowded-comparison approach and elitism are introduced to the NSGA-II. The fast and elitist NSGA-II has been proved to maintain a better spread of solutions, diversity of solutions and converge better in the obtained Pareto front compared to two other elitist multi-objective evolutionary algorithms (MOEAs)-Pareto-archived evolution strategy (PAES) and strength-Pareto EA (SPEA) [11]. Mohapatra et al. [29] proposed a controlled elitist non-dominated sorting genetic algorithm with an improved selection mechanism to solve process planning and scheduling problem aiming at minimizing makespan, machining cost and idle time of machines. Huang et al. [16] designed a hybrid NSGA-II with local search to solve a multi-objective optimization of process planning aiming at minimizing machining costs and carbon emissions caused by energy consumption of machines in machining state and material consumption of cutting fluid and cutting tools. Bandyopadhyay and Bhattacharya [2] modified the NSGA-II by embedding a new mutation method for a parallel machine scheduling problem aiming at minimizing makespan, tardiness cost and machine deterioration cost. In addition, the NSGA-II is also used to solve supply chain problem [3], inventory-redundancy allocation problem [1], and so on. In general, the fast and elitist NSGA-II has been proved an effective method to address multi-objective process planning, scheduling and other.
The remainder of this paper is organized as follows. Section 2 gives an integrated optimization model of process planning and scheduling. Section 3 presents NSGA-II algorithm based on four segment encoding. A case study is given in Section 4 to validate the proposed integrated optimizing method, followed by conclusions and future research directions in Section 5.

Optimization model of integrated process planning and scheduling.
In order to reduce carbon emissions and makespan in manufacturing processes, an integrated optimization model is proposed to optimize machining methods and process routes for each workpiece, machine allocations and machining sequence for all workpieces.
2.1. Assumptions. 1) Only metal cutting is included in machining processes. Heat treatments and workblank processes are not considered. 2) All cutting tools and cutting parameters are predetermined. 3) Lubricant and coolant used for all machines are the same type. 4) Electric fork lifts and parallel movement way are used to transport workpieces between machines. Energy consumptions of electric fork lifts are only related to moving distances. 5) All machines and workpieces are available at time zero. Workpieces have equal priority. 6) Each machine are powered on, preheated and powered off once in scheduling. 7) A workpiece could not be machined on more than one machine at the same time. Any machining process can't be interrupted once it begins. Each machine can only process one workpiece at a time.
2.2. Problem description. n workpieces are to be machined on a job shop with m machines. Workpiece i correspond to a machining feature set (1,2,...,f ir ,...,F i ). A machining feature f ir of workpiece i has a set of machining method (1,2,... ,N f ir ). Set (O i1 ,O i2 ,...,O ij ,...,O ini ) denotes a candidate process route of workpiece i. O ij denotes machining process j of workpiece i. Sequence of some processes in a process route could be exchanged. A machining process O ij can be processed on a machine of a machine set M ij . Different machines have different power profiles.
A multi-objective integrated optimization model of process planning and scheduling is proposed as follows. (9) Parameters and variables in the model are described in Table 2.
Equation (1) is to minimize carbon emissions in manufacturing processes. The first part of Eq. Equation (2) is to minimize the makespan in manufacturing processes. Constraint (3) ensures that only one machining method can be selected from the candidate machining methods for a machining feature. Constraint (4) is constraints on a process route. Process routes are needed to satisfy processing constraints on machining features, such as a machining feature should be machined after some other machining features. It is difficult to express these constrains in equations. In order to express all candidate process routes and ensure to yield feasible process N=(1,2,...n) set of workpieces M=(1,2,...,m) set of machines i workpiece i ∈ N k machine k∈ M f ir the r-th machining feature of workpiece i,r∈ (1,2,...,F i ) (1,2,...N fir ) set of candidate machining methods for machining feature f ir o ij the j-th process of workpiece i,j∈J,J=(1,2,...,n i ) M ij set of candidate machines for the j-th process of workpiece i C p carbon emissions in manufacturing processes C Me carbon emissions caused by energy consumption of machines in machining state C Ie carbon emissions caused by energy consumption of machines in idling state C Ae carbon emissions caused by energy consumption of machines in setup state C c carbon emissions caused by consumption of coolant C l carbon emissions caused by consumption of lubricant C t carbon emissions caused by energy consumption of electric fork lifts α e carbon emission factor of electric energy P ijk power of machine k to machine the j-th process of workpiece i t ijk power of machine to machine the j-th process of workpiece i on machine k P idle,k idling power of machine k S ijk ,C ijk start time and completion time of the j-th process of workpiece i on the machine k C hlk completion time of the l-th process of the immediate preceding processing workpiece h of workpiece i on machine k, S ijk =C hlk if the j-th process of workpiece i is the first process on machine k S fok start time of the o-th process of the immediate succeeding processing workpiece h of workpiece i on machine k,S fok =C ijk if the j-th process of workpiece i is the last process on machine k P hik ,t hik setup power and time of machine k from processing the immediate preceding processing workpiece h to workpiece i carbon emission factor of lubricant P tij power of electric forklift to handle workpiece i from machine k' for the (j-1)-th process of workpiece i to machine k for the j-th process of workpiece T lk effective duration of lubricant in machine k t tij transmission time needed to move workpiece i from machine k' for the (j-1)-th process of workpiece i to machine k for the j-th process of workpiece i C time makespan in manufacturing processes X fir the selected machining method for machining feature f ir of workpiece i l z the l-th flexible process section of type T z O iplz process p in the l-th flexible process section of type T z of workpiece i X ijk decision variable Table 2. Parameters and variables routes after crossover and mutation operations in the algorithm, three types of flexible process sections(T1, T2, T3) (Huang, 2014) are adopted. The Process route of a workpiece is optimized under processing constraints of machining features in Eq.(4). Type ⟩⟩ denotes that a process in process set O sl1 can be placed at any position in process section indicates that the two types of flexible process sections T 1 and T 2 described above are included in process section ⟨eO ijl3 ,O ikl3 ⟩ in which all processes are in ascending order from O ijl3 to O ikl3 . In order to distinguish with type T 1 and T 2 described above, T 31 and T 32 are used to index flexible process sections of type T 1 and T 2 in type T 3 respectively. All processes in process section represents that process 1 and 3 can be placed at any position in process section ⟨1,4⟩ of type T 1 which includes process 1, 2, 3 and 4. Positions of process 2 and 4 in type T 1 are relatively fixed. Positions of process 5 and 6 in process section ⟨5,6⟩ of type T 2 can be exchanged arbitrarily. Process 8 in type T 31 can be placed at any position in process section ⟨7,10⟩ of type T 3 which includes process 7, 8, 9 and 10. Process 9 and 10 are in type T 32 . Positions of process 9 and 10 can be exchanged arbitrarily. Process route 2, 1, 4, 3, 6, 5, 8, 7, 10, 9 is one of feasible process routes which meet all process route constraints.
In order to express a feasible process route and distinguish with process route constraints, the symbol for types of process section followed by process numbers but no symbol '⟨ ⟩' is used to indicate a feasible process route and a specific sequence of all processes. For example, T 1 1,3,2,4 T 2 5 6 T 31 8 7 9 10 T 32 10 9 denotes a specific feasible process route under process route constrains of flexible process section T 31 The corresponding machining order is from process 1, 3, 2, 4, 8, 7, 10 to process 9. Constraint (5) ensures that the time interval between the start time of the j-th process of workpiece on machine k and the completion time of the l-th process of the immediate preceding processing workpiece h on machine k cannot be less than setup time of the machine k from sequential processing workpiece h to workpiece i. Constraint (6) ensures that the interval time between two sequential processes of workpiece i should be larger than or equal to the handling time of workpiece i between machine k and k'. Constraint (7) ensures that the completion time of the j-th process of the workpiece i should be longer than or equal to the sum of its start time and the processing time on machine k. Constraint (8) ensures that the makespan should be longer than or equal to the completion time of each process. Equation (9) ensures that any process of a workpiece can only be machined on one machine. Decision variable equals to 1 if the j-th process of workpiece i is machined on machine k, otherwise equals to 0.
3. NSGA-II algorithm based on four segment encoding. The integrated optimization model of process planning and scheduling proposed above is a multiobjective optimization problem which involves many parameters related to optimization of machining methods, process routes, machining sequences of workpieces and machine allocations at the same time. These parameters are interactive. For example, process routes and machine allocations will be changed if machining methods are changed. The change of process routes will further lead to change of machining sequences of workpieces. In order to express all parameters involved, four segment encoding method is proposed and NSGA-II algorithm based on the four segment encoding is designed to solve the proposed model. The flow chart of NSGA-II algorithm based on four segment encoding is presented in Fig.1. 3.1. Four segment encoding method. Conventional optimization of process planning and scheduling is to optimize machining methods and process routes in process planning first and then to optimize machining sequence and machine allocations in scheduling. As process planning and scheduling were optimized separately in conventional optimization procedures, conventional encoding methods for process planning could not express optimization variables in scheduling and vice versa. In order to express all optimization variables in the proposed integrated optimization model at the same time and to improve efficiency of algorithm and results, a four segment encoding method is proposed.
The first segment code in the proposed four segment encoding method is the machining method code and is used to represent feasible machining methods corresponding to all machining features of workpieces. A machining method for a machining feature of a workpiece consists of multiple processes. Genes in the first .,X f ir ,...,X f nF n , X f ir stands for a machining method chosen from the machining method set (1,2,3,...,N f ir ) for a machining feature f ir of workpiece i. For example, the first segment code in Fig.2 is composed of five genes which represent corresponding machining methods for three machining features of workpiece 1 and two machining features of workpiece 2 respectively. The third gene ??from left to right indicates that the machining method for the third machining feature of workpiece 1 is the first machining method in corresponding machining method set.
The second segment code in Fig.2 is process route code which indicates process routes for all workpieces. A process route of a workpiece stands for a feasible machining order of all processes for a workpiece. A process route code consists of symbols and numbers. Symbols represent types of the flexible process sections described above. Numbers represent machining processes and the order of the numbers represents a specific process route for a workpiece. For example, the process route code of workpiece 1 T 31 1 4 2 3 T 32 3 2 T 2 6 5 in Fig.2 stands for a feasible process route, i.e., from candidate process routes expressed in the flexible process section T 31 ⟨4 ⟨1,4 ⟩⟩ T 32 ⟨2,3 ⟩ T 2 ⟨5,6⟩ for all machining features of workpiece 1. The process route stands for the machining order from process 1,4,3,2 and 6 to process 5.
The third segment code is the machine allocation code which indicates machines allocated to corresponding processes in the second segment code. The j-th gene in a machine allocation code of a workpiece represents that process j of the workpiece is machined on the corresponding machine. For example, the fourth gene from left to right in the third segment code in Fig.2, i.e., "2", indicates that process 4 of workpiece 1 should be machined on machine "2".
The fourth segment code is the machining sequence code for all workpieces. A number i in the code stands for workpiece i. The times j of the number i appeared in the code from left to right indicate the j-th process of workpiece i corresponding to the process in the second process route code. For example, the fourth gene "1" from left to right in the fourth segment code in Fig.2 has appeared twice, which indexes the second process of workpiece 1, i.e., process 4, according to the process route code of second segment. For example two workpieces are going to be machined on four machines. Workpiece 1 has 3 machining features and workpiece 2 has 2 machining features. The flexible process sections of the two workpieces are T 32 ⟨4 ⟨1,4⟩⟩ T 32 ⟨2,3⟩ T 2 ⟨ 5,6 ⟩ and T 1 ⟨3 ⟨1,3⟩⟩ T 2 ⟨4,5⟩ respectively. One feasible scheme of process planning and scheduling including machining method, process route, machine allocation and machining sequence for the two workpieces is expressed using the proposed four segment encoding method shown in Fig.2. Machining methods 1, 2 and 1, and machining methods 3 and 1 in the first segment code are used to indicate machining methods for the three machining features of workpiece 1 and the two machining features of workpiece 2 respectively. A feasible process route for workpiece 1 is 1 4 3 2 6 5 and a feasible process route for workpiece 2 is 1 3 2 5 4. Process 1, 4, 3, 2, 6 and 5 of workpiece 1 could be machined on machine 1, 2, 3, 1, 4 and 2 respectively. Process 1, 3, 2, 5 and 4 of workpiece 2 could be machined on machine 3, 3, 3, 1 and 4 respectively. A feasible machining sequence generated based on process route code and machine allocation code mentioned above for all processes of the two workpieces could be as follows.

Decode method.
Steps of decoding are as followings.
Step 1: Processing methods for each workpiece are determined according to the first segment code. For example, the first segment code in Figure2, i.e. 1-2-1 for workpiece 1 means that workpiece 1 have three machining features and their corresponding machining methods are method 1, 2 and 1.
Step2: Processing routes for workpieces are determined according to the second segment code. For example, the second segment in Figure 2 means that processes of workpiece1 is processed in the order of 1-4-3-2-6-5 and processes of workpiece2 is processed in order of 1-3-2-5-4. In addition, setup times are determined according to the processing route.
Step 3:The third segment code is to allocate machines to corresponding processes of all parts from left to right. For example, the third segment code in Figure2 means that the first and second process of workpiece 1 are processed on machine 1 and the third process is processed on machine 3.The fourth and fifth process are processed on machine 2 and the sixth process is processed on machine 4.
Step 4: Sequences of processes on machines are obtained according to the fourth segment code. For example, the fourth segment code in Figure2 means that the sequence of processes are in the order of O 11 It is assumed that all machines and workpieces are available at time zero. If the first process of workpieceses is the first process on the corresponding machine, these processes are started at time zero. Other processes are begun to be processed at the earliest available time. The start time and completion time of each process on the corresponding machine could be calculated by S ijk =max(C i(j−1)k ′ )+t t,ij ,C hlk +t hik ) and C ijk =S ijk +P ijk respectively.

Operations of NSGA-II.
3.3.1. Initial population. Initial populations are generated randomly. The four segment encoding are generated under constraints of the model and encoding rules.
3.3.2. Selection operator. The tournament selection are used to select solutions with lower non-dominated level. If solutions are in the same non-dominated level, the one with larger crowding distance is selected with higher priority.
3.3.3. Crossover operator. Crossover intends to inherit the properties of two parent solutions to two offspring solutions. Due to constraints of machining method on machines, the crossover of genes in machine allocation code alone might led to infeasible solutions. Therefore genes in machining method code and machine allocation code are crossed over together. Genes in process route code and machining sequence code are crossed over separately using crossover operators in Li et al. [22]. As a machining method might involve several machining processes, a gene in the machining method code might correspond several genes in machine allocation code. As shown in Fig. 3, the third gene "1" and "2" in machining method code of Parent 1 and Parent 2 corresponds to the two genes "2", "4" and "2", "1" respectively in the machine allocation code. The fourth gene "3" and "2" in machining method code of Parent 1 and Parent 2 corresponds to the three genes "3", "3", "3" and "2", ?? ??respectively in the machine allocation code. The fifth gene "1" and "1" in machining method code of Parent 1 and Parent 2 corresponds to the two genes "4", "1" and "4" "1" respectively in the machine allocation code. In order to get a feasible machine allocation in its offspring, the genes in machine allocation code corresponding to the crossed genes in machining method code are crossed respectively shown in Fig. 3. In order to yield a feasible processing route under processing constraints, crossover on the second coding i.e. the processing route code is based on process sections but genes. Crossover only be conducted between two groups of genes in the same type of process section. First, a process section in a parent processing route code is selected randomly. All genes in the selected process section are crossovered with all genes in the same position of the selected process section in another parent processing route code without any changes on positions of genes. Genes of the rest process sections in the two parents processing route codes are directly copied to their corresponding children processing route codes. As each process section in the two parent processing route code is feasible, the new process sections in the two children processing route codes after crossover are still feasible. An example is shown in Fig. 4. T 32 is selected to be crossovered. All genes in T 32 in Parent 1 are moved to the same section T 32 in offspring 2 and all genes in section T 32 in Parent 2 are moved to the same section T 32 in offspring 1. The rest genes within other process sections remain unchanged. Due to processing constraints, the second coding representing the processing routes cannot directly select two genes for crossover. Several types of flexible process sections are crossed as a whole, and the corresponding genes in the flexible process sections are crossed. The relative position of genes within the process sections remains unchanged, so processing constraints are guaranteed in process routes and infeasible solutions cannot be generated. The example is shown in Fig. 4. Twopoint crossover operator is adopted in machining sequence codes. Two points are randomly selected in machining sequence codes of two parent solutions. The genes between the two selected points are crossed over in parent machining sequence codes. After the cross, in order to get a feasible machining sequence in an offspring solution, the times of a workpiece number appeared in machining sequence code of an offspring solution should be equal to the number of processes of this workpiece. If occurrence times of a workpiece number in machining sequence code of an offspring solution are larger than the number of processes of this workpiece, this workpiece number is replaced by a workpiece number with occurrence times less than corresponding number of processes. For example, in Fig. 5, the times of workpiece number 2 appeared in machining sequence code of Offspring 1 are larger than its number of processes and the times of workpiece number 1 appeared in machining sequence code of Offspring 1 are less than the number of processes of workpiece 1. Therefore, to get a feasible machining sequence, the workpiece number 2 in machining sequence code of Offspring 1 is replaced with workpiece number 1, as shown as    the selection of machining methods. The machining sequence code is independent of the machine allocation code. The process route code is not related to both machining method code and machine allocation code. Therefore, in order to get feasible offspring, genes in a machine allocation code and machining method code are mutated together. Genes in a machining sequence code and process route code are mutated respectively.
(1)Mutation of a machining method code A gene in a machining method code is selected randomly and replaced by a machining method chosen randomly from the candidate machining method set for the corresponding machining feature f ir at the position of the gene selected. The number of processes included in each machining method are predetermined. All processes are numbered in advance. The machine used by each process are determined in the machine allocation code. Each process number j represents corresponding process is machined on the machine at the j-th position in the machine allocation code. So the machine allocation code is related to the machining method code. In order to get a feasible offspring, genes in the machine allocation code related to the mutated machining method are replaced by corresponding machines selected randomly from candidate machine sets of the corresponding processes of the new machining method. For example, the gene "2" at the second position in a machining method code in FIGURE 6 is selected and mutated into "1", which is a machining method randomly selected from the candidate machining method set of machining feature f 12 . It is predetermined that machining method 2 selected in the Parent machining method code corresponds to two processes, which are numbered process 3 and process 4 respectively. So the two processes of the mutated machining method 2 are machined on machine 3 and machine 2 at the third and fourth position in Parent machine allocation code respectively. The two machines "3" and "2" in the Parent machine allocation code used by process 3 and 4 are mutated into machines "1"and "4" respectively, which are selected randomly from candidate machine sets of corresponding processes of the new machining method 1.
(2)Mutation of process route code In order to yield a feasible processing route under processing constraints, a gene in a processing route code is selected randomly and randomly inserted into a new position in the same process section under processing constrains of the corresponding type of process section as shown in Eq.(4) .If position of the selected gene is Figure 6. Mutation of genes in machining method and machine allocation code not allowed to be changed randomly in its process section under the processing constraints of the corresponding type of process section, another gene in the processing route code is selected randomly again until a new feasible processing route is yielded. Genes of the rest process sections in the processing route code are directly copied to the corresponding children processing route codes at the same positions without any changes on positions of genes. As there are three types of flexible process section, processing constrains are different in different types of flexible process section. If the gene randomly selected is in process set O sl1 or O sl3 after symbol T 1 or T 31 , a new feasible gene sequence could be yielded by randomly inserting the selected gene into any position in process section Genes of the rest process sections in the processing route code are directly copied to the corresponding children processing route code at the same positions without any changes on positions of genes. If the gene randomly selected is not in process set O sl1 or O sl3 but after symbol T 1 or T 31 , position of the selected gene in the selected gene sequence could not be changed under process constrains of flexible process section Therefore a new gene should be randomly selected again until mutation could be conducted and yield a feasible processing route. For example, gene "3" in a gene sequence "1 3 2" after symbol T 1 in a process route code in Fig.7 (a) is randomly selected. This gene sequence is subjected to flexible process section T 1 ⟨3 ⟨1,3 ⟩⟩. The selected gene "3" is randomly inserted into a position in process section ⟨1,3 ⟩ to yield a new gene sequence, i.e. 3 1 2 as shown as Fig.7 (b). Similarly, gene "4" in process sequence "1 4 2 3" after symbol T31 in a process route code in Fig.7 (b) is selected randomly. The corresponding flexible process section of type T 31 is T 31 ⟨4 ⟨1,4⟩⟩. Process 4 is randomly inserted into a position in process section ⟨1,4⟩ to yield a new gene sequence, i.e. 1 2 4 3. If the new gene sequence yielded is the same as before, the gene selected in process set O sl1 or O sl3 is inserted randomly in any position in process section ⟨O ijl1 ,O ikl3 ⟩ or ⟨O ijl3 ,O ikl3 ⟩ again until a new gene sequences is generated. If the gene randomly selected is in gene sequence after symbol T 2 or gene sequence after symbol T 32 in a process route code, a new feasible gene sequence could be yielded by randomly inserting the selected gene into any position in the selected gene sequence under process constrain T 2 ⟨O ijl2 ,O ikl3 ⟩ or T 32 ⟨O iul3 ,O ivl3 ⟩ respectively. For example, gene "5" is selected randomly in gene sequence "5 4 6" after symbol T 2 in a process route code in Fig.7(c) and a new gene i.e. "4 6 5" is yielded by randomly inserted the selected gene "5" into a position in the gene sequence under process constrain of flexible process section T 2 ⟨4,6 ⟩, shown in Fig.7(c). Mutation of a gene sequence after symbol T 32 shown in Fig.7 (d) is similar to that of a gene sequence after symbol T 2 as.
As genes in a process route code don't correspond to that in a machine allocation code, the machine allocation code is still feasible after the mutation of the process route code. For example, a process route of workpiece 1 in Fig.7 (b) is 1 4 3 2 6 5. After mutation, the process route is become1 3 4 2 6 5. The machine allocation code of workpiece 1 in Fig. 2, remains the same i.e., 1 1 3 2 2 4. According to the meaning of a machine allocation code, the j-th gene in a machine allocation code of a workpiece i indexes the corresponding machine used for the j-th process of workpiece i. Process 3 and 4 of workpiece 1 are always machined on machine 3 and 2 respectively no matter what order of the corresponding processes is in the corresponding process route code. Therefore, a machine allocation code is still feasible after the mutation of the corresponding process route code. The j-th gene in a machine allocation code of a workpiece i represents process j of the workpiece is machined on the corresponding machine. The j-th gene in a machine allocation code is selected randomly and is mutated into another machine randomly selected from the candidate machine set of process j of workpiece i. For example, the sixth gene '4' in the machine allocation code from left to right in Fig.  8 is selected randomly and mutated into '2', which is selected randomly from the candidate machine set of process 6 of workpiece 1. As the corresponding machining method code has not changed, the four-segment code is still a feasible chromosome. In order to increase diversities, two pairs of different genes in a machining sequence code are selected randomly. The two genes in each selected pair are swapped with each other. For example, two pairs of genes in the machining sequence code in Fig.9 are randomly selected, i.e., (1,2) and (2, 1). The two genes in the selected pair (1, 2) are swapped into (2, 1). The two genes in the selected pair (2, 1) are swapped into (1, 2). As a machining sequence code is not related to the other three codes, offspring is still feasible after the mutation of the machining sequence code. . Workblanks for all workpieces are cast. Machining features of workpieces, processing constraints of machining features, candidate machining methods and machines are described in Table 3. All candidate machining methods in Table3 are supposed from actual productions of a case company and met processing constraints in actual productions. Machining features f i in Table 3 correspond with the machining features f i in Fig. 4, 5 and 6. Numbers in brackets in the fourth column in Table 3 indicate processing times of corresponding processes on their left. Letters in front of the brackets indicate serial numbers of the corresponding processes. Due to the fact that one machining feature can only be processed by one machining method, serial numbers of process in different process routes for the same machining feature are the same. For example, machining feature of workpiece 1 can be processed by any of two machining methods in the case company. One is rough turning and then finish turning. Another is rough milling and then finish milling. Once a machining method is selected, the corresponding process route of the machining feature is determined. Therefore both serial numbers for rough turning and rough milling are  the same i.e. "a" and both serial numbers for finish turning and finish milling are "b". As different machining methods for the same machining feature might include different number of processes, it is important to ensure that process route codes for different machining methods have the same length of genes. Therefore the process route code is designed for the machining method including the maximum number of processes. The excess genes of process route code for a machining method with less number of processes should be filled with the extra serial numbers of processes in the longest process route to make it as the same length of genes as that of the longest process route code designed. As these processes do not really exist, the processing time of all the processes filled are set as 0. For example, the first machining method for machining feature of workpiece 2 in Table 3 includes only three processes. However the second machining method for the same machining feature includes four processes. Therefore, the last gene of process route code for the first machining method should be filled with the extra serial process number h which is in the same position of the second machining method. The processing time of process h in the first machining method is set as 0. In order to use the three types of flexible process sections (T 1 ,T 2 ,T 3 ) mentioned above to express candidate process routes, it is required that all serial numbers of processes of a workpiece should be sequent and in an ascending order. However the serial numbers of processes for each workpiece in Table 3 are in a nature way. It is need to re-code the serial numbers of processes under processing constraints on machining feature in the three column in Table 3. Re-coding is to re-label all processing methods in an ascending order to express all candidate process routes in the proposed three types of flexible process sections (T 1 ,T 2 ,T 3 ). Re-coding is based on basic processing constraints such as separating rough machining from finish machining and machining locating datum before other machining features etc. Due to diversities of process route, serial numbers for processes of workpieces after re-coding might not be unique. However, the corresponding process route formed after re-coding must be one of feasible process routes, which will be used to express all candidate process routes through three types of flexible process sections (T 1 ,T 2 ,T 3 ). As the initial process route will be optimized in the algorithm, it is enough for re-coding that all serial numbers of processes for a workpiece are sequent and in an ascending order, and a feasible process route is yielded after re-coding.
Numbers after processes in the fifth column of Table 3 indicate sequences of the corresponding processes in a feasible process route after re-coding. Processing time of a process remains the same as it is in the fourth column in Table 3. A feasible process route for workpiece 1 after re-coding is formed as follows.
Electric fork lift trucks are used to transport workpieces among processes. The rated power of trucks is 3,500w. Transmission time of workpieces between two machines are shown in Table 4. Clamping types for workpieces might be changed if different machining features of a workpiece are machined in sequence on a machine. Identifiers of clamping type for different machining features of workpieces are shown in Table 5. Symbol "-" in Table 5 means that clamping types for machining features are not applicable on the corresponding machines. Different identifiers of clamping type in the table mean different clamping types. For example, identifiers of clamping type for machining feature f 1 and f 5 of workpiece 1 on the same lather machine are "1" and "2" respectively in Table 5. It is needed to change clamping type on a lather machine to process machining feature f 1 and f 5 of workpiece 1. Clamping types in Table 5 are conventional clamping ways based on the case company and might not include all clamping ways.
The proposed four segment encoding based NSGA-II algorithm was coded in MATLAB. Parameters are set as follows: population size N=40, the maximum number of iterations m=300, crossover rate C=0.9, mutation rate A=0.2. A Pareto set is shown in Table 9.
Solution 1 and 29 in Table 9 are solutions with the lowest carbon emission in manufacturing processes and the minimum makespan respectively. Gantt charts of the two solutions are shown in Fig. 13 and Fig. 14. Numbers before letters in the figures indicate workpieces and the letters are serial numbers of processes in Table  3. From Gantt chart     The two objective function values of all solutions in the Pareto set are shown in Fig. 15. It is a nonlinear relationship between the makespan and carbon emissions, which can be yielded from Eq. (1) and (2).
In order to further analyze compositions of carbon emissions for solutions in the Pareto set, different carbon emissions included in Eq.(1) for all solutions in the Pareto set are shown in Fig. 16. The total carbon emission of each solution in the Pareto set and its components are shown in the horizontal and vertical coordinate Figure 15. The relationship of two objectives respectively. Due to large gaps among different carbon emissions, different carbon emissions are corresponded to one of the two vertical axes with different units in Fig. 16 and arrows are used to indicate the correspondence. It is obvious that carbon emissions caused by energy consumption of machines in state of machining in all Pareto solutions are pretty close but carbon emissions caused by energy consumptions of machines in idling state in all Pareto solutions vary greatly. Both are in large quantity and are the leading sources of carbon emission in manufacturing processes. Their sum contributes 92%-94% of total carbon emissions. Even a small reduction on energy consumptions of machines in state of machining or idling would directly led reduction of total carbon emissions in the manufacturing processes. Therefore, the most effective measure to reduce carbon emissions in the manufacturing processes is to reduce energy consumptions of machines in state of machining and idling.
To verify effects of the proposed integrated optimization model on reducing carbon emissions in manufacturing processes, results of the proposed integrated optimization are compared with that of conventional optimization method in which process planning is optimized aiming at minimizing carbon emissions caused by energy consumption of machine in machining state and electric fork lift and caused by consumption of coolant and lubricant first and then scheduling is optimized aiming at minimizing carbon emissions and makespan in manufacturing processes.
Neither idling times, setup times of machines and their corresponding carbon emissions nor makespan could be determined in process planning because scheduling has not been determined. Only processing times of processes and carbon emissions caused by energy consumption of machine in machining state could be determined in process planning. As machines are not allocated in process planning, to better demonstrate the effect of the proposed integrated optimization model on reduction of carbon emission, machines with the lowest machining power among the same type of machines are directly used to optimize process planning for reducing carbon emissions once machining method are determined. The real carbon emissions must be larger than the calculated carbon emissions above because actual machining power of machines must be larger than the lowest machining power. Only the first two segment codes in the proposed four segment encoding are adopted in the Based on the optimization result of process planning, scheduling is optimized for minimizing makespan and carbon emissions in manufacturing processes. As process routes for all workpieces have been determined in process planning, only machining sequence and machine allocation are to be optimized. Therefore, only the last two segment codes in the proposed four segment encoding are adopted in the NSGA-II algorithm. Genes in machining sequence code are crossed using crossover operation proposed in Section 3.2. Genes in machine allocation code are crossed using twopoint crossover operator. A Pareto set is shown in Table 10. Solution 1 in Table  The Table 10. Pareto solutions of scheduling after process planning 10 is the solution with the minimum carbon emission. Gantt chart for solution 1 is shown in Fig. 17. In order to demonstrate the effects of the integrated optimization method on carbon emission reduction, both solutions with the minimum carbon emissions in Table 9 and 10 are compared. It is obvious that solution 1 in Table 9 is better than solution1 in Table 10 on both carbon emissions and makespan. The carbon emission of 13.966 kgCO 2 for solution1 in Table 10 is an optimized result of scheduling aiming at minimizing carbon emissions and makespan based on optimized results of process planning aiming at minimizing carbon emissions. This optimized result would be much better than carbon emissions in any manufacturing process without optimizing carbon emissions in either process planning or scheduling. For the three workpiece case study with total about 45 minutes of makespan, the proposed integrated optimization method compared with the conventional optimization method can further reduce 0.59 kgCO 2 of carbon emission and 286 second of makespan. If working hour in a job shop is 8 hours a day, the number of workpiece machined would be increased about 10.7 times. Carbon emissions in a day in the job shop would be further reduced by 6.3 kgCO 2 , which is equivalent to carbon emissions caused by a household car running about 50 km. As process planning generally is not optimized only to reduce carbon emissions as in the conventional optimization method compared in the case study, optimized carbon emissions in process planning with multiple objectives would be worse than the optimized results compared. Therefore, the proposed integrated optimization method could effectively reduce carbon emissions. The average of the carbon emissions from the two sets of solutions in Table9 and Table10 is calculated. Carbon emissions caused by energy consumption of machines in machining state and energy consumption of machines in idling state are reduced by 0.2148 kgCO 2 , accounting for 72.19% of the total carbon emissions reduction. Carbon emissions caused by consumption of coolant, consumption of lubricant, energy consumption of electric fork lifts and energy consumption in setup state are reduced by 0.0827 kgCO 2 , accounting for 27.81% of the total carbon emissions reduction. Although carbon emissions caused by consumption of coolant, consumption of lubricant, energy consumption of electric fork lifts and energy consumption in setup state account for only 6%-8% of total carbon emissions, carbon emissions of them are greatly reduced and cannot be ignored, accounting for 30% of total carbon emission reductions. Comparing the Pareto solution of the two models, makespan of integrated optimization model is greatly reduced, which could lead to a larger reduction in carbon emissions caused by consumption of coolant, consumption of lubricant, energy consumption of electric fork lifts and energy consumption of machines in setup state. In addition, according to the calculation method of the previous paragraph, The sum of these four types of carbon emissions in a day in the job shop would be further reduced by 0.88 kgCO 2 , which is equivalent to carbon emissions caused by a household car running about 6.95 km. Therefore, it is meaningful to optimize them in manufacturing processes.
In order to explain why the integrated optimization method could further reduce carbon emissions in manufacturing processes, compositions of carbon emission in both solution1 in Table 9 and 10 are compared and analyzed. Carbon emissions caused by energy consumption of machine in machining state and of electric fork lift and caused by consumption of coolant in solution 1 in Table 10 are slightly less than that in solution 1 in Table 9. However carbon emissions caused by energy consumption of machine in idling and setup states and caused by consumption of lubricant in solution 1 in Table 10 are larger than that of their counterparts in solution 1 in Table 9. As a result, the carbon emissions in manufacturing processes of conventional optimization of process planning and scheduling are larger than that of the proposed integrated optimization method. The main reason is that carbon emissions caused by energy consumption of machine in machining state and of electric fork lift and caused by consumption of coolant can be optimized in process planning but carbon emissions caused by energy consumption of machine in idling and setup state can only be optimized in scheduling once process planning has been optimized and determined in the conventional optimization of process planning and scheduling. But the proposed integrated optimization method can adjust idle time and setup time of machines and corresponding machine power through optimizing machining method of each machining feature and process routes for workpieces when making a scheduling plan. Therefore integrated optimization can get a better optimized result with less carbon emissions caused by energy consumption of machine in idling and setup state compared to conventional separate optimization. All these reasons lead to limited optimization effect of conventional optimization of process planning and scheduling and its optimization result is worse than that of the integrated optimization method.

Conclusions.
In order to reduce carbon emissions in manufacturing processes, the comprehensive effects of process planning and scheduling on carbon reduction are explored. An integrated optimization model of process planning and scheduling is proposed to minimize carbon emissions and makespan. Three types of flexible process sections are designed to express candidate process routes for workpieces. To optimize machining method, process route, machine allocation and machining sequence of workpieces simultaneously, a four segment encoding method is proposed and NSGA-II algorithm based on the four segment encoding is designed. A case study is used to verify the proposed integrated optimization method. Results are compared with that of conventional separate optimization of process planning and scheduling. Following conclusions could yielded from the case study.
(1) Carbon emissions caused by energy consumption of machines in machining state account for the largest proportion (around 55%-65%) of carbon emissions in manufacturing processes. Carbon emissions caused by energy consumption of machines in idling state approximately take up 27%-39% of carbon emissions in manufacturing processes. Although Carbon emissions caused by consumption of coolant, consumption of lubricant, energy consumption of electric fork lifts and energy consumption of machines in setup state, which were ignored in most previous researches, only account for 6%-8% of total carbon emissions, but they could be greatly reduced in the proposed integrated optimization model, which almost account for 30% of total carbon emission reduced. Comparing the Pareto solution of the two models, makespan of integrated optimization model is greatly reduced, which could lead to a larger reduction in carbon emissions caused by consumption of coolant, consumption of lubricant, energy consumption of electric fork lifts and energy consumption of machines in setup state. In addition, according to the calculation method of the previous paragraph, The sum of these four types of carbon emissions in a day in the job shop would be further reduced by 0.88 kgCO 2 , which is equivalent to carbon emissions caused by a household car running about 6.95 km. It is meaningful to consider these carbon emissions in the proposed integrated optimization model.
(2) Carbon emissions caused by energy consumption of machines in machining state are determined by process planning. Carbon emissions caused by energy consumption of machines in idling and setup states, energy consumption of handling equipment and material consumption of coolant and lubricant are affected by both process planning and scheduling. However, the comprehensive influences of process planning and scheduling on carbon emissions are ignored in conventional separated optimization. The proposed integrated optimization process planning and scheduling has shown advantages to further reduce carbon emissions.
Although the integrated optimization method of process planning and scheduling could further reduce carbon emissions and makespan, there are still some research limitations. All machining methods for the workpieces in the case study are from the case company and might not include all possible machining methods. However if there are other machining methods, they could be added in Table 3 to be recoded and represented by flexible process sections under the processing constraints. Then the proposed integrated optimization method could be used to optimize process planning and scheduling. Computational speed of the algorithm might become slow for large-scale applications. Future research could improve optimization abilities of the algorithm to make the proposed integrated optimization method more applicable and efficient. Besides, cutting parameters are predetermined according to requirements on machining quality. As cutting parameters are important factors affecting energy consumptions of machines, further research could explore comprehensive effects of cutting parameters, process routes and scheduling on carbon emissions in manufacturing processes. Finally, a machine switching strategy would be considered in the proposed integrated optimization method to reduce unnecessary idle time.