You are on page 1of 19

Simulated annealing with auxiliary knowledge for process planning

optimization in recongurable manufacturing


F. Musharavati, A.M.S. Hamouda
n
Department of Mechanical and Industrial Engineering, Qatar University, P.O. Box 2713 Doha, Qatar
a r t i c l e i n f o
Article history:
Received 30 November 2009
Received in revised form
1 July 2011
Accepted 15 July 2011
Available online 16 September 2011
Keywords:
Simulated annealing (SA)
Auxiliary knowledge
Heuristic knowledge
Metaknowledge
Manufacturing process planning (MPP)
Recongurable manufacturing systems
(RMS)
a b s t r a c t
In this paper, three simulated annealing based algorithms that exploit auxiliary knowledge in different
ways are devised and employed to handle a manufacturing process planning problem for recongur-
able manufacturing. These algorithms are congured based on a generic combination of the simulated
annealing technique with; (a) heuristic knowledge, and (b) metaknowledge. Capabilities of the
implemented algorithms are tested and their performances compared against a basic simulated
annealing algorithm. Computational and optimization performances of the implemented algorithms
are investigated and analyzed for two problem sizes. Each problem size consists of ve different forms
of a manufacturing process planning problem. The ve forms are differentiated by ve alternative
objective functions. Experimental results show that the implemented simulated annealing algorithms
are able to converge to good solutions in reasonable time. A computational analysis indicates that
signicant improvements towards a better optimal solution can be gained by implementing simulated
annealing based algorithms that are supported by auxiliary knowledge.
& 2011 Elsevier Ltd. All rights reserved.
1. Introduction
In the past years, simulated annealing (SA) has found many
applications in solving difcult optimization problems. For exam-
ple, SA has been implemented successfully in: travel salesmen
problem [1,2]; the quadratic assignment problem [3,4]; multi-
dimensional assignment problems [5,6]; scheduling problems of a
wide variety and manufacturing process planning problems [7,8].
These examples show that the nature of the problems that have
been solved through applications of SA is wide and cuts across the
spectrum of combinatorial, N-P Hard and N-P Complete problems.
Therefore, simulated annealing is a potential candidate for solving
difcult optimization problem.
Simulated annealing (SA) is usually implemented as a trajectory-
based search technique [9]. It was rst introduced by Kirkpatrick
et al. [10]. In most applications, simulated annealing has been
utilized to locate a good approximation to an optimal solution for a
given function in a large search space. Although a number of
weaknesses of simulated annealing have been observed, variants
of the standard simulated annealing algorithm have been devel-
oped to overcome the documented weaknesses [11]. In addition,
current research has shown that search techniques that system-
atically exploit knowledge about the problem being solved are
more effective than their corresponding counterparts [12]. There-
fore, the contribution of this paper is in investigating the effects, on
the quality of computed solutions, of exploiting auxiliary knowl-
edge in simulated annealing implementations. The effects will be
observed for implementations in which SA with auxiliary knowl-
edge will be tasked to search for an optimal solution of a complex
manufacturing process planning (MPP) problem in recongurable
manufacturing.
In the public literature, most implementations of simulated
annealing are based on the pseudocode template of the simulated
annealing algorithm described in Algorithm 1 [13,14]. Algorithm
1 propagates iteratively keeping a tentative solution, S
a
, at any
time during implementation. At each iteration, a new solution, S
n
,
is generated from the previous one, S
a
. This new solution will
either replace the old one or not. The decision to replace or not to
replace is based on an acceptance criterion. The acceptance
criterion is described in Algorithm 2. The logic in the above
algorithm lies in that if the new solution is better than the old one
(tentative solution), then the new solution will replace the
tentative solution. If it is worse, it replaces it with probability
that depends on the difference between their quality values and a
control parameter, T, usually named as temperature in the public
literature [7]. This acceptance criterion provides a way for the
algorithm to elude local optima. The mathematical expression for
the probability, P, used in the acceptance criterion can be
represented by the expression:
P e
EnEa=T
1
Therefore, with more iterations, the value of the control
parameter, T, is changed according to a predened schedule, thus
Contents lists available at ScienceDirect
journal homepage: www.elsevier.com/locate/rcim
Robotics and Computer-Integrated Manufacturing
0736-5845/$ - see front matter & 2011 Elsevier Ltd. All rights reserved.
doi:10.1016/j.rcim.2011.07.003
n
Corresponding author.
E-mail address: hamouda@qu.edu.qa (A.M.S. Hamouda).
Robotics and Computer-Integrated Manufacturing 28 (2012) 113131
enforcing the SA algorithm towards accepting only better
solutions.
Algorithm 1.
Steps Pseudocode
1. T0;
2. Initialize (T, S
a
)
3. Evaluate (S
a
)
4. While not endCondition (T, S
a
) DO
5. While not coolingCondition (T) DO
6. S
n
chooseNeighbor (S
a
)
7. Evaluate (S
n
)
8. IF accept (S
a
, S
n
, T) THEN
9. S
a
S
n
10. END IF
11. TT1
12. END While
13. coolDown (T)
14. END While
Algorithm 2.
Steps Pseudocode
1. Calculate the quality
values; E
a
, E
n
// (i.e. the tentative solution, S
a
,
and the new solution, S
n
, are
each associated with quality
values, E
a
, and E
n
, respectively.
These values are determined by
a predened an objective
functionsometimes called
tness function)
2. IF E
a
4E
n
accept the
change
//(let the solution be the
tentative solution)
3. ELSE
4. Generate a random
number, X (0oXo1)
5.
IF Xoe
EaEn
T
//Accept the change (i.e. let the
solution be the new solution)
6. ELSE //Reject the change
7. END IF
8. END IF
Unlike most implementations of SA that are based on the
theories described in the previous paragraphs, this paper pro-
poses an innovative incorporation of auxiliary knowledge in the
implementation of the simulated annealing algorithm. Two forms
of auxiliary knowledge; i.e. (i) heuristic process planning knowl-
edge, and (ii) process planning metaknowledge, will be cong-
ured to support the simulated annealing algorithm. The former
involves heuristic additions to the simulated annealing template,
while the latter involves coupling the simulated annealing tem-
plate with metaknowledge. Since heuristic knowledge is derived
from process planning experience, its role towards guiding a
search technique to an optimal solution is essential. On the other
hand, process planning metaknowledge is knowledge derived
from process planning methods hence; availability of process
planning metaknowledge may contribute to the effectiveness of
the search process. The effects and impacts of deploying auxiliary
knowledge in the two proposed ways will be evaluated and
compared in this paper.
In light of the discussions above, the objective of this paper is
to investigate the capabilities of simulated annealing with aux-
iliary knowledge when tasked to generate process plans for
recongurable manufacturing. This objective is achieved by
seeking optimality in process selection and process sequencing,
with respect to processing constraints and manufacturing condi-
tions. For experimental purposes, capabilities of basic simulated
annealing algorithms with auxiliary knowledge are investigated
under four cases namely; the standard simulated annealing
algorithm, which is included as a control experiment, and three
variations of the simulated annealing algorithm that incorporate
auxiliary knowledge in different ways. A computational study is
carried out to: (a) determine the capabilities of the simulated
annealing algorithms in tackling a manufacturing process plan-
ning optimization problem for recongurable manufacturing;
(b) determine whether the solution methods based on exploita-
tion of auxiliary knowledge are more effective than the basic
simulated annealing technique in solving an instance of the
manufacturing process planning optimization problem.
The remainder of the paper is organized as follows: Section 2
presents the process planning optimization problem in recon-
gurable manufacturing. A simple illustrative example is also
included. The proposed solution methodology and the congura-
tions of the implemented simulated annealing algorithms are
described in Section 3. Applications of the simulated annealing
algorithms and computational results are presented in Section 4.
Finally, concluding remarks are given in Section 5.
2. Process planning optimization in recongurable
manufacturing
Recongurable manufacturing environments are often asso-
ciated with large information ows that help and support the
operations of the manufacturing system. In addition to support-
ing process planning decisions, availability of information also
facilitates decision making processes for reconguration of the
manufacturing system. Due to the need to manipulate and com-
municate large amounts of relevant process planning knowledge
and information, an optimization perspective is inevitable.
One of the key features in manufacturing process planning
problems in recongurable manufacturing is the need to generate
recongurable process plans that facilitate logical reconguration
of the manufacturing system [15]. When a manufacturing system
is required to undergo reconguration, there is a change in
production requirements due to changes in either manufacturing
system functionality, capacity or production mix. In such a case,
the current process plans are rendered invalid. Therefore, if
reconguration actions are to be implemented in response to
changes in production requirements, it is necessary to generate,
evaluate and implement alternative process plans that can
accommodate changes to production requirements. In addition
to being feasible, such process plans should be optimal to avoid
degrading overall manufacturing performance. In this paper we
adopt an optimization perspective to manufacturing process
planning for recongurable manufacturing. The optimization
solution method is based on a generic combination of the
simulated annealing technique with auxiliary knowledge. The
auxiliary knowledge supplies guidelines for; appropriate process
planning methods, processing characteristics, process capabilities
and cost considerations. Such guidelines assist process planners
in meeting the production requirements of specied operations.
2.1. Background
Usually, the process planning problem involves nding opti-
mal processing conditions and/or optimal processing parameters
that minimize a desired objective function. The specic process
planning activities depend on the type of the manufacturing
F. Musharavati, A.M.S. Hamouda / Robotics and Computer-Integrated Manufacturing 28 (2012) 113131 114
system under consideration as well as the nature of the products of
manufacture [16]. For a recongurable manufacturing system, both
exible and recongurable processing machines are used [15]. In
addition, the ow of parts in the system is logically recongurable
[15]. As such, the process planning problem has two major aspects
that can be differentiated for analytical purposes: (i) conguration
problem i.e. given a set of exible and recongurable processes,
from which appropriate choices can be made to create an appro-
priate manufacturing system, the required task is to identify, select
and sequence processes for the optimal manufacture of a given
production scenario; (ii) process parameter problem i.e. given a
specic processing sequence, the required task is to select an
optimal set of process parameters for the manufacture of a given
production scenario. This paper discusses the former problem.
Unlike conventional manufacturing, recongurable manufac-
turing environments utilize exible and recongurable machines/
equipment that can avail a wide range of processes. In such a
manufacturing environment, it is necessary to: (i) identify candi-
date processes, from those available including alternatives, that
may be used to facilitate the reconguration of the manufacturing
system, (ii) select an optimal set of processes, among alternatives,
(iii) identify candidate machines/equipment, including alterna-
tives, that are capable of performing the required processes and
(iv) sequence the processes for the manufacture of products.
The characterization discussed in the previous paragraphs is
necessary because of the uniqueness in the design and operations
of recongurable manufacturing systems (RMSs). Unlike previous
approaches suitable for other types of manufacturing systems,
this characterization in RMSs shows that process selection is a
machine/equipment-independent procedure which identies all
candidate processes, among those available, required to realize
key part design attributes. Thus, since RMSs usually implement
exible and recongurable processes, process selection for recon-
gurable manufacturing is based on the types of parts to be
manufactured as well as the part design attributes. On the other
hand, machine/equipment selection and sequencing utilizes
machine/machining information to identify and sequence candi-
dates that are capable of performing the processes required to
generate part design features and attributes of products for
manufacture in a given production scenario. The manufacturing
process planning optimization for recongurable manufacturing
is outlined in the following sub-section.
2.2. Manufacturing process planning optimization problem
An illustrative model of a multistage recongurable manufac-
turing line is shown in Fig. 1. The manufacturing process planning
optimization problem for recongurable manufacturing can,
therefore, be stated as follows: Given a multiple parts production
scenario and a heterogeneous collection of exible and recongurable
manufacturing machines (i.e. a set of exible processing machines
that make up a recongurable manufacturing line), arranged in PS
serial processing stages and m parallel lines, the problem is to select
an optimal manufacturing process plan for the manufacture of each
of the multiple parts in the given production scenario.
In light of previous discussions, process planning optimization
tasks for multistage recongurable manufacturing systems
includes the selection of processing stages, as well as the
machines in each of the processing stages. For multiple parts
production, different part types have different routes and differ-
ent sequences, hence; the entry point i.e. the start of processing,
for each part type may be different. Since all parts ow in the
same general direction, all parts pass through a series of proces-
sing stages, PS, even though they are not necessarily processed at
every stage. Neither are all parts processed by every machine
available at each of the processing stages. Each of the stages in the
manufacturing process deals with a number of different part
types that have different production requirements. Therefore, it is
reasonable to assume that optimal process plans for a given
production scenario cannot be precisely specied for immediate
implementation without consideration of routing requirements in
the manufacturing line.
In the model shown in Fig. 1, it is assumed that all parts follow
the same general processing direction i.e. from stage PS
1
to stage
PS
j
. Thus, the processing stages are set in a serial order. However,
the number of machines in each stage is not necessarily the same.
At every processing stage, each part follows its own route. As
such, some machines are skipped by some of the parts. In
operating a manufacturing line similar to the model represented
in Fig. 1, alternative processing routes are key issues that enhance
the operations of the multiple parts line since they provide
routing and processing exibility that enhance reconguration
of the manufacturing line. An effective optimal process routing
mix is often required in running such a production system. At
each stage, a number of processes exist to cater for a range of part
production scenarios for which the manufacturing system was
initially designed to address. The advantage of operating such a
system is that it allows repeat processing and recongurable ow
patterns of parts, hence; parts owing in the system can be
conveniently rerouted to alternative paths in response to varia-
tions in production requirements.
In operating the line depicted in Fig. 1, it is always necessary to
assess the routing of parts and sequencing of processing machines
in terms of manufacturing system performance-based criteria.
Since implementation of recongurable manufacturing system
concepts and techniques is relatively expensive, essential manu-
facturing system performance criteria is often based on operating
costs. Other researchers have also suggested that process plan-
ning for recongurable manufacturing should be based on a cost
PS
1
PS
2
PS
i
Parts In Parts Out
1 1

