A distributed maintenance task scheduling method based on grey goose optimization and variable neighborhood
By adopting the distributed maintenance task scheduling method of gray goose optimization and variable neighborhood in the distributed system, the problems of task execution time uncertainty and resource limitation are solved, and efficient task scheduling and optimization of production systems are achieved.
Patent Information
- Application Number
- CN202411931331.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-26
- Publication Date
- 2025-03-28
- Estimated Expiration
- 2044-12-26
AI Technical Summary
The prior art is difficult to effectively deal with the uncertainty of task execution time and resource limitations and task dependencies in multi-task and multi-team scheduling in distributed systems, resulting in low production efficiency and high operational costs.
The distributed maintenance task scheduling method based on gray goose optimization and variable neighborhood is adopted. The global search of gray goose optimization algorithm and the local optimization of variable neighborhood search algorithm are optimized, combined with heuristic algorithm and dynamic grouping update rules, task allocation and scheduling are optimized.
It significantly improves the overall efficiency of the system, reduces downtime and operational costs, enhances the reliability and productivity of the system, and adapts to task fluctuations and delay problems in complex production environments.
Smart Images

Figure CN119359294B_ABST
Abstract
Description
Technical Field
[0001] The invention relates to the field of distributed task scheduling, and in particular to a distributed maintenance task scheduling method based on grey goose optimization and variable neighborhood. Background Art
[0002] As all industries rely more and more on distributed systems, optimizing maintenance and operational efficiency becomes critical. These systems usually contain multiple interdependent components that require regular maintenance or task execution. How to formulate a robust scheduling strategy to efficiently allocate limited resources among decentralized tasks and simultaneously deal with the uncertainty of task duration and the risks of delayed maintenance has become a major challenge. By optimizing maintenance and task scheduling in a distributed environment, the overall efficiency of the system can be significantly improved, downtime can be reduced, and operating costs can be reduced. In addition, reasonable scheduling decisions can help deal with uncertainties in task execution and ensure that tasks are completed on time and efficiently, thereby improving system reliability and productivity and bringing stronger competitive advantages and customer satisfaction to the enterprise.
[0003] The steps of the basic variable neighborhood search algorithm and the grey goose optimization algorithm generally include: (1) initializing parameters and randomly generating a set of solutions (population); (2) finding the optimal individual in the population and generating multiple solutions in a neighborhood; (3) determining whether a better solution has been generated. If so, continue to use the initial neighborhood structure; otherwise, update the neighborhood; (4) determining whether the neighborhood search termination condition is met. If so, end the variable neighborhood search and migrate the new individual to the population; (5) using the dynamic clustering update rule of the grey goose optimization algorithm to update the individuals in the population and determine whether the algorithm termination condition is met. If so, end the entire algorithm; otherwise, return to step (2); iterate through the above steps to find the optimal solution individual.
[0004] The above discussion has the following defects and problems:
[0005] (1) In terms of research issues, most traditional scheduling algorithms assume that the task execution time is fixed and are designed based on an ideal production environment. They ignore the possible decline in task execution efficiency and the randomness of task execution time in the actual production process. In particular, in multi-team or multi-workshop manufacturing systems, the task execution time is not only affected by the basic execution time, but also by factors such as travel time, changes in resource allocation, and personnel fatigue. Existing scheduling methods fail to fully consider the volatility of task execution time under these complex conditions, resulting in insufficient performance in dealing with the uncertainty of task execution time, which ultimately affects the overall production efficiency and robustness of scheduling strategies. In addition, when facing the simultaneous scheduling of multiple tasks and teams, traditional scheduling algorithms lack the flexibility to deal with resource constraints and task dependencies, making it difficult to achieve efficient resource allocation, which in turn leads to the inability of the production system to fully optimize production capacity and improve production efficiency, increasing operating costs and delay risks;
[0006] (2) In terms of research methods, the Grey Goose Optimization Algorithm (GGO) is a group intelligence optimization algorithm developed by simulating the group behavior of grey goose migration. It has the advantages of strong global search capability and easy to avoid falling into local optimality. However, when dealing with high-dimensional complex problems, it may have the disadvantages of slow convergence speed and insufficient local search capability. Summary of the invention
[0007] The purpose of the present invention is to provide a distributed maintenance task scheduling method based on grey goose optimization and variable neighborhood, which overcomes the shortcomings of the prior art and solves the problems existing in the prior art.
[0008] To solve the above problems, the technical solutions adopted by the present invention are as follows:
[0009] A distributed maintenance task scheduling method based on grey goose optimization and variable neighborhood, the scheduling method comprising:
[0010] S1: Set the number of tasks to and the number of teams , set the number of iterations of the algorithm and the number of neighborhood structures , Neighborhood search times , the initial number of iterations , initialize the Grey Goose Optimization Algorithm GGO parameters;
[0011] S2: Use positive real number coding to encode the order of all task assignments and randomly generate a set of initial solutions as the population ( ), is the population size;
[0012] S3: Use heuristic algorithms to derive the artifact task allocation and task order for each team;
[0013] S4: Calculate the fitness of individuals in all groups and select the best individual ,make , ;
[0014] S5: If , then jump to S6, otherwise jump to S8;
[0015] S6: If , then the current optimal solution Execution Neighborhood Generate new solutions , ,otherwise , and jump to S5;
[0016] S7: Yes and For comparison, if ,but , , , jump to S6;
[0017] S8: Use the dynamic grouping update rules of the Grey Goose Optimization Algorithm to update the current optimal solution The performance of the dynamic adjustment of the number of exploration groups and development groups, and the population is randomly divided into the development group population ( ) and the exploration group population ( );
[0018] The dynamic grouping update rule of the grey goose optimization algorithm is: calculate the minimum completion probability of each individual , find the minimum completion probability Recorded as ,according to The number of exploration groups and development groups is adjusted according to the changes in . Each individual will be selected into the exploration group and the development group in turn. The order of individuals will change randomly after each iteration.
[0019] S9: The exploration group conducts global search, the development group performs local optimization, and updates individuals in the population. ;
[0020] S10: If Then stop the algorithm and output the optimal solution V, otherwise jump to S4.
[0021] Furthermore, the solution vector encoded in S2 is ,in 1 to Any integer in The value of The corresponding team to which the tasks are assigned;
[0022] The specific steps of the heuristic algorithm are:
[0023] S31: Arrange the tasks in non-decreasing order according to the sum of the mean and variance of the actual execution time;
[0024] S32: Assign the task to Teams, , ;
[0025] S33: Set up the assigned task set , and calculate the current average load ;
[0026] S34: Calculate the relative average load of each team ,in Indicates the machine The current standard deviation of completion time;
[0027] S35: The tasks are assigned to the team with the smallest relative average load;
[0028] S36: If , then the task allocation and execution order of all teams are determined; otherwise, And return to S32.
[0029] Furthermore, there are three neighborhood structures in S1:
[0030] Neighborhood structure : Randomly select a task from the team with the lowest completion probability and transfer it to other teams;
[0031] Neighborhood structure : Swap two tasks from different teams;
[0032] Neighborhood structure : Reverse a portion of the code.
[0033] Furthermore, the process of adjusting the number of the exploration group and the development group is as follows:
[0034] (1) Initialization ;
[0035] (2) If the best individual fitness of three consecutive iterations Existence and satisfaction , then jump to step (3); otherwise jump to step (4);
[0036] (3) Increase the number of individuals in the exploration group , reduce the number of individuals in the development team , jump to step (4);
[0037] (4) Order ,like , then jump to step (2); otherwise end.
[0038] Furthermore, the exploration group The search update process is:
[0039] (1) ;
[0040] (2) For the individual position in the exploration group, if , jump to step (3); otherwise jump to step (8);
[0041] (3) If , jump to step (4); otherwise jump to step (7);
[0042] (4) If , jump to step (5); otherwise jump to step (6);
[0043] (5) , jump to step (9);
[0044] (6) , jump to step (9);
[0045] (7) , jump to step (9);
[0046] (8) , jump to step (9);
[0047] (9) Order ,like , then jump to step (8); otherwise, end this iteration;
[0048] in, and To dynamically explore the vector, , , The parameter changes linearly from 2 to 0; and ( ) are calculated by the formulas , Stay consistent; , and exist Random value inside, and exist Update within; weight parameter exist Update within; exponential decay parameter , used to adjust the step size; exist Internal random value; is the exploration distance coefficient, and is a constant;
[0049] Is the current iteration The individual position in Iteration The optimal individual position in is the individual position at the next iteration, , and are three random individuals in the exploration group, , and\ The closest one selected by the development team 3 sentinel individuals; It is a kind of summary result of multiple individuals in the exploration group, which helps individuals search in the overall best direction of the group.
[0050] Furthermore, the development team The search update process is:
[0051] (1) ;
[0052] (2) For the individual position in the exploration group, if , jump to step (3), otherwise jump to step (4);
[0053] (3) Calculation , , jump to step (5);
[0054] (4) If , skip to step (5)
[0055] (5) Order ,like , then jump to step (2); otherwise, end this iteration.
[0056] Compared with the prior art, the present invention has the following beneficial effects:
[0057] (1) Aiming at the production maintenance and task scheduling problems in distributed manufacturing systems, the present invention proposes an innovative optimization algorithm that combines the Grey Goose Optimization Algorithm and the Variable Neighborhood Search Algorithm. First, the distribution of workpieces to be processed is determined by coding, and then the processing order of each team is optimized according to the scheduling algorithm. Through the synergistic effect of the global search capability of the Grey Goose Optimization Algorithm and the local optimization capability of the Variable Neighborhood Search Algorithm, the algorithm can find an approximate optimal solution in a variable production environment. This method significantly improves the shortcomings of the Grey Goose Optimization Algorithm in local search, while retaining the diversity of population characteristics and accelerating the convergence speed, ensuring the efficiency and robustness of the algorithm in complex scheduling problems.
[0058] (2) The present invention fully considers the deterioration effect of task execution in production maintenance (such as increased task execution time caused by personnel fatigue and equipment loss), and models and optimizes the randomness and uncertainty of task execution time. By combining heuristic algorithms with dynamic adjustment mechanisms, it can dynamically respond to fluctuations and delays in the task execution process of different teams, effectively reduce downtime in the production process, and improve the overall productivity of the system.
[0059] (3) The present invention introduces a dynamic clustering mechanism and an adaptive adjustment mechanism, which enables the method to be flexibly adjusted according to the performance of the actual task, ensuring the balance between global search and local optimization. This mechanism enables the algorithm to adapt to production environments of different scales and complexities, ultimately improving the production capacity of the production system and reducing operating costs. It also demonstrates wide applicability and value in practical applications. BRIEF DESCRIPTION OF THE DRAWINGS
[0060] Figure 1 The figure is a schematic diagram of the overall process structure of a distributed maintenance task scheduling method based on grey goose optimization and variable neighborhood. DETAILED DESCRIPTION
[0061] In order to make the technical means, creative features, objectives and effects achieved by the present invention easy to understand, the present invention is further explained below in conjunction with specific implementation methods.
[0062] The present invention realizes the maintenance and optimization of the manufacturing system by designing a production maintenance scheduling algorithm based on the Grey Goose Optimization Algorithm and the Variable Neighborhood Search Algorithm. Assuming that the number of tasks to be executed is , each task is assigned to a team to complete, a total of Teams, For the The basic execution time of the workpieces, and the average is , the variance is The normal distribution of For the The travel time of a task is degraded by , Indicates Team No. The actual execution time of a task, Indicates The total execution time of the last task completed by the team also conforms to the normal distribution, where is the mean of the total execution time, is the variance of the total execution time, It is The last task of each team can be completed on the deadline The goal is to maximize the probability of all teams completing tasks in time. .
[0063] Please refer to Figure 1 As shown, the present invention is a distributed maintenance task scheduling method based on grey goose optimization and variable neighborhood, and the scheduling method includes:
[0064] S1: Set the number of tasks to and the number of teams , set the number of iterations of the algorithm and the number of neighborhood structures , Neighborhood search times , the initial number of iterations , initialize the Grey Goose Optimization Algorithm GGO parameters;
[0065] There are three neighborhood structures:
[0066] Neighborhood structure : Randomly select a task from the team with the lowest completion probability and transfer it to other teams;
[0067] Neighborhood structure : Swap two tasks from different teams;
[0068] Neighborhood structure : Reverse a part of the code;
[0069] S2: Use positive real number coding to encode the order of all task assignments and randomly generate a set of initial solutions as the population ( ), is the population size;
[0070] The encoded solution vector is ,in 1 to Any integer in The value of The corresponding team to which the tasks are assigned;
[0071] S3: Use heuristic algorithms to derive the artifact task allocation and task order for each team;
[0072] The specific steps of the heuristic algorithm in S3 are:
[0073] S31: Arrange the tasks in non-decreasing order according to the sum of the mean and variance of the actual execution time;
[0074] S32: Assign the task to Teams, , ;
[0075] S33: Set up the assigned task set , and calculate the current average load ;
[0076] S34: Calculate the relative average load of each team ,in Indicates the machine The current standard deviation of completion time;
[0077] S35: The tasks are assigned to the team with the smallest relative average load;
[0078] S36: If , then the task allocation and execution order of all teams are determined; otherwise, And return to S32;
[0079] S4: Calculate the fitness of individuals in all groups and select the best individual ,make , ;
[0080] S5: If , then jump to S6, otherwise jump to S8;
[0081] S6: If , then the current optimal solution Execution Neighborhood Generate new solutions , ,otherwise , and jump to S5;
[0082] S7: Yes and For comparison, if ,but , , , jump to S6;
[0083] S8: Use the dynamic grouping update rules of the Grey Goose Optimization Algorithm to update the current optimal solution The performance of the dynamic adjustment of the number of exploration groups and development groups, and the population is randomly divided into the development group population ( ) and the exploration group population ( );
[0084] The dynamic grouping update rule of the grey goose optimization algorithm is: calculate the minimum completion probability of each individual , find the minimum completion probability Recorded as ,according to The number of exploration groups and development groups is adjusted according to the changes in . Each individual will be selected into the exploration group and the development group in turn. The order of individuals will change randomly after each iteration.
[0085] The process of adjusting the number of exploration groups and development groups is as follows:
[0086] (1) Initialization ;
[0087] (2) If the best individual fitness of three consecutive iterations Existence and satisfaction , then jump to step (3); otherwise jump to step (4);
[0088] (3) Increase the number of individuals in the exploration group , reduce the number of individuals in the development team , jump to step (4);
[0089] (4) Order ,like , then jump to step (2); otherwise end;
[0090] Furthermore, the exploration group The search update process is:
[0091] (1) ;
[0092] (2) For the individual position in the exploration group, if , jump to step (3); otherwise jump to step (8);
[0093] (3) If , jump to step (4); otherwise jump to step (7);
[0094] (4) If , jump to step (5); otherwise jump to step (6);
[0095] (5) , jump to step (9);
[0096] (6) , jump to step (9);
[0097] (7) , jump to step (9);
[0098] (8) , jump to step (9);
[0099] (9) Order ,like , then jump to step (8); otherwise, end this iteration;
[0100] in, and To dynamically explore the vector, , , The parameter changes linearly from 2 to 0; and ( ) are calculated by the formulas , Stay consistent; , and exist Random value inside, and exist Update within; weight parameter exist Update within; exponential decay parameter , used to adjust the step size; exist Internal random value; is the exploration distance coefficient, and is a constant;
[0101] Is the current iteration The individual position in Iteration The optimal individual position in is the individual position at the next iteration, , and are three random individuals in the exploration group, , and The closest one selected by the development team 3 sentinel individuals; It is a kind of summary result of multiple individuals in the exploration group, which helps individuals search in the overall best direction of the group.
[0102] Furthermore, the development team The search update process is:
[0103] (1) ;
[0104] (2) For the individual position in the exploration group, if , jump to step (3), otherwise jump to step (4);
[0105] (3) Calculation , , jump to step (5);
[0106] (4) If , jump to step (5);
[0107] (5) Order ,like , then jump to step (2); otherwise, end this iteration;
[0108] S9: The exploration group conducts global search, the development group performs local optimization, and updates individuals in the population. ;
[0109] S10: If Then stop the algorithm and output the optimal solution V, otherwise jump to S4.
[0110] The above shows and describes the basic principles and main features of the present invention and the advantages of the present invention. It should be understood by those skilled in the art that the present invention is not limited to the above embodiments. The above embodiments and descriptions are only for explaining the principles of the present invention. Without departing from the spirit and scope of the present invention, the present invention may have various changes and improvements, which fall within the scope of the present invention to be protected. The scope of protection of the present invention is defined by the attached claims and their equivalents.
Claims
1. A distributed maintenance task scheduling method based on grey goose optimization and variable neighborhood, characterized in that: The scheduling method comprises: S1: Set the number of tasks to and the number of teams , set the number of iterations of the algorithm and the number of neighborhood structures , Neighborhood search times , the initial number of iterations , initialize the Grey Goose Optimization Algorithm GGO parameters; S2: Use positive real number coding to encode the order of all task assignments and randomly generate a set of initial solutions as the population ( ), is the population size; S3: Use heuristic algorithms to derive the artifact task allocation and task order for each team; S4: Calculate the fitness of individuals in all groups and select the best individual ,make , ; S5: If , then jump to S6, otherwise jump to S8; S6: If , then the current optimal solution Execution Neighborhood Generate new solutions , ,otherwise , and jump to S5; S7: Yes and For comparison, if ,but , , , jump to S6; S8: Use the dynamic grouping update rules of the Grey Goose Optimization Algorithm to update the current optimal solution The performance of the dynamic adjustment of the number of exploration groups and development groups, and the population is randomly divided into the development group population ( ) and the exploration group population ( ); The dynamic grouping update rule of the grey goose optimization algorithm is: calculate the minimum completion probability of each individual , find the minimum completion probability Recorded as ,according to The number of exploration groups and development groups is adjusted according to the changes in . Each individual will be selected into the exploration group and the development group in turn. The order of individuals will change randomly after each iteration. S9: The exploration group conducts global search, the development group performs local optimization, and updates individuals in the population. ; S10: If Then stop the algorithm and output the optimal solution V, otherwise jump to S4; The specific steps of the heuristic algorithm are: S31: Arrange the tasks in non-decreasing order according to the sum of the mean and variance of the actual execution time; S32: Assign the task to Teams, , ; S33: Set up the assigned task set , and calculate the current average load ; S34: Calculate the relative average load of each team ,in Indicates the machine The current standard deviation of completion time; S35: The tasks are assigned to the team with the smallest relative average load; S36: If , then the task allocation and execution order of all teams are determined; otherwise, And return to S32.
2. A distributed maintenance task scheduling method based on grey goose optimization and variable neighborhood according to claim 1, characterized in that: The solution vector encoded in S2 is ,in 1 to Any integer in The value of The corresponding team to which the tasks are assigned.
3. The distributed maintenance task scheduling method based on grey goose optimization and variable neighborhood according to claim 1 is characterized in that: There are three neighborhood structures in S1: Neighborhood structure : Randomly select a task from the team with the lowest completion probability and transfer it to other teams; Neighborhood structure : Swap two tasks from different teams; Neighborhood structure : Reverse a portion of the code.
4. The distributed maintenance task scheduling method based on grey goose optimization and variable neighborhood according to claim 1 is characterized in that: The process of adjusting the number of the exploration group and the development group is as follows: (1) Initialization ; (2) If the best individual fitness of three consecutive iterations Existence and satisfaction , then jump to step (3); otherwise jump to step (4); (3) Increase the number of individuals in the exploration group , reduce the number of individuals in the development team , jump to step (4); (4) Order ,like , then jump to step (2); otherwise end.
5. The distributed maintenance task scheduling method based on grey goose optimization and variable neighborhood according to claim 4 is characterized by: The exploration group is in each iteration The search update process is: (1) ; (2) For the individual position in the exploration group, if , jump to step (3); otherwise jump to step (8); (3) If , jump to step (4); otherwise jump to step (7); (4) If , jump to step (5); otherwise jump to step (6); (5) , jump to step (9); (6) , jump to step (9); (7) , jump to step (9); (8) , jump to step (9); (9) Order ,like , then jump to step (8); otherwise, end this iteration; in, and To dynamically explore the vector, , , The parameter changes linearly from 2 to 0; and ( ) are calculated by the formulas , Stay consistent; , and exist Random value inside, and exist Update within; weight parameter exist Update within; exponential decay parameter , used to adjust the step size; exist Internal random value; is the exploration distance coefficient, and is a constant; Is the current iteration The individual position in Iteration The optimal individual position in is the individual position at the next iteration, , and are three random individuals in the exploration group, , and The closest one selected by the development team 3 sentinel individuals; It is a kind of summary result of multiple individuals in the exploration group, which helps individuals search in the overall best direction of the group.
6. A distributed maintenance task scheduling method based on grey goose optimization and variable neighborhood according to claim 5, characterized in that: The development team in each iteration The search update process is: (1) ; (2) For the individual position in the exploration group, if , jump to step (3), otherwise jump to step (4); (3) Calculation , , jump to step (5); (4) If , jump to step (5); (5) Order ,like , then jump to step (2); otherwise, end this iteration.
Citation Information
Patent Citations
Production scheduling method and system based on hybrid parallel inheritance and variable neighborhood algorithm
CN113705812A
Scheduling method and system based on hybrid variable neighborhood search and gravitational search algorithm
US20190079975A1