# Green Scheduling of Jobs and Flexible Periods of Maintenance in a Two-Machine Flowshop to Minimize Makespan, a Measure of Service Level and Total Energy Consumption

Authors: Sadiqi Assia; Ikram El Abbassi; Abdellah El Barkany; Moumen Darcherif; Ahmed El Biyaali
Journal: Advances in Operations Research
 (2020)

---

## Abstract

The success of an industry today depends on its ability to innovate. In terms of energy performance, this innovation is reflected in the ability of manufacturers to implement new solutions or technologies that enable better energy management. In this regard, this paper aims to address this gap by incorporating energy consumption as an explicit criterion in flowshop scheduling of jobs and flexible preventive maintenance. Leveraging the variable speed of machining operations leading to different energy consumption levels, we explore the potential for energy saving in manufacturing. We develop a mixed integer linear multiobjective optimization model for minimizing the makespan and the total energy consumption. In the literature, no papers considering both production scheduling and flexible periods of maintenance with minimizing both objective the total of energy consumption in flowshop and makespan. The performance of the proposed mixed binary integer programming model is evaluated based on the exact method of branch and bound algorithm. A study of the results proved the performance of the model developed.


---

## Body

## 1. Introduction

In industrial sectors, energy efficiency is the ratio between the energy required to produce and the total energy consumed by the plant. Increasing energy efficiency is a very important avenue for financial savings in industry. Indeed, this energy is responsible for almost 80% of greenhouse gas emissions. As demonstrated ten years ago, the potential for improving energy efficiency in the EU is very high and relatively unexploited. It is estimated that the use of energy efficiency would save 150 billion euros per year. This is the basis for the 20/20/20 strategy, which provides for a 20% reduction in greenhouse gases, an increase in the share of renewable energies to 20%, and a 20% reduction in energy consumption by 2020 [1].It potentially becomes a vital necessity for the well being of our communities and our economy. According to the International Energy Agency [2], by 2040, global energy demand will increase by 37%. In parallel with the process of energy production and consumption, an enormous amount of greenhouse gases have been and will be emitted into the atmosphere.As part of our research work, we have integrated energy constraints into the scheduling of production and maintenance jobs of flexible duration in the flowshop. We use variable processing times with different energy consumptions to analyze the trade-off between energy consumption and energy consumption in a two-machine sequence, a scheduling problem flowshop has pending. Our research is partly based on similar trade-offs between speed and fuel emissions in vehicle routing [3]. We argue that, in ﬂowshop manufacturing, there is a trade-off between makespan optimization (which depends on processing and preparation times) and energy consumption. Therefore, the analysis of trade-offs in an efficient way can help decision-making when scheduling production operations [4]. To our knowledge, this problem has not been addressed in the existing literature. This document aims to fill this gap in order to promote the concept of green ordering in the manufacturing sector.The remainder of this document is organized as follows. In the following section, we present a description, a detailed model of the problem considered, and we formulate an improved MILP model. A branch and bound algorithm was used to obtain the MILP model and computational results of the problem. Finally, we draw a conclusion and perspective.


## 2. Literature Review

The manufacturing sector is energy-intensive and is accountable for one-third of total greenhouse gas emissions [5]. On the basis of this observation, the industrial sector is strongly recommended to focus on the control and the reduction of energy consumption and the minimization of production costs.In the literature, Li et al. [6] examined the problem of parallel scheduling of machines in order to minimize the makespan, in which processing times are controllable with limited resource consumption, and critical and noncritical machines are taken into account. These authors wrote a simulated annealing algorithm to solve the problem. Fang and Lin [7] discussed a problem of parallel scheduling of machines to minimize the total delay of the weighed job and the cost of power. The machines are heterogeneous with adjustable processing speeds. To solve the problem, two constructive heuristic methods and a particle swarm optimization (PSO) algorithm are developed. Ji et al. [8] have thus studied a problem of uniform parallel programming of machines to minimize total resource consumption (including carbon emissions, water consumption, and electricity consumption) with a makespan limit. A mixed integer linear programming model is formulated and the high NP hardness of the problem is proven. A heuristic algorithm and a PSO algorithm are then developed to solve the problem.Li et al. [9] studied a problem of programming unrelated parallel machines that minimizes the cost of energy and delay. The energy consumption of the machines for running, idling, and warmup are included. A mathematical model is developed and the two objectives are added together to arrive at a single objective. Heuristic methods with priority rule, energy consumption, and combinatorial rules are proposed to solve the problem.The consideration of efficiency of generation and energy consumption generally requires mixed-use models. There are researchers who are combining multiobjectives into monoobjective and using standard models and methods. Cui and Lu [10] gave a short introduction to the problems of multiobjective optimization and reviewed its application in the area of environmental protection. Liu et al. [11] introduced the nondominated sorting genetic algorithm (NSGA-II) to obtain the Pareto frontier of total energy consumption and total weighted workshop schedule times. Lei et al. [12] constructed a reformulated bounds algorithm to minimize peak demands on total workload and total energy consumption. Li et al. [13] presented a suggested multiobjective optimization algorithm using crossover agents to minimize energy consumption. Considering the speed level and machine turn on/off, the researchers [14–17] proposed a genetic algorithm to minimize makespan and energy consumption. The basis of the analysis of the algorithms is based on the investigation in physical space.In this paper, we focus on research that considers energy in terms of consumption, especially the green scheduling of jobs and flexible periods of maintenance in a two-machine flowshop to minimize makespan, a measure of service level and total energy consumption. As far as we know, no papers considering both production scheduling and flexible periods of maintenance with minimizing the both objective the total of energy consumption in flowshop and makespan; and to make the theory applied in practice more efficaciously.