2 . . . . . . 2
.
. . .
. . .
np NP
1_1
1_2
1_q
1_q
1_p
1_q
k k
2_1
2_2
2_s
2_s
2_r
2_s
i_1
i_2
i_u
i_u
i_t
i_u
Fig. 1. Multistage multiple parts ow line model for parts with recongurable ow patterns.
F. Musharavati, A.M.S. Hamouda / Robotics and Computer-Integrated Manufacturing 28 (2012) 113131 115
criterion [17]. The process planning optimization problem, there-
fore, precipitates to determining an optimal manufacturing pro-
cess plan that minimizes operating costs. Solving such a problem
requires a comprehensive analysis of interrelated decision making
activities that aim at selecting an optimal manufacturing process
plan since a large number of possible combinations of processing
machines/modules and processing sequences exist. Hence, an
optimization perspective in the solution method is inevitable.
An illustrative example of the manufacturing process planning in
RMSs is described in the next section.
2.3. Illustrative example
In this section we present a simple example of the multiple
parts process planning problem in multistage recongurable
manufacturing lines. Fig. 2 shows a simplied manufacturing
system whose operation and design is similar to that described
for the general case in Section 2.2. Consider a manufacturing line
that produces ve different part types that belong to the same
part family and being produced on the same manufacturing
system. Parts enter the manufacturing line through an input
stage and they leave the system through an output stage.
The manufacturing line shown in Fig. 2 is composed of six
processing machines i.e. 1_1, 2_1, 2_2, 3_1, 3_2 and 4_1 (all assumed
to be recongurable) and one multiple purpose machines i.e. L. The
materials handling system is also assumed to be recongurable so
that the ow of parts in the manufacturing line is dictated by the
processing requirements of each part type. In addition, the ow of
parts in the system is assumed to be recongurable and thus may be
changed as and when necessary to address random variations in
production requirements and product mix.
2.3.1. Manufacturing system data
In order to select an optimal manufacturing process plan for
the illustrative system in Fig. 2, the following data are required:
(a) The number of processing stages, PS
i
for the system shown
in Fig. 2, i 1, 2, 3, 4, the number of processing stages is four.
(b) The number of serial lines, m, that are arranged in parallel in
the manufacturing systemin Fig. 2 m2, i.e. excluding the
one multiple purpose machine, L for analytical convenience.
(c) The total number of processing machines and/or processing
modules available for usein Fig. 2 there is one machine at
stage 1, two machines at stage 2, two machines at stage 3 and
one machine at stage 4. In addition, there is one multiple
purpose machine, L, which does not belong to any stage but is
used to support the manufacturing line. The processing
machines are uniquely identied by a double partitioned
integer in which the rst digit represents the stage identity
while the second digit represents a specic processing
machine in a particular stage. For example, the designation
3_2 in Fig. 2 represents machine number 2 positioned at stage
3. Therefore, the total number of processing machines in the
system depicted in Fig. 2 is seven.
(d) The total number and unique identities of various processing
types (or operations) offered by the available processing
machines in the manufacturing systemthis depends on the
nature of the parts of manufacture.
(e) Other manufacturing system data such as: values of various
cost indices associated with using each of the processing
machines in the manufacturing system, machine reliability
values, machine similarity coefcients and the distances
between any two processing machines.
2.3.2. Multiple parts data
In order to select an optimal manufacturing process plan for
the illustrative system in Fig. 2, the following multiple parts data
are required:
(a) The number of part families in a given production scenario
for the simplied example in Fig. 2, the number of part
families is assumed to be one.
(b) The total number of parts in the production scenariofor the
system in Fig. 2, the total number of parts of manufacture is
assumed to be ve.
(c) Other part data such as: part processing times, part handling
times, part production volumes, part production costs, part
similarity coefcients and processing precedence relationships.
Based on the conguration specications of a manufacturing
line, machine specications, processing capabilities and proces-
sing costs for the seven machines in Fig. 2, as well as production
and part data for the parts of manufacture, the manufacturing
process planning task is to nd an optimal manufacturing process
plan that minimizes costs. In analyzing the system described
above, it can be observed that various combinations of the
available processing machines can be selected for the manufac-
ture of a specic part according to part manufacturing require-
ments. Since different costs are associated with each combination,
it is necessary for manufacturing engineers to select the best
combination of processing machines. In addition, a number of
alternative processing sequences exist in the manufacturing
system. Therefore, it is necessary to select the best sequence of
processing the parts without violating any processing precedence
relationships. Moreover, the order of processing parts has a
signicant effect on the processing costs e.g. tool changes,
machine changes, set-up changes, etc. Therefore, identifying the
best order of processing the multiple parts in a given scenario is
important.
2.3.3. Example input instance
In order to solve the manufacturing process planning optimi-
zation problem through an algorithm, an input instance that
drives the algorithm must be created. The input instance is
created from the types of data discussed in the previous para-
graphs. With reference to the illustrative manufacturing system
depicted in Fig. 2, an illustrative data set to be included in the
input instance is described in this sub-section.
Table 1 shows an example of input data for the processing
machines/modules (PMs) in the simple manufacturing system
shown in Fig. 2.
L
Stage 1 Stage II Stage III Stage IV
1_1 2_1 3_1 4_1
Input Output
Stage Stage
2_2 3_2
Fig. 2. Illustrative example of a simplied multistage recongurable manufacturing line.
F. Musharavati, A.M.S. Hamouda / Robotics and Computer-Integrated Manufacturing 28 (2012) 113131 116
In Table 1, PM ID stands for processing machine identity
(through the double integer partitioned representation scheme
discussed at the beginning of Section 2.3). The relevant machine
data also includes: the stage at which each machine is positioned,
the processing machine usage cost index i.e. cost associated with
using a specic machine, the reliabilities of the various machines in
the manufacturing system, the class and row number that identies
the specic position of a processing machine. In column 5 of Table 1,
the class of a processing machine is assigned either 1 or 0. The digit
1 means that the processing machine in question is being utilized as
a standby machine, otherwise it is assigned the digit 0. The 6th
column identies the position of a processing machine in the system
by specifying the number of the row in which the machine is
positioned (since Fig. 2 is a multistage parallel-serial system). The
row counting starts at 0 to m, where m is the number of parallel
lines in series. For the system in Fig. 2, the rst row is assigned digit
0, the second is assigned digit 1, etc. It can also be noted that the
standby machine is not assigned any row for convenience.
Table 2, contains processing information that is specic to the
manufacturing system under study. For the purpose of this
illustrative example it is assumed that each of the seven machines
in the manufacturing system is capable of offering one processing
type (PST) i.e. one type of operation. With reference to Fig. 2, the
various processing types (PSTs) are indicated in Table 2.
In Fig. 2, the processing machines can be assumed to occupy grid
positions within the manufacturing system. As discussed earlier on,
the types of manufacturing systems discussed in this paper are those
systems in which reconguration is achieved logically (for details on
the logical reconguration concept, see reference 15). This notion
implies that there is no physical displacement of machines during
reconguration. In order to implement the evaluation criteria based
on operating costs, it is necessary to determine costs associated with
moving materials in the system since the system allows circulation
and recirculation of parts (recongurable owpatterns). For the purse
of determining the costs associated with moving materials in the
manufacturing system, the distances between any pair of processing
machines must be estimated. Table 3 shows normalized values of the
respective distances between any two processing machines.
Table 4 shows the calculated processing machine similarity
coefcients that are required as an input to the algorithm for the
purpose of effecting penalty costs associated with processing
machine change costs, and set-up change costs.
An important aspect of the input instance is the various proces-
sing requirements for each of the multiple parts of manufacture.
This requires details such as the various types of candidate proces-
sing machines including precedent relationships in processing parts.
Table 5 shows details required in order to create an input instance
for running the algorithms described in this paper.
Table 6 shows the part similarity coefcients that are calcu-
lated after studying the various parts of manufacture in a given
production scenario. Table 6 shows normalized values of the part
similarity coefcients between any two parts owing in the
manufacturing system.
A number of unique points that characterize the system shown
in Fig. 2 can be noted as follows. As the number of processing
machines in a given manufacturing line increases, the number of
possible combinations of processing machines increases and so
will the number of possible sequences to choose from. This makes
the optimization problem more difcult with the increase in the
number of processing machines. In addition, as the number of
parts of manufacture increase, choices for the order of processing
parts becomes large. In addition, the number of precedence
relationships increases thus rendering the optimization problem
difcult. It can also be noted that in the simple illustrative
example the processing types (PSTs) that each processing machine
offers was assumed to be one for sake of discussion. In reality this
assumption is an oversimplication especially if a given manu-
facturing system implements exible and/or recongurable pro-
cessing machines. Thus, the solution space for the manufacturing
process planning problem discussed in this paper becomes large
and rugged with an increase in the number of parts of manufac-
ture or an increase in the number of processing machines in the
manufacturing line. This makes manual process planning impos-
sible. The large and rugged solution space also renders conven-
tional computing methods in adequate since a solution may not be
realized in reasonable time. The following section proposes a
solution method based on simulated annealing.
3. Solution methodology
A solution methodology based on the application of simulated
annealing (SA) is described in this section. While robustness in
the proposed solution methodology is provided by the search
Table 1
Processing machine data for a manufacturing system.
PM ID Stage PM usage cost Machine reliability Class Row
1_1 1 300 0.96 0 0
2_1 2 600 0.83 0 0
2_2 2 200 0.83 0 1
3_1 3 100 0.93 0 0
3_2 3 200 0.91 0 1
4_1 4 100 0.89 0 0
L 0 800 0.90 1
Table 2
Processing types (PSTs) available at each stage in a multistage manufacturing line.
Details of a manufacturing line with seven PSTs and four stages are shown in this
table.
PSTs offered by the
system
PST_1 PST_2 PST_3 PST_4 PST_5 PST_6 PST_7
Processing stage 1 2 2 3 3 4 Standby
Table 3
Distances between any pair of processing machines in the manufacturing system.
Details for seven parts are shown in this Table.
1_1 2_1 2_2 3_1 3_2 4_1 L
1_1 0.0000 0.2174 0.2174 0.3261 0.4348 0.3043 0.3913
2_1 0.2174 0.0000 0.2871 0.1087 0.2174 0.2174 0.2391
2_2 0.3261 0.3913 0.0000 0.1087 0.2587 0.2391 0.2174
3_1 0.4348 0.4891 0.2174 0.0000 0.3043 0.3043 0.2391
3_2 0.3043 0.2174 0.2174 0.2391 0.0000 0.3087 0.1087
4_1 0.3913 0.3261 0.2391 0.2174 0.2391 0.0000 0.2087
L 0.4891 0.4348 0.3043 0.2391 0.2174 0.2174 0.0000
Table 4
Normalized values of processing machine similarity coefcients for machines in
the manufacturing system. Coefcients of seven processing machines are shown
in the table.
1_1 2_1 2_2 3_1 3_2 4_1 L
1_1 1.0000 0.3748 0.4192 0.3763 0.2776 0.3759 0.3456
2_1 0.4192 1.0000 1.0000 0.3291 0.2151 0.5360 0.4356
2_2 0.3763 0.3614 1.0000 0.5640 0.3232 0.3087 0.5643
3_1 0.2257 0.2749 0.2595 1.0000 0.1180 0.3181 0.4567
3_2 0.3409 0.3512 0.4196 0.2788 1.0000 0.4349 0.5423
4_1 0.4239 0.4361 0.4880 0.3673 0.2658 1.0000 0.1234
L 0.3457 0.4356 0.3425 0.4325 0.2134 0.4567 1.0000
F. Musharavati, A.M.S. Hamouda / Robotics and Computer-Integrated Manufacturing 28 (2012) 113131 117
strategy inherent in the simulated annealing method, rigor in the
optimization process is achieved by implementing a comprehen-
sive objective function. The advantage of employing simulated
annealing is that it is non-math-knowledge oriented. Therefore,
its implementation can be supported by auxiliary non-math
knowledge in a bid to guide the algorithm towards a solution.
This approach improves the performance of the algorithm. In
addition, the randomization algorithmic concept can be incorpo-
rated at all critical decision points in the simulated annealing
search process in order to increase the probability of eluding local
optima (see Algorithm 2).
3.1. Evaluation criteria based on operating costs
Since the aim in operating a recongurable manufacturing
system is to allow the systems to cost-effectively respond to
changing production requirements without degrading the overall
manufacturing system performance, it is important to choose
process plan evaluation criteria that are based on operating costs.
Therefore, an important evaluation criterion in recongurable
manufacturing is to minimize operating costs under processing
constraints. The various cost function indices used in this work
are discussed in the following paragraphs.
(a) Process machine cost index (PMCI)
PMC
X
K
i 1
PMCI
i
2
where, PMC is the processing machine (PM) usage cost array,
K is the total number of operations required to complete
processing of part i, while PMCI is the processing machine
usage cost index (PMCI) for using processing machine i.
(b) Process change cost index (PCCI)
Costs associated with process changes, PCC, are given by
PCC PCCI
X
K1
i 1
OPM
i 1
PM
i
3
where PCCI is the process change cost index and PM
i
is the
processing machine i. Note that in Eq. (3), the omega expres-
sion is dened as follows:
OPM
i 1
PM
i

