You are on page 1of 17

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/265702361

EA for solving combined machine layout and job assignment problems

Article  in  Journal of Industrial and Management Optimization · August 2008


DOI: 10.3934/jimo.2008.4.631

CITATIONS READS
8 336

2 authors:

Tapabrata Ray Ruhul Sarker


UNSW Sydney UNSW Sydney
268 PUBLICATIONS   4,627 CITATIONS    378 PUBLICATIONS   6,676 CITATIONS   

SEE PROFILE SEE PROFILE

Some of the authors of this publication are also working on these related projects:

Design Optimization of High Speed Planing Craft View project

Development of efficient algorithms for solving computationally expensive optimization problems View project

All content following this page was uploaded by Ruhul Sarker on 29 September 2014.

The user has requested enhancement of the downloaded file.


JOURNAL OF INDUSTRIAL AND Website: http://AIMsciences.org
MANAGEMENT OPTIMIZATION
Volume 4, Number 3, August 2008 pp. 631–646

EA FOR SOLVING COMBINED MACHINE LAYOUT AND JOB


ASSIGNMENT PROBLEMS

Tapabrata Ray
School of Aerospace, Mechanical and Civil Engineering
University of New South Wales
Australian Defence Force Academy, Canberra, Australia

Ruhul Sarker
School of Information Technology and Electrical Engineering
University of New South Wales
Australian Defence Force Academy, Canberra, Australia

(Communicated by Song Wang)

Abstract. Machine layout and material flow between machines are crucial
considerations for improving productivity in any manufacturing environment.
The machine layout and the operations assignment problems are both known
to be NP hard problems. In this paper, we consider a combined machine
layout and job assignment problem and introduce an evolutionary algorithm to
solve this combined problem. The usefulness of our approach is demonstrated
through numerical examples.

1. Introduction. Machine layout design has been regarded as the key to improve
productivity in any manufacturing system. An improved layout design reduces the
manufacturing lead time and increases throughput [1, 2, 3]. The primary objective
of machine layout problems is to obtain the most effective machine arrangement
(relative locations of machines) and the path of material flow so that the overall
system cost (usually machining cost plus the material handling cost) is minimized.
The major types of machine arrangements, considered in practice, are process based,
the flow-line (also known as single line), the multi-line, the semi-circular and the
loop layout. The details on these layouts can be found in [4]. Based on the pattern
of material flow, these layouts can be grouped as flow shop and job shop. In the
flow shop layout, all products usually require similar sequence of operations. As
a result, the machines are physically arranged either as single straight line, semi-
circular or in a loop. The flow of material in such arrangements is unidirectional
from the first to the last operation. In job shop, the physical arrangement is usually
multi-line where different jobs require different sequence of operations. As the
frequent rearrangement of machines is an infeasible task, the jobs (with a known
order of operations) need to move in different directions for the required operations
in different machines.
2000 Mathematics Subject Classification. Primary: 58F15, 58F17; Secondary: 53C35.
Key words and phrases. Machine layout, task-machine assignment, optimization, multi-
objective, genetic algorithm.
Corresponding Author: r.sarker@adfa.edu.au, Tel no.: +61 2 6268 8051, Fax no.: +61 2 6268
8581 .

631
632 TAPABRATA RAY AND RUHUL SARKER

The machine layout problem is a well-known NP hard problem [6]. In the past,
a number of attempts have been made to solve such problem using mathematical
programming approaches([12, 11]). Such approaches require a substantial amount
of computational effort when the problem size is large. The purpose of this research
is to develop a general methodology for determining the optimal layout of machines
which is capable of dealing with any layout patterns. Earlier work on layout prob-
lems involving genetic algorithms (GA) is briefly reported here. Mak et al [6] studied
the use of GA in solving machine layout problems by simplifying the material flow
within a manufacturing plant. El-Baz [4] used GA to study different material flow
systems within a manufacturing facility. Ficko et al [7] presented a GA for designing
a flexible manufacturing system with one or multiple rows. Chen and Ho [5] used
GA for solving a production planning problem under flexible manufacturing system
environment. Balakrishnan et al [8] developed a GA based methodology for solving
static plant layout problem with up to 30 departments.
In this paper, we consider a problem where the entire shop floor is divided into
a number of cells of equal area (either square or rectangular) within the layout
arrangement under consideration. The number of cells could be more than the
number of machines in which case there would be empty cells. Each machine can
perform P operations. Our aim is to find out the minimum cost solution where cost
is the sum of the transport cost and the machining cost. The solution would answer
the following questions.

1. Which machine is assigned to which cell?


