Workshop scheduling method and system considering transportation time and machine pre-maintenance
Through the distributed flexible operation workshop scheduling method that considers transportation time and machine pre-maintenance in aviation composite production, the problem that traditional scheduling models cannot meet multiple needs is solved, and more efficient production scheduling and resource utilization are achieved.
Patent Information
- Application Number
- CN202411868114.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-18
- Publication Date
- 2025-03-28
AI Technical Summary
The traditional flexible work workshop scheduling model cannot meet the multiple needs of aviation composite materials production, especially in consideration of transportation time and machine pre-maintenance.
A distributed flexible operation workshop scheduling method considering transportation time and machine pre-maintenance is proposed. By establishing a multi-objective optimization model, using the MCNSGA-II algorithm for solving it, we obtain the optimal scheduling solution.
In the complex manufacturing environment of aviation composite materials, scheduling efficiency and production optimization are improved, machine failure rate and transportation energy consumption are reduced, and more effective resource utilization and production planning are achieved.
Smart Images

Figure CN119717726A_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the technical field of green scheduling optimization of aviation flexible workshops, and in particular relates to a workshop scheduling method and system that considers transportation time and machine pre-maintenance. Background Art
[0002] With the rapid development of the aviation manufacturing industry, the production requirements for the quality and energy consumption of aviation composite materials are constantly increasing, and the green scheduling problem of aviation flexible workshops has become one of the research hotspots. Due to the characteristics of aviation composite production such as a wide variety of products, complex processes, multiple models, frequent parallel transportation, and frequent machine failures, the traditional flexible job shop scheduling model cannot meet its production needs. Therefore, it is necessary to combine the actual manufacturing model and characteristics to study the problem of meeting the multiple needs of aviation composite materials. Summary of the invention
[0003] In view of the deficiencies of the prior art, the purpose of the present invention is to provide a workshop scheduling method and system that takes transportation time and machine pre-maintenance into consideration, thereby solving the problems in the prior art.
[0004] The purpose of the present invention can be achieved by the following technical solutions:
[0005] The workshop scheduling method considering transportation time and machine predictive maintenance includes the following steps:
[0006] Taking the minimum maximum completion time, the minimum total energy consumption and the minimum bottleneck machine load as the optimization objectives, a distributed flexible job shop scheduling model considering transportation time and pre-maintenance is established;
[0007] Determine scheduling constraints, including: factory constraints, process constraints, machine constraints, workpiece transportation time constraints, and pre-maintenance constraints;
[0008] According to the constraints and optimization objectives, a mathematical model for flexible job shop scheduling considering transportation and predictive maintenance is established, and the MCNSGA-II algorithm is used to solve the mathematical model to obtain the optimal scheduling solution.
[0009] Furthermore, the distributed flexible job shop scheduling model considering transportation time and pre-maintenance is:
[0010] minf={f 1 ,f 2 ,f 3}
[0011] Minimize the completion time f 1 :
[0012]
[0013] Among them, C irepresents the completion time of structural component i, It indicates the completion time of the structural component with the longest completion time among all structural components; n is the total number of structural components;
[0014] Minimum total energy consumption f 2 :
[0015] f 2 =E min =min(PE+TE+IE)
[0016] Among them, PE, IE, and TE are processing energy consumption, idle energy consumption, and transportation energy consumption, respectively;
[0017]
[0018] Among them, pe fk is the unit processing energy consumption of machine k in factory f, p ijfk O ij The processing time on machine k in factory f, X ijfk represents the decision variable, if O ij If it is processed on machine k in factory f, it is 1, otherwise it is 0; ie fk is the unit idle energy consumption of machine k in factory f, S ijfk and C ijfk Respectively represent O ij The start and end time of processing on machine k in factory f, Y iji’j’fk represents the decision variable, if O ij Before O i’j’ It is 1 if it is processed on machine k in factory f, otherwise it is 0; te is the unit energy consumption of transportation, tt fke represents the transportation time between machine k and machine e in factory f, Z ifke represents the decision variable, which is 1 if the current workpiece i needs to be moved, otherwise it is 0;
[0019]
[0020] In the formula, f 3 To minimize the bottleneck machine load, P ijfk O ij The processing time on machine k in factory f, X ijfk represents the decision variable, if O ij It is 1 if it is processed on machine k in factory f, and 0 otherwise.
[0021] Furthermore, the constraints include:
[0022]
[0023] S i'j' ≥Cij -(3-Y fijii'j'k -X fijk -X fi'j'k )L
[0024] S ij ≥C i'j' -(2-Y fiji'j'k -X fijk -X fi'j'k )L
[0025] In the formula, Z if indicates that workpiece i is processed in factory f, X ijfk represents the decision variable, if O ij It is 1 if it is processed on machine k in factory f, and 0 otherwise. ij , C ij Indicates O ij The processing start and end time. fiji’j’k represents the decision variable, when O ij Before O i’j’ If it is processed on machine k in factory f, it is 1, otherwise it is 0. L represents a large positive number.
[0026] Furthermore, the flexible job shop scheduling mathematical model considering transportation and pre-maintenance includes five sub-problems: plant selection FS, process sequencing OS, machine selection MS, transportation time selection TS and pre-maintenance selection PS;
[0027] The mathematical model for flexible job shop scheduling considering transportation and pre-maintenance adopts five-layer real number coding: the first layer is FS coding, the coding length is equal to the total number of workpieces, FS consists of factory serial numbers, and its sequence value corresponds to the factory serial number selected for each workpiece when the workpieces are arranged in ascending order; the second layer is OS coding, and its sequence value is the workpiece serial number; the third layer is machine selection-based coding, and its sequence value is the machine serial number selected for the corresponding position process; the fourth layer is TS coding, which indicates the transportation time between the processing machine of the previous process and this process; the fifth layer is PS coding, PS consists of 0 and 1, corresponding one to one with the OS sequence, 0 means that no PM operation is required after the process is completed, and 1 means that PM operation is performed immediately after the process is completed.
[0028] Furthermore, the steps of solving the mathematical model using the MCNSGA-II algorithm are as follows:
[0029] S301, taking the solution set in the scheduling scheme as an individual, all the solution sets constitute a population; evaluating all individuals in the population, and evenly dividing all individuals in the population into K populations according to the TOPSIS method.
[0030] S302, performing a global search using a multi-parent crossover operation and a target-based machine balancing strategy;
[0031] S303, machine balancing strategy based on different objectives, preventing the evolutionary trend towards a single objective during the optimization process;
[0032] S304, the subpopulation performs local search on individuals based on the key factory neighborhood search strategy;
[0033] S305, the individual information interaction mechanism between sub-populations is used to achieve the coordinated evolution of multiple populations;
[0034] S306, retaining excellent individuals from each population to external archives to form new offspring populations;
[0035] S307, determining whether the preset number of iterations has been reached, if the condition is met, stopping the iteration, selecting the optimal solution from the Pareto front, drawing a Gantt chart, and obtaining the optimal solution scheduling plan.
[0036] Furthermore, in S301, the step of population division is:
[0037] 1) Normalize the solution set in the target space:
[0038]
[0039] Among them, norm(x ij ) is the normalized solution set, i is the index of the individual solution in the solution set, j is the index of the objective function, x ij is the target value of the jth function of the ith individual solution, X j is the set of all individuals of the jth objective function;
[0040] 2) Calculate the minimum and maximum normalized values of each objective function in the solution set to determine the ideal solution Z + and the worst solution Z - :
[0041]
[0042] 3) For each individual solution i in the solution set, calculate its difference from the ideal solution Z + and the worst solution Z - The Euclidean distance is:
[0043]
[0044] In the formula, The ideal solution Z + and the worst solution Z - The Euclidean distance of
[0045] 4) Calculate the value of each individual solution i in the solution set relative to the ideal solution Z + and the worst solution Z - The relative closeness C i :
[0046]
[0047] 5) According to the relative closeness C of all individual solutions in the solution set i The individual solutions are sorted according to the values of , and the individual solutions in the solution set are equally divided into K groups.
[0048] Further, in S303, the machine balancing strategy based on different objectives includes:
[0049] Machine balancing strategy based on completion time: Calculate the completion time of the process on each machine and find the machine with the longest processing time; randomly select a process on the machine with the longest completion time and assign it to an optional machine with the shortest completion time; update the MS string and compare the new and old objective function values; accept the new solution only if the new solution is better than or non-dominated by the old solution;
[0050] Machine balancing strategy based on comprehensive load index: Combine the current number of pre-maintenance times, failure rate and current machine load to create a comprehensive load index, calculate the load index of each machine, and find the machine with the largest load index; randomly select a process from the machine with the largest load index, and give priority to those machines with low failure rates, no need for maintenance in the short term, and the smallest load index; update the MS string and compare the new and old objective function values; if the new solution is not dominated by the old solution, replace it; otherwise, do not replace it;
[0051] Machine balancing strategy based on energy consumption: Calculate the energy consumption on each machine and find the machine with the highest energy consumption; randomly select a process on the machine with the highest energy consumption and assign it to the machine with the lowest energy consumption in the optional machine set; update the MS string and compare it with the target value of the individual before the update. If the target value is not dominated by the previous solution, replace the previous solution; otherwise, do not replace it.
[0052] Furthermore, in S304, three neighborhood structures are proposed for key factories:
[0053] 1) Neighborhood structure When randomly allocating workpieces from critical plants to other plants, the energy consumption impact is evaluated and they are allocated to the plant with the least energy consumption.
[0054] 2) Neighborhood structure Adopt critical path-based adjustments to optimize OS and reduce completion time based on critical path theory;
[0055] 3) Neighborhood structure Calculate the load of each machine, randomly select a process from the machine with the largest load, and randomly assign the process to the available machines.
[0056] A shop scheduling system that takes into account transportation time and machine predictive maintenance, including:
[0057] Scheduling model building module: Taking the minimum maximum completion time, the minimum total energy consumption and the minimum bottleneck machine load as the optimization objectives, a distributed flexible job shop scheduling model considering transportation time and pre-maintenance is established;
[0058] Constraint building module: Determine the scheduling constraints, including: factory constraints, process constraints, machine constraints, workpiece transportation time constraints and pre-maintenance constraints;
[0059] And, model solving module: according to the constraints and optimization objectives, a flexible job shop scheduling mathematical model considering transportation and predictive maintenance is established, and the MCNSGA-II algorithm is used to solve the mathematical model to obtain the optimal scheduling solution.
[0060] A computer storage medium stores a readable program, which can execute the above-mentioned workshop scheduling method considering transportation time and machine pre-maintenance when the program is running.
[0061] Beneficial effects of the present invention:
[0062] In the complex manufacturing environment of aviation composite materials, the present invention proposes a multi-population collaborative non-dominated sorting genetic algorithm for the scheduling problem. The improved algorithm adds new encoding and decoding strategies and multi-rule hybrid initialization methods for distributed factories, designs a multi-parent crossover operation and a multi-objective-based machine balancing operation to improve search efficiency. In addition, a neighborhood search operation based on key factories and information interaction between individuals in sub-species populations are designed to achieve multi-population collaborative evolution and enhance the algorithm's local optimization ability. In the experimental part, the proposed algorithm and the comparison algorithm are compared and analyzed through extended examples to verify the effectiveness of the improved strategy. The comparison results of production examples show that the proposed algorithm has higher solution efficiency and superiority. BRIEF DESCRIPTION OF THE DRAWINGS
[0063] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, for ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
[0064] Figure 1It is a schematic diagram of the factory code string FS, process sequence code string OS, machine selection code string MS, transportation time code string TS and pre-maintenance selection code string PS of the workpiece selection of the present invention;
[0065] Figure 2 It is the flow chart of MCNSGA-II algorithm of the present invention;
[0066] Figure 3 is a schematic diagram of multi-parent OS crossover of the present invention;
[0067] Figure 4 It is a schematic diagram of multi-parent MS crossover of the present invention;
[0068] Figure 5 It is a Gantt chart of the present invention solution example;
[0069] Figure 6 This is the processing information table for DHK01. DETAILED DESCRIPTION
[0070] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0071] Example 1
[0072] The workshop scheduling method considering transportation time and machine predictive maintenance includes the following steps:
[0073] S1, taking the minimum maximum completion time, the minimum total energy consumption and the minimum bottleneck machine load as the optimization objectives, a distributed flexible job shop scheduling model considering transportation time and pre-maintenance is established;
[0074] Minimum maximum completion time: This goal is used to describe the workpiece processing efficiency and is an important indicator for evaluating production efficiency;
[0075] Minimum total energy consumption: In the actual flexible workshop production process, the total energy consumption includes machine processing energy consumption, no-load energy consumption and transportation energy consumption;
[0076] The bottleneck machine has the smallest load: The bottleneck machine is the machine that carries the largest load during the processing. Long-term high-load operation can easily lead to machine failure. In order to reduce the number of pre-maintenance times for the machine, it is necessary to balance the machine load to reduce the machine failure rate.
[0077] The distributed flexible job shop scheduling model considering transportation time and predictive maintenance is:
[0078] minf={f1 ,f 2 ,f 3}(1)
[0079] In the formula, f 1 ,f 2 ,f 3 They are minimizing the maximum completion time, minimizing the total energy consumption, and minimizing the bottleneck machine load. f is the simultaneous minimization of the three objectives;
[0080] Minimize the maximum completion time of all workpieces in the factory, as shown in formula (2)
[0081]
[0082] In the formula, C max is the maximum completion time, C fi is the completion time of the i-th job in factory f; U is the total number of factories;
[0083] The total energy consumption of the factory is the smallest. The total energy consumption includes machine processing energy consumption, idle energy consumption and transportation energy consumption, as shown in formula (3). Formulas (4)-(6) are used to calculate the processing energy consumption, idle energy consumption and transportation energy consumption of all machines:
[0084] f 2 =E min =min(PE+TE+IE) (3)
[0085]
[0086]
[0087] Where PE is processing energy consumption, IE is idle energy consumption, and E is transportation energy consumption; fk is the unit processing energy consumption of machine k in factory f, p ijfk O ij The processing time on machine k in factory f, X ijfk represents the decision variable, if O ij It is 1 if it is processed on machine k in factory f, and 0 otherwise.
[0088] ie fk is the unit idle energy consumption of machine k in factory f, S ijfk O ij (jth process of workpiece i) in factory f k The start processing time on (the kth machine); C ijfk O ij M in factory f k End processing time on; m f For U fThe total number of machines in (the fth factory); X ijfk is a 0-1 decision variable. ij Choose in M fk (U f If X ijfk =1, otherwise X ijfk =0; Y iji'j'fk is a 0-1 decision variable. ij In O i'j' Previously in M fk During processing, Y iji'j'fk =1, otherwise Y iji'j'fk =0;
[0089] The bottleneck machine has the smallest load. The bottleneck machine is the machine that carries the largest load during the processing. The load of the machine is balanced to reduce the machine failure rate, as shown in formula (7):
[0090]
[0091] Where P ijfk O ij In M k Processing time on i is the total number of processes for workpiece i, X ijfk is a 0-1 decision variable. ij Choose in M fk (U f If X ijfk =1, otherwise X ijfk =0.
[0092] S2, determine the scheduling constraints, including: factory constraints, process constraints, machine constraints, workpiece transportation time constraints and pre-maintenance constraints;
[0093] Factory constraints: Workpiece to be processed J = {J 1 ,J 2 ,…,J n} Need to have a flexible job shop in the factory U = {U 1 ,U 2 ,…,U f}In-house processing.
[0094] Process constraints and machine constraints: Each factory U f Each machine has multiple processing machines of different types. Each workpiece has a different number of processes. Each process can be processed on any machine in the optional machine set, and after the process is completed, it will be transported to the next machine for processing.
[0095] Workpiece transportation time constraint: Consider the transportation time between machines, where the number of equipment used for transportation is unlimited, and transportation can be carried out without delay, without considering machine failure and workpiece damage.
[0096] Pre-maintenance constraint: Each machine needs to be V k In this pre-maintenance plan, each machine has a maximum machine age M. If the machine age is reached after the current operation, PM (pre-maintenance) operation must be performed immediately after the operation is completed. The length of the maintenance time is related to the machine age. The pre-maintenance time is determined by the reliability function and reliability threshold of the machine. If the machine reliability reaches the threshold after the current process is completed, PM operation is performed immediately. Workpiece processing cannot be performed during PM operation. Assume that the number of transportation tools is sufficient and the transportation time between machines is known. In addition, the following constraints must be met:
[0097] 1) The same machine can only process one process at the same time;
[0098] 2) The workpiece can only be processed on one machine at the same time;
[0099] 3) All workpieces can be processed at time 0;
[0100] 4) Different workpiece processes are independent of each other, but there are sequential constraints between the processes of the same workpiece;
[0101] 5) The workpiece cannot be interrupted during processing;
[0102] 6) The failure rate of the machine conforms to the Weibull distribution. As time goes by, the life of the machine gradually decreases and the failure rate gradually increases;
[0103] 7) The initial service life of each machine is 0, and the predictive maintenance operation is performed immediately after a process is completed and the reliability reaches the threshold.
[0104] Use Weibull distribution to describe the failure pattern of the machine. The machine reliability function can be obtained through the formula, and the reliability threshold can be determined based on the historical maintenance records. Combining the reliability function and the reliability threshold, it is possible to determine the time when the machine reliability drops to the threshold and PM is required.
[0105] When considering the possible failures of the machine during operation, the Weibull distribution is used to describe the initial machine failure law model, and the failure rate is defined as:
[0106]
[0107] Among them, t is the machine operation time (service age), β is the shape parameter, which determines the shape change of the function, and η is the scale parameter, which affects the scaling transformation of the failure rate distribution curve; the parameters β and η can be obtained based on the historical data of equipment failures and do not change with time.
[0108] Calculate the reliability function R(t) according to the machine age:
[0109]
[0110] Among them, e is a natural constant.
[0111] Usually after the execution of the preventive maintenance, the failure rate and potential failure risk of the machine will be reduced. Therefore, the present invention designs a machine aging factor a to describe the machine status after the preventive maintenance; the failure rate λ of the preventive maintenance and aging factor a is introduced. ad Adjusted to:
[0112]
[0113] Where t is the service life of the current machine, t PM is the time point of pre-maintenance, and a is a factor reflecting the aging of the machine. Since 0<a<1, the failure rate decreases after pre-maintenance, which means that pre-maintenance helps to reduce the failure rate of the machine. As t increases, the exponential part will also increase, indicating that as t increases, the effect of pre-maintenance will gradually weaken and the failure rate of the machine will increase.
[0114] Based on the above analysis, a two-stage reliability model is constructed as follows:
[0115]
[0116] In this model, when t≤t PM When t>t PM After the preventive maintenance is performed, the failure rate is adjusted by introducing the aging factor. The machine is restored to a new state after the preventive maintenance. However, as time goes by, the preventive maintenance effect may gradually weaken, and the machine will gradually age according to its inherent aging process. By analyzing the historical maintenance records, the reliability threshold R of the machine is determined. th When R(t)<R th Preventive maintenance will be carried out in time to effectively extend the service life of the machine and ensure that the production process will not reduce production efficiency due to unexpected downtime or frequent failures.
[0117] The specific expression of the constraint condition is:
[0118]
[0119] Si'j' ≥C ij -(3-Y fijii'j'k -X fijk -X fi'j'k )L (10)
[0120] S ij ≥C i'j' -(2-Y fiji'j'k -X fijk -X fi'j'k )L (11)
[0121] In the formula, Z if indicates that workpiece i is processed in factory f, X ijfk represents the decision variable, if O ij It is 1 if it is processed on machine k in factory f, and 0 otherwise. ij , C ij Indicates O ij The processing start and end time. fiji’j’k represents the decision variable, when O ij Before O i’j’ If it is processed on machine k in factory f, it is 1, otherwise it is 0. L represents a large positive number.
[0122] Among them, formula (8) means that a workpiece can only be processed in the same factory; formula (9) means that a process can only be processed by one machine in one factory; formulas (10) and (11) mean that the process O ij and process O i'j' No processing will be done simultaneously on the same machine in the same factory, ensuring that only one process can be processed on the same machine in all factories at the same time.
[0123] S3, based on the constraints and optimization objectives, a flexible job shop scheduling mathematical model considering transportation and pre-maintenance is established, and the Multi-population Coevolutionary Non-dominated Sorting Genetic Algorithm II (MCNSGA-II) algorithm is used to solve the mathematical model and obtain the optimal scheduling solution;
[0124] The mathematical model of flexible job shop scheduling considering transportation and preventive maintenance includes five sub-problems: factory selection (FS), operation sequence (OS), machine selection (MS), transportation time selection (TS) and preventive maintenance selection (PS).
[0125] In the MCNSGA-II algorithm, a five-layer coding method is used to represent chromosome information. The first layer is the factory coding string FS, which is used to determine the factory selected for the structural parts; the second layer is the process sorting coding string OS, which is used to indicate the order of process processing; the third layer is the machine selection coding string MS, which is used to determine the processing machine selected for the process. The fourth layer is the transportation time coding string TS, which is used to indicate the transportation time from the previous processing machine to the next processing machine before the process is processed; the fifth layer is the pre-maintenance selection coding string, which is used to indicate whether the process needs pre-maintenance before processing.
[0126] like Figure 1 As shown in the figure, the first layer is FS coding, the coding length is equal to the total number of workpieces, FS is composed of factory serial numbers, and its serial value corresponds to the factory serial number selected by each workpiece when the workpieces are arranged from small to large in order of serial number; the second layer is OS coding, and its serial value is the workpiece serial number, and the number of times the serial number appears represents the number of processes of the workpiece; the third layer is coding based on machine selection, and its serial value is the number of machine serial numbers selected for the corresponding position process, according to J 1 -J 2 -J 3 -J 4 Arranged in sequence; the fourth layer is the TS encoding, which represents the transportation time between the previous process and the processing machine of this process, and the transportation time matrix is known; the fifth layer is the PS encoding, PS consists of 0 and 1, corresponding to the OS sequence one by one, 0 means that no PM operation is required after the process is completed, and 1 means that PM operation is performed immediately after the process is completed.
[0127] The quality of the initial solution has an important impact on the speed of the algorithm in finding the optimal solution and the quality of the final solution. In order to improve the quality and stability of the initial solution, multi-rule hybrid initialization is used to initialize the 5-layer encoding process;
[0128] Initialization of FS code: (1) Calculate the current load of all factories and select the factory with the lowest load. If there are multiple factories with the same load, select one at random; (2) Check the total number of machines in all factories and select the factory with the largest number of machines. If there are multiple factories with the same number of machines, select one at random; (3) Regardless of the load and the number of machines, randomly select a factory. The three strategies generate 60%, 30%, and 10% of the population size, respectively.
[0129] Initialization of OS code: (1) Randomly sort the processes of all workpieces and generate OS codes; (2) Calculate the number of remaining processes for each workpiece and give priority to those with more processes. If there are multiple workpieces with the same number of processes, they are randomly selected. Both strategies generate 50% of the population size.
[0130] MS coding initialization: Using the GLR initialization method, the three strategies of global selection (GS), local selection (LS) and random selection (RS) generate 60%, 30% and 10% of the population size respectively.
[0131] Once FS, MS and OS are determined, TS and PS encoding are determined accordingly.
[0132] After the mathematical model is established, the MCNSGA-II algorithm parameters are set. The specific parameters are set as follows: population size population = 200, maximum number of iterations MaxIter = 100, crossover probability pc = 0.8, and mutation probability pm = 0.2.
[0133] like Figure 2 As shown, the implementation process of the MCNSGA-II algorithm is as follows:
[0134] S301, taking the solution set in the scheduling scheme as an individual, all the solution sets constitute a population; evaluating all the individuals in the population, and evenly dividing all the individuals in the population into K populations according to the Technique for Order Preference by Similarity to Ideal Solution (TOPSIS) method;
[0135] When the population is large or there are many objective functions, the computational complexity of non-dominated sorting is particularly high; in the face of a large frontier solution formed by many non-dominated solutions, non-dominated sorting is difficult to effectively distinguish the pros and cons of decomposition. The TOPSIS method based on multi-dimensional evaluation criteria provides a solution, which helps researchers identify the most valuable solutions. The population is evenly divided into K populations according to the TOPSIS method.
[0136] The steps of population division are:
[0137] 1) The solution set is normalized in the target space as follows to eliminate the influence of dimension and ensure fairness;
[0138]
[0139] Among them, norm(x ij ) is the normalized solution set, i is the index of the individual solution in the solution set, j is the index of the objective function, x ij is the target value of the jth function of the ith individual solution, X j is the set of all individuals of the jth objective function.
[0140] 2) Calculate the minimum and maximum normalized values of each objective function in the solution set to determine the ideal solution Z + and the worst solution Z - .
[0141]
[0142] 3) For each individual solution i in the solution set, calculate its difference from the ideal solution Z + and the worst solution Z - The Euclidean distance.
[0143]
[0144] In the formula, are the individual solution i and the ideal solution Z respectively + and the worst solution Z - The Euclidean distance.
[0145] 4) Calculate the value of each individual solution i in the solution set relative to the ideal solution Z + and the worst solution Z - The relative closeness C i .
[0146]
[0147] 5) According to the relative closeness C of all individual solutions in the solution set i The individual solutions are sorted according to the values of , and the individual solutions in the solution set are equally divided into K groups.
[0148] S302, performing a global search using a multi-parent crossover operation and a target-based machine balancing strategy;
[0149] Traditional crossover operations often use only two parents for crossover, which tends to make individuals in the population tend to be similar. Multi-parent crossover can better retain the advantages and characteristics of individuals with multiple parents and increase population diversity. Traditional crossover operations often use only two parents for crossover, which tends to make individuals in the population tend to be similar. Multi-parent crossover can better retain the advantages and characteristics of individuals with multiple parents and increase population diversity. Multi-parent crossover can not only utilize the information of a single parent, but also combine the advantages and characteristics of multiple parents to enhance the ability to explore the search space and expand the search range.
[0150] like Figure 3 As shown in the figure, the OS multi-parent crossover process, the specific operation process is as follows:
[0151] Step 1: Randomly select three parent individuals P 1 , P 2 and P 3 ;
[0152] Step 2: Randomly divide the job index set Job into two non-overlapping subsets Jobset 1 and Jobset 2 , ensuring that the offspring produced during the crossover process are not completely dependent on a single parent;
[0153] Step 3: Place P 1 Contains Jobset 2 The elements of the collection are copied to the child C 1 , P 3 Contains Jobset 1 The elements of the collection are copied to the child C 1 ;
[0154] Step 4: P 2 Contains Jobset 1 The elements of the collection are copied to the child C 2 , P 3 Contains Jobset 2 The elements of the collection are copied to the child C 2 .
[0155] like Figure 4 As shown, the MS multi-parent crossover process has the following steps:
[0156] Step 1: Randomly select three parent individuals P 1 , P 2 and P 3 , randomly generate a set R with the same length as the total number of processes, which consists of 0 and 1;
[0157] Step 2: From P 2 and P 3 Randomly select the code corresponding to the 1 position in R and copy it to C 1 The corresponding position of P 1 and P 3 Randomly select the code corresponding to the 1 position in R and copy it to C 2 At the corresponding position of
[0158] Step 3: Place P 1 and P 2 The remaining codes are retained in the descendant C 1 and C 2 middle.
[0159] S303, machine balancing strategy based on different objectives, preventing the evolutionary trend towards a single objective during the optimization process;
[0160] When optimizing multi-objective scheduling problems, it is necessary to avoid the population from being biased towards a single objective during the evolution process in order to truly achieve the original intention of multi-objective optimization. To address this problem, three machine balancing strategies based on different objectives are proposed;
[0161] 1) Machine balancing strategy based on completion time:
[0162] Step 1: Calculate the completion time of the process on each machine and find the machine with the longest processing time;
[0163] Step 2: Randomly select a process on the machine with the longest completion time and assign it to an optional machine with the shortest completion time;
[0164] Step 3: Update the MS string and compare the new and old objective function values; accept the new solution only if it is better than or non-dominated by the old solution.
[0165] 2) Machine balancing strategy based on comprehensive load indicators:
[0166] Step 1: Create a comprehensive load index based on the current number of scheduled maintenance, failure rate, and current machine load, calculate the load index of each machine, and find the machine with the largest load index;
[0167] Step 2: Randomly select a process from the machines with the largest load index, and give priority to those machines with low failure rates, no need for maintenance in the short term, and the smallest load index;
[0168] Step 3: Update the MS string and compare the new and old objective function values; if the new solution is not dominated by the old solution, replace it; otherwise, do not replace it.
[0169] 3) Machine balancing strategy based on energy consumption:
[0170] Step 1: Calculate the energy consumption of each machine (including processing energy consumption, transportation energy consumption and no-load energy consumption) and find the machine with the highest energy consumption;
[0171] Step 2: Randomly select a process on the machine with the highest energy consumption and assign it to the machine with the lowest energy consumption in the optional machine set;
[0172] Step 3: Update the MS string and compare it with the target value of the individual before the update. If the target value is not dominated by the previous solution, replace the previous solution; otherwise, do not replace it.
[0173] The above three strategies each introduce different optimization objectives, which helps to promote the balanced development of the population in multiple directions and effectively prevent the evolutionary trend of leaning towards a single objective during the optimization process.
[0174] S304, the subpopulation performs local search on individuals based on the key factory neighborhood search strategy;
[0175] In the mathematical model of flexible job shop scheduling considering transportation and pre-maintenance, the factories that have a decisive influence on the overall production scheduling performance are called key factories, which become the key factors affecting scheduling efficiency. For key factories, three neighborhood structures are proposed to optimize them for different scheduling problems. For workpiece transfer, neighborhood Adjustments are made within key factories, and the three neighborhood structures are as follows:
[0176] 1) Neighborhood structure
[0177] When randomly allocating workpieces from critical plants to other plants, the energy consumption impact is evaluated and they are allocated to the plant with the least energy consumption.
[0178] 2) Neighborhood structure
[0179] The critical path-based adjustment is adopted to optimize the OS and effectively reduce the completion time according to the critical path theory. The method of generating neighborhood solutions for critical paths has been successfully applied in scheduling. The solutions obtained by this method are all feasible solutions. The following benchmarks are performed on the extracted critical paths.
[0180] Benchmark 1: If the starting key block contains two or more processes, swap the two connected processes at the end;
[0181] Benchmark 2: If the tail key block contains two or more processes, swap the two processes connected at the beginning of the block;
[0182] Benchmark 3: If the intermediate key block contains three or more processes, swap the block head and the second-to-last process, and swap the block tail and the second process;
[0183] Benchmark 4: If the two processes in the exchange process are different processes of the same workpiece, no exchange will be performed.
[0184] 3) Neighborhood structure
[0185] Calculate the load of each machine, randomly select a process from the machine with the largest load, and randomly assign the process to the available machines.
[0186] The design of these three neighborhood structures combines the idea of multi-objective optimization, not only taking into account the minimization of completion time, but also paying equal attention to load balancing and energy consumption reduction. Through this strategy, the production scheduling of key factories can be controlled more accurately, promoting the balance of overall goals and the comprehensiveness of the solution.
[0187] S305, the individual information interaction mechanism between sub-populations is used to achieve the coordinated evolution of multiple populations;
[0188] In the design of the MCNSGA-II algorithm, several sub-populations of the same size are set up for parallel search to effectively explore different areas of the solution space, which is conducive to improving search efficiency and increasing the probability of finding a better solution. At the same time, in order to achieve co-evolution among populations, a multi-population co-evolution strategy is designed. The specific steps are as follows:
[0189] 1) Identify abandoned solutions: In order to maintain the diversity and quality of solutions, the crowding distance of individuals is calculated to determine their density. The crowding distance is the sum of the distance differences between the current solution and the two adjacent individuals on the left and right in all objective functions. For the i-th objective function, the crowding distance d of individual j is ji It is expressed as:
[0190] d ji =f (j+1)i -f (j-1)i
[0191] Among them, f ji is the value of the objective function of individual j in the i-th state, and the solution with the smallest crowding distance in the subpopulation is the discarded solution.
[0192] 2) Information interaction between subpopulations and archives: The archive stores the current non-dominated solutions, find the solution with the largest crowding distance in the archive and the discarded solution with the smallest crowding distance in the subpopulation, and replace the former with the latter. After replacement, calculate the population quality Q(S) of each subpopulation:
[0193]
[0194] Among them, n is the number of individuals in the subpopulation, rank j is the dominance rank of individual j, d jis the crowding distance of individual j, max{d j}The distance with the maximum crowding in the subpopulation.
[0195] If the quality of the subpopulation is improved after the replacement, it means that the replacement is effective and an information exchange is successfully completed. Then, the individuals of all subpopulations are non-dominated, and the individuals with dominance level 1 are placed in the archive. Then all individuals in the archive are sorted, and the non-dominated solutions are retained. The archive is updated to ensure that the non-dominated solution of the archive is always the optimal solution currently searched, and guide the algorithm to search in the direction of a better solution. If the quality of the subpopulation does not improve after the replacement, it is considered an invalid replacement. If three invalid replacements are accumulated, the information exchange between the subpopulation and the archive is terminated.
[0196] 3) Individual exchange between sub-populations: After the information exchange between the sub-population and the archive is completed, two sub-populations are randomly selected and some of their individuals are exchanged to further increase the diversity of the population.
[0197] Through this strategy, the MCNSGA-II algorithm effectively interacts information within the population and between archives, guides the population search direction, and continuously moves toward a better solution. It not only increases the diversity of the population and the algorithm's search ability, but also increases the possibility of the algorithm obtaining high-quality solutions, and promotes the algorithm to achieve effective global and local search.
[0198] S306, retaining excellent individuals from each population to external archives to form new offspring populations;
[0199] S307, determine whether the preset number of iterations has been reached, and if the condition is met, stop the iteration; select the optimal solution from the Pareto front, draw a Gantt chart, and obtain the optimal solution scheduling plan.
[0200] Example 2
[0201] In this embodiment, the data of a certain aviation structural parts manufacturing company's production workshop is sorted and analyzed to simplify the process flow. At the same time, the production data of a certain aviation composite material manufacturing company is sorted and analyzed to simplify the process flow, and the processing information of 5 application examples DHK01-DHK05 is extracted. After sorting, the processing information of example DHK01 is given, which includes 22 machines in 2 factories. The specific corresponding information is as follows Figure 6 As shown in Table 1, including the workpiece and process name and processing time, Table 2 gives the optional factory machine information of the process.
[0202] Table 1 Process optional plant and machine information
[0203]
[0204]
[0205] The MCNSGA-II algorithm is used to solve the DHK01 example and the optimal scheduling solution Gantt chart is obtained as follows: Figure 5 As shown in Figure 5 (a) and (b) in the figure represent the process conditions of factory 1 and factory 2 respectively.
[0206] IABC, SFLA, GWO, INSGA-II and MCNSGA-II algorithms are used to solve the production scheduling example. Table 3 shows the comparison results of IGD, HV and CR indicators of five algorithms for solving five different scale examples. The bold ones are the indicators that achieve the optimal.
[0207] Table 2 Comparison results of five examples
[0208]
[0209] As shown in Table 3, the MCNSGA-II algorithm shows the lowest IGD value in all instances, especially in DHK02 and DHK03, where the IGD value is 0, indicating that the algorithm has a significant advantage in approaching the true Pareto frontier. In the HV index, except for DHK05, the HV value of the MCNSGA-II algorithm is close to or equal to 1, which shows that it is superior to other algorithms in terms of the coverage of the solution space and has better diversity and convergence. In addition, the CR value of the MCNSGA-II algorithm is better than that of other algorithms, and the CR value is 1 in all instances except DHK04 and DHK05, indicating that the contribution of the MCNSGA-II algorithm to the frontier solution is significantly better than that of other comparison algorithms. This is because the target machine balancing strategy and the neighborhood search strategy based on the key factory fully explore the solution space in the local search process, which significantly improves the performance of the MCNSGA-II algorithm.
[0210] In summary, the MCNSGA-II algorithm provides an efficient and evenly distributed solution set when solving multi-objective, distributed and complex production instance scheduling problems. It ensures rapid convergence while also retaining the diversity of the solution set. The application example results verify the effectiveness of the algorithm and can effectively solve actual production scheduling problems.
[0211] The method of the present invention may be implemented in hardware, firmware, or as software or computer code that may be stored in a recording medium (such as a CDROM, RAM, floppy disk, hard disk, or magneto-optical disk), or as computer code that is originally stored in a remote recording medium or a non-temporary machine-readable medium downloaded over a network and will be stored in a local recording medium, so that the method described herein may be stored in such software processing on a recording medium using a general-purpose computer, a dedicated processor, or programmable or dedicated hardware (such as an ASIC or FPGA). It is understood that a computer, processor, microprocessor controller, or programmable hardware includes a storage component (e.g., RAM, ROM, flash memory, etc.) that can store or receive software or computer code, and when the software or computer code is accessed and executed by a computer, processor, or hardware, the method described herein is implemented. In addition, when a general-purpose computer accesses the code for implementing the method shown herein, the execution of the code converts the general-purpose computer into a dedicated computer for executing the method shown herein.
[0212] The above shows and describes the basic principles, main features and advantages of the present invention. Those skilled in the art should understand that the present invention is not limited to the above embodiments, and the above embodiments and descriptions are only for explaining the principles of the present invention. Without departing from the spirit and scope of the present invention, the present invention may have various changes and improvements, and these changes and improvements all fall within the scope of the present invention to be protected.
Claims
1. A workshop scheduling method considering transportation time and machine pre-maintenance, characterized in that: The following steps are involved: Taking the minimum maximum completion time, the minimum total energy consumption and the minimum bottleneck machine load as the optimization objectives, a distributed flexible job shop scheduling model considering transportation time and pre-maintenance is established; Determine scheduling constraints, including: factory constraints, process constraints, machine constraints, workpiece transportation time constraints, and pre-maintenance constraints; According to the constraints and optimization objectives, a mathematical model for flexible job shop scheduling considering transportation and predictive maintenance is established, and the MCNSGA-II algorithm is used to solve the mathematical model to obtain the optimal scheduling solution.
2. The workshop scheduling method considering transportation time and machine pre-maintenance according to claim 1 is characterized in that: The distributed flexible job shop scheduling model considering transportation time and pre-maintenance is: minf={f1,f2,f3} Minimize the completion time f1: Among them, C i represents the completion time of structural component i, It indicates the completion time of the structural component with the longest completion time among all structural components; n is the total number of structural components; Minimum total energy consumption f2: f2=E min =min(PE+TE+IE) Among them, PE, IE, and TE are processing energy consumption, idle energy consumption, and transportation energy consumption, respectively; Among them, pefk is the unit processing energy consumption of machine k in factory f, pijfk is the processing time of Oij on machine k in factory f, Xijfk represents the decision variable, which is 1 if Oij is processed on machine k in factory f, otherwise it is 0; iefk is the unit idle energy consumption of machine k in factory f, Sijfk and Cijfk represent the start time and end time of Oij processing on machine k in factory f respectively, Yiji'j'fk represents the decision variable, which is 1 if Oij is processed on machine k in factory f before Oi'j', otherwise it is 0; te is the unit energy consumption of transportation, ttfke represents the transportation time between machine k and machine e in factory f, Zifke represents the decision variable, which is 1 if the current workpiece i needs to be transported, otherwise it is 0; Where f3 is the minimum bottleneck machine load, Pijfk is the processing time of Oij on machine k in factory f, and Xijfk represents the decision variable, which is 1 if Oij is processed on machine k in factory f, otherwise it is 0.
3. The workshop scheduling method considering transportation time and machine pre-maintenance according to claim 2 is characterized in that: The constraints include: Si'j'≥Cij-(3-Yfijii'j'k-Xfijk-Xfi'j'k)L Sij≥Ci'j'-(2-Yfiji'j'k-Xfijk-Xfi'j'k)L Where Zif represents the processing of workpiece i in factory f, Xijfk represents the decision variable, if Oij is in factory f If the machine is processed on machine k, it is 1, otherwise it is 0. ij , C ij Indicates O ij The processing start and end time. fiji’j’k represents the decision variable, when O ij Before O i’j’ If it is processed on machine k in factory f, it is 1, otherwise it is 0. L represents a large positive number.
4. The workshop scheduling method considering transportation time and machine pre-maintenance according to claim 1, characterized in that: The flexible job shop scheduling mathematical model considering transportation and pre-maintenance includes five sub-problems: factory selection FS, process sequencing OS, machine selection MS, transportation time selection TS and pre-maintenance selection PS; The mathematical model for flexible job shop scheduling considering transportation and pre-maintenance adopts five-layer real number coding: the first layer is FS coding, the coding length is equal to the total number of workpieces, FS consists of factory serial numbers, and its sequence value corresponds to the factory serial number selected for each workpiece when the workpieces are arranged in ascending order; the second layer is OS coding, and its sequence value is the workpiece serial number; the third layer is machine selection-based coding, and its sequence value is the machine serial number selected for the corresponding position process; the fourth layer is TS coding, which indicates the transportation time between the processing machine of the previous process and this process; the fifth layer is PS coding, PS consists of 0 and 1, corresponding one to one with the OS sequence, 0 means that no PM operation is required after the process is completed, and 1 means that PM operation is performed immediately after the process is completed.
5. The workshop scheduling method considering transportation time and machine pre-maintenance according to claim 4 is characterized in that: The steps of solving the mathematical model using the MCNSGA-II algorithm are as follows: S301, taking the solution set in the scheduling scheme as an individual, all the solution sets constitute a population; evaluating all individuals in the population, and evenly dividing all individuals in the population into K populations according to the TOPSIS method. S302, performing a global search using a multi-parent crossover operation and a target-based machine balancing strategy; S303, machine balancing strategy based on different objectives, preventing the evolutionary trend towards a single objective during the optimization process; S304, the subpopulation performs local search on individuals based on the key factory neighborhood search strategy; S305, the individual information interaction mechanism between sub-populations is used to achieve the coordinated evolution of multiple populations; S306, retaining excellent individuals from each population to external archives to form new offspring populations; S307, determining whether the preset number of iterations has been reached, if the condition is met, stopping the iteration, selecting the optimal solution from the Pareto front, drawing a Gantt chart, and obtaining the optimal solution scheduling plan.
6. The workshop scheduling method considering transportation time and machine pre-maintenance according to claim 5 is characterized in that: In S301, the steps of population division are: 1) Normalize the solution set in the target space: Among them, norm(x ij ) is the normalized solution set, i is the index of the individual solution in the solution set, j is the index of the objective function, x ij is the target value of the jth function of the ith individual solution, X j is the set of all individuals of the jth objective function; 2) Calculate the minimum and maximum normalized values of each objective function in the solution set to determine the ideal solution Z + and the worst solution Z - : 3) For each individual solution i in the solution set, calculate its difference from the ideal solution Z + and the worst solution Z - The Euclidean distance is: In the formula, The ideal solution Z + and the worst solution Z - The Euclidean distance of 4) Calculate the value of each individual solution i in the solution set relative to the ideal solution Z + and the worst solution Z - The relative closeness C i : 5) According to the relative closeness C of all individual solutions in the solution set i The individual solutions are sorted according to the values of , and the individual solutions in the solution set are equally divided into K groups.
7. The workshop scheduling method considering transportation time and machine pre-maintenance according to claim 5, characterized in that: In S303, the machine balancing strategies based on different objectives include: Machine balancing strategy based on completion time: Calculate the completion time of the process on each machine and find the machine with the longest processing time; randomly select a process on the machine with the longest completion time and assign it to an optional machine with the shortest completion time; update the MS string and compare the new and old objective function values; accept the new solution only if the new solution is better than or non-dominated by the old solution; Machine balancing strategy based on comprehensive load index: Combine the current number of pre-maintenance times, failure rate and current machine load to create a comprehensive load index, calculate the load index of each machine, and find the machine with the largest load index; randomly select a process from the machine with the largest load index, and give priority to those machines with low failure rates, no need for maintenance in the short term, and the smallest load index; update the MS string and compare the new and old objective function values; if the new solution is not dominated by the old solution, replace it; otherwise, do not replace it; Machine balancing strategy based on energy consumption: Calculate the energy consumption on each machine and find the machine with the highest energy consumption; randomly select a process on the machine with the highest energy consumption and assign it to the machine with the lowest energy consumption in the optional machine set; update the MS string and compare it with the target value of the individual before the update. If the target value is not dominated by the previous solution, replace the previous solution; otherwise, do not replace it.
8. The workshop scheduling method considering transportation time and machine pre-maintenance according to claim 5, characterized in that: In S304, three neighborhood structures are proposed for key factories: 1) Neighborhood structure N1 f : When randomly allocating workpieces from a critical plant to other plants, the energy consumption impact is evaluated and they are allocated to the plant with the least energy consumption. 2) Neighborhood structure N2 f :Adopt critical path-based adjustments, optimize OS, and reduce completion time according to critical path theory; 3) Neighborhood structure N3 f : Calculate the load of each machine, randomly select a process from the machine with the largest load, and randomly assign the process to the available machines.
9. A workshop scheduling system considering transportation time and machine pre-maintenance, characterized in that, include: Scheduling model building module: Taking the minimum maximum completion time, the minimum total energy consumption and the minimum bottleneck machine load as the optimization objectives, a distributed flexible job shop scheduling model considering transportation time and pre-maintenance is established; Constraint building module: Determine the scheduling constraints, including: factory constraints, process constraints, machine constraints, workpiece transportation time constraints and pre-maintenance constraints; And, model solving module: according to the constraints and optimization objectives, a flexible job shop scheduling mathematical model considering transportation and predictive maintenance is established, and the MCNSGA-II algorithm is used to solve the mathematical model to obtain the optimal scheduling solution.
10. A computer storage medium storing a readable program, characterized in that: When the program is run, the workshop scheduling method considering transportation time and machine preventive maintenance as described in any one of claims 1 to 8 can be executed.