## 3. Problem Description and Modelling

In this section, a mixed integer linear multiobjective optimization model for integrating the production and PM planning to minimize the makespan and the total energy consumption is explained. With the addition of the constraints for integrating the production and PM scheduling and to minimize the total energy consumption of the workshop on the existed model of [3, 18], this joint model for integrating the production and PM planning to optimize the biobjective of the total energy consumption and makespan simultaneously is inspired from the models presented in [3, 18]. The notation used in this manuscript is displayed in Table 1.Table 1
The notation used to formulate the problem.
Indices
i
,
i
′
Indices of jobs
j
=
1
,
2
Index of machines
s
Index of processing speeds
Parametres
n
Number of jobs
V
s
Processing speed factor;s = 1, 2, 3 for fast, normal, and slow speeds, respectively
S
t
i
,
i
′
,
j
Sequence-dependent setup time for changing from jobi to job i′ on machine j (for i = i′, sti,i,jdenotes the setup time for job I if it is the first job in the sequence)
PM
j
Time required to perform preventive maintenance (PM) on machine j
α
s
Conversion factor for processing speed s
β
j
Conversion factor for idle time on machine j
P
j
Power of machine j
P
0
The common power, which is consumed by auxiliaries equipment and facilities
M
A very large number (set to 1,000,000)
Decision variables
F
i
1
,
if job
i
is the first job
,
0
,
otherwise
.
x
i
,
i
′
1
,
if job
i
is scheduled immediately before job
i
′
where
i
≠
j
,
0
,
otherwise
.
Y
i
,
j
,
s
1
,
if job
i
is processed at speed on  machine
j
,
0
,
otherwise
.
W
i
,
j
1
,
if PM is performed prior  to the
i
t
h
job to  machine
j
,
0
,
otherwise
.
C
i
,
j
Completion time of jobi on machine j
O
i
Setup off set for jobi on the second machine (in case i is the first job in the sequence)
IT
j
Idle time on machinej
C
max
The makespan, the completion time of the last job on the last machine
a
i
,
j
The machine’s age after jobi on machine j
b
i
,
j
The machine’s age before jobi on machine j
TEC
Total energy consumptionWe address a two-machine permutation flowshop scheduling problem with sequence-dependent periods of maintenance where machines have variable speed. Based on the recommendations made by [19], we build a model that is representative of reality with reasonable assumptions and approximations.A set ofn jobs is supposed to be processed on a set of m machines sequentially with fixed, nonnegative time for all jobs.(i)
Each machine can only process one jobi(ii)
Each jobi can only be processed by one machine j at a time(iii)
All jobs are available at the beginning of the scheduling horizon(iv)
The jobs’ sequences in different machines are the same, i.e., permutation flowshop is considered here


### 3.1. Biobjective Function

The biobjective function minimizes the makespanCmax and the total energy consumption (TEC) which mainly includes the energy consumption of machine tools and the common energy consumption. Energy consumption of machine tools can further be divided into processing energy consumption (PEC) and idle energy consumption (IEC) [20–24] which is computed as follows:(1)TEC=PEC+IEC+CEC.The processing energy consumption (PEC) can be calculated as follows:(2)PEC=∑i=1n∑j=12∑s=1SPj⋅Ti,j⋅αs60⋅Vs.The idle energy consumption (IEC) can be calculated as(3)IEC=∑j=12Pj⋅βj60⋅ITj.The common energy consumption can be computed by the following equation:(4)CEC=P0⋅Cmax.Our objective function is to minimize the makespanCmax and the total energy consumption (TEC), which is computed as follows:(5)Fct Obj=Cmax+TEC,(6)Fct Obj=Cmax+PEC+IEC+CEC,(7)Fct Obj=Cmax+∑i=1n∑j=12∑s=1SPj⋅TI,j⋅αs60⋅Vs+∑j=12Pj⋅βj60⋅ITj+P0⋅Cmax.


