the flexible job-shop scheduling problem considering...

21
Contents lists available at ScienceDirect Computers & Industrial Engineering journal homepage: www.elsevier.com/locate/caie The flexible job-shop scheduling problem considering deterioration effect and energy consumption simultaneously Xiuli Wu a, , Xianli Shen a , Congbo Li b a Department of Logistics Engineering, School of Mechanical Engineering, University of Science and Technology Beijing, Beijing 100083, China b State Key Laboratory of Mechanical Transmission, Chongqing University, Chongqing 400044, China ARTICLEINFO Keywords: Flexible job-shop scheduling problem Step-deterioration effect Energy-saving scheduling heuristic Multi-objective hybrid pigeon-inspired optimization and simulated annealing algorithm ABSTRACT In the practical production, the processing time of jobs is not deterministic whereas grow due to deterioration effect. Besides, with the increasing environmental pollution problems, manufacturing companies cannot only focus on economic indicators, hence research on green manufacturing has received much attention. Hence, we study the flexible job-shop scheduling problem considering deterioration effect and energy consumption si- multaneously. To begin with, the step-deterioration effect model is formulated to determine the actual pro- cessingtime.Anenergyconsumptionmodelisemployedtocomputethemachine’senergyconsumptionwhichin different states. A multi-objective optimization model is formulated for the flexible job-shop scheduling problem considering deterioration effect and energy consumption simultaneously. Then, a multi-objective hybrid pigeon- inspired optimization and simulated annealing algorithm is developed to solve the problem. In the developed algorithm, an energy-saving scheduling heuristic for saving energy without delaying the makespan is proposed. Finally, the experiment results show that the proposed model and the developed algorithm can solve the pro- posed problem effectively and efficiently. 1. Introduction Production scheduling is critical in manufacturing systems. A high- quality scheduling solution increases work efficiency and reduces pro- duction cost by determining resource allocation and sequence scienti- fically. In the traditional production scheduling problem, it is usually assumed that the processing time of a job is constant and machines are always available. However, in the practical production, the processing time of jobs are not deterministic whereas grow due to deterioration effect (Wang, Baldacci, Lim, & Hu, 2018). The deterioration effect is caused by many factors such as job waiting, high load of machine, tool wear, and fatigue of operator during processing, resulting in a decrease in machining efficiency and an increase in the actual processing time of thejob.Forexample,insteelproduction,thetemperatureofajobdrops due to waiting and has to be reheated, resulting in a longer processing time of the job; in the machining process, the machine continues to work, resulting in tool wear and thus the processing time of the job becomes longer. Production scheduling problems with deterioration effect are widespread in industries such as steel, plastics, military and machining process (Chung & Kim, 2016). In this paper, the aerospace and military products are taken as the research object. The aerospace and military products have the characteristics of complex processing flow, high precision requirements and long implementation period. For example, the nine-level roulette is a key component of an aero engine, working under harsh environment of high temperature, high pressure and high speed. The structure and shape of the parts is complex. Dimensional accuracy and technical re- quirements are strict. Most of the materials are high-temperature alloy materials with high strength, high hardness and poor cutting perfor- mance. During the cutting process, the cutting load is heavy, the cutting temperature is high, the phenomenon of machining hardening is ser- ious, and the cutting performance is low. The use of welding turning tools for rough grooving and semi-finishing has long processing time, low efficiency. Moreover, the tool consumption is also serious, and the processing quality of the deep cavity is unstable, which often causes problems such as insufficient processing and poor luminosity of the surface (Wang, Tan, Zhao, Leng, & Shi, 2013). Hence, the tool wear is inevitable during the whole machining process. A typical tool wear curveisshownin Fig.1.Thetoolwearprocesscanbedividedintothree stages (initial wear stage, normal wear stage and sharp wear stage). In the initial wear stage, due to the sharp cutting edge of the newly sharpened tool, the contact surface between the flank and the job sur- face is small, the pressure stress is large. And there is the disadvantage of microscopic inequalities behind the newly sharpened tool. Hence, the https://doi.org/10.1016/j.cie.2019.06.048 Corresponding author. E-mail address: [email protected] (X. Wu). Computers & Industrial Engineering 135 (2019) 1004–1024 Available online 22 June 2019 0360-8352/ © 2019 Elsevier Ltd. All rights reserved. T

Upload: others

Post on 25-Aug-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: The flexible job-shop scheduling problem considering …hbduan.buaa.edu.cn/papers/CIE_Wu_2019.pdf · 2020. 7. 3. · energy consumption, the idle energy consumption. Hence the total

Contents lists available at ScienceDirect

Computers & Industrial Engineering

journal homepage: www.elsevier.com/locate/caie

The flexible job-shop scheduling problem considering deterioration effectand energy consumption simultaneouslyXiuli Wua,⁎, Xianli Shena, Congbo Liba Department of Logistics Engineering, School of Mechanical Engineering, University of Science and Technology Beijing, Beijing 100083, Chinab State Key Laboratory of Mechanical Transmission, Chongqing University, Chongqing 400044, China

A R T I C L E I N F O

Keywords:Flexible job-shop scheduling problemStep-deterioration effectEnergy-saving scheduling heuristicMulti-objective hybrid pigeon-inspiredoptimization and simulated annealingalgorithm

A B S T R A C T

In the practical production, the processing time of jobs is not deterministic whereas grow due to deteriorationeffect. Besides, with the increasing environmental pollution problems, manufacturing companies cannot onlyfocus on economic indicators, hence research on green manufacturing has received much attention. Hence, westudy the flexible job-shop scheduling problem considering deterioration effect and energy consumption si-multaneously. To begin with, the step-deterioration effect model is formulated to determine the actual pro-cessing time. An energy consumption model is employed to compute the machine’s energy consumption which indifferent states. A multi-objective optimization model is formulated for the flexible job-shop scheduling problemconsidering deterioration effect and energy consumption simultaneously. Then, a multi-objective hybrid pigeon-inspired optimization and simulated annealing algorithm is developed to solve the problem. In the developedalgorithm, an energy-saving scheduling heuristic for saving energy without delaying the makespan is proposed.Finally, the experiment results show that the proposed model and the developed algorithm can solve the pro-posed problem effectively and efficiently.

1. Introduction

Production scheduling is critical in manufacturing systems. A high-quality scheduling solution increases work efficiency and reduces pro-duction cost by determining resource allocation and sequence scienti-fically. In the traditional production scheduling problem, it is usuallyassumed that the processing time of a job is constant and machines arealways available. However, in the practical production, the processingtime of jobs are not deterministic whereas grow due to deteriorationeffect (Wang, Baldacci, Lim, & Hu, 2018). The deterioration effect iscaused by many factors such as job waiting, high load of machine, toolwear, and fatigue of operator during processing, resulting in a decreasein machining efficiency and an increase in the actual processing time ofthe job. For example, in steel production, the temperature of a job dropsdue to waiting and has to be reheated, resulting in a longer processingtime of the job; in the machining process, the machine continues towork, resulting in tool wear and thus the processing time of the jobbecomes longer. Production scheduling problems with deteriorationeffect are widespread in industries such as steel, plastics, military andmachining process (Chung & Kim, 2016).

In this paper, the aerospace and military products are taken as theresearch object. The aerospace and military products have the

characteristics of complex processing flow, high precision requirementsand long implementation period. For example, the nine-level roulette isa key component of an aero engine, working under harsh environmentof high temperature, high pressure and high speed. The structure andshape of the parts is complex. Dimensional accuracy and technical re-quirements are strict. Most of the materials are high-temperature alloymaterials with high strength, high hardness and poor cutting perfor-mance. During the cutting process, the cutting load is heavy, the cuttingtemperature is high, the phenomenon of machining hardening is ser-ious, and the cutting performance is low. The use of welding turningtools for rough grooving and semi-finishing has long processing time,low efficiency. Moreover, the tool consumption is also serious, and theprocessing quality of the deep cavity is unstable, which often causesproblems such as insufficient processing and poor luminosity of thesurface (Wang, Tan, Zhao, Leng, & Shi, 2013). Hence, the tool wear isinevitable during the whole machining process. A typical tool wearcurve is shown in Fig. 1. The tool wear process can be divided into threestages (initial wear stage, normal wear stage and sharp wear stage). Inthe initial wear stage, due to the sharp cutting edge of the newlysharpened tool, the contact surface between the flank and the job sur-face is small, the pressure stress is large. And there is the disadvantageof microscopic inequalities behind the newly sharpened tool. Hence, the

https://doi.org/10.1016/j.cie.2019.06.048

⁎ Corresponding author.E-mail address: [email protected] (X. Wu).

Computers & Industrial Engineering 135 (2019) 1004–1024

Available online 22 June 20190360-8352/ © 2019 Elsevier Ltd. All rights reserved.

T

Page 2: The flexible job-shop scheduling problem considering …hbduan.buaa.edu.cn/papers/CIE_Wu_2019.pdf · 2020. 7. 3. · energy consumption, the idle energy consumption. Hence the total

wear at this stage is very fast. After the initial wear, the rough surface ofthe tool has been smoothed and the tool enters the normal wear stage.After the tool has passed the normal wear stage, the cutting edge be-comes dull, the cutting force and the cutting temperature rise rapidly,and the wear speed increases sharply, so that the tool is damaged andthe cutting ability is lost. Due to the long processing cycle of theaerospace and military products, tool wear will affect the processing ofthe job. Hence, it is of practical significance to study the deteriorationeffect of tool wear on the machining process.

Production scheduling problem with deterioration effect was firstproposed by Gupta and Gupta (1988). Due to it conforms the actualproduction environment, production scheduling problem with dete-rioration effect has received much attention once it has been proposed.Mosheiov (2002) provided a complete analysis about shop schedulingproblems with linearly deteriorating jobs and showed that the two-machine flow-shop scheduling problem (FSP) and the two-machineopen-shop scheduling problem (OSP) are polynomially solvable. How-ever the three-machine FSP, the three-machine OSP and the two-ma-chine job-shop scheduling problem (JSP) are already NP-hard.

In the existing research, under the influence of the deteriorationeffect, the actual processing time of operations can be divided intoposition-dependent processing time and time-dependent processingtime (Rustogi & Strusevich, 2015). The position-dependent deteriora-tion effect means that the actual processing time of operations dependson its position in the processing sequence; the time-dependent dete-rioration effect means that the actual processing time of operations is afunction of its starting processing time. For the scheduling problemsconsidering position-dependent deterioration effect, Zhao and Tang(2010) studied the single-machine scheduling problem (SMP) withdeterioration effect and maintenance activities, where the processingtime of the job depends on its position in the sequence. After a main-tenance activity, machine was restored to its initial condition. A poly-nomial time algorithm was designed to solve this problem with the goalof minimizing the completion time. Yang and Yang (2010a) studied theSMP with position-dependent deterioration effect and variable main-tenance duration activities. A polynomial time algorithm was designedto find the optimal maintenance frequency, the optimal maintenanceposition and the optimal sequence of jobs. Rustogi and Strusevich(2012) proposed a polynomial time algorithm to solve the SMP withposition-dependent deterioration effect and machine maintenance ac-tivities. After a maintenance activity, machine was not necessarily re-stored to its initial condition fully. For the scheduling problems con-sidering time-dependent deterioration effect, Wang et al. (2018)studied the SMP considering both deteriorating jobs and periodicmaintenance activities. The actual processing time of the job increaseslinearly with the start processing time, and the maintenance activitiesbetween the two machining cycles restore machine to its original per-fect state. A branch and bound algorithm was designed to solve thisproblem. Ouazene and Yalaoui (2017) studied the identical parallel

machine scheduling problem (PMP) based on the time-dependent de-terioration effect with the objective of minimizing the completion time.Fu, Ding, Wang, and Wang (2018) studied the FSP considering multi-objective, time-dependent deterioration effect and uncertainty. A mixedinteger linear programming model was established and a fireworks al-gorithm was designed to solve the proposed problem.

The typical shop scheduling problems of FSP, OSP, JSP with dete-rioration effect are NP-hard problems, which cannot be solved within alimited time especially when the problem size increases. Hence, theheuristics or the meta-heuristics are employed to solve such combina-tional optimization problem. Li and Gao (2016) proposed a hybridgenetic algorithm (GA) and tabu search (TS) to solve the FJSP. The GAwas employed to explore the solution space, and the TS aimed to exploitthe solution space. Li, Pan, and Tasgetiren (2014) developed a noveldiscrete artificial bee colony algorithm for solving the multi-objectiveFJSP with maintenance activities. Wang, Wang, Xu, Zhou, and Liu(2012) proposed an effective bi-population based estimation of dis-tribution algorithm to solve the FJSP to minimize the maximum com-pletion time. Li, and Tang, et al. (2019) proposed an improved artificialbee colony algorithm for addressing the distributed flow shop con-sidering the distance coefficient found in precast concrete productionsystem, with the minimization of the makespan.

Based on the above related literature, it can be seen that the re-levant literatures considering the deterioration effect are mostly studiedfor simple production lines such as SMP, PMP or FSP, and complexproduction lines such as JSP or FJSP with deterioration effect are rarelystudied. Research on the flexible scheduling problem considering de-terioration effect and energy consumption simultaneously is rare.Hence, we focus on the flexible job-shop scheduling problem con-sidering deterioration effect and energy consumption simultaneously(FJSP-DEEC).

In this paper, a multi-objective hybrid pigeon-inspired optimizationand simulated annealing (MOHPIOSA) algorithm is developed to solvethe flexible job-shop scheduling problem considering deterioration ef-fect and energy consumption simultaneously. As far as we know, this isthe first study on the flexible job-shop scheduling problem consideringdeterioration effect and energy consumption simultaneously. The con-tributions are as follows: (1) a multi-objective optimization model isestablished for the flexible job-shop scheduling problem consideringdeterioration effect and energy consumption simultaneously; (2) anenergy consumption model is employed to compute the machine’s en-ergy consumption which are in different states; (3) a step-deteriorationeffect model is formulated to determine the actual processing time; (4)an energy-saving scheduling heuristic for saving energy without de-laying the makespan is proposed; and (5) a multi-objective hybrid pi-geon-inspired optimization and simulated annealing algorithm is de-veloped to solve the problem.

The rest of the paper is structured as follows. Section 2 introducesthe FJSP-DEEC. Section 3 formulates the FJSP-DEEC. Section 4 pro-poses the MOHPIOSA algorithm for the FJSP-DEEC. Section 5 reportsthe case study. Section 6 presents conclusions and future works.

2. Problem description

In the practical production, the processing time of jobs is not de-terministic whereas grow due to deterioration effect. Besides, with theincreasing environmental pollution problems, manufacturing compa-nies cannot only focus on economic indicators, and research on greenmanufacturing has received much attention. As a modern manu-facturing model, green manufacturing aims to reduce production cost,improve production efficiency, reduce environmental pollution andenergy consumption, and achieve synergistic optimization of economicindicators and environment objectives. Green scheduling is an im-portant part of green manufacturing. It is more difficult to solve thantraditional scheduling, and has more academic research significanceand engineering application value. Hence, we focus on the flexible job-

t

abra

sion

loss

initial wear stage normal wear stage sharp wear stage0

Fig. 1. The typical tool wear curve.

X. Wu, et al. Computers & Industrial Engineering 135 (2019) 1004–1024

1005

Page 3: The flexible job-shop scheduling problem considering …hbduan.buaa.edu.cn/papers/CIE_Wu_2019.pdf · 2020. 7. 3. · energy consumption, the idle energy consumption. Hence the total

shop scheduling problem considering deterioration effect and energyconsumption simultaneously.

The FJSP-DEEC is described as follows. There are a set of jobs, j=1,2, …, n, and a set of machines, k=1, 2, …, m. Each operation followsthe precedence relation. The operation Oij can be processed on anyamong a set of available machines S m{1, 2, , }ij and the processingtime is different on different machines. The actual processing time ofthe operation is variable under the influence of the deterioration effect,and the deterioration effect has a certain threshold. The actual pro-cessing time of the operation is determined by basic processing timeand the starting processing time. The energy consumption of the ma-chine in different states is different. This paper aims to solve the ma-chine assignment for each operation and the operations sequenced oneach machine with the objective of makespan and energy consumption.

In order to understand easier, an instance of FJSP-DEEC is listed inTables 1–3. There are 3 jobs and each job includes 3 operations. Thereare 3 machines available. The processing time of operations on eachavailable machine is listed in Table 1. Take theO11 as an example. Thereare two machines (Machine1 and Machine2) are available for theO11.The processing time on Machine1 is 2 time units and the processingtime on Machine2 is 5 time units. The power parameters for each ma-chine are listed in Table 2, which include the cutting power, the aircutting power, the idle power, and the turning-on/off energy con-sumption. Wherein, the cutting power, the air cutting power and theidle power are substantially constant, the turning-on/off power is notconstant (Li, Li, Tang, & Li, 2017). It is unreasonable to set the turning-on/off power and multiply the turning-on/off power by the time tocalculate the turning-on/off energy consumption. Hence, the turning-on/off energy consumption is given. Referring to Wu and Sun (2018),the values of cutting power, air cutting power, idle power and turning-on/off energy consumption are set. As shown in Table 2, the cuttingpower on Machine1 is 2270W. The air cutting power is 370W. The idlepower is 200W. The turning-on/off energy consumption is 2600W·min.The deterioration parameters for each machine given randomly to un-derstand FJSP-DEEC easier are listed in Table 3. As shown in Table 3,the deterioration rate for Machine1 is 0.10. The lower bound ofthreshold and the upper bound of threshold are 5 time units and 100time units respectively.

3. The formulation of FJSP-DEEC

3.1. Notations

Notations are listed in Table 4.

3.2. Assumptions

(1) Jobs are independent and job preemption is not allowed.(2) Each machine can process only one job at a time.(3) There is pre-defined operation precedence for each job.(4) All jobs and machines are available at t=0.(5) After a job is processed on a machine, it is immediately delivered to

the next machine and the delivery time is negligible.(6) The setup time of an operation is independent of the process

Table 1An instance of the FJSP-DEEC.

Job Operation Machine1 Machine2 Machine3

1 O11 2 5 –O21 – 5 2O31 3 6 4

2 O12 – 4 5O22 5 5 6O32 2 4 8

3 O13 4 – 6O23 4 4 4O33 5 6 7

Table 2Machine parameters.

Machine Cutting power (W) (Wu & Sun, 2018) Air cutting power (W) Turning-on/off energy consumption (W·min) (Wu & Sun, 2018) Idle power (W)

1 2270 370 2600 2002 1820 350 2530 2203 1880 350 2560 250

Table 3Deterioration parameter for machines.

Machine 1 2 3

deterioration rate 0.10 0.15 0.05the lower bound of threshold 5 10 10the upper bound of threshold 100 120 130

Table 4Notations.

Variables Descriptions

n The number of jobsm The number of machinesnj The number of the operations for job jj, g The index for jobs, j, g=1, 2,…, ni, h The index for operations, i, h=1, 2, …, njk The index for machines, k=1, 2, …, mOij The i-th operation of job jOijk The operation Oij is processed on machine kpijk The basic processing time of operation Oij on machine k

pijk' The actual processing time of operation Oij on machine k

pijk1' The time for tool positioning and cutter approach to the job j

processed on machine k

pijk2' The cutting time of operation Oij on machine k

pijk3' The time for cutter back from the job j processed on machine k

Cmax The makespan, the completion time for a scheduling solutionCijk The end time of operation Oij on machine kXijk Xijk =1 if the operation Oij is processed on machine k; otherwise,

Xijk=0Yhgijk Yhgijk =1 if operation Ohg is the precedence of operation Oij on

machine k;Yhgij =−1 if operation Oij is the precedence of operation Ohg onmachine k;otherwise, Yhgijk=0

Sij The set of available machines for operation Oij, Sij {1, 2, …, m}E The total energy consumption

Estandbyk( ) The energy consumption of machine k in the standby state

Eon offk

/( ) The energy consumption of machine k in the turning-on/off state

Eaircuttingk( ) The air cutting energy consumption on machine k

Ecuttingk( ) The cutting energy consumption on machine k

Eidlek( ) The energy consumption of machine k in the idle state

P t( )k The input power of machine k at time tZk The idle power of machine kTk1 The duration to turn on machine kTk2 The duration to turn off machine kSk1 The time to turn on machine k at the beginning of a scheduleSk2 The time to turn off machine k at the ending of a schedule

X. Wu, et al. Computers & Industrial Engineering 135 (2019) 1004–1024

1006

Page 4: The flexible job-shop scheduling problem considering …hbduan.buaa.edu.cn/papers/CIE_Wu_2019.pdf · 2020. 7. 3. · energy consumption, the idle energy consumption. Hence the total

sequence and is included into the processing time.

3.3. The energy consumption model

The energy consumption of the machine is dynamic throughout amachining process. Referring to the energy consumption model of Liet al. (2017), we improve the energy consumption model employed byWu and Sun (2018) and propose the power profile of a machine toolduring a machining process as shown in Fig. 2. The difference betweenthe two models is that the model in this paper refines the cutting energyconsumption into air cutting energy consumption and cutting energyconsumption. Throughout a machining process, the energy consump-tion can be divided into 5 stages, i.e., machine standby state, machineturning-on/off state, air cutting when there is no load applied to thecutting tool, cutting when the motion of the cutting tool or the axesresults in material removal of the job, idle state. Since the machinestandby time is fairly short and impacts on energy consumption ofmachining are negligible.

(1) the turning-on/off state

When a machine is turned on/off, the energy is consumed to active/stop the components of the machine (Dai, 2015). When a machine isarranged to process jobs, it needs to be turned on and consumes energy.After it completes all machining tasks, it needs to be turned off andconsumes energy too. The turning-on/off energy consumption of themachine is computed by Eq. (1) and the time to turn on/off machine k iscomputed by Eqs. (3) and (4).

= ++

E P t dt P t dt max X( ) ( ) ( )on offk

S

S Tk S T

Sk

i jijk/

( ),k

k k

k k

k

1

1 1

2 2

2

(1)

s.t.

=max X( ) 1i j

ijk, (2)

=S min X C p( ( ))ki j

ijk ijk ijk1,

'(3)

=S max X C( )ki j

ijk ijk2, (4)

(2) the air cutting state

The energy is consumed for processing when a machine is in the

processing state. The processing energy consumption can be refinedinto air cutting energy consumption and cutting energy consumption(Li et al., 2017). The air cutting energy consumption refers to the en-ergy consumption consumed by machine tool during the air cuttingprocess when no load applied to the cutting tool, which is computed byEq. (5).

=Eaircuttingk( )

+= = = =

P t dt X P t dt X( ) ( )j

n

i

n

C

C p pk ijk

j

n

i

n

C

Ck ijk

1 1( )

1 1( )

j

ij pijk

ij ijk ijkj

ij pijk

ij

'

2' 3'

3'

(5)

(3) the cutting state

The energy consumption of the machine mainly comes from thecutting process when the machine is in the processing state. The cuttingenergy consumption of the machine is computed by Eq. (6).

== =

E P t dt X( )cuttingk

j

n

i

n

C p p

C pk ijk

( )

1 1( )

j

ij ijk ijk

ij ijk2' 3'

3'

(6)

(4) the idle state

The energy consumption mainly results from the main drive systemwhen a machine is in the idle state. In theory, the energy consumptionin the idle state is equal to the product of the idle power and the idleduration. The idle duration is the duration between two adjacent taskson a machine. The idle power is almost constant (He, 2007). Hence theidle energy consumption is computed by Eq. (7).

= + += =

E

D Y C p C Y

C p C

(( 1)( ) ( 1)

( ))

idlek

j g

n

i h

max n n

ijhgk hg hg ij ijhgk

ij ij hg

( )

, 1 , 1

{ }'

'

j g,

(7)

where, =D Z X X Y( /2)k ijk hgk ijhgk

(5) The total energy consumption

