APP下载

An improved artificial bee colony algorithm for steelmaking–refining–continuous casting scheduling problem☆

2018-09-28KunkunPengQuankePanBiaoZhang

Kunkun Peng,Quanke Pan*,Biao Zhang

State Key Laboratory of Digital Manufacturing Equipment and Technology,Huazhong University of Science and Technology,Wuhan 430074,China

Keywords:Artificial bee colony Steel making–refining–continuous casting Hybrid flowshop scheduling Variable neighborhood search

ABSTRACT Steelmaking–refining–Continuous Casting(SCC)scheduling is a worldwide problem,which is NP-hard.Effective SCC scheduling algorithms can help to enhance productivity,and thus make significant monetary savings.This paper develops an Improved Artificial Bee Colony(IABC)algorithm for the SCC scheduling.In the proposed IABC,charge permutation is employed to represent the solutions.In the population initialization,several solutions with certain quality are produced by a heuristic while others are generated randomly.Two variable neighborhood search neighborhood operators are devised to generate new high-quality solutions for the employed bee and onlooker bee phases,respectively.Meanwhile,in order to enhance the exploitation ability,a control parameter is introduced to conduct the search of onlooker bee phase.Moreover,to enhance the exploration ability,the new generated solutions are accepted with a control acceptance criterion.In the scoutbee phase,the solution corresponding to a scout bee is updated by performing three swap operators and three insert operators with equal probability.Computational comparisons against several recent algorithms and a state-of-the-art SCC scheduling algorithm have demonstrated the strength and superiority of the IABC.

1.Introduction

Iron and steel production is a worldwide problem,providing raw materials for a series of industries,such as petro-chemical,construction,and machinery manufacturing[1].In the production,Steel making-refining-Continuous Casting(SCC)processing is the bottleneck[2],which processes hot metal to steel with a well-defined chemical composition and solidifies the steel into slabs.Effective SCC scheduling methods are crucial to improve production productivity,resulting in significant monetary savings.Moreover,the problem is well known to be NP-hard and considered as one of the most difficult industrial scheduling problems[3,4].The problem has attracted much interest in recent years[1,4,5].

The classical SCC process can be divided into three stages,i.e.steel making,refining,and continuous casting,each of them has multiple parallel machines.In the literature,the SCC scheduling problem is usually modeled as a Hybrid Flowshop Scheduling(HFS)problem[6–8].A variety of SCC scheduling methods have been proposed,which mainly can be classified as three categories:heuristics,mathematical methods and metaheuristics.In terms of heuristics,Yu and Chai[9]proposed a series of scheduling sequence methods and equipment assignment methods,which can be applied when devising SCC scheduling methods.To further deal with the SCC scheduling problem considering dynamic events,Yu and Pan[10]presented a rescheduling heuristic for the SCC scheduling problem with operation time delay.Subsequently,Yu et al.[11]proposed an effective heuristic for SCC scheduling simultaneously considering multirefining modes and job start-time delay.With respect to the mathematical methods,Mao et al.[12],Cui and Luo[1]devised Lagrangian relaxation approaches for the SCC scheduling problem,while Mao et al.[13]further developed a Lagrangian relaxation approach for the SCC scheduling problem considering dynamic events.In terms of metaheuristics,population-based metaheuristics have been widely employed.Pan et al.[2]presented a mixed integer HFS model and then proposed an effective Artificial Bee Colony(ABC)algorithm.Subsequently,Pan[5]modeled the SCC scheduling problem as a combination of two coupled sub-problems,i.e.a charge scheduling problem and a cast scheduling problem,which correspond to HFS and parallel machine scheduling respectively.They devised a co-evolutionary ABC with two sub-swarms,where each sub-swarm corresponds to a subproblem.Li et al.[8]designed an effective Fruit Fly Optimization(FOA)algorithm for the SCC scheduling,and Li et al.[14]further presented a hybrid FOA for the SCC scheduling with dynamic events.Tang et al.[15]presented an improved Differential Evolution(DE)algorithm for the SCC scheduling with dynamic events,where a real-coded matrix encoding mechanism,a specially-designed population initialization,and a new mutation strategy were devised.Jiang et al.[16]proposed a bi-layer optimization approach for the SCC scheduling with controllable processing times,where a hybrid DE combined with a variable neighborhood decomposition search is designed for a parallel machine scheduling problem in the last stage and an iterative backward list scheduling algorithm is designed for HFS in the former stages.Hao et al.[17]designed a particle swarm optimization based two-layered approach to deal with the SCC scheduling problem considering dynamic events,while Long et al.[18]proposed a hybrid genetic algorithm integrated with a general variable neighbourhood search to solve the SCC scheduling problem considering continuous caster breakdown.

