An improved slime mold algorithm for solving flexible workshop scheduling method and system
By improving the slime mold algorithm, combining the population initialization of mixed Brownian motion, Sigmoid functional weights and Gaussian variant operators, and local search of the particle swarm algorithm, the problem of local optimality and convergence performance degradation in the flexible workshop scheduling problem is solved, achieving a more efficient solution effect.
Patent Information
- Application Number
- CN202410660158.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-05-27
- Publication Date
- 2025-05-16
- Estimated Expiration
- 2044-05-27
AI Technical Summary
Standard slime mold algorithms are prone to fall into local optimization when solving the scheduling problem of flexible workshops, and the convergence speed and convergence performance are degraded, which has certain limitations.
By improving the slime mold algorithm, the Bernoulli chaotic mapping of mixed Brownian motion is used for population initialization, the Sigmoid functional weight and Gaussian variant operator are introduced, the position update formula is improved, and the particle swarm algorithm is introduced for local search.
It improves the global search capability of the algorithm, balances the relationship between global search and local search, improves convergence accuracy and optimization accuracy, has better robustness, and can more effectively solve flexible workshop scheduling problems.
Smart Images

Figure CN118642439B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of workshop scheduling, and in particular to a method and system for solving flexible workshop scheduling using an improved slime mold algorithm. Background Art
[0002] The job-shop scheduling problem (JSP) is to reasonably allocate limited scheduling resources to several tasks in order to meet one or more optimization goals. Compared with the job-shop scheduling problem, the flexible job-shop scheduling problem (FJSP) breaks through the limitation of the uniqueness of the processing machine. Compared with JSP scheduling, FJSP scheduling is more flexible and more in line with the actual production process.
[0003] Compared with JSP, the solution process of FJSP is more difficult and is a complex NP-hard problem. For the FJSP problem, the main research directions are focused on algorithm design and optimization, hybrid methods, and practical applications and research. By continuously exploring new intelligent algorithms, such as the gray wolf algorithm, the ocean predator algorithm, the sparrow algorithm, the whale group algorithm and a series of meta-heuristic algorithms; based on these new algorithms, more efficient solutions are sought to solve the FJSP problem. The hybrid method combines different intelligent algorithms with heuristic methods, including combining technologies such as artificial neural networks and deep learning with intelligent algorithms to obtain more accurate decisions.
[0004] The Slime Mould Algorithm (SMA) is a population-based metaheuristic algorithm that simulates the changes of slime molds in the process of searching for food. The SMA algorithm has better search capabilities than other algorithms and has been applied to path planning, task scheduling, image processing, and electronic circuit design. However, the SMA algorithm still has some shortcomings when applied to FJSP. It is easy to fall into local optimality, and the convergence speed and convergence performance decrease in the later stage, which has certain limitations. Summary of the invention
[0005] One of the purposes of the present invention is to provide a method and system for solving flexible workshop scheduling using an improved slime mold algorithm, thereby overcoming the shortcomings of the standard slime mold algorithm that is easily trapped in local optimality, has decreased convergence performance in the later stage, and has decreased convergence speed, thereby improving the efficiency of the slime mold algorithm in solving flexible workshop scheduling problems and minimizing the maximum completion time of workpieces.
[0006] An improved slime mold algorithm for solving flexible workshop scheduling method provided by an embodiment of the present invention includes:
[0007] Step 1: For the process sorting part, use the coding rule based on ascending sorting to convert the continuous position elements into discrete process sorting;
[0008] Step 2: parameter setting and population initialization;
[0009] Step 3: Enter the main loop, calculate the cosine weight wt, use the sigmoid weight to update the weight matrix, update the inertia factor (a, b) and the Gaussian distribution standard deviation g std , perform position update, if the local search conditions are met, perform PSO local search and update the solution, sort by fitness, update the global optimal solution and the optimal individual code, and record the optimal fitness of each iteration;
[0010] Step 4: Store the optimal individual code, the optimal individual fitness, and calculate and store the machine allocation corresponding to the optimal individual;
[0011] Step 5: Determine whether the number of iterations has reached the maximum number of iterations. If so, output the optimal solution. Otherwise, return to step 3 to continue iterative updating.
[0012] Preferably, the parameter setting in step 2 includes:
[0013] Initialize parameters, set the total number of processes, independent variable dimensions, upper and lower bounds of independent variables, set SMA parameters, set the maximum number of iterations, and population size;
[0014] Set the PSO local search parameters to define the number of iterations to start the local search, the number of PSO iterations and the trigger probability.
[0015] Preferably, the population initialization in step 2 includes:
[0016] Initialization method for Bernoulli chaotic mapping using hybrid Brownian motion.
[0017] Preferably, the initialization method of the Bernoulli chaotic mapping using mixed Brownian motion specifically includes:
[0018] Randomly generate a d-dimensional vector in [0,1] as the initial individual x chootic_sequence ;
[0019] Substitute the initial individual into the first formula to generate the position information of the d-dimensional vector of the next individual Among them, the first formula is as follows:
[0020]
[0021] Where i = 1, 2, ..., N represents the number of slime mold individuals, j = 1, 2, ..., d represents the number of spatial digits, and λ represents the chaotic mapping parameter;
[0022] The loop finally obtains N-1 new slime mold individuals, which are substituted into the second formula and inversely mapped to the search space of slime mold individuals. The second formula is as follows:
[0023]
[0024] Where, UB j , LB j Respectively represent the upper and lower bounds of the j-th dimension of the space;
[0025] Simulate Brownian motion with random direction and random step length, add Brownian motion to the second formula to get the third formula, and finally get a new slime mold population Among them, the third formula is as follows:
[0026]
[0027] Where sl represents the random step size and d represents the random direction.
[0028] Preferably, the sigmoid weight formula is as follows:
[0029] t mid =t max / 2,t d =tt mid
[0030]
[0031]
[0032] Where W(SmellIndex(i)) represents the final improved slime mold weight; k w Used to adjust the steepness of the sigmoid function, set to 7; t mid Represents the midpoint of the sigmoid function; t d is the time difference; w max YesS w The maximum value of the inertia weight in the calculation formula is set to 0.9.
[0033] Preferably, the calculation formula of the cosine weight wt is as follows:
[0034] T=t max / 2
[0035]
[0036] Where, T is the cosine period; cw max 、cw min are the maximum and minimum weight values of the custom parameter wt, which are set to 0.8 and 0.4 respectively; t is the current number of iterations.
[0037] Preferably, the position update formula is as follows:
[0038]
[0039]
[0040] g std =d f *C std ≥f std
[0041]
[0042] In the formula, i std is the initial value of the Gaussian standard deviation, set to 0.1; f std is the final standard deviation of Gaussian, set to 0.01; d f is the exponential decay factor of the Gaussian standard deviation; C std is the current standard deviation value; nargin is used to check whether the function has received any input parameters. If it is less than 1, it means that no parameters are passed into the function, then i std Assign to C std , X(t+1) is the updated position.
[0043] Preferably, the improved slime mold algorithm for solving the flexible workshop scheduling method further includes: before performing the scheduling analysis, performing a priority analysis on each workpiece to be completed in the to-be-completed workpiece library to determine the workpiece group to be completed by the workshop, wherein the analysis steps are as follows:
[0044] Obtaining first parameter information corresponding to each workpiece to be completed;
[0045] Analyze the first parameter information based on a preset priority value analysis library to determine the first priority value of each workpiece to be completed;
[0046] Extracting a preset first number of workpieces as positioning workpieces in descending order of first priority values;
[0047] Determine at least one workpiece combination mode according to the located workpiece and a preset workpiece combination library;
[0048] Based on the workpiece combination mode and the first priority values of other workpieces except the positioning workpiece, construct a workpiece group to be analyzed corresponding to each workpiece combination mode;
[0049] Determine a time interval for completing the workpiece group to be analyzed based on parameter data associated with the workpiece combination mode corresponding to the workpiece group to be analyzed;
[0050] Based on the time interval and the remaining time of the current shift, query the time-second priority value determination table to determine the second priority value of each workpiece group to be analyzed;
[0051] The importance of each workpiece group to be analyzed is determined by the second priority value and the first priority value of each workpiece in the workgroup to be analyzed.
[0052] The workpiece group to be analyzed with the greatest importance is taken as the workpiece group that needs to be completed in the current workshop.
[0053] Preferably, the first parameter information includes one or more combinations of: the delivery time of the workpiece, the task generation time, the object information of the delivery object, and the abnormal probability of the event corresponding to the workpiece.
[0054] The present invention also provides an improved slime mold algorithm for solving a flexible workshop scheduling system, comprising:
[0055] The coding unit is used for the process sorting part, adopting the coding rule based on ascending sorting to convert the continuous position elements into discrete process sorting;
[0056] Initialization unit, used for parameter setting and population initialization;
[0057] Loop unit, used to enter the main loop, calculate the cosine weight wt, update the weight matrix using the sigmoid weight, update the inertia factor (a, b) and the Gaussian distribution standard deviation g std , perform position update, if the local search conditions are met, perform PSO local search and update the solution, sort by fitness, update the global optimal solution and the optimal individual code, and record the optimal fitness of each iteration;
[0058] A storage unit, used to store the optimal individual code, the optimal individual fitness, and calculate and store the machine allocation corresponding to the optimal individual;
[0059] The output unit is used to determine whether the number of iterations has reached the maximum number of iterations. If so, the optimal solution is output. Otherwise, it returns to step three to continue iterative updating.
[0060] The invention solves the flexible workshop scheduling problem based on the improved slime mold algorithm. In the population initialization part, the Bernoulli chaotic map of mixed Brownian motion is used to initialize the population, increase the diversity of the population, and improve the quality of the initial solution; the weight formula in the original slime mold algorithm is improved, and the Sigmoid function weight is introduced, which has the characteristics of dynamic adjustment and reduction of random influence, and balances the optimization of global search and local search; the Gaussian mutation operator and custom parameters are introduced to improve the position update formula of the original slime mold algorithm; and the particle swarm algorithm is also introduced to perform local search; the global search ability of the algorithm is improved, the relationship between the global search and the local search is better balanced, the convergence accuracy and optimization accuracy of the algorithm are improved, and the robustness is better.
[0061] Other features and advantages of the present invention will be described in the following description, and partly become apparent from the description, or understood by practicing the present invention. The purpose and other advantages of the present invention can be realized and obtained by the structures particularly pointed out in the written description, claims, and drawings.
[0062] The technical solution of the present invention is further described in detail below through the accompanying drawings and embodiments. BRIEF DESCRIPTION OF THE DRAWINGS
[0063] The accompanying drawings are used to provide a further understanding of the present invention and constitute a part of the specification. Together with the embodiments of the present invention, they are used to explain the present invention and do not constitute a limitation of the present invention. In the accompanying drawings:
[0064] Figure 1 It is a schematic diagram of a method for solving flexible workshop scheduling using an improved slime mold algorithm in an embodiment of the present invention;
[0065] Figure 2 Schematic diagram of the cycle steps of the model in the embodiment of the present invention;
[0066] Figure 3 Schematic diagram of an improved slime mold algorithm for solving a flexible workshop scheduling system in an embodiment of the present invention. DETAILED DESCRIPTION
[0067] The preferred embodiments of the present invention are described below in conjunction with the accompanying drawings. It should be understood that the preferred embodiments described herein are only used to illustrate and explain the present invention, and are not used to limit the present invention.
[0068] The mathematical model for solving the flexible workshop scheduling problem based on the slime mold algorithm provided by the present invention is as follows:
[0069]
[0070]
[0071] S ij M ijh +F(1-H ijvwh )≥E vw M vwh
[0072] E ij -T ijh M ijh ≥S ij
[0073] C i ≤C max
[0074] (S ij +T ijh )H ijvwh ≤S vw
[0075]
[0076]
[0077] S ij ≥0, E ij ≥0, T ijh ≥0
[0078] In the formula, C i Indicates workpiece J i Completion time; ij Indicates workpiece J i The jth process; S ij Indicates process O ij Processing start time; E ij Indicates process O ij End time of processing; T ijh Indicates process O ij Processing time on machine h; M ijh Indicates process O ij If it is processed on machine h, the value is 1, otherwise it is 0; C max Represents C i The maximum completion time; F is a sufficiently large positive number that can be preset; H ijvwh Indicates process O ij Prior to process O vw If it is processed on machine h, the value is 1, otherwise it is 0;
[0079] The above mathematical model formulas, in order from top to bottom, indicate that the processing of all processes cannot be interrupted or paused; the processes of the same workpiece have a sequence; the next three formulas indicate that each process is processed on only one optional machine; the start time of all processes is not greater than the end time; the completion time of any workpiece is not greater than the maximum completion time; the next two indicate that a machine can only process one process at a certain point in time; and finally, the start, end and processing times of all processes are non-negative.
[0080] The ultimate optimization goal is to minimize the maximum completion time, and its objective formula is as follows:
[0081] minC max =min{max(C i )}, i = 1, 2, ..., n
[0082] The embodiment of the present invention provides a method for solving flexible workshop scheduling using an improved slime mold algorithm. The improved slime mold algorithm is used to solve the single-objective flexible workshop scheduling problem. The population is initialized by the Bernoulli chaotic mapping strategy of the mixed Brownian motion, thereby increasing the diversity and quality of the population. The Sigmoid function weight is introduced to update the weight formula in the original slime mold algorithm to increase the stability of the result. An adaptive Gaussian mutation operator and a custom parameter are introduced to improve the position update formula of the original slime mold algorithm, and a particle swarm algorithm is introduced for local search. The global search capability of the algorithm is improved, the relationship between the global search and the local search is better balanced, the convergence accuracy and optimization accuracy of the algorithm are improved, and the algorithm has better robustness, such as Figure 1 As shown, including:
[0083] Step 1: For the process sorting part, the coding rule based on ascending sorting is used to convert the continuous position elements into discrete process sorting; To solve the flexible workshop scheduling problem, there are mainly two sub-problems, namely process sorting and machine allocation. A specific coding method is used for the SMA algorithm. For the process sorting part, the coding rule based on ascending sorting (Ranked Order Value, ROV) is used to convert the continuous position elements into discrete process sorting;
[0084] Step 2: parameter setting and population initialization;
[0085] Step 3: Enter the main loop, calculate the cosine weight wt, use the sigmoid weight to update the weight matrix, update the inertia factor (a, b) and the Gaussian distribution standard deviation g std, perform position update, if the local search conditions are met, perform PSO local search and update the solution, sort by fitness, update the global optimal solution and the optimal individual code, and record the optimal fitness of each iteration;
[0086] Step 4: Store the optimal individual code, the optimal individual fitness, and calculate and store the machine allocation corresponding to the optimal individual;
[0087] Step 5: Determine whether the number of iterations has reached the maximum number of iterations. If so, output the optimal solution. Otherwise, return to step 3 to continue iterative updating.
[0088] The determination of the optimal individual includes: calculating the Fitness of the objective function of each slime mold individual, and finding the optimal individual according to the fitness ranking.
[0089] The parameter settings in step 2 include:
[0090] Initialize parameters, set the total number of processes, independent variable dimensions, upper and lower bounds of independent variables, set SMA parameters, set the maximum number of iterations, and population size;
[0091] Set the PSO local search parameters to define the number of iterations to start the local search, the number of PSO iterations and the trigger probability.
[0092] Among them, the population initialization in step 2 includes:
[0093] The initialization method of Bernoulli chaos mapping with mixed Brownian motion is used to increase the uncertainty of slime mold movement and improve the global search ability of the algorithm.
[0094] Preferably, the initialization method of the Bernoulli chaotic mapping using mixed Brownian motion specifically includes:
[0095] Randomly generate a d-dimensional vector in [0,1] as the initial individual x chootic_sequence ;
[0096] Substitute the initial individual into the first formula to generate the position information of the d-dimensional vector of the next individual Among them, the first formula is as follows:
[0097]
[0098] Where i = 1, 2, ..., N represents the number of slime mold individuals, j = 1, 2, ..., d represents the number of spatial digits, and λ represents the chaotic mapping parameter, which is set to 0.2;
[0099] The loop finally obtains N-1 new slime mold individuals, which are substituted into the second formula and inversely mapped to the search space of slime mold individuals. The second formula is as follows:
[0100]
[0101] Where, UB j , LB j Respectively represent the upper and lower bounds of the j-th dimension of the space;
[0102] Simulate Brownian motion with random direction and random step length, add Brownian motion to the second formula to get the third formula, and finally get a new slime mold population Among them, the third formula is as follows:
[0103]
[0104] Where sl represents the random step size and d represents the random direction.
[0105] Among them, the sigmoid weight formula is as follows:
[0106] t mid =t max / 2,t d =tt mid
[0107]
[0108]
[0109] Where W(SmellIndex(i)) represents the final improved slime mold weight; k w Used to adjust the steepness of the sigmoid function, set to 7; t mid Represents the midpoint of the sigmoid function; t d is the time difference; w max YesS w The maximum value of the inertia weight in the calculation formula is set to 0.9.
[0110] Among them, the calculation formula of the cosine weight wt is as follows:
[0111] T=t max / 2
[0112]
[0113] Where, T is the cosine period; cw max 、cw min are the maximum and minimum weight values of the custom parameter wt, which are set to 0.8 and 0.4 respectively; t is the current number of iterations.
[0114] Preferably, the position update formula is as follows:
[0115]
[0116]
[0117] g std =d f *C std ≥f std
[0118]
[0119] In the formula, i std is the initial value of the Gaussian standard deviation, set to 0.1; f std is the final standard deviation of Gaussian, set to 0.01; d f is the exponential decay factor of the Gaussian standard deviation; C std is the current standard deviation value; nargin is used to check whether the function has received any input parameters. If it is less than 1, it means that no parameters are passed into the function, then i std Assign to C std , X(t+1) is the updated position.
[0120] In addition, the particle swarm algorithm is introduced for local search: when the local search is triggered, the particle swarm algorithm is called to search for the optimal solution in the neighborhood, and the best solution in the neighborhood and the corresponding fitness are returned. Finally, if the solution found by the local search is better, that is, has a lower fitness value, the current solution with the most individuals will be updated to this new solution. Figure 2 The following is a diagram of the model execution steps.
[0121] In order to improve the applicability of the method of the present application and adapt to the changing situations of the workpieces to be manufactured by the workshop; in one embodiment, the improved slime mold algorithm solves the flexible workshop scheduling method, and further includes: before performing the scheduling analysis, performing a priority analysis on each workpiece to be completed in the to-be-completed workpiece library to determine the workpiece group to be completed by the workshop, wherein the analysis steps are as follows:
[0122] Obtaining first parameter information corresponding to each workpiece to be completed;
[0123] Analyze the first parameter information based on a preset priority value analysis library to determine the first priority value of each workpiece to be completed;
[0124] Extracting a preset first number of workpieces as positioning workpieces in descending order of first priority values;
[0125] Determine at least one workpiece combination mode according to the located workpiece and a preset workpiece combination library;
[0126] Based on the workpiece combination mode and the first priority values of other workpieces except the positioning workpiece, construct a workpiece group to be analyzed corresponding to each workpiece combination mode;
[0127] Determine a time interval for completing the workpiece group to be analyzed based on parameter data associated with the workpiece combination mode corresponding to the workpiece group to be analyzed;
[0128] Based on the time interval and the remaining time of the current shift, query the time-second priority value determination table to determine the second priority value of each workpiece group to be analyzed;
[0129] The importance of each artifact group to be analyzed is determined by the second priority value and the first priority value of each artifact in the work group to be analyzed. The calculation formula is as follows:
[0130]
[0131] Where Z is the importance of each artifact group to be analyzed, Y 1i is the first priority value of the i-th workpiece in the workpiece group to be analyzed, Y2 is the second priority value of the workpiece group to be analyzed; α1 and α2 are respectively the pre-configured weight coefficients corresponding to the first priority value and the second priority value, and n is the total number of workpieces in the workpiece group to be analyzed;
[0132] The most important workpiece group to be analyzed is taken as the workpiece group that needs to be completed in the current workshop;
[0133] The first parameter information includes one or more combinations of: the delivery time of the workpiece, the task generation time, the object information of the delivery object, and the abnormal probability of the event corresponding to the workpiece.
[0134] The first parameter information is analyzed based on a preset priority value analysis library to determine the first priority value of each workpiece to be completed, including:
[0135] Extract features from the first parameter information, and construct a priority value analysis parameter set based on the extracted feature values; the priority value analysis parameter set includes parameters corresponding to the difference between the delivery time and the current time, parameters corresponding to the time difference between the task generation time and the current time, parameters corresponding to the importance assessment of the preset delivery object, parameters corresponding to the abnormal probability, etc.;
[0136] Match the priority value analysis set with each standard parameter set in the priority value analysis library, and use the value associated with the standard parameter set matching the priority value analysis set in the priority value analysis template as the first priority value; the priority value analysis library is constructed by dedicated personnel in advance, and the standard parameters in the library are associated with the value corresponding to the first priority value;
[0137] Determine at least one workpiece combination mode according to the located workpiece and the preset workpiece combination library, including:
[0138] Number and sort the positioning workpieces;
[0139] Extract all the combinations of workpieces including the first positioned workpiece from the workpiece combination library to build a screening list; use the workpiece type number of the positioned workpiece as a screening and extraction basis;
[0140] Then, the second to the last positioning workpieces are called in sequence, and the workpieces in the screening list are screened to eliminate the workpiece combination that does not include the called positioning workpiece;
[0141] Get the combination of each artifact in the final filter list;
[0142] Among them, the preset first quantity is the number of workpieces in the case where the number of workpieces processed at the same time is the least among all possible workpiece processing situations in the workshop through statistical analysis; the time interval, the remaining time of the current shift and the second priority value in the time-second priority value determination table are correspondingly associated;
[0143] This embodiment makes reasonable arrangements for processing workpieces by comprehensively analyzing factors such as the situation of workpieces to be processed in the workshop, the remaining time of the current shift, and the probability of abnormalities in workpieces, so as to ensure that workpiece production is carried out in an orderly and effective manner. In addition, in order to distinguish each workpiece when multiple workpieces of the same type need to be processed, the numbering rule is type number + serial number; since the first priority value of workpieces of the same type in the same batch is the same, the serial number after the type number is used as the calling basis.
[0144] The present invention also provides an improved slime mold algorithm for solving a flexible workshop scheduling system, such as Figure 3 As shown, including:
[0145] Coding unit 1 is used for converting continuous position elements into discrete process sequence by using a coding rule based on ascending sequence for the process sequence;
[0146] Initialization unit 2, used for parameter setting and population initialization;
[0147] Loop unit 3, used to enter the main loop, calculate the cosine weight wt, update the weight matrix using the sigmoid weight, update the inertia factor (a, b) and the Gaussian distribution standard deviation g std , perform position update, if the local search conditions are met, perform PSO local search and update the solution, sort by fitness, update the global optimal solution and the optimal individual code, and record the optimal fitness of each iteration;
[0148] Storage unit 4, used to store the optimal individual code, the optimal individual fitness, and calculate and store the machine allocation corresponding to the optimal individual;
[0149] Output unit 5 is used to determine whether the number of iterations reaches the maximum number of iterations. If yes, the optimal solution is output; otherwise, the optimal solution is returned to step 3 to continue iterative updating.
[0150] Obviously, those skilled in the art can make various changes and modifications to the present invention without departing from the spirit and scope of the present invention. Thus, if these modifications and variations of the present invention fall within the scope of the claims of the present invention and their equivalents, the present invention is also intended to include these modifications and variations.
Claims
1. An improved slime mold algorithm for solving flexible workshop scheduling method, characterized in that: include: Step 1: For the process sorting part, the coding rule based on ascending sorting is used to convert the continuous position elements into discrete process sorting; the process sorting part refers to the process sorting part in the two sub-problems of solving the flexible workshop scheduling problem, namely, the process sorting part in the two problems of process sorting and machine allocation; each process obtained after coding the process in a specific coding method corresponding to the SMA algorithm belongs to a continuous position element; then the ROV coding rule of ascending sorting is used to convert the coding into a discrete process sorting; Step 2: parameter setting and population initialization; Step 3: Calculate the cosine weight wt, use the sigmoid weight to update the weight matrix, update the inertia factor (a, b) and the Gaussian distribution standard deviation g std , execute position update, if the local search conditions are met, execute PSO local search and update the solution, sort by fitness, update the global optimal solution and the optimal individual code, and record the optimal fitness of each iteration; where the individual is the constituent unit of the slime mold population; Step 4: Store the optimal individual code, optimal fitness, calculate and store the machine allocation corresponding to the optimal individual corresponding to the optimal individual code; Step 5: Determine whether the number of iterations has reached the maximum number of iterations. If so, output the optimal solution. Otherwise, return to step 3 to continue iterative updating.
2. The method for solving flexible workshop scheduling using the improved slime mold algorithm according to claim 1 is characterized in that: The parameter settings in step 2 include: Initialize parameters, set the total number of processes, independent variable dimensions, upper and lower bounds of independent variables, set SMA parameters, set the maximum number of iterations, and population size; Set the PSO local search parameters to define the number of iterations to start the local search, the number of PSO iterations and the trigger probability.
3. The method for solving flexible workshop scheduling using the improved slime mold algorithm according to claim 1 is characterized in that: The population initialization in step 2 includes: Initialization method for Bernoulli chaotic mapping using hybrid Brownian motion.
4. The method for solving flexible workshop scheduling using the improved slime mold algorithm according to claim 1 is characterized in that: The initialization method of Bernoulli chaotic mapping using hybrid Brownian motion specifically includes: Randomly generate a d-dimensional vector in [0,1] as the initial individual x chootic_sequence ; Substitute the initial individual into the first formula to generate the position information of the d-dimensional vector of the next individual Among them, the first formula is as follows: Where i = 1, 2, ..., N represents the number of slime mold individuals, j = 1, 2, ..., d represents the number of spatial digits, and λ represents the chaotic mapping parameter; The loop finally obtains N-1 new slime mold individuals, which are substituted into the second formula and inversely mapped to the search space of slime mold individuals. The second formula is as follows: Where, UB j , LB j Respectively represent the upper and lower bounds of the j-th dimension of the space; Simulate Brownian motion with random direction and random step length, add Brownian motion to the second formula to get the third formula, and finally get a new slime mold population are the individuals in the slime mold population respectively; the third formula is as follows: In the formula, sl represents the random step length, and d represents the random direction; The third formula represents the movement pattern of each individual in the slime mold population.
5. The method for solving flexible workshop scheduling using the improved slime mold algorithm according to claim 1 is characterized in that: The sigmoid weight formula is as follows: t mid =t max / 2,t d =t-t mid Where W(SmellIndex(i)) represents the final improved slime mold weight; k w Used to adjust the steepness of the sigmoid function, set to 7; t mid Represents the midpoint of the sigmoid function; t d is the time difference; w max YesS w The maximum value of the inertia weight in the calculation formula is set to 0.9; lg is the logarithm with base 10.
6. The method for solving flexible workshop scheduling using the improved slime mold algorithm according to claim 1 is characterized in that: The calculation formula of cosine weight wt is as follows: T=t max / 2 Where, T is the cosine period; cw max 、cw min They are the maximum and minimum weight values of the custom parameter wt, set to 0.8 and 0.4 respectively; t is the current iteration number.
7. The method for solving flexible workshop scheduling using the improved slime mold algorithm according to claim 1 is characterized in that: The position update formula is as follows: g std =d f *C std ≥f std In the formula, i std is the initial value of the Gaussian standard deviation, set to 0.1; f std is the final standard deviation of Gaussian, set to 0.01; d f is the exponential decay factor of the Gaussian standard deviation; C std is the current standard deviation value; nargin is used to check whether the function has received any input parameters. If it is less than 1, it means that no parameters are passed into the function, then i std Assign to C std , X(t+1) is the updated position.
8. The method for solving flexible workshop scheduling using the improved slime mold algorithm according to claim 1 is characterized in that: Also includes: Before scheduling analysis, the priority of each workpiece to be completed in the to-be-completed workpiece library is analyzed to determine the workpiece group that needs to be completed in the workshop. The analysis steps are as follows: Obtaining first parameter information corresponding to each workpiece to be completed; Analyze the first parameter information based on a preset priority value analysis library to determine the first priority value of each workpiece to be completed; Extracting a preset first number of workpieces as positioning workpieces in descending order of first priority values; Determine at least one workpiece combination mode according to the located workpiece and a preset workpiece combination library; Based on the workpiece combination mode and the first priority values of other workpieces except the positioning workpiece, construct a workpiece group to be analyzed corresponding to each workpiece combination mode; Determine a time interval for completing the workpiece group to be analyzed based on parameter data associated with the workpiece combination mode corresponding to the workpiece group to be analyzed; Based on the time interval and the remaining time of the current shift, query the time-second priority value determination table to determine the second priority value of each workpiece group to be analyzed; The importance of each workpiece group to be analyzed is determined by the second priority value and the first priority value of each workpiece in the workgroup to be analyzed. The workpiece group to be analyzed with the greatest importance is taken as the workpiece group that needs to be completed in the current workshop.
9. The method for solving flexible workshop scheduling using the improved slime mold algorithm according to claim 8 is characterized in that: The first parameter information includes one or more combinations of: the delivery time of the workpiece, the task generation time, the object information of the delivery object, and the abnormal probability of the event corresponding to the workpiece.
10. An improved slime mold algorithm for solving flexible workshop scheduling system, characterized in that: include: The coding unit is used to convert the continuous position elements into discrete process ordering by using the coding rule based on ascending ordering for the process ordering part; wherein the process ordering part refers to the process ordering part in the two sub-problems of solving the flexible workshop scheduling problem, namely, the process ordering part and the machine allocation problem; each process obtained after the process is coded in the specific coding method corresponding to the SMA algorithm belongs to the continuous position element; and then the ROV coding rule of ascending ordering is used to convert the coding into discrete process ordering; Initialization unit, used for parameter setting and population initialization; Circulatory unit, used to calculate the cosine weight wt, update the weight matrix using the sigmoid weight, update the inertia factor (a, b) and the Gaussian distribution standard deviation g std , execute position update, if the local search conditions are met, execute PSO local search and update the solution, sort by fitness, update the global optimal solution and the optimal individual code, and record the optimal fitness of each iteration; where the individual is the constituent unit of the slime mold population; A storage unit, used to store the optimal individual code, the optimal fitness, and calculate and store the machine allocation corresponding to the optimal individual corresponding to the optimal individual code; The output unit is used to determine whether the number of iterations has reached the maximum number of iterations. If so, the optimal solution is output. Otherwise, it returns to step three to continue iterative updating.
Citation Information
Patent Citations
A method for solving flexible job shop scheduling based on an improved whale algorithm
CN109886588A
Flexible job shop scheduling method based on improved grey wolf algorithm
CN116090773A