Download as pdf or txt
Download as pdf or txt
You are on page 1of 19

Int. J. Advanced Operations Management, Vol. 4, No.

4, 2012 253

Generation of optimum sequence of operations using


ant colony algorithm

D. Sreeramulu* and Sudeep Kumar Singh


Department of Mechanical Engineering,
Gandhi Institute of Engineering and Technology,
Gunupur – 765022, Orissa, India
E-mail: sreeram_india9@yahoo.com
E-mail: sudeep.career@gmail.com
*Corresponding author

C.S.P. Rao
Department of Mechanical Engineering,
National Institute of Technology,
Warangal – 506004, Andra Pradesh, India
E-mail: csp_rao@sify.com

Abstract: Computer-aided process planning (CAPP) forms an important


interface between computer-aided design (CAD) and computer-aided
manufacturing (CAM). It is concerned with determining the sequence of
individual manufacturing operations required to produce a product as per
technical specifications given in the part drawing. In this paper the process
planning is modelled as a combinatorial optimisation problem with constraints,
and an ant colony optimisation (ACO) approach has been used to solve it. This
is a newly developed metaheuristic algorithm used as a global search technique
for the quick identification of the optimal operations sequence by considering
various feasibility constraints.

Keywords: process plan; ant colony optimisation; ACO; optimisation.

Reference to this paper should be made as follows: Sreeramulu, D.,


Singh, S.K. and Rao, C.S.P. (2012) ‘Generation of optimum sequence of
operations using ant colony algorithm’, Int. J. Advanced Operations
Management, Vol. 4, No. 4, pp.253–271.

Biographical notes: D. Sreeramulu is working as an Associate Professor


at G.I.E.T., Gunupur. He obtained his PhD in 2010. He has published eight
papers in international journals and presented in more than 15 international
conferences. His research interests include process plan, feature recognition
and scheduling.

Sudeep Kumar Singh is working as an Assistant Professor in G.I.E.T.,


Gunupur. He graduated in 2008. He has presented in more than five
conferences. His research interests include tool selection, process plan, genetic
algorithm and feature recognition.

C.S.P. Rao is working as a Professor in the Mechanical Engineering


Department at the National Institute of Technology, Warangal, AP, India. He
completed his PhD from NIT, Warangal and he guided 12 PhDs and guiding

Copyright © 2012 Inderscience Enterprises Ltd.


254 D. Sreeramulu et al.

10 PhDs. He has published 50 international journals and more than 100


conference papers. He was awarded the Young Scientist of the Year and
Engineer of the Year in 2008. His research interests include process planning,
scheduling and petrinets.

1 Introduction

Process planning is the systematic determination of the detailed methods by which work
pieces or parts can be manufactured economically and competitively from initial stages
(raw material form) to finished stages (desired form) or process planning translates
design information into the process steps and instructions to efficiently and effectively
manufacture products. Process planning activities basically include the interpretation of
product design data, selection of machining processes, selection of cutting tools, selection
of machine tools, determination of setup requirements, sequencing of operations,
determination of the production tolerances, determination of the cutting conditions,
design of jigs and fixtures, calculation of process times, tool path planning and NC
program generation, generation of process route sheets etc. As the design process is
supported by many computer-aided tools, computer-aided process planning (CAPP) has
evolved to simplify and improve process planning and achieve more effective use of
manufacturing resources. Process planning encompasses the activities and functions to
prepare a detailed set of plans and instructions to produce a part. The planning begins
with engineering drawings, specifications, parts or material lists and a forecast of
demand. CAPP systems support this activity, providing the process planner with different
tools to improve her/his performance. In computer-integrated manufacturing (CIM),
CAPP is the link between computer-aided design (CAD) and computer-aided
manufacturing (CAM).
Optimisation of process planning is one of the foremost targets of manufacturing
systems, since it is believed that only those industries capable of making effective
productions would withstand international competition in this millennium. Numbers of
research works are performed for generating optimum process plan. The optimum
process plan may be on the basis of time or cost or on the basis of some weighted
combination of these two. Tool selection, machine selection, process selection
and tool path selection, process parameter selection are the most important areas for
optimisation in process planning. This paper presents a novel population-based
approach recently proposed for several discrete optimisation problems have been
discussed. In this, how the almost blind animals like ants, could manage to establish
the shortest routes between their nest and food source is investigated. The paper reveals
that the pheromone trail is the most important medium of communication among
individual ants in a swarm. A moving ant lays varying quantities of the chemical
‘pheromone’ on the ground as it moves, thus marking its journey by a trail of
pheromone. The more the number of ants traces a given path, the more attractive this
path (trail) becomes and is followed by other ants by depositing their own
pheromone. This auto catalytic and collective behaviour results in the establishment of
the shortest route. This data is utilised for generating the optimum sequence of operations
in a machining process.
Generation of optimum sequence of operations using ant colony algorithm 255

2 Related work

There is a lot of research going on from late 60’s on CAPP. This section describes some
literature on process planning. In 1996, Usher and Bowden proposed an application of a
genetic algorithm (GA) for finding near-optimal operation sequences for use within the
context of CAPP. In their application, an improved coding strategy for operation
sequence was presented, that reduces the size of the solution space by taking into account
a set of feasibility constraints in the coding process and it enhances the performance of
the GA permitting the application of the system to more complex parts and supporting the
notion of dynamic planning. Zhang et al. in 1997 proposed a CAPP system for prismatic
parts machined in a conventional job shop. In their approach, the process planning
problem for a part is modelled in a network and five aspects of machining costs were
introduced for plan evaluation, i.e.,
1 machines
2 tools
3 machine changes
4 setup changes
5 tool changes.
In 1998 Marri et al. made an attempt to review the existing literature with the objectives
of gaining insights into the design and implementation of CAPP systems. Dereli and Filiz
(1999) developed optimisation modules of a process planning system for prismatic parts;
called OPPS-PRI (Optimised Process Planning System for Prismatic Parts).
Zhang et al. (1999) presented a novel CAPP model for machined parts in a job shop
environment that contains customer-specified machine tools and cutters. The approach
models process planning problems in a concurrent manner to generate the entire solution
space by considering the multiple planning tasks, i.e., operations (machine, tool, and tool
approach direction (TAD)) selection and operations sequencing simultaneously. Tiwari et
al. in 1999 used GA to obtain a set of process plans for a given set of parts and
production volume. Ahmad et al. proposed in 2001 a comprehensive overview of the
current trend in research works on CAPP, classifying those works into several categories
according to their focus. In 2002 Li et al. used a hybrid GA and simulated annealing (SA)
to consider concurrently the processes of selecting machining resources, determining
set-up plans and sequencing operations for a prismatic part in an optimisation procedure.
Shen et al. (2006) described the complexity of manufacturing process-planning and
scheduling problems, and reviewed the research literature in manufacturing process
planning, manufacturing scheduling, and the integration of process planning and
scheduling, particularly focusing on agent-based approaches in these areas.
Gopala Krishna and Mallikarjuna Rao (2006) presented an application of a newly
developed metaheuristic called the ant colony algorithm as a global search technique for
the quick identification of the optimal operations sequence by considering various
feasibility constrains in their work. A couple of case studies were taken from the
literature to comparing the results obtained by the proposed method. Jain and Gupta
(2006) explained ant colony optimisation (ACO) technique which has been used to solve
the operation sequencing problem. The approach proposed by them analyses the PR
256 D. Sreeramulu et al.

among features to generate a precedence relationship matrix (PRM). The operation-


sequencing problem in process planning is considered to produce a part with the
objective of minimising the sum of machine, setup and tool change costs. In general, the
problem has combinatorial characteristics and complex PR, which makes the problem
difficult to solve. It highlights a methodology that takes into account the various
technological constraints while sequencing and minimise the total change over cost.

3 Ant colony optimisation

In the early 1990s, ACO was introduced by Dorigo et al. (1996), Dorigo and Gambardella
(1997, 1996) and Gambardella et al. (1997) as a novel nature-inspired metaheuristic for
the solution of hard combinatorial optimisation (CO) problems. ACO belongs to the class
of metaheuristics, which are approximate algorithms used to obtain good enough
solutions to hard CO problems in a reasonable amount of computation time. Other
examples of metaheuristics are tabu search, SA, and evolutionary computation. The
inspiring source of ACO is the foraging behaviour of real ants. When searching for
food, ants initially explore the area surrounding their nest in a random manner.
As soon as an ant finds a food source, it evaluates the quantity and the quality of the
food and carries some of it back to the nest. During the return trip, the ant deposits a
chemical pheromone trail on the ground. The quantity of pheromone deposited, which
may depend on the quantity and quality of the food, will guide other ants to the food
source. The more the number of ants traces a given path, the more attractive this path
(trail) becomes and is followed by other ants by depositing their own pheromone. As it
has been shown as, indirect communication between the ants via pheromone trails
enables them to find shortest paths between their nest and food sources. This
characteristic of real ant colonies is exploited in artificial ant colonies in order to solve
CO problems.
Consider for example the experimental setting shown in Figure 1. There is a path
along which ants are walking (for example from food source A to the nest E, and vice
versa, Figure 1a). Suddenly an obstacle appears and the path is cut off. So at position B
the ants walking from A to E (or at position D those walking in the opposite direction)
have to decide whether to turn right or left Figure 1b). The choice is influenced by the
intensity of the pheromone trails left by preceding ants. A higher level of pheromone on
the right path gives an ant a stronger stimulus and thus a higher probability to turn right.
The first ant reaching point B (or D) has the same probability to turn right or left (as there
was no previous pheromone on the two alternative paths). Because path BCD is shorter
than BHD, the first ant following it will reach D before the first ant following path BHD
Figure 1c). The result is that an ant returning from E to D will find a stronger trail on path
DCB, caused by the half of all the ants that by chance decided to approach the obstacle
via DCBA and by the already arrived ones coming via BCD: they will therefore prefer (in
probability) path DCB to path DHB. As a consequence, the number of ants following
path BCD per unit of time will be higher than the number of ants following BHD. This
causes the quantity of pheromone on the shorter path to grow faster than on the longer
one, and therefore the probability with which any single ant chooses the path to follow is
quickly biased towards the shorter one. The final result is that very quickly all ants will
choose the shorter path.
Generation of optimum sequence of operations using ant colony algorithm 257

