You are on page 1of 28

International Journal of Production Research

ISSN: 0020-7543 (Print) 1366-588X (Online) Journal homepage: http://www.tandfonline.com/loi/tprs20

Mathematical modelling and optimisation of


energy-conscious hybrid flow shop scheduling
problem with unrelated parallel machines

Leilei Meng, Chaoyong Zhang, Xinyu Shao, Yaping Ren & Caile Ren

To cite this article: Leilei Meng, Chaoyong Zhang, Xinyu Shao, Yaping Ren & Caile Ren (2018):
Mathematical modelling and optimisation of energy-conscious hybrid flow shop scheduling
problem with unrelated parallel machines, International Journal of Production Research, DOI:
10.1080/00207543.2018.1501166

To link to this article: https://doi.org/10.1080/00207543.2018.1501166

Published online: 23 Jul 2018.

Submit your article to this journal

View Crossmark data

Full Terms & Conditions of access and use can be found at


http://www.tandfonline.com/action/journalInformation?journalCode=tprs20
International Journal of Production Research, 2018
https://doi.org/10.1080/00207543.2018.1501166

Mathematical modelling and optimisation of energy-conscious hybrid flow shop scheduling


problem with unrelated parallel machines
Leilei Meng, Chaoyong Zhang*, Xinyu Shao, Yaping Ren and Caile Ren

The State Key Laboratory of Digital Manufacturing Equipment & Technology, Huazhong University of Science & Technology, Wuhan,
People’s Republic of China
(Received 6 December 2017; accepted 9 July 2018)

This paper investigates an energy-conscious hybrid flow shop scheduling problem with unrelated parallel machines (HFSP-
UPM) with the energy-saving strategy of turning off and on. We first analyse the energy consumption of HFSP-UPM and
formulate five mixed integer linear programming (MILP) models based on two different modelling ideas namely idle time
and idle energy. All the models are compared both in size and computational complexities. The results show that MILP
models based on different modelling ideas vary dramatically in both size and computational complexities. HFSP-UPM is
NP-Hard, thus, an improved genetic algorithm (IGA) is proposed. Specifically, a new energy-conscious decoding method
is designed in IGA. To evaluate the proposed IGA, comparative experiments of different-sized instances are conducted.
The results demonstrate that the IGA is more effective than the genetic algorithm (GA), simulating annealing algorithm
(SA) and migrating birds optimisation algorithm (MBO). Compared with the best MILP model, the IGA can get the
solution that is close to an optimal solution with the gap of no more than 2.17% for small-scale instances. For large-scale
instances, the IGA can get a better solution than the best MILP model within no more than 10% of the running time of
the best MILP model.
Keywords: hybrid flow shop scheduling; unrelated parallel machine; mixed integer linear programming; energy-conscious;
genetic algorithm

1. Introduction
Being the backbone of the country, manufacturing leads to high-energy consumption and pollution. Statistics show that
global manufacturing energy consumption accounts for 31% of the total energy consumption and is responsible for 36%
of global CO2 emissions (Gielen et al. 2007). With social and scientific development, problems related to energy consump-
tion, energy cost and environmental pollution are aggravated. Increasing attention has been paid to energy conservation and
environmental protection, with relevant laws and regulations established to shape the manufacturing industry into an energy-
conservative and environment-friendly one (Meng et al. 2016).
Electricity consumption of manufacturing shops accounts for a large proportion of the whole energy consumption of
manufacturing industries. As a manufacturing power, China possesses over 700 million machine tools (Liu, Wang, and
Liu 2013). The energy consumption of these machine tools is high. However, in the actual machining process, the
machine tool stays in idle state for most of the time. Statistics show that machine tool consumes about 80% of the
energy in the idle state (Mouzon, Yildirim, and Twomey 2007). Dahmus and Gutowski (2004) pointed out that the
energy consumed by metal cutting accounted for only 14.8% of the total energy consumed by a modern automatic
machine tool. The energy consumption when the machine is idle (idle energy consumption) is a waste of energy. Therefore,
the energy consumption of machine tool is attracting growing attention due to its high-energy waste.
Up to now, many researchers have tried to reduce the energy consumption of machine tools and propose effective energy-
saving strategies. In summary, their strategies can be divided into two categories: (1) energy-saving design and (2) energy-
efficient management. In the category of energy-saving design, a variety of energy-saving technologies can be used to reduce
the energy consumption of the machine’s own components. For example, the weight of the parts of the machine tool can be
reduced by lightweight design, which will reduce the kinetic energy loss of the parts (Neugebauer et al. 2011).The good
match of the rated power of the motor and the power needed in actual machining processes can reduce the additional
energy loss of the motor (Liu, Wang, and Liu 2013). Besides, using energy-efficient converters can also help reduce the
energy consumption of the machine tools (Liu, Liu, and Liu 2016).

*Corresponding author. Email: zcyhust@hust.edu.cn

© 2018 Informa UK Limited, trading as Taylor & Francis Group


2 L. Meng et al.
In terms of energy-efficient management, energy reduction can be achieved with the optimisation of cutting parameters
(Cus and Balic 2003; Mukherjee and Ray 2006; Yildiz 2012, 2013; Yusup, Zain, and Hashim 2012; Li et al. 2016; Chávez-
García and Castillo-Villar 2018), process planning (Zhang and Ge 2015; Dai et al. 2016), scheduling (Bruzzone et al. 2012;
Dai et al. 2013), the optimisation of the workshop layout (Xiao, Cheng, and Zhou 2011), the integration of process planning
and scheduling (Dai et al. 2014; Zhang et al. 2016), the integrated optimisation of cutting parameters and scheduling (Lin
et al. 2015), the integrated optimisation of cutting parameters and process planning (Li et al. 2017), and the integrated optim-
isation of workshop layout and scheduling (Liu and Zhao 2017).
All the above strategies can help reduce the energy consumption of the machine tools. However, in practical production
process, the process route and cutting parameters are given according to the requested workpiece quality, the machine capa-
bility, and the layout of the workshop, which cannot be changed. However, by scheduling, we can reasonably arrange the job
sequence and machine selection to reduce the idle time of the machine tools so as to reduce the energy consumption of the
workshop without changing the given process parameters, process routes and the workshop layout. As we can see from lit-
eratures (Dahmus and Gutowski 2004; Mouzon, Yildirim, and Twomey 2007; Li, Yan, and Xing 2013; Liu, Zhang, and Lu
2015), the energy efficiency of machine tools is very low and no more than 20%. Therefore, it is practical to reduce energy
consumption by scheduling.
HFSP is very close to the real production systems such as semiconductor, paper, textile, and chemical. The classic HFSP
can be classified into three groups on the basis of the types of parallel machines: the HFSP with identical parallel machines
(HFSP-IPM), the HFSP with uniform machines (HFSP-UM) and the HFSP with unrelated parallel machines (HFSP-UPM)
(Wang, Ling et al. 2013). For HFSP-IPM, parallel machines at a stage are of the same speed; therefore, the processing time
for each job on any parallel machines is the same; for HFSP-UM, parallel machines at a stage are of different speeds and the
processing time for each job on a machine is inversely proportional to the speed of this machine; for HFSP-UPM, the speed
of different parallel machines depends on the specific job, and the processing time for each job on any two parallel machines
at the same stage is independent. Among the three groups, HFSP-UPM is the most complex and considered in this paper.
The rest of the paper is organised as follows. A literature review is presented in Section 2. In Section 3, the definition
of HFSP-UPM and the energy consumption of the workshop are described. In Section 4, five MILP models based on the
modelling ideas of idle time variable and idle energy variable are proposed. In Section 5, an improved genetic algorithm
(IGA) with a novel energy-conscious decoding method is proposed. In Section 6, the proposed MILP models and the
IGA are evaluated. Some conclusions are given in Section 7. Finally, we end the paper with related topics for future
research in Section 8.

2. Literature review
Early studies on HFSP- UPM mainly focused on time-based performances, i.e. minimising the makespan (Li, Pan, and Wang
2014; Pan et al. 2014), and minimising the total flowtime (Pan and Dong 2014), with little attention being paid to the per-
formance of energy consumption. But with energy price hike and strengthened government legislations for sustainability and
environmental protection, more and more researchers are turning to the energy consumption of HFSP-UPM. Dai et al. (2013)
explored the energy-efficient HFSP-UPM problem and turning On and Off strategy was considered to save idle energy. Li
et al. (2018) studied the energy consumption of HFSP-UPM with setup times considered. Bruzzone et al. (2012) presented a
mathematical model for the integration of scheduling with advanced planning and scheduling (APS), and the model modifies
the scheduling times of the jobs that are generated by an APS system to reduce the workshop power peak without changing
the jobs’ assignment and sequencing.
If the idle time of the machine tool is relatively long, the machine tool can be switched off for some time and subsequently
turned On to reduce energy consumption. The turning On and Off strategy was first proposed by Mouzon et al. (2007) for
single-machine scheduling problem and had been proven highly effective in saving idle energy when a machine tool was
idling for a long time. Subsequently, the turning On and Off strategy has been gradually applied to single-machine scheduling
(Yildirim and Mouzon 2012; Shrouf et al. 2014; Che et al. 2017), parallel machine scheduling (Liang et al. 2015), HFSP-
UPM (Dai et al. 2013) and flexible job-shop scheduling (Zhang et al. 2017). Yildirim and Mouzon (2012) developed a non-
linear mathematical model to minimise the energy consumption and the total completion time of a single machine simul-
taneously, and a multi-objective genetic algorithm was employed to solve this problem. A multi-granularity state chart
energy simulation model with ARENA was proposed, and the simulation results showed that 26% energy can be saved
when the turning On and Off strategy is applied (Wang, Li et al. 2013). Che et al. (2017) were the first to develop a
mixed integer linear programming (MILP) model for single-machine scheduling problem with turning On and Off strategy,
the effectiveness of which is verified by CPLEX SOLVER. A MILP model with the objective of minimising the total energy
consumption for flexible job-shop scheduling problem (FJSP) with considering turning On and Off strategy was firstly pro-
posed by Zhang et al. (2017).
International Journal of Production Research 3
HFSP can be solved mainly by two types of methods namely exact methods and approximation methods. Exact
methods include branch-and-bound algorithm (Néron, Baptiste, and Gupta 2001), and branch-and-cut (Naderi,
Gohari, and Yazdani 2014) among others. Approximation method mainly includes heuristic algorithms and meta-heur-
istic algorithms. Heuristic algorithms include priority dispatch rules (Néron, Baptiste, and Gupta 2001), NEH (Nawaz
and Ham 1983) among others. NEH first yields a permutation{b1 , b2 , . . . , bn } by using the longest processing time
(LPT). The first job b1 is set to be the first one of the current permutation, and then the remaining jobs are taken out
one by one and inserted into the best slot of the current permutation (Nawaz, Jr, and Ham 1983). Heuristic algorithms
can obtain a feasible solution in a relatively short time, but it is difficult to guarantee the quality of the solution.
Meta-heuristic algorithms such as artificial bee colony algorithm (ABC) (Li, Pan, and Wang 2014; Pan et al. 2014),
migrating birds optimisation algorithm (MBO) (Pan and Dong 2014), hybrid meta-heuristic method (Ramezani,
Rabiee, and Jolai 2015), are usually efficient while encoding and decoding rules must be designed for a specific
problem. The quality of the solution of meta-heuristic algorithms sometimes can be poor if the algorithm is not properly
designed. Although, exact methods such as MILP models are inefficient in solving the large-scale problems due to its
tremendous computational burden and memory requirement. The study for exact methods is of great significance for
new problems, as it can find the optimal solution for small-scale problems while the approximation method cannot guar-
antee to find the optimal solution (Ren et al. 2017).
Even though MILP models are not efficient solution algorithms, they are very useful in having insight into the sche-
duling problems and exploring effective heuristic methods for scheduling problems (Naderi, Gohari, and Yazdani 2014).
The solution of MILP models depends on computer capacity and specified software. Owing to recent advances in com-
puter capacity and advent of efficient software (e.g. CPLEX and GUROBI), the MILP model is attracting growing atten-
tion. MILP models can be solved by many methods such as cutting plane, branch-and-bound, dynamic programming,
branch-and price-and branch-and-cut (Naderi, Gohari, and Yazdani 2014). The Cplex solver used in this paper is based
on branch-and-cut method for solving MILP models. The branch-and-cut method is the combination of cutting plane
and branch-and-bound methods, which works by running a branch-and-bound algorithm and using cutting planes to
tighten the linear programming relaxations.
Although MILP models for HFSP have been developed by a number of researchers (Kis and Pesch 2005; Naderi, Gohari,
and Yazdani 2014; Wang et al. 2017), the focus has been on HFSP-IPM or minimising the makespan instead of considering
energy consumption. To the best of the authors’ knowledge, no research has been done on the MILP models for HFSP-UPM
with turning On and Off energy-saving strategy. In this paper, we will resolve the issue. The major contributions of our work
are as follows: This paper proposes five feasible MILP models for HFSP-UPM with turning Off and On strategy to minimise
total energy consumption. The five models are based on two different modelling ideas, and the modelling process of which is
described in detail. All MILP models are evaluated and compared under both the size and computational complexities by
using CPLEX. As HFSP is NP-Hard, the MILP model couldn’t efficiently solve the large-sized instances. To this end, an
improved genetic algorithm (IGA) with a novel energy-conscious decoding method is proposed.

3. Problem formulation
In this section, we firstly define the HFSP-UPM and give the assumptions of the problem. Secondly, the composition of the
energy consumption of the workshop is discussed and modelled.

3.1. HFSP-UPM definition


Generally, the HFSP-UPM can be considered as an extension of two classical scheduling problems namely the regular flow-
shop and parallel shop (Pan et al. 2014). HFSP-UPM can be stated as follows: there are of n jobs to be processed in S sequen-
tial stages in a predefined order, where stage j(j = 1, . . . , S) contains mj (mj ≥ 1) unrelated parallel machines and mj ≥ 2
exists at no less than one stage. Each job should be processed at all stages sequentially and all jobs can be processed by
any of the machines at each stage.
Typically, following assumptions are taken into consideration for HFSP-UPM:
. All the jobs are independent and available to be processed at time 0;
. All machines are available at time 0;
. Every job is processed on exactly on one machine at each stage;
. The buffer between two successive stages is unlimited;
. Each machine can process only one job at a time;
. Processing data such as processing times and powers is known in advance;
4 L. Meng et al.
. At each stage, once a job is started, it cannot be interrupted (i.e. no preemption);
. The transportation and the setup times are negligible.
The aim of HFSP-UPM is to minimise certain scheduling objectives (e.g. makespan and total energy consumption) by
reasonably assign the machine for each job at all stages and schedule all jobs on all machines. HFSP-UPM in this paper aims
to minimise the total energy consumption of the workshop (Appendix 1).

3.2. Energy consumption of the workshop


In this section, the energy consumption of the workshop is analysed. The total energy consumption of the workshop can be
categorised mainly into two parts, namely energy consumption of machine tools and common energy consumption. Energy
consumption of machine tools can further be divided into processing energy consumption and idle energy consumption
(Meng et al. 2016).

3.2.1. Processing energy consumption


Processing energy represents energy consumed by the cutting processes. The processing energy of job i on machine k, PEi,k,
can be calculated as,

PEi,k = Pi,k pti,k (1)

3.2.2. Idle energy consumption


Idle energy consumption denotes the energy consumed by machines when they are waiting for processing due to the delay of
jobs’ arrivals. The idle energy of machine k, WEk , can be calculated as,


n−1
WEk = WEk,t (2)
t=1

3.2.3. Common energy consumption


Common energy consumption stands for the energy consumed by auxiliary and supporting equipments such as lighting, air
conditioning, ventilation and heating, which is proportional to makespan and can be calculated as,

CE = P0 Cmax (3)

3.2.4. Energy consumption of the machine tools


The total energy consumption of the machine tools, TMC, is the sum of total processing energy consumption and total idle
energy consumption, which can be calculated as,
 
TMC = PEi,k Xi,k + WEk (4)
i[I k[K k[K

In Equation (4), the first part is the overall processing energy of all machines and the second part is the overall idle energy
consumption of all machines.
k,t
The idle period between position t and t + 1 of machine k, tidle , can be calculated by Equation (5),

k,t
tidle = Sk,t+1 − Fk,t (5)
k,t
For a long tidle , it is necessary to turn off and then turn on the machine k to save energy. To determine the duration of this
breakeven period for turning Off and On strategy, two points have to be considered. On the one hand, if the idle time between
International Journal of Production Research 5
two successive jobs is shorter than Tk, it is impossible to perform a turn-off–on operation; on the other hand, if the energy
consumption of the idle machine between two successive jobs is less than ECSk, a turn-off–on operation is unnecessary in
k,t
terms of energy-saving (Che et al. 2017). Therefore, breakeven period TBk is defined. If tidle is no less than TBk, the machine k
can be turned off. TBk can be calculated by Equation (6),

TBk = max {Tk , ECSk /Pidle


k
} (6)

3.2.5. Total energy consumption of the workshop


When the turning On and Off strategy is applied, WEk,t can be calculated by Equation (7),

WEk,t = (1 − Zk,t )(Sk,t+1 − Fk,t )Pidle


k
+ Zk,t ECSk (7)

With the turning On and Off strategy, the total energy consumption of the workshop can be calculated as,


n−1 
TEC = TMC + CE = ((1 − Zk,t )(Sk,t+1 − Fk,t )Pidle
k
+ ECSk Zk,t ) + Pi,k pti,k Xi,k + P0 Cmax (8)
k[K t=1 i[I k[K

In this paper, the transportation time between two consecutive stages and the setup times between different jobs on the same
machine are negligible. Therefore, transportation energy consumption and set-up energy consumption are not considered.

4. MILP models
In this section, we present all the five MILP models. All the five models are based on the modelling idea of machine
sequence-position proposed by Wagner (1959), who divided one machine into several sections according to time sequences.
Each section can be defined as one position or slot. Each position can be assigned to no more than one operation. When the
relationships between positions and operations are decided, the job sequence on the machine is obtained. The five models can
further be divided into two groups. The first group is based on the modelling idea of idle time variable and includes Models 1,
2, and 3. The second group is based on the modelling idea of idle energy variable and includes Models 4 and 5.
For the modelling idea of idle time variable, the idle energy is computed by the product of idle time and idle power. While
for the modelling idea of idle energy variable, the idle energy is directly set as decision variable.
A complete MILP model includes three parts, namely the objective function, the variables and the constraints. The vari-
ables can further be divided into integer (e.g. binary) and continuous variables, which are drastically influential to the per-
formance of MILP models. Deciding factors of performance include (in descending order) the number of the binary
variables, the number of the constraints and the number of continuous variables (PAN 1997). The effects of these three decid-
ing factors to the MILP model are further discussed in papers (Roshanaei, Azab, and ElMaraghy 2013; Jin et al. 2016). Per-
formance of models constructed based on different ideas can be variable as variables and constraints introduced may vary
with modelling ideas.
For all the five MILP models in this paper, the transformation and relationship of which are depicted in Figure 1. For the
three idle time-based models, the objective functions of which are nonlinear and non-convex. Because many local optical
solutions exist in the feasible region of the non-convex models, it is NP-hard to solve these models to optimality. Therefore,
we linearise the nonlinear models by introducing intermediate variables. Of the three, Model 1 has the most variables. Model
2 and 3 are formulated by reducing variables from Model 1, which can be regarded as simplifications of Model 1. When it
comes to the idle energy-based models, ECk,t is introduced and linear objective function is formulated directly. Model 5 is the
simplification of Model 4 by removing Xi,k, Ei,j and Fk,t.

4.1. Model 1
4.1.1. Variables
Ten variables are needed in Model 1, namely Xi,k, Yi,k,t, Zk,t, Bi,j, Ei,j, Sk,t, Fk,t, Uk,t, Wk,t and Cmax. Where, Xi,k, Yi,k,t and Zk,t are
binary variables, Bi,j, Ei,j, Sk,t, Fk,t and Cmax are continuous variables, and Uk,t and Wk,t are intermediate variables that are used
for linearisation of the nonlinear objective function (9).
6 L. Meng et al.

Figure 1. The diagram of the five MILP models.

4.1.2. Original objective function


n−1 
Min TEC = ((1 − Zk,t )(Sk,t+1 − Fk,t )Pidle
k
+ ECSk Zk,t ) + Pi,k pti,k Xi,k + P0 Cmax (9)
k[K t=1 i[I k[K

In Equation (9), the first part is the energy consumption for idling and turning Off and On of all machines, the second part is
the processing energy consumption of all machines, and the last part is the common energy consumption.
It’s obvious that function (9) is quadratic that contains the quadratic term (1−Zk,t)(Sk,t+1−Fk,t) and binary variable Zk,t.
Therefore, the mathematical model is nonlinear and non-convex. Because the non-convex model is very difficult to
solve, therefore, we linearise it by introducing two intermediate variables namely Uk,t and Wk,t. Uk,t+1 and Wk,t are used
to substitute (1−Zk,t)Sk,t+1 and (1−Zk,t)Fk,t respectively. The Equation (10) gives the linearised objective function.

4.1.3. Linearised objective function


 n−1 
Min TEC = ( ( Uk,t+1 − Wk,t )Pidle
k
+ ECSk Zk,t ) + Pi,k pti,k Xi,k + P0 Cmax ( 10)
k[K t=1 i[I k[K

As can be seen from this function, the first part has been linearised by using Uk,t and Wk,t. Moreover, all of the three parts have
the same meaning with corresponding parts of function (9), respectively.

4.1.4. Constraint sets

4.1.4.1. Assignment constraint sets.



Xi,k = 1, ∀i [ I, j [ J (11)
k[Kj


Yi,k,t = Xi,k , ∀i [ I, k [ K (12)
t[PP


Yi,k,t ≤ 1, ∀k [ K, t [ PP (13)
i[I

 
Yi,k,t ≥ Yi,k,t+1 , ∀k [ K, t [ {1, . . . , n − 1} (14)
i[I i[I

where, Constraint sets (11) and (12) define that each job is assigned exactly on one position of an alternative machine at each
International Journal of Production Research 7
stage. Constraint set (13) ensures that each position of each machine can be assigned to no more than one job. Constraint set
(14) ensures that the positions of each machine must be assigned to jobs in sequential order.

4.1.4.2. Sequencing constraint sets.



Ei,j = Bi,j + (pti,k Xi,k ), ∀i [ I, j [ J (15)
k[Kj


Fk,t = Sk,t + (pti,k Yi,k,t ), ∀k [ K, t [ PP (16)
i[I

Sk,t ≤ Bi,j + M (1 − Yi,k,t ), ∀i [ I, j [ J , k [ Kj , t [ PP (17)

Sk,t ≥ Bi,j − M (1 − Yi,k,t ), ∀i [ I, j [ J , k [ Kj , t [ PP (18)

Fk,t ≤ Sk,t+1 , ∀k [ K, t [ {1, . . . , n − 1} (19)

Ei,j ≤ Bi,j+1 , ∀i [ I, j [ {1, . . . , S − 1} (20)

where, Constraint set (15) ensures that the completion time of an operation is the sum of its starting time and its processing
time. Constraint set (16) ensures the completion time of position t of machine k is the sum of its starting time and the proces-
sing time of the job that is assigned on this position. Constraint sets (17) and (18) are for relating starting time of machine
positions to starting time of the operations (Fattahi, Saidi Mehrabad, and Jolai 2007; Roshanaei, Azab, and ElMaraghy
2013). Constraint set (19) is machine constraint set which forces each machine to process at most one operation at a
time; in other words, for two adjacent operations that have been assigned to the same machine, the succeeding operation
can start only if the precedent operation has been completely finished. Constraint set (20) enforces each job must be pro-
cessed following its specified operation sequence.
Notice that Sk,t is related to Bi,j and Fk,t is related to Ei,j from Constraint sets (15)–(18), we omit Bi,j and Ei,j in Model 2 in
order to analyse their influences on the performance of the MILP model.

4.1.4.3. Constraint set for makespan.

Cmax ≥ Ei,S , ∀i [ I (21)

4.1.4.4. Constraint sets defining the variables.

Bi,j , Sk,t ≥ 0, ∀i [ I, j [ J , k [ K, t [ PP (22)

This constraint set defines the continuous variables and enforce that our continuous variables are positive. In other words, the
processing can only be started after all the jobs and machines are available.

4.1.4.5. Constraint set for the turning off and on strategy.

Sk,t+1 − Fk,t ≥ TBk − M (1 − Zk,t ), ∀k [ K, t [ {1, . . . , n − 1} (23)

Sk,t+1 − Fk,t ≤ TBk + MZk,t , ∀k [ K, t [ {1, . . . , n − 1} (24)


n−1
Zk,t ≤ Nk , ∀k [ K (25)
t=1

Uk,t+1 ≥ Sk,t+1 − MZk,t , ∀k [ K, t [ {1, . . . , n − 1} (26)

Uk,t+1 ≤ Sk,t+1 + MZk,t , ∀k [ K, t [ {1, . . . , n − 1} (27)


8 L. Meng et al.

Uk,t+1 ≤ M (1 − Zk,t ), ∀k [ K, t [ {1, . . . , n − 1} (28)

Uk,t ≥ 0, ∀k [ K, t [ PP (29)

Wk,t ≥ Fk,t − MZk,t , ∀k [ K, t [ {1, . . . , n − 1} (30)

Wk,t ≤ Fk,t + MZk,t , ∀k [ K, t [ {1, . . . , n − 1} (31)

Wk,t ≤ M (1 − Zk,t ), ∀k [ K, t [ {1, . . . , n − 1} (32)

Wk,t ≥ 0, ∀k [ K, t [ {1, . . . , n − 1} (33)

where, Constraint sets (23) and (24) are for turning Off and On strategy; to be specific, if the idle period is longer than the
breakeven period of the machine, the machine is turned Off and then On; otherwise, the machine keeps idle. Constraint set
(25) formulates the maximum times that the machine can be turned Off and then On. Constraint sets (26)-(29) forces Uk,t+1=
(1−Zk,t)Sk,t+1 to be always true; that is to say, if Zk,t = 0, constraint sets (26)–(27) enforce Uk,t+1 to be greater than or equal to
Sk,t+1 and to be less than or equal to Sk,t+1,which makes Uk,t+1 is equal to Sk,t+1; if Zk,t=1, constraint sets (28)–(29) enforce Uk,
t+1 to be less than or equal to 0 and to be greater than or equal to 0, which makes Uk,t+1 is equal to 0. Constraint sets (30)–(33)
forces Wk,t = (1−Zk,t) Fk,t to be always true; in more detail, Constraint sets (30)–(31) forces Wk,t to be equal to Fk,t when Zk,t =
0 and Constraint sets (30)–(31) forces Wk,t to be equal to 0 when Zk,t = 1.

4.2. Model 2
Compared with Model 1, Bi,j and Ei,j are removed in Model 2. Constraint sets (15), (17)–(18), (20)–(21) and Bi,j ≥ 0 in con-
straint set (22) that depend on Bi,j and Ei,j are also removed. To guarantee the feasibility of Model 2, new constraint sets are
added. Because Bi,j and Ei,j are not included in the objective functions (9) and (10), Model 2 has the same original and line-
arised objective functions as Model 1.

Fk,t ≤ Skk,tt + M (2 − Yi,k,t − Yi,kk,tt ), ∀i [ I, j [ {1, . . . , S − 1}, k [ Kj , kk [ K j+1 , t [ PP, tt [ PP (34)

Cmax ≥ Fk,n , ∀k [ K (35)

In Model 2, Constraint sets (11)–(14), (16), (19), (22)–(24), (25)–(35) are needed. Where, Constraint sets (34) and (35) are
with the same purposes as Constraint sets (20) and (21), respectively. The number of constraints of reduced Constraint sets
(15), (17)–(18), (20)–(21) and Bi,j ≥ 0 of Constraint set (22) is n (3S + 2 nm), while the number of constraints of added Con-

straint sets (34)–(35) is n3 S−1
j=1 mj m j+1 . Therefore, Model 2 has much more constraints than Model 1.

4.3. Model 3
Notice that Xi,k is the summation of Yi,k,t, and Ei,j is the aggregation of Bi,j and pti,k Xi,k. Therefore, Xi,k and Ei,j are removed in
Model 3. When Xi,k and Ei,j have been omitted, Constraint sets (11), (12), (15), (20) and (21) are omitted too.
In Model 3, Equations (36) and (37) stand for the original nonlinear and linearised objective function of Model 3 respect-
ively.


n−1  
Min TEC = ((1 − Zk,t )(Sk,t+1 − Fk,t )Pidle
k
+ ECSk Zk,t ) + Pi,k pti,k Yi,k,t + P0 Cmax (36)
k[K t=1 i[I k[K t[PP


n−1  
Min TEC = ((Uk,t+1 − Wk,t )Pidle
k
+ ECSk Zk,t ) + Pi,k pti,k Yi,k,t + P0 Cmax (37)
k[K t=1 i[I k[K t[PP


Yi,k,t = 1, ∀i [ I, j [ J (38)
k[Kj t[PP
International Journal of Production Research 9

Bi,j + pti,k Yi,k,t ≤ Bi,j+1 , ∀i [ I, j [ {1, . . . , S − 1} (39)
k[Kj t[PP

 
Cmax ≥ Bi,S + pti,k Yi,k,t , ∀i [ I (40)
k[KS t[PP

With regard to the constraints, Constraint sets (13), (14), (16)–(19), (22)–(33), (38)–(40) are needed in Model 3. Where,
constraint sets (38), (39) and (40) do the same as what the Constraint sets (11), (20) and (21) do, respectively.
Although Fk,t is the aggregation of Sk,t and pti,kYi,k,t, it cannot be removed in Model 3. This is because if Fk,t is removed,
the difficulty of the linearisation will be greatly increased. When Fk,t is removed, the original nonlinear objective function of
Model 3 will become Equation (41).
   

n−1   
Min TEC = (1 − Zk,t ) Sk,t+1 − Sk,t − k
( pti,k Yi,k,t ) Pidle + ECSk Zk,t + Pi,k pti,k Yi,k,t
k[K t=1 i[I i[I k[K t[PP

+ P0 Cmax (41)

Function (41) contains three nonlinear terms namely (1–Zk,t)Sk,t+1, (1–Zk,t)Sk,t and (1 − Zk,t ) (pti,k Yi,k,t ), which is more
i[I
difficult to be linearised than Function (36). Therefore, it is reasonable to save Fk,t in Model 3.

4.4. Model 4
As can be seen from Models 1, 2 and 3, the original objective function of these three models is nonlinear, and thus linear-
isation transformation is needed. Intermediate variables and related constraints must be added for the linearisation transform-
ation, which will cause the model to have more variables and constraints.
In Models 4 and 5, we define a new variable, ECk,t, and thus the objective function (42) is originally linear. ECk,t is used to
represent WEk,t and denotes the energy consumption of machine k between position t and t + 1.

4.4.1. Variables
Xi,k, Yi,k,t, Zk,t, Bi,j, Ei,j, Sk,t, Fk,t, Cmax and ECk,t are needed in Model 4.

4.4.2. Original objective function


n−1 
Min ECk,t + Pi,k pti,k Xi,k + P0 Cmax (42)
k[K t=1 i[I k[K

4.4.3. Constraints
Constraint sets (11)–(23), (43)–(44) are needed in Model 4.

ECk,t ≥ ECSk Zk,t , ∀k [ K, t [ {1, . . . , n − 1} (43)

ECk,t ≥ (Sk,t+1 − Fk,t )Pidle


k
− MZk,t , ∀k [ K, t [ {1, . . . , n − 1} (44)

where, Constraint sets (43)–(44) are added to enforce that Equation (7) holds. To be specific, if ECk,t exceeds ECSk, the
machine will be turned Off and On to save energy, and ECk,t will be equal to ECSk due to the minimisation of the objective
function; otherwise, ECk,t is based on actual idle time due to the minimisation of the objective function.
10 L. Meng et al.
4.5. Model 5
The same as that Model 1 transforms to Model 3, Xi,k and Ei,j are removed in Model 5 as compared with Model 4. Besides,
Fk,t is also removed so as to make the MILP model simpler. Formula (45) stands for the objective function of Model 5.


n−1  
Min ECk,t + Pi,k pti,k Yi,k,t + P0 Cmax (45)
k[K t=1 i[I k[K t[PP


Sk,t + ( pti,k Yi,k,t ) ≤ Sk,t+1 , ∀k [ K, t [ {1, . . . , n − 1} (46)
i[I

 

Sk,t+1 − Sk,t + pti,k Yi,k,t ≥ TBk − M (1 − Zk,t ), ∀k [ K, t [ {1, . . . , n − 1} (47)
i[I

 

ECk,t ≥ Sk,t+1 − Sk,t − k
pti,k Yi,k,t Pidle − MZk,t , ∀k [ K, t [ {1, . . . , n − 1} (48)
i[I

Constraint sets (13)–(14), (17)–(18), (22), (25), (38)–(40), (43), (46)–(48) are needed in Model 5. Where, Constraint sets
(46), (47) and (48) do what the Constraint sets (19), (23) and (44) do, respectively.

5. Meta-heuristic algorithms
5.1. Improved genetic algorithm (IGA)
In this section, an improved genetic algorithm (IGA) with an energy-conscious decoding method is proposed to solve the
HFSP with the objective of minimising total energy consumption.

5.1.1. Chromosome encoding


Encoding is the primary part of the algorithm. In this paper, the widely used permutation-based encoding is used. In this
encoding scheme, each chromosome represents a permutation of all jobs. For example, one chromosome with 8 jobs can
be coded as [3,5,4,2,1,6,7,8].

5.1.2. Chromosome decoding


It is notable that the permutation-based encoding described above cannot ensure the machine selection and the job sequence
on each machine. Therefore, both machine selection and job sequence on each machine should be determined in the decoding
process. Decoding is to convert the coded permutation to real schedule. It is the key of the algorithm and affects greatly the
quality of the solutions. The previous decoding methods are mainly aimed at time performance (e.g. makespan and total
flowtime) (Ling et al. 2012; Li, Pan, and Wang 2014; Pan et al. 2014; Pan and Dong 2014). While for the energy-minimised
objective, the previous decoding methods may not be effective. Therefore, an energy-conscious decoding method is pro-
posed below.

5.1.2.1. The common decoding method. The common decoding method for HFSP-UPM is proposed by Wang et al. (2012).
At the first stage, schedule all the jobs on the basis of their sequences of the chromosome, and assign each job to the earliest
available machine. From the second stage on, the completion time of each job at the previous stage is taken as its release time.
Assign each job to the eligible machine with the earliest completion time according to the First In First Out rule. For the jobs
with the same completion time at the previous stage, the job is randomly selected. For a job permutation p = (p1 , . . . , pn ),
pi [ I.The machine assignment and completion time of each job can be calculated as follows.
At stage j, the completion time of job pi being assigned to machine k,C j,pi ,k , can be computed as,

C j,pi ,k = max {C j,tk ,k , C j−1,pi } + ptpi ,k (49)

where, C j,tk ,k represents the last job that has already been assigned to machine k, which is equal 0 if no job has been assigned
International Journal of Production Research 11
to machine k. Job pi will be assigned to machine k ∗ = arg (min {C j,pi ,k }) that leads to the earliest completion time.C j,pi , as
k[Kj
the completion time of job pi at stage j, is calculated by,

C j,pi = min {C j,pi ,k } (50)


k[Kj

where, C0,pi = 0 denotes that all jobs are available to be processed at time 0.
Once all jobs have been assigned to machines at all stages, makespan can be obtained by,

Cmax = max {CS,pi } (51)


i[I

5.1.2.2. Energy-conscious decoding method. The common decoding method is aimed at minimising makespan, however,
when it comes to the objective of minimising energy consumption, it may be ineffective. For a job permutation
p = (p1 , . . . , pn ), the new decoding method aimed at minimising energy consumption is proposed as below:
Step 1. j = 1;
Step 2. Calculate the added energy consumption DTECpi ,k of job pi being assigned to machinek,

j,pi ,k ∗
DTECpi ,k = Ppi ,k ptpi ,k + (max {C j,tk ,k , C j−1,pi } − C j,tk ,k )Pidle
k
+ P0 max {Cmax − Cmax , 0} (51)

In this equation, the first part is the added processing energy consumption, the second part is the added idle energy con-
j,pi ,k
sumption and the last part is the added common energy consumption. Where, Cmax denotes the maximum completion

time when job pi is assigned to machine k; Cmax denotes the maximum completion time before job pi is assigned to
machine k.
In the special case when pi is the first job assigned to machine k, DTECpi ,k is calculated as,

j,pi ,k ∗
DTECpi ,k = Ppi ,k ptpi ,k + P0 max {Cmax − Cmax , 0} (52)

In this situation, because the machine tool is turned on according to the start time of the first job that is assigned to it, no idle
energy consumption is added.
Step 3. Select the machine k ∗ = arg (min DTECpi ,k ) that is of minimised added energy consumption to process job pi ;
k[Kj
Step 4. j = j + 1 until j = S;
Step 5. Identify all the critical operations on all machines. When a machine except for those at the last stage doesn’t have a
critical operation, the last operation that is assigned to the machine is set an equivalent critical operation and cannot move;
Step 6. From the last but one stage to the second stage, all the non-critical operations on all the machines at each stage move
right as far as possible. For machines at the last stage, all the operations on them move right to the makespan to increase
the moving space of the operations at the former stage. Operations of the machines at the first stage don’t need to move.
Step 7. After the right moves have been completed, calculate the lengths of all the idle periods and implement the turning
off and on strategy at the period that is longer than the breakeven time of the machine. The idle time of each machine is
sorted in non-decreasing order so as to restrict maximum number of application of the strategy, which shall be appli-
cable only to the top Nk periods of machine k.

5.1.3. Selection
In GA, the selection operator is used to select the individuals according to the fitness. In this paper, two selection operators,
namely the elitist selection and the tournament selection are adopted. The elitist selection is used to select the individual with
the best fitness to the offspring. Therefore, the best individual is preserved. In tournament selection, two individuals are ran-
domly selected from the population, and the one with better energy consumption value is chosen. The tournament selection
makes a tradeoff between exploration and exploitation of the population.

5.1.4. Crossover
Two-point crossover is used and shown in Figure 2 (Murata, Ishibuchi, and Tanaka 1996). The procedure of the crossover is
given below:
12 L. Meng et al.

Figure 2. Two-point crossover.

Step 1. Two positions are selected randomly in the parents.


Step 2. Copy the elements of parent1 between the start to the first position and those between the second point to the end
to the offspring1, preserving their order.
Step 3. Copy the elements of the parent2 which are not copied at Step 2 to the offspring1, preserving their order.
Step 4. Offspring1 is generated.
Step 5. Copy the elements of parent2 that are not copied at Step 3 to the offspring2, preserving their order.
Step 6. Copy the elements of parent1 that are not copied at Step 2 to the offspring2, preserving their order.
Step 7. Offspring2 is generated.

5.1.5. Mutation
As can be seen in Figure 3, two mutation operators namely swap mutation and reversion mutation are used. The swapping
mutation makes small changes, while the reverse mutation can bring big changes. The two mutation operators are selected
randomly (50%), so that their advantages can be fully utilised. For the swapping mutation, the working procedure is simple
and can be seen in the literature (Li and Gao 2016). With regard to reverse mutation, it can be described as follows:
Step 1. Select two random positions in the parent.
Step 2. Reverse the elements between the selected positions to generate the offspring.

5.1.6. Initialisation and termination criteria


In this paper, the initial population is randomly generated based on the encoding principle. With regard to the termination
criteria, the IGA terminates when the running time reaches the maximum time (maxTime).

5.1.7. The procedure of the IGA


The procedure of the IGA is as follow:
Step 1 (Initialisation): Initiate the population with Psize individuals at random.
Step 2 (Selection): Firstly, the solution with the best fitness in parents is preserved to the offspring population (elitist
selection). Then, pairs of individuals are selected according to tournament selection scheme to produce the offspring
population.
Step 3 (Crossover): For each pair of individuals generated by the selection, apply the crossover operation to generate a
pair of offspring with the crossover probability pc.
Step 4 (Mutation): For each individual generated by the crossover operator, apply the mutation operation with the
mutation probability pm.
Step 5 (Update population): Update the population with the offspring population.
Step 6 (Termination test): Terminate the algorithm if the termination criteria is met, otherwise, return to Step2.
Step 7 (Output): Output the best solution.
Figure 4 gives the pseudocode of the IGA.

Figure 3. Swap and reversion mutation. (a) Swap mutation, (b) Reversion mutation.
International Journal of Production Research 13

Figure 4. Pseudocode of the IGA.

5.2. Simulated annealing (SA) algorithm


Taking inspiration from thermodynamic cooling process of molten metal, SA is a well-known algorithm for combinatorial
optimisation problems. SA starts only with one initial solution and continues with generating neighbourhood solutions
through neighbourhood structures with the decreasing temperatures (Ramezani, Rabiee, and Jolai 2013). Two neighbour-
hood structures namely swap and reversion are used in SA, which are the same as the two mutation operators described
above. The two structures are selected randomly (50%).
In SA, three important parameters namely the initial temperature (T0), the cooling factor (a), and the final temperature (Tf)
must be decided. The initial temperature decides the initial probability of accepting a non-improving solution. In this paper, a
large number of neighbour solutions, NN, are firstly generated namely x1 , x2 , . . . , xNN .Then, T0 is computed as,

T0 = ( min f (xi ) − max f (xi ))/ ln ( p0 ) (53)


1≤i≤NN 1≤i≤NN

where, p0 is the initial and maximum probability of accepting poor solutions and should be predefined. In this paper, p0 is set
as 0.2.
The probability p of accepting a non-improving solution can be calculated as,

p = exp ( f (x) − f (xnew )/T ) (54)

where, f (xnew ) denotes the fitness of the neighbour solution, f (x) represents the fitness of the current solution and T indicates
the current temperature.
Notice that, at first, the probability of accepting a non-improving solution is high due to the high initial temperature.
Then, as the algorithm runs, the temperature and the probability of accepting a non-improving solution gradually decreases.
The current temperature of iteration i, Ti, can be computed as,

Ti = aTi−1 , i = 1, . . . , NSA (55)

where, NSA is the maximum number of iterations of SA.


Like the IGA, the termination criteria of SA is set as maximum running time. Therefore, Tf is set as 0 in this paper.
Figure 5 gives the pseudocode of the SA.
14 L. Meng et al.

Figure 5. Pseudocode of the SA.

6. Experimental evaluation
This section evaluates and compares the proposed models, the IGA and other meta-heuristic algorithms. The performances of
the MILP models can be compared based on the size complexity, the computational complexity or both. For the size com-
plexity evaluation, MILP models can be compared from three aspects namely the number of binary variables (NBVs), the
number of continuous variables (NCVs), and the number of constraints (NCs). With regard to the computational complexity
comparison, MILP models can be compared under several inspects, such as the number of optimal solutions that the model
could find within the given time, the CPU time, and gap value.
Three examples of HFSP-UPM are adapted from literature (Wang et al. 2017) and data of them are given in Figure 6.
Among these three, Example 1 is of the smallest size and includes six jobs, eight machines and three stages; Stage 2 is a
bottleneck and only has two parallel machines. Compared with Example 1, both Examples 2 and 3 have twelve jobs.
Example 2 has three stages, which all have three parallel machines. Unlike Example 2, Example 3 includes four stages
and ten machines; the last two stages only have two parallel machines and are bottlenecks.
In Figure 6, for each machine at each stage, there are two columns. The left column refers to processing time and the right
column denotes processing power. ‘Pidle’ denotes the idle power of the machine; ‘T’ denotes the time for one turning On and
Off strategy of the machine; ‘ECS’ is the energy consumption for one turning On and Off strategy of the machine; ‘TB’ rep-
resents for the breakeven period of the machine.
To acquire different-sized problems, the three examples are expanded. In Figure 6, Ex1-x and Ex2-x denote the first x jobs
in Example 1 and Example 2, respectively, and Ex3-y-x denotes the first x jobs of the first y stages in Example 3. In Ex2-24,
Ex2-36, Ex3-24 and Ex3-36, the processing data of Jobs 13-24 and 25-36 are the same with that of Job 1-12, respectively.
The common power P0 and maximum times Nk are all set to be 5 for all instances.
All the five MILP models are run with IBM ILOG CPLEX 12.7.1 software. The running timelimit is set as 3600 s for each
model. For the meta-heuristic algorithms (e.g. GA, SA and MBO), they are coded in C++ and terminate when the maximum
running time (maxTime) reaches ton × ms. For all the methods, a Lenovo Y470 laptop is used and the specifications of the
laptop are as follows: Win 7 system, Intel (R) Core(TM)2 Duo CPU of 2.50 GHz processor and 8 GB Ram.

6.1. Comparison of MILP models


6.1.1. Size complexity comparison
The five models are compared in terms of the NBVs, NCVs and NCs. Table 1 shows the NBVs, NCVs and NCs of each
model for some illustrative instances.
As can be seen from Table 1, Models 1, 2 and 4 have the same NBVs which is more than that of Models 3 and 5; Models 3
and 5 have the same and the least NBVs. This is because Models1, 2 and 4 all have three binary variables namely Xi,k, Yi,k,t
and Zk,t; while Models 3 and 5 only have two binary variables namely Yi,k,t and Zk,t.
Seen from Table 1, the order of the least to most of the NCs is Model 5, Model 4, Model 3, Model 1, and Model 2. Among
them, Model 2 includes the Constraint set (34), which results in Model 2 having more constraints than that of Models 1, 3, 4
and 5. Models 4–5 based on the modelling idea of idle energy variable are without intermediate variables and related con-
straint sets, therefore, the constraints of which are less than Models 1 and 3. Because Model 5 is the further refinement of
Model 4, the constraints of which further decrease as described in the modelling process of Model 5.
International Journal of Production Research 15

Figure 6. Processing time and power of Examples 1–3.

It is also seen that the ascending order of the NCVs is Model 5, Model 4, Model 2, Model 3 and Model 1. It is easy to tell
the difference of the NCVs of different models from Table 1. No more details are presented here.
In summary, Model 5 has the least NBVs, NCVs and NCs and the minimum size complexity.

6.1.2. Computational complexity comparison


In order to compare the computational complexities of the models, the five MILP models are used to solve different-sized
instances of HFSP-UPM. Here, we first define three evaluating indicators. TNCO refers to the total number of instances that
the model can solve to optimality within the timelimit; TNCO0 represents the total number of instances which are solved to
optimality with gap = 0; TNCO1 stands for the total number of instances that solved to optimality with gap ≠ 0. Where, the
TNCO is the sum of the TNCO0 and TNCO1 (TNCO = TNCO0 + TNCO1). For the three evaluating indicators, TNCO is
first used. When the TNCO of different models is equal, TNCO0 is used. When both TNCO and TNCO0 of different models
are all equal, TNCO1 is then used. When all the three indicators of different models are the same, CPU time is another impor-
tant evaluating indicator.
16
Table 1. Model’s comparison on the size complexity for all instances.
Model 1 Model 2 Model 3 Model 4 Model 5
Instances NBVs NCs NCVs NBVs NCs NCVs NBVs NCs NCVs NBVs NCs NCVs NBVs NCs NCVs
Ex1-4 184 736 145 184 1220 121 152 692 133 184 560 113 152 484 69
Ex1-5 272 1020 183 272 2083 153 232 965 168 272 788 143 232 693 88
Ex1 376 1336 221 376 3306 185 328 1270 203 376 1048 173 328 934 107
Ex2-4 207 822 160 207 1659 136 171 774 148 207 624 124 171 540 76
Ex2-5 306 1140 202 306 2904 172 261 1080 187 306 879 157 261 774 97

L. Meng et al.
Ex2-6 423 1494 244 423 4689 208 369 1422 226 423 1170 190 369 1044 118
Ex2-7 558 1884 286 558 7122 244 495 1800 265 558 1497 223 495 1350 139
Ex2-8 711 2310 328 711 10,311 280 639 2214 304 711 1860 256 639 1692 160
Ex2-9 882 2772 370 882 14,364 316 801 2664 343 882 2259 289 801 2070 181
Ex2-10 1071 3270 412 1071 19,389 352 981 3150 382 1071 2694 322 981 2484 202
Ex3-3-4 184 736 145 184 1412 121 152 692 133 184 560 113 152 484 69
Ex3-3-5 272 1020 183 272 2458 153 232 965 168 272 788 143 232 693 88
Ex3-3-6 376 1336 221 376 3954 185 328 1270 203 376 1048 173 328 934 107
Ex3-3-7 496 1684 259 496 5990 217 440 1607 238 496 1340 203 440 1207 126
Ex3-3-8 632 2064 297 632 8656 249 568 1976 273 632 1664 233 568 1512 145
Ex3-3 140 608 135 140 915 111 110 566 123 140 458 105 110 386 63
Ex3-4 230 924 183 230 1782 151 190 868 167 230 704 143 190 608 87
Ex3-5 340 1280 231 340 3105 191 290 1210 211 340 990 181 290 870 111
Ex3-6 470 1676 279 470 4998 231 410 1592 255 470 1316 219 410 1172 135
Ex3-7 620 2112 327 620 7575 271 550 2014 299 620 1682 257 550 1514 159
International Journal of Production Research 17
Table 2 shows the computing results of all the MILP models. In Table 2, the column ‘gap’ refers to the average optim-
ality gap of the current solution. It is defined as |CS–BS|/|CS|*%, where CS is the current best feasible solution found by
the model within the timelimit, and BS is the current lower bound (Jin et al. 2016). Obviously, the smaller the gap value,
the better the solution. Moreover, a solution with gap = 0 is the optimal solution. The gap value is usually adopted to judge
whether the optimal solution is achieved and evaluate different solutions, or used as the stopping criterion of a compu-
tation. The column ‘Time’ shows the CPU time. The column ‘OS’ denotes the optimal solution, for larger instances
such as Ex2-10, Ex3-3-8, and Ex3-7, which is obtained by Model 4 within 36,000s (10 h). The solution with ‘*’
denotes the solution is feasible but not optimal.
As can be seen from Table 2, Model 4 outperforms the other models on the whole in terms of TNCO. Although
Model 5 has the lowest size complexity as mentioned in Section 6.1.1, Model 5 performs worse and is slower than
Model 4 in terms of TNCO, TNCO0 and total time. Nevertheless, for some specific instances such as Ex2-9, Model
5 performs faster than Model 4. Although Model 3 slightly outperforms Model 1 in terms of TNCO, it needs more
total time than Model 1. Therefore, lower size complexity doesn’t always mean better performance, because many
other factors may affect the performance of the MILP model. In this paper, Model 1 has two more variables namely
Xi,k and Ei,j than Model 3, and Model 4 has three more variables namely Xi,k, Ei,j, and Fk,t than Model 5. Although
Xi,k, Ei,j, and Fk,t are the aggregations of other variables and are redundant, they are beneficial to the solving of the
model. The influences of redundant variables and constraints to MILP models will be studied and analysed deeply in
future research.
Models 4 and 5 outperform Models 1 and 3 in terms of total time. This is because Model 4 and 5 are based on the mod-
elling idea of idle energy variable, which makes linearisation, intermediate variables, and related constraints are dispensable.
However, for particular instances, the result may be the opposite. For example, Models 4(314.78s) and 5(846.24s) performs
much slower than Model 1(135.46s) in solving Ex3-3-7.
Obviously, Model 2 performs the worst, as constraint set (34) is with huge constraints and seriously affects the solving of
Model 2. This shows that Bi,j and Ei,j cannot be removed. Therefore, this paper doesn’t give the idle energy-based model
which Bi,j and Ei,j are removed compared with Model 4.
Above all, Model 4 performs the best among all the five models. Therefore, we use Model 4 to solve all the instances in
Chapter 6.2 with 3600s running time, and the result of Model 4 is set as the reference standard.

6.2. Calibration of the IGA


The settings of the population size (Psize), crossover rate (pc), and mutation rate (pm) are important to the effectiveness of the
IGA. Therefore, calibration of the IGA is done. Taguchi method and the design of experiment (DOE) with the Ex2-12, Ex3-
3-12 and Ex3-12 are applied. Each parameter is tested at three levels and the orthogonal array ‘L9’ is used to conduct the
experiment. The IGA is independently run 20 times for each combination of parameters, and the mean value is set as the
response variable. Figure 7 shows the IGA performs better with Psize = 200, pc = 0.8 and pm = 0.1. Therefore, we conduct
all the following experiments with these fixed values.

6.3. Comparisons of different algorithms


This section aims to evaluate the effectiveness of the IGA, by comparing it with GA, SA, MBO (Yildirim and Mouzon 2012)
and Model 4. MBO was proposed for solving quadratic assignment problem, and is adapted by using the encoding scheme
and common decoding method in this paper. The parameters of MBO are set as what were suggested in the paper (Yildirim
and Mouzon 2012). GA, SA, MBO are with the common decoding method. For GA, the parameters of population size, cross-
over rate, mutation rate and terminate criteria are set as the same with IGA. All the meta-heuristic algorithms are run 20 times
independently.
In Table 3, the relative percentage deviation (RFD), the mean relative percentage deviation (MRED) and the standard
deviation of relative percentage deviation (SDRFD) are calculated as,

RFDb = (TECb − TEC min )/TEC min × 100% (56)


 

N
MRFDb = TECbi /N − TEC min
/TEC min × 100% (57)
i=1
18
Table 2. Model’s comparison on the computational complexity.
Model 1 Model 2 Model 3 Model4 Model5
Instances OS CS Time Gap CS Time Gap CS Time Gap CS Time Gap CS Time Gap
Ex1-4 2131 2131 0.31 0 2131 27.36 0 2131 0.80 0 2131 0.44 0 2131 0.47 0
Ex1-5 2418 2418 1.09 0 2418 455.02 0 2418 4.31 0 2418 0.48 0 2418 1.17 0
Ex1 2666.5 2666.5 6.86 0 2666.5 3600 5.08 2666.5 14.88 0 2666.5 15.59 0 2666.5 14.98 0
Ex2-4 2150 2150 0.69 0 2150 9.58 0 2150 0.50 0 2150 0.28 0 2150 0.69 0
Ex2-5 2507 2507 2.73 0 2507 125.53 0 2507 2.75 0 2507 2.26 0 2507 2.73 0
Ex2-6 2978 2978 4.77 0 2978 2621.22 0 2978 7.46 0 2978 6.49 0 2978 3.68 0
Ex2-7 3379 3379 64.85 0 3397* 3600 5.55 3379 328.19 0 3379 46.99 0 3379 19.0 0

L. Meng et al.
Ex2-8 3859 3859 599.96 0 3860* 3600 6.10 3859 1621.7 0 3859 431.22 0 3859 254.30 0
Ex2-9 4239 4239 1476.22 0 4331* 3600 7.09 4239 1443.1 0 4239 809.33 0 4239 634.80 0
Ex2-10 4883 4942* 3600 3.87 4933* 3600 6.22 4901* 3600 1.34 4929* 3600 2.49 4938* 3600 3.51
Ex3-3-4 2567 2567 2.03 0 2567 225.56 0 2567 1.28 0 2567 0.70 0 2567 1.16 0
Ex3-3-5 3100.8 3100.8 8.00 0 3100.8* 3600 0.42 3100.8 16.69 0 3100.8 3.17 0 3100.8 9.00 0
Ex3-3-6 3609.9 3609.9 46.24 0 3609.9 3600 8.52 3609.9 253.69 0 3609.9 113 0 3609.9 804.83 0
Ex3-3-7 4133.2 4133.2 135.46 0 4164.3* 3600 8.99 4133.2 593.20 0 4133.2 314.78 0 4133.2 846.24 0
Ex3-3-8 4629.2 4630.7* 3600 1.34 4645.9* 3600 8.82 4630.7* 3600 1.50 4629.2 1913.93 0 4695.3* 3600 4.77
Ex3-3 2498.8 2498.8 0.53 0 2498.8 32.12 0 2498.8 0.28 0 2498.8 0.25 0 2498.8 0.34 0
Ex3-4 3124.2 3124.2 3.28 0 3124.2 3552.35 0 3124.2 2.59 0 3124.2 2.17 0 3124.2 2.47 0
Ex3-5 3791.7 3791.7 124.58 0 3820.8* 3600 10.70 3791.7 38.52 0 3791.7 38.02 0 3791.7 38.12 0
Ex3-6 4414.4 4414.4 1749.93 0 4437.2* 3600 12.20 4414.4 3600 0.53 4414.4 584.07 0 4414.4 521.51 0
Ex3-7 5032.4 5141.8* 3600 5.27 5060.1* 3600 10.45 5032.4 1094.82 0 5032.4 1274.09 0 5037.1* 3600 3.94
Total time 15,027.53 50,248.74 16,224.76 9157.26 13,955.49
TNCO0 17 8 17 19 17
TNCO1 0 2 1 0 0
TNCO 17 10 18 19 17
International Journal of Production Research 19

Figure 7. Factor level trend of the IGA.


 2 
N N
TECbi − TECbi /N /(N − 1)
i=1 i=1
SDRFDb = × 100% (58)
TEC min

where, TECb is the minimum total energy consumption generated by a given method; TEC min denotes the minimum total
energy consumption among all of the methods, and N = 20.
In Table 3 and Figure 8, the RFD0 of Model 4 indicates the best result of 3600s and RFD denotes that of nm s. According
to the results, although MILP model can get the optimal solution for some small instances, it’s solving time of it increases
dramatically with the increase of the size of the instance. For larger instances, the MILP model cannot obtain the optimal
solution within 3600s. Compared with Model 4, although IGA can only get the optimal solutions to only a few instances
(e.g. Ex1-4, 2-4 and 2-5), it can get better solutions than the best MILP Model for larger instances such as Ex2-24, Ex2-
36, Ex3-24 and Ex3-36 in short time (no more than 10% of the running time of the best MILP model). For small-scale
instances, IGA can get the solution that is close to optimal solution or the best solution with the gap of no more than
2.17%. Moreover, when the results of Model 4 and IGA within the same running time nm s are compared, the IGA can
acquire much better solutions than Model 4 in many instances, especially for those with large size.
As Table 3 shows, compared with SA and MBO, GA gets smaller sum of RFD (RFDS), sum of MRFD (MRFDS) and sum
of SDRFD (SDRFDS) of all instances, which indicates that GA is the most suitable for solving the studied problem. SA per-
forms worst with the maximum RFDS, MRFDS and SDRFDS. This may be because SA starts from only one initial solution,
the quality of which has a great effect on the algorithm. The initial solution is generated randomly in this paper, which may
influence the performance of SA. Although MBO (RFDS = 109.2, MRFDS = 114.91 and SDRFDS = 11.39) is an newly pro-
posed population-based meta-heuristic and has been proved to competitive for solving quadratic assignment problem, it per-
forms worse than GA (RFDS = 107.66, MRFDS = 113.22 and SDRFDS = 4.96). The reason may be that the evolutionary
process of MBO is designed specifically for quadratic assignment problem instead of the problem studied in this paper. Com-
bined with the energy-conscious decoding method, the performance of GA is further improved. The IGA can get the best
solution for each instance among all the meta-heuristic algorithms. Besides, the IGA gives the smallest RFDS, MRFDS
and SDRFDS, which shows the energy-conscious decoding rule is more effective than the common decoding method.
From the above, it is clear that the IGA is effective and suitable for solving the energy-conscious scheduling problem in
this paper.

6.4. Developing energy-efficient rules with MILP model


Figure 9 illustrates the Gantt chart of the optimal solution of Ex2-10. Figure 9 shows that Machines 4 and 5 at stage 2 are
turned off and then on once. Job 6 has not been finished at the preceding stage of Stage 1 at time 70, and Machine 4 cannot
start to process Job 6 immediately when it has finished Job 9. Then, Machine 4 will idle for a long idle period which is longer
than the breakeven time of Machine 4. Therefore, Machine 4 is turned off to reduce idle energy consumption. The same for
Machine 5, it must idle for a long time to wait for Job 3 after finishing Job 5. The idle period of 100 is much longer than the
breakeven time of 15, therefore Machine 5 is turned off.
20
Table 3. Comparisons of GA, SA, MBO, IGA and Model4.
Model4 GA SA MBO IGA
Instances Min RFD0 RFD RFD MRFD SDRFD RFD MRFD SDRFD RFD MRFD SDRFD RFD MRFD SDRFD
Ex1-4 2131 0.00 0.00 1.50 1.50 0.00 1.50 1.50 0.00 1.50 1.50 0.00 0.00 0.00 0.00
Ex1-5 2418 0.00 0.00 1.74 1.74 0.00 1.74 1.74 0.00 1.74 1.74 0.00 0.41 0.41 0.00
Ex1 2666.5 0.00 0.00 1.99 1.99 0.00 1.99 2.34 1.15 1.99 1.99 0.00 0.58 0.58 0.00
Ex2-4 2150 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Ex2-5 2507 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Ex2-6 2978 0.00 0.00 2.65 2.65 0.00 2.65 2.77 0.23 2.65 2.65 0.00 0.74 0.74 0.00
Ex2-7 3379 0.00 0.00 2.78 3.12 0.00 2.78 3.53 1.08 2.78 3.38 0.96 1.39 1.39 0.00
Ex2-8 3859 0.00 0.65 2.57 2.57 0.00 2.57 3.36 0.82 2.57 3.08 0.57 0.73 0.73 0.00
Ex2-9 4239 0.00 1.06 1.91 1.91 0.00 2.43 3.24 1.14 2.33 0.44 2.33 1.25 1.25 0.00
Ex2-10 4917 0.24 0.39 1.46 1.47 0.01 1.97 2.56 0.69 1.46 1.74 0.10 0.00 0.00 0.00
Ex2-11 5383 0.93 0.09 1.47 1.69 0.39 1.47 2.11 1.00 1.47 1.52 0.46 0.00 0.11 0.16
Ex2-12 5918 1.49 1.49 0.84 2.00 0.34 2.47 3.07 0.70 1.25 2.24 0.44 0.00 0.25 0.20
Ex3-3-4 2567 0.00 0.00 3.73 3.73 0.00 3.73 3.73 0.00 3.73 3.73 0.00 2.17 2.17 0.00

L. Meng et al.
Ex3-3-5 3100.8 0.00 0.00 2.83 2.83 0.00 2.83 2.83 0.00 2.83 2.83 0.00 1.01 1.01 0.00
Ex3-3-6 3609.9 0.00 0.58 3.68 3.68 0.00 3.68 3.68 0.00 3.68 3.68 0.00 1.23 1.23 0.00
Ex3-3-7 4133.2 0.00 0.62 4.37 4.37 0.00 4.37 4.88 0.52 4.37 4.37 0.00 0.60 0.60 0.00
Ex3-3-8 4629.2 0.00 0.23 3.72 3.72 0.00 3.72 4.06 0.42 3.72 3.72 0.00 0.28 0.28 0.00
Ex3-3-9 5134.2 0.00 1.76 4.43 4.43 0.00 4.43 4.90 0.41 4.43 4.43 0.00 0.63 0.63 0.00
Ex3-3-10 5688.5 0.62 1.00 3.29 3.58 0.40 3.63 4.11 0.54 3.29 3.96 0.66 0.00 0.29 0.32
Ex3-3-11 6187.7 0.00 0.84 4.66 4.75 0.11 4.74 5.00 0.33 4.74 5.12 0.39 0.01 0.10 0.17
Ex3-3-12 6644.8 1.32 1.58 4.65 4.79 0.14 4.70 5.02 0.45 4.65 4.86 0.32 0.00 0.60 0.70
Ex3-3 2498.8 0.00 0.00 1.00 1.00 0.00 1.00 1.00 0.00 1.00 1.00 0.00 0.20 0.20 0.00
Ex3-4 3124.2 0.00 0.00 4.85 4.85 0.00 4.85 4.85 0.00 4.85 4.85 0.00 1.97 1.97 0.00
Ex3-5 3791.7 0.00 0.00 3.39 3.39 0.00 3.39 3.55 0.18 3.39 3.39 0.00 1.41 1.41 0.00
Ex3-6 4414.4 0.00 1.58 4.39 4.39 0.00 4.39 4.61 0.50 4.39 4.39 0.00 1.16 1.16 0.00
Ex3-7 5032.4 0.00 0.43 4.84 4.84 0.00 4.84 4.92 0.10 4.84 4.84 0.00 1.07 1.07 0.00
Ex3-8 5673.7 0.00 0.57 3.63 3.63 0.00 3.63 4.21 0.63 3.63 3.68 0.17 0.68 0.68 0.00
Ex3-9 6307.2 0.54 0.60 3.87 3.99 0.20 3.87 4.45 0.57 3.87 4.23 0.38 0.00 0.07 0.12
Ex3-10 6929.4 0.00 1.29 4.88 5.02 0.17 4.88 5.40 0.50 4.88 5.09 0.24 0.90 1.05 0.28
Ex3-11 7494.6 0.00 0.87 4.84 5.14 0.30 5.23 5.60 0.51 4.96 5.36 0.42 0.24 0.65 0.46
Ex3-12 8064.6 0.57 1.00 4.59 4.82 0.50 5.16 5.57 0.58 4.65 4.98 0.63 0.00 0.70 0.40
Ex2-24 11603 1.28 2.13 1.08 1.97 0.88 1.77 2.55 1.04 1.24 2.12 1.34 0.00 0.41 0.52
Ex2-36 17304 1.74 6.11 1.90 2.88 0.90 2.58 3.21 1.21 1.94 3.01 1.23 0.00 0.40 0.47
Ex3-24 15597.6 1.07 7.57 5.37 5.69 0.25 5.56 5.88 0.34 5.56 5.73 0.29 0.00 0.54 0.57
Ex3-36 23240.6 4.17 11.54 4.76 5.09 0.37 4.99 5.48 0.56 4.82 5.26 0.46 0.00 0.45 0.38
Total 13.97 43.98 107.66 113.22 4.96 113.54 125.71 16.2 109.2 114.91 11.39 18.66 23.13 4.75
International Journal of Production Research 21

Figure 8. Comparison of GA, SA, MBO, IGA and Model 4.

Figure 9. Gantt chart of Ex2-10 (TEC = 4883;).

Machines 1–9 are turned on according to the starting time of the first job assigned to them instead of at time 0 simul-
taneously; besides, they are turned off when the last job assigned to them has been completed.
For Machines 1, 2, 3, 6, 7, 8 and 9, the idle time of each machine is 0. This is because the jobs on those machines are not to
be processed immediately after they have been finished at the preceding stage; instead, they are postponed to reduce idle time so
as to reduce idle energy consumption. For example, if Job 9 starts immediately after it is finished at time 70 on Machine 4 and
Job 2 starts immediately after it is completed at time 130 on Machine 6, an idle period of 10 will occur on Machine 9.

7. Conclusion
This paper investigates the energy-conscious HFSP-UPM with the turning Off and On strategy to reduce idle energy con-
sumption of machines. We first develop five MILP models to solve the problem. In the experiments, we have evaluated the
performances of different models based on both the size and computational complexities. The results show that the MILP
models can solve small-sized instances to optimality and the idle energy-based model outperforms the idle time-based
model. Moreover, models of lower size complexity may not perform better than those with higher size complexity.
22 L. Meng et al.
Due to HFSP is NP-Hard, the efficiency of MILP models for solving the larger-sized instances is low. To this end, we
propose an improved genetic algorithm (IGA) with a novel energy-conscious decoding method. Then, we compare the IGA
with the best MILP model, the GA, SA and MBO, and the computational results demonstrate that the IGA is effective and
suitable for the scheduling problem.
Moreover, this paper demonstrates that mathematical model is the key to the understanding the structure of the schedul-
ing problems especially for those with new objectives. The energy-conscious decoding method is developed by using the
proposed MILP models.

8. Future work
As discussed in Section 6.1, the MILP model with less size complexity doesn’t always give a better performance. Other
factors such as redundant variables that affect the performance of the MILP models should be studied further. In this
paper, we run the MILP models by using the default settings of Cplex. From the results can be seen the solving efficiency
of the MILP models is low. Therefore, in order to improve the efficiency of the MILP models, special cutting strategies can be
designed and added to Cplex solver in future research, or decomposition methods such as benders decomposition and column
generation are worth to be tried. With regard to the GA, it can be combined with other meta-heuristic algorithms to further
improve its performance. Moreover, further research directions involve the consideration of the HFSP with additional rea-
listic factors such as time-of-use electricity, peak power load, setup times, transportation times, and different arrival times.

Disclosure statement
No potential conflict of interest was reported by the authors.

Funding
This research is supported by the International Cooperation and Exchange of the National Natural Science Foundation of China [grant
number 51561125002], the National Natural Science Foundation of China [grant number 51575211], the Fundamental Research Funds
for the Central Universities [grant number HUST: 2014TS038], the National Natural Science Foundation of Jilin province of China
[grant number 20180101058JC], and the 111 Project of China [grant number B16019].

References

Bruzzone, A. A. G., D. Anghinolfi, M. Paolucci, and F. Tonelli. 2012. “Energy-aware Scheduling for Improving Manufacturing Process
Sustainability: A Mathematical Model for Flexible Flow Shops.” CIRP Annals – Manufacturing Technology 61 (1): 459–462.
Chávez-García, H., and K. K. Castillo-Villar. 2018. “Simulation-based Model for the Optimization of Machining Parameters in a Metal-
cutting Operation.” Simulation Modelling Practice and Theory 84: 204–221.
Che, A., X. Wu, J. Peng, and P. Yan. 2017. “Energy-efficient Bi-objective Single-machine Scheduling with Power-down Mechanism.”
Computers & Operations Research 85: 172–183.
Cus, F., and J. Balic. 2003. “Optimization of Cutting Process by GA Approach.” Robotics & Computer Integrated Manufacturing 19 (1):
113–121.
Dahmus, J. B., and T. G. Gutowski. 2004. “An Environmental Analysis of Machining.” ASME 2004 International Mechanical Engineering
Congress and Exposition, Anaheim, CA, USA
Dai, M., D. Tang, A. Giret, M. A. Salido, and W. D. Li. 2013. “Energy-efficient Scheduling for a Flexible Flow Shop Using an Improved
Genetic-simulated Annealing Algorithm.” Robotics and Computer-Integrated Manufacturing 29 (5): 418–429.
Dai, M., D. Tang, Z. Huang, and J. Yang. 2016. “Energy-efficient Process Planning Using Improved Genetic Algorithm.” Transactions of
Nanjing University of Aeronautics & Astronautics 33 (5): 602–609.
Dai, M., D. Tang, Y. Xu, and W. Li. 2014. “Energy-aware Integrated Process Planning and Scheduling for job Shops.” Proceedings of the
Institution of Mechanical Engineers, Part B: Journal of Engineering Manufacture 229 (1): 13–26.
Fattahi, P., M. Saidi Mehrabad, and F. Jolai. 2007. “Mathematical Modeling and Heuristic Approaches to Flexible Job Shop Scheduling
Problems.” Journal of Intelligent Manufacturing 18 (3): 331–342.
Gielen, D., K. Bennaceur, T. Kerr, C. Tam, K. Tanaka, M. Taylor, and P. Taylor. 2007. The International Energy Agency (IEA), Tech. rep.,
Tracking Industrial Energy Efficiency and CO2 Emissions.
Jin, L., Q. Tang, C. Zhang, X. Shao, and G. Tian. 2016. “More MILP Models for Integrated Process Planning and Scheduling.”
International Journal of Production Research 54 (14): 1–16.
Kis, T., and E. Pesch. 2005. “A Review of Exact Solution Methods for the Non-preemptive Multiprocessor Flowshop Problem.” European
Journal of Operational Research 164 (3): 592–608.
Li, C., X. Chen, Y. Tang, and L. Li. 2016. “Selection of Optimum Parameters in Multi-pass Face Milling for Maximum Energy Efficiency
and Minimum Production Cost.” Journal of Cleaner Production 140: 1805–1818.
International Journal of Production Research 23
Li, X., and L. Gao. 2016. “An Effective Hybrid Genetic Algorithm and Tabu Search for Flexible Job Shop Scheduling Problem.”
International Journal of Production Economics 174: 93–110.
Li, L., C. Li, Y. Tang, and L. Li. 2017. “An Integrated Approach of Process Planning and Cutting Parameter Optimization for Energy-aware
CNC Machining.” Journal of Cleaner Production 162: 458–473.
Li, J., Q. Pan, and F. Wang. 2014. “A Hybrid Variable Neighborhood Search for Solving the Hybrid Flow Shop Scheduling Problem.”
Applied Soft Computing 24: 63–77.
Li, J., H. Sang, Y. Han, C. Wang, and K. Gao. 2018. “Efficient Multi-objective Optimization Algorithm for Hybrid Flow Shop Scheduling
Problems with Setup Energy Consumptions.” Journal of Cleaner Production 181: 584–598.
Li, L., J. Yan, and Z. Xing. 2013. “Energy Requirements Evaluation of Milling Machines Based on Thermal Equilibrium and Empirical
Modelling.” Journal of Cleaner Production 52 (4): 113–121.
Liang, P., H. Yang, G. Liu, and J. Guo. 2015. “An Ant Optimization Model for Unrelated Parallel Machine Scheduling with Energy
Consumption and Total Tardiness.” Mathematical Problems in Engineering 2015: 1–8.
Lin, W., D. Y. Yu, C. Zhang, X. Liu, S. Zhang, Y. Tian, S. Liu, and Z. Xie. 2015. “A Multi-objective Teaching-learning-based Optimization
Algorithm to Scheduling in Turning Processes for Minimizing Makespan and Carbon Footprint.” Journal of Cleaner Production
101: 337–347.
Ling, W., Z. Gang, X. U. Ye, and S. Y. Wang. 2012. “An Artificial Bee Colony Algorithm for Solving Hybrid Flow-shop Scheduling
Problem with Unrelated Parallel Machines.” Control Theory & Applications 29 (12): 1551–1557.
Liu, P., S. Liu, and F. Liu. 2016. “Calculating Method for Additional Load Loss Coefficient of Spindle System of CNC Machine Tools.”
Journal of Mechanical Engineering 52 (11): 121–128. “.
Liu, F., Q. Wang, and G. Liu. 2013. “Content Architecture and Future Trends of Energy Efficiency Research on Machining Systems.”
Journal of Mechanical Engineering 49 (19): 87.
Liu, N., Y. F. Zhang, and W. F. Lu. 2015. “A Hybrid Approach to Energy Consumption Modelling Based on Cutting Power: A Milling
Case.” Journal of Cleaner Production 104: 264–272.
Liu, Q., and H. Zhao. 2017. “Integrated Optimization of Workshop Layout and Scheduling to Reduce Carbon Emissions Based on a Multi-
objective Fruit Fly Optimization Algorithm.” Chinese Journal of Mechanical Engineering 53 (11): 122–133.
Meng, L., M. C. Zhou, C. Zhang, and G. Tian. 2016. “A New Model for Predicting Power Consumption of Machining Processes: A Turning
Case.” IEEE International Conference on Automation Science and Engineering, 1289-1294, Fort Worth, TX, Aug. 21-24.
Mouzon, G., M. B. Yildirim, and J. Twomey. 2007. “Operational Methods for Minimization of Energy Consumption of Manufacturing
Equipment.” International Journal of Production Research 45 (18–19): 4247–4271.
Mukherjee, I., and P. K. Ray. 2006. “A Review of Optimization Techniques in Metal Cutting Processes.” Computers & Industrial
Engineering 50 (1): 15–34.
Murata, T., H. Ishibuchi, and H. Tanaka. 1996. “Multi-objective Genetic Algorithm and its Applications to Flowshop Scheduling.” IEEE
Transactions On Systems Man & Cybernetics Part C 30 (4): 957–968.
Naderi, B., S. Gohari, and M. Yazdani. 2014. “Hybrid Flexible Flowshop Problems: Models and Solution Methods.” Applied
Mathematical Modelling 38 (24): 5767–5780.
Nawaz, M., E. E. E. Jr, and I. Ham. 1983. “A Heuristic Algorithm for the m-Machine, n-job Flow-shop Sequencing Problem.” Omega 11
(1): 91–95.
Néron, E., P. Baptiste, and J. N. D. Gupta. 2001. “Solving Hybrid Flow Shop Problem Using Energetic Reasoning and Global Operations.”
Omega 29 (6): 501–511.
Neugebauer, R., M. Wabner, H. Rentzsch, and S. Ihlenfeldt. 2011. “Structure Principles of Energy Efficient Machine Tools.” Cirp Journal
of Manufacturing Science & Technology 4 (2): 136–147.
PAN, C. 1997. “A Study of Integer Programming Formulations for Scheduling Problems.” International Journal of Systems Science 28 (1):
33–41.
Pan, Q., and Y. Dong. 2014. “An Improved Migrating Birds Optimisation for a Hybrid Flowshop Scheduling with Total Flowtime
Minimisation.” Information Sciences 277: 643–655.
Pan, Q., L. Wang, J. Li, and J. Duan. 2014. “A Novel Discrete Artificial Bee Colony Algorithm for the Hybrid Flowshop Scheduling
Problem with Makespan Minimisation.” Omega 45: 42–56.
Ramezani, P., M. Rabiee, and F. Jolai. 2013. “No-wait Flexible Flowshop with Uniform Parallel Machines and Sequence-dependent Setup
Time: A Hybrid Meta-heuristic Approach.” Journal of Intelligent Manufacturing 26 (4): 1–14.
Ramezani, P., M. Rabiee, and F. Jolai. 2015. “No-wait Flexible Flowshop with Uniform Parallel Machines and Sequence-dependent Setup
Time: A Hybrid Meta-heuristic Approach.” Journal of Intelligent Manufacturing 26 (4): 731–744.
Ren, Y., D. Yu, C. Zhang, G. Tian, L. Meng, and X. Zhou. 2017. “An Improved Gravitational Search Algorithm for Profit-oriented Partial
Disassembly Line Balancing Problem.” International Journal of Production Research 55 (24): 7302–7316.
Roshanaei, V., A. Azab, and H. ElMaraghy. 2013. “Mathematical Modelling and a Meta-heuristic for Flexible Job Shop Scheduling.”
International Journal of Production Research 51 (20): 6247–6274.
Shrouf, F., J. Ordieres-Meré, A. García-Sánchez, and M. Ortega-Mier. 2014. “Optimizing the Production Scheduling of a Single Machine
to Minimize Total Energy Consumption Costs.” Journal of Cleaner Production 67: 197–207.
Wagner, H. M. 1959. “An Integer Linear-programming Model for Machine Scheduling.” Naval Research Logistics Quarterly 6 (2):
131–140.
24 L. Meng et al.
Wang, J. F., S. Q. Li, and J. H. Liu. 2013. “A Multi-Granularity Model for Energy Consumption Simulation and Control of Discrete
Manufacturing System.” 2012 IEEE 19th International Conference on Industrial Engineering and Engineering Management,
Changsha, China.
Wang, S. Y, W Ling, L Min, and X Ye. 2013. “Estimation of Distribution Algorithm for Solving Hybrid Flow-shop Scheduling Problem
with Identical Parallel Machine.” International Journal of Advanced Manufacturing Technology 68 (9-12): 2043–2056.
Wang, F., Q. H. Tang, Y. Q. Rao, C. Y. Zhang, and L. P. Zhang. 2017. “Efficient Estimation of Distribution for Flexible Hybrid Flow Shop
Scheduling.” Acta Automatica Sinica 43 (2): 280–293.
Wang, L., G. Zhou, Y. Xu, and S. Wang. 2012. “An Artificial Bee Colony Algorithm for Solving Hybrid Flow-shop Scheduling Problem
with Unrelated Parallel Machines.” Control Theory & Applications 29 (12): 1551–1557.
Xiao, Y., Y. K. Cheng, and K. Q. Zhou. 2011. “Application of SLP in Factory Layout Based on Low Carbon Logistics.” Journal of
Chongqing University of Technology 25 (11): 24–29.
Yildirim, M. B., and G. Mouzon. 2012. “Single-machine Sustainable Production Planning to Minimize Total Energy Consumption and
Total Completion Time Using a Multiple Objective Genetic Algorithm.” IEEE Transactions on Engineering Management 59
(4): 585–597.
Yildiz, A. R. 2012. “A Comparative Study of Population-based Optimization Algorithms for Turning Operations.” Information Sciences
210 (1): 81–88.
Yildiz, A. R. 2013. “Optimization of Cutting Parameters in Multi-pass Turning Using; Artificial bee Colony-based Approach.” Information
Sciences 220 (1): 399–407.
Yusup, N., A. M. Zain, and S. Z. M. Hashim. 2012. “Evolutionary Techniques in Optimizing Machining Parameters: Review and Recent
Applications (2007–2011).” Expert Systems with Applications 39 (10): 9909–9927.
Zhang, Y., and L. Ge. 2015. “Method for Process Planning Optimization with Energy Efficiency Consideration.” The International Journal
of Advanced Manufacturing Technology 77 (9–12): 2197–2207.
Zhang, Z., R. Tang, T. Peng, L. Tao, and S. Jia. 2016. “A Method for Minimizing the Energy Consumption of Machining System:
Integration of Process Planning and Scheduling.” Journal of Cleaner Production 137: 1647–1662.
Zhang, L., Q. Tang, Z. Wu, and F. Wang. 2017. “Mathematical Modeling and Evolutionary Generation of Rule Sets for Energy-efficient
Flexible Job Shops.” Energy 138: 210–227.

Appendix 1
Notation
I the index for jobs
n the number of jobs to be scheduled
I the set of jobs be scheduled where {1,2, … ,n}
j the index for processing stages
S the number of processing stages
J the set of processing stages where {1,2, … ,S}
Oi,j the jth operation of job i
k,kk the indices for machines
m the total number of machines at all stages
mj the number of machines at stage j
Kj the set of machines at stage j where {1,2, … ,mj}
K the set of machines where {1,2, … ,m}
t,tt the indices for machine positions
PP the set of machine positions where{1,2, … ,n}
pti,k the processing time for job i on machine k
Pi,k the processing power for job i on machine k
k
Pidle the idle power of machine k
P0 the common power of auxiliary equipments in workshop
M a very large positive integer
Nk the maximum number of the turning Off and On strategy of machine k
ECSk the energy consumption of machine k for one turning On and Off strategy
Tk the time of machine k for one turning On and Off strategy
TBk the breakeven period of machine k
PEi,k the processing energy of job i on machine k
WEk the idle energy consumption of machine k
n−1 k,tt and t + 1 where WEk,t = Pidle tidle
k k,t
WEk,t the idle energy consumption of machine k between position
k
tidle the overall waiting time for machine k where tidle = t=1 tidle
k
k,t
tidle the idle time of machine k between position t and t + 1
TMC the total energy consumption of machine tools
CE the common energy consumption
TEC the total energy consumption of workshop
Sk,t the starting time for the position t of machine k
International Journal of Production Research 25

Fk,t the completion time for the position t of machine k


xj,k the parameter takes 1 if machine k is at stage j and takes 0 otherwise
Xi,k taking value 1 if machine k is chosen to process job i, and 0 otherwise
Yi,k,t taking value 1 if job i is processed at position t of machine k, and 0 otherwise
Zk,t taking value 1 if one turning On and Off strategy exists between position t and t + 1 on machine k, and 0 otherwise
Bi,j the starting time of operation Oi,j
Ei,j the completion time of operation Oi,j
Cmax the maximum completion time of all jobs (makespan)
Uk,t the intermediate variable
Wk,t the intermediate variable
ECk,t continuous variables for the energy consumption of machine k between position t and t + 1

The decoding process of the energy-conscious decoding method


To further illustrate how the energy-conscious decoding method works, an example is offered as below. With regard to the permutation
[4,3,9,10,7,5,6,8,1,2] of Ex2-10, two decoding methods are used to decode the chromosome. According to the above description of the
common decoding method, the Gantt chart shown in Figure A1(a) can be easily obtained. For the energy-conscious decoding method,
the decoding process is elaborated as below.
According to permutation [4,3,9,10,7,5,6,8,1,2], Job 4 is the first to be assigned. At stage 1, Job 4 can be assigned to any of machines
{1,2,3}. The added energy consumption of Job 4 being assigned to machines {1,2,3}are calculated according to Equation,

DTEC4,1 = P4,1 pt4,1 + P0 max {pt4,1 − 0, 0} = 360

DTEC4,2 = P4,2 pt4,2 + P0 max {pt4,2 − 0, 0} = 279

DTEC4,3 = P4,3 pt4,3 + P0 max {pt4,3 − 0, 0} = 368


Obviously, Job 4 is assigned to the Machine 2 that is with the least added energy consumption. Job 3 is the next one. Now, Cmax is equal
to 30. DTEC3,1 , DTEC3,2 and DTEC3,3 are computed and equal to 402, 490 and 202, respectively. Therefore, Job 3 is assigned to Machine
3. DTEC3,3 is calculated as,

DTEC3,3 = P3,3 pt3,3 + P0 max {40 − 30, 0} = 202

Other jobs are assigned to machines at Stage 1 according to their orders in the permutation. At Stage 2, Job 9 is the first to be assigned
because it is with the earliest completion time at Stage 1. Job 9 is available to be assigned to any machines of {4,5,6}. Then, DTEC9,4 ,
DTEC9,5 and DTEC9,6 are computed and are equal to 39, 78 and 252, respectively. Therefore, Job 9 is assigned to Machine 4. DTEC9,4
is computed as,

DTEC9,4 = P9,4 pt9,4 + P0 max {110 − 110, 0} = 39

The same with Job 9, Job 4 is the second to be processed and is assigned to Machine 6; Job 3 is the third to be processed and is assigned
to Machine 5. Job 10 and 7 are with the same release time 50, and Job 10 is randomly set as the fourth to be processed. Then, DTEC10,4 ,
DTEC10,5 and DTEC10,6 are calculated as,

DTEC10,4 = P10,4 pt10,4 + (max {30, 50} − 30)Pidle


4
+ P0 max {110 − 110, 0} = 140

Table A1. The number of constraints of each constraint set.


Constraint set NCs Constraint sets NCs Constraint set NCs
(11) nS (22) n(S-1) (33) (n−1)m

(12) nm (23) n (34) n3 S−1
j=1 mj m j+1
(13) nm (24) m (35) m
(14) (n–1)m (25) nm + nS (38) nS
(15) nS (26) (n–1)m (39) n(S–1)
(16) nm (27) (n–1)m (40) n
(17) n 2m (28) (n–1)m (43) (n–1)m
(18) n 2m (29) nm (44) (n–1)m
(19) (n–1)m (30) (n–1)m (46) (n–1)m
(20) (n-1)m (31) (n–1)m (47) (n–1)m
(21) (n–1)m (32) (n–1)m (48) (n–1)m
26
Table A2. Model’s comparison on the size complexity.
Models Variables (11)–(33) Constraint sets NBVs NCs NCVs
Model 1 Xi,k , Yi,k,t , Zk,t , Bi,j , Ei,j nm + n m + (n − 1)m 2n m + 4nS + 16nm − 10m
2 2
2nS + 4nm − m + 1
Sk,t , Fk,t , Uk,t , Wk,t , Cmax (11)–(14), (16), (19), (22)–(24), (25)–(35)
S−1
nm + n2 m + (n − 1)m n3 mj m j+1 + nS + 16nm − 9m 4nm − m + 1

L. Meng et al.
Model 2 Xi,k , Yi,k,t , Zk,t , Sk,t j=1
Fk,t , Uk,t , Wk,t , Cmax (13), (14), (16)–(19), (22)–(33), (38)–(40)

Model 3 Yi,k,t , Zk,t , Bi,j , Sk,t n2 m + (n − 1)m 3nS + 15nm − 10m + 2n2 m nS + 4nm − m + 1
Fk,t , Uk,t , Wk,t , Cmax (11)–(23), (43)–(44)

Model 4 Xi,k , Yi,k,t , Zk,t , Bi,j , Ei,j nm + n2 m + (n − 1)m 2n2 m + 4nS + 9nm − 4m 2nS + 3nm − m + 1
Fk,t , Sk,t , ECk,t , Cmax (13)–(14), (17)–(18), (22), (25), (38)–(40), (43), (46)–(48)

Model 5 Yi,k,t , Zk,t , Bi,j n2 m + (n − 1)m 2n2 m + 3nS + 6nm − 3m 2nm + nS − m + 1


Sk,t , ECk,t , Cmax
International Journal of Production Research 27

Figure A1. Gantt charts of different decoding methods. (a) Gantt chart of the common decoding method (TEC = 5199, CE = 1050, WE =
60, PE = 4089, Cmax = 210), (b) Gantt chart of the energy-conscious decoding method without the right moves and turning Off and On
strategies (TEC = 4979, CE = 950, WE = 60, PE = 3969, Cmax = 190), and (c) Gantt chart of the energy-conscious decoding method
(TEC = 4939, CE = 950, WE = 60, PE = 3969, Cmax = 190).

DTEC10,5 = P10,5 pt10,5 + (max {60, 50} − 60)Pidle


5
+ P0 max {110 − 110, 0} = 168

DTEC10,6 = P10,6 pt10,6 + ( max {60, 50} − 60)Pidle


6
+ P0 max {110 − 110, 0} = 192

Therefore, Job 10 is assigned to Machine 4. Then, all the jobs are assigned to their machines at Stages 2–3 according to the above
process and Gantt chart illustrated in Figure A1(b) is obtained.
Now, determine which operations are critical. As shown in Figure A1(b), the operations in red are critical. First, all the non-critical jobs
on the machines at Stage 3 are moved right to makespan limit. Then, the non-critical Job 3 on Machine 5 are moved right as far as possible.
Finally, the idle periods of all machines are calculated. Machine 4 with two idle periods which are longer than the breakeven time;
therefore, the turning off and on strategy is applied twice. The final Gantt chart shown in Figure A1(c) is obtained.

You might also like