CN110796355B - Flexible job shop scheduling method based on dynamic decoding mechanism - Google Patents
Flexible job shop scheduling method based on dynamic decoding mechanism Download PDFInfo
- Publication number
- CN110796355B CN110796355B CN201911005648.7A CN201911005648A CN110796355B CN 110796355 B CN110796355 B CN 110796355B CN 201911005648 A CN201911005648 A CN 201911005648A CN 110796355 B CN110796355 B CN 110796355B
- Authority
- CN
- China
- Prior art keywords
- machine
- population
- objective function
- maximum
- time
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 170
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 37
- 230000035772 mutation Effects 0.000 claims abstract description 19
- 241000899793 Hypsophrys nicaraguensis Species 0.000 claims abstract description 8
- 238000010353 genetic engineering Methods 0.000 claims abstract description 6
- 238000012545 processing Methods 0.000 claims description 52
- 238000003754 machining Methods 0.000 claims description 37
- 238000005457 optimization Methods 0.000 claims description 22
- 238000013178 mathematical model Methods 0.000 claims description 15
- 230000002068 genetic effect Effects 0.000 claims description 12
- 238000004364 calculation method Methods 0.000 claims description 11
- 230000014509 gene expression Effects 0.000 claims description 7
- 238000003860 storage Methods 0.000 claims description 4
- 238000010606 normalization Methods 0.000 claims description 3
- 238000012216 screening Methods 0.000 claims description 3
- 238000013461 design Methods 0.000 abstract description 6
- 238000003780 insertion Methods 0.000 abstract description 6
- 230000037431 insertion Effects 0.000 abstract description 6
- 238000004088 simulation Methods 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 5
- 238000004519 manufacturing process Methods 0.000 description 3
- 238000009826 distribution Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 238000012163 sequencing technique Methods 0.000 description 2
- 206010028980 Neoplasm Diseases 0.000 description 1
- 201000011510 cancer Diseases 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06316—Sequencing of tasks or work
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/12—Computing arrangements based on biological models using genetic models
- G06N3/126—Evolutionary algorithms, e.g. genetic algorithms or genetic programming
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Biophysics (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Biology (AREA)
- Strategic Management (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Entrepreneurship & Innovation (AREA)
- Economics (AREA)
- General Physics & Mathematics (AREA)
- Marketing (AREA)
- Biomedical Technology (AREA)
- Tourism & Hospitality (AREA)
- Quality & Reliability (AREA)
- Operations Research (AREA)
- Game Theory and Decision Science (AREA)
- Educational Administration (AREA)
- Development Economics (AREA)
- Physiology (AREA)
- Genetics & Genomics (AREA)
- Artificial Intelligence (AREA)
- General Business, Economics & Management (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
A flexible job shop scheduling method based on a dynamic decoding mechanism. The invention relates to the technical field of flexible job shop scheduling. The flexible job shop scheduling method based on the dynamic decoding mechanism is used for solving by adopting the improved MOGA, integrating an improved cross method based on the workpiece priority sequence, an insertion mutation method and an initialized population strategy, and thus completing the optimal design of the multi-target flexible job shop scheduling. The technical scheme of the invention is as follows: the method comprises the following steps: 1) Modeling; 2) Initializing a population; 3) Genetic manipulation; 4) Updating the external Pareto solution set. Simulation experiments prove that after a dynamic decoding mechanism is applied, the improved algorithm can obtain richer non-dominant solutions and non-dominant solutions with higher quality, so that the optimal design of multi-target flexible job shop scheduling is completed.
Description
Technical Field
The invention relates to the technical field of flexible job shop scheduling.
Background
The job shop scheduling problem is that n workpieces are processed on m machines, the processing technology of each workpiece is determined before processing, each working procedure of each workpiece is provided with a specific processing machine, the processing time of the specific working procedure is also determined, and the purpose of research is to sort the processing working procedures of all the workpieces on the machines and optimize specific performance indexes. However, the flexible job shop scheduling problem is that n workpieces are machined on m machines, except that the job shop scheduling problem is that each workpiece machining process has a fixed machining machine and machining time. The individual process machines of the flexible job shop scheduling problem workpiece are indeterminate, and all processes have one or more machines that can be selected to process a given process. It can also be said that job shop scheduling problem is a special case of flexible job shop scheduling problem. The objective of flexible job shop scheduling problem research is to order all of the processes and assign all of the processes to designated processing machines to meet certain performance metrics in the manufacturing system to an optimal value.
In the prior art, when solving the problem, only genetic operation, including crossover operation and mutation operation, is generally adopted for machine allocation coding and process sequencing coding, so as to increase diversity of the population and maintain good properties. However, the process of crossover and mutation is too random, and the ideal optimization result cannot be obtained by only changing crossover and mutation probabilities. The operation is not dynamically adjusted according to the current state of the population, so that the algorithm is slow in solving speed, poor in solving precision and easy to fall into local optimum.
The Multi-objective genetic algorithm (Multi-Objective Genetic Algorithm II, MOGA) has great advantages in dealing with Multi-objective problems, and a good quality non-dominant solution can be obtained by properly improving the algorithm. The dynamic decoding mechanism provided by the invention can automatically adjust corresponding parameters according to the current population situation, so that the objective function value in the population at the disadvantage can be better developed in the next iteration process. And guiding the Pareto solution set calculated by the algorithm to iterate towards the direction of the Pareto front, and finally obtaining an ideal optimization result. Therefore, how to select an algorithm for optimization, how to improve the algorithm to accommodate the solution of the problem, and how to design a decoding mechanism of a feasible solution are great technical difficulties at present.
Disclosure of Invention
Aiming at the problems, the invention provides a flexible job shop scheduling method based on a dynamic decoding mechanism, which adopts an improved MOGA to solve and integrates an improved cross method based on the workpiece priority sequence, an insertion mutation method and an initialized population strategy, thereby completing the optimal design of the multi-target flexible job shop scheduling.
The technical scheme of the invention is as follows: the method comprises the following steps:
1) Modeling:
1.1 Establishing a mathematical model of the maximum finishing time, the total machine load and the maximum machine load of the optimization target, and determining constraint conditions of the mathematical model;
1.2 Using Pareto to govern the processing of feasible solution screening questions;
1.3 Performing MOGA discretization processing, and adopting a coding mode based on a process to code;
2) Initializing a population:
2.1 Initializing population control parameters including population number SN, crossover probability p c Probability of variation p m ;
2.2 Adopting a random criterion, a maximum work piece operation time remaining criterion and a maximum work piece remaining procedure criterion for procedure codes to generate an initialized population;
2.3 Decoding by using a dynamic decoding mechanism, and storing non-dominant solutions in the population to an external Pareto solution set;
3) Genetic manipulation: firstly, selecting individuals corresponding to a population by using a tournament selection mechanism, judging, and then performing genetic operation, wherein the genetic operation is cross operation or mutation operation; applying Pareto to reserve high-quality individuals for individuals generated after genetic operation, and repeating SN times;
4) Updating the external Pareto solution set: updating an external Pareto solution set, judging whether a stopping criterion is met, and if so, exporting an external Pareto storage set; if not, returning to the step 3).
The relevant assumption conditions established in the step 1.1) of establishing the mathematical model are as follows:
1. each machine can only process one working procedure of one workpiece at each moment;
2. each process can only be processed by one machine;
3. the start machining time of all the machining machines may be 0;
4. the starting machining time of all the workpieces can be 0;
5. each workpiece can be processed in the next working procedure only after the processing of the previous working procedure is completed;
6. all the procedures cannot interrupt the processing once the processing is started;
7. the processing sequence of different working procedures of the same workpiece is fixed, and the processing sequence among the working procedures of different workpieces is not fixed;
the variables in the mathematical model are shown in table 1:
TABLE 1 variable sign definition
The three optimization targets are respectively minimizing the maximum finishing time, the total machine load and the maximum machine load;
the mathematical model and related constraint conditions are:
the formula (1) is an optimization target for minimizing the maximum finishing time, and represents the time of the last machining in all workpieces, the maximum finishing time has a dense and inseparable relation with the finishing time of all the workpieces and the use efficiency of a machining machine, and the use efficiency of the machine can be further improved and the finishing time of all the workpieces can be shortened by optimizing the maximum finishing time; equation (2) is an optimization objective for minimizing the total machine load, representing the total machining load of all machines, to improve economic efficiency by assigning a relatively small machining time for each process; equation (3) optimizes a target for minimizing a maximum machine load, representing a maximum machining load among all machines, and balances the machining loads among all machines by optimizing the target to prevent an excessive machining load from being distributed to a single machine; the formula (4) is a calculation method of the machine Mi processing load; formula (5) represents a sequence constraint between steps; equation (6) shows that only one process can be performed by one machine at each time; equation (7) shows that each process can only select one machine from the alternative machines for processing.
In the step 1), the solution of the scheduling problem of the flexible job shop comprises two parts, namely a procedure coding part and a machine coding part;
the procedure coding part adopts a coding mode based on procedures; the method can ensure that the requirements of related constraints are met, and the feasibility of the solution is ensured. In the machine coding part, the machine coding part corresponds to the process coding part one by one, and the dimension of the process coding part and the dimension of the machine coding part are the same as the total number of processes needing to be processed.
In the step 2), the dynamic decoding mechanism only operates the process code, and can obtain the machine allocation code corresponding to the process code while decoding the process code; the dynamic decoding mechanism can automatically adjust corresponding parameters according to the condition of the current population, and mainly develop objective function values at disadvantages, and iterate in the direction of the Pareto front by the Pareto solution set calculated by the guidance algorithm;
the three calculation criteria of the dynamic decoding mechanism are: maximum completion time minimum criterion N1, maximum machine load minimum criterion N2, and switchboard load minimum criterion N3.
The relevant calculation formula of the dynamic decoding mechanism is as follows:
ω 1 +ω 2 +ω 3 =1 (14)
fitness=ω 1 ×F 1 +ω 2 ×F 2 +ω 3 ×F 3 (18)
in the above expression ω 1 、ω 2 、ω 3 Respectively representing the probability of selecting N1, the probability of selecting N2 and the probability of selecting N3 in the decoding process; min (f) 1 )、min(f 2 )、min(f 3 ) Instead of the minimum of the three objective function values in the current population, from the beginning of the iteration until now, the minimum of the three objective functions, i.e. the minimum of the three objective functions in the current external Pareto solution set; max (f) 1 )、max(f 2 )、max(f 3 ) In the current iteration process, the maximum value of three objective functions in the population;
a. the molecular parts in the expressions b and c are used to represent the objective function value f in the population at the time of algorithm iteration 1 、f 2 、f 3 And the historical optimal value min (f 1 )、min(f 2 )、min(f 3 ) Degree of deviation between; when the degree of deviation between a certain objective function value and the optimal objective function value is large, the current objective function value is proved to be far away from the objective function value in the Pareto front; therefore, the algorithm should enhance the search for this objective function value in the next iteration;
after the deviation degrees a, b and c of the three objective function values are calculated, carrying out normalization processing on the three values; when the objective function with large deviation degree is iterated next time, the criterion corresponding to the objective function has higher selected probability, so that the objective function is improved correspondingly; on the contrary, when the objective function with small deviation degree is in the next iteration process, the criterion corresponding to the objective function has low probability of being selected. By continuously updating the external Pareto solution concentration min (f 1 )、min(f 2 )、min(f 3 ) And max (f) 1 )、max(f 2 )、max(f 3 ) Dynamically adapting to the state of the population in the algorithm; by continuously adopting the dynamic decoding mechanism, the algorithm iterates towards the weaker objective function of the three objective functions, thereby achieving the purpose of optimization.
The operation steps of the cross operation in the step 3) are as follows:
a3.1 Selecting two individuals from the population using a tournament mechanism;
a3.2 Randomly dividing all the workpieces coded in the individual into two sets, namely J1 and J2;
a3.3 On the basis of keeping the initial positions of the working procedures of the parent individual 1 and the parent individual 2, copying the workpiece containing J1 in the parent individual 1 to the child individual 1, and copying the workpiece containing J2 in the parent individual 2 to the child individual 2;
a3.4 Copy the work piece containing J2 in parent individual 2 to child individual 1, copy the work piece containing J1 in parent individual 1 to child individual 2.
The operation steps of the mutation operation in the step 3) are as follows:
b3.1 Selecting an individual from the population using a tournament mechanism;
b3.2 In the part based on the process code, first randomly selecting a process;
b3.3 Randomly inserting the process before another process, which is sequentially moved backward while keeping the machine code assigned to all processes unchanged.
Compared with the prior art, the invention has the remarkable advantages that: the invention designs a flexible job shop scheduling method based on a dynamic decoding mechanism, adopts a coding mode based on working procedures, and provides a dynamic decoding mechanism, which can automatically adjust corresponding parameters according to the condition of the current population, so that the objective function value in the population at the disadvantage can be better developed in the iterative process. And solving by adopting an improved MOGA, and integrating an improved cross method based on the workpiece priority sequence, an insertion mutation method and an initialized population strategy. Simulation experiments prove that after a dynamic decoding mechanism is applied, the improved algorithm can obtain richer non-dominant solutions and non-dominant solutions with higher quality, so that the optimal design of multi-target flexible job shop scheduling is completed.
Drawings
FIG. 1 is a flow chart of an improved MOGA of the present invention;
FIG. 2 is a diagram of an example problem Gantt chart of the present invention;
FIG. 3 is a schematic diagram of an improved workpiece priority based crossover method of the present invention;
FIG. 4 is a schematic diagram of the method for mutation based on insertion according to the present invention;
FIG. 5 is a Pareto solution set distribution diagram obtained after algorithm optimization in an embodiment of the present invention;
FIG. 6 (a) is a Gantt chart of a first scheduling scheme according to an embodiment of the present invention;
FIG. 6 (b) is a Gantt chart illustrating a second scheduling scheme according to an embodiment of the present invention;
FIG. 6 (c) is a Gantt chart illustrating a third scheduling scheme according to an embodiment of the present invention;
fig. 6 (d) is a gantt chart of a fourth scheduling scheme according to an embodiment of the invention.
Detailed Description
The invention, as shown in figures 1-5, 6 (a) -6 (d), operates as follows:
1) Modeling: the flexible job shop scheduling optimization is to sort all the working procedures and allocate the working procedures to the designated processing machine so as to meet certain performance indexes to achieve the optimal;
1.1 Establishing a mathematical model of the maximum finishing time, the total machine load and the maximum machine load of the optimization target, and determining constraint conditions of the mathematical model;
1.2 Using Pareto to govern the processing of feasible solution screening questions;
1.3 Performing MOGA discretization processing, and adopting a coding mode based on a process to code;
2) Initializing a population:
2.1 Initializing population control parameters including population number SN, crossover probability p c Probability of variation p m ;
2.2 Adopting a random criterion, a maximum work piece operation time remaining criterion and a maximum work piece remaining procedure criterion for procedure codes to generate an initialized population;
2.3 Decoding by using a dynamic decoding mechanism, and storing non-dominant solutions in the population to an external Pareto solution set;
3) Genetic manipulation: firstly, selecting individuals corresponding to a population by using a tournament selection mechanism, judging, and then performing genetic operation, wherein the genetic operation is cross operation or mutation operation; the cross operation adopts an improved cross method based on the workpiece priority sequence, the mutation operation adopts a mutation method based on insertion, and a dynamic decoding mechanism is applied to decode; specifically, two random numbers X1 and X2 between 0 and 1 are randomly generated. If X1 is less than or equal to p c And X2 is less than or equal to p m The crossover operation and the mutation operation are carried out; if X1 > p c And X2 is less than or equal to p m Only performing mutation operation; if X1 is less than or equal to p c And X2 > p m Only the cross operation is performed; if X1 > p c And X2 > p m Then neither crossover nor genetic manipulation is performed; if the crossover operation and the mutation operation are carried out, no sequence relation exists between the two operations; applying Pareto to reserve high-quality individuals for individuals generated after genetic operation, and repeating SN times; the purpose of step 3) is to perform genetic manipulation to obtain a more quality Pareto solution set (to obtain more Pareto solutions) containing the solution set of step 2), the quality of Pareto solutions in the solution set obtained in step 3) is better, the main purpose is to obtain more quality and more Pareto solutions instead of finding one best in the Pareto solution setIs a kind of device for the treatment of a cancer;
4) Updating the external Pareto solution set: updating an external Pareto solution set, judging whether a stopping criterion (the stopping criterion is the number of algorithm iterations, for example, the number of iterations is represented by item, if item > the number of algorithm iterations, the iteration is stopped, the algorithm operation is completed, and an external Pareto storage set is derived), and if the stopping criterion is satisfied, the external Pareto storage set is derived; if not, returning to the step 3). The final external Pareto solution set is a plurality of optimal solutions, namely a plurality of scheduling methods, and the specific use of the solution set can be determined by manpower and independently in the final actual use.
The relevant assumption conditions established in the step 1.1) of establishing the mathematical model are as follows:
1. each machine can only process one working procedure of one workpiece at each moment;
2. each process can only be processed by one machine;
3. the start machining time of all the machining machines may be 0;
4. the starting machining time of all the workpieces can be 0;
5. each workpiece can be processed in the next working procedure only after the processing of the previous working procedure is completed;
6. all the procedures cannot interrupt the processing once the processing is started;
7. the processing sequence of different working procedures of the same workpiece is fixed, and the processing sequence among the working procedures of different workpieces is not fixed;
the variables in the mathematical model are shown in table 1:
TABLE 1 variable sign definition
The three optimization targets are respectively minimizing the maximum finishing time, the total machine load and the maximum machine load;
the mathematical model and related constraint conditions are:
the formula (1) is an optimization target for minimizing the maximum finishing time, and represents the time of the last machining in all workpieces, the maximum finishing time has a dense and inseparable relation with the finishing time of all the workpieces and the use efficiency of a machining machine, and the use efficiency of the machine can be further improved and the finishing time of all the workpieces can be shortened by optimizing the maximum finishing time; equation (2) is an optimization objective for minimizing the total machine load, representing the total machining load of all machines, to improve economic efficiency by assigning a relatively small machining time for each process; equation (3) optimizes a target for minimizing a maximum machine load, representing a maximum machining load among all machines, and balances the machining loads among all machines by optimizing the target to prevent an excessive machining load from being distributed to a single machine; the formula (4) is a calculation method of the machine Mi processing load; formula (5) represents a sequence constraint between steps; equation (6) shows that only one process can be performed by one machine at each time; equation (7) shows that each process can only select one machine from the alternative machines for processing.
In step 1), the solution of the flexible job shop scheduling problem includes two parts, namely a process coding part (process sequencing vector), a machine coding part (machine allocation vector);
the procedure coding part adopts a coding mode based on procedures; the method can ensure that the requirements of related constraints are met, and the feasibility of the solution is ensured. In the machine coding section (machine allocation vector), the machine coding section corresponds to the process coding section one by one, and the dimensions of both the process coding section and the machine coding section are the same as the total number of processes to be processed. To illustrate this solution in detail, the scheduling problem of 3 work pieces, 3 machines, and a total of 8 processes is illustrated herein, and the processing time of each process is shown in table 2. In Table 2, the numeral 1 indicates the process O 2,1 In machine M 2 The processing time was 1. Table 3 is one possible solution to this problem, where O 2,1 The first machining pass of the workpiece 2 is shown and the pass code has a higher priority before. The processing sequence of all the workpieces on the machine under the coding is as follows: m is M 1 :O 3,1 →O 1,2 、M 2 :O 2,1 →O 3,2 →O 2,3 、M 3 :O 1,1 →O 2,2 →O 1,3 。
Table 2 example problem processing time for each process
TABLE 3 expression of feasible solutions
Work step O i,j | O 2,1 | O 3,1 | O 1,1 | O 2,2 | O 1,2 | O 1,3 | O 3,2 | O 2,3 |
Workpiece i | 2 | 3 | 1 | 2 | 1 | 1 | 3 | 2 |
Process j | 1 | 1 | 1 | 2 | 2 | 3 | 2 | 3 |
Machine k | 2 | 1 | 3 | 3 | 1 | 3 | 2 | 2 |
Processing time P i,j,k | 3 | 1 | 2 | 4 | 3 | 2 | 2 | 3 |
In the step 2), the dynamic decoding mechanism only operates the process code, and can obtain the machine allocation code corresponding to the process code while decoding the process code; the dynamic decoding mechanism can automatically adjust corresponding parameters according to the condition of the current population, and mainly develop objective function values at disadvantages, iterate in the direction of the Pareto solution set calculated by the guiding algorithm towards the Pareto front, and set the iterative times by manpower independently;
the three calculation criteria of the dynamic decoding mechanism are: maximum completion time minimum criterion N1, maximum machine load minimum criterion N2, and switchboard load minimum criterion N3. The method comprises the following steps:
maximum completion time minimum criterion N1: first, for each process O i,j All machines for processing can be selected and selected in the working procedure; next, a machining process O on each of the selectable machines is calculated i,j Is a completion time of (2); finally, compare the completion of process O on each alternative machine i,j And selecting the machine with the shortest time for completing the process as the processing machine for the process.
Maximum machine load minimum criterion N2: in the calculation, when a machine is selected for each process, the current load of each machine is recorded. In the pairing process O i,j When selecting the machine, adding the load of each machine capable of processing the process to the current load of each machine corresponding to the previous process, and selecting the machine with the smallest total load in the current machines as the processing process O i,j Is a machine of (a).
Total machine load minimum criterion N3: for each process O i,j All the machines that can process the process are selected, and among these machines, the machine that takes the shortest time to process the process is selected as the machine that processes the process.
The relevant calculation formula of the dynamic decoding mechanism is as follows:
ω 1 +ω 2 +ω 3 =1 (14)
fitness=ω 1 ×F 1 +ω 2 ×F 2 +ω 3 ×F 3 (18)
in the above expression ω 1 、ω 2 、ω 3 Respectively representing the probability of selecting N1, the probability of selecting N2 and the probability of selecting N3 in the decoding process; min (f) 1 )、min(f 2 )、min(f 3 ) Instead of the minimum of the three objective function values in the current population, from the beginning of the iteration until now, the minimum of the three objective functions, i.e. the minimum of the three objective functions in the current external Pareto solution set; max (f) 1 )、max(f 2 )、max(f 3 ) In the current iteration process, the maximum value of three objective functions in the population;
a. the molecular parts in the expressions b and c are used to represent the objective function value f in the population at the time of algorithm iteration 1 、f 2 、f 3 And the historical optimal value min (f 1 )、min(f 2 )、min(f 3 ) Degree of deviation between; when the degree of deviation between one objective function value and the optimal objective function value is large, the current objective function value and Pareto are provedThe distance of the objective function value in the front edge is far; therefore, the algorithm should enhance the search for this objective function value in the next iteration;
after the deviation degrees a, b and c of the three objective function values are calculated, carrying out normalization processing on the three values; when the objective function with large deviation degree is iterated next time, the criterion corresponding to the objective function has higher selected probability, so that the objective function is improved correspondingly; on the contrary, when the objective function with small deviation degree is in the next iteration process, the criterion corresponding to the objective function has low probability of being selected. By continuously updating the external Pareto solution concentration min (f 1 )、min(f 2 )、min(f 3 ) And max (f) 1 )、max(f 2 )、max(f 3 ) Dynamically adapting to the state of the population in the algorithm; by continuously adopting the dynamic decoding mechanism, the algorithm iterates towards the weaker objective function of the three objective functions, thereby achieving the purpose of optimization.
The cross operation (specifically, as shown in fig. 3) in step 3) includes the following steps:
a3.1 Selecting two individuals from the population using a tournament mechanism;
a3.2 Randomly dividing all the workpieces coded in the individual into two sets, namely J1 and J2;
a3.3 On the basis of keeping the initial positions of the working procedures of the parent individual 1 and the parent individual 2, copying the workpiece containing J1 in the parent individual 1 to the child individual 1, and copying the workpiece containing J2 in the parent individual 2 to the child individual 2;
a3.4 Copy the work piece containing J2 in parent individual 2 to child individual 1, copy the work piece containing J1 in parent individual 1 to child individual 2.
The operation steps of the mutation operation (specifically, as shown in fig. 4) in the step 3) are as follows:
b3.1 Selecting an individual from the population using a tournament mechanism;
b3.2 In the part based on the process code, first randomly selecting a process;
b3.3 Randomly inserting the process before another process, which is sequentially moved backward while keeping the machine code assigned to all processes unchanged.
Embodiment one:
the invention solves the workshop processing example of a certain mechanical manufacturing enterprise, thereby further verifying the effectiveness of a dynamic decoding mechanism and an improved algorithm. The workshop has 9 workpieces to be processed, each workpiece has 8 processing procedures, and 6 processing machines are arranged, and the specific processing time is shown in table 4. The code for all algorithms was written on MATLAB R2012a platform and run on Core-i5 (3.2 GHz) personal computer. The parameters of the algorithm are set as follows: SN is 100, p c 0.8, p m 0.2 and 100 iterations.
TABLE 4 workshop working examples of a machine manufacturing company
For this example problem, the modified algorithm was run independently 10 times under the same test environment. The non-dominant solution set obtained after algorithm optimization is shown in table 5, and the Pareto solution set distribution diagram is shown in fig. 5; the objective function f in Table 5 1 The first 4 solutions (data), i.e., the Gantt charts of four scheduling schemes, are ordered from small to large as shown in FIGS. 6 (a) through 6 (d).
Table 5 non-dominant solution set obtained after algorithm optimization
From the calculation results, the improved algorithm adopts a dynamic decoding mechanism to decode, and meanwhile, an improved workpiece priority order cross method, an insertion mutation method and an initialized population strategy are embedded, so that the searching capability of the algorithm is enhanced, the solving speed and the solving precision are improved, and further, richer non-dominant solutions and non-dominant solutions with higher quality can be obtained. In conclusion, the dynamic decoding mechanism and the improved algorithm provided by the invention can effectively solve the scheduling problem of the multi-target flexible job shop, and can obtain a good optimizing effect.
Claims (2)
1. A flexible job shop scheduling method based on a dynamic decoding mechanism is characterized by comprising the following steps:
1) Modeling:
1.1 Establishing a mathematical model of the maximum finishing time, the total machine load and the maximum machine load of the optimization target, and determining constraint conditions of the mathematical model;
1.2 Using Pareto to govern the processing of feasible solution screening questions;
1.3 Performing MOGA discretization processing, and adopting a coding mode based on a process to code;
in the step 1), the solution of the scheduling problem of the flexible job shop comprises two parts, namely a procedure coding part and a machine coding part;
the procedure coding part adopts a coding mode based on procedures; the method can ensure that the requirements of related constraints are met, and the feasibility of the solution is ensured. In the machine coding part, the machine coding part corresponds to the process coding part one by one, and the dimension of the process coding part and the dimension of the machine coding part are the same as the total number of processes needing to be processed;
2) Initializing a population:
2.1 Initializing population control parameters including population number SN, crossover probability p c Probability of variation p m ;
2.2 Adopting a random criterion, a maximum work piece operation time remaining criterion and a maximum work piece remaining procedure criterion for procedure codes to generate an initialized population;
2.3 Decoding by using a dynamic decoding mechanism, and storing non-dominant solutions in the population to an external Pareto solution set;
in the step 2), the dynamic decoding mechanism only operates the process code, and can obtain the machine allocation code corresponding to the process code while decoding the process code; the dynamic decoding mechanism can automatically adjust corresponding parameters according to the condition of the current population, and mainly develop objective function values at disadvantages, and iterate in the direction of the Pareto front by the Pareto solution set calculated by the guidance algorithm;
the three calculation criteria of the dynamic decoding mechanism are: maximum finishing time minimum criterion N1, maximum machine load minimum criterion N2, and switchboard load minimum criterion N3;
3) Genetic manipulation: firstly, selecting individuals corresponding to a population by using a tournament selection mechanism, judging, and then performing genetic operation, wherein the genetic operation is cross operation or mutation operation; applying Pareto to reserve high-quality individuals for individuals generated after genetic operation, and repeating SN times;
the operation steps of the cross operation in the step 3) are as follows:
a3.1 Selecting two individuals from the population using a tournament mechanism;
a3.2 Randomly dividing all the workpieces coded in the individual into two sets, namely J1 and J2;
a3.3 On the basis of keeping the initial positions of the working procedures of the parent individual 1 and the parent individual 2, copying the workpiece containing J1 in the parent individual 1 to the child individual 1, and copying the workpiece containing J2 in the parent individual 2 to the child individual 2;
a3.4 Copying the work piece containing J2 in the parent individual 2 to the child individual 1, and copying the work piece containing J1 in the parent individual 1 to the child individual 2;
the operation steps of the mutation operation in the step 3) are as follows:
b3.1 Selecting an individual from the population using a tournament mechanism;
b3.2 In the part based on the process code, first randomly selecting a process;
b3.3 Randomly inserting the process in front of another process, moving the other processes backward in sequence, and simultaneously keeping the machine codes allocated by all the processes unchanged;
4) Updating the external Pareto solution set: updating an external Pareto solution set, judging whether a stopping criterion is met, and if so, exporting an external Pareto storage set; if not, returning to the step 3);
the relevant calculation formula of the dynamic decoding mechanism is as follows:
ω 1 +ω 2 +ω 3 =1 (14)
fitness=ω 1 ×F 1 +ω 2 ×F 2 +ω 3 ×F 3 (18)
in the above expression ω 1 、ω 2 、ω 3 Respectively representing the probability of selecting N1, the probability of selecting N2 and the probability of selecting N3 in the decoding process; min (f) 1 )、min(f 2 )、min(f 3 ) Instead of the minimum of the three objective function values in the current population, from the beginning of the iteration until now, the minimum of the three objective functions, i.e. the minimum of the three objective functions in the current external Pareto solution set; max (f) 1 )、max(f 2 )、max(f 3 ) In the current iteration process, the maximum value of three objective functions in the population;
a. the molecular parts in the expressions b and c are used to represent the objective function value f in the population at the time of algorithm iteration 1 、f 2 、f 3 And the historical optimal value min (f 1 )、min(f 2 )、min(f 3 ) Degree of deviation between; when the degree of deviation between a certain objective function value and the optimal objective function value is large, the current objective function value is proved to be far away from the objective function value in the Pareto front; therefore, the algorithm should enhance the search for this objective function value in the next iteration;
after the deviation degrees a, b and c of the three objective function values are calculated, carrying out normalization processing on the three values; when the objective function with large deviation degree is iterated next time, the criterion corresponding to the objective function has higher selected probability, so that the objective function is improved correspondingly; on the contrary, when the objective function with small deviation degree is in the next iteration process, the criterion corresponding to the objective function has low probability of being selected. By continuously updating the external Pareto solution concentration min (f 1 )、min(f 2 )、min(f 3 ) A kind of electronic deviceValue, and max (f 1 )、max(f 2 )、max(f 3 ) Dynamically adapting to the state of the population in the algorithm; by continuously adopting the dynamic decoding mechanism, the algorithm iterates towards the weaker objective function of the three objective functions, thereby achieving the purpose of optimization.
2. The flexible job shop scheduling method according to claim 1, wherein the relevant assumption conditions established by the mathematical model established in step 1.1) are:
1. each machine can only process one working procedure of one workpiece at each moment;
2. each process can only be processed by one machine;
3. the start machining time of all the machining machines may be 0;
4. the starting machining time of all the workpieces can be 0;
5. each workpiece can be processed in the next working procedure only after the processing of the previous working procedure is completed;
6. all the procedures cannot interrupt the processing once the processing is started;
7. the processing sequence of different working procedures of the same workpiece is fixed, and the processing sequence among the working procedures of different workpieces is not fixed;
the variable symbols in the mathematical model are as follows: m is the total number of machines; n is n i The total number of working procedures of the workpiece i; o (O) i,j The j-th working procedure of the i workpiece; m is M i,j Is a procedure O i,j A set of processing machines may be selected; p (P) i,j,k Is a procedure O i,j Processing time at machine k; t is t i,j,k Is a procedure O i,j Starting a machining time at machine k; c (C) i,j Is a procedure O i,j Completion time; i, h are workpiece numbers, i, h=1, 2, …, n; k is the machine number, k=1, 2, …, m; j, g is the sequence number, j, g=1, 2, …, n i ;W k Is machine M i Is a machining load of (a); if machine k is selected for process step O i,j ,x i,j, 1 is shown in the specification; other cases x i,j,k Is 0;
the three optimization targets are respectively minimizing the maximum finishing time, the total machine load and the maximum machine load;
the mathematical model and related constraint conditions are:
the formula (1) is an optimization target for minimizing the maximum finishing time, and represents the time of the last machining in all workpieces, the maximum finishing time has a dense and inseparable relation with the finishing time of all the workpieces and the use efficiency of a machining machine, and the use efficiency of the machine can be further improved and the finishing time of all the workpieces can be shortened by optimizing the maximum finishing time; equation (2) is an optimization objective for minimizing the total machine load, representing the total machining load of all machines, to improve economic efficiency by assigning a relatively small machining time for each process; equation (3) optimizes a target for minimizing a maximum machine load, representing a maximum machining load among all machines, and balances the machining loads among all machines by optimizing the target to prevent an excessive machining load from being distributed to a single machine; the formula (4) is a calculation method of the machine Mi processing load; formula (5) represents a sequence constraint between steps; equation (6) shows that only one process can be performed by one machine at each time; equation (7) shows that each process can only select one machine from the alternative machines for processing.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911005648.7A CN110796355B (en) | 2019-10-22 | 2019-10-22 | Flexible job shop scheduling method based on dynamic decoding mechanism |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911005648.7A CN110796355B (en) | 2019-10-22 | 2019-10-22 | Flexible job shop scheduling method based on dynamic decoding mechanism |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110796355A CN110796355A (en) | 2020-02-14 |
CN110796355B true CN110796355B (en) | 2024-03-19 |
Family
ID=69440557
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911005648.7A Active CN110796355B (en) | 2019-10-22 | 2019-10-22 | Flexible job shop scheduling method based on dynamic decoding mechanism |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110796355B (en) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111598297B (en) * | 2020-04-15 | 2023-04-07 | 浙江工业大学 | Flexible job shop scheduling machine selection method based on residual process maximum value optimization |
CN111445170A (en) * | 2020-04-30 | 2020-07-24 | 天津大学 | Autonomous operation system and method for unmanned rolling machine group |
CN111861167A (en) * | 2020-07-07 | 2020-10-30 | 东北大学 | Online dynamic scheduling method of production line based on decomposition multi-objective optimization algorithm |
CN112257922B (en) * | 2020-10-21 | 2022-06-14 | 福州大学 | Flexible job shop scheduling optimization method |
CN112859761B (en) * | 2020-12-06 | 2022-04-22 | 北京工业大学 | Distributed forging flow shop energy-saving scheduling method considering centralized heat treatment |
CN112699544A (en) * | 2020-12-23 | 2021-04-23 | 泉州装备制造研究所 | Multi-target flexible job shop scheduling method |
CN113326970B (en) * | 2021-04-29 | 2023-11-24 | 南京晨光集团有限责任公司 | Mixed flow assembly line sequencing optimization method |
CN113505982A (en) * | 2021-07-07 | 2021-10-15 | 同济大学 | Job shop scheduling control method based on sustainable production scheduling framework |
CN113592168B (en) * | 2021-07-26 | 2023-07-04 | 华北电力大学(保定) | Job shop scheduling risk optimization method based on machine speed scaling |
CN113792494B (en) * | 2021-09-23 | 2023-11-17 | 哈尔滨工业大学(威海) | Multi-target flexible job shop scheduling method based on migration bird swarm algorithm and cross fusion |
CN114139810B (en) * | 2021-12-01 | 2024-08-02 | 北京航空航天大学 | Green flexible job shop scheduling method based on improved electromagnetic mechanism algorithm |
CN114327237A (en) * | 2021-12-15 | 2022-04-12 | 中国地质大学(武汉) | Method, device and equipment for decoding real-time data by using upper computer |
CN115796490B (en) * | 2022-11-12 | 2023-07-18 | 华北电力大学(保定) | Green job shop scheduling method considering random equipment faults |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103729694B (en) * | 2013-12-26 | 2016-08-24 | 陕西科技大学 | The method that improvement GA based on polychromatic sets hierarchical structure solves Flexible workshop scheduling |
CN106611232A (en) * | 2016-02-04 | 2017-05-03 | 四川用联信息技术有限公司 | Layered optimization algorithm for solving multi-technical-route workshop scheduling |
-
2019
- 2019-10-22 CN CN201911005648.7A patent/CN110796355B/en active Active
Also Published As
Publication number | Publication date |
---|---|
CN110796355A (en) | 2020-02-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110796355B (en) | Flexible job shop scheduling method based on dynamic decoding mechanism | |
CN110276481B (en) | Distributed hybrid pipeline scheduling optimization method | |
CN108460463B (en) | High-end equipment assembly line production scheduling method based on improved genetic algorithm | |
CN110288185B (en) | Distributed flexible pipeline scheduling method | |
CN115981262B (en) | IMOEA-based hydraulic cylinder part workshop production scheduling method | |
CN113569483A (en) | Method for solving multi-target flexible job shop scheduling based on artificial bee colony algorithm | |
CN112668789A (en) | Self-adaptive batch scheduling method for flexible operation workshop preparation process | |
CN115796510A (en) | Multi-target flexible job shop scheduling method based on improved variable neighborhood genetic algorithm | |
CN116957177A (en) | Flexible workshop production line planning method, system, equipment and medium | |
CN117555305B (en) | NSGAII-based multi-target variable sub-batch flexible workshop job scheduling method | |
CN112631214B (en) | Flexible job shop batch scheduling method based on improved invasive weed optimization algorithm | |
CN117077975A (en) | Distributed heterogeneous flow shop scheduling method based on mixed initialization modular factor algorithm | |
CN117707083A (en) | Scheduling method, terminal equipment and storage medium for distributed assembly line shop | |
CN110889534A (en) | Product principle arrangement method based on improved NSGA-II | |
CN114415615B (en) | Mixed flow assembly line balanced distribution method and device under uncertain demand | |
CN114676987B (en) | Intelligent flexible job shop active scheduling method based on hyper-heuristic algorithm | |
CN116070826A (en) | Scheduling method for parallel machine of spraying operation of wagon body | |
CN116300763A (en) | Mixed flow shop mathematical heuristic scheduling method and system considering machine configuration | |
CN115438877A (en) | Multi-objective distributed flexible workshop scheduling optimization method based on gray wolf algorithm | |
CN108717289B (en) | Assembly line layout optimization method | |
CN113406941B (en) | Self-adaptive dynamic scheduling method for open workshop of double-target parallel machine based on simulation | |
CN116795054B (en) | Intermediate product scheduling method in discrete manufacturing mode | |
CN114967615B (en) | Assembly workshop scheduling integrated optimization method based on discrete flower pollination algorithm | |
CN117495041A (en) | Multi-target flexible job shop scheduling method based on mixed wolf algorithm | |
CN115562198B (en) | Workshop rescheduling method considering rescheduling execution cost |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |