Next Article in Journal
Quo Vadis Machine Learning-Based Systems Condition Prognosis?—A Perspective
Previous Article in Journal
A Metamodeling Approach for IoT Forensic Investigation
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Flexible Networked Machine Integrated Scheduling Algorithm Based on the Dynamic Root Node Operation Set Considering Reverse Scheduling

1
School of Computer Science and Technology, Harbin University of Science and Technology, Harbin 150080, China
2
School of Information Science and Engineering, Linyi University, Linyi 276000, China
*
Author to whom correspondence should be addressed.
Electronics 2023, 12(3), 526; https://doi.org/10.3390/electronics12030526
Submission received: 22 November 2022 / Revised: 8 January 2023 / Accepted: 18 January 2023 / Published: 19 January 2023

Abstract

:
Aiming at the problem that the previous flexible machine network integrated scheduling algorithm only considers positive sequence scheduling, which leads to the extension of product completion time, a reverse-order machine network integrated scheduling algorithm based on the dynamic root node operation set is proposed. In order to avoid the constraints of multi-predecessor operations in the process of forward-order scheduling, an encoding method based on dynamic root node operation set is proposed to ensure the validity of constraints among operations. The crossover methods based on crossover row vector and subtree are proposed to ensure the legitimacy of offspring individuals. The chaotic mutation method based on sibling operation and the random mutation method based on mutation row vector are proposed, respectively, to ensure the diversity of the population. A local search strategy based on the critical operation machine set is proposed, which enhances the search ability of the algorithm for optimal solutions. The comparative experimental results show that the proposed algorithm’s solving speed and solution quality outperform other comparison algorithms.

1. Introduction

In the traditional manufacturing process, processing [1,2] and assembly [3,4] are regarded as two independent stages. The current research on the problem mainly focuses on the processing stage, such as the flow shop scheduling environment [5,6] and the job-shop scheduling environment [7,8]. With the increase in the diversified demands of society, the orders of multiple varieties and small batches are gradually increasing. Driven by this diversified demand environment, a new production scheduling mode is needed to meet the needs of the people’s personalized customized products. In this way, integrated scheduling [9] emerges as the times require, which unifies the machining process and assembly process of a product into a processing process, and maps complex products into a virtual processing operation tree. Since the linear processing constraints and assembly constraints among operations are considered at the same time, the integrated scheduling problem has important research significance and practical application value in shortening the product manufacturing cycle and improving the efficiency of the production system.
At present, researchers focus more on the integrated scheduling problem in the direction of simple products [10,11], but relatively less research on the complex product integrated scheduling problem with multi-layer tree structure. The comprehensive scheduling algorithm used in the research process is mainly divided into two categories: Heuristic rule algorithm and intelligent optimization algorithm. In the first type of comprehensive scheduling algorithm based on heuristic rules, there are different dispatching rules. In this type of algorithm, a series of algorithms based on the product process tree are proposed, and the problems involved include general product integrated scheduling [12,13], integrated scheduling with special process constraints [14,15], and special single workshop comprehensive scheduling problem of equipment [16,17], and comprehensive scheduling problem of distributed multi-workshop production environment [18,19,20], etc. However, the above algorithms have certain defects. The first type of algorithm uses rule-based scheduling algorithms, which are more dependent on the processing structure of the product process, and it is difficult to adapt to the differences between different examples. Moreover, the scheduling scheme does not have diversity, and the quality of the solution cannot meet the needs very well. In the second type of algorithm, the solution to the comprehensive scheduling problem must first meet the complex priority constraints, so that the existing coding methods and evolutionary operators cannot achieve the expected results, and thus make this type of algorithm in the actual problem-solving process. restricted to a certain extent. While Wang et al. [21] and Wang et al. [22] proposed different solutions based on genetic algorithms, both of these two schemes cannot avoid the detection and repair of infeasible chromosomes generated by coding and genetic operators, making the calculation of the algorithm larger volume and lower operating efficiency. Zhao, Han and Wang [23] proposed to realize the comprehensive scheduling of products by virtualizing the level of parts and coding according to the level of partition. The algorithm first sets different grades for the components of each part of the product, and then partitions them according to different grades, and then encodes the components according to different partitions. While this coding method can improve the initial solution to a certain extent, it is feasible, but this encoding method increases the constraints of the realization process of some processes, resulting in a reduction in the space of feasible solutions and an increase in the possibility of leaving the optimal solution. Shi and Zhao [24] proposed a genetic algorithm solution based on constraint chain coding. The coding method designed ensures the feasibility and completeness of the initial solution space, but the crossover and mutation operations designed by it will produce an impossible solution, requiring additional detection and repair work. Lei, Guo and Song [25] proposed a comprehensive scheduling algorithm based on the process relationship matrix table. The algorithm first establishes a process relationship matrix table for the product, and then designs the corresponding coding rules and evolution operators based on the table. Shi, Zhao and Meng [26] proposed an algorithm that mixed the improved bottleneck equipment switching strategy and genetic algorithm, but it needs to perform different operations on different infeasible chromosomes to achieve the repair effect.
The flexible machine network integrated scheduling problem extends the traditional flexible integrated scheduling problem [27,28], that is, all kinds of machines providing processing services are no longer limited to the same physical location. Therefore, it is necessary to pay attention to the physical location of the process in practical applications and the transportation process between equipment resources. However, most of the equipment resources in the comprehensive scheduling problems studied by previous studies are geographically located in the same workshop or enterprise, and the designed algorithm ignores the process transportation between the equipment or includes the transportation time in the processing time. Such an assumption is not in line with the actual cloud manufacturing production environment and affects the final scheduling results. Therefore, in order to solve the problems faced by flexible equipment in network production scenarios, we propose a comprehensive scheduling solution for reverse-sequence equipment networks based on root node process sets that can meet real-time changes. Aiming at the priority processing constraints existing in complex products, combined with the reverse order scheduling method, a coding method that supports real-time changes based on the root node process set is given. In order to ensure that the population individuals conform to the corresponding rules during the evolution process, two available crossover and mutation operators are given, respectively.

2. Problem Description

In general, the comprehensive scheduling problem of tree-structured complex products in the flexible equipment network production scenario can be understood as: A tree-structured complex product that contains n processes that can be completed and requires multiple interconnected processing equipment for collaborative production. For example, Figure 1 shows the process of a product being processed into a finished product through multiple processes. Each process includes three different parts, which are the name of the process, the set of equipment to be used in the processing process, and the process required for the process. The transportation time between the devices in Figure 1 is shown in Table 1. The work of this paper is to reasonably arrange the scheduling sequence of each process and the corresponding processing equipment to reduce the time spent on product processing. Assuming that the selectable process set is O i 1 i n , the selectable equipment set of process O i is M i 1 i n 1 , 2 , , m and M i ϕ , p i k is the time it takes for process O i to process products through equipment m k M i .   T M k , M l is the transportation time between equipment M k and M l . The processing sequence between processes is executed according to the order specified by the constraint relationship set C = O i , O j | O i , O j 1 , 2 , , n , it means that only Process O i processing operation is completed, O j can perform processing operation. s i and c i represent the processing start time and end time of O i   , respectively. x i k = 1 means that the process O i is processed on the equipment m k M i , otherwise it is 0; y i j = 1 means that the processes O i and O j are processed on the same equipment, and the process O i is the immediate preceding process of the process O j , that is, the process O j starts processing after the processing of operation O i is completed, otherwise it is 0.
The objective function
min c m a x = max c i i = 1 ,   ,   n
is constrained by conditions
k M i x i k = 1 , i = 1 ,   ,   n
p i = k M i x i k p i k , i = 1 ,   ,   n
s i max c j + T m i , m j , j , i C ,   i ,   j = 1 ,   ,   n
c i = s i + p i , i = 1 , , n
y i j + y j i x i k + x j k 1 , i ,   j = 1 , , n ,   i j   a n d   k M i M j
s j s i + p i 1 y i j L , i ,   j = 1 , , n ,   i j   a n d   M i M j
s i 0 , i = 1 , , n
Equation (1) shows how to make the product completion time the shortest. Equation (2) shows that no matter which process, O i can only be processed by certain equipment in M i . Equation (3) is the time required for process O i to process products. Equation (4) shows that any process O i must follow the prescribed order and the product to be processed in this process must reach the corresponding equipment before the product can be processed; Equation (5) is the time required for process O i to process the product. Equations (6) and (7) indicate that, if a device can perform two different processing procedures, the processing sequence will be carried out after the procedure. Equation (8) shows that the execution time of each process must conform to the actual scene.

3. Algorithm Design

The previous positive-sequence integrated scheduling algorithms all start scheduling from leaf nodes, which leads to the fact that when the scheduling algorithm was executed, the start processing time of a certain operation may be constrained by the completion time of multiple predecessor operations, and it is difficult to reasonably arrange these related operations, resulting in unsatisfactory scheduling results. Therefore, in this paper, we first adopt the framework of the genetic algorithm, learn from the method of reverse order scheduling to obtain the scheduling scheme with the optimal solution, and execute the final scheme according to the forward order scheme.

3.1. The Representation Method of Individual

The pre-solved problems of the scheme proposed in this paper involves the sub-problem of operation arrangement and the sub-problem of machine selection. Therefore, in this paper, we apply the individual representation method to the double chain, that is, use the process chain and the equipment chain to jointly represent the individuals in the population, as shown in Figure 2. For the sub-problem of operation arrangement, we use the operation chain π to represent it, that is, π(i) means that the process Oπ(i) is ranked in the ith position of the process chain. For the sub-problem of machine selection, we use machine chain ρ to represent it, that is, ρ(i) indicates that the operation Oi is processed on the machine ρ(i).

3.2. Encoding

In this paper, we use the idea of reverse scheduling to pre-schedule the complex products. Therefore, for a tree that can display the product processing process, the root node indicates the beginning of scheduling, and the completion of all leaf nodes indicates that the product has been scheduled. Firstly, aiming at the sub-problem of operation scheduling, that is, the arrangement of each operation on the operation chain π, this paper proposes a real-time coding method using the process set on the root node. The coding process includes the following four sub-processes:
Step 1: Obtain the current root node operation set. Initially, the root node operation set has only one element, that is, the root node process;
Step 2: Obtain the current operation to be scheduled, that is, randomly select a root node from the current root node operation set for scheduling;
Step 3: Update the current root node process set, and add the processes in the child nodes of the currently selected process to the root node process set;
Step 4: Determine whether the process set of the root node is empty, if it is empty, it indicates that the process chain coding is completed, otherwise, skip to Step 1.
For the processing equipment corresponding to each process, this paper adopts the idea of roulette selection strategy. When a device takes less time to process a product, it is more likely to be used next. Through the above two steps, we can encode a complex product into a reasonable and feasible individual, and Figure 3 is an example of encoding for the product shown in Figure 1.

