A Mathematical Model for Multiworkshop IPPS Problem in Batch Production

Integrated Process Planning and Scheduling (IPPS) problem is an important issue in production scheduling. Actually, there exit many factors affecting scheduling results. Many types of workpieces are commonly manufactured in batch production. Moreover, due to differences among process methods, all processes of a workpiece may not be performed in the same workshop or even in the same factory. For making IPPS problemmore in line with practical manufacturing, this paper addresses an IPPS problem with batches and limited vehicles (BV-IPPS). An equal batch splitting strategy is adopted. A model for BV-IPPS problem is established. Makespan is the objective to beminimized. For solving the complex problem, a particle swarmoptimization (PSO)with amultilayer encoding structure is proposed. Eachmodule of the algorithm is designed. Finally, case studies have been conducted to validate the model and algorithm.


Introduction
Process planning and production scheduling are two indispensable subsystems in manufacturing systems.In traditional manufacturing, they are performed independently in series.A process planning subsystem determines the process route for each workpiece, and a scheduling subsystem allocates manufacturing resources according to the results from the process planning subsystem [1][2][3].The independent and serial running mode of the two subsystems may lead to unrealistic process routes, uneven resource utilization, and bottlenecks in scheduling [1][2][3].Integration of the two subsystems is an effective method to eliminate conflicts of resources, shorten finishing times of workpieces, and improve machine utilization [1][2][3].The integration of process planning with scheduling is important for the development of manufacturing systems.
Integrated process planning and scheduling (IPPS) problem is a significant issue in the field of production scheduling.Existing research focusing on IPPS problems has typically considered only process stages.Few studies have considered batches in the IPPS problem even though many workpieces are processed in batch production.Batch splitting problem has been a significant issue in real production environments [4,5].Furthermore, there are some cases in which all processes cannot be accomplished in the same workshop due to their different processing characteristics.Because machines may be located in different workshops, transportation between them must be considered in scheduling which will influence the finishing time of the workpieces.
Batch splitting problem involves splitting lot numbers and splitting lot sizes for each workpiece.In fixed batch splitting, the lot numbers of all workpieces are constant, and the lot sizes of all sublots of a workpiece are equal.Equal batch splitting is typically used in production scheduling problems [4,6].The lot size of each sublot of a workpiece is equal, but the lot numbers of different types of workpieces are not equal (the lot number of each workpiece can be changed).Therefore, equal batch splitting is more flexible than fixed batch splitting.Equal batch splitting is adopted in this paper because fixed batch splitting may cause an imbalance between machine and load.
In conclusion, batch and transportation are simultaneously considered so that the IPPS problem better aligns with the real production environment.An IPPS problem considering equal batch splitting and limited vehicles (BV-IPPS) is proposed.The mathematical model of BV-IPPS is established to minimize the makespan.Given the complexity of the problem, a particle swarm optimization (PSO) is designed with a multilayer encoding structure.Finally, the model and algorithm are proven through a case study.
This paper initially provides a brief literature review related to IPPS problem in Section 2. A mathematical model for the problem is proposed in Section 3. A PSO with a multilayer encoding structure is designed in Section 4. The computational results are analysed in Section 5. Finally, the conclusions are provided in Section 6.

