Parallel machine batch flow scheduling method considering multi-resource constraint

By building a multi-resource constraint parallel machine batch flow scheduling model and an improved gray wolf-whale school algorithm, the scheduling inaccurate problem caused by the differences in auxiliary resources and workers' abilities in the existing technology is solved, and more efficient and accurate production scheduling.

CN119126694APending Publication Date: 2024-12-13CHINA THREE GORGES UNIV
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202411050681.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-08-01
Publication Date
2024-12-13

AI Technical Summary

Technical Problem

The existing technology fails to effectively consider the differences in auxiliary resources and workers' processing capabilities, resulting in inaccurate parallel machine scheduling results and inaccurate meeting the needs of multiple varieties and small batches.

Method used

Using a parallel machine batch flow scheduling method that considers multi-resource constraints, the machine is optimized by building a mathematical model and an improved gray wolf-whale school algorithm, combining mixed integer planning and non-dominant sorting, and optimizing workpiece batching, machine selection and worker allocation to generate machines -Process and Worker - Process Gantt Chart.

Benefits of technology

It improves production efficiency, reduces production costs, ensures the accuracy and rationality of scheduling results, and is suitable for multi-variety and small-batch production environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119126694A_ABST
    Figure CN119126694A_ABST
Patent Text Reader

Abstract

The invention discloses a parallel machine batch flow scheduling method considering multi-resource constraints. The method comprises the following steps: constructing a mixed integer linear programming model considering cutter resources and worker differences; determining constraint conditions of the mathematical model; coding and decoding based on the improved grey wolf-whale swarm algorithm are set, and then workpiece batches, procedures and machines are coded; initializing the population and selecting a guiding individual for each grey wolf; selecting corresponding interaction modes for workpiece batching, machine distribution and sub-batch sorting to generate a next generation population; performing non-dominated sorting on the new-generation population to select offspring; judging whether a termination condition is met or not, and if not, returning to the step of interactively generating a new generation of population; and according to a decoding mode based on the improved grey wolf-whale swarm algorithm, decoding is carried out, and then a corresponding machine-process Gantt chart and a corresponding worker-process Gantt chart are output. According to the method, the parallel machine production considering the multi-resource constraint can be efficiently scheduled.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of parallel machine scheduling, and in particular to a parallel machine batch flow scheduling method considering multiple resource constraints. Background Art

[0002] Most orders received by modern manufacturing companies are characterized by multiple varieties, small batches, and short delivery times. In the production process, companies face challenges such as how to efficiently meet diverse order requirements, reduce manufacturing cycles, improve equipment utilization, and ensure product quality. In actual production, workers often process each type of product as a whole. If products are processed in batches, the maximum completion time can be greatly reduced, which also makes the batched model more in line with actual production and processing needs, and shows excellent applicability in the face of multiple varieties and small batch production methods. Batch flow processing of incoming orders by companies is an urgent problem to be solved in this field.

[0003] In most problems regarding parallel machine scheduling, the only resource considered is the machine. However, in actual manufacturing environments, processing workpieces may require additional resources, such as automated guided vehicles, machine operators, tools, pallets, molds, and industrial robots for handling and processing. Some highly flexible equipment can process almost all operations in the workshop by simply replacing the auxiliary resources corresponding to the processing operation. The workpiece requires the cooperation of machines and auxiliary resources at the same time during processing. Many times, the price of auxiliary resources is relatively expensive, the quantity is limited, and the replacement of auxiliary resources also takes a certain amount of time. However, in actual production, enterprises often ignore the impact of auxiliary resources on the production process.

[0004] In workshop scheduling, workers are an important part of the production process. Due to factors such as workers' diverse work experience and skill levels, workers have different efficiency in processing operations, and the replacement of auxiliary resources during the processing process also requires workers to operate, which will affect the final completion time. When scheduling production, companies often do not consider the actual processing capabilities of workers, resulting in a large deviation between the actual production plan and the expected production plan.

[0005] In actual production, in addition to machines, the impact of auxiliary resources and workers must also be considered. Existing technologies generally only consider machine resources. The limited number of auxiliary resources has an important impact on the production process, and the proficiency of workers also affects the processing time of workpieces. Existing technologies do not perform batch scheduling, do not consider the limited number of auxiliary resources, pre-processing preparation operations, and differences in workers' processing capabilities. The scheduling results are bound to be inaccurate and not in line with the actual situation. Such solution results cannot provide accurate reference for the production of enterprises. Summary of the invention

[0006] In order to solve the problem in the prior art that the parallel machine scheduling results are inaccurate due to failure to consider the differences in auxiliary resources and worker processing capabilities, the present invention provides a parallel machine batch flow scheduling method considering multiple resource constraints, which can efficiently schedule the parallel machine production considering multiple resource constraints.

[0007] The technical solution adopted by the present invention is:

[0008] A parallel machine batch flow scheduling method considering multiple resource constraints comprises the following steps:

[0009] Step 1: Construct a mathematical model for multi-objective parallel machine batch flow scheduling considering tool resources and worker differences;

[0010] Step 2: Determine the constraints of the constructed mathematical model;

[0011] Step 3: Encode and decode the gray wolf-whale algorithm based on the machine, tool, and worker constraints, and then decode the workpiece batching, machine selection, and sub-batch sorting;

[0012] Step 4: Initialize and evaluate the gray wolf population, and perform Pareto non-dominated sorting on all gray wolf individuals;

[0013] Step 5: Find a "better and closest" wolf for each wolf to guide its movement based on the Hamming distance and Pareto ranking;

[0014] Step 6: Perform two-point crossover on the batching part, MPX crossover on the machine selection part, and IPOX crossover on the sub-batch sorting part to generate a new generation of population;

[0015] Step 7: Perform non-dominated sorting on the new generation population and update the Pareto external archive;

[0016] Step 8: Determine whether the termination condition is met, that is, whether the maximum number of iterations of the population is reached. If so, proceed to the next step, otherwise return to step 5;

[0017] Step 9: According to the decoding method based on the improved grey wolf-whale algorithm, after decoding the workpiece batch code, machine selection code and sub-batch sorting code, the corresponding machine-process Gantt chart and worker-process Gantt chart are output.

[0018] In step 1, the mathematical model is constructed based on the two objectives of maximum completion time and delivery date deviation and based on mixed integer programming method;

[0019] The mathematical symbols used in the mathematical model include:

[0020] i represents the workpiece type serial number; I represents the workpiece type set {1, 2, …, n}, n represents the number of workpiece types, and i∈I;

[0021] j represents the machine number; J represents the machine set {1,2,…,m}, m represents the number of machines, and j∈J;

[0022] g represents the worker number; G represents the set of workers {1, 2, …, w}, w represents the number of workers, and g∈G;

