[go: up one dir, main page]

CN110909787A - Method and system for multi-objective batch scheduling optimization based on clustering evolutionary algorithm - Google Patents

Method and system for multi-objective batch scheduling optimization based on clustering evolutionary algorithm Download PDF

Info

Publication number
CN110909787A
CN110909787A CN201911133581.5A CN201911133581A CN110909787A CN 110909787 A CN110909787 A CN 110909787A CN 201911133581 A CN201911133581 A CN 201911133581A CN 110909787 A CN110909787 A CN 110909787A
Authority
CN
China
Prior art keywords
population
batch
clustering
scheduling
current
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.)
Granted
Application number
CN201911133581.5A
Other languages
Chinese (zh)
Other versions
CN110909787B (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.)
Anhui University
Original Assignee
Anhui University
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 Anhui University filed Critical Anhui University
Priority to CN201911133581.5A priority Critical patent/CN110909787B/en
Publication of CN110909787A publication Critical patent/CN110909787A/en
Application granted granted Critical
Publication of CN110909787B publication Critical patent/CN110909787B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/232Non-hierarchical techniques
    • G06F18/2321Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
    • G06F18/23213Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/12Computing arrangements based on biological models using genetic models
    • G06N3/126Evolutionary algorithms, e.g. genetic algorithms or genetic programming
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/04Manufacturing
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/30Computing systems specially adapted for manufacturing

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Human Resources & Organizations (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Health & Medical Sciences (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Marketing (AREA)
  • General Engineering & Computer Science (AREA)
  • General Business, Economics & Management (AREA)
  • Evolutionary Computation (AREA)
  • Tourism & Hospitality (AREA)
  • Artificial Intelligence (AREA)
  • Biophysics (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Game Theory and Decision Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Development Economics (AREA)
  • Physiology (AREA)
  • Computing Systems (AREA)
  • Genetics & Genomics (AREA)
  • Biomedical Technology (AREA)
  • Computational Linguistics (AREA)
  • Educational Administration (AREA)
  • Molecular Biology (AREA)
  • Probability & Statistics with Applications (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Manufacturing & Machinery (AREA)
  • Primary Health Care (AREA)

Abstract

本发明提供了基于聚类的进化算法进行多目标批调度优化的方法,S1:初始化种群规模N、最大迭代次数MaxIteration和重组配对概率S,以及种群P、帕累托解集A,迭代次数t=1;S2:利用解码规则和局部优化计算种群目标值;S3:对目标值进行聚类;S4:基于聚类结果对种群P执行交叉变异生成子代种群Q,计算子代种群Q的目标值;S5:更新集合A,执行选择操作更新种群P,基于更新后的种群P更新重组配对概率S;S6:如果t<MaxIteration,t=t+1,跳转至S2,否则输出集合A。本发明还提供了用于多目标批调度的系统,本发明提供的基于聚类的进化算法进行多目标批调度优化的方法和系统的优点在于:为生产过程中的批调度问题提供了可靠的解决方案。The present invention provides a method for multi-objective batch scheduling optimization based on a clustering evolutionary algorithm, S1: initialized population size N, maximum iteration times MaxIteration and recombination pairing probability S, population P, Pareto solution set A, iteration times t =1; S2: Calculate the population target value using decoding rules and local optimization; S3: Cluster the target value; S4: Perform cross-mutation on the population P based on the clustering results to generate the offspring population Q, and calculate the target of the offspring population Q value; S5: Update the set A, perform the selection operation to update the population P, and update the recombination pairing probability S based on the updated population P; S6: If t<MaxIteration, t=t+1, jump to S2, otherwise output the set A. The present invention also provides a system for multi-objective batch scheduling. The advantages of the method and system for multi-objective batch scheduling optimization provided by the clustering-based evolutionary algorithm are: it provides a reliable solution for batch scheduling problems in the production process. solution.

Description

Method and system for multi-objective batch scheduling optimization based on clustering evolutionary algorithm
Technical Field
The invention relates to the technical field of batch scheduling optimization, in particular to a method and a system for multi-objective batch scheduling optimization based on a clustering evolutionary algorithm.
Background
Scheduling plays an important role in actual production manufacturing, and all that involves the allocation of resources is not separated from scheduling because reasonable scheduling can meet our demand targets. At present, the method has practical scheduling application in the aspects of steel production, integrated production, cloud computing, medical industry, textile industry and the like. One type of scheduling problem, referred to as the batch processor scheduling problem, was originally derived from the last production run of semiconductor chips, and is different from the classical scheduling problem, in which a plurality of workpieces can be processed simultaneously on one machine, and the workpieces are also subject to batch decision, and the processing sequence of the batches is sometimes studied. The existing batch scheduling problem is basically a combined optimization problem difficult to perform NP (network processor), a meta-heuristic algorithm is usually adopted to solve the problem, and the solving method is closely related to the specific problem.
With the proposal of the concept of "green manufacturing", environmental protection and energy consumption become two issues that must be considered in the manufacturing process, and the batch scheduling problem is closely related to the actual manufacturing process, so that in the research process of the batch scheduling problem, besides the traditional target value research, the energy consumption naturally becomes a new research target value and becomes a hot content of research. For manufacturing enterprises, the reduction of energy consumption not only protects the environment, but also reduces the manufacturing cost of the enterprises to a certain extent, so that the win-win situation is realized. It is then of great practical significance to study the conventional standards and to consider the reduction in energy consumption. At present, the most direct energy consumption is the power consumption of the machine, and as the unit electricity prices are changed in different time periods and the processing and idle power of the machine are different, the energy consumption can be reduced by reasonably arranging the processing sequence of the batch on the machine.
At present, the batch scheduling research considering the electricity price cost is less than the research of the traditional target value, and under the batch scheduling problems that the machine speed is different and the workpiece has the size attribute, the work for researching the reduction of the electricity price cost is less, and the situation is definitely existed in the actual production process, so that the batch scheduling research is worth further research.
Disclosure of Invention
The technical problem to be solved by the invention is to provide a batch scheduling optimization method comprising a self-adaptive clustering and evolutionary algorithm, so that the working time and the electricity price cost of a batch scheduling scheme are considered; and realizing multi-objective optimization.
The invention solves the technical problems through the following technical scheme:
a method for carrying out multi-objective batch scheduling optimization based on a clustering evolutionary algorithm,
s1: initializing a population size N, a maximum iteration number MaxIteraction and a recombination pairing probability S; initializing a population P and a pareto solution set A based on a machined workpiece, wherein individuals of the population P and the set A represent workpiece sequences, and the initialization iteration number t is 1;
s2: executing a decoding rule on the population P to obtain scheduling schemes of all individuals, adjusting each scheduling scheme through local optimization and calculating a target value of each scheduling scheme;
s3: clustering the target value of the population P by using self-adaptive clustering;
s4: selecting a cross-variant object for individuals in the population P based on the clustering result to generate a child population Q, and calculating a target value of the child population Q by using a decoding rule and local optimization;
s5: utilizing pareto individual updating sets A of the parent population P and the child population Q, performing selection operation on the parent population P and the child population Q to update the population P, and updating the recombination pairing probability S based on the updated population P;
s6: if t < maxitration, t ═ t +1, jump to S2, otherwise output set a.
Preferably, the method for initializing the population P in S1 is: and respectively arranging according to the ascending sequence, the descending sequence and the ascending sequence of the arrival time of the processing time to obtain three individual workpiece sequences, and randomly generating the remaining individual workpiece sequences.
Preferably, the decoding rules described in S2 and S4 are used to set any group X ═ Xn|n∈[1,N]Of individuals XnConversion of corresponding work sequence to Dispatch plan X'nThe specific method comprises the following steps:
step i: first stageWith 1 as the initialization n, the set of scheduling schemes
Figure BDA0002277619330000021
Step ii: sequentially reacting XnPutting the workpieces in the lot into a lot which can contain the workpieces and has the minimum residual capacity, and if no lot meeting the conditions exists, creating a new lot to put the current workpieces until all the workpieces are completely distributed;
step iii: arranging all batches in ascending order according to the arrival time of the batches;
step iv: distributing the current batch to a machine with the earliest completion time, and if a plurality of machines meet the conditions, selecting the machine with the highest processing speed;
step v: returning to step iv until all batches have been allocated to the machine, the current individual X is assignednCorresponding scheduling scheme X'nAdding a set X';
step vi: if N is less than N, making N equal to N +1, returning to the step ii, otherwise, outputting a set X';
where the capacity of the new lot is equal to the machine capacity MC.
Preferably, the method for adjusting the scheduling scheme and calculating the target value by local optimization described in S2 and S4 is:
step I: inputting a scheduling scheme set X', obtaining a total number m of machines and an electricity price EP (t) in a time period t, and initializing n to 1 and i to 1;
step II: obtaining current scheduling scheme X'nUpper machine MiNumber of batches | MiInitialization of k ═ Mi|;
Step III: when k is equal to | MiAnd satisfy
PWi×EP(CTki+1)+SWi×EP(STki+1)-PWi×EP(STki+1) less than or equal to 0 or CTki<ST(k+1)iWhen, make STki=STki+1,CTki=CTki+1;
When k ≠ MiAnd satisfy
PWi×EP(CTki+1)+SWi×EP(STki+1)-PWi×EP(STki+1)-SWki×EP(CTki+1) less than or equal to 0 or CTki<ST(k+1)iWhen, make STki=STki+1,CTki=CTki+1;
Wherein, PWiFor the working power of machine i, SWiFor idle power of machine i, CTkiFor the completion time of the k-th lot on machine i, STkiThe starting processing time of the kth batch on the machine i;
CTki=STki+PTki
STki=max{RTki,CT(k-1)i}
wherein PTkiThe processing time of the k-th batch on the machine i is equal to the ratio of the maximum processing time of all the workpieces in the batch to the processing speed of the machine, i.e. the processing time of the k-th batch on the machine i is equal to the processing speed of the machine
Figure BDA0002277619330000031
rjAs the machining time of the workpiece j, BkiFor the k-th batch on machine i, viIs the processing speed of machine i;
RTkiis the arrival time of the k-th batch on machine i, which is equal to the maximum arrival time of all workpieces in the batch, i.e.
RTki=max{pj|j∈Bki}
pjIs the arrival time of workpiece j;
step IV: when k is more than 1, making k equal to k-1, and returning to the step III;
step V: if i is less than m, making i equal to i +1, returning to the step II, otherwise calculating the current scheduling scheme X'nTarget value of (C), i.e. maximum completion time CmaxAnd total electricity price cost TEC;
Cmax=max{CTki|i∈[1,m]}
Figure BDA0002277619330000041
will current scheduling scheme X'nCorresponding target value xnAdding the target value set x;
step VI: and if N is less than N, making N equal to N +1, returning to the step II, otherwise, outputting the target value set x.
Preferably, the method for adaptively clustering the target values in S3 is as follows:
step A: acquiring a current iteration time t and a target value set x;
and B: if T is 1ormod (T, T) is 0, jumping to the step C for coarse clustering, otherwise jumping to the step D for updating the clustering result;
and C: inputting the target value set into a canty algorithm to obtain the cluster number K and each class Ck,k∈[1,K]Centroid point mk
Step D: performing single clustering by using K-means algorithm based on current centroid point, and updating class CkCentroid point mk
Where mod (T, T) represents the remainder of T/T, and the coarse clustering period T is the global variable set in S1.
Preferably, the method for identifying subjects for cross-variant individuals described in S4 is:
step a: acquiring a set P ═ { P) of a population Pn|n∈[1,N]And a clustering result C ═ C of a target value set P of the population Pk|k∈[1,K]}; applying a clustering result C of the target value set P to the population P, and enabling n to be 1;
step b: if rand () ≦ S, go to step c, otherwise jump to step d, where rand () represents a random number;
step c: from the current individual PnClass C of whichkIn which another individual P is randomly selectedn′Performing cross mutation operation to obtain the filial generation sequence QnAdding the mixture into a population Q;
step d: never including the current individual PnOf arbitrary class CkIn which another individual P is randomly selectedn′Performing cross mutation operation to obtain the filial generation sequence QnAdding the mixture into a population Q;
step e: and if N is less than N, making N equal to N +1, returning to the step b, otherwise, outputting the population Q.
Preferably, the specific method of cross mutation described in S4 includes: generating a progeny sequence by two-point crossing and performing a mutation operation on the progeny sequence by two-point crossing;
the specific method for generating the filial generation sequence by two-point crossing comprises the following steps:
step ①, get parent PnAnd Pn′The progeny of which are defined as Q, respectivelynAnd Qn′The sequence length is M;
step ②, if rand () > is not less than pc, Qn=Pn,Qn′=Pn′Otherwise, go to step ③;
step ③ randomly generating two crossing points m1,m2And 1 < m1<m2< M for QnRetention of PnSequence of workpieces at both ends of a cross point, the workpieces between the cross points being in P according to the respective workpiecesn′For Qn′Retention of Pn′Sequence of workpieces between intersections, the workpieces at both ends of an intersection being in P relation to the corresponding workpiecesnThe sequence of (1);
the method for performing variation operation on the progeny sequence comprises the following steps:
step (1): extracting the current filial generation individual Qn
Step (2): if rand () is greater than or equal to pm, QnOtherwise, two variation points are randomly generated to exchange QnWorkpieces corresponding to the two middle variation points;
wherein pc is the crossover probability, pm is the variation probability, and both are global variables preset in S1.
Preferably, the method for updating the set a in S5 is as follows: sequentially extracting pareto individuals of the parent population P and the child population Q,
when in use
Figure BDA0002277619330000051
When the current pareto individual is added to the set A;
when in use
Figure BDA0002277619330000052
If the current pareto individual dominates partial solutions in the set A, removing the solution dominated in the set A, and storing the solution dominated in the set A into the current pareto individual; if the current pareto individual is not dominated by the solutions in the set A, the current pareto individual is stored in the set A, and if the current pareto individual is dominated by all the solutions in the set A, no operation is performed; repeating the operation until the pareto individuals in the parent population P and the offspring population Q are extracted;
the criterion for evaluating whether an individual is dominated is to use a pareto dominance relationship, defined as follows:
F(w)=(f1(w),f2(w),...,fr(w)), if and only if
Figure BDA0002277619330000053
And is
Figure BDA0002277619330000054
When we call w dominate u, where CmaxAnd TEC is equivalent to f1(w) and f2(w) that is
F(w)=(Cmax,TEC)
Pareto individuals are one or more solutions that are not dominated by other individuals throughout the population.
Preferably, the method for updating the population P in S5 is to select individuals of the updated population P from the current population P and the offspring population Q by using a selection operation of a classical NSGA-II algorithm;
the method for updating the recombination pairing probability S comprises the following steps:
defining a new solution contribution value (t) generated by performing the cross mutation operation described in S4 in the t-th iteration process as follows:
Figure BDA0002277619330000055
wherein, g1(t) means crossing the updated population P using the method of step cNumber of individuals derived from fork variation, g2(t) representing the number of individuals in the updated population P which are cross-mutated by using the method in the step d;
the recombination pairing probability S is updated every L generations by
Figure BDA0002277619330000061
Wherein t is the current iteration number, and the probability updating accumulated algebra L is a global variable preset in S1.
The invention also provides a system for carrying out multi-target batch scheduling optimization based on the evolutionary algorithm of clustering, which comprises
An initialization module: initializing a population scale N, a maximum iteration number MaxIteraction and a recombination pairing probability S, initializing a population P and an initialization pareto solution set A based on a processing workpiece, wherein individuals of the population P and the set A represent workpiece sequences, and the initialization iteration number t is 1;
a scheduling optimization module: executing a decoding rule on the population P to obtain scheduling schemes of all individuals, adjusting each scheduling scheme through local optimization and calculating a target value;
a clustering module: clustering the target value of the population P by using self-adaptive clustering;
a progeny evolution module: selecting a cross-variant object for individuals in the population P based on the clustering result to generate a child population Q, and calculating a target value of the child population Q by using a decoding rule and local optimization;
a data updating module: utilizing pareto individual updating sets A of the parent population P and the child population Q, performing selection operation on the parent population P and the child population Q to update the population P, and updating the recombination pairing probability S based on the updated population P;
an iteration output module: if t is less than MaxIteraction, t is t +1, returning to the scheduling optimization module, otherwise, outputting the set A.
The method and the system for carrying out multi-target batch scheduling optimization based on the clustering evolutionary algorithm have the advantages that: the distribution information of the population is extracted through self-adaptive clustering, recombination of the population is guided based on the information and the recombination mating probability, the recombination mating probability can be dynamically adjusted according to historical information, the diversity of population evolution is increased, various batch scheduling schemes can be provided for evaluation and selection, the size information of machines and workpieces is considered, and a reliable solution is provided for batch scheduling problems in the production process.
Drawings
FIG. 1 is a distribution diagram of solutions of the CBEA algorithm and the comparison algorithm provided by an embodiment of the present invention over examples 300-3-1-8;
FIG. 2 is a distribution diagram of solutions of the CBEA algorithm and the comparison algorithm provided by the embodiment of the present invention on an example 200-5-1-3;
FIG. 3 is a distribution diagram of solutions of the CBEA algorithm and the comparison algorithm on the example 100-5-s-9 according to the present invention.
Detailed Description
In order that the objects, technical solutions and advantages of the present invention will become more apparent, the present invention will be further described in detail with reference to the accompanying drawings in conjunction with the following specific embodiments.
When the scheme is explained in the embodiment, partial local variables with the same form exist, and when the variables with the same form conflict at different positions, the definition of the local algorithm where the variables are located is used as the standard; to distinguish between particular steps in a different manner, it should be understood that the different expressions are used merely to distinguish between different steps, whether in the context of an entire algorithm or a partial algorithm, and are not intended to limit the order of steps.
The problem to be solved by the application is that the batch scheduling problem of double targets is to minimize the maximum completion time and the total electricity price cost, the multi-target batch scheduling problem is substantially equivalent to a discrete multi-target optimization problem, a solution method on a continuous problem cannot be directly applied, an evolutionary algorithm is commonly used for solving the multi-target optimization problem, the effect is ideal and popular with people, meanwhile, a lot of solutions are generated in the iterative process of the evolutionary algorithm, and the solutions hide certain information related to the problem, so that people hope to mine the hidden information and apply the hidden information to the algorithm through a certain strategy. Therefore, the evolutionary algorithm is adopted and combined with the self-adaptive clustering strategy to obtain a new evolutionary algorithm based on clustering, which is called CBEA algorithm to solve the batch scheduling problem of double targets, before explaining the algorithm, firstly, a problem model aimed at by the algorithm is simplified, and basic rules of the batch scheduling problem are described as follows:
(1) each workpiece j has three attributes: time of arrival pjMachining time rjAnd size sjEach machine i has four attributes: machine capacity MC, machine speed viPW of machining poweriAnd idle power SWi
(2) Defining the set of batches as B, wherein the B-th batch processed on machine i is marked as Bbi(ii) a Batch BbiMachining time PTbiEqual to the ratio of the maximum processing time of all the workpieces in the batch to the processing speed of the machine in which it is located, i.e.
Figure BDA0002277619330000071
Time of arrival RTbiEqual to the maximum arrival time of all workpieces in the batch, i.e. RTbi=max{rj|j∈Bbi}; the maximum capacity of the batch is the capacity MC of the machine, while the sum of all workpiece sizes in the batch must not exceed the capacity of the machine, i.e.
Figure BDA0002277619330000072
(3) Starting time ST of a batch when it is distributed to the machinesbiEqual to the maximum of the arrival time of the batch and the completion time of the previous batch, STbi=max{RTbi,CT(b-1)i}; time-of-flight CTbiEqual to the sum of the starting processing time and the processing time, i.e. CTbi=STbi+PTbi
(4) Each workpiece can be placed in only one batch and can be placed in only one machine; the batch is not allowed to have any operation performed on it during processing;
(5) the optimization objective is to minimize the maximum completion time CmaxAnd aElectricity price cost TEC.
The embodiment provides a method for performing multi-target batch scheduling optimization based on a clustering evolutionary algorithm, which comprises the following steps:
s1: initializing a population P based on experience initialization population scale N, maximum iteration number MaxIteraction and recombination pairing probability S, and initializing the population P based on a processing workpiece, wherein individuals of the population P represent workpiece sequences, and the method for initializing the population P comprises the steps of generating the workpiece sequences by a special heuristic rule, and at least comprises three individuals which are arranged according to an ascending order and a descending order of processing time and an ascending order of arrival time; the remaining individuals are generated using a second initialization method, namely random ordering.
And initializing the pareto solution set A, namely setting A as an empty set, wherein the number of initialization iterations t is 1.
S2: executing a decoding rule on the population P to obtain scheduling schemes of all individuals, adjusting each scheduling scheme through local optimization, and then calculating a target value of the adjusted scheduling scheme;
decoding rules: the decoding rule is to set any group X as Xn|n∈[1,N]Of individuals XnThe corresponding workpiece sequence is converted into a batch scheme, and the batches are distributed to different machines, so that a scheduling scheme X is obtainedn' the concrete method is as follows:
step i: initializing n-1, scheduling scheme set
Figure BDA0002277619330000081
Step ii: sequentially reacting XnPutting the workpieces in the lot into a lot which can contain the workpieces and has the minimum residual capacity, and if no lot meeting the conditions exists, creating a new lot to put the current workpieces until all the workpieces are completely distributed;
step iii: arranging all batches in ascending order according to the arrival time of the batches;
step iv: distributing the current batch to a machine with the earliest completion time, and if a plurality of machines meet the conditions, selecting the machine with the highest processing speed;
step v: return to step iv until all batches are allocated to machinesOn the device, the current individual XnCorresponding scheduling scheme X'nAdding a set X';
step vi: if N is less than N, making N equal to N +1, returning to the step ii, otherwise, outputting a scheduling scheme set X';
where the capacity of the new lot is equal to the machine capacity MC.
Local optimization: the method for adjusting the scheduling scheme through local optimization and calculating the target value of the scheduling scheme comprises the following steps:
step I: inputting a scheduling scheme set X', obtaining the number m of machines and the electricity price EP (t) in a time period t, and initializing n to 1 and i to 1;
step II: obtaining current scheduling scheme X'nMachine MiNumber of lots | MiI, initialization k ═ Mi|;
Step III: due to the difference of unit electricity prices in different time periods, the maximum completion time C is within a reasonable time rangemaxUnder the condition of no change, the aim of reducing the TEC can be achieved by adjusting the processing sequence of the upper batch of the machine. The specific operation is that the current batch is moved backwards in sequence according to unit time in the period of finishing the current batch and starting processing the next batch until the electricity price cost can be reduced, and the specific method comprises the following steps:
when k is equal to | MiAnd satisfy
PWi×EP(CTki+1)+SWi×EP(STki+1)-PWi×EP(STki+1) less than or equal to 0 or CTki<ST(k+1)iWhen, make STki=STki+1,CTki=CTki+1;
When k ≠ MiAnd satisfy
PWi×EP(CTki+1)+SWi×EP(STki+1)-PWi×EP(STki+1)-SWki×EP(CTki+1) less than or equal to 0 or CTki<ST(k+1)iWhen, make STki=STki+1,CTki=CTki+1;
Wherein, PWiFor working of machine iPower, SWiFor idle power of machine i, CTkiFor the completion time of the k-th lot on machine i, STkiThe starting processing time of the kth batch on the machine i;
CTki=STki+PTki
STki=max{RTki,CT(k-1)i}
wherein PTkiThe processing time of the k-th batch on the machine i is equal to the ratio of the maximum processing time of all the workpieces in the batch to the processing speed of the machine, i.e. the processing time of the k-th batch on the machine i is equal to the processing speed of the machine
Figure BDA0002277619330000091
rjAs the machining time of the workpiece j, BkiFor the k-th batch on machine i, viIs the processing speed of machine i;
RTkiis the arrival time of the k-th batch on machine i, which is equal to the maximum arrival time of all workpieces in the batch, i.e.
RTki=max{pj|j∈Bki}
pjIs the arrival time of workpiece j;
step IV: when k is more than 1, making k equal to k-1, and returning to the step III;
step V: if i is less than m, making i equal to i +1, returning to the step II, otherwise calculating the current scheduling scheme X'nTarget value of (C), i.e. maximum completion time CmaxAnd total electricity price cost TEC;
Cmax=max{CTki|i∈[1,m]}
Figure BDA0002277619330000101
will current scheduling scheme X'nCorresponding target value xnAdding the target value set x;
step VI: and if N is less than N, making N equal to N +1, returning to the step II, otherwise, outputting the target value set x.
Specifically, in step S2, when the group P is operated, the group P needs to be assigned to the set X, that is, X ═ P, and after decoding and local optimization form a scheduling scheme, the scheduling scheme X ' and the target value X of the set X are assigned to the group P, that is, P ' ═ X ', P ═ X.
S3: clustering the target value of the population P by using self-adaptive clustering; the following is a general set of target values x ═ xn|n∈[1,N]Explaining a self-adaptive clustering method;
step A: obtaining the current iteration times t and a target value set x ═ xn|n∈[1,N]};
And B: if T is 1ormod (T, T) is 0, jumping to the step C for coarse clustering, otherwise jumping to the step D for updating the clustering result;
wherein mod (T, T) represents the remainder of T/T; that is, coarse clustering is performed once every T iterations, and in the rest of the cases, clustering is performed only by using a K-means algorithm, where a coarse clustering period T is an empirical value, and in S1, T is initialized to 10 in the preferred embodiment;
and C: inputting the target value set into a Canopy algorithm to obtain the clustering number K and each class Ck,k∈[1,K]Centroid point mk
This step is to call the Canopy algorithm, which is known in the prior art, and for the sake of understanding, a specific procedure is given here:
a) the method comprises the following steps Set of target values x ═ xn|n∈[1,N]Storing the data into a List, and initializing K to be 0;
b) the method comprises the following steps Randomly choosing a point x from the ListiAnd calculating other points x in the ListnTo point xiThe euclidean distance d of;
c) the method comprises the following steps All d < T1Generates a new cantyk={xn|dis(xn,xi) < T1}, dis (a, b) represents the Euclidean distance between a and b, let K be K +1, and d < T in List is removed2A point of (a);
d) the method comprises the following steps Judging whether the List is empty or not, and determining that the List is idle e); otherwise, turning to b);
e) the method comprises the following steps For each cantyk(K ═ 1, 2.. times., K), its centroid point is calculated
Figure BDA0002277619330000111
In the embodiment, only the parameter T is calculated1And T2The values of (a) are defined, and the rest are default values; wherein T is1=2T2,T2Is the average of the euclidean distances between all individuals in the target value set x.
Step D: performing single clustering by using K-means algorithm based on current centroid point, and updating class CkCentroid point mk
Similarly, the K-means algorithm in the prior art is called, and the specific method is as follows:
a) the method comprises the following steps X is to ben(N ═ 1, 2.. times.n) to class CkWherein
Figure BDA0002277619330000112
argmin denotes the position corresponding to the minimum value, dis (x)n,mj) Is xnAnd mjThe euclidean distance between;
b) the method comprises the following steps For each class CkUpdate its centroid point
Figure BDA0002277619330000113
When clustering a target value set P of a population P, it is necessary to assign the set P to a set x, that is, x is P.
Usually, most clustering algorithms need to assign corresponding classification numbers in advance, and the clustering result has a certain relationship with the assigned classification numbers in advance, but sometimes the classification number is not determined in advance too well, which obviously affects the performance of the clustering algorithms. Therefore, it is desirable that the cluster classification number can be dynamically adjusted according to the current population, and it is also desirable that the dynamic adjustment is as accurate as possible and the process is not overly complicated. Therefore, the method adopts the Canopy + K-means algorithm to cluster the target value of the population, firstly, the K-means algorithm is a classic clustering algorithm based on division, but the method has some defects: 1. the selection of the initial centroid point has blindness and randomness; 2. the number of clusters needs to be determined in advance, and the Canopy algorithm is a coarse clustering algorithm, namely, the optimal number of clusters can be simply and quickly given, but an accurate clustering result cannot be given, so that the two can be mutually combined, and the advantages and the disadvantages can be made up. In addition, each clustering process needs a large amount of iteration operations and then can be converged, so that time consumption is increased inevitably, and in order to reduce time consumption, the iterative process of the clustering algorithm is integrated into the evolutionary process, namely, the clustering algorithm can gradually mine distribution information while the evolutionary algorithm searches. In a word, the Canopy algorithm can firstly provide a more reasonable initial centroid point, eliminate the dependence of the K-means algorithm on the prior knowledge, and then cluster the target values of the population by using the K-means algorithm based on the initial centroid point according to the current iteration condition, thereby obtaining an accurate clustering result.
It should be noted that, as iterative evolution progresses, the whole population may be allocated to one class by the Canopy algorithm, which may affect the execution of heterogeneous crossing in subsequent cross variation, and for this problem, a person skilled in the art may appropriately modify the algorithm, increase the judgment condition for the number of clusters, and when Canopy only obtains one cluster set, the population is forcibly divided into at least two classes, and since the whole population may be allocated to one cluster, the criteria for forced classification may not be required at this time, and may be divided randomly or according to a specific rule, and only care needs to be taken to ensure that the number of individuals between different classes is not very different.
S4: selecting a cross-variant object for individuals in the population P based on the clustering result to generate a child population Q, and calculating a target value of the child population Q by using a decoding rule and local optimization;
the method for determining the cross variation object comprises the following steps:
step a: acquiring a set P ═ { P) of a population Pn|n∈[1,N]And a clustering result C ═ C of a target value set P of the population Pk|k∈[1,K]}; applying a clustering result C of the target value set P to the population P, and enabling n to be 1;
step b: if rand () ≦ S, go to step c, otherwise jump to step d, where rand () represents a random number;
step c: from the current individual PnClass C of whichkIn which another individual P is randomly selectedn′Performing cross mutation operation to obtain the filial generation sequence QnAdding the mixture into a population Q;
step d: never including the current individual PnOf arbitrary class CkIn which another individual P is randomly selectedn′Performing cross mutation operation to obtain the filial generation sequence QnAdding the mixture into a population Q;
step e: and if N is less than N, making N equal to N +1, returning to the step b, otherwise, outputting the population Q, namely the child population of the current population P.
The embodiment strengthens the local development capacity of the population through mating among the same species, promotes the global exploration capacity of the population through mating among the different species, and alternately uses two mating modes through dynamically adjusted recombination pairing probability, thereby ensuring the balance between development and exploration as much as possible and improving the diversity of the population.
The embodiment also provides a system for carrying out multi-target batch scheduling optimization based on the evolutionary algorithm of clustering, which comprises
An initialization module: initializing a population scale N, a maximum iteration number MaxIteraction and a recombination pairing probability S, initializing a population P and an initialization pareto solution set A based on a processing workpiece, wherein individuals of the population P and the set A represent workpiece sequences, and the initialization iteration number t is 1;
a scheduling optimization module: executing a decoding rule on the population P to obtain scheduling schemes of all individuals, adjusting each scheduling scheme through local optimization and calculating a target value;
a clustering module: clustering the target value of the population P by using self-adaptive clustering;
a progeny evolution module: selecting a cross-variant object for individuals in the population P based on the clustering result to generate a child population Q, and calculating a target value of the child population Q by using a decoding rule and local optimization;
a data updating module: utilizing pareto individual updating sets A of the parent population P and the child population Q, performing selection operation on the parent population P and the child population Q to update the population P, and updating the recombination pairing probability S based on the updated population P;
an iteration output module: if t is less than MaxIteraction, t is t +1, returning to the scheduling optimization module, otherwise, outputting the set A.
The specific working method and principle of the above modules are the same as those of the batch scheduling optimization method.
Cross mutation: because the algorithm solves the problem of combined optimization and adopts a coding mode based on a workpiece sequence, the cross variation mode on the common continuous optimization problem can not be directly applied to the current problem.
The method for producing progeny sequences by cross-mutation provided in this example comprises: generating a progeny sequence by two-point crossing and performing a mutation operation on the progeny sequence by two-point crossing;
the specific method for generating the filial generation sequence by two-point crossing comprises the following steps:
step ①, get parent PnAnd Pn′The progeny of which are defined as Q, respectivelynAnd Qn′The sequence length is M;
step ②, if rand () > is not less than pc, Qn=Pn,Qn′=Pn′Otherwise, go to step ③;
where pc is the crossover probability, and pc is preset in S1 so that pc is not changed in the whole iteration process, that is, the crossover probability pc is a global variable.
Step ③ randomly generating two crossing points m1,m2And 1 < m1<m2< M for QnRetention of PnSequence of workpieces at both ends of a cross point, the workpieces between the cross points being in P according to the respective workpiecesn′For Qn′Retention of Pn′Sequence of workpieces between intersections, the workpieces at both ends of an intersection being in P relation to the corresponding workpiecesnThe sequence of (1);
Figure BDA0002277619330000131
table 1: cross operation schematic table
Taking two sequences of 10 workpieces shown in table 1 as an example, the two sequences are parent1(2,3,5,6,8,1,9,7,4,10) and parent2(7,8,1,3,5,2,10,4,9,6), the randomly generated cross-point positions are 4 and 8, respectively, for child1, the workpiece sequences at both ends of the parent1 cross-point are reserved, and the workpiece sequences between child1 cross-points are arranged in the order of the remaining workpieces in parent 2; similarly for child2, the sequences of workpieces between parent2 intersections are retained, and the sequences of workpieces at both ends of the child2 intersection are arranged in the order of the remaining workpieces in parent 1.
The method for performing variation operation on the progeny sequence comprises the following steps:
step (1): extracting the current filial generation individual Qn
Step (2): if rand () is greater than or equal to pm, QnOtherwise, two variation points are randomly generated to exchange QnAnd (5) workpieces corresponding to the two variation points, wherein pm is a variation probability and is also a global variable preset in S1.
Figure BDA0002277619330000141
Table 2: schematic representation of mutation operation
As shown in table 2, for the child1 sequences obtained in table 1, the randomly generated crossover work positions are 3 and 8, a new child1 sequence shown at the bottom in the table is obtained, the sequence is saved in the offspring population, and then the cross mutation operation is continued on the next parent individual until all individuals in the population P generate offspring individuals subjected to the cross mutation operation.
After the filial generation population Q is generated through cross variation, decoding rules and local optimization are required to be executed on the filial generation population Q to obtain a target value of the filial generation population, the specific method is introduced, only Q needs to be given to X before starting, and after the specific method is finished, a result corresponding to the set X is given to the set Q; reference may be made to the assignment processing method of the population P.
S5: updating a pareto solution set A by using pareto individuals of a parent population P and a child population Q, performing selection operation on the parent population P and the child population Q to update the population P, and updating a recombination pairing probability S based on the updated population P;
the method for updating the set A comprises the following steps: sequentially extracting pareto individuals of the parent population P and the child population Q,
when in use
Figure BDA0002277619330000142
When the current pareto individual is added to the set A;
when in use
Figure BDA0002277619330000143
If the current pareto individual dominates partial solutions in the set A, removing the solution dominated in the set A, and storing the solution dominated in the set A into the current pareto individual; if the current pareto individual is not dominated by the solutions in the set A, the current pareto individual is stored in the set A, and if the current pareto individual is dominated by all the solutions in the set A, no operation is performed; repeating the operation until the pareto individuals in the parent population P and the offspring population Q are extracted;
the criterion for evaluating whether an individual is dominated is to use a pareto dominance relationship, defined as follows:
F(w)=(f1(w),f2(w),...,fr(w)), if and only if
Figure BDA0002277619330000144
And is
Figure BDA0002277619330000145
When we call w dominate u. In the present example, f (w) ═ Cmax,TEC),CmaxAnd TEC is equivalent to f1(w) and f2(w), r is 2, w is the individual solution in the population. In addition, there are generally many pareto individuals in the overall population that are not dominated by other solutions.
Based on the above method for updating the set a, if the individuals in the set a are dominated by any pareto individual, all the dominated individuals are deleted, so that some known better individuals or individuals corresponding to the currently used scheduling scheme may be placed in the initialization of the set a, and in order to reduce the complexity of data processing, the set a is preset as an empty set in step S1.
Selecting an individual of the updated population P from the current population P and the offspring population Q by adopting the selection operation of a classical NSGA-II algorithm; the selection operation comprises non-dominated sorting and congestion distance calculation;
the method for updating the recombination pairing probability S comprises the following steps:
defining a new solution contribution value (t) generated by performing the cross mutation operation described in S4 in the t-th iteration process as follows:
Figure BDA0002277619330000151
wherein, g1(t) the number of individuals of the updated population P that were cross-mutated using the method of step c, g2(t) representing the number of individuals in the updated population P which are cross-mutated by using the method in the step d;
the recombination pairing probability S is updated every L generations by
Figure BDA0002277619330000152
Wherein t is the current iteration number, and the probability updating accumulated algebra L is a global variable preset in S1; in order to prevent the search of the algorithm from being totally biased to exploration or development, the introduced constraint conditions force the recombination pair probability to be defined, namely, when the contribution degree of the accumulated new solution of the L generation is not more than 0.2L, the recombination pair probability is set to be 0.8, and when the contribution degree of the accumulated new solution of the L generation is not less than 0.8L, the recombination pair probability is set to be 0.2.
S6: if t < maxitration, t ═ t +1, jump to S2, otherwise output set a.
And in the iteration period, after a new population P is obtained, returning to S2 for the next iteration again until the preset iteration times MaxIteraction is reached, and obtaining a pareto solution set A, namely a set of optimal individuals.
Simulation experiment
The performance of the CBEA Algorithm provided in the present example will be tested by comparison with related art algorithms, NSGA-II (see K Deb, A Pratap, S Agrarwal, et al. A Fast and Elitist Multi object Genetic Algorithm: NSGA-II [ J ]. IEEE Transactions on evolution calculation, 2002,6(2): 182) and MODED (see S C Zhou, L X Lin, NDu, et al. A Multi-object differential evaluation for processing of a processing architecture connected Computing environment [ J ]. Computers, Research, 96-96 processing Algorithm, J. (see ZJ. correction, J. conversion, S20155. J.), the decoding modes of the workpiece sequences of all algorithms are consistent with the method provided by the embodiment, all test examples are generated randomly, different test examples mainly have differences between the workpiece and the machine information, and the information of the test examples is shown in table 3.
Factors of the fact Value range Number of values
Size of work h 100、200、300 3
Size of work piece sj U[1,15]、U[15,35] 2
Arrival time r of workpiecej U[1,LB] 1
Time p for machining workpiecej U[8,48] 1
Number of machines m 3、5 2
Machine capacity MC 40 1
Machining power PW 2*v*v 5
Machine idle power SW 1 1
Machine speed v 1、1.5、2、2.5、3 5
Table 3: testing example information
The LB in the range of values of the arrival time of the workpiece in table 3 is calculated as follows:
LB=ρZ
where ρ is a coefficient, ρ is set to 0.1 in the experiment provided in this embodiment, and Z represents the sum of all the workpiece processing times in the current calculation example; reference may be made in particular to the document P Damodaran, M C Velez-Gallego.Heuritics for makespan min immunization on parallel boards processing machines with indirect joint times [ J ]. Int J Adv Manual Technol,2010,49: 1119-.
In addition, different machines have speed differences, and when the number of the machines is 3, the speeds of 3 machines are 1,2 and 3 respectively; for a majority of machine numbers of 5, the machine speeds are 1, 1.5, 2, 2.5, 3, respectively.
Based on the workpiece size and workpiece dimensions given in table 3, 6 test examples were randomly generated, each containing 10 test examples, and then tested in an environment of different number of machines, that is, 12 sets of test examples in total. The total electricity price cost relates to an electricity price standard, a Beijing area time-of-use electricity price function is selected as a standard after partial documents are referred, and a specific function formula is as follows:
Figure BDA0002277619330000161
all four algorithms for comparison need to define part of parameters, and the parameters possibly influence the performance of the algorithms, so that the fairness of comparison experiments can be influenced, in order to reduce the influence of the parameters on the performance of the algorithms as much as possible, the experiment parameters in the documents are adopted for both the MODED E algorithm and the APMO algorithm, the NSGA-II algorithm parameters are consistent with the CBEA algorithm parameters provided by the application, and the specific parameters refer to Table 4.
CBEA MODDE NSGA-II APMO
Population size N:100 Population size N:100 Population size N:100 Population size N:100
Iteration number MaxIteration 500 Iteration number maxIteration 500 Iteration number maxIteration 500 Iteration number maxIteration 500
Cross probability pc 0.9 Cross probability pc 0.9 Cross probability pc 0.9 DE control parameter CF 0.5
The variation probability pm is 0.2 The variation probability pm is 0.1 The variation probability pm is 0.2 DE control parameter CR:1
Initial recombination pairing probability S:0.3 Initial mating probability β:0.5
Probability updating cumulative algebra L10 History length HL:15
Coarse clustering period T10 Maximum iteration number of clustering 50
5 clustering result keeping unchanged times
Damping coefficient of 0.5
Table 4: algorithm parameters
In addition, all algorithms are realized by C + + under a windows10 system and run under a visual studio 2017 integrated development environment, hardware is a Corei53.40GHz processor, memory is 16GB, and test examples under each type run for 10 times.
In order to measure the quality of the algorithm, the embodiment adopts three different indexes to evaluate the performance of the algorithm, namely the scale, the coverage rate and the over-volume index of the pareto solution set;
1) the scale of pareto solution set a; for the multi-objective optimization algorithm, more than one solution is obtained, and the more pareto solutions are obtained, which means that more choices can be provided for a decision maker, and the better the diversity of the algorithm is;
2) coverage rate; it was first proposed by E Zitzler, L Thile, Multi objective Evolution Algorithms, A C orthogonal Case Study and the Strength partner Approach [ J ]. IEEETransmission on Evolution Approach calculation, 1999,3(4):257-271, to compare the degree of superiority between two algorithm solutions, with the formula:
Figure BDA0002277619330000171
c (E, F) indicates how much of the solution in solution set F is dominated by the solutions in solution set E. A larger value of C (E, F) indicates that more solutions in the solution set F are dominated by the solutions of the solution set E, that is, the algorithm for obtaining the solution set E is superior to the algorithm for obtaining the solution set F, wherein C (E, F) belongs to [0,1 ]. In addition, this index is asymmetric, i.e., C (E, F) ≠ C (F, E).
3) An ultra volume index; the evaluation index is a commonly used evaluation index of a multi-target evolutionary algorithm, is used for evaluating the approximation degree of a pareto solution set obtained by the algorithm to approach a real pareto front, and actually measures the convergence of the algorithm, the larger the super volume value of the pareto solution set of the algorithm is, the better the convergence of the algorithm is, the closer the super volume value is to the real pareto front, but a reference point is also needed for calculating the super volume value, the dimensionality of the reference point is equal to the number of targets solved by the problem, and the reference point is set as
Figure BDA0002277619330000172
Wherein
Figure BDA0002277619330000173
Represents the maximum C in all pareto solutions obtained by all algorithms on all examplesmaxValue, ZTECRepresents the maximum TEC value among all pareto solutions.
Tables 5-8 show the results of the simulation tests, wherein the test example types are composed of workpiece number-machine number-workpiece size, wherein the total number of workpieces is 100, 200, 300, the machine number is 3 or 5, and the workpiece size is divided into two types of large and small, for example, 100-3-l represents 100 workpieces, 3 machines, large-sized workpieces, and the same can be understood for other example representations.
Types of examples CBEA MODDE NSGA-II APMO
100-3-s 2.428E+07 2.412E+07 2.375E+07 2.310E+07
100-5-s 2.400E+07 2.387E+07 2.356E+07 2.309E+07
200-3-s 1.549E+07 1.501E+07 1.419E+07 1.317E+07
200-5-s 1.505E+07 1.471E+07 1.406E+07 1.351E+07
300-3-s 8.434E+06 7.970E+06 6.894E+06 5.906E+06
300-5-s 8.045E+06 7.761E+06 7.033E+06 6.576E+06
100-3-l 1.679E+07 1.680E+07 1.666E+07 1.643E+07
100-5-l 1.915E+07 1.910E+07 1.877E+07 1.859E+07
200-3-l 5.501E+06 5.407E+06 5.272E+06 4.855E+06
200-5-l 8.239E+06 8.005E+06 7.612E+06 7.234E+06
300-3-l 4.627E+05 4.082E+05 3.380E+05 1.832E+05
300-5-l 1.892E+06 1.622E+06 1.281E+06 9.576E+05
avg 1.229E+07 1.206E+07 1.162E+07 1.113E+07
Table 5: hyper-volume index value
As can be seen from Table 5, the CBEA algorithm provided by the present embodiment is superior to the other three algorithms except for the 100-3-1 example; the CBEA algorithm is also optimal from the point of view of the average hypervolecity index, NSGA-II, MODDE, APMO are in turn. Further analysis can find that the difference between the over-volume index value obtained by the CBEA algorithm and the over-volume index value obtained by other algorithms is larger and larger as the number of workpieces is increased, and the phenomenon exists in both large workpieces and small workpieces, so that the convergence of the CBEA algorithm is better than that of a comparison algorithm. The effect of the example 100-3-l is not optimal, possibly due to the large size of the workpiece, the small number of machines and workpieces, which results in at most one or two workpieces in the batch, so that each algorithm actually yields a batch of almost identical results, and, in addition to the small number of machines, the sequence of machining on the machines may vary greatly, which ultimately results in a less than optimal effect on the example.
Types of examples CBEA MODDE NSGA-II APMO
100-3-s 8.4 7.2 10 10.6
100-5-s 8 6.2 8.3 8.2
200-3-s 7.7 11.2 11 10.2
200-5-s 7.4 6.5 6.9 9.2
300-3-s 8.4 16.2 11.7 11
300-5-s 6.5 8.7 8.2 9.7
100-3-l 13.9 13.9 12.9 6.9
100-5-l 9.8 9.8 7.7 9.2
200-3-l 17.6 13.3 13.2 6.2
200-5-l 10.6 9.2 10.2 8.8
300-3-l 16.9 9.5 11.3 5.3
300-5-l 12.3 9.3 10.8 9.1
avg 10.6 10.1 10.2 8.7
Table 6: pareto solution scale
According to table 6, it can be found that for the index of pareto solution set size, the CBEA algorithm provided in this embodiment has no significant effect over the volume index value, especially on small-sized workpieces, the algorithm provided in this embodiment does not dominate, and the 3 algorithms compared with each other dominate over several sets of test examples. But its effect is shown on large-sized workpieces, the average pareto solution obtained on 6 sets of test examples of which is the most. The average pareto solution solved by the CBEA algorithm is the most in the whole test calculation, the diversity of the algorithm is guaranteed to a certain extent, and the algorithm has room for improvement on small-size workpieces.
Figure BDA0002277619330000191
Table 7: coverage index value of CEBA algorithm and comparison algorithm
Figure BDA0002277619330000192
Table 8: comparing coverage index values between algorithms
Referring to Table 7, it can be found that the C value of CBEA for NSGA-II is substantially above 0.98, the C values of the APMO algorithm are all 1, and the MODDE algorithm is above 0.9 except for 100-3-1, which shows that the CBEA algorithm provided by the embodiment can cover most solutions of the comparison algorithm, while the three algorithms NSGA-II, APMO and MODDE compared in the reverse calculation are mostly 0 or close to 0 for the C value of CBEA, therefore, the solution in the pareto solution set a obtained by the CBEA algorithm provided by this embodiment is significantly better than the comparison algorithm, in addition, on the basis of the 100-3-l test example, no matter C (CBEA, MODDE) or C (MODDE, CBEA) is too good, and the solution obtained by the CBEA at 100-3-l has no advantage per se, so the index value calculated by the 100-3-l test example is not too good; the specific reasons are analyzed in detail previously. Further observation of the coverage relationship between the comparison algorithm in Table 8 shows that for the problems faced by this example, the MODDE algorithm is better than NSGA-II and APMO, wherein NSGA-II is better than APMO, and APMO is the worst.
FIGS. 1-3 show partial pareto frontograms of CBEA and a comparative algorithm, and it can also be seen that the CBEA algorithm provided in this example is significantly better than the comparative algorithm, as exemplified by FIG. 1, whose example 300-3-l-8, represents the result of the 8 th test example under the 300-3-1 example.