Literature Review
The basic IPPS problem can be defined as follows [7]: "Given a set of  parts that are to be processed on  machines with operations including alternative manufacturing resources, select suitable manufacturing resources and sequences of operations to determine a schedule in which the precedence constraints among operations can be satisfied and the corresponding objectives can be achieved." Researchers began studying IPPS problem in the 1980s [8].Chryssolouris et al. [9] proposed an approach to integrate process planning and scheduling.An increasing number of studies have focused on the IPPS problem in recent years.
Phanden et al. [1] determined that considering process planning and scheduling separately may cause many problems and limitations.They introduced three common approaches for integrating process planning and scheduling.Potential avenues for future IPPS work are discussed at the end of the paper.
(1) Integrated Approaches.Saygin and Kilic [10] proposed a framework for integrating process planning and scheduling that consisted of machine tool selection, process plan selection, scheduling, and rescheduling modules.The framework was validated using many samples.Phanden et al. [11] established a makespan-targeted IPPS model composed of a process route selection module, scheduling module, analysis module, and process route modification module.A genetic algorithm (GA) was designed to solve the model.The availability of the model and algorithm was proven by a case study.Manupati et al. [12] proposed a mobile agent-based approach for integrating process planning and scheduling.A mathematical model for a biobjective IPPS problem with consideration of transportation was established.The approach was proven through many examples.
(2) Improvements to Algorithms.Petrović et al. [3] proposed a hybrid algorithm based on PSO and chaos theory.The advantages of the hybrid algorithm have been proven through many benchmarks by comparisons with other approaches.Xia et al. [13] proposed a dynamic IPPS problem with consideration of machine breakdown and new job arrival.A model for the problem was established.A hybrid GA with variable neighbourhood search was designed to solve the problem.Zhang and Wong [14] proposed a GA framework and integrated ant colony optimization (ACO) into the framework for solving IPPS problem.Lian et al. [15] proposed an imperialist competitive algorithm (ICA) to solve IPPS problem.Lian et al. [16] proposed a mathematical model for process planning problem with an objective of total cost minimization.An ICA was designed to solve the problem.Shao et al. [17] established an IPPS model with two objectives.Makespan and machine utilization are objectives which will be optimized.A modified genetic algorithm-based approach was designed for solving the problem.Li et al. [18] proposed an evolutionary algorithm-based approach for solving IPPS problem.Guo et al. [7] presented an advanced PSO approach to solve the IPPS problem.The advantages of PSO were proven by comparison with other intelligent algorithms.Seker et al. [19] proposed a hybrid heuristic algorithm based on a GA and artificial neural network (ANN) to solve IPPS problem.
(3) Other Research on IPPS Problem.Zhang et al. [20] established an IPPS model with the total energy consumption as the objective.A genetic algorithm-based approach was proposed to solve the problem.Haddadzade et al. [2] proposed an IPPS problem that considered stochastic processing time.The Dijkstra algorithm and Monte Carlo sampling method were used to create examples, and a hybrid algorithm based on simulated annealing and tabu search was designed to solve the problem.Kis [21] proposed a particular job-shop scheduling problem in a chemical production environment.The process routes were directed acyclic graphs and consisted of several alternative subgraphs.A tabu search and GA were proposed to solve the problem.Li and McMahon [22] proposed a multiobjective IPPS problem.The target to be optimized was obtained by combining multiple objectives through linear weighting.A simulated annealing algorithm (SAA) was proposed to solve the problem.Moon and Seo [23] considered transportation in IPPS problem with the makespan as the objective, and an evolution algorithm was proposed to solve the problem.
Many existing studies on IPPS problem only involve the process stage; few consider batching, which may cause the IPPS problem to unrealistic.In real production, many workpieces are processed in batches.Batch splitting problem is a significant issue in real production environments [4,5].Furthermore, all processes may not able to be processed in the same workshop due to different process types.Transportation is another factor that must be considered in real production environments.References [12,23] considered transport in an IPPS problem but did not consider the amounts and locations of transports, which may cause the methodology to not fit real production environments.
Recently, several studies have focused on production scheduling problems considering batch splitting.For example, batching has been considered in a job-shop scheduling problem (JSP) [4,24], flow-shop scheduling problem (FSP) [25,26], and parallel machine scheduling problem [27].Research on production scheduling problems considering batch splitting has mainly focused on JSP and FSP.As manufacturing technology has improved over time, normal machine tools now coexist with numerically controlled machine tools and machining centres in many workshops [28]; however, because different machines have similar functions, multiple process routes are designed for the same workpiece to fully utilize different machines [1][2][3].Designing multiple process routes for a workpiece is of great significance for improving the flexibility of scheduling and reducing resource conflicts [1][2][3].IPPS problem involves parallel machines and alternative process routes simultaneously.Compared to JSP and FSP, IPPS problem has a larger solution space and is more complex.The scheduling result of IPPS problem is more in line with real production situations.IPPS problem has been identified as NP-hard [19].
Based on the above literature, this paper proposes an IPPS problem considering equal batch splitting and limited vehicles with the makespan as the objective to be minimized.A model for the problem is built, and a PSO with a multilayer encoding structure is proposed.Finally, the model and algorithm are validated through a case study.