[0023] h i Indicates the number of tools corresponding to the i-th workpiece; N i represents the total number of workpieces of the i-th type; l i represents the actual batch number of the i-th workpiece;

[0024] represents the batch size of the kth sub-batch of the i-th type of workpieces; represents the tool change setup time between workpiece type i′ and i; t ij represents the processing time of the i-th workpiece on machine j; represents the start processing time of the kth sub-batch of the i-th workpiece on machine tool j; represents the completion time of the kth batch of the i-th workpiece on machine tool j; g j Indicates that the g-th worker operates the j-th machine; A g represents the number of machines that worker g is responsible for operating;

[0025] M represents a very large positive number; w E represents the weight coefficient of early completion; w T The weight coefficient of delayed completion;

[0026] LT i represents the lead time of workpiece i; TT i represents the delay of job i; C max represents the maximum completion time;

[0027] If the kth sub-batch of workpiece i is processed on machine j, then otherwise

[0028] It means that two sub-batches are processed consecutively on machine j, and the k′th sub-batch of workpiece type i′ is processed before the kth sub-batch of workpiece type i. Then otherwise

[0029] If two sub-batches are processed on machine j, and the k′th sub-batch of workpiece type i′ is processed before the kth sub-batch of workpiece type i, then otherwise

[0030] indicates that machine j processes two consecutive sub-batches, and the k'th sub-batch of workpiece type i' is processed before the k'th sub-batch of workpiece type i; when the k'th sub-batch of workpiece type i' is completed on machine j, if worker g performs preparation operations for the k'th sub-batch of workpiece type i'' on machine j', 1, otherwise is 0.

[0031] Mathematical models based on mixed integer programming include:

[0032] 1.1: Construct the objective function f1 that minimizes the maximum completion time as shown below:

[0033] f1=min(C max )=min(max 1≤i≤n C i );

[0034] In the above formula, C i represents the maximum completion time of the i-th type of workpiece;

[0035] 1.2: Construct the objective function f2 that minimizes the delivery time deviation as shown below:

[0036]

[0037] In step 2, the constraints of the mathematical model are shown in the following formula:

[0038]

[0039] l i ≤h i (5)

[0040]

[0041]

[0042] Among them, k represents the kth sub-batch; represents the batch size of the first sub-batch of the i-th type of workpieces; represents the completion time of the k′th sub-batch of workpiece type i′ on machine tool j; represents the completion time of the k′th sub-batch of workpiece type i′ on machine tool j; represents the tool change setup time between workpiece type i″ to i;

[0043] Formula (1) indicates that the equal batching strategy is adopted when batching workpieces;

[0044] Formula (2) indicates that the batch number of each type of workpiece must be less than or equal to the corresponding number of tools;

[0045] Formula (3) indicates that when switching to process different types of workpieces on the same machine tool, the time for changing the tool needs to be considered;

[0046] Formula (4) indicates that the completion time of each sub-batch is equal to the sum of the start processing time and the processing time of the sub-batch;

[0047] Formula (5) indicates that each sub-batch can only be processed on one machine tool;

[0048] Formula (6) indicates that a machine can only process one sub-batch at the same time;

[0049] Formula (7) The sum of the number of machines controlled by each worker is equal to the total number of machines;

[0050] Formula (8) represents the non-negative constraint of the start processing time;

[0051] Formula (9) indicates that an employee can only perform preparation operations on one machine at a time.

[0052] In step 3, the coding method of the improved grey wolf-whale group algorithm is:

[0053] According to the problem characteristics, a two-stage real number coding is adopted. The first stage is a three-layer coding of workpiece batching, sub-batch sorting, and machine selection; the second stage is a two-layer coding of machines and workers;

[0054] The encoding length of each layer in the first stage is the sum of the maximum batch numbers of all workpieces, that is, The first layer is the batch coding of workpieces. The batch strategy adopts equal batching. If the actual batch number is less than the maximum batch number, it is legalized by introducing a virtual placeholder 0. The second layer is the machine selection coding. Its element value is the machine serial number of the corresponding sub-batch selection. The third layer is the sub-batch sorting coding. The element value is the workpiece type. The number of times it appears is the batch number of the workpiece type. The sub-batches with the highest sorting will be processed first on the assigned machines.

[0055] The length of each layer of the second stage code is the total number of machines, the element value of the first layer is the machine serial number, and the element value of the second layer is the employee serial number. The second stage code represents the machine serial number that the worker is responsible for during the entire processing process.

[0056] In step 3, the algorithm decoding method of the wolf-whale group is improved, including the following steps:

[0057] S31, obtaining the workpiece type and batch of the first sub-batch of each machine, calculating the processing time of the sub-batch, and thus obtaining the processing end time of the first sub-batch of each machine;

[0058] S32. Find the machine that is the first to be completed in the first sub-batch among all the machines that each worker is responsible for, and obtain the start processing time of the second sub-batch of this machine By obtaining the workpiece type and batch of the second sub-batch, the completion time of the second sub-batch is obtained;

[0059] S33. Obtain the completion time of the first sub-batch of other machines for each worker, and find the machine with the shortest completion time of the first sub-batch. If the worker is idle at this time, the start processing time of the second sub-batch of this machine is If the worker performs the preparation operation on the machine that is completed earliest in step S32, the start processing time of the second sub-batch of this machine is By obtaining the workpiece type and batch size of the second sub-batch, the completion time of the sub-batch is obtained;

[0060] S34, loop through all the batches that the worker is responsible for, and judge whether the worker is free at the time of completion of each batch. If the worker is free, the start time of the next batch processed by the machine is If the worker is preparing for operation on another machine, the start time of the next batch of processing on that machine is By obtaining the workpiece type and batch size of the next sub-batch, the completion time of the next sub-batch is obtained. If the maximum number of cycles is reached, the decoding step is terminated.

[0061] In step 4, the initialization process includes the following:

[0062] S41, for the initialization of the batching part of the workpiece, the maximum batch number of each workpiece is the number of tools corresponding to the type, and the actual batch number should be less than or equal to the number of tools. First, the actual batch number of each workpiece is determined, and then the batch size is determined for each sub-batch. If the actual batch number is not equal to the maximum batch number, the position after the actual batch number is represented by a virtual placeholder 0;

[0063] S42, for the initialization of the machine selection part, a random integer j of 1-m is randomly generated at each position, indicating that the corresponding batch is processed on machine j;

[0064] S43, for the initialization of the sub-batch sorting part, according to the maximum batch number of each workpiece, h is generated when the sub-batch sorting is initialized. i The number of times the workpiece number appears is the batch number of this workpiece type. The sub-batches with the highest order will be processed first on the assigned machine.

[0065] In step 5, according to the Hamming distance and the Pareto ranking level, a "better and closest" gray wolf is found for each gray wolf to guide its movement; the following steps are included:

