A distributed flexible job shop scheduling method considering machine failures
By improving the meme algorithm and combining the co-evolution of the distributed estimation population and the meme population, elastic active decoding, and parameter adaptation strategies, the problem of machine failure scheduling in distributed flexible workshops was solved, improving production efficiency and machine utilization, and reducing economic losses.
Patent Information
- Application Number
- CN202310966750.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-08-01
- Publication Date
- 2026-02-27
- Estimated Expiration
- 2043-08-01
AI Technical Summary
Existing technologies for handling machine failure scheduling in distributed flexible workshops suffer from low solution efficiency, susceptibility to local optima, and weak optimization capabilities. Furthermore, low machine utilization leads to low production efficiency and increased economic losses.
An improved meme algorithm is adopted, which combines the co-evolution of the distribution estimation population and the meme population, elastic active decoding, parameter adaptive strategy and three local search strategies to optimize the scheduling scheme after machine failure, improve the quality of the initial solution and the local search capability, and improve machine utilization and production efficiency.
The improved meme algorithm shortens the convergence time, increases the probability of finding high-quality solutions, improves machine utilization and production efficiency, and reduces economic losses caused by machine failures.
Smart Images

Figure CN116880408B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the field of production planning and scheduling, and particularly relates to a distributed flexible job shop scheduling method considering machine failure. BACKGROUND
[0002] With the deepening development of economic globalization and manufacturing industry, the distributed manufacturing mode of multiple regions and multiple factories gradually becomes an important development direction of manufacturing enterprises. Distributed manufacturing forms a multi-center distribution feature in space and resources, and each production center completes the production task according to the decision of the scheduling center, realizes the optimization combination of productivity and the rational allocation of resources, and greatly improves the production efficiency. In addition, with the change of consumption mode, market demand gradually changes to multi-variety and small batch. In order to adapt to the change of market demand and shorten the processing cycle, flexible job shop is widely used by enterprises. Flexible job shop has the characteristics of high flexibility, fast reaction ability and high equipment utilization rate, and can better meet the needs of manufacturing enterprises facing the change of consumption mode. Under the background of distributed production, the scheduling management of flexible job shop increases the factory dimension, so that the problem is closer to the actual production activities.
[0003] Due to improper human operation, metal fatigue and other factors, equipment parts will age, and machine failure may also occur in the production process of the workshop. The machine with failure should be stopped immediately for maintenance. The machine downtime may delay the subsequent process of the workpiece, and then affect the progress of other workpieces and the delivery of the entire order. The delay of the order will increase the production cost of the enterprise, including energy cost, compensation cost and labor cost. Therefore, the challenge that the enterprise decision maker must face is how to effectively deal with the machine failure in production to minimize the loss of the enterprise.
[0004] Although many scholars at home and abroad have solved the combination optimization and multi-objective optimization problem of job shop scheduling by using intelligent optimization algorithm, few people have involved the scheduling method of distributed flexible job shop considering machine failure. Genetic algorithm is widely used due to its strong adaptability and the advantage of being suitable for solving multi-objective problems, but genetic algorithm still has the disadvantages of low solving efficiency and slow convergence speed. The memetic algorithm is a meta-heuristic algorithm which combines the advantages of evolutionary algorithm and local search optimization technology to find better solutions and keep the algorithm convergent. However, the current mainstream memetic algorithm still has the defects of low solving efficiency, easy to fall into local optimum and weak optimization ability when applied to multi-objective combination optimization problem. SUMMARY
[0005] 1. Technical problems to be solved by the application
[0006] The present application provides a distributed flexible job shop scheduling method considering machine failure, solves the distributed flexible job shop production scheduling problem and the scheduling problem after machine failure in the distributed flexible job shop environment, improves the production efficiency of enterprises, improves the emergency handling capacity of enterprises in the face of equipment failure, and greatly reduces the economic loss caused by machine failure.
[0007] 2. Technical solution
[0008] To solve the above technical problems, the technical solution provided by the present application is:
[0009] The distributed flexible job shop scheduling method considering machine failure provided by the present application has the following steps:
[0010] Step 1: initialize algorithm parameters and workpiece processing information, and take the minimum maximum completion time, the minimum total energy consumption and the minimum machine load difference as optimization objectives;
[0011] Step 2: randomly generate an initial scheduling solution population P, form another scheduling solution population F through distribution estimation principle, and the coding of solution individuals is 3 layers, which are factory coding, process coding and machine coding respectively;
[0012] Step 3: decode the population P, and calculate the fitness of each individual in the population;
[0013] Step 4: perform selection, crossover and mutation operations on the population P to form a population Q;
[0014] Step 5: combine the population P, the population Q and the population F to form a population R, and perform selection operation on the population R to form a new population P'; update the solution set based on the population P';
[0015] Step 6: perform local search on each solution in the solution set, and update the distribution probability of the population F according to the new solution set;
[0016] Step 7: generate a new population F' according to the updated population distribution probability;
[0017] Step 8: perform selection, crossover and mutation operations on the population P' to form a new population Q', and let P=P', F=F', Q=Q';
[0018] Step 9: cyclically execute steps 5-8 until the maximum number of iterations is reached.
[0019] 3. Beneficial effects
[0020] Compared with the existing public technology, the technical solution provided by the present application has the following remarkable effects:
[0021] (1) The present application forms a double population cooperative optimization by improving the population initialization strategy and introducing the distribution estimation generated population, which improves the quality of the initial solution. The high-quality initial population can greatly shorten the convergence time of the algorithm, so that the algorithm can search for higher-quality solutions in a limited iterative evolution. Double population cooperative optimization can overcome the defect of single population optimization that is easy to fall into local optimum. Double population optimization can focus on different search spaces, improving the probability of searching for optimal solutions.
[0022] (2) Although the conventional decoding method is convenient to operate, it also causes low machine utilization and a large amount of idle machine time. The present application improves the decoding function of the original algorithm and introduces elastic active decoding, which greatly improves the utilization rate of the processing machine, thereby shortening the completion cycle and saving energy consumption.
[0023] (3) The present application introduces three local search strategies for distributed flexible job shop machine fault scheduling problems, including a local search strategy based on a critical path, a local search strategy based on a critical factory, and a local search strategy based on a minimum processing time machine. Through local search of the solution set at each iteration, the local search ability of the algorithm is improved to further improve the algorithm performance.
[0024] (4) The present application adds an evolutionary parameter adaptive strategy to the published memetic algorithm evolution operation. In the early stage of the algorithm, the average fitness of the population is very low. A lower selection probability is used to select a small number of high-quality individuals into the next generation. When the algorithm progresses to the later stage, the fitness of the individuals in the population is generally high. In order to maintain the convergence of the algorithm, a larger selection probability is used to retain most of the high-quality individuals to the next generation. At the same time, the size of the selection probability is also affected by the population diversity. If the population diversity is high, the selection probability is appropriately increased. The crossover probability and the mutation probability affect the efficiency and search ability of the algorithm. Larger crossover and mutation probabilities can improve the search ability, but at the same time the convergence of the algorithm will be reduced. With the convergence of the algorithm, the crossover and mutation probabilities need to be kept at a lower level. The crossover and mutation probabilities change adaptively with the iteration of the algorithm, which helps to balance the search ability and convergence of the algorithm. BRIEF DESCRIPTION OF DRAWINGS
[0025] Figure 1 is a flowchart of the distributed flexible job shop scheduling method with machine failure determined by the present application.
[0026] Figure 2 is a decoding schematic diagram of the solution.
[0027] Figure 3 is a crossover schematic diagram.
[0028] Figure 4 is a comparison Gantt chart before and after scheduling. Detailed Implementation
[0029] To further understand the content of this invention, a detailed description of the invention will be provided in conjunction with the accompanying drawings and embodiments.
[0030] Example 1
[0031] The method for determining the scheduling of a distributed flexible job shop with machine faults in this embodiment is as follows: Figure 1 As shown. This embodiment introduces five initialization strategies, co-evolution of the distribution estimation population and the meme population, elastic active decoding, parameter adaptive strategy, and a combination of three local search mechanisms into the existing meme algorithm. This establishes a comprehensive scheduling and processing mechanism for machine failures in distributed flexible workshops, helping manufacturing workshops improve emergency response capabilities, increase production efficiency, and reduce economic losses.
[0032] Taking the 4*4*2 distributed flexible workshop scheduling shown in Table 1 as an example, the following steps are all performed on this example.
[0033] Table 1. Example of a 4x4x2 distributed flexible workshop
[0034]
[0035] The scheduling method steps are as follows:
[0036] Step 1: Initialize algorithm parameters, workpiece processing information, and optimization objectives: minimize maximum completion time, minimize total processing energy consumption, and minimize machine load differences.
[0037] The parameters mainly include the population size (Nind) of the improved meme algorithm (100), the maximum number of iterations (Maxiter) of the algorithm (500), and the selection probability range [Ps]. min Ps max The crossover probability range is [0.1, 0.4], and the crossover probability range is [Pc]. min Pc max The value is [0.6, 0.9], and the mutation probability range is [Pm]. min ,Pm max The probability learning rate α is 0.5, and the value is [0.1, 0.4]. The workpiece processing information includes the number of workpieces in the batch, n = 4, and the number of operations per workpiece, nprocess. i Given a [2,3,2,3] sequence, the available processing machines and their processing times for each process, the number of factories f = 2, and the number of machines in each factory m. f The value is 4.
[0038] Step 2: Randomly form an initial scheduling solution population P, and form another scheduling solution population F by distribution estimation principle. The coding of solution individuals is 3 layers, which are factory coding, process coding and machine coding respectively.
[0039] Step 2.1 The specific coding mode of all Nind individuals is as follows:
[0040] Take an example of containing 4 workpieces, 2 factories, and 4 machines in each factory. Among them, workpiece 1 to workpiece 4 contain 2 processes, 3 processes, 2 processes and 3 processes respectively. The length of three-layer coding of each solution individual is as follows: the length of factory coding is 4, the length of process coding is 10, and the length of machine coding is 10. For example, a solution coding is represented as: factory coding [1, 2, 2, 1], from left to right, indicating that workpiece 1 is processed in factory 1, workpiece 2 is processed in factory 2, and so on; process coding [1, 2, 3, 1, 4, 3, 2, 4, 2, 4], from left to right, indicating the 1st process of workpiece 1, the 1st process of workpiece 2, the 1st process of workpiece 3, the 2nd process of workpiece 1, and so on; machine coding is [1, 4, 4, 1, 2, 2, 4, 3, 2, 1], indicating which machine the process coding layer corresponds to. From left to right, it indicates that the 1st process of workpiece 1 is processed on machine 1 in factory 1, the 1st process of workpiece 2 is processed on machine 4 in factory 2, and so on. The specific coding is shown in Figure 2 .
[0041] Step 2.2 The initial scheduling solution population P is generated by using a diversified population initialization strategy. Specifically, under the constraints of the number of factories, the number of workpieces, the number of processes, and the available machines for each process, a scheduling solution individual (including factory coding, process coding and machine coding) is randomly generated, and Nind individuals are generated to form the initial population. The diversified population initialization strategy includes: ① Random initialization of population; ② Minimum processing time initialization; ③ Shortest completion cycle initialization; ④ Minimum energy consumption initialization; ⑤ Balanced factory load initialization.
[0042] Random initialization of population: factory selection, process sorting and machine selection are randomly generated.
[0043] Minimum processing time initialization: when selecting a machine for a process, the machine with the shortest processing time in the available machine set is preferred.
[0044] Shortest completion cycle initialization: when generating machine code, the machine that makes the current total processing time the earliest is preferred in the available machine set.
[0045] Minimum energy consumption initialization: when selecting a machine, the machine with the minimum load power is preferred.
[0046] Balanced factory load initialization: When assigning workpieces to factories, the factory with the fewest workpieces to be processed is selected first.
[0047] To improve the quality of the initial population and simultaneously ensure its diversity, thereby expanding the search range during subsequent evolution, all five initialization strategies mentioned above are used with a probability of 20% during population initialization.
[0048] Step 2.3 Forming the initial scheduling scheme solution population F using the principle of distribution estimation, specifically: taking factory coding as an example, first initialize the distribution probability matrix:
[0049]
[0050] Where P if This represents the probability that workpiece i will be processed in factory f. The workpiece code and factory code are generated using the same method. Taking the probability distribution matrix corresponding to the factory code as an example, the first row of the matrix represents the probability of workpiece 1 being selected from the available factories. A roulette wheel method is used to select one of the available factories as the processing factory for workpiece 1. The initial probability distribution is assumed to be equal, so the probability distribution of the factory codes for 4 workpieces and 2 factories is as follows:
[0051]
[0052] The first row represents the factory code distribution probability of workpiece 1. There are 2 factories, so the probability of each factory being selected in the initial scheduling solution is 1 / 2. Based on the distribution probability of the factory codes, the processing factories of workpiece 1, workpiece 2, workpiece 3, and workpiece 4 are selected sequentially using the roulette wheel method until all genes of the factory codes have been generated.
[0053] Process codes and machine codes follow the same pattern.
[0054] Step 3: Decode the solution population P and calculate the fitness of each individual in the population.
[0055] The fitness of each individual in the population will be calculated. The objectives considered in this scheduling method are: maximum completion time, total energy consumption, and machine load difference. Therefore, the fitness of each individual in the scheduling scheme solution is these three objective values, in the form of: [maximum completion time, total energy consumption, machine load difference].
[0056] Most existing shop floor scheduling problems assume that all machines are always operational. However, in reality, due to human or environmental factors, machines have a certain probability of malfunctioning. When a machine malfunctions and interrupts work, it affects the current processing progress. The conventional decoding process involves scheduling the start times of processes according to their sequence to the latest idle time on the corresponding machine until all processes are scheduled. Finally, the fitness of each solution is obtained by calculating the target values based on the scheduling scheme. This invention solves the scheduling problem after machine malfunctions in a distributed flexible shop floor environment. By avoiding the malfunction period of the faulty machine during the decoding process and rationally arranging the workpiece processing position and start time, efficiency is maximized.
[0057] The decoding process is as follows:
[0058] (1) Input the order of all process arrangements for the workpiece code, Oij_set;
[0059] (2) Traverse each process O in Oij_set ij and obtain the process O ij M processing machine kl M kl Recent idle time I kl and process O ij Processing time T ijkl Based on the information obtained, calculate process O. ij Start processing time: ST←max(E) i(j-1)k'l' ,I kl ), where E i(j-1)k'l' For process O i(j-1) Completion time;
[0060] (3) Traverse the processing machine M kl For each scheduled process; calculate the time interval between the currently traversed process and the next process, idle_i←S y+1 -E y ;where S y+1 E is the start time of the next operation. y Let y be the completion time of process y;
[0061] (4) If the current process O ij The processing time is less than the current idle time, and no machine failure occurs during the idle time, or the machine failure interval does not affect process O. ij If a gap is inserted, then process O is reset. ij Start time ST←max(E) i(j-1)kl E y ); where E i(j-1)kl For process O i(j-1) The completion time, Ey the end time of the process y;
[0062] (5) If the step (4) operation is completed and the gap cannot be inserted forward, then the machine M is traversed again kl each scheduled process; if the processing time of the process O ij is slightly greater than the gap time, and the gap time does not occur machine failure or the machine failure does not affect the insertion of the process O ij , the start time ST of the process O ij is reset to max (E i(j-1)kl , E y ); wherein E i(j-1)kl is the end time of the process O i(j-1) , and E y is the end time of the process y;
[0063] (6) The current operation y is arranged at the time ST, and the scheme is updated; the time conflict judgment and the process constraint judgment are performed on all processes of the updated machine M kl , and all time conflicts and process constraint conflicts are eliminated;
[0064] (7) If all processes meet the constraint conditions, the process is terminated, the scheme is output, the target values are calculated according to the scheduling scheme, and the fitness of each scheme is obtained.
[0065] Steps (1) to (4) describe the operation process of active decoding, and the active decoding process described in the application considers the case of machine failure in the disclosed active decoding technology, and automatically avoids the fault machine during the arrangement of process processing, effectively processing the scheduling problem after the machine failure in the distributed flexible job shop.
[0066] Steps (5) to (6) describe the operation process of flexible active decoding, and the flexible active decoding described in the application not only considers the case of machine failure in the workshop on the basis of the disclosed active decoding technology, but also effectively improves the insufficient machine utilization rate of the original active decoding technology. When the flexible active decoding arranges the process to insert the gap time forward, if the processing time of the process is slightly greater than the inserted gap time, the start time of the subsequent unprocessed process is delayed until the condition of inserting the gap of the process is met. The flexible active decoding greatly improves the machine utilization rate on the basis of the original active decoding technology.
[0067] Step 4: The selected population in step 2 is subjected to crossover and mutation operations to form a population Q.
[0068] The population P generated in step 2 is subjected to selection, crossover and mutation operations, so that the population size reaches Nind again.
[0069] The selection operation of the population P is specifically as follows: after decoding and calculating the fitness of each individual of the population, the first Nind*Ps individuals in the population are selected according to the order from good to bad, and are directly put into the next generation population. The selection operation can retain the excellent individuals in the population, and is more conducive to obtaining a satisfactory scheduling scheme.
[0070] After the selection operation is completed, the new population is subjected to a crossover operation until the population size reaches Nind again. The crossover operation generates two new individuals by exchanging the coding fragments of the two parent individuals, and the two new individuals are modified to avoid the generation of infeasible solutions. The crossover operation can not only inherit part of the genes of the parent individuals to the next generation, but also generate new genetic information to search for possible high-quality solutions. The crossover is shown in Figure 3 To further search for solution individuals, a mutation operation is performed. The mutation operation generates a new individual by transforming part of the coding fragments of an individual. The mutation operation helps to search for better solution individuals on the basis of the original solutions. After the crossover and mutation operations are performed, the population Q is formed.
[0071] Step 5: The populations P, Q and F are merged to form a population R, and a selection operation is performed on the population R to form a new population P'. The solution set is updated on the basis of the population P'.
[0072] The populations P, Q and F generated in steps 2 and 4 are merged to form a new population R, and the population size of the population R is 3*Nind. A selection operation is performed on the population R: the population R is subjected to a decoding operation, the fitness of each individual in the population R is calculated, and the first Nind individuals are selected according to the order from good to bad. After the selection operation, a new population P' is formed, and the population size of the population P' is Nind. The solution set is updated on the basis of the new population P', the new population P' and the original solution set are combined to form a new set PP, the solution individuals in the set PP are decoded, the fitness is calculated, and the first Np individuals are selected according to the order from good to bad, where Np is the predetermined capacity of the solution set.
[0073] Step 6: Local search is performed on the solutions in the solution set.
[0074] Step 6.1: The present application designs three local search methods, including a local search based on a critical path, a local search based on a critical factory and a local search based on a machine with the shortest working hours.
[0075] The specific operation steps of the local search based on the critical path are as follows:
[0076] (1) All scheduled processes on all machines are traversed.
[0077] (2) For each process, determine whether the interval time between the process and the next process is 0.
[0078] (3) If the interval time between three or more consecutive processes is 0, define the set of processes as a process block.
[0079] (4) Repeat (1)-(3) until all processes on all machines are traversed.
[0080] (5) For each process block that meets the conditions, move the last process in the block to the front of the other processes in the block, re-decode, and determine whether the objective function is more optimal. Keep the more optimal transformation.
[0081] Local search based on key factory: In the distributed production scheduling problem, the factory with the longest completion cycle is called the key factory, and its completion cycle is also the overall completion cycle. Find the factory with the longest completion cycle (key factory) and the factory with the shortest completion cycle in the scheduling scheme, and randomly select a workpiece in the processing task of the key factory and assign it to the factory with the shortest completion cycle to balance the processing tasks of each factory and achieve the goal of shortening the completion cycle.
[0082] Local search based on shortest processing time: In the current scheduling scheme, randomly select a process. If there is more than one available processing machine for the process, replace the processing machine of the current process with the machine with the shortest processing time to pursue the goal of shortening the overall completion cycle.
[0083] For each solution in the solution set, randomly select a way to perform local search.
[0084] Step 6.2: Update the population distribution probability according to the updated solution set. The formula for updating the distribution probability is:
[0085]
[0086] where P i+1 (x) is the distribution probability of the xth decision variable of the new generation, a is the learning rate, n is the total number of individuals in the population, is the value of the kth individual's decision variable in the ith solution set.
[0087] Update the population distribution probability of the factory code, workpiece code, and machine code according to the above update formula.
[0088] Step 7: Generate a new population F' according to the updated population distribution probability.
[0089] Generate a new population F' according to the updated population distribution probability. The factory code, process code, and machine code of each scheduling solution individual are generated based on the new distribution probability using the roulette method.
[0090] Step 8: Select, crossover and mutate the population P' to form a new population Q', let P = P', F = F', Q = Q'.
[0091] In step 8, before the selection, crossover and mutation operations are performed on the new population P', the selection probability, crossover probability and mutation probability are updated to adapt to the performance focus of different stages of the algorithm.
[0092] The selection probability is calculated by the following formula:
[0093]
[0094] wherein, and are the minimum and maximum values in the range of the selection probability, iter is the current iteration number of the algorithm, maxiter is the maximum iteration number of the algorithm, and D represents the non-repetition degree of the population, and its expression is:
[0095]
[0096] wherein, PV represents the set of population fitness, and p1 and p2 are both elements in the set PV.
[0097] The expressions of the adaptive crossover probability and mutation probability are as follows:
[0098]
[0099]
[0100] wherein P c is the crossover probability of the population, is the upper limit of the value range of the crossover probability, is the lower limit of the value range of the crossover probability, iter is the current iteration number of the algorithm, and maxiter is the maximum iteration number of the algorithm.
[0101] After the selection probability, crossover probability and mutation probability are determined, the selection, crossover and mutation operations are performed on the population P'. After the evolution operations are performed, the new population Q' is formed, and the population size is Nind.
[0102] Let P = P', F = F', Q = Q'.
[0103] Step 9: Loop steps 5-8 until the maximum iteration number is reached.
[0104] In step 9, it is judged whether the termination condition is reached at this time. If not, the population P, population Q and population F are substituted into step 5 to continue the evolution iteration; otherwise, the final solution set is output.
[0105] In order to verify the superiority of the method of the present application, the method of the present application is compared with several current mainstream algorithms, i.e. the original memetic algorithm (MA), the artificial bee colony algorithm (ABC), the differential evolutionary algorithm (DEA) and the estimated of distributed algorithm (EDA), and the IGD index is used to reflect the advantages and disadvantages of the algorithms. The IGD value can comprehensively reflect the distribution and convergence of the solution set, and the calculation formula is as follows:
[0106]
[0107] Wherein PF is the Pareto front obtained by using the algorithm, PF* is the true Pareto front, d(s1, s2) is the Euclidean distance of two solutions in the solution space. |PF*| is the length of the true Pareto front PF*. The smaller the IGD(PF, PF*) is, the better the solving performance of the algorithm is.
[0108] Specific results are shown in Table 2, wherein the bold font represents the optimal algorithm result in the same group of examples. As can be seen from Table 2, in all standard examples, the scheduling method of the present application is superior to the other several comparison algorithms, which proves the superiority of the method of the present application.
[0109] Table 2 IGD values of the method of the present application and several comparison algorithms
[0110]
[0111]
[0112] The above describes the present application and its embodiments in a schematic manner, and the description is not restrictive, and the embodiments shown in the drawings are only one of the embodiments of the present application, and the actual structure is not limited thereto. Therefore, if a person skilled in the art is inspired by the above description, without departing from the spirit of the present application, similar structural modes and embodiments can be designed without creativity, which should all belong to the protection scope of the present application.
Claims
1. A distributed flexible job shop scheduling method considering machine failures, characterized in that, The steps are: Step 1: initialize algorithm parameters and workpiece processing information, and take the minimum maximum completion time, the minimum total energy consumption and the minimum machine load difference as optimization objectives; Step 2: Randomly generate initial scheduling solution population Form another scheduling solution population by distribution estimation principle The encoding of solution individual is 3 layers, which are factory encoding, process encoding and machine encoding respectively; Step 3: Decode the population and calculate the fitness of each individual in the population. The decoding process is as follows: (1) the order in which the workpiece code is inputted for all process arrangements ; (2) traversing each process in , and acquiring the processing machine , the latest idle time of the processing machine , and the processing time of the process ; according to the acquired information, calculating the start processing time of the process ST ; (3) traversing each scheduled process of the processing machine ; calculating a time interval between the current traversed process and the next process ; (4) If the processing time of the current process is less than the current idle time, and no machine failure has occurred in the idle time, or the machine failure interval does not affect the process inserted in the idle time, the start time of the process is reset ST ; (5) If the insertion of the gap cannot be performed, the machine is traversed again ; if the processing time of the process is slightly longer than the gap time, and the gap time does not occur with machine failure or the machine failure does not affect the insertion of the process , the start time of the process is reset; and ST the process is inserted again. (6) the current operation is arranged to the moment, and the scheme is updated; all the processes of the machine updated are subjected to time conflict judgment and process constraint judgment, and all the time conflicts and process constraint conflicts are eliminated; (7) If all processes meet the constraint conditions, terminate the process, output the scheme, calculate the target value according to the scheduling scheme, and obtain the fitness of each scheme; Step 4: Selection on the population P Selection, crossover, mutation operations are performed to form the population ; Step 5: merge the populations , population and population to form population and select the population to form a new population ; update the solution set based on population ; Step 6: Local search is performed on each solution in the solution set and the population is updated based on the new solution set Distribution probability; Step 7: Generating new population according to updated population distribution probability ; Step 8: Selection of the population Selection, crossover and mutation operations are performed to form a new population Let , , ; Step 9: Steps 5-8 are executed in a loop until the maximum number of iterations is reached.
2. The distributed flexible job shop scheduling method considering machine failures according to claim 1, characterized in that: In step 1, the algorithm parameters include the population size in the improved memetic algorithm , the maximum number of iterations of the algorithm , the selection probability range , , the crossover probability range , , the mutation probability range , , the distribution estimation probability learning rate ; the workpiece processing information includes the number of workpieces , the number of processes of each workpiece , the available processing machines and their processing times for each process, the number of processing machines , the number of machines in each factory .
3. The distributed flexible job shop scheduling method considering machine failures according to claim 2, characterized in that: In step 2, the elements in the factory code represent which factory the corresponding workpiece is processed in, and the order of the elements in the process code represents the processing order of each process of the workpiece; the elements in the machine code represent which machine the process corresponding to the process code layer is processed on.
4. The distributed flexible job shop scheduling method considering machine failures according to claim 3, characterized in that: In step 2, a scheduling solution individual is randomly generated under the set range of the number of workpieces, the number of workpieces, the number of workpieces, and the constraint of the available machine of each workpiece, and then a scheduling solution individual is generated The individuals form a population The random generation strategy includes: ①random initialization of the population; ②minimum processing time initialization; ③shortest completion cycle initialization; ④minimum energy consumption initialization; ⑤balanced factory load initialization; when initializing the population, the probability of the five strategies is 20%.
5. The distributed flexible job shop scheduling method considering machine failures according to claim 4, characterized in that: Step 4: Selection operation The process of selection operation is as follows: after decoding and calculating the fitness of each individual in the population, the first Nind*Ps individuals in the population are selected according to the order from good to bad, and directly enter the next generation population. After the selection operation is completed, the new population is subjected to a crossover operation until the population size is restored to The crossover operation exchanges the coding fragments of the two parent individuals to generate two new individuals. After the exchange, the two new individuals are modified to avoid the generation of infeasible solutions. After the crossover operation is completed, the mutation operation is performed, and part of the code fragments of the individual is transformed to obtain a new individual.
6. The distributed flexible job shop scheduling method considering machine failures according to claim 5, characterized in that: In step 5, the population R is decoded to calculate the fitness of each individual, and the first individuals are selected according to the order of fitness from good to bad to form a new population ; the solution set is updated based on the new population , the new population is combined with the original solution set to form a new set , the solution individuals in the set are decoded to calculate their fitness, and the first individuals are selected according to the order of fitness from good to bad, wherein is the given capacity of the solution set.
7. The distributed flexible job shop scheduling method considering machine failures according to claim 5, characterized in that: Step 6 adopts three local search methods, including key path-based local search, key factory-based local search and shortest working time machine-based local search, and randomly selects one method for local search for each solution in the solution set.
8. The distributed flexible job shop scheduling method considering machine failures according to claim 7, characterized in that: In step 7, the population of each dispatch solution individual is generated by roulette wheel selection according to the new distribution probabilities for the plant code, process code and machine code.
9. The distributed flexible job shop scheduling method considering machine failures according to claim 8, wherein: In step 8, before the selection, crossover and mutation operations are performed on the new population the selection probability is calculated by the following equation: wherein, and are the minimum and maximum values of the selection probability within the predetermined range, respectively, is the current iteration number of the algorithm, is the maximum iteration number of the algorithm, denotes the non-repetition degree of the population; The expressions of the adaptive crossover probability and the mutation probability are as follows: wherein is a crossover probability for the population, is an upper limit of the range of values for the crossover probability, is a lower limit of the range of values for the crossover probability, is the current iteration number of the algorithm, is the maximum iteration number of the algorithm.
Citation Information
Patent Citations
Robot assembly unit multi-objective layout optimization method based on multi-group distribution estimation algorithm
CN109917754A