Problem Description.
There are different workpieces that must be processed in a factory.The batches of different workpieces are different.Each workpiece can be processed through more than one process route, and each process can be processed by more than one machine.There are several vehicles for transporting workpieces.Under these conditions, the makespan is regarded as an objective.An optimal solution is obtained by selecting the process routes, machines, vehicles and sorting process sequences for each workpiece.

BV-IPPS
Based on the above parameters, the makespan is the target to be minimized.The objective function is established as: The following constraints are considered in the model: (1) The sum of the lot sizes of each sublot of a workpiece is equal to the total lot size of the workpiece.
(2) One machine can only process one process of a sublot of a workpiece at a time.
If from time , (3) One process cannot be processed by more than one machine.
If from time , Then, Based on constraint (4),    ,    ,  V    ,   and    are updated by the following formulas: If V  =   , then Formula (2) ensures that each batch of a workpiece is correct.The relationships between processes and machines are constrained through formulas ( 3)-( 6) to ensure the rationality of the manufacturing process.If a process of a sublot of the workpiece and the front of the process are performed in different workshops, a vehicle for transporting the sublot of the workpiece is determined by formula (7).The starting time of each process is calculated by formula (8).Several parameters are calculated based on formula (8).The vehicles' locations are updated based on formula (9).The vehicles' earliest free time are updated by formula (10).The completion time for each process is calculated by formula (11).The machines' earliest free time is updated by formula (12).The earliest starting time of each sublot of the workpiece is updated by formula (13).The final completion time of each sublot of workpiece is calculated by formula (14).

PSO with a Multilayer Encoding Structure
Based on the description and modelling of the problem, the BV-IPPS problem is an NP-hard problem.PSO was proposed by Kennedy and Eberhart in 1995 [29] and was formerly used to solve continuous optimization problems.Hitherto, researchers have attempted to improve PSO to solve discrete NP-hard problems.Considering the complexity and discreteness of BV-IPPS problems, this study proposes a PSO to solve the BV-IPPS problem.Each module of the algorithm is introduced below.A flowchart of the PSO with a seven-layer encoding structure for the BV-IPPS problem is proposed at the end of this section.

Solution Representation.
A seven-layer encoding structure is proposed to construct solutions.The structure consists of seven layers: the workpiece, sublot of the workpiece, batch, machine, workshop, process time and process route.An example of the encoding structure of BV-IPPS is provided in Table 1.
In Table 1, for example, the codes on the first column mean that  3 is adopted for  21 .Because code "21" first appears in the layer of the sublot of the workpiece, it represents the first process of  21 .There are 26 pieces of  21 that will be processed. 4 is chosen to complete this process.The process time is 0.8 per workpiece. 4 is located in  2 , and so on.
Vehicles are not contained in the solution representation.In this study, vehicles are scheduled dynamically by constraint (4) in Section 4.An order of vehicles is generated after scheduling.For example, order [2 1 1 3] means that  2 is used first, then  1 is used for transportation, and so on.