3.3. Decoding

For any individual in the population, this paper proposes a decoding method that applies the earliest possible start processing time to the decoding process to decode the individual into a specific scheduling scheme. Since the operation chain π specifies when the process should be scheduled, the machine chain ρ specifies the processing machine corresponding to the operation. Therefore, we obtain each operation in turn from left to right and obtain the corresponding machine. Therefore, we obtain each process in turn from left to right and obtain the processing equipment corresponding to the process. Then, in the order from the first idle time to the last idle time, each process is processed at the earliest in the corresponding equipment. The detailed decoding steps designed in this paper are as follows, and a specific example is shown in Figure 4.
Step 1: Obtain the attribute information of operations, and set the pre-start processing time p _ s i of the process O i to 0, where 1 i n .
Step 2: Read a process gene in the process chain sequentially from left to right, set the process corresponding to this gene as O i , read the equipment chain to obtain the processing equipment corresponding to this process as M k , and the processing time as t i k , D i , j is the migration time for transporting process Oi from its processing equipment to the processing equipment corresponding to Oj.
Step 3: Calculate the time when the actual processing operation of the operation Oi starts and the time when the processing operation ends. Find each idle time on the equipment M k in the order from the first idle time to the last idle time, that is, [ t s , t e ], and then compare the idle time with the time required for the process to be executed, if max p _ s i ,   t s + t i k t e , so that the actual start processing time S i = max p _ s i , t s of process O i , otherwise, continue to compare the next idle time with the time required for the process to be executed. If the process execution condition is not met until the last idle time, the process will be executed on the device after other processes are executed. At this time, S i = max p _ s i ,   c k , where c k is the time when the last process on the device M k ends. The time C i = S i + t i k at which the execution of the actual machining operation of the operation O i ends.
Step 4: Reassign the pre-start processing time of the next process to be executed after process O i . Read the product process partial sequence relationship table to obtain the next process to be executed after the process O i . Assume that the next process to be executed after the currently acquired process Oi is Oj, then the pre-start execution time of the reassigned process Oj  p _ s j = max p _ s j ,   C i + D i , j , where D i , j is the migration time for transporting process O i to the equipment corresponding to process Oj.
Step 5: Judge whether the reading of the chromosome is completed. If the reading is completed, the decoding process ends and the product processing process is completed; otherwise, skip to Step 2.

3.4. Selection Method

We use a tournament selection strategy to select two parent chromosomes that participate in evolution, and the individual with the smallest completion time is selected as the parent chromosome. At the same time, the elite retention strategy is applied in the algorithm, so that the optimal individual at this stage is directly selected into the next generation population.

3.5. Crossover Method