ABC is a recent swarm intelligence optimization algorithm,which has been successfully applied for solving both continuous and combinational optimization problems[19–21].In the work for combinational optimization problems,ABC has been widely studied to solve kinds of scheduling problems,e.g.permutation flow shop scheduling[22],job shop scheduling[23,24]. flexible job-shop scheduling[25,26],hybrid flow shop scheduling with limited buffers[27],lot-streaming flow shop scheduling[28],blocking lot-streaming flow shop scheduling[29],single machine scheduling[30],and parallel batch-processing machine scheduling[31].In this paper,an Improved ABC(IABC)algorithm is developed for the SCC scheduling problem.A heuristic is first devised to generate initial population with certain quality.Unlike the previous ABC devised for the SCC scheduling problem,to enhance the exploitation ability of IABC,two Variable Neighborhood Search(VNS)neighborhood operators are designed to generate new high-quality solutions for the employed bee and onlooker bee phases,respectively.Meanwhile,a control parameter is applied to conduct the search of onlooker bee phase with the aim of further improving exploitation.Moreover,in order to enhance the exploration ability,a control acceptance criterion is employed to decide whether a new solution can be accepted.Furthermore,in the scout bee phase,three swap operators and three insert operators are performed with equal probability to the original solution corresponding to a scout bee and then replace the original one.Finally,the IABC is compared with some recent metaheuristics and a state-of-the-art SCC scheduling algorithm,the comparison results show that the IABC is effective.

The rest of this paper is organized as follows.Section 2 describes the SCC scheduling problem.In Section 3,the basic ABC algorithm is introduced.In Section 4,the proposed IABC is developed.In Section 5,test experiments and algorithm comparisons are given.Finally,the conclusions are summarized in Section 6.

2.The SCC Scheduling Problem

In the SCC scheduling problem,steelmaking,refining and continuous casting stages are responsible for different functions respectively[2].More specifically,in the steel making stage,impurities such as nitrogen,silicon,sulfur and excess carbon are removed from the raw iron,while alloying elements such as manganese,nickel,chromium and vanadium are added to produce different grades of steel.In the refining stage,the impurities are further eliminated and the required alloy ingredients are added into molten steel to further improve the quality of the molten steel.Finally,the molten steel is solidified into slabs in the continuous casting stage[1,2].In the steelmaking and refining stages,charge is the basic production unit,corresponding to job in the flow shop scheduling,while in the continuous casting stage,cast is the basic unit.A cast is a set of charges which need to be continuously processed using the same crystallizer on the same caster and is determined in advance at planning level.This is due to the technological constraints.

The SCC scheduling problem is to determine an optimal schedule with minimal sojourn time,earliness of cast starting penalty,tardiness of cast starting penalty and so on[2],where the sojourn time of a charge is the duration between the completion time in the steelmaking stage and the starting time in the continuous casting stage.The optimal schedule specifies each charge is to be processed at what time and on which machine in the steelmaking stage,refining stage,and continuous casting stage[7].A SCC process is a very complicated manufacturing operation,which can be characterized by high-temperature high-weight material flow.Therefore,unlike general industrial scheduling problems,SCC scheduling problem has to meet a list of special requirements and constraints,some of which are described as follows[2].

(1)Each charge is processed at most on one machine at a time,and each machine processes at most one charge at a time.

