You are on page 1of 19

This item was submitted to Loughboroughs Institutional Repository

(https://dspace.lboro.ac.uk/) by the author and is made available under the


following Creative Commons Licence conditions.





For the full text of this licence, please go to:
http://creativecommons.org/licenses/by-nc-nd/2.5/

Part selection and operation-machine assignment
in a flexible manufacturing system environment:
a genetic algorithm with chromosome
differentiation-based methodology
A K Choudhary
2
, M K Tiwari
1
, and J A Harding
2*
1
Department of Manufacturing Engineering, National Institute of Foundry and Forge Technology, Ranchi, India
2
Wolfson School of Mechanical and Manufacturing Engineering, Loughborough University, Loughborough, UK
The manuscript was received on 6 December 2004 and was accepted after revision for publication on 8 November 2005.
DOI: 10.1243/09544054JEM207
Abstract: Production planning of a flexible manufacturing system (FMS) is plagued by two
interrelated problems, i.e. part type selection and operation allocation on machines. The
combination of these problems is termed the machine-loading problem, which is a well-
known complex puzzle and treated as a strongly NP-hard problem. In this research, a
machine-loading problem has been modelled, taking into consideration several technological
constraints related to the flexibility of machines, availability of machining time, tool slots,
etc., while aiming to satisfy the objectives of minimizing the system unbalance, maximizing
throughput, and achieving very good overall FMS utilization. The solution of such problems,
even for moderate numbers of part types and machines, is marked by excessive computation
complexities and therefore advanced random search and optimization techniques are
needed to resolve them. In this paper, a new kind of genetic algorithm, termed a genetic
algorithm with chromosome differentiation, has been used to address a well-known
machine-loading problem. The proposed algorithm overcomes the drawbacks of the simple
genetic algorithm and the methodology reported here is capable of achieving a
better balance between exploration and exploitation and of escaping from local minima.
The proposed algorithm has been tested on ten standard test problems adopted from
literature and extensive computational experiments have revealed its superiority over earlier
approaches.
Keywords: flexible manufacturing system, machine loading, genetic algorithm, chromosome
differentiation
1 INTRODUCTION
Flexible manufacturing systems (FMSs) aim to com-
bine the productivity of flow lines with the flexibility
of job shops, to attain very versatile manufacturing
units achieving high operational efficiencies. They
are particularly designed for low-volume high-
varietymanufacturing, andgooddecisionmakingand
management are crucial to maximize the benefits
that they offer. Stecke and Solberg [1] mentioned
four decision stages for FMS, i.e. design, planning,
scheduling, and control. This paper will focus on
the planning stage.
Stecke and Solberg [1] also defined five sub-
problems in FMS planning:
(a) part type selection;
(b) machine grouping;
(c) production ratio determination;
(d) palletfixture allocation;
(e) machine loading.
If there is no grouping of machines, the palletfixture
allocation is ignored, and the production volume is
*Corresponding author: Wolfson School of Mechanical and
Manufacturing Engineering, Loughborough University, Ashby
Road, Loughborough LE11 3TU, UK. email: j.a.harding@
lboro.ac.uk
JEM207 IMechE 2006 Proc. IMechE Vol. 220 Part B: J. Engineering Manufacture
677
fixed as non-splittable lot sizes. Planning then only
needs to address the following two problems.
1. Part type selection. Choose a subset of part type
for immediate production.
2. Machine loading. Allocate the operation and
required tools of the selected part types among
the machine groups subject to the technological
and capacity constraints of the FMS.
These have been called the two indispensable
prerelease problems and they have received consid-
erable attention during the first stage of research in
this area, resulting in the emergence of a series of
articles [2]. Rajagopalan [3] formulated a mixed-
integer programming (MIP) solution, which solved
the problem of part grouping and part-tool
allocation and at the same time eliminated some
non-linearity of the model given by Stecke [4].
Berrada and Stecke [5] pointed out that the lineariza-
tion process carried out by Stecke [4] might not
be always viable and they proposed a new MIP
formulation. Lashkari et al. [6] extended the problem
of operation allocations discussed by Stecke [4]
by introducing the concepts of refixturing and
limitations on the number of available tools. The
non-linear model proposed by Lashkari et al. [6]
was subsequently reconsidered and simplified by
Wilson [7].
The second generation of articles that emerged
tended to redefine the characteristics of the loading
problem and was more concerned with the problem
of tool management, since several workers recog-
nized that tools are expensive and therefore should
be considered as a scarce resource [812]. In this
context, Han et al. [13] proposed a model in which
a tool transport device is applied with the objective
of minimizing tool traffic. Lee and Jung [14]
discussed the application of goal programming for
multi-objective problems which are to be handled
simultaneously during the production phase of an
FMS. Another interesting tendency of this second
phase of literature was that different problems were
considered together, leading to the proposal of new
hierarchies for the whole production-planning
problem. Joint solutions to the grouping and loading
problems were tried in references [15] and [16].
Sawik [17] proposed a hierarchy for the produc-
tion-planning task based on part type selection,
machine loading, part input sequence, and opera-
tional scheduling. Loading and routing problems
were considered [18]; Hsu and Matta [19] pointed
out that feedback among the various models of
the hierarchy is very important and proposed a
model to evaluate the feasibility of the loading
problem.
Loading decisions act as an important link
between strategic- and operational-level decisions
in manufacturing, and the interrelationships of var-
ious decisions and hierarchies in flexible manufac-
turing environments have been discussed [20, 21].
The formulation and solution methodologies for
various scenarios and combinations of parameters
relating to the loading problemin FMS have attracted
the attention of numerous researchers, resulting in
many publications including references [22] to [29].
Ammons et al. [30] described the bicriterion
objectives for the machine-loading problem, i.e. bal-
ancing workloads and minimizing workstation visits.
Bicriterion objectives for a loading problem, which
includes balancing workloads and meeting due
date of part types, were also discussed in reference
[28]. They suggested that a mathematical model
approach is impractical because of the large compu-
tational time requirement even for a moderate-size
test problem. This problem is still complex despite
the advances in computing over the past 20 years
and major hurdles exist in producing software that
can achieve the requisite search time. Kumar and
Shanker [31] solved the part type selection and
machine-loading problem by formulating an MIP
model to make their solution, which was based on
a genetic algorithm (GA), more meaningful and less
computationally intensive. Yang and Wu [32] also
applied a GA-based integrated approach to solve
the FMS part type selection and machine-loading
problem, where they introduced the concept of a vir-
tual job and virtual operation while implementing
the encoding scheme of their algorithm.
Contrary to the common practices of grouping
machines with identical tooling arrangements, Lee
and Kim [33] discussed a scheduling problem that
ensures that a loading plan is achieved for the
configuration of partially grouped machines, where
each machine has different tools, but multiple
machines can be arranged for each operation. In
their study, Lee and Kim decomposed the schedul-
ing problem into a two-shop problem, i.e. a route
selection problem and a job shop scheduling.
Therefore, they also discussed two types of solution
algorithm in satisfying the decomposition problem.
Mukhopadhyay and Tiwari [25] and Tiwari et al.
[23] attempted to solve the machine-loading pro-
blem using heuristic procedures with the objective
of minimizing the system unbalance and maximiz-
ing throughput. Tiwari and Vidyarthi [34] applied a
GA-based heuristic to solve the machine-loading
problem. In order to exploit fully the effectiveness
of the heuristic proposed by Tiwari et al. [23] and
to ensure that optimal and near-optimal solutions
are obtained in each case, it is not only desirable
but also inevitable that the part type sequence
for practical problems be determined by some
evolutionary random search rather than by adopting
fixed predetermined sequencing rules. In fact,
678 A K Choudhary, M K Tiwari, and J A Harding
Proc. IMechE Vol. 220 Part B: J. Engineering Manufacture JEM207 IMechE 2006
simultaneous determination of a part type sequence,
system unbalance, throughput, and overall FMS
utilization, by satisfying the technological
constraints (limited tool slot, planning horizon,
etc.) are key components of a machine-loading
problem and hence makes it NP-hard in nature.
In the current research, a new kind of GA based on
the principle of chromosome differentiation (GACD)
is applied and a heuristic has been developed to
solve a moderate-size machine-loading problem
pertaining to random FMSs. In addition, the
proposed heuristic has also been applied to a well-
known function optimization problem to show the
effectiveness of the algorithm. The GACD has the
following advantages over the GA.
1. GACD appears to strike a better balance between
exploration and exploitation, which is crucial
for any adaptive system, hence offering an edge
over GA.
2. Increasing diversity in population and restricted
crossover result in faster information interchange
between the chromosomes and thereby faster
convergence than a GA.
3. It is evident from the analysis of the GACD, espe-
cially with respect to schema sampling as
revealed by Bandhopadhyay and Pal [35], that
the lower bond of number of instances offered
by schema sampled by GACD offers better values
than that of GA.
The organization of the present paper is as follows.
The next section discusses the various aspects of the
GACD and this is followed by a description of the
problem environment in section 3, which is further
divided into three, namely the loading problem in
FMSs, the mathematical model, and the constraints.
Section 4 deals with the solution methodology and
also describes details related to encoding, popula-
tion initialization, fitness computation, selection
scaling, crossover, mutation, and the selection of
various GACD parameters. After that, an illustrative
example is taken and solved with proposed GACD-
based heuristic in section 5. Results and discussions
are illustrated in section 6 to validate claims about
the performance of the proposed heuristic. Various
function optimization problems are also discussed
in this section. Finally the paper concludes with
a note about the future scope of this approach in
section 7.
2 GENETIC ALGORITHM WITH CHROMOSOME
DIFFERENTIATION
2.1 Overview of the GA
A GA is an intelligent probabilistic evolutionary
search and optimization algorithm that simulates
the process of maturation by taking a collection of
chromosomes called a population of solutions and
applying various biologically inspired genetic opera-
tors such as selection, crossover, and mutation that
occur naturally in reproduction. Each member of
the population is evaluated according to some fit-
ness measures, and fitter solutions are used for
reproduction. New offsprings are generated and
poor solutions are replaced. The cycle of evaluation,
selection, and reproduction is continued until a
satisfactory and near-optimal solution is found.
Pioneering work in developing GAs was carried out
in references [36] to [38] and GAs have now been
applied to a wide variety of problems. Elmarghy
et al. [39] used a GA to address a dual-resource
scheduling problem in a manufacturing system con-
strained by both machines and workers. Sinrich and
Sawaka [40] applied a genetic approach to develop
an efficient heuristic for the pickupdelivery location
problem to get rid of the existing, computationally
prohibitive (01) programming model used earlier
in the design procedure of a segmented-flow
topology-based material-handling system.
GAs are typically used in areas as diverse as image
processing, function optimization, pattern classifica-
tion, neural network design and optimization, job
scheduling, and classifier systems [4146].
2.2 GA incorporating chromosome
differentiation
In the proposed algorithm, sexual differentiation is
applied so that genotypes (chromosomes) are
divided into two classes, i.e. male (M) and female
(F), thereby giving rise to two populations, namely
a male population (MP) and a female population
(FP). In addition, these populations are made
dissimilar artificially, and both populations are
generated in a way that maximizes the Hamming
distance (HD) between the two classes. Crossover is
only allowed between individuals belonging to two
distinct populations [35], and this introduces a
greater degree of diversity and simultaneously leads
to greater exploration in the search space. Selection
is applied over the entire population, which serves
to exploit the information gained so far. Thus the
GACD accomplishes greater equilibrium between
exploration and exploitation, which is one of the
main features for any adaptive system, thereby
making the GACD superior to the simple genetic
algorithm (SGA).
2.3 Description of the GA with chromosome
differentiation
The basic steps of the GA are shown in Fig. 1 and
modified versions of these processes are also
followed in GACD.
Part selection and operation-machine assignment in FMS environment 679
JEM207 IMechE 2006 Proc. IMechE Vol. 220 Part B: J. Engineering Manufacture
Therefore subsections 2.3.1 to 2.3.6 will focus on
discussing the various parameters of the GACD.
2.3.1 Population initialization
The construction of a chromosome in GACD is
delineated in Fig. 2. The data bits are represented
as a individual bits here and are used to encode the
parameters of the problem. In addition, the first
two bits of a chromosome are called class bits as
these are used to indicate whether the class of the
chromosome is M or F. Two separate populations,
one (MP) consisting of M chromosomes and the
other (FP) containing the F chromosomes, are main-
tained over each generation. The total population
(TP) equals MP FP, and initially MP FP TP/2,
but the sizes of these two populations, MP and FP,
may vary in different generations. The MP is initia-
lized first; the data bits for each M chromosome are
generated randomly and the two class bits are
randomly initialized to either 01 or 10. The FP is
then initialized, and data bits are generated for
each F chromosome, by maximizing the HD
between the two populations. Both the class bits
of each F chromosome are set to 0. For two
chromosomes g
1
and g
2
; g
1
, g
2
2t, where t is the
initial population, HD (g
1
, g
2
) is defined as the num-
ber of bit positions at which the two chromosomes
are dissimilar. The HD between the two populations
MP and FP is denoted as
HDMP,FP

j
HD g
i
g
j
_ _
8
g
i
2 MP
g
j
2 FP
1


Reproduction

Chromosome
Evaluation

Chromosome
Alteration

Population of
chromosomes

Dustbin
Offspring
Initial Chromosome
Evaluated Offspring
D
i
s
c
a
r
d

C
h
r
o
m
o
s
o
m
e

Selection
Fig. 1 Description of the SGA
Chromosomes
Class
bits
Data bits
01/
10
Data bits 00 Data bits
Male chromosome Female chromosome
F.class bit 00
M.class bit 01,10
Fig. 2 Framework of chromosomes in the GACD
680 A K Choudhary, M K Tiwari, and J A Harding
Proc. IMechE Vol. 220 Part B: J. Engineering Manufacture JEM207 IMechE 2006
For two chromosomes, the HD may be defined as
HD g
i
,g
j
_ _

i;j2t
b
i
b
j
n

where b
i
2 g
i
,b
j
2 g
j
2
FP, the number of F chromosomes, is generated by
satisfying the previously mentioned constraints,
while permitting a certain element of randomness.
2.3.2 The pseudo code
The pseudo code for the generation of FP is as
follows:
{
For i0 to MP do
For j0 to a-1 do // Initialization
Check (i, j) 0
For i0 to FP do
For j0 to a-1 do
k random (MP); //Return an integer in the range of
0 to MP-1
While check (k, j) 0 //M (k, j) not to be chosen
before
Check (k, j) 1; // M (k, j) now chosen not to be
chosen again
F (i, j) complement (M (k, j))
}
Maximizing the HD between the two populations
results in a greater degree of diversity in the total
population.
2.3.3 Fitness evaluation
Only the a data bits of each chromosome are used
for the fitness computation. Class bits do not contri-
bute in the calculation of the fitness function and
therefore do not affect selection.
2.3.4 Selection
Members of the next generation are selected from all
chromosomes in the enlarged sampling space, based
on their fitness evaluation. The best chromosomes
are therefore preserved, and the characteristics of
elitism are therefore incorporated in both the M
and the F chromosomes.
2.3.5 Crossover
Crossover is applied with probability x
c
between the
participating M and F chromosomes. Each parent
contributes one class bit to the child, but clearly
the F parent can only contribute a 0. The class of the
offspring is therefore primarily determined by the
male parent who can contribute either 1 or 0. In
the present context, various types of crossover
operators are applied on the data bits. Crossover is
applied until the following conditions are satisfied.
1. There are no traces of chromosomes remaining in
the mating pool
2. There are either only M or only F chromosomes
remaining in the mating pool.
In case 1 the crossover procedure terminates, and
in case 2 the remaining M or F chromosomes are
mated with the best F or M chromosome. If, at the
initial stage, the mating pool contains chromosomes
of only one class, the crossover procedure is
discontinued.
2.3.6 Mutation
Various types of mutation operator are applied on
data bits with mutation probability m
p
. Mutation
operators are not applied on class bits.
3 PROBLEM ENVIRONMENT
3.1 FMS loading problem
The loading decision is concerned with the alloca-
tion of operations and required tools to the
machines or workstations that are subject to the
resource and technological (direct and indirect)
constraints of the system. Loading is one of the
most critical decisions in the FMS planning. Each
operation is assigned to only one machine; as a con-
sequence, each part type has only one route through
the system. This manufacturing policy is referred to
as fixed routing since the machining centres in the
FMS are flexible and most machines are capable of
processing more than one operation, when equipped
with appropriate tools. Thus a part can have more
than one route through the system compared with
identical machines existing in a group. Multiple-
operation assignment and tool loading provide
economical ways to alternate part routing practices.
In order to minimize the complexity of analysing
the loading problem of the system the following
assumptions have been made.
1. Initially, all the part types and machines are avail-
able simultaneously.
2. For all the part types, the processing time
required to complete all the operations is known.
3. Non-splitting of part types is to be observed.
4. An operation on a part type, once commenced, is
continued until it is completed.
5. The transportation time between the machines is
neglected.
6. The sharing and duplication of tool slots are not
allowed.
3.2 Proposed model
In this research, the loading problem considered for
the analysis is for a random FMS equipped with M
Part selection and operation-machine assignment in FMS environment 681
JEM207 IMechE 2006 Proc. IMechE Vol. 220 Part B: J. Engineering Manufacture
machines. Each machine has a fixed number of tool
slots. Part types are arriving randomly in a given
planning period and their operation times and tool
slot requirements are well known. In the recent
past, several researchers have already addressed
this type of problem. The random FMS considered
here is capable of performing operations that may
be essential or optional. Essential operations are
those that can be carried out on a particular machine
using particular tool slots while optional operations
can be performed on more than one machine.
Thus, the FMS under consideration is able to deline-
ate the flexibility pertaining to machine selection,
operation processing, part type selection, etc. It is
known that the machine-loading problem deals
with selecting a subset of part types from a set of
part types and assigning their operation to the
appropriate machines in a given planning horizon
in order to achieve certain performance measures
of the system by taking into account the technolog-
ical constraints of the system. System unbalance,
throughput and overall FMS utilization are the
most commonly used performance measures in the
context of the loading problem, whereas common
technological constraints encountered include the
availability of machining time and tool slots on
machines.
In order to comprehend the complexities of a
loading problem of a random FMS, consider an
example that consists of four machines, each having
five tool slots, and the processing times for carrying
out the different operations of the part types are
known. Each part type consists of four operations,
which can be performed on any of the machines
but the sequence of operations remains unaltered.
Different operations of part types can be performed
on different machine with unequal machining times
and different tool slots. The versatility of each
machine and its capability of performing many dif-
ferent operations enable several operation assign-
ments to be duplicated to generate alternative part
routes. A fairly large number of combinations there-
fore exist in which operations of part type can be
assigned to the different machines while satisfying
the system constraints. The complexity of the pro-
blem increases exponentially if other flexibilities
such as tooling flexibilities or part movement flex-
ibilities are considered with the constraints of the
system configuration and operational feasibility.
The above operationmachine allocation combina-
tion is to be evaluated using three common yard-
sticks: system unbalance, throughput, and overall
FMS utilization. System unbalance can be defined
as the sum of over-utilized and non-utilized time
on all the machines available in the system. Minimi-
zation of system unbalance is the same as maximiza-
tion of system utilization. Throughput is referred to
as the units of part types produced and the ratio of
throughput to maximum throughput gives the sys-
tem efficiencies. Overall the FMS utilization may be
defined as the weighted average of the utilization of
all machines.
It is very difficult to evaluate all the possible com-
binations of operationmachine allocation in order
to achieve minimum system unbalance and maxi-
mum throughput. This is because it takes a large
search space as well as a huge computational time.
Earlier researchers have addressed the problems by
developing predetermined part-sequence-based
heuristic solutions that do not guarantee optimal or
near-optimal solutions. So heuristic solutions were
suggested to resolve these types of problem. Since
the 1980s, a few intelligent heuristic techniques,
namely GA, tabu search, and simulated annealing,
have been extensively used by researchers to solve
computationally complex optimization problems.
In simple GAs, no restriction is placed upon the
selection of mating pairs for the crossover operation
and often chromosomes with similar characteristics
are mated, which wastes computational resources
as no significant new information is gained out of
the process because of trapping in local minima.
The advanced GACD has been applied to minimize
computational complexities, and to obtain an
optimal or near-optimal combination of opera-
tionmachine allocation of given part types, with
tool slots and machine availability as constraints.
Thus, the problem has been modelled keeping
in mind the following multi-criteria objective
functions:
(a) minimization of system unbalance or maximi-
zation of system utilization alone;
(b) maximization of throughput or maximization of
system efficiency alone;
(c) maximization of multi-objectives that are
combinations of (a) and (b);
(d) maximization of overall FMS utilization.
3.3 Notation
For easy recall and portability, the notation used is
given in the Appendix at the end of the paper.
3.4 Integrality of decision variables
Several decisions can be characterized using binary
or 01 integer values, according to
X
p

1, if part type p is selected


0, otherwise
_
Y
mt

1, if tool slot t is allocated to machine m
0, otherwise
_
682 A K Choudhary, M K Tiwari, and J A Harding
Proc. IMechE Vol. 220 Part B: J. Engineering Manufacture JEM207 IMechE 2006
z
po
mt

1, if operation p, o is arranged to the
processing alternative m,t 2 SMTp,o
0, otherwise
_
_
_
d
i
b
1, if part type i is include batch b
0, otherwise
_
3.5 Constraints
Constraint CI: batch part type constraint. These con-
straints ensure that one part type must be entirely
selected into a fixed batch

b
d
i
b 1 8i 3

i
d
i
b 6 Nj8 b 4
Constraint C2: non-splitting of part types. This
implies that a part type undertaken for processing
is to be completed for all its operation before
considering a new part type and this is expressed as

op
o1

m
m1
Z
po
mt
X
p
O
p
5
Constraint C3: unique part type routing. Assignment
of an operation is unique and depends on its part
type and can be expressed as

m;t2SMTp;o
Z
po
mt
6 X
p
8p,o 6
Constraint C4: machine time constraints. This
constraint deals with the fact that assigned
machine time should not exceed the available time
at any machine according to

m;t2SMTp,o
PT
po
mt
Z
po
mt
6 T
po
AM
8p,o,m,t 7
Constraint C5: tool slot constraints. The tool slot
constraint ensures that the number of slots
required to perform the operation of part type on a
machine should always be less than or equal to the
tool slot capacity of the machines and they are
expressed as

p
p1

0
o1
t
po
cm
Y
mt
6 t
m
8
Constraint C6: system unbalance constraints. The
system unbalance deals with the ideal time
remaining on the machines after allocation of all
feasible part types and the constraints and it can be
expressed as
Mj
max

m
m1

p
p1

0
o1
PT
po
mt
X
p
Z
po
mt
> 0 9
Constraint C7: part mix constraint. The mix of the
various part or product styles produced by the
system is defined by j
p
and may be stated as

p
p1
j
p
X
p
1 10
3.6 Formulation of objective function
The problem described earlier is formulated as one
with multicriterion objectives; it can be expressed
as follows.
1. The first objective function is to minimize the sys-
tem unbalance, which is equivalent to maximiz-
ing the system utilization according to
f
1

SU
seq
SU
min
SU
max
SU
min

m
m1

p
p1

o
o1
PT
po
mt
X
p
Z
po
MT
Mj
max
11
2. The second objective function is to maximize
throughput or equivalently to maximize system
efficiency according to
f
2

p
p1
b
p
X
p

p
p1
b
p

TH
seq
TH
min
TH
max
TH
min
12
3. The overall objective function is
F
m
1
f
1
m
2
f
2
m
1
m
2
13
where m
1
and m
2
are weighted parameters. For the
present case, m
1
m
2
1.
4. The third objective function is the maximization
of overall FMS utilization. It may be defined as
the weighted average of mean utilization of each
machine and stated as
However for the present case, the value of the
weighted parameter for all the machines are
taken as 1.
UFMS

M
m1

m
U
m

M
m1

m
14
4 GACD-BASED SOLUTION METHODOLOGY
This section defines the relevant terminologies and
discusses the various design issues (e.g. encoding,
population initialization, fitness function evaluation,
crossover, mutation, selection, and scaling) related
to the GACD with reference to its application in sol-
ving the machine-loading problems of an FMS. The
major advantages of the GACD are its flexibility and
ability to adapt to the changing optimization criteria
and constraints. Factors such as the representation
Part selection and operation-machine assignment in FMS environment 683
JEM207 IMechE 2006 Proc. IMechE Vol. 220 Part B: J. Engineering Manufacture
of individuals, encoding methods, initial M and F
populations, selection and scaling approaches, and
choice of genetic operators have a tremendous
influence on the performance of the proposed
heuristic. In the next few sections, these factors are
discussed in detail.
4.1 Encoding
Encoding the chromosome of a solution and its
representation is a key issue in a GAs implementa-
tion. Encoding the GA includes encoding of the class
bit and encoding of the data bits. Holland [38]
applied a binary string encoding scheme, but such
schemes are not normally appropriate to real-world
problems. During the past ten years, various non-
string encoding techniques have been evolved for
particular problems, e.g. real encoding to solve con-
strained optimization problems and integer coding
for combinatorial optimization problems. In addi-
tion to these, adjacency, permutation, and matrix-
based encoding are also used. A sequence-oriented
encoding scheme for data bits and binary string
coding for the class bits have been adopted for this
research. For example, in a situation where eight
parts are to be processed on machine, then it can
be encoded as
0 1 8 5 4 3 1 6 2 7
Here the class bit 01 ensures an M chromosome
and the data bits represent part types in sequence.
4.2 Population initialization
The construction of chromosomes in the GACD was
discussed generally in section 2.3, considering a
sequencing problem having eight-part types to be
processed. The MP and FP are represented as
Initial population
Male population Female population
0 1 4 5 7 3 1 6 2 8 0 0 5 4 2 6 8 3 7 1
0 1 5 6 1 4 2 8 7 3 0 0 4 3 8 5 7 1 2 6
1 0 7 2 6 4 5 1 3 8 0 0 2 7 3 5 4 8 6 1
1 0 3 1 5 2 4 7 8 6 0 0 6 8 4 7 5 2 1 3
4.3 Fitness computation
During each generation, chromosomes are evaluated
using some measures of fitness. In this research,
M POP and F POP are generated by the heuristic
mentioned in section 2 and their fitness values are
calculated according to a part type sequence, while
also taking into account all the technological
constraints. The mathematical models of fitness
functions are shown in equations (11) to (14).
Various steps are required to evaluate a part type
sequence using an objective function, as illustrated
in Fig. 3.
4.4 Selection
Selection is performed over all the population
(M POP F POP) disregarding class information.
A scaling approach helps to sustain the steady
selective pressure in the population and prevents
the premature convergence of the population to a
suboptimal solution. In this research, various
scaling approaches have been tested, including
dynamic linear scaling, sigma truncation, power law
scaling, logarithmic scaling, windowing, normal-
izing, and Boltzmann selection. Computational
experiments reveal that the proportional-selection-
based roulette wheel strategy embedded with the
Boltzmann selection scheme works more effec-
tively than others. For chromosome K and fitness
f
k
, the scaling function may be defined as
f
0
k
e
f
k
=T
15
Selection pressure is low when the control
parameter T is high. Now the selection probability
can be interpreted as
P
k

f
0
k

POP SIZE
k1
f
k
16
C
k
POP SIZE P
k
, where C
k
is the improved
roulette wheel count (IRWC).
The best individual always survives into the next
generation so as to enable the GACD to converge
more rapidly. For example, if the population consists
of two M POP and two F POP, the above procedure
may be applied as shown in Table 1. Thus the next
generation consists of copies of the first, third, and
fourth sequences and two copies of the second
sequence.
4.5 Crossover
In the GACD, crossover is applied until the condition
as mentioned above is satisfied. Crossover is a
process in which one M and one F chromosome
recombine to produce two chromosomes (M or F
or both). Various types of standard crossover opera-
tor are most commonly used in solving sequencing
and scheduling problems. These include heuristic
crossover, partially mapped crossover (PMX),
enhanced edge recombination (EER), order cross-
over (OX), uniform-order-based crossover (UOX),
and cycle crossover (CX). In this research, PMX is
684 A K Choudhary, M K Tiwari, and J A Harding
Proc. IMechE Vol. 220 Part B: J. Engineering Manufacture JEM207 IMechE 2006
used and results obtained have been compared
with others.
4.6 Procedure for the partially mapped crossover
Step 1. Two positions are selected at random from
along the strings; the substring formed in this way
is known as the mapping section.
Step 2. Exchange two substrings between parents to
produce a proto-child.
Step 3. Establish the mapping relationship between
the two mapping sections.
Step 4. Legalize offsprings with the mapping relation.
The procedure for partially mapped crossover is as
shown in Fig. 4.
4.7 Mutation
After crossover, the strings are normally subjected to
mutation. This introduces some extra variability,
Fig. 3 Flow chart describing the calculation of objective functions
Part selection and operation-machine assignment in FMS environment 685
JEM207 IMechE 2006 Proc. IMechE Vol. 220 Part B: J. Engineering Manufacture
provides and maintains diversity in a population,
and explores the search space. In this research,
mutation is applied on a data bit. The mutation
probability is the rate with which a bit will be
flipped. During the past decade, several mutation
operators have been proposed for permutation
representation, such as inversion, insertion,
displacement, and reciprocal exchange mutation.
In this research, a heuristic-based method is
applied, using the neighbourhood technique to
produce an improved offspring. The mechanism of
mutation operator is discussed.
4.8 Procedure: heuristic mutation
Step 1. Pick up n genes at random.
Step 2. Generate the neighbourhood offsprings by
considering all possible permutations of the
selected genes.
Step 3. Evaluate all the neighbours and select the
best as the offspring.
The proposed heuristic-based mutation procedure
is illustrated in Fig. 5.
4.9 SELECTION OF THE GACD PARAMETERS
The parameter setting is a time-consuming issue in
GAs. The parameters are the population size
POP SIZE, the number of generations MAX GEN,
the crossover probability x
p
, and the mutation prob-
ability m
p
. Michalewicz [37] mentioned that selec-
tion of the parameters of the GA still remains an art
rather than science.
4.9.1 Population size factor
GA experts have recommended that the population
size varies as a multiple of chromosome length (CL)
according to
POP SIZE PSF CL (levels considered 1, 2)
where PSF in the population size factor. In this
research, POP SIZE INIM POP INIF POP.
4.9.2 Crossover and mutation probability
Moderately large values of x
c
(0.40.9) and small
values of m
p
(0.050.2) are commonly employed in
a GA. Increasing values of x
p
and m
p
promote
exploration at the expense of exploitation. However,
in this research, intensive experiments have been
conducted to achieve this trade-off between explora-
tion and exploitation by varying x
p
, m
p
, MAX GEN,
and PSF to obtain optimal or near-optimal solutions,
and the results obtained are within the range men-
tioned above. The exact values of these parameters
have been specified in the following illustrative
example.
Table 1 Description of the IRWC
Class bit Data bit (sequence) f
k
f
k
0
p
k
C
k
IRWC
0 1 3 4 6 2 1 5 338 1.34 0.1719 0.6876 1
0 1 3 4 2 1 5 6 1152 2.71 0.3474 1.39 2
0 0 4 3 1 5 6 2 617 1.71 0.2190 0.876 1
0 0 4 3 1 5 6 2 822 2.04 0.2625 1.046 1
Total 7.80
Step 1:-

Male Parent Female Parent

0 1 3 5 6 4 2 1 7 8 0 0 6 4 3 5 7 8
Step 2:-
0 1 3 5 5 7 8 1 7 8 0 0 6 4 3 6 4 2

Step 3:-
Step 4:-
Male Child Female Child
0 1 3 6 5 7 8 1 4 2 0 0 5 7 3 6 4 2 8
5 7 8
6 4 2
Fig. 4 PMX applied to M and F chromosomes
Select three positions at random
0 1 6 5 2 8 3 4 1 7
The neighbors formed with data-bits chosen
0 1 6 8 2 1 3 4 5 7
0 1 6 1 2 5 3 4 8 7
0 1 6 1 2 8 3 4 5 7
0 1 6 8 2 5 3 4 1 7
0 1 6 5 2 1 3 4 8 7
Fig. 5 Description of heuristic-based mutation
686 A K Choudhary, M K Tiwari, and J A Harding
Proc. IMechE Vol. 220 Part B: J. Engineering Manufacture JEM207 IMechE 2006
5 AN ILLUSTRATIVE EXAMPLE
To demonstrate the effectiveness of the proposed
model and the quality of the proposed GACD solu-
tion approach, a slightly modified version of the
illustrative example considered in references [23] to
[25] for a random type FMS is now solved. Table 2
shows the detailed description of the test problem
for the given FMS type. Nine more problems gener-
ated by Mukhopadhyay and Tiwari [25] have also
been solved to show the effectiveness of the pro-
posed algorithm. Machine data are given in Table 3.
The following steps describe the application of the
above GACD-based heuristic approach for solving
the machine-loading problem.
Step 1. Set the initial and global parameters:
INIM POP INIF POP 5, x
p
0.5, m
p
0.1,
MAX GEN 30, and f
1
0.
Step 2. The total number of part types, p
max
8, and
part type sequence is generated as per initialization
and initial population mentioned in section 4.
Step 3. Choose the objective functions f
1
, i.e. minimi-
zation of the system unbalance.
Step 4. Initialize GEN 0 1, and recall the part
type sequence generated in step 2. It comes out to be
[0 1 5 4 3 7 1 6 8 2]
Step 5. The value of f
1
is calculated as per the flow
chart in Fig. 2. Only data bits are used for calculation
of the objective function.
Step 6. For the M chromosome the data bits of the
part type sequence are [5 4 3 7 1 6 8 2], correspond-
ing to the objective function 1, i.e. minimization of
the system unbalance: SU 55, TH 45,
JR
NSU
(1,8), JR
TSC
(2), and f
1
0.971, where SU
is the system unbalance, TH is the throughput, JR
NSU
is the part rejected owing to negative system unba-
lance, and JR
TSC
is the part rejected owing to tool
slot constraints. Now, the selection strategy is
applied on all M POP and F POP.
Step 7. PMX is applied on selected chromosome as
mentioned in section 4.
Step 8. Heuristic-based mutation is applied on data
bits related to the part type sequence.
Step 9. Initial population selected for reproduction
consists of crossover offspring and mutation
offspring and, hence, constructs the extended
population.
Step 10. Then the extended population is evaluated
using the objective function f
1
and the selection pro-
cess is carried out according to the method
described in section 4.
Step 11. The terminal test is as follows: if
GEN MAX GEN, terminate and print the output.
Otherwise, GEN GEN 1 and go to step 4.
Therefore after executing all the steps of algorithm
the following part type sequence is obtained: part
type sequence [5 4 3 7 6 1 8 2] and, corresponding
to this sequence, the objective functions are as
follows: SU 0 min, TH 36 units, f
1
1.0,
JR
NSU
{1,3,6,8}, and JR
TSC
{}. The overall FMS
utilization equals 76 per cent.
6 RESULTS AND DISCUSSION
Research contributions in the broad area of GA
applications show that in SGA applications the num-
ber of generations required to achieve near-optimal
solutions are substantially high. Therefore it is
essential that new GAs be identified that can solve
large-size combinatorial problems in fewer genera-
tions and also take less central processing unit
(CPU) time. With these primary requirements in
Table 2 Description problem 1 (adopted from Shanker
and Srinivasula [27])
Part
type
Operation
number
Batch
size
Unit
processing time
Machine
number
Tool slot
needed
1 1 8 18 3 1
2 1 9 25 1 1
25 4 1
2 24 4 1
3 22 2 1
3 1 13 26 4 2
26 1 2
2 11 3 3
4 1 6 14 3 1
2 19 4 1
5 1 9 22 2 2
22 3 2
2 25 2 1
6 1 10 16 4 1
2 7 4 1
7 2 1
7 3 1
3 21 2 1
21 1 1
7 1 12 19 3 1
19 2 1
19 4 1
2 13 1 1
13 3 1
13 1 1
3 23 4 1
8 1 13 25 1 1
25 2 1
25 3 1
2 7 2 1
7 1 1
3 24 1 3
Table 3 Data pertaining to machines
Machine
number
Planning
horizon
Number of tool
slots available
M1 480 5
M2 480 5
M3 480 5
M4 480 5
Part selection and operation-machine assignment in FMS environment 687
JEM207 IMechE 2006 Proc. IMechE Vol. 220 Part B: J. Engineering Manufacture
mind, a new kind of GA, known as the GACD, has
been coded. A high level of population diversity is
introduced and subsequently maintained in this
system, resulting in faster information interchange
among chromosomes, and therefore faster conver-
gence of the algorithm. In addition, several modifi-
cations are performed to make it suitable as far as a
computationally complex problem is concerned in
a lower number of generations and modest CPUtime.
For all the objectives considered, the GACD is able
to achieve the best solution, thereby proving its abil-
ity as a powerful randomized search optimization
tool. It uses a modified population generation con-
cept, new crossover operator, and heuristic-based
mutation mechanism, enabling it to obtain near-
optimal results in substantially fewer generations,
for the given loading problem. After a very few gen-
erations, the algorithm shows the trace of conver-
gence of solutions, making it more effective than
the simple GA used by Kumar and Shanker [31],
Yang and Wu [32], and Tiwari and Vidyarthi [34].
The proposed GACD-based heuristic employs
four different objective functions namely system
unbalance alone, throughput alone, combination of
throughput and system unbalance, and overall FMS
utilization while keeping in view the system con-
straints (available machining time, tool slot capacity,
etc.). It is important to highlight here that the con-
cepts of overloading and underloading of machines
have already been taken into account with system
unbalance in this research. In this context, it is
important to mention that a few of the related
researches have used slightly different definitions.
For example, Shanker and Srinivasulu [27] have
taken only non-utilized machine time in the system
unbalance, whereas Mukhopadhyay and Tiwari
[25], Tiwari et al. [23], and Tiwari and Vidyarthi
[34] have considered the non-utilized machine time
as well as the over-utilized machine time in their
system unbalance. Mukhopadhyay and Tiwari have
adopted the maxmax rule for the allocation of an
unassigned part type in anticipation that the system
unbalance improves further. The performance of the
proposed GACD-based heuristic is superior when it
is compared with a few predetermined sequencing
rules, such as the longest processing time (LPT),
last-in first-out (LIFO), first-in first-out (FIFO), and
also with other approaches given in the literature.
Figure 6 reveals one such comparison in detail and
found that the proposed heuristic outperforms the
results obtained by Tiwari et al. [23].
To confirm the performance of the proposed
heuristic, nine more problems generated by
Mukhopadhyay et al. [4] have been solved and a
comparative study of results from Mukhopadhyay
et al. [4], Shanker and Srinivasulu [27], and Tiwari
et al. [23] are shown in Fig. 7. It is evident from the
figure that, in these cases, the proposed heuristic
outperforms the others. A detailed description of
the parameter setting for different objective func-
tions, part type sequence fitness function values,
corresponding system unbalance and throughput,
overall FMS utilization, and unassigned part type
(along with cause of rejection) are given in Table 4.
As mentioned in section 4, the selection of the
control parameters of the GACD is a time-consuming
and frustrating issue. In this research, intensive
Fig. 6 Comparison of the GACD-based heuristic with the heuristic proposed by Tiwari et al. [23] (using different sequen-
cing rules)
[27] [4]
[23]
Fig. 7 Comparison of proposed GACD-based heuristic
with the heuristics proposed by various
researchers
688 A K Choudhary, M K Tiwari, and J A Harding
Proc. IMechE Vol. 220 Part B: J. Engineering Manufacture JEM207 IMechE 2006
experiments have been carried out to determine the
parameters governing the execution of the GACD
algorithm and these parameters are the initial male
population, initial female population, crossover rate,
mutation rate, crossover type, mutation type, selec-
tion strategies, etc. In most applications of GAs, the
tuning of the parameters is based on some trials on
known problems. Here it is found that near-optimal
part type selection are obtained at a MAX GEN of
30. Various crossover operators which are used for
sequencing and scheduling problems were tested on
sample problem and found that the PMX applied in
the GACD outperforms other crossover operators.
The comparative results are shown in Fig. 8.
A heuristic-based mutation operator is proposed
and its performances are compared with other
mutation operators. Figure 9 reveals the superiority
of heuristic-based mutation over others. Numerous
selection scaling methods were examined while sol-
ving these problems. It is evident from Fig. 10 that
the proportional-selection-based roulette wheel
strategy embedded with the Boltzmann selection
dominates others. The performances of several
combinations of crossover and mutation operators
and their influences on the outcome of the loading
problem are given in Fig. 11. Other problems
adopted from Mukhopadhyay et al. [4] were solved
and the results are reported on the basis of these
two types of operator.
The performance of the GACD has been compared
with that of the GA on the test problem reported by
Tiwari and Vidyarthi [34]. In Fig. 12, with the help
of graphical aids, a comparison has been made
between the GACD and the GA for the previously
mentioned problem. From this comparison it is
axiomatic that the best result obtained for the
population remains the same. However, average
values of the population for objective function 1,
i.e. system unbalance, has a lower magnitude than
that obtained by the SGA.
To validate the proposed GACD-based heuristic,
four different types of multi-modal function optimi-
zation problem have been considered with various
complexities, as described in the literature, to check
the robustness of the solution quality. Here, these
functions [47] have been chosen because they have
been widely used by other researchers to show the
efficacy of their solution methodologies.
Table 4 Details of the parameters and results obtained using the proposed GACD-based heuristic
Problem
number
Objective
function
Parameter
setting of
GACD*
Part type
sequence
Part type unassigned Value of
objective
function
System
unbalance
Throughput Overall FMS
utilization
(%)
Negative system
unbalance
Tool slot
constraints
1 1 5,0.5,0.2,30 5,7,4,2,6,3,1,8 6,3,1,8 1.000 0 36 88
2 5,0.5,0.1,30 4,7,3,1,2,6,8,5 2,6 8 0.640 14 48 75
3 5,0.5,0.1,30 4,7,3,2,1,5,6,8 2,6 8 0.796 14 48 75
2 1 5,0.5,0.2,30 6,2,4,5,3,1 3, 1 0.919 18 46 72
2 5,0.5,0.1,30 5,3,1,4,2,6 or 2 0.630 84
3,4,5,1,6,2 2 154 63
3 5,0.5,0.1,30 5,4,3,1,2,6 or 2 0.891 84
5,3,1,4,2,6 2 154 63
3 1 5,0.5,0.2,30 4,5,2,3,1 1 0.963 72 69 88
2 5,0.5,0.1,30 2,3,1,5,4 4 0.924 128 73 81.6
3 5,0.5,0.1,30 5,3,2,4,1 or 4 4 0.928 81.6
5,1,2,3,4 128 73
4 5,0.5,0.2,30 819 51 100
5 1 5,0.5,0.2,30 3,1,5,4,6,2 6,2 0.903 187 53 76
2 5,0.5,0.1,30 6,2,5,1,3,4 4 0.815 479 62 72
3 5,0.5,0.1,30 2,1,4,6,3,5 3 0.829 76 61 70.2
6 1 5,0.5,0.2,30 1,5,2,4,6,3 3 0.985 28 61 86
2 5,0.5,0.1,30 4,3,1,5,6,2 2 0.863 314 63 78
3 5,0.5,0.1,30 1,4,6,2,5,3 3 0.910 28 61 80.4
7 1 5,0.5,0.2,30 4,1,2,5,6,3 6 3 0.914 165 54 78
2 5,0.5,0.1,30 3,6,1,4,5,2 and 2 0.807 486 63 68
3,1,2,5,6,4 4 231
3 5,0.5,0.1,30 1,5,2,3,6,4 4 0.843 231 63 72.4
8 1 5,0.5,0.2,30 7,5,4,6,3,1,2 3,1,2 0.993 13 44 92
2 5,0.5,0.1,30 4,5,2,7,3,1,6 and 1,6 0.800 63 81.6
5,2,7,1,6,4,3 6,3 288 48
3 5,0.5,0.1,30 3,2,5,7,1,6,4 1,6 0.883 63 48 81.6
9 Any sequence 309 88 100
10 1 5,0.5,0.2,30 2,3,5,4,1,6 1 0.957 82 54 81.3
2 5,0.5,0.1,30 3,5,1,2,6,4 4 0.887 122 56 77.2
3 5,0.5,0.1,30 5,1,3,6,2,4 4 0.860 122 56 77.2
*Parameter setting: (INIM POP, crossover probability, mutation probability, maximum generation).
Part selection and operation-machine assignment in FMS environment 689
JEM207 IMechE 2006 Proc. IMechE Vol. 220 Part B: J. Engineering Manufacture
6.1 Dejongs function f
5
This is a spiky function (also known as Shekels fox-
holes) with 25 sharp spikes of various heights. The
function has two variables and the solution is
encoded using binary digit. The task of the GACD is
to locate the highest peak. The expression for f
5
is
f
5
0:002

25
j1
1
j

2
i1
x
i
a
ij

6
6.2 Dejongs function f
6
This is a rapidly varying multi-modal function of two
variable. The variables are encoded using binary
digits each and assume values in range [100, 100].
f
6
has been employed earlier [48] for comparative
studies where it is referred to as the sine envelope
sine wavefunction and is expressed as
f
6
0:5
sin
2

x
2
1
x
2
2
_
0:5
1 0:001x
2
1
x
2
2

2
6.3 Dejongs function f
7
This function is also similar to f
6
but has the barrier
height between adjacent minima approaching zero
as the global optimum is approached. It is given by
f
7
x
2
1
x
2
2

0:25
sin
2
50x
2
1
x
2
2

0:1
1:0
6.4 Ackleys function
This function is obtained by modulating an expo-
nential function with a cosine wave of moderate
amplitude. The complexities of this function are
shown in Fig. 13, and can be expressed as
minf x
1
,x
2
c
1
exp c
2

1
2
_

2
j1
x
2
j
_ _
exp
1
2

2
j1
cosc
3
x
j

_ _
c
1
e,
5 6 x
j
6 5, j 1,2
Table 5 shows the comparative result of the best
values obtained after 100 generations. It can be
easily understood from Table 5 that the GACD out-
performs the SGA for all these functions.
The chromosome differentiation can therefore be
extremely beneficial for challenging combinatorial
problems. In addition, it has been shown to outper-
form traditional GAs in function optimization pro-
blems. Therefore, the proposed GACD-based
approach may be applicable to resolve other similar
combinatorial complex problems related to manu-
facturing systems.
The proposed GACD-based heuristic has been
coded in C

and the program was run on an IBM


personal computer with a Pentium 4 CPU at 1.2 GHz.
0.7
0.75
0.8
0.85
0.9
0.95
1
1 6 11 21 26 31 36 41 46 51 56
Genarations
A
v
e
r
a
g
e

v
a
l
u
e

o
f

o
b
j
e
c
t
i
v
e

f
u
n
c
t
i
o
n

f
1
DIS
RE
INS
INV
HEU
DIS: Displacement
RE: reciprocal exchange
INS: insertion
INV: inversion
HEU: Heuristic
Fig. 9 Performance of mutation operators
PMX: Partially mapped crossover
UOX: Uniform Order-based crossover
EER: Enhance edge recombination crossover
CB: Constraints based crossover
OX: Order crossover
CX: Cyclic crossover
Performance of Crossover operators (Problem no.1)
0.8
0.85
0.9
0.95
1
1 5 9 13 17 21 25 29 33 37 41 45
Generations
A
v
e
r
a
g
e

v
a
l
u
e

o
f
o
b
j
e
c
t
i
v
e

f
u
n
c
t
i
o
n
f
1
PMX+GA
UOX+GA
EER+GA
PMX+GACD
OX+GA
CX+GA
Fig. 8 Comparison of various crossover operators
690 A K Choudhary, M K Tiwari, and J A Harding
Proc. IMechE Vol. 220 Part B: J. Engineering Manufacture JEM207 IMechE 2006
7 CONCLUSIONS
In this paper, a machine-loading problem with four
objective functions and two technological con-
straints has been considered for analysis. One of
the key issues tackled in this research was to deter-
mine the number and sequence of part types to be
processed on machines by satisfying technological
constraints to achieve the minimum system
unbalance and maximum throughput. From the
literature, it was known that the underlying
loading problem is computationally complex and
mathematically intractable to solve. A different GA
has been proposed, employing the concept of chro-
mosome differentiation to enhance the capability
of the existing SGA. The resulting heuristic solution
has been tested to address a well-known part type
sequence and operation allocation problem in the
FMS environment. Here it is significant to mention
that, while coding the algorithm, binary coding is
applied to the class bit, and real coding is used for
the data bit, to minimize the chromosome length
and to maintain the level of infeasiblity. In addition
to the above modifications of the GA, a strategy of
maximizing the HD has been used to incorporate
chromosome differentiation in the GACD for the
FMS machine-loading problem. Restricted cross-
over, resulting in faster information interchange,
advanced mutation, and an evolutionary selection
scheme have led to a better balance between
exploration and exploitation. Application of the
proposed approach has been shown on various test
problems and the results achieved demonstrate
that the algorithm performs well in terms of both
the solution quality and the CPU time. Extensive
computational experience of various types of
crossover, mutation, and selection scaling are
demonstrated. The proposed algorithm has been
0.8
0.85
0.9
0.95
1
5 10 15 20 25 30 35 40 45 50
Generations
A
v
e
r
a
g
e

v
a
l
u
e

o
f

o
b
j
e
c
t
i
v
e

f
u
n
c
t
i
o
n

f
1EER-RE
PMX-RE
EER-INS
CX-DIS
UOX-INV
PMX-HEU
EER-RE: combinations of enhance edge recombination and reciprocal exchange
PMX-RE: combination of partially mapped crossover and reciprocal exchange
EER-INS: combination of enhance edge recombination crossover and insertion
CX-DIS: combination of cyclic crossover and displacement
UOX-INV: combination of uniform order-based crossover and inversion
PMX-HEU: combination of partially mapped crossover and heuristic based mutation
Fig. 11 Performance of combination of operators (problem 1)
Dy-Lin: Dynamic Linear Scaling
SIG-TRU: Sigma Truncation
PL: Power Law Scaling
LOG: Logarithmic Scaling
NORMAL: Normal Selection
RWS+BOLTZ: Roulette Wheel Embedded with Boltzmann Selection
Fig. 10 Comparison of various scaling approaches with the proposed approach for the objective function combining sys-
tem unbalance and throughput (objective function f
3
)
Part selection and operation-machine assignment in FMS environment 691
JEM207 IMechE 2006 Proc. IMechE Vol. 220 Part B: J. Engineering Manufacture
tested on several complex constrained and non-
constrained optimization functions, and the results
obtained have shown a significant improvement
over SGA.
The research possesses enough scope for
extension to encompass several other allocations
of resources, such as pallets, fixtures, and auto-
mated guided vehicles. The addition of a
penalty and a few more objective functions, e.g.
minimization of part movement, tool change
Fig. 13 Plot representing complexity of Ackleys function
P e r f o r m a n c e o f G A A N D G A C D ( P r o b l e m n o . 1 )
0 .6
0 . 6 5
0 .7
0 . 7 5
0 .8
0 . 8 5
0 .9
0 . 9 5
1
1 5 9 1 3 1 7 2 1 2 5 2 9 3 3 7 4
N u m b e r o f G e n e r a t io n s
G A
G A C
( a)
( b)
Fig. 12 Comparisons of (a) the best value of the objective function and (b) the average value of the population density
obtained by the GA and the GACD
Table 5 Comparative results of GA and GACD for
function optimization problems
Solution
number
Best value obtained
Function Optimal GACD GA
1 Dejongs f
5
1 0.987 324 4 0.910 832 2
2 Dejongs f
6
1 0.970 266 2 0.911 959 1
3 Dejongs f
7
1 0.995 027 1 0.956 223 1
4 Ackleys 0 0.000 462 8 0.082 354 9
692 A K Choudhary, M K Tiwari, and J A Harding
Proc. IMechE Vol. 220 Part B: J. Engineering Manufacture JEM207 IMechE 2006
together with the measure of flexibility pert-
aining to the machine, and material handling,
will be the topics for future exploration. In
conclusion, the proposed GACD-based heuristic
approach offers a better solution in a lower number
of generations when tested on well-known
machine-loading problem of an FMS and also on
other functions.
REFERENCES
1 Stecke, K. E. and Solberg, J. J. Loading and control
policies for a flexible manufacturing system. Int. J.
Prod. Res., 1983, 19(5), 481490.
2 Hwang, S. S. and Shogun, A. W. Modeling and solving
part type selection problem. Int. J. Prod. Res., 1989,
27(8), 13491366.
3 Rajagopalan, S. Formulation and heuristics solutions
for part grouping and Tool loading in Flexible Manu-
facturing Systems. In Proceedings of the Second
ORSATIMS Conference on Flexible manufacturing
systems, University of Michigan, Ann Arbor, Michigan,
USA (Eds K. E. Stecke and R. Suri), 1986, Vol. 5, pp.
311320 (Elsevier, Amsterdam).
4 Mukhopadhyay, S. K., Midha, S., and Krishna, V. M.
A heuristic procedure for loading problems in flexible
manufacturing systems. Int. J. Prod. Res., 1992, 30(9),
22132228.
5 Berrada, M. and Stecke, K. E. A branch and bound
approach for machine balancing in flexible
manufacturing system. Mgmt Sci., 1986, 10(32),
13161335.
6 Lashkari, R. S., Dutta, S. P., and Padhe, A. M. A new
formulation of operation allocation in flexible manu-
facturing system: mathematical modeling and compu-
tational experience. Int. J. Prod. Res., 1987, 9(25),
12671283.
7 Wilson, J. M. An alternative formulation of the opera-
tion allocation problem in flexible manufacturing sys-
tem. Int. J. Prod. Res., 1989, 8(27), 14051412.
8 Werra, D. D. and Widmer, M. Loading problems with
tool management in flexible manufacturing system: a
few integer programming model. Int. J. Flexible Mfg
Systems, 1991, 3(1), 7182.
9 Defects, L., Parola, G., Tolio, T., and Semeraro, Q.
TWMI: a system for integrated tool and work piece
management in flexible manufacturing systems- load-
ing and part selection. CIRPJ. Mfg Systems, 1993, 4(22),
325330.
10 Chen, C. L., Vempatti, V. S., and Aljaber, N. An appli-
cation of genetic algorithm for flow shop problem.
Eur. J. Opl Res., 1995, 80, 385396.
11 Roh, H. K. and Kim, Y. D. Due date based loading and
scheduling methods for a flexible manufacturing
system with an automatic tool transporter. Int. J.
Prod. Res., 1997, 11(35), 29893003.
12 Colosimo, B. M., Conti, C., Grieco, A., and Tolio, T.
FMS loading in presence of tool sharing. In
Proceedings of the CIRP International Seminar on
Intelligent computation in manufacturing engineering
(ICME 98) 1998, pp. 137144 (Capri, Italy).
13 Han, M. H., Na, Y. K., and Hogg, G. L. Real time tool
control and job dispatching in flexible manufacturing
engineering systems. Int. J. Prod. Res., 1989, 8(27),
12571267.
14 Lee, S. M. and Jung, H. J. A multi-objective
production planning model in a flexible manu-
facturing environment. Int. J. Prod. Res., 1989, 11(27),
19811992.
15 Chen, Y. J. and Askin, R. G. A multi objective
evaluation of flexible manufacturing system loading
heuristic. Int. J. Prod. Res., 1990, 28(5), 895911.
16 Kumar, P., Tiwari, N. K., and Singh, N. Joint consid-
eration of grouping and loading problem in a flexible
manufacturing system. Int. J. Prod. Res., 1990, 7(28),
13451356.
17 Sawik, T. Modelling and scheduling of flexible
manufacturing system. Eur. J Opl Res., 1990, 2(45),
177190.
18 Chen, I. J. and Chung, C. H. A multiobjective
evaluation of flexible manufacturing system
loading heuristics. Int. J. Prod. Res., 1991, 11(29),
22092225.
19 Hsu, V. N. and Matta, R. D. An efficient heuristic
approach to recognize the infeasibility of a loading pro-
blem. Int. J. Flexible Mfg Systems, 1997, 9, 3150.
20 Looveren, A. J. V., Gelders, J. L. F., and Wassenhove, L.
N. V. A review of FMS planning models. In Modeling
and design of flexible manufacturing systems, (Ed. A.
Kusiak), 1986, pp. 331 (Elsevier, Amsterdam).
21 Kusiak, A. The part families problem in flexible
manufacturing systems. In Proceedings of the First
ORSATIMS Conference on Flexible manufacturing
systems, University of Michigan, Ann Arbour,
Michigan, 1984, pp. 237242.
22 Liang, M. and Dutta, S. P. Combined part-selection,
load sharing and machine loading problem in hybrid
manufacturing system. Int. J. Prod. Res., 1992, 10(32),
23352350.
23 Tiwari, M. K., Hajarika, B., Vidyarthi, N. K.,
Jaggi, P., and Mukhopadhyay. S. K. A heuristic
solution to machine loading problem of a FMS and its
Petri net model. Int. J. Prod. Res., 1997, 8(35),
22692284.
24 Shnits, B., Rubinovitz, J., and Sinreich, D. Multi cri-
teria dynamic scheduling methodology for controlling
flexible manufacturing systems. Int. J. Prod. Res.,
2004, 2(17), 34573473.
25 Mukhopadhyay, S. K. and Tiwari, M. K. Solving
machine loading problems of FMS using conjoint
measurement. In Proceedings of the 13th International
Conference on Production Research, Jerusalem, 1995,
pp. 7476 (Freund Publishing, Israel).
26 Rossi, A. and Dini, G. Dynamic scheduling of FMS
using a real-time genetic algorithm. Int. J. Prod. Res.,
2000, 38, 120.
27 Shanker, K. and Srinivasulu, A. Some solution
methodologies for loading problems in flexible manu-
facturing systems. Int. J. Prod. Res., 1989, 6(27),
10191034.
Part selection and operation-machine assignment in FMS environment 693
JEM207 IMechE 2006 Proc. IMechE Vol. 220 Part B: J. Engineering Manufacture
28 Shanker, K. and Tzen, Y. J. A loading and dispatching
problem in a random flexible manufacturing system.
Int. J. Prod. Res., 1985, 3(23), 579595.
29 Ram, B., Sarin, S. C., and Chen, C. S. A model and
solution approach for machine loading and tool alloca-
tion problem in a flexible manufacturing system. Int. J.
Prod. Res., 1990, 4(28), 637645.
30 Ammons, J. C., Logren, C. B., and McGinnis, L. F. A
large-scale machine loading problem in flexible assem-
bly. Ann. Ops Res., 1985, 3, 319322.
31 Kumar, N. and Shanker, K. A genetic algorithms for
FMS part type selection and machine loading. Int. J.
Prod. Res., 2000, 16(38), 38613887.
32 Yang, H. and Wu, Z. GA-based integrated approach to
FMS part type selection and machine loading problem.
Int. J. Prod. Res., 2002, 16(40), 40934110.
33 Lee, D. H. and Kim, Y. D. scheduling algorithm for flex-
ible manufacturing system with partially grouped
machines. J. Mfg Systems, 1999, 18(4), 301309.
34 Tiwari, M. K. and Vidyarthi, N. K. Solving machine-
loading problems in a flexible manufacturing system
using a genetic algorithm based heuristic approach.
Int. J. Prod. Res., 2000, 14(38), 33573384.
35 Bandyopadhyay, S. and Pal, S. K. Incorporating
chromosome differentiation in genetic algorithms. Inf.
Sci., 1998, 104, 293319.
36 Goldberg, D. E. and Lingle, R. Alleles, Loci and
the traveling salesman problem. In Proceedings of the
First International Conference on Genetic algorithms
and their applications, 1985, Vol. 30(4), pp. 931940
(Lawrence Erlbaum Associates, Hillsdale, New Jersey).
37 Michalewicz, Z. Genetic algorithm data structure
evolution programs, 1994 (Springer-Verlag, New York).
38 Holland, H. H. Adaptation in natural and artificial
systems, 1975 (University of Michigan Press, Detroit,
Michigan).
39 Elmarghy, H., Patel, V., and Abdullah, M. Scheduling
of manufacturing system under dual resource con-
straints using genetic algorithms. J. Mfg Systems, 1999,
19(3), 186198.
40 Sinrich, D. and Sawaka, E. A Genetic approach to the
pickup/delivery location problem in segmented flow
based material handling system. J. Mfg Systems, 1999,
18(2), 8199.
41 Lee, C. Y., Piramuthu, S., and Tsai, Y. K. B. Job shop
scheduling with genetic algorithm and machine learn-
ing. Int. J. Prod. Res., 1997, 4(35), 11711191.
42 Gupta, M., Gupta, Y., Kumar, A., and Sundaram, C. A
genetic algorithm based approach to cell composition
and layout design problems. Int. J. Prod. Res., 1996,
2(34), 447482.
43 Bandyopadhyay, S., Murthy, C. A., and Pal, S. K.
Pattern classification using genetic algorithms. Pattern
Recognition Lett., 1995, 16, 801808.
44 Ackley, D. A connectionist machine for genetic hill
climbing, 1987 (Kluwer, Boston, Massachusetts).
45 Grefenstette, J. J., Gopal, R., Rormatia, B., and
Vangucht, D. Genetic algorithm for traveling
salesman problem. In Proceedings of the First
International Conference on Genetic algorithms and
their applications, 1985, 160168 (Lawrence Erbium
Associates, Hillsdale, New Jersey).
46 Goldberg, D. E., Kog, E. B., and Deb, K. Messy genetic
algorithms: motivation analysis and first result, 1989,
pp. 493530 (Complex System Publications Inc.,
Champaign, Illinois).
47 DeJong, K. An analysis of the behavior of a class
of genetic adaptive systems. PhD Thesis, University
of Michigan, Ann Arbor, Michigan, USA, 1975,
pp. 7182.
48 Srinivas, M. and Patnaik, L. M. Adaptive
probabilities of crossover and mutation in genetic
algorithms. IEEE Trans. Systems, Man Cybernetics,
1994, 24(4), 655667.
APPENDIX
Notation
a processing alternatives
JR
NSU
part rejected owing to negative system
unbalance
JR
TSC
part rejected owing to tool slot constraints
m machine number 1, 2, 3, . . ., M
o operation number
O
p
number of operations on part type p
p part type number
SU system unbalance
SU
max
maximum system unbalance
SU
min
minimum system unbalance
SU
seq
system unbalance corresponding to a
particular part sequence
T
(a,m)
(p,o)
time available on machine m before allo-
cation of operation o of part type p
T
(c,m)
(p,o)
time required by machine m for
operation o of part type p
T
(r,m)
(p,o)
time remaining on machine m after
allocation of operation o of part type p
TH
max
maximum throughput
TH
min
minimum throughput
TH
seq
throughput corresponding to a particular
part sequence
U
m
mean utilization of each machine
w
m
/w
w
*
workload at bottleneck station
w
m
workload on machine m
(r,o) operation of part type r
j
max
length of planning horizon
j
p
part mix of part type p
t
(a,m)
(p,o)
tool slot available on machine m allocated
to operation o on machine m of part
type p
t
(c,m)
(p,o)
tool slot required by machine m for
operation o of part type p
t
(r,m)
(p,o)
tool slot remaining on machine m after
allocation of operation o of part type p
t
m
tool slot capacity on machine m
694 A K Choudhary, M K Tiwari, and J A Harding
Proc. IMechE Vol. 220 Part B: J. Engineering Manufacture JEM207 IMechE 2006

You might also like