In this paper, we adopt the crossover strategy of generating four-children, that is, generating four child chromosomes from two parent chromosomes. Based on position and operation, we give two crossover methods, namely the multi-child crossover method based on crossed row vector and the multi-child crossover method based on subtree. The algorithm randomly executes the above two crossover strategies during the execution process. If the number of chromosomes in the population reaches the individual maximum value, the crossover process is terminated. The detailed process of the implementation of the two crossover methods is as follows.
(1)
Multi-child crossover method based on crossed row vectors
Step 1: Two parent chromosomes involved in evolution are generated by the selection strategy described in this paper, assuming that the selected parent chromosomes are P1, P2;
Step 2: Randomly generate a 0–1 sequence with the same length as the chromosome operation chain as the recombination marker, 0 indicates that the position is not recombined, and 1 means that the position is recombined;
Step 3: Generate child chromosomes V 1 1 ,   V 2 1 ,   V 1 2 ,   V 2 2 from the parent chromosomes P1 and P2 respectively, and the specific generation method is as follows.
(a) Generation of child chromosome V 1 1 : The machine chain of the child chromosome V 1 1 is completely inherited from the machine chain of the parent chromosome P1, and in the process chain, how to arrange the process on which the recombination flag bit is 1 is specified by the parent chromosome P2, and the sequence of operations on the recombination flag bit 0 is exactly the same as that in the parent chromosome P1. The specific crossover method of the operations that needs to be recombined in the operation chain is: obtain the recombination gene sequence corresponding to the process corresponding to the position where the recombination flag bit is continuously 1, and the gene in the recombination sequence is placed in the gene corresponding to the position of the process chain in the child chromosome V 1 1 , and the placement order is specified by the parent chromosome P2. The recombination string corresponding to other continuous recombination markers is obtained in turn, and the recombination is carried out in the above way to generate the final individual.
(b) Generation of child chromosome V 2 1 : The machine chain in the child chromosome V 2 1 is completely inherited from the machine chain in the parent chromosome P2, and the ordering of the procedures with the operations on the recombination flag bit 1 in the operation chain is specified by the parent chromosome P1, and the recombination The sequence of the processes on the flag bit 0 is exactly the same as that in the parent chromosome P2. The specific recombination method of the operations that needs to be recombined in the process chain is: obtain the recombination gene sequence corresponding to the process corresponding to the position where the recombination flag bit is continuously 1, and the gene in the recombination sequence is placed in the gene corresponding to the position of the process chain in the child chromosome V 2 1 , and the placement order is specified by the parent chromosome P1. The recombination string corresponding to other continuous recombination markers is obtained in turn, and the recombination is carried out in the above way to generate the final individual.
(c) Generation of child chromosome V 1 2 : The operation chain in the child chromosome   V 1 2 is completely inherited from the process chain in the parent chromosome P1, and the machines corresponding to the operations whose recombination flag is 1 in the machine chain is designated by the parent chromosome P2, the machine corresponding to the operation on which the recombination flag is 0 is exactly the same as that in the parent chromosome P1. The recombination process of the machine chain is as follows: The operations corresponding to the positions where the recombination flag is continuously 1 is obtained as the new recombination gene sequence, and the processing machine required for each operation in the recombination string in the child chromosome V 1 2 is specified by the parent chromosome P2, The recombination strings corresponding to the other consecutive recombination flags of 1 are sequentially obtained and recombined in the above manner to generate the final individual.
(d) Generation of child chromosome V 2 2 : The operation chain in the child chromosome V 2 2 is completely inherited from the operation chain in the parent chromosome P2, and the machine corresponding to the operation whose recombination flag is 1 in the machine chain is designated by the parent chromosome P1, the machine corresponding to the operation on which the recombination flag is 0 is exactly the same as that in the parent chromosome P2. The specific recombination method of the machine chain is as follows: The operation corresponding to the position where the recombination flag is continuously 1 is obtained as the new recombination gene sequence, and the processing machine required for each operation in the recombination string in the child chromosome V 2 2 is designated by the parent chromosome P1. The recombination strings corresponding to the other consecutive recombination flags of 1 are sequentially obtained and recombined in the above manner to generate the final individual.
Figure 5 shows four child chromosomes generated by the above steps for two randomly generated parent chromosomes.
(2)
Multi-child crossover method based on subtree
Step 1: Two parent chromosomes involved in evolution are generated by the selection strategy described in this paper, assuming that the selected parent chromosomes are P1, P2.
Step 2: Randomly obtain all operations in a subtree as the current crossover operation string; Step 3: Generate child chromosomes V 1 1 ,   V 2 1 ,   V 1 2 ,   V 2 2 from the parent chromosomes P1 and P2, respectively, and the specific generation method is as follows.
(a) Generation of child chromosome V 1 1 : The machine chain in the child chromosome V 1 1 is completely inherited from the machine chain in the parent chromosome P1. The sequence of each operation sequence of the crossover operation string in the operation chain is specified by the parent chromosome P2, and the sequence of the remaining operations is exactly the same as that in the parent chromosome P1.
(b) Generation of child chromosome V 2 1 : The machine chain in the child chromosome V 2 1 is completely inherited from the machine chain in the parent chromosome P2. The sequence of each operation sequence of the crossover operation string in the operation chain is specified by the parent chromosome P1, and the sequence of the remaining operations is exactly the same as that in the parent chromosome P2.
(c) Generation of child chromosome V 1 2 : The operation chain in the child chromosome V 1 2 is completely inherited from the parent chromosome P1. The machine corresponding to the process in the crossover operation string in the machine chain is designated by the parent chromosome P2, and the machine corresponding to the remaining operations is exactly the same as that in the parent chromosome P1.
(d) Generation of child chromosome V 2 2 : the operation chain in the child chromosome V 2 2 is completely inherited from the parent chromosome P2, the machine corresponding to the process in the crossover operation string in the machine chain is designated by the parent chromosome P1, and the machine corresponding to the remaining operation is exactly the same as that in the parent chromosome P2.
Figure 6 shows four child chromosomes generated by the above steps for two randomly generated parent chromosomes.
(3)
Analysis of the crossover method
In the above two methods, part of the operation chain or machine chain of the individual offspring is designated by another parent chromosome. Since the individuals in the population are all legal chromosomes, that is, the scheduling order between operations satisfies the priority constraint relationship, and the corresponding processing machine is also legal processing machine, the individuals generated by the above two methods are also legal individuals.

3.6. Mutation Method

(1)
Chaotic mutation based on sibling operations
Step 1: Randomly select a process and its sibling operations, take each sibling operation as the bottom element of the stack, and add the descendant nodes of each sibling operation in the parent chromosome to its corresponding gene stack according to the order from front to back, so as to ensure that some processes in the same stack can be executed first under the influence of constraints, and the execution order of processes in different stacks will not be affected by constraints.
Step 2: Delete the selected operation and its corresponding processing machine in the parent chromosome.
Step 3: Randomly pop the top element of the stack and insert it into the last free position of the process chain in the child chromosome and re-determine which device should be processed for it according to the roulette selection strategy, repeat the above steps until all stacks are. If no element is present, it will no longer mutate.
An example of the encoding process of the encoding method introduced in this article is shown in Figure 7, wherein operation O12, O11 and O13 are sibling operations.
(2)
Random mutation based on mutation row vector
Step 1: Randomly generate a mutation row vector, in which the elements are 0 or 1, and there is only one 1, which is used to identify the mutation position, and the operation sequence after the mutation position is the mutation gene sequence.
Step 2: Put the processes in the mutant gene sequence into different queues from front to back, so that the processes in the same queue are affected by the constraints, and the processes not in the same queue are not affected by the constraints.
Step 3: Randomly dequeue elements in different queues to generate mutated operation substrings and select the processing machine for them according to the roulette selection strategy. Repeat the above steps and specify that all queues are empty, and the mutation no longer takes place.
Figure 8 is the process of producing new individuals by the above mutation method.
(3)
Analysis of the mutation method
In the above two mutation methods, the generation of the mutation string relies on stacks or queues, and the application of stacks or queues ensures that the operation of the final generated substrings satisfy the priority processing constraint relationship. Therefore, the two mutation methods designed in this paper will not produce infeasible individuals.