(2)Each charge has to wait for processing if no machine can be available when it arrives the refining and continuous casting stages.However,wait will cause temperature drop and then reheating cost.

(3)Multi-stage(Say S-2 stages)refining modes,i.e.there are S-2 stages for refining,usually exist in the refining,where each refining can be considered as a stage.With the steelmaking and continuous casting stages,in summary,there are S stages in the SCC scheduling problem.

(4)Transfer times between two successive stages have to be considered.

(5)The charges in a cast are prohibited to be interrupted in the continuous casting stage.

(6)A cast should be started at the given time.Starting before the given time(called earliness of cast starting)and starting after the given time(called tardiness of cast starting)will result in inventory cost or delay cost.

Based on the problem description,the SCC scheduling problem with S stages can be formulated as a HFS model,which is described as follows[2],where the intermediate S-2 stages are utilized for refining.

Parameters:

Decision variables:

Formula(1)is the objective function,i.e.the weighted sum of the penalty for average sojourn time,earliness of cast starting,and tardiness of cast starting,which is denoted by f.Formulas(2)–(4)represent the average sojourn time,earliness of cast starting,and tardiness of cast starting respectively,where are denoted f1,f2and f3respectively.Formula(5)illustrates that a charge has to be processed in all stages,and at each stage a charge has to be processed by exactly one machine.Formula(6)describes that the starting time of a charge on a machine at the steelmaking and refining stages has to be greater than the release time of the machine.Formula(7)describes that for two consecutive operations of a charge,the latter operation can be started only after the former operation has been finished and has been transferred to the corresponding machine.Formulas(8)and(9)give machine capacity constraints,i.e.,for two charges processed on the same machine,the latter charge can be started only after the former one has been finished.Formula(10)specifies the condition in which the first cast on a caster can be started.Formula(11)represents the casting continuity constraint for the charges in a cast.Formula(12)emphasizes that the setup time is needed between two consecutive casts on the same caster.Formulas(13)and(14)provide the value ranges of decision variables.

3.The Basic ABC Algorithm

The ABC algorithm is a recent swarm intelligence metaheuristic originally proposed for continuous function optimization problems[21,29].The ABC simulates the intelligent foraging behavior of honeybee swarm.It starts from an initial population generated randomly,and then executes a cycle of employed bee phase,onlooker bee phase,and scout bee phase until the termination condition is reached.In the employed bee phase,each employed bee finds a new food source in its neighborhood and shares the information with the onlookers.In the onlooker bee phase,each onlooker bee selects a food source based on the probability selection and finds a new food source by utilizing the same method as the employed bee phase.In the scout bee phase,for each scout bee,i.e.an employed bee corresponding to a food source has not been improved within a given number of successive iterations,replace the food source with one generated randomly.The ABC can be described as follows.

Procedure of the basic ABC Initialize all the food sources randomly Evaluate population while termination condition is not satisfied//Employed bee phase For each employed bee xi, find a new food source x new in the neighborhood of its present position xi.If f(x new)<f(xi),xi=x new.//Onlooker bee phase For each onlooker bee,select a food source based on roulette wheel selection,and then find a new food source x new in the neighborhood of its present position xi.If f(x new)<f(xi),xi=x new.//Scout bee phase For each scout bee,replace the food source with a food source generated randomly.Update the best solution found so far end while

4.The Proposed IABC

In this section,the proposed IABC is introduced in detail.First,the encoding and decoding scheme is described.Secondly,population initialization,employed bee and onlooker bee phases,two VNS neighborhood operators,and scout bee phase,are designed sequentially.Finally,the framework of the IABC is given.

4.1.Encoding and decoding