2. Which machine is set to do which operation? Although each of the machines
can do P operations, each machine is assigned to do a particular operation
which does not change during the process. The processing time for the same
operation might vary between machines and for different products.
3. What is the path (sequence of machines as each machine is set to do a par-
ticular operation) that each product follows?

El-Baz [4] considered a problem where the problem is to assign machines to loca-
tions within a given layout arrangement by minimizing the total material handling
costs. However, Chen and Ho [5] assumed that the machine locations are fixed and
given, and each machine is capable of performing multiple operations. Their prob-
lem was to assign the operations of given product(s) to machines by minimizing the
overall flow time and machine workload. In the problem, the flow time is assumed
to be the machining time plus material handling time. In both problems, the order
of operations is given. Our problem is a combined problem of machine layout
and production planning. In other words, it is a generalized problem which
combines both El-Baz [4] and Chen and Ho [5] problems with additional considera-
tions. It is to assign machines of multiple operational capability to locations within
a given layout arrangement and to assign operations to individual machines for mul-
tiple products and the machine sequence for the products while minimizing the sum
of machining and material handling costs. Our problem definition is different from
Urban et al. [15] and much more complex and generalized. In fact, their situation is
a simple case of our problem. Although these two interrelated problems (machine
layout and operations assignment) can be solved sequentially, a combined approach
for determining the machine locations and operations assignment simultaneously
would reduce the chances of obtaining sub-optimal solutions.
EA FOR COMBINED MACHINE LAYOUT AND JOB ASSIGNMENT 633

The paper is organized as follows. Following the introduction in Section 1, we


present the problem description and its mathematical model in Section 2, the so-
lution approach in Section 3 and numerical examples in Section 4. The major
conclusions are summarized in Section 5.

2. Mathematical model. There are basically two types of problems that we need
to consider
1. Layout problems with conventional machines
2. Layout problems with flexible machines
For the first class of problems with conventional machines, a product may use
either all the machines in the shop floor or a subset of the machines, and it may
visit a given machine more than once before completion. The sequence (/order)
of operations (/machine used) for each product and the operation time of each
product on each machine is known. The material handling equipment is given
(for example, Automated Guided Vehicle, AGV) and the cost of material handling
between machines can be calculated based on distance and/or other criteria. For a
given mix of products, the total material handling cost is dependent on the location
of individual machines. So the layout problem is to assign the machines to cell
locations within a given layout arrangement such that the material handling cost
is minimum. It is noted that the layout problem is a long term decision problem
which is usually made based on aggregate information rather than a short term
schedule.
For the second class of problems i.e. with flexible machines, we assume that
each machine is capable of performing all or a subset of operations required by
the products. However, there is a considerable amount of setup time and cost for
switching from one operation to another and the operation time required for a given
product varies from machine to machine. As a result, it is economic to setup the
machines less frequently. The problem is then to assign the location of the machines
and also their mode of operation. In fact, the first class of problems of machine
layout can be thought as a special case of the second where the mode of operation of
each machine is fixed. As a result, we intend to develop an algorithm to solve both
machine layout and machine operation assignment (production planning) problem.
The layout and production planning problem under consideration can be defined as
follows.
1. The term cell is used to describe a machine centre or location. The number
of cells, cell area and their arrangements are given.
2. The term machine represents a modern machine tool such as Numerical Con-
trolled (NC) machine tools. The machines could be either identical or non-
identical in terms of the type and number of different operations to be per-
formed.
3. A machine is capable of performing several types of operations and an oper-
ation can be performed on alternative machines.
4. A machine can perform only one operation at any time and operations to be
performed in the machine are non-preemptive. Only one operation for each
machine (mode of operation) would be chosen in solving the problem.
5. A product requires a number of operations. A product may choose one or
more machines at each stage of its operations and the transportation of the
products between the machines is handled by a material handling system (we
assume AGV).
634 TAPABRATA RAY AND RUHUL SARKER

Table 1. One-line layout arrangement (1 × 5)

p=1 p=2 p=3 p=4 p=5


o=1 1 2 3 4 5

Table 2. Multi-line rectangular layout arrangement (3 × 5)

p=1 p=2 p=3 p=4 p=5


o=1 1 2 3 4 5
o=2 6 7 8 9 10
o=3 11 12 13 14 15

Table 3. Multi-line square layout arrangement (4 × 4)

p=1 p=2 p=3 p=4


o=1 1 2 3 4
o=2 5 6 7 8
o=3 9 10 11 12
o=4 13 14 15 16

6. There may be more than one product (or product type) with different opera-
tions and order of operations.
7. The distances between machines can be calculated using the cell co-ordinates.
Currently it is the sum of traversal in x and y coordinates. The material
handling times can be calculated based on the vehicle velocity and distance.
(Note that one can replace this part with a given time matrix).
8. The times and costs of operations in each machine for any product are deter-
ministic and known.
9. The layout arrangement can be considered of any type.
The machine layout problem addressed here is the assignment of N machines to
M cell locations in a given layout arrangement. The production planning problem
considers performing L operations of each product on N available machines. During
the manufacturing process, the material flows from one machine to the next until all
the operations are completed. So the objective of the general layout and production
planning problem is to minimize the sum of all machining and material handling
costs of the manufacturing system.
For convenience and easy understanding, we number all the cell locations from 1
to N . The examples for numbering for one-line linear, multi-line square and multi-
line rectangular arrangements in a two dimensional floor space(o,p) are shown in
Tables 1-3.
Tables 1-3 show a single line layout with 5 cells, 3 × 5 rectangular layout with
15 cells, and 4 × 4 square layout with 16 cells respectively. As per our problem
definition, if the number of machines is less than the number of cells (i.e., N < M ),
then (M − N ) cells will remain empty.
2.1. Layout Problem 1. As indicated earlier, El-Baz [4] considered a conventional
machine layout problem which is to assign machines to locations within a given
layout arrangement by minimizing the total material handling costs. Each machine
EA FOR COMBINED MACHINE LAYOUT AND JOB ASSIGNMENT 635

would perform only one operation. In this section, we consider a similar problem
except that (i) the layout arrangement can be of any type, (ii) the number of cells
(/locations) can be greater than the number of machines to be located and (iii)
the order of machines that would be visited by each job is given. To formulate the
mathematical model for this problem, the following notations are used.

i and k = the machine number, i = k = 1, . . . , N


j and l = the cell location number, j = l = 1, . . . , M
q = product type, q = 1, . . . , Q
Djl = the distance between cell j and l based on linear distance
along the AGV path
Pqik = the amount of product q that will be transported from
machine i to machine k
Cqjl = cost per unit distance for product q from cell j to cell l

1 if machine i is located in cell location j
Xij =
0 otherwise
The mathematical model is presented below.
The objective is to minimize the sum of material handling cost over every pair
of machines.

Q X
X N X
M X
N X
M
Minimize Z = Pqik Cqjl Djl Xij Xkl (1)
q=1 i=1 j=1 k=1 l=1

This is a quadratic function. The value of Pqik will be positive if any positive
quantity of product q required to be transported from a machine in location j to
a machine in location l that is required by product q. Otherwise the value of Pqik
will be zero. Note that the order of operations for each product is known and we
assume that there exists only one path for each product. The values Djl are always
positive. The term (Xij Xkl ) is equal to one if there exist machines in both locations
j and l.
The first constraint ensures that each location contains at best one machine.

N
X
Xij ≤ 1 j = 1, . . . , M (2)
i=1

The second constraint ensures that each machine is assigned to exactly one lo-
cation.
M
X
Xij = 1 i = 1, . . . , N (3)
j=1

The following condition is to make sure that the decision variables are binary (0
or 1) variables.
Xijs = 0 or 1 ∀i, j (4)
636 TAPABRATA RAY AND RUHUL SARKER

As the constraints are set to assign a number of machines to a number of loca-


tions, the mathematical programming model is recognized as Quadratic Assignment
Problem (QAP) in the optimization and operations research literature.

2.2. Layout Problem 2. As discussed earlier, Chen and Ho [5] considered an


operations assignment problem assuming that the machine locations are fixed and
given, the order of operations is given, and each machine is capable of performing
multiple operations. Their problem was to assign the operations of given prod-
uct(s) to machines by minimizing the overall flow time and machine workload. In
stead of assuming fixed machine locations, we combine our Layout Problem-1 with
this problem for simultaneously determining the machine locations and operations
assignment. To formulate the mathematical model for this problem, the following
notations are used.

iandk = the machine number, i = k = 1, . . . , N


jandl = the cell location number, j = l = 1, . . . , M
sandt = the operation number, s = t = 1, . . . , S
q = product type, q = 1, . . . , Q
M Cqis = unit operation cost of product q for operation s in machine i
Djl = the distance between cell j and l
based on linear distance along the AGV path
Pqst = the amount of product q that will require operation
t after operation s
Cqjl = cost per unit distance for product q from cell j to cell l


1 if machine i is located in cell location j and performing operation s
Xijs =
0 otherwise
The mathematical model is presented below.
The objective is to minimize the sum of machining cost in each machine and
material handling cost over every pair of machines.

Q X
X N X
M X
N X
M X
S X
S
Minimize Z = Pqst (Cqjl Djl + M Cqis ) Xijs Xklt (5)
q=1 i=1 j=1 k=1 l=1 s=1 t=1