3.7. Local Search

This paper uses the local search method to increase the efficiency of the algorithm to retrieve the optimal solution better and faster. Specifically, to obtain the critical path corresponding to the optimal individual plan, first change the equipment corresponding to the process one by one in the order from the first process to the last process, then compare the advantages and disadvantages of the old and new scheduling plans, and finally retain the optimal plan as the latest scheme.

3.8. The Conversion Strategy Based on Completion Time Flipping

As the idea of reverse order scheduling is adopted in this paper, when an individual is decoded as a specific scheduling scheme, the generated Gantt chart is still in the form of reverse order. In order to obtain a positive sequence scheduling, we adopt the conversion strategy based on the completion time flipping [29] that we previously proposed. When the proposed conversion strategy is used to convert the scheduling scheme shown in Figure 4, the final positive scheduling scheme is shown in Figure 9.

3.9. Algorithm Process

As shown in Figure 10, the algorithm designed in this paper randomly performs crossover and mutation operations during operation. If the objective function value corresponding to the optimal individual of the population is not improved in consecutive G generations, the algorithm terminates.

4. Experimental Results

In order to better demonstrate the advantages of the algorithm proposed in this paper, comparative experiments are set up in this chapter. We generated 100 calculation examples by randomly selecting parameters such as the number of processes and the amount of equipment. Among them, the value range of the number of processes is [50, 100], the value range of the number of equipment is [4, 8], the range of time consumed by the process moving between different devices is [1, 10], and the processing time of the process is [1, 20], the number of product process tree layers is [2, n / 2 ], which is the number of processes in the current process tree.

4.1. Parameter Setting

This chapter adopts the Taguchi experimental design method to test which set of parameters makes the algorithm perform better [30]. Firstly, it is tested by using the calculation example I_85_5_1, 85_5, which indicates the running time and the size of the amount of data involved (n = 85, m = 5), and one indicates the first calculation example mentioned in this paper. There are four parameters that need to be focused on in this algorithm: Population size (Ps), crossover probability (Pc), mutation probability (Pm), G (If the current solution of the algorithm does not become better in consecutive G generations, then Algorithm execution stops). Four levels of impact factors are divided, and the combinations of different parameter values are shown in Table 2. Select the orthogonal array L16(44). For each different parameter combination, the algorithm needs to be run 30 times, and the average completion time obtained from 30 runs is taken as the experimental index. The final experimental results are shown in Table 3. The changes of the experimental indicators affected by each parameter are shown in Figure 11.
According to Table 3 and Figure 11, the following conclusions can be drawn. First, by analyzing Figure 11, we can clearly observe that the parameter Ps has the most obvious influence on the algorithm among the four parameters. The value of Ps changes with the influence factor. When it increases, the average value of the experimental index also changes from 199.51 to 180.08, and the time required to complete the processing also decreases. It can be seen that the optimal value of Ps is n ∗ 4. The second one that has a more obvious impact on the algorithm is G. When the value of G increases with the change of the impact factor, the average value of the experimental index also changes from 192.55 to 187.52. When the G value is 30, the average time required for processing to complete is the smallest. Therefore, in this experiment, set G to 0.9. Then, the third parameter that affects the algorithm is Pc. When the value of Pc increases with the change of the impact factor, the average value of the experimental index changes from 190.55 to 185.63. Different from the first two parameters, with the increase of Pc, the time required for the completion of processing presents a trend of first decreasing, then increasing and then decreasing. When the value of Pc is 0.9, the time required for processing is the shortest. Finally, the parameter that has the least impact on the performance of the algorithm is Pm. When the value of Pm increases with the change of the impact factor, the average value of the experimental index changes from 191.43 to 187.88, and the range of change is 3.55. With the increase of Pm, the time required for processing to complete decreases first and then increases. When the value of Pm is 0.3, the average time required for processing to complete is the least. Through the above analysis, the optimal values of the four parameters of the algorithm described in this chapter should be: Ps = n ∗ 4, G = 30, Pc = 0.9, Pm = 0.3.

4.2. Comparative Experiment

We chose the comprehensive scheduling algorithm CPFS_CJ [9] with priority constraints, the chain scheduling algorithm LSA [31], the comprehensive scheduling algorithm CSA_VCLDC [23] using virtual component level partition coding, and the comprehensive scheduling algorithm based on process relationship matrix table coding ISA_ORMT [25] and ISA_DROS. In terms of the solution quality of the problem as a comparison, the above algorithms are respectively applied to solve the set of examples mentioned in this chapter. All algorithms are implemented by MATLAB programming, the operating environment is 64-bit Win10 operating system, the processor is Intel(R) Core(TM) i7-4810MQ [email protected], and the memory is 16G. The algorithm runs independently for each example in the test set 30 times. In this section, the solution quality and solution speed of the proposed algorithm are compared with those proposed by other researchers.
In the process of solving 100 calculation examples, for each calculation example, when each algorithm is run independently for 30 times, the minimum time required for the completion of product processing is shown in Figure 12, and the average completion time obtained is shown in Figure 13. It shows that most of the change curves of the minimum completion time and the average completion time of the algorithm ISA_DROS proposed in this chapter are located below the entire graph. Figure 14 summarizes the results in Figure 12 and Figure 13. The second set of data is the statistics of the average completion time results shown in Figure 13, in which the algorithm ISA_DROS obtains the optimal solution of 66 instances, the algorithm ISA_ORMT obtains the optimal solution of 22 instances, and the algorithm CSA_VCLDC can only solve 14 instances The optimal solution of the algorithm CPFS_CJ and LSA did not obtain the optimal solution. Since the algorithms CPFS_CJ and LSA are both rule-based heuristic algorithms, we only counted the average running time of several other comparative algorithms, as shown in Figure 15. It can be clearly concluded that the solving ability of the algorithm proposed in this paper is better than other comparison algorithms.
Figure 16 shows the completion time obtained by running the algorithms ISA_DROS, ISA_ORMT and CSA_VCLDC 30 times independently for a single randomly generated instance. Figure 17 shows the running time during the algorithm solution process. It can be seen from Figure 16 and Figure 17 that the algorithm ISA_DROS proposed in this paper is better than the other three algorithms.