Figure 1 An example with real ants

Figure 2 shows an example of experimental set up of artificial ants. Figure 2a) shows the
initial position of the obstacles on the path, Figure 2b) indicates at time t = 0 there is no
trail on the graph edges; therefore, ants choose whether to turn right or left with equal
probability and Figure 2c) indicates at time t = 1 trail is stronger on shorter edges, which
are therefore, in the average, preferred by ants.

Figure 2 An example with artificial ants

Some major differences with a real (natural) one:


• artificial ants will have some memory
• they will not be completely blind
• they will live in an environment where time is discrete.
The idea is that if at a given point an ant has to choose among different paths, those
which were heavily chosen by preceding ants (that is, those with a high trail level) are
chosen with higher probability. Furthermore, high trail levels are synonymous with short
paths. It is this real-life intelligent cooperative search behaviour of almost blind ants was
the key motivation factor inspiring and leading to the formulation of artificial ant
algorithms to solve several large-scale combinatorial and function optimisation problems.
In all these algorithms, a set of ant-like agents or software ants solves the problem under
258 D. Sreeramulu et al.

consideration through a cooperative effort. This effort is mediated by exchanging


information on the problem structure the agents concurrently collect while stochastically
we building solutions. This paper presents the usefulness of ant algorithm with the
specific example of manufacturing process planning problems.

3.1 Some of the properties of ant colony (Marco Dorigo and Luca Maria)

• An ant searches for minimum cost feasible solutions Jˆψ = minψ Jψ ( L, t ) .