Claims (10)

1.基于聚类的进化算法进行多目标批调度优化的方法,其特征在于:1. The method for multi-objective batch scheduling optimization based on the evolutionary algorithm of clustering is characterized in that: S1:初始化种群规模N、最大迭代次数MaxIteration、重组配对概率S;基于加工工件初始化种群P、初始化帕累托解集合A,种群P和集合A的个体表示工件序列,初始化迭代次数t=1;S1: Initialize the population size N, the maximum number of iterations MaxIteration, and the recombination pairing probability S; initialize the population P based on the machining workpiece, and initialize the Pareto solution set A, the individuals of the population P and the set A represent the workpiece sequence, and the initialization iteration number t=1; S2:对种群P执行解码规则得到所有个体的调度方案,通过局部优化调整每个调度方案并计算调整后调度方案的目标值;S2: Execute the decoding rule on the population P to obtain the scheduling schemes of all individuals, adjust each scheduling scheme through local optimization, and calculate the target value of the adjusted scheduling scheme; S3:利用自适应聚类将种群P的目标值进行聚类;S3: Use adaptive clustering to cluster the target value of the population P; S4:基于聚类结果为种群P中的个体选择交叉变异的对象生成子代种群Q,利用解码规则和局部优化计算子代种群Q的目标值;S4: Based on the clustering results, select the cross-mutated objects for the individuals in the population P to generate the offspring population Q, and use the decoding rules and local optimization to calculate the target value of the offspring population Q; S5:利用父代种群P和子代种群Q的帕累托个体更新集合A,对父代种群P和子代种群Q执行选择操作更新种群P,基于更新后的种群P更新重组配对概率S;S5: Use the Pareto individuals of the parent population P and the child population Q to update the set A, perform a selection operation on the parent population P and the child population Q to update the population P, and update the recombination pairing probability S based on the updated population P; S6:如果t<MaxIteration,t=t+1,跳转至S2,否则输出集合A。S6: If t<MaxIteration, t=t+1, jump to S2, otherwise output set A. 2.根据权利要求1所述的基于聚类的进化算法进行多目标批调度优化的方法,其特征在于:S1中所述的初始化种群P的方法为:分别按照加工时间升序、降序和到达时间升序排列得到三个个体的工件序列,剩余个体的工件序列随机生成。2. The method for multi-objective batch scheduling optimization by cluster-based evolutionary algorithm according to claim 1, is characterized in that: the method for initializing population P described in S1 is: according to processing time ascending order, descending order and arrival time respectively The workpiece sequences of three individuals are obtained by ascending order, and the workpiece sequences of the remaining individuals are randomly generated. 3.根据权利要求2所述的基于聚类的进化算法进行多目标批调度优化的方法,其特征在于:S2和S4中利用所述的解码规则将任意种群X={Xn|n∈[1,N]}中个体Xn对应的工件序列转化成调度方案X′n,具体方法如下:3. The method for multi-objective batch scheduling optimization by clustering-based evolutionary algorithm according to claim 2, characterized in that: in S2 and S4, any population X={X n |n∈[ 1,N]} The workpiece sequence corresponding to the individual X n is transformed into the scheduling plan X' n , the specific method is as follows: 步骤i:初始化n=1,调度方案集合
Figure FDA0002277619320000011
Step i: Initialize n=1, scheduling scheme set
Figure FDA0002277619320000011
步骤ii:依次将Xn中的工件放入能够容纳该工件且剩余容量最小的批中,如果没有满足条件的批,则创建新批放入当前工件,直到所有工件被分配完成;Step ii: Put the workpieces in X n in turn into the batch that can accommodate the workpiece and have the smallest remaining capacity. If there is no batch that meets the conditions, create a new batch and put it into the current workpiece until all the workpieces are allocated; 步骤iii:按照批到达时间的大小升序排列所有批;Step iii: Arrange all batches in ascending order of batch arrival time; 步骤iv:将当前批分配给完工时间最早的机器,如果存在多台机器满足条件,选择加工速度最快的机器;Step iv: Allocate the current batch to the machine with the earliest completion time. If there are multiple machines that meet the conditions, select the machine with the fastest processing speed; 步骤v:返回步骤iv,直到所有批被分配到机器上,将当前个体Xn对应的调度方案X′n加入集合X′;Step v: Return to step iv, until all batches are allocated to the machine, and add the scheduling plan X'n corresponding to the current individual Xn to the set X'; 步骤vi:如果n<N,令n=n+1,返回步骤ii,否则输出集合X′;Step vi: if n<N, let n=n+1, return to step ii, otherwise output the set X'; 其中,新批的容量等于机器容量MC。Among them, the capacity of the new batch is equal to the machine capacity MC.
4.根据权利要求3所述的基于聚类的进化算法进行多目标批调度优化的方法,其特征在于:S2和S4中所述的局部优化调整调度方案并计算优化后调度方案目标值的方法为:4. the method that the evolutionary algorithm based on clustering according to claim 3 carries out the method for multi-objective batch scheduling optimization, it is characterized in that: the method for local optimization adjustment scheduling scheme described in S2 and S4 and calculating the target value of the scheduling scheme after optimization for: 步骤I:输入调度方案集合X′,获得机器总数m和时间段t内的电价EP(t),初始化n=1,i=1;Step I: Input the set of scheduling plans X', obtain the total number of machines m and the electricity price EP(t) in the time period t, initialize n=1, i=1; 步骤II:获取当前调度方案X′n的机器Mi上的批数量|Mi|,初始化k=|Mi|;Step II: Obtain the batch quantity |M i | on the machine Mi of the current scheduling scheme X′ n , and initialize k =|M i | ; 步骤III:当k=|Mi|,且满足Step III: When k=|M i |, and satisfy PWi×EP(CTki+1)+SWi×EP(STki+1)-PWi×EP(STki+1)≤0或CTki<ST(k+1)i时,令STki=STki+1,CTki=CTki+1;When PW i ×EP(CT ki +1)+SW i ×EP(ST ki +1)-PW i ×EP(ST ki +1)≤0 or CT ki <ST (k+1)i , let ST ki =ST ki +1, CT ki =CT ki +1; 当k≠|Mi|,且满足When k≠|M i |, and satisfy PWi×EP(CTki+1)+SWi×EP(STki+1)-PWi×EP(STki+1)-SWki×EP(CTki+1)≤0PW i ×EP(CT ki +1)+SW i ×EP(ST ki +1)-PW i ×EP(ST ki +1)-SW ki ×EP(CT ki +1)≤0 或CTki<ST(k+1)i时,or CT ki <ST (k+1)i , 令STki=STki+1,CTki=CTki+1;Let ST ki =ST ki +1, CT ki =CT ki +1; 其中,PWi为机器i的加工功率,SWi为机器i的空闲功率,CTki为机器i上第k个批的完工时间,STki为机器i上第k个批的开始加工时间;Among them, PW i is the processing power of machine i, SW i is the idle power of machine i, CT ki is the completion time of the k-th batch on machine i, and ST ki is the starting processing time of the k-th batch on machine i; CTki=STki+PTki CT ki =ST ki +PT ki STki=max{RTki,CT(k-1)i}ST ki =max{RT ki ,CT (k-1)i } 其中,PTki为机器i上第k个批的加工时间,其等于该批中所有工件的最大加工时间与所在机器的加工速度的比值,即Among them, PT ki is the processing time of the kth batch on machine i, which is equal to the ratio of the maximum processing time of all workpieces in the batch to the processing speed of the machine where it is located, namely
Figure FDA0002277619320000021
Figure FDA0002277619320000021
rj为工件j的加工时间,Bki为机器i上的第k个批,vi为机器i的加工速度;r j is the processing time of workpiece j, B ki is the kth batch on machine i, and v i is the processing speed of machine i; RTki为机器i上第k个批的到达时间,其等于该批中所有工件的最大到达时间,即RT ki is the arrival time of the kth batch on machine i, which is equal to the maximum arrival time of all workpieces in the batch, i.e. RTki=max{pj|j∈Bki}RT ki =max{p j |j∈B ki } pj为工件j的到达时间;p j is the arrival time of workpiece j; 步骤IV:当k>1时,令k=k-1,返回步骤III;Step IV: when k>1, set k=k-1, and return to step III; 步骤V:如果i<m,令i=i+1,返回步骤II,否则计算当前调度方案X′n的目标值,即最大完工时间Cmax和总电价成本TEC;Step V: if i<m, set i=i+1, return to step II, otherwise calculate the target value of the current scheduling plan X'n , that is, the maximum completion time Cmax and the total electricity price cost TEC; Cmax=max{CTki|i∈[1,m]}C max =max{CT ki |i∈[1,m]}
Figure FDA0002277619320000031
Figure FDA0002277619320000031
将当前调度方案X′n对应的目标值xn加入目标值集合x中;Add the target value x n corresponding to the current scheduling scheme X' n into the target value set x; 步骤VI:如果n<N,令n=n+1,返回步骤II,否则输出目标值集合x。Step VI: If n<N, let n=n+1, return to step II, otherwise output the target value set x.
5.根据权利要求4所述的基于聚类的进化算法进行多目标批调度优化的方法,其特征在于:S3所述的对目标值进行自适应聚类的方法为:5. the method that the evolutionary algorithm based on clustering according to claim 4 carries out the method for multi-objective batch scheduling optimization, it is characterized in that: the described method of S3 is carried out adaptive clustering to target value: 步骤A:获取当前迭代次数t和目标值集合x;Step A: Obtain the current iteration number t and the target value set x; 步骤B:如果t=1 or mod(t,T)=0,则跳转至步骤C进行粗聚类,否则跳转至步骤D更新聚类结果;Step B: if t=1 or mod(t, T)=0, then jump to step C for rough clustering, otherwise jump to step D to update the clustering result; 步骤C:将目标值集合输入Canopy算法,得到聚类数目K及每个类Ck,k∈[1,K]的质心点mkStep C: Input the target value set into the Canopy algorithm to obtain the number of clusters K and the centroid point m k of each class C k ,k∈[1,K]; 步骤D:基于当前质心点利用K-means算法进行单次聚类,更新类Ck的质心点mkStep D: using the K-means algorithm to perform a single clustering based on the current centroid point, and update the centroid point m k of the class C k ; 其中,mod(t,T)表示t/T的余数,粗聚类周期T为在S1中设置的全局变量。Among them, mod(t, T) represents the remainder of t/T, and the coarse clustering period T is a global variable set in S1. 6.根据权利要求5所述的基于聚类的进化算法进行多目标批调度优化的方法,其特征在于:S4中所述的为交叉变异个体确定对象的方法为:6. the method that the evolutionary algorithm based on clustering according to claim 5 carries out the method for multi-objective batch scheduling optimization, it is characterized in that: described in S4 is that the method for determining the object for the cross-mutation individual is: 步骤a:获取种群P的集合P={Pn|n∈[1,N]},以及种群P的目标值集合p的聚类结果C={Ck|k∈[1,K]};将目标值集合p的聚类结果C应用到种群P上,令n=1;Step a: Obtain the set P={P n |n∈[1,N]} of the population P, and the clustering result C={C k |k∈[1,K]} of the target value set p of the population P; Apply the clustering result C of the target value set p to the population P, let n=1; 步骤b:如果rand()≤S,则转至步骤c,否则跳转至步骤d,其中rand()表示随机数;Step b: If rand()≤S, go to step c, otherwise go to step d, where rand() represents a random number; 步骤c:从当前个体Pn所属的类Ck中随机选择另一个个体Pn′执行交叉变异操作,将子代序列Qn加入到种群Q中;Step c: randomly select another individual P n′ from the class C k to which the current individual P n belongs to perform a crossover mutation operation, and add the offspring sequence Q n to the population Q; 步骤d:从不包括当前个体Pn的任意类Ck中随机选择另一个个体Pn′执行交叉变异操作,将子代序列Qn加入到种群Q中;Step d: randomly select another individual P n′ from any class C k that does not include the current individual P n to perform a crossover mutation operation, and add the offspring sequence Q n to the population Q; 步骤e:如果n<N,令n=n+1,返回步骤b,否则输出种群Q。Step e: If n<N, let n=n+1, return to step b, otherwise output the population Q. 7.根据权利要求6所述的基于聚类的进化算法进行多目标批调度优化的方法,其特征在于:S4中所述的交叉变异的具体方法包括:通过两点交叉产生子代序列和通过两点交换对子代序列执行变异的操作;7. The method for multi-objective batch scheduling optimization by clustering-based evolutionary algorithm according to claim 6, is characterized in that: the concrete method of crossover variation described in S4 comprises: generate offspring sequence by two-point crossover and pass Two-point exchange performs the mutation operation on the descendant sequence; 所述通过两点交叉产生子代序列的具体方法为:The specific method for generating a progeny sequence through two-point crossover is: 步骤①:获取父代Pn和Pn′的序列,其子代分别定义为Qn和Qn′,序列长度为M;Step 1: Obtain the sequence of the parent P n and P n′ , the children are defined as Q n and Q n′ respectively, and the sequence length is M; 步骤②:如果rand()≥pc,则Qn=Pn,Qn′=Pn′;否则执行步骤③;Step ②: if rand()≥pc, then Q n =P n , Q n′ =P n′ ; otherwise, step ③ is performed; 步骤③:随机产生两个交叉点m1,m2且1<m1<m2<M,对于Qn,保留Pn交叉点两端的工件序列,交叉点之间的工件按照相应工件在Pn′中的顺序排列,对于Qn′,保留Pn′交叉点之间的工件序列,交叉点两端的工件按照相应工件在Pn中的顺序排列;Step ③: randomly generate two intersection points m 1 , m 2 and 1<m 1 <m 2 <M, for Q n , keep the workpiece sequence at both ends of the intersection point of P n , and the workpieces between the intersection points are at P according to the corresponding workpieces. The order in n' is arranged, for Q n' , the sequence of workpieces between the intersections of P n' is reserved, and the workpieces at both ends of the intersection are arranged in the order of the corresponding workpieces in P n ; 所述对子代序列进行变异操作的方法为:The method for performing mutation operation on the progeny sequence is: 步骤(1):提取当前子代个体QnStep (1): extract the current offspring individual Q n ; 步骤(2):如果rand()≥pm,则Qn不变,否则随机产生两个变异点,交换Qn中两个变异点对应的工件;Step (2): If rand()≥pm, then Q n is unchanged, otherwise two mutation points are randomly generated, and the workpieces corresponding to the two mutation points in Q n are exchanged; 其中,pc为交叉概率,pm为变异概率,均是在S1中预设的全局变量。Among them, pc is the crossover probability, and pm is the mutation probability, both of which are preset global variables in S1. 8.根据权利要求7所述的基于聚类的进化算法进行多目标批调度优化的方法,其特征在于:S5中所述的更新集合A的方法为:依次提取父代种群P和子代种群Q的帕累托个体,8. The method for multi-objective batch scheduling optimization by cluster-based evolutionary algorithm according to claim 7, is characterized in that: the method for updating set A described in S5 is: successively extract parent population P and child population Q the Pareto individual,
Figure FDA0002277619320000041
时,将当前帕累托个体加入集合A中;
when
Figure FDA0002277619320000041
When , add the current Pareto individual to set A;
Figure FDA0002277619320000042
时,如果当前帕累托个体支配集合A中的部分解,则移除A中被支配的解,存入当前帕累托个体;如果当前帕累托个体与集合A中的解互不支配,则将当前帕累托个体存入集合A,如果当前帕累托个体被集合A中的所有解支配,则不进行任何操作;重复上述操作,直到提取完父代种群P和子代种群Q中的帕累托个体;
when
Figure FDA0002277619320000042
When , if the current Pareto individual dominates some solutions in set A, remove the dominated solutions in A and store them in the current Pareto individual; if the current Pareto individual and the solutions in set A do not dominate each other, Then save the current Pareto individual into set A. If the current Pareto individual is dominated by all solutions in set A, no operation is performed; the above operations are repeated until the parent population P and child population Q are extracted. Pareto individual;
评价个体是否被支配的标准是采用帕累托支配关系,定义如下:The criterion for evaluating whether an individual is dominated is to use the Pareto dominance relationship, which is defined as follows: F(w)=(f1(w),f2(w),...,fr(w)),当且仅当
Figure FDA0002277619320000043
fl(w)≤fl(u),且
Figure FDA0002277619320000044
fq(w)≤fq(u)时,我们称w支配u,其中,Cmax和TEC分别相当于f1(w)和f2(w),即
F(w)=(f 1 (w),f 2 (w),...,f r (w)) if and only if
Figure FDA0002277619320000043
f l (w)≤f l (u), and
Figure FDA0002277619320000044
When f q (w)≤f q (u), we say that w dominates u, where C max and TEC are equivalent to f 1 (w) and f 2 (w), respectively, namely
F(w)=(Cmax,TEC)F(w)=(C max ,TEC) 帕累托个体是在整个种群中没有被其它个体所支配的一个或多个解。A Pareto individual is one or more solutions that are not dominated by other individuals in the entire population.
9.根据权利要求8所述的基于聚类的进化算法进行多目标批调度优化的方法,其特征在于:S5中所述的更新种群P的方法为采用经典NSGA-II算法的选择操作从当前种群P和子代种群Q中选择更新后的种群P的个体;9. the method that the evolutionary algorithm based on clustering according to claim 8 carries out multi-objective batch scheduling optimization, it is characterized in that: the method for updating population P described in S5 is to adopt the selection operation of classical NSGA-II algorithm from current Select the individuals of the updated population P from the population P and the offspring population Q; 所述的更新重组配对概率S的方法为:The method for updating the recombination pairing probability S is: 定义第t次迭代过程中执行S4所述的交叉变异操作产生的新解贡献度value(t)为:The new solution contribution value (t) generated by the cross-mutation operation described in S4 during the t-th iteration is defined as:
Figure FDA0002277619320000051
Figure FDA0002277619320000051
其中,g1(t)表示更新后的种群P中使用步骤c的方法交叉变异得到的个体数量,g2(t)表示更新后的种群P中使用步骤d的方法交叉变异得到的个体数量;Among them, g 1 (t) represents the number of individuals in the updated population P obtained by cross-mutation using the method of step c, and g 2 (t) represents the number of individuals in the updated population P obtained by using the method of step d cross-mutation; 每隔L代更新一次重组配对概率S,方法为The recombination pairing probability S is updated every L generation, the method is
Figure FDA0002277619320000052
Figure FDA0002277619320000052
其中,t为当前的迭代次数,概率更新累计代数L为在S1中预设的全局变量。Among them, t is the current number of iterations, and the probability update cumulative algebra L is a global variable preset in S1.
10.一种基于聚类的进化算法进行多目标批调度优化的系统,其特征在于:包括10. A system for multi-objective batch scheduling optimization based on a clustering evolutionary algorithm, characterized in that: comprising: 初始化模块:初始化种群规模N、最大迭代次数MaxIteration和重组配对概率S,基于加工工件初始化种群P、初始化帕累托解集A,种群P和集合A的个体表示工件序列,初始化迭代次数t=1;Initialization module: initialize the population size N, the maximum iteration number MaxIteration and the recombination pairing probability S, initialize the population P based on the processing workpiece, initialize the Pareto solution set A, the individuals of the population P and the set A represent the workpiece sequence, and the number of initialization iterations t=1 ; 调度优化模块:对种群P执行解码规则得到所有个体的调度方案,通过局部优化调整每个调度方案并计算目标值;Scheduling optimization module: execute decoding rules on population P to obtain scheduling schemes of all individuals, adjust each scheduling scheme through local optimization and calculate the target value; 聚类模块:利用自适应聚类将种群P的目标值进行聚类;Clustering module: Use adaptive clustering to cluster the target value of population P; 子代进化模块:基于聚类结果为种群P中的个体选择交叉变异的对象生成子代种群Q,利用解码规则和局部优化计算子代种群Q的目标值;The offspring evolution module: based on the clustering results, select the cross-mutated objects for the individuals in the population P to generate the offspring population Q, and use the decoding rules and local optimization to calculate the target value of the offspring population Q; 数据更新模块:利用父代种群P和子代种群Q的帕累托个体更新集合A,对父代种群P和子代种群Q执行选择操作更新种群P,基于更新后的种群P更新重组配对概率S;Data update module: use the Pareto individuals of the parent population P and the child population Q to update the set A, perform a selection operation on the parent population P and the child population Q to update the population P, and update the recombination pairing probability S based on the updated population P; 迭代输出模块:如果t<MaxIteration,t=t+1,返回调度优化模块,否则输出集合A。Iterative output module: if t<MaxIteration, t=t+1, return to the scheduling optimization module, otherwise output set A.
CN201911133581.5A 2019-11-18 2019-11-18 Method and system for optimizing multi-target batch scheduling based on cluster evolution algorithm Active CN110909787B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911133581.5A CN110909787B (en) 2019-11-18 2019-11-18 Method and system for optimizing multi-target batch scheduling based on cluster evolution algorithm

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911133581.5A CN110909787B (en) 2019-11-18 2019-11-18 Method and system for optimizing multi-target batch scheduling based on cluster evolution algorithm

