Job shop scheduling method and system based on ZOA-GA algorithm
By generating an efficient scheduling solution through the ZOA-GA algorithm, the problem of poor adaptability of existing scheduling methods in real-time scenarios is solved, efficient scheduling is achieved in complex dynamic environments, and the scheduling efficiency and executability of the job shop are improved.
Patent Information
- Application Number
- CN202510708943.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-05-29
- Publication Date
- 2025-09-19
AI Technical Summary
Existing scheduling methods based on multi-process flexible job scheduling problems have poor adaptability in real-time scenarios and mostly use static scheduling optimization algorithms such as improved neighborhood search and taboo search, resulting in low efficiency. Especially when the task scale increases, the search time increases significantly, making it difficult to meet the needs of dynamic responsiveness.
A job shop scheduling method based on the ZOA-GA algorithm is adopted. By obtaining process information, the multi-process flexible job scheduling problem is defined, a scheduling model is established, the objective function and constraints are determined, and the initial population is generated using the hybrid intelligent optimization algorithm of ZOA and GA. The solution is obtained through the GLR initial population generation strategy, and an efficient scheduling solution is output.
It improves the scientific nature and executability of the scheduling plan, has global search and local optimization capabilities, and is suitable for efficient scheduling in complex dynamic environments. The output scheduling plan can be directly applied to actual production and has good feasibility and engineering value.
Smart Images