• An ant k has a memory Mk that it can use to store information on the path it followed
so far. Memory can be used to build feasible solutions, to evaluate the solution
found, and to retrace the path backward.
• An ant k in state Sr = Sr-1, i can move to any node j in its feasible neighbourhood,
{
Nik , defined as Nik = j ( j ∈ Ni ) ∧ ( Sr , j ∈ S .}
• An ant k can be assigned a start state S sk and one or more termination conditions ek.
Usually, the start state is expressed as a unit length sequence, that is, a single
component.
• Ants start from the start state and move to feasible neighbour states, building the
solution in an incremental way. The construction procedure stops when for at least
one ant k at least one of the termination conditions ek is satisfied.

• An ant k located on node i can move to a node j chosen in Nik . The move is selected
applying a probabilistic decision rule.
• The ants’ probabilistic decision rule is a function of
(i) the values stored in a node local data structure Ai = [aij] called ant-routing
table, obtained by a functional composition of node locally available
pheromone trails and heuristic values
(ii) the ant’s private memory storing its past history
(iii) the problem constraints.
• When moving from node i to neighbour node j the ant can update the pheromone
trail τij on the arc (i, j). This is called online step-by-step pheromone update.
• Once built a solution, the ant can retrace the same path backward and update the
pheromone trails on the traversed arcs. This is called online delayed pheromone
update.
• Once it has built a solution, and, if the case, after it has retraced the path back to the
source node, the ant dies, freeing all the allocated resources.

3.2 ACO algorithm


At the beginning of the algorithm, pheromone matrix is initialised. The level of initial
pheromone values, as well as which values are initialised depends on the problem being
Generation of optimum sequence of operations using ant colony algorithm 259

considered. Furthermore, an ACO algorithm includes two more mechanisms: Pheromone


trail evaporation and, optionally, daemon actions. Pheromone trail evaporation and
daemon actions. Pheromone evaporation is the process by means of which the pheromone
trail intensity on the connections automatically decreases over time. From a practical
point of view, pheromone evaporation is needed to avoid a too rapid convergence of the
algorithm towards a sub-optimal region. It implements a useful form of forgetting,
favouring the exploration of new areas of the search space.
The generalised flowchart of ant colony algorithm is shown in Figure 3. Daemon
actions, that are an optional component of the ACO meta-heuristic, can be used to
implement centralised actions which cannot be performed by single ants. Examples are
the activation of a local optimisation procedure, or the collection of global information
that can be used to decide whether it is useful or not to deposit additional pheromone to
bias the search process from a non-local perspective. As a practical example, the daemon
can observe the path found by each ant in the colony and choose to deposit extra
pheromone on the arcs used by the ant that made the shortest path. Pheromone
updates performed by the daemon are called offline pheromone updates (Krishnaiyer and
Cheraghi, 2002).

4 Optimisation of process plan using ACO

CAPP forms an important interface between CAD and CAM. It is concerned with
determining the sequence of individual manufacturing operations required to produce a
product as per technical specifications given in the part drawing. Any sequence of
manufacturing operations that is generated in a process plan cannot be the best possible
sequence every time in a changing production environment. It means operation
sequencing is combinatorial in nature and is said to be NP-complete problem. As the
complexity of the product increases, the number of feasible sequences increases
exponentially and there is a need to choose the best among them. To solve this problem a
newly developed metaheuristic called the ant colony algorithm as a global search
technique is used for the quick identification of the optimal operations sequence by
considering various feasibility constrains, Optimisation criteria is described later with
reference to minimum cost.
In the ACO metaheuristic a colony of artificial ants, cooperates in finding good
solutions to difficult discrete optimisation problems. Cooperation is a key design
component of ACO algorithms and good solutions are an emergent property of the ant’s
cooperative interaction. The technique involves observing the part feature details form
available drawings, and operations required for each feature, and also PR among
operations. Generate ‘A’ number of artificial ants, where ‘A’ is assumed to be equal to
the number of operations ‘n’. Set initial value of pheromone (τij ) equal to a constant
value (e = 0.1) for every pair of operations (i.e., τij = e). τij is the pheromone
present on the link joining operations i and j. Assign ‘n’ operations to ‘A’ ants in
sequence starting with first operation. Now move all ants to positions, which ant’s
position didn’t follow precedence give move probability ‘0’. By following this for all
operations, few ants can only complete their sequence. The objective function (FFk) for
each completed sequence is calculated. Now update the pheromone differentially. As
260 D. Sreeramulu et al.

shortest path is the emergent property of ACO, the completed sequences should be
strengthened and the incomplete sequences should be weakened. This step helps in the
eliminating the incomplete sequences form the future iterations. Separate the ants
completing operation sequences from the ants unable to complete their operation
sequences. For each of these complete operation sequences add pheromone on their
edges, to improve their chances of selection in next iteration also. The amount of
pheromone to be added on the edges of a sequence completed by kth ant (say) is given by
the following expression.

Figure 3 Generalised flowchart for ant algorithm


Generation of optimum sequence of operations using ant colony algorithm 261

Q
Δτ ijk = (1)
FFk

Where, Q is a pheromone deposition constant. In the present study, a value of ‘10’ was
taken from literature. FFk is the value of the objective function for the sequence under
consideration (i.e., sequence generated by kth ant). Reduce pheromone on the edges of
incomplete sequences to weaken it chances for selection in the next iteration. The
following expression is used to reduce the pheromone on the edges of an incomplete
sequence.
τ ij = (1 − ρ ).τ ij (2)

where, ρ ∈ [0, 1] is the persistence of the pheromone trail, and (1 – ρ) represents the
evaporation of pheromone from edge (i, j). Moreover, parameter ρ also avoids unlimited
accumulation of the pheromone trails on the edges and thus allows the algorithm to forget
previously done bad choices. Researches in the past have used a range of values for ρ
varying from ‘0’ to ‘0.5’, but in our algorithm a value of 0.1 for ρ has taken. After each
iteration the pheromone updation and evaporation takes place after certain number of
iterations or position values of each operations are not improving then pick the highest
pheromone position for each operation according to precedence constraints, this is the
best sequence.

4.1 PR between operations


The PR’s between operations come from geometrical and technological consideration to
produce every feature with the best possible accuracy. They must be satisfied by the final
operations sequence. Some of the feasibility constraints are (Zhang et al., 1997):
Types of constraints, i.e., fixture requirement, datum requirement, good manufacturing
practice, and geometric tolerance are considered to determine the PR between
features.
• Fixture requirement: PR between two features exists when machining one feature
first may cause another to be unfixturable. An example is given in Figure 4 where F1
(through hole) must be drilled before F2 (slot) is machined. Otherwise, deformation
of the slot shoulder would occur.
• Datum requirement: when two features have a dimensional or geometrical tolerance
relationship, the feature containing the datum should be machined first. For example,
F2 should be machined before F4 (blind-hole) since the bottom face of F2 is the
datum of F4 (see Figure 4).
• Good manufacturing practice: good manufacturing practice or rules-of-thumb may
also result in PR between features. In Figure 4, F4 sits on F3 (slant face). F4 should
be drilled before F3 to avoid tool damage.
• Geometric tolerance: The last constraint pertains to the geometric tolerances define
for the part. The types of tolerances that affect sequencing include: profile of a line
and surface, perpendicularity, angularity, parallelism, total and circular runout,
262 D. Sreeramulu et al.

position, symmetry, and concentricity. The result of this analysis is the identification
of those features which must be cut in the same setup.
In Figure 4 the through hole (F1) can in theory be reached by the TAD’s +y and -y;
however, a drill cannot access F1 along +y, so this option is discarded. Features: F1
(through hole), F2 (slot), F3 (taper), F4 (blind hole), and F5 (slot) are technological
attributes: ‘xxx’ (positional tolerance between F4 and F2).

Figure 4 An example part for the operations selection

4.2 Criteria for optimising the precedence sequence (Zhang et al., 1997)
The precedence sequence optimisation is based on the weighted cost, which consists of,
n
• Machine cost, MC = ∑ MCI
i =1
i (3)

where n is the total number of OpM’s and MCI is the machine cost index for using
machine-i.
n
• Tool cost, TC = ∑ TCI
i =1
i (4)

where TCIi is the tool cost index for using tool-i.


• Machine change cost (MCC): a machine change is needed when two adjacent
operations are performed on different machines,
n −1
MCC = MCCI * ∑ (1 − Ω(M
i =1
i +1 − M i )) (5)

where MCCI is the machine change cost index, and Mi is the machine ID used for
operation i.

Ω( M i +1 − M i ) = { 1
0 1, if M i ≠ M j and 0, if M i = M j (6)
Generation of optimum sequence of operations using ant colony algorithm 263

• Setup change cost (SCC): A setup change is needed when two adjacent OpM’s
performed on the same machine have different TADs.
n −1
SCC = SCCI * ∑ ((1 − Ω(M
i =1
i +1 − M i )) * Ω(TADi +1 − TADi )) (7)

where SCCI is the setup change cost index.


Table 1 Set-up change

Conditions for machining two consequent operations Set-up change


Same TAD and same M/C No
Same TAD and different M/Cs Yes
Different TAD and same M/C Yes
Different TAD and different M/Cs Yes

• Tool change cost (TCC): A tool change is needed when two adjacent OpM’s
performed on the same machine use different tools.
n −1
TCC = TCCI * ∑ ((1 − Ω(M
i =1
i +1 − M i )) * Ω(Ti +1 − Ti )) (8)

where TCCI is the tool change cost index.


Table 2 Tool change

Conditions for machining two consequent operations Tool change


Same Tool and same M/C No
Same Tool and different M/Cs No
Different Tools and same M/C Yes
Different Tools and different M/Cs No

• Total manufacturing cost,


MFGC = MC + TC + MCC + TCC + SCC (9)
These cost factors can be used either individually or collectively as a cost compound
based on the requirement and the data availability of the job shop.

4.3 Constraint adjustment algorithm


For initially generated process plan (random sequence) after the crossover and mutation
the precedence constraints might not be satisfied. A constraint adjustment algorithm,
which can be applied to a complicated and multiple constraint condition, is proposed to
rearrange the process plan according to the constraints while random properties in it can
kept. For a process plan with n bits (operations), the constrained adjustment algorithm
described as follows:
264 D. Sreeramulu et al.

• Select the bits that do not have constraint relationships with other bits in process plan
and keep their positions unchanged in process plan. Assume the number of bits
selected in this step is x.
• The remaining (n-x) bits, which are constrained to be prior to other bits in process
plan, are used to form a double linked list (DLL) according to the relative position in
the process plan. The adaptation of a DLL is to make deletion and insert
manipulations convenient and efficient. In DLL, each bit has prior and next
references pointing to its prior and next bit respectively.
• Traverse DLL from the tail. Set the traversed node as the current bit if it is not
assigned as the handled, otherwise the current bit is moved to its prior bit. If there is
one or more bits, which are prior to the current bit in the DLL. That should be
posterior to the current bit according to the preliminary precedence constraints: these
bits are deleted from the DLL and used to form another DLL1, which is initially set
as void, according to their relative positions in DLL. DLL1 is inserted to DLL just
after the current bit. Move the reference to the tail, set the just handled current bit as
handled. Repeat this step.
• After all bits assigned as handled in step-3m the order in DLL reflects the proper
relative PR of the constraint bits.
• Fill the bits in the DLL one-by-one back to the (n-x) positions of process plan
according to their order in DLL. The updated process plan satisfies the PR while
some randomness can be kept.

After applying the constraint adjustment algorithm to the random sequences among the
features it will generates the set of possible sequences that satisfy the PR. These possible
sequences are taken as the initial feasible sequences for ACO algorithm. Explanation of
constraint adjustment algorithm is described as follows with an example.
For example, for a 14-bit chromosome (n = 14), the bits sequence and precedence
constraints are listed in Table 3. Six bits (Oper[1], Oper[4], Oper[6], Oper[11], Oper[13],
Oper[14]) have no constraint relationships with other operations (x = 6). Hence, their
positions are kept and a LL is formed for the other eight bits (n-x = 8). The first current
bit is Oper[8], and Oper[3], Oper[9] and Oper[5] should be posterior to it according to the
constraints. The updating process of LL is shown in Figure 5 After Oper[8] has been
handled, the reference to the current bit is moved to the tail and the same procedure is
continued until all bits are assigned as handled. The finally updated process plan satisfies
all the constraints.
Table 3 Example of a process and operations constraints

Original process plan Oper7- Oper14- Oper2- Oper10- Oper4- Oper11- Oper9-
Oper12- Oper3- Oper13- Oper6- Oper5- Oper8- Oper1
Constraint 1 Oper5 and Oper9 should be before Oper2 and Oper7
Constraint 2 Oper12 and Oper8 should be before Oper3, Oper5 and Oper9
Constraint 3 Oper3 should be before Oper5
Constraint 4 Oper10 should be before Oper7
Generation of optimum sequence of operations using ant colony algorithm 265

Figure 5 Example process of the constraint adjustment algorithm

PP Uncha Uncha Uncha Uncha Uncha Uncha

Oper7- Oper14- Oper2- Oper10- Oper4- Oper11- Oper9- Oper12- Oper3- Oper13- Oper6- Oper5-
Oper8- Oper1

The initially formed DLL


Head

Oper Oper Oper Oper


Tail

Oper Oper Oper Oper

The formatted DLL1 and updated DLL for the current bit-
Oper [8]
Head Tail

L Oper Oper Oper Oper Oper

LL1
Oper Oper Oper The current

Head The updated DLL after DLL1

Oper Oper Oper Oper


Handl Tail

Oper Oper Oper Oper


move to
The current The current

so on

PP Uncha Uncha Uncha Uncha Uncha Uncha

Oper10- Oper14- Oper2- Oper8- Oper4- Oper11- Oper9- Oper3- Oper5- Oper13- Oper6- Oper7-
Oper2- Oper1
266 D. Sreeramulu et al.

Figure 6 Flow chart for the ant colony algorithm for process planning

Start

Generate initial random sequences

Rearrange the random sequences according to precedence


constraints

Cost calculation

Initialization of pheromone

Send 90 % of ‘G’ Global ants for crossover

Constraint adjustment algorithm

Cost calculation

Update pheromone trail values

Mutation

Send 10 % of ‘G’ global ants for trail diffusion

Evaporation of pheromone trail value

No If
iteration = given
iteration

Yes

Generate a sequence according to highest pheromone value

Constraint checking and cost calculation

Print the operation sequence details with cost

End
Generation of optimum sequence of operations using ant colony algorithm 267

Notations
1 The constant variables used are
n = Number of operations
A = Total number of Ants = n
G = Number of global ants
L = Number of local ants
CP = Crossover probability = 0.90
MP = Mutation probability = 0.10
Q = Pheromone position constant =10
RHO = Evaporation rate of pheromone trial = 0.10
ITER_Max = Maximum number of iteration = 100

2 Other variables are


tau = pheromone matrix of size [100] [100].
Child = Child matrix.
Mfgc = Manufacturing cost
FF = cost matrix
The program algorithm of the Ant colony that we have used for the manufacturing
process planning is as follows. We have done this program in C++ with Microsoft Visual
C++ software. The program can be used for any problem with input file. The various
notations that we have used are also stated below.

5 Implementation of ACO with example

A prismatic part having 19 features is shown in Figure 7. The operations, alternate


machines, tools and TAD can be shown in Table 4. Table 5 shows the PR between the
operations.
Based on the formula given in Section 4.2, the total manufacturing cost is calculated
for each sequence and it is optimised using ant colony algorithm discussed in Section 4.4.
The results for the above example with the given input i.e., the details of operation,
machine, tool, TAD and precedence constraints among operations are discussed.
268 D. Sreeramulu et al.

Figure 7 Example part

Source: Zhang et al. (1997)


Table 4 Feature details of example part

Feature Operation No. M/C No. Tool No. TAD


F1 1 1 1 6
F2 2 1 1 6
F3 3 2 7 5
F4 4 2 5 3
F5 5 2 5 3
F6 6 2 5 3
F7 7 1 2 5
8 1 3 5
9 3 4 5
F8 10 1 1 6
F9 11 1 2 5
12 1 3 5
13 3 4 5
F10 14 2 5 1
F11 15 1 1 6
F12 16 1 1 6
F13 17 2 5 4
F14 18 2 5 4
F15 19 1 1 5
F16 20 1 1 5
F17 21 2 5 4
F18 22 1 1 4
F19 23 1 1 4
Generation of optimum sequence of operations using ant colony algorithm 269

Table 5 Precedence constraints between features and operations

Feature Operation No. Precedence constraint description


F1 1 F1 (Op 1) is after F17 (Op 21)
F2 2 F2 (Op 2) is after F1 (Op 1) and F17 (Op 21)
F3 3 F3 (Op 3) is after F1 (Op 1), F2 (Op 2), F4 (Op 4), F10 (Op
14) and F17 (Op 21)
F4 4 F4 (Op 4) is after F5 (Op 5), F6 (Op 6), F10 (Op 14)
F5 5 -----
F6 6 F6 (Op6) is after F5 (Op 5)
F7 7 F7 (Op 7) is before (Op 9 and 10) and after F17 (Op 21), (Op
8 9) is before (Op 10) for the fixed order of machining
operations
9
F8 10 F8 (Op 10) is after F7 (Op 7,8 and 9) and F9 (Op 11,12 and
13)
F9 11 F9 (Op 11) is before (Op 12 and 13) and after F7 (Op 7,8 and
12 9) and F17 (Op 21). (Op 12) is before (Op 13) for the fixed
order of machining operations
13
F10 14 ---
F11 15 F11 (Op 15) is after F5 (Op 5) and F6 (Op 6)
F12 16 F12 (Op 16) is after F5 (Op 5), F6 (Op 6) and F11 (Op 15)
F13 17 F13 (Op 17) is after F5 (Op 5), F6 (Op 6), F10 (Op 14), F14
(Op 18) and F17 (Op 21)
F14 18 F14 (Op 18) is after F5 (Op 5), F6 (Op 6), F10 (Op 14) and
F17 (Op 21)
F15 19 F15 (Op 19) is after F5 (Op 5), F6 (Op 6), F10 (Op 14), F14
(Op 18) and F17 (Op 21)
F16 20 F16 (Op 20) is after F5 (Op 5), F6 (Op 6) and F10 (Op 14)
F17 21 F17 (Op 21) is after F5 (Op 5), F6 (Op 6) and F10 (Op 14)
F18 22 F18 (Op 22) is after F5 (Op 5), F6 (Op 6), F10 (Op 14) and
F17 (Op 21)
F19 23 F19 (Op 23) is after F5 (Op 5), F6 (Op 6), F10 (Op 14), F17
(Op 21) F18 (Op 22)

5.1 Results
A generalised C-program has been written to implement ACO Algorithm. After the no. of
iterations the two best possible sequences are given below. Table 6 shows the first best
sequence having the Total M/C usage Cost = Rs. 249/-, Total Tool usage Cost = Rs.
43.5/-, M/C Change Cost = Rs. 1650/-(No. of machine changes = 11), Tool Change
Cost = Rs. 80/- (No. of tool changes = 4), Set-up Change Cost = Rs. 450/-(No. of setup
changes = 5) and the total cost is about Rs.2472.5/-.
270 D. Sreeramulu et al.

Table 6 First best sequence

Process 14 5 6 15 16 20 21 22 23 1 2 7 8 9 11 12 13 18 19 17 10 4 3
plan 1
Machine 2 2 2 1 1 1 2 1 1 1 1 1 1 3 1 1 3 2 1 2 1 2 2
No.
TAD 1 3 3 6 6 5 4 4 4 6 6 5 5 5 5 5 5 4 5 4 6 3 5
Tool No. 5 5 5 1 1 1 5 1 1 1 1 2 3 4 2 3 4 5 1 5 1 5 7

Table-7 shows the second best sequence having the total M/C usage cost = Rs.
249/-, total tool usage cost = Rs. 43.5/-, M/C change cost = Rs. 1800/-(No. of machine
changes = 12), tool change cost = Rs. 40/- (No. of tool changes = 2), set-up change cost =
Rs. 360/-(No. of setup changes = 4) and the total cost is about Rs. 2492.5/-.
Table 7 Second best sequence

Process 14 5 6 15 16 20 4 21 22 23 1 2 3 7 8 9 11 12 13 18 19 17 10
plan 2
Machine 2 2 2 1 1 1 2 2 1 1 1 1 2 1 1 3 1 1 3 2 1 2 1
No.
TAD 1 3 3 6 6 5 3 4 4 4 6 6 5 5 5 5 5 5 5 4 5 4 6
Tool No. 5 5 5 1 1 1 5 5 1 1 1 1 7 2 3 4 2 3 4 5 1 5 1

6 Conclusions

The generation of various feasible plans and to find the best among them constitutes an
NP-complete combinatorial problem. Hence an efficient heuristic search is required to
solve such problem. We applied the ant colony algorithm to solve the problem of
generating optimal process plan for a given part. The approach models process planning
considering the machine, tool, and tool approach directions for each operation. PR among
all the operations required for a given part are used as the constraints for the solution
space. The various costs considered for finding the optimal plan are machine change cost,
tool change cost, setup change cost, machine usage cost and tool usage cost. The optimal
process plan is found based on the minimum total cost criteria. The proposed ant colony
algorithm is coded in Micro Soft Visual C++ and executed on P3 personal computer with
1GHz processor. The system is developed based on a customisable job shop environment
so that users can modify the manufacturing database to suit their needs. This makes the
system more realistic compared to the approaches in which a fixed machining
environment is assumed. This is found to be advantageous over the previous approaches.
This work can be further extended by integrating the process planning with scheduling
with an objective of minimising the make span.
Generation of optimum sequence of operations using ant colony algorithm 271

References
Ahmad, N., Anwarul Haque, A.F.M. and Hasin, A.A. (2001) ‘Current trend in computer aided
process planning’, Proceedings of 7th Annual Meet, pp.81–92.
Gopala Krishna, A. and Mallikarjuna Rao, K. (2006), ‘Optimisation of operations sequence
in CAPP using an ant colony algorithm’, International Manufacturing Technology, Vol. 29,
Nos. 1–2, pp.159–164.
Dereli, T. and Filiz, H., I. (1999) ‘Optimization of process planning functions by genetic
algorithms’, Computers & Industrial Engineering, Vol. 36, No. 2, pp.281–308.
Dorigo, M. and Gambardella, L.M. (1996) ‘A study of some properties of Ant-Q’, Artificial Life,
Vol. 5, No. 2, pp.137–172.
Dorigo, M. and Gambardella, L.M. (1997) ‘Ant colony system: a cooperative learning approach to
the traveling salesman problem’, IEEE Transactions on E6olutionary Computation, Vol. 1,
No. 2, pp.53–66.
Dorigo, M., Maniezzo, V. and Colorni, A. (1996) ‘The ant system: optimization by a colony of
cooperating agents’, IEEE Transactions on Systems, Man & Cybernetics, Vol. 26, No. 2,
pp.29–41.
Gambardella, L.M., Taillard, E. and Dorigo, M. (1997) ‘Ant colonies for QAP’, IDSIA, Lugano,
Switzerland, Technical Report.
Jain, P.K. and Gupta, V.K. (2006) ‘Operation sequencing using ant colony optimization technique’,
IEEE International Conference on Systems, Man and Cybernetics, Vol. 1, pp.270–275.
Krishnaiyer, K. and Cheraghi, S.H. (2002) ‘Ant algorithms: review and future applications’ in
Proc. Industrial Engineering Research Conference.
Li, W.D., Ong, S.K. and Nee, A.Y.C. (2002) ‘Hybrid genetic algorithm and simulated annealing
approach for the optimization of process plans for prismatic parts’, International Journal of
Production Research, Vol. 40, No. 8, pp.1899–1922.
Marri, H.B., Gunasekaran, A. and Grieve, R.J. (1998) ‘Computer-aided process planning: a state of
Art’, Int. J. Adv. Manuf. Technol., Vol. 14, No. 4, pp.261–268.
Shen, W., Wang, L. and Hao, Q. (2006) ‘Agent-based distributed manufacturing process planning
and scheduling: a state-of-the-art survey’, IEEE Transaction on Systems, Man and
Cybernetics, Part C, Vol. 36, No. 4, pp.563–577.
Tiwari, M.K., Tiwari, S.K., Roy, D., Vidyarthi, N.K. and Kameshwaran, S. (1999) ‘A genetic
algorithm based approach to solve process plan selection problems’, Proceedings of 2nd
International Conference on Intelligent Processing and Manufacturing of Materials, Vol. 1,
pp.281–284.
Usher, J.M. and Bowden, R.O. (1996) ‘The application of genetic algorithms to operation
sequencing for use in computer-aided process planning’, Computers and Industrial
Engineering, Vol. 30, No. 4, pp.999–1013.
Zhang, F., Zhang, Y.F. and Nee, A.Y.C. (1997) ‘Using genetic algorithms in process planning
for job shop machining’, IEEE Transactions on Evolutionary Computation, Vol. 1, No. 4,
pp.278–289.
Zhang, Y.F., Ma, G.H. and Nee, A.Y.C. (1999) ‘Modeling process planning problems in an
optimization perspective’, IEEE International Conference on Robotics and Automation.

You might also like