Charge permutation-based representation is applied to encode the solutions,which corresponds to the processing sequence of the charges.To evaluate the solutions,a decoding scheme is needed.In this paper,the decoding scheme in[2]is utilized,containing two sequential steps:(1)Forward decoding:at steelmaking and refining stages,select each charge one by one according to the sequence in the charge permutation,assign each selected charge to the first available machine,while at the continuous casting stage,for each cast,process the charges sequentially;(2)Backward decoding:in the continuous casting stage,for each charge except the last one in a cast,if there is a cast break between it and its following charge,shift the charge right to erase the cast break,and then in the steelmaking and refining stages,for each machine,shift the starting time of each charge.For example,for an instance with 10 charges,a solution may be encoded as Fig.1.According to the decoding scheme,at steelmaking and refining stages,charges 9,6,1,10,5,7,4,2,3 and 8 are sequentially selected and assigned to the first available machine,then at the continuous casting stage,the charges belonging to the same cast are processed sequentially.Subsequently,backward decoding is executed to erase the cast break.

Fig.1.Example of an instance with 10 charges.

4.2.Population initialization

In the basic ABC,the initial solutions are produced randomly,which may result in good exploration while poor exploitation.However,population initialization is important for the ABC,since initial population with certain quality may result in a faster convergence to good solutions[2].In Pan et al.[2],an initial solution(say P1)is generated by sorting the charges in the non-decreasing order of their starting times,which corresponds to a good solution,while other initial solutions are generated randomly.In this paper,unlike the basic ABC and Pan et al.[2],to achieve a good balance between exploration and exploitation,Num initial solutions with certain quality are produced by a heuristic,while other M-Num initial solutions are generated randomly.More specifically,the steps are described as follows.

Step 1 Obtain starting time for each charge at continuous casting stage according to the planned starting time of its cast,and then sort the charges in the non-decreasing order of their starting times.Denote the obtained charge permutation P1.Set m=2.

Step 2 Produce Pmby performing the pairwise exchange operator to P1.

Step 3 Set m=m+1,if m=Num+1,go to Step 4;Otherwise,go to Step 2.

Step 4 Generate the remaining M-Num initial solutions by randomly sequencing the charges.

4.3.Employed bee and onlooker bee phases

In the employed bee phase,the new solutions are generated by performing a VNS neighborhood operator(called VNS1),which is to be described in Section 4.4 in detail.In the onlooker bee phase,for each onlooker bee,to select a food source with better quality,the tournament selection with the size of four is employed to select a solution in the population,and then the new solutions are generated by performing a VNS neighborhood operator(called VNS2),which is also to be given in Section 4.4.Moreover,a control parameter is introduced to conduct the search of onlooker bee phase with the intention of intensifying exploitation,and the onlookerbee phase is performed r replications before the algorithm enters the scout bee phase,which is different from that of the basic ABC,i.e.performing the onlookerbee phase only once.Furthermore,unlike the basic ABC,the new produced solution replaces the original solution only and only if it is better than the original solution.In the proposed IABC,to enhance the exploration,slightly worse solutions can also be accepted to replace the original solution,which can improve the ability of escaping from local optima.The control acceptance criterion proposed by[33]is employed due to its simplicity and effectiveness,i.e.the new produced solution Pnewreplaces the original solution Pnif and only if f(Pnew)≤bf(Pn),where b is a real number being close to 1 and is set to be 1.05 in this paper.

4.4.Two VNS neighborhood operators

When devising an ABC for the SCC scheduling problem,a neighborhood operator should be first defined for solution generation,since it is the core of the ABC and lays the foundation.Specifically,it generates new solutions for the employed bee and onlooker bee phases.Different neighborhood operators have been applied to the SCC scheduling problem,such as swap operator and pairwise exchange operator,they may have different performances for different instances.Therefore,they may be complementary,and integrating them appropriately may achieve better result.VNS is a metaheuristic which systematically exploits the idea of neighborhood change,and has been successfully applied to solve a series of combinatorial optimization problems[34].In this paper,by tailoring the framework of VNS,we develop two VNS neighborhood operators,named VNS1and VNS2,which are employed to generate new solutions for the employed bee and onlooker bee phases respectively.The aim isto avoid repeated search and explore different search paths.More specifically,VNS1contains three neighborhood operators,i.e.pairwise exchange,swap and partially-mapped crossover(PMX),which are called dynamically in the evolutionary process.VNS2contains of three neighborhood operators,i.e.pairwise exchange,swap and insert.

Let Pnbe the starting solution,Pnewbe the obtained solution by performing a neighborhood operator,i.e.pairwise exchange,swap,PMX or insert,Plbbe the local optima of the VNS1or VNS2,which will be returned as the new solution for the employed bee phase or onlooker bee phase,and MI be the maximum number of iterations.The specific steps of VNS1and VNS2are listed as follows.

?

Procedure of VNS2 k=1, Pnc=Pn for i=1 to MI if k=1 Pnew=Pnc⊕pairwise exchange else if k=2 Pnew=Pnew⊕swap else if k=3 Pnew=Pnew⊕insert end if if f(Pnew)<f(Pnc)k=1 Pnew=Pnew Pnc=Pnew Plb=Pnew else k=k+1 if k>3 k=1 end if if f(Pnew)<f(Plb)Plb=Pnew end if end if i=i+1 end for Return Plb

4.5.Scout bee phase

If a solution in the current population(say Pu)has not been improved in L successive iterations,unlike the basic ABC where a solution is generated randomly in the search space,in this paper,a new solution is produced by executing perturbation to Pu,and then replace Puby the new solution.This is because,Puhas survived many iterations and it may carry better information than others in the population during the search process,its neighboring solutions could be the most promising ones[2].The perturbation is described as follows:generate a real number rnd in the range of[0,1]randomly,if rnd<0.5,execute swap operator three times to Pu;Otherwise,execute insert operator three times to Pu.

4.6.The framework of the proposed IABC

Let PS be the population size,Num be the number of initial solutions generated by heuristic,L be the maximum number of successive non-improving iterations,r be the replication times of the onlooker phase,T be the maximum iterations of the IABC,and Pbbe the best solution found so far.The framework of the IABC can be described as follows.

Step 1 Population initialization.Set t=1.Generate an initial solution P1by the heuristic in Section 4.2,generate Num-1 initial solutions by executing the pairwise exchange operator to P1,and then generate N-Num initial solutions randomly.And then evaluate the solutions and find the best solution among them(say Pcb),let Pb=Pcb.

Step 2 Employed bee phase.For each employed bee Pmin the population,generate a new solution Pnewby VNS1.If Pnewis better than Pb,let Pm=Pnew,Pb=Pnew.If the control acceptance criterion is satisfied,let Pm=Pnew.

Step 3 Onlooker bee phase.Set m=1.Selecta solution(Say Sm)in the population for the onlooker bee by the tournament selection with the size of four,and set m=m+1,repeat the steps until m=M.For each onlooker bee Sm,generate a new solution Snewby VNS2.If Snewis better than Pb,let Sm=Snew,Pb=Snew.If the control acceptance criterion is satisfied,let=Snew.Repeat this Step until the onlooker bee phase is performed r times.

Step 4 Scout bee phase.If a solution in the population has not been improved within L successive iterations,produce a new solution Snewby executing three swap operators or three insertoperators to it,and then replace it by the new solution.If Snewis better than Pb,let Pb=Snew.

Step 5 Set t=t+l.If the termination condition has been met(e.g.t>T or CPU time is reached),go to Step 6.Otherwise go to Step 2.

Step 6 Return Pbas the best solution.

According to the framework of the IABC,three main phases are contained in each iteration,including the employed bee phase,onlooker bee phase and scout bee phase.For each phase,a computational complexity analysis is made.More specifically,the computational complexity of the employed bee phase is O(PS×MI),where MI denotes the maximum number of iterations of VNS1and VNS2,the computational complexity of the onlooker bee phase is O(PS×MI),and the computational complexity of the scout bee phase is O(PS).

5.Computational Results