5. Conclusions and Future Research

In order to solve the comprehensive scheduling problem faced by complex products with tree structure in the flexible equipment network scenario, this paper combines the genetic algorithm and dynamic scheduling algorithm to propose a reverse sequence equipment network comprehensive scheduling algorithm based on the dynamic root node process set. First, in order to facilitate the design of the algorithm, based on the idea of reverse order scheduling, a real-time encoding method using the root node process set is given to ensure the availability and excellence of the population individuals in the initial state. Then, two corresponding crossover and mutation methods are given by using position and operation, which ensures that infeasible solutions will not be generated in the process of population evolution and avoids the detection and repair of additional infeasible solutions. A simple decoding method using the earliest available completion time and the positive sequence conversion strategy of the optimal scheduling scheme is given. After comparing the algorithm with the algorithms proposed by other researchers, the algorithm has higher performance in obtaining feasible solutions and is more in line with the actual application scenario.
At present, there are still relatively few integrated scheduling solutions based on intelligent optimization algorithms, and the integrated scheduling problems involved are still limited. Therefore, in the future, we can try to introduce other intelligent optimization algorithms into the processing of comprehensive scheduling problems. This article does not consider the problem that multiple products are processed concurrently, and the order arrival event cannot be accurately determined in the process of dealing with the problem. Therefore, in the next research work, a more reasonable solution should be designed to solve this problem.

Author Contributions

Conceptualization, Q.W. and Z.X.; methodology, Q.W.; software, Y.G.; formal analysis, Q.W.; investigation, Q.W. and Y.G.; resources, Z.X.; writing—original draft preparation, Q.W.; writing—review and editing, Z.X.; visualization, Y.G.; supervision, Z.X.; funding acquisition, Z.X. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the National Natural Science Foundation of China [grant numbers 61772160, 61370086].

Data Availability Statement

Not applicable.

Conflicts of Interest

The authors declare no conflict of interest. The funders had no role in the design of the study; in the collection, analyses, or interpretation of data; in the writing of the manuscript; or in the decision to publish the results.