This is a quadratic function. The value of Pqst will be positive if any positive
quantity of product q required operation s from machine i located in j would be
transported to machine k in location l for next operation t that is as per the se-
quence of operations for product q. Otherwise the value of Pqst will be zero. Note
that the sequence of operations for each product is known. The values Djl are
always positive. The term (Xijs Xklt ) is equal to one if there exist machines in both
locations j and l, and they perform operations s and t respectively.
The first constraint ensures that each location contains at best one machine.
N
X
Xijs ≤ 1, j = 1, . . . , M and s = 1, . . . , S (6)
i=1
EA FOR COMBINED MACHINE LAYOUT AND JOB ASSIGNMENT 637

The second constraint ensures that each machine is assigned to exactly one lo-
cation.
M
X
Xijs = 1, i = 1, . . . , N and s = 1, . . . , S (7)
j=1

The third constraint ensures that each machine in a given location is to perform
only one operation.

S
X
Xijs ≤ 0, i = 1, . . . , N and j = 1, . . . , M (8)
s=1

The following condition is to make sure that the decision variables are binary (0
or 1) variables.

Xijs = 0 or 1 ∀i, j, s (9)

This constraint can be relaxed by allowing each machine to switch from operation
to operations with switching /setup costs.
The above mathematical programming model is a Quadratic Assignment Prob-
lem (QAP).

2.3. Layout Problem 3. The above two models represent single objective lay-
out problems. For a given mix of jobs and fixed layout, some machines may take
longer to complete their tasks than other machines. This means higher load on
some machines which results a longer makespan for some jobs. So we have consid-
ered another objective to balance the workload on machines which would minimize
the sum of {(Average load or machining time per machine) - (Machining time in
individual machine)}2 . This can be expressed mathematically as follows:

  
N  Q X N X M XN X
M XS X S
X 1  X
Z2 = Pqst M Tqis Xijs Xklt  −
N
i=1 q=1 i=1 j=1 s=1 t=1
k=1 l=1
2
Q X
X M X
N X
M X
S X
S 
Pqst M Tqis Xijs Xklt (10)

q=1 j=1 k=1 l=1 s=1 t=1

M Tqis = unit operation time of product q for operation s in machine i


The first component represents the average machining time operated by each
machine and the second component is the total machining time operated by any
machine i. The bi-objective problem formulation is as follows:

Q X
X N X
M X
N X
M X
S X
S
Minimize Z1 = Pqst (Cqjl Djl + M Cqis ) Xijs Xklt (11)
q=1 i=1 j=1 k=1 l=1 s=1 t=1
638 TAPABRATA RAY AND RUHUL SARKER

  
N  Q X N X M X N X M X S X S
X 1  X
Minimize Z2 = Pqst M Tqis Xijs Xklt  −
N
i=1 q=1 i=1 j=1 k=1 l=1 s=1 t=1
2
X Q XM X N XM X S X S 
Pqst M Tqis Xijs Xklt (12)

q=1 j=1 k=1 l=1 s=1 t=1

Subject to Costraints 6 - 9
From the mathematical programming point of view, the first few models are
constrained nonlinear integer programming [17] and the last model is a multiobjec-
tive constrained nonlinear integer programming model. Further on multiobjective
programming can be found in [16].

3. Solution approach. Considering the complexity of the above mathematical


models, we develop a genetic algorithm for solving the second class (generic) of
the problem. As the use of genetic algorithm is well-known to many disciplines,
including engineering, we are not providing any introduction on genetic algorithms.
However, interested readers can find introductory GAs for solving optimization
problems in [13].
The optimization algorithm can be categorized as a stochastic, population based,
zero order, ellitst algorithm. It can handle single and multiobjective, unconstrained
and constrained optimization problems with mixed variables and can be applied to
problems with highly nonlinear objective and constraint functions with functional
and slope discontinuities. This algorithm explicitly focuses on maintaining diversity
in both objective and variable spaces unlike most other optimization algorithms
which focus on diversity only on the objective space. This mechanism comes into
play in the process of population reduction from a size of 2E to E where, it insists on
maintaining not only the end points of the objective space but also maximum and
minimum values of the variables. The process is certainly more computationally
expensive than NSGA-II [10, 9] and can be thought as a diversity maintaining
mechanism which might be useful for problems where the diversity in the variable
space is important. The pseudo-code of the algorithm is provided in Algorithm 1.
The procedure for selecting a parent P 1 is described in and the same applies to
selecting P 2.
1. Select two individuals (E1 and E2) from the population of E solutions using
a uniform random selection.
2. If E1 is feasible and E2 is infeasible: P 1 is selected as the parent and vice
versa.
3. If both E1 and E2 are infeasible: One which has the minimum value of the
maximum violated constraint is selected as the parent.
4. If both E1 and E2 are feasible and E1 dominates E2: E1 is selected as parent
P1 and vice versa.
5. If both E1 and E2 are feasible and none dominates each other: Randomly
select E1 or E2 as the parent P 1.
The procedure to retain E solutions from a set of 2E solutions is presented below:
1. Rank the set of 2E solutions. (The procedure for ranking is described below).
EA FOR COMBINED MACHINE LAYOUT AND JOB ASSIGNMENT 639