The major concern about using metaheuristics is the quality of the obtained solution.To evaluate the performance of the IABC,test experiments and comparisons are conducted in this section.30 instances are generated randomly according to the instance generation method stated in[2],which are based on the practical situations of the iron and steel production in Baosteel complex,the largest and most advanced iron and steel enterprise in China.There are 3 converts,5 refining furnaces,and 4 continuous casters.Each continuous caster processes 3–4 casts in each workday,and each cast generally contains 8–12 charges.Therefore,there are 12–16 casts and 120 charges or so in the scheduling instances.The processing times of each charge in the steelmaking,refining and continuous stages are in the ranges of PT1j=38,PT2j∈ [36,50]and PT3j∈[38,44]respectively.The release time of each machine is 0.The transfer times from the steelmaking phase to the refining phase and from the refining stage to the continuous stages are in the ranges of[10,15].

The IABC algorithm is coded in C++and run on a 3.10 GHZ computer with 4 G RAM using Windows 7 Operation System.Four algorithms are employed for comparison,i.e.the ABC algorithm[32-34],the Genetic Algorithm in Ruiz and Maroto(GAR)[35],the Iterated Local Search(ILS)algorithm in Dong et al.[36],and a state-of-the-art SCC scheduling algorithm,i.e.Fruit fly Optimisation Algorithm(FOA)in Li et al.[8].For each algorithm,the encoding and decoding in this paper is adopted.20 independent runs for each instance are carried out,average result of the 20 runs is calculated.Relative Percentage Increase(RPI)over the best average result found by the comparison algorithms is employed to assess and compare the performance of each algorithm.Specifically,the RPI is calculated as follows.

where fAis the average result for algorithm A,i.e.fIABC,fABC,fGAR,fILS,and fFOAdenote the average result for the IABC,ABC,GAR,ILS,and FOA respectively,and fbis the best average result found by the compared algorithms.

5.1.Parameter setting

Four main parameters are included in the IABC,i.e.the population size(PS),the maximum number of successive iterations a solution cannot be improved(L),the maximum number of iterations for VNS1and VNS2(MI),and the control parameter for onlooker bee phase(r).The Taguchi method of design of experiment(DOE)[37]is employed to decide desirable values for the parameters.The levels of the four parameters are listed in Table 1.An orthogonal array L16(44)is selected,and the corresponding 16 parameter combinations are shown in Table 2.For each parameter combination,the IABC is run 20 times independently for a randomly selected instance,i.e.instance 14.The average objective value of the 20 runs is calculated and also given in Table 2.According to Table 2,the factor level trend of the four parameters is illustrated in Fig.2.Meanwhile,the significance value of each parameter for the instances is given in Table 3.According to this Table,one observes that PS is the most important parameter among the four,while r,L and MI rank the second,third and fourth,respectively.According to the above analysis,the suitable parameter values are as follows:PS=30,L=100,MI=10,and r=3.

Table 1 Combinations of the six parameter values

Table 2 Orthogonal array and average objective value

Fig.2.Factor level trend of four parameters.

Table 3 Response value and significance rank

5.2.Comparison with three metaheuristics

In this section,the IABC is compared with the ABC,GAR,and ILS.To compare the four algorithms fairly,the same termination condition is used,i.e.CPU time 10 s.Moreover,for the GARand ILS,the parameter settings proposed in the corresponding references are adopted,while for the ABC,the parameter settings are the same as those of the IABC.Specific comparison results are reported in Table 4.From Table 4,one can observe that the IABC outperforms ABC,GARand ILS.Specifically,the IABC has the smallest average RPI,0.49%,which is smaller than the average RPI of the ABC,GARand ILS,13.35%,10.24%and 2.69%respectively.Moreover,the IABC performs the best for 21 out of 30 instances.In addition,for the remaining 9 instances,the ABC also performs better than the ABC and GAR,while it is slightly worse than the ILS.This clearly shows the effectiveness of the IABC.Furthermore,we can also find that the ILS performs better that the ABC and GAR,while the ABC performs the worst.

In order to investigate whether the results obtained by the IABC differ from those by the compared algorithms in a statistically significant way,the Wilcoxon' rank sum tests with the 5%significance level are conducted for the IABC against ABC,IABC against GAR,and IABC against ILS.The corresponding results(i.e.the values of h)are described in Table 5.h=1 indicates that the results obtained by the former algorithm is significantly better than those by the latter one,while h=0 indicates that the results by the two compared are not significantly different.It can be seen that the IABC produces 30,30 and 20 significantly better values out of 30 instances than the ABC,GAR,and ILS,respectively.This shows the superiority of the IABC.

