CN106970604A - Multi-target workpiece scheduling algorithm based on ant colony algorithm - Google Patents
Multi-target workpiece scheduling algorithm based on ant colony algorithm Download PDFInfo
- Publication number
- CN106970604A CN106970604A CN201710339305.9A CN201710339305A CN106970604A CN 106970604 A CN106970604 A CN 106970604A CN 201710339305 A CN201710339305 A CN 201710339305A CN 106970604 A CN106970604 A CN 106970604A
- Authority
- CN
- China
- Prior art keywords
- workpiece
- batch
- crowd
- machine
- times iteration
- 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
Links
- 238000000034 method Methods 0.000 claims abstract description 66
- 230000008569 process Effects 0.000 claims abstract description 36
- 238000005457 optimization Methods 0.000 claims abstract description 34
- 238000004519 manufacturing process Methods 0.000 claims abstract description 17
- 230000005611 electricity Effects 0.000 claims abstract description 13
- 238000012545 processing Methods 0.000 claims description 135
- 239000003016 pheromone Substances 0.000 claims description 66
- 239000011159 matrix material Substances 0.000 claims description 42
- 241000257303 Hymenoptera Species 0.000 claims description 10
- NAWXUBYGYWOOIX-SFHVURJKSA-N (2s)-2-[[4-[2-(2,4-diaminoquinazolin-6-yl)ethyl]benzoyl]amino]-4-methylidenepentanedioic acid Chemical compound C1=CC2=NC(N)=NC(N)=C2C=C1CCC1=CC=C(C(=O)N[C@@H](CC(=C)C(O)=O)C(O)=O)C=C1 NAWXUBYGYWOOIX-SFHVURJKSA-N 0.000 claims description 6
- 230000001174 ascending effect Effects 0.000 claims description 6
- 230000008020 evaporation Effects 0.000 claims description 3
- 238000001704 evaporation Methods 0.000 claims description 3
- 238000012005 ligant binding assay Methods 0.000 claims description 3
- 241000220317 Rosa Species 0.000 claims description 2
- 238000004364 calculation method Methods 0.000 abstract description 2
- 230000000694 effects Effects 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 4
- 238000009826 distribution Methods 0.000 description 4
- 238000010923 batch production Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 235000013399 edible fruits Nutrition 0.000 description 2
- 238000010094 polymer processing Methods 0.000 description 2
- 238000012805 post-processing Methods 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 230000002411 adverse Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 238000009776 industrial production Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
- G05B19/41865—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by job scheduling, process planning, material flow
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/32—Operator till task planning
- G05B2219/32252—Scheduling production, machining, job shop
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P80/00—Climate change mitigation technologies for sector-wide applications
- Y02P80/10—Efficient use of energy, e.g. using compressed air or pressurized fluid as energy carrier
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- General Engineering & Computer Science (AREA)
- Manufacturing & Machinery (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- General Factory Administration (AREA)
Abstract
The invention discloses a workpiece scheduling method based on an ant colony optimization algorithm, which is characterized in that a Pareto multi-objective method is used, workpieces are effectively selected through workpiece characteristics in a scheduling process, and a low-electricity-price time period is preferentially utilized for production, so that two objectives of optimizing electric power cost A and delay degree B are realized. According to the invention, a better workpiece scheduling scheme is obtained through calculation under the environment of a parallel batch processor with an industrial time-of-use electricity price background, the utilization rate of enterprise resources and the use efficiency of the enterprise resources on energy are maximized, the cost control and the optimization of production effects in the production process of enterprises are achieved, and the market competitiveness of the enterprises is improved.
Description
Technical field
It is a kind of multiple target Job Scheduling algorithm based on ant group algorithm the invention belongs to industrial production scheduling field.
Background technology
In Vehicles Collected from Market environment, the core competitiveness of manufacturing enterprise not just simple manufacturing capacity will also have excellent
Elegant production scheduling algorithm rationally to utilize the utilization rate of resource and equipment, raising resource and equipment, and being reached with this reduces cost
Increase the purpose of competitiveness.Although the existing Job Scheduling algorithm of in the market can also find feasible solution to a certain extent,
It is that often corresponding problem model is simpler, so that the problem of being not fully appropriate under actual production environment, so as to because calculate
The applicable scene of method is relatively limited to, and causes the quality of solution found not high enough.It is right because work-piece constraint condition is more in actual calculate
Efficiency of energy utilization under dynamic step price is weaker, and existing algorithm is often optimized for single target, it is difficult to
Enterprise is met to multiple targets while the demand optimized.
The content of the invention
There is provided a kind of multiple target Job Scheduling based on ant group algorithm to overcome weak point of the prior art by the present invention
Algorithm, to which under the parallel batch processor environment of industrial tou power price background, calculating obtains more preferable Job Scheduling scheme, with most
The utilization rate of bigization ERM and the energy, so as to reach to the excellent of the cost control in enterprise production process and production effect
Change, and improve the market competitiveness of enterprise.
The present invention adopts the following technical scheme that to solve technical problem:
A kind of the characteristics of Job Scheduling method based on ant colony optimization algorithm of the present invention is to apply the production in tou power price
Under the conditions of, n workpiece is dispatched in the scheduling scheme processed on K platform identical batch processing machines in batches, the scheduling scheme
It is using power cost A and delay degree B as optimization aim;The tou power price is the step function on the time, and 0 moment was height
Electricity price starting point, high rate period length is UH, high rate period power price is CH, low rate period length is UL, low electricity price valency
Lattice are CL, finish time of each high rate period is to carve at the beginning of low rate period, the end of each low rate period
Moment is to carve at the beginning of high rate period;
The size for remembering j-th of workpiece is sj, the arrival time of j-th of workpiece is aj, a length of p during the processing of j-th workpiecej,
The deadline of j-th of workpiece is dj, the weight of j-th of workpiece is wj;The beginning process time of j-th of workpiece is j-th of workpiece
Place batch beginning process time;The completion date of j-th of workpiece be the place batch of j-th workpiece beginning process time with
The processing duration sum at place batch;The time delay of j-th of workpiece is the cut-off of j-th of workpiece completion date and j-th of workpiece
The difference of time;When the time delay of j-th of workpiece is negative, represent that j-th of workpiece does not postpone, then make j-th of workpiece delay
Time is " 0 ";1≤j≤n;
The processing duration P of note b-th batchbFor the maximum of all work pieces process durations in b-th batch;B-th batch arrives
Up to time AbFor the maximum of all workpiece arrival times in b-th batch;The completion date E of b-th crowdbFor the beginning of b-th batch
Process time XbWith the processing duration P of b-th crowdbSum;The beginning process time X of b-th crowdbFor the b-th batch of place batch at
Manage the completion date E of b-1 crowdes on machineb-1A between the time is reached with b-th batchbHigher value;Section of b-th batch
Only time DbFor the minimum value of all workpiece deadlines in b-th batch;
The working power for remembering kth platform batch processing machine is Hp, the standby power of kth platform batch processing machine is Hw, kth platform batch
The capacity of handling machine is designated as B;The completion date of kth platform batch processing machine is last batch on kth platform batch processing machine
Completion date;1≤k≤K;
It is multiplied by the weight sum of associated workpiece to represent delay degree B with the time delay of all workpiece;To process electric power
The summation of cost and stand-by electric cost represents power cost A;The processing power cost adds for all batch processing machines
Work power is multiplied by processing duration and is multiplied by tou power price sum;The stand-by electric cost is the standby power of all batch processing machines
It is multiplied by standby time and is multiplied by tou power price sum;
The Job Scheduling method is to carry out in accordance with the following steps:
Step 1, n workpiece is carried out it is pre- in batches, obtain the pre-scheduling scheme using power cost A as optimization aim, and count
The power cost value for calculating corresponding pre-scheduling scheme is designated as LA;
Step 2, n workpiece is carried out it is pre- in batches, obtain the pre-scheduling scheme using delay degree B as optimization aim, and count
The delay range angle value for calculating corresponding pre-scheduling scheme is designated as LB;
Step 3, the upper limit using formula (3) and formula (4) acquisition using power cost A as the pheromones of optimization aimWith under
Limit
In formula (3) and formula (4), ρ is pheromones evaporation rate, and μ is the parameter value set by algorithm;
Similarly obtain, using delay degree B as the upper limit of the pheromones of optimization aimAnd lower limit
Step 4, the parameter for initializing ant group algorithm:
Make LmaxMaximum iteration is represented, L represents the number of times of current iteration;T represents ant sum, and t represents each iteration
In the t ant numbering;And it is initialized as L=1;
With power cost value LAAs from the global minima power cost value for being initialised to the L-1 times iterationWith electric power
Value at cost LAIt is used as the minimum power value at cost of the L-1 times iterationWith delay range angle value LBAs from being initialised to L-1
The global minima delay range angle value of secondary iterationWith delay range angle value LBIt is used as the minimum delay degree value of the L-1 times iteration
The Pheromone Matrix using power cost A as optimization aim is set up, and initializes each member in corresponding information prime matrix
Element value beObtain the power cost A of the L-1 times iteration Pheromone Matrix;Remember the power cost A's of the L-1 times iteration
The element of the i-th row jth row is in Pheromone Matrix1≤i,j≤n;
The Pheromone Matrix using delay degree B as optimization aim is set up, and initializes each member in corresponding information prime matrix
Element value beObtain the delay degree B of the L-1 times iteration Pheromone Matrix;Remember the delay degree B's of the L-1 times iteration
The element of the i-th row jth row is in Pheromone Matrix1≤i,j≤n;
Obtain the power cost A of the t ant Target Preference F respectively using formula (1) and formula (2)t AWith delay degree B's
Target Preference Ft B, so as to obtain the power cost A of all ants Target Preference and delay degree B Target Preference:
Ft B=1-Ft A (2)
Step 5, initialization t=1;
Step 6, the scheduling scheme for building the L times iteration, the t ant;
Step 7, the scheduling scheme to the L times iteration, the t ant are optimized, and obtain improved scheduling scheme;
Step 8, make t+1 be assigned to t, and judge whether t > T set up, if so, then perform step 9;Otherwise, step is performed
Rapid 6;
Step 9, calculate respectively all ants of the L times iteration scheduling scheme power cost value A and delay range angle value B;
Choose power cost value minimum in the L times iterationIt is assigned toAnd willWithMake comparisons, choose
Smaller value is as from the global optimum's power cost for being initialised to the L times iterationSo as to basisUtilize formula (3) and formula
(4) upper limit of power cost A pheromones is updatedAnd lower limitObtain the power cost A of the L times iteration pheromones
The upper limitAnd lower limit
Choose delay range angle value minimum in the L times iterationIt is assigned toAnd willWithMake comparisons, choose
Smaller value is as from the global optimum's delay degree for being initialised to the L times iterationSo as to basisSimilarly obtain, the L times
The upper limit of the delay degree B of iteration pheromonesAnd lower limit
Step 10, the upper limit with the power cost A of the L times iteration pheromonesAnd lower limitConstraint under,
UtilizeThe power cost A of the L-1 times iteration Pheromone Matrix is updated, the power cost A of the L times iteration information is obtained
Prime matrix;
With the upper limit of the delay degree B of the L times iteration pheromonesAnd lower limitConstraint under, utilizeThe delay degree B of the L-1 times iteration Pheromone Matrix is updated, the delay degree B of the L times iteration pheromones square is obtained
Battle array;
Step 11, the solution concentration by scheduling scheme the L times iteration of addition of all ants of the L times iteration, from institute
The solution for stating the L times iteration concentrates deletion Pareto to be dominated the corresponding Job Scheduling scheme of solution, so as to update the L times iteration
Disaggregation and be used as the disaggregation of the L+1 times iteration;
Step 12, make L+1 be assigned to L, and judge L > LmaxWhether set up, if so, then export the disaggregation of the L times iteration
It is used as global optimum's scheduling scheme;Otherwise, step 5 is performed.
The characteristics of Job Scheduling method of the present invention, lies also in, and pre- in the step 1 is according to the following procedure in batches
Carry out:
Step 1.1 arranges n workpiece according to respective arrival time ascending order, n workpiece after being sorted;
The number of step 1.2 definition batch is b;Initialize j=1, b=1;
Step 1.3 builds b-th of sky batch;
Step 1.4 adds j-th of workpiece after sequence in b-th batch, judges j+1>Whether n sets up, if so, represent
Complete in batches in advance, so as to obtain B1 batches, and perform step 1.6, otherwise, perform step 1.5;
Step 1.5 judges whether+1 workpiece of jth is more than the remaining space of b-th batch, if being more than, j+1 is assigned to
J, b+1 is assigned to after b, return to step 1.3;Otherwise, j+1 is assigned to after j, return to step 1.4;
Step 1.6 initializes b=1;
Step 1.7 travels through K platform batch processing machines and finds the earliest machine of completion date, is designated as current batch processing machine;
B-th batch is put on current batch processing machine and produces by step 1.8, so as to update the completion of current batch processing machine
Time is the completion date of b-th batch;B+1 is assigned to b, if b>B1 is set up, then it represents that B1 batches complete production, obtain presetting
Degree scheme, otherwise, performs step 1.7.
Pre- in the step 2 is to carry out according to the following procedure in batches:
Step 3.1 arranges n workpiece according to respective arrival time ascending order, n workpiece after being sorted;
The number of step 3.2 definition batch is b;Initialize j=1, b=1;
Step 3.3 builds b-th of sky batch;
Step 3.4 judges the arrival time a of j-th of workpiece after sequencejWhether the arrival time A of b-th batch is less thanbIf,
It is less than, then j-th of workpiece is put into workpiece set to be produced, otherwise, performs step 3.6;
J+1 is assigned to after j by step 3.5, judges j>Whether n sets up, if so, then perform step 3.6;Otherwise, perform
Step 3.4;
Step 3.6 judges whether the workpiece set to be produced is empty set, if empty set, then performs step 3.7, otherwise,
Select the maximum workpiece of weight from the workpiece set to be produced, and judge whether the size of the maximum workpiece of weight is more than the
The remaining space of b batches, if being more than, b+1 is assigned to after b, performs step 3.3;Otherwise, by the maximum workpiece of weight from institute
State after deleting and add in b-th batch in workpiece set to be produced, perform step 3.6;
Step 3.7 judges the size s of j-th of workpiecejWhether it is more than the remaining space of b-th batch, if being more than, b+1 is assigned
It is worth to after b, return to step 3.3;Otherwise, j-th of workpiece is added in b-th batch;
Step 3.8 judges j+1>Whether n sets up, if so, expression is completed in batches in advance, so as to obtain B2 batches, and is performed
Step 3.9;Otherwise, j+1 is assigned to after j, performs step 3.4;
Step 3.9 initializes b=1;
Step 3.7 travels through K platform batch processing machines and finds the earliest machine of completion date, is designated as current batch processing machine;
B-th batch is put on current batch processing machine and produces by step 3.8, so as to update the completion of current batch processing machine
Time is the completion date of b-th batch;B+1 is assigned to b, if b>B2 is set up, then it represents that B2 batches complete production, obtain on
The pre-scheduling scheme of delay degree;Otherwise, step 3.7 is performed.
The step 6 is to carry out according to the following procedure:
Step 6.1, traversal K platform batch processing machines, the minimum machine of selection completion date, are designated as kth platform batch processing machine;
Create b-th batch of the t ant of the L times iteration on the kth platform batch processing machine;
Step 6.2, structure workpiece set List1, List2 and List3;
All workpiece that the deadline of workpiece is less than to the on-stream time of b-th batch add the workpiece set List1
In;
The arrival time of workpiece is less than or equal to the on-stream time of b-th batch, and the deadline of workpiece is more than b-th batch
All workpiece of on-stream time add in the workpiece set List2;
The arrival time of workpiece is more than into all workpiece for the on-stream time criticized to add in the workpiece set List3;
Step 6.3, judge whether List1 is empty set, if empty set, then perform step 6.4, otherwise, utilize formula (5) to calculate
J-th workpiece adds the choosing of b-th batch on kth platform machine of the t ant of the L times iteration in the workpiece set List1
Determine Probability pLtkbj:
In formula (5), ALtkbRepresent the t ant of the L times time iteration arrival time of b-th batch on kth platform machine;
A workpiece is first selected from workpiece set List1 using wheel disc bet method, then by the workpiece chosen from set
Delete and added in b-th batch of the t ant of the L times iteration on kth platform machine in List1, then perform step
6.6;
Step 6.4 judges whether List2 is empty set, if empty set, then step 6.5 is performed, otherwise, from the workpiece set
A workpiece is selected at random in List2, then the workpiece chosen is deleted from List1 set and the t of the L times iteration is added only
In b-th batch on kth platform machine of ant, step 6.6 is then performed;
Step 6.5 judges whether List3 is empty set, if empty set, then deletes the t ant of the L times iteration in kth platform
B-th batch on machine, so as to represent to complete the structure of the scheduling scheme of the t ant of the L times iteration;Otherwise, from described
Selection reaches time minimum workpiece in workpiece set List3, and workpiece then will be chosen to be deleted from List3 set and add institute
State in b-th batch of the t ant of the L times iteration on kth platform machine;
Step 6.6 builds workpiece set TotalList, and the workpiece in List1, List2 and List3 is all added into work
In part set TotaList;
If step 6.7 workpiece set TotalList is sky, then it represents that complete the scheduling of the t ant of the L times iteration
The structure of scheme, it is otherwise, workpiece size in workpiece set TotalList is surplus less than or equal to b-th batch on kth platform machine
Complementary space, and the workpiece of the on-stream time of b-th batch that is less than or equal on kth platform machine of deadline of workpiece is added to workpiece
In set List1;
The remaining space of b-th batch that workpiece size in workpiece set TotalList is less than or equal on kth platform machine,
The arrival time of workpiece is more than kth less than or equal to the on-stream time of b-th batch on kth platform machine, and the deadline of workpiece
The workpiece of the on-stream time of b-th batch on platform machine is added in workpiece set List2;
Workpiece size in workpiece set TotalList is less than the remaining space of b-th batch on kth platform machine, and work
The workpiece that the arrival time of part is more than the on-stream time of b-th batch on kth platform machine is added in workpiece set List3;
Step 6.8 judges whether set List1 is empty set, if empty set, then performs step 6.9, otherwise, utilize formula (6)
With ant in the t of j-th of workpiece the L times iteration of addition in formula (7) the calculating work pieces process set List1 in kth platform machine
The heuristic information on power cost A of b-th batch on deviceWith the heuristic information on delay degree B
And perform step 6.10;
In formula (6) and formula (7), PLtkbRepresent b-th batch on kth platform machine of ant in the t of the L times iteration plus
Man-hour is long, WmaxRefer to the maximum of workpiece weight span;
Step 6.9 judges whether set List2 is empty set, if empty set, then performs step 6.11, otherwise, use formula
(6) and formula (8) calculate heuristic informationWithAnd perform step 6.10;
In formula (8), | List2 | represent the workpiece sum in the workpiece set List2 in step 6.7;
Step 6.10 sets workpiece set List, if workpiece set List1 is not sky, the workpiece in List1 is whole
Add in List, be otherwise all added to the workpiece in workpiece set List2 in List;
J-th of workpiece in workpiece set List, which is calculated, using formula (9) adds the t ant of the L times iteration in kth platform machine
The element value of the average information of b-th batch on device
In formula (9), QLtkbB-th batch of t-th of ant of the L times iteration in k-th of machine is represented, | QLtkn|
Represent b-th batch Q of t-th of the ant of the L times iteration in k-th of machineLtkbIn workpiece sum;
J-th of workpiece in workpiece set List, which is calculated, using formula (10) adds the t ant of the L times iteration in kth platform
The probability P of b-th batch on machineLtkbj:
In formula (10), α, β and γ are set empirical value;| List | represent the workpiece sum in workpiece set List;
Utilize probability PLtkbjWorkpiece is chosen from the workpiece set List by wheel disc bet method and is added to the L times iteration
B-th batch Q of t-th of ant in k-th of machineLtkbIn, then by workpiece set List, List1, List2 and List3
In all workpiece be added in workpiece set TotalList, and perform step 6.7;
Step 6.11 judges whether workpiece set List3 is empty set, if empty set then performs step 6.1, otherwise chooses institute
The workpiece of arrival time minimum in workpiece set List3 is stated, current workpiece is designated as;
If the arrival time of current workpiece is less than crowd QLtkbDeadline, then by current workpiece from workpiece set List3
It is middle to delete and be added to crowd QLtkbIn after, perform step 6.6, otherwise perform step 6.1.
The step 7 is to carry out according to the following procedure:
Step 7.1 initializing variable k=1, b=1;
Step 7.2 calculates b-th crowd of Q of the kth platform batch processing machine in scheduling schemekbRemaining space;
Step 7.3 initializing variable u=1, v=1;
Step 7.4 judges v-th crowd of Q of u platforms batch processing machine in the scheduling schemeuvOn-stream time whether be less than
Or equal to crowd QkbOn-stream time, if so, performing step 7.5, workpiece set List is otherwise built, from crowd QuvIn select simultaneously
The workpiece for meeting following three condition is put into workpiece set List:
Condition 1:The size of workpiece is less than or equal to crowd QkbRemaining space;
Condition 2:The arrival time of workpiece is less than or equal to crowd QkbOn-stream time;
Condition 3:The processing duration of workpiece is less than or equal to crowd QkbDeadline DkbWith crowd QkbOn-stream time XkbDifference;
If List is sky, step 7.5 is performed, otherwise, by deadline of workpiece minimum workpiece from workpiece set
Deleted in List and be put into crowd QkbIn, then remaining workpiece in workpiece set List put back into crowd QuvIn after, perform step 7.5;
V+1 is assigned to v by step 7.5, the lot number amount whether v is less than in u platform batch processing machines is judged, if so, then holding
Row step 7.3, otherwise, performs step 7.6;
U+1 is assigned to u by step 7.6, makes v=1, judges whether u is less than the quantity K of batch processing machine, if so, then performing
Step 7.3, otherwise, step 7.7 is performed;
B+1 is assigned to b by step 7.7, if b is less than the lot number amount in kth platform batch processing machine, performs step 7.1,
Otherwise step 7.8 is performed;
K+1 is assigned to k by step 7.8, makes b=1, judges whether k is less than the quantity K of batch processing machine, if being less than, is held
Row step 7.1, otherwise performs step 7.9;
Step 7.9 initializing variable k=1, b=2;
Step 7.10 makes Qk(b-1)B-1 batches of k-th of machine are represented, if crowd QkbCompletion date be less than crowd Qkb's
Deadline, then step 7.11 is performed, otherwise, crowd Q is calculated respectivelyk(b-1)With crowd QkbWith exchanging processing before processing sequence is exchanged
Workpiece delay degree sum after order, is exchanged after processing sequence if exchanging the workpiece delay degree sum before processing sequence and being less than
Workpiece delay degree sum, then perform step 7.11, otherwise, crowd Q will be exchangedk(b-1)With crowd QkbProcessing sequence after, perform step
Rapid 7.11;
B+1 is assigned to b by step 7.11, if b is less than the lot number amount on k-th of batch processing machine, performs step
7.10, otherwise, k+1 is assigned to k, made after b=2, judge whether k≤K sets up, if so, step 7.10 is then performed, otherwise,
Perform step 7.12;
Step 7.12 initializing variable k=1;
Batch total on kth platform batch processing machine is assigned to variable b by step 7.13;
Step 7.14 judges b-th crowd of Q on kth platform handling machinekbDeadline whether be less than crowd QkbComplete man-hour
Between, if so, then performing step 7.19, otherwise, crowd Q is judged using formula (11)kbWhether completion date is in low Price zone, if
It is then to perform step 7.17, otherwise, performs step 7.15;
In formula (11), t is current time, and f (t) is the electricity price corresponding to t;K represents periodicity, k ∈ 0,1,
2,…};
Step 7.15 judges crowd QkbDeadline whether be less thanIf so,
Step 7.19 is then performed, otherwise, step 7.16 is performed;
Step 7.16 judges crowd QkbDeadline whether be more than or equal toIf
Be, then will crowd QkbOn-stream time be changed toOtherwise, by crowd QkbOn-stream time
It is changed to crowd QkbDeadline DkbWith crowd QkbHandling duration PkbDifference;Perform step 7.19;
Step 7.17 judges crowd Q using formula (11)kbBeginning process time whether be in low Price zone, if so, then holding
Row step 7.19, otherwise, performs step 7.18;
Step 7.18 judges crowd Q using formula (11)kbDeadline whether be more than
If so, then will crowd QkbOn-stream time be changed toOtherwise, by crowd QkbOn-stream time
It is changed to crowd QkbDeadline and crowd QkbProcessing duration PkbDifference;
B-1 is assigned to b by step 7.19, if b is not equal to 0, performs step 7.21, otherwise k+1 is assigned to after k,
Perform step 7.20;
Step 7.20 judges whether k is more than K, if, then it represents that the optimization for scheduling scheme has been completed, otherwise, then
Batch total in kth platform batch processing machine is assigned to after b, step 7.21 is performed;
Step 7.21 judges crowd QkbDeadline whether be less than crowd QkbCompletion date, if so, then performing step
7.19, otherwise, perform step 7.22;
Step 7.22 judges crowd Q using formula (11)kbOn-stream time XkbWhether high rate period is in, if so, then performing
Step 7.23, otherwise, then step 7.24 is performed
Step 7.23 judges crowd QkbDeadline DkbWith crowd Qk(b+1)On-stream time Xk(b+1)Whether it is simultaneously greater thanIf so, will crowd QkbOn-stream time delay be min (Dkb,Xk(b+1))-Pkb, hold
Row step 7.19;Otherwise, step 7.19 is directly performed;
Step 7.24 judges crowd QkbCompletion date whether be in low Price zone, if so, then perform step 7.19, if
It is no, then judge crowd QkbDeadline DkbWith crowd Qk(b+1)On-stream time Xk(b+1)Whether it is simultaneously greater thanIf so, then Q is criticized in orderkbOn-stream time delay be min (Dkb,
Xk(b+1))+Pkb, step 7.19 is performed, step 7.19 is otherwise directly performed.
Compared with the prior art, beneficial effects of the present invention are embodied in:
1st, each ant is all considered as identical individual by the existing multi-objective scheduling algorithm based on ant group algorithm at present, and
Random generation pheromones preference when workpiece adds the transition probability criticized is being calculated every time, and present invention employs staged target letter
The plain preference of breath, the ant in different pheromones preferences, and whole ant colony is set in initialization to difference for every ant
Stepped distribution is presented in the preference of pheromones on the whole, so that each ant is the individual with difference preference,
During actual searching solution, these ants are using identical Pheromone Matrix but have different Target Preferences so that
The angle distribution that final solution is concentrated is enabled to when finding solution than more uniform, so as to meet the diversified demand of policymaker.
2nd, the present invention devises effective optimization method according to Question background, includes three aspects:(1) from the angle of workpiece
Improve the space availability ratio criticized.That is, from on-stream time greatly batch in the qualified workpiece of selection, by the workpiece chosen from original
Batch in delete and add on-stream time it is small batch in so that reduce on-stream time it is small batch remaining space, carry on the whole
The space availability ratio of high batch, with the sum reduced batch;(2) the total delay degree from the orientation optimization of batch sequence.That is, same
On batch processing machine, the qualified two adjacent processing sequences criticized are exchanged, on the premise of arrival time is close, preferentially
Process deadline it is small batch so that reached reduction overall delay degree purpose;(3) from the orientation optimization of tou power price
Power cost.That is, by the on-stream time for suitably postponing to criticize, the processing period criticized is use up on the basis of delay degree is not increased
Measure toward the movement of low rate period, so as to reach the purpose for the power cost target for reducing scheduling scheme.By three above side
The optimization in face, can optimize Job Scheduling scheme simultaneously in two targets of delay degree and power cost, improve algorithm and ask
The quality of solution gained scheduling scheme.
3rd, the present invention is when calculating heuristic, according to workpiece arrival time and workpiece deadline with criticizing on-stream time not
Together, devise different candidate lists, and devise according to different candidate lists different heuristic informations elements so that algorithm is more
Suit and use background, it is more careful, accelerate the process of search solution and improve the quality of search solution.
4th, the present invention is using the plain span upper limit τ of multidate informationmaxWith pheromones span lower limit τminCalculating side
Case, the desired value first by pre-scheduling scheme initializes the pheromones span upper limit τ of corresponding information prime matrixmaxWith under
Limit τmin, then select the solution of global optimum in correspondence target to update the pheromones upper limit τ of correspondence target after each iterationmaxWith
Lower limit τmin, solve because problem excessively complexity causes effective target lower bound to be difficult to obtain, so as to be difficult to determine the pheromones upper bound
And the problem of lower bound.Compared to the method for the plain scope of fix information that other ant group algorithms are used, the strategy not only facilitates height
The solution for finding better quality is imitated, and effectively prevent lower bound and calculates adverse consequences that is inaccurate and causing so that algorithm is more
It is flexibly and accurate.
5th, the present invention is updated pair using the desired value of the optimal scheduling scheme on the single goal direction in iteration each time
Pheromone Matrix is answered, only corresponding Pheromone Matrix is updated using the optimal ant of single iteration on a single goal every time, makes
Obtaining Pheromone Matrix more accurately can be evolved and be updated.
6th, the present invention uses Pareto multi-target methods, and workpiece is divided by using workpiece features in scheduling process
Class is dispatched, and is preferentially produced, optimized while realizing Bi-objective using the low electricity price period.
Brief description of the drawings
Fig. 1 is inventive algorithm flow chart;
Fig. 2 is inventive algorithm and classical multi-objective Algorithm SPEA2 algorithm operation result comparison diagrams;
Fig. 3 be Optimized Operation scheme in by post-processing batch in qualified workpiece be moved to first process batch in show
It is intended to;
Fig. 4 is the schematic diagram for exchanging processing sequence by adjacent batch in Optimized Operation scheme;
Fig. 5 reduces the typical scene schematic diagram of power cost for that will be moved in Optimized Operation scheme after batch on-stream time with this.
Embodiment
In the present embodiment, a kind of Job Scheduling method based on ant colony optimization algorithm, is to apply the production in tou power price
Under the conditions of, n workpiece is dispatched in the scheduling scheme processed on K platform identical batch processing machines in batches, scheduling scheme be with
Power cost A and delay degree B is optimization aim;Tou power price is the step function on the time, and 0 moment rose for high electricity price
Point, high rate period length is UH, high rate period power price is CH, low rate period length is UL, low electricity price price is
CL, finish time of each high rate period is to carve at the beginning of low rate period, the finish time of each low rate period
It is to carve at the beginning of high rate period;
The size for remembering j-th of workpiece is sj, the arrival time of j-th of workpiece is aj, a length of p during the processing of j-th workpiecej,
The deadline of j-th of workpiece is dj, the weight of j-th of workpiece is wj;The beginning process time of j-th of workpiece is j-th of workpiece
Place batch beginning process time;The completion date of j-th of workpiece be the place batch of j-th workpiece beginning process time with
The processing duration sum at place batch;The time delay of j-th of workpiece is the cut-off of j-th of workpiece completion date and j-th of workpiece
The difference of time;When the time delay of j-th of workpiece is negative, represent that j-th of workpiece does not postpone, then make j-th of workpiece delay
Time is " 0 ";1≤j≤n;
The processing duration P of note b-th batchbFor the maximum of all work pieces process durations in b-th batch;B-th batch arrives
Up to time AbFor the maximum of all workpiece arrival times in b-th batch;The completion date E of b-th crowdbFor the beginning of b-th batch
Process time XbWith the processing duration P of b-th crowdbSum;The beginning process time X of b-th crowdbFor the b-th batch of place batch at
Manage the completion date E of b-1 crowdes on machineb-1A between the time is reached with b-th batchbHigher value;Section of b-th batch
Only time DbFor the minimum value of all workpiece deadlines in b-th batch;
The working power for remembering kth platform batch processing machine is Hp, the standby power of kth platform batch processing machine is Hw, kth platform batch
The capacity of handling machine is designated as B;The completion date of kth platform batch processing machine is last batch on kth platform batch processing machine
Completion date;1≤k≤K;
It is multiplied by the weight sum of associated workpiece to represent delay degree B with the time delay of all workpiece;To process electric power
The summation of cost and stand-by electric cost represents power cost A;Process the processing work(that power cost is all batch processing machines
Rate is multiplied by processing duration and is multiplied by tou power price sum;Stand-by electric cost is multiplied by standby for the standby power of all batch processing machines
Duration is multiplied by tou power price sum;
Specifically, as shown in figure 1, Job Scheduling method is to carry out in accordance with the following steps:
Step 1, n workpiece is carried out it is pre- in batches, obtain the pre-scheduling scheme using power cost A as optimization aim, and count
The power cost value for calculating corresponding pre-scheduling scheme is designated as LA;Specifically,
Step 1.1 arranges n workpiece according to respective arrival time ascending order, n workpiece after being sorted;
The number of step 1.2 definition batch is b;Initialize j=1, b=1;
Step 1.3 builds b-th of sky batch;
Step 1.4 adds j-th of workpiece after sequence in b-th batch, judges j+1>Whether n sets up, if so, represent
Complete in batches in advance, so as to obtain B1 batches, and perform step 1.6, otherwise, perform step 1.5;
Step 1.5 judges whether+1 workpiece of jth is more than the remaining space of b-th batch, if being more than, j+1 is assigned to
J, b+1 is assigned to after b, return to step 1.3;Otherwise, j+1 is assigned to after j, return to step 1.4;
Step 1.6 initializes b=1;
Step 1.7 travels through K platform batch processing machines and finds the earliest machine of completion date, is designated as current batch processing machine;
B-th batch is put on current batch processing machine and produces by step 1.8, so as to update the completion of current batch processing machine
Time is the completion date of b-th batch;B+1 is assigned to b, if b>B1 is set up, then it represents that B1 batches complete production, obtain presetting
Degree scheme, otherwise, performs step 1.7.
Step 2, n workpiece is carried out it is pre- in batches, obtain the pre-scheduling scheme using delay degree B as optimization aim, and count
The delay range angle value for calculating corresponding pre-scheduling scheme is designated as LB;Specifically,
Step 2.1 arranges n workpiece according to respective arrival time ascending order, n workpiece after being sorted;
The number of step 2.2 definition batch is b;Initialize j=1, b=1;
Step 2.3 builds b-th of sky batch;
Step 2.4 judges the arrival time a of j-th of workpiece after sequencejWhether the arrival time A of b-th batch is less thanbIf,
It is less than, then j-th of workpiece is put into workpiece set to be produced, otherwise, performs step 2.6;
J+1 is assigned to after j by step 2.5, judges j>Whether n sets up, if so, then perform step 2.6;Otherwise, perform
Step 3.4;
Step 2.6 judges whether workpiece set to be produced is empty set, if empty set, then performs step 2.7, otherwise, from treating
The maximum workpiece of selection weight in workpiece set is produced, and judges whether the size of the maximum workpiece of weight is more than b-th batch
Remaining space, if being more than, b+1 is assigned to after b, performs step 2.3;Otherwise, by the maximum workpiece of weight from work to be produced
After deleting and being added in b-th batch in part set, step 2.6 is performed;
Step 2.7 judges the size s of j-th of workpiecejWhether it is more than the remaining space of b-th batch, if being more than, b+1 is assigned
It is worth to after b, return to step 2.3;Otherwise, j-th of workpiece is added in b-th batch;
Step 2.8 judges j+1>Whether n sets up, if so, expression is completed in batches in advance, so as to obtain B2 batches, and is performed
Step 2.9;Otherwise, j+1 is assigned to after j, performs step 2.4;
Step 2.9 initializes b=1;
Step 2.7 travels through K platform batch processing machines and finds the earliest machine of completion date, is designated as current batch processing machine;
B-th batch is put on current batch processing machine and produces by step 2.8, so as to update the completion of current batch processing machine
Time is the completion date of b-th batch;B+1 is assigned to b, if b>B2 is set up, then it represents that B2 batches complete production, obtain on
The pre-scheduling scheme of delay degree;Otherwise, step 2.7 is performed.
Step 1 and step 2 are scheduled to generate pre-scheduling scheme by using simple dispatching algorithm to workpiece, here
It is outstanding to be not required for solution, merely to it is not too big solution in order to which step 3 is initialized to obtain one with optimal solution gap
Corresponding information prime matrix bound numerical value, and according to the pheromones limit value calculated come fresh information prime matrix, subsequently
Still corresponding informance prime matrix bound numerical value each can be updated using correspondence globally optimal solution after each iteration, make the present invention
Algorithm is more flexible.
Step 3, the upper limit according to formula (3) and formula (4) acquisition using power cost A as the pheromones of optimization aimWith under
Limit
ρ is pheromones evaporation rate in formula (3), and μ is the parameter value set by algorithm.Problem-instance is carried out in the present embodiment
During solution, ρ=0.08, μ=0.05 is set
Similarly obtain, using delay degree B as the upper limit of the pheromones of optimization aimAnd lower limit
Step 4, the parameter for initializing ant group algorithm:
Make LmaxMaximum iteration is represented, L represents the number of times of current iteration;T represents ant sum, and t represents each iteration
In the t ant numbering;And it is initialized as L=1;
With power cost value LAAs from the global minima power cost value for being initialised to the L-1 times iterationWith electric power
Value at cost LAIt is used as the minimum power value at cost of the L-1 times iterationWith delay range angle value LBAs from being initialised to L-1
The global minima delay range angle value of secondary iterationWith delay range angle value LBIt is used as the minimum delay degree value of the L-1 times iteration
The Pheromone Matrix using power cost A as optimization aim is set up, and initializes each member in corresponding information prime matrix
Element value beObtain the power cost A of the L-1 times iteration Pheromone Matrix;Remember the power cost A's of the L-1 times iteration
The element of the i-th row jth row is in Pheromone Matrix1≤i,j≤n;
The Pheromone Matrix using delay degree B as optimization aim is set up, and initializes each member in corresponding information prime matrix
Element value beObtain the delay degree B of the L-1 times iteration Pheromone Matrix;Remember the delay degree B's of the L-1 times iteration
The element of the i-th row jth row is in Pheromone Matrix1≤i,j≤n;
Obtain the power cost A of the t ant Target Preference F respectively using formula (1) and formula (2)t AWith delay degree B's
Target Preference Ft B, so as to obtain the power cost A of all ants Target Preference and delay degree B Target Preference:
Ft B=1-Ft A (2)
Traditional multiple target ant group algorithm, can be according to the information being separately provided for each target when building scheduling scheme
Prime matrix, and regard each ant as identical individual, a random number is generated when calculating new probability formula, and according to random
Number determines the preference of each pheromones, so as to calculate the probability that workpiece is added in criticizing.But a problem will be so produced, such as
Fruit is biased into target A calculating random weight when workpiece 1 adds crowd A probability, but calculate when workpiece 2 adds this batch with
Machine weight may will be inclined to target B, and easily causing both probability does not have comparability.And target is used in inventive algorithm
Preference Ft AAnd Ft BRandom number is instead of, by a fixed attribute of the Target Preference as ant, ladder target is set in ant colony
Preference so that each ant is unusual, both can ensure its fairness and validity when calculating transition probability, and can also protect
The diversity and otherness of the scheduling scheme ultimately produced are demonstrate,proved, increases the quantity of Pareto (Pareto) non-domination solution, is divided
The wider array of disaggregation of cloth.
Step 5, initialization t=1;
Step 6, the scheduling scheme for building the L times iteration, the t ant;
Step 6.1, traversal K platform batch processing machines, the minimum machine of selection completion date, are designated as kth platform batch processing machine;
Create b-th batch of the t ant of the L times iteration on kth platform batch processing machine;
Step 6.2, structure workpiece set List1, List2 and List3;
The deadline of workpiece is less than into all workpiece of the on-stream time of b-th batch to add in workpiece set List1;
The arrival time of workpiece is less than or equal to the on-stream time of b-th batch, and the deadline of workpiece is more than or equal to b
All workpiece of the on-stream time of individual batch are added in workpiece set List2;
The arrival time of workpiece is more than into all workpiece for the on-stream time criticized to add in workpiece set List3;
Step 6.3, judge whether List1 is empty set, if empty set, then perform step 6.4, otherwise, utilize formula (5) to calculate
In workpiece set List1 j-th workpiece add the t ant of the L time iteration on kth platform machine b-th batch it is selected generally
Rate pLtkbj:
In formula (5), ALtkbRepresent the t ant of the L times time iteration arrival time of b-th batch on kth platform machine;
A workpiece is first selected from workpiece set List1 using wheel disc bet method, then by the workpiece chosen from set
Delete, and added in b-th batch of the t ant of the L times iteration on kth platform machine in List1, then perform step
6.6;
Step 6.4 judges whether List2 is empty set, if empty set, then step 6.5 is performed, otherwise, from workpiece set
A workpiece is randomly choosed in List2, then the workpiece chosen is deleted from set List2 and the t of the L times iteration is added
In b-th batch on kth platform machine of ant, step 6.6 is then performed;
Step 6.5 judges whether List3 is empty set, if empty set, then deletes the t ant of the L times iteration in kth platform
B-th batch on machine, so as to represent to complete the structure of the scheduling scheme of the t ant of the L times iteration;Otherwise, from described
Selection reaches time minimum workpiece in workpiece set List3, and workpiece then will be chosen to be deleted from List3 set and the is added
In b-th batch on kth platform machine of the t ant of L iteration;
Unit one is generally in traditional Job Scheduling, in batch chooses the work for either selecting to reach at first at random
Part, but because workpiece has the constraint of arrival time and deadline in this problem simultaneously, and this algorithm builds the mode criticized
Direct built on machine is criticized, if the on-stream time criticized when building and criticizing is just it has been confirmed that so unit one choosing at random
Select, the great time delay to batch sequence is likely to result in, but if only selecting the workpiece reached at first then to produce randomness
Not enough, the situation of a large amount of similar solutions, this algorithm is allowed to be provided simultaneously with reasonability and random in combination with both modes
Property, improve the solution efficiency of algorithm.
Step 6.6 builds workpiece set TotalList, and the workpiece in List1, List2 and List3 is all added into work
In part set TotaList;
If step 6.7 workpiece set TotalList is sky, then it represents that complete the scheduling of the t ant of the L times iteration
The structure of scheme, it is otherwise, workpiece size in workpiece set TotalList is surplus less than or equal to b-th batch on kth platform machine
Complementary space, and the workpiece of the on-stream time of b-th batch that is less than or equal on kth platform machine of deadline of workpiece is added to workpiece
In set List1;
As long as the workpiece being of the required size in traditional ant group algorithm can be selected, so generation can be caused
Many very poor solutions that can not be used, greatly reduce the solution efficiency of algorithm.But inventive algorithm is in actual implementation batch,
Batch on-stream time it has been determined that we only need to the workpiece that prioritizing selection nearby reaches or have arrived at can be obtained by
More excellent solution, so we split into several classifications, each class according to the arrival time of workpiece and the difference of deadline
Other priority is different, and such mechanism substantially increases the efficiency and quality for building outstanding scheduling scheme.
The remaining space of b-th batch that workpiece size in workpiece set TotalList is less than or equal on kth platform machine,
The arrival time of workpiece is more than kth less than or equal to the on-stream time of b-th batch on kth platform machine, and the deadline of workpiece
The workpiece of the on-stream time of b-th batch on platform machine is added in workpiece set List2;
Workpiece size in workpiece set TotalList is less than the remaining space of b-th batch on kth platform machine, and work
The workpiece that the arrival time of part is more than the on-stream time of b-th batch on kth platform machine is added in workpiece set List3;
Step 6.8 judges whether set List1 is empty set, if empty set, then performs step 6.9, otherwise, utilize formula (6)
With ant in the t of j-th of workpiece the L times iteration of addition in formula (7) calculating work pieces process set List1 on kth platform machine
The heuristic information on power cost A of b-th batchWith the heuristic information on delay degree BAnd hold
Row step 6.10;
In formula (6) and formula (7), PLtkbRepresent b-th batch on kth platform machine of ant in the t of the L times iteration plus
Man-hour is long, WmaxRefer to the maximum of workpiece weight span;
Step 6.9 judges whether set List2 is empty set, if empty set, then performs step 6.11, otherwise, use formula
(6) and formula (8) calculate heuristic informationWithAnd perform step 6.10;
In formula (8), | List2 | represent the workpiece sum in the workpiece set List2 in step 6.7;
Step 6.10 sets workpiece set List, if workpiece set List1 is not sky, the workpiece in List1 is whole
Add in List, be otherwise all added to the workpiece in workpiece set List2 in List;
J-th of workpiece in workpiece set List, which is calculated, using formula (9) adds the t ant of the L times iteration in kth platform machine
The element value of the average information of b-th batch on device
In formula (9), QLtkbB-th batch of t-th of ant of the L times iteration in k-th of machine is represented, | QLtkn| represent
B-th batch Q of t-th of the ant of the L times iteration in k-th of machineLtkbIn workpiece sum;
J-th of workpiece in workpiece set List, which is calculated, using formula (10) adds the t ant of the L times iteration in kth platform
The probability P of b-th batch on machineLtkbj:
In formula (10), α, β and γ are set empirical value;| List | represent the workpiece sum in workpiece set List;
In inventive algorithm example, α=4, β=1, γ=2 are set;
Utilize probability PLtkbjWorkpiece is added to the L times iteration is chosen from workpiece set List by wheel disc bet method
B-th batch Q of the t ant in k-th of machineLtkbIn, then by workpiece set List, List1, List2 and List3
All workpiece are added in workpiece set TotalList, and perform step 6.7;
Step 6.11 judges whether workpiece set List3 is empty set, if empty set then performs step 6.1, otherwise chooses work
The workpiece of arrival time minimum, is designated as current workpiece in part set List3;
If the arrival time of current workpiece is less than crowd QLtkbDeadline, then by current workpiece from workpiece set List3
It is middle to delete and be added to crowd QLtkbIn after, perform step 6.6, otherwise perform step 6.1.
Step 7, the scheduling scheme to the L times iteration, the t ant are optimized, and obtain improved scheduling scheme;
Step 7.1 initializing variable k=1, b=1;
Step 7.2 calculates b-th crowd of Q of the kth platform batch processing machine in scheduling schemekbRemaining space;
Step 7.3 initializing variable u=1, v=1;
Step 7.4 judges v-th crowd of Q of u platforms batch processing machine in scheduling schemeuvOn-stream time whether be less than or wait
In crowd QkbOn-stream time, if so, performing step 7.5, workpiece set List is otherwise built, from crowd QuvIn select simultaneously meet
The workpiece of following three condition is put into workpiece set List:
Condition 1:The size of workpiece is less than or equal to crowd QkbRemaining space;
Condition 2:The arrival time of workpiece is less than or equal to crowd QkbOn-stream time;
Condition 3:The processing duration of workpiece is less than or equal to crowd QkbDeadline DkbWith crowd QkbOn-stream time XkbDifference;
If List is sky, step 7.5 is performed, otherwise, by deadline of workpiece minimum workpiece from workpiece set
Deleted in List and be put into crowd QkbIn, then remaining workpiece in workpiece set List put back into crowd QuvIn after, perform step 7.5;
V+1 is assigned to v by step 7.5, the lot number amount whether v is less than in u platform batch processing machines is judged, if so, then holding
Row step 7.3, otherwise, performs step 7.6;
U+1 is assigned to u by step 7.6, makes v=1, judges whether u is less than the quantity K of batch processing machine, if so, then performing
Step 7.3, otherwise, step 7.7 is performed;
B+1 is assigned to b by step 7.7, if b is less than the lot number amount in kth platform batch processing machine, performs step 7.1,
Otherwise step 7.8 is performed;
K+1 is assigned to k by step 7.8, makes b=1, judges whether k is less than the quantity K of batch processing machine, if being less than, is held
Row step 7.1, otherwise performs step 7.9;
Gone into operation as shown in figure 3, step 7.1 is done exercises to step 7.8 as by arrival time relatively early be still assigned to
In time later workpiece qualified workpiece pick out be put into first process batch in, so as to the residue made full use of batch
Space, so as to reach the purpose for reducing total elapsed time.Judge first process batch remaining space, from process below batch in look into
Look for qualified workpiece.And three conditions therein then ensure that workpiece can add first process batch in, and workpiece adds
Enter first process batch after will not make first to process batch produce new delay.In shown Fig. 3,6 in the 2nd batch of No. 2 machines
Number workpiece is added in No. 1 batch of No. 1 machine, when the loss of new delay degree is not caused, workpiece 6 in advance plus
Work, and the 2nd of No. 2 machines batch of processing duration after No. 6 workpiece are removed can shorten or constant, advantageously reduce entirety
Total elapsed time, so as to reduce power cost.
Step 7.9 initializing variable k=1, b=2;
Step 7.10 makes Qk(b-1)B-1 batches of k-th of machine are represented, if crowd QkbCompletion date be less than crowd Qkb's
Deadline, then step 7.11 is performed, otherwise, crowd Q is calculated respectivelyk(b-1)With crowd QkbWith exchanging processing before processing sequence is exchanged
Workpiece delay degree sum after order, is exchanged after processing sequence if exchanging the workpiece delay degree sum before processing sequence and being less than
Workpiece delay degree sum, then perform step 7.11, otherwise, crowd Q will be exchangedk(b-1)With crowd QkbProcessing sequence after, perform step
Rapid 7.11;
B+1 is assigned to b by step 7.11, if b is less than the lot number amount on k-th of batch processing machine, performs step
7.10, otherwise, k+1 is assigned to k, made after b=2, judge whether k≤K sets up, if so, step 7.10 is then performed, otherwise,
Perform step 7.12;
As shown in figure 4, arrival time is more or less the same between the 1st batch and the 2nd batch on machine, but section of second batch
Only the time is much smaller than the deadline of first batch, so that second batch all has occurred that delay, in this case I
Might as well first calculate down the delay degree sum of all workpiece in the two batches, if then calculated the processing sequence of two batches
The delay degree sum of all workpiece in latter two batch is swapped, if the delay degree sum after exchanging is less than before exchange
Delay degree sum, illustrates that exchange bears interest, then exchanges processing sequence, otherwise do not exchange processing sequence.
Step 7.12 initializing variable k=1;
Batch total on kth platform batch processing machine is assigned to variable b by step 7.13;
Step 7.14 judges b-th crowd of Q on kth platform handling machinekbDeadline whether be less than crowd QkbComplete man-hour
Between, if so, then performing step 7.19, otherwise, crowd Q is judged using formula (11)kbWhether completion date is in low Price zone, if
It is then to perform step 7.17, otherwise, performs step 7.15;
In formula (11), t is current time, and f (t) is the electricity price corresponding to t;K represents periodicity, k ∈ 0,1,
2,…};
Step 7.15 judges crowd QkbDeadline whether be less thanIf so,
Step 7.19 is then performed, otherwise, step 7.16 is performed;
Step 7.16 judges crowd QkbDeadline whether be more than or equal toIf
Be, then will crowd QkbOn-stream time be changed toOtherwise, then will crowd QkbWhen going into operation
Between be changed to crowd QkbDeadline DkbWith crowd QkbHandling duration PkbDifference;Perform step 7.19;
Step 7.17 judges crowd Q using formula (11)kbBeginning process time whether be in low Price zone, if so, then holding
Row step 7.19, otherwise, performs step 7.18;
Step 7.18 judges crowd Q using formula (11)kbDeadline whether be more thanIf
Be, then will crowd QkbOn-stream time be changed toOtherwise, by crowd QkbOn-stream time change
For crowd QkbDeadline and crowd QkbProcessing duration PkbDifference;
B-1 is assigned to b by step 7.19, if b is not equal to 0, performs step 7.21, otherwise k+1 is assigned to after k,
Perform step 7.20;
Step 7.20 judges whether k is more than K, if, then it represents that the optimization for scheduling scheme has been completed, otherwise, then
Batch total in kth platform batch processing machine is assigned to after b, step 7.21 is performed;
Step 7.21 judges crowd QkbDeadline whether be less than crowd QkbCompletion date, if so, then performing step
7.19, otherwise, perform step 7.22;
Step 7.22 judges crowd Q using formula (11)kbOn-stream time XkbWhether high rate period is in, if so, then performing
Step 7.23, otherwise, then step 7.24 is performed
Step 7.23 judges crowd QkbDeadline DkbWith crowd Qk(b+1)On-stream time Xk(b+1)Whether it is simultaneously greater thanIf so, will crowd QkbOn-stream time delay be min (Dkb,Xk(b+1))-Pkb, hold
Row step 7.19;Otherwise, step 7.19 is directly performed;
Step 7.24 judges crowd QkbCompletion date whether be in low Price zone, if so, then perform step 7.19, if
It is no, then judge crowd QkbDeadline DkbWith crowd Qk(b+1)On-stream time Xk(b+1)Whether it is simultaneously greater thanIf so, then Q is criticized in orderkbOn-stream time delay be min (Dkb,
Xk(b+1))-Pkb, step 7.19 is performed, step 7.19 is otherwise directly performed.
Because the electricity price background in this problem is step price, after solution generation it is appropriate by post-processing batch in
Qualified workpiece be inserted into above batch in, exchange batch processing sequence, delay batch on-stream time put it into low electricity
Valency region processing, can greatly optimize the Job Scheduling scheme of generation
As shown in figure 5, solid line is batch before mobile, dotted line is batch after mobile, when Fig. 5 illustrates two kinds of bases batch cut-off
Between difference, be moved rearwards by the more typical optimization example of different distance.When batch will be moved rearwards by, it is ensured that batch be moved rearwards by
The completion date criticized afterwards cannot be greater than the smaller value in the latter on-stream time criticized and the deadline currently criticized.And for
Last batch of each machine, then require that batch completion date criticized after movement is less than or equal to batch deadline, and require
Power consumption of polymer processing before movement, which is less than, criticizes the power consumption of polymer processing after being moved rearwards by and the increased machine stand-by power consumption sum because of rear move.
Step 8, make t+1 be assigned to t, and judge whether t > T set up, if so, then perform step 9;Otherwise, step is performed
Rapid 6;
Step 9, calculate respectively all ants of the L times iteration scheduling scheme power cost value A and delay range angle value B;
Choose power cost value minimum in the L times iterationIt is assigned toAnd willWithMake comparisons, choose
Smaller value is as from the global optimum's power cost for being initialised to the L times iterationSo as to basisUtilize formula (3) and formula
(4) upper limit of power cost A pheromones is updatedAnd lower limitObtain the power cost A of the L times iteration pheromones
The upper limitAnd lower limit
Choose delay range angle value minimum in the L times iterationIt is assigned toAnd willWithMake comparisons, choose
Smaller value is as from the global optimum's delay degree for being initialised to the L times iterationSo as to basisSimilarly obtain, the L times
The upper limit of the delay degree B of iteration pheromonesAnd lower limit
Because the complex nature of the problem, only by relaxation, some constraint can not also try to achieve effective target lower bound, so as to count
Calculation obtains that effective pheromones are interval, this algorithm using the dynamic fresh information element of globally optimal solution of correspondence target the upper limit and
Lower limit, that is, solve the problem of problem target lower bound is difficult to solution, while can also obtain above and below the reasonable accurately pheromones of comparison
Limit
Step 10, the upper limit with the power cost A of the L times iteration pheromonesAnd lower limitConstraint under, utilizeThe power cost A of the L-1 times iteration Pheromone Matrix is updated, the power cost A of the L times iteration pheromones square is obtained
Battle array;
With the upper limit of the delay degree B of the L times iteration pheromonesAnd lower limitConstraint under, utilizeUpdate
The delay degree B of the L-1 times iteration Pheromone Matrix, obtains the delay degree B of the L times iteration Pheromone Matrix;
Step 11, the solution concentration by scheduling scheme the L times iteration of addition of all ants of the L times iteration, from the L times repeatedly
The solution in generation, which is concentrated, deletes Pareto by the corresponding Job Scheduling scheme of domination solution, so as to update disaggregation and the conduct of the L times iteration
The disaggregation of the L+1 times iteration;
So-called Pareto in the problem of minimizing multiple target, is referred to if scheduling scheme A is in two mesh by domination solution
The value put on is both less than scheduling scheme B corresponding target value, then claims scheduling scheme A to dominate scheduling scheme B, or scheduling scheme B quilts
Scheduling scheme A is dominated.
Step 12, make L+1 be assigned to L, and judge L > LmaxWhether set up, if so, then export the disaggregation of the L times iteration
It is used as global optimum's scheduling scheme;Otherwise, step 5 is performed.
Fig. 2 show inventive algorithm operation result and SPEA2 algorithm computing knots more classical in existing solution technique
Fruit comparison diagram, wherein, x-axis coordinate represents power cost, and y-axis represents delay degree.Each symbol " * " is represented by this algorithm in figure
An obtained scheduling scheme is calculated, each symbol " Δ " represents calculates an obtained scheduling scheme by SPEA2 algorithms.Fig. 2
In, the set of all symbols " * " constitutes as the solution set obtained by ant group algorithm is solved to problem-instance that (Pareto is non-
Dominate solution set), the set of all symbols " Δ " constitutes SPEA2 algorithms to the solution set obtained by problem-instance calculating
(set of Pareto non-domination solutions).As can be seen from Figure 2, the solution obtained by inventive algorithm Solve problems not only in power cost and
The solution being superior in the desired value of delay degree in the solution obtained by SPEA2 algorithms, and Noninferior Solution Set obtained by inventive algorithm exists
The distribution of solution space is more uniform compared with the distribution of the solution in Noninferior Solution Set obtained by SPEA2 algorithms, and overall performance is more excellent.
Claims (5)
1. a kind of Job Scheduling method based on ant colony optimization algorithm, it is characterized in that apply under the working condition of tou power price,
N workpiece is dispatched in the scheduling scheme processed on K platform identical batch processing machines in batches, the scheduling scheme is with electric power
Cost A and delay degree B is optimization aim;The tou power price is the step function on the time, and 0 moment rose for high electricity price
Point, high rate period length is UH, high rate period power price is CH, low rate period length is UL, low electricity price price is
CL, finish time of each high rate period is to carve at the beginning of low rate period, the finish time of each low rate period
It is to carve at the beginning of high rate period;
The size for remembering j-th of workpiece is sj, the arrival time of j-th of workpiece is aj, a length of p during the processing of j-th workpiecej, jth
The deadline of individual workpiece is dj, the weight of j-th of workpiece is wj;The process time that starts of j-th of workpiece is j-th of workpiece
The beginning process time at place batch;Beginning process time and institute of the completion date of j-th of workpiece for the place batch of j-th of workpiece
In the processing duration sum criticized;When the time delay of j-th of workpiece is the cut-off of j-th of workpiece completion date and j-th workpiece
Between difference;When the time delay of j-th of workpiece is negative, represent that j-th of workpiece does not postpone, then when making j-th of workpiece delay
Between be " 0 ";1≤j≤n;
The processing duration P of note b-th batchbFor the maximum of all work pieces process durations in b-th batch;The arrival time of b-th batch
AbFor the maximum of all workpiece arrival times in b-th batch;The completion date E of b-th crowdbFor b-th batch when starting processing
Between XbWith the processing duration P of b-th crowdbSum;The beginning process time X of b-th crowdbFor the batch processing machine at b-th batch of place
On the completion date E of b-1 crowdesb-1A between the time is reached with b-th batchbHigher value;The deadline of b-th batch
DbFor the minimum value of all workpiece deadlines in b-th batch;
The working power for remembering kth platform batch processing machine is Hp, the standby power of kth platform batch processing machine is Hw, kth platform batch processing
The capacity of machine is designated as B;The completion date of kth platform batch processing machine is the complete of last batch on kth platform batch processing machine
Between man-hour;1≤k≤K;
It is multiplied by the weight sum of associated workpiece to represent delay degree B with the time delay of all workpiece;To process power cost
Power cost A is represented with the summation of stand-by electric cost;The processing power cost is the processing work(of all batch processing machines
Rate is multiplied by processing duration and is multiplied by tou power price sum;The stand-by electric cost is multiplied by for the standby power of all batch processing machines
Standby time is multiplied by tou power price sum;
The Job Scheduling method is to carry out in accordance with the following steps:
Step 1, n workpiece is carried out it is pre- in batches, obtain the pre-scheduling scheme using power cost A as optimization aim, and calculate phase
The power cost value of pre-scheduling scheme is answered to be designated as LA;
Step 2, n workpiece is carried out it is pre- in batches, obtain the pre-scheduling scheme using delay degree B as optimization aim, and calculate phase
The delay range angle value of pre-scheduling scheme is answered to be designated as LB;
Step 3, the upper limit using formula (3) and formula (4) acquisition using power cost A as the pheromones of optimization aimAnd lower limit
In formula (3) and formula (4), ρ is pheromones evaporation rate, and μ is the parameter value set by algorithm;
Similarly obtain, using delay degree B as the upper limit of the pheromones of optimization aimAnd lower limit
Step 4, the parameter for initializing ant group algorithm:
Make LmaxMaximum iteration is represented, L represents the number of times of current iteration;T represents ant sum, and t represents in each iteration the
The numbering of t ant;And it is initialized as L=1;
With power cost value LAAs from the global minima power cost value for being initialised to the L-1 times iterationWith power cost
Value LAIt is used as the minimum power value at cost of the L-1 times iterationWith delay range angle value LBAs from be initialised to the L-1 times repeatedly
The global minima delay range angle value in generationWith delay range angle value LBIt is used as the minimum delay degree value of the L-1 times iteration
The Pheromone Matrix using power cost A as optimization aim is set up, and initializes each element in corresponding information prime matrix
It is worth and isObtain the power cost A of the L-1 times iteration Pheromone Matrix;Remember the power cost A of the L-1 times iteration information
The element of the i-th row jth row is in prime matrix1≤i,j≤n;
The Pheromone Matrix using delay degree B as optimization aim is set up, and initializes each element in corresponding information prime matrix
It is worth and isObtain the delay degree B of the L-1 times iteration Pheromone Matrix;Remember the delay degree B of the L-1 times iteration information
The element of the i-th row jth row is in prime matrix1≤i,j≤n;
Obtain the power cost A of the t ant Target Preference F respectively using formula (1) and formula (2)t AWith delay degree B target
Preference Ft B, so as to obtain the power cost A of all ants Target Preference and delay degree B Target Preference:
Ft B=1-Ft A (2)
Step 5, initialization t=1;
Step 6, the scheduling scheme for building the L times iteration, the t ant;
Step 7, the scheduling scheme to the L times iteration, the t ant are optimized, and obtain improved scheduling scheme;
Step 8, make t+1 be assigned to t, and judge whether t > T set up, if so, then perform step 9;Otherwise, step 6 is performed;
Step 9, calculate respectively all ants of the L times iteration scheduling scheme power cost value A and delay range angle value B;
Choose power cost value minimum in the L times iterationIt is assigned toAnd willWithMake comparisons, choose smaller
Value is as from the global optimum's power cost for being initialised to the L times iterationSo as to basisUsing formula (3) and formula (4) more
The upper limit of new power cost A pheromonesAnd lower limitObtain the upper limit of the power cost A of the L times iteration pheromonesAnd lower limit
Choose delay range angle value minimum in the L times iterationIt is assigned toAnd willWithMake comparisons, choose smaller
Value is as from the global optimum's delay degree for being initialised to the L times iterationSo as to basisSimilarly obtain, the L times iteration
Delay degree B pheromones the upper limitAnd lower limit
Step 10, the upper limit with the power cost A of the L times iteration pheromonesAnd lower limitConstraint under, utilizeThe power cost A of the L-1 times iteration Pheromone Matrix is updated, the power cost A of the L times iteration pheromones square is obtained
Battle array;
With the upper limit of the delay degree B of the L times iteration pheromonesAnd lower limitConstraint under, utilizeUpdate
The delay degree B of the L-1 times iteration Pheromone Matrix, obtains the delay degree B of the L times iteration Pheromone Matrix;
Step 11, the solution concentration by scheduling scheme the L times iteration of addition of all ants of the L times iteration, from the L
The solution of secondary iteration, which is concentrated, deletes Pareto by the corresponding Job Scheduling scheme of domination solution, so as to update the solution of the L times iteration
Collect and be used as the disaggregation of the L+1 times iteration;
Step 12, make L+1 be assigned to L, and judge L > LmaxWhether set up, if so, then export the disaggregation conduct of the L times iteration
Global optimum's scheduling scheme;Otherwise, step 5 is performed.
2. Job Scheduling method according to claim 1, it is characterized in that, pre- in the step 1 is by following mistake in batches
Cheng Jinhang:
Step 1.1 arranges n workpiece according to respective arrival time ascending order, n workpiece after being sorted;
The number of step 1.2 definition batch is b;Initialize j=1, b=1;
Step 1.3 builds b-th of sky batch;
Step 1.4 adds j-th of workpiece after sequence in b-th batch, judges j+1>Whether n sets up, if so, represent pre- point
Criticize and complete, so as to obtain B1 batches, and perform step 1.6, otherwise, perform step 1.5;
Step 1.5 judges whether+1 workpiece of jth is more than the remaining space of b-th batch, if being more than, j+1 is assigned into j, by b
+ 1 is assigned to after b, return to step 1.3;Otherwise, j+1 is assigned to after j, return to step 1.4;
Step 1.6 initializes b=1;
Step 1.7 travels through K platform batch processing machines and finds the earliest machine of completion date, is designated as current batch processing machine;
B-th batch is put on current batch processing machine and produces by step 1.8, so as to update the completion date of current batch processing machine
For the completion date of b-th batch;B+1 is assigned to b, if b>B1 is set up, then it represents that B1 batches complete production, obtain pre-scheduling side
Case, otherwise, performs step 1.7.
3. Job Scheduling method according to claim 1, it is characterized in that, pre- in the step 2 is by following mistake in batches
Cheng Jinhang:
Step 3.1 arranges n workpiece according to respective arrival time ascending order, n workpiece after being sorted;
The number of step 3.2 definition batch is b;Initialize j=1, b=1;
Step 3.3 builds b-th of sky batch;
Step 3.4 judges the arrival time a of j-th of workpiece after sequencejWhether the arrival time A of b-th batch is less thanbIf, it is small
In, then j-th of workpiece is put into workpiece set to be produced, otherwise, execution step 3.6;
J+1 is assigned to after j by step 3.5, judges j>Whether n sets up, if so, then perform step 3.6;Otherwise, step is performed
3.4;
Step 3.6 judges whether the workpiece set to be produced is empty set, if empty set, then step 3.7 is performed, otherwise, from institute
State and the maximum workpiece of weight is selected in workpiece set to be produced, and judge whether the size of the maximum workpiece of weight is more than b-th
The remaining space criticized, if being more than, b+1 is assigned to after b, performs step 3.3;Otherwise, by the maximum workpiece of weight from described
After deleting and add in b-th batch in workpiece set to be produced, step 3.6 is performed;
Step 3.7 judges the size s of j-th of workpiecejWhether it is more than the remaining space of b-th batch, if being more than, b+1 is assigned to b
Afterwards, return to step 3.3;Otherwise, j-th of workpiece is added in b-th batch;
Step 3.8 judges j+1>Whether n sets up, if so, expression is completed in batches in advance, so as to obtain B2 batches, and performs step
3.9;Otherwise, j+1 is assigned to after j, performs step 3.4;
Step 3.9 initializes b=1;
Step 3.7 travels through K platform batch processing machines and finds the earliest machine of completion date, is designated as current batch processing machine;
B-th batch is put on current batch processing machine and produces by step 3.8, so as to update the completion date of current batch processing machine
For the completion date of b-th batch;B+1 is assigned to b, if b>B2 is set up, then it represents that B2 batches complete production, obtain on delay
The pre-scheduling scheme of degree;Otherwise, step 3.7 is performed.
4. Job Scheduling method according to claim 1, it is characterized in that, the step 6 is to carry out according to the following procedure:
Step 6.1, traversal K platform batch processing machines, the minimum machine of selection completion date, are designated as kth platform batch processing machine;Create
B-th batch on the kth platform batch processing machine of the t ant of the L times iteration;
Step 6.2, structure workpiece set List1, List2 and List3;
The deadline of workpiece is less than into all workpiece of the on-stream time of b-th batch to add in the workpiece set List1;
The arrival time of workpiece is less than or equal to the on-stream time of b-th batch, and deadline the opening more than b-th batch of workpiece
All workpiece between man-hour are added in the workpiece set List2;
The arrival time of workpiece is more than into all workpiece for the on-stream time criticized to add in the workpiece set List3;
Step 6.3, judge whether List1 is empty set, if empty set, then perform step 6.4, otherwise, calculate described using formula (5)
In workpiece set List1 j-th workpiece add the t ant of the L time iteration on kth platform machine b-th batch it is selected generally
Rate pLtkbj:
In formula (5), ALtkbRepresent the t ant of the L times time iteration arrival time of b-th batch on kth platform machine;
A workpiece is first selected from workpiece set List1 using wheel disc bet method, then by the workpiece chosen from set List1
It is middle to delete and add in b-th batch of the t ant of the L times iteration on kth platform machine, then perform step 6.6;
Step 6.4 judges whether List2 is empty set, if empty set, then step 6.5 is performed, otherwise, from the workpiece set
A workpiece is selected at random in List2, then the workpiece chosen is deleted from List1 set and the t of the L times iteration is added only
In b-th batch on kth platform machine of ant, step 6.6 is then performed;
Step 6.5 judges whether List3 is empty set, if empty set, then deletes the t ant of the L times iteration in kth platform machine
On b-th batch so that represent complete the L times iteration the t ant scheduling scheme structure;Otherwise, from the workpiece
Selection reaches time minimum workpiece in set List3, and workpiece then will be chosen to be deleted from List3 set and described the is added
In b-th batch on kth platform machine of the t ant of L iteration;
Step 6.6 builds workpiece set TotalList, and the workpiece in List1, List2 and List3 is all added into workpiece collection
Close in TotaList;
If step 6.7 workpiece set TotalList is sky, then it represents that complete the scheduling scheme of the t ant of the L times iteration
Structure, otherwise, the residue of b-th batch that workpiece size in workpiece set TotalList is less than or equal on kth platform machine is empty
Between, and the workpiece of the on-stream time of b-th batch that is less than or equal on kth platform machine of deadline of workpiece is added to workpiece set
In List1;
The remaining space of b-th batch that workpiece size in workpiece set TotalList is less than or equal on kth platform machine, workpiece
Arrival time be less than or equal to kth platform machine on the on-stream time of b-th batch, and workpiece deadline be more than kth platform machine
The workpiece of the on-stream time of b-th batch on device is added in workpiece set List2;
Workpiece size in workpiece set TotalList is less than the remaining space of b-th batch on kth platform machine, and workpiece
The workpiece that arrival time is more than the on-stream time of b-th batch on kth platform machine is added in workpiece set List3;
Step 6.8 judges whether set List1 is empty set, if empty set, then performs step 6.9, otherwise, utilize formula (6) and formula
(7) calculate j-th of workpiece in the work pieces process set List1 and add in the t of the L times iteration ant on kth platform machine
The heuristic information on power cost A of b-th batchWith the heuristic information on delay degree BAnd hold
Row step 6.10;
In formula (6) and formula (7), PLtkbWhen representing the processing of b-th batch of ant in the t of the L times iteration on kth platform machine
It is long, WmaxRefer to the maximum of workpiece weight span;
Step 6.9 judges whether set List2 is empty set, if empty set, then performs step 6.11, otherwise, using formula (6) and
Formula (8) calculates heuristic informationWithAnd perform step 6.10;
In formula (8), | List2 | represent the workpiece sum in the workpiece set List2 in step 6.7;
Step 6.10 sets workpiece set List, if workpiece set List1 is not sky, the workpiece in List1 is all added
In List, otherwise the workpiece in workpiece set List2 is all added in List;
J-th of workpiece in workpiece set List, which is calculated, using formula (9) adds the t ant of the L times iteration on kth platform machine
The average information of b-th batch element value
In formula (9), QLtkbB-th batch of t-th of ant of the L times iteration in k-th of machine is represented, | QLtkn| represent
B-th batch Q of t-th of the ant of the L times iteration in k-th of machineLtkbIn workpiece sum;
J-th of workpiece in workpiece set List, which is calculated, using formula (10) adds the t ant of the L times iteration in kth platform machine
On the probability P of b-th batchLtkbj:
In formula (10), α, β and γ are set empirical value;| List | represent the workpiece sum in workpiece set List;
Utilize probability PLtkbjWorkpiece is added to the L times iteration is chosen from the workpiece set List by wheel disc bet method
B-th batch Q of the t ant in k-th of machineLtkbIn, then by workpiece set List, List1, List2 and List3
All workpiece are added in workpiece set TotalList, and perform step 6.7;
Step 6.11 judges whether workpiece set List3 is empty set, if empty set then performs step 6.1, otherwise chooses the work
The workpiece of arrival time minimum, is designated as current workpiece in part set List3;
If the arrival time of current workpiece is less than crowd QLtkbDeadline, then current workpiece is deleted from workpiece set List3
And it is added to crowd QLtkbIn after, perform step 6.6, otherwise perform step 6.1.
5. Job Scheduling method according to claim 1, it is characterized in that, the step 7 is to carry out according to the following procedure:
Step 7.1 initializing variable k=1, b=1;
Step 7.2 calculates b-th crowd of Q of the kth platform batch processing machine in scheduling schemekbRemaining space;
Step 7.3 initializing variable u=1, v=1;
Step 7.4 judges v-th crowd of Q of u platforms batch processing machine in the scheduling schemeuvOn-stream time whether be less than or wait
In crowd QkbOn-stream time, if so, performing step 7.5, workpiece set List is otherwise built, from crowd QuvIn select simultaneously meet
The workpiece of following three condition is put into workpiece set List:
Condition 1:The size of workpiece is less than or equal to crowd QkbRemaining space;
Condition 2:The arrival time of workpiece is less than or equal to crowd QkbOn-stream time;
Condition 3:The processing duration of workpiece is less than or equal to crowd QkbDeadline DkbWith crowd QkbOn-stream time XkbDifference;
If List is sky, step 7.5 is performed, otherwise, by deadline of workpiece minimum workpiece from workpiece set List
It is middle to delete and be put into crowd QkbIn, then remaining workpiece in workpiece set List put back into crowd QuvIn after, perform step 7.5;
V+1 is assigned to v by step 7.5, the lot number amount whether v is less than in u platform batch processing machines is judged, if so, then performing step
Rapid 7.3, otherwise, perform step 7.6;
U+1 is assigned to u by step 7.6, makes v=1, judges whether u is less than the quantity K of batch processing machine, if so, then performing step
7.3, otherwise, perform step 7.7;
B+1 is assigned to b by step 7.7, if b is less than the lot number amount in kth platform batch processing machine, performs step 7.1, otherwise
Perform step 7.8;
K+1 is assigned to k by step 7.8, makes b=1, judges whether k is less than the quantity K of batch processing machine, if being less than, performs step
Rapid 7.1, otherwise perform step 7.9;
Step 7.9 initializing variable k=1, b=2;
Step 7.10 makes Qk(b-1)B-1 batches of k-th of machine are represented, if crowd QkbCompletion date be less than crowd QkbCut-off
Time, then step 7.11 is performed, otherwise, crowd Q is calculated respectivelyk(b-1)With crowd QkbWith exchanging processing sequence before processing sequence is exchanged
Workpiece delay degree sum afterwards, if exchanging the workpiece delay degree sum before processing sequence is less than the work exchanged after processing sequence
Part delay degree sum, then perform step 7.11, otherwise, will exchange crowd Qk(b-1)With crowd QkbProcessing sequence after, perform step
7.11;
B+1 is assigned to b by step 7.11, if b is less than the lot number amount on k-th of batch processing machine, performs step 7.10, no
Then, k+1 is assigned to k, made after b=2, judge whether k≤K sets up, if so, step 7.10 is then performed, otherwise, step is performed
7.12;
Step 7.12 initializing variable k=1;
Batch total on kth platform batch processing machine is assigned to variable b by step 7.13;
Step 7.14 judges b-th crowd of Q on kth platform handling machinekbDeadline whether be less than crowd QkbCompletion date, if
It is then to perform step 7.19, otherwise, crowd Q is judged using formula (11)kbWhether completion date is in low Price zone, if so, then holding
Row step 7.17, otherwise, performs step 7.15;
In formula (11), t is current time, and f (t) is the electricity price corresponding to t;K represents periodicity, k ∈ { 0,1,2 ... };
Step 7.15 judges crowd QkbDeadline whether be less thanIf so, then holding
Row step 7.19, otherwise, performs step 7.16;
Step 7.16 judges crowd QkbDeadline whether be more than or equal to
If so, then will crowd QkbOn-stream time be changed toOtherwise, by crowd QkbWhen going into operation
Between be changed to crowd QkbDeadline DkbWith crowd QkbHandling duration PkbDifference;Perform step 7.19;
Step 7.17 judges crowd Q using formula (11)kbBeginning process time whether be in low Price zone, if so, then performing step
Rapid 7.19, otherwise, perform step 7.18;
Step 7.18 judges crowd Q using formula (11)kbDeadline whether be more than
If so, then will crowd QkbOn-stream time be changed toOtherwise, by crowd QkbOn-stream time
It is changed to crowd QkbDeadline and crowd QkbProcessing duration PkbDifference;
B-1 is assigned to b by step 7.19, if b is not equal to 0, performs step 7.21, otherwise k+1 is assigned to after k, perform
Step 7.20;
Step 7.20 judges whether k is more than K, if, then it represents that the optimization for scheduling scheme has been completed, otherwise, then by kth
Batch total in platform batch processing machine is assigned to after b, performs step 7.21;
Step 7.21 judges crowd QkbDeadline whether be less than crowd QkbCompletion date, if so, then perform step 7.19, it is no
Then, step 7.22 is performed;
Step 7.22 judges crowd Q using formula (11)kbOn-stream time XkbWhether high rate period is in, if so, then performing step
7.23, otherwise, then perform step 7.24
Step 7.23 judges crowd QkbDeadline DkbWith crowd Qk(b+1)On-stream time Xk(b+1)Whether it is simultaneously greater thanIf so, will crowd QkbOn-stream time delay be min (Dkb,Xk(b+1))-Pkb, hold
Row step 7.19;Otherwise, step 7.19 is directly performed;
Step 7.24 judges crowd QkbCompletion date whether be in low Price zone, if so, then perform step 7.19, if it is not, then
Judge crowd QkbDeadline DkbWith crowd Qk(b+1)On-stream time Xk(b+1)Whether it is simultaneously greater thanIf so, then Q is criticized in orderkbOn-stream time delay be min (Dkb,
Xk(b+1))+Pkb, step 7.19 is performed, step 7.19 is otherwise directly performed.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710339305.9A CN106970604B (en) | 2017-05-15 | 2017-05-15 | Multi-target workpiece scheduling algorithm based on ant colony algorithm |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710339305.9A CN106970604B (en) | 2017-05-15 | 2017-05-15 | Multi-target workpiece scheduling algorithm based on ant colony algorithm |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106970604A true CN106970604A (en) | 2017-07-21 |
CN106970604B CN106970604B (en) | 2019-04-30 |
Family
ID=59331345
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710339305.9A Active CN106970604B (en) | 2017-05-15 | 2017-05-15 | Multi-target workpiece scheduling algorithm based on ant colony algorithm |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106970604B (en) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107450498A (en) * | 2017-09-11 | 2017-12-08 | 合肥工业大学 | Based on the production scheduling method and system for improving artificial bee colony algorithm |
CN107590603A (en) * | 2017-09-11 | 2018-01-16 | 合肥工业大学 | Based on the dispatching method and system for improving change neighborhood search and differential evolution algorithm |
CN107967558A (en) * | 2017-11-20 | 2018-04-27 | 西北工业大学 | Consider the input and output decision-making technique of parallel batch processing machine cost |
CN108563200A (en) * | 2018-04-03 | 2018-09-21 | 安徽大学 | A kind of Job Scheduling method and device of the multiple target based on ant group algorithm |
CN108665139A (en) * | 2018-04-03 | 2018-10-16 | 安徽大学 | A kind of Job Scheduling method and device based on ant group algorithm |
CN109164763A (en) * | 2018-07-25 | 2019-01-08 | 昆明理工大学 | A kind of Optimization Scheduling of industrial robot automatic production line |
CN109872091A (en) * | 2019-04-18 | 2019-06-11 | 安徽大学 | A kind of Job Scheduling method and device based on ant group algorithm |
CN110942251A (en) * | 2019-11-27 | 2020-03-31 | 安徽大学 | Batch scheduling method based on joint ant colony algorithm |
CN112462704A (en) * | 2020-11-18 | 2021-03-09 | 河海大学常州校区 | Mixed flow batch scheduling optimization method for sensor workshop production |
CN113011785A (en) * | 2021-04-21 | 2021-06-22 | 广东机电职业技术学院 | Multi-order hybrid scheduling optimization method and medium based on adaptive adjustment parameters |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102253662A (en) * | 2011-04-11 | 2011-11-23 | 同济大学 | Scheduling method for semiconductor production line based on multi-ant-colony optimization |
CN104360660A (en) * | 2014-11-19 | 2015-02-18 | 广东工业大学 | Aluminum profile turning and extruding workshop energy consumption optimized scheduling method based on ant colony algorithm |
CN104571006A (en) * | 2014-11-19 | 2015-04-29 | 广东工业大学 | Method for optimizing energy consumption of aluminum section workshop based on ant colony algorithm and in view of time difference electricity price |
CN105427054A (en) * | 2015-12-04 | 2016-03-23 | 合肥工业大学 | Machining scheduling method for porcelain calcination process based on ant colony optimization |
CN105528675A (en) * | 2015-12-04 | 2016-04-27 | 合肥工业大学 | Production distribution scheduling method based on ant colony algorithm |
-
2017
- 2017-05-15 CN CN201710339305.9A patent/CN106970604B/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102253662A (en) * | 2011-04-11 | 2011-11-23 | 同济大学 | Scheduling method for semiconductor production line based on multi-ant-colony optimization |
CN104360660A (en) * | 2014-11-19 | 2015-02-18 | 广东工业大学 | Aluminum profile turning and extruding workshop energy consumption optimized scheduling method based on ant colony algorithm |
CN104571006A (en) * | 2014-11-19 | 2015-04-29 | 广东工业大学 | Method for optimizing energy consumption of aluminum section workshop based on ant colony algorithm and in view of time difference electricity price |
CN105427054A (en) * | 2015-12-04 | 2016-03-23 | 合肥工业大学 | Machining scheduling method for porcelain calcination process based on ant colony optimization |
CN105528675A (en) * | 2015-12-04 | 2016-04-27 | 合肥工业大学 | Production distribution scheduling method based on ant colony algorithm |
Non-Patent Citations (2)
Title |
---|
李小林等: "考虑分时电价的多目标批调度问题蚁群算法求解", 《中国管理科学》 * |
贾兆红等: "求解差异工件批调度问题的改进型蚁群算法", 《控制与决策》 * |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107590603B (en) * | 2017-09-11 | 2018-11-13 | 合肥工业大学 | Based on the dispatching method and system for improving change neighborhood search and differential evolution algorithm |
CN107590603A (en) * | 2017-09-11 | 2018-01-16 | 合肥工业大学 | Based on the dispatching method and system for improving change neighborhood search and differential evolution algorithm |
CN107450498B (en) * | 2017-09-11 | 2018-08-28 | 合肥工业大学 | Based on the production scheduling method and system for improving artificial bee colony algorithm |
CN107450498A (en) * | 2017-09-11 | 2017-12-08 | 合肥工业大学 | Based on the production scheduling method and system for improving artificial bee colony algorithm |
CN107967558A (en) * | 2017-11-20 | 2018-04-27 | 西北工业大学 | Consider the input and output decision-making technique of parallel batch processing machine cost |
CN107967558B (en) * | 2017-11-20 | 2021-06-11 | 西北工业大学 | Input-output decision method considering cost of parallel batch processors |
CN108563200A (en) * | 2018-04-03 | 2018-09-21 | 安徽大学 | A kind of Job Scheduling method and device of the multiple target based on ant group algorithm |
CN108563200B (en) * | 2018-04-03 | 2021-02-09 | 安徽大学 | Multi-target workpiece scheduling method and device based on ant colony algorithm |
CN108665139A (en) * | 2018-04-03 | 2018-10-16 | 安徽大学 | A kind of Job Scheduling method and device based on ant group algorithm |
CN108665139B (en) * | 2018-04-03 | 2021-12-17 | 安徽大学 | Workpiece scheduling method and device based on ant colony algorithm |
CN109164763A (en) * | 2018-07-25 | 2019-01-08 | 昆明理工大学 | A kind of Optimization Scheduling of industrial robot automatic production line |
CN109872091A (en) * | 2019-04-18 | 2019-06-11 | 安徽大学 | A kind of Job Scheduling method and device based on ant group algorithm |
CN110942251A (en) * | 2019-11-27 | 2020-03-31 | 安徽大学 | Batch scheduling method based on joint ant colony algorithm |
CN110942251B (en) * | 2019-11-27 | 2022-09-30 | 安徽大学 | Batch scheduling method based on joint ant colony algorithm |
CN112462704A (en) * | 2020-11-18 | 2021-03-09 | 河海大学常州校区 | Mixed flow batch scheduling optimization method for sensor workshop production |
CN113011785A (en) * | 2021-04-21 | 2021-06-22 | 广东机电职业技术学院 | Multi-order hybrid scheduling optimization method and medium based on adaptive adjustment parameters |
CN113011785B (en) * | 2021-04-21 | 2023-06-13 | 广东机电职业技术学院 | Multi-order mixed scheduling optimization method and medium based on self-adaptive adjustment parameters |
Also Published As
Publication number | Publication date |
---|---|
CN106970604B (en) | 2019-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106970604A (en) | Multi-target workpiece scheduling algorithm based on ant colony algorithm | |
CN107392402B (en) | Production and transport coordinated dispatching method based on modified Tabu search algorithm and system | |
CN107102552B (en) | Gather the parallel machine dispatching method and system for leapfroging and becoming neighborhood processing based on mixing | |
CN107450498B (en) | Based on the production scheduling method and system for improving artificial bee colony algorithm | |
CN109388484B (en) | Multi-resource cloud job scheduling method based on Deep Q-network algorithm | |
CN107506956A (en) | Based on improvement particle cluster algorithm supply chain production and transport coordinated dispatching method and system | |
CN110598941A (en) | Bionic strategy-based dual-target scheduling method for particle swarm optimization manufacturing system | |
CN107590603A (en) | Based on the dispatching method and system for improving change neighborhood search and differential evolution algorithm | |
CN104572297B (en) | A kind of Hadoop job scheduling methods based on genetic algorithm | |
CN113792924A (en) | Single-piece job shop scheduling method based on Deep reinforcement learning of Deep Q-network | |
CN103235743B (en) | A kind of based on decomposing and the multiple goal test assignment dispatching method of optimum solution follow-up strategy | |
CN105528675B (en) | A kind of production distribution scheduling method based on ant group algorithm | |
CN106611275A (en) | Production scheduling algorithm for solving job shop production problem | |
CN111781898B (en) | Distribution estimation algorithm for optimizing flexible job shop scheduling of maximum deadline | |
CN107451747A (en) | Job-Shop system and its method of work based on adaptive non-dominant genetic algorithm | |
CN110956371A (en) | Green scheduling optimization method for intelligent manufacturing workshop facing complex man-machine coupling | |
CN116700176A (en) | Distributed blocking flow shop scheduling optimization system based on reinforcement learning | |
CN110909858A (en) | Batch scheduling method based on double-pheromone ant colony algorithm | |
CN104698838B (en) | Based on the fuzzy scheduling rule digging method that domain dynamic is divided and learnt | |
CN107437138B (en) | Based on the production and transport coordinated dispatching method and system for improving gravitation search algorithm | |
CN117314055A (en) | Intelligent manufacturing workshop production-transportation joint scheduling method based on reinforcement learning | |
CN107730065B (en) | Based on the production scheduling method and system for improving variable neighborhood search algorithm | |
Xu | A petri net-based hybrid heuristic scheduling algorithm for flexible manufacturing system | |
CN116089083A (en) | Multi-target data center resource scheduling method | |
CN116011723A (en) | Intelligent dispatching method and application of coking and coking mixed flow shop based on Harris eagle algorithm |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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 |