# An Ant Optimization Model for Unrelated Parallel Machine Scheduling with Energy Consumption and Total Tardiness

Authors: Peng Liang; Hai-dong Yang; Guo-sheng Liu; Jian-hua Guo
Journal: Mathematical Problems in Engineering
 (2015)

---

## Abstract

This research considers an unrelated parallel machine scheduling problem with energy consumption and total tardiness. This problem is compounded by two challenges: differences of unrelated parallel machines energy consumption and interaction between job assignments and machine state operations. To begin with, we establish a mathematical model for this problem. Then an ant optimization algorithm based on ATC heuristic rule (ATC-ACO) is presented. Furthermore, optimal parameters of proposed algorithm are defined via Taguchi methods for generating test data. Finally, comparative experiments indicate the proposed ATC-ACO algorithm has better performance on minimizing energy consumption as well as total tardiness and the modified ATC heuristic rule is more effectively on reducing energy consumption.


---

## Body

## 1. Introduction

In recent years, energy saving has been growing a great interest due to sequence of serious environmental impacts and rising energy cost [1–3]. In manufacturing industry, machine energy consumption can be characterized by power, process time, and state of machines [4]. In particular, a large amount of energy is wasted while keeping idle machine running (i.e., not processing jobs but still running machine) [5–7]. Research on Wichita, an aircraft small-part supplier, shows that at least 13% of total energy consumption can be saved by simply turning off machines while they are not processing any jobs [8]. Kordonowy [9] investigates the background runtime operations of machine and observes that more than 30% of input energy is consumed by background processes. What is more, Drake et al. [10] show that there is a significant amount of energy consumption while machine keeps on idling when no jobs are processed.As a result, research on minimizing energy consumption with machine operation scheduling should be of benefit to energy saving and reducing carbon dioxide emissions. Only a few references consider the objective of energy consumption [4, 11]. Swaminathan and Chakrabarty [12] considered energy consumption in control systems to extend the life of batteries. Research on Tiwari et al. [13] proved that there is about 40% energy saving when proper power control software is used in microprocessor manufacturing. Mouzon and Yildirim [14] considered the problem of minimizing total energy consumption and total tardiness on signal machine. The total energy consumption is measured by summation of idle power and machine setup power. However, the key to save energy on single machine problem is to determine if the machine should be turned off or not during idle time. Yildirim and Mouzon [15] gave a math mathematical model for minimizing total energy consumption as well as max completion time on signal machine. A conventional genetic algorithm is adopted.Actually, most of manufacturing systems are unrelated parallel machines. Furthermore, the manager should consider not only the energy consumption costs, but also the due dates of jobs. Ant colony optimization (ACO) algorithm has become more preferable to solve combinatorial optimization problems [16–18]. Yagmahan and Yenisey proposed a multiobjective ant colony system algorithm to solve a flow shop scheduling problem with respect to both of makespan and total flowtime [19]. Lin et al. [20] considered an ACO algorithm to solve the problem of scheduling unrelated parallel machines to minimize total weighted tardiness. Arnaout et al. [21] addressed the nonpreemptive unrelated parallel machine scheduling problem with machine dependent and sequence-dependent setup times via a modified ACO algorithm. The results showed that ACO outperformed the other algorithms. In this paper, we begin the research of minimizing energy consumption and total tardiness on unrelated parallel machines. The energy consumption of each machine is composed of power cost of machine setup (i.e., machine turning off and then turning on) and power wasted during machine idle period. The problem is formulated by a weighted summation of energy consumption and total tardiness. For solving this problem, we develop an ACO algorithm with ATC rules in which a machine reselection operation is applied.After this introduction, we describe the problem in Section2 and the mathematical model is presented in Section 3. The proposed ATC-ACO algorithm is set out in Section 4. Computation results and comparative analysis on 27 test problem configurations and 2187 experiments’ results are shown in Section 5. Finally, the main conclusions are included in Section 6.


## 2. Problem Definition

In this section, a mathematical model is proposed for unrelated parallel machines with the objective of minimizing energy consumption and total tardiness, which is NP-hard, since minimizing energy consumption and total tardiness on single machine is proved to be NP-hard [14]. There are n independent jobs that have to be processed on m parallel machines. Each job can be processed by only one machine and each machine is continuously available. Each job j arrives at time r
j and has a process time p
i
j on machine i and a due date d
j. The total tardiness is defined as ∑
max
⁡
⁡
(
C
j
-
d
j
,
0
), where C
j represent the completion time of job j. The machine characteristics are defined as follows. Machine i consumes power P
i
d
l
e
i while machine stands idle. Furthermore, machine i consumes power E
s
e
t
u
p
i when it is turned off and then turned on (i.e., a setup occurs). To solve this problem, total tardiness and energy consumption must be considered together. If there is a long idle period between two jobs, it may choose to turn off machine to save energy. It means that when the idle energy consumption P
i
d
l
e
i
∗
T
i
d
l
e is greater than machine setup energy consumption E
s
e
t
u
p
i, the machine i will be turned off to save energy. Finally, we conclude the breakeven duration T
B
i is the ratio of machine setup energy consumption E
s
e
t
u
p
i to machine idle energy consumption P
i
d
l
e
i:(1)
T
B
i
=
E
s
e
t
u
p
i
P
i
d
l
e
i
.Unlike single machine scheduling framework proposed by Yildirim and Mouzon [15], unrelated parallel machines scheduling problem is much more complicated. Job assignment is affected not only by the processing time and tardiness cost, but also by the state of machine, which is illustrated on two-machine example in Figure 1. Assume six jobs denoted {
J
1
,
J
2
,
…
,
J
6
} are scheduled on two machines denoted {
M
1
,
M
2
}. The process time p
i
j, release time r
j, and due date d
j are listed in Table 1. We use horsepower (hp) as the unit of power consumption. The setup energy is defined as E
s
e
t
u
p
1
=
5 hp and E
s
e
t
u
p
2
=
9 hp, idle power consumption is set to P
i
d
l
e
1
=
1 hp/sec and P
i
d
l
e
2
=
2 hp/sec, and tardiness cost is set to P
t
a
r
d
i
n
e
s
s
j
=
1 hp/sec, j
=
1,2
,
…
,
6.Table 1
Process time, release time, and due date of each job.
Job
J
1
J
2
J
3
J
4
J
5
J
6
p
1
j
2
5
5
2
8
2
p
2
j
7
3
9
5
14
2
r
j
12
0
1
10
11
17
d
j
19
7
10
18
22
20Figure 1
An illustration of a feasible solution for scheduling on two unrelated parallel machines with six jobs.As can be seen in Figure1, a feasible solution is decided by making three decisions: machine assignment, job sequencing, and machine state (idling or from turning off to turning on). According to the definition of setup energy, tardiness, and idle power consumption, the breakeven durations T
B
1, T
B
2 are 5 sec and 4.5 sec, respectively. Whether keeping machine idle or performing a machine setup depends on the comprising breakeven duration T
B
i with waiting times between jobs. Furthermore, assigning jobs on machines relies not only on processing cost and machine available time, but also on setup energy and idle power consumption. Note that J
6 arrived at time 17, the tardiness of J
6 is 2 hp in solution 1, while idle power consumption between J
1 and J
6 is 3 hp in solution 2. In order to select an appropriate solution minimization of energy consumption and total tardiness on unrelated parallel machines, an ant colony optimization framework is proposed.


## 3. Mathematical Model

Basic Notions
m: the number of machines;
n: the number of jobs;
J
j: the job j, j
=
1,2
,
…
,
n;
M
i: the machine i, i
=
1,2
,
…
,
m;
H
i: the number of jobs allocated on machine M
i;
w
1: weight associated with total tardiness;
w
2: weight associated with energy consumption;
c
j: the completion time of job J
j;
r
j: the release time of job J
j;
d
j: the due date of job J
j;
t
i: the makespan of scheduled jobs on machine M
i;
p
i
j: the process time of job J
j on machine M
i;
P
t
a
r
d
i
n
e
s
s
j: per unit time cost of job J
j tardiness;
P
i
d
l
e
i: per unit time energy consumption of machine M
i.Decision Variables. Consider(2)
y
i
l
k
=
P
i
d
l
e
i
c
k
-
p
i
k
-
c
l
,
I
f
c
k
-
p
i
k
-
c
l
<
T
B
i
a
n
d
j
o
b
J
l
p
r
e
c
e
d
e
s
j
o
b
J
k
E
s
e
t
u
p
i
,
o
t
h
e
r
w
i
s
e
.The definition of minimizing energy consumption and total tardiness on unrelated parallel machines is formulated as follows:(3)
Min
⁡
w
1
∑
j
=
1
n
P
t
a
r
d
i
n
e
s
s
j
max
⁡
0
,
c
j
-
d
j
+
w
2
∑
i
=
1
m
∑
k
=
1
,
k
≠
j
H
i
∑
l
=
1
H
i
y
i
l
k
(4)
c
j
-
p
i
j
≥
r
j
(5)
c
l
-
p
i
l
≥
c
k
o
r
c
k
-
p
i
k
≥
c
l
(6)
I
f
c
k
-
p
i
k
-
c
l
<
T
B
i
a
n
d
j
o
b
J
l
i
m
m
e
d
i
a
t
e
l
y
p
r
e
c
e
d
e
s
j
o
b
J
k
o
n
m
a
c
h
i
n
e
i
t
h
e
n
y
i
l
k
=
P
i
d
l
e
i
c
k
-
p
i
k
-
c
l
,
e
l
s
e
y
i
l
k
=
E
s
e
t
u
p
i
(7)
∀
i
=
1,2
,
…
,
m
∀
j
=
1,2
,
…
,
n
∀
l
=
1,2
,
…
,
H
i
∀
k
=
1,2
,
…
,
H
i
,
k
≠
l
.Our multiobjective function is started in (3) which aims at minimizing the weighted summation of energy consumption and total tardiness. Constraint (4) guarantees that a job cannot be processed before it is released. Constraint (5) ensures that only one job could be processed on each machine at the same time. Constraint (6) defines that if waiting time between job J
l and job J
k (job J
l precedes job J
k) on machine M
i is longer than machine breakeven duration T
B
i, then y
i
l
k is equal to the corresponding machine setup energy consumption or otherwise equal to the corresponding machine idle power consumption.


## 4. Ant Colony Optimization Algorithm Based on ATC Heuristic Rule (ACO-ATC)

The ACO algorithm imitates the indirect communications within artificial ants to find the shortest path between food and their net. These communications are recorded by artificial pheromone trails. Naturally, pheromone in long paths will evaporate much quicker than short paths, and then short paths will attract more ants for denser pheromone. In this section, we propose an ACO-ATC algorithm to solve the problem of scheduling unrelated parallel machines to minimize energy consumption and total tardiness. Details of proposed algorithm are described in the following subsections.


### 4.1. Solution Construction

The solution component for scheduling unrelated parallel machines to minimize energy consumption and total tardiness required two decisions: assignment and job sequence, which will result in a huge solution space. Consequently, the two decisions are often addressed independently to reduce the solution search space, such as selecting the first available machine and then distributing the minimization total tardiness job. Finally, after the solution is constructed, machine states are fixed according to the job sequence.Although this strategy could significantly reduce the search space, appealing solutions may be excluded due to the independent decision heuristic. As can be seen in Figure1, the available machine (M
1) selected in the first scheduled strategy may not be the minimization energy consumption and total tardiness for selected job (J
6) in the second scheduled strategy. Inspired by ATC heuristic rule proposed by Lin et al. [20], we modify a new solution construction mechanism requiring three step: first, machine selection, then job selection, and finally machine reselection. Details of modified solution construction are shown as follows.