Algorithm 1 Proposed Algorithm


1: t ←− 0
2: Generate E individuals representing a population: P op(t) = {I1 , I2 , . . . , IE }
uniformly in the parameteric space.
3: Evaluate each individual: Compute their objectives and constraints i.e., fk (Ii )
and cj (Ii ); for i = 1, 2, . . . , E individuals, k = 1, . . . , G objectives and j =
1, . . . , H constraints.
4: Select two parents P 1 and P 2. (The procedure for selection is described below)

5: Create two children C1 and C2 via crossover and mutation of P 1 and P 2. .


6: Repeat steps (4) and (5) until E children are created.
7: Evaluate E children.
8: Merge E parents and E children to form a population of size 2E.
9: Retain better performing E solutions from the above 2E solutions.
10: t ←− t + 1
11: if t < Tmax (maximum number of genrations) then
12: Repeat steps (4) through (10)
13: else
14: Stop
15: end if

2. If the number of rank=1 solutions (i.e. non-dominated solutions) is less than


E, select top E solutions based on their rank and copy them to the new
population.
3. If the number of rank=1 solutions is more than E, follow the following steps:
(a) Select the solutions which have a minimum value (assuming minimization
in both objectives) in any of the objectives and copy them to the new
population.
(b) For every variable, copy two solutions to the new population which has
its minimum and the maximum value if they have not been copied yet
(including step (a)).
(c) For the remaining rank=1 solutions, the sequence of who goes in first to
the new population is decided as follows:
(i) Compute the score by inserting the solution into the new popula-
tion one at a time. The score is the minimum Euclidean distance
computed between the solution attempting to enter with all other
existing solutions in the new population based on the objective func-
tion space. Scaled values are used for the score computation i.e. the
objective space is scaled using the maximum and minimum values in
each dimension based on the set of rank=1 solutions.
(ii) The solution with the highest score is allowed to go into the new
population unless it has been copied earlier in which case the solution
with the next score goes in.
(iii) The steps (i) and (ii) are repeated until the new population has a
size of E.
The procedure for rank computation is as follows:
1. Separate the set of E solutions to a set of feasible and a set of infeasible
solutions.
640 TAPABRATA RAY AND RUHUL SARKER

2. Perform a non-dominated sorting to assign ranks to the solutions in the fea-


sible set.
3. Rank the solutions in the infeasible set based on their maximum value of the
violated constraint.
4. Update the ranks of the solutions in the infeasible set by adding the rank of
the worst feasible solution to each.
The assumptions behind the procedures in the algorithm are:
1. A feasible solution is always preferred over an infeasible solution. This is
a commonly adopted practice, although one might argue that it’s better to
retain a marginally infeasible solution rather than a bad feasible solution.
2. Step (a) in the above procedure ensures that the endpoints in the objec-
tive space are inserted into the new population and the extent of the non-
dominated front is preserved.
3. Step (b) is a means to maintain variable diversity i.e. to include a possibility
of retaining variable values which might be useful.
To deal with this Flexible Manufacturing System (FMS) problem, the initializa-
tion and the recombination schemes had to be redesigned. A solution is represented
as follows:
1. There are S cells available to locate P machines (S ≥P).
2. Each of these P machines can assume N Si states for i = 1 . . . P and the states
of the machine is denoted as Sij where the subscript i denotes the ith machine
and j denotes the j th state of the machine.
3. The first segment of the variable vector (i.e. the layout sequence) [x] is of
size S . An empty cell contains a value of -1. For example [x]= [-1,2,0,1,-1]
indicates the first and the last cell are vacant while the second cell contains
machine number 2, the third cell contains machine number 0 and so on.
4. The second segment of the variable vector (i.e. the state sequence) [x] is of size
P . It contains the state of the machines. For example if the second segment of
the variable vector assumes a form like [x]= [4,2,0,1,2] indicates that the state
of the first machine in the layout sequence is in state 4, the second machine
in the layout sequence is in state 2 and so on.
5. The third and the last segment of the variable vector (i.e. the machine se-
quence) if of the size of number of products times the number of operations
for each product. For a single product, its of the size of number of operations
required for the product. For example, the last segment of [x]= [4,2,0,1,2]
indicates that the product starts at machine number 4, followed by machine
number 2, followed by machine number 0 and so on.