4.2.
Updating.Individuals are updated with the current global optimal individual or their own best solutions of history based on a probability.A precedence preserving orderbased crossover (POX) [30] operator is used for updating.Individuals are still feasible after updating by using the POX operator.Assuming that workpiece  3 will be updated, an example of a POX operator for the BV-IPPS problem is shown in Figure 2. Steps of Figure 2 are shown as follows.
(1) The columns which contain  3 are cleared in F1.Then, the temporary F1 is generated.
(2) Each column of global optimal individual is traversed orderly.The columns which contain  3 are taken.
(3) Each column of  3 is inserted into the blank columns of temporary F1.If the number of blank columns of temporary F1 is less than the number of columns of  3 , the rest of columns of  3 are inserted in the end of temporary F1.The new F1 is generated.

Mutating.
The process sequences and machines are mutated separately.Swapping is used to mutate the process sequence.Two locations are generated randomly.The two columns of data in the locations are exchanged.This may lead to an unfeasible solution after swapping.The new solution will be corrected after swapping.For machine mutating, a location is generated randomly.Then, the code of the machine in the location is changed randomly.
Assuming that the fifth and ninth columns will be swapped, swapping and correction are shown in Figure 3.
Steps of Figure 3 are shown as follows.
(1) The fifth and ninth columns are swapped.Then, the temporary F1 is generated.
(2) Since there is an invalid column which contains  31 in temporary F1, the columns which contain  31 are cleared.Then, the temporary F1  is generated.
(3) Each column of F1 is traversed orderly.The columns which contain  31 are taken.
(4) Each column of  31 is inserted into the blank columns of temporary F1  .The new F1 is generated.
Assuming that the machine of the third column will be mutated,  3 ,  4 and  6 can be used to process the first process of  32 . 3 belongs to  1 . 4 and  6 belong to  2 .An example of changing for a machine is shown in Figure 4.
Steps of Figure 4 are shown as follows.
(1) A machine is selected randomly for replacing  6 at the third column.In Figure 4,  6 is replaced by  4 .
Taking columns which contain J 3 Columns of J 3 Clearing columns which contain J 3 Inserting valid columns of JS 31 into blank columns of JS 31

Temporary F1
Temporary ＆1  Clearing the columns which contain JS 31 Taking the columns front to back which contain JS 31   (2) Process time and workshop of the third column are updated.The new F1 is generated.

Parameters and Flowchart of PSO with a Seven-Layer
Encoding Structure.The parameters of PSO with a sevenlayer encoding structure are , , Alpha, Beta, ,  and , which are defined as follows: : Population size, controlling the number of individuals in the population.: Iteration, controlling the number of iterations in the algorithm.Alpha: Probability with which controlling individuals are updated with the global optimal individual, decimals in the (0, 1) interval.Beta: Probability with which controlling individuals are updated with their best solution of history, decimals in the (0, 1) interval.In this paper, Beta = 1 − Alpha.: Mutation probability of individuals, decimals in the (0, 1) interval.: Mutation probability of the process sequence of an individual, decimals in the (0, 1) interval.: Mutation probability of the machines of an individual, decimals in the (0, 1) interval.
Based on the above description, a flowchart of PSO with a seven-layer encoding structure for BV-IPPS is shown in Figure 5.

Experiment 1: Batch and Transport.
A lathe manufacturer receives an order.Several shaft parts must be processed.The minimum length of the shaft parts is 300 mm.The maximum length of the shaft parts is 900 mm.There are five types of shaft parts:  1 - 5 .The batch of each shaft part is 20, 10, 10, 30, and 20.There are six machines:  1 - 6 .There are three workshops:  1 - 3 . 1 and  2 are located in  1 ,  3 and  4 are located in  2 , and  5 and  6 are located in  3 .There are six vehicles:  1 - 6 .There are six process methods:  1 - 6 .There are thirteen process routes:  1 - 13 . 1 ,  2 ,  1 and  2 are located in  1 at time zero,  3 ,  4 ,  3 and  4 are located in  2 at time zero, and  5 ,  6 and  5 are located in  3 at time zero.The makespan is the objective to be minimized.PSO is used to solve the BV-IPPS problem.The process routes of each workpiece are provided in Tables 2-6.The transport time between workshops is provided in Table 7.The process time and transport time are specified in minutes.Generating Pf ∈ (0, 1) randomly