### 3.2. Modelling of the Problem

The proactive joint model (JM) can be finally established as follows:(8)minimize,Fct obj,subject to,(9)M1−Fi+Oi≥Sti,i,2−Ci,1;i=1,2,…,n,(10)Ci,1≥Ti,1Vs⋅Yi,1,s+Sti,i,2⋅Fi+PM1⋅Wi,1M1−Fi+Oi≥Sti,i,2−Ci,1;i=1,2,…,n,s=1,2,3.(11)Ci,2≥Ci,1+Oi+Ti,2Vs.Yi,2,s+PM2.Wi,2;i=1,2,3,…,n,s=1,2,3,(12)M⋅Fi′+M1−xi,i′+Ci′,j≥Ci,j+Ti′,jVs⋅Yi′,j,s+Sti,i′,j⋅xi,i′+PMj⋅Wi,j;i,i′=1,2,…,n,s=1,2,3,j=1,2i≠i′,(13)b1,j=0,W1,j=0;j=1,2,(14)ai,j=bi,j+∑i=1n∑s=1STi,jVs⋅Yi,j,s;i=1,2,…,n,j=1,2,(15)bi+1,j=ai,j1−Wi+1,j;i=2,3,…,n,j=1,2,(16)Cmax≥Ci,2;i=1,2,…,n,(17)∑i=1nFi=1,(18)∑s=1SYi,j,s=1;i=1,2,…,n,j=1,2,(19)∑i′=1nxi,i′=1;i=1,2,…,ni≠i′,(20)∑i=1nxi,i′=1;i′=1,2,…,ni≠i′,(21)ITj=Cmax−∑i=1n∑s=1STi,jVs⋅Yi,j,s+∑i=1nPMj⋅Wi,j;j=1,2,(22)PEC=∑i=1n∑j=12∑s=1SPj⋅Ti,j⋅αs60⋅Vs,(23)IEC=∑j=12Pj⋅βj60⋅ITj,(24)CEC=P0⋅Cmax,(25)TEC=PEC+IEC+CEC,(26)TEC=∑i=1n∑j=12∑s=1SPj⋅Ti,j⋅αs60⋅Vs+∑j=12Pj⋅βj60⋅ITj+P0⋅Cmax,(27)Ci,j≥0,Oi≥0,ITj≥0,TEC≥0;i=1,2,…,n,j=1,(28)Fi∈0,1,xi,i′∈0,1,Yi,j,s∈0,1;Wi,j∈0,1,i,i′=1,2,…,n,s=1,2,3,j=1,2i≠i′.The Objective Function (8) minimizes Cmax (or makespan) as a measure of service level and TEC. Constraint (9) calculates the amount of time the adjustment interval for the ﬁrst job to be used to determine whether the completion time on machine 2 is postponed. Constraint (10) specifies the time required to carry out the work ﬁrst on the machine 1. Constraint (11) ensures that the time of execution of the job on machine 2 is equal to or higher than the time of execution on the first machine plus their treatment time on the second machine and preventive maintenance PMj when is possible of the i th job(the possible PM time). Note that with Constraints (11) and (12), the completion time of a job on machine 2 is determined as its processing time on machine 2 plus the maximum of its completion time on machine 1, setup time for changing over from its predecessor job in machine 2 and the preventive maintenance PMj when is possible of the i th job (the possible PM time). Constraints (13) indicate the initial system status. Constraint Sets (14) and (15) specify the machine’s age before and after each job i, respectively. Cmax is calculated in Constraint (16) as the completion time of the last job on machine 2. Constraint (17) warrants that there is only one ﬁrst job. Constraint (18) guarantees that exactly one speed factor is selected for each job. The feasibility of the sequence is maintained by Constraints (19) and (20) which produce a sequence of jobs. Idle times on the machines are calculated by Constraint (21). Constraints (22)–(26) establish, respectively, the total processing energy consumption, idle energy consumption, and common energy consumption; Constraint (25) is the total energy consumption. Constraint (26) computes TEC in kilowatt hour. Finally, Constraints (27) and (28) are the nonnegativity and binary constraints for the decision variables.


## 3.1. Biobjective Function

The biobjective function minimizes the makespanCmax and the total energy consumption (TEC) which mainly includes the energy consumption of machine tools and the common energy consumption. Energy consumption of machine tools can further be divided into processing energy consumption (PEC) and idle energy consumption (IEC) [20–24] which is computed as follows:(1)TEC=PEC+IEC+CEC.The processing energy consumption (PEC) can be calculated as follows:(2)PEC=∑i=1n∑j=12∑s=1SPj⋅Ti,j⋅αs60⋅Vs.The idle energy consumption (IEC) can be calculated as(3)IEC=∑j=12Pj⋅βj60⋅ITj.The common energy consumption can be computed by the following equation:(4)CEC=P0⋅Cmax.Our objective function is to minimize the makespanCmax and the total energy consumption (TEC), which is computed as follows:(5)Fct Obj=Cmax+TEC,(6)Fct Obj=Cmax+PEC+IEC+CEC,(7)Fct Obj=Cmax+∑i=1n∑j=12∑s=1SPj⋅TI,j⋅αs60⋅Vs+∑j=12Pj⋅βj60⋅ITj+P0⋅Cmax.


## 3.2. Modelling of the Problem

The proactive joint model (JM) can be finally established as follows:(8)minimize,Fct obj,subject to,(9)M1−Fi+Oi≥Sti,i,2−Ci,1;i=1,2,…,n,(10)Ci,1≥Ti,1Vs⋅Yi,1,s+Sti,i,2⋅Fi+PM1⋅Wi,1M1−Fi+Oi≥Sti,i,2−Ci,1;i=1,2,…,n,s=1,2,3.(11)Ci,2≥Ci,1+Oi+Ti,2Vs.Yi,2,s+PM2.Wi,2;i=1,2,3,…,n,s=1,2,3,(12)M⋅Fi′+M1−xi,i′+Ci′,j≥Ci,j+Ti′,jVs⋅Yi′,j,s+Sti,i′,j⋅xi,i′+PMj⋅Wi,j;i,i′=1,2,…,n,s=1,2,3,j=1,2i≠i′,(13)b1,j=0,W1,j=0;j=1,2,(14)ai,j=bi,j+∑i=1n∑s=1STi,jVs⋅Yi,j,s;i=1,2,…,n,j=1,2,(15)bi+1,j=ai,j1−Wi+1,j;i=2,3,…,n,j=1,2,(16)Cmax≥Ci,2;i=1,2,…,n,(17)∑i=1nFi=1,(18)∑s=1SYi,j,s=1;i=1,2,…,n,j=1,2,(19)∑i′=1nxi,i′=1;i=1,2,…,ni≠i′,(20)∑i=1nxi,i′=1;i′=1,2,…,ni≠i′,(21)ITj=Cmax−∑i=1n∑s=1STi,jVs⋅Yi,j,s+∑i=1nPMj⋅Wi,j;j=1,2,(22)PEC=∑i=1n∑j=12∑s=1SPj⋅Ti,j⋅αs60⋅Vs,(23)IEC=∑j=12Pj⋅βj60⋅ITj,(24)CEC=P0⋅Cmax,(25)TEC=PEC+IEC+CEC,(26)TEC=∑i=1n∑j=12∑s=1SPj⋅Ti,j⋅αs60⋅Vs+∑j=12Pj⋅βj60⋅ITj+P0⋅Cmax,(27)Ci,j≥0,Oi≥0,ITj≥0,TEC≥0;i=1,2,…,n,j=1,(28)Fi∈0,1,xi,i′∈0,1,Yi,j,s∈0,1;Wi,j∈0,1,i,i′=1,2,…,n,s=1,2,3,j=1,2i≠i′.The Objective Function (8) minimizes Cmax (or makespan) as a measure of service level and TEC. Constraint (9) calculates the amount of time the adjustment interval for the ﬁrst job to be used to determine whether the completion time on machine 2 is postponed. Constraint (10) specifies the time required to carry out the work ﬁrst on the machine 1. Constraint (11) ensures that the time of execution of the job on machine 2 is equal to or higher than the time of execution on the first machine plus their treatment time on the second machine and preventive maintenance PMj when is possible of the i th job(the possible PM time). Note that with Constraints (11) and (12), the completion time of a job on machine 2 is determined as its processing time on machine 2 plus the maximum of its completion time on machine 1, setup time for changing over from its predecessor job in machine 2 and the preventive maintenance PMj when is possible of the i th job (the possible PM time). Constraints (13) indicate the initial system status. Constraint Sets (14) and (15) specify the machine’s age before and after each job i, respectively. Cmax is calculated in Constraint (16) as the completion time of the last job on machine 2. Constraint (17) warrants that there is only one ﬁrst job. Constraint (18) guarantees that exactly one speed factor is selected for each job. The feasibility of the sequence is maintained by Constraints (19) and (20) which produce a sequence of jobs. Idle times on the machines are calculated by Constraint (21). Constraints (22)–(26) establish, respectively, the total processing energy consumption, idle energy consumption, and common energy consumption; Constraint (25) is the total energy consumption. Constraint (26) computes TEC in kilowatt hour. Finally, Constraints (27) and (28) are the nonnegativity and binary constraints for the decision variables.


## 4. Computational Results

### 4.1. Tests and Calculation Results

This section is devoted to the exact analysis of the performance of the linear model corresponding to the system under study. However, our mathematical model represents a linear programming for which an exact resolution through a separation and evaluation method integrated in the CPLEX commercial solver of the linear programming is necessary to qualify the complexity and optimality of the problem under consideration.In this approach, minimizingCmax was considered the objective and TEC as a constraint. In this example, processing speed factor was Vs=1.2,1,0.8 for processing at fast, normal, and slow speeds, respectively. The conversion factor, which we used to approximate the energy consumed during the operation, was αs=1.5,1,0.6 for fast, normal, and slow processing speeds, respectively.In order to assess the computational power of the proposed model, it is necessary to examine the problem in its most difficult cases; indeed, 36 different instances for each fixed dimension ofn jobs and m machines have been generated.For all instances, the processing powers P are derived from the uniform distribution (20, 60) with the same conversion factor for idle timesβ1=β2=0.05 Processing times at normal speed and setup times for each job on each machine are given in Table 2; the common power P0 is set to 80. The preventive maintenance time of the PM machine is generated randomly from the set {9, 12, 15}.Table 2
Recapitulation of the calculation results.
Machine
∗Jobs
PM
T
St
P
0
P
C
max
TEC
Time(s)
2
×
3
Inst. 1
5
(1, 15)
(1, 10)
80
(20, 40)
22, 5
1869, 1
00, 13
Inst. 2
9
(15, 20)
(10, 15)
80
(40, 50)
40, 8
3481, 3
00, 16
Inst. 3
12
(20, 25)
(15, 20)
80
(50, 60)
62, 5
5417, 5
00, 18
2
×
5
Inst. 1
5
(1, 15)
(5, 10)
80
(20, 40)
36, 6
3038
00, 14
Inst. 2
9
(15, 20)
(10, 15)
80
(40, 50)
68, 33
5825, 8
00, 16
Inst. 3
12
(20, 25)
(15, 20)
80
(50, 60)
104, 1
9030, 1
00, 19
2
×
7
Inst. 1
5
(1, 15)
(5, 10)
80
(20, 40)
50, 83
4208, 3
00, 17
Inst. 2
9
(15, 20)
(10, 15)
80
(40, 50)
95, 83
8170, 4
00, 20
Inst. 3
12
(20, 25)
(15, 20)
80
(50, 60)
145, 83
12643
00, 21
2
×
10
Inst. 1
5
(1, 15)
(5, 10)
80
(20, 40)
72, 5
5998, 9
00, 18
Inst. 2
9
(15, 20)
(10, 15)
80
(40, 50)
137, 5
11721
00, 19
Inst. 3
12
(20, 25)
(15, 20)
80
(50, 60)
208, 33
18057
00, 23
2
×
15
Inst. 1
5
(1, 15)
(5, 10)
80
(20, 40)
108, 33
8959
00, 23
Inst. 2
9
(15, 20)
(10, 15)
80
(40, 50)
206, 67
17616
00, 27
Inst. 3
12
(20, 25)
(15, 20)
80
(50, 60)
312, 5
27084
00, 29
2
×
20
Inst. 1
5
(1, 15)
(5, 10)
80
(20, 40)
144, 17
11919
00, 36
Inst. 2
9
(15, 20)
(10, 15)
80
(40, 50)
275, 83
23511
00, 49
Inst. 3
12
(20, 25)
(15, 20)
80
(50, 60)
416, 67
36111
00, 51
2
×
40
Inst. 1
5
(1, 15)
(5, 10)
80
(20, 40)
288, 33
23838
02, 50
Inst. 2
9
(15, 20)
(10, 15)
80
(40, 50)
551, 67
47022
02, 52
Inst. 3
12
(20, 25)
(15, 20)
80
(50, 60)
833, 33
72218
03, 61
2
×
50
Inst. 1
5
(1, 15)
(5, 10)
80
(20, 40)
360, 83
29837
06, 65
Inst. 2
9
(15, 20)
(10, 15)
80
(40, 50)
689, 17
58744
08, 77
Inst. 3
12
(20, 25)
(15, 20)
80
(50, 60)
1041, 7
90280
10, 88
2
×
80
Inst. 1
5
(1, 15)
(5, 10)
80
(20, 40)
577, 5
47755
27, 96
Inst. 2
9
(15, 20)
(10, 15)
80
(40, 50)
1102, 5
93976
29, 76
Inst. 3
12
(20, 25)
(15, 20)
80
(50, 60)
1666, 7
144363, 7
50, 16
2
×
100
Inst. 1
5
(1, 15)
(5, 10)
80
(20, 40)
721, 67
59675
1204, 17
Inst. 2
9
(15, 20)
(10, 15)
80
(40, 50)
1378, 3
117484, 13
1846, 26
Inst. 3
12
(20, 25)
(15, 20)
80
(50, 60)
2083, 3
180557, 5
1945, 54
2
×
200
Inst. 1
5
(1, 15)
(5, 10)
80
(20, 40)
1443, 3
121068, 8
2004, 97
Inst. 2
9
(15, 20)
(10, 15)
80
(40, 50)
2756, 7
234976, 2
2009, 17
Inst. 3
12
(20, 25)
(15, 20)
80
(50, 60)
4166, 7
361123, 1
2343, 22
2
×
400
Inst. 1
5
(1, 15)
(5, 10)
80
(20, 40)
Out of memory
2143, 17
Inst. 2
9
(15, 20)
(10, 15)
80
(40, 50)
3233, 05
Inst. 3
12
(20, 25)
(15, 20)
80
(50, 60)
3476, 44The size of the problemm,n is set as shown in Table 2.Table2 reports the average calculation times obtained from the CPU in seconds using CPLEX 12.6 software to find the optimal total energy consumption for integrated scheduling problems in production and preventive maintenance tasks. To have more insight into the capability of the above model, comparative studies of the average computation times between small and large problems are carried out as shown in Table 2.All MILP formulations are modelled using IBM ILOG CPLEX12.6 and the OPL language. The 54 instances are solved on an HP 4300U notebook computer with an Intel Core i5 Duo processor running at 2.50 GHz and 8 GB of RAM memory. The time limit is set at 3600 seconds. In other words, the analyses are completed after 3600 seconds. If no optimal solution is obtained within 3600 seconds, the best current solution is returned.Our proposed MILP model is able to find the optimal solution in record time and, more precisely, within a reasonable time frame. Nevertheless, for a large problem, the MILP requires a relatively excessive amount of time.


### 4.2. Analysis of the Results

Compared to all the problems considered, the average calculation times are relatively reasonable (less than two seconds) when the size of the problem is less than 2∗40 (2 machines and 40 jobs). As soon as the size is larger than 2∗40, the calculation times become very important as shown in Figure 1.Figure 1
Average execution times for different instances.As shown in Figures2 and 3, the average calculation times are relatively reasonable for both small and large problems (less than two seconds) as long as the problem is less than 40 jobs. As soon as the size is equal to 40 jobs, computing times become very important. For example, for the third instance of the problem (2 machines and 40 jobs), the execution time is 03.61 seconds.Figure 2
Comparison of average execution times for small problems.Figure 3
Comparison of average execution times for large problems.To further illustrate the impact of TEC on Cmax, a comparative study of the evolution of total energy consumption and makespan as a function of average execution times is established for small-scale problems as shown in Figure 4. In addition, because the TEC values are much larger than the Cmax values, a better illustration of the Cmax values is shown in Figure 5.Figure 4
Evolution of the total energy consumption and the makespan, depending on the instances.Figure 5
Evolution of the makespan, depending on the instances.From Figure4, it can be seen that if two machines are processed and the number of tasks varies, a considerable variation in TEC is seen. In addition, if we take the case of the 3rd instance for workshops (2 × 3), (2 × 5), (2 × 7), (2 × 10), (2 × 15), and (2 × 200), we notice a variation in energy consumption (5417.5, 9030.1, 12643, 18057, 27084, and 361123.1), respectively.The observation is that generally the number of jobs processed in machines has a significant influence on the optimal value of energy consumption.With regard to the makespan, the values provided in Table (2) and Figures 4 and 5 show that increasing the final completion date of all tasks results in a significant increase in energy consumption. For the third instance of problems (2 × 3), (2 × 5), (2 × 7), (2 × 7), (2 × 10), (2 × 15), and (2 × 200) the completion time of all Cmax tasks is equal to (62.5, 104.1, 145.83, 208.33, 312.5, and 4166.7) and the resulting energy consumption is (5417.5, 9030.1, 12643, 18057, 27084, and 361123.1); respectively as shown in Table 2.According to the figures, we arrive at the same conclusion for problems of small and large sizes; the variation in energy consumption depends on the type of workshop studied and the number of tasks performed.On the other hand, it is obvious that the makespan increases with the increase in the number of tasks, but its value remains almost negligible compared to the total energy consumption as shown in Table2 and in Figures 4 and 5.


## 4.1. Tests and Calculation Results

This section is devoted to the exact analysis of the performance of the linear model corresponding to the system under study. However, our mathematical model represents a linear programming for which an exact resolution through a separation and evaluation method integrated in the CPLEX commercial solver of the linear programming is necessary to qualify the complexity and optimality of the problem under consideration.In this approach, minimizingCmax was considered the objective and TEC as a constraint. In this example, processing speed factor was Vs=1.2,1,0.8 for processing at fast, normal, and slow speeds, respectively. The conversion factor, which we used to approximate the energy consumed during the operation, was αs=1.5,1,0.6 for fast, normal, and slow processing speeds, respectively.In order to assess the computational power of the proposed model, it is necessary to examine the problem in its most difficult cases; indeed, 36 different instances for each fixed dimension ofn jobs and m machines have been generated.For all instances, the processing powers P are derived from the uniform distribution (20, 60) with the same conversion factor for idle timesβ1=β2=0.05 Processing times at normal speed and setup times for each job on each machine are given in Table 2; the common power P0 is set to 80. The preventive maintenance time of the PM machine is generated randomly from the set {9, 12, 15}.Table 2
Recapitulation of the calculation results.
Machine
∗Jobs
PM
T
St
P
0
P
C
max
TEC
Time(s)
2
×
3
Inst. 1
5
(1, 15)
(1, 10)
80
(20, 40)
22, 5
1869, 1
00, 13
Inst. 2
9
(15, 20)
(10, 15)
80
(40, 50)
40, 8
3481, 3
00, 16
Inst. 3
12
(20, 25)
(15, 20)
80
(50, 60)
62, 5
5417, 5
00, 18
2
×
5
Inst. 1
5
(1, 15)
(5, 10)
80
(20, 40)
36, 6
3038
00, 14
Inst. 2
9
(15, 20)
(10, 15)
80
(40, 50)
68, 33
5825, 8
00, 16
Inst. 3
12
(20, 25)
(15, 20)
80
(50, 60)
104, 1
9030, 1
00, 19
2
×
7
Inst. 1
5
(1, 15)
(5, 10)
80
(20, 40)
50, 83
4208, 3
00, 17
Inst. 2
9
(15, 20)
(10, 15)
80
(40, 50)
95, 83
8170, 4
00, 20
Inst. 3
12
(20, 25)
(15, 20)
80
(50, 60)
145, 83
12643
00, 21
2
×
10
Inst. 1
5
(1, 15)
(5, 10)
80
(20, 40)
72, 5
5998, 9
00, 18
Inst. 2
9
(15, 20)
(10, 15)
80
(40, 50)
137, 5
11721
00, 19
Inst. 3
12
(20, 25)
(15, 20)
80
(50, 60)
208, 33
18057
00, 23
2
×
15
Inst. 1
5
(1, 15)
(5, 10)
80
(20, 40)
108, 33
8959
00, 23
Inst. 2
9
(15, 20)
(10, 15)
80
(40, 50)
206, 67
17616
00, 27
Inst. 3
12
(20, 25)
(15, 20)
80
(50, 60)
312, 5
27084
00, 29
2
×
20
Inst. 1
5
(1, 15)
(5, 10)
80
(20, 40)
144, 17
11919
00, 36
Inst. 2
9
(15, 20)
(10, 15)
80
(40, 50)
275, 83
23511
00, 49
Inst. 3
12
(20, 25)
(15, 20)
80
(50, 60)
416, 67
36111
00, 51
2
×
40
Inst. 1
5
(1, 15)
(5, 10)
80
(20, 40)
288, 33
23838
02, 50
Inst. 2
9
(15, 20)
(10, 15)
80
(40, 50)
551, 67
47022
02, 52
Inst. 3
12
(20, 25)
(15, 20)
80
(50, 60)
833, 33
72218
03, 61
2
×
50
Inst. 1
5
(1, 15)
(5, 10)
80
(20, 40)
360, 83
29837
06, 65
Inst. 2
9
(15, 20)
(10, 15)
80
(40, 50)
689, 17
58744
08, 77
Inst. 3
12
(20, 25)
(15, 20)
80
(50, 60)
1041, 7
90280
10, 88
2
×
80
Inst. 1
5
(1, 15)
(5, 10)
80
(20, 40)
577, 5
47755
27, 96
Inst. 2
9
(15, 20)
(10, 15)
80
(40, 50)
1102, 5
93976
29, 76
Inst. 3
12
(20, 25)
(15, 20)
80
(50, 60)
1666, 7
144363, 7
50, 16
2
×
100
Inst. 1
5
(1, 15)
(5, 10)
80
(20, 40)
721, 67
59675
1204, 17
Inst. 2
9
(15, 20)
(10, 15)
80
(40, 50)
1378, 3
117484, 13
1846, 26
Inst. 3
12
(20, 25)
(15, 20)
80
(50, 60)
2083, 3
180557, 5
1945, 54
2
×
200
Inst. 1
5
(1, 15)
(5, 10)
80
(20, 40)
1443, 3
121068, 8
2004, 97
Inst. 2
9
(15, 20)
(10, 15)
80
(40, 50)
2756, 7
234976, 2
2009, 17
Inst. 3
12
(20, 25)
(15, 20)
80
(50, 60)
4166, 7
361123, 1
2343, 22
2
×
400
Inst. 1
5
(1, 15)
(5, 10)
80
(20, 40)
Out of memory
2143, 17
Inst. 2
9
(15, 20)
(10, 15)
80
(40, 50)
3233, 05
Inst. 3
12
(20, 25)
(15, 20)
80
(50, 60)
3476, 44The size of the problemm,n is set as shown in Table 2.Table2 reports the average calculation times obtained from the CPU in seconds using CPLEX 12.6 software to find the optimal total energy consumption for integrated scheduling problems in production and preventive maintenance tasks. To have more insight into the capability of the above model, comparative studies of the average computation times between small and large problems are carried out as shown in Table 2.All MILP formulations are modelled using IBM ILOG CPLEX12.6 and the OPL language. The 54 instances are solved on an HP 4300U notebook computer with an Intel Core i5 Duo processor running at 2.50 GHz and 8 GB of RAM memory. The time limit is set at 3600 seconds. In other words, the analyses are completed after 3600 seconds. If no optimal solution is obtained within 3600 seconds, the best current solution is returned.Our proposed MILP model is able to find the optimal solution in record time and, more precisely, within a reasonable time frame. Nevertheless, for a large problem, the MILP requires a relatively excessive amount of time.


## 4.2. Analysis of the Results

Compared to all the problems considered, the average calculation times are relatively reasonable (less than two seconds) when the size of the problem is less than 2∗40 (2 machines and 40 jobs). As soon as the size is larger than 2∗40, the calculation times become very important as shown in Figure 1.Figure 1
Average execution times for different instances.As shown in Figures2 and 3, the average calculation times are relatively reasonable for both small and large problems (less than two seconds) as long as the problem is less than 40 jobs. As soon as the size is equal to 40 jobs, computing times become very important. For example, for the third instance of the problem (2 machines and 40 jobs), the execution time is 03.61 seconds.Figure 2
Comparison of average execution times for small problems.Figure 3
Comparison of average execution times for large problems.To further illustrate the impact of TEC on Cmax, a comparative study of the evolution of total energy consumption and makespan as a function of average execution times is established for small-scale problems as shown in Figure 4. In addition, because the TEC values are much larger than the Cmax values, a better illustration of the Cmax values is shown in Figure 5.Figure 4
Evolution of the total energy consumption and the makespan, depending on the instances.Figure 5
Evolution of the makespan, depending on the instances.From Figure4, it can be seen that if two machines are processed and the number of tasks varies, a considerable variation in TEC is seen. In addition, if we take the case of the 3rd instance for workshops (2 × 3), (2 × 5), (2 × 7), (2 × 10), (2 × 15), and (2 × 200), we notice a variation in energy consumption (5417.5, 9030.1, 12643, 18057, 27084, and 361123.1), respectively.The observation is that generally the number of jobs processed in machines has a significant influence on the optimal value of energy consumption.With regard to the makespan, the values provided in Table (2) and Figures 4 and 5 show that increasing the final completion date of all tasks results in a significant increase in energy consumption. For the third instance of problems (2 × 3), (2 × 5), (2 × 7), (2 × 7), (2 × 10), (2 × 15), and (2 × 200) the completion time of all Cmax tasks is equal to (62.5, 104.1, 145.83, 208.33, 312.5, and 4166.7) and the resulting energy consumption is (5417.5, 9030.1, 12643, 18057, 27084, and 361123.1); respectively as shown in Table 2.According to the figures, we arrive at the same conclusion for problems of small and large sizes; the variation in energy consumption depends on the type of workshop studied and the number of tasks performed.On the other hand, it is obvious that the makespan increases with the increase in the number of tasks, but its value remains almost negligible compared to the total energy consumption as shown in Table2 and in Figures 4 and 5.


## 5. Conclusion and Perspective

This paper aims to address this gap by incorporating energy consumption as an explicit criterion in shop floor scheduling. Leveraging the variable speed of machining operations leading to different energy consumption levels, we explore the potential for energy saving in manufacturing. We analyse the relation between minimizing makespan, a measure of service level, and total energy consumption, an indicator for environmental sustainability of a two-machine sequence-dependent permutation flowshop. The performance of the proposed mixed binary integer programming model is evaluated based on the exact method of separation and integrated evaluation on the CPLEX solver. A comparative study of the results provided proved the performance of the model developed. The results found highlighted that the aspect of the MILP developed is on a large scale in the quality of computation times. In addition, the suggested MILP can optimally solve the problem within a reasonable time for a small problem, but it involves excessive time. Nevertheless, the results are considered tolerable since the proposed formulation requires less than 3476. 44 seconds of computation time. To tackle large-size problem, we will develop an efficient two-stage heuristic.



---

*Source: 9732563-2020-04-14.xml*