3.1. Initialization. It is important to take note that all possible types of opera-
tions required by the products are atleast available in one machine i.e. the machine
states. This ensures that the process of initialization always creates feasible solu-
tions.

3.2. Recombination. There are currently two schemes


1. For each parent solution: Swap between two machines in the layout. This is
more like mutation and will play a part in reducing transport cost in between
machines. The machine states do not change in this operation.
EA FOR COMBINED MACHINE LAYOUT AND JOB ASSIGNMENT 641

Table 4. Machining time data

Operation Operation time in machine # (in minutes)


1 2 3 4 5 6 7 8 9
1 10 15 20 25 30 25 20 15 10
2 30 25 30 15 25 15 25 25 30
3 25 30 15 20 20 25 30 35 40
4 15 25 30 35 30 10 15 20 25
5 30 35 40 45 20 35 35 25 20

Table 5. Product related data

Operation Problem #
1 2 3 4
Number of products 1 1 2 2
Number of operations required 10 5 5 5
Quantity of product 1 100 100 100 100
Quantity of product 2 - - 200 200

2. The second one is for change of states and machine locations. Select a
crossover point which lies in between the second segment of the variable vec-
tor. Create two children from the parents P 1 and P 2. The crossover point is
only considered valid if the machine state vectors in both the children contain
all operations required by the products atleast once. Repair the child solu-
tions states and the machine sequence part of the variable vector to ensure
feasibility.

4. Numerical examples. To demonstrate the use of the proposed algorithm, we


have set four test problems. The first three are single objective problems and the
fourth one is a bi-objective problem. The data of these problems are presented in
Tables 4-6.
The following data are common for all the test problems.
1. Number of machines = 9
2. Number of operations = 5
3. Machine capability: All 5 operations
4. Layout arrangement: 3x3 square block arrangement i.e 9 cells for 9 machines
5. The distance between any two adjacent cells: one unit
6. Cost for material handling per unit per unit distance = $10.00
7. Machining cost = $100 per hour (fixed for all machines)
8. Machining time matrix is shown in Table 4.
The second objective function in test problem 4 is set equal to {(Total machining
time / Number of machines) - (Sum of machining time in each machine)}2 . The
readers who are not familiar with evolutionary multiobjective optimization and/or
algorithms are referred to read Sarker et al [14].
In running our test problems, we use a population size of 100, generations of 100
and 200, probability of crossover of 0.9 and 0.8, probability of mutation of 0.1 and
0.2, distribution indices of crossover and mutation as 10 and 20 and random seeds
642 TAPABRATA RAY AND RUHUL SARKER

Table 6. Order of operations

Test Problem Product Order of operations


1 1 1→2→3→4→5→1→2→3→4→5
2 1 1→2→3→4→5
3 1 2→1→4→3→5
2 2→5→4→3→1
4 1 2→1→4→3→5
2 2→5→4→3→1

Table 7. Test problem 1

(a) Machine locations in 3 × 3 square (b) Operations performed by correspond-


block ing machines in each grid

Column Column
Row 1 2 3 Row 1 2 3
1 7 8 1 1 2 2 2
2 2 3 6 2 2 3 4
3 9 4 5 3 1 2 5

of 0.2, 0.4 and 0.6. The above combinations will result in 96 trials. From these
96 trials, we have obtained consistently the same optimal solutions for all four test
problems. The solutions of the test problems are presented below.

4.1. Test Problem 1. Objective function value = Total Cost = $33333.33

Order of machines used for the product: → 9 → 4 → 3 → 6 → 5 → 9 → 4 →


3→6→5

As per the solutions, the machine 9 is located in cell (3, 1), machine 4 in cell (3,
2) and so on (see Table 7(a)) and the machine 9 would perform operation 1, machine
4 operation 2 and so on (see Table 7(b)). The product is using five machines for five
different operations. The machines are 3, 4, 5, 6 and 9 (bold italic in Table 7(a)) and
they perform the operations 3, 2, 5, 4 and 1 (bold italic in Table 7(b)) respectively.

4.2. Test Problem 2. Objective funciton value = $17333.33

Order of machines usef for the product: → 9 → 4 → 5 → 6 → 8

The product is using five machines for five different operations. The machines
are 4, 5, 6, 8 and 9 (bold italic in Table 8(a)) and they perform the operations 2,
3, 4, 5 and 1 (bold italic in Table 8(b)) respectively.

4.3. Test Problem 3. Objective function value = $48000.00

Order of machines used for the product 1: → 4 → 1 → 6 → 3 → 5


Order of machines used for the product 2: → 4 → 5 → 6 → 3 → 9
EA FOR COMBINED MACHINE LAYOUT AND JOB ASSIGNMENT 643

Table 8. Test problem 2

(a) Machine locations in 3 × 3 square (b) Operations performed by correspond-


block ing machines in each grid

Column Column
Row 1 2 3 Row 1 2 3
1 8 6 3 1 5 4 4
2 4 5 7 2 2 3 5
3 9 1 2 3 1 5 2

Table 9. Test problem 3

(a) Machine locations in 3 × 3 square (b) Operations performed by correspond-


block ing machines in each grid

Column Column
Row 1 2 3 Row 1 2 3
1 2 7 8 1 1 1 2
2 9 5 4 2 1 5 2
3 3 6 1 3 3 4 1

For the first product, the machines used are 1, 3, 4, 5 and 6 (bold italic in
Table 9(a)) and they perform the operations 1, 3, 2, 5 and 4 (bold italic in Ta-
ble 8(b)) respectively. For the second product, the machines used are 3, 4, 5, 6 and
9 (see Table 9(a)) and they perform the operations 3, 2, 5, 4 and 1 (see Table 8(b))
respectively. Four out of five machines are common in both products.
4.4. Test Problem 4. After running the bi-objective problem, only four non-
dominated solutions, were found. These are: (50833.33, 5458.22), (53166.67, 2972.89),
(59833.333, 2128.00), and (62000.00, 1667.56). These solutions are shown in the
Figure 1.
The detailed results for the above four alternative points on the nondominated
front are given in Table 10.
The machine load balancing objective forces to use as many machines as possible.
As per the bi-objective solutions, three out of four alternative solutions suggest using
of all nine machines and the first solution uses eight out of nine machines, where as
the single objective (as seen above) solutions suggest to use only five machines for
five operations.
4.5. Solution quality. As the complete enumeration would be too expensive, we
have compared our solutions for the single objective test problems with a large
number of randomly generated solutions. We have generated two million random
solutions for the first three test problems and reported the best fitness values in
Table 11. When comparing the best solutions, our algorithm provides superior
solutions for problem 1 and problem 3, but inferior solution for problem 2. In our
experimentation, we allowed a maximum of 20,000 (with population size 100 and
maximum generation number 200) fitness evaluation as opposed to 2 million in
random solutions. By increasing the number of fitness evaluations for problem 2 to
80,000 (with population size 200 and maximum generation number 400), we are able
644 TAPABRATA RAY AND RUHUL SARKER

6000

5500

Machine Load Imbalance 5000

4500

4000

3500

3000

2500

2000

1500
5 5.2 5.4 5.6 5.8 6 6.2 6.4
Cost 4
x 10

Figure 1. Pareto frontier for test problem 4

Table 10. Bi-objective solutions

Alternative Machine layout Mode of Order of machines


solutions as 3 × 3 grid operation for two products
(50833.33, 5458.22) 7 8 9 2 3 5 2 1 6 8 9
4 5 6 2 5 4 4 5 6 3 1
2 1 3 2 1 3
(62000.00, 1667.56) 2 6 3 1 2 2 3 2 1 7 8
1 5 7 4 5 3 6 5 1 4 9
4 9 8 3 1 5
(53166.67, 2972.89) 2 6 3 1 2 2 3 2 1 7 8
1 5 7 4 5 3 6 5 1 4 9
4 9 8 3 1 5
(59833.33, 2128.00) 2 6 3 1 2 2 3 2 1 7 8
1 5 7 4 5 3 6 5 1 4 9
4 9 8 3 1 5

to obtain a fitness value of 16,500 which is same as the best of 2 million random
solutions. This comparison demonstrates the fact that the quality of solutions
produced by our algorithm is quite good.

5. Summary and conclusions. In this paper, a combined machine layout and


the operations assignment problem is addressed. Considering the complexity of
the problem, we have developed an evolutionary algorithm based methodology to
solve the problem. The benefits of our approach are demonstrated through three
EA FOR COMBINED MACHINE LAYOUT AND JOB ASSIGNMENT 645

Table 11. Comparing with randomly generated solutions

Problem 1 Problem 2 Problem 3


Our algorithm 33,333.33 17,333.33 48,000.00
Random solution 36,167 16,500 52,333