The total energy consumption consists of four parts: the turning-on/off energy consumption, the air cutting energy consumption, the cutting

Time

Pow

er

standby turning-on air cutting cutting ffo-gninrutgnittucria idle air cutting cutting air cutting standby

Fig. 2. The power profile of a machine tool during a machining process.

X. Wu, et al. Computers & Industrial Engineering 135 (2019) 1004–1024

1007

Page 5: The flexible job-shop scheduling problem considering …hbduan.buaa.edu.cn/papers/CIE_Wu_2019.pdf · 2020. 7. 3. · energy consumption, the idle energy consumption. Hence the total

energy consumption, the idle energy consumption. Hence the totalenergy consumption for one machine is computed by Eq. (8).

= + + +E E E E Ekon off

kaircutting

kcutting

kidle

k( )/

( ) ( ) ( ) ( )(8)

3.4. The deterioration effect model

In order to describe the actual processing time of the job under thedeterioration effect, different deterioration effect models were estab-lished in the existing research, which were divided into linear dete-rioration effect model and step-deterioration effect model (Cheng, Ding,& Lin, 2004). The linear deterioration effect model is divided into twodifferent types: = +p sj j j j and = sj j j ( >sj 0), where j, pj, sj, j isthe actual processing time, the basic processing time, the starting pro-cessing time (or the position in the processing sequence) and the de-terioration rate. The difference between the two models is that the jobactual processing time of the former is related to the basic processingtime and starting processing time (or the position in the processingsequence), and the job actual processing time of the latter is only re-lated to the starting processing time (or the position in the processingsequence). Browne and Yechiali (1990), Yu (2015), Toksarı (2011), andYang and Yang (2010b) studied the former, whereas Gawiejnowicz andKononov (2010), Zhao and Tang (2010), Ji, Hsu, and Yang (2013) andLi, Ng, Cheng, and Yuan (2011) studied the latter. In the practicalproduction, the increment of processing time due to deterioration effectis limited. When the job is processed late enough or the position in theprocessing sequence is behind enough, the processing time of the jobcannot be infinite. Hence, it is more reasonable to describe the actualprocessing time with piecewise function. Sundararaghavan andKunnathur (1994) first studied SMP with step-deterioration effect, anddesigned a polynomial time algorithm to solve this problem. Cheng,Guo, Zhang, Zeng, and Liang (2012) studied the identical PMP withstep-deterioration effect with the goal of minimizing the completiontime. A variable neighborhood search algorithm was designed to solvethis problem. Chung and Kim (2016) studied the SMP with step-dete-rioration effect and rate-modifying activity, designed a hybrid geneticalgorithm with two-stage heuristic rules to solve the problem, and de-termined job processing timetables and the number of rate-modifyingactivities and location.

In this paper, we focus on the step-deterioration effect. The step-deterioration effect model presented by Kubiak and Velde (1998) isemployed. Kubiak and Velde (1998) presented a model in which thejob’s processing time was described by an upper bounding piecewisefunction, taking into account the fact that the actual processing time ofthe job consists of two parts: the basic processing time and the variablepenalty time. As shown in Fig. 3, given a degraded duration threshold,if the job cannot be processed before the given lower bound of

threshold, then a part of the time is required as a penalty; the actualprocessing time of the job cannot be increased indefinitely. If the job isprocessed after the given upper bound of threshold, the penalty time isfixed. Specifically,

= +p p b t t t t[max{ , 0} max{ , 0}]ijk ijk k kmin

kmax'

(9)

where bk is the deterioration rate of the machine k, tkmin is the lower

bound of threshold, and tkmax is the upper bound of threshold.

3.5. The formulation of the FJSP-DEEC optimization model

In the FJSP-DEEC, we optimize the makespan and the energy con-sumption simultaneously, as shown in Eq. (10).

=f min C E( , )max (10)

=C maxCmaxi j

ij, (11)

==

E Ek

mk

1

( )

(12)

s.t.

=C C p X i n, 2, 3, ,ij i j ijk ijk j( 1)'

(13)

+

+

C C p X X Y Y C C p X X

Y Y

( ) ( /2)( 1) ( )

( /2)( 1) 0

ij hg ijk hgk ijk h ijk h ijk hg ij hgk hgk ijk

h ijk h ijk

'g g

'

g g (14)

=X k S i j1, , ,ijk ij (15)

= + +p p p pijk ijk ijk ijk' 1' 2' 3'

(16)

= ++

E P t dt P t dt max X( ) ( ) ( )on offk

S

S Tk S T

Sk

i jijk/

( ),k

k k

k k

k

1

1 1

2 2

2

(17)

=Eaircuttingk( )

+= = = =( ) P t dt X P t dt X( ) ( )

j

n

i

n

C

C p pk ijk

j

n

i

n

C

Ck ijk

1 1 1 1( )

j

ij pijk

ij ijk ijkj

ij pijk

ij

'

2' 3'

3'

(18)

== =

E P t dt X( )cuttingk

j

n

i

n

C p p

C pk ijk

( )

1 1( )

j

ij ijk ijk

ij ijk2' 3'

3'

(19)

the

actu

al p

roce

ssin

g tim

e

tkmin tk

max0

t

Fig. 3. The deterioration effect model.

X. Wu, et al. Computers & Industrial Engineering 135 (2019) 1004–1024

1008

Page 6: The flexible job-shop scheduling problem considering …hbduan.buaa.edu.cn/papers/CIE_Wu_2019.pdf · 2020. 7. 3. · energy consumption, the idle energy consumption. Hence the total

= + += =

E

D Y C p C Y

C p C

(( 1)( ) ( 1)

( ))

idlek

i h

n

j g

max n n

ijhgk hg hg ij ijhgk

ij ij hg

( )

, 1 , 1

{ }'

'

i h,

(20)

X {0, 1}ijk (21)

Y { 1, 0, 1}h ijkg (22)

where Eq. (10) is the total optimization objectives, including the ma-kespan Cmax and the total energy consumption E. Eq. (11) is the ma-kespan objective. Eq. (12) is the total energy consumption objective.Eq. (13) represents the precedence relation of operations. Eq. (14) re-presents that one machine can’t process more than one jobs at the sametime. Eq. (15) constrains that an operation can only be processed by oneof the available machines. Eq. (16) indicates that the processing time ofthe operation Oijkconsists of three parts: the time for tool positioningand cutter approach to the job j, the cutting time, and the time forcutter back from the job j. Eqs. (17)–(20) are to compute the energyconsumption which has been discussed in Section 3.3. Eqs. (21)–(22)define the range of values for decision variables.

4. The MOHPIOSA algorithm

Mosheiov (2002) have proved that the two-machine JSP with de-terioration effect are NP-hard. The FJSP is an extension of the JSP.Hence, the FJSP with more than two machines with deterioration effectis also NP-hard problem. It is concluded that the FJSP-DEEC is also NP-hard problem, which is not always possible to find an optimal solutionwithin a limited computational time with a mathematical programmingmethod. Hence, the heuristics or the meta-heuristics are employed tosolve such problems to achieve near-optimal solutions within a limitedcomputational time. Based on the navigation behavior of the pigeons inthe homing process, Duan and Qiao (2014) proposed a new swarmintelligence optimization algorithm and named it pigeon-inspired op-timization (PIO) algorithm. The PIO algorithm has the characteristics ofsimple principle, fewer parameters to be adjusted and easier im-plementation. There are also significant advantages such as simplecalculation, strong robustness and faster convergence (Guo, 2017). Atpresent, the PIO algorithm is mainly used to solve the continuous op-timization problem and lacks the application in the combinational op-timization problem (Duan & Ye, 2017). Hence, we develop a multi-objective hybrid pigeon-inspired optimization and simulated annealingalgorithm to solve the flexible job-shop scheduling problem consideringdeterioration effect and energy consumption simultaneously.

4.1. Basic PIO

In reality, a pigeon reaches the destination with the help of thegeomagnetic field and the landmark when it is far from the destination.There are three main reasons for affecting the homing behavior of pi-geons: the sun, the geomagnetic field and the landmark. Different na-vigation tools will be used when pigeons fly to the destination. First, therough direction is identified by the sun and the geomagnetic field, andthen the landmark is used to correct the current direction until thedestination is reached (Duan & Ye, 2017). Inspired by the autonomoushoming behavior of pigeons in nature, Duan and Qiao (2014) proposedthe new swarm intelligence optimization algorithm, the PIO algorithm.In the PIO algorithm, two operators are designed for simulating thehoming behavior of pigeons, which are the map and compass operatorand the landmark operator, respectively. The flowchart of the basic PIOalgorithm is shown in Fig. 4. Details are as follows.

Step 1: Initialize parameters including the size of pigeon swarmS,the map and compass factor R, the maximum number of iterations

N1 of the map and compass operator, the maximum number ofiterations N2 of the landmark operator;Step 2: Generate S pigeons randomly, evaluate these pigeons anddetermine the best pigeonXgbest ;Step 3: Perform the map and compass operator. Firstly, update eachpigeon’s velocity and position, then evaluate the fitness of all pi-geons and determine the best pigeonXgbest ;Step 4: Judge the iteration terminal condition. If counter1> N1, stopand go to Step 5; otherwise, counter1= counter1+1, return to Step3;Step 5: Perform the landmark operator. Firstly, update each pigeon’svelocity and position, then evaluate the fitness of all pigeons anddetermine the best pigeonXgbest ;Step 6: Judge the iteration terminal condition. If counter2 > N2,stop and output Xgbest ; otherwise, counter2= counter2+1, return toStep 5.

4.2. The MOHPIOSA algorithm

Li and Duan (2014) stated that the basic PIO algorithm has somedrawbacks that limit its further application. In the model of the basicPIO, the landmark operator is conducted in the last few iterations.However, the algorithm could have already converged thus the land-mark operator does not work. The PIO algorithm is easy to fall intolocal optimum. In order to overcome the above shortcomings, firstly, aprobability P is designed to balance the map and compass operator andthe landmark operator; then, the Metropolis rule in SA allows the PIOalgorithm to accept the bad solution with a certain probability changingwith the iteration, which promotes the algorithm to escape from thelocal optimum. Hence, a MOHPIOSA algorithm is developed to solvethe FJSP-DEEC. The flowchart of the MOHPIOSA algorithm is shown inFig. 5.

Step 1: Initialize parameters including the size of pigeon swarm S,maximum number of iterations N, the external archive Arch;Step 2: Generate S pigeons randomly, evaluate these pigeons;Step 3: Find the non-dominated solutions and store them in theexternal archive Arch;Step 4: Perform a neighborhood search on the pigeons in the ex-ternal archive Arch and update the external archive Arch;Step 5: Generate a random number rand [0, 1]and compare itwithP . If <rand P, the map and compass operator is performed;otherwise, the landmark operator is performed;Step 6: Update the external archive Arch;Step 7: counter= counter+1;Step 8: Judge the iterations terminal condition. If counter < N, re-turn to Step 4; otherwise, stop and output the result.

In the MOHPIOSA algorithm, a probability P is used to decide toperform the map and compass operator or the landmark operator.

= ×P exp t( 1/( ))counter0 (23)

where exp() is an e-based exponential function, and t0 are constants.In each iteration, a random numberrand [0, 1]is generated andcompared toP . If <rand P, the map and compass operator is performed;otherwise, the landmark operator is performed. As the iteration goes,the value ofPdecreases nonlinearly. In summary, the compass operatoris performed with a higher probability in the early iterations, and thelandmark operator is performed with a higher probability in the lateiterations.

4.3. The key details of the MOHPIOSA algorithm for the FJSP-DEEC

4.3.1. RepresentationThe operation-based representation is adopted to encode a FJSP-

DEEC to a row vector (Wu & Wu, 2017). Each individual is composed of

X. Wu, et al. Computers & Industrial Engineering 135 (2019) 1004–1024

1009

Page 7: The flexible job-shop scheduling problem considering …hbduan.buaa.edu.cn/papers/CIE_Wu_2019.pdf · 2020. 7. 3. · energy consumption, the idle energy consumption. Hence the total