Publications (2)

Publication Number Publication Date
CN110909787A true CN110909787A (en) 2020-03-24
CN110909787B CN110909787B (en) 2023-05-12

Family

ID=69817964

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911133581.5A Active CN110909787B (en) 2019-11-18 2019-11-18 Method and system for optimizing multi-target batch scheduling based on cluster evolution algorithm

Country Status (1)

Country Link
CN (1) CN110909787B (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112148446A (en) * 2020-09-22 2020-12-29 华中科技大学 Evolutionary strategy algorithm for multi-skill resource limited project scheduling
CN112270353A (en) * 2020-10-26 2021-01-26 西安邮电大学 Clustering method for multi-target group evolution software module
CN112506999A (en) * 2020-12-17 2021-03-16 夏红梅 Cloud computing and artificial intelligence based big data mining method and digital content center
CN113220437A (en) * 2021-06-01 2021-08-06 西北工业大学 Workflow multi-target scheduling method and device
CN114327859A (en) * 2021-11-18 2022-04-12 西安电子科技大学 Source model cluster selection method for cloud computing environment large-scale problem agent optimization
CN114691327A (en) * 2022-03-23 2022-07-01 华南理工大学 Multi-objective group intelligent optimization method and system for two-stage task scheduling
CN115662498A (en) * 2022-12-29 2023-01-31 天津大学 A Design Method of Biological Metabolic Pathway Based on Improved Multi-objective Evolutionary Algorithm
CN117572836A (en) * 2023-12-15 2024-02-20 华中科技大学 Parallel batch processor scheduling method and system based on adaptive differential evolution algorithm
CN117829552A (en) * 2024-03-04 2024-04-05 北京理工大学 A robust optimization method, device and equipment based on siruo production scheduling

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107122844A (en) * 2017-03-15 2017-09-01 深圳大学 A kind of Multipurpose Optimal Method and system being combined based on index and direction vector
CN107301473A (en) * 2017-06-12 2017-10-27 合肥工业大学 Similar parallel machine based on improved adaptive GA-IAGA batch dispatching method and system
US20180357584A1 (en) * 2017-06-12 2018-12-13 Hefei University Of Technology Method and system for collaborative scheduling of production and transportation in supply chains based on improved particle swarm optimization

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107122844A (en) * 2017-03-15 2017-09-01 深圳大学 A kind of Multipurpose Optimal Method and system being combined based on index and direction vector
CN107301473A (en) * 2017-06-12 2017-10-27 合肥工业大学 Similar parallel machine based on improved adaptive GA-IAGA batch dispatching method and system
US20180357584A1 (en) * 2017-06-12 2018-12-13 Hefei University Of Technology Method and system for collaborative scheduling of production and transportation in supply chains based on improved particle swarm optimization

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
刘静等: "采用多目标随机黑洞粒子群优化算法的环境经济发电调度", 《中国电机工程学报》 *
谭琦等: "面向两客户的差异工件单机批调度问题", 《系统仿真学报》 *

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112148446B (en) * 2020-09-22 2024-05-14 华中科技大学 Evolutionary strategy method for multi-skill resource limited project scheduling
CN112148446A (en) * 2020-09-22 2020-12-29 华中科技大学 Evolutionary strategy algorithm for multi-skill resource limited project scheduling
CN112270353B (en) * 2020-10-26 2022-11-01 西安邮电大学 Clustering method for multi-target group evolution software module
CN112270353A (en) * 2020-10-26 2021-01-26 西安邮电大学 Clustering method for multi-target group evolution software module
CN112506999A (en) * 2020-12-17 2021-03-16 夏红梅 Cloud computing and artificial intelligence based big data mining method and digital content center
CN112506999B (en) * 2020-12-17 2021-07-16 福建顶点软件股份有限公司 Big data mining method and digital content server based on cloud computing and artificial intelligence
CN113220437B (en) * 2021-06-01 2022-11-01 西北工业大学 Workflow multi-target scheduling method and device
CN113220437A (en) * 2021-06-01 2021-08-06 西北工业大学 Workflow multi-target scheduling method and device
CN114327859A (en) * 2021-11-18 2022-04-12 西安电子科技大学 Source model cluster selection method for cloud computing environment large-scale problem agent optimization
CN114327859B (en) * 2021-11-18 2024-06-07 西安电子科技大学 Source model clustering selection method for large-scale problem agent optimization of cloud computing environment
CN114691327A (en) * 2022-03-23 2022-07-01 华南理工大学 Multi-objective group intelligent optimization method and system for two-stage task scheduling
CN115662498A (en) * 2022-12-29 2023-01-31 天津大学 A Design Method of Biological Metabolic Pathway Based on Improved Multi-objective Evolutionary Algorithm
CN115662498B (en) * 2022-12-29 2023-03-10 天津大学 Biological metabolic pathway design method based on improved multi-objective evolutionary algorithm
CN117572836A (en) * 2023-12-15 2024-02-20 华中科技大学 Parallel batch processor scheduling method and system based on adaptive differential evolution algorithm
CN117572836B (en) * 2023-12-15 2024-12-27 华中科技大学 Parallel batch processing machine scheduling method and system based on adaptive differential evolution algorithm
CN117829552A (en) * 2024-03-04 2024-04-05 北京理工大学 A robust optimization method, device and equipment based on siruo production scheduling

Also Published As

Publication number Publication date
CN110909787B (en) 2023-05-12

Similar Documents

Publication Publication Date Title
CN110909787A (en) Method and system for multi-objective batch scheduling optimization based on clustering evolutionary algorithm
CN107590603B (en) Based on the dispatching method and system for improving change neighborhood search and differential evolution algorithm
CN110389819B (en) Method and system for scheduling calculation intensive batch processing tasks
CN109886589A (en) A method of low-carbon Job-Shop is solved based on whale optimization algorithm is improved
CN111079987A (en) Semiconductor workshop production scheduling method based on genetic algorithm
CN108470237B (en) Multi-preference high-dimensional target optimization method based on co-evolution
CN102929263A (en) A Hybrid Flow Shop Scheduling Method
CN112882449A (en) Energy consumption optimization scheduling method for multi-variety small-batch multi-target flexible job shop
CN101901425A (en) A flexible job shop scheduling method based on multi-population co-evolution
CN116933939A (en) Flexible workshop collaborative production method and system based on improved raccoon optimization algorithm
CN102323952A (en) Reconfigurable Assembly Line Sequencing Method Based on Improved Genetic Algorithm
CN116108982B (en) Reservoir group multi-target scheduling collaborative searching method and system
CN106708659A (en) Filling method for adaptive nearest neighbor missing data
CN114021934A (en) Method for solving workshop energy-saving scheduling problem based on improved SPEA2
CN112685138A (en) Multi-workflow scheduling method based on multi-population hybrid intelligent optimization in cloud environment
CN118657448A (en) Improved production scheduling method for weaving flexible workshop based on NSGA-II
CN113505910B (en) Mixed workshop production scheduling method containing multi-path limited continuous output inventory
CN109491791B (en) Master-slave enhanced operation method and device of NSGA-II (non-subsampled Gate-associated genetic algorithm-II) based on Shenwei many-core processor
CN114237166A (en) Method for solving multi-rotating-speed energy-saving scheduling problem based on improved SPEA2 algorithm
CN106339774B (en) Dynamic batch scheduling method for die heat treatment workshop
CN116703113A (en) A high-dimensional multi-objective flexible production line scheduling method
CN119937493B (en) Flexible job shop scheduling method based on co-evolution improved HHO
CN116859869A (en) Flexible job shop scheduling method and device based on double-population hybrid genetic algorithm
Jiao Human resource allocation method based on multi objective optimization
CN116014764A (en) A distributed energy storage optimization processing method and device

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