References

  1. Baxendale, M.; McGree, J.M.; Bellette, A.; Corry, P. Machine-based production scheduling for rotomoulded plastics manufacturing. Int. J. Prod. Res. 2021, 59, 1301–1318. [Google Scholar] [CrossRef]
  2. Chen, S.; Pan, Q.-K.; Gao, L. Production scheduling for blocking flowshop in distributed environment using effective heuristics and iterated greedy algorithm. Robot. Comput. Integr. Manuf. 2021, 71, 102155. [Google Scholar] [CrossRef]
  3. Talens, C.; Perez-Gonzalez, P.; Fernandez-Viagas, V.; Framinan, J.M. New hard benchmark for the 2-stage multi-machine assembly scheduling problem: Design and computational evaluation. Comput. Ind. Eng. 2021, 158, 107364. [Google Scholar] [CrossRef]
  4. Wang, H.; Sarker, B.R.; Li, J.; Li, J. Adaptive scheduling for assembly job shop with uncertain assembly times based on dual Q-learning. Int. J. Prod. Res. 2021, 59, 5867–5883. [Google Scholar] [CrossRef]
  5. Ribas, I.; Companys, R.; Tort-Martorell, X. An iterated greedy algorithm for the parallel blocking flow shop scheduling problem and sequence-dependent setup times. Expert Syst. Appl. 2021, 184, 115535. [Google Scholar] [CrossRef]
  6. Lu, C.; Gao, L.; Gong, W.; Hu, C.; Yan, X.; Li, X. Sustainable scheduling of distributed permutation flow-shop with non-identical factory using a knowledge-based multi-objective memetic optimization algorithm. Swarm Evol. Comput. 2021, 60, 100803. [Google Scholar] [CrossRef]
  7. Sha, Y.; Zhang, J.; Cao, H. Multistage stochastic programming approach for joint optimization of job scheduling and material ordering under endogenous uncertainties. Eur. J. Oper. Res. 2021, 290, 886–900. [Google Scholar] [CrossRef]
  8. Tychalas, D.; Karatza, H. SaMW: A probabilistic meta-heuristic algorithm for job scheduling in heterogeneous distributed systems powered by microservices. Clust. Comput. 2021, 24, 1735–1759. [Google Scholar] [CrossRef]
  9. Xie, Z.; Hao, S.; Ye, G.; Tan, G. A new algorithm for complex product flexible scheduling with constraint between jobs. Comput. Ind. Eng. 2009, 57, 766–772. [Google Scholar] [CrossRef]
  10. Komaki, G.M.; Sheikh, S.; Malakooti, B. Flow shop scheduling problems with assembly operations: A review and new trends. Int. J. Prod. Res. 2019, 57, 2926–2955. [Google Scholar] [CrossRef]
  11. Khodke, P.M.; Bhongade, A.S. Real-time scheduling in manufacturing system with machining and assembly operations: A state of art. Int. J. Prod. Res. 2013, 51, 4966–4978. [Google Scholar] [CrossRef]
  12. Xie, Z.; Xin, Y.; Yang, J. Integrated scheduling algorithm based on event-driven by machines’ idle. Chin. J. Mech. Eng. 2011, 47, 139–147. [Google Scholar] [CrossRef]
  13. Gao, Y.; Xie, Z.; Yu, X. A hybrid algorithm for integrated scheduling problem of complex products with tree structure. Multimed. Tool. Appl. 2020, 79, 32285–32304. [Google Scholar] [CrossRef]
  14. Xie, Z.Q.; Teng, Y.Z.; Yang, J. Integrated scheduling algorithm with no-wait constraint operation group. Acta Automatic. Sin. 2011, 37, 371–379. [Google Scholar] [CrossRef]
  15. Wang, Z.; Zhang, X.; Cao, Y.; Lai, G. An integrated scheduling algorithm for multi-device-processes with the strategy of exchanging adjacent parallel processes of the same device. EURASIP J. Wirel. Commun. Netw. 2021, 2021, 104. [Google Scholar] [CrossRef]
  16. Xie, Z.; Xin, Y.; Yang, J. Multi-batch processing integrated scheduling algorithm based on signal driven. Chin. J. Comput. 2013, 36, 818–828. [Google Scholar] [CrossRef]
  17. Zhang, X.; Ma, C.; Wu, J. Multi-batch integrated scheduling algorithm based on time-selective. Multimed. Tool. Appl. 2019, 78, 29989–30010. [Google Scholar] [CrossRef]
  18. Xie, Z.; Yu, J.; Chen, D.; Yang, J. Integrated scheduling algorithm of two workshops based on the principle of the neighborhood rendering. J. Mech. Eng. 2016, 52, 149–159. [Google Scholar] [CrossRef]
  19. Xia, Y.; Xie, Z.; Xin, Y.; Zhang, X. A multi-shop integrated scheduling algorithm with fixed output constraint. J. Intell. Fuzzy Syst. 2021, 41, 4609–4617. [Google Scholar] [CrossRef]
  20. Liao, B.; Lei, Q.; Wu, W.; Song, Y.; Guo, W. Hybrid teaching-learning-based optimization algorithms for integrated scheduling of multi-workshop collaborations. China Mech. Eng. 2020, 31, 1940–1949. [Google Scholar]
  21. Wang, F.J.; Zhao, G.K.; Jia, Z.Y.; Lu, X.H.; Wang, L.P. Assembly job shop scheduling based on feasible solution space genetic algorithm. Comput. Integr. Manuf. Syst. 2010, 16, 115–120. [Google Scholar]
  22. Wang, L.P.; Jia, Z.Y.; Wang, F.J.; Zhao, G. Solving complete job shop scheduling problem using genetic algorithm in feasible domain. J. Dalian Univ. Technol. 2011, 51, 205–209. [Google Scholar]
  23. Zhao, S.; Han, Q.; Wang, G. Product comprehensive scheduling algorithm based on virtual component level division coding. Comput. Integr. Manuf. Syst. 2015, 21, 2435–2445. [Google Scholar]
  24. Shi, F.; Zhao, S. Product comprehensive scheduling problems solved by genetic algorithm based on operation constraint chain coding. China Mech. Eng. 2017, 28, 2483. [Google Scholar]
  25. Lei, Q.; Guo, W.; Song, Y. Integrated scheduling algorithm based on an operation relationship matrix table for tree-structured products. Int. J. Prod. Res. 2018, 56, 5437–5456. [Google Scholar] [CrossRef]
  26. Shi, F.; Zhao, S.; Meng, Y. Hybrid algorithm based on improved extended shifting bottleneck procedure and GA for assembly job shop scheduling problem. Int. J. Prod. Res. 2020, 58, 2604–2625. [Google Scholar] [CrossRef]
  27. Xie, Z.; Shao, X.; Yang, J. Algorithm for integrated flexible scheduling with device-independence deferred constraint. Chin. J. Mech. Eng. 2011, 47, 177–185. [Google Scholar] [CrossRef]
  28. Xie, Z.Q.; Xiao, Z.H.; Jie, Y.; Xie, Z.Y. Conflict mediation algorithm of the integrated flexible scheduling based on device driver. Trans. Beijing Inst. Technol. 2014, 34, 1150–1156. [Google Scholar]
  29. Wang, Q.; Xie, Z.; Gao, Y.; Yu, X. Integrated Scheduling Algorithm for Complex Products Based on the Dynamic Subtree Operation Set Inverse Coding. Res. Sq. 2022, in press. [Google Scholar] [CrossRef]
  30. Montgomery, D.C. Design and Analysis of Experiments; John Wiley & Sons: Hoboken, NJ, USA, 2017. [Google Scholar]
  31. Birgin, E.G.; Ferreira, J.E.; Ronconi, D.P. List scheduling and beam search methods for the flexible job shop scheduling problem with sequencing flexibility. Eur. J. Oper. Res. 2015, 247, 421–440. [Google Scholar] [CrossRef]
