flow time.
Local search procedure is used as an embed-
ded procedure in the aforementioned metaheuristics.
However, it is also used in an iterative way to form a
metaheuristic called iterated local search (ILS). Dong
et al. (Dong et al., 2009) develop an ILS to solve the
PFSP minimizing total flow time, in which the per-
turbation method swaps several pairs of adjacent jobs
and the perturbation strength, denoted by the number
of swapping pairs, is evaluated. A multi-restart iter-
ated local search (MRSILS) algorithm is proposed by
Dong et al. (Dong et al., 2013), improving the per-
turbation method mainly by generating restart solu-
tions from a set of elite solutions. Their experiments
show that the MRSILS increases the performance of
the methodology used in Dong et al. (Dong et al.,
2009) significantly, while performing comparably to
or better than five other state of the art metaheuristics
(Pan et al., 2008; Zhang et al., 2009; Tasgetiren et al.,
2011). Costa et al. (Costa et al., 2012b) study the
combination of the most commonly used local search
neighborhoods, the swap neighborhood and the in-
sertion neighborhood. Six different combinations in
total are calibrated. Later, they extend this work
by developing an algorithm hybridizing VNS and
path-relinking on a particle swarm framework, with
promising experimental results on Taillard’s bench-
mark instances (Costa et al., 2012a). Pan and Ruiz
(Pan and Ruiz, 2012) propose two local search meth-
ods based on the well known ILS and IG frameworks.
They also extend them to population-based versions;
however, their experiments show that the two local
search methods perform better than the population-
based versions.
Though ILS has performed well on the PFSP min-
imizing total flow time, one limitation is that the
search process often cannot improve the best solution,
even with dozens of iterations. For example, this oc-
curs with the MRSILS by Dong et al. (Dong et al.,
2013), although the pooling strategy in this algorithm
augments the ability to find better solutions. A reason
for the search process to be limited is that the pertur-
bation method moves randomly selected jobs to other
randomly selected positions without considering the
search status. In order to improve perturbation qual-
ity, this work proposes a method to evaluate the con-
vergence status of the search. With a greater focus
on convergence, the probability increases that a job is
moved to a position where a solution with larger ob-
jective can be generated. Based on this observation,
a self-adaptive ILS (SAILS) is proposed and evalu-
ated. Comparison results with the MRSILS by Dong
et al. (Dong et al., 2013) and two local search based
algorithms by Pan and Ruiz (Pan and Ruiz, 2012) on
Taillard’s benchmark instances (Taillard, 1993) show
that the new perturbation method leads to improved
performance.
The remainder of this paper is organized as fol-
lows. In Section 2, the formulation of the PFSP with
total flow time criterion is presented. Section 3 de-
scribes the evaluation method and illustrates the pro-
posed algorithm. The evaluation method is analyzed
and SAILS is compared with several state of the art
algorithms in Section 4, then the paper is concluded
in Section 5.
2 PROBLEM FORMULATION
In this paper, the PFSP is discussed with the objective
of minimizing total flow time. This problem is an im-
portant and well-known combinatorial optimization
problem. In the PFSP, a set of jobs J = {1, 2,.. .,n}
available at time zero must be processed on m ma-
chines, where n ≥ 1 and m ≥ 1. Each job has m oper-
ations, each of which has an uninterrupted processing
time. The processing time of the ith operation of job j
is denoted by p
ij
, where p
ij
≥ 0. The ith operation of
a job is processed on the ith machine. An operation
of a job is processed only if the previous operation
of the job is completed and the requested machine
is available. Each machine processes these jobs in
the same order and at most one operation of each job
can be processed at a time. The PFSP to minimize
total flow time is usually denoted by F
m
|prmu|
∑
C
j
(Pinedo, 2001), where F
m
describes the environment,
prmu is the set of constraints andC
j
denotes the com-
pletion time of job j. Let π denote a permutation on
the set J, representing a job processing order. Let
π(k), k = 1,.. .,n, denote the kth job in π, then the
completion time of job π(k) on each machine i can be
computed through a set of recursive equations:
C
i,π(1)
=
∑
i
r=1
p
r,π(1)
i = 1,.. .,m
(1)
C
1,π(k)
=
∑
k
r=1
p
1,π(r)
k = 1,. .. ,n
(2)
C
i,π(k)
= max{C
i−1,π(k)
,C
i,π(k−1)
} + p
i,π(k)
i = 2,.. .,m;k = 2,.. .,n
(3)
Then C
π(k)
= C
m,π(k)
, k = 1,.. ., n. The total flow
time is
∑
C
π(k)
, or the sum of completion times on ma-
chine m for all jobs. The objective of the PFSP when
minimizing total flow time is to minimize
∑
C
π(k)
, or
C
π
for short.
3 THE PROPOSED ALGORITHM
According to Lourenco et al. (Lourenc¸o et al., 2010),
the general framework of ILS has four key compo-
ASelf-adaptiveIteratedLocalSearchAlgorithmonthePermutationFlowShopSchedulingProblem
379