[0066] S51. For each common gray wolf, compare the number at each position in the code of workpiece batching, machine selection, and sub-batch sorting with each gray wolf in the population, and obtain the Hamming distance between itself and all other gray wolves in the population. If the numbers at each position of the two gray wolves are different, the Hamming distance increases by one. The smaller the Hamming distance, the closer the two gray wolves are, and the more similar the two gray wolves are.

[0067] The calculation method of the Hamming distance is: compare whether each bit of the two vectors is the same. If they are different, the Hamming distance is increased by 1, and the Hamming distance is obtained. The higher the vector similarity, the smaller the corresponding Hamming distance.

[0068] S52. According to the Pareto ranking, the wolf with the higher ranking is better. For each wolf, find a wolf that is better than itself.

[0069] Pareto dominance: Suppose there are two feasible solutions x = (x2, x2, …, x n ) and y=(y1,y2,…,y n ),satisfy:

[0070] (1) means that all sub-goals of x are not inferior to y, where n is the number of objective functions and k represents the kth goal;

[0071] (2) express At least one sub-goal is better than

[0072] That is, there is at least one objective function component of the objective function of x that is better than y, and the components of other objective functions are not worse than y. If the above two conditions are met, the solution x is said to dominate y, denoted as x<y, where < represents the dominator.

[0073] Non-dominated sorting level: All individuals in the population are Pareto sorted according to the target value, and individuals that are not dominated by any solution are included in the optimal solution set P. * The non-dominated sorting level is set to 1, the solution with level 1 is eliminated, and the remaining individuals continue to perform Pareto sorting, and the non-dominated sorting level of the remaining non-dominated solutions in the population is set to 2, and then the non-dominated sorting levels of other individuals are set in turn.

[0074] S53, according to step S51, find out the "closer", and in step S52, find out the "better" for each wolf to find the "better and closest" wolf; the details are as follows:

[0075] First, using step S51, the Hamming distance between the wolf and all other gray wolves in the population except itself can be calculated. The Hamming distance can be used to see the degree of similarity between the remaining gray wolves in the population and the gray wolf; according to the Pareto sorting level of step S52, a gray wolf with a higher level than itself is found for the gray wolf, and the higher the level of the gray wolf, the better it is; through S51 and S52, a "better and closest" gray wolf can be found for each gray wolf, that is, a gray wolf with the smallest Hamming distance and a higher level than itself can be found.

[0076] In step 6, the interaction process based on the improved grey wolf-whale group algorithm includes:

[0077] S61. In view of the characteristics of batch coding of workpieces, the total number of workpieces of the same type needs to be kept constant during the interaction between individuals. The batch part of the workpiece adopts multiple two-point intersections to select Exchange workpieces in batches according to workpiece types;

[0078] S62. For the machine selection part, MPX crossover is used as the guidance method, and a random number array composed of 0 and 1 is randomly generated. The elements in α and ω that have the same position as element 1 in the array are selected and swapped. Among them, α represents the guide gray wolf, and ω represents the ordinary wolf; α and ω are recorded as α′ and ω′ respectively after the interactive operation;

[0079] S63, for the sub-batch sorting part, the improved POX crossover is used as the guiding method, IPOX crossover is as follows Figure 4 As shown, the boot process has the following two steps:

[0080] (1) First, randomly divide the workpiece set into two non-empty subsets J1_set and J2_set; copy the workpiece sub-batch in α that belongs to the workpiece set J1 to α′, preserving their positions; copy the workpiece sub-batch in ω that belongs to the workpiece set J2 to α′, preserving their order;

[0081] (2) Copy the sub-batches of workpieces in ω that belong to the workpiece set J2 to ω′, preserving their positions; copy the sub-batches of workpieces in α that belong to the workpiece set J1 to ω′, preserving their order.

[0082] In step 7, the new generation population is non-dominated sorted and archived externally. Non-dominated sorting is to re-sort all individuals in the population according to the non-dominated sorting level, and all individuals at the same level are sorted according to the crowding distance, so that when solving multi-objective problems, the individuals with higher levels are better, and at the same level, the individuals with larger crowding distances are more dispersed.

[0083] NSGA-II crowding distance sorting:

[0084] A single objective function value f for each solutionZ Sort by monotonically increasing order, if any solution i has a single target f s Not equal to its maximum value or minimum The crowding distance of the maximum and minimum is denoted as ∞, and the crowding distance of the remaining solutions is d s It can be calculated according to formula (10). In NSGA-II, in order to measure the quality of each solution in the same frontier, a crowding distance is assigned to each solution. The idea behind it is to make the obtained Pareto optimal solution as dispersed as possible, which makes it more likely that the solution will be evenly distributed on the Pareto optimal frontier;

[0085]

[0086] Among them, S represents the number of target values; represents the next individual of individual i at target s; represents the previous individual of individual i at target s.

[0087] Pareto External Archive:

[0088] Pareto summarizes the optimization problems of multiple objective functions that are difficult to compare directly and expresses them as follows:

[0089] Max / minF=f(x)=(f1(x),f2(x),…,f m (x)) (11)

[0090] st g i (x)≤0,i=1,2,…,p (12)

[0091] e j (x)=0,j=1,2,…,q (13)

[0092] Where F is the m objective functions (f1(x),f2(x),…,f m (x) T An m-dimensional target vector composed of;

[0093] f1(x) represents the first-dimensional target vector, f2(x) represents the second-dimensional target vector, and f m (x) represents the m-th dimension target vector, and T represents the transpose of the vector;

[0094] x=(x1,x2,…,x n ) T is an n-dimensional decision vector in the decision space Ω;

[0095] x1 represents the first-dimensional decision vector, x2 represents the second-dimensional decision vector, and xn represents the n-th dimension decision vector;

[0096] g i (x)≤0 represents all inequality constraints that must be satisfied during the optimization process, e j (x) = 0 indicates all equality constraints that must be satisfied during the optimization process;

[0097] In step 8, it is determined whether the termination condition is met: the current number of loops ≤ the maximum number of loops. If so, the loop ends and the process proceeds to step 9; if not, the loop continues.

[0098] In step 9, the workpiece batching, machine selection and sub-batch sorting are performed as follows: Figure 2 Decode by the decoding method shown in the figure, arrange each process in the machine to be processed and the processing order, and after decoding, it can generate Figure 8 and Fig. 9 , Figure 8 It represents the machine-process Gantt chart, showing the processing time, start time and completion time of each process; Fig. 9 Represents a worker-process Gantt chart, showing the worker's working time on each machine, the worker's idle time period and working time period.

[0099] The present invention provides a parallel machine batch flow scheduling method considering multiple resource constraints, and the technical effects are as follows:

[0100] 1) Step 1 of the present invention constructs a dual-objective parallel machine batch flow scheduling mixed integer programming model with the goal of minimizing the maximum completion time and delivery time deviation, wherein the maximum completion time evaluates the rationality and feasibility of the production plan, and the production efficiency of the workshop can be improved by optimizing this goal; the delivery time deviation refers to the difference between the actual completion time of the job and the delivery time required by the customer, and the total early delivery and delayed delivery are minimized to ensure that the task is delivered on time and avoid inventory accumulation and fines;