Assumptions
(1) All machines are idle at time zero; (2) Workpieces are processed according to the process sequence; (3) Waiting periods between processes are allowed; (4) Machines will never break down.

Mathematical Problems in Engineering
Table 2: Process routes of 1.
Process route

Results and Analyses.
In this study, parameters of PSO are set:  = 300,  = 500, Alpha = 0.5, Beta = 0.5,  = 0.1,  = 0.5, and  = 0.5.Equal batch splitting is adopted, and the maximum lot number is four.The C# programming language is used to create the algorithm.The runtime is 75 seconds (CPU: 2.6 GHz, dual-core, RAM: 3 GB).The best solution is shown in Table 8.The makespan of the best solution is 66 min.The curve of the makespan of the optimal solution in each iteration is shown in Figure 6.The Gantt chart of the best solution is shown in Figure 7.
The best solution within the vehicles is shown in Table 8; for example, the first and second processes of  43 are not carried out in the same workshop. 1 is selected to transfer  43 from  2 to  1 according to formula (7).In another example, the third and fourth processes of  52 are both performed in  1 .Thus, a vehicle is not needed between these two processes.
(1) Batch.For the above problem, if workpieces are processed without considering batch splitting, the makespan is 82 min, which is longer than 66 min.The Gantt chart of the best solution without considering batch splitting is shown in Figure 8. Machines will work for prolonged periods of time.If batch splitting is adopted, each sublot of the workpieces can be processed concurrently.Therefore, the completion time of each sublot of the workpieces is shorter.
(2) Limited Vehicles.Figure 7 shows that vehicles and machines are scheduled simultaneously.With regard to the transport time of an empty vehicle,  4 is used to transfer  12 when the first process of  12 has been completed.In the twentieth minute,  4 is not in workshop  2 .However,  4 is located in workshop  2 , which is used to process the first process of  12 .Therefore,  4 must travel to  2 first.Thus, the transport time of empty vehicle  4 is generated.Then,  12 is transferred by  4 from workshop  2 to  1 .
The amounts and locations of vehicles are considered in the IPPS problem simultaneously in this paper.The result is more realistic for determining the real scheduling solution than the best solution obtained by solving the basic IPPS problem.

Experiment 2: Equal Batch Splitting and Fixed Batch
Splitting.To make the comparisons between the two batch splitting strategies more distinct, transport factors will be ignored in experiment 2, which involves two different scale samples.The assumptions are the same as those in experiment 1.As space is limited, several important parameters of the samples are provided in Table 9.The algorithm parameters are provided in Table 10.
In Table 9, "VRN" represents the value range of the number of procedures of each process route and "VRT" represents the process time range of each process.
Two samples are calculated 100 times for each batch splitting strategy.The results of the different batch splitting strategies are provided in Table 11.
(1) Sample 1.The makespan obtained by adopting equal batch splitting and setting the maximum lot number equal to four is better than other results obtained by adopting fixed batch splitting in sample 1.The lot number and batch of each workpiece are constant values in fixed batch splitting.This may lead to an imbalance between the machine and load.The lot number of each workpiece can be changed in equal batch splitting.Thus, equal batch splitting is more flexible than fixed batch splitting.The result obtained by adopting equal batch splitting is superior to that obtained with fixed batch splitting.
(2) Sample 2. The makespan obtained by adopting equal batch splitting and setting the maximum lot number equal to five is not the best makespan of all batch splitting strategies in sample 2. Sample 2 is a large-scale problem.Each workpiece can be divided into five types of lot numbers.The number of batch division results obtained by adopting equal batch splitting in sample 2 is 9536 (5 10 /4 5 ) times the number of batch division results obtained by adopting equal batch splitting in sample 1.Therefore, it is more difficult to achieve a smaller makespan by adopting the equal batch splitting strategy due to large-scale problems.