#### 4.1.1. Machine Selection

First, a machine will be selected. We generate a random numberq
m from uniform distribution [
0
,
1
]. A user-specified number q
m
0
=
0.9 represents the relative importance of exploitation versus exploration. If q
m
<
q
m
0 an ant is apt to select the smallest makespan machine among all unrelated parallel machines according to (8); otherwise a machine I is chosen according to the probability distribution P
i defined in (9)(8)
i
∗
=
min
⁡
1
≤
i
≤
m
t
i
,
if
q
m
<
q
m
0
I
,
otherwise,
(9)
P
i
=
1
/
t
i
∑
p
=
1
m
1
/
t
p
i
=
1,2
,
…
,
m
.


#### 4.1.2. Job Selection

A job will be selected after a machine has been chosen. Job selection defined in (10) considers the heuristic information and pheromone trails together. We generate a random number q
j from uniform distribution [
0
,
1
]. q
j
0
=
0.9 is a user-specified number. If q
j
<
q
j
0 an ant is apt to select the smallest tardiness job j processed on machine i
∗ according to (10); otherwise a job J is chosen according to the probability distribution P
i
∗
j defined in (11). Pheromone trails τ
i
∗
j
(
t
) indicate the favorability of assigning job j to a machine i
∗ and set to 0 initially. η
i
∗
j
(
t
) is heuristic information which suggests the greedy heuristic of processing the job j on machine i
∗ that takes the least amount of tardiness, which is presented in (12). Parameters α and β are the relative importance of pheromone trails and heuristic information, respectively. Ψ represents a set of unscheduled jobs in (11)(10)
j
∗
=
max
⁡
j
τ
i
∗
j
t
α
·
η
i
∗
j
t
β
,
i
f
q
j
<
q
j
0
J
,
otherwise,
(11)
P
i
∗
j
=
τ
i
∗
j
t
α
·
η
i
∗
j
t
β
∑
l
∈
Ψ
τ
i
∗
l
t
α
·
η
i
∗
l
t
β
,
if
j
∈
Ψ
0
,
otherwise,
(12)
η
i
∗
j
t
=
1
P
t
a
r
d
i
n
e
s
s
j
×
max
⁡
t
i
∗
+
p
i
j
∗
-
d
j
∗
,
0
+
1
.


#### 4.1.3. Machine Reselection

Since the computation of energy consumption and total tardiness need to confirm machine and job sequence simultaneously, the independent selection strategy may not find the appealing solution. In order to solve this problem, a machine reselection will be executed after jobj
∗ has been selected. An ant will select machine i
∗
∗ according to (13), which aims at minimizing the weighted sum of energy consumption and total tardiness when processing job j
∗ on machine i
∗
∗:(13)
i
∗
∗
=
arg min
U
i
j
∗
×
min
⁡
E
setup
i
,
P
idle
i
r
j
∗
-
t
i
+
P
tardiness
j
1
-
U
i
j
∗
×
max
⁡
t
i
+
p
i
j
∗
-
d
j
∗
,
0
U
i
j
∗
=
0
,
i
f
r
j
∗
≤
t
i
1
,
o
t
h
e
r
w
i
s
e
.After three steps (machine selection, job selection, and machine reselection) are executed, a jobj is assigned to a machine i
∗. Repeat the operations above until all jobs are distributed; then a solution construction is finished.


### 4.2. Local Search

Dorigo and Stützle [22] have proved that ACO algorithm may be further improved by incorporating an appropriate local search algorithm. Therefore, we include two local search strategies (LS1 and LS2) in our implementation of ACO-ATC algorithm.The first procedure (LS1) searches for new solutions by swapping jobs on the same machine. The second procedure (LS2) searches for new solution by transferring jobs from the machine with the highest objective value to the machine with the lowest one. The computation of its implementation isO
(
m
∗
n
2
). The pseudocode for local search algorithm is summarized in Pseudocode 1.Algorithm 1
Local Search Algorithm:
SetIterationNum = 1;
While (IterationNum  <  MaxIterationNum)
For each machine i
For each job j
1 in machine i
For each job j
2 (j
2
≠
j
1) in machine  i
Construct new solution by exchanging two jobs
If the new solution is better than current one, then exchange two jobs
Find the machine i
1 with the highest objective value
Find the machine i
2 with the lowest objective value
For each j
1 in machine i
1
For each j
2 in machine i
2
Construct new solution by exchanging two jobs
If the new solution is better than current one, then exchange two jobs


### 4.3. Pheromone Update

Once all ants have constructed their solutions, global pheromone updating rules are performed. Initially, there are no pheromone trails on all solutions. The global pheromone updating rules are defined as follows:(14)
τ
i
j
=
1
-
ρ
τ
i
j
+
ρ
Δ
τ
i
j
,
Δ
τ
i
j
=
1
L
b
e
s
t
,
i
f
i
,
j
∈
b
e
s
t
s
o
l
u
t
i
o
n
0
,
o
t
h
e
r
w
i
s
e
.Global updating is intended to provide more pheromone to the best performance solution. Pheromone evaporation rateρ
(
0
<
ρ
<
1
) is used to forget bad solutions and to explore new solutions. The pheromone amount of all solution components is updated by increasing the reciprocal of the best objective value L
b
e
s
t.


## 4.1. Solution Construction

The solution component for scheduling unrelated parallel machines to minimize energy consumption and total tardiness required two decisions: assignment and job sequence, which will result in a huge solution space. Consequently, the two decisions are often addressed independently to reduce the solution search space, such as selecting the first available machine and then distributing the minimization total tardiness job. Finally, after the solution is constructed, machine states are fixed according to the job sequence.Although this strategy could significantly reduce the search space, appealing solutions may be excluded due to the independent decision heuristic. As can be seen in Figure1, the available machine (M
1) selected in the first scheduled strategy may not be the minimization energy consumption and total tardiness for selected job (J
6) in the second scheduled strategy. Inspired by ATC heuristic rule proposed by Lin et al. [20], we modify a new solution construction mechanism requiring three step: first, machine selection, then job selection, and finally machine reselection. Details of modified solution construction are shown as follows.


### 4.1.1. Machine Selection

First, a machine will be selected. We generate a random numberq
m from uniform distribution [
0
,
1
]. A user-specified number q
m
0
=
0.9 represents the relative importance of exploitation versus exploration. If q
m
<
q
m
0 an ant is apt to select the smallest makespan machine among all unrelated parallel machines according to (8); otherwise a machine I is chosen according to the probability distribution P
i defined in (9)(8)
i
∗
=
min
⁡
1
≤
i
≤
m
t
i
,
if
q
m
<
q
m
0
I
,
otherwise,
(9)
P
i
=
1
/
t
i
∑
p
=
1
m
1
/
t
p
i
=
1,2
,
…
,
m
.


### 4.1.2. Job Selection

A job will be selected after a machine has been chosen. Job selection defined in (10) considers the heuristic information and pheromone trails together. We generate a random number q
j from uniform distribution [
0
,
1
]. q
j
0
=
0.9 is a user-specified number. If q
j
<
q
j
0 an ant is apt to select the smallest tardiness job j processed on machine i
∗ according to (10); otherwise a job J is chosen according to the probability distribution P
i
∗
j defined in (11). Pheromone trails τ
i
∗
j
(
t
) indicate the favorability of assigning job j to a machine i
∗ and set to 0 initially. η
i
∗
j
(
t
) is heuristic information which suggests the greedy heuristic of processing the job j on machine i
∗ that takes the least amount of tardiness, which is presented in (12). Parameters α and β are the relative importance of pheromone trails and heuristic information, respectively. Ψ represents a set of unscheduled jobs in (11)(10)
j
∗
=
max
⁡
j
τ
i
∗
j
t
α
·
η
i
∗
j
t
β
,
i
f
q
j
<
q
j
0
J
,
otherwise,
(11)
P
i
∗
j
=
τ
i
∗
j
t
α
·
η
i
∗
j
t
β
∑
l
∈
Ψ
τ
i
∗
l
t
α
·
η
i
∗
l
t
β
,
if
j
∈
Ψ
0
,
otherwise,
(12)
η
i
∗
j
t
=
1
P
t
a
r
d
i
n
e
s
s
j
×
max
⁡
t
i
∗
+
p
i
j
∗
-
d
j
∗
,
0
+
1
.


### 4.1.3. Machine Reselection

Since the computation of energy consumption and total tardiness need to confirm machine and job sequence simultaneously, the independent selection strategy may not find the appealing solution. In order to solve this problem, a machine reselection will be executed after jobj
∗ has been selected. An ant will select machine i
∗
∗ according to (13), which aims at minimizing the weighted sum of energy consumption and total tardiness when processing job j
∗ on machine i
∗
∗:(13)
i
∗
∗
=
arg min
U
i
j
∗
×
min
⁡
E
setup
i
,
P
idle
i
r
j
∗
-
t
i
+
P
tardiness
j
1
-
U
i
j
∗
×
max
⁡
t
i
+
p
i
j
∗
-
d
j
∗
,
0
U
i
j
∗
=
0
,
i
f
r
j
∗
≤
t
i
1
,
o
t
h
e
r
w
i
s
e
.After three steps (machine selection, job selection, and machine reselection) are executed, a jobj is assigned to a machine i
∗. Repeat the operations above until all jobs are distributed; then a solution construction is finished.


## 4.1.1. Machine Selection

First, a machine will be selected. We generate a random numberq
m from uniform distribution [
0
,
1
]. A user-specified number q
m
0
=
0.9 represents the relative importance of exploitation versus exploration. If q
m
<
q
m
0 an ant is apt to select the smallest makespan machine among all unrelated parallel machines according to (8); otherwise a machine I is chosen according to the probability distribution P
i defined in (9)(8)
i
∗
=
min
⁡
1
≤
i
≤
m
t
i
,
if
q
m
<
q
m
0
I
,
otherwise,
(9)
P
i
=
1
/
t
i
∑
p
=
1
m
1
/
t
p
i
=
1,2
,
…
,
m
.


## 4.1.2. Job Selection

A job will be selected after a machine has been chosen. Job selection defined in (10) considers the heuristic information and pheromone trails together. We generate a random number q
j from uniform distribution [
0
,
1
]. q
j
0
=
0.9 is a user-specified number. If q
j
<
q
j
0 an ant is apt to select the smallest tardiness job j processed on machine i
∗ according to (10); otherwise a job J is chosen according to the probability distribution P
i
∗
j defined in (11). Pheromone trails τ
i
∗
j
(
t
) indicate the favorability of assigning job j to a machine i
∗ and set to 0 initially. η
i
∗
j
(
t
) is heuristic information which suggests the greedy heuristic of processing the job j on machine i
∗ that takes the least amount of tardiness, which is presented in (12). Parameters α and β are the relative importance of pheromone trails and heuristic information, respectively. Ψ represents a set of unscheduled jobs in (11)(10)
j
∗
=
max
⁡
j
τ
i
∗
j
t
α
·
η
i
∗
j
t
β
,
i
f
q
j
<
q
j
0
J
,
otherwise,
(11)
P
i
∗
j
=
τ
i
∗
j
t
α
·
η
i
∗
j
t
β
∑
l
∈
Ψ
τ
i
∗
l
t
α
·
η
i
∗
l
t
β
,
if
j
∈
Ψ
0
,
otherwise,
(12)
η
i
∗
j
t
=
1
P
t
a
r
d
i
n
e
s
s
j
×
max
⁡
t
i
∗
+
p
i
j
∗
-
d
j
∗
,
0
+
1
.


## 4.1.3. Machine Reselection

Since the computation of energy consumption and total tardiness need to confirm machine and job sequence simultaneously, the independent selection strategy may not find the appealing solution. In order to solve this problem, a machine reselection will be executed after jobj
∗ has been selected. An ant will select machine i
∗
∗ according to (13), which aims at minimizing the weighted sum of energy consumption and total tardiness when processing job j
∗ on machine i
∗
∗:(13)
i
∗
∗
=
arg min
U
i
j
∗
×
min
⁡
E
setup
i
,
P
idle
i
r
j
∗
-
t
i
+
P
tardiness
j
1
-
U
i
j
∗
×
max
⁡
t
i
+
p
i
j
∗
-
d
j
∗
,
0
U
i
j
∗
=
0
,
i
f
r
j
∗
≤
t
i
1
,
o
t
h
e
r
w
i
s
e
.After three steps (machine selection, job selection, and machine reselection) are executed, a jobj is assigned to a machine i
∗. Repeat the operations above until all jobs are distributed; then a solution construction is finished.


## 4.2. Local Search

Dorigo and Stützle [22] have proved that ACO algorithm may be further improved by incorporating an appropriate local search algorithm. Therefore, we include two local search strategies (LS1 and LS2) in our implementation of ACO-ATC algorithm.The first procedure (LS1) searches for new solutions by swapping jobs on the same machine. The second procedure (LS2) searches for new solution by transferring jobs from the machine with the highest objective value to the machine with the lowest one. The computation of its implementation isO
(
m
∗
n
2
). The pseudocode for local search algorithm is summarized in Pseudocode 1.Algorithm 1
Local Search Algorithm:
SetIterationNum = 1;
While (IterationNum  <  MaxIterationNum)
For each machine i
For each job j
1 in machine i
For each job j
2 (j
2
≠
j
1) in machine  i
Construct new solution by exchanging two jobs
If the new solution is better than current one, then exchange two jobs
Find the machine i
1 with the highest objective value
Find the machine i
2 with the lowest objective value
For each j
1 in machine i
1
For each j
2 in machine i
2
Construct new solution by exchanging two jobs
If the new solution is better than current one, then exchange two jobs


## 4.3. Pheromone Update

Once all ants have constructed their solutions, global pheromone updating rules are performed. Initially, there are no pheromone trails on all solutions. The global pheromone updating rules are defined as follows:(14)
τ
i
j
=
1
-
ρ
τ
i
j
+
ρ
Δ
τ
i
j
,
Δ
τ
i
j
=
1
L
b
e
s
t
,
i
f
i
,
j
∈
b
e
s
t
s
o
l
u
t
i
o
n
0
,
o
t
h
e
r
w
i
s
e
.Global updating is intended to provide more pheromone to the best performance solution. Pheromone evaporation rateρ
(
0
<
ρ
<
1
) is used to forget bad solutions and to explore new solutions. The pheromone amount of all solution components is updated by increasing the reciprocal of the best objective value L
b
e
s
t.


## 5. Computational Experiments and Results

### 5.1. Data Generation

In this section, the data of computational experiments will be presented to evaluate the proposed ACO-ATC algorithm. The proposed algorithm is implemented in Matlab R2012b running on Windows 7 with Intel core i5 2.30 GHz and 4 Gigabytes RAM. The number of jobs and number of machines are divided into three different sizes, namely, small, medium, and large, which take the value of 20/5, 50/5, and 50/10, respectively. Processing timesp
i
j are generated randomly from uniform distribution [
1,3
]. Release times r
j are generated randomly from uniform distribution [
1,30
]. Due dates of jobs d
j are generated by TWK (total work-content) method and calculated by (15), where crepresents the relaxation coefficient and is set to 2, 4, and 8. As c increases, the difference between due dates and release times becomes larger, which means that the problem becomes less constrained and easily solved. The per unit time of job tardiness cost P
t
a
r
d
i
n
e
s
s
j is calculated by (16). We generate the unit time of machine idle power consumption P
i
d
l
e
i randomly from uniform distribution [
1,3
]. The state (idle or from turning off to turning on) of machine only depends on the setting of unit time of machine idle energy consumption P
i
d
l
e
i and machine setup energy consumption E
s
e
t
u
p
i. We use E
s
e
t
u
p
i
/
P
i
d
l
e
i ratio to define this instance and set E
s
e
t
u
p
i
/
P
i
d
l
e
i ratios to 2, 4, and 8. Equal relative weightings chosen for total tardiness and energy consumption for total objective value are w
1
=
w
2
=
0.5, respectively. All the parameter settings of each main factor are shown in Table 2. Consider(15)
d
j
=
r
j
+
c
×
∑
i
=
1
m
p
i
j
m
,
(16)
P
t
a
r
d
i
n
e
s
s
j
=
∑
i
=
1
m
p
i
j
m
.Table 2
Parameter setting of the main factors in experimental design.
Factor
Count
Levels
Jobn/machine m
3
20/5
50/5
100/10
c
3
2
4
8
E
setup
i
/
P
idle
i
3
2
4
8When the data are generated, all the level combinations result in3
∗
3
∗
3
=
27 test problem configurations.In order to evaluate the performance of proposed ACO-ATC algorithm, we first compare the ACO-ATC algorithm with a comparative algorithm named GRASPTETT, which is a multiobjective algorithm to solve the minimization problem of energy consumption and total tardiness on single machine. For more details of GRASPTETT, see Mouzon and Yildirim [14]. We extend the GRASPTETT algorithm on unrelated parallel machines in this paper by using a well-known earliest release time heuristic to assign machines. What is more, to validate our modified ATC heuristic rule (machine selection, job selection, and machine reselection), we also compare ACO-ATC with original ACO algorithm (OACO) which only adopts “machine first, schedule job second” solution construction strategy. We incorporate the same parameter setting of OACO and other important parameters (E
s
e
t
u
p
i
/
P
i
d
l
e
i and c) in this paper.


### 5.2. Performance Measure

The relative percentage deviation (RPD) is used to evaluate the performance of multiobjective optimization algorithms. Given an obtained objective value by selected optimization algorithm, the RPD can be defined in (17) as follows:(17)
R
P
D
=
V
a
l
u
e
s
e
l
-
M
i
n
s
o
l
M
i
n
s
o
l
×
100
%
,where M
i
n
s
o
l is the best objective value obtained for each problem configuration.


### 5.3. Parameter Tuning

Since the parameters of ACO algorithm significantly influence computation results, Taguchi method [23, 24] is utilized to determine the appropriate values for ACO parameters that minimize the objective value for each problem configuration. The factors considered in parameter tuning experiment are as follows: β (0.01, 0.15, 0.3), N
u
m
_
A
n
t
s (5, 20, 40), ρ (0.01, 0.15, 0.3), and α (0.01, 0.15, 0.3). To reduce the number of runs but reach sound conclusions, the orthogonal array L
9 described in Taguchi method is chosen according to the number of parameters and the number of factor levels. For each problem configuration, three instances are generated where each instance is run 3 times independently for each parameter combination, which means that we have to do 27
∗
3
∗
3
∗
9 = 2187 experiments, and the average objective value (AOV) is obtained for each problem configuration. We implement the Taguchi method by using the small size configuration where n
=
20, m
=
5, c
=
4, and E
s
e
t
u
p
i
/
P
i
d
l
e
i
=
4. The orthogonal array and AOV results are listed in Table 3, where the second column of Table 3 represents β
=
0.01, N
u
m
_
A
n
t
s
=
20, ρ
=
0.15, and α
=
0.15.Table 3
Orthogonal array and AOV results.
Experiment number
Factor
AOV
β
Num_Ants
ρ
α
1
1
1
1
1
198.9
2
1
2
2
2
204.7
3
1
3
3
3
210.3
4
2
1
2
3
198.3
5
2
2
3
1
194.7
6
2
3
1
2
197.6
7
3
1
3
2
204.2
8
3
2
1
3
213.6
9
3
3
2
1
208.4According to the orthogonal array and AOV results, we can analyze the importance of each factor with its response value and significance rank, which is shown in Table4. As can be seen in Table 4, heuristic information parameter β is the most significant one among all parameters. It means that heuristic information for machine selection and job sequence is crucial to the proposed ACO-ATC algorithm. An appropriate value of β could lead to better convergence stability. Since the parameter α ranks second, it implies that the amount of pheromone amplification is also important. A small value of ρ will lead to a faster convergence rate and a small value N
u
m
_
A
n
t
s is enough for searching the solution space. According to the analysis above, for problem configuration, n
=
50, m
=
10, c
=
4, and E
s
e
t
u
p
i
/
P
i
d
l
e
i
=
4, a good choice of parameter combination is suggested as β
=
0.15, N
u
m
_
A
n
t
s
=
5, ρ
=
0.01, and α
=
0.01.Table 4
Response value and significance rank of each parameter.
Level
β
N
u
m
_
A
n
t
s
ρ
α
1
204.6
200.4
203.4
200.7
2
196.9
204.3
208.3
202.2
3
208.7
205.4
203.1
207.4
Delta
11.8
5
5.2
6.7
Rank
1
4
3
2


### 5.4. Comparative Results

In this section, our proposed ACO-ATC algorithm is tested on all 27 problem configurations. Each problem configuration generates 3 instances and each test is repeated with 5 runs for each instance. Parameter settings are the same as discussed in the last section (see Section5.3). Performance of solutions to yield using test problem is compared with two multiobjective optimization algorithms: GRASPTETT and OACO. The computational results of average RPD for all problem configurations are shown in Table 5, respectively.Table 5
Comparative results of three multiobjective optimization algorithms.
n
/
m
c
E
setup
i
/
P
idle
i
Proposed ACO(average RPD)
GRASPTETT(average RPD)
OACO(average RPD)
20/5
2
2
0.46
0.62
2.12
4
0.58
1.50
2.66
8
0.31
2.35
4.12
4
2
1.27
2.45
3.98
4
0.41
3.57
5.60
8
0.52
5.78
6.76
8
2
1.36
3.78
4.39
4
0.67
3.30
6.63
8
0.33
6.08
7.47
Mean
0.66
3.27
4.86
50/5
2
2
1.15
2.60
2.88
4
0.97
3.13
3.28
8
0.35
4.35
4.24
4
2
1.64
4.59
5.82
4
0.64
5.77
6.59
8
0.28
6.96
8.13
8
2
1.85
4.84
3.45
4
1.07
5.42
7.54
8
0.44
6.20
8.80
Mean
0.93
4.87
5.64
100/10
2
2
2.08
4.75
3.76
4
1.36
6.35
6.64
8
0.48
7.23
7.30
4
2
1.45
3.92
5.24
4
1.09
6.85
7.49
8
0.52
7.20
9.10
8
2
2.59
4.77
6.09
4
1.71
7.48
9.46
8
0.34
9.24
11.08
Mean
1.29
6.42
7.35
Mean for all
0.96
4.85
5.95As can be seen in Table5, the ACO-ATC algorithm performs better than the other two approaches in all problem configurations. The mean RPD values of all three algorithms are consistent when job number and machine number n
/
m are increasing. The mean RPD value for all tests of ACO-ATC algorithm is 0.96, when the mean RPD value of GRASPTETT algorithm is 4.85 which is 3.89 higher than ACO-ATC algorithm. The OACO algorithm shows the weakest performance with 5.95 mean RPD. The factor n
/
m has significant influence on GRASPTETT and OACO. Furthermore, machine reselection heuristic rule is crucial for solution construction since ACO-ATC algorithm outperforms OACO in all instances. When relaxation coefficient c is small (c
=
2), the performances of GRASPTETT and OACO are acceptable, especially in small problem size where n
=
20 and m
=
5, for the reason that there is only little scheduling space when the due dates are not well spread and waiting time between release time and due date is small. With the increasing of relaxation coefficient c, the differences between ACO-ATC and compared approaches become larger, for the reason that the bigger the margin between release time and due date, the less the probability of job tardiness occurrence. By increasing the ratio of E
s
e
t
u
p
i
/
P
i
d
l
e
i, which means to increase the length of breakeven duration, all approaches have a little fluctuation. It could be explained by machines trend to remain idle in short waiting time.


## 5.1. Data Generation

In this section, the data of computational experiments will be presented to evaluate the proposed ACO-ATC algorithm. The proposed algorithm is implemented in Matlab R2012b running on Windows 7 with Intel core i5 2.30 GHz and 4 Gigabytes RAM. The number of jobs and number of machines are divided into three different sizes, namely, small, medium, and large, which take the value of 20/5, 50/5, and 50/10, respectively. Processing timesp
i
j are generated randomly from uniform distribution [
1,3
]. Release times r
j are generated randomly from uniform distribution [
1,30
]. Due dates of jobs d
j are generated by TWK (total work-content) method and calculated by (15), where crepresents the relaxation coefficient and is set to 2, 4, and 8. As c increases, the difference between due dates and release times becomes larger, which means that the problem becomes less constrained and easily solved. The per unit time of job tardiness cost P
t
a
r
d
i
n
e
s
s
j is calculated by (16). We generate the unit time of machine idle power consumption P
i
d
l
e
i randomly from uniform distribution [
1,3
]. The state (idle or from turning off to turning on) of machine only depends on the setting of unit time of machine idle energy consumption P
i
d
l
e
i and machine setup energy consumption E
s
e
t
u
p
i. We use E
s
e
t
u
p
i
/
P
i
d
l
e
i ratio to define this instance and set E
s
e
t
u
p
i
/
P
i
d
l
e
i ratios to 2, 4, and 8. Equal relative weightings chosen for total tardiness and energy consumption for total objective value are w
1
=
w
2
=
0.5, respectively. All the parameter settings of each main factor are shown in Table 2. Consider(15)
d
j
=
r
j
+
c
×
∑
i
=
1
m
p
i
j
m
,
(16)
P
t
a
r
d
i
n
e
s
s
j
=
∑
i
=
1
m
p
i
j
m
.Table 2
Parameter setting of the main factors in experimental design.
Factor
Count
Levels
Jobn/machine m
3
20/5
50/5
100/10
c
3
2
4
8
E
setup
i
/
P
idle
i
3
2
4
8When the data are generated, all the level combinations result in3
∗
3
∗
3
=
27 test problem configurations.In order to evaluate the performance of proposed ACO-ATC algorithm, we first compare the ACO-ATC algorithm with a comparative algorithm named GRASPTETT, which is a multiobjective algorithm to solve the minimization problem of energy consumption and total tardiness on single machine. For more details of GRASPTETT, see Mouzon and Yildirim [14]. We extend the GRASPTETT algorithm on unrelated parallel machines in this paper by using a well-known earliest release time heuristic to assign machines. What is more, to validate our modified ATC heuristic rule (machine selection, job selection, and machine reselection), we also compare ACO-ATC with original ACO algorithm (OACO) which only adopts “machine first, schedule job second” solution construction strategy. We incorporate the same parameter setting of OACO and other important parameters (E
s
e
t
u
p
i
/
P
i
d
l
e
i and c) in this paper.


## 5.2. Performance Measure

The relative percentage deviation (RPD) is used to evaluate the performance of multiobjective optimization algorithms. Given an obtained objective value by selected optimization algorithm, the RPD can be defined in (17) as follows:(17)
R
P
D
=
V
a
l
u
e
s
e
l
-
M
i
n
s
o
l
M
i
n
s
o
l
×
100
%
,where M
i
n
s
o
l is the best objective value obtained for each problem configuration.


## 5.3. Parameter Tuning

Since the parameters of ACO algorithm significantly influence computation results, Taguchi method [23, 24] is utilized to determine the appropriate values for ACO parameters that minimize the objective value for each problem configuration. The factors considered in parameter tuning experiment are as follows: β (0.01, 0.15, 0.3), N
u
m
_
A
n
t
s (5, 20, 40), ρ (0.01, 0.15, 0.3), and α (0.01, 0.15, 0.3). To reduce the number of runs but reach sound conclusions, the orthogonal array L
9 described in Taguchi method is chosen according to the number of parameters and the number of factor levels. For each problem configuration, three instances are generated where each instance is run 3 times independently for each parameter combination, which means that we have to do 27
∗
3
∗
3
∗
9 = 2187 experiments, and the average objective value (AOV) is obtained for each problem configuration. We implement the Taguchi method by using the small size configuration where n
=
20, m
=
5, c
=
4, and E
s
e
t
u
p
i
/
P
i
d
l
e
i
=
4. The orthogonal array and AOV results are listed in Table 3, where the second column of Table 3 represents β
=
0.01, N
u
m
_
A
n
t
s
=
20, ρ
=
0.15, and α
=
0.15.Table 3
Orthogonal array and AOV results.
Experiment number
Factor
AOV
β
Num_Ants
ρ
α
1
1
1
1
1
198.9
2
1
2
2
2
204.7
3
1
3
3
3
210.3
4
2
1
2
3
198.3
5
2
2
3
1
194.7
6
2
3
1
2
197.6
7
3
1
3
2
204.2
8
3
2
1
3
213.6
9
3
3
2
1
208.4According to the orthogonal array and AOV results, we can analyze the importance of each factor with its response value and significance rank, which is shown in Table4. As can be seen in Table 4, heuristic information parameter β is the most significant one among all parameters. It means that heuristic information for machine selection and job sequence is crucial to the proposed ACO-ATC algorithm. An appropriate value of β could lead to better convergence stability. Since the parameter α ranks second, it implies that the amount of pheromone amplification is also important. A small value of ρ will lead to a faster convergence rate and a small value N
u
m
_
A
n
t
s is enough for searching the solution space. According to the analysis above, for problem configuration, n
=
50, m
=
10, c
=
4, and E
s
e
t
u
p
i
/
P
i
d
l
e
i
=
4, a good choice of parameter combination is suggested as β
=
0.15, N
u
m
_
A
n
t
s
=
5, ρ
=
0.01, and α
=
0.01.Table 4
Response value and significance rank of each parameter.
Level
β
N
u
m
_
A
n
t
s
ρ
α
1
204.6
200.4
203.4
200.7
2
196.9
204.3
208.3
202.2
3
208.7
205.4
203.1
207.4
Delta
11.8
5
5.2
6.7
Rank
1
4
3
2


## 5.4. Comparative Results

In this section, our proposed ACO-ATC algorithm is tested on all 27 problem configurations. Each problem configuration generates 3 instances and each test is repeated with 5 runs for each instance. Parameter settings are the same as discussed in the last section (see Section5.3). Performance of solutions to yield using test problem is compared with two multiobjective optimization algorithms: GRASPTETT and OACO. The computational results of average RPD for all problem configurations are shown in Table 5, respectively.Table 5
Comparative results of three multiobjective optimization algorithms.
n
/
m
c
E
setup
i
/
P
idle
i
Proposed ACO(average RPD)
GRASPTETT(average RPD)
OACO(average RPD)
20/5
2
2
0.46
0.62
2.12
4
0.58
1.50
2.66
8
0.31
2.35
4.12
4
2
1.27
2.45
3.98
4
0.41
3.57
5.60
8
0.52
5.78
6.76
8
2
1.36
3.78
4.39
4
0.67
3.30
6.63
8
0.33
6.08
7.47
Mean
0.66
3.27
4.86
50/5
2
2
1.15
2.60
2.88
4
0.97
3.13
3.28
8
0.35
4.35
4.24
4
2
1.64
4.59
5.82
4
0.64
5.77
6.59
8
0.28
6.96
8.13
8
2
1.85
4.84
3.45
4
1.07
5.42
7.54
8
0.44
6.20
8.80
Mean
0.93
4.87
5.64
100/10
2
2
2.08
4.75
3.76
4
1.36
6.35
6.64
8
0.48
7.23
7.30
4
2
1.45
3.92
5.24
4
1.09
6.85
7.49
8
0.52
7.20
9.10
8
2
2.59
4.77
6.09
4
1.71
7.48
9.46
8
0.34
9.24
11.08
Mean
1.29
6.42
7.35
Mean for all
0.96
4.85
5.95As can be seen in Table5, the ACO-ATC algorithm performs better than the other two approaches in all problem configurations. The mean RPD values of all three algorithms are consistent when job number and machine number n
/
m are increasing. The mean RPD value for all tests of ACO-ATC algorithm is 0.96, when the mean RPD value of GRASPTETT algorithm is 4.85 which is 3.89 higher than ACO-ATC algorithm. The OACO algorithm shows the weakest performance with 5.95 mean RPD. The factor n
/
m has significant influence on GRASPTETT and OACO. Furthermore, machine reselection heuristic rule is crucial for solution construction since ACO-ATC algorithm outperforms OACO in all instances. When relaxation coefficient c is small (c
=
2), the performances of GRASPTETT and OACO are acceptable, especially in small problem size where n
=
20 and m
=
5, for the reason that there is only little scheduling space when the due dates are not well spread and waiting time between release time and due date is small. With the increasing of relaxation coefficient c, the differences between ACO-ATC and compared approaches become larger, for the reason that the bigger the margin between release time and due date, the less the probability of job tardiness occurrence. By increasing the ratio of E
s
e
t
u
p
i
/
P
i
d
l
e
i, which means to increase the length of breakeven duration, all approaches have a little fluctuation. It could be explained by machines trend to remain idle in short waiting time.


## 6. Conclusion

In this study we have successfully implemented the problem of minimizing energy consumption and total tardiness on unrelated parallel machines. Due dates and release times are distinct, and the breakeven duration of each machine is different. A compromised balance has to be found between machine energy consumption and total tardiness. We proposed a framework with an ant colony optimization algorithm (ACO) and ATC heuristic rule to solve this problem. Furthermore, it is a new kind of problem for minimization of machine energy consumption and total tardiness on unrelated parallel machines which need to be modeled and solved effectively.In the computation evaluation, two approaches (GRASPTETT and OACO) for solving minimizing machine energy consumption and total tardiness on single machine are adapted and compared with proposed ACO-ATC algorithm. The ATC-ACO algorithm outperforms other approaches and GRASPTETT shows better than OACO in most of instances.Although this work has dealt with several challenging issues, future work is still needed. Firstly, more machine states should be considered (e.g., machine has a warm-up time which depends on the length of setup time). In this situation, the breakeven duration is variable according to the setup time, which will make problem much more complicated. The second extension should obtain an approximate Pareto front via Pareto ACO algorithm, and then the decision maker can select a suitable choice among all solutions.



---

*Source: 907034-2015-08-26.xml*