[0101] 2) In the mathematical modeling of step 2 of the present invention, constraints play a vital role in the workshop scheduling. These constraints not only define various restrictive conditions in the production process, such as workpiece batching, machine allocation, worker allocation, process sequence, time window, etc., but also ensure the feasibility and effectiveness of the scheduling scheme. Through the constraints, the workshop scheduling model can accurately reflect the actual production environment, guide the algorithm to search for the optimal or approximately optimal scheduling scheme in a reasonable solution space, thereby improving production efficiency, reducing production costs, and providing strong support for the production management of the enterprise.

[0102] 3) The purpose of encoding and then decoding the workshop scheduling in step 3 of the present invention is to convert the complex parallel machine batch flow scheduling problem considering multiple resource constraints into a form that can be processed by the algorithm, and finally restore it to the actual scheduling plan. The encoding process combines the elements such as machines, workers, processes, time, etc. in the scheduling plan in a specific way into a form that the algorithm can understand, and the decoding process converts the encoded results into specific scheduling instructions, such as the processing order and time arrangement of each process on each machine. This process helps the algorithm to efficiently search for the optimal or approximately optimal scheduling plan, thereby improving production efficiency and reducing production costs.

[0103] 4) In step 4 of the present invention, when solving the parallel machine batch flow scheduling problem considering multiple resource constraints, population initialization aims to generate a set of initial solutions through random or heuristic methods as the starting point of the algorithm search, ensuring the diversity of solutions and wide coverage of the search space. Non-dominated sorting is used to evaluate the performance of solutions in the population, dividing the solutions into different levels (i.e., Pareto frontiers), and the solutions in each level have better comprehensive performance on multiple objectives than other levels. This process helps the algorithm maintain the diversity and convergence of solutions during the search process, thereby finding a set of high-quality solutions that balance multiple objectives. Through the organic combination of population initialization and non-dominated sorting, the algorithm can more effectively solve the parallel machine batch flow scheduling problem.

[0104] 5) Step 5 of the present invention uses the Hamming distance to represent the similarity between two individuals. The Pareto ranking level can compare which of the two individuals is better. By using the Hamming distance and the Pareto ranking level, a "better and closest" individual can be found for each individual as a guiding individual, which can effectively prevent the individual from approaching the optimal individual too quickly and converging too early, resulting in low solution quality and falling into a local optimum rather than a global optimum, which limits the effective exploration of the search space.

[0105] 6) In step 6 of the present invention, a suitable crossover mode is selected for the workpiece batching part, the machine selection part and the sub-batch sorting part to move individuals, and a part of the fragments is exchanged between two individuals to generate offspring carrying new fragments. In this way, the advantageous characteristics of different individuals can be combined to increase the diversity of the population, and it is helpful to spread and diffuse excellent fragments in the population, accelerate the exploration speed of the algorithm in the solution space, and also improve the possibility of finding the global optimal solution.

[0106] 7) The Pareto external archive in step 7 of the present invention is a key component in multi-objective optimization, which is used to store non-inferior solutions found during the search process to ensure the diversity and representativeness of the solutions. It can select the most suitable one from multiple optimal solutions, while guiding the algorithm search direction and improving the optimization performance. Through an effective archive update strategy, it is ensured that the quality of the archive is maintained under limited capacity, and the algorithm is pushed to approach the global optimal solution set.

[0107] 8) In step 8 of the present invention, when the maximum number of iterations is reached, the loop is jumped out, which can ensure the efficiency and stability of the algorithm, while balancing the solution quality and computing resource consumption, so that the algorithm can seek the optimal solution within a reasonable range.

[0108] 9) Step 9 of the present invention is decoded according to the encoding method, and a machine-process Gantt chart is output, which can intuitively show the start time and completion time of each process on which machine, and a worker-process Gantt chart is output, which can intuitively show the working time and idle time of each worker.

[0109] 10) The present invention considers the switching time related to the sequence, and considers the influence of the worker's past work and work experience on the current work efficiency. Considering that the workers and tool resources are more in line with the actual situation of workshop production, the scheduling result of the entire process corresponding to the optimal solution finally obtained is more reasonable and accurate. The scheduling method based on this optimizes the resources such as workers, processing equipment, and tools, and the obtained scheduling plan is more in line with reality, which improves the continuity and efficiency of production. BRIEF DESCRIPTION OF THE DRAWINGS

[0110] The present invention is further described in detail below with reference to the accompanying drawings and specific embodiments:

[0111] Figure 1 Flowchart of parallel machine batch flow scheduling method considering multiple resource constraints.

[0112] Figure 2 Schematic diagram of two-stage encoding and decoding.

[0113] Figure 3 It is a schematic diagram of the two-point intersection of the batch part of the workpiece.

[0114] Figure 4 Select the MPX crossover schematic for your machine.

[0115] Figure 5 Schematic diagram of IPOX crossover for sub-batch sorting.

[0116] Figure 6 This is a diagram of the Hamming distance.

[0117] Figure 7 1 is a Pareto frontier graph of three algorithms in the embodiments of the present invention.

[0118] Figure 8 It is a machine-process scheduling Gantt chart corresponding to the optimal solution obtained in the embodiment of the present invention.

[0119] Fig. 9 It is a worker-process scheduling Gantt chart corresponding to the optimal solution obtained in an embodiment of the present invention. DETAILED DESCRIPTION

[0120] A parallel machine batch flow scheduling method considering multiple resource constraints solves the problem of inaccurate parallel machine batch flow scheduling results due to failure to consider actual processing preparation operations, limited tool resources, and differences in worker processing capabilities in the prior art. It realizes accurate scheduling of parallel machine processing with batch processing and improves production continuity and efficiency.

[0121] The technical solution in the embodiment of the present application is to solve the above technical problems, and the overall idea is as follows:

[0122] In order to more accurately simulate and restore the real production situation of parallel machine scheduling, the present invention constructs a multi-objective parallel machine batch flow scheduling model with minimization of maximum completion time and delivery date deviation as the objective function. The workpieces to be processed are first processed in batches, and each batch after batching is processed as a whole in the entire production process, and then the model is solved according to other constraints. The Gantt chart of parallel machine batch flow scheduling can be drawn according to the optimal solution of the model obtained by the gray wolf-whale group algorithm to realize production scheduling.