1 if PM
i 1
aPM
i
0 if PM
i 1
PM
i
(
4
(c) Set-up change cost index (SCCI)
Costs associated with set-up changes, SCC, are given by
SCC SCCI
X
K1
i 1
1OPM
i 1
PM
i
OTAD
i 1
TAD
i
5
where SCCI is the set-up change cost index and the tool
approach distance (TAD) represents the required processing
machine key characteristic in processing consecutive parts. In
Eq. (4), the omega expression is dened as follows:
OTAD
i 1
TAD
i

pms
i,j
if TAD
i 1
aTAD
i
0 if TAD
i 1
TAD
i
(
6
where, pms
i,j
is the processing machine similarity coefcient
that denes the similarity between any two processing
machines in the manufacturing line. Also, TAD
i 1
TAD
i
if
the required process machines are in the same processing
stage, otherwise a factor of pms
i,j
has to be used, as dened in
Eq. (6).
(d) Reconguration change cost index (RCCI)
Costs associated with reconguration changes, RCC, are given
by
RCC RCCI
X
K1
i 1
1OPM
i 1
PM
i
OXS
i 1
XS
i
7
where RCCI is the reconguration change cost index and XS
denes a specic reconguration scenario and it represents
the required key part features for the manufacture of con-
secutive different part types. In Eq. (7), the omega expression
Table 5
Candidate processing machines for the various types of operations including
processing precedence relationships in manufacturing ve parts in a given
production scenario. Details for ve parts are shown in this table.
PSTs Processing
machines
Precedent PSTs
(i.e. pre-requisite operations)
Part 1
PST_1 1_1 PST_1
PST_2 2_1 2_2 L PST_1 PST_2
PST_3 2_1 2_2 L PST_3 PST_1
PST_4 3_1 3_2 L PST_2 PST_3
PST_5 3_1 3_2 L PST_2
PST_6 4_1
Part 2
PST_1 1_1
PST_2 2_1 2_2 L PST_1
PST_2 2_1 2_2 L PST_1
PST_2 2_1 2_2 L PST_1
PST_3 2_1 2_2 L PST_1 PST_2
PST_4 3_1 3_2 L PST_3 PST_1
PST_4 3_1 3_2 L PST_3 PST_1
PST_4 3_1 3_2 L PST_3 PST_1
PST_6 4_1 PST_2
Part 3
PST_1 1_1
PST_1 1_1
PST_2 2_1 2_2 L PST_1
PST_3 2_1 2_2 L PST_1 PST_2
PST_3 2_1 2_2 L PST_1 PST_2
PST_5 3_1 3_2 L PST_2 PST_3
PST_6 4_1 PST_2
PST_6 4_1 PST_2
Part 4
PST_2 1_2
PST_3 2_1 2_2 L PST_1 PST_2
PST_3 2_1 2_2 L PST_1 PST_2
PST_5 3_1 3_2 L PST_2 PST_3
PST_7 L PST_1
Part 5
PST_2 1_2
PST_3 2_1 2_2 L PST_1 PST_2
PST_3 2_1 2_2 L PST_1 PST_2
PST_4 3_1 3_2 L PST_3 PST_1
PST_4 3_1 3_2 L PST_3 PST_1
PST_5 3_1 3_2 L PST_2 PST_3
PST_5 3_1 3_2 L PST_2 PST_3
PST_5 3_1 3_2 L PST_2 PST_3
PST_6 4_1 PST_2
PST_6 4_1 PST_2
PST_7 L PST_1
Table 6
Normalized values of the part similarity coefcients between any pair of parts of
manufacture. Five parts are represented in this table.
1 2 3 4 5
1 1.0000 0.0905 0.3920 0.1206 0.1025
2 0.0905 1.0000 0.5126 0.3618 0.0905
3 0.3920 0.5126 1.0000 0.6030 0.6030
4 0.1206 0.3618 0.6030 1.0000 0.1206
5 0.1265 0.4325 0.5432 0.2435 1.0000
F. Musharavati, A.M.S. Hamouda / Robotics and Computer-Integrated Manufacturing 28 (2012) 113131 118
is dened as
OXS
i 1
XS
i

ps
i,j
if XS
i 1
aXS
i
0 if XS
i 1
XS
i
(
8
(e) Tool cost index (TCI)
Costs associated with use of tools, TC, are given by
TC TCI
X
K
i 1
T
i
9
where TCI is the tool cost index for using tool i and T
i
is the
processing time required for part i.
(f) Tool change cost index (TCCI)
Costs associated with tool change, TCC, are given by
TCC TCCI
X
K1
i 1
1OPM
i 1
PM
i


OT
i 1
T
i
10
where, TCCI is tool change cost index. In Eq. (10), the omega
expression is dened as follows:
OT
i 1
T
i

ps
i,j
if T
i 1
aT
i
0 if T
i 1
T
i
(
11
(g) Handling cost index (HCI)
The materials handling costs, HC, are given by
HC HCI
X
K1
i 1
d
i,j
12
where HCI is the materials handling cost index and d is the
distance between processing machines i and j in the grid
representation of the parallel-serial manufacturing line.
(h) Total operating cost index (F
TOC
)
Total operating cost function is the sum of the cost indices
represented in Eqs. (2)(12). Therefore, the objective function
expression for the total operating cost index, F
TOC
, can be
represented as follows:
F
TOC
PMCPCCSCCRCCTCTCCHC 13
The operating cost indices dened in Eqs. (2)(12) can be
combined and be represented implicitly through a number of
combination objective function indices to suit the manufac-
turing policies and conditions. This allows exibility in the
evaluation criteria based on various processing cost functions,
in particular those related to signicant changes that upset
the smooth running of a recongurable manufacturing sys-
tem. Such combinations can also be structured to evaluate the
optimality of process planning with respect to desired eva-
luation cost criteria. In this way, a manufacturing plan that
offers an optimum value of a combination objective function
will be regarded as the near optimal manufacturing process
plan with respect to the desired evaluation criteria.
3.2. Simulated annealing method
A simulated annealing algorithm models the physical process
of annealing as an optimization process [18]. The basic idea is to
start the system at a high control parameter, analogous to
temperature in the physical annealing process, and then gradually
drop the temperature to low values.
The logic in applying the simulated annealing analogy lies in
that if the energy function of a physical system is replaced by an
objective function, F, then the slow progression towards an
ordered ground state is representative of a progression to a global
optimum. Criteria that must be satised in implementing the
simulated annealing algorithm include; an improvement in the
objective function and a condition for generating the annealing
behavior. If a trial event generates a large value of the objective
function, the probability for accepting the trial is compared
against a randomly generated number in the range (0, 1]. This
dependence on random numbers makes simulated annealing a
stochastic method that can be applied to a variety of problems. By
incorporating some randomness into the algorithm logic, the
simulated annealing technique has the capability to elude entrap-
ment in local optima.
As mentioned earlier, variants have been developed to
improve the performance of the basic simulated annealing
method. Such variants are usually developed by devising techni-
ques that support the basic simulated annealing algorithm and/or
developing appropriate parameters for running the simulated
annealing algorithm. Determining appropriate parameters,
involves: setting the initial and nal values of the temperature
control parameter, xing the number of iterations to be per-
formed at each temperature and determining the temperature
tuning function that dictates how the temperature is to be
changed.
3.2.1. Choice of the control parameter
The control parameter, T, controls the behavior of the simu-
lated annealing algorithm in exploring possible solutions in the
search space. The initial temperature, T
0
, should be high enough
to allow further randomization in selecting the suitable manu-
facturing process plan while the nal temperature, T
F
, is selected
to be low enough so that only the changes leading to lowest
cost function values are chosen.
The relative magnitudes of the costs components described in
equations (2)(12) were utilized to guide the heuristics for
selecting the initial and nal temperatures. The initial tempera-
ture, T
o
, was calculated based on the highest cost component
value among the cost components dened in Eqs. (2)(12). This
value species the highest temperature at which the annealing
process should start for a given production scenario. On the other
hand, the nal temperature, T
F
, was calculated based on the
lowest cost component value among the cost components dened
in Eqs. (2)(12). This value species the lowest temperature at
which the annealing process should stop.
3.2.2. Temperature tuning scheme
Earlier temperature tuning schemes for the simulated anneal-
ing algorithms have been based on a cooling schedule that
implements a constant cooling rate [19,20]. However, it was
observed that in most cases, it is not necessary to spend much
time at very high temperatures at which the vast majority of the
moves will be accepted in the search process. Since the prob-
ability of acceptance of downhill movements is higher at higher
temperature, a fast annealing schedule was utilized in this paper.
This schedule is dened by the following equation:
T
k
T
0

1
1k
14
where, T
k
, is the temperature at the kth decrement and k1, 2 y.
According to the annealing schedule represented in Eq. (14),
the cooling rate is higher at the beginning, relatively moderate at
the middle and lower at the end of the search process. This allows
more of the algorithm runs to operate at lower temperatures.
During the cooling process, the simulated annealing algorithm
should reach a quasi-equilibrium state at each temperature
before processing the next temperature. In order to determine
when the temperature should be decremented, a parameter based
F. Musharavati, A.M.S. Hamouda / Robotics and Computer-Integrated Manufacturing 28 (2012) 113131 119
on the number of possible moves under each temperature was
used. In order to arrive at this parameter, a heuristic was
developed to rst specify the maximum number of possible
moves that can be made under each temperature and secondly
determine an appropriate and tuneable parameter that stops
further changes under each temperature. This was calculated as
follows:
Let the tuneable parameter, l, be a function of the expression;
a
max
e, where a
max
is a parameter to be tuned and e is the total
number of events that dene the size of an instance for a given
problem. The tuneable parameter, l, is then dened as follows:
l ta
max
e 15
where 0otr1.
Thus, by specifying the tuneable parameter, l, the temperature
can then be decreased according to the temperature tuning
scheme dened by Eq. (14).
3.3. Congurations of alternative simulated annealing algorithms
For the experimental analysis, four simulated annealing algo-
rithm were developed to solve two instances of a manufacturing
process planning optimization problem. For all implemented
algorithms the techniques described in the previous sections
were used. The implemented algorithms differed in their cong-
urations as well as the way they incorporate auxiliary knowledge.
The various congurations of the implemented simulated anneal-
ing algorithm are described below.
Case 1: Basic simulated annealing algorithm.
For the purposes of experimental analysis and a computational
study, a basic simulated annealing algorithm that implements an
embedded gradient descend method was included to serve as a
basis for comparison. Fig. 3 is a ow chart that depicts implemen-
tation of the basic simulated annealing algorithm. For this case, i.e.
case 1, a randomization concept was used at all critical decision
points in computing the solution. In the implementation of case 1,
critical decision points include: (a) how to generate the initial
process plan, which then becomes the current process plan,
(b) how to make changes to the current process plan in order to
obtain a temporary process plan during algorithm propagation and
(c) how to accept or reject a change in the current process plan. The
initial process plan was randomly generated. However, it was
validated by checking its compliance with processing constraints.
Two types of changes (sequence change and method change) were
made to the current plan in a bid to create a temporary plan. For
the sequence change, two processing machines were randomly
1. Accept change
2. Replace current plan
with new plan
Random<=
exp^(E1-E2)/Temp
Generate a random but valid
Manufacturing Process Plan
Temp < Final Temp
Compute cost function (E1) for current
plan
Change current plan
Compute cost function (E2)
For new plan
E1 >= E2
Print Final
Plan
END
Fig. 3. Flow chart for the simulated annealing algorithm implemented in case 1.
F. Musharavati, A.M.S. Hamouda / Robotics and Computer-Integrated Manufacturing 28 (2012) 113131 120
selected and their positions in the process plan were swapped. To
avoid the creation of an invalid sequence, the resultant plan was
checked for compliance with processing constraints. For the
method change, a processing machine was randomly selected and
replaced by randomly selecting one of the alternative processing
machines that offers similar functions. Within a single cycle of
applying changes to the current process plan, only one type of
change was used, and this change is also randomly selected in order
to obtain a temporary process plan. After obtaining the temporary
process plan the decision to accept or reject the change was based
on acceptance criterion of the simulated annealing algorithm.
Case 2: Heuristic knowledge only.
For case 2, problem specic heuristics were developed for the
purposes of, seeding the algorithm, proceeding at various decision
points as well as for dening a neighborhood relation. This
approach translates to implementing the basic simulated anneal-
ing algorithm that is supported with heuristic process planning
knowledge that guide the search process towards an optimal
solution. Thus, in case 2, the randomization concepts implemen-
ted in case 1 were replaced by appropriate heuristics at various
decision points. Fig. 4 illustrates the implementation of case 2.
In the black-box model shown in Fig. 4, the box represents the
basic simulated annealing algorithm depicted in the ow chart in
Fig. 3, but the box is augmented with heuristic process planning
knowledge. The purpose of including this option was to determine
the effect of implementing heuristic knowledge only on the optimi-
zation performance of an algorithm based on simulated annealing.
Case 3: Metaknowledge knowledge only.
For case 3, the basic simulated annealing was augmented with
process planning metaknowledge about the problem to be solved.
Fig. 5 illustrates the implementation of simulated annealing with
process planning metaknowledge only.
Fig. 4. Conguration of simulated annealing algorithm with heuristic knowledge
only (case 2).
Fig. 5. Conguration of simulated annealing algorithm with metaknowledge only (case 3).
F. Musharavati, A.M.S. Hamouda / Robotics and Computer-Integrated Manufacturing 28 (2012) 113131 121
The purpose of including this option was to determine the
effect of implementing metaknowledge only on the optimization
performance of an algorithm based on simulated annealing. In
addition, a comparison of this conguration with the congura-
tion in case 2 can provide information that can be used in a
comparative study to determine whether coupling simulated
annealing with heuristic knowledge is better than coupling
simulated annealing with metaknowledge.
Case 4: Heuristic knowledge plus metaknowledge.
For case 4, the basic simulated annealing algorithm was
augmented with both heuristic knowledge and metaknowledge.
The purpose of including this option was to determine the
combined effect of incorporating both heuristic and metaknow-
ledge (i.e. auxiliary knowledge) on the optimization performance
of an algorithm based on the simulated annealing technique.
Fig. 6 illustrates the conguration for implementing both heur-
istic knowledge and metaknowledge in case 4.
3.4. Implemented heuristics
In order to start the simulated annealing algorithm, an initial
but feasible solution is required [7]. Relevant production informa-
tion was used to generate an initial but feasible manufacturing
process plan. The heuristic method used in this case was based on
a random selection, without replacement technique that con-
tinues until a valid and feasible manufacturing process plan is
generated. Documented processing constraints were used to
validate a selected manufacturing process plan.
The implemented heuristics are described in the following
paragraphs. Heuristic I was used to generate an initial manufac-
turing process plan. Although the initial manufacturing process
plan must be generated randomly, it must satisfy the precedence
relationships in the manufacturing process. In this case Heuristic I
is used to guide the generation of an initial but feasible manu-
facturing process plan.
3.4.1. Heuristic Igenerate initial but feasible manufacturing
process plan
In describing this heuristic, the following symbols are used:
P represents set of feasible manufacturing process plan
solution. The solution is an array composed of the
processing machines chosen and sequenced for each
part in the production scenario, i.e. for twenty parts the
process plan will consist of sequenced strings of
machines for each of the twenty parts.
PA represents a part array i.e. a list of parts that make up
the production scenario
PR represents precedence relationships in processing parts
in the given production scenario
PM represents a processing machine
F PM search space
| empty set
Heuristic I can then be described as follows: suppose P is a
manufacturing process plan solution, dened for a given part array,
PA[p
i
]
T
, for which p[i]unique identity of the ith part in the
production scenario. Then the steps in executing Heuristic I are:
(a) Initializing, let P| and dene the PM space, F PM
1
,PM
2
,
. . ., PM
n
, for part array, PA.
(b) Randomly select a PM that has no predecessors and attach it
to a corresponding string in the part array, PA.
(c) Randomly select a set of PMs for the processes from all
alternative processing units.
(d) Remove the selected PM from the PM space and from the PRs.
If ^ is empty, then STOP; else go to (b).
(e) Repeat for all strings in the part array until P is complete.
In order to perpetuate the execution of the simulated anneal-
ing algorithm, neighboring solutions need to be generated from
Fig. 6. Conguration of simulated annealing algorithm with both heuristic knowledge and metaknowledge (case 4).
F. Musharavati, A.M.S. Hamouda / Robotics and Computer-Integrated Manufacturing 28 (2012) 113131 122
the initial solution. This is only possible if a neighborhood relation
is dened on the search space. Relevant production information
was employed to generate good neighbors thereby improving
the overall performance of the algorithm. The concept of ances-
tor and precursor neighbors was employed in the heuristic to
generate neighboring solutions. The logic in this concept is
described in the following paragraphs.
In obtaining process plans for multiple parts, an optimized
manufacturing process plan is one that consist of optimum
process routes for all parts of manufacture in a given production
scenario. In this regard, an ancestor plan can then be considered
as a multiple routing plan for which process sequences have to be
changed in an attempt to generate good neighbors (precursors).
The process of generating neighbors therefore goes through a
transition during which a precursor is composed through process
sequence interchanges and awaits validation. Thus, a precursor is
composed through random interchange of alternative processes
in the process routings on a part by part basis through use of a
precursor heuristic. In this way, some of the processes in the
ancestor are preserved in the precursor. The resulting precursor is
then evaluated and validated and eventually qualies as the next
ancestor for generating subsequent neighbors. A heuristic logic
for the ancestor (Heuristic II) is explained in the following
paragraph.
3.4.2. Heuristic IIancestor generating heuristic (neighborhood
concept)
The following symbols will be dened for the heuristics
described in the following paragraphs:
Qmpp(x
i
,p) represents manufacturing process plan in a string
position j corresponding to part, p
L represents number of part families. Since one part
family is considered, L1
NA
Q
represents the minimum number of ancestor manufac-
turing process plans in a string position j, corresponding
to part p
NP
Q
represents the minimum number of precursor manu-
facturing process plans in a string position j, correspond-
ing to part p
AMPP represents ancestor manufacturing process plan
PMPP represents precursor manufacturing plan
PM
mpp
set of processing machines that make up a manufactur-
ing process plan including the ancestor process plan
i and j counters
Let AMPP(x
q,i
) denote the qth ancestor of manufacturing
process plan j i.e. mpp(x
j
). Let mpp(x
j,p
) be a manufacturing
process plan in a string position j corresponding to part p, whose
candidate ancestor is to be found. Let PM
mpp
be a set of processing
machines (PMs) that the manufacturing process plan mpp(x
j,p
)
and the ancestor belong to. Then the ancestor generating heuristic
can be written as follows:
(a) Set PM
mpp
|, mpp(x
i
,p)Q, j i 1, L1.
(b) If NA
Q
0, then STOP; else add PM
i
to the set PM
mpp
.
(c) Interchange mpp(x
j
,p) with PM
mpp
(x
i
,p), AMPP(xL,Q).
(d) If AMPP(xL,Q)= 2PM
mpp
, then add it to the set PM
mpp
.
(e) If pAMPP(xL,Q), go to step (g).
(f) Interchange PM
mpp
(xj,p) with AMPP(xL,Q).
(g) Set j j 1.
(h) If j 4pNA
Q
then STOP; else go to step(b).
The heuristic logic for the precursor is described in the
following paragraph.
3.4.3. Heuristic IIIprecursor generating heuristic (neighborhood
concept)
Let PMPP(x
q,i
) denote the qth precursor of manufacturing
process plan i i.e. mpp(x
i
). Let mpp(x
i,p
) be a manufacturing
process plan sequence in a string position i corresponding to part
p, whose candidate precursor is to be found. Let PM
mpp
be a set of
PMs that the manufacturing process plan mpp(x
i,p
) and the
precursor belong to. Then, the precursor generating heuristic
can be written as follows:
(a) Set PM
mpp
|, mpp(xi,p)Q, j i 1, L1.
(b) If NP
Q
0, then STOP; else add PM
i
to the set PM
mpp
.
(c) Interchange mpp(xj,p) with PM
mpp
(xi,p), PMPP(xL,Q).
(d) If PMPP(xL,Q)= 2PM
mpp
, then add it to the set PM
mpp
.
(e) If pPMPP(xL,Q), go to step (g).
(f) Interchange PM
mpp
(xj,p) with PMPP(xL,Q).
(g) Set j j 1.
(h) If j opNP
Q
then STOP; else go to step (b).
The line of reasoning in the concept described above is as
follows: it is possible to identify best candidate ancestor (through
use of the ancestor heuristic) and the best candidate precursor
(through use of the precursor heuristic) for every manufacturing
process plan, i. Assuming that implementing manufacturing
process plan i results in processing cost per part E
i
, the best
candidate precursor is a manufacturing process plan, j, which
closely resembles i i.e. for which the deviation from E
i
, is minimal.
Therefore, the precursor for manufacturing process plan i can be
selected from all possible subsequent manufacturing process
plans, j, by comparing the computed deviation of their processing
cost per part, DE
i
, with those of their respective ancestors. Thus,
the neighboring solutions are generated through use of two
heuristics: i.e. precursor and ancestor heuristics.
When changing the initial manufacturing plan to perpetuate
the search for an optimal solution, two types of changes were
made; (i) process machine change, which is concerned with
alternative processing machines available in the manufacturing
system and (ii) processing sequence change, which is concerned
with changing the sequence of the selected processes. In the
implemented algorithms, the decision to implement either is
made through the logic described below.
3.4.4. Heuristic IVheuristic to change the manufacturing process
plan
Suppose P is a manufacturing process plan solution array,
dened for a given part array, PA[p
i
]
T
, for which p[i]unique
identity of the ith part in the production scenario, then the
heuristic to change the manufacturing process plan can be
described as follows:
(a) Set P| and dene the PM space, FPM
1
,PM
2
, . . ., PM
n
, for
part array, PA.
(b) Randomly select two PMs and swap their positions in the
corresponding string in the part array, PA.
(c) Randomly select a set of PMs for the required processes from
all alternative PMs.
(d) Remove the selected PM from the PM space and from the
processing relationships (PRs). If ^ is empty, then STOP; else
go to (b).
(e) Repeat for all strings in the part array until P is complete
The basic technique in the simulated annealing algorithm is to
generate a solution, evaluate it and use the resultant information
to generate a better solution. The logic behind this technique is
F. Musharavati, A.M.S. Hamouda / Robotics and Computer-Integrated Manufacturing 28 (2012) 113131 123
that an iterative improvement of this process will result in an
optimal or near-optimal solution in reasonable time.
3.5. Knowledge framework
The issues of process selection and sequencing, as discussed
previously, require a knowledge framework that provides infor-
mation in support of the decision making process for process
planning optimization. In the proposed approach, an object-
oriented problem domain model is used to dene a given
production scenario and the manufacturing requirements sce-
nario for the production of multiple parts. The production
scenario captures information about the products of manufacture
while the manufacturing requirements scenario captures infor-
mation about the processing machines available to the manufac-
turing system. Examples of relevant data required have been
given in the illustrative example in Section 2.3. These data can be
organized into knowledge by means of; part selection rules,
heuristics and part processing constraints; machine selection
rules, heuristics and constraints including details such as tool
approach distances, directions of approach, tool change rules and
heuristics, machine capability limits and specications. Some
relevant production data regarding quantities, part or product
mix, rules that govern various permitted moves in the manufac-
turing systems to details such as: in-sequence moves, by-passing
options, backtracking and part circulation are required to guide
the search process as much as possible. Three broad categories of
the knowledge framework subsystems were implemented as
follows: (a) product database, (b) manufacturing system database
and (c) process planning knowledge database.
(a) Product databaseThe product database details informa-
tion regarding the parts of manufacture; i.e. number of part
families, number of part types in each family, part description,
part key design attributes and characteristics, part similarity
coefcients [21,22] and production relationships among the parts
of manufacture e.g. production volumes and part production
costs. The knowledge encoded in the product database is captured
by studying the various parts in a given production scenario. This
knowledge is organized in the form of procedures and rules that
address issues such as:
formalized part classications for parts of manufacture in a
given production scenario;
formalized descriptions of part features and part design
attributes;
formalized descriptions of precedence relationships among a
set of processing types (PSTs) for key part features of parts of
manufacture;
part weight and characteristics of starting materials;
types of part production and production sizes;
limits and bounds of part xturing methods;
formalized description of parts in a given production scenario
including the various states of parts in the manufacturing
process;
sequences of part features that can possibly be produced
through use of available xturing methods;
formalized descriptions of the sequences of technological
activities required to manufacture parts in a given production
scenario;
possible processing structures;
precedence relationships (PRs) between the realization of
machining features in terms of xture constraints, datum
dependency and good machining practices.
(b) Manufacturing system databaseThe manufacturing
system database details information regarding the processing
machines available to the manufacturing system i.e. types of
equipment and their characteristics, the processes that can be
offered, tool and tooling details, similarity coefcients between
pairs of processing machines [21,22] as well as the processing
constraints and precedence relationships. The knowledge encoded
in the manufacturing system database is captured by studying the
manufacturing system that will be used to produce the parts of
manufacture. This knowledge includes rules governing processing
machine identication and selection with respect to processing
criteria. This knowledge is organized in the form of procedures
and rules that address process machine selection with respect to:
processing capabilities and limitations, for example, part
weight, part staring material characteristics, part overall
dimensions or size;
acceptable jigs and xturing methods;
sequence of work cycles and their characteristics;
allowable power load factors for the respective parts in the
given production scenario;
processing cost per unit;
validity of machine sequences.
In addition to the summary of issues and knowledge described
in the previous paragraphs, other information on includes:
machine database (formal descriptions of machines available in
the manufacturing system); part instrumentation database; tool
and tooling databases that give formal descriptions of tools and
tooling specications.
(c) Process planning knowledge databaseThe knowledge
database consists of process planning knowledge captured in the
form of rules that support process planning optimization. Such
rules include, process selection rules, processing stage selection
rules, manufacturing modules selection rules, rules that deter-
mine operation costs, tooling selection and design rules.
The basic idea in incorporating auxiliary knowledge is to
create a process planning optimization knowledge framework,
whose subsystems can be interfaced, through subroutines, to the
simulated annealing algorithm. Such interface provides valuable
information that can be used effectively in the process planning
optimization procedure.
The product database and the manufacturing system database
described in the previous paragraphs imply that the captured
knowledge consist of formalized descriptions of (1) processing
machines coupled with appropriate tooling, and (2) machines
facilitated with workpiece instrumentation. This requires rules
and procedures at the process planning system level to control
the use of such knowledge from two interfaced databases.
Examples of such rules include details that seek to answer the
following questions:
do the selected processing machines meet product criteria as
specied in the product data base or secondary criteria in the
manufacturing system database and its subsystems or both?
do the selected processing machines meet criteria on
sequences of machining cycles or acceptable part xturing
methods or both?
do the selected processing machines meet the criteria for
processing machine operating requirements or operation cost
per unit or both?
In addition to answering these questions, the process planning
knowledge base also contain rules and procedures for
determining:
Operating costs limits and bounds;
part instrumentation selection and design;
F. Musharavati, A.M.S. Hamouda / Robotics and Computer-Integrated Manufacturing 28 (2012) 113131 124
tool as well as tooling selection and design;
processing parameter selection;
validity of selected operation methods;
validity of the selected sequences of operation methods.
The following section gives details of applications of the
simulated annealing based algorithms discussed in this paper.
4. Applications of simulated annealing algorithms
In this section we present applications of variants of the
simulated annealing algorithm to solve a manufacturing process
planning problem in recongurable manufacturing systems. The
SA algorithm employs a number of different forms but related
objective functions (see Section 3.1) to guide the search process.
For the SA algorithm to be able to tackle an optimization problem,
a suitable solution coding must be chosen. First, all processing
machines are numbered using the partitioned double integer
encoding illustrated for the general case in Fig. 1 in Section 2.2,
as well as in the illustrative example in Section 2.3. Second, we
used a straightforward encoding i.e. an array of double parti-
tioned real numbers representing all the processing machines and
their specic processing stage in the manufacturing system. In
this encoding, the rst digit in the encoding represents the stage
at which each machine is positioned in the manufacturing system
while the second digit uniquely identies the processing machine
(see illustrative example in Section 2.3).
For the reported experiments, we selected two product data
sets (each with 20 parts and 30 parts, respectively) and a
manufacturing system with sixteen processing machines as test
problem instances. The test problem instances are in the format
discussed in Sections 2.2 and 2.3, and are similar to the example
input instances discussed in Section 2.3.3. The difference is in the
number of parts considered and the number of processing
machines. In order to create problem instances used to drive
the algorithms described in this work, data for the manufacture of
fty parts was collected from a case study. For problem instance
with 20 parts, parts were randomly selected from a basket of fty
parts. Data for the other remaining 30 parts were then used to
create the problem instance with 30 parts. In the next section, we
describe our experimental methodology. We then present the
results obtained with our base conguration together with those
obtained from simulated annealing with auxiliary knowledge in
Section 4.3. We then reect on the effect of the using heuristic
knowledge, metaknowledge and both as auxiliary knowledge in
Section 4.3.2. We also present the impact of the number of parts
of manufacture on the obtained results as well as the performance
of the algorithms.
4.1. Experimental set-up
The goal of this work was to determine the relative effects of
augmenting the basic simulated annealing algorithm with aux-
iliary knowledge. Algorithm concepts and techniques were used
to capture and deploy knowledge in a bid to improve the
performance of the simulated annealing algorithm. In the experi-
ments described in this section, we will take the simulated
annealing algorithm that is not supported by auxiliary knowledge
as the base conguration for solving the manufacturing process
planning problem. We then establish a comparison-based analy-
sis of the other techniques that implement auxiliary knowledge
against the base conguration.
In implementing auxiliary knowledge, two concepts have been
considered in this work are: (a) problem specic heuristics that
deploy heuristic knowledge about the problem under study and
(b) metaknowledge that is deployed through an interface with
relevant knowledge databases. A comparative performance ana-
lysis was used to compare the relative performances of the
algorithms. Simulated annealing algorithms implementing the
concepts discussed in this paper were engaged to solve a
manufacturing process planning optimization problem.
In certain circumstances, the performance of an algorithm may
be affected by the size of the problem at hand. Hence, it is always
useful to study the behavior of an algorithm when tasked to solve
a bigger problem size. Two problem sizes, one with twenty parts
and the other with thirty parts of manufacture, were used to test
and compare the capabilities of the four cases of the simulated
annealing algorithms. In the simulation experiments, each of the
two problem sizes was composed of ve different objective
functions that utilize ve of the commonly used evaluation
criteria for manufacturing process planning. Table 7 shows the
various objective functions used in the experimental analysis.
For each of the alternative algorithms, reported results are
based on C/C implementations on the MS Visual C 2005
platform and on the same computer, Pentium IV, 2.4 with
512 MB. Each algorithm was run fty (50) times. Since simulated
annealing is a template for solving optimization problems, adjust-
ment of free parameters is an important issue in solving a specic
problem. Preliminary experiments were conducted to determine
the most suitable values for running the simulated annealing
algorithm. This was done using a design of experiments method
described in [6]. Other parameters were adopted from recom-
mendations in the public literature [7]. Critical parameters
include; the temperature control parameters, the cooling sche-
dule, the number of iterations per phase, and the stopping
criterion. A xed number of rejected moves, l, was used as a
stopping criterion under each temperature and the number of
iterations under each temperature was xed to 100. Other
parameter values used in running the simulated annealing algo-
rithms are as follows:
Initial temperature15 000;
nal temperature50;
maximum cycles per temperature100;
l25.
4.2. Performance metrics
Measures of performance were based on, mean time (T
m
) to
reach an optimal solution (which indicates the relative efciency
of the algorithm), the coefcient of variation (Cv) in implement-
ing the algorithm (which indicates the relative robustness of the
algorithm). The metrics for evaluating performance, based on the
quality of the computed solutions, included; the best objective
function value (BOFV) found by the algorithm and the mean
objective function value (mOFV) obtained from all runs per-
formed. Both the BOFV and MOFV metrics indicate the relative
effectiveness of the implemented algorithm in nding an optimal
Table 7
Objective functions considered for the experimental analysis.
Objective
function
Description Mathematical
representation
F1 minimizing process change costs Eq. (3)
F2 minimizing set-up change costs Eq. (5)
F3 minimizing tool change costs Eq. (10)
F4 minimizing reconguration
change costs
Eq. (7)
F5 minimizing total operating costs Eq. (13)
F. Musharavati, A.M.S. Hamouda / Robotics and Computer-Integrated Manufacturing 28 (2012) 113131 125
solution. All the results obtained in our experiments were sub-
jected to a statistical analysis for their comparison. The statistical
analysis was based on a one-way ANOVA test.
4.3. Results and discussion
The results and ndings of the simulation experiments with
algorithms are discussed under the following sub-sections: com-
parative performance analysis of different search techniques,
impact of auxiliary knowledge on the quality of computed
solutions, the effects of the type or form of objective function
used and the inuence of the number of parts of manufacture in a
given production scenario.
4.3.1. Comparative performance analysis of different search
techniques
Table 8 summarizes the best and mean values achieved by
each algorithm for problem instances with twenty parts owing
in the system with recongurable ow patterns. The correspond-
ing objective functions, dened in Table 7 i.e. F1F5, are also
shown in Table 8. The recorded values were obtained from 50
independent runs of the simulated annealing algorithms.
The results in Table 8 show that the values obtained for each
metric and for each respective algorithm are within comparable
ranges. However, the type of algorithm used has an impact on the
obtained results. Based on the best obtained function value (BOFV
in Table 8) metric, SA case 2, i.e. the simulated annealing
algorithm that implements heuristic knowledge only, obtained
the best results on 4 out of 5 objective functions. It did not do well
on function F2 i.e. function based on set-up change costs. For
function F2, SA case 3 i.e. simulated annealing with metaknow-
ledge only, obtained the best performance followed by SA case 1,
i.e. the basic simulated annealing algorithm. It is surprising to
note that for the objective function F2, SA case 1 obtained a better
solution than both SA case 2 and SA case 4. SA case 2 implements
heuristic knowledge only, while SA case 4 implements both
heuristic and metaknowledge. Since SA case 3 (the best perform-
ing algorithm when objective function F2 is used) implements
metaknowledge, the algorithm performances when F2 is used
seem to suggest that availability of heuristic knowledge has little
effect on the quality of process plans that are generated based on
objective function F2 i.e. function based on set-up change costs.
Although the results based on BOFV, as discussed in the
previous paragraph, seem to indicate that SA case 2 is the most
effective method, this metric is a single statistic that does not
necessarily represent the long term behavior of an algorithm. In
order to make deductions on the long term behavior of an
algorithm, the mean objective function value (MOFV) metric is
more representative.
Based on the mean obtained function value (mOFV in Table 8)
metric, SA case 4, i.e. the simulated annealing algorithm that
implements both heuristic knowledge and metaknowledge (i.e.
auxiliary knowledge), obtained the best results on 4 out of
5 functions. It did not do well on function F1 (minimizing process
change costs), for which it was second best following SA case 3,
i.e. the simulated annealing algorithm that implements meta-
knowledge only. Since the metric mOFV is based on averaging 50
algorithm runs for each objective function, it represents the long
term behavior of an algorithm. As such, SA case 4 appears to be
the most effective algorithm.
A one-way analysis of variance (ANOVA) test for the obtained
mOFV values gave p-values less than 0.05 for functions F1, F2, F3
and F5 implying that the differences in the mOFV are statistically
signicant. On the other hand, the ANOVA test for values obtained
when objective function F4 was used gave a p-value greater than
0.05 thereby implying that the differences in the corresponding
mOFV are not statistically signicant.
Based on the ANOVA test results (as described in the previous
paragraph), i.e. by eliminating the results for F4, both algorithms
SA case 2 and SA case 4 scores 3 out of 4 functions that registered
signicant differences in the mOFV. Therefore, SA case 2 and SA
case 4 are the most effective algorithm in computing the optimal
solution for a problem instance with 20 parts. However, a
comparison of the coefcients of variation in Table 8 (see columns
4, 7, 10 and 13) suggests that there is less variability in computing
the optimal solutions when a simulated annealing algorithm that
exploits auxiliary knowledge (i.e. SA case 4) is implemented.
Hence; it can be inferred that SA case 4 is, relatively, the most
robust algorithm, in comparison to the other algorithms imple-
mented in this paper, when tasked to solve the manufacturing
process planning problem in recongurable manufacturing
systems.
The results discussed previously are based on a simulation of a
production line that manufactures 20 different parts. Table 9
summarizes the best objective function values (BOFV) and the
mean objective function values (MOFV) achieved by each algo-
rithm for problem instances with 30 parts owing in the system
with recongurable ow patterns. The corresponding objective
functions dened in Table 7 are also shown in Table 9.
The values recorded in Table 9 were obtained from 50
independent runs of the simulated annealing algorithms. These
results show that the values obtained for each metric and for each
respective algorithm are within comparable ranges. However, the
type of algorithm used has an impact on the obtained results.
Based on the BOFV metric, SA case 3, i.e. the simulated
annealing algorithm that implements metaknowledge only,
obtained the best results on 4 out of 5 functions. It did not do
well on function F3 i.e. the function based on tool change costs.
However, SA case 4, i.e. the simulated annealing algorithm that
implements both heuristic and metaknowledge, obtained the best
result for function F3, while SA case 2, i.e. the simulated annealing
algorithm that implements heuristic knowledge only, obtained
the second best result. Unlike problem instance with twenty
parts, for which SA case 2 dominated in the performance based
on the BOFV metric, SA case 3 dominated in this same metric for a
Table 8
Computed solutions obtained from simulated annealing algorithms for a problem instance with 20 parts that consider various objective functions. The best performance
values are highlighted.
Objective
Function
SA case 1 SA case 2 SA case 3 SA case 4
BOFV MOFV Cv BOFV MOFV Cv BOFV MOFV Cv BOFV MOFV Cv
F1 7281 8175 0.0400 7141 7997 0.0454 7448 7951 0.0366 7497 7964 0.0323
F2 6342 7153 0.0445 6483 7035 0.0416 6187 7016 0.0521 6450 6916 0.0298
F3 6470 7094 0.0519 6021 6902 0.0399 6225 6886 0.0427 6299 6866 0.0347
F4 5268 6040 0.0557 5180 6027 0.0462 5347 5966 0.0463 5535 5954 0.0327
F5 8431 8953 0.0315 8097 8786 0.0337 8167 8749 0.0364 8222 8701 0.0234
F. Musharavati, A.M.S. Hamouda / Robotics and Computer-Integrated Manufacturing 28 (2012) 113131 126
problem instance with thirty parts. This observation may suggest
that as the problem size become bigger (in terms of number of
parts of manufacture for this case), the exploitation of meta-
knowledge becomes more important in the search for an optimal
solution. However, as noted earlier, the results based on the
metric BOFV represent a single statistic metric that does not
necessarily represent the long term behavior of an algorithm.
Based on the mOFV metric, SA case 4, i.e. the simulated
annealing algorithm that implements both heuristic knowledge
and metaknowledge (i.e. auxiliary knowledge), obtained the best
results on 5 out of 5 functions. A one-way analysis of variance
(ANOVA) test for the obtained mOFV gave p-values less than 0.05
for all ve functions thereby implying that the differences in the
mOFV are statistically signicant. Therefore, with respect to the
long term behavior of an algorithm, it can be inferred that SA case
4, i.e. the simulated annealing with auxiliary knowledge, is the
most effective algorithm in computing the optimal solution for a
problem instance with thirty parts. In addition, the coefcients of
variation in Table 4 (see columns 4, 7, 10 and 13) suggest that
there is less variability in computing the optimal solutions when
SA case 4 is used. Hence, it can be inferred that SA case 4 is,
relatively, the most robust algorithm (in comparison to the other
algorithms implemented in this work), in solving a manufacturing
process planning problem in recongurable manufacturing sys-
tems. This observation about the robustness of SA case 4 algo-
rithm agrees with that noted when a problem instance of 20 parts
was used to run the algorithms. Table 10 summarize the mean
computation times required to reach an optimal solution for each
algorithm for a problem instance with twenty parts and their
corresponding objective functions previously dened in Table 7.
In Table 10, the mean time values, T
m
, were relativized with
respect to the mean time values for the SA case 1, i.e. the basic
simulated annealing algorithm that has been included in the
experiments to provide a basis for comparison. Table 10 shows
that for all the ve functions considered, the differences in times,
DT
m
, required to reach an optimal solution are all positive for SA
algorithm cases 2, 3 and 4 (see columns 4, 7 and 10, respectively,
in Table 5). This indicates that reduction in computation times
can be realized by implementing simulated annealing algorithms
that exploit auxiliary knowledge.
A one-way analysis of variance (ANOVA) test for the mean
computation times required to reach a solution gave p-values less
than 0.05 for all functions implying that the differences in the
mean computation times are statistically signicant. The relative
effective indices, REI (see Table 9), show that SA case 2, i.e. the
simulated annealing algorithm that implements heuristic knowl-
edge only, is the most efcient method (time wise) in solving an
instance with twenty parts, while SA case 4, i.e. the simulated
annealing algorithm that implements both heuristic knowledge
and metaknowledge, is the second best in the same metric.
Based on this observation, it appears as if availability of meta-
knowledge (see results for SA case 3 in Table 10) has little effect in
terms of improving the relative time efciency in algorithm
computations.
Table 11 summarize the mean computation times required to
reach an optimal solution for each algorithm for a problem
instance with thirty parts and their corresponding objective
functions previously dened in Table 7.
Table 11 shows that for all functions considered, the differ-
ences in times required to reach an optimal solution when thirty
parts ow in the manufacturing system are all positive for SA
algorithm cases 2, 3 and 4 (see columns 4, 7, and 10 in Table 11).
This indicates that reduction in computation times can be realized
by implementing simulated annealing algorithms that exploit
auxiliary knowledge. A one-way analysis of variance (ANOVA)
test for the mean computation times required to reach a solution
gave p-values less than 0.05 for all functions implying that the
differences in the mean computation times are statistically
signicant.
The relative effective indices, REI (see Table 11), show that SA
case 2, i.e. the simulated annealing algorithm that implements
heuristic knowledge only, is the most efcient method (time
wise) in solving an instance with thirty parts, while SA case 4, i.e.
the simulated annealing algorithm that implements both heur-
istic knowledge and metaknowledge, is the second best in the
same metric. Based on this observation, it appears as if availability
of metaknowledge has little effect in terms of improving the
relative time efciency in algorithm computations. This result
agrees with the trend obtained for a problem instance with
20 parts.
Table 9
Computed solutions obtained from simulated annealing algorithms for a problem instance with 30 parts that consider various objective functions. The best performance
values are highlighted.
Objective
function
SA case 1 SA case 2 SA case 3 SA case 4
BOFV MOFV Cv BOFV MOFV Cv BOFV MOFV Cv BOFV MOFV Cv
F1 14717 15477 0.0235 13952 14859 0.0238 13392 14401 0.0235 13585 14310 0.0219
F2 11914 12800 0.0394 11659 12359 0.0310 11086 11841 0.0312 11731 11808 0.0025
F3 11220 12427 0.0407 10894 11684 0.0320 10900 11499 0.0249 10737 11332 0.0198
F4 8916 9593 0.0416 8365 9026 0.0322 8124 8764 0.0333 8274 8611 0.0196
F5 15928 17049 0.0262 15523 16311 0.0215 15194 15798 0.0137 15496 15704 0.0066
Table 10
Computational times recorded for simulated annealing algorithms in solving a problem instance with 20 parts for various objective functions. The best performance values
are highlighted.
Objective
function
SA case 1 SA case 2 SA case 3 SA case 4
T
m
T
m DT
m
REI T
m DT
m
REI T
m DT
m
REI
F1 27.10 24.90 2.20 0.9189 25.78 1.32 0.9514 25.07 2.03 0.9251
F2 29.00 26.92 2.08 0.9282 27.93 1.07 0.9630 26.85 2.15 0.9259
F3 29.91 27.47 2.44 0.9185 28.76 1.15 0.9617 27.70 2.21 0.9261
F4 29.76 27.07 2.70 0.9095 28.51 1.25 0.9579 27.56 2.21 0.9259
F5 27.20 24.15 3.06 0.8876 25.56 1.64 0.9397 24.52 2.68 0.9013
F. Musharavati, A.M.S. Hamouda / Robotics and Computer-Integrated Manufacturing 28 (2012) 113131 127
4.3.2. Impact of auxiliary knowledge on the quality of computed
solution
In the previous section we compared the performance of the
four algorithms described in Section 3.3. All four algorithms use
the same set of objective functions (see Table 7) and were tested
on the same problem instances (one with 20 parts the other with
30 parts). While three of the algorithms i.e. SA case 2, SA case 3
and SA case 4 exploit auxiliary knowledge in different ways, SA
case 1 does not. The obtained results have been displayed in
Tables 811.
In this section we analyze the relative performance of the
different ways in which auxiliary knowledge was incorporated
into the simulated annealing algorithm. For this analysis we
compare the reference case (SA case 1) against: (a) SA case
2with heuristic knowledge only; (b) SA case 3with meta-
knowledge only; and (c) SA case 4with both heuristic and
metaknowledge. All solutions were obtained from 50 indepen-
dent executions. The detailed results obtained with SA cases 14
were shown in Tables 811. Fig. 7 shows the boxplot representa-
tion of the MOFV (right) and BOFV (left) for the four compared
techniques for a problem instance with 20 parts.
While the BOFV boxplots (see Fig. 7 left) do not seem to display
any noticeable trends, the MOFV boxplots (see Fig. 7 right) show a
decreasing trend in the median values as we move from the
boxplot of Sa case 1 to SA case 4. SA case 1, i.e. simulated
annealing without any form of auxiliary knowledge obtained a
mean objective function values (MOFVs) that range from 6500 to
8500 with a median above 7000. On the other hand, SA case 2, the
simulated annealing with heuristic knowledge only, obtained
MOFV in the range 64008400 with a median around 7000. SA
case 3, the simulated annealing that implements metaknowledge
only, obtained MOFV in the range 6400 to 8300 with a median
around 7000, while SA case 4, the simulated annealing with
both heuristic and metaknowledge obtained MOFV in the range
65008200 with a median less than 7000. It can be observed that
the results obtained with simulated annealing that does not
incorporate any form of auxiliary knowledge have noticeably
higher MOFV as well as median values than the three other cases
considered. Fig. 8 shows the boxplot representation of the MOFV
(right) and BOFV (left) for the four compared techniques for a
problem instance with 30 parts. The BOFV boxplot (see Fig. 8), and
the MOFV boxplots for 30 parts have a similar pattern to that for
20 parts of manufacture.
In Fig. 8, SA case 1, i.e. simulated annealing without any form
of auxiliary knowledge obtained a mean objective function values
(MOFVs) that range from 11 000 to 16 200 with a median of about
12 900. On the other hand, SA case 2, the simulated annealing
with heuristic knowledge only, obtained MOFV values in the range
10 30015 500 with a median around 12 400. SA case 3, the
simulated annealing that implements metaknowledge only,
obtained MOFV in the range 10 00015 000 with a median around
11 900, while SA case 4, the simulated annealing with both
heuristic and metaknowledge obtained MOFV in the range
10 00015 000 with a median of about 11 800. It can be observed
that the results obtained with simulated annealing that does not
incorporate any form of auxiliary knowledge have noticeably
higher MOFV as well as median values than the three other cases
considered.
4.3.3. Effect of the type of objective function used
In Tables 811, the objective function used seems to have an
important impact on the obtained results. The trends (in terms of
magnitudes) in the obtained results are reasonable and expected
if one considers the various denitions and costs components
included in each of the functions F1F5 (see Table 7). In general,
the BOFV range from 5180 in function F4 to 8431 in function F5,
whereas the MOFV ranged from 5954 in function F4 to 8953 in
Table 11
Computational times recorded for simulated annealing algorithms in solving a problem instance with 30 parts for various objective functions.
Objective
function
SA case 1 SA case 2 SA case 3 SA case 4
T
m
T
m DT
m
REI T
m DT
m
REI T
m DT
m
REI
F1 28.98 26.69 2.29 0.9211 28.05 0.92 0.9681 27.35 1.63 0.9439
F2 31.92 29.01 2.91 0.9089 30.91 1.01 0.9683 30.11 1.80 0.9435
F3 30.14 27.27 2.87 0.9047 29.26 0.88 0.9708 28.39 1.75 0.9419
F4 32.27 29.85 2.42 0.9249 31.69 0.58 0.9820 30.69 1.59 0.9509
F5 29.53 26.08 3.45 0.8832 28.11 1.42 0.9519 27.21 2.32 0.9215
SA_CASE4 SA_CASE3 SA_CASE2 SA_CASE1
SA_CASE4 SA_CASE3 SA_CASE2 SA_CASE1
8500
8000
7500
7000
6500
6000
5500
5000
8500
8000
7500
7000
6500
6000
5500
5000
O
b
j
e
c
t
i
v
e

F
u
n
c
t
i
o
n

V
a
l
u
e
s
BOFV Boxplot
SA_CASE4 SA_CASE3 SA_CASE2 SA_CASE1
SA_CASE4 SA_CASE3 SA_CASE2 SA_CASE1
9000
8500
8000
7500
7000
6500
6000
9000
8500
8000
7500
7000
6500
6000
O
b
j
e
c
t
i
v
e

F
u
n
c
t
i
o
n

V
a
l
u
e
MOFV Boxplot
Fig. 7. Boxplot comparisons of the best (left) and mean (right) objective function values of the different experiments for the different algorithms for a problem instance
with 20 parts.
F. Musharavati, A.M.S. Hamouda / Robotics and Computer-Integrated Manufacturing 28 (2012) 113131 128
function F5. This trend is, again, expected if one considers the
denitions of the objective functions described in Table 7. These
ranges of values for each metric for a problem instance of 20 parts
are shown in Table 12.
From Table 12, the largest percentage measure of dispersion
(range per minimum value) for the BOFV metric is 7.5%. This was
obtained using objective function F3, i.e. the objective function
based on minimizing tool change costs. The smallest percentage
measure of dispersion for the BOFV metric is 4.8%, which corre-
sponds to objective function F2 i.e. the objective function that
minimizes set-up changes. The largest percentage measure of
dispersion (range per minimum value) for the MOFV metric is
2.9%. This was obtained using objective function F5 i.e. the
objective function based on minimizing total operating costs. The
smallest percentage measure of dispersion for the MOFV metric is
1.4%, which corresponds to objective function F4 i.e. the objective
function that minimizes reconguration change costs.
For the problem instance with 30 parts, the BOFV range from
8124 in function F4 to 15 828 in function F5, whereas the MOFV
range from 8611 in function F4 to 17 049 in function F5. This
trend is expected if one considers the denitions of the objective
functions described in Table 7. The ranges of values for each
metric for a problem instance of 30 parts are shown in Table 13.
From Table 13, the largest percentage measure of dispersion
(range per minimum value) for the BOFV metric is 9.9%. This was
obtained using objective function F1 i.e. the objective function
based on minimizing process change costs. The smallest percen-
tage measure of dispersion for the BOFV metric is 4.5%, which
corresponds to objective function F3 i.e. the objective function that
minimizes tool change costs. The largest percentage measure of
dispersion (range per minimum value) for the MOFV metric is 8.6%.
This was obtained using objective function F5 i.e. the objective
function based on minimizing total operating costs. The smallest
percentage measure of dispersion for the MOFV metric is 11.4%,
which corresponds to objective function F4 i.e. the objective
function that minimizes reconguration change costs.
Although no clear pattern can be observed regarding the
impact of the objective function used with respect to the BOFV,
the MOFV seem to indicate that objective functions F4 and F5 are
relatively consistent in providing a basis for the comparison of the
SA_CASE4 SA_CASE3 SA_CASE2 SA_CASE1
SA_CASE4 SA_CASE3 SA_CASE2 SA_CASE1
17000
16000
15000
14000
13000
12000
11000
10000
9000
8000
17000
16000
15000
14000
13000
12000
11000
10000
9000
8000
O
b
j
e
c
t
i
v
e

F
u
n
c
t
i
o
n

V
a
l
u
e
s
MOFV Boxplot
SA_CASE4 SA_CASE3 SA_CASE2 SA_CASE1
SA_CASE4 SA_CASE3 SA_CASE2 SA_CASE1
16000
15000
14000
13000
12000
11000
10000
9000
8000
16000
15000
14000
13000
12000
11000
10000
9000
8000
O
b
j
e
c
t
i
v
e

F
u
n
c
t
i
o
n

V
a
l
u
e
s
BOFV Boxplot
Fig. 8. Boxplot comparisons of the best (left) and mean (right) objective function values of the different experiments for the different algorithms for a problem instance
with 30 parts.
Table 12
Range of values computed by the algorithms for each performance metric and for each objective function values for 20 parts. The smallest and largest range for each metric
are highlighted.
Metric Objective functions
F1 Range F2 Range F3 Range F4 Range F5 Range
Min Max Min Max Min Max Min Max Min Max
BOFV 7141 7497 356 6187 6483 297 6021 6470 449 5180 5535 355 8097 8431 334
MOFV 7951 8175 224 6916 7153 237 6866 7094 228 5954 6040 86 8701 8953 252
Table 13
Range of values computed by the algorithms for each performance metric and for each objective function values for 30 parts. The smallest and largest range for each metric
are highlighted.
Metric Objective functions
F1 Range F2 Range F3 Range F4 Range F5 Range
Min Max Min Max Min Max Min Max Min Max
BOFV 13392 14717 1325 11086 11914 828 10737 11220 483 8124 8916 792 15194 15928 734
MOFV 14310 15477 1167 11808 12800 992 11332 12427 1095 8611 9593 982 15704 17049 1345
Cv 0.0219 0.0238 0.0019 0.0025 0.0394 0.0369 0.0198 0.0407 0.0209 0.0196 0.0416 0.0220 0.0066 0.0262 0.0196
F. Musharavati, A.M.S. Hamouda / Robotics and Computer-Integrated Manufacturing 28 (2012) 113131 129
quality of the computed solutions. It can therefore be inferred
that the form or type of objective function used may affect the
relative performance of an algorithm in computing the solution.
Table 14 shows the Cv values calculated for each objective
function for both a 20 parts instance and a 30 parts instance. The
Cv values range from 0.0234 in function F5 to 0.0557 in function
F4 for the 20 parts instance. Those for the 30 parts instance range
from 0.0066 in function F5 to 0.0416 in function F4. In Table 14, it
can also be observed that for each objective function, the values of
the coefcient of variation for the problem instance with 30 parts
are smaller than the corresponding values for a problem instance
with 20 parts.
4.3.4. Inuence of the number of parts of manufacture
Table 15 shows the mean values over all the coefcients of
variation in the best mean objective function values calculated for
the two problem instances and for all objective functions con-
sidered in this paper.
Although the values of the coefcients of variations are not
equal to zero (an ideal case), it is observed from Table 10 that
values for SA cases 2, 3 and 4 are less than those for SA case 1. It
can also be observed that the lowest values were obtained for SA
case 4 for both problem sizes. This observation implies that
exploitation of auxiliary knowledge improves robustness in the
computation of optimal solutions.
5. Conclusion
In this paper the capabilities of simulated annealing algo-
rithms that exploit auxiliary knowledge have been investigated.
The relative performances of four algorithms were tested when
tasked to solve a manufacturing process planning optimization
problem in recongurable manufacturing systems that manufac-
ture multiple parts. In order to pursue the concept of knowledge
exploitation and its effects and inuence on computational
performance, auxiliary knowledge was incorporated in two ways:
(i) heuristic process planning knowledge, which was deployed
through problem specic heuristics that guide the search process
and (ii) process planning metaknowledge, which was interfaced
and made available for use by the simulated annealing algorithm
through subroutines. In addition to, seeding the algorithm,
deploying heuristic process planning knowledge and interfacing
the algorithms with metaknowledge, a suitable neighborhood
topology that helped in propagating the simulated annealing
algorithm, was devised and implemented successfully.
The ndings of this investigation can be summarized as follows.
Simulation results show that all implemented simulated annealing
algorithms cases are able to converge to good solutions in reasonable
time. However, auxiliary knowledge was shown to produce signi-
cant improvements in the quality of the computed solutions. In
addition, the way in which auxiliary knowledge is implemented has
an inuence on the quality of the computed solution as well as the
time required to reach an optimal solution. Although differences in
performances were noted for simulated annealing algorithms that
exploit knowledge in different ways, the results indicate that
simulated annealing algorithms that implement auxiliary knowledge
are more effective when compared to a basic simulated annealing
algorithm. The effectiveness of the algorithms was judged based on
the quality of the computed solutions. It was further noted that the
simulated annealing algorithm that implements heuristic knowledge
only was found to be the most efcient method time wise.
Therefore, it can be concluded that signicant improvements
towards better optimal solution can be gained by implementing
simulated annealing with auxiliary knowledge. Moreover, it was
observed that relative robustness in solving both problem sizes of
twenty and thirty parts increases when simulated annealing with
auxiliary knowledge is implemented. In interpreting the results of
the experiments carried out in this work, it is acknowledged that
auxiliary knowledge can be implemented in a variety of ways.
Further work will involve investigating other forms of incorporat-
ing auxiliary knowledge other than those discussed in this paper.
This includes devising hyper heuristics based on the simulated
annealing algorithm. Another consideration involves comparing
the computational performance of the simulated annealing algo-
rithms discussed in this paper with other metaheuristics based on
say genetic algorithms. An interesting option for further work
would be to design, develop and test the performance of multi-
objective algorithm when tasked to solve the process planning
optimization problem in recongurable manufacturing.
Acknowledgments
The authors would like to thank the anonymous reviewers for
their constructive comments and suggestions that have helped to
improve this paper to its present form.
References
[1] Hoffman A, Wolfe P. In: Lawler, Lenstra, Kan Rinooy, Shmoys, editors. The
traveling salesman problem. Wiley; 1985. p. 116.
[2] Wei-Bo Y, Yan-Wei Z. Improved simulated annealing algorithm for TSP.
Computer Engineering and Applications 2010;46(15):346.
[3] Peng T, Huanchen W, Dongme Z. Simulated annealing for the quadratic
assignment problem: a further study. Computers & Industrial Engineering
1996;31(34):9258.
[4] Misevicius, A., (2003), A modied simulated annealing algorithm for the
quadratic assignment problem, Informatica, 14: 97-514.
[5] Clemons WK, Grundel DA, Jeffcoat DE. Theory and algorithms for cooperative
systems. Applying simulated annealing to the multidimensional assignment
problem. Singapore: World Scientic; 2004 (pp. 4561).
[6] Huang X. Cooperative optimization for solving large scale combinatorial
problems. In: Grudel D, Murphy R, Pardalos PM, editors. Theory and
Table 14
Coefcients of variation values obtained for each objective function.
Instance size Objective functions
F1 F2 F3 F4 F5
Min Max Min Max Min Max Min Max Min Max
20 parts 0.0323 0.0400 0.0298 0.0521 0.0347 0.0519 0.0327 0.0557 0.0234 0.0364
30 parts 0.0219 0.0238 0.0025 0.0394 0.0198 0.0407 0.0196 0.0416 0.0066 0.0262
Table 15
Coefcients of variation obtained for simulated annealing algorithms in solving
problem sizes of 20 and 30 parts.
Problem size SA case 1 SA case 2 SA case 3 SA case 4
20 parts 0.1055 0.0968 0.0955 0.0733
30 parts 0.0873 0.0702 0.0697 0.0661
F. Musharavati, A.M.S. Hamouda / Robotics and Computer-Integrated Manufacturing 28 (2012) 113131 130
algorithms for cooperative systems: series on computers and operations
research. Singapore: World Scientic; 2004. p. 4.
[7] Zhang YF, Nee AYC. Applications of genetic algorithms and simulated
annealing in process planning optimization. In: Wang, Kusiak, editors.
Computational intelligence in manufacturing handbook; 2001.
[8] Lian KL, Zhang CY, Gao L, Xu ST, Sun Y. A cooperative simulated annealing
algorithm for the optimization of process planning. Advanced Materials
Research 2011;181182:48994.
[9] Blum C, Roli A. Metaheuristics in combinatorial optimization: overview and
conceptual comparison. ACM Computing Surveys 2003;35(3):268308.
[10] Kirkpatrick S, Gelatt Jr CD, Vecchi MP. Optimization by simulated annealing.
Science 1983;220(4598):6719.
[11] Alba E, Luque G. Measuring the performance of parallel metaheuristics. In:
Alba E, editor. Parallel metaheuristics: a new class of algorithms. New Jersey:
John Wiley; 2005. p. 4360.
[12] Kay CT, Keshav D, Peter IC. Evolutionary scheduling. Springer Verlang; 2007.
[13] Eglese RW. Simulated annealing: a tool for operational research. European
Journal of Operational Research 1990;46(3):27181.
[14] Breedam AV. Theory and methodology improvement heuristics for the
vehicle routing problem based on simulated annealing. European Journal of
Operational Research 1995;86(3):48090.
[15] ElMaraghy HA. Flexible and recongurable manufacturing systems paradigms.
International Journal of Flexible Manufacturing Systems 2006;17:26176.
[16] Scallan P. Process planning: the design/manufacture interface. Boston Mas-
sachusetts: Butterworth and Heinemann; 2003.
[17] Allen B. Cost allocation for process planning in recongurable manufacturing.
In: Proceedings of the rst CIRP conference on agile, recongurable manu-
facturing. Ann Arbor USA, May 2001.
[18] Hromkovic J. Algorithms for hard problems: introduction to combinatorial
optimization, randomization, approximation, and heuristics. second edition
Berlin, New York: Springer-Verlag; 2004.
[19] Nourani Y, Andresen B. Journal of Physics A: Mathematical and General
1998;31:8373.
[20] Henderson D, Jacobson S, Johnson, A. The theory and practice of simulated
annealing. In: Handbook of metaheuristics, international series in operations
research & management science, vol. 57; 2003. pp. 287319.
[21] Kazerooni M, Luong LHS, Abhary K. Machine chain similarity, a new approach
to cell formation. In: Proceedings of the computer aided production engi-
neering, IMECHE conference transaction, London; 1995. p. 97105.
[22] Luong LHS, Kazerooni M, Abhary K. Genetic algorithms in manufacturing
systems design. In: Wang J, Kusiak A, editors. Computational intelligence in
manufacturing handbook. Boca Raton, FL: CRC Press LLC; 2001. p. 6-125.
F. Musharavati, A.M.S. Hamouda / Robotics and Computer-Integrated Manufacturing 28 (2012) 113131 131

You might also like