= njn

j1 numbers, each of which corresponds a job j and occurs nj times.Thei-th occurrence of the number j represents operation Oij. Take theinstance in Table 1 as an example, the FJSP-DEEC can be represented asfollows (see Fig. 6).

4.3.2. Energy-saving scheduling heuristic considering the deterioration effectThe encoding method used in this paper does not select the machine

for each operation. Hence, when decoding to generate a schedulingsolution, it is necessary to design a decoding algorithm to select aspecific machine for each operation. The Idle Time First (ITF) rule isfirst introduced before the decoding algorithm is proposed. The ITF ruleis that if an operation can be assigned into one of the idle time slots inthe case of satisfying the precedence relation, the idle time slot is firstpreferred (Wu & Wu, 2017).

In order to understand easier, the decoding scheme of the pre-sentation in Section 4.3.1 is shown in Fig. 7. The numbers in eachrectangle indicate “job number-operation number”. OperationsO O O O O, , , ,12 22 13 11 21 have been scheduled and now it is the operationO23 turn to be scheduled. As shown in Fig. 7, there are four positionsthat can be employed to place the operation O23. If the idle time slotsare not considered, the operationO23 is placed in the position (1) or (2).

However, if the idle time slot is considered, the operation O23 is placedin the position (3) and the completion time for the operationO23will bereduced greatly.

Different from saving energy by optimizing cutting parameters (Li,Duan, et al., 2019; Xiao, Li, Tang, Li, & Li, 2019), in this paper, wedesign an energy-saving scheduling heuristic considering the dete-rioration effect under the principle of the ITF rule, which is an energy-saving scheduling method considering the makespan and energy con-sumption simultaneously. The main idea is to choose machine whichconsumes less energy to save energy without deteriorating the effi-ciency. Two rules are developed to achieve this aim. First check if thereis an idle time slot into which the current operation can be inserted. Ifyes, Rule 1 is selected; otherwise, Rule 2 is selected.

Rule 1: Arrange the operation on an available machine which con-sumes the least energy.Rule 2: Arrange the operation on an available machine which cancomplete the processing as early as possible.

The energy-saving scheduling heuristic considering the deterior-ating effect is designed. The flowchart is shown in Fig. 8. The details are

Start

Step1: Initialize parameters

Step4: counter1>N1?

Step3: Update each pigeon’s velocityand position

Step4: counter1=counter1+1Step3: Evaluate Xi ,update Xgbest

Step5: Update each pigeon’s velocityand position

Step5: Evaluate Xi ,update Xgbest

Step6: counter2>N2?

Step6: counter2=counter2+1

End

Step6: Output Xgbest

No

Yes

No

Yes

The

map

and

com

pass

ope

rato

rTh

e la

ndm

ark

oper

ator

Step2: Generate initial pigeon swarm, evaluate and determine Xgbest

Fig. 4. The flowchart of the basic PIO algorithm.

X. Wu, et al. Computers & Industrial Engineering 135 (2019) 1004–1024

1010

Page 8: The flexible job-shop scheduling problem considering …hbduan.buaa.edu.cn/papers/CIE_Wu_2019.pdf · 2020. 7. 3. · energy consumption, the idle energy consumption. Hence the total

as follows:Input: the individual z whose length islen z( );Output: an optimal scheduling solution, where the start time, the

end time, the processing machine for each operation are determined.

Step 1: Obtain the individual z and set v=1;Step 2: Repeat when v is less thanlen z( );Step 2.1: Obtain the v-th element z(v);Step 2.2: Determine the operation Oij;Step 2.3: Determine whether the operation Oij is the first opera-tion of the job j. If yes, go to step 2.4; otherwise, go to Step 2.6;Step 2.4: Find the earliest processing position of the operation Oijon all available machines respectively, and record the relevantparameters (the actual processing time, the earliest processingposition, the start time, the end time, the change of energy con-sumption, the cutting energy consumption of Oij and the load) inthe case of inserting idle time slot or appending at the rear (de-tails are in the following section (1)), go to Step 2.5;Step 2.5: Determine the processing position of the operation Oijaccording to the developed Rule1 and Rule2 (details are in thefollowing section (2)), go to Step 3;Step 2.6: The current operationOij is not the first operation of thejob j. find the earliest processing position of the operation Oij onall available machines respectively, and record the relevantparameters (the actual processing time, the earliest processingposition, the start processing time, the end processing time, thechange of energy consumption, the cutting energy consumption

of Oij and the load) in the case of inserting idle time slot or ap-pending at the rear (details are in the following section (3)), go toStep 2.7.Step 2.7: Determine the processing position of the operation Oijaccording to the developed Rule1 and Rule2 (details are in thefollowing section (2)), go to Step 3;

Step 3: Obtain the next element, set v= v+1, and return to Step 2.(1) Finding and recording the earliest processing position of the first

operation

The details for finding and recording the earliest processing positionof the first operation of all jobs on jobs’ available machines are as

Start

Step1: Initialize parameters

Step2: Generate initial pigeon swarm and evaluate them

Step3: Find the non-dominated solutions and store them in the

external archive Arch

Step8: counter<N?

Step4: Perform a neighborhood search on the pigeons in Arch and

update Arch

Step5: rand<P?

Step5:Perform the map and compass operator

Step5:Perform the landmark operator

Step6: update Arch

Step7: counter=counter+1

Step8: Output optimal pareto set End

Yes No

Yes No

Fig. 5. The flowchart of the MOHPIOSA algorithm.

Fig. 6. The presentation for the instance in Table 1.

3-1

1-1

(1)2-21

2

3 1-2

2-1 (2)

(3)

2 4 6 8 10 12 14 160

(4)

Fig. 7. An example of how the decoding method works.

X. Wu, et al. Computers & Industrial Engineering 135 (2019) 1004–1024

1011

Page 9: The flexible job-shop scheduling problem considering …hbduan.buaa.edu.cn/papers/CIE_Wu_2019.pdf · 2020. 7. 3. · energy consumption, the idle energy consumption. Hence the total

follows. The flowchart is shown in Fig. 9.

Step 1: Traverse all machines to find all available machines foroperation O j1 , the number of available machines is Q;Step 2: Set q=1;Step 3: Repeat when q is less than Q;Step 3.1: Find all idle time slots of the machine q, the number ofidle time slots is Q1;Step 3.2: Setq1 =1;Step 3.3: If q1 Q1, go to Step 3.3.1; otherwise go to Step 3.5;Step 3.3.1: Compute the actual processing time p jq1

' of the op-eration O j1 according to Eq. (9);Step 3.3.2: Compare the actual processing time p jq1

' with theq th1 idle time slot. If p jq1

' the q th1 idle time slot, opera-tion O j1 can be inserted into the q th1 idle time slot, computeand record the actual processing time, the index of currentmachine, the processing position, the start processing time, theend processing time, the energy consumption change of currentmachine, the cutting energy consumption of the operation O j1 ,the load of current machine, go to Step 4; otherwise, go to Step3.4.

Step 3.4: Obtain the next idle time slot, set q1=q1 +1, and returnto Step 3.3.Step 3.5: Append the operation O j1 at the rear of the currentmachine, compute and record the actual processing time, theindex of current machine, the processing position, the start pro-cessing time, the end processing time, the energy consumptionchange of current machine, the cutting energy consumption ofthe operation O j1 , the load of current machine, go to Step 4;

Step 4: Obtain the next available machine, set q= q+1, and returnto Step 3.

(2) Determining the processing position of operation

The details for determining the processing position of the operationOij according to the developed Rule1 and Rule2 are as follows. Theflowchart is shown in Fig. 10.

If there are machines in all available machines that have idle timeslots to insert the operation Oij, Step 1 is performed; otherwise Step 2 isperformed.

Step 1: Insert the operation Oij into the idle time slots of theavailable machines.Step 1.1: Select the machine in which the total energy con-sumption increment is the smallest. If the machine is not unique,go to Step 1.2; otherwise, go to Step 3;Step 1.2: Select the machine in which the cutting energy con-sumption for processing operationOij is the lowest. If the machineis not unique, go to Step 1.3; otherwise, go to Step 3;Step 1.3: Select the machine with the smallest load up to now. Ifthe machine is not unique, go to Step 1.4; otherwise, go to Step 3;Step 1.4: Select a machine randomly and go to Step 3;

Step 2: Append the operation Oij at the rear of the available ma-chines.Step 2.1: Select the machine in which the completion time foroperation Oij is the earliest. If the machine is not unique, go toStep 2.2; otherwise, go to Step 3;Step 2.2: Select the machine in which the processing time foroperation Oij is the shortest. If the machine is not unique, go toStep 2.3; otherwise, go to Step 3;Step 2.3: Select the machine with the smallest load up to now. Ifthe machine is not unique, go to Step 2.4; otherwise, go to Step 3;Step 2.4: Select a machine randomly, and go to Step 3;

Step 3: Update the job time matrix, machine time matrix, machine

Step1: Obtain z, set v=1

Step2:v len(z)?

Step2.3: the operation Oij is the first operation

of the job j?

Step2.4: Find the earliest processing position of Oij on all available machines

respectively

Step2.5: Determine the processing position of Oij

Step3: v=v+1

oNseY

Yes

No

Start

End

Step2.6: Find the earliest processing position of Oij on all available machines

respectively

Step2.7: Determine the processing position of Oij

Step2.1: Obtain the v-th element z(v)

Step2.2: Determine the operation Oij

Fig. 8. The flowchart of the energy-saving scheduling heuristic considering the deterioration effect.

X. Wu, et al. Computers & Industrial Engineering 135 (2019) 1004–1024

1012

Page 10: The flexible job-shop scheduling problem considering …hbduan.buaa.edu.cn/papers/CIE_Wu_2019.pdf · 2020. 7. 3. · energy consumption, the idle energy consumption. Hence the total

load matrix and energy consumption matrix.(3) Finding and recording the earliest processing position of the non-

first operation

The details for finding and recording the earliest processing positionof the non-first operation of all jobs on jobs’ available machines are asfollows. The flowchart is shown in Fig. 11.

Step 1: Traverse all machines to find all available machines foroperation O i( 1)ij , the number of available machines is Q;Step 2: Set q=1;Step 3: Repeat when q is less than Q;Step 3.1: Find all idle time slots of the machine q, the number ofidle time slots is Q1;Step 3.2: Set q1 =1;Step 3.3: If q1 Q1, go to Step 3.3.1; otherwise go to Step 3.5;Step 3.3.1: Compute the actual processing time p i( 1)ijq

' of theoperation O i( 1)ij according to Eq. (9);Step 3.3.2: Compare the actual processing time p i( 1)ijq

' withthe q th1 idle time slot. If p i( 1)ijq

' the q th1 idle time slot,compare the completion time of the previous operation of theoperation O i( 1)ij (C i j( 1) ) with the start time of the q th1idle time slot, if C i j( 1) the start time of the q th1 idle timeslot, go to Step 3.3.2.1, otherwise go to Step 3.3.2.2; otherwise,go to Step 3.4;Step 3.3.2.1: Insert the O i( 1)ij into the q th1 idle timeslot. The start processing time of the operation O i( 1)ij isthe start time of the q th1 idle time slot, compute and recordthe actual processing time, the index of current machine, the

processing position, the start processing time, the end pro-cessing time, the energy consumption change of current ma-chine, the cutting energy consumption of the operationO i( 1)ij , the load of current machine, go to Step 4;Step 3.3.2.2: The start processing time of the operationO i( 1)ij is the completion time of the previous operation; re-compute the actual processing time p i( 1)ijq

' of the opera-tion O i( 1)ij according to Eq. (9) and compute the com-pletion time of the operationO i( 1)ij ; if the completion timeof the operation O i( 1)ij the end time of the q th1 idletime slot, operation O i( 1)ij can be inserted into the q th1idle time slot, compute and record the actual processing time,the index of current machine, the processing position, thestart processing time, the end processing time, the energyconsumption change of current machine, the cutting energyconsumption of the operation O i( 1)ij , the load of currentmachine, go to Step 4; otherwise, go to Step 3.4;

