simulated anne a ling with auxiliary knowledge for process planning

Upload: varun-kumar

Post on 03-Jun-2018

219 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/12/2019 Simulated Anne a Ling With Auxiliary Knowledge for Process Planning

    1/19

    Simulated annealing with auxiliary knowledge for process planning

    optimization in reconfigurable 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 form1 July 2011

    Accepted 15 July 2011Available online 16 September 2011

    Keywords:

    Simulated annealing (SA)

    Auxiliary knowledge

    Heuristic knowledge

    Metaknowledge

    Manufacturing process planning (MPP)

    Reconfigurable 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 reconfigur-

    able manufacturing. These algorithms are configured based on a generic combination of the simulatedannealing 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 five different forms

    of a manufacturing process planning problem. The five forms are differentiated by five 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

    significant 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 manyapplications in solving difficult 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

    difficult optimization problem.

    Simulated annealing (SA) is usually implemented as a trajectory-

    based search technique [9]. It was first introduced by Kirkpatrick

    et al. [10]. In most applications, simulated annealing has been

    utilized to locate a good approximation to an optimal solution for agiven 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 reconfigurable

    manufacturing.

    In the public literature, most implementations of simulated

    annealing are based on the pseudocode template of the simulated

    annealing algorithm described inAlgorithm 1[13,14].Algorithm

    1 propagates iteratively keeping a tentative solution, Sa, at any

    time during implementation. At each iteration, a new solution,Sn,

    is generated from the previous one, Sa. 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 thetentative 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 eEn Ea=T 1

    Therefore, with more iterations, the value of the control

    parameter, T, is changed according to a predefined 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: [email protected] (A.M.S. Hamouda).

    Robotics and Computer-Integrated Manufacturing 28 (2012) 113131

    http://-/?-http://www.elsevier.com/locate/rcimhttp://localhost/var/www/apps/conversion/tmp/scratch_3/dx.doi.org/10.1016/j.rcim.2011.07.003mailto:[email protected]://localhost/var/www/apps/conversion/tmp/scratch_3/dx.doi.org/10.1016/j.rcim.2011.07.003http://localhost/var/www/apps/conversion/tmp/scratch_3/dx.doi.org/10.1016/j.rcim.2011.07.003mailto:[email protected]://localhost/var/www/apps/conversion/tmp/scratch_3/dx.doi.org/10.1016/j.rcim.2011.07.003http://www.elsevier.com/locate/rcimhttp://-/?-
  • 8/12/2019 Simulated Anne a Ling With Auxiliary Knowledge for Process Planning

    2/19

    enforcing the SA algorithm towards accepting only better

    solutions.

    Algorithm 1.

    Steps Pseudocode

    1. T0;

    2. Initialize (T, Sa)

    3. Evaluate (Sa)4. While not endCondition (T, Sa) DO

    5. While not coolingCondition (T) DO

    6. SnchooseNeighbor (Sa)

    7. Evaluate (Sn)

    8. IF accept (Sa, Sn, T) THEN

    9. SaSn10. END IF

    11. TT 1

    12. END While

    13. coolDown (T)

    14. END While

    Algorithm 2.

    Steps Pseudocode

    1. Calculate the quality

    values;Ea

    , En

    // (i.e. the tentative solution, Sa,

    and the new solution, Sn, are

    each associated with quality

    values,Ea, andEn, respectively.

    These values are determined by

    a predefined an objective

    functionsometimes called

    fitness function)

    2. IF Ea4En accept the

    change

    //(let the solution be the

    tentative solution)

    3. ELSE

    4. Generate a random

    number,X(0oXo1)5. IFXoeEaEnT

    //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 config-

    ured to support the simulated annealing algorithm. The formerinvolves 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

    reconfigurable 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 iscarried out to: (a) determine the capabilities of the simulated

    annealing algorithms in tackling a manufacturing process plan-

    ning optimization problem for reconfigurable 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 reconfi-

    gurable manufacturing. A simple illustrative example is also

    included. The proposed solution methodology and the configura-

    tions of the implemented simulated annealing algorithms are

    described in Section 3. Applications of the simulated annealing

    algorithms and computational results are presented inSection 4.

    Finally, concluding remarks are given in Section 5.

    2. Process planning optimization in reconfigurable

    manufacturing

    Reconfigurable manufacturing environments are often asso-

    ciated with large information flows 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 reconfiguration 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 planningproblems in reconfigurable manufacturing is the need to generate

    reconfigurable process plans that facilitate logical reconfiguration

    of the manufacturing system[15]. When a manufacturing system

    is required to undergo reconfiguration, 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

    reconfiguration 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 processplanning for reconfigurable 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 specified operations.

    2.1. Background

    Usually, the process planning problem involves finding opti-

    mal processing conditions and/or optimal processing parameters

    that minimize a desired objective function. The specific process

    planning activities depend on the type of the manufacturing

    F. Musharavati, A.M.S. Hamouda / Robotics and Computer-Integrated Manufacturing 28 (2012) 113131114

  • 8/12/2019 Simulated Anne a Ling With Auxiliary Knowledge for Process Planning

    3/19

    system under consideration as well as the nature of the products of

    manufacture[16]. For a reconfigurable manufacturing system, both

    flexible and reconfigurable processing machines are used [15]. In

    addition, the flow of parts in the system is logically reconfigurable

    [15]. As such, the process planning problem has two major aspects

    that can be differentiated for analytical purposes: (i) configuration

    problem i.e. given a set of flexible and reconfigurable processes,

    from which appropriate choices can be made to create an appro-

    priate manufacturing system, the required task is to identify, selectand sequence processes for the optimal manufacture of a given

    production scenario; (ii) process parameter problem i.e. given a

    specific 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, reconfigurable manufac-

    turing environments utilize flexible and reconfigurable 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 reconfiguration 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 reconfigurable 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 identifies all

    candidate processes, among those available, required to realize

    key part design attributes. Thus, since RMSs usually implement

    flexible and reconfigurable processes, process selection for recon-

    figurable 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 reconfigurable manufacturing

    is outlined in the following sub-section.

    2.2. Manufacturing process planning optimization problem

    An illustrative model of a multistage reconfigurable manufac-

    turing line is shown inFig. 1. The manufacturing process planning

    optimization problem for reconfigurable manufacturing can,

    therefore, be stated as follows: Given a multiple parts production

    scenario and a heterogeneous collection of flexible and reconfigurable

    manufacturing machines (i.e. a set of flexible processing machines

    that make up a reconfigurable 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 reconfigurable manufacturing systems

    includes the selection of processing stages, as well as themachines 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 flow 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 specified for immediate

    implementation without consideration of routing requirements in

    the manufacturing line.

    In the model shown inFig. 1, it is assumed that all parts follow

    the same general processing direction i.e. from stage PS1to stage

    PSj. 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

    inFig. 1, alternative processing routes are key issues that enhance

    the operations of the multiple parts line since they provide

    routing and processing flexibility that enhance reconfiguration

    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 reconfigurable flow

    patterns of parts, hence; parts flowing in the system can be

    conveniently rerouted to alternative paths in response to varia-

    tions in production requirements.

    In operating the line depicted inFig. 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 reconfigurable 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 reconfigurable manufacturing should be based on a cost

    PS1 PS2 PSi

    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 flow line model for parts with reconfigurable flow patterns.

    F. Musharavati, A.M.S. Hamouda / Robotics and Computer-Integrated Manufacturing 28 (2012) 113131 115

  • 8/12/2019 Simulated Anne a Ling With Auxiliary Knowledge for Process Planning

    4/19

    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 inRMSs 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 reconfigurable

    manufacturing lines. Fig. 2 shows a simplified manufacturing

    system whose operation and design is similar to that described

    for the general case inSection 2.2. Consider a manufacturing line

    that produces five 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 sixprocessing machines i.e. 1_1, 2_1, 2_2, 3_1, 3_2 and 4_1 (all assumed

    to be reconfigurable) and one multiple purpose machines i.e. L. The

    materials handling system is also assumed to be reconfigurable so

    that the flow of parts in the manufacturing line is dictated by the

    processing requirements of each part type. In addition, the flow of

    parts in the system is assumed to be reconfigurable 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 inFig. 2, the following data are required:

    (a) The number of processing stages, PSifor the system shown

    inFig. 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 systeminFig. 2 m 2, i.e. excluding the

    one multiple purpose machine, Lfor analytical convenience.

    (c) The total number of processing machines and/or processing

    modules available for useinFig. 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 identified by a double partitioned

    integer in which the first digit represents the stage identity

    while the second digit represents a specific processing

    machine in a particular stage. For example, the designation

    3_2 inFig. 2represents machine number 2 positioned at stage

    3. Therefore, the total number of processing machines in the

    system depicted inFig. 2is 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 coefficients 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 inFig. 2, the following multiple parts data

    are required:

    (a) The number of part families in a given production scenario

    for the simplified 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 inFig. 2, the total number of parts of manufacture is

    assumed to be five.

    (c) Other part data such as: part processing times, part handling

    times, part production volumes, part production costs, part

    similarity coefficients and processing precedence relationships.

    Based on the configuration specifications of a manufacturing

    line, machine specifications, processing capabilities and proces-

    sing costs for the seven machines inFig. 2, as well as production

    and part data for the parts of manufacture, the manufacturing

    process planning task is to find 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 specific 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

    significant 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 inFig. 2.

    L

    Stage 1 Stage II Stage III Stage IV1_1 2_1 3_1 4_1

    Input OutputStage Stage

    2_2 3_2

    Fig. 2. Illustrative example of a simplified multistage reconfigurable manufacturing line.

    F. Musharavati, A.M.S. Hamouda / Robotics and Computer-Integrated Manufacturing 28 (2012) 113131116

  • 8/12/2019 Simulated Anne a Ling With Auxiliary Knowledge for Process Planning

    5/19

    In Table 1, PM ID stands for processing machine identity

    (through the double integer partitioned representation scheme

    discussed at the beginning ofSection 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 specific machine, the reliabilities of the various machines in

    the manufacturing system, the class and row number that identifies

    the specific position of a processing machine. In column 5 ofTable 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 identifies the position of a processing machine in the system

    by specifying the number of the row in which the machine is

    positioned (sinceFig. 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 inFig. 2, the first 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 specific 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 toFig. 2, the

    various processing types (PSTs) are indicated inTable 2.

    InFig. 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 reconfiguration is achieved logically (for details on

    the logical reconfiguration concept, see reference 15). This notion

    implies that there is no physical displacement of machines duringreconfiguration. 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 (reconfigurable flow patterns). 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 3shows normalized values of the

    respective distances between any two processing machines.

    Table 4 shows the calculated processing machine similarity

    coefficients 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 5shows details required in order to create an input instance

    for running the algorithms described in this paper.

    Table 6shows the part similarity coefficients that are calcu-

    lated after studying the various parts of manufacture in a given

    production scenario.Table 6shows normalized values of the part

    similarity coefficients between any two parts flowing 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 difficult 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

    difficult. 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 oversimplification especially if a given manu-

    facturing system implements flexible and/or reconfigurable pro-

    cessing machines. Thus, the solution space for the manufacturing

    process planning problem discussed in this paper becomes largeand 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 S tage PM usage cost M achine re liabilit y Class R ow

    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 0L 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.2 174 0.217 4 0.326 1 0.434 8 0.3 04 3 0.39 13

    2_1 0.2174 0.0000 0.287 1 0.1087 0.217 4 0.2 174 0.23 91

    2_2 0.3261 0.3 913 0.0000 0.1087 0.258 7 0.2 391 0.21 74

    3_1 0.4348 0.4 891 0.217 4 0.0000 0.3043 0.3 04 3 0.23 91

    3_2 0.304 3 0.2 174 0.217 4 0.239 1 0.0000 0.3 08 7 0.10874_1 0.3913 0.3 261 0.239 1 0.217 4 0.239 1 0.0000 0.2087

    L 0.4891 0.4 348 0.3043 0.239 1 0.217 4 0.2 174 0.0000

    Table 4

    Normalized values of processing machine similarity coefficients for machines in

    the manufacturing system. Coefficients 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.37 48 0.419 2 0.376 3 0.277 6 0.3 759 0.34 56

    2_1 0.4192 1.0000 1.0000 0.329 1 0.215 1 0.5 360 0.43 56

    2_2 0.3763 0.3 614 1.0000 0.564 0 0.323 2 0.3 08 7 0.56 43

    3_1 0.2257 0.2 749 0.259 5 1.0000 0.118 0 0.3 181 0.45 67

    3_2 0.3409 0.3 512 0.419 6 0.278 8 1.0000 0.4 349 0.54 23

    4_1 0.4239 0.4 361 0.488 0 0.367 3 0.265 8 1.0000 0.12 34

    L 0.3457 0.4 356 0.342 5 0.432 5 0.213 4 0.4 567 1.0000

    F. Musharavati, A.M.S. Hamouda / Robotics and Computer-Integrated Manufacturing 28 (2012) 113131 117

  • 8/12/2019 Simulated Anne a Ling With Auxiliary Knowledge for Process Planning

    6/19

    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 (seeAlgorithm 2).

    3.1. Evaluation criteria based on operating costs

    Since the aim in operating a reconfigurable manufacturing

    system is to allow the systems to cost-effectively respond to

    changing production requirements without degrading the overallmanufacturing system performance, it is important to choose

    process plan evaluation criteria that are based on operating costs.

    Therefore, an important evaluation criterion in reconfigurable

    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)

    PMCXKi 1

    PMCIi 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 machineusage cost index (PMCI) for using processing machine i.

    (b) Process change cost index (PCCI)

    Costs associated with process changes, PCC, are given by

    PCC PCCIXK1i 1

    OPMi 1PMi 3

    where PCCI is the process change cost index and PMi is the

    processing machine i. Note that in Eq. (3), the omega expres-

    sion is defined as follows:

    OPMi 1PMi 1 if PMi 1aPMi

    0 if PMi 1 PMi

    ( 4

    (c) Set-up change cost index (SCCI)

    Costs associated with set-up changes, SCC, are given by

    SCC SCCIXK1i 1

    1OPMi 1PMiOTADi 1TADi 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 defined as follows:

    OTADi 1TADi pmsi,j if TADi 1aTADi

    0 if TADi 1 TADi

    ( 6

    where,pmsi,j is the processing machine similarity coefficient

    that defines the similarity between any two processingmachines in the manufacturing line. Also, TADi1TADi if

    the required process machines are in the same processing

    stage, otherwise a factor ofpmsi,jhas to be used, as defined in

    Eq. (6).

    (d) Reconfiguration change cost index (RCCI)

    Costs associated with reconfiguration changes, RCC, are given

    by

    RCC RCCIXK1i 1

    1OPMi 1PMiOXSi 1XSi 7

    where RCCI is the reconfiguration change cost index and XS

    defines a specific reconfiguration 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 five parts in a given

    production scenario. Details for five 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_2PST_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_1PST_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 coefficients 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) 113131118

  • 8/12/2019 Simulated Anne a Ling With Auxiliary Knowledge for Process Planning

    7/19

    is defined as

    OXSi 1XSi psi,j if XSi 1aXSi

    0 if XSi 1XSi

    ( 8

    (e) Tool cost index (TCI)

    Costs associated with use of tools,TC, are given by

    TC TCIXKi 1

    Ti 9

    where TCIis the tool cost index for using tool i and Ti is the

    processing time required for part i.

    (f) Tool change cost index (TCCI)

    Costs associated with tool change, TCC, are given by

    TCC TCCIXK1i 1

    1OPMi 1PMi

    OTi 1Ti 10

    where,TCCIis tool change cost index. In Eq. (10), the omega

    expression is defined as follows:

    OTi 1Ti psi,j if Ti 1aTi

    0 if Ti 1 Ti( 11

    (g) Handling cost index (HCI)

    The materials handling costs, HC, are given by

    HC HCIXK1i 1

    di,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 (FTOC)

    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, FTOC, can berepresented as follows:

    FTOC PMCPCC SCCRCCTCTCCHC 13

    The operating cost indices defined 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 flexibility in the

    evaluation criteria based on various processing cost functions,

    in particular those related to significant changes that upset

    the smooth running of a reconfigurable 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 functionwill 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 satisfied 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. Byincorporating 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 final values of the temperature

    control parameter, fixing 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, T0, should be high enough

    to allow further randomization in selecting the suitable manu-

    facturing process plan while the final temperature, TF, 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 final temperatures. The initial tempera-

    ture, To, was calculated based on the highest cost component

    value among the cost components defined in Eqs. (2)(12). This

    value specifies the highest temperature at which the annealing

    process should start for a given production scenario. On the other

    hand, the final temperature, TF, was calculated based on the

    lowest cost component value among the cost components defined

    in Eqs. (2)(12). This value specifies 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 defined by the following equation:

    TkT0

    1

    1 k 14

    where,Tk, is the temperature at the kth decrement andk 1, 2y.

    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

  • 8/12/2019 Simulated Anne a Ling With Auxiliary Knowledge for Process Planning

    8/19

    on the number of possible moves under each temperature was

    used. In order to arrive at this parameter, a heuristic was

    developed to first 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;

    amaxe, where amax is a parameter to be tuned and e is the totalnumber of events that define the size of an instance for a given

    problem. The tuneable parameter, l , is then defined as follows:

    l tamaxe 15

    where 0otr1.

    Thus, by specifying the tuneable parameter, l, the temperature

    can then be decreased according to the temperature tuning

    scheme defined by Eq. (14).

    3.3. Configurations 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 config-

    urations as well as the way they incorporate auxiliary knowledge.

    The various configurations 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 abasis for comparison.Fig. 3is a flow 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= 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) 113131120

  • 8/12/2019 Simulated Anne a Ling With Auxiliary Knowledge for Process Planning

    9/19

    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 temporaryprocess 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 specific heuristics were developed for the

    purposes of, seeding the algorithm, proceeding at various decision

    points as well as for defining 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. 4illustrates the implementation of case 2.

    In the black-box model shown inFig. 4,the box represents the

    basic simulated annealing algorithm depicted in the flow 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. 5illustrates the implementation of simulated annealing with

    process planning metaknowledge only.Fig. 4. Configuration of simulated annealing algorithm with heuristic knowledge

    only (case 2).

    Fig. 5. Configuration of simulated annealing algorithm with metaknowledge only (case 3).

    F. Musharavati, A.M.S. Hamouda / Robotics and Computer-Integrated Manufacturing 28 (2012) 113131 121

  • 8/12/2019 Simulated Anne a Ling With Auxiliary Knowledge for Process Planning

    10/19

    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 configuration with the configura-

    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 configuration 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 manufacturingprocess 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 ofmachines 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 PMsearch space

    | empty set

    Heuristic I can then be described as follows: suppose P is a

    manufacturing process plan solution, defined for a given part array,

    PA[pi]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 define the PM space, F PM1,PM2,

    . . ., PMn, for part array, PA .

    (b) Randomly select aPMthat 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 selectedPMfrom thePMspace and from thePRs.

    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. Configuration 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) 113131122

  • 8/12/2019 Simulated Anne a Ling With Auxiliary Knowledge for Process Planning

    11/19

    the initial solution. This is only possible if a neighborhood relation

    is defined 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 optimumprocess 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 qualifies 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 defined for the heuristics

    described in the following paragraphs:

    Qmpp(xi,p) represents manufacturing process plan in a string

    positionj corresponding to part, p

    L represents number of part families. Since one part

    family is considered, L 1

    NAQ represents the minimum number of ancestor manufac-

    turing process plans in a string positionj, corresponding

    to part pNPQ 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

    PMmpp set of processing machines that make up a manufactur-

    ing process plan including the ancestor process plan

    i and j counters

    Let AMPP(xq,i) denote the qth ancestor of manufacturing

    process plan j i.e. mpp(xj). Let mpp(xj,p) be a manufacturing

    process plan in a string position j corresponding to part p, whose

    candidate ancestor is to be found. Let PMmppbe a set of processing

    machines (PMs) that the manufacturing process plan mpp(xj,p)and the ancestor belong to. Then the ancestor generating heuristic

    can be written as follows:

    (a) Set PMmpp|, mpp(xi,p) Q, j i 1, L 1.

    (b) IfNAQ0, then STOP; else add PMito the set PMmpp.

    (c) Interchangempp(xj,p) with PMmpp(xi,p),AMPP(xL,Q).

    (d) IfAMPP(xL,Q)=2PMmpp, then add it to the set PMmpp.

    (e) Ifp AMPP(xL,Q), go to step (g).

    (f) Interchange PMmpp(xj,p) with AMPP(xL,Q).

    (g) Set j j 1.

    (h) Ifj4pNAQthen 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(xq,i) denote the qth precursor of manufacturing

    process plan i i.e. mpp(xi). Let mpp(xi,p) be a manufacturing

    process plan sequence in a string position i corresponding to part

    p, whose candidate precursor is to be found. Let PMmppbe a set of

    PMs that the manufacturing process plan mpp(xi,p) and the

    precursor belong to. Then, the precursor generating heuristic

    can be written as follows:

    (a) Set PMmpp|, mpp(xi,p) Q, j i1, L 1.

    (b) IfNPQ0, then STOP; else add PMi to the set PMmpp.

    (c) Interchangempp(xj,p) with PMmpp(xi,p), PMPP(xL,Q).

    (d) IfPMPP(xL,Q)=2PMmpp, then add it to the set PMmpp.

    (e) Ifp PMPP(xL,Q), go to step (g).

    (f) InterchangePMmpp(xj,p) with PMPP(xL,Q).

    (g) Set j j 1.

    (h) Ifjop NPQthen 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 manufacturingprocess plan, i. Assuming that implementing manufacturing

    process plan i results in processing cost per part Ei, the best

    candidate precursor is a manufacturing process plan, j, which

    closely resemblesi i.e. for which the deviation from Ei, 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, DEi, 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 manufacturingsystem 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,

    defined for a given part array, PA[pi]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 define the PMspace, F PM1,PM2,. . ., PMn, 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 ofPMs 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

  • 8/12/2019 Simulated Anne a Ling With Auxiliary Knowledge for Process Planning

    12/19

    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 define 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 specifications. 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

    coefficients[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 classifications for parts of manufacture in agiven production scenario;

    formalized descriptions of part features and part designattributes;

    formalized descriptions of precedence relationships among aset 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 fixturing methods;

    formalized description of parts in a given production scenarioincluding the various states of parts in the manufacturing

    process;

    sequences of part features that can possibly be producedthrough use of available fixturing methods;

    formalized descriptions of the sequences of technologicalactivities required to manufacture parts in a given production

    scenario;

    possible processing structures; precedence relationships (PRs) between the realization of

    machining features in terms of fixture 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 coefficients 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 identification and selection with respect to processingcriteria. 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, partweight, part staring material characteristics, part overall

    dimensions or size;

    acceptable jigs and fixturing 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 specifications.

    (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

    specified in the product data base or secondary criteria in themanufacturing system database and its subsystems or both?

    do the selected processing machines meet criteria onsequences of machining cycles or acceptable part fixturing

    methods or both?

    do the selected processing machines meet the criteria forprocessing 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) 113131124

  • 8/12/2019 Simulated Anne a Ling With Auxiliary Knowledge for Process Planning

    13/19

    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 reconfigurable manufacturing systems. The

    SA algorithm employs a number of different forms but related

    objective functions (seeSection 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 inFig. 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 specific processing stage in the manufacturing system. In

    this encoding, the first digit in the encoding represents the stage

    at which each machine is positioned in the manufacturing system

    while the second digit uniquely identifies the processing machine

    (see illustrative example inSection 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 inSections 2.2 and 2.3, and are similar to the example

    input instances discussed inSection 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

    fifty parts was collected from a case study. For problem instancewith 20 parts, parts were randomly selected from a basket of fifty

    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 configuration together with those

    obtained from simulated annealing with auxiliary knowledge in

    Section 4.3. We then reflect 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 configuration 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 configuration.

    In implementing auxiliary knowledge, two concepts have been

    considered in this work are: (a) problem specific 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 solvea 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 five different objective

    functions that utilize five 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 fifty (50) times. Since simulated

    annealing is a template for solving optimization problems, adjust-

    ment of free parameters is an important issue in solving a specific

    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 fixed number of rejected moves, l, was used as a

    stopping criterion under each temperature and the number of

    iterations under each temperature was fixed to 100. Other

    parameter values used in running the simulated annealing algo-

    rithms are as follows:

    Initial temperature 15 000; final temperature 50; maximum cycles per temperature 100; l25.

    4.2. Performance metrics

    Measures of performance were based on, mean time (Tm) to

    reach an optimal solution (which indicates the relative efficiency

    of the algorithm), the coefficient 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 finding 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 reconfiguration

    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

  • 8/12/2019 Simulated Anne a Ling With Auxiliary Knowledge for Process Planning

    14/19

    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 findings 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 influence 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 flowing

    in the system with reconfigurable flow patterns. The correspond-

    ing objective functions, defined 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 inTable 8show 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 (mOFVin Table 8)

    metric, SA case 4, i.e. the simulated annealing algorithm thatimplements 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 metricmOFVis 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 obtainedmOFVvalues gave p-values less than 0.05 for functions F1, F2, F3

    and F5 implying that the differences in the mOFVare statistically

    significant. On the other hand, the ANOVA test for values obtained

    when objective function F4 was used gave a p-valuegreater than

    0.05 thereby implying that the differences in the corresponding

    mOFVare not statistically significant.

    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

    significant 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 coefficients of variation inTable 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 reconfigurable 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 flowing in the system

    with reconfigurable flow patterns. The corresponding objective

    functions defined inTable 7are 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 basedon theBOFVmetric, 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) 113131126

  • 8/12/2019 Simulated Anne a Ling With Auxiliary Knowledge for Process Planning

    15/19

    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 obtainedmOFVgave p-values less than 0.05

    for all five functions thereby implying that the differences in the

    mOFVare statistically significant. 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 coefficients 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 reconfigurable manufacturing sys-

    tems. This observation about the robustness of SA case 4 algo-

    rithm agrees with that noted when a problem instance of 20 partswas used to run the algorithms. Table 10 summarize the mean

    computation times required to reach an optimal solution for each

    algorithm for a proble