Flexible job shop scheduling method for reconfigurable manufacturing unit capabilities
By constructing genetic planning individuals with binary tree structures, optimizing the selection, reconstruction and operational sorting of manufacturing units, the problems of manufacturing capacity conversion and operation allocation in the manufacturing system are solved, and efficient scheduling of flexible operation workshops is achieved.
Patent Information
- Application Number
- CN202310531814.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-05-11
- Publication Date
- 2025-08-12
- Estimated Expiration
- 2043-05-11
AI Technical Summary
In a manufacturing system, how to effectively decide on the transformation of manufacturing capacity of the reconfigurable manufacturing unit, the allocation and sorting of operation operations to optimize the operation performance of the manufacturing system, especially to reduce drag periods, maximum construction periods and total running time.
A genetic planning individual based on binary tree structure is constructed, and the selection and reconstruction of manufacturing units are optimized through heuristic methods and operational sorting are optimized. The competition method is used to screen and genetic algorithm evolution, and the optimization fitness evaluation of punishment function is combined to reduce the computational complexity.
It realizes the optimal operating performance in the manufacturing system, reduces the drag period, maximum construction period and total running time, and improves the calculation efficiency of the algorithm.
Smart Images

Figure CN116520786B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of production scheduling, and in particular to a flexible job shop scheduling method oriented to reconfigurable manufacturing unit capabilities. Background Art
[0002] The flexible job shop scheduling problem with reconfigurable manufacturing unit capabilities can be described as follows: a manufacturing system is populated with independent reconfigurable manufacturing units. Each reconfigurable manufacturing unit has multiple interchangeable manufacturing capabilities, and the conversion of manufacturing capabilities requires a certain amount of configuration time. However, each reconfigurable manufacturing unit can only exhibit one manufacturing capability at a time, and the configuration attributes of these reconfigurable manufacturing units are fixed.
[0003] When a group of jobs are processed in a manufacturing system, each job has a release time, which is used to determine when the job is used; at the same time, each job has a specific operation process, and the operations in the operation process need to be processed on a reconfigurable manufacturing unit, and each operation requires a specific manufacturing capability to be processed; all required specific manufacturing capabilities have been included in the existing reconfigurable manufacturing units in the manufacturing system; when operations with the same manufacturing capability requirements are continuously processed on the same reconfigurable manufacturing unit, the reconfigurable manufacturing unit does not need to be reconfigured, but when a reconfigurable manufacturing unit needs to process operations with different manufacturing capability requirements, the reconfigurable manufacturing unit needs to convert its capabilities and consume a certain amount of configuration time.
[0004] Based on the above description, the decisions that need to be made during the entire manufacturing process include: when each reconfigurable manufacturing unit should convert its manufacturing capacity, on which reconfigurable manufacturing unit each operation in the job should be processed, and how each reconfigurable manufacturing unit should sort the operations to be processed. These decisions directly affect the operational performance of the entire manufacturing system. Summary of the Invention
[0005] In response to the above problems, an embodiment of the present invention provides a flexible job shop scheduling method oriented to reconfigurable manufacturing unit capabilities.
[0006] One aspect of the present invention provides a flexible job shop scheduling method for reconfigurable manufacturing unit capabilities, comprising:
[0007] S1. Obtaining the job to be processed, the process in the job, and the configuration parameters of the reconfigurable manufacturing unit;
[0008] S2. Using the obtained configuration parameters, a scheduling model is constructed with the goal of minimizing delay, minimizing maximum duration, and minimizing total running time;
[0009] S3. Using a binary tree structure, establish two heuristic genetic planning individuals, including the selection and reconstruction of reconfigurable manufacturing units and the sorting of current operations in the reconfigurable units, as feasible scheduling solutions for the scheduling model;
[0010] S4. Use the established genetic planning individuals to construct the current population;
[0011] S5. Calculate the fitness of each genetic planning individual in the current population and determine whether the evolution completion condition is met. If yes, execute S7; otherwise, execute S6.
[0012] S6. Based on the fitness, the parent population is selected using the tournament method. The parent population is replicated, crossover, and mutated to obtain a child population. The child population is mixed into the current population and the tournament method is again used to select genetically planned individuals of the same size as the current population as the new current population. Thereafter, the process returns to S5.
[0013] S7. Select the optimal genetic planning individual with the highest fitness in the current population and perform flexible job shop scheduling based on the optimal genetic planning individual.
[0014] The beneficial effects of the present invention are as follows: the decisions that need to be made in the manufacturing process are completed based on heuristics, that is, the priority of each choice at the decision point is generated by heuristics; and the optimization goals are to minimize delays, minimize maximum construction period and minimize total operating time to obtain the optimal individual for flexible job shop scheduling, so as to ensure the performance of the flexible job shop.
[0015] Optionally, the configuration parameters in S1 include:
[0016] Job set J, J = {J1, J2, ..., J n};
[0017] Job index i, i = 1, 2, ..., n, n represents the number of jobs;
[0018] Process index j, j = 1, 2, ..., N i , N i Indicates J i The number of intermediate processes;
[0019] J i The process set O in i , J i Available time r i , J i Delivery time d i , O i,j Process time p i,j ;
[0020] The set of reconfigurable manufacturing units R, R = {R1, R2, ..., R m}, m represents the number of reconfigurable manufacturing units;
[0021] Index k of the reconfigurable manufacturing unit, k=1, 2, ..., m;
[0022] R k The manufacturing capability set C in k , M k Indicates C k The number of manufacturing capabilities in C k Configuration time s k ;
[0023] Index l of manufacturing capability, l = 1, 2, ..., M k .
[0024] Optionally, the scheduling model in S2 includes:
[0025] Express the objective function of minimizing tardiness:
[0026]
[0027] Among them, OBJ1 represents the total delivery time, CT i,j Indicates O i,j completion time;
[0028] The objective function of minimizing the maximum duration is expressed as:
[0029] Min OBJ2=Max{CT i,j}
[0030] Among them, OBJ2 represents the maximum duration;
[0031] Express the objective function of minimizing the total running time:
[0032]
[0033] Among them, OBJ3 represents the total configuration time, TT k Represents R k Number of manufacturing capacity conversions;
[0034] A constraint function that indicates that each operation of all jobs is assigned and will only be processed once:
[0035]
[0036] Among them, x i,j,k If O i,j It is in C k If the above is processed, it is 1, otherwise it is 0;
[0037] A constraint function that ensures that the operations in each job are processed in the specified order:
[0038]
[0039] This is a constraint function that ensures that each job is processed after the release time:
[0040]
[0041] Represents the constraint function that ensures that each operation is assigned to a suitable reconfigurable manufacturing unit:
[0042]
[0043] Among them, w i,j,k If O i,j Able to k If the above process is completed, it is 1; otherwise, it is 0;
[0044] Represents the constraint function that ensures that the reconfigurable manufacturing unit has been reconfigured to the appropriate state when each operation is executed:
[0045]
[0046] Among them, u i,j,k,l If O i,j Able to k Using C k,l If the ability is processed, it is 1, otherwise it is 0; i,j,k,l If O i,j It is in C k Using C k,l If the capability is handled, it is 1, otherwise it is 0;
[0047] Represents the constraint function that ensures that any two operations do not overlap in a reconfigurable manufacturing unit and prevents the reconfigurable manufacturing unit from processing operations during the configuration process:
[0048]
[0049] Among them, θ i,j,i′,j′ If O i,j It is in O i′,j′ If the signal is processed before, it is 1, otherwise it is 0; Ω represents an infinite positive number.
[0050] Optionally, the binary tree structure of each genetic planning individual in S3 contains a terminal set and a function set. The terminal set consists of parameters involved in the operation of the scheduling model, and the function set provides the association relationship between the parameters in the terminal set.
[0051] The leaf nodes in the binary tree structure are composed of terminal sets, and the non-leaf nodes are composed of function sets. The left subtree of the root node in the binary tree structure is used for decision-making on the selection and reconstruction of reconfigurable manufacturing units, and the right subtree is used for decision-making on the sorting of current operations in the reconfigurable units.
[0052] Optionally, the step of calculating the fitness of each genetically programmed individual in the current population in S5 includes:
[0053] Genetic programming individuals are used to simulate the scheduling process, obtain the timetable and then the function value of each objective function, and then the function value of each objective function is weighted and summed to obtain the fitness.
[0054] Optionally, after performing weighted summation of the function values of each objective function to obtain the fitness, the following steps are also included:
[0055] Count the number of nodes num contained in each genetic planning individual in the current population cplx , and take the maximum number of nodes and the minimum number of nodes as the highest complexity max and minimum complexity min , and then use the following expression to calculate the first complexity penalty coefficient PF1 of each genetic planning individual:
[0056]
[0057] Count the number of all operators contained in each genetic planning individual in the current population op and the number of division operators num div , use the following expression to calculate the second complexity penalty coefficient PF2 of each genetic planning individual:
[0058]
[0059] The elements in the terminal set are divided into two categories: dynamic elements and static elements. Static elements refer to data that do not change with the operation of the flexible job shop, and dynamic elements refer to data whose values change with the operation of the flexible job shop. The number of static elements contained in the node of each genetic planning individual is counted. static and dynamic number of elements num dynamic , and use the following expression to calculate the third complexity penalty coefficient PF3 of each genetic planning individual:
[0060]
[0061] Use the following penalty function to adjust the weighted sum to get the final fitness: * :
[0062] Fitness * =Fitness+Fitness×ω PF ×(ω4×PF1+ω5×PF2+ω6×PF3)
[0063] Among them, ω PF is the set percentage, ω4, ω5 and ω6 are the preset weights. BRIEF DESCRIPTION OF THE DRAWINGS
[0064] The drawings described herein are used to provide a further understanding of the present invention, constitute a part of this application, and do not constitute a limitation of the present invention. In the drawings:
[0065] Figure 1 A flow chart of a flexible job shop scheduling method for reconfigurable manufacturing unit capabilities provided by an embodiment of the present invention;
[0066] Figure 2 A framework diagram for solving the shop scheduling problem using an improved genetic programming hyper-heuristic provided by an embodiment of the present invention;
[0067] Figure 3 This is a genetic planning individual example provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0068] In order to make the purpose, technical solutions and advantages of the present invention more clearly understood, the present invention is further described in detail below in conjunction with the embodiments and the accompanying drawings. Here, the exemplary embodiments of the present invention and their descriptions are used to explain the present invention, but are not intended to limit the present invention.
[0069] See also Figure 1 The embodiment of the present invention provides a flexible job shop scheduling method for reconfigurable manufacturing unit capabilities, including:
[0070] S1. Obtain the job to be processed, the process in the job, and the configuration parameters of the reconfigurable manufacturing unit.
[0071] In implementation, the configuration parameters include:
[0072] Job set J, J = {J1, J2, ..., J n};
[0073] Job index i, i = 1, 2, ..., n, n represents the number of jobs;
[0074] Process index j, j = 1, 2, ..., N i , N i Indicates J i The number of intermediate processes;
[0075] J i The process set O in i , J i Available time r i , J i Delivery time d i , O i,j Process time p i,j ;
[0076] The set of reconfigurable manufacturing units R, R = {R1, R2, ..., R m}, m represents the number of reconfigurable manufacturing units;
[0077] Index k of the reconfigurable manufacturing unit, k=1, 2, ..., m;
[0078] R k The manufacturing capability set C in k , M k Indicates C k The number of manufacturing capabilities in C k Configuration time s k ;
[0079] Index l of manufacturing capability, l = 1, 2, ..., M k .
[0080] S2. Using the obtained configuration parameters, a scheduling model is constructed with the goal of minimizing delays, minimizing maximum duration, and minimizing total running time.
[0081] In implementation, the scheduling model includes:
[0082] Express the objective function of minimizing tardiness:
[0083]
[0084] Among them, OBJ1 represents the total delivery time, CT i,j Indicates O i,j completion time;
[0085] The objective function of minimizing the maximum duration is expressed as:
[0086] Min OBJ2=Max{CT i,j}
[0087] Among them, OBJ2 represents the maximum duration;
[0088] Express the objective function of minimizing the total running time:
[0089]
[0090] Among them, OBJ3 represents the total configuration time, TT k Represents R k The number of manufacturing capacity conversions, that is, the number of manufacturing capacity reconstructions. Since the total operation processing time in a fixed job is fixed, this objective function mainly reflects the reconstruction configuration time of the reconfigurable manufacturing unit;
[0091] A constraint function that indicates that each operation of all jobs is assigned and will only be processed once:
[0092]
[0093] Among them, x i,j,k If O i,j It is in C k If the above is processed, it is 1, otherwise it is 0;
[0094] A constraint function that ensures that the operations in each job are processed in the specified order:
[0095]
[0096] It should be noted that the configuration time can be ignored only when two consecutive operations are processed using the same capability on the same reconfigurable manufacturing unit.
[0097] This is a constraint function that ensures that each job is processed after the release time:
[0098]
[0099] Represents the constraint function that ensures that each operation is assigned to a suitable reconfigurable manufacturing unit:
[0100]
[0101] Among them, w i,j,k If O i,j Able to k If the above process is completed, it is 1; otherwise, it is 0;
[0102] Represents the constraint function that ensures that the reconfigurable manufacturing unit has been reconfigured to the appropriate state when each operation is executed:
[0103]
[0104] Among them, u i,j,k,l If O i,j Able to k Using C k,l If the ability is processed, it is 1, otherwise it is 0; i,j,k,l If Oi,j It is in C k Using C k,l If the capability is handled, it is 1, otherwise it is 0;
[0105] Represents the constraint function that ensures that any two operations do not overlap in a reconfigurable manufacturing unit and prevents the reconfigurable manufacturing unit from processing operations during the configuration process:
[0106]
[0107] Among them, θ i,j,i′,j′ If O i,j It is in O i′,j′ If the signal is processed before, it is 1, otherwise it is 0; Ω represents an infinite positive number.
[0108] It should be noted that the subscripts i′, j′, and l′ in the above variables have the same meaning as i, j, and l, and the superscript ′ is only for distinguishing them from i, j, and l.
[0109] S3. Use the binary tree structure to establish two heuristic genetic programming individuals including the selection and reconstruction of reconfigurable manufacturing units and the sorting of current operations in the reconfigurable units as feasible scheduling solutions for the scheduling model.
[0110] This paper uses a genetic programming hyper-heuristic method to solve the flexible job shop scheduling problem with reconfigurable unit capacity. Each genetic programming individual in the genetic programming hyper-heuristic is a heuristic. The purpose of the genetic programming hyper-heuristic method is to design a suitable heuristic. This paper divides the genetic programming hyper-heuristic method framework into three levels. Figure 2 , including the individual design layer, the population evolution layer, and the problem model layer. The problem model layer is the layer mentioned above that uses configuration parameters and scheduling models to represent the source problem. The population evolution layer describes the evolution process of the heuristic (genetic programming individuals). The individual fitness evaluation stage requires the heuristic to be combined with the data in the problem model layer for simulation.
[0111] Specifically, the individual design layer completes the representation of the heuristic in the computer program. During the evaluation process of the genetic programming individual, each round of decision-making is divided into two steps. The selection and reconstruction decision of the reconfigurable manufacturing unit is the first step, and the order decision of the current operation in the reconfigurable unit is the second step. Therefore, each genetic programming individual needs to contain two different heuristics. Based on this, the present invention uses a binary tree structure to represent each genetic programming individual. The two heuristics used in the two-step decision-making are placed in the same genetic programming individual for co-evolution.
[0112] The binary tree structure contains a terminal set and a function set, as shown in Table 1. The terminal set consists of the parameters involved in the operation of the scheduling model, and the function set provides the association relationship between the parameters in the terminal set;
[0113]
[0114] Table 1. Examples of terminal sets and function sets
[0115] The leaf nodes in the binary tree structure are composed of terminal sets, and the non-leaf nodes are composed of function sets. The left subtree of the root node in the binary tree structure is used for the selection and reconstruction decision-making of the reconfigurable manufacturing unit, and the right subtree is used for the sorting decision-making of the current operation in the reconfigurable unit. Figure 3 An example of a genetically programmed individual is given.
[0116] S4. Use the established genetic planning individuals to construct the current population.
[0117] S5. Calculate the fitness of each genetic planning individual in the current population and determine whether the evolution completion condition is met. If so, execute S7; otherwise, execute S6.
[0118] In progress, see Figure 2 After the population in the population evolution layer is initialized to obtain the initial population, the fitness of each genetic planning individual needs to be evaluated; specifically, the genetic planning individual can be used to simulate the scheduling process, obtain the timetable and then obtain the function value of each objective function, and then perform weighted summation on the function value of each objective function to obtain the fitness.
[0119] The flexible job shop scheduling problem with reconfigurable unit capacity is different from the traditional flexible job shop scheduling problem. The schedule generation process during the scheduling simulation is also different. The present invention integrates the selection of reconfigurable manufacturing unit capacity into the job routing selection problem for decision-making. At each decision point, each operation must first determine which reconfigurable manufacturing units it can select and form a selection list. Based on this selection list, the priority of each reconfigurable manufacturing unit is calculated, and the reconfigurable manufacturing unit to be selected is determined based on the priority. Finally, the selected reconfigurable manufacturing unit is reconfigured to the state required by the operation.
[0120] The operation sorting problem is carried out after the above-mentioned reconfigurable manufacturing unit capability selection and reconstruction process is completed. At each decision point, each reconfigurable manufacturing unit determines which operations it needs to process, calculates the priority of the operations to be processed on itself, and sorts the operations according to the calculated priority. In implementation, the actions required to be executed at the decision point are not completed until the above two steps of decision-making are completed.
[0121] Once a heuristic is generated for a genetic programming individual, it can be used to quickly generate a schedule. However, the process of training the heuristic itself consumes a lot of time, and algorithm computation time is one of the important factors in evaluating an algorithm's performance. The individual fitness evaluation process is the part of the genetic programming hyper-heuristic method that consumes a lot of computational time. The fitness evaluation of each genetic programming individual requires a scheduling simulation process. Each training process requires a large number of genetic programming individuals to be calculated, and multiple repeated experiments are usually required.
[0122] Based on this, the present invention proposes a simplification strategy to reduce the time consumption of fitness evaluation of genetic programming individuals. The simplification strategy mainly considers three aspects: function set, terminal set and complexity of genetic programming individuals. The complexity of genetic programming individuals is the most direct factor affecting the speed of fitness evaluation. Genetic programming individuals with large depth and many branches require more complex calculations in each decision, which consumes more time.
[0123] Continuing to refer to Table 1, the function set of the present invention includes a total of 6 operators. In computer floating-point operations, the maximum and minimum operations have the highest speeds, and the division operation speed is slower than the addition, subtraction, and multiplication operations. Therefore, the frequency of the division operator in the population can be reduced.
[0124] Terminal set elements are divided into two categories: dynamic elements and static elements. During the fitness evaluation process of genetic programming individuals, dynamic elements need to be generated based on the current state of the workshop and through a series of calculations. Static elements are determined when the source problem is input. Therefore, in terms of computational efficiency, for genetic programming individuals of the same complexity, more dynamic elements will consume more computing time.
[0125] Based on the above analysis, the specific process of the simplification strategy is designed as follows:
[0126] Count the number of nodes num contained in each genetic planning individual in the current population cplx , and take the maximum number of nodes and the minimum number of nodes as the highest complexity max and minimum complexity min , and then use the following expression to calculate the first complexity penalty coefficient PF1 of each genetic planning individual:
[0127]
[0128] Count the number of all operators contained in each genetic planning individual in the current population op and the number of division operators num div , use the following expression to calculate the second complexity penalty coefficient PF2 of each genetic planning individual:
[0129]
[0130] The elements in the terminal set are divided into two categories: dynamic elements and static elements. Static elements refer to data that do not change with the operation of the flexible job shop, such as the number of operations of the job, the capacity of the reconfigurable manufacturing unit, etc.; dynamic elements refer to data whose values will change with the operation of the flexible job shop, such as TIS, NOR, NIQ, WIQ, and WR in Table 1; the number of static elements contained in the node of each genetic planning individual is counted. static and dynamic number of elements num dynamic , and use the following expression to calculate the third complexity penalty coefficient PF3 of each genetic planning individual:
[0131]
[0132] Use the following penalty function to adjust the weighted sum to get the final fitness: * :
[0133] Fitness * =Fitness+Fitness×ω PF ×(ω4×PF1+ω5×PF2+ω6×PF3)
[0134] Among them, ω PF The set percentage may be 20%, ω4, ω5 and ω6 are preset weights, and the three weights may be the same, 1 / 3.
[0135] By introducing the above-mentioned penalty function into the fitness evaluation of genetic planning individuals, genetic planning individuals with low quality are put at a disadvantage in evolutionary selection; thereby reducing the computational complexity of the evolutionary process and the corresponding overall evolutionary time consumption will be reduced.
[0136] S6. Based on fitness, the parent population is selected using the tournament method. The parent population is replicated, crossed over, and mutated to obtain the offspring population. The offspring population is mixed into the current population and the tournament method is used again to select genetically planned individuals of the same size as the current population as the new current population. Thereafter, the process returns to S5.
[0137] S7. Select the optimal genetic planning individual with the highest fitness in the current population and perform flexible job shop scheduling based on the optimal genetic planning individual.
[0138] The following experiments are used to verify the performance of the algorithm after the introduction of the simplified strategy:
[0139] This experiment selected three different scales of shop scheduling problems, as shown in Table 2. These three test sets represent shops with different load conditions and are used to test the algorithm's performance under different environments. In addition, 10 identical tests were performed in each test set to enhance the stability of the test results.
[0140] Test set Operation scale Manufacturing unit scale Test Set 1 50 9 Test Set 2 50 16 Test set 3 50 25
[0141] Table 2. Test set settings
[0142] In the parameter setting, this experiment sets each process to have 1 to 5 operations. The number of operations and the capacity requirements of each operation are randomly generated. Among them, the capacity requirements of the operation correspond to the actual capacity of the reconfigurable manufacturing unit. The processing time of each operation is randomly generated between 1 and 8. The delivery time of each process is randomly generated between 1 and 30. The process release time is limited to the range of 0 to 10 in order to obtain more diverse scheduling results. In addition, each reconfigurable manufacturing unit is set to have 1 to 4 random capabilities, and the reconstruction time is also limited to the range of 1 to 3. For specific examples, see Table 3;
[0143] property parameter value Operation Number of single operation processes 1-5 Number of capacity requirement types 1-4 Processing time 1-8 Process release time 0-10 Manufacturing Unit Number of capability types 1-4 Reconstruction time 1-3
[0144] Table 3. Parameter settings
[0145] The parameter settings for population evolution are shown in Table 4;
[0146] parameter value Population size 500 Offspring size 100 Iterative Algebra 26 Initialization method Hybrid method Individual maximum depth 5 Parent screening method Tournament selection, size = 10 Crossover probability 80% Replication probability 5% Mutation probability 15%
[0147] Table 4. Algorithm parameter settings
[0148] The purpose of the experiment is to verify the use of simplification strategy to improve the efficiency and performance of genetic programming operators. Therefore, this experiment uses the genetic programming hyper-heuristic method without simplification strategy as the baseline and compares it with the genetic programming hyper-heuristic method with simplification strategy under three different test environments.
[0149] Table 5 shows the optimal values of the results of 10 independent runs of the optimal individuals generated by the two methods under different test sets. Target 1, Target 2, and Target 3 represent the delay target, the maximum construction period target, and the total operating time target of the flexible manufacturing unit, respectively. The results of each target are compared in two states: with and without the simplification strategy enabled. From the average value calculation, it can be seen that the percentage difference of the group of data with the largest difference is only about 2%. This shows that for different optimization targets, under different test environments, the final evolution results of the two methods are not very different, which is in line with expectations;
[0150]
[0151]
[0152] Table 5. Optimal target values under different test sets
[0153] Table 6 shows the total time consumed by the two methods for 10 independent runs on three test sets, with results accurate to three decimal places. The results are consistent with expectations, with time consumption reduced by 10.54%, 3.01%, and 11.30% in the three environments, respectively. Enabling the individual simplification strategy resulted in significantly lower time consumption in all three conditions, demonstrating that introducing the simplification strategy can improve algorithm efficiency.
[0154]
[0155] Table 6. Time consumption under different test sets
[0156] In general, the simplification strategy can effectively improve the efficiency of the algorithm; at the same time, there is no performance degradation in terms of the effectiveness of the results. In summary, the simplification strategy proposed in this invention can effectively save computing time by reducing the complexity of genetic programming individuals.
[0157] The above description is only a preferred embodiment of the present invention and is not intended to limit the scope of protection of the present invention. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principles of the present invention are included in the scope of protection of the present invention.
Claims
1. A flexible job shop scheduling method for reconfigurable manufacturing unit capacity, characterized by: include: S1. Obtaining the job to be processed, the process in the job, and the configuration parameters of the reconfigurable manufacturing unit; S2. Using the obtained configuration parameters, a scheduling model is constructed with the goal of minimizing delay, minimizing maximum duration, and minimizing total running time; S3. Using a binary tree structure, establish two heuristic genetic planning individuals, including the selection and reconstruction of reconfigurable manufacturing units and the sorting of current operations in the reconfigurable units, as feasible scheduling solutions for the scheduling model; S4. Use the established genetic planning individuals to construct the current population; S5. Calculate the fitness of each genetic planning individual in the current population and determine whether the evolution completion condition is met. If yes, execute S7; otherwise, execute S6. S6. Based on the fitness, the parent population is selected using the tournament method. The parent population is replicated, crossover, and mutated to obtain a child population. The child population is mixed into the current population and the tournament method is again used to select genetically planned individuals of the same size as the current population as the new current population. Thereafter, the process returns to S5. S7. Select the optimal genetic planning individual with the highest fitness in the current population and perform flexible job shop scheduling based on the optimal genetic planning individual.
2. The flexible job shop scheduling method for reconfigurable manufacturing unit capacity according to claim 1 is characterized in that: The configuration parameters in S1 include: Job set J, J = {J1, J2, ..., J n }; Job index i, i = 1, 2, ..., n, n represents the number of jobs; Process index j, j = 1, 2, ..., N i , N i Indicates J i The number of intermediate processes; J i The process set O in i , J i Available time r i , J i Delivery time d i , O i,j Process time p i,j ; The set of reconfigurable manufacturing units R, R = {R1, R2, ..., R m }, m represents the number of reconfigurable manufacturing units; Index k of the reconfigurable manufacturing unit, k=1, 2, ..., m; R k The manufacturing capability set C in k , M k Indicates C k The number of manufacturing capabilities in C k Configuration time s k ; Index l of manufacturing capability, l = 1, 2, ..., M k .
3. The flexible job shop scheduling method for reconfigurable manufacturing unit capacity according to claim 2, characterized in that: The scheduling model in S2 includes: Express the objective function of minimizing tardiness: Among them, OBJ1 represents the total delivery time, CT i,j Indicates O i,j completion time; The objective function of minimizing the maximum duration is expressed as: Min OBJ2=Max{CT i,j } Among them, OBJ2 represents the maximum duration; Express the objective function of minimizing the total running time: Among them, OBJ3 represents the total configuration time, TT k Represents R k Number of manufacturing capacity conversions; A constraint function that indicates that each operation of all jobs is assigned and will only be processed once: Among them, x i,j,k If O i,j It is in C k If the above is processed, it is 1, otherwise it is 0; A constraint function that ensures that the operations in each job are processed in the specified order: This is a constraint function that ensures that each job is processed after the release time: Represents the constraint function that ensures that each operation is assigned to a suitable reconfigurable manufacturing unit: Among them, w i,j,k If O i,j Able to k If the above process is completed, it is 1; otherwise, it is 0; Represents the constraint function that ensures that the reconfigurable manufacturing unit has been reconfigured to the appropriate state when each operation is executed: Among them, u i,j,k,l If O i,j Able to k Using C k,l If the ability is processed, it is 1, otherwise it is 0; i,j,k,l If O i,j It is in C k Using C k,l If the capability is handled, it is 1, otherwise it is 0; Represents the constraint function that ensures that any two operations do not overlap in a reconfigurable manufacturing unit and prevents the reconfigurable manufacturing unit from processing operations during the configuration process: Among them, θ i,j,i′,j′ If O i,j It is in O i′,j′ If the signal is processed before, it is 1, otherwise it is 0; Ω represents an infinite positive number.
4. The flexible job shop scheduling method for reconfigurable manufacturing unit capacity according to claim 1, characterized in that: The binary tree structure of each genetic planning individual in S3 contains a terminal set and a function set. The terminal set consists of the parameters involved in the operation of the scheduling model, and the function set provides the association relationship between the parameters in the terminal set. The leaf nodes in the binary tree structure are composed of terminal sets, and the non-leaf nodes are composed of function sets. The left subtree of the root node in the binary tree structure is used for decision-making on the selection and reconstruction of reconfigurable manufacturing units, and the right subtree is used for decision-making on the sorting of current operations in the reconfigurable units.
5. The flexible job shop scheduling method for reconfigurable manufacturing unit capacity according to claim 4 is characterized in that: The steps of calculating the fitness of each genetic planning individual in the current population in S5 include: Genetic programming individuals are used to simulate the scheduling process, obtain the timetable and then the function value of each objective function, and then the function value of each objective function is weighted and summed to obtain the fitness.
6. The flexible job shop scheduling method for reconfigurable manufacturing unit capacity according to claim 5, characterized in that: After weighted summation of the function values of each objective function to obtain fitness, it also includes: Count the number of nodes num contained in each genetic planning individual in the current population cplx , and take the maximum number of nodes and the minimum number of nodes as the highest complexity max and minimum complexity min , and then use the following expression to calculate the first complexity penalty coefficient PF1 of each genetic planning individual: Count the number of all operators contained in each genetic planning individual in the current population op and the number of division operators num div , use the following expression to calculate the second complexity penalty coefficient PF2 of each genetic planning individual: The elements in the terminal set are divided into two categories: dynamic elements and static elements. Static elements refer to data that do not change with the operation of the flexible job shop, and dynamic elements refer to data whose values change with the operation of the flexible job shop. The number of static elements contained in the node of each genetic planning individual is counted. static and dynamic number of elements num dynamic , and use the following expression to calculate the third complexity penalty coefficient PF3 of each genetic planning individual: Use the following penalty function to adjust the weighted sum to get the final fitness: * : Fitness * =Fitness+Fitness×ω PF ×(ω4×PF1+ω5×PF2+ω6×PF3) Among them, ω PF is the set percentage, ω4, ω5 and ω6 are the preset weights.
Citation Information
Patent Citations
Unmanned aerial vehicle route planning system and unmanned aerial vehicle route planning method based on genetic programming
CN105512769A
Intelligent workshop combined scheduling control method
CN110298538A