CN113792494B - Multi-target flexible job shop scheduling method based on migration bird swarm algorithm and cross fusion - Google Patents

Multi-target flexible job shop scheduling method based on migration bird swarm algorithm and cross fusion Download PDF

Info

Publication number
CN113792494B
CN113792494B CN202111116700.3A CN202111116700A CN113792494B CN 113792494 B CN113792494 B CN 113792494B CN 202111116700 A CN202111116700 A CN 202111116700A CN 113792494 B CN113792494 B CN 113792494B
Authority
CN
China
Prior art keywords
individuals
individual
flying
population
objective function
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
Application number
CN202111116700.3A
Other languages
Chinese (zh)
Other versions
CN113792494A (en
Inventor
邓立宝
狄原竹
宋乐
李春磊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Harbin Institute of Technology Weihai
Original Assignee
Harbin Institute of Technology Weihai
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Harbin Institute of Technology Weihai filed Critical Harbin Institute of Technology Weihai
Priority to CN202111116700.3A priority Critical patent/CN113792494B/en
Publication of CN113792494A publication Critical patent/CN113792494A/en
Application granted granted Critical
Publication of CN113792494B publication Critical patent/CN113792494B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/27Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06311Scheduling, planning or task assignment for a person or group
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/06Multi-objective optimisation, e.g. Pareto optimisation using simulated annealing [SA], ant colony algorithms or genetic algorithms [GA]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/02Reliability analysis or reliability optimisation; Failure analysis, e.g. worst case scenario performance, failure mode and effects analysis [FMEA]

Abstract

The invention discloses a multi-target flexible job shop scheduling method based on a migration bird swarm algorithm and cross fusion, belongs to the technical field of scheduling and production of manufacturing workshops, and aims to solve the problems of low precision and poor reliability commonly existing in the existing MOFJSP technology. For the flexible job shop scheduling problem with the minimum maximum finishing time and the minimum total machine load as optimization targets, the scheme firstly establishes a three-layer coding mathematical model, designs a mixed initialization strategy to generate an initial population, then generates a new scheduling scheme through cross operation in a flying-capturing individual team, cross operation between left and right flying-capturing individual teams and variation operation of individuals in the team, adopts a rapid ordering method based on Pareto dominant relation to select excellent individuals, and circulates the strategy until the algorithm is finished to obtain an optimal processing scheme. The method can improve the accuracy of searching the optimal solution by the algorithm, and obtain a higher-quality scheduling scheme, thereby improving the efficiency and reliability of workshop production and processing.

Description

Multi-target flexible job shop scheduling method based on migration bird swarm algorithm and cross fusion
Technical Field
The invention relates to an optimized scheduling method, and belongs to the technical field of scheduling and production of manufacturing workshops.
Background
Since the creation of the Job-scheduling problem (JSP) in the middle of the fifties of the last century, the Flexible Job-shop scheduling problem (FJSP) has received much attention as an extension thereof, with higher computational complexity. In the last decade, only a single-target FJSP with maximum finishing time is always a hot problem of industrial interest, however, in the actual production process, multiple targets such as finishing time and machine load are often required to be considered simultaneously, so that research on Multi-target flexible job shop scheduling problem (Multi-Objective Flexible Job-Shop Scheduling Problem, MOFJSP) is also necessary.
At present, methods commonly used for solving MOFJSP include genetic algorithm, particle swarm optimization algorithm, ant colony optimization algorithm, differential evolution algorithm and the like. As one of meta-heuristic algorithms, the migration bird swarm optimization (Migrating Birds Optimization, MBO) is a new heuristic algorithm based on swarm optimization, which has been successfully applied to solve single-target FJSP and obtain satisfactory results, but in the aspect of solving the MOFJSP, the search performance and convergence are not ideal enough, so that the application is very small, i.e. the existing technology for solving the MOFJSP generally has the problems of low precision and poor reliability.
Disclosure of Invention
The invention aims to solve the problems of low precision and poor reliability commonly existing in the existing MOFJSP technology, and provides a multi-target flexible job shop scheduling method based on a migration bird swarm algorithm and cross fusion.
The invention discloses a multi-target flexible job shop scheduling method based on a migration bird swarm algorithm and cross fusion, which comprises the following steps:
step S1: inputting production and processing data to construct a data set, and initializing parameters;
step S2: establishing a chromosome three-layer coding mathematical model according to the data set;
when the model is initialized and established, a mixed initialization strategy is adopted to generate an initial population, and the objective function value of individuals in the initial population is calculated;
step S3: based on Pareto dominant relations, the current population is rapidly ordered, and the population is divided into a collar flying individual group and a left heel flying group and a right heel flying group;
step S4: the current population is evolved, and the evolution steps are as follows:
a step of flying the individual evolution;
sequentially evolving left and right flying individuals;
the left flying following individual and the right flying following individual carry out the evolution step of crossing between teams according to the crossing probability;
step S5: judging whether the population evolution times meet the requirement of the internal circulation times in the initialization parameters defined in the step S1, if so, executing the step S6; if not, returning to the execution step S4;
Step S6: the current population is mutated according to mutation probability;
step S7: selecting excellent individuals from variant individuals and current populations to update the collar-flying individual population;
step S8: judging whether the iteration times meet the termination conditions given by the initialization parameters in the step S1, if so, outputting the current solution as an optimal solution and outputting a workshop scheduling scheme; if not, returning to the execution of the steps S4 to S7 for iterating again.
Preferably, the production processing data input in step S1 includes: the working procedures can be selected to be the processing machine and the processing time of the working procedures on different machines; the initialization parameters include: iteration times MAXGEN, initial population size SizePop, inner loop times G, pilot population maximum size letters_num, neighborhood size neighbor_size, shared solution size share_size, variant individual number G1, cross individual number G2 and weight e for minimizing total finishing time target C to occupy all targets.
Preferably, the three-layer coding mathematical model of the chromosome described in step S2 is:
the first layer is a process coding gene, the number of the workpieces is adopted to represent the process of the workpiece to be processed, and the number of the workpiece is equal to the total number of the process of the workpiece; compiling according to the sequence of the serial numbers of the workpieces in the chromosomes, namely scanning the chromosomes from left to right, wherein the serial numbers of the workpieces appearing at the r-th time represent the r-th working procedure of the workpieces;
The second layer is a machine coding gene, and the number of the machine is used for representing optional processing machines of each procedure;
the third layer is a time coding gene: characterizing the processing time of the process on different machines;
the process coding part gene, the machine coding part gene and the time coding part gene form a chromosome together;
the strategy for generating the initial population by adopting the mixed initialization strategy is as follows:
aiming at the process coding part genes and the machine coding part genes of the chromosome, respectively adopting a residual process minimum strategy and a processing time minimum strategy to generate individuals accounting for 20% of the initial population scale;
and generating the residual individuals of the initial population by adopting a random strategy aiming at the process coding part genes and the machine coding part genes of the chromosome.
Preferably, the objective function values of the individuals in the initial population comprise a maximum finishing time and a total machine load, the optimization objective is that the maximum finishing time is minimum and the total machine load is minimum, and the two objective function values are obtained according to the following formula:
the first objective function value is a maximum finishing time objective function value:
C=min{max(C i ) 1.ltoreq.i.ltoreq.n, where C i Indicating the finishing time of the ith workpiece, wherein n is the number of the workpieces to be processed;
the second objective function value is a machine total load objective function value:
Wherein h is i Represents the number of processes of the ith workpiece, m ij The number of machines for the jth process that can process the ith workpiece, t ijk X represents the processing time of the jth process of the ith workpiece on the machine k ijk For the purpose of determining the process conditions, if the j-th process of the i-th workpiece is processed on machine k, x ijk =1, otherwise x ijk =0。
Preferably, in step S3, the current population is rapidly ordered based on the Pareto dominant relationship, and the process of dividing the population into the collar-flying individual group and the left-and-right heel-flying group is as follows:
s3-1, sequencing all individuals in the population from small to large according to the first objective function value;
step S3-2, initializing a dominant layer of an individual with the smallest first objective function value in the population as a largest dominant layer of the population, wherein the largest dominant layer maxfno=1;
s3-3, sequentially processing the following other individuals, and if the second objective function value of the current individual is smaller than or equal to the second objective function value of the previous individual, the dominant layer of the current individual is MaxFNo, and the value of the maximum dominant layer MaxFNo of the population is kept unchanged; if the second objective function value of the current individual is greater than the second objective function value of the previous individual, the dominant layer of the current individual is maxfno=maxfno+1, and the largest dominant layer of the population is updated; according to the method, all individuals in the population are subjected to Pareto non-dominant sorting;
And S3-4, counting the number of MaxFNo=1 individuals according to the result of Pareto non-dominant sorting, if the number is smaller than or equal to the maximum-scale leader_num of the pilot individuals, taking all the pilot individuals as the pilot individuals, otherwise, randomly selecting the leader_num individuals as the pilot individuals, dividing the pilot individuals into pilot groups, and dividing the rest individuals into left and right pilot groups.
Preferably, the step of evolving the flying subject in step S4 comprises: the method comprises the steps that a collar-flying individual obtains a child individual through intra-team crossing, and an excellent individual is selected from a mixed population of the child individual and a current collar-flying individual to serve as an evolved collar-flying individual, wherein the specific implementation process of intra-team crossing of the collar-flying individual is as follows:
S4A-1, selecting two adjacent flying-collar individuals as Parent individuals, and respectively marking as Parent1 and Parent2;
step S4A-2, selecting a random number uniformly distributed between 0 and 1, marking as rand, if rand is more than Pc, reselecting two adjacent individuals, and repeatedly executing step S4A-2; otherwise, executing the step S4A-3;
step S4A-3, randomly selecting half of all workpieces, respectively screening out the workpieces from two individuals of Parent1 and Parent2, and recording the gene positions of the workpieces in a chromosome;
Step S4A-4, the process numbers screened in the Parent1 are inserted into the recorded gene positions of the Parent2 in a sequence unchanged, and meanwhile, the processing machine codes and the processing time of the processes are also inserted into the corresponding positions of the Parent2 to obtain Child1;
step S4A-5, the process numbers screened in the Parent2 are inserted into the recorded gene positions of the Parent1 in a sequence unchanged, and meanwhile, the processing machine codes and the processing time of the processes are also inserted into the corresponding positions of the Parent1 to obtain Child2;
S4A-6, replacing Parent individuals Parent1 and Parent2 with Child individuals Child1 and Child2 respectively, and finishing the cross operation of the current flying individuals;
and the cross operation of all the flying-collar individuals is finished in the mode.
Preferably, in step S4, the left and right flying individuals sequentially evolve to complete the evolution through neighborhood searching, and the specific implementation process is as follows:
step S4B-1, randomly selecting x processes belonging to different workpieces, wherein any one of x=2, 3 and 4 is arranged completely to obtain x-! Species different sequences;
step S4B-2, recording the gene position of the current step x in the individual, and recording the above-mentioned x-! The seed sequence is inserted into these positions resulting in x-! A new individual;
Step S4B-3, randomly selecting one processing machine from all the working procedures for each new individual, replacing the processing machine with another processing machine, and if only one processing machine exists in the selected working procedures, not changing the individual;
step S4B-4, x ≡ to be obtained! Storing the individual neighborhood individuals into a neighborhood population, and returning to the step S4B-1 if the number of the individuals in the neighborhood population is smaller than neighbor_size-share_size at the moment; otherwise, executing the step S4B-5;
step S4B-5, mixing the neighborhood individuals with the sharing solution, calculating two objective function values of all individuals, calculating the fitness value Z of each individual according to the formula Z=eXC+ (1-e) x W, and selecting the individual with the smallest fitness value to replace the current follow-up individual, wherein e represents the weight of the minimum total finishing time target C accounting for all targets;
step S4B-6, randomly selecting the share_size individuals from the rest individuals to be used as sharing solutions.
Preferably, in step S4, the left-side heel-fly individual and the right-side heel-fly individual perform an evolution step of crossing between teams according to the crossing probability;
step S4C-1, selecting two individuals with the same sorting positions in the left and right flying individuals as Parent individuals, and respectively marking the two individuals as Parent1 and Parent2;
Step S4C-2, randomly selecting half of all workpieces, respectively screening out the workpieces from two individuals of Parent1 and Parent2, and recording the gene positions of the workpieces in a chromosome;
step S4C-3, the process numbers screened in the Parent1 are inserted into the recorded gene positions of the Parent2 in a sequence unchanged, and meanwhile, the processing machine codes and the processing time of the processes are also inserted into the corresponding positions of the Parent2 to obtain Child1;
step S4C-4, the process numbers screened in the Parent2 are inserted into the recorded gene positions of the Parent1 in a sequence unchanged, and meanwhile, the processing machine codes and the processing time of the processes are also inserted into the corresponding positions of the Parent1 to obtain Child2;
S4C-5, replacing Parent individuals Parent1 and Parent2 with Child individuals Child1 and Child2 respectively;
and the cross operation of all the flying-following individuals is completed in the mode.
Preferably, in step S6, the process of mutating the current population according to the mutation probability is as follows:
step S6-1, wherein the selected number of steps x=2;
s6-2, selecting an individual which is not mutated in the current population, selecting a random number which is uniformly distributed between 0 and 1 and is recorded as rand, selecting the next individual if rand is more than Pm, and repeating the step S6-2, otherwise, entering the step S6-3;
Step S6-3, randomly selecting x working procedures belonging to different workpieces, and performing full arrangement to obtain x-! Species different sequences;
step S6-4, recording the gene position of the current X procedures in the individual, and writing the X-! The seed sequence is inserted into these positions resulting in x-! Calculating fitness value Z of each individual according to the formula Z=e×C+ (1-e) ×W, and selecting the most excellent individual as the variant individual to store in the variant population;
step S6-5, randomly selecting one machine code part of the variant individual from all working procedures, replacing the machining machine with another machining machine, and if only one machining machine is selected in the selected working procedure, not changing the individual;
step S6-6, after the mutation of all individuals is finished in the mode, making x=x+1, and if x is less than or equal to 4, returning to the step S6-2; otherwise, the mutation is ended.
Preferably, in step S7, the process of updating the collar-flying individual group by selecting the excellent individual from the variant individual and the current population is as follows:
s7-1, recording the number of individuals in the current collar-flying individual group as num, combining the variant population with the current collar-flying individual group, and calculating objective function values of all the individuals;
Step S7-2, according to the objective function value, performing Pareto non-dominant ranking on the individual, and enabling the dominant layer a=1;
s7-3, storing all individuals distributed on the a-th layer dominating layer into a new flying-collar individual group, and recording the number of individuals in the new flying-collar individual group as num_new at the moment;
step S7-4, if num_new < num, let a=a+1, return to step S7-3;
step S7-5, calculating the crowding distances of all individuals on the layer a dominating layer according to the following formula:
the individuals on the dominant layer are selected according to the sequence from the big crowded distance to the small crowded distance and stored into the new flying-collar individual group until the number of the new flying-collar individuals is equal to the number of the original flying-collar individuals, namely num_new=num;
wherein I [ q, v]Indicating that after all individuals on the a-th dominating layer are arranged in ascending order according to the v-th target value, the q-th individuals are ranked; f (f) v (. Cndot.) represents the v-th objective function value of the subject;a maximum value representing the v-th objective function value of all individuals on the a-th dominance layer; />A minimum value representing the v objective function value of all individuals on the a-th dominance layer; cd (cd) v (. Cndot.) represents the crowding distance of the individual on the v-th objective, with the objective function value at v=1, 2 being the maximum finishing time objective function value and the machine total load objective function value, respectively.
The invention has the beneficial effects that: the method can consider the sequence limitation of working procedure processing, the limitation of processing machine feasibility and the like, firstly, a three-layer coding mathematical model is established, a mixed initialization strategy is designed to generate an initial population, then a new scheduling scheme is generated through cross operation in a flying-capturing individual team, cross operation between left and right flying-capturing individual teams and variation operation of individuals in the teams, a fast ordering method based on Pareto dominant relationship is adopted to select excellent individuals, and the strategy is circulated until the algorithm is finished, so that the optimal processing scheme is obtained. The method is an improved migration bird optimization algorithm aiming at multiple targets, the collar flying body group is used for replacing the collar flying body, the trade-off relation of the multiple targets can be well reflected, the accuracy of searching the optimal solution is improved, and therefore the flexible job shop scheduling method capable of simultaneously minimizing the total processing time and the total load of the machine is obtained, and the efficiency and the reliability of the shop production and processing are improved.
Drawings
FIG. 1 is a flow chart of an algorithm of the present invention;
FIG. 2 is a mathematical model of three coding of chromosome layers for an individual of the dataset Kacem 1;
FIG. 3 is a schematic diagram of a hybrid initialization strategy of the present invention; wherein FIG. 3 (a) is an initialization strategy for chromosome process coding, and FIG. 3 (b) is an initialization strategy for chromosome machine coding and time coding;
FIG. 4 is a schematic diagram of the cross-fusion process of the present invention; wherein fig. 4 (a) is a chromosome procedure code crossover example, and fig. 4 (b) is a chromosome machine code crossover example;
FIG. 5 is a flow chart of the subject invention's evolution;
FIG. 6 is a flow chart of the evolution of the fly-by-fly individual of the present invention;
FIG. 7 is a schematic diagram of the variation process of the present invention; wherein fig. 7 (a) is an example of a chromosomal process coding variation, and fig. 7 (b) is an example of a chromosomal machine coding variation;
FIG. 8 is a flow chart of an individual update of the present invention;
FIG. 9 is a Gantt chart of a solution of the present invention for a 4×5 example;
FIG. 10 is a Gantt chart of a solution of 10×10 examples of the present invention;
FIG. 11 is a Gantt chart of an example of solving 15X 10 according to the present invention.
Detailed Description
The invention provides a multi-target job shop scheduling method based on a migration bird swarm algorithm and cross fusion, and belongs to a job shop scheduling technology. For the scheduling problem of a flexible job shop with the minimum maximum finishing time and the minimum total machine load as optimization targets, the scheme firstly establishes a three-layer coding mathematical model, designs a mixed initialization strategy to generate an initial population, then generates a new scheduling scheme through cross operation in a flying-capturing individual team, cross operation between left and right flying-capturing individual teams and variation operation of individuals in the teams, adopts a quick ordering method based on Pareto dominant relation to select excellent individuals, and circulates the strategy until the algorithm is finished to obtain an optimal processing scheme. The method can improve the accuracy of searching the optimal solution by the algorithm, and obtain a higher-quality scheduling scheme, thereby improving the efficiency and reliability of workshop production and processing.
The first embodiment is as follows: the following describes, with reference to fig. 1 to 11, a multi-objective flexible job shop scheduling method based on a migration bird swarm algorithm and cross fusion according to the present embodiment, the method including the steps of:
step S1: inputting production and processing data to construct a data set, and initializing parameters;
flexible job shop scheduling problems can be described as: n workpieces J 1 ,J 2 ,...J n To be arranged in M machines M 1 ,M 2 ,...M m Performing upper machining, wherein each workpiece comprises a random number of working procedures, FJSP is solved to select a machining machine for each working procedure, and the optimal machining sequence and initial machining time of the working procedures on each machine are determinedAnd the total time for processing all the common workpieces is minimized, and the total load of the machine is minimized.
The input production and processing data comprise: the working procedures can be selected to be the processing machine and the processing time of the working procedures on different machines; the initialization parameters include: iteration times MAXGEN, initial population size SizePop, inner loop times G, pilot population maximum size letters_num, neighborhood size neighbor_size, shared solution size share_size, variant individual number G1, cross individual number G2 and weight e for minimizing total finishing time target C to occupy all targets.
The production process constraint conditions include:
(1) The start and finish times of all procedures must be non-negative;
(2) Any working procedure of the workpiece can be started after the previous working procedure is finished;
(3) Any one workpiece can only be processed by one machine at the same time, and one machine can only process one workpiece at the same time;
(4) The processing sequence exists among different working procedures of the same workpiece, and the working procedures cannot be reversed;
(5) The transport time of the workpiece between different machines is negligible;
(6) All the workpieces can be machined at the moment zero, all the machines can be started at the moment zero, and all the machines can be used all the time during production operation.
Step S2: establishing a chromosome three-layer coding mathematical model according to the data set; the three-layer coding mathematical model comprises information such as procedure sequencing, processing machine, processing time and the like, and specifically comprises the following steps:
the first layer is a process coding gene, the number of the workpieces is adopted to represent the process of the workpiece to be processed, and the number of the workpiece is equal to the total number of the process of the workpiece; compiling according to the sequence of the serial numbers of the workpieces in the chromosomes, namely scanning the chromosomes from left to right, wherein the serial numbers of the workpieces appearing at the r-th time represent the r-th working procedure of the workpieces;
The second layer is a machine coding gene, and the number of the machine is used for representing optional processing machines of each procedure;
the third layer is a time coding gene: characterizing the processing time of the process on different machines;
the process coding part gene, the machine coding part gene and the time coding part gene form a chromosome together;
the strategy for generating the initial population by adopting the mixed initialization strategy is as follows:
aiming at the process coding part genes and the machine coding part genes of the chromosome, respectively adopting a residual process minimum strategy and a processing time minimum strategy to generate individuals accounting for 20% of the initial population scale;
and generating the residual individuals of the initial population by adopting a random strategy aiming at the process coding part genes and the machine coding part genes of the chromosome.
When the model is initialized and established, a mixed initialization strategy is adopted to generate an initial population, and the objective function value of individuals in the initial population is calculated;
for a production example involving a total_op_num procedure, the length of the chromosome of the mathematical model established is 3×total_op_num. Taking the data set Kacem1 as an example, the processing information is shown in Table 1, and the data set comprises 4 workpieces J 1 ,J 2 ,J 3 ,J 4 There were 10 steps in total, so the chromosome length was 30. Corresponding to the first layer of work J, a mathematical model can be built as shown in FIG. 2 1 The process of (1) is represented by the number "1", and the number "1" of the work is represented by the number "J" of the work three times 1 The total number of steps is 3, respectively is O 11 、O 12 、O 13 The first appearance number "1" indicates the workpiece J 1 The second occurrence of sequence number "1" indicates the work J 1 The third occurrence of sequence number "1" indicates the work J 1 In the 3 rd step, the compiling mode of other workpieces and the workpiece J 1 Same, work J 1 Is the first procedure O of (2) 11 In machine M 1 The upper processing time is 2 minutes, the workpiece J 3 The second step O of (2) 32 In machine M 2 The processing time is 1 minute.
TABLE 1
For the process coding part of the chromosome, a strategy of minimum residual process is adopted, namely, a workpiece with the maximum number of unprocessed processes is selected from the workpieces which are not processed currently, and if a plurality of workpieces meet the condition at the same time, one workpiece is selected randomly from the workpieces. Taking the data set Kacem1 as an example, an initial individual process code, workpiece J, can be generated according to the steps shown in FIG. 3 1 Comprises 3 raw working procedures, and a workpiece J 2 Comprises 3 raw working procedures, and a workpiece J 3 Comprises 4 raw working procedures, and a workpiece J 4 Comprises 2 raw working procedures, wherein the workpiece with the largest raw working procedure number is J 3 Writing the workpiece number '3' into the first chromosome of the process coding part; at this time workpiece J 1 Comprises 3 raw working procedures, and a workpiece J 2 Comprises 3 raw working procedures, and a workpiece J 3 Comprises 3 raw working procedures, and a workpiece J 4 Comprises 2 raw working procedures, wherein the workpiece with the largest raw working procedure number is J 1 、J 2 、J 3 Randomly selecting one of the three workpieces, if the workpiece J is selected 2 Writing the workpiece number "2" thereof into the second chromosome of the process coding part; at this time workpiece J 1 Comprises 3 raw working procedures, and a workpiece J 2 Comprises 2 raw working procedures, a workpiece J 3 Comprises 3 raw working procedures, and a workpiece J 4 Comprises 2 raw working procedures, wherein the workpiece with the largest raw working procedure number is J 1 、J 3 Randomly selecting one of the two workpieces, if the workpiece J is selected 1 And writing the workpiece number '1' into a third chromosome of the process coding part, and the like, so as to finish the initialization of the process coding.
For the machine coding part of the chromosome, a strategy of shortest processing time is adopted, namely, one machine with minimum processing time is selected from all machines capable of processing the current working procedure, and if a plurality of machines meet the condition at the same time, the machine is selected randomly One. Taking the data set Kacem1 as an example, if a certain initialization individual process code is 3 2 1 3 4 1 3 2 2 1 4 3, a set of machine codes can be generated for it according to the steps shown in fig. 3, the first process of the individual being the work J 3 Is the first procedure O of (2) 31 For this process, the optional processing machine has M 1 、M 2 、M 3 、M 4 、M 5 The processing time is respectively 9 minutes, 8 minutes, 6 minutes, 7 minutes and 9 minutes, wherein the shortest processing machine is M 3 Thus, the machine number "3" is written into the first gene encoded by the machine, and the machine is processed with the first gene encoded by the time "6"; the second procedure of the individual is that the workpiece J 2 Is the first procedure O of (2) 21 For this process, the optional processing machine has M 1 、M 2 、M 3 、M 4 、M 5 The processing time is respectively 2 minutes, 5 minutes, 4 minutes, 7 minutes and 8 minutes, wherein the shortest processing machine is M 1 Thus, the machine number "1" is written into the machine encoded second gene and its processing time "2" is written into the time encoded second gene; the third working procedure of the individual is a workpiece J 1 Is the first procedure O of (2) 11 For this process, the optional processing machine has M 1 、M 2 、M 3 、M 4 、M 5 The processing time is respectively 2 minutes, 5 minutes, 4 minutes, 1 minute and 2 minutes, wherein the shortest processing machine is M 4 Thus, the machine number "4" is written into the machine-encoded third gene, and the machine-time "1" is written into the time-encoded third gene; and the like, the initialization of the machine coding and the time coding is completed.
The objective function values of the individuals in the initial population comprise two parts, namely the maximum finishing time and the total machine load, the optimization targets are the maximum finishing time and the minimum total machine load, and the two objective function values are obtained according to the following formula:
the first objective function value is a maximum finishing time objective function value:
C=min{max(C i ) 1.ltoreq.i.ltoreq.n, where C i Indicating the finishing time of the ith workpiece, wherein n is the number of the workpieces to be processed;
the second objective function value is a machine total load objective function value:
wherein h is i Represents the number of processes of the ith workpiece, m ij The number of machines for the jth process that can process the ith workpiece, t ijk X represents the processing time of the jth process of the ith workpiece on the machine k ijk For the purpose of determining the process conditions, if the j-th process of the i-th workpiece is processed on machine k, x ijk =1, otherwise x ijk =0。
The objective function values referred to later are all processed in this way.
Step S3: based on Pareto (Pareto) dominant relationship, the current population is rapidly ordered, and the population is divided into a collar flying individual group and a left heel flying group and a right heel flying group;
Based on Pareto dominant relationship, the current population is rapidly ordered, and the process of dividing the population into a collar flying individual group and a left and right heel flying group is as follows:
s3-1, sequencing all individuals in the population from small to large according to the first objective function value;
step S3-2, initializing a dominant layer of an individual with the smallest first objective function value in the population as a largest dominant layer of the population, wherein the largest dominant layer maxfno=1;
s3-3, sequentially processing the following other individuals, and if the second objective function value of the current individual is smaller than or equal to the second objective function value of the previous individual, the dominant layer of the current individual is MaxFNo, and the value of the maximum dominant layer MaxFNo of the population is kept unchanged; if the second objective function value of the current individual is greater than the second objective function value of the previous individual, the dominant layer of the current individual is maxfno=maxfno+1, and the largest dominant layer of the population is updated; according to the method, all individuals in the population are subjected to Pareto non-dominant sorting;
and S3-4, counting the number of MaxFNo=1 individuals according to the result of Pareto non-dominant sorting, if the number is smaller than or equal to the maximum-scale leader_num of the pilot individuals, taking all the pilot individuals as the pilot individuals, otherwise, randomly selecting the leader_num individuals as the pilot individuals, dividing the pilot individuals into pilot groups, and dividing the rest individuals into left and right pilot groups.
Step S4: the current population is evolved, and the evolution steps are as follows:
a step of flying the individual evolution;
sequentially evolving left and right flying individuals;
the left flying following individual and the right flying following individual carry out the evolution step of crossing between teams according to the crossing probability;
the step of evolving the flying-collar individual in the step S4: the method comprises the steps that a collar-flying individual obtains a child individual through intra-team crossing, and an excellent individual is selected from a mixed population of the child individual and a current collar-flying individual to serve as an evolved collar-flying individual, wherein the specific implementation process of intra-team crossing of the collar-flying individual is as follows:
S4A-1, selecting two adjacent flying-collar individuals as Parent individuals, and respectively marking as Parent1 and Parent2;
step S4A-2, selecting a random number uniformly distributed between 0 and 1, marking as rand, if rand is more than Pc, reselecting two adjacent individuals, and repeatedly executing step S4A-2; otherwise, executing the step S4A-3;
step S4A-3, randomly selecting half of all workpieces, respectively screening out the workpieces from two individuals of Parent1 and Parent2, and recording the gene positions of the workpieces in a chromosome;
step S4A-4, the process numbers screened in the Parent1 are inserted into the recorded gene positions of the Parent2 in a sequence unchanged, and meanwhile, the processing machine codes and the processing time of the processes are also inserted into the corresponding positions of the Parent2 to obtain Child1;
Step S4A-5, the process numbers screened in the Parent2 are inserted into the recorded gene positions of the Parent1 in a sequence unchanged, and meanwhile, the processing machine codes and the processing time of the processes are also inserted into the corresponding positions of the Parent1 to obtain Child2;
S4A-6, replacing Parent individuals Parent1 and Parent2 with Child individuals Child1 and Child2 respectively, and finishing the cross operation of the current flying individuals;
and the cross operation of all the flying-collar individuals is finished in the mode.
For example, as shown in fig. 4, if the process code of part 1 is 1 2 4 3 2 4 1 3 3 1 2 3,Parent2 and the process code is 3 1 2 3 4 2 3 1 3 2 4 1, the randomly selected workpiece is J 1 And J 3 Then the part 1 belongs to the workpiece J 1 And J 3 Work J is a part of the process and Parent2 1 And J 3 The process of (2) is exchanged under the condition of keeping the original sequence, the process code of the Child individual Child1 is 1 2 4 1 2 4 3 3 1 3 2 1, the process code of the individual Child2 is 1 3 2 1 4 2 3 3 1 2 4 3, and the machine codes and the process codes are intersected in a one-to-one correspondence.
As shown in fig. 5, after the internal crossover of the flying-collar individual team is completed, the current flying-collar individual is mixed with the child individuals obtained by the crossover, pareto non-dominant sorting is performed, the number of individuals distributed on the non-dominant layer is counted, if the number is smaller than or equal to the maximum-scale letters_num of the flying-collar individuals, all the individuals are taken as flying-collar individuals, otherwise, the letters_num individuals are randomly selected as flying-collar individuals.
And randomly selecting the share_size individuals from the rest individuals to be used as sharing solutions.
Step S4, the left and right flying following individuals sequentially evolve and finish evolution through neighborhood searching, and neighbor_size_size neighborhood individuals are generated around the current flying following individuals by adopting a neighborhood searching strategy; combining the sharing solution with a neighborhood individual generated by the follow-up flying individual, and calculating two objective function values; selecting an optimal individual to replace a current follow-up individual through an objective function value weighting strategy, and selecting share_size excellent individuals from the rest individuals as sharing solutions;
the specific implementation process is as follows:
step S4B-1, randomly selecting x processes belonging to different workpieces, wherein any one of x=2, 3 and 4 is arranged completely to obtain x-! Species different sequences;
step S4B-2, recording the gene position of the current step x in the individual, and recording the above-mentioned x-! The seed sequence is inserted into these positions resulting in x-! A new individual;
step S4B-3, randomly selecting one processing machine from all the working procedures for each new individual, replacing the processing machine with another processing machine, and if only one processing machine exists in the selected working procedures, not changing the individual;
step S4B-4, x ≡ to be obtained! Storing the individual neighborhood individuals into a neighborhood population, and returning to the step S4B-1 if the number of the individuals in the neighborhood population is smaller than neighbor_size-share_size at the moment; otherwise, executing the step S4B-5;
Step S4B-5, mixing the neighborhood individuals with the sharing solution, calculating two objective function values of all individuals, calculating the fitness value Z of each individual according to the formula Z=eXC+ (1-e) x W, and selecting the individual with the smallest fitness value to replace the current follow-up individual, wherein e represents the weight of the minimum total finishing time target C accounting for all targets;
step S4B-6, randomly selecting the share_size individuals from the rest individuals to be used as sharing solutions.
In the step S4, the left flying following person and the right flying following person carry out the evolution step of crossing between teams according to the crossing probability;
step S4C-1, selecting two individuals with the same sorting positions in the left and right flying individuals as Parent individuals, and respectively marking the two individuals as Parent1 and Parent2;
step S4C-2, randomly selecting half of all workpieces, respectively screening out the workpieces from two individuals of Parent1 and Parent2, and recording the gene positions of the workpieces in a chromosome;
step S4C-3, the process numbers screened in the Parent1 are inserted into the recorded gene positions of the Parent2 in a sequence unchanged, and meanwhile, the processing machine codes and the processing time of the processes are also inserted into the corresponding positions of the Parent2 to obtain Child1;
Step S4C-4, the process numbers screened in the Parent2 are inserted into the recorded gene positions of the Parent1 in a sequence unchanged, and meanwhile, the processing machine codes and the processing time of the processes are also inserted into the corresponding positions of the Parent1 to obtain Child2;
S4C-5, replacing Parent individuals Parent1 and Parent2 with Child individuals Child1 and Child2 respectively;
and the cross operation of all the flying-following individuals is completed in the mode.
Step S5: judging whether the population evolution times meet the requirement of the internal circulation times in the initialization parameters defined in the step S1, if so, executing the step S6; if not, returning to the execution step S4;
and (4) ending the evolution when the evolution times G in the step (4) are equal to the internal circulation times G in the initialization parameters.
Step S6: the current population is mutated according to mutation probability; all individuals in the current population are mutated according to mutation probability, and the mutation is implemented as follows:
step S6-1, wherein the selected number of steps x=2;
s6-2, selecting an individual which is not mutated in the current population, selecting a random number which is uniformly distributed between 0 and 1 and is recorded as rand, selecting the next individual if rand is more than Pm, and repeating the step S6-2, otherwise, entering the step S6-3;
Step S6-3, randomly selecting x working procedures belonging to different workpieces, and performing full arrangement to obtain x-! Species different sequences;
step S6-4, recording the gene position of the current X procedures in the individual, and writing the X-! The seed sequence is inserted into these positions resulting in x-! Calculating fitness value Z of each individual according to the formula Z=e×C+ (1-e) ×W, and selecting the most excellent individual as the variant individual to store in the variant population;
step S6-5, randomly selecting one machine code part of the variant individual from all working procedures, replacing the machining machine with another machining machine, and if only one machining machine is selected in the selected working procedure, not changing the individual;
step S6-6, after the mutation of all individuals is finished in the mode, making x=x+1, and if x is less than or equal to 4, returning to the step S6-2; otherwise, the mutation is ended.
For example, as shown in FIG. 7, the original individual process code is 1 2 4 3 2 4 1 3 3 1 2 3, and the randomly selected 3 processes are O 11 ,O 42 ,O 34 Respectively belong to the workpieces J 1 ,J 4 ,J 3 Therefore, the process numbers 1, 4 and 3 are fully arranged to obtain 6 ordering modes in the figure, and O in the original individual process codes is replaced respectively 11 ,O 42 ,O 34 And 6 new individuals are obtained, and finally, the optimal individual in the 6 new individuals is selected through the fitness value.
If the optimal individual machine code is 5 1 4 5 3 1 4 2 2 1 4 3, the randomly selected procedure is O 31 The original processing machine is M according to chromosome 5 As can be seen from Table 1, the alternative processing machine for this process has M 1 ,M 2 ,M 3 ,M 4 ,M 5 From the surplus process M 1 ,M 2 ,M 3 ,M 4 One of which is randomly selected, e.g. M 1 The machine code variation is 5 1 4 1 3 1 4 2 2 1 4 3.
Step S7: selecting excellent individuals from variant individuals and current populations to update the collar-flying individual population; from the variant population and the current population, excellent individuals are selected to update the collar-flying individual group, as shown in fig. 8, and the specific implementation process is as follows:
s7-1, recording the number of individuals in the current collar-flying individual group as num, combining the variant population with the current collar-flying individual group, and calculating objective function values of all the individuals;
step S7-2, according to the objective function value, performing Pareto non-dominant ranking on the individual, and enabling the dominant layer a=1;
the specific process of Pareto non-dominant ordering can be seen in step 3.
S7-3, storing all individuals distributed on the a-th layer dominating layer into a new flying-collar individual group, and recording the number of individuals in the new flying-collar individual group as num_new at the moment;
step S7-4, if num_new < num, let a=a+1, return to step S7-3;
Step S7-5, calculating the crowding distances of all individuals on the layer a dominating layer according to the following formula:
the individuals on the dominant layer are selected according to the sequence from the big crowded distance to the small crowded distance and stored into the new flying-collar individual group until the number of the new flying-collar individuals is equal to the number of the original flying-collar individuals, namely num_new=num;
wherein I [ q, v]Indicating that after all individuals on the a-th dominating layer are arranged in ascending order according to the v-th target value, the q-th individuals are ranked; f (f) v (. Cndot.) represents the v-th objective function value of the subject;a maximum value representing the v-th objective function value of all individuals on the a-th dominance layer; />A minimum value representing the v objective function value of all individuals on the a-th dominance layer; cd (cd) v (. Cndot.) represents the crowding distance of the individual on the v-th objective, with the objective function value at v=1, 2 being the maximum finishing time objective function value and the machine total load objective function value, respectively.
Step S8: judging whether the iteration times meet the termination conditions given by the initialization parameters in the step S1, if so, outputting the current solution as an optimal solution and outputting a workshop scheduling scheme; if not, returning to the execution of the steps S4 to S7 for iterating again.
In order to verify the feasibility of the multi-target job shop scheduling method based on the migration shoal algorithm and the cross fusion, the invention performs experiments on Kacem examples with the production scale of 4 multiplied by 5, 10 multiplied by 10 and 15 multiplied by 10, and compares and analyzes the experimental results with a mixed artificial bee colony algorithm (HTABC) and a non-dominant ranking genetic algorithm (HMO-NSGAII) based on reinforcement learning.
The relevant parameters for setting MOMBO/CF are as follows: maximum iteration number maxgen=50, population size sizepop=200, minimum total completion time target C weight of all targets e=0.5, neighborhood size neighbor_size=30, shared solution size share_size=15, inner loop number g=5, variant individual number g1=40, cross individual number g2=60. The data for the maximum run-out time and total machine load for each example solved by the three algorithms are shown in Table 2, and the workshop scheduling schemes corresponding to the MOMBO/CF algorithm are shown in the Gantt charts of FIGS. 9-11.
TABLE 2
As shown in Table 2, compared with HTABC and HMB-NSGA II, the MOMBO/CF algorithm provided by the invention has more outstanding scheduling results from the point of view of target values, and has more excellent comprehensive performance, better optimizing effect and higher stability along with the expansion of production scale. In conclusion, the multi-target job shop scheduling method based on the migration bird swarm algorithm and the cross fusion disclosed by the invention can reduce the machine load while shortening the construction period, thereby ensuring the production efficiency and prolonging the service life of the machine.

Claims (10)

1. The multi-target flexible job shop scheduling method based on the migration bird swarm algorithm and the cross fusion is characterized by comprising the following steps:
Step S1: inputting production and processing data to construct a data set, and initializing parameters;
step S2: establishing a chromosome three-layer coding mathematical model according to the data set;
when the model is initialized and established, a mixed initialization strategy is adopted to generate an initial population, and the objective function value of individuals in the initial population is calculated;
step S3: based on Pareto dominant relations, the current population is rapidly ordered, and the population is divided into a collar flying individual group and a left heel flying group and a right heel flying group;
step S4: the current population is evolved, and the evolution steps are as follows:
a step of flying the individual evolution;
sequentially evolving left and right flying individuals;
the left flying following individual and the right flying following individual carry out the evolution step of crossing between teams according to the crossing probability;
step S5: judging whether the population evolution times meet the requirement of the internal circulation times in the initialization parameters defined in the step S1, if so, executing the step S6; if not, returning to the execution step S4;
step S6: the current population is mutated according to mutation probability;
step S7: selecting excellent individuals from variant individuals and current populations to update the collar-flying individual population;
step S8: judging whether the iteration times meet the termination conditions given by the initialization parameters in the step S1, if so, outputting the current solution as an optimal solution and outputting a workshop scheduling scheme; if not, returning to the execution of the steps S4 to S7 for iterating again.
2. The migration bird swarm algorithm and cross fusion-based multi-objective flexible job shop scheduling method according to claim 1, wherein the production and processing data input in step S1 comprises: the working procedures can be selected to be the processing machine and the processing time of the working procedures on different machines; the initialization parameters include: iteration times MAXGEN, initial population size SizePop, inner loop times G, pilot population maximum size letters_num, neighborhood size neighbor_size, shared solution size share_size, variant individual number G1, cross individual number G2 and weight e for minimizing total finishing time target C to occupy all targets.
3. The migration bird swarm algorithm and cross fusion-based multi-objective flexible job shop scheduling method according to claim 2, wherein the three-layer coding mathematical model of the chromosome in step S2 is:
the first layer is a process coding gene, the number of the workpieces is adopted to represent the process of the workpiece to be processed, and the number of the workpiece is equal to the total number of the process of the workpiece; compiling according to the sequence of the serial numbers of the workpieces in the chromosomes, namely scanning the chromosomes from left to right, wherein the serial numbers of the workpieces appearing at the r-th time represent the r-th working procedure of the workpieces;
The second layer is a machine coding gene, and the number of the machine is used for representing optional processing machines of each procedure;
the third layer is a time coding gene: characterizing the processing time of the process on different machines;
the process coding part gene, the machine coding part gene and the time coding part gene form a chromosome together;
the strategy for generating the initial population by adopting the mixed initialization strategy is as follows:
aiming at the process coding part genes and the machine coding part genes of the chromosome, respectively adopting a residual process minimum strategy and a processing time minimum strategy to generate individuals accounting for 20% of the initial population scale;
and generating the residual individuals of the initial population by adopting a random strategy aiming at the process coding part genes and the machine coding part genes of the chromosome.
4. A multi-objective flexible job shop scheduling method based on a migration bird swarm algorithm and cross fusion according to claim 3, wherein the objective function values of the individuals in the initial population comprise maximum finishing time and total machine load, the optimization objective is the maximum finishing time minimum and the total machine load minimum, and the two objective function values are obtained according to the following formula:
the first objective function value is a maximum finishing time objective function value:
C=min{max(C i ) 1.ltoreq.i.ltoreq.n, where C i Indicating the finishing time of the ith workpiece, wherein n is the number of the workpieces to be processed;
the second objective function value is a machine total load objective function value:
wherein h is i Represents the number of processes of the ith workpiece, m ij The number of machines for the jth process that can process the ith workpiece, t ijk X represents the processing time of the jth process of the ith workpiece on the machine k ijk For the purpose of determining the process conditions, if the j-th process of the i-th workpiece is processed on machine k, x ijk =1, otherwise x ijk =0。
5. The multi-target flexible job shop scheduling method based on the migration bird swarm algorithm and the cross fusion according to claim 4, wherein in the step S3, the current population is rapidly ordered based on the Pareto dominant relationship, and the process of dividing the population into a collar flying individual group and a left and right heel flying group is as follows:
s3-1, sequencing all individuals in the population from small to large according to the first objective function value;
step S3-2, initializing a dominant layer of an individual with the smallest first objective function value in the population as a largest dominant layer of the population, wherein the largest dominant layer maxfno=1;
s3-3, sequentially processing the following other individuals, and if the second objective function value of the current individual is smaller than or equal to the second objective function value of the previous individual, the dominant layer of the current individual is MaxFNo, and the value of the maximum dominant layer MaxFNo of the population is kept unchanged; if the second objective function value of the current individual is greater than the second objective function value of the previous individual, the dominant layer of the current individual is maxfno=maxfno+1, and the largest dominant layer of the population is updated; according to the method, all individuals in the population are subjected to Pareto non-dominant sorting;
And S3-4, counting the number of MaxFNo=1 individuals according to the result of Pareto non-dominant sorting, if the number is smaller than or equal to the maximum-scale leader_num of the pilot individuals, taking all the pilot individuals as the pilot individuals, otherwise, randomly selecting the leader_num individuals as the pilot individuals, dividing the pilot individuals into pilot groups, and dividing the rest individuals into left and right pilot groups.
6. The multi-objective flexible job shop scheduling method based on the migration bird swarm algorithm and the cross fusion according to claim 5, wherein the step of evolving the flying target in step S4 is as follows: the method comprises the steps that a collar-flying individual obtains a child individual through intra-team crossing, and an excellent individual is selected from a mixed population of the child individual and a current collar-flying individual to serve as an evolved collar-flying individual, wherein the specific implementation process of intra-team crossing of the collar-flying individual is as follows:
S4A-1, selecting two adjacent flying-collar individuals as Parent individuals, and respectively marking as Parent1 and Parent2;
step S4A-2, selecting a random number uniformly distributed between 0 and 1, marking as rand, if rand is more than Pc, reselecting two adjacent individuals, and repeatedly executing step S4A-2; otherwise, executing the step S4A-3;
step S4A-3, randomly selecting half of all workpieces, respectively screening out the workpieces from two individuals of Parent1 and Parent2, and recording the gene positions of the workpieces in a chromosome;
Step S4A-4, the process numbers screened in the Parent1 are inserted into the recorded gene positions of the Parent2 in a sequence unchanged, and meanwhile, the processing machine codes and the processing time of the processes are also inserted into the corresponding positions of the Parent2 to obtain Child1;
step S4A-5, the process numbers screened in the Parent2 are inserted into the recorded gene positions of the Parent1 in a sequence unchanged, and meanwhile, the processing machine codes and the processing time of the processes are also inserted into the corresponding positions of the Parent1 to obtain Child2;
S4A-6, replacing Parent individuals Parent1 and Parent2 with Child individuals Child1 and Child2 respectively, and finishing the cross operation of the current flying individuals;
and the cross operation of all the flying-collar individuals is finished in the mode.
7. The multi-target flexible job shop scheduling method based on the migration bird swarm algorithm and the cross fusion according to claim 6, wherein the left and right flying-following individuals in the step S4 sequentially evolve to finish the evolution through neighborhood search, and the specific implementation process is as follows:
step S4B-1, randomly selecting x processes belonging to different workpieces, wherein any one of x=2, 3 and 4 is arranged completely to obtain x-! Species different sequences;
Step S4B-2, recording the gene position of the current step x in the individual, and recording the above-mentioned x-! The seed sequence is inserted into these positions resulting in x-! A new individual;
step S4B-3, randomly selecting one processing machine from all the working procedures for each new individual, replacing the processing machine with another processing machine, and if only one processing machine exists in the selected working procedures, not changing the individual;
step S4B-4, x ≡ to be obtained! Storing the individual neighborhood individuals into a neighborhood population, and returning to the step S4B-1 if the number of the individuals in the neighborhood population is smaller than neighbor_size-share_size at the moment; otherwise, executing the step S4B-5;
step S4B-5, mixing the neighborhood individuals with the sharing solution, calculating two objective function values of all individuals, calculating the fitness value Z of each individual according to the formula Z=eXC+ (1-e) x W, and selecting the individual with the smallest fitness value to replace the current follow-up individual, wherein e represents the weight of the minimum total finishing time target C accounting for all targets;
step S4B-6, randomly selecting the share_size individuals from the rest individuals to be used as sharing solutions.
8. The multi-target flexible job shop scheduling method based on the migration bird swarm algorithm and the cross fusion according to claim 7, wherein in the step S4, the left side flying following individuals and the right side flying following individuals perform the evolution step of cross between teams according to the cross probability;
Step S4C-1, selecting two individuals with the same sorting positions in the left and right flying individuals as Parent individuals, and respectively marking the two individuals as Parent1 and Parent2;
step S4C-2, randomly selecting half of all workpieces, respectively screening out the workpieces from two individuals of Parent1 and Parent2, and recording the gene positions of the workpieces in a chromosome;
step S4C-3, the process numbers screened in the Parent1 are inserted into the recorded gene positions of the Parent2 in a sequence unchanged, and meanwhile, the processing machine codes and the processing time of the processes are also inserted into the corresponding positions of the Parent2 to obtain Child1;
step S4C-4, the process numbers screened in the Parent2 are inserted into the recorded gene positions of the Parent1 in a sequence unchanged, and meanwhile, the processing machine codes and the processing time of the processes are also inserted into the corresponding positions of the Parent1 to obtain Child2;
S4C-5, replacing Parent individuals Parent1 and Parent2 with Child individuals Child1 and Child2 respectively;
and the cross operation of all the flying-following individuals is completed in the mode.
9. The multi-objective flexible job shop scheduling method based on the migration bird swarm algorithm and the cross fusion according to claim 8, wherein the current population in the step S6 is mutated according to mutation probability by the following steps:
Step S6-1, wherein the selected number of steps x=2;
s6-2, selecting an individual which is not mutated in the current population, selecting a random number which is uniformly distributed between 0 and 1 and is recorded as rand, selecting the next individual if rand is more than Pm, and repeating the step S6-2, otherwise, entering the step S6-3;
step S6-3, randomly selecting x working procedures belonging to different workpieces, and performing full arrangement to obtain x-! Species different sequences;
step S6-4, recording the gene position of the current X procedures in the individual, and writing the X-! The seed sequence is inserted into these positions resulting in x-! Calculating fitness value Z of each individual according to the formula Z=e×C+ (1-e) ×W, and selecting the most excellent individual as the variant individual to store in the variant population;
step S6-5, randomly selecting one machine code part of the variant individual from all working procedures, replacing the machining machine with another machining machine, and if only one machining machine is selected in the selected working procedure, not changing the individual;
step S6-6, after the mutation of all individuals is finished in the mode, making x=x+1, and if x is less than or equal to 4, returning to the step S6-2; otherwise, the mutation is ended.
10. The multi-objective flexible job shop scheduling method based on the migration bird swarm algorithm and the cross fusion according to claim 9, wherein in the step S7, the process of updating the collar flying individual group by selecting the excellent individual from the variant individual and the current population is as follows:
S7-1, recording the number of individuals in the current collar-flying individual group as num, combining the variant population with the current collar-flying individual group, and calculating objective function values of all the individuals;
step S7-2, according to the objective function value, performing Pareto non-dominant ranking on the individual, and enabling the dominant layer a=1;
s7-3, storing all individuals distributed on the a-th layer dominating layer into a new flying-collar individual group, and recording the number of individuals in the new flying-collar individual group as num_new at the moment;
step S7-4, if num_new < num, let a=a+1, return to step S7-3;
step S7-5, calculating the crowding distances of all individuals on the layer a dominating layer according to the following formula:
the individuals on the dominant layer are selected according to the sequence from the big crowded distance to the small crowded distance and stored into the new flying-collar individual group until the number of the new flying-collar individuals is equal to the number of the original flying-collar individuals, namely num_new=num;
wherein I [ q, v]Indicating that after all individuals on the a-th dominating layer are arranged in ascending order according to the v-th target value, the q-th individuals are ranked; f (f) v (. Cndot.) represents the v-th objective function value of the subject;a maximum value representing the v-th objective function value of all individuals on the a-th dominance layer; />A minimum value representing the v objective function value of all individuals on the a-th dominance layer; cd (cd) v (·) The objective function values when v=1, 2, representing the crowding distance of the individual on the v-th objective, are the maximum finishing time objective function value and the machine total load objective function value, respectively.
CN202111116700.3A 2021-09-23 2021-09-23 Multi-target flexible job shop scheduling method based on migration bird swarm algorithm and cross fusion Active CN113792494B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111116700.3A CN113792494B (en) 2021-09-23 2021-09-23 Multi-target flexible job shop scheduling method based on migration bird swarm algorithm and cross fusion

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111116700.3A CN113792494B (en) 2021-09-23 2021-09-23 Multi-target flexible job shop scheduling method based on migration bird swarm algorithm and cross fusion

Publications (2)

Publication Number Publication Date
CN113792494A CN113792494A (en) 2021-12-14
CN113792494B true CN113792494B (en) 2023-11-17

Family

ID=79184234

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111116700.3A Active CN113792494B (en) 2021-09-23 2021-09-23 Multi-target flexible job shop scheduling method based on migration bird swarm algorithm and cross fusion

Country Status (1)

Country Link
CN (1) CN113792494B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114186749B (en) * 2021-12-16 2022-06-28 暨南大学 Flexible workshop scheduling method and model based on reinforcement learning and genetic algorithm

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110796355A (en) * 2019-10-22 2020-02-14 江苏金陵智造研究院有限公司 Flexible job shop scheduling method based on dynamic decoding mechanism
CN113034026A (en) * 2021-04-09 2021-06-25 大连东软信息学院 Q-learning and GA based multi-target flexible job shop scheduling self-learning method

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108320057B (en) * 2018-02-07 2021-06-18 江南大学 Flexible job shop scheduling method based on limited stable pairing strategy

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110796355A (en) * 2019-10-22 2020-02-14 江苏金陵智造研究院有限公司 Flexible job shop scheduling method based on dynamic decoding mechanism
CN113034026A (en) * 2021-04-09 2021-06-25 大连东软信息学院 Q-learning and GA based multi-target flexible job shop scheduling self-learning method

Also Published As

Publication number Publication date
CN113792494A (en) 2021-12-14

Similar Documents

Publication Publication Date Title
CN113034026B (en) Q-learning and GA-based multi-target flexible job shop scheduling self-learning method
CN101901425A (en) Flexible job shop scheduling method based on multi-species coevolution
CN112381273B (en) Multi-target job shop energy-saving optimization method based on U-NSGA-III algorithm
CN111401693B (en) Flexible workshop scheduling optimization method and system with robot transportation
CN113569483A (en) Method for solving multi-target flexible job shop scheduling based on artificial bee colony algorithm
CN113361860B (en) Flexible flow shop scheduling control method, medium and equipment considering fatigue degree
CN113792494B (en) Multi-target flexible job shop scheduling method based on migration bird swarm algorithm and cross fusion
CN110531716A (en) The method for solving low-carbon Job-Shop problem based on discrete whale algorithm
CN111738499A (en) Job shop batch scheduling method based on novel neighborhood structure
CN115796510A (en) Multi-target flexible job shop scheduling method based on improved variable neighborhood genetic algorithm
CN114021934A (en) Method for solving workshop energy-saving scheduling problem based on improved SPEA2
CN114266509A (en) Flexible job shop scheduling method for solving by random greedy initial population genetic algorithm
CN111814359B (en) Discrete manufacturing-oriented integrated workshop scheduling and assembly sequence planning method
CN116957177A (en) Flexible workshop production line planning method, system, equipment and medium
CN117075545A (en) Multi-target flexible job shop scheduling method, electronic equipment and medium
CN117148796A (en) Optimization method for solving scheduling problem of multi-target flexible job shop
CN112990716A (en) Dual-resource constraint flexible workshop scheduling and layout integrated optimization method and system
CN116820058A (en) Hydraulic cylinder process planning and scheduling integrated optimization method considering AGV constraint
CN116360355A (en) Method for solving workshop scheduling problem based on NSGA-III algorithm
CN114237166A (en) Method for solving multi-rotating-speed energy-saving scheduling problem based on improved SPEA2 algorithm
CN115470977A (en) Multi-target flexible job shop batch scheduling method based on empire competition algorithm
CN115392616A (en) Knowledge mining and genetic algorithm combined multi-target discrete workshop scheduling method
CN111105164B (en) Workshop scheduling method, device and equipment
CN115167294A (en) Multi-target parallel machine scheduling method for differentiated order complete delivery
CN110400073B (en) FSP method and system based on multi-direction convergence particle swarm optimization algorithm

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