Some Efficient Heuristic Methods For The Flow Shop Sequencing Problem
Some Efficient Heuristic Methods For The Flow Shop Sequencing Problem
Some Efficient Heuristic Methods For The Flow Shop Sequencing Problem
North-Holland
65
Abstract: In this paper the best heuristic methods known up to now are compared to solve the flow shop
sequencing problem and we improve the complexity of the best one. Next, this problem is applied to taboo
search, a new technique to solve combinatorial optimization problems, and computational experiments are
reported. Finally a parallel taboo search algorithm is presented and experimental results show that this
heuristic allows very good speed-up.
Keyworfls: Flow shop, taboo search techniques, parallel algorithm, combinatorial optimization
1. Introduction
First, we try to answer the question: " W h a t is
the problem?". Although many researchers have
been working on the flow shop sequencing problem for many years, we found nowhere any results
about the distribution of the objective function
and the distribution of the optima of this function.
In effect, such an approach gives an intuitive idea
about the problem and is important to allow the
reader to judge the quahty of heuristic methods
used for this problem.
Then we compare the classical heuristics and
improve the complexity of the best one. But this
one does not give very good solutions on average
(less than one or two percent above the optimal
solution). So we propose a heuristics improving
the mean quality of solutions when running longer,
based on taboo search technique. As this technique has been recently developed, we do not only
give the best implementation we found, but some
variants of this method too.
66
0.060.05
~
0.04
~'~ 0.03'
:~ 0.02,
~ O.Ol
0.00
1.10
1.20
1.30
1.40
1.50
1.60
70
60
50
.~4o
:~ 30
20
10
0
840 860 880 900 920 940 960 980 100010201040106010801100112011401160118012001220
Makespan
Figure 2. Distribution of the optimal makcspans
67
NEH algorithm
(1) Order the n jobs by decreasing sums of
processing times on the machines.
(2) Take the first two jobs and schedule them
in order to minimize the partial makespan as if
there were only these two jobs.
(3) F o r k = 3 t o n do:
(4) Insert the k-th job at the place, among the
k possible ones, which minimizes the partial
makespan.
eio = O,
max{ei.~_l, ei-l,j } + t i j
Quality
500
9
10
n log(n)+nm
13.4
n log(n)+nm
10.9
n l o g ( n ) + nm
8.5
nlog(n)+nm
8.3
nm 2 + mn log(n) 4.5
n2m
2.1
100
10
10
12.8
11.8
9.1
9.0
5.2
2.2
100
20
10
19.6
16.7
12.5
13.3
9.7
3.9
100
20
20
18.8
16.8
13.4
12.5
8.6
3.8
50
40
10
50
50
10
18.9
17.3
13.5
10.9
9.9
2.6
17.1
16.3
11.2
10.7
9.3
2.1
(j=l
. . . . . m).
(2) Compute the tail q~j, i.e. the duration between the starting time of the i-th job on the j-th
machine and the end of the operations (Figure
3(b)),
qkj=O,
q~,ml =O,
. . . . ,1)
( j = m ..... 1).
68
e21
-I'
121314
7-r-] I 2 I
a)
3
[ 4]
e 22
q31
Dt
q32
f31
'111
-I
q31
c)
K
g=
f32
q32
Time
Figure 3. Illustration of the algorithm: Insertion of job 5 at the
third place
L0 -- 0,
f/j = max{ f ~ j _ l ,
(i = 1 , . . . , k )
ei-l,j} + tkj
(j=l
..... m).
(j=l
..... m).
minimize
c (x)
subject to
x ~ X.
Where c ( x ) is any function of a discrete variable x, and X is the set of feasible solutions. A step
of taboo search starts with the current feasible
solution x ~ X to which is applied a function
m E M ( x ) that transforms x into x ' , a new feasible solution ( x ' = m(x)). This transformation is
called a move, and ( x ' : x ' = m ( x ) ; x, x ' ~ X;
m ~ M ( x ) } is called the neighbourhood of x.
In order to avoid as much as possible cycling,
an element t is associated with m and x; this
element defines a set of moves that are taboo
(forbidden) now; it is stored in a set T called
taboo list. In particular t forbids to apply m ' to x '
which would transform x ' back to x; but t may
forbid other moves too. The elements of T define
all taboo moves that cannot be applied to the
current solution; in practice, the size of T cannot
increase indefinitely and has to be bounded by a
parameter s, called taboo list size. If I T I = s,
before adding t to T, one must remove an element, generally the oldest one.
An application of taboo search is characterized
by:
(1) The set M ( x ) of moves applicable to a
feasible solution x ( neighbourhood ).
(2) The type of the elements of the set T which
define the taboo moves (taboo list).
(3) The size s of the set T (taboo list size).
(4) A stopping condition.
The generic procedure of taboo search techniques is:
(0) Start with any feasible solution x0, an
empty taboo list T. Let x * = x 0, c* = C(Xo) and
k = 0. ( x * is the best solution found up to now
and c* the value of the objective function for this
solution.)
(1) In M(Xk) choose m, a move transforming
x k that minimizes c ( m ( x k ) ) and that is not for-
1.
M(o)
subject to
o: permutations of 1 . . . . . n.
69
70
1.00"
0.90"
0.80
0.70
0.60
1
0.50 -
solution
0.40'
0.30
0.20'
0.10'
0.00
.01
.1
10
100
12 5 , 1 4 x 4 , 1 0 6 , 8 x 9 , 7 x 7 and 8 8). We
can make the following remarks:
(1) There are a few problems that are very easy
to solve (always less than 15 iterations) and a few
ones that are much more difficult (sometimes more
than 800 iterations).
(2) For a fixed problem, the number of iterations (steps or moves) can be very variable. (From
10 to 800 iterations, depending on the starting
point.)
In Figure 4 we give the empirical distribution
of the CPU time required by a resolution on a Vax
1.20"
1.15
......
I0 Jobs
\\\
0,o s
............
30 Jobs
"~
1.10
.....
4..a
"
N"..\
5OJobs
1.05
1.00
10
100
Number of iterations
Figure 5. Evolution of the makespan: 10 machines
." 7
, .-..;
1000
71
1.20
..............
5 Machines
............
10 Machines
20 Machines
1.15
~.~X
" ~ N ~
1.10
1,05
1.00
10
100
1000
Number of iterations
Figure 6. Evolution of the makespan: 20 jobs
72
1.15 ]
1.10' ~
1.05
1.00
........
i
10
........
i
100
........
i
1000
Iteration
Figure 7. Stopping condition: Evolution of the makespan (20 jobs, 10 machines)
to reduce this calculation time. This may be realized by parallelizing the search of the best
neighbour: each processor inspects only a fraction
of the neighbourhood. Then, the best allowed
moves are compared and the best of all is chosen
(see Figure 8). In order to do a step of taboo
search, the algorithm then becomes (for processes
without common memory):
(Assume that the master process has a current
move and that each slave process has the same
current solution, taboo list, and so on, but a
different subset of neighbours to examine.)
Master process
(M.1) Send to every slave process the current
move.
(M.2) Wait the best moves of each slave process
and choose among them the best of all. G o
back to (M.1) unless a stopping condition is
satisfied.
Master ~
\X
Mo~e,o
" )
o perform
(3) The parallel algorithm, run on two transputers (T414 and T800).
It is interesting to mention that two transputers
have a calculation power comparable with a minicomputer, for well parallelizable algorithms.
Slave process
(S.1)
(S.2)
Wait for a move, given by the master process, perform it and update the taboo list.
Try all the moves among the partial
neighbourhood; choose the best non taboo
one and send it to the master process. Go
back to (S.1).
7. Conclusions
In this paper, we have first presented the empirical profile of randomly generated instances of
the flow shop problem; then, we have shown that
N E H was the best heuristics among the classical
ones. A new method permitted us to reduce its
complexity to O(n2m).
The problem may be solved efficiently by a
taboo search technique, and we can get better
solutions than NEH. The optimality of the solutions cannot be proved, but we found every time
the optimal solution of the problems for which the
exact solution was known, if we allowed sufficient
CPU time.
Such a technique is very flexible and more
general flow shop problems for which the already
existing heuristics are not designed may be treated
without great changes (set-up, processing times
not fixed...). However, we have remarked that
flow shop problems with ordering that can vary
on each machine cannot be treated with exactly
the same taboo search technique; some refinements have to be introduced.
Unfortunately, taboo search needs great calculation times; in order to reduce them, we have
presented two methods of parallelization that can
1.05 '
73
1.04'
1 Transputer
1.o3.
.....
1.02 .
Vax 8600
2 Transputers
1.01
1.00
.1
. . . . .
-'~-.
10
74
References
[1] Baker, K.R., Introduction to Sequencing and Schedufing,
Wiley, New York, 1974.
[2] Carlier, J., "Probirmes d'ordonnancement h contraintes de
ressources: algorithmes et complexitr", M&hodologie et
architecture des systrmes informatiques, Institut de Programmation, Universit6 Pierre et Marie Curie, Paris, 1984.
[3] Dannenbring, D.G., "An evaluation of flow shop sequencing heuristics", Management Science 23/11 (1977) 1174
-1182.
[4] Glover, F., "Tabu search - Part I", ORSA Journal on
Computing 1/3 (1989) 190-206.