Conclusions
In this paper, main works are summarised as follows.
(1) This study considered batches and transportation in the IPPS problem simultaneously.The equal batch splitting strategy is used to split the batch of each workpiece.A BV-IPPS problem considering equal batch splitting and a limited number of vehicles is proposed.The makespan is taken as the objective to be minimized, and a mathematical model for the BV-IPPS problem is established.
(2) Due to the complexity and discreteness of the BV-IPPS problem, a PSO within a multilayer encoding structure is proposed to solve the problem.Each module of the algorithm is designed, and a flowchart of the algorithm is given.
(3) The above model and algorithm are validated experimentally.The results show that the makespan obtained by adopting an equal batch splitting strategy in the BV-IPPS problem is superior to that obtained with no splitting.Additionally, transportation is considered in the IPPS problem.The best solution obtained by scheduling vehicles and machines simultaneously is more feasible for determining the real scheduling solution than the best solution obtained by scheduling machines only.Additionally, some future works will be carried on.
(1) The result obtained using the equal splitting batch strategy in the BV-IPPS problem is better than that obtained with the fix splitting batch strategy.However, according to the experimental results, due to the larger search space in the larger-scale samples, it may be more difficult to find a better solution with the equal splitting batch strategy.In future research, we will focus on improving the algorithm.Specifically, more advanced algorithms will be developed to address large-scale BV-IPPS problems.
(2) BV-IPPS problem is a static scheduling problem in this paper.In order to make IPPS problem more in line with practical manufacturing environment, some dynamic factors will be considered in IPPS problem.For example, new job inserting, job cancelling or machine breakdown will be considered.

Figure 1 :
Figure 1: Processing flow of a scheduling solution.
Model.Based on the above descriptions, a BV-IPPS model is proposed.The following parameters are defined to establish the model for the problem: : Number of workpieces; : Number of machines; : Number of vehicles; : Number of workshops; : Number of process routes;

Figure 3 :
Figure 3: Example of swapping and correction.

Figure 4 :
Figure 4: Example of changing for a machine.
Initialing M, D, Alpha, Beta, Pm, Ps, Pa, Pt; initialing the first population Decoding; saving the global optimal individual and best solution of history of each individual Using POX to update the ith Pf < Alpha?individual with the global optimal individual; i++ Generating Pmf ∈ (0, 1) randomly i = M? Using POX to update the ith individual with the best solution of history of the ith individual; Yes Putting the jth individual into the next population; j++ Mutating the jth individual based on Ps and Pa Pmf < Pm?

Figure 5 :
Figure 5: Flowchart of PSO with a seven-layer encoding structure for BV-IPPS.

Figure 6 :
Figure 6: Curve of the makespan of the optimal solution in each iteration.
: Workshop in which   is located;   : Current workshop in which   is located;   : Earliest time at which   can be used;   : Earliest time at which   can be processed;  V :   is chosen for   .The starting time of the Vth process of   , which is processed on   , V ∈ [1,   ];  V :   is chosen for   .The process time of the Vth process per one piece of   , which is processed on   ;  V :   is chosen for   .The completion time of the Vth process of   , which is processed on   ;   : Completion time of   ;      : Transport time of   , which travels from    to    ,   ∈ [1, ],   ∈ [1, ];   : Earliest time at which   can be used;   : Boolean value.If   is chosen for   , the value is 1; otherwise, it is 0;  V : Boolean value.If the Vth process of   is processed on   , the value is 1; otherwise, it is 0; 1, ];   : Number of processes of   ;   : Lot size of   ;   : Lot number of   ;   : Lot size of   ;

Table 7 :
Transport time between workshops.

Table 9 :
Two samples of Experiment 2.

Table 10 :
Algorithm parameters of the two samples.

Table 11 :
Results of the different batch splitting strategies.