You are on page 1of 8

A COEVOLUTIONARY ALGORITHM FOR A FACILITY LAYOUT PROBLEM

T. Dunker, E. Westkämper G. Radons

Fraunhofer Institute Manufacturing Institute of Physics


Engineering and Automation Technical University Chemnitz
Nobelstr. 12 Reichenhainer Str. 70
70569 Stuttgart, Germany 09126 Chemnitz, Germany

ABSTRACT In this work we want to present a new coding and genetic op-
erators for handling the relative position of departments and a co-
This paper is dedicated to a coevolutionary approach to the nu- evolutionary approach in order to attack large scale FLP’s.
merical optimization of large facility layouts using genetic algo- The remainder of this paper is organized as follows. In section
rithms. First we introduce a new way to code the relative positions 2 we describe our MIP formulation. Section 3 is dedicated to the
of the departments. We present improved mutation and crossover genetic operators and the coevolutionary algorithm. Finally, we
operators for this problem. In order to cope with large problem discuss the performance of our genetic operators and the numerical
size, departments are clustered into groups. These groups evolve results of the coevolutionary algorithm in section 4.
in separate areas while position and size of these areas undergo an
evolution, too.
2. MIP FORMULATION
1. INTRODUCTION
The approximation of departments, floor areas and others by rect-
One subproblem in factory planning consists in determining good angles is a popular method, see e.g. [5] or [2]. In addition we
locations of a set of departments or manufacturing cells on a planar assume that their sides are parallel to the axis of our coordinate
system in the plane and their dimensions are given in advance.
site. This task is called facility layout problem (FLP). The objec-
tives shortly described by the word “good” are manifold. In addi- 
Denoting a rectangle by A R2 we introduce the following nota-
tion many of them are of qualitative nature and it is not straight for- tions:

I = f1; : : : ; N g
ward to translate them to quantitatively measurable criteria. One
objective is certainly to minimize the material handling cost. Yet, index set of all rectangles
manpower requirements, work-in-process inventory, flow of infor- i; j 2 I indices for the rectangles
mation etc. play an important role, too. Yet, in all cases the starting
assumption is that the proximity between certain departments is
li 2 R + length of the long side
more favorable than others. The aim is to arrange the departments si 2 R + length of the short side
in such a way that the desired proximity is satisfied. (Xi ; Yi ) 2 R2 center point coordinates
Oi 2 f0; 1g
For several decades there has been research on this subject.
[1] contains a detailed review of the different formulations of the orientation vertical/horizontal
FLP and the variety of algorithms. Some additional recent refer- MiX 2 f0; 1g flip up/down
ences can be found in the introduction of [2]. One can roughly dis-
tinguish between three types of problem formulations - assigning
MiY 2 f0; 1g flip left/right
departments to a finite number of locations, subdividing the avail-
Let i be the index of the total available floor area. Later we want
able floor area successively and placing departments of given size
arbitrarily on the shop floor. This last formulation which yields a
to place departments inside of subareas of the floor area, i.e. we
mixed integer programming problem (MIP) forms the base for our
require that certain rectangles are completely contained in other
considerations.
rectangles (which themselves could be inside of a third rectangle).
All these approaches lead to combinatorial optimization prob-
In order to formalize this we introduce the following map on the
lems and they share the difficulty that the computational complex-
index set of all rectangles P I : ! 7! ( )
I , i.e. i P i , with the
ity grows very rapidly with the number of departments. Hence
following meaning. For each i 2 ()
I the number P i gives the
index of a rectangle in which Ai shall be contained. For i we
many suggested algorithms for treating these problems try to find
define P i( )= i . In this way we define a hierarchical structure
heuristically good solutions instead of aiming at global optimal-
ity of the solution. Evolutionary methods like genetic algorithms
of containment relations. Most of the time one will have simply
(GA) have successfully been applied in this context, see e.g. [3],
[4] or [5].
P i i . Furthermore we will distinguish two types of rectan-
()=
gles – movable or fixed. For this purpose we define two index sets
 
