A multi-objective intelligent optimization algorithm for solving dynamic production scheduling problems in distributed flow shops
By applying multi-objective intelligent optimization algorithm and dynamic production scheduling method in distributed flow workshops, the impact of equipment maintenance and temporary workpiece addition on production planning is solved, the production cycle and total workpiece flow time is optimized, and the production efficiency is improved .
Patent Information
- Application Number
- CN202111303702.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-11-05
- Publication Date
- 2025-02-25
- Estimated Expiration
- 2041-11-05
AI Technical Summary
The prior art is difficult to effectively solve the problem of dynamic production scheduling in a distributed flow workshop, especially when the periodic maintenance of processing equipment and temporary addition of workpieces, it is difficult to take into account the optimization of the production cycle and the total flow time of the workpiece.
A multi-objective intelligent optimization algorithm is proposed, combining dynamic production scheduling method and multi-objective artificial bee colony algorithm, and the production plan is optimized through the determination of equipment aging degree and the rescheduling of temporary workpieces, and obtained through heuristic algorithms and multi-objective search methods. Optimal solution.
It has achieved dynamic adjustment of production plans under limited production capacity, optimized production cycle and total workpiece flow time, and improved the company's production efficiency and resource utilization rate.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to multi-objective optimization of dynamic production scheduling problems in distributed flow shops, and specifically to a multi-objective intelligent optimization algorithm for solving dynamic production scheduling problems in distributed flow shops, which can dynamically derive a reasonable production plan based on limited production capacity. Background Art
[0002] In the context of globalization, distributed manufacturing can make full use of the production resources of machining centers or multi-production workshop systems, and is an inevitable requirement for the development of the manufacturing industry under global economic integration. The production scheduling problem of distributed flow workshops is one of the most important problems in production scheduling, and plays an important role in many fields such as food processing, chemical industry, steel, and electronic product production. The rapid development of information technology has promoted the transformation of traditional manufacturing to intelligent manufacturing mode, which helps to grasp the on-site production operation situation in real time and reduce the adverse effects of deviations in the production process on production and operation through reasonable contingency measures. When using traditional methods to solve workshop production scheduling problems, it is difficult to take into account multiple optimization objectives, and it is impossible to dynamically adjust the production schedule for shutdown maintenance of production equipment and temporarily added workpieces. Especially when the production scheduling scale increases, its shortcomings are more obvious. Therefore, it is of great practical significance to study multi-objective intelligent optimization algorithms.
[0003] The production scheduling problem of distributed flow workshops is a typical NP-hard problem, which was first proposed by Naderi and Ruiz in 2010. They introduced the condition of multiple workshops in the centralized flow workshop problem and studied and analyzed the integer programming model of the problem. Thanks to the development of computer technology, intelligent optimization algorithms have been increasingly widely used in workshop scheduling problems in recent years. In 2017, Wang Ling et al. proposed a competition-based evolutionary algorithm to solve the multi-objective optimization of production cycle and delayed order delivery. In 2019, Pan Quanke et al. proposed three heuristic algorithms and four meta-heuristic algorithms to solve the optimization goal of total flow time. In terms of dynamic scheduling, intelligent optimization algorithms have also been applied. In 2019, Pan Quanke et al. studied the dynamic scheduling problem, considering the common emergencies of machine failure, temporary addition of workpieces and changes in the release time of workpieces in the production process, and proposed a multi-starting variable neighborhood descent algorithm to optimize the production cycle. In 2020, Lei Deming et al. applied the artificial bee colony algorithm to the distributed unrelated parallel machine scheduling problem, while considering the impact of periodic maintenance of processing equipment on the production cycle. Intelligent optimization algorithms can use simple search rules to obtain approximate optimal solutions or solution sets within a limited time, and are widely used in complex real-world problems with multiple objectives and multiple constraints. Summary of the invention
[0004] The purpose of the present invention is to address the deficiencies of the existing technology and provide a multi-objective intelligent optimization algorithm for solving the dynamic production scheduling problem of distributed assembly lines, optimize the production cycle and the total flow time of workpieces in the distributed assembly line scheduling problem, and at the same time take into account the actual needs of temporarily adding workpieces and regular maintenance of equipment, so as to make timely adjustments to emergencies during the production process, make full use of limited production resources, and improve the production efficiency of the enterprise.
[0005] In order to solve the above technical problems, the present invention adopts the following inventive concept:
[0006] A multi-objective intelligent optimization algorithm for solving the dynamic production scheduling problem of a distributed flow shop includes the following steps:
[0007] (1) A heuristic algorithm based on a hybrid operator is proposed to initialize the solution set.
[0008] (2) A dynamic scheduling method is proposed to handle periodic maintenance of equipment and temporary addition of workpieces:
[0009] (2.1) The concept of equipment aging is proposed. Before each equipment processing, it is determined whether the equipment aging degree will exceed the threshold. If so, the processing is postponed and equipment maintenance work is performed first.
[0010] (2.2) Propose a production scheduling method for temporarily added workpieces.
[0011] (3) Three multi-objective search methods with different strategies are proposed:
[0012] (3.1) Hired bee stage: Perform multi-objective hybrid neighborhood search on all solutions in the current solution set in turn, that is, randomly select one from the existing workpiece sequence and perform neighborhood insertion or exchange operations. Select a non-dominated solution set from the neighborhood solution set and add it to the candidate solution set.
[0013] (3.2) Observation bee stage: perform multi-objective hybrid neighborhood search on the non-dominated solution sets in the current solution set in turn.
[0014] (3.3) Scouting bee stage: When the optimal solution of the production cycle or the total flow time is updated, perform a traversal neighborhood search on the updated optimal solution until the optimal solution is no longer updated. Record the solutions obtained by the traversal neighborhood search, and select the non-dominated solution set to add to the candidate solution.
[0015] (4) A multi-objective artificial bee colony algorithm is proposed to effectively solve the production scheduling problem of distributed flow workshops:
[0016] Input: Workpiece group to be scheduled
[0017] Output: Allocation of workpiece groups in each workshop and the processing sequence of each workshop
[0018] (4.1) Using the heuristic algorithm, we get the initial solution set
[0019] (4.2) Dynamic scheduling operations are performed in the employed bee stage, the observation bee stage, and the scout bee stage in sequence
[0020] (4.3) Based on multi-objective screening, the current solution set and candidate solution set are used to obtain a new solution set
[0021] (4.4) Determine whether the program running time meets the termination condition. If not, go to step (4.2)
[0022] (4.5) Output the solution.
[0023] According to the above invention concept, the present invention will adopt the following technical solutions:
[0024] A multi-objective intelligent optimization algorithm for solving the dynamic production scheduling problem of a distributed flow shop includes the following steps:
[0025] (1) Use dynamic scheduling methods to handle periodic maintenance of equipment and temporarily added workpieces:
[0026] (1.1) Periodic maintenance:
[0027] During the processing, the aging degree of each equipment in each factory is recorded ML i,k , where i represents the equipment number, k represents the factory number, and the aging degree of each workpiece increases by a certain value after processing; before processing the workpiece, it is determined whether the workpiece will cause the aging degree of the equipment to exceed the threshold If it exceeds the time limit, the workpiece processing will be postponed and the execution time will be MT. i Maintenance of ML i,k =0, continue to process the workpiece after maintenance is completed;
[0028] (1.2) Temporary workpiece addition: R j Indicates the time when a new workpiece is added, in R j The processing order of the workpieces that have started processing in all factories before the time R is no longer adjusted; j Workpieces that have not been processed before the time can be rescheduled;
[0029] (2) Two optimization operators are used:
[0030] (2.1) Neighborhood insertion / exchange operator: Solve π i Search the neighborhood of the selected workpiece J in the process, insert workpiece J into all feasible processing positions or exchange positions with all other feasible workpieces; add the obtained solution set to the candidate solution set Π c ;
[0031] (2.2) Single target neighborhood traversal search:
[0032] Specify single target Obj as C max or TF, select the solution to π i All schedulable jobs J in i , exchange positions with all other reschedulable workpieces; record the solution set Π c The non-dominated solution set Nd(Π c ); if Nd(Π c ) becomes smaller, then continue to traverse the neighborhood of all workpieces of the single-objective optimal solution until min(Obj) no longer becomes smaller;
[0033] (3) Using a multi-objective artificial bee colony algorithm to perform distributed flow shop production scheduling:
[0034] Input: the workpiece group to be scheduled and the population size PS;
[0035] (3.1) A heuristic algorithm based on a mixed operation operator is used to initialize the solution set Π. The operation of the heuristic algorithm is as follows:
[0036] (3.1.1) Calculate the total completion time P for each input job j , which is the sum of the processing time of a workpiece on all machines Sort by the total completion time of the workpieces in descending order;
[0037] (3.1.2) Take the workpieces with the longest completion time from the descending sequence one by one, and randomly select an operation from the following four operators to get the optimal position to insert the workpiece:
[0038] (a) Search for the location in the key factory that minimizes the production cycle;
[0039] (b) Searching for the location in the key plant that minimizes the total flow time;
[0040] (c) Search among all factories for the location that minimizes the production cycle;
[0041] (d) Searching for the position in all factories that minimizes the total flow time;
[0042] (3.1.3) Randomly select the previous or next workpiece J' of the insertion position, and randomly select one of the following 8 operations to insert workpiece J' into the optimal position:
[0043] (a) Search for the position in the factory where J' is located that minimizes the production cycle and reinsert it;
[0044] (b) Search for the position in the factory where J' is located that minimizes the total flow time and reinsert it;
[0045] (c) Search for the workpiece exchange position that minimizes the production cycle in the factory where J' is located;
[0046] (d) Searching for the workpiece exchange position that minimizes the total flow time in the factory where J' is located;
[0047] (e) Search for the position that minimizes the production cycle in all factories and reinsert;
[0048] (f) searching for the position that minimizes the total flow time among all the plants and reinserting;
[0049] (g) Searching for the workpiece exchange position that minimizes the production cycle in all factories;
[0050] (h) Searching for the workpiece exchange position that minimizes the total flow time in all factories;
[0051] (3.1.4) Determine whether there are any remaining unscheduled workpieces. If so, go to step (3.1.2); otherwise, output the result;
[0052] (3.2) Perform the dynamic scheduling operations of the employed bee stage, the observation bee stage, and the scout bee stage in sequence, and update Π,
[0053] (3.2.1) In the hired bee stage, one solution π from the current solution set π is selected in turn. i , randomly select one of the reschedulable workpieces J r ; For the selected J r Randomly execute neighborhood insertion or exchange operators; add the solution set obtained in each round to the candidate solution set Π c , and finally from the candidate solution set Π c Select the non-dominated solution set Nd(Π c ), add to the current solution set, that is, Π=Π∪Nd(Π c );
[0054] (3.2.2) In the observation bee stage, select one solution π from the non-dominated solutions Nd(π) of the current solution set π in turn. i , randomly select one of the reschedulable workpieces J r ; For the selected J r Randomly execute neighborhood insertion or exchange operators; add the solution set obtained in each round to the candidate solution set Π c , and finally from the candidate solution set Π c Select the non-dominated solution set Nd(Π c ), add to the current solution set, that is, Π=Π∪Nd(Π c );
[0055] (3.2.3) In the scout bee stage, if the optimal production cycle min(C max) or the total flow-through time min(TF) is not updated, then exit this stage; for the latest single-objective optimal solution Perform traversal neighborhood search;
[0056] (3.3) Based on multi-objectives, screen the current solution set Π to obtain a new solution set
[0057] (3.3.1) Remove duplicate solutions in the solution set Π to obtain Π * ;
[0058] (3.3.2) Clear the current solution set,
[0059] (3.3.3) Take out the non-dominated solutions from Π * and add them to Π, Π = Π ∪ Nd(Π * ), Π * = Π * - Nd(Π * )
[0060] (3.3.4) If the number of solutions in the set Π is less than the population size, i.e., |Π| < PS, go to 3.3.3; otherwise, exit the screening operation of the current solution;
[0061] Output: If the program running time meets the termination condition, output the allocation of the workpiece group in each workshop and the processing sequence of each workshop; otherwise, loop and execute steps (3.2) and (3.3).
[0062] Preferably, in the step (1.1), the method of recording the aging degree of the device is used as the basis for judging whether to perform periodic maintenance.
[0063] Preferably, in the step (1.2), when adding new workpieces, the method of rescheduling is used to divide the workpieces into fixed groups and active groups; the fixed group contains the workpieces that have been processed when the new workpiece is added, and their allocated factories and processing orders will no longer change; the active group contains the new workpiece and the processed workpieces, and the workpieces in the active group are rescheduled after the new workpiece is added.
[0064] Preferably, in the described step (2.1), the method of reinserting workpieces or exchanging the processing order of workpieces is used to search the neighborhood of the solution.
[0065] Preferably, in the step (2.2), the method of traversing the neighborhood is used to explore the single-objective optimal value of the solution; during the traversal process, if a solution better than the current optimal single objective is found, continue to traverse the neighborhood of this single-objective optimal solution; if no better single-objective optimal solution is found among all the neighborhood solutions of a solution, then exit the single-objective neighborhood traversal search.
[0066] Preferably, in the step (3.1), a heuristic algorithm based on a hybrid operation operator is used to generate an initial solution set for the iterative search.
[0067] Preferably, in the step (3.2), each round of iteration process is divided into three stages: employed bees, observation bees and scout bees, and different optimization strategies are implemented according to the characteristics of the problem.
[0068] Preferably, in the step (3.3), the concept of Pareto optimality is used to classify the results of each round of iteration and the existing solution set into k non-dominated fronts, where the solutions on the non-dominated front surfaces with smaller numbers can dominate the solutions on the non-dominated front surfaces with larger numbers; the algorithm selects the first n non-dominated front surfaces to form the solution set for the next round of iteration, so that the number of solutions in the solution set is minimized while being not less than the parameter PS.
[0069] Compared with the prior art, the present invention has the following obvious outstanding substantive features and significant advantages:
[0070] 1. The present invention proposes an algorithm structure and operation operator for dynamic production scheduling by combining the characteristics of the problem. The multi-objective artificial bee colony algorithm proposed based on this can automatically perform dynamic production scheduling of workpieces among multiple factories, output a better solution within a given time, and meet the comprehensive requirements of global optimization, solution quality and quantity;
[0071] 2. Compared with the existing algorithms, the present invention improves the quality of the output results, thereby saving the production costs of the enterprise and improving production efficiency; in addition, the research results of the present invention also have great application prospects in other similar production scheduling problems. BRIEF DESCRIPTION OF THE DRAWINGS
[0072] Figure 1 This is a flowchart of the algorithm initialization for the preferred implementation of the present invention.
[0073] Figure 2 Flowchart of the neighborhood reinsertion operator for the preferred implementation of the present invention.
[0074] Figure 3 The flowchart of the neighborhood exchange operator preferably implemented in the present invention.
[0075] Figure 4 This is a flowchart of the traversal neighborhood search preferably implemented in the present invention.
[0076] Figure 5 This is a comparison chart of the algorithm results preferably implemented in the present invention. DETAILED DESCRIPTION
[0077] The preferred embodiments of the present invention are combined with the accompanying drawings to clearly and completely describe the technical solution of the present invention:
[0078] Embodiment 1:
[0079] A multi-objective intelligent optimization algorithm for solving the dynamic production scheduling problem of a distributed flow shop includes the following steps:
[0080] (1) Use dynamic scheduling methods to handle periodic maintenance of equipment and temporarily added workpieces:
[0081] (1.1) Periodic maintenance:
[0082] During the processing, the aging degree of each equipment in each factory is recorded ML i,k , where i represents the equipment number, k represents the factory number, and the aging degree of each workpiece increases by a certain value after processing; before processing the workpiece, it is determined whether the workpiece will cause the aging degree of the equipment to exceed the threshold If it exceeds the time limit, the workpiece processing will be postponed and the execution time will be MT. i Maintenance of ML i,k =0, continue to process the workpiece after maintenance is completed;
[0083] (1.2) Temporary workpiece addition: R j Indicates the time when a new workpiece is added, in R j The processing order of the workpieces that have started processing in all factories before the time R is no longer adjusted; j Workpieces that have not been processed before the time can be rescheduled at will;
[0084] (2) Two optimization operators are used:
[0085] (2.1) Neighborhood insertion / exchange operator: Solve π i Search the neighborhood of the selected workpiece J in the process, insert workpiece J into all feasible processing positions or exchange positions with all other feasible workpieces; add the obtained solution set to the candidate solution set Π c ;
[0086] (2.2) Single target neighborhood traversal search:
[0087] Specify single target Obj as C max or TF, select the solution to π i All schedulable jobs J in i , exchange positions with all other reschedulable workpieces; record the solution set Π c The non-dominated solution set Nd(Π c ); if Nd(Π c ) becomes smaller, then continue to traverse the neighborhood of all workpieces of the single-objective optimal solution until min(Obj) no longer becomes smaller;
[0088] (3) Using a multi-objective artificial bee colony algorithm to perform distributed flow shop production scheduling:
[0089] Input: the workpiece group to be scheduled and the population size PS;
[0090] (3.1) A heuristic algorithm based on a mixed operation operator is used to initialize the solution set Π. The operation of the heuristic algorithm is as follows:
[0091] (3.1.1) Calculate the total completion time P for each input job j , which is the sum of the processing time of a workpiece on all machines Sort by the total completion time of the workpieces in descending order;
[0092] (3.1.2) Take the workpieces with the longest completion time from the descending sequence one by one, and randomly select an operation from the following four operators to get the optimal position to insert the workpiece:
[0093] (a) Search for the location in the key factory that minimizes the production cycle;
[0094] (b) Searching for the location in the key plant that minimizes the total flow time;
[0095] (c) Search among all factories for the location that minimizes the production cycle;
[0096] (d) Searching for the position in all factories that minimizes the total flow time;
[0097] (3.1.3) Randomly select the previous or next workpiece J' of the insertion position, and randomly select one of the following 8 operations to insert workpiece J' into the optimal position:
[0098] (a) Search for the position in the factory where J' is located that minimizes the production cycle and reinsert it;
[0099] (b) Search for the position in the factory where J' is located that minimizes the total flow time and reinsert it;
[0100] (c) Search for the workpiece exchange position that minimizes the production cycle in the factory where J' is located;
[0101] (d) Searching for the workpiece exchange position that minimizes the total flow time in the factory where J' is located;
[0102] (e) Search for the position that minimizes the production cycle in all factories and reinsert;
[0103] (f) searching for the position that minimizes the total flow time among all the plants and reinserting;
[0104] (g) Searching for the workpiece exchange position that minimizes the production cycle in all factories;
[0105] (h) Searching for the workpiece exchange position that minimizes the total flow time in all factories;
[0106] (3.1.4) Determine whether there are any remaining unscheduled workpieces. If so, go to step (3.1.2); otherwise, output the result;
[0107] (3.2) Perform the dynamic scheduling operations of the employed bee stage, the observation bee stage, and the scout bee stage in sequence, and update Π,
[0108] (3.2.1) In the hired bee stage, one solution π from the current solution set π is selected in turn. i , randomly select one of the reschedulable workpieces J r ; For the selected J r Randomly execute neighborhood insertion or exchange operators; add the solution set obtained in each round to the candidate solution set Π c , and finally from the candidate solution set Π c Select the non-dominated solution set Nd(Π c ), add to the current solution set, that is, Π=Π∪Nd(Π c );
[0109] (3.2.2) In the observation bee stage, select one solution π from the non-dominated solutions Nd(π) of the current solution set π in turn. i , randomly select one of the reschedulable workpieces J r ; For the selected J r Randomly execute neighborhood insertion or exchange operators; add the solution set obtained in each round to the candidate solution set Π c , and finally from the candidate solution set Π c Select the non-dominated solution set Nd(Π c ), add to the current solution set, that is, Π=Π∪Nd(Π c );
[0110] (3.2.3) In the scout bee stage, if the optimal production cycle min(C max ) or the total flow time min(TF) is not updated, then exit this stage; for the latest single-objective optimal solution Perform a traversal neighborhood search;
[0111] (3.3) Based on multi-objective screening, the current solution set Π is obtained to obtain a new solution set
[0112] (3.3.1) Remove the duplicate solutions in the solution set Π and get Π * ;
[0113] (3.3.2) Clear the current solution set,
[0114] (3.3.3) From Π *Extract the non-dominated solutions from it and add them to Π, Π = Π ∪ Nd(Π * ), Π * = Π * - Nd(Π * )
[0115] (3.3.4) If the number of solutions in the set Π is less than the population size, i.e., |Π| < PS, go to 3.3.3; otherwise, exit the screening operation of the current solutions;
[0116] Output: If the running time of the program meets the termination condition, output the allocation of the workpiece groups in each workshop and their respective processing sequences in the workshops; otherwise, loop through steps (3.2) and (3.3).
[0117] The method of this embodiment optimizes the production cycle and the total flow time of the workpieces for the distributed flow shop scheduling problem. At the same time, considering the actual requirements of temporarily adding workpieces and regular equipment maintenance, it can make timely adjustments to emergencies during the production process, make full use of limited production resources, and improve the production efficiency of the enterprise.
[0118] Embodiment Two:
[0119] This embodiment is basically the same as Embodiment One, and the special features are as follows:
[0120] In the described step (1.1), the method of recording the degree of equipment aging is used as the basis for judging whether to perform periodic maintenance.
[0121] In the described step (1.2), when adding new workpieces, the method of rescheduling is used to divide the workpieces into a fixed group and an active group. The fixed group contains the workpieces that have been completed when the new workpieces are added, and their allocated factories and processing sequences will no longer change; the active group contains the new workpieces and the workpieces being processed, and the workpieces in the active group are rescheduled after the new workpieces are added.
[0122] In the described step (2.1), the method of reinserting workpieces or exchanging the processing order of workpieces is used to search the neighborhood of the solution.
[0123] In the described step (2.2), the method of traversing the neighborhood is used to explore the single-objective optimal value of the solution; during the traversal process, if a solution better than the current optimal single-objective is found, continue to traverse the neighborhood of this single-objective optimal solution; if no better single-objective optimal solution is found among all the neighborhood solutions of a solution, exit the single-objective neighborhood traversal search.
[0124] In the described step (3.1), a heuristic algorithm based on a hybrid operation operator is used to generate the initial solution set for iterative search.
[0125] In the step (3.2), each round of iteration is divided into three stages: employed bees, observation bees and scout bees, and different optimization strategies are implemented according to the characteristics of the problem.
[0126] In the step (3.3), the concept of Pareto optimality is used to classify the results of each round of iteration and the existing solution set into k non-dominated frontiers, where the solutions on the non-dominated frontier with a small number can dominate the solutions on the non-dominated frontier with a large number. The algorithm selects the first n non-dominated frontiers to form the solution set for the next round of iteration, so that the number of solutions in the solution set is minimized under the condition that it is not less than the parameter PS.
[0127] The method of this embodiment proposes an algorithm structure and operation operators for dynamic scheduling by combining the characteristics of the problem. The multi-objective artificial bee colony algorithm proposed based on this can automatically dynamically schedule workpieces among multiple factories, output a better solution within a given time, and meet the comprehensive requirements of global optimization, solution quality and quantity.
[0128] Embodiment three:
[0129] A multi-objective intelligent optimization algorithm for solving the dynamic production scheduling problem of distributed flow shops is used to allocate processing shops and arrange the processing sequence for the workpieces to be processed. The algorithm optimizes the production cycle and the total flow time of the workpieces, and obtains a high-quality solution set within a reasonable time. The operation steps are as follows:
[0130] (1) A dynamic scheduling method is proposed to handle periodic maintenance of equipment and temporary addition of workpieces:
[0131] (1.1) Periodic maintenance: During the processing, the aging degree of each equipment in each factory is recorded ML i,k (where i represents the equipment number and k represents the factory number). After each workpiece is processed, the aging degree increases by a certain value. Before processing the workpiece, determine whether the workpiece will cause the aging degree of the equipment to exceed the threshold. If it exceeds the time limit, the workpiece processing will be postponed and the execution time will be MT. i Maintenance of ML i,k =0, the workpiece continues to be processed after maintenance is completed.
[0132] (1.2) Temporary workpiece addition: R j Indicates the time when a new workpiece is added. j The processing order of the workpieces that have started processing in all factories before the time R is no longer adjusted; j Workpieces that have not started processing before the time can be rescheduled.
[0133] (2) Two optimization operators are proposed
[0134] (2.1) Figure 2 , the neighborhood insertion / exchange operator shown in 3: for the solution πi Search the neighborhood of the selected workpiece J in the , insert workpiece J into all feasible processing positions or exchange positions with all other feasible workpieces. Add the obtained solution set to the candidate solution set Π c .
[0135] (2.2) Figure 4 The single target neighborhood traversal search shown: Specify the single target Obj as C max or TF, select the solution to π i All schedulable jobs J in i , and exchange positions with all other workpieces that can be rescheduled. Record the solution set Π c The non-dominated solution set Nd(Π c ). If Nd(Π c ) becomes smaller, continue to traverse the neighborhood of all workpieces of the single-objective optimal solution until min(Obj) no longer becomes smaller.
[0136] (3) A multi-objective artificial bee colony algorithm is proposed to effectively solve the production scheduling problem of distributed flow workshops:
[0137] Input: The workpiece group to be scheduled and the population size PS
[0138] (3.1) Figure 1 As shown, a heuristic algorithm based on a mixed operation operator is used to initialize the solution set Π.
[0139] The heuristic algorithm operates as follows:
[0140] (3.1.1) Calculate the total completion time P for each input job j , which is the sum of the processing time of a workpiece on all machines Sort the workpieces in descending order of their total completion time.
[0141] (3.1.2) Take the workpieces with the longest completion time from the descending sequence one by one, and randomly select an operation from the following four operators to get the optimal position to insert the workpiece:
[0142] (a) Search for the location in the key factory that minimizes the production cycle
[0143] (b) Search for the location in the key plant that minimizes the total flow time
[0144] (c) Search among all factories for the location that minimizes the production cycle
[0145] (d) Search for the location in all factories that minimizes the total flow time
[0146] (3.1.3) Randomly select the previous or next workpiece J' of the insertion position, and randomly select one of the following 8 operations to insert workpiece J' into the optimal position:
[0147] (a) Search for the position in the factory where J' is located that minimizes the production cycle and reinsert it
[0148] (b) Search for the position in the factory where J' is located that minimizes the total flow time and reinsert it
[0149] (c) Search for the workpiece exchange position that minimizes the production cycle in the factory where J' is located
[0150] (d) Search for the workpiece exchange position that minimizes the total flow time in the factory where J' is located
[0151] (e) Search all factories for the position that minimizes the production cycle and reinsert
[0152] (f) Search for the position that minimizes the total flow time in all factories and reinsert it
[0153] (g) Search for the workpiece exchange position that minimizes the production cycle in all factories
[0154] (h) Search for the workpiece exchange position that minimizes the total flow time in all factories
[0155] (3.1.4) Determine whether there are any unscheduled workpieces left. If yes, go to 3.1.2; otherwise, output the result.
[0156] (3.2) Perform the dynamic scheduling operations of the employed bee stage, the observer bee stage, and the scout bee stage in sequence to update Π.
[0157] (3.2.1) In the hired bee stage, one solution π from the current solution set π is selected in turn. i , randomly select one of the reschedulable workpieces J r . For the selected J r Randomly execute the neighborhood insertion or exchange operator. Add the solution set obtained in each round to the candidate solution set Π c , and finally from the candidate solution set Π c Select the non-dominated solution set Nd(Π c ), add to the current solution set, that is, Π=Π∪Nd(Π c ).
[0158] (3.2.2) In the observation bee stage, select one solution π from the non-dominated solutions Nd(π) of the current solution set π in turn. i , randomly select one of the reschedulable workpieces J r . For the selected J rRandomly execute the neighborhood insertion or swap operator. Add the solution set obtained in each round to the candidate solution set Π c , and finally select the non-dominated solution set Nd(Π c ) from the candidate solution set Π c and add it to the current solution set, i.e., Π = Π ∪ Nd(Π c ).
[0159] (3.2.3) In the scout bee stage, if the optimal production cycle min(C max ) or the total flow time min(TF) has not been updated, exit this stage. Perform a traversal neighborhood search on the latest single-objective optimal solution (3.3) Based on multi-objectives, screen the current solution set Π to obtain a new solution set
[0160] (3.3.1) Remove the duplicate solutions in the solution set Π to obtain Π
[0161] (3.3.2) Clear the current solution set. * .
[0162] (3.3.3) Take out the non-dominated solutions from Π
[0163] and add them to Π. Π = Π ∪ Nd(Π * ), Π * = Π * - Nd(Π * )(3.3.4) If the number of solutions in the set Π is less than the population size, i.e., |Π| < PS, go to 3.3.3, otherwise exit the screening operation of the current solution. * )
[0164] (3.3.4) If the number of solutions in the set Π is less than the population size, i.e., |Π| < PS, go to 3.3.3, otherwise exit the screening operation of the current solution.
[0165] Output: If the running time of the program meets the termination condition, output the allocation of the workpiece groups in each workshop and their respective processing sequences in the workshop. Otherwise, loop through steps (3.2) and (3.3).
[0166] See Figure 5 , generate test cases according to the actual situation of the manufacturing industry, and the number of workpieces to be processed is taken as 40, 60, 80, 100, 120 respectively, the number of equipment in each workshop is taken as 5, 8, 10, and the number of factories is taken as 2, 3, 4. 10 test cases are generated for each set of parameters, with a total of 450. The simulation experiment selected MOEAD and NSGA2 as comparison algorithms.
[0167] Two common standards are used for the comparison of experimental data: QM and D1 R . Let Π * be the known non-dominated solution set of a certain test case, and Π ξ be the non-dominated solution obtained by the algorithm ξ.
[0168] The QM standard indicates the contribution of the algorithm ξ to the total known non-dominated solution set. The larger the QM value, the higher the quality of the non-dominated solution set obtained by the algorithm. Its calculation method is as follows:
[0169]
[0170] D1 R Standard representation π ξ To * The Euclidean distance of D1. R The smaller the value, the stronger the convergence of the algorithm. The calculation method is as follows:
[0171]
[0172] In view of the distributed characteristics of the existing manufacturing industry and the demand for dynamic scheduling in the assembly line, this embodiment method proposes a multi-objective intelligent optimization algorithm for production cycle and total flow time, which can allocate production workshops to different workpieces and arrange the processing sequence to reduce the production cycle and the total flow time of the workpieces. The algorithm finally outputs a set of Pareto non-dominated solutions, and the decision maker determines the final solution according to production needs.
[0173] This embodiment is a multi-objective intelligent optimization algorithm for solving the dynamic production scheduling problem of a distributed printing assembly line. The design of this algorithm is mainly reflected in: proposing a new algorithm framework, combining the artificial bee colony algorithm with the multi-objective optimization framework to obtain a high-quality solution set; using a dynamic optimization method to reduce the adverse effects of periodic maintenance of processing equipment and temporarily inserted orders on the original production schedule; improving the core operation operator to improve the algorithm iteration efficiency. Experimental results show that compared with similar solutions, the present invention can solve a higher quality multi-objective solution set in the same time, thereby reducing production costs and improving enterprise benefits.
[0174] The above describes the embodiments of the present invention in conjunction with the accompanying drawings, but the present invention is not limited to the above embodiments. Various changes can be made according to the purpose of the invention. Any changes, modifications, substitutions, combinations or simplifications made according to the spirit and principle of the technical solution of the present invention should be equivalent replacement methods. As long as they meet the purpose of the invention and do not deviate from the technical principles and inventive concepts of the present invention, they belong to the protection scope of the present invention.
Claims
1. A multi-objective intelligent optimization algorithm for solving the dynamic production scheduling problem of a distributed flow shop, characterized in that: The following steps are involved: (1) Use dynamic scheduling methods to handle periodic maintenance of equipment and temporarily added workpieces: (1.1) Periodic maintenance: During the processing, the aging degree of each equipment in each factory is recorded ML i,k , where i represents the equipment number, k represents the factory number, and the aging degree of each workpiece increases by a certain value after processing; before processing the workpiece, it is determined whether the workpiece will cause the aging degree of the equipment to exceed the threshold If it exceeds the time limit, the workpiece processing will be postponed and the execution time will be MT. i Maintenance of ML i,k =0, continue to process the workpiece after maintenance is completed; (1.2) Temporary workpiece addition: R j Indicates the time when a new workpiece is added, in R j The processing order of the workpieces that have started processing in all factories before the time R is no longer adjusted; j Workpieces that have not been processed before the time can be rescheduled; (2) Two optimization operators are used: (2.1) Neighborhood insertion / exchange operator: Solve π i Search the neighborhood of the selected workpiece J in the process, insert workpiece J into all feasible processing positions or exchange positions with all other feasible workpieces; add the obtained solution set to the candidate solution set Π c ; (2.2) Single target neighborhood traversal search: Specify single target Obj as C max or TF, select the solution to π i All schedulable jobs J in i , exchange positions with all other reschedulable workpieces; record the solution set Π c The non-dominated solution set Nd(Π c ); if Nd(Π c ) becomes smaller, then continue to traverse the neighborhood of all workpieces of the single-objective optimal solution until min(Obj) no longer becomes smaller; (3) Using a multi-objective artificial bee colony algorithm to perform distributed flow shop production scheduling: Input: the workpiece group to be scheduled and the population size PS; (3.1) A heuristic algorithm based on a mixed operation operator is used to initialize the solution set Π. The operation of the heuristic algorithm is as follows: (3.1.1) Calculate the total completion time P for each input job j , which is the sum of the processing time of a workpiece on all machines Sort by the total completion time of the workpieces in descending order; (3.1.2) Take the workpieces with the longest completion time from the descending sequence one by one, and randomly select an operation from the following four operators to get the optimal position to insert the workpiece: (a) Search for the location in the key factory that minimizes the production cycle; (b) Searching for the location in the key plant that minimizes the total flow time; (c) Search among all factories for the location that minimizes the production cycle; (d) Searching for the position in all factories that minimizes the total flow time; (3.1.3) Randomly select the previous or next workpiece J′ of the insertion position, and randomly select one of the following 8 operations to insert the workpiece J′ into the optimal position: (a) Search for the position in the factory where J′ is located that minimizes the production cycle and reinsert it; (b) Search for the position in the factory where J′ is located that minimizes the total flow time and reinserts it; (c) Search for the workpiece exchange position that minimizes the production cycle in the factory where J′ is located; (d) Searching for the workpiece exchange position that minimizes the total flow time in the factory where J′ is located; (e) Search for the position that minimizes the production cycle in all factories and reinsert; (f) searching for the position that minimizes the total flow time among all the plants and reinserting; (g) Searching for the workpiece exchange position that minimizes the production cycle in all factories; (h) Searching for the workpiece exchange position that minimizes the total flow time in all factories; (3.1.4) Determine whether there are any remaining unscheduled workpieces. If so, go to step (3.1.2); otherwise, output the result; (3.2) Perform the dynamic scheduling operations of the employed bee stage, the observation bee stage, and the scout bee stage in sequence, and update Π, (3.2.1) In the hired bee stage, one solution π from the current solution set π is selected in turn. i , randomly select one of the reschedulable workpieces J r ; For the selected J r Randomly execute neighborhood insertion or exchange operators; add the solution set obtained in each round to the candidate solution set Π c , and finally from the candidate solution set Π c Select the non-dominated solution set Nd(Π c ), add to the current solution set, that is, Π=Π∪Nd(Π c ); (3.2.2) In the observation bee stage, select one solution π from the non-dominated solutions Nd(π) of the current solution set π in turn. i , randomly select one of the reschedulable workpieces J r ; For the selected J r Randomly execute neighborhood insertion or exchange operators; add the solution set obtained in each round to the candidate solution set Π c , and finally from the candidate solution set Π c Select the non-dominated solution set Nd(Π c ), add to the current solution set, that is, Π=Π∪Nd(Π c ); (3.2.3) In the scout bee stage, if the optimal production cycle min(C max ) or the total flow time min(TF) is not updated, then exit this stage; for the latest single-objective optimal solution Perform a traversal neighborhood search; (3.3) Based on multi-objective screening, the current solution set Π is obtained to obtain a new solution set (3.3.1) Remove the duplicate solutions in the solution set Π and get Π * ; (3.3.2) Clear the current solution set, (3.3.3) From Π * Take out the non-dominated solution and add Π, Π=Π∪Nd(Π * ), Π * =Π * -Nd(Π * ) (3.3.4) If the number of solutions in the set Π is less than the population size, that is, |Π|<PS, go to 3.3.3, otherwise exit the current solution screening operation; Output: If the program running time meets the termination condition, the distribution of the workpiece groups in each workshop and the processing sequence of each workshop are output; otherwise, steps (3.2) and (3.3) are executed repeatedly.
2. The multi-objective intelligent optimization algorithm for solving the dynamic production scheduling problem of a distributed assembly line workshop according to claim 1 is characterized in that: In the step (1.1), a method of recording the degree of aging of the equipment is used as a basis for determining whether to perform periodic maintenance.
3. The multi-objective intelligent optimization algorithm for solving the dynamic production scheduling problem of a distributed assembly line workshop according to claim 1 is characterized in that: In the step (1.2), when a new workpiece is added, a rescheduling method is used to divide the workpiece into a fixed group and an active group; the fixed group includes the workpieces that have been processed when the new workpiece is added, and their assigned factories and processing order no longer change; the active group includes the new workpiece and the processed workpiece, and the workpieces in the active group are rescheduled after the new workpiece is added.
4. The multi-objective intelligent optimization algorithm for solving the dynamic production scheduling problem of a distributed assembly line workshop according to claim 1 is characterized in that: In the described step (2.1), the neighborhood of the solution is searched using a method of reinserting the workpieces or exchanging the processing order of the workpieces.
5. The multi-objective intelligent optimization algorithm for solving the dynamic production scheduling problem of a distributed flow shop according to claim 1 is characterized in that: In the step (2.2), the single-objective optimal value of the solution is explored by traversing the neighborhood. During the traversal process, if a solution better than the current optimal single objective is found, the neighborhood of the single-objective optimal solution is continued to be traversed. If no better single-objective optimal solution is found in all the neighborhood solutions of a solution, the single-objective neighborhood traversal search is exited.
6. The multi-objective intelligent optimization algorithm for solving the dynamic production scheduling problem of a distributed assembly line workshop according to claim 1 is characterized in that: In the step (3.1), a heuristic algorithm based on a hybrid operation operator is used to generate an initial solution set for iterative search.
7. The multi-objective intelligent optimization algorithm for solving the dynamic production scheduling problem of a distributed assembly line workshop according to claim 1 is characterized in that: In the step (3.2), each round of iteration is divided into three stages: employed bees, observation bees and scout bees, and different optimization strategies are implemented according to the characteristics of the problem.
8. The multi-objective intelligent optimization algorithm for solving the dynamic production scheduling problem of a distributed assembly line workshop according to claim 1 is characterized in that: In the step (3.3), the concept of Pareto optimality is used to classify the results of each round of iteration and the existing solution set into k non-dominated frontiers, where the solutions on the non-dominated frontiers with smaller numbers can dominate the solutions on the non-dominated frontiers with larger numbers; the algorithm selects the first n non-dominated frontiers to form the solution set for the next round of iteration, so that the number of solutions in the solution set is minimized while being not less than the parameter PS.
Citation Information
Patent Citations
An enterprise production planning optimization method considering forecast order and actual order
CN109426920A
Mixed-flow scheduling method for electronic product debugging and testing production line
CN110516978A