Figure 1. The process of processing the product A for the finished product.
Figure 1. The process of processing the product A for the finished product.
Electronics 12 00526 g001
Figure 2. The schematic diagram of the individual encoding structure.
Figure 2. The schematic diagram of the individual encoding structure.
Electronics 12 00526 g002
Figure 3. Example of coding for the product shown in Figure 1.
Figure 3. Example of coding for the product shown in Figure 1.
Electronics 12 00526 g003
Figure 4. The inverse Gantt chart generated by decoding the individual shown in Figure 3.
Figure 4. The inverse Gantt chart generated by decoding the individual shown in Figure 3.
Electronics 12 00526 g004
Figure 5. The offspring individuals obtained by applying the above-mentioned multi-child crossover method based on crossed row vectors.
Figure 5. The offspring individuals obtained by applying the above-mentioned multi-child crossover method based on crossed row vectors.
Electronics 12 00526 g005
Figure 6. The offspring individuals obtained by applying the above-mentioned subtree-based multi-child crossover method.
Figure 6. The offspring individuals obtained by applying the above-mentioned subtree-based multi-child crossover method.
Electronics 12 00526 g006
Figure 7. Schematic diagram of generating progeny individuals by applying the chaotic mutation method based on the sibling process.
Figure 7. Schematic diagram of generating progeny individuals by applying the chaotic mutation method based on the sibling process.
Electronics 12 00526 g007
Figure 8. The offspring individual obtained by applying the above-mentioned random mutation method based on the mutation row vector.
Figure 8. The offspring individual obtained by applying the above-mentioned random mutation method based on the mutation row vector.
Electronics 12 00526 g008
Figure 9. A forward-sequence scheduling Gantt chart with the transformation strategy applied to the schedule shown in Figure 4.
Figure 9. A forward-sequence scheduling Gantt chart with the transformation strategy applied to the schedule shown in Figure 4.
Electronics 12 00526 g009
Figure 10. Algorithm execution process.
Figure 10. Algorithm execution process.
Electronics 12 00526 g010
Figure 11. The trend of algorithm results under different parameters.
Figure 11. The trend of algorithm results under different parameters.
Electronics 12 00526 g011
Figure 12. The minimum time required by each of the five algorithms to process products.
Figure 12. The minimum time required by each of the five algorithms to process products.
Electronics 12 00526 g012
Figure 13. The average time required by each of the five algorithms to process products.
Figure 13. The average time required by each of the five algorithms to process products.
Electronics 12 00526 g013
Figure 14. Figure 12 and Figure 13 summarize the results.
Figure 14. Figure 12 and Figure 13 summarize the results.
Electronics 12 00526 g014
Figure 15. The average running time of the three algorithms running 30 times, respectively.
Figure 15. The average running time of the three algorithms running 30 times, respectively.
Electronics 12 00526 g015
Figure 16. For a random generation example, the completion time obtained by running each algorithm independently for 30 times.
Figure 16. For a random generation example, the completion time obtained by running each algorithm independently for 30 times.
Electronics 12 00526 g016
Figure 17. Solve for the average execution time of the product described in Figure 16.
Figure 17. Solve for the average execution time of the product described in Figure 16.
Electronics 12 00526 g017
Table 1. The transportation time required for movement of the operation between different machines.
Table 1. The transportation time required for movement of the operation between different machines.
M1M2M3M4
M10101510
M21002520
M31525010
M41020100
Table 2. Each algorithm corresponds to the impact factor level.
Table 2. Each algorithm corresponds to the impact factor level.
ParametersFactor Level
1234
Psn × 1n × 2n × 3n × 4
G10203040
Pc0.60.70.80.9
Pm0.10.20.30.4
Table 3. Orthogonal test results.
Table 3. Orthogonal test results.
Experiment NumberFactor LevelIndex
PsGPcPmMakespan Average
11111206.5
21222199.7
31333198.3
41444193.6
52123192.4
62214189.5
72341188.7
82432189
93134191.4
103243180.4
113312185.8
123421187.8
134142179.8
144231182.7
154324177.3
164413180.4
K1798770.2762.2765.7
K2759.6752.3757.2754.3
K3745.4750.1761.4751.5
K4720.3750.8742.5751.8
k1 = K1/4199.51192.55190.55191.43
k2 = K2/4189.89188.18189.31188.58
k3 = K3/4186.36187.52190.35187.88
k4 = K4/4180.08187.69185.63187.94
Range19.435.034.923.55
Rank1234
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Wang, Q.; Xie, Z.; Gao, Y. Flexible Networked Machine Integrated Scheduling Algorithm Based on the Dynamic Root Node Operation Set Considering Reverse Scheduling. Electronics 2023, 12, 526. https://doi.org/10.3390/electronics12030526

AMA Style

Wang Q, Xie Z, Gao Y. Flexible Networked Machine Integrated Scheduling Algorithm Based on the Dynamic Root Node Operation Set Considering Reverse Scheduling. Electronics. 2023; 12(3):526. https://doi.org/10.3390/electronics12030526

Chicago/Turabian Style

Wang, Qian, Zhiqiang Xie, and Yilong Gao. 2023. "Flexible Networked Machine Integrated Scheduling Algorithm Based on the Dynamic Root Node Operation Set Considering Reverse Scheduling" Electronics 12, no. 3: 526. https://doi.org/10.3390/electronics12030526

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop