CN106970604A - Multi-target workpiece scheduling algorithm based on ant colony algorithm - Google Patents

Multi-target workpiece scheduling algorithm based on ant colony algorithm Download PDF

Info

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
Application number
CN201710339305.9A
Other languages
Chinese (zh)
Other versions
CN106970604B (en
Inventor
贾兆红
汪龙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Anhui University
Original Assignee
Anhui University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Anhui University filed Critical Anhui University
Priority to CN201710339305.9A priority Critical patent/CN106970604B/en
Publication of CN106970604A publication Critical patent/CN106970604A/en
Application granted granted Critical
Publication of CN106970604B publication Critical patent/CN106970604B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total 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/41865Total 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
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/32Operator till task planning
    • G05B2219/32252Scheduling production, machining, job shop
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P80/00Climate change mitigation technologies for sector-wide applications
    • Y02P80/10Efficient use of energy, e.g. using compressed air or pressurized fluid as energy carrier
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total 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

A kind of multiple target Job Scheduling algorithm based on ant group algorithm
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
τ m a x A = 1 ( 1 - ρ ) × L A - - - ( 3 )
τ min A = τ max A × μ - - - ( 4 )
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:
F t A = t T - - - ( 1 )
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
p L t k b j = ( A L t k b - d j ) × w j Σ j ∈ L i s t 1 ( A L t k b - d j ) × w j - - - ( 5 )
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;
H L t k b j A = 1 | P L t k b - p j | + 1 - - - ( 6 )
H L t k b j B = w j W max - - - ( 7 )
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;
H L t k b j B = ( E b + P b - d j ) × w j Σ j = 1 | L i s t 2 | ( E b + P b - d j ) × w j - - - ( 8 )
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
τ ‾ L t k b j = F t A × Σ i ∈ Q L t k b τ i j A ( L - 1 ) + F t B × Σ i ∈ Q L t k b τ i j B ( L - 1 ) | Q L t k b | - - - ( 9 )
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
P L t k b j = ( τ ‾ L t k b j ) α × ( H L t k b j A ) β × ( H L t k b j B ) γ Σ j = 1 | L i s t | ( τ ‾ L t k b j ) α × ( H L t k b j A ) β × ( H L t k b j B ) γ - - - ( 10 )
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;
f ( t ) = C H , k &times; ( U H + U L ) &le; t < k &times; ( U H + U L ) + U H C L , k &times; ( U H + U L ) + U H < t &le; ( k + 1 ) &times; ( U H + U L ) - - - ( 11 )
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.
CN201710339305.9A 2017-05-15 2017-05-15 Multi-target workpiece scheduling algorithm based on ant colony algorithm Active CN106970604B (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (5)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
Title
李小林等: "考虑分时电价的多目标批调度问题蚁群算法求解", 《中国管理科学》 *
贾兆红等: "求解差异工件批调度问题的改进型蚁群算法", 《控制与决策》 *

Cited By (17)

* Cited by examiner, † Cited by third party
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