Figure CN120672032A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of job shop scheduling, and in particular to a job shop scheduling method and system based on a ZOA-GA algorithm. Background Art
[0002] Job shop scheduling involves rationally arranging the order and timing of processing each workpiece on different machines in a production shop with multiple machines and workpieces to achieve optimization goals. The ZOA algorithm, or Zebra Optimization Algorithm, is a biomimetic intelligent optimization algorithm that simulates the foraging and predator-avoidance behavior of zebras in their natural environment. The GA algorithm, or Genetic Algorithm, is a classic evolutionary computing method that simulates natural selection and genetic mechanisms to gradually "evolve" the optimal solution to a problem. A job shop scheduling method based on the ZOA-GA algorithm combines the advantages of the Zebra Optimization Algorithm (ZOA) and the Genetic Algorithm (GA) to design an efficient scheduling optimization strategy for solving complex job shop scheduling problems.
[0003] Scheduling job shops through the ZOA-GA algorithm can improve the intelligence level of scheduling and better search for the global optimum through bionic and evolutionary mechanisms, which is of great significance to automotive parts processing, semiconductor manufacturing, and flexible manufacturing systems.
[0004] However, existing scheduling methods based on multi-process flexible job scheduling problems have poor adaptability to real-time scenarios, and mostly use methods such as improved neighborhood search and taboo search, which are mostly static scheduling optimization algorithms, resulting in low efficiency. Especially when the task scale increases, the search time increases significantly, making it difficult to meet the requirements of dynamic responsiveness. Summary of the Invention
[0005] In view of the above-mentioned deficiencies in the existing technology, the purpose of the embodiments of the present invention is to provide a job shop scheduling method based on the ZOA-GA algorithm, which can solve the problems that the existing scheduling methods based on multi-process flexible job scheduling problems have poor adaptability to real-time scenarios, and mostly use improved neighborhood search, taboo search and other methods, which are mostly static scheduling optimization algorithms, resulting in low efficiency. Especially when the task scale increases, the search time increases significantly, making it difficult to meet the technical problems of dynamic responsiveness requirements.
[0006] A first aspect of an embodiment of the present invention provides a job shop scheduling method based on a ZOA-GA algorithm, comprising:
[0007] S1: Obtain process information of workpieces to be processed in the job shop;
[0008] S2: Based on the process information, define the multi-process flexible job scheduling problem;
[0009] S3: Based on the multi-process flexible job scheduling problem, a scheduling model is established whose output is the scheduling plan;
[0010] S4: Determine the objective function and constraints of the scheduling model;
[0011] S5: Under the constraints, the ZOA-GA algorithm is used to generate the initial population using the GLR initial population generation strategy, and the scheduling model is solved based on the initial population with the goal of minimizing the objective function value;
[0012] S6: Output the solution as the scheduling plan for the job shop.
[0013] A second aspect of an embodiment of the present invention provides a job shop scheduling system based on a ZOA-GA algorithm, comprising: a processor and a memory;
[0014] The memory stores programs or instructions that can be run on the processor. When the programs or instructions are executed by the processor, the steps of the job shop scheduling method based on the ZOA-GA algorithm of the first aspect are implemented.
[0015] According to a third aspect of an embodiment of the present invention, a readable storage medium is provided, on which a program or instruction is stored. When the program or instruction is executed by a processor, the steps of the job shop scheduling method based on the ZOA-GA algorithm of the first aspect are implemented.
[0016] The beneficial effects brought about by the technical solution provided by the embodiment of the present invention include at least:
[0017] In an embodiment of the present invention, by obtaining the process information of the workpieces to be processed in the job shop, a multi-process flexible job scheduling problem is defined based on the process information. Then, based on the multi-process flexible job scheduling problem, a scheduling model is established that outputs a scheduling solution, thereby providing a solution space for the optimization algorithm. The objective function and constraints of the scheduling model are determined. By providing optimization targets and boundaries, practical problems such as parallel processes and resource preemption can be flexibly addressed. Finally, under the constraints, the initial population is generated using the ZOA-GA algorithm using the GLR initial population generation strategy. Based on the initial population, the scheduling model is solved with the goal of minimizing the objective function value. The solution result is used as the scheduling solution for the job shop, ensuring the scientific nature and feasibility of the scheduling solution. By integrating the two intelligent optimization algorithms, ZOA and GA, the solution process has global search and local optimization capabilities, improving the quality of the solution and convergence efficiency. The final output scheduling solution can be directly applied to actual production, has good feasibility and engineering value, and is particularly suitable for efficient scheduling needs in complex dynamic environments. BRIEF DESCRIPTION OF THE DRAWINGS
[0018] The accompanying drawings are only for the purpose of illustrating specific embodiments and are not to be considered as limiting the present invention. Throughout the drawings, the same reference symbols represent the same components. Obviously, the drawings described below are only some embodiments of the present invention. It is clear that those skilled in the art can derive other drawings based on these drawings without inventive effort.
[0019] Figure 1 1 is a flow chart of a job shop scheduling method based on a ZOA-GA algorithm provided by an embodiment of the present invention;
[0020] Figure 2 It is a structural diagram of a job shop scheduling system based on the ZOA-GA algorithm provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0021] In order to enable those skilled in the art to better understand the technical solutions in the embodiments of the present invention, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the embodiments described are part of the embodiments of the present invention, rather than all of the embodiments. It should be understood that these descriptions are merely exemplary and are not intended to limit the scope of the present invention. Based on the embodiments of the present invention, all other embodiments obtained by those of ordinary skill in the art without creative work should fall within the scope of protection of the present invention.
[0022] The job shop scheduling method based on the ZOA-GA algorithm provided by the embodiment of the present invention is described in detail below with reference to the accompanying drawings through specific embodiments and application scenarios.
[0023] Reference Manual Figure 1 , which shows a flow chart of a job shop scheduling method based on the ZOA-GA algorithm provided by an embodiment of the present invention.
[0024] An embodiment of the present invention provides a job shop scheduling method based on the ZOA-GA algorithm, which may include the following steps:
[0025] S1: Obtain the process information of the workpiece to be processed in the job shop.
[0026] Among them, the job shop refers to a production environment with multiple processes, multiple procedures, and multiple machines working together. Different workpieces have different processing paths, which are highly flexible and complex. The workpieces to be processed refer to parts or products that have not yet been processed and need to undergo one or more procedures in the workshop. The process information includes the processing steps that each workpiece needs to go through (such as drilling, welding, assembly, etc.), the optional processing machines for each procedure, the estimated processing time, sequence dependencies, etc.
[0027] It's important to note that the system captures workpiece process information, providing a realistic and comprehensive data foundation for subsequent scheduling modeling. This ensures that scheduling plans closely align with production realities, reflecting the sequence, equipment requirements, and processing capabilities of each process, enabling highly accurate and targeted modeling.
[0028] S2: Based on the process information, define the multi-process flexible job scheduling problem.
[0029] Among them, the multi-process flexible job scheduling problem (MP-FJSP problem) refers to a job shop with multiple workpieces, multiple processes, and multiple machines. Each process can not only be executed on different machines (flexible), but also adopt different processing methods (multi-process). It is necessary to arrange the best processing sequence and resource allocation under various constraints to optimize one or more objectives (such as total processing time, machine utilization, etc.).
[0030] It's important to note that by abstracting complex production tasks into a multi-process flexible job scheduling problem, the model's expressiveness and relevance to reality are enhanced. This modeling approach not only accurately captures the multiple path choices and resource allocation flexibility inherent in actual workpiece processing, but also provides a clear problem framework and solution boundaries for subsequent algorithm optimization. Compared to the traditional JSSP model, MP-FJSP better simulates the diverse machine configurations and frequent process switching found in real workshops, making the scheduling method more applicable and scalable, making it a crucial foundation for building intelligent scheduling systems.
[0031] S3: Based on the multi-process flexible job scheduling problem, a scheduling model is established whose output is the scheduling plan.
[0032] Among them, the scheduling model is a model that abstracts the actual production scheduling problem into a mathematical form, which includes objective functions (such as minimizing the total processing time), variables (such as machine selection, process sequence) and constraints (such as non-overlapping processes, machine conflicts, etc.). It is the core foundation of scheduling optimization.
[0033] It's important to note that by establishing a mathematical model that outputs scheduling solutions, the complex MP-FJSP problem is systematized and structured, making the previously difficult-to-quantify shop floor scheduling task computable and solvable. This model not only clearly defines the optimization objective and controllable variables but also incorporates key features found in real-world production, such as multiple process options and resource flexibility. This significantly enhances the problem's expressive power and the algorithm's applicability.
[0034] S4: Determine the objective function and constraints of the scheduling model.
[0035] The objective function is a mathematical expression used to measure the performance of scheduling optimization solutions. Common objectives include minimizing total processing time (makespan), minimizing equipment idle time, and maximizing resource utilization. It determines the direction and ultimate effectiveness of scheduling optimization. Constraints are rules and restrictions set to ensure the feasibility of scheduling solutions. For example, each machine can only process one process at a time, the order of processes cannot be reversed, and resources cannot be reused.
[0036] It's important to note that by defining the scheduling model's objective function and constraints, the entire scheduling process achieves a balance between optimization and practical feasibility. The objective function provides clear optimization criteria for the intelligent algorithm, while reasonable constraints ensure that the solution is consistent with production reality and avoid logical and resource conflicts.
[0037] In a possible implementation, the constraints specifically include:
[0038] Ensure that each machine can only perform one process at most at the same time.
[0039] Ensure that each process can only be processed by one machine and processed to completion.
[0040] Ensure that the earliest processing time of any process in the parallel process set of the workpiece shall not be earlier than the completion time of the immediately preceding process in the parallel process set as a whole, and the starting processing time of the subsequent processes in the parallel process set shall not be less than the maximum completion time of the processes in the parallel process set.
[0041] Ensure that there are no priority constraints when processing different workpieces.
[0042] Ensure that at the same time, except for the processes in the parallel process set that can be processed by several processing machines at the same time, each of the remaining processes can only be processed by one processing machine.
[0043] Ensure that all workpieces can be processed at the initial moment.
[0044] Ensure that each machine's transit time is not included in the constraints when processing.
[0045] Ensure that when processing a batch of workpieces, the impact of uncertain factors such as machine failure is ignored.
[0046] It's important to note that constraints ensure that each process is carried out within reasonable time and resource constraints, avoiding logical errors such as machine conflicts, reversed process order, and resource duplication. This ensures that the optimization results are not only mathematically valid but also directly applicable in real-world production environments. Constraints also reflect management strategies and physical limitations in production, such as parallel process control, equipment specificity, and processing time windows, thereby improving the accuracy and engineering controllability of scheduling solutions.
[0047] In a possible implementation, the objective function is specifically:
[0048] F=min(max i∈[1,n] f i )
[0049] f i =max(f ij )
[0050]
[0051] Among them, F represents the objective function, min represents the minimum value, max represents the maximum value, and f i represents the completion time of the i-th workpiece, i=1,2,…,n, n represents the total number of workpieces to be processed, f ij represents the completion time of the jth process of the i-th workpiece, S ij represents the starting processing time of the jth process of the i-th workpiece, M ijk represents a binary decision variable, t ijk It represents the time required for the jth process of the i-th workpiece to be processed by the k-th machine in its optional machine set, k = 1, 2, ..., p, p represents the number of optional processing machines, Indicates the immediate predecessor process j of the jth process of the i-th workpiece - Completion time, f i′j′ represents the completion time of the j′th process of the i′th workpiece, It means that the jth process of the i-th workpiece is processed on the kth machine in its optional machine set before the jth process of the i′th workpiece. i′j′ Indicates the start processing time of the j′th process of the i′th workpiece, Indicates the start processing time of the process in the parallel process set, Indicates the start time of the next process in the parallel process set, represents the maximum completion time of the entire parallel process set, represents the overall start time of the set of sequentially interchangeable processes, represents the completion time of the immediate predecessor process of the entire sequence-exchangeable process set, Indicates the start time of the next process in the entire parallel process set, represents the maximum completion time of the entire sequence-exchangeable process set, f ij′ represents the completion time of the j′th process in the parallel process set of the i-th job, s ij′ represents the start time of the j′th process in the parallel process set of the i-th job, represents a binary decision variable, Indicates that the jth process of the i-th workpiece is processed on the kth machine in its optional machine set before the jth process of the i′th workpiece, otherwise it is 0, M ij′k represents a binary decision variable, M ij′k =1 means that the j′th process of the i-th workpiece is processed by the k-th machine in its optional machine set, otherwise it is 0.
[0052] S5: Under the constraints, the ZOA-GA algorithm is used to generate the initial population using the GLR initial population generation strategy, and the scheduling model is solved based on the initial population with the goal of minimizing the objective function value.
[0053] The ZOA-GA algorithm is a hybrid intelligent optimization algorithm that combines the Zebra Optimization Algorithm (ZOA) with the Genetic Algorithm (GA). The GLR initial population generation strategy is an initialization method based on prior information and heuristic rules. It is used to generate higher-quality and more rationally distributed initial solutions, which helps the algorithm converge faster. The initial population refers to the first set of candidate solutions at the beginning of the algorithm. The quality of the population significantly affects the optimization speed of the algorithm and the quality of the final solution.
[0054] It should be noted that by combining the strengths of the two intelligent algorithms, ZOA and GA, and introducing the GLR strategy to generate a high-quality initial population, the efficiency, stability, and global search capabilities of the solution process are significantly improved. ZOA provides powerful exploration capabilities, effectively escaping local optima, while GA has a robust genetic evolution mechanism that maintains population diversity.
[0055] In a possible implementation, the ZOA-GA algorithm specifically includes:
[0056] S501: Encode the solution to the multi-process flexible job scheduling problem through the machine selection + process sorting + mode selection encoding method.
[0057] S502: Convert the encoding result into an actual scheduling solution through a decoding operation to meet the constraint conditions.
[0058] Among them, the decoding operation is to convert the encoded vector into an actual scheduling plan to ensure that it meets all constraints and is realistic and feasible.
[0059] S503: Based on the decoding result, the initial population is generated using the GLR initial population generation strategy:
[0060]
[0061] Among them, Z represents the zebra population, which is the solution set, Z x represents the xth zebra, i.e. the xth solution, x=1,2,…,N, N represents the total number of zebras, z xy Represents the value of the y-th dimension variable of the x-th zebra, y = 1, 2,…, L, and L represents the length of the solution individual.
[0062] S504: Calculate the fitness of each individual in the initial population and determine the pioneer zebra:
[0063]
[0064] Among them, F represents the objective function value vector, F(Z x ) represents the objective function value of the x-th zebra, x=1,2,…,N, and N represents the total number of zebras.
[0065] Specifically, Pioneer Zebra is a term in the Zebra Optimization Algorithm (ZOA), which refers to the individual with the best fitness value in the current population. It can also be understood as the "current best solution" or the "strongest zebra."
[0066] S505: Combine the zebra's foraging strategy and defense strategy to update the initial population.
[0067] Among them, the zebra's foraging strategy and defense strategy are the core mechanisms of ZOA, which imitate the behavior patterns of zebras in nature in finding food (global search) and escaping natural enemies (local adjustment) to achieve dynamic exploration of the solution space.
[0068] S506: According to the updated population, individuals in the population are converted into a scheduling plan.
[0069] S507: Perform crossover, mutation, and elite selection operations on the updated population.
[0070] Among them, crossover operation, mutation operation and elite selection operation are the core operations in genetic algorithms, which are used to introduce new solutions, diversity, retain excellent solutions, and promote the continuous evolution of the algorithm.
[0071] S508: Determine whether the maximum number of iterations has been reached. If so, output the optimal solution as the optimal scheduling solution. Otherwise, return to step S504.
[0072] It's important to note that the GLR strategy further enhances the directionality of population initialization, ensuring that the algorithm has high-quality solutions and a more optimal search starting point from the outset. Furthermore, this method optimizes based on the satisfaction of all constraints, ensuring that the output solution is both optimal and feasible. This is a key step in ensuring the efficient and accurate operation of the scheduling model.
[0073] In a possible implementation manner, after S503, the method further includes:
[0074] Convert the scheduling solution in the initial population into a position vector.
[0075] The scheduling solution in the initial population is expressed as:
[0076] A={MS(1),MS(2),...,MS(l),OS(1),OS(2),...,OS(l),m(1),m(2),...,m(n)}
[0077] Among them, A represents an individual chromosome, {MS(1), MS(2), ..., MS(l)} represents the machine selection part code, and its gene value is represented by the optional machine code, {OS(1), OS(2), ..., OS(l)} represents the process sorting code, and its gene value is represented by the workpiece number, and {m(1), m(2), ..., m(n)} is the mode selection code, and its value is 0 or 1.
[0078] It should be noted that the scheduling solution is a certain task arrangement method, which represents a complete scheduling plan that indicates which machine the workpiece is processed on, in what order, and using what processing mode. The position vector is an expression that converts the scheduling solution into a numerical vector. Each vector dimension represents a scheduling decision element (such as machine number, process sequence value, mode code, etc.).
[0079] In a possible implementation, converting the scheduling solutions in the initial population into position vectors specifically includes: converting the scheduling solutions of the machine selection part, the process sequencing part, and the mode selection part into position vectors respectively.
[0080] Among them, the machine selection part indicates which machine is selected to process each process in the scheduling solution; the process sorting part refers to the order in which the processes are executed for each workpiece, which is the core control factor in scheduling; the mode selection part indicates which processing method is selected for each process in a multi-process scenario.
[0081] The scheduling solution of the machine selection part is converted into a position vector using the following formula:
[0082]
[0083] Among them, z(i) represents the position vector value of the i-th workpiece, s(i) represents the total number of optional machines for the process corresponding to the i-th workpiece, ε represents a random number, and MS(i) represents the machine selection part code corresponding to the i-th workpiece.
[0084] Converting the scheduling solution of the process sequencing part into a position vector specifically includes:
[0085] A series of values are randomly generated within a preset interval, where the values represent the values of each process.
[0086] Assign an ROV value to each process according to the ROV rule and mark them in ascending order.
[0087] According to the order of process numbers, each process is assigned its corresponding ROV value one by one to complete the conversion of the position vector.
[0088] The scheduling solution of the mode selection part is converted into a position vector as follows:
[0089]
[0090] Among them, m(i) represents the mode selection part code corresponding to the i-th workpiece, and round represents randomly generating a number within the specified range.
[0091] It should be noted that by subdividing the scheduling solution into three parts: machine selection, process sorting, and processing mode, and converting them into position vectors respectively, the entire scheduling problem can be modeled and optimized in a unified numerical space. This modular representation method allows each type of decision factor to be clearly encoded, adjusted, and analyzed, improving the accuracy, flexibility, and interpretability of the optimization algorithm when dealing with complex scheduling problems. At the same time, the introduction of ROV rules and scaling factors realizes a smooth mapping from discrete decisions to continuous variables, enhancing the algorithm's control over the search space and its evolutionary potential. In addition, this structured coding method also provides a standardized interface for subsequent operations such as crossover, mutation, and local search, enhancing the versatility and scalability of the algorithm, and is particularly suitable for handling complex multi-process flexible job scheduling scenarios.
[0092] In one possible implementation, the updating of individual positions in the population through a foraging strategy is specifically as follows:
[0093]
[0094] Among them, z xy represents the value of the y-th dimension variable of the x-th zebra, r represents a random number between [0,1], PZ represents the pioneer zebra, that is, the optimal solution, PZ yRepresents the value of the y-th dimension of the pioneer zebra, and I is used to adjust the change of the solution. I∈{1,2}, when I=2, the change of the solution will be greater. Z represents the value of the y-th dimension of the state updated by the x-th zebra under the first-stage strategy P1. x represents the position vector of the xth zebra, represents the updated state of the xth zebra under the first stage strategy P1, F x represents the objective function value of the xth zebra before updating, Represents the objective function value of the x-th zebra after the first stage strategy update.
[0095] The population update through defense strategy includes:
[0096] When lions attack zebras, the zebras renew the population by choosing an escape strategy.
[0097] Among them, the escape strategy refers to quickly changing the individual position to move away from the current area, increase the search range, and jump out of the local optimum.
[0098] When other predators attack zebras, the zebras update the population by choosing an offensive strategy:
[0099]
[0100] in, It represents the updated value of the y-th dimension of the state of the x-th zebra under the second-stage strategy P2. S1 and S2 represent two modes. When 0≤P s When ≤0.5, update mode 1 is used, otherwise update mode 2 is used; R is a constant with a value of 0.01, r is a random number between [0,1], T represents the maximum number of iterations, t represents the current number of iterations, and Z x represents the position vector of the xth zebra, It represents the updated state of the xth zebra under the second-stage strategy P2. The table represents the objective function value of the x-th zebra after the second-stage strategy update.
[0101] Specifically, the offensive strategy refers to making small adjustments to individual states to improve the quality of local solutions.
[0102] It's important to note that by simulating the foraging and defense behaviors of zebras in nature, the ZOA-GA algorithm effectively combines global search (foraging) with local adjustments (defense), significantly enhancing its search flexibility and adaptability. The foraging strategy, guided by the optimal individual, gradually approaches the global optimum, ensuring convergence in the optimization process. The defense strategy, by simulating dynamic perturbations through escape or counterattack, effectively prevents the algorithm from falling into local optima and maintains population diversity.
[0103] In one possible implementation, converting individuals in the population into a scheduling solution includes:
[0104] The conversion formula for the machine selection part is as follows:
[0105]
[0106] Among them, MS(i) represents the machine selection part code corresponding to the i-th workpiece, z(i) represents the position vector value of the i-th workpiece, s(i) represents the total number of optional machines in the process corresponding to the i-th workpiece, and roundn represents the rounding operation.
[0107] The transformation of the process sorting part is as follows:
[0108] Sort by the value of the position vector, from small to large.
[0109] An ROV value was assigned to each gene based on the ranking results.
[0110] The process is sorted according to the ROV value to convert the individuals in the population into a scheduling plan.
[0111] The conversion formula of the mode selection part is as follows:
[0112]
[0113] Among them, m(i) represents the mode selection part code corresponding to the i-th workpiece, sign represents the sign function, when ε≤0, m(i)=0, indicating that the mode selection coding gene value is 0, when ε>0, m(i)=1, indicating that the mode selection coding gene value is 1.
[0114] It should be noted that by separately decoding the three types of decision variables in the individual vectors (machine selection, process sequence, and process mode), the abstract algorithm individuals can be accurately and efficiently restored to complete scheduling plans. Overall, this conversion process is both simple and efficient, and highly controllable and interpretable. It is a key bridge for realizing the engineering application of algorithm optimization results.
[0115] S6: Output the solution as the scheduling plan for the job shop.
[0116] The solution result refers to the optimal or near-optimal solution obtained after optimization by the ZOA-GA algorithm, that is, a set of scheduling decisions that assign specific machines, processing sequences, and processing methods to each process. The scheduling plan is a schedule that can be actually executed, which clarifies the execution order of each process in the workshop for each workpiece, the machines used, and their time arrangements. It is usually output as a Gantt chart or task plan.
[0117] It's important to note that through this output step, companies can seamlessly embed the optimization results of intelligent algorithms into their Manufacturing Execution Systems (MES) or scheduling platforms, achieving automated, transparent, and visualized task scheduling. Furthermore, the standardized structure of the output results facilitates further analysis, simulation, and dynamic adjustment, enhancing the practicality, responsiveness, and engineering controllability of the scheduling system. This phase also marks the completion of the closed loop from theoretical modeling to actual production decision support, a crucial step in promoting intelligent manufacturing and efficient production.
[0118] The beneficial effects brought about by the technical solution provided by the embodiment of the present invention include at least:
[0119] In an embodiment of the present invention, by obtaining the process information of the workpieces to be processed in the job shop, a multi-process flexible job scheduling problem is defined based on the process information. Then, based on the multi-process flexible job scheduling problem, a scheduling model is established that outputs a scheduling solution, thereby providing a solution space for the optimization algorithm. The objective function and constraints of the scheduling model are determined. By providing optimization targets and boundaries, practical problems such as parallel processes and resource preemption can be flexibly addressed. Finally, under the constraints, the initial population is generated using the ZOA-GA algorithm using the GLR initial population generation strategy. Based on the initial population, the scheduling model is solved with the goal of minimizing the objective function value. The solution result is used as the scheduling solution for the job shop, ensuring the scientific nature and feasibility of the scheduling solution. By integrating the two intelligent optimization algorithms, ZOA and GA, the solution process has global search and local optimization capabilities, improving the quality of the solution and convergence efficiency. The final output scheduling solution can be directly applied to actual production, has good feasibility and engineering value, and is particularly suitable for efficient scheduling needs in complex dynamic environments.
[0120] Reference Manual Figure 2 , which shows a structural diagram of a job shop scheduling system based on the ZOA-GA algorithm provided by an embodiment of the present invention.
[0121] The embodiment of the present invention provides a job shop scheduling system 20 based on the ZOA-GA algorithm, comprising: a processor 201 and a memory 202;
[0122] The memory 202 stores programs or instructions that can be run on the processor 201. When the programs or instructions are executed by the processor 201, the steps of the above-mentioned job shop scheduling method based on the ZOA-GA algorithm are implemented, and the same technical effect can be achieved. To avoid repetition, the present invention will not go into details.
[0123] It should be understood that the processor 201 in the embodiment of the present invention may be a central processing unit (CPU), and the processor may also be other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor may be a microprocessor or any conventional processor, etc.
[0124] It should also be understood that the memory 202 in the embodiment of the present invention can be a volatile memory or a non-volatile memory, or can include both volatile and non-volatile memories. Among them, the non-volatile memory can be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. The volatile memory can be a random access memory (RAM), which is used as an external cache. By way of example and not limitation, many forms of random access memory (RAM) are available, such as static RAM (SRAM), dynamic random access memory (DRAM), synchronous DRAM (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link DRAM (SLDRAM), and direct rambus RAM (DR RAM).
[0125] The above embodiments can be implemented in whole or in part through software, hardware (such as circuits), firmware, or any other combination. When implemented using software, the above embodiments can be implemented in whole or in part in the form of a computer program product. A computer program product includes one or more computer instructions or computer programs. When the computer instructions or computer program are loaded or executed on a computer, the process or function according to the embodiments of the present invention is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. Computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via a wired method (such as infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device such as a server or data center that contains a collection of one or more available media. The available media can be magnetic media (such as floppy disks, hard disks, tapes), optical media (such as DVDs), or semiconductor media. The semiconductor media can be a solid-state drive.
[0126] It should be understood that in various embodiments of the present invention, the size of the serial numbers of the above-mentioned processes does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present invention.
[0127] Those skilled in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professionals and technicians can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of the present invention.
[0128] Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the above-described equipment, devices and units can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0129] In the several embodiments provided by the present invention, it should be understood that the disclosed devices, apparatuses, and methods can be implemented in other ways. For example, the device embodiments described above are merely illustrative. For example, the division of units is merely a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another device, or some features can be ignored or not executed. In addition, the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, and can be electrical, mechanical, or other forms.
[0130] Units described as separate components may or may not be physically separate, and components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected to achieve the purpose of this embodiment according to actual needs.
[0131] In addition, each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
[0132] If the function is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes a number of instructions for enabling a computer device (which can be a personal computer, server, or network device, etc.) to execute all or part of the steps of the various embodiments of the present invention. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM), random access memory (RAM), magnetic disk or optical disk, and other media that can store program code.
[0133] An embodiment of the present invention provides a readable storage medium including: a program or instruction stored on the readable storage medium, and when the program or instruction is executed by the processor, the steps of the above-mentioned job shop scheduling method based on the ZOA-GA algorithm are implemented, and the same technical effect can be achieved. To avoid repetition, the present invention will not be repeated.
[0134] Finally, it should be noted that the above embodiments are merely illustrative of the technical solutions of the embodiments of the present invention, and are not intended to limit them. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they may still modify the technical solutions described in the aforementioned embodiments, or replace some of the technical features therein with equivalents; and such modifications or replacements do not deviate from the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present invention. Any changes or replacements that can be easily conceived by those skilled in the art within the technical scope disclosed in the present invention should be covered by the scope of protection of the present invention.
Claims
1. A job shop scheduling method based on ZOA-GA algorithm, characterized in that: include: S1: Acquire process information of workpieces to be processed in the workshop; S2: Based on the process information, define a multi-process flexible job scheduling problem; S3: establishing a scheduling model whose output is a scheduling solution according to the multi-process flexible operation scheduling problem; S4: Determine the objective function and constraints of the scheduling model; S5: Under the constraints of the constraints, generate an initial population using the ZOA-GA algorithm and the GLR initial population generation strategy, and solve the scheduling model based on the initial population with the goal of minimizing the objective function value; S6: Outputting the solution result as the scheduling plan for the job shop.
2. The job shop scheduling method based on the ZOA-GA algorithm according to claim 1, characterized in that: The constraints specifically include: Ensure that each machine can only perform one process at a time; Ensure that each process can only be processed by one machine and processed to completion; Ensure that the earliest processing time of any process in the parallel process set of the workpiece shall not be earlier than the completion time of the immediately preceding process in the parallel process set as a whole, and that the start processing time of the subsequent processes in the parallel process set shall not be less than the maximum completion time of the processes in the parallel process set; Ensure that there are no priority constraints when processing different workpieces; Ensure that at the same time, except for the processes in the parallel process set that can be processed by several processing machines at the same time, each of the remaining processes can only be processed by one processing machine; Ensure that all workpieces can be processed at the initial moment; Ensure that when each machine is processing, the transit time of each machine is not included in the constraints; Ensure that when processing a batch of workpieces, the impact of uncertain factors such as machine failure is ignored.
3. The job shop scheduling method based on the ZOA-GA algorithm according to claim 1, characterized in that: The objective function is specifically: F=min(max i∈[1,n] f i ); f i =max(f ij ); Among them, F represents the objective function, min represents the minimum value, max represents the maximum value, and f i represents the completion time of the i-th workpiece, i=1,2,…,n, n represents the total number of workpieces to be processed, f ij represents the completion time of the jth process of the i-th workpiece, S ij represents the starting processing time of the jth process of the i-th workpiece, M ijk represents a binary decision variable, t ijk It represents the time required for the jth process of the i-th workpiece to be processed by the k-th machine in its optional machine set, k = 1, 2, ..., p, p represents the number of optional processing machines, Represents the immediate predecessor process j of the jth process of the i-th workpiece - Completion time, f i′j′ represents the completion time of the j′th process of the i′th workpiece, It means that the jth process of the i-th workpiece is processed on the kth machine in its optional machine set before the jth process of the i′th workpiece. i′j′ Indicates the start processing time of the j′th process of the i′th workpiece, Indicates the start processing time of the process in the parallel process set, Indicates the start time of the next process in the parallel process set, represents the maximum completion time of the entire parallel process set, represents the overall start time of the set of sequentially interchangeable processes, represents the completion time of the immediate predecessor process of the entire sequence-exchangeable process set, Indicates the start time of the next process in the entire parallel process set, represents the maximum completion time of the entire sequence-exchangeable process set, f ij′ represents the completion time of the j'th process in the parallel process set of the i-th job, s ij′ represents the start time of the j'th process in the parallel process set of the i-th workpiece, represents a binary decision variable, Indicates that the jth process of the i-th workpiece is processed before the j'th process of the i'th workpiece on the kth machine in its optional machine set, otherwise it is 0, M ij′k represents a binary decision variable, M ij′k =1 means that the j'th process of the i-th workpiece is processed by the k-th machine in its optional machine set, otherwise it is 0.
4. The job shop scheduling method based on the ZOA-GA algorithm according to claim 1, characterized in that: The ZOA-GA algorithm specifically includes: S501: Encode the solution to the multi-process flexible job scheduling problem through a machine selection + process sorting + mode selection encoding method; S502: Converting the encoding result into an actual scheduling solution through a decoding operation to satisfy the constraint conditions; S503: Based on the decoding result, the initial population is generated by the GLR initial population generation strategy: Among them, Z represents the zebra population, which is the solution set, Z x represents the xth zebra, i.e. the xth solution, x=1,2,…,N, N represents the total number of zebras, z xy represents the value of the y-th dimension variable of the x-th zebra, y = 1, 2, ..., L, L represents the length of the solution individual; S504: Calculate the fitness of each individual in the initial population and determine the pioneer zebra: Among them, F represents the objective function value vector, F(Z x ) represents the objective function value of the xth zebra, x = 1, 2, ..., N, where N is the total number of zebras; S505: combining the zebra foraging strategy and defense strategy, updating the initial population; S506: According to the updated population, convert the individuals in the population into a scheduling plan; S507: Perform crossover, mutation, and elite selection operations on the updated population; S508: Determine whether the maximum number of iterations has been reached. If so, output the optimal solution as the optimal scheduling solution. Otherwise, return to step S504.
5. The job shop scheduling method based on the ZOA-GA algorithm according to claim 1, characterized in that: After S503, the following steps are further included: Converting the scheduling solution in the initial population into a position vector; The scheduling solution in the initial population is expressed as: A={MS(1),MS(2),...,MS(l),OS(1),OS(2),...,OS(l),m(1),m(2),...,m(n)}; Among them, A represents an individual chromosome, {MS(1), MS(2), ..., MS(l)} represents the machine selection part code, and its gene value is represented by the optional machine code, {OS(1), OS(2), ..., OS(l)} represents the process sorting code, and its gene value is represented by the workpiece number, and {m(1), m(2), ..., m(n)} is the mode selection code, and its value is 0 or 1.
6. The job shop scheduling method based on the ZOA-GA algorithm according to claim 5, characterized in that: Converting the scheduling solution in the initial population into a position vector specifically includes: Convert the scheduling solutions of the machine selection part, process sequencing part and mode selection part into position vectors respectively; The scheduling solution of the machine selection part is converted into a position vector by the following formula: Where z(i) represents the position vector value of the i-th workpiece, s(i) represents the total number of optional machines for the process corresponding to the i-th workpiece, ε represents a random number, and MS(i) represents the machine selection part code corresponding to the i-th workpiece; Converting the scheduling solution of the process sequencing part into a position vector specifically includes: Randomly generate a series of numerical values within a preset interval, wherein the numerical values represent the numerical values of each process; Assign an ROV value to each process according to the ROV rule and mark them in ascending order; According to the order of process numbers, each process is assigned its corresponding ROV value one by one to complete the conversion of the position vector; The scheduling solution of the mode selection part is converted into a position vector as follows: Among them, m(i) represents the mode selection part code corresponding to the i-th workpiece, and round represents randomly generating a number within the specified range.
7. The job shop scheduling method based on the ZOA-GA algorithm according to claim 1, characterized in that: The foraging strategy is used to update the position of individuals in the population as follows: Among them, z xy represents the value of the y-th dimension variable of the x-th zebra, r represents a random number between [0,1], PZ represents the pioneer zebra, that is, the optimal solution, PZ y Represents the value of the y-th dimension of the pioneer zebra, and I is used to adjust the change of the solution. I∈{1,2}, when I=2, the change of the solution will be greater. Z represents the value of the y-th dimension of the state updated by the x-th zebra under the first-stage strategy P1. x represents the position vector of the xth zebra, represents the updated state of the xth zebra under the first stage strategy P1, F x represents the objective function value of the xth zebra before updating, represents the objective function value of the x-th zebra after the first stage strategy update; Through the defense strategy, population update specifically includes: When lions attack zebras, zebras renew their population by choosing an escape strategy; When other predators attack zebras, the zebras update the population by choosing an offensive strategy: in, It represents the updated value of the y-th dimension of the state of the x-th zebra under the second-stage strategy P2. S1 and S2 represent two modes. When 0≤P s When ≤0.5, update mode 1 is used, otherwise update mode 2 is used; R is a constant with a value of 0.01, r is a random number between [0,1], T represents the maximum number of iterations, t represents the current number of iterations, and Z x represents the position vector of the xth zebra, It represents the updated state of the xth zebra under the second-stage strategy P2. The table represents the objective function value of the x-th zebra after the second-stage strategy update.
8. The job shop scheduling method based on the ZOA-GA algorithm according to claim 1, characterized in that: The converting of individuals in the population into a scheduling scheme includes: The conversion formula of the machine selection part is specifically: Among them, MS(i) represents the machine selection part code corresponding to the i-th workpiece, z(i) represents the position vector value of the i-th workpiece, s(i) represents the total number of optional machines in the process corresponding to the i-th workpiece, and roundn represents the rounding operation; The transformation of the process sorting part is specifically as follows: Sort by the value of the position vector from small to large; Assign ROV value to each gene based on the ranking results; The process is sorted according to the ROV value to convert the individuals in the population into a scheduling plan; The conversion formula of the mode selection part is specifically: Among them, m(i) represents the mode selection part code corresponding to the i-th workpiece, sign represents the sign function, when ε≤0, m(i)=0, indicating that the mode selection coding gene value is 0, when ε>0, m(i)=1, indicating that the mode selection coding gene value is 1.
9. A job shop scheduling system based on ZOA-GA algorithm, characterized in that: include: processor and memory; The memory stores a program or instruction that can be run on the processor, and when the program or instruction is executed by the processor, the steps of the job shop scheduling method based on the ZOA-GA algorithm as described in any one of claims 1 to 8 are implemented.
10. A readable storage medium, characterized in that: The readable storage medium stores a program or instruction, and when the program or instruction is executed by the processor, the steps of the job shop scheduling method based on the ZOA-GA algorithm as described in any one of claims 1 to 8 are implemented.