I m I and I f I with I m I f \ =; and I m I f[ = I , where m
stands for movable and f for fixed. Obviously, it should be i I f
2
This research was supported by DFG research project SFB 467
“Wandlungsfähige Unternehmensstrukturen für die variantenreiche Serien-
produktion” 2
and i I f will mean Ai is fixed to AP (i) .
Depending on the containment structure P and the sets Im and ()=
If P i j we can express the relation Ai  Aj by the following
I one can determine whether the above defined quantities will be
f
four inequalities
variables or constants. Let us use the following notation
Xj lj O sj (1 O )  X li O si (1 O );
P Æk (i) = P (   P (i)   ) : 2 j
2 j i
2 i
2 i (11)
| {z }
k times
Xi + li Oi + si (1 Oi )  Xj + lj Oj + sj (1 Oj ); (12)
Then we can distinguish the following three cases. 2 2 2 2
s l s l
2 Oj 2 (1 Oj )  Yi 2 Oi 2 (1 Oi ); (13)
j j i i
2
1. If i I m then certainly Xi , Yi and Oi are variables. Whether Yj
there is a need for the variables MiX and MiY depends on
the internal structure of Ai , i.e. on the Aj ’s with P Æk j ( )= Yi + si Oi + li (1 Oi )  Yj + sj Oj + lj (1 Oj ): (14)
i for some k. 2 2 2 2
Two non-overlapping rectangles Ai and Aj must be separated by a
2. If i I f and P Æk i
2 ()2
I f for all k then all quantities are vertical or horizontal line. The first MIP for the FLP due to [6] pro-
constants and there is no need for MiX and MiY . poses four binary variables for each non-overlapping relation. In
3. If 2 I f and P Æk (i) 2 I m for some k then set k =
i [7] one optimized this approach to improve the performance. In [8]
minfk : P Æk (i) 2 I m g and j = P Æk (i). In this case and [5] one uses a formulation which needs three binary variables
Xi , Yi and Oi are variables depending on the Xj , Yj , Oj , per non-overlapping relation. We will propose an model using two
MjX and MjY . This will be investigated in the following variables which is superior by almost an order of magnitude, see
paragraph. table 1. We introduce
In order to describe the transformation of a fixed rectangle Ai at- SijD 2 f0; 1g line direction (vertical/horizontal)
tached to a movable one Aj we need constants for modeling this
dependency: SijO 2 f0; 1g order of Ai and Aj .

xji ; yij 2 R relative coordinates of Ai with respect The setting (Sij ; Sij ) = (0; 0) stands for Ai left of Aj , (0; 1) for
D O
to Aj (long side corresponds to x-axis) Ai right of Aj , (1; 0) for Ai below Aj and (1; 1) for Ai above
Aj , respectively. In order to avoid redundant variables we require
oji 2 f0; 1g relative orientation of Ai with respect i > j . Let L = maxi li . Using the four linear expressions
to Aj (1 corresponds to parallel long
sides) Eij(1) = L (SijD + SijO ) (15)
Then we obtain the center point coordinates from the relative co-
ordinates by the linear transformation
Eij = L (1 + Sij Sij )
(2) D O (16)
      Eij = L (1 Sij + Sij )
(3) D O
+M xji
(17)
Xi = Xj ;
Yi Yj yij
(1) Eij = L (2 Sij Sij )
(4) D O (18)

with an orthonormal (2  2)-matrix M which can be decomposed where each takes the value zero for exactly one setting of (SijD ; SijO )
in the following way we can derive the necessary inequalities
0

1 1  @ 11 11 Xi + li Oi + si (1 Oi )  Xj lj Oj sj (1 Oj )+ Eij(1) ;
M= 1
Uj
MjX
MjY
Vj 1 1 A: 2 2 2 2
1 0 (19)
Xj + lj Oj + sj (1 Oj )  Xi li Oi si (1 Oi )+ Eij(2) ;
This is more advantageous as the variables Uj and Vj take values 2 2 2 2
f0 1g
in ; only. One can verify that the constraints (20)
Yi + si Oi + li (1 Oi )  Yj sj O lj (1 O )+ E (3) ;
0  Oj + MjY Uj (2) 2 2 2 j
2 j ij
(21)
0  Oj MjY + Uj (3)
Yj + sj Oj + lj (1 Oj )  Yi si Oi li (1 Oi )+ Eij(4) :
0  Oj + MjY + Uj (4) 2 2 2 2 (22)
Oj + MjY + Uj  2 (5) We denote by I no  f( ) : ;
i; j i > j i; j I the set of the 2 g
Oj + MjX Vj  1 (6)
non-overlapping relations which are necessary for the model. The
aim is to keep I no as small as possible. For example consider
Oj MjX + Vj  1 (7) the following situation: A2  =
A1 Ai , A3 A1 , A4  
Oj MjX + Vj  1 (8) A2 , A5  A2 , A6 
A3 and A7 
A3 . In order to have
the non-overlapping between A2 , A3 and A4 ; : : : ; A7 it suffices
1  Oj + MjX + Vj (9) I no= f(3 2) (5 4) (7 6)g
; ; ; ; ; . The relations ; ; ; ; ; (6 4) (6 5) (7 4)
M (7 5)
and ; are automatically true because of the containment and
ensure the correct assignment of entries in the matrices . The
orientation of Ai depends only on the orientation of the Aj and its
(3 2)
; .
The objective is to minimize the distances between different
relative orientation
 points. We will call them IO-points. They are attached to some
Oi = Oj for oji =1 :
floor area or a department, i.e. a rectangle may possess several
1 Oj for oji =0 (10) IO-points. We use the following notation:
branching automatic strong 3. THE COEVOLUTIONARY GA
model two three two three
b&b tree size ( 3
10
) 11:5 47:9 5 31 The goal to find an optimal solution of the mathematical model
computation time in s 25.5 187.6 46.3 512 introduced in section 2 and to prove its optimality can be achieved
only for a small number of departments (up to ). This is due
D and
7
Table 1: Comparison of our model (two) with the model (three) to the quadratic increase in the number of binary variables Sij
from [8] or [5] (FLP with 6 departments from [8]). O
Sij . That is why various heuristic methods have been developed in
order to find systematically at least suboptimal solutions. They try
to fix some of the binary variables. One such approach are genetic
algorithms, see e.g. [9], [10], [11] (quadratic assignment problem),
I  = f1; : : : ; N  g
[12], [3] (slicing tree representation), [5], [4] (MIP), [13] (slicing
set of indices for IO-points, tree and MIP).
; 2 I  indices for IO-points,
(x i ; y i ) 2 R2 relative coordinates wit respect to 3.1. Coding
2
Ai , i I m ,
(X  ; Y  ) 2 R 2
coordinates of the -th IO-point 01
In [5] the - -sequence for setting the binary variables is used as
which are either constant (IO-point genetic code. Standard crossover and mutation operators are ap-
is attached to Ai or is variable sat- plied. This generates subsequently many infeasible genes as pos-
isfying e.g. equation (1) or is iden- sible settings do not satisfy the transitivity of relative positions. In
tical with center point of Ai ), order to avoid producing too many infeasible genes we introduce
 ; ÆY
ÆX  2 R+ horizontal and vertical distance be-
a coding and operators which do not leave the space of genes sat-
isfying transitivity.
tween the -th and -th IO-point,
(w ) ; > 2I weights for the distances.
We suppose that the problem to solve involves the rectangles
with indices from the index set Ikg 
I where the letter g stands
for “group” and k =1 2
; ; : : : is the index of the group. Let Nkg =
Given an existing layout it might be necessary to consider the cost
# Ikg be the number of the involved rectangles. Denote by  =
of changing the layout at the same time. For this purpose we in-
2
troduce for all i I m :
1 ; : : : ; Nkp the index of an individual within a population of Nkp
individuals. Let =1 2
; ; : : : be the index of the generation. The
Xi ; Yi ; Oi(0)
(0) (0)
initial position and orientation, -th individual of the k-th group in generation will be represented
Mi 2 f0; 1g 1 if Xi , Yi or Oi have changed from by
the initial layout or if MiX or MiY !
equals to , 1
( )
Ik; = (ix1 ; : : : ; ixNkg ); (iy1 ; : : : ; iyNkg ); fbij g i;j2Ikg :
(wi )i2I m weights for moving Ai . i>j
With this notation the objective is to minimize
0 1 The bij 2 f0 1g 2
; , with i; j Ikg and i > j , represent values of the
X X binary variables Sij D , i.e. whether there is a vertical or horizontal
min B
@  + ÆY  ) +
w (ÆX wi Mi C
A (23) separating line between Ai and Aj . The two vectors ix1 ; : : : ; ixN g
k
( )
; 2I  i2I m ( )
and iy1 ; : : : ; iyN g are permutations of the elements of Ikg and they
>
k
where the following further constraints have to be satisfied represent the order of the x- and y -coordinates of the midpoints.
( )
X  X   ÆX  Given an Ik; we set the Sij D and S O with i; j I g and i > j
ij k 2
0
(24)
 
X X  ÆX  in the following way. For each pair of indices j1 < j2 Nkg 
(25)
we check the following alternatives. Set ix = max(
ixj1 ; ixj2 and )
Y  Y   ÆY  (26) jx = min( )
ixj1 ; ixj2 . If bix j x =0
holds then set
 
Y Y  ÆY  (27)
for all ; 2 I  with > and w 6= 0 and = 0
SiDx j x (36)

Xi Xi(0)  L Mi SiOx j x = 0 if ix = ijx1 :


x x
(28) 1 if i = ij2 (37)
Xi(0) Xi  L Mi (29)
Note that if bix j x = 1 the order ixj1 , ixj2 does not enter in the
Yi Yi(0)  L Mi (30)
problem formulation. Hence the final order of the x-coordinates of
Yi(0) Yi  L Mi (31) 
Aixj1 and Aixj2 is not necessarily Xixj1 Xixj2 . Analogously, we
Oi Oi(0)  Mi (32) set iy = max( )
iyj1 ; iyj2 and j y = min(
iyj1 ; iyj2 . If biy j y is ) =1
Oi(0) Oi  Mi
true, then we assign
(33)
MiX  Mi (34) SiDy j y = 1 (38)
MiY  Mi (35)
SiOy j y = 01 if iy
if iy
= iyjy1
= ij2 : (39)
for all i 2 I m and wi 6= 0.
3.2. Genetic operators if jYi Yj j  si Oi =2 + li (1 Oi )=2 +
sj Oj =2 + lj (1 Oj )=2
In [9] three different crossover operators for permutations are pre- return true
sented – partially matched, order and cycle crossover. For our else
genetic algorithm we use a version of the order crossover. After return false
( ) ( )
selecting two parent genes Ik;1 and Ik;2 let us consider the parts endif
of the genes representing the x- and y-order. Take e.g. else (y-direction)
(ix;1 ; : : : ; ixNk ;1 ) (ix;2 ; : : : ; ixNk ;2 ) j
if Xi Xj j
l i Oi = 2 + si (1 Oi )=2 +
1 g and 1 g
lj Oj =2 + sj (1 Oj )=2
return true
where we add the number of the individual as a second subindex.
We select randomly two cut positions c1 ; c2 ; : : : ; Nkg with 2 f1 g else

c1 c2 . Then we construct two new genes from the two selected
return false
endif
genes. First we fill the position from c1 to c2 with the original endif
parts of the sequence

(: : : ; ixc1 ;1 ; : : : ; ixc2;1 ; : : :); (: : : ; ixc1 ;2 ; : : : ; ixc2 ;2 ; : : :): D . These actions are repeated
If possible we change the variable Sij
Then the position before c1 and after c2 are filled with with the until the objective value does not decrease further. Summarizing
numbers from the other parent which are not contained in the al- we have sketched our improvement strategy below.
ready filled part. While filling we keep the order given by the
improve (Ik; )
( )
parent where we take the elements from. In terms of the notation
above this means e.g. for the first offspring gene while the objective value decreases
( )
evaluate (Ik; )
(~ixx;2 ; : : : ; ~ixcx1 ;2 ;
1 1 x ( ) ( )
obtain i1 ; : : : ; ixN g and iy1 ; : : : ; iyN g
i ;:::;i ; k k
~icxc11 ;;12 ; : : : ; ~icxN2k;1c2 c1 ) from the solution
g
+ 1 2 ; with g
2
for all i; j Ik with i > j
if change is possible (Sij D)
f~ix;2 ; : : : ; ~ixNk c2 c1 ;2 g \ fixc1 ;1 ; : : : ; ixc2 ;1 g = ;
1 g
+ 1 if Sij D == 0
and the mapping j 7! f (j ) defined by ~ixj;2 = ixf j ;2 is strictly ( )
bij = 1
else
bij = 0
increasing. In the same way the crossover is defined for the y-
order. The motivation for this definition is the idea that we wish
to keep the part that is located between the cuts hoping that it con- endif
tributes to a good solution and arranging the remaining using the endif
order given by the other parent. endfor
For mutation a single parent is randomly selected. Then the endwhile
( )
(
mutation operator for each of the parts ix1 ; : : : ; ixN g and iy1 ; : : : ; iyN g
k k
) ( ) return Ik; with smallest objective value
just exchanges two randomly chosen elements.
Using these operators our GA creates a new generation by Ncr
The more complicate part is the modification of bij i;j which f g crossovers, N mu mutations with mutation rate Rmu and copying
represents the decision whether to have a vertical or horizontal sep-
2 +
the N co best individuals which results in a population size of N cr
arating line. As we did not find a method which could be geomet-
rically motivated we decided to use standard crossover with two
+
N mu N co . The selection accepts individuals with objective value
above average with a probability of P ac . The GA terminates if the
cut positions and standard mutation. Yet, in addition we apply an
D and S O for average objective values has not changed more than Mch or the
improvement strategy. First, we fix the variables Sij ij
( ) best values has not changed for the last N nc generations or a max-
the given individual Ik; according to (36) – (39) and solve the imal number M ge of generations has been exceeded.
remaining MIP (1) – (35).

evaluate (Ik; )

( ) genetic algorithm
2
for all i; j Ikg with i > j
initialize population
D and S O
fix Sij
do
ij = +1
for 1; : : : ; N cr
endfor
solve remaining MIP
select parents and crossover
return solution
endfor
( ) (
Next, we update ix1 ; : : : ; ixN g and iy1 ; : : : ; iyN g by sorting the ) 1
for ; : : : ; N mu
k k select parent and mutate
center point coordinates of the obtained solution. Then we check
D whether they can be changed without violating a con-
for all Sij
endfor
copy N co best individuals
straint in the current solution.
while change of average is larger than M ch ,
change is possible (Sij D) best individual has changed during the
D
if Sij == 0
(x-direction) last N nc generations and M ge 
3.3. Coevolution
For large FLP’s the above described GA fails. Convergence takes
very long. Hence it is necessary to treat such FLP’s differently.
Dividing large problems into smaller ones is a popular method,
see e.g. [14]. By quantitative or qualitative method we can form
groups of departments which shall be placed together. One has
to provide an area for each group of departments and one has to Group 6
determine the layout for each group within these areas. Already
in [15] one suggests to approach the FLP in a hierarchical man-
ner by a divide-and-conquer strategy. They formed groups, com-
puted the layout for each of them and placed the groups in a final
Group 2 Group 5 Group 4 Group 3
step. We propose a coevolutionary method of iterative nature. In
a first step we find initial layouts for each group. Next, we fit a
rectangle around each group and enlarge each side by a factor Zk
giving more space to each group for possible further change. This
allows e.g. that a group becomes more oblong during the subse-
quent optimization. Next, we arrange these rectangles using again
a genetic algorithm. In the first run we approximate the IO-points Group 7
by the central points of the rectangles. Afterwards it is necessary Group 8
to consider all relative positions of the IO-points of the group. Ex- Group 1
periments with continued approximation by the central point did
not show satisfactory results.
Group areas after 4 iterations (5273 sec.)

Figure 2: This layout of the group areas after 4 iterations illustrates


how the shape of the group areas may change, see e.g. group 2 and
5.
Group 2 Group 4

exceeds a certain percentage P + of Zk then Zk is multiplied by a


1
factor F > . If it remains below P Zk then Zk is divided by the
same factor F . Consequently, if the shape of the needed area does
Group 3 not change the provided group area becomes tighter. We stop the
Group 5 Group 6
iteration when all group areas are close to the needed area of the
group. The algorithm is summarized below.

coevolutionary algorithm
for all groups k
genetic algorithm for group k
Group 7 Group 8
fit a group area around obtained layout
Group 1 enlarge the area by Zk
Initial group areas (246 sec.)
endfor
do
genetic algorithm for group areas
(treat group areas as departments with
Figure 1: As an illustrative example we take a FLP with 62 de- several IO-points)
partments clustered into 8 groups. The group areas in this initial for all k ? can be done simultaneously ?
layout are almost all square shaped. genetic algorithm for group k
(placement is restricted to the group area
Keeping the external IO-points for all groups constant each and all external IO-points are fixed)
group passes a short evolution by a GA. Observe that the objec- fit a new group area around the group
tive function does not only include the weighted distances between if ratio of the sides has changed much
the group members. The weighted distances to the constant IO- increase Zk
points outside the group give a contribution, too. It is obvious that else
these GA’s can be computed in parallel. For each group we decide decrease Zk
whether we change Zk for the next iteration. For this purpose we endif
compare the new dimensions to the old ones. If the proportional enlarge the new group area by Zk
increase endfor
  while there is still a “large” Zk for some k
max max(l new
lold
lold ; 0) ; max(snew sold ; 0)
sold or the average of the Zk ’s is large
proach shows very good results. Table 2 compares our best results
D48
D39 to the best known from [8] and [5].
D50
D30
D13 D31 N Four-Step GA 1998 GA 2002
D19 D4 D16 D8 D41 8 10 777:1 9 174:8 8 778:3
15 878:3 19 777:3 15 694:5
D7
D32 D40
D36
10
D26
D24
D10
D11
D57
D51
D52
D42
D46 12 41 267:5 45 353:5 37 396:1
D18 D22
D3
D25 D6 D28
D35 D27 D37 D62 Table 2: Minimal objective value for three FLP’s from [8] which
D20 D60

D21 D56 D53 are reported in [8] (Four-Step) and [5] (GA 1998) in comparison
with our best results (GA 2002).
D45 D23 D43
D2
D14 D55 D34 D61 D29 D49
D12 D5
D1 D38 For testing the coevolutionary GA we created a random exam-
D59 D33 D44

D9 D47 ple with 62 departments (FLP62) of different shapes. For simplic-


D58
D17 D54 ity we placed one IO-point in the center of each department. The
D15 weights w in (23) were generated randomly, too. There is no
initial layout. Hence, all the weights wi are zero. A table with all
Iteration 5, best individual for group 1 (5343 sec.)
quantities can be obtained from the authors1 .
In order to find a grouping we implemented the heuristic group-
ing algorithm from [16] which uses only simple exchange opera-
D48
D39 tions. A similar clustering algorithm was applied in [15]. A GA
D50
D30 proposed in [17] can generate improved groupings. The aim is
D13 D31 to arrange the departments into groups minimizing the sum of the
D4 D16 D8 D41 weights between departments belonging to different groups. In
D7
D19 D40 addition, one restricts the size of each group to a limit. We have
D36 D11 D51 D42 tested an example with 6 groups with a maximum of 11 depart-
D18
D10 D57
D52 D46 ments each and, secondly, 8 groups with at most 8 departments.
D22
D26 D32 D3
For the parameters introduced in section 3.2 and 3.3 we used
= 10% = 20% =5
D28
D37
the following settings: Rmu , P ac , N nc
D20 D6 D35 D27 D62
D60
,
M ch = 0:5%
D21 D53
D25 D24
D56

D2 D43 N cr N mu N co M ge
D14 D55
20
5 5 15
D34 D61 D29 D49
D45 D23 D5 first area layout
D59 D44
area layout 0
5 5 1
12
3 3 3
D47
D9 D1
D33
D38 group layouts
D17
and initial enlargement factor Zk = 60%, increase limit P =
D12
D15
+
D54
D58 75%, decrease limit P = 50% and change factor F = 1:5.
Iteration 5, best individual for group 2 (5408 sec.) There is always a conflict between good exploration of the search
space and fast computation. The first requires large populations
which again needs more time for computation. Certainly, these
parameters can still be optimized.
Figure 3: Keeping the external IO-Points (white departments) con-
Running the two examples with our coevolutionary algorithm
stant each group (gray departments) passes an evolution. These
on a PC (Pentium II 400 MHz) 10 times we obtained the following
evolutions can be computed in parallel. The figure shows the best
results:
individuals of the fifth iteration for group 1 and 2.
6 groups 8 groups
best objective 4 167 956:8 4 296 388:2
4. RESULTS AND CONCLUSIONS
worst objective 4 387 725:0 4 550 281:4
First let us discuss the quality of our coding and the genetic op-
average 4 304 970:7 4 411 970:2
average time 5 h 30 min 6 h 23 min
erators. Applying them to the FLP with 8 departments from [8] worst time 7h 34 min 10 h 57 min
we obtained satisfactory results. Running the deterministic algo-
rithm (31 h 30 min on a Pentium III 866 MHz and memory use It turned out that the computations treating the part where the
ca. 1.5 GB) it has been proved that the optimal objective value
8778 3
whole groups are moved are very time consuming. Here not only
is : . Running our genetic algorithm 13 times the optimal the orientation also the different reflection symmetries have to be
objective value was reached three times. In the worst case the ob-
9106 6 3 7%
considered. This is the reason why the six group setting performed
jective value was : which lies just : above the optimum. in general faster than the eight group one.
In all cases computations took less than 10 minutes (on a Pentium
II 400 MHz. Also for the FLP with 10 and 12 departments our ap- 1 email: tmd@ipa.fhg.de
of computation.
D6
D19
D33 D39
D45 D46 D19 D48
D9 D31 D13 D49
D35
D34 D8 D15
D52
D20
D60 D37
D25 D39
D5 D1 D58
D30
D26 D12 D50 D32 D56
D8
D11 D22 D29 D4 D15 D42 D46 D44 D6
D44 D36 D40 D16
D25
D45 D22 D49
D57
D30 D16
D38 D43 D47
D28 D41 D51 D5
D7 D18
D61 D26 D12 D27 D52
D54
D61
D21 D27 D58 D51
D50 D40 D43 D2
D48 D3 D24 D21 D11 D20 D32 D47
D23 D37 D55 D42 D55
D24
D59
D2 D54 D33
D53 D59 D35
D1 D18 D57
D17 D17 D41 D29 D53
D10
D14 D4 D56 D34
D62 D38 D7
D3 D36 D60 D62
Iterations 9, Objective Value: 4167956.8 (11812 sec.) D14 D31
D23
D28

D9
D13
Figure 4: Best solution for FLP62 clustered into 6 groups obtained D10
by our coevolutionary GA.
62 Departments, Objective Value: 4221911.0

D26 D25 Figure 6: Solution for FLP62 from a single run of a simple GA
which took 9 days an 18 hours on a PC with a Pentium II 400
D14 D20 D32 D19 MHz.
D24 D18 D36
D9 D55
Summarizing, we can conclude that the proposed coevolution-
D13 ary GA opens up the possibility to find good solutions for large
D6 D10
D17 D34 D59 D61 FLP’s within some hours where global optimization algorithms
D28 D57 D11 D7 D48 fail. In addition there is still a high potential for further compu-
D38 tational acceleration by parallelization.
D54 D58 D12 D21 D3 D22
D1
D16
D8 D4 D41
D56 5. REFERENCES
D23 D53
D60
D50
D31 D30
D45 D51
[1] R. D. Meller and K.-Y. Gau. The facility layout problem: Re-
D33 D35
D39 cent and emerging trends and perspectives. Journal of Man-
D47
D5
D2 ufacturing Systems, 15(5):351–366, 1996.
D43 D27 D52 D40 D37 [2] W. C. Chiang. Visual facility layout design system. In-
D44

D15
ternational Journal of Production Research, 39(9):1811–36,
D49 D46
D29 D62 D42 2001.
Iterations 35, Objective Value: 4296388.2 (39436 sec.) [3] F. Azadivar and J. Wang. Facility layout optimization using
simulation and genetic algorithms. International Journal of
Production Research, 38(17):4369–83, 2000.
Figure 5: Best solution for FLP62 clustered into 8 groups obtained [4] J. Tavares, C. Ramos, and J. Neves. Addressing the layout
by our coevolutionary GA. design problem through genetic algorithms and constraint
logic programming. In M. H. Hamza, editor, Artificial Intel-
ligence and Soft Computing. Proceedings of the IASTED In-
ternational Conference, pages 65–71. IASTED/ACTA Press,
We hoped to get some reference solutions by saving incumbent
2000.
solutions of a branch and bound solving FLP62. Yet, even after
one week of computation on a PC with a Pentium III 866 MHz [5] M. Rajasekharan, B. A. Peters, and T. Yang. A genetic
there was no result. A simple GA coped much better with the algorithm for facility layout design in flexible manufactur-
size of the problem. It found a solution ( : ) in the same 4 221 911 0 ing systems. International Journal of Production Research,
range as the coevolutionary GA. Yet, it took more than one week 36(1):95–110, 1998.
[6] B. Montreuil. A modelling framework for integrating layout
design and flow network design. In Progress in material han-
dling and logistic / Material Handling ’90, pages 95–116,
1991.
[7] R. D. Meller, V. Narayanan, and P. H. Vance. Optimal facility
layout design. Operations Research Letters, 23(3-5):117–
127, 1999.
[8] S. K. Das. A facility layout method for flexible manufactur-
ing systems. International Journal of Production Research,
31(2):279–297, 1993.
[9] K. C. Chan and H. Tansri. A study of genetic crossover op-
erations on the facilities layout problem. Computers and In-
dustrial Engineering, 26(3):537–550, 1994.
[10] J. S. Gero and V. A. Kazakov. Evolving design genes in space
layout planning problems. Artificial Intelligence in Engineer-
ing, 12(3):163–176, 1998.
[11] J. S. Kochhar and S. S. Heragu. Multi-hope: a tool for multi-
ple floor layout problems. International Journal of Produc-
tion Research, 36(12):3421–35, 1998.
[12] V. Schnecke and O. Vornberger. Hybrid genetic algorithms
for constrained placement problems. IEEE Trans. Evolution-
ary Computation, 1(4):266–277, 1997.
[13] K-Y. Gau and R. D. Meller. An iterative facility layout
algorithm. International Journal of Production Research,
37(16):3739–3758, 1999.
[14] Y. Liu, X. Yao, Q. Zhao, and T. Higuchi. Scaling up fast
evolutionary programming with cooperative coevolution. In
Proceedings of the 2001 Congress on Evolutionary Compu-
tation, volume 2, pages 1101–8, 2001.
[15] K. Y. Tam and S. L. Li. A hierarchical approach to the fa-
cility layout problem. International Journal of Production
Research, 29(1):165–84, 1991.
[16] G. Harhalakis, R. Nagi, and J. M. Proth. An efficient heuris-
tic in manufacturing cell formation for group technology ap-
plications. International Journal of Production Research,
28(1):185–98, 1990.
[17] P. De Lit, E. Falkenauer, and A. Dechambre. Grouping ge-
netic algorithms: an efficient method to solve the cell for-
mation problem. Mathematics and Computers in Simulation,
51(3-4):257–271, 2000.

You might also like