To further demonstrate the strength of the IABC,the four algorithms are run with longer CPU time,i.e.20 s.Corresponding comparison results are described in Table 6.From Table 6,it can be seen that the IABC also performs better than the ABC,GARand ILS.Precisely,the IABC has the least average RPI 0.94%,which is smaller than the average RPI of the ABC,GARand ILS,12.55%,9.33%and 2.03%respectively.Additionally,the IABC reaches the best performance in 16 out of 30 instances.For the remaining 14 instances,the IABC also performs better than the ABC and GAR,while it is slightly worse than the ILS.The Wilcoxon'rank sum tests with the 5%significance level are also conducted for the IABC against ABC,IABC against GAR,and IABC against ILS.The corresponding results are reported in Table 7.According to Table 7,one can observe that the IABC has 30,30 and 20 significantly better values out of 30 instances than ABC,GAR,and ILS.

Table 4 Comparison results with CPU time 10 s

Table 5 Rank sum test results for the compared algorithms with CPU time 20 s

5.3.Comparison with state-of-the-art SCC scheduling algorithm

In this section,the IABC is compared with a state-of-the-art SCC scheduling algorithm,i.e.FOA.Two termination conditions,i.e.CPUtime 10 s and 20 s,are tested respectively.Additionally,the parameter settings of the FOA is set the same as those in the corresponding reference.Comparison results are displayed in Table 8.According to Table8,it can be observed that the IABC outperforms the FOA under two termination conditions.Specifically,under CPUtime 10 s and 20 s,the IABC has achieved average RPI of 0.71%and 0.84%respectively,while the FOA has achieved average RPI of 1.34%and 1.34%respectively.Moreover,under CPU time 10 s and 20 s,the IABC performs better than the FOA for 23 and 21 out of 30 instances,respectively.The Wilcoxon'rank sum tests with the 5%significance level are also conducted for the IABC against FOA.The corresponding results are listed in Table 9.From Table 9,one can observe that compared with the FOA,the IABC produces significantly better solutions for 21 and 19 instances under CPU time 10 s and 20 s,respectively.Therefore,it is suggested that the IABC could be applied as an alternative approach to well solve the SCC scheduling problem.Furthermore,a Gantt chart for instance 1 obtained by the IABC is shown in Fig.3.In Fig.3,the steelmaking,refining,and continuous casting stages are placed from the bottom to the top,where the three stages have 3,5 and 4 machines respectively.More specifically,the values of f,f1,f2and f3are 5234.32,92.432,0 and 431,respectively.

Table 6 Comparison results with CPU time 20 s

Table 7 Rank sum test results for the compared algorithms with CPU time 20 s

Table 8 Comparison results with CPU time 10 s and 20 s

Table 9 Rank sum test results for the compared algorithms with CPU time 10 and 20 s

6.Conclusions

In this paper,an effective IABC is developed for the SCC scheduling problem.In the IABC,a population initialization heuristic is devised,which can obtain several good initial solutions without compromising the randomness.Moreover,two VNS neighborhood operators are devised to generate high-quality solutions for the employed bee and onlooker bee phases,respectively.These solutions replace the original ones with a control acceptance criterion to enhance the exploration ability.A control parameter is devised to intensify the search of the onlooker bee phase.In the scout bee phase,the solution corresponding to a scout bee is replaced by a new solution,which is yielded by performing three swap operators and three insert operators with equal probability.Finally,comparison results with several metaheuristics and a state-of-the-art SCC scheduling algorithm have demonstrated the effectiveness of the IABC.Therefore,it could be applied as an alternative approach to well solve the SCC scheduling problem.Although this work is presented in terms of the SCC scheduling,it is suggested that,the IABC could also be applied to many other scheduling problems such as permutation flowshop scheduling and flexible job shop scheduling.

Fig.3.Gannt chart of instance 1 obtained by the IABC.