Step 3.4: Obtain the next idle time slot, set q1=q1 +1, and returnto Step 3.3.Step 3.5: Append the operationO i( 1)ij at the rear of the currentmachine, compute and record the actual processing time, theindex of current machine, the processing position, the start pro-cessing time, the end processing time, the energy consumptionchange of current machine, the cutting energy consumption of theoperation O i( 1)ij , the load of current machine, go to Step 4;

Step 4: Obtain the next available machine, set q= q+1, and returnto Step 3.

Step1: Find available machines for O1j , the quantity is Q

Step2: q=1

Step3: q Q?

Step3.1: Find idle time slots of the machine q, the quantity is Q1

Step3.2: q1=1

Step3.3: q1 Q1?

Step3.3.1: Compute the actualprocessing time p’1jq

Step3.3.2: p’1jq the q1-th idle time slot?

Step3.3.2: Insert O1j into the q1-th idle time slot

Step3.5: Append O1j at the rear of the machine q

Step3.4: q1=q1+1

Step4: q=q+1

Yes

No

Yes

No

Yes No

Start

End

Fig. 9. The flowchart of finding and recording the earliest processing position of the first operation.

X. Wu, et al. Computers & Industrial Engineering 135 (2019) 1004–1024

1013

Page 11: The flexible job-shop scheduling problem considering …hbduan.buaa.edu.cn/papers/CIE_Wu_2019.pdf · 2020. 7. 3. · energy consumption, the idle energy consumption. Hence the total

4.3.3. The discrete map and compass operator with SAThe pigeons perceive the geomagnetic field and then form a map in

the mind. They use the height of the sun as a compass to adjust theflying direction, and as they approach their destination, their depen-dence on the sun and the geomagnetic field decreases.

In the PIO model, virtual pigeons are used to simulate the naviga-tion process. According to the principle of the map and the compassoperator, the position and velocity of pigeon i are initialized, and in themulti-dimensional search space, the position and velocity are updatedas the iteration goes. Its position and velocity are recorded as

=X x x x[ , , , ]i i i iD1 2 and =V v v v[ , , , ]i i i iD1 2 respectively, where=i S1, 2, , . According to Eqs. (24)–(25), update the velocity andposition of pigeoni.

= +×V V e rand X X( )iN

iN R N

gbest iN1 1 (24)

= +X X ViN

iN

iN1 (25)

where ViN signifies the velocity of pigeon i in the N -th iteration.

XiN signifies the position of pigeon i in the N -th iteration. R is the map

and compass factor which can slow the velocity of pigeons down as the

iteration goes, rand denotes a random number within [0, 1], and Xgbestsignifies the best position of all the pigeons. The landmark operatorworks until the map and compass operator meet the terminal condition.

As can be seen from the above description, the map and compassoperator in the basic PIO algorithm is not suitable for solving combi-national optimization problems. It is necessary to design a discrete mapand compass operator. Hence, a discretization method that has practicalsignificance for the combinational optimization problem is proposed.The discrete map and compass operator is described as follows.

It can be seen from Eqs. (24)–(25) that in the map and compassoperator, the new position of the pigeon i is determined by the pigeon’svelocity and the best position of all the pigeons, namely.

=X c m X X( ( ), )iN

iN

gbest1 (26)

Eq. (26) consists of two parts, the effect of velocity and the effect ofthe best position of all the pigeons on the flight of the pigeoni, whichare represented by the symbol m and the symbol c respectively.

(a) =E m X( )iN

iN1 1

Insert Oij into the idle time of the available

machines?

Step 3: Update the job time matrix, machine time matrix, machine load

matrix and energy consumption matrix

Yes No

Start

End

Step1.1: Select the machine in which the

total energy consumption increment is the smallest

Step1.1: the machine is not

unique?

Step1.2: Select the machine in which the cutting energy consumption for Oij is the

lowest.

Step1.2: the machine is not

unique?

Step 1.3: Select the machine with the

smallest load up to now

Step1.3: the machine is not

unique?

Step 1.4: Select a machine randomly

Step2.1: Select the machine in which the

completion time for Oij

is the earliest

Step2.1: the machine is not

unique?

Step 2.2: Select the machine in which the

processing time for Oij is the shortest

Step2.2:the machine is not

unique?

Step 2.3: Select the machine with the

smallest load up to now

Step2.3:the machine is not

unique?

Step 2.4: Select a machine randomly

Yes

Yes

Yes

No

No

No

No

No

No

Yes

Yes

Yes

Step1: Insert the operation Oij into the idle

time of the available machines

Step2: Append the operation Oij at the rear

of the available machines

Fig. 10. The flowchart of determining the processing position of operation.

X. Wu, et al. Computers & Industrial Engineering 135 (2019) 1004–1024

1014

Page 12: The flexible job-shop scheduling problem considering …hbduan.buaa.edu.cn/papers/CIE_Wu_2019.pdf · 2020. 7. 3. · energy consumption, the idle energy consumption. Hence the total

The symbol m indicates that the position of the pigeon is changed,which can be achieved by the crossover operator and the mutationoperator. In this part, the position of the pigeon is updated to a betterposition by obtaining information from itself. The mutation operator isto exchange elements in one individual. Hence, Ei

N 1 is implementedwith the mutation operator.

(b) =X c E X( , )iN

iN

gbest1

The symbol c indicates that the position of the pigeon is changed,which also can be achieved by the crossover operator and the mutationoperator. In this part, the position of the pigeon is updated to a betterposition by obtaining information from the pigeon with the best posi-tion. The crossover operator is to exchange elements between two in-dividuals. Hence, Xi

N is implemented with the crossover operator.The flowchart of the discrete map and compass operator is shown in

Fig. 12. Details are as follows.

Step 1: Set i=1;Step 2: Judge the iterations terminal condition. If i > S, stop;otherwise, go to Step 3.Step 3: Pigeon i flies by itself, generate a new position;Step 4: Judge whether pigeon i is updated to the new position or not.If the fitness difference of the new position and the original position

is less than zero, update pigeon i to the new position; otherwise,keep pigeon i unmoved;Step 5: Pigeon i flies to Xgbest , generate a new position;Step 6: Determine if pigeon i is updated to the new position based onthe Metropolis rule in SA;Step 7: Consider the next pigeon, set i= i+1 and return to Step 2.

As marked in Fig. 12, three steps determine the whole process.There are (1) generating a new position based on pigeon i’s own flight,i.e. the effect of velocity on flight; (2) generating a new position basedon pigeoni flying toXgbest , i.e. the effect of the best position on flight; (3)position updating. We discuss them in detail in the following sections.

(1) The effect of velocity on flight

The mutation operator is adopted to implement the effect of velocityon the flight of the pigeoni. An example is provided in Fig. 13, OI isoriginal position of pigeoni, and NI is new position of pigeoni.

Step 1: Select two points randomly in the OI;Step 2: Swap the elements in the selected positions to generate the

NI.

(2) The effect of the best position on flight

Step1: Find all available machines for Oij , the quantity is Q

Step2: q=1

Step3: q Q?

Step3.1: Find idle time slots of the machine q, the quantity is Q1

Step3.2: q1=1

Step3.3: q1 Q1?

Step3.3.1: Compute the actualprocessing time p’ijq

Step3.3.2: p’ijq the q1-th idle time slot?

Step3.3.2.1: Insert Oij into the q1-th

idle time slot

Step3.5: Append Oij at the rear of the machine q

Step3.3.2: C(i-1)j the start time of the q1-th

idle time slot?

Step3.4:q1=q1+1

Step3.3.2.2: Re-compute the actual processing time

Step3.3.2.2:Cij the end time of the q1-th

idle time slot?

Step4: q=q+1

Yes

No

Yes

No

Yes

No

Yes

No

No Yes

Start

End

Step3.3.2.1: The start time of Oij=the start time of the q1-th idle time slot

Step3.3.2.2: Insert Oij into the q1-th

idle time slot

Step3.3.2.2: The start time of Oij=C(i-1)j

Fig. 11. The flowchart of finding and recording the earliest processing position of the non-first operation.

X. Wu, et al. Computers & Industrial Engineering 135 (2019) 1004–1024

1015

Page 13: The flexible job-shop scheduling problem considering …hbduan.buaa.edu.cn/papers/CIE_Wu_2019.pdf · 2020. 7. 3. · energy consumption, the idle energy consumption. Hence the total

There are many kinds of crossover operators, such as position-basedcrossover (PBX), linear order crossover (LOX), simulated binary (SBX),uniform crossover (UC), and single point (SI) crossover (Yi et al., 2019).Two crossover operators are adopted to implement the effect of the bestposition of all the pigeons on the flight of the pigeoni. In the iteration,one of the crossover operators is selected randomly. The first one is thePBX. The basic working procedure of PBX is described as follows. Anexample is provided in Fig. 14.

Step 1: Generate some positions randomly in the OI;Step 2: Replace the elements in the selected positions in the OI withthe elements in the selected positions in theXgbest ;Step 3: Delete the same elements replaced withXgbest in the originalOI;

Step 4: Start from the first position and fill in the remaining ele-ments in the unselected positions in the OI.

The second crossover operator is the LOX. The basic working pro-cedure of LOX is described as follows. An example is provided inFig. 15.

Step 1: Generate two positions randomly in the OI;Step 2: Replace the segment between the two positions in the OIwith the segment between the two positions in theXgbest ;Step 3: Delete the same elements replaced withXgbest in the originalOI;Step 4: Start from the first position and fill in the remaining ele-ments in the unselected positions in the OI.

Start

Step1: i=1

Step2: i>S? End

Step3: Generate a new position based on pigeon i’s own flight

Step6: rand<pr?

Step6: Update pigeon i to the new position

Step6: Keep pigeon iunmoved

Yes

No

No

Step5: Generate a new position based on pigeon i flying to Xgbest

Step7: i=i+1

Yes

Step4: New and original position fitness difference of pigeon i, df<0?

Step4: Update pigeon ito the new position

Step4: Keep pigeon iunmoved

oNseY

Metropolis rule in SA

Fig. 12. The flowchart of the discrete map and compass operator.

Fig. 13. An example of how the mutation op-erator works.

Fig. 14. An example of how the PBX crossoverworks.

X. Wu, et al. Computers & Industrial Engineering 135 (2019) 1004–1024

1016

Page 14: The flexible job-shop scheduling problem considering …hbduan.buaa.edu.cn/papers/CIE_Wu_2019.pdf · 2020. 7. 3. · energy consumption, the idle energy consumption. Hence the total

(3) Position updating

Pigeons fly to a better position in the original and new positionsafter the mutation operation. The Metropolis rule in SA is used to up-date the position of pigeons after the crossover operation.

=Pr

< <

×> >

f i f i and f i f i

exp f i f i f f f i f i f f

tf i f i and f i f i

f i f i and f i f i or f i f i and f i

f i

1, ( ) ( ) ( ) ( )

( (( ( ) ( ))/( ) ( ( ) ( ))/( ))

/( )),( ) ( ) ( ) ( )

0.5, ( ( ) ( ) ( ) ( )) ( ( ) ( ) ( )

( ))

n o n o

n o w b n o w bcounter

n o n o

n o n o n o n

o

1 1 2 2

1 1 1 1 2 2 2 2

01 1 2 2

1 1 2 2 1 1 2

2

(27)

where exp() is an e-based exponential function, f i( )o1 and f i( )o

2

signify the two fitness of the pigeon i before the crossover operator isperformed, f i( )n

1 and f i( )n2 signify the two fitness of the pigeon i after

the crossover operator is performed. fw1 and fw

2 signify the worst value ofthe two fitness respectively in the current pigeon swarm. fb

1 and fb2

signify the best value of the two fitness respectively in the current pi-geon swarm. A random numberrand (0, 1)is generated and comparedtoPr . If <rand Pr , update the pigeoni to the new position; otherwise, thepigeoni stays in the original position.

4.3.4. The discrete landmark operator with SAThe landmark operator simulates the influence of landmark navi-

gation on pigeons. When pigeons fly for a certain amount of timewhereas they are still far from the destination, pigeons rely on the

landmark. Moreover, if the pigeon is familiar with the landmark, it willfly straight to there; otherwise, they will follow the pigeons familiarwith the landmarks.

In the landmark operator, the number of pigeons is reduced by halfas the iteration goes. Pigeons far from the destination lose the ability todistinguish paths and are left behind. Pigeoni updates its position ac-cording to Eqs. (28)–(30).

== =

X X F X S F X( )/ ( )centerN

i

S

iN

iN N

i

S

iN1

1

1 1 1

1

1N N1 1

(28)

=S S /2N N 1 (29)

= +X X rand X X( )iN

iN

centerN

iN1 1 1 (30)

Among them,

=+

F Xfitness X For minimizing problems

fitness X For maximizing problems( )

1/( ( ) ),( ),i

N iN

iN

11

1 (31)

where XcenterN 1 signifies the center position of the remaining pigeons

in the (N -1)-th iteration, regarded as the landmark; SN signifies thenumber of pigeons in the N -th iteration; fitness() is the quality of thepigeon individual, where >fitness X( ) 0i

N 1 . The problem studied in thispaper is the minimizing problem. When the terminal condition is met,the landmark operator stops working.

Same as the map and compass operator, it is necessary to discretizethe landmark operator. The discrete map and compass operator is de-scribed as follows.

It can be seen from Eqs. (28)–(30) that in the landmark operator, thepigeons fly to the destination according to the nearby landmarks.Hence, the neighborhood search operation is designed to implement thediscrete landmark operator. The flowchart of the discrete landmarkoperator is shown in Fig. 16. Details are as follows.

Step 1: Update the pigeon swarm;Step 2: Set j=1;Step 3: Judge the iterations terminal condition. If j > iteration, stop;otherwise, go to Step 4;Step 4: Set i=1;Step 5: Judge the iterations terminal condition. If i > S, go to Step9; otherwise, go to Step 6;Step 6: Pigeon i flies under the guidance of landmark to generate anew position;Step 7: Determine if pigeon i is updated to the new position based onthe Metropolis rule in SA;Step 8: Set i= i+1 and return to Step 5;Step 9: Set j= j+1 and return to Step 3.

As marked in Fig. 16, three steps determine the whole process.There are (1) the pigeon swarm updating; (2) the neighborhood search;(3) the position updating. We discuss them in detail in the followingsections.

In the basic PIO algorithm, in order to maintain the overall super-iority of the pigeons, half of pigeons will be eliminated with the

Fig. 15. An example of how the LOX crossover works.

Start

Step2: j=1

Step3: j>iteration? End

Step7: Update the position of pigeon iwith the Metropolis rule in SA

Yes

No

Step6: Pigeon i flies to the landmark Step8: i=i+1

Step1: Update the pigeon swarm

Step5: i>S?

Step9: j=j+1

Yes

No

Step4: j=1

Fig. 16. The flowchart of the discrete landmark operator.

X. Wu, et al. Computers & Industrial Engineering 135 (2019) 1004–1024

1017

Page 15: The flexible job-shop scheduling problem considering …hbduan.buaa.edu.cn/papers/CIE_Wu_2019.pdf · 2020. 7. 3. · energy consumption, the idle energy consumption. Hence the total

landmark operator. In the MOHPIOSA algorithm, when updating thepigeon swarm, all the pigeons in the current pigeon swarm are eval-uated. The details are as follows, (1) finding out a quarter of pigeonswith high value of makespan; (2) finding out a quarter of pigeons withhigh value of energy consumption; (3) replacing these halves of pigeonswith new pigeons generated randomly.

Each pigeon searches iteration times in its vicinity. The swappingmutation operator is designed to exploit the neighborhood.

The Metropolis rule in SA is used to update the pigeons’ position,which is identical to that in Section 4.3.3.

5. Case study

5.1. Design of experiments

5.1.1. Experiment settingAll the experiments are performed on a desktop computer with an

Intel Core i5-3230, 2.60 GHz CPU, 2.00G RAM, Win7 64 OS, andMatlab©.

5.1.2. Data sourceThe benchmark instances from Kacem, Hammadi, and Borne

(2002), Brandimarte (1993) and Fattahi, Mehrabad, and Jolai (2007)are taken as the test instances. In order to apply the benchmark in-stances for the proposed problem, it is necessary to modify the bench-mark instances. The deterioration rate of a machine bk was randomlygenerated using a uniform distribution U[0.005, 0.150] (Wang et al.,2018). Referring to the deterioration period setting related to thenumber of jobs proposed by Wu, Shiau, Lee, and Lee (2009), in thisstudy, the deterioration period is set to be related to the makespan ofthe benchmark instances, so that the deterioration period is generallyapplicable to all test instances. That is, the lower bound of thresholdand the upper bound of threshold vary with the test instances(tk

min =makespan×0.1, tkmax=makespan×0.8). The cutting power, the

air cutting power and the idle power are substantially constant, theturning-on/off power is not constant (Li et al., 2017). It is unreasonableto set the turning-on/off power and multiply the turning-on/off powerby the time to calculate the turning-on/off energy consumption. Re-ferring to Wu and Sun (2018), the values of cutting power, air cuttingpower, idle power and turning-on/off energy consumption are listed inTable 5.

5.1.3. Parameters settingThe Parameters for the MOHPIOSA algorithm are set as Table 6. In

order to explore the sufficient solution space and meanwhile to avoidtoo long running time, the values of S and iteration are set to 50 and 50

respectively. According to Eq. (23), it can be concluded:

= ×t teN

0 (32)

where te is the terminal temperature.Hence, the relationship betweenN , t0, te, and is as shown in Eq.

(33). The initial temperature is set as 1000, the same as that in Li andDuan (2014). In order to balance the probability of performing the mapand compass operator and the landmark operator, the terminal tem-perature is set as 0.001. Since there is no iterative search operation inthe map and compass operator, is set as 0.99 for the purpose of ex-ploration. According to Eq. (33), N =1374.

=N t t[ln( / )/ln( )]e 0 (33)

5.1.4. The aimIn order to test the performance of the MOHPIOSA algorithm,

analyze the performance of the proposed energy-saving schedulingheuristic considering deterioration effect, the effect of the deteriorationeffect and different deterioration rates on the practical production andthe effectiveness of the scheduling algorithm considering the dete-rioration effect, four numerical experiments are carried out:

(1) performance analysis of the MOHPIOSA algorithm;(2) performance analysis of the energy-saving scheduling heuristic

considering deterioration effect;(3) analysis of the deterioration effect;(4) analysis of the influence of the deterioration rate.

5.2. The results

5.2.1. Performance analysis of MOHPIOSAIn order to evaluate the performance of the MOHPIOSA algorithm,

the non-dominated sorted genetic algorithm (NSGA-II) is used to solvethe problem and compared with the MOHPIOSA algorithm. The stepsand parameter settings of NSGA-II algorithm are described in Wu andSun (2018).

We run the MOHPIOSA and NSGA-II respectively to solve theBrandimarte (1993) instances. The results are reported in Table 7,which include the Pareto numbers, min(Cmax), min E( ) and the superiorvalues in the solutions obtained by MOHPIOSA and NSGA-II are in-dicated in bold. It is obvious that the proposed MOHPIOSA outperformsthe NSGA-II for most of instances. For all instances, the MOHPIOSAalgorithm minimized the objective of makespan. For most of instancesexcept MK08 instance and MK09 instance, the MOHPIOSA algorithmminimized the objective of energy consumption. The comparison forthe objectives of makespan and energy consumption is shown in Fig. 17.It can be seen that the results obtained by the MOHPIOSA are betterthan those obtained by the NSGA-II except the MK09 instance. Hence, itcan be concluded that the MOHPIOSA has better performance.

5.2.2. Performance analysis of energy-saving scheduling heuristicconsidering deterioration effect

In order to identify the rationality of the energy-saving schedulingalgorithm considering deterioration effect, the time-based schedulingalgorithm considering deterioration effect and the energy-based

Table 5The power for each machine in the different states.

Machine Cutting power(W) (Wu &Sun, 2018)

Air cuttingpower (W)

Turning-on/off energyconsumption (W·min)(Wu & Sun, 2018)

Idlepower(W)

1 2270 370 2600 2002 1820 350 2530 2203 1880 350 2560 2504 2340 390 2740 3005 2220 380 2640 2506 2260 370 2600 2707 2160 400 2570 2208 1690 350 2550 2009 2510 400 2860 30010 2510 380 2840 28011 2440 390 2800 22012 1920 320 2630 21013 2290 390 2860 28014 1960 400 2760 29015 2970 400 3050 300

Table 6Parameters setting.

Parameter value

S 50N 1374t0 1000te 0.001

0.99iteration 50

X. Wu, et al. Computers & Industrial Engineering 135 (2019) 1004–1024

1018

Page 16: The flexible job-shop scheduling problem considering …hbduan.buaa.edu.cn/papers/CIE_Wu_2019.pdf · 2020. 7. 3. · energy consumption, the idle energy consumption. Hence the total

scheduling algorithm considering deterioration effect are designed tocompare with the energy-saving scheduling algorithm considering de-terioration effect. The results with the three decoding methods forMK01 instance from Brandimarte (1993) are listed in Table 8 and the

Pareto sets are shown in Fig. 18. As shown in Table 8 and Fig. 18, thePareto solutions with the time-based scheduling algorithm and theenergy-based scheduling algorithm are not better than that with theenergy-saving scheduling algorithm. The Pareto solutions obtained by

Table 7Comparison of the results with MOHPIOSA and NSGA-II.

Instance Pareto numbers min(Cmax) min(E)

MOHPIOSA NSGA-II MOHPIOSA NSGA-II MOHPIOSA NSGA-II

MK01 4 4 55.98 55.98 4.69 4.74MK02 14 15 35.41 36.80 4.17 4.18MK03 1 1 300.78 300.78 33.65 34.09MK04 6 8 91.09 95.09 9.72 9.78MK05 4 3 362.28 373.67 25.36 25.66MK06 3 4 115.99 124.33 16.41 16.46MK07 8 3 248.30 255.84 21.68 22.14MK08 5 10 1501.26 1529.06 123.90 122.82MK09 8 5 726.57 737.82 99.84 99.29MK10 7 10 439.52 463.25 75.24 75.49

Fig. 17. The comparison of MOHPIOSA and NSGA-II.

X. Wu, et al. Computers & Industrial Engineering 135 (2019) 1004–1024

1019

Page 17: The flexible job-shop scheduling problem considering …hbduan.buaa.edu.cn/papers/CIE_Wu_2019.pdf · 2020. 7. 3. · energy consumption, the idle energy consumption. Hence the total

the energy-saving scheduling algorithm dominate most of the Paretosolutions obtained by the time-based scheduling algorithm. Althoughsome Pareto solutions obtained by the energy-saving scheduling algo-rithm and the energy-based scheduling algorithm are mutually domi-nant, the values of makespan objective for the Pareto solutions obtainedby the energy-based scheduling algorithm are distributed between 60and 80, whereas those obtained by the energy-saving scheduling algo-rithm are distributed between 45 and 60. That is, the energy-basedscheduling algorithm does save energy, whereas too long makespandoes not meet the expectation of operation managers.

5.2.3. Analysis of deterioration effectIn order to verify the effect of the deterioration effect on the prac-

tical production and the effectiveness of the scheduling algorithmconsidering the deterioration effect, taking the Kacem et al. (2002)instances and Fattahi et al. (2007) instances as test instances, severalexperiments were carried out. The ideal scheduling result without thedeterioration effect (indicated by a), the practical execution result ofthe ideal scheduling with the deterioration effect (indicated by b), thescheduling result of the scheduling algorithm considering the dete-rioration effect (indicated by c), the deterioration degree of the prac-tical execution result of the ideal scheduling with the deterioration

Fig. 17. (continued)

Table 8The results with the three decoding methods for MK01 instance.

Decoding methods Pareto number Pareto solutions

Time-based scheduling algorithm 14 (45.89,4.77),(48.29,4.62),(48.37,4.61),(50.07,4.60),(50.40,4.57),(58.30,4.52),(53.29,4.53),(51.36,4.55),(46.34,4.68),(47.41,4.65),(45.94,4.69),(53.58,4.52),(55.79,4.52),(47.11,4.66)

Energy-based scheduling algorithm 10 (62.27,4.51),(79.44,4.43),(78.99,4.44),(69.60,4.47),(71.56,4.46),(70.25,4.47),(79.58,4.42),(77.59,4.44),(68.39,4.48),(75.82,4.45)

Energy-saving scheduling algorithm 11 (46.06,4.69),(45.91,4.79),(52.68,4.49),(48.78,4.55),(49.53,4.53),(55.79,4.48),(46.12,4.65),(50.46,4.51),(46.09,4.65),(47.23,4.57),(51.20,4.49)

Fig. 18. The Pareto sets with the three decoding methods for MK01 instance.

X. Wu, et al. Computers & Industrial Engineering 135 (2019) 1004–1024

1020

Page 18: The flexible job-shop scheduling problem considering …hbduan.buaa.edu.cn/papers/CIE_Wu_2019.pdf · 2020. 7. 3. · energy consumption, the idle energy consumption. Hence the total

effect (indicated by d), the deterioration degree of the scheduling resultof the scheduling algorithm considering the deterioration effect (in-dicated by e) and the optimized rate of the deterioration degree (de-noted as f) are listed in Table 9. As shown in Table 9, under the in-fluence of the deterioration effect, the makespan of ideal optimalsolutions is prolonged and the ideal optimal solutions may no longer bethe optimal solutions in the practical production. The scheduling al-gorithm considering the deterioration effect can reduce the effect of thedeterioration effect effectively. Figs. 19–21 show the Gantt chart forKacem2 instance from Kacem et al. (2002). Fig. 19 is an ideal Ganttchart. Fig. 20 is a practical Gantt chart. Fig. 21 is a Gantt chart obtainedby the scheduling algorithm considering the deterioration effect.Comparing Fig. 19 with Fig. 20, it can be seen that in the practicalproduction, not only the processing time of the job will be prolonged,but also the idle time on the machine will increase under the influenceof the deterioration effect. For example, an idle time slot is generatedbetween the operationO21 and the operationO84, the idle time increasesbetween the operation O42 and the operation O23, which delay the ma-kespan. Comparing Fig. 20 with Fig. 21, it can be seen that the decodingalgorithm considering the deterioration effect advances the start

Table 9Comparison results of the deterioration effect.

Instance n*m the optimal a b c d e f

Kacem1 4*6 11.00 11.00 11.37 11.37 0.03 0.03 0.00Kacem2 8*8 14.00 14.00 17.56 16.63 0.25 0.19 0.26Kacem3 10*7 11.00 11.00 12.75 11.19 0.16 0.02 0.89Kacem4 10*10 7.00 7.00 7.74 7.11 0.11 0.02 0.86Kacem5 15*10 11.00 11.00 14.76 12.32 0.34 0.12 0.65SFJS01 2*2 66.00 66.00 70.50 70.50 0.07 0.07 0.00SFJS02 2*2 107.00 107.00 111.30 111.30 0.04 0.04 0.00SFJS03 3*2 221.00 221.00 232.53 232.53 0.05 0.05 0.00SFJS04 3*2 355.00 355.00 395.55 372.05 0.11 0.05 0.58SFJS05 3*2 119.00 119.00 126.81 126.81 0.07 0.07 0.00SFJS06 3*3 320.00 320.00 331.65 330.51 0.04 0.03 0.10SFJS07 3*5 397.00 397.00 411.19 411.19 0.04 0.04 0.00SFJS08 3*4 253.00 253.00 267.27 265.15 0.06 0.05 0.15SFJS09 3*3 210.00 210.00 222.59 218.10 0.06 0.04 0.36SFJS10 4*5 516.00 516.00 572.66 572.66 0.11 0.11 0.00MFJS01 5*6 468.00 468.00 502.00 502.00 0.07 0.07 0.00MFJS02 5*7 446.00 446.00 500.10 483.33 0.12 0.08 0.31MFJS03 6*7 466.00 466.00 511.67 502.00 0.10 0.08 0.21MFJS04 7*7 554.00 554.00 610.93 601.15 0.10 0.09 0.17MFJS05 7*7 514.00 514.00 554.80 554.80 0.08 0.08 0.00MFJS06 8*7 634.00 634.00 708.30 680.31 0.12 0.07 0.38MFJS07 8*7 879.00 879.00 1012.70 959.08 0.15 0.09 0.40MFJS08 9*8 884.00 884.00 1099.40 981.08 0.24 0.11 0.55MFJS09 11*8 1055.00 1055.00 1356.40 1200.30 0.29 0.14 0.52MFJS10 12*8 1196.00 1196.00 1425.20 1375.30 0.19 0.15 0.22

Fig. 19. Ideal Gantt chart for Kacem2 instance.

Fig. 20. Actual Gantt chart for Kacem2 instance.

Fig. 21. Gantt chart for Kacem2 instance considering the deterioration effect.

X. Wu, et al. Computers & Industrial Engineering 135 (2019) 1004–1024

1021

Page 19: The flexible job-shop scheduling problem considering …hbduan.buaa.edu.cn/papers/CIE_Wu_2019.pdf · 2020. 7. 3. · energy consumption, the idle energy consumption. Hence the total

processing time of the operation O22 of job 2 (the key job), hence themakespan is advanced.

To verify whether the above analyses are accurate, the WilcoxonSigned Rank Test was carried out, and which applies to paired com-parisons in the t-test. The significance level equals 0.05. OriginalhypothesisH0: there is no significant difference between the two sets ofdata; Choice hypothesisH1: there are significant differences between thetwo sets of data. Two comparison experiments were analyzed accordingto the sample data of fourth column, fifth column and sixth column inTable 9 and the test results are listed in Table 10. In Table 10, a vs brepresents the comparative analysis of the sample data of the fourthcolumn and fifth column in Table 9; b vs c represents the comparativeanalysis of the sample data of the fifth column and sixth column inTable 9. As shown in Table 10, h valuea vs b=1 means that there aresignificant differences between a and b, that is, in the practical pro-duction, the makespan of jobs will deteriorate under the influence ofthe deterioration effect; h valueb vs c=1 means that there are sig-nificant differences between b and c, that is, the algorithm consideringthe deterioration effect in decoding can reduce the effect of the dete-rioration effect effectively.

5.2.4. Analysis of the influence of the deterioration rateIn the practical production, the different materials of the tool and

the processing complexity of the operation have different impacts onthe wear of the tool, so that the actual processing time of the operationwill be prolonged to varying degrees. Hence, we studied the effects ofdifferent deterioration rates on the practical production and the effec-tiveness of scheduling algorithm considering the deterioration effect.

The deterioration rate of machine k was randomly generated usingany of the three uniform distributions U[0.005, 0.150], U[0.150,

0.250], and U[0.250, 0.400]. Taking the Kacem et al. (2002) instancesand Fattahi et al. (2007) instances as test instances, six sets of experi-ments were carried out. The ideal scheduling result without the dete-rioration effect, the practical execution result of the ideal schedulingand the scheduling result of the scheduling algorithm considering thedeterioration effect were recorded, as shown in Table 11. In order toobserve the experiment results more intuitively, the results in Table 11were presented in Figs. 22 and 23. The horizontal comparisons showthat as the scale of the instances increase, the deterioration is generallyshowing an increasingly serious trend; the vertical comparisons showthat the greater the deterioration rate, the more obvious the dete-rioration effect in the practical production, and the more obvious theoptimization effect of the scheduling algorithm considering the dete-rioration effect.

In order to verify the effectiveness of the scheduling algorithmconsidering the deteriorating effect, the Wilcoxon Signed Rank Test wasperformed on the sample data at three different deterioration rates fromTable 11. The test results are listed in Table 12. h valueb vs c1 1,h valueb vs c2 2 and h valueb vs c3 3 are all equal to 1, that is, there aresignificant differences between the practical execution result of theideal scheduling and the scheduling result of the decoding algorithm

Table 10The result of Wilcoxon Signed Rank Test ( = 0.05).

Wilcoxon Signed Rank Test p-value h-value

a vs b ×1.23 10 5 1b vs c ×4.38 10 4 1

Table 11Comparison of scheduling results under different deterioration rates.

Instance n*m a bk [0.005,0.150] bk [0.150,0.250] bk [0.250,0.400]

b1 c1 b2 c2 b3 c3

Kacem1 4*6 11.00 11.37 11.37 15.27 13.87 21.29 19.83Kacem2 8*8 14.00 17.56 16.63 18.44 18.15 24.78 21.83Kacem3 10*7 11.00 12.75 11.19 15.07 13.26 22.16 16.55Kacem4 10*10 7.00 7.74 7.11 9.76 8.44 13.18 9.79Kacem5 15*10 11.00 14.76 12.32 18.60 15.52 30.59 18.70SFJS01 2*2 66.00 70.50 70.50 72.81 72.81 80.39 80.39SFJS02 2*2 107.00 111.30 111.30 114.39 114.39 115.09 115.09SFJS03 3*2 221.00 232.53 232.53 245.97 245.97 272.95 272.95SFJS04 3*2 355.00 395.55 372.05 412.21 402.71 483.91 448.97SFJS05 3*2 119.00 126.81 126.81 142.46 132.32 165.35 136.60SFJS06 3*3 320.00 331.65 330.51 415.64 375.30 508.09 409.82SFJS07 3*5 397.00 411.19 411.19 463.18 462.68 483.71 483.71SFJS08 3*4 253.00 267.27 265.15 289.56 289.56 321.34 321.34SFJS09 3*3 210.00 222.59 218.10 256.67 244.93 289.03 265.20SFJS10 4*5 516.00 572.66 572.66 618.95 618.50 693.52 693.52MFJS01 5*6 468.00 502.00 502.00 578.43 566.52 718.44 673.99MFJS02 5*7 446.00 500.10 483.33 610.39 555.90 715.77 616.79MFJS03 6*7 466.00 511.67 502.00 621.08 586.02 723.62 643.07MFJS04 7*7 554.00 610.93 601.15 737.35 717.66 907.58 823.12MFJS05 7*7 514.00 554.80 554.80 640.85 635.75 732.37 732.37MFJS06 8*7 634.00 708.30 680.31 897.91 817.07 976.42 938.98MFJS07 8*7 879.00 1012.70 959.08 1404.91 1265.00 1693.41 1483.29MFJS08 9*8 884.00 1099.40 981.08 1446.79 1384.35 1720.03 1456.50MFJS09 11*8 1055.00 1356.40 1200.30 1773.61 1638.52 2336.71 2092.60MFJS10 12*8 1196.00 1425.20 1375.30 2197.69 1917.17 3210.70 2516.07

Fig. 22. Comparison of scheduling results under different deterioration ratesfor Kacem instances.

X. Wu, et al. Computers & Industrial Engineering 135 (2019) 1004–1024

1022

Page 20: The flexible job-shop scheduling problem considering …hbduan.buaa.edu.cn/papers/CIE_Wu_2019.pdf · 2020. 7. 3. · energy consumption, the idle energy consumption. Hence the total

considering the deterioration effect. Hence, the scheduling algorithmconsidering the deterioration effect has significant optimization effectunder different deterioration rates.

5.3. Discussion

In summary, the MOHPIOSA algorithm can effectively solve theFJSP-DEEC; the proposed energy-saving scheduling heuristic can ef-fectively save energy without delaying the makespan; the greater thedeterioration rate, the more obvious the deterioration effect in thepractical production and the more obvious the optimization effect ofthe scheduling algorithm considering the deterioration effect.

In term of the MOHPIOSA algorithm, the MOHPIOSA algorithmincludes two operators, the map and compass operator and the land-mark operator. It combines the global search and the local search byusing the map and compass operator to perform exploration and thelandmark operator to perform exploitation. The designed probability Pcan balance the map and compass operator and the landmark operatorwell, that is, balance the global search and local search. The Metropolisrule in SA allows the algorithm to accept the bad solution with a certainprobability changing with the iteration, which promotes the algorithmto escape from the local optimum.

In term of the energy-saving scheduling heuristic, two rules aredeveloped based on the ITF rule. When there are available idle timeslots, the machine is preferred in which the energy consumption in-crement is the smallest; when there is no available idle time slot, themachine is preferred in which the completion time is the earliest. Therules aim to choose machine which consumes less energy to save energywithout deteriorating the efficiency.

Under the influence of the deterioration effect, not only the pro-cessing time of the job will be prolonged, but also the idle time on themachine will increase. Moreover, the more obvious the deteriorationeffect, the greater the difference between the actual scheduling result

and the ideal scheduling result. Hence, there is more space optimizedby the scheduling algorithm considering the deterioration effect.

6. Conclusions

The aim of this paper is to solve the flexible job-shop scheduling pro-blem considering deterioration effect and energy consumption simulta-neously. We developed a multi-objective hybrid pigeon-inspired optimi-zation and simulated annealing algorithm to solve the proposed problem.The numerical experiments were carried out to verify the effectiveness ofthe multi-objective hybrid pigeon-inspired optimization and simulatedannealing algorithm for the proposed problem, to analyze the performanceof the proposed energy-saving scheduling heuristic considering deteriora-tion effect and to analyze the influence of the deterioration effect in thepractical production. The main conclusions are as follows.

(1) The flexible job-shop scheduling problem considering the dete-rioration effect and energy consumption simultaneously is studiedfor the first time.

(2) The basic pigeon-inspired optimization algorithm is improved and amulti-objective hybrid pigeon-inspired optimization and simulatedannealing algorithm is developed to solve the combinational opti-mization problem, which expands the application of the pigeon-inspired optimization algorithm;

(3) An energy-saving scheduling heuristic considering the deterioratingeffect is designed. The deterioration effect is considered in the op-timization model, which reduces the impact of the deteriorationeffect on the practical production.

As far as we know, this is the first study on the flexible job-shopscheduling problem considering deterioration effect and energy con-sumption simultaneously. However, there are some limitations in ourstudy. Firstly, the deterioration effect model is a simplified model basedon the practical production activities, and there are still some gaps withreality. Secondly, only the energy consumed by the processing machineis considered in the energy consumption model. The energy consumedby transportation equipment and other auxiliary equipment is notconsidered. Finally, the interference events that may occur in the pro-duction, such as job reworked and machine failure, are not considered.In the future research, the deterioration effect model should be im-proved; the energy consumption should be considered fully; the dy-namic events that may occur in the production should be considered.

Fig. 23. Comparison of scheduling results under different deterioration rates for Fattahi instances.

Table 12Rank-sum test result ( = 0.05) under different deterioration rates.

Wilcoxon Signed Rank Test p value h value

b vs c1 1 ×4.38 10 4 1b vs c2 2 ×5.96 10 5 1b vs c3 3 ×1.96 10 4 1

X. Wu, et al. Computers & Industrial Engineering 135 (2019) 1004–1024

1023

Page 21: The flexible job-shop scheduling problem considering …hbduan.buaa.edu.cn/papers/CIE_Wu_2019.pdf · 2020. 7. 3. · energy consumption, the idle energy consumption. Hence the total

Acknowledgements

This work was supported by the National Natural ScienceFoundation of China (Grant No. 51305024).

Declaration of Competing Interest

None.

References

Brandimarte, P. (1993). Routing and scheduling in a flexible job shop by tabu search.Annals of Operations Research, 41(3), 157–183.

Browne, S., & Yechiali, U. (1990). Scheduling deteriorating jobs on a single processor.Operations Research, 38, 495–498.

Cheng, T. C. E., Ding, Q., & Lin, B. M. T. (2004). A concise survey of scheduling with time-dependent processing times. European Journal of Operational Research, 152(1), 1–13.

Cheng, W. M., Guo, P., Zhang, Z. Q., Zeng, M., & Liang, J. (2012). Variable neighborhoodsearch for parallel machine scheduling problem with step deteriorating jobs.Mathematical Problems in Engineering. https://doi.org/10.1155/2012/928312.

Chung, B. D., & Kim, B. S. (2016). A hybrid genetic algorithm with two-stage dispatchingheuristic for a machine scheduling problem with step-deteriorating jobs and rate-modifying activities. Computers & Industrial Engineering, 98, 113–124.

Dai, M. (2015). Research on energy-efficient process planning and scheduling. Doctor ofPhilosophy. Nanjing University of Aeronautics and Astronautics.

Duan, H. B., & Qiao, P. X. (2014). Pigeon-inspired optimization: A new swarm intelligenceoptimizer for air robot path planning. International Journal of Intelligent Computing &Cybernetics, 7(1), 24–37.

Duan, H. B., & Ye, F. (2017). Progresses in pigeon-inspired optimization algorithms.Journal of Beijing University of Technology, 43(1), 1–7 in Chinese.

Fattahi, P., Mehrabad, M. S., & Jolai, F. (2007). Mathematical modeling and heuristicapproaches to flexible job shop scheduling problems. Journal of IntelligentManufacturing, 18(3), 331–342.

Fu, Y. P., Ding, J. L., Wang, H. F., & Wang, J. W. (2018). Two-objective stochastic flow-shop scheduling with deteriorating and learning effect in Industry 4.0-based manu-facturing system. Applied Soft Computing, 68, 847–855.

Gawiejnowicz, S., & Kononov, A. (2010). Complexity and approximability of schedulingresumable proportionally deteriorating jobs. European Journal of OperationalResearch, 200, 305–308.

Gupta, J. N. D., & Gupta, S. K. (1988). Single facility scheduling with nonlinear processingtimes. Computers & Industrial Engineering, 14(4), 387–393.

Guo, R. (2017). Research on optimization algorithm of pigeon and its application. Doctor ofPhilosophy. GuangXi University for Nationalities.

He, Y. (2007). Study on the optimal scheduling method of machining tasks for green manu-facturing. Doctor of Philosophy. Chongqing University.

Ji, M., Hsu, C. J., & Yang, D. L. (2013). Single-machine scheduling with deteriorating jobsand aging effects under an optional maintenance activity consideration. Journal ofCombinatorial Optimization, 26(3), 437–447.

Kacem, I., Hammadi, S., & Borne, P. (2002). Approach by localization and multiobjectiveevolutionary optimization for flexible job-shop scheduling problems. IEEETransactions on Systems Man and Cybernetics Part C-Applications and Reviews, 32(1),1–13.

Kubiak, W., & Velde, S. V. D. (1998). Scheduling deteriorating jobs to minimize make-span. Naval Research Logistics, 45(5), 511–523.

Li, C., & Duan, H. B. (2014). Target detection approach for uavs via improved pigeon-inspired optimization and edge potential function. Aerospace Science & Technology,39, 352–360.

Li, C. B., Li, L. L., Tang, Y., Zhu, Y. T., & Li, L. (2019). A Comprehensive approach toparameters optimization of energy-aware CNC Milling. Journal of IntelligentManufacturing, 30(1), 123–138.

Li, J. Q., Bai, S. C., Duan, P. Y., Sang, H. Y., Han, Y. Y., & Zheng, Z. X. (2019). Animproved artificial bee colony algorithm for addressing distributed flow shop withdistance coefficient in a prefabricated system. International Journal of ProductionResearch. https://doi.org/10.1080/00207543.2019.1571687.

Li, J. Q., Pan, Q. K., & Tasgetiren, M. F. (2014). A discrete artificial bee colony algorithmfor the multi-objective flexible job-shop scheduling problem with maintenance ac-tivities. Applied Mathematical Modelling, 38(3), 1111–1132.

Li, L. L., Li, C. B., Tang, Y., & Li, L. (2017). An integrated approach of process planningand cutting parameter optimization for energy-aware CNC machining. Journal ofCleaner Production, 162, 458–473.

Li, S. S., Ng, C. T., Cheng, T. C. E., & Yuan, J. J. (2011). Parallel-batch scheduling ofdeteriorating jobs with release dates to minimize the makespan. European Journal ofOperational Research, 210(3), 482–488.

Li, X. Y., & Gao, L. (2016). An effective hybrid genetic algorithm and tabu search forflexible job shop scheduling problem. International Journal of Production Economics,174, 93–110.

Mosheiov, G. (2002). Complexity analysis of job-shop scheduling with deteriorating jobs.Discrete Applied Mathematics, 117, 195–209.

Ouazene, Y., & Yalaoui, F. (2017). Identical parallel machine scheduling with time-de-pendent processing times. Theoretical Computer Science, 721, 70–77.

Rustogi, K., & Strusevich, V. A. (2012). Single machine scheduling with general positionaldeterioration and rate-modifying maintenance. Omega, 40(6), 791–804.

Rustogi, K., & Strusevich, V. A. (2015). Single machine scheduling with time-dependentlinear deterioration and rate-modifying maintenance. Journal of the OperationalResearch Society, 66(3), 500–515.

Sundararaghavan, P. S., & Kunnathur, A. S. (1994). Single machine scheduling with starttime dependent processing times: Some solvable cases. European Journal ofOperational Research, 78(3), 394–403.

Toksarı, M. D. (2011). A branch and bound algorithm for minimizing makespan on asingle machine with unequal release times under learning effect and deterioratingjobs. Computers & Operations Research, 38, 1361–1365.

Wang, L., Wang, S. Y., Xu, Y., Zhou, G., & Liu, M. (2012). A bi-population based esti-mation of distribution algorithm for the flexible job-shop scheduling problem.Computers & Industrial Engineering, 62(4), 917–926.

Wang, T., Baldacci, R., Lim, A., & Hu, Q. (2018). A branch-and-price algorithm forscheduling of deteriorating jobs and flexible periodic maintenance on a single ma-chine. European Journal of Operational Research, 271, 826–838.

Wang, X. P., Tan, W., Zhao, P. F., Leng, W. J., & Shi, J. W. (2013). Application of highefficiency machining technology of ceramic blade in aviation disk parts. China NewTechnologies and Products, 6, 34–35 in Chinese.

Wu, C. C., Shiau, Y. R., Lee, L. H., & Lee, W. C. (2009). Scheduling deteriorating jobs tominimize the makespan on a single machine. International Journal of AdvancedManufacturing Technology, 44(11–12), 1230–1236.

Wu, X. L., & Sun, Y. J. (2018). A green scheduling algorithm for flexible job shop withenergy-saving measures. Journal of Cleaner Production, 172, 3249–3264.

Wu, X. L., & Wu, S. M. (2017). An elitist quantum-inspired evolutionary algorithm for theflexible job-shop scheduling problem. Journal of Intelligent Manufacturing, 28(6),1441–1457.

Xiao, Q. G., Li, C. B., Tang, Y., Li, L. L., & Li, L. (2019). A knowledge-driven method ofadaptively optimizing process parameters for energy efficient turning. Energy, 166,142–156.

Yang, S. J., & Yang, D. L. (2010a). Minimizing the makespan on single-machine sche-duling with aging effect and variable maintenance activities. Omega, 38(6), 528–533.

Yang, S. J., & Yang, D. L. (2010b). Single-machine group scheduling problems under theeffects of deterioration and learning. Computers & Industrial Engineering, 58, 754–758.

Yi, J. H., Xing, L. N., Wang, G. G., Dong, J. Y., Vasilakos, A. V., Alavi, A. H., & Wang, L.(2019). Behavior of crossover operators in NSGA-III for large-scale optimizationproblems. Information Sciences. https://doi.org/10.1016/j.ins.2018.10.005.

Yu, S. (2015). An optimal single-machine scheduling with linear deterioration rate andrate-modifying activities. Journal of Combinatorial Optimization, 30, 242–252.

Zhao, C. L., & Tang, H. Y. (2010). Single machine scheduling with general job-dependentaging effect and maintenance activities to minimise makespan. Applied MathematicalModelling, 34, 837–841.

X. Wu, et al. Computers & Industrial Engineering 135 (2019) 1004–1024

1024