single objective and one bi-objective test problems. The interesting features of this
research are discussed below.
1. Any layout arrangement can be considered (such as linear, square, rectangular,
circular or any other arrangement) and any size with given material handling
facilities. In our test problems, we have considered a rectangular arrangement.
2. The number of machines can be less than the number of cells available. In our
test cases, we have considered the number of machines equal to the number
of cells. Current work does not put any limit on the number of machines and
/or cells.
3. The machines could be either conventional machines or modern machine tools.
They could be either identical or non-identical in terms of the type and number
of different operations that they can perform. In our test cases, we have
considered non-identical NC machine tools.
4. A product may choose one or more machines at each stage of its operations and
the transportation of the products between the machines. We have considered
that different operations must be performed in different machines.
5. A product may visit a machine more than once (see test problem 1 above)
before completion.
6. There may be more than one product (or product type) with different opera-
tions and order of operations (see test problem 2 above).
7. The distances between machines can be calculated using the cell co-ordinates
if the distance matrix is not given. In our cases, we have calculated based on
cell co-ordinates.
The algorithm is designed to optimize the problem by selecting only one operation
for each machine (mode of operation) irrespective of the number of products to be
processed and their operations requirements. However we intend to incorporate the
option of switching the mode of operations from product to product as our future
work. We would also like to include the scheduling aspect to compute the total
machining time. In addition, we like to extend our current work by using different
objective function such as throughput minimization, imposing constraints such as
capacity and time windows, and treating as a multiobjective problem.

REFERENCES

[1] W. A. Reynolds and M. K. Cheung, The use of industrial engineering in Hong Kong manu-
facturing industry, International Journal of Production Research, 22 (1984), 983–999.
[2] N. L. Hyer and U. Wemmerlov, Group technology in the US manufacturing industry: A survey
of current practice, International Journal of Production Research, 27 (1989), 1287–1304.
[3] U. Wemmerlov and N. L. Hyer, Cellular manufacturing in US industry: a survey of users,
International Journal of Production Research, 27 (2000), 1511–1530.
[4] M. Adel El-Baz, A genetic algorithm for facility layout problems of different manufacturing
environment, Computers & Industrial Engineering, 47 (2004), 233–246.
646 TAPABRATA RAY AND RUHUL SARKER

[5] J. H. Chen and S. Y. Ho, A novel approach to production planning of flexible manufacturing
systems using an efficient multi-objective genetic algorithm, International Journal of Machine
Tools & Manufacture, 45 (2005), 949–957.
[6] K. L. Mak, Y. S. Wong and F. T. S. Chan, A genetic algorithm for facility layout problems,
Computer Integrated Manufacturing Systems, 11 (1998), 113–127.
[7] M. Ficko, M. Brenzocnik and J. Balic, Designig the layout of single and multiple rows flexible
manufacturing system by genetic algorithm, Journal of Materials Processing Technology, 157-
158 (2004), 150–158.
[8] J. Balakrishnan, C. H. Cheng and K. F. Wong, FACOPT: A user friendly FACility layout
OPTimization System, Computers & Operations Research, 30 (2003), 1625–1641.
[9] K. Deb, A. Pratap, S. Agarwal and T. Meyarivan, A fast and elitist multi-objective genetic
algorithm: NSGA-II, IEEE Transactions on Evolutionary Computation, 6 (2002), 181–197.
[10] K. Deb, A. Pratap, S. Agarwal and T. Meyarivan, A fast and elitist multi-objective ge-
netic algorithm: NSGA-II, in “Proceedings of Parallel Problem Solving from Nature, Paris,
France,”(2000), 849–858.
[11] R. F. Love and J. Y. Wong, Solving quadratic assignment problems with rectangular distances
and integer programming, Naval Research Logistics Quarterly, 23 (1976), 623–627.
[12] J. F. Pierce and W. B. Crowston, Tree search algorithms in quadratic assignment problems,
Naval Research Logistics Quarterly, 18 (1971), 1–36.
[13] R. Sarker, J. Kamruzzaman and C. Newton, Evolutionary Optimization(EvOpt): a brief
review and analysis, International Journal of Computational Intelligence and Applications, 3
(1984), 311–330.
[14] R. Sarker, K. Liang and C. Newton, A new evolutionary algorithm for multiobjective opti-
mization, European Journal of Operational Research, 40 (2002), 12–23.
[15] T. L. Urban, W. C. Ching and R. A. Russell, The integrated machine allocation and layout
problem, International Journal of Production Research, 38 (2000), 2911–2930.
[16] X. Yang, X. Yang and K. L. Teo, Higher-order symmetric duality in multiobjective program-
ming with invexity, Journal of industrial and management optimization, 4 (2008), 385–391.
[17] Y. Yang, Z. Wu and F. Bai, A filled function method for constrained nonlinear integer pro-
gramming, Journal of industrial and management optimization, 4 (2008), 353–362.

Received June 2007; 1st revision November 2007; 2nd revision May 2008.
E-mail address: t.ray@adfa.edu.au
E-mail address: r.sarker@adfa.edu.au

View publication stats

You might also like