[0123] The present invention constructs a multi-objective parallel machine batch flow scheduling model based on the constraints of workers, tool resources and preparation time, uses the wolf-whale group algorithm to solve the model to obtain the optimal solution, and draws a Gantt chart of the multi-objective parallel machine batch flow scheduling based on the optimal solution. The technical solution of the present invention is closer to the actual production situation of the workshop, and its scheduling results are more reasonable and accurate compared with the prior art.

[0124] In order to better understand the above technical solution, the above technical solution will be described in detail below in conjunction with the accompanying drawings and specific implementation methods.

[0125] Example:

[0126] like Figure 1 This embodiment provides a parallel machine batch flow scheduling method considering multiple resource constraints, including the following steps:

[0127] S1. Construct a mathematical model for multi-objective parallel machine batch flow scheduling considering tool resources and worker differences;

[0128] The mathematical model is constructed based on the two objectives of maximum completion time and delivery date deviation and is based on the mixed integer programming method;

[0129] The multi-resource constrained parallel machine batch flow scheduling problem can be described as follows: Assume that there are w workers in a workshop, processing n types of workpieces on m machine tools. The workpiece processing is divided into two stages. The workers must complete preparatory operations such as tool change before the machine automatically processes. Due to the limitation of the number of tools, the number of tools corresponding to each type of workpiece is less than or equal to the number of parallel machines, and the number of batches of each workpiece must be less than or equal to the number of tools. The number of machines that can be operated and the efficiency of processing workpieces are different for different worker levels. The solution to this problem is to reasonably batch all workpieces under the conditions that all constraints are met, assign machines and workers to each sub-batch, determine the processing order, and the start time and end time of each sub-batch processing, so as to obtain the maximum completion time and delivery time deviation, and reduce the conflict between the two different goals;

[0130] Considering the parallel machine batch flow scheduling problem with multiple resource constraints, the following conditions need to be met:

[0131] 1. The types and quantities of workpieces to be processed within a certain production cycle are known;

[0132] 2. The number of tools required to process each workpiece type is known;

[0133] 3. Each workpiece has only one process;

[0134] 4. Each sub-batch cannot be interrupted during processing;

[0135] 5. The first sub-batch on all equipment does not need to be adjusted, and the workpieces to be processed are ready;

[0136] 6. The same machine can only process one workpiece at the same time;

[0137] 7. There is no priority constraint between different artifacts;

[0138] 8. A worker can only perform preparatory operations on one machine at a time.

[0139] The mathematical symbols in the mathematical model are as follows: i: workpiece type number; I: workpiece type set {1, 2, ..., n}, and i∈I; j: machine number; J: machine set {1, 2, ..., m}, and j∈J; g: worker number; G: worker set {1, 2, ..., w}, and g∈G; h i : The number of tools corresponding to the i-th workpiece; N i : The total number of workpieces of the i-th type; l i : The actual batch number of the i-th workpiece; The batch size of the kth sub-batch of the i-th type of workpieces; Tool change setup time between workpiece type i′ and i; t ij : The processing time of the i-th workpiece on machine j; The start time of processing the kth batch of the i-th workpiece on machine tool j; The completion time of the kth batch of the i-th workpiece on machine tool j; g j : The gth worker operates the jth machine; A g : the number of machines that worker g is responsible for operating; M: a very large positive number; w E : weight coefficient of early completion; w T : Weight coefficient of delayed completion; LT i : Lead time of workpiece i; TT i : The delay of job i; C max : Maximum completion time; If the kth sub-batch of workpiece i is processed on machine j, then otherwise Two sub-batches are processed consecutively on machine j, and the k′th sub-batch of workpiece type i′ is processed before the kth sub-batch of workpiece type i, then otherwise Two sub-lots are processed on machine j, and the k′th sub-lot of workpiece type i′ is processed before the kth sub-lot of workpiece type i, then otherwise Machine j processes two consecutive sub-batches, and the k'th sub-batches of workpiece type i' are processed before the k'th sub-batches of workpiece type i; when the k'th sub-batches of workpiece type i' are completed on machine j, if worker g performs preparatory operations for the k'th sub-batches of workpiece type i'' on machine j', 1, otherwise is 0.

[0140] The steps of constructing a mathematical model based on mixed integer programming include:

[0141] S11. Construct the objective function f1 representing the minimized maximum completion time as shown in the following formula:

[0142]

[0143] S12. Construct the objective function f2 representing minimizing the delivery time deviation as shown below:

[0144]

[0145] S2, determining the constraints of the mathematical model constructed in step S1;

[0146] The constraints of the mathematical model are shown in the following formula:

[0147]

[0148] l i ≤h i (2)

[0149]

[0150]

[0151] Among them, formula (1) indicates that the equal batching strategy is adopted when batching workpieces; formula (2) indicates that the batch number of each type of workpiece must be less than or equal to the corresponding number of tools; formula (3) indicates that when switching to process different types of workpieces on the same machine tool, the time for changing tools needs to be considered; formula (4) indicates that the completion time of each sub-batch is equal to the sum of the start processing time and the processing time of the sub-batch; formula (5) indicates that each sub-batch can only be processed on one machine tool; formula (6) indicates that one machine can only process one sub-batch at the same time; formula (7) The sum of the number of machines controlled by each worker is equal to the total number of machines; formula (8) indicates the non-negative constraint on the start processing time; formula (9) indicates that an employee can only perform preparation operations on one machine at the same time.

[0152] Furthermore, the method of improving the gray wolf-whale group encoding is:

[0153] According to the characteristics of the problem, a two-stage real number coding is adopted. The first stage is a three-layer coding of workpiece batching, sub-batch sorting, and machine selection; the second stage is a two-layer coding of machines and workers. The length of each layer of the first stage is the sum of the maximum batch number of all workpieces, that is, The first layer is the batch coding of workpieces. The batch strategy adopts equal batching. If the actual number of batches is less than the maximum number of batches, it is legalized by introducing a virtual placeholder 0. The second layer is the machine selection coding, and its element value is the machine serial number of the corresponding sub-batch selection. The third layer is the sub-batch sorting coding. The element value is the workpiece type. The number of times it appears is the batch number of the workpiece type. The sub-batches with the highest order are processed first on the assigned machines. The coding length of each layer in the second stage is the total number of machines. The element value of the first layer is the machine serial number, and the element value of the second layer is the employee serial number. The coding of the second stage represents the machine serial number that the worker is responsible for during the entire processing process.

[0154] Furthermore, the decoding method is:

[0155] S31, obtaining the workpiece type and batch of the first sub-batch of each machine, calculating the processing time of the sub-batch, and thus obtaining the processing end time of the first sub-batch of each machine;

[0156] S32. Find the machine that is the first to be completed in the first sub-batch among all the machines that each worker is responsible for, and obtain the start processing time of the second sub-batch of this machine By obtaining the workpiece type and batch of the second sub-batch, the completion time of the second sub-batch is obtained;

[0157] S33. Obtain the completion time of the first sub-batch of other machines that each worker is responsible for, and find the machine with the shortest completion time of the first sub-batch. If the worker is idle at this time, the start processing time of the second sub-batch of this machine is If the worker performs preparation operation on the machine that is completed earliest in S32, the start processing time of the second sub-batch of this machine is By obtaining the workpiece type and batch size of the second sub-batch, the completion time of the sub-batch is obtained;

[0158] S34, loop through all the batches that the worker is responsible for, and when each batch is completed, determine whether the worker is idle at this time. If the worker is idle, the start processing time of the next batch processed by the machine is If the worker is preparing for operation on another machine, the start time of the next batch of processing on that machine is By obtaining the workpiece type and batch size of the next sub-batch, the completion time of the next sub-batch is obtained. If the maximum number of cycles is reached, the decoding step is terminated.

[0159] The initialization process includes:

[0160] S41, for the initialization of the batching part of the workpiece, the maximum batch number of each workpiece is the number of tools corresponding to the type, and the actual batch number should be less than or equal to the number of tools. First, the actual batch number of each workpiece is determined, and then the batch size is determined for each sub-batch according to the number of workpieces. If the actual batch number is not equal to the maximum batch number, the position after the actual batch number is represented by a virtual placeholder 0;

[0161] S42, for the initialization of the machine selection part, a random integer j of 1-m is randomly generated at each position, indicating that the corresponding batch is processed on machine j;

[0162] S43, for the initialization of the sub-batch sorting part, according to the maximum batch number of each workpiece, h is generated when the sub-batch sorting is initialized. i The number of times the workpiece number appears is the batch number of this workpiece type. The sub-batches with the highest order will be processed first on the assigned machine.

[0163] Find the "better and closest" gray wolf for each gray wolf;

[0164] S51. For each common gray wolf, compare the number at each position in the code of workpiece batching, machine selection, and sub-batch sorting with each gray wolf in the population, and obtain the Hamming distance between itself and all other gray wolves in the population. If the number at the position is different, the Hamming distance increases by one. The smaller the Hamming distance, the closer the two gray wolves are, and the more similar the two gray wolves are.

[0165] S52. According to the Pareto ranking, the wolf with the higher ranking is better. For each wolf, find a wolf that is better than itself.

[0166] S53. Find the "better" one based on the Pareto ranking level, find the "closer" one based on the Hamming distance, and find the "better and closest" gray wolf for each gray wolf.

[0167] Furthermore, the interaction process based on the improved gray wolf-whale group includes:

[0168] S61. In view of the characteristics of batch coding of workpieces, the total number of workpieces of the same type needs to be kept constant during the interaction between individuals. The batch part of the workpiece adopts multiple two-point intersections to select Exchange workpieces in batches according to workpiece types;

[0169] S62, for the machine selection part, MPX crossover is used as a guiding method, a random number array consisting of 0 and 1 is randomly generated, the elements in α and ω that have the same position as element 1 in the array are selected, and α and ω are interchanged and cross-referenced as α′ and ω′;

[0170] S63. For the sub-batch sorting part, the improved POX crossover is used as the guiding method. First, the artifact set is randomly divided into two non-empty subsets J1_set and J2_set. The artifact sub-batches in α that belong to the artifact set J1_set are copied to α′, retaining their positions; the artifact sub-batches in ω that belong to the artifact set J2_set are copied to α′, retaining their order, and the same operation is applied to ω.

[0171] After the aforementioned interactive operations, a new generation of population is generated;

[0172] S7, perform non-dominated sorting on the population of the new generation and update the Pareto external archive;

[0173] S8, determine whether the termination condition is met, that is, whether the maximum number of iterations of the population is reached, if so, proceed to step S9, otherwise return to step S5;

[0174] S9. After reaching the maximum number of iterations of the population, according to the decoding method based on the improved grey wolf-whale swarm algorithm in step S3, the workpiece batch code, machine selection code and sub-batch sorting code are decoded and the corresponding machine-process Gantt chart and worker-process Gantt chart are output.

[0175] As an actual example in this embodiment: a workshop has 9 parallel machining equipment, which are operated by 3 workers. A certain order contains 30 types of workpieces. Since the tool holders are all of standard specifications and sizes, the machining tool switching time corresponding to different workpieces and different models is similar.

[0176] Table 1 Workers' related information

[0177]

[0178] Table 2 Related information of each model of workpiece

[0179]

[0180] Table 3 Workpiece switching time for each model

[0181]

[0182]

[0183] The final Pareto optimal solution set is as follows Figure 7 As shown, Figure 7 are the Pareto frontier solutions obtained by the three algorithms, among which the blue five-pointed star is the final Pareto optimal solution set obtained by MO-HGWSA, and Table 7 is the two objective function values ​​obtained for its corresponding scheduling scheme. Figure 7 It can be seen that the Pareto frontier solution of MO-HGWSA is better than the two comparison algorithms, indicating that MO-HGWSA is feasible and effective in solving the parallel machine batch scheduling problem with multi-objective and multi-resource constraints.

[0184] Machine-process scheduling Gantt chart and worker-process scheduling Gantt chart Figure 8 and Fig. 9 As shown. Figure 8 It can be seen which machine is used for each process and the start and end time of each process. Fig. 9 It can be seen which machine each worker performs preparatory operations on which process, and the workers' working and idle time periods can be seen.

[0185] In a preferred embodiment of this invention, all steps of the method are performed on a computer with Intel(R)Core(TM)i5-8265UCPU, 1.60GHz, and 8.0GB RAM. The penalty coefficients for early and late delivery are set to W respectively. E =0.2,W T =0.8, population size P=100, number of iterations Maxiter=300.

[0186] Compared with the prior art, this embodiment has the following beneficial effects:

[0187] The inaccuracy of the existing technology in solving the actual parallel machine scheduling is solved, and the function of efficient scheduling of parallel machines considering worker and tool resources is realized.

Claims

1. A parallel machine batch flow scheduling method considering multiple resource constraints, characterized in that The following steps are involved: Step 1: Construct a mathematical model for multi-objective parallel machine batch flow scheduling considering tool resources and worker differences; Step 2: Determine the constraints of the constructed mathematical model; Step 3: Encode and decode the gray wolf-whale algorithm based on the machine, tool, and worker constraints, and then decode the workpiece batching, machine selection, and sub-batch sorting; Step 4: Initialize and evaluate the gray wolf population, and perform Pareto non-dominated sorting on all gray wolf individuals; Step 5: Find a "better and closest" wolf for each wolf based on the Hamming distance and Pareto ranking to guide its movement; Step 6: Perform two-point crossover on the batching part, MPX crossover on the machine selection part, and IPOX crossover on the sub-batch sorting part to generate a new generation of population; Step 7: Perform non-dominated sorting on the new generation population and update the Pareto external archive; Step 8: Determine whether the termination condition is met, that is, whether the maximum number of iterations of the population is reached. If so, proceed to the next step, otherwise return to step 5; Step 9: According to the decoding method based on the improved grey wolf-whale algorithm, after decoding the workpiece batch code, machine selection code and sub-batch sorting code, the corresponding machine-process Gantt chart and worker-process Gantt chart are output.

2. A parallel machine batch flow scheduling method considering multiple resource constraints according to claim 1, characterized in that: In step 1, the mathematical model is constructed based on the two objectives of maximum completion time and delivery date deviation and based on mixed integer programming method; The mathematical symbols used in the mathematical model include: i represents the workpiece type serial number; I represents the workpiece type set {1, 2, …, n}, n represents the number of workpiece types, and i∈I; j represents the machine number; J represents the machine set {1,2,…,m}, m represents the number of machines, and j∈J; g represents the worker number; G represents the set of workers {1, 2, …, w}, w represents the number of workers, and g∈G; h i Indicates the number of tools corresponding to the i-th workpiece; N i represents the total number of workpieces of the i-th type; l i represents the actual batch number of the i-th workpiece; represents the batch size of the kth sub-batch of the i-th type of workpieces; represents the tool change setup time between workpiece type i′ and i; t ij represents the processing time of the i-th workpiece on machine j; represents the start processing time of the kth sub-batch of the i-th workpiece on machine tool j; represents the completion time of the kth batch of the i-th workpiece on machine tool j; g j Indicates that the g-th worker operates the j-th machine; A g represents the number of machines that worker g is responsible for operating; M represents a very large positive number; w E represents the weight coefficient of early completion; w T The weight coefficient of delayed completion; LT i represents the lead time of workpiece i; TT i represents the delay of job i; C max represents the maximum completion time; If the kth sub-batch of workpiece i is processed on machine j, then otherwise It means that two sub-batches are processed consecutively on machine j, and the kth sub-batch of workpiece type i′ is processed before the jth sub-batch of workpiece type i. otherwise If two sub-batches are processed on machine j, and the k′th sub-batch of workpiece type i′ is processed before the kth sub-batch of workpiece type i, then otherwise indicates that machine j processes two consecutive sub-batches, and the k'th sub-batch of workpiece type i' is processed before the k'th sub-batch of workpiece type i; when the k'th sub-batch of workpiece type i' is completed on machine j, if worker g performs preparation operations for the k'th sub-batch of workpiece type i'' on machine j', 1, otherwise is 0; Mathematical models based on mixed integer programming include: 1.1: Construct the objective function f1 that minimizes the maximum completion time as shown below: f1=min(C max )=min(max 1≤i≤n C i ); In the above formula, C i represents the maximum completion time of the i-th type of workpiece; 1.2: Construct the objective function f2 that minimizes the delivery time deviation as shown below:

3. A parallel machine batch flow scheduling method considering multiple resource constraints according to claim 2, characterized in that: In step 2, the constraints of the mathematical model are shown in the following formula: l i ≤h i (2) Among them, k represents the kth sub-batch; represents the batch size of the first sub-batch of the i-th type of workpieces; represents the completion time of the k′th sub-batch of workpiece type i′ on machine tool j; represents the completion time of the k′th sub-batch of workpiece type i′ on machine tool j; represents the tool change setup time between workpiece type i″ to i; Formula (1) indicates that the equal batching strategy is adopted when batching workpieces; Formula (2) indicates that the batch number of each type of workpiece must be less than or equal to the corresponding number of tools; Formula (3) indicates that when switching to process different types of workpieces on the same machine tool, the time for changing the tool needs to be considered; Formula (4) indicates that the completion time of each sub-batch is equal to the sum of the start processing time and the processing time of the sub-batch; Formula (5) indicates that each sub-batch can only be processed on one machine tool; Formula (6) indicates that a machine can only process one sub-batch at the same time; Formula (7) The sum of the number of machines controlled by each worker is equal to the total number of machines; Formula (8) represents the non-negative constraint of the start processing time; Formula (9) indicates that an employee can only perform preparation operations on one machine at a time.

4. A parallel machine batch flow scheduling method considering multiple resource constraints according to claim 1, characterized in that: In step 3, the coding method of the improved grey wolf-whale group algorithm is: According to the problem characteristics, a two-stage real number coding is adopted. The first stage is a three-layer coding of workpiece batching, sub-batch sorting, and machine selection; the second stage is a two-layer coding of machines and workers; The encoding length of each layer in the first stage is the sum of the maximum batch numbers of all workpieces, that is, The first layer is the batch coding of workpieces. The batch strategy adopts equal batching. If the actual batch number is less than the maximum batch number, it is legalized by introducing a virtual placeholder 0. The second layer is the machine selection coding. Its element value is the machine serial number of the corresponding sub-batch selection. The third layer is the sub-batch sorting coding. The element value is the workpiece type. The number of times it appears is the batch number of the workpiece type. The sub-batches with the highest sorting will be processed first on the assigned machines. The length of each layer of the second stage code is the total number of machines, the element value of the first layer is the machine serial number, and the element value of the second layer is the employee serial number; the second stage code represents the machine serial number that the worker is responsible for during the entire processing process.

5. A parallel machine batch flow scheduling method considering multiple resource constraints according to claim 4, characterized in that: Improve the algorithm decoding method of the gray wolf-whale group, including the following steps: S31, obtaining the workpiece type and batch of the first sub-batch of each machine, calculating the processing time of the sub-batch, and thus obtaining the processing end time of the first sub-batch of each machine; S32. Find the machine that is the first to be completed in the first sub-batch among all the machines that each worker is responsible for, and obtain the start processing time of the second sub-batch of this machine By obtaining the workpiece type and batch of the second sub-batch, the completion time of the second sub-batch is obtained; S33. Obtain the completion time of the first sub-batch of other machines for each worker, and find the machine with the shortest completion time of the first sub-batch. If the worker is idle at this time, the start processing time of the second sub-batch of this machine is If the worker performs the preparation operation on the machine that is completed earliest in step S32, the start processing time of the second sub-batch of this machine is By obtaining the workpiece type and batch size of the second sub-batch, the completion time of the sub-batch is obtained; S34, loop through all the batches that the worker is responsible for, and judge whether the worker is free at the time of completion of each batch. If the worker is free, the start time of the next batch processed by the machine is If the worker is preparing for operation on another machine, the start time of the next batch of processing on that machine is By obtaining the workpiece type and batch size of the next sub-batch, the completion time of the next sub-batch is obtained. If the maximum number of cycles is reached, the decoding step is terminated.

6. A parallel machine batch flow scheduling method considering multiple resource constraints according to claim 1, characterized in that: In step 4, the initialization process includes the following contents: S41, for the initialization of the batching part of the workpiece, the maximum batch number of each workpiece is the number of tools corresponding to the type, and the actual batch number should be less than or equal to the number of tools. First, the actual batch number of each workpiece is determined, and then the batch size is determined for each sub-batch. If the actual batch number is not equal to the maximum batch number, the position after the actual batch number is represented by a virtual placeholder 0; S42, for the initialization of the machine selection part, a random integer j of 1-m is randomly generated at each position, indicating that the corresponding batch is processed on machine j; S43, for the initialization of the sub-batch sorting part, according to the maximum batch number of each workpiece, h is generated when the sub-batch sorting is initialized. i The number of times the workpiece number appears is the batch number of this workpiece type. The sub-batches with the highest order will be processed first on the assigned machine.

7. The method for parallel machine batch flow scheduling considering multiple resource constraints according to claim 1, characterized in that: In step 5, according to the Hamming distance and the Pareto ranking level, a "better and closest" gray wolf is found for each gray wolf to guide its movement; the following steps are included: S51. For each common gray wolf, compare the number at each position in the code of workpiece batching, machine selection, and sub-batch sorting with each gray wolf in the population, and obtain the Hamming distance between itself and all other gray wolves in the population; if the numbers at each position of two gray wolves are different, the Hamming distance increases by one. The smaller the Hamming distance, the closer the two gray wolves are, and the more similar the two gray wolves are; S52. According to the Pareto ranking, the wolf with the higher ranking is better. For each wolf, find a wolf that is better than itself. Pareto dominance: Suppose there are two feasible solutions x = (x1, x2, ..., x n ) and y=(y1,y2,…,y n ),satisfy: (1) means that all sub-goals of x are not inferior to y, where n is the number of objective functions and k is the kth goal; (2) express At least one sub-goal is better than That is, there is at least one objective function component of the objective function of x that is better than y, and the components of other objective functions are not worse than y; if the above two conditions are met, then the solution x dominates y, denoted as It indicates the dominator; Non-dominated sorting level: All individuals in the population are Pareto sorted according to the target value, and individuals that are not dominated by any solution are included in the optimal solution set P. * The non-dominated sorting level is set to 1, the solution with level 1 is eliminated, and the remaining individuals continue to perform Pareto sorting, and the non-dominated sorting level of the remaining non-dominated solutions in the population is set to 2, and then the non-dominated sorting levels of other individuals are set in turn; S53, according to step S51, find out the "closer", and in step S52, find out the "better" for each wolf to find the "better and closest" wolf; the details are as follows: First, using step S51, the Hamming distance between the wolf and all other gray wolves in the population except itself can be calculated. The Hamming distance can be used to show the degree of similarity between the remaining gray wolves in the population and the gray wolf. According to the Pareto ranking level of step S52, a gray wolf with a higher level than itself is found for the gray wolf. The higher the level of the gray wolf, the better it is. Through S51 and S52, a "better and closest" gray wolf can be found for each gray wolf, that is, a gray wolf with the smallest Hamming distance and a higher level than itself can be found.

8. The method for parallel machine batch flow scheduling considering multiple resource constraints according to claim 1, characterized in that: In step 6, the interaction process based on the improved grey wolf-whale group algorithm includes: S61. In view of the characteristics of batch coding of workpieces, the total number of workpieces of the same type needs to be kept constant during the interaction between individuals. The batch part of the workpiece adopts multiple two-point intersections to select Exchange workpieces in batches according to workpiece types; S62, for the machine selection part, MPX crossover is used as the guidance method, a random number array composed of 0 and 1 is randomly generated, and the elements in α and ω that have the same position as element 1 in the array are selected and swapped; wherein α represents the guide gray wolf, and ω represents the ordinary wolf; α and ω are respectively recorded as α′ and ω′ after the interactive operation is performed; S63. For the sub-batch sorting part, the improved POX crossover is used as the boot method. The boot process has the following two steps: (1) First, randomly divide the workpiece set into two non-empty subsets J1_set and J2_set; copy the workpiece sub-batch in α that belongs to the workpiece set J1 to α′, preserving their positions; copy the workpiece sub-batch in ω that belongs to the workpiece set J2 to α′, preserving their order; (2) Copy the sub-batches of workpieces in ω that belong to the workpiece set J2 to ω′, preserving their positions; copy the sub-batches of workpieces in α that belong to the workpiece set J1 to ω′, preserving their order.

9. The method for parallel machine batch flow scheduling considering multiple resource constraints according to claim 1, characterized in that: In step 7, the new generation population is non-dominated sorted and externally archived, including: NSGA-II crowding distance sorting: A single objective function value f for each solution s Sort by monotonically increasing order, if any solution i has a single target f s Not equal to its maximum value or minimum The crowding distance of the maximum and minimum is denoted as ∞, and the crowding distance of the remaining solutions is d s It can be calculated according to formula (10); in NSGA-II, in order to measure the quality of each solution in the same frontier, a crowding distance is assigned to each solution. The idea behind it is to make the obtained Pareto optimal solution as dispersed as possible, which makes it more likely that the solution will be evenly distributed on the Pareto optimal frontier; Where S represents the number of target values; represents the next individual of individual i at target s; represents the previous individual of individual i at target s; Pareto External Archive: Pareto summarizes the optimization problems of multiple objective functions that are difficult to compare directly and expresses them as follows: Max / min F=f(x)=(f1(x),f2(x),…,f m (x)F (11) s.t.g i (x)≤0,i=1,2,…,p (12) e j (x)=0,j=1,2,…,q (13) Where F is the m objective functions (f1(x),f2(x),…,f m (x)) T An m-dimensional target vector composed of; f1(x) represents the first-dimensional target vector, f2(x) represents the second-dimensional target vector, and f m (x) represents the m-th dimension target vector, T represents the transpose of the vector; x = (x1, x2, …, x n ) # is an n-dimensional decision vector in the decision space Ω; x1 represents the first-dimensional decision vector, x2 represents the second-dimensional decision vector, and x n represents the n-th dimension decision vector; g i (x)≤0 represents all inequality constraints that must be satisfied during the optimization process, e j (x)=0 indicates that all equality constraints must be satisfied during the optimization process.

10. The method for parallel machine batch flow scheduling considering multiple resource constraints according to claim 1, characterized in that: In step 9, the workpiece batching, machine selection and sub-batch sorting are decoded, and each process is arranged on the machine to be processed and in the order of processing. After decoding, a machine-process Gantt chart and a worker-process Gantt chart are generated; the machine-process Gantt chart shows the processing time, start time and completion time of each process; the worker-process Gantt chart shows the working time of the worker on each machine, the worker's idle time period and working time period.

Citation Information

Cited By

  • Steel production equipment start-stop scheduling optimization method and device based on particle swarm optimization

    CN121903324A