a greedy heuristic and simulated annealing approach for a bicriteria

Upload: lcm3766l

Post on 04-Jun-2018

217 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/13/2019 A Greedy Heuristic and Simulated Annealing Approach for a Bicriteria

    1/19

    manuscript No.

    (will be inserted by the editor)

    A greedy heuristic and simulated annealing approach for a

    bicriteria flowshop scheduling problem with precedence

    constraints - A practical manufacturing case

    Samer Hanoun Saeid Nahavandi

    Abstract This paper considers a flowshop scheduling problem with two criteria, where

    the primary (dominant) criterion is the minimization of material waste and the sec-

    ondary criterion is the minimization of the total tardiness time. The decision maker

    does not authorize trade-offs between the criteria. In view of the nature of this problem,

    a hierarchical (lexicographical) optimization approach is followed. An effective greedy

    heuristic is proposed to minimize the material waste and a simulated annealing (SA)

    algorithm is developed to minimize the total tardiness time, subjective to the constraint

    computed for the primary criterion. The solution accuracy is compared with the opti-

    mal solution obtained by complete enumeration for randomly generated problem sets.

    From the results, it is observed that the greedy heuristic produces the optimal solutionand the SA solution does not differ significantly from the optimal solution.

    Keywords Flowshop scheduling Lexicographical optimization Simulated anneal-

    ing Multicriteria scheduling

    1 Introduction

    The problem of scheduling for minimizing material waste (cost) exists in many man-

    ufacturing domains. Joineries, corrugated board plants and glass manufacturing are

    typical examples. In joinery manufacturing, products such as kitchens, bathrooms,and cabinets are produced mainly from two materials. The cost of any product is de-

    termined largely by the material used for the front, which is far more expensive than

    the melamine material used for the sides and the rear. The dominant objective is al-

    ways to increase the profit by minimizing the waste in the front material. Additionally,

    the second objective is to minimize the tardiness of the jobs. The tardiness could,

    in theory, be relaxed based on the schedule that provides the maximum cost savings,

    however, achieving the minimum tardiness is required to satisfy the customers required

    due dates. This multiobjective nature of the problem requires reaching an acceptable

    Samer Hanoun Saeid Nahavandi

    Centre for Intelligent Systems Research,Deakin University,Australiae-mail: [email protected]

  • 8/13/2019 A Greedy Heuristic and Simulated Annealing Approach for a Bicriteria

    2/19

    2

    compromise, where the quality of a solution has to satisfy the two criteria in the order

    specified.

    The multiobjective optimization problem (also called multicriteria) is the problemof finding the vectorX= [x1, x2, . . . , xk]T which will satisfy the following m inequality:

    gi(X) 0, i= 1, 2, 3, . . . . . . , m (1)

    thel equality constraints:

    hi(X) = 0, i= 1, 2, 3, . . . . . . , l (2)

    and optimize the objective vector

    F(X) = [f1(X), f2(X), . . . . . . , f N(X)]T (3)

    where X = [x1, x2, . . . , xk]T is the vector of decision variables and N is the number

    of objective functions. The decision variables can either be all continuous within therespective lower and upper bounds (xL and xU) or a mixture of continuous, binary

    (i.e., 0 or 1) and integer variables. The inequality and equality constraints restrict the

    solution space to be searched for the optimal solutions and define the feasible region

    for vector X. The number of equality and inequality constraints can be none, a few

    or many depending on the application. For example, in manufacturing, the inequal-

    ity constraints, g(x), which can be min or max (i.e., g(x) 0 or g(x) 0), are due

    to equipment, material, safety and other considerations. Examples of inequality con-

    straints are the requirement that the pressure in a die casting machine should be below

    a specified value to avoid process run-away, failure of the material used for fabrication

    and undesirable defective products. In chemical engineering, the equality constraints,

    h(x) = 0, arise from mass, energy and momentum balances and can be algebraic and/ordifferential equations.

    There have been tremendous efforts to solve multiobjective flowshop scheduling

    problems. Evans [1] and Fry et al. [2] broadly classify the approaches as: (a) a priori

    approaches in which the objectives are combined into one composite utility function

    and only one solution (optimum solution) is computed (e.g., Nagar et al. [3]; Sridhar

    and Rajendran [4]; Framinan et al. [5]); and (b) a posterioriapproaches in which a set

    of efficient (or non-dominated or Pareto-optimal) solutions is developed and presented

    to the decision maker to choose the best solution according to the preferences at the

    time of decision making. (e.g., Framinan et al. [5]; Tkindt et al. [6]). The posteriori

    approach is effective if it is hard to design one composite function to aggregate all

    the objectives, it is unknown what the function looks like or minimizing the utilityfunction is computationally inaccessible. In such cases, the idea is to develop from the

    set of solutions a subset that contains the optimum solution and let the decision maker

    choose; thus following a generate-first-choose-later approach.

    The use of these approaches is distinguished based on the decision makers prefer-

    ences (ordering or relative importance of objectives and goals), and the presentation of

    the solutions (unique solution or a set of Pareto optima). Marler and Arora [7] surveyed

    the different methods for combining the criteria into one utility function for the priori

    approach. A comprehensive literature survey of multicriteria scheduling problems and

    solutions is given by Tkindt and Billaut [8].

    In the case, no trade-off between the criteria is authorized by the decision maker,

    lexicographical optimization is applied to minimize the objective functions in a lexi-

    cographic order. The objective functions are arranged in order of importance and the

    following optimization problems are solved one at a time:

  • 8/13/2019 A Greedy Heuristic and Simulated Annealing Approach for a Bicriteria

    3/19

    3

    minxX

    Fi(X) (4)

    subject to Fj (X) Fj (Xj),

    j = 1, 2, . . . , i 1, i >1, i= 1, 2, . . . , k.

    Here, i represents a functions position in the preferred sequence, and Fj (Xj) represents

    the optimum of the j th objective function, found in the j th iteration. Note that, after

    the first iteration (j = 1), Fj (Xj ) is not necessarily the same as the independent

    minimum ofFj (X), because new constraints have been introduced.

    For a bicriteria optimization, Hoogeveen [9] explains that if one performance cri-

    terion, say f, is far more important than the other one g, then an obvious approach

    is to find the optimum value with respect to criterion f, which is denoted by f, and

    then choose from among the set of optimum schedules for f the one that performsbest on g . In the first stage, the value of the more important criterion f is minimized,

    whereas in the second stage, the second criterion g is minimized subject to the addi-

    tional constraint thatff. The resulting bicriteria problem is polynomially solvable

    only, if the primary criterion is the minimax type, like Lmax, Tmax or fmax, and the

    secondary criterion is one of

    jCj , Lmax, Tmax or fmax and strongly NP-hard for

    jwj Cj . The computational complexity is still open to some problems with

    j

    Ujas the primary criterion andLmax,Tmaxor Emaxas the secondary criterion [9]. Prob-

    lems with minisum such as

    jCj ,

    jTj and

    j

    Fj criteria are more difficult to

    solve and are combinatorial problems.

    The methods and approaches for solving combinatorial scheduling problems are

    classified into two groups: (a) finding the exact optimal solution using implicit enumer-ation methods which are based on either branch-and-bound or dynamic programming;

    (2) finding a near optimal solution using heuristic techniques. Heuristics are catego-

    rized as either constructive (e.g., Nawaz et al. [10], Panneerselvam [11]) or improvement

    derived from meta-heuristic approaches, such as genetic algorithm (GA) and simulated

    annealing (SA) (e.g., Reeves [12], Rajendran et al. [13], Noorul Haq et al. [14], Suman

    [15]).

    Simulated annealing, was formally introduced for solving combinatorial optimiza-

    tion problems in 1983 by Kirkpatrick et al. [16], has since proven very effective for

    obtaining an optimal solution to a single objective optimization problems and for ob-

    taining a Pareto set of solutions for a multiobjective optimization problems [17], [18].

    SA has been widely used to solve many scheduling problems, for job shop [19], openshop [20], and flowshop problems [21], [22]. A comprehensive review of SA for solving

    single and multiobjective optimization problems is provided by Suman and Kumar [23].

    Theoretical research focused for many decades on solving the m-machine, two-

    machine and two-job flowshop problems to minimize the makespan. Methods such as

    mathematical programming has been mainly used, while in practice, it has been aban-

    doned because of its excessive computational burden and heuristic solution procedures

    are being developed instead. Also, in industry, other objectives such as the total flow-

    time and the total tardiness are becoming more important for some manufacturers

    than the makespan. Research in flowshop scheduling should be inspired more by real

    life problems rather than problems encountered in mathematical abstractions and must

    be motivated by what the researchers can achieve rather that what is important.

    This research is motivated by a real and practical flowshop industry problem exist-

    ing in the joinery manufacturing domain. The scheduling of jobs is carried out under

  • 8/13/2019 A Greedy Heuristic and Simulated Annealing Approach for a Bicriteria

    4/19

    4

    the cost reduction and the tardiness objectives. The cost of the product is determined

    by the amount of material sheets used in manufacturing. Minimizing the amount of

    waste in each material sheet can minimize the number of material sheets required,therefore, increasing the profit. This can be achieved by scheduling jobs with similar

    materials together. For example, given jobs J1 and J2 requiring 25 and 35 material

    sheets respectively. For a savings factor of 5% in scheduling these two jobs together,

    then the reduction in cost is $1500 for a material sheet of price $500. This shows the

    amount of profit that can be achieved as well as the practicality of the problem.

    The joinery setup resembles a flowshop model, where the jobs are processed through-

    out five sequential stages. Each stage has a single machine. The stages required to

    process a job depend mainly on the jobs type of operations (i.e., a job may skip some

    stages according to its technological operations). All jobs are processed through the

    first stage, which determines the total material cost. The tardiness of a job depends on

    its number of operations, processing time of each operation, and the processing stagesit requires. The tardiness of a job is determined once its last operation is completed.

    The decision maker orders the criteria by specifying a higher priority for the cost re-

    duction criterion over the total tardiness time. This influences our methodology of the

    proposed solution as maximizing the cost reduction criterion must be carried out first

    before minimizing the total tardiness criterion.

    In this paper, we introduce the problem and explain the formulation in Section 2.

    Then, in Section 3, we present the proposed approach to solve the problem. In Section

    4, the experimental results obtained are shown for the proposed algorithms. Finally,

    Section 5 presents the conclusion.

    2 Problem Description

    The problem addressed in this paper can be described as follows. Given a set ofn jobs

    to be processed through a five-stage flowshop (l = 5). Each stage has one machine

    available (i.e., m(l) = 1). All jobs have to operate through stage 1, 3 and 4 but may

    not operate through stage 2, and 5 depending on their technological requirements (i.e.,

    type of operations). Each job Ji has ni operations and it is not necessary that ni =l

    (3 ni 5). Jobs are manufactured from different material types. Jobs with similar

    materials can be scheduled together in stage 1 to decrease the amount of material

    waste. Every two jobs with the same material type have a savings factor, which shows

    the reduction in material that can be achieved when producing the two jobs in sequencein stage 1. Each machine can perform only one operation at a time and the precedence

    between the operations must be preserved (i.e., operation Oij+1 cannot start unless

    operation Oij has finished). Figure 1 shows a schematic view of the possible routings

    followed by the jobs depending on the operations each job is requiring. It is worth

    noting that even though a job may have its own processing route, the job must visit

    the stages in its order of operations. The tardiness of a job is determined based on the

    completion time of its last operation and its due date.

    It is desired to find the order (schedule) in which these n jobs should be processed

    through the five-stage flowshop to minimize the material waste (maximize the cost

    reduction) in stage 1 and minimize the total tardiness time throughout the five stages.

    The decision maker does not authorize any trade-offs between the objectives. In this

    case, the cost reduction criterion has a higher priority than the total tardiness time

    criterion.

  • 8/13/2019 A Greedy Heuristic and Simulated Annealing Approach for a Bicriteria

    5/19

    5

    S1 S5S4S3S2

    Fig. 1 Schematic view of the jobs routings in the five-stage flowshop

    The problem of minimizing the material waste is found in other manufacturing

    domains such as corrugated board plants and glass industry. For example, in corru-

    gated board plants, corrugated board is produced from rolls of paper, and cut and slit

    into sheets of board. Approximately 30 cardboard qualities are produced from approx-

    imately 25 qualities of paper. Boxes are produced from these cardboard sheets. The

    main objective is to schedule the jobs with the same quality of cardboard in order

    for the slitting and cutting of that specific quality of cardboard into cardboard sheetsis optimized to minimize the material waste. The same objective exists in the glass

    industry where products have different qualities as well as the used glass sheets.

    In our presented problem, the following assumptions are made:

    Jobs are available at time zero and no preemption is allowed (i.e., any started

    operation has to be completed without interruptions).

    A machine can perform only one operation at a time of the same type as the stage

    it belongs to.

    An operation of a job can be performed by only one machine at a time.

    Once an operation has begun on a machine, it must not be interrupted. An operation of a job cannot be performed until its preceding operations are com-

    pleted.

    Operation processing time and number of operations for each job are known in

    advance.

    Each operation is processed as early as possible.

    The first stage, stage 1, in the flowshop is the one affecting the cost of production.

    Each jobi is produced using two materials (i.e material Ai and material Bi). The cost

    of material A is far more expensive than the cost of material B. The profit revenue

    is determined mainly by the number of sheets used from material A. Jobs may have

    different types for material A but all have the same type for material B. Every two

    jobs, i and k, with the same type for material A have a savings factor Sik, which

    shows the reduction in material that can be achieved when producing the two jobs in

    sequence, where Sik = Ski. Given the number of material sheets Xi and Xk and the

    cost of material sheetCosti andCostk, the cost savings factor CSik and C Ski, whereCSik = CSki, is calculated as:

    CSik =Costi (Xi+ Xk) Sik (5)

    CSki =Costk (Xk+ Xi) Ski (6)

    ifAi = Ak; 0 otherwise, where i= 1, . . . , n , k = 1, . . . , n

    The total cost savingsC S, that must be maximized by sequencing the jobs in stage

    1, is defined by

  • 8/13/2019 A Greedy Heuristic and Simulated Annealing Approach for a Bicriteria

    6/19

    6

    Table 1 Jobs and operation stages

    S1 S2 S3 S4 S5

    J1 X X X X XJ2 X X XJ3 X X X X

    Job

    Time

    J1

    J2

    J3

    Fig. 2 The schedule of jobs J1, J2, J3 through the five-stage flowshop

    CS=

    n

    i=1

    i

    k=1

    CSik (7)

    For stage 2 to 5, the jobs operate based on the type of their operations. A job

    proceeds directly to the stage that its current operation requires. In the case that the

    machine in the required stage is busy, then the job waits until the current machine

    finishes. Table 1 gives an illustrative example of three jobs J1, J2, and J3, and their

    operating stages. Figure 2 and Figure 3 show the overall schedule throughout the

    five stages, given that {J1 J2 J3} is the schedule that produces the maximum

    cost savings in stage 1. It is not necessary for the jobs to be scheduled according to

    the schedule produced from stage 1, however, it depends mainly on the number of

    operations, types of operations and the processing time of the operations in stage 2 to

    stage 5. This appears when operation S3 of job J2 starts before the same operation of

    jobJ1 because S3 ofJ1 has to wait for its preceding operation to finish and stage 3 is

    idle and not processing any jobs.The tardiness Ti of job i is determined by the completion time Ci of its last oper-

    ation. It is calculated as:

    Ti = max(0, Ci di) (8)

    wheredi is the due date of job i.

    The total tardiness T, that must be minimized, is calculated as:

    T =

    n

    i=1

    Ti (9)

  • 8/13/2019 A Greedy Heuristic and Simulated Annealing Approach for a Bicriteria

    7/19

    7

    Stage

    Time

    S1

    S2

    S3

    S4

    S5

    Fig. 3 The schedule of the five stages for jobs J1, J2, J3

    3 Proposed Approach

    The proposed approach is based on heuristic solutions to obviate the inherent compu-

    tational complexity of the problem. The approach consists of two phases; each acts on

    solving one of the required criteria. The phases are carried out in order to satisfy the

    priority ordering of the criteria.

    In phase one, jobs with similar materials are clustered into batches and the schedule

    that maximizes the total cost savings for each batch is computed using a greedy heuris-

    tic. Clustering of jobs into batches increases the cost savings as jobs with different mate-rials have zero cost savings (i.e., cost saving between different batches equals zero). For

    a set of materialsM={M1, M2, . . . , M k}, the constructed batches areB1, B2, . . . , Bk,

    each with a computed optimum schedule S1, S2, . . . , S k and corresponding total cost

    savings CS1, CS2, . . . , C S k. The global schedule produced by phase one is:

    SG = S1+ S2+ . . . + Sk (10)

    and its total cost saving is:

    CSG =

    k

    i=1

    CSi (11)

    The constructed global schedule preserves that the total cost savings criterion is

    always maximized and independent of the order in which the batches are sequenced.

    For example, batches B1, B2, B3, with schedules S1 = {1, 3, 5}, S2 = {6, 2}, S3 =

    {4, 8, 7} and corresponding total cost savings CS1 = 120, CS2 = 400, CS3 = 310, the

    constructed global schedule SG will always have a total cost savings CSG = 830 for

    all possible sequences of S1, S2, S3. This is achieved as the cost saving between the

    batches equals zero.

    In phase two, the batches are sequenced using a simulated annealing (SA) algorithm

    to minimize the total tardiness time of the constructed global schedule SG. The batch

    due date dbatch is considered to be the due date of the earliest job in the batch and

    its processing time pbatch is the sum of processing times of all jobs in the batch. The

    reason for choosing dbatch is to impose a high level of tightness on the SA algorithm

    for achieving the global optimum solution.

  • 8/13/2019 A Greedy Heuristic and Simulated Annealing Approach for a Bicriteria

    8/19

    8

    dbatchi = min(d1, d2, . . . , dnb), i= 1 . . . k (12)

    pbatchi =

    nb

    j=1

    pj , i= 1 . . . k (13)

    The tardiness Ti of each job is calculated based on its completion time and due

    date. The completion time of a job is affected by 1) the position of the job in the global

    scheduleSG, 2) the completion time of its last operation, 3) the number and processing

    time of each operation and 4) the assignment algorithm used for allocating the opera-

    tions to the designated stages. The assignment algorithm assigns the ready operation

    to its designated stage once the stage is available and applies a FIFO (First-in-First-

    out) dispatching rule for resolving the conflicts between waiting operations. The FIFO

    rule is preferred over other dispatching rules such as SPT (shortest processing time),based on a manufacturing requirement to minimize the idle gaps between the jobs

    operations.

    3.1 Greedy Heuristic

    In this section, the steps of the proposed greedy heuristic to maximize the cost savings

    for each batch are presented. The algorithm computes a set of schedules for each batch

    and the schedule with the maximum cost savings is considered the dominant schedule

    for the batch.

    Step 1 Input the following:

    Number of jobs (nb) in the batch

    The jobs in the batch [Ji, i= 1 . . . nb]

    Cost savings matrix of the batch [CSi,j, i= 1 . . . nb,

    j = 1 . . . nb]

    Step 2 Initialize the following:

    List of schedules Si,j = 0, i= 1 . . . nb, j = 1 . . . nb List of costs Ci = 0, i= 1 . . . nb

    Step 3

    /* Case only one job in the batch */

    if nb = 1 thenS1,1 = J1proceed to Step 5

    else

    proceed to Step 4

    end if

    Step 4

    /* Case two or more jobs in the batch */

    for i= 1 to nb doSi,1 = Ji

  • 8/13/2019 A Greedy Heuristic and Simulated Annealing Approach for a Bicriteria

    9/19

    9

    Table 2 The cost savings matrix for a set of five jobs

    J1 J2 J3 J4 J5

    J1 0 3739.68 2626.68 3635.8 3005.1J2 3739.68 0 3339 3739.68 1840.16J3 2626.68 3339 0 3940.02 2018.24J4 3635.8 3739.68 3940.02 0 3339J5 3005.1 1840.16 2018.24 3339 0

    Ci = 0

    current job = Jifor k = 1 to nb 1 do

    next job = Job with maximum cost savings value in row (CScurrent job)

    and not currently in row (Si)Si,k+1 = next jobCi = CScurrent job,next jobcurrent job = next job

    end for

    end for

    Step 5

    return schedule Si that has the maximum Ci, i= 1 . . . nb

    The proposed greedy algorithm is explained with the help of a numerical illustra-

    tion. Consider five jobs with the same material type (i.e., all jobs belong to the samebatch) with their corresponding cost savings matrix presented in Table 2. The algorithm

    computes a set of five schedules, each schedule has one of the given jobs as the starting

    job. Once these schedules are computed, the schedule that has the maximum cost sav-

    ingsC is considered the best schedule for these jobs. Each schedule is constructed in a

    greedy manner based on the cost savings matrix. For example, in iteration i = 1, the

    first computed schedule S1 starts with job J1, S1= {1}. During iteration k= 1, J2 is

    added to S1 because J2 is the job with maximum cost savings value in CS1 and not

    in S1,S1 = {1 2} and C1 = 3739.68. In iteration k= 2, J4 is added to S1 similar toJ2,S1 = {1 2 4} and C1 = 7479.36. Note that the algorithm avoids choosing J1 as

    the job with the maximum cost savings because J1 already exists inS1. This condition

    prevents any loops from occurring in the produced schedule. In iteration k = 3, J3satisfies the required condition leading to S1 = {1 2 43} and C1 = 11419.38.

    Finally, in iteration k = 4, J5 is the last job which leads to S1 ={1 2 4 3 5}

    and C1 = 13437.62. Figure 4 shows the greedy construction for schedule S1 at every

    iteration of the algorithm. In each iteration, the possible choices are shown and the job

    that has the maximum cost savings value and is not in S1 is considered to be the next

    job selected.

    The algorithm continues to compute the other remaining schedules (i.e., S2,S3,S4and S5) and finally returns schedule S3 = {34215}, the one that has the

    maximum total cost savings among the computed set of schedules. Table 3 presents the

    detailed summary of the procedure described above. It is worth noting that for n jobs,

    the heuristic constructs n schedules and selects among the one that has the maximum

    cost savings. The complexity of the heuristic is O(n2) compared toO(n!) for obtaining

    the optimal schedule by enumeration.

  • 8/13/2019 A Greedy Heuristic and Simulated Annealing Approach for a Bicriteria

    10/19

    10

    1

    2

    45

    3

    4

    35

    3739.68

    3635.83005.12626.68

    3739.68

    33391840

    35

    3940.023339

    5

    2018.24

    j = 1

    j = 2

    j = 3

    j = 4

    Fig. 4 The greedy construction of schedule S1

    3.2 Simulated Annealing

    Simulated annealing (SA) is a meta-heuristic algorithm based on the basic idea of

    neighborhoods. It was derived from the analogy between the simulation of the anneal-

    ing of solid and the strategy of solving combinatorial optimization problems [16]. A

    neighboring solution is derived from its originator solution by a random move, whichresults a new slightly different solution. This increases the chance of finding an im-

    proved solution within a neighborhood more than in less correlated areas of the search

    space. Also, SA overcomes the problem of getting stuck in local minima, by allowing

    worse solutions (lesser quality) to be taken some of the time (i.e., allowing some uphill

    steps). The simplicity of the approach and its substantial reduction in computation

    time [24], [25] has made it a valuable tool for solving flowshop scheduling problems

    with the objective of minimizing the tardiness [26], [27].

    In this section the main components of the SA algorithm are presented. The im-

    plementation details of the algorithm are described, as well as the procedure followed

    for setting the parameters. The initial sequence of batches (i.e., initial solution) is

    constructed using the EDD (earliest due date) rule and the Randomly Pairwise Inter-

    change mechanism is used for obtaining the neighboring solution. The total tardiness

    time Tis the cost function applied to each of the obtained neighboring solutions.

  • 8/13/2019 A Greedy Heuristic and Simulated Annealing Approach for a Bicriteria

    11/19

    11

    Table 3 Summary of the greedy heuristic algorithm

    Iteration Iteration Schedule Cost

    i k Si Ci1 {1} 01 {12} 3739.682 {124} 7479.363 {1243} 11419.384 {12435} 13437.62

    2 {2} 01 {21} 3739.682 {214} 7375.483 {2143} 11315.54 {21435} 13333.74

    3 {3} 01 {34} 3940.022 {342} 7679.73 {3421} 11419.384 {34215} 14424.48

    4 {4} 01 {43} 3940.022 {432} 7279.023 {3421} 11018.74 {43215} 14023.8

    5 {5} 01 {54} 33392 {543} 7279.023 {5432} 10618.024 {54321} 14357.7

    3.2.1 Initial Temperature

    The selection of an initial temperature value influences the behavior of the SA algo-

    rithm. The starting temperature must be hot enough to allow a move to any neighbor-

    hood state. If this is not done, then the ending solution will be the same (or very close)

    to the starting solution. Ideally, if the maximum distance (cost function difference)

    between one neighbor and another is known, then it can be used for determining the

    starting temperature. One choice is starting with a too high value so as the search can

    move to any neighbor, however, this transforms the search (at least in the early stages)

    into a random search, but effectively, the search will act as a SA when the temperature

    is cool enough. Another choice is starting with a very high temperature and cooling

    it rapidly until about 60% of the worst solutions are being accepted. This forms an

    accurate starting temperature and it can now be cooled more slowly.

    In our approach, the initial temperature is chosen by experimentation. The range of

    change, f0 in the value of the objective function with different moves is determined.

    The initial value of temperature To is calculated based on the initial acceptance ratioo, and the average increase in the objective function, f0:

    To = f0ln(o)

    (14)

    The following steps describe the algorithm used to calculate the value ofTo. Non-

    improver solutions are accepted with a probability of about 95 percent in the primary

    iterations (i.e., o = 0.95).

  • 8/13/2019 A Greedy Heuristic and Simulated Annealing Approach for a Bicriteria

    12/19

    12

    Step 1:

    /* Q represents the number of samples */

    for q= 1 to Q do

    repeat

    Generate two solutions X1 andX2 at random

    until Z(X1) =Z(X2)

    Tqo =|Z(X1)Z(X2)|

    ln(0.95)

    end for

    Step 2:

    To = 1

    Q

    Q

    q=1Tqo

    3.2.2 Cooling Schedule

    The cooling schedule determines the way the temperature is changed. Enough iter-

    ations should be allowed at each temperature, so that the system stabilizes at that

    temperature; however, the number of iterations at each temperature to achieve this

    might be very high compared to the problem size. As this is impractical, a compromise

    is required. Either running large number of iterations at a few temperatures or a small

    number of iterations at many temperatures or a balance between the two.

    In our approach, the temperature is decremented in a proportional manner:

    T(i + 1) = T(i) (15)

    where is the cooling factor constant and chosen to be 0.98.

    3.2.3 Number of Iterations

    The number of iterations at each temperature is chosen so that the system is sufficiently

    close to the stationary distribution at that temperature. Enough number of iterationsat each temperature are carried out to ensure that all represented states are searched

    and to enable reaching the global optimum. For our problem, a 150 non-improving

    iterations are used to terminate the current temperature level.

    3.2.4 Stopping Criterion

    Various stopping criteria have been developed: i) Total number of iterations and number

    of iterations to move at each temperature. ii) A minimum value of temperature and

    number of iterations to move at each temperature. iii) Number of iterations to move

    at each temperature and a predefined number of iterations to get a better solution.

    In our approach a final temperature value Tf equals to 5 percent of the initial

    temperatureTo is used for stopping the algorithm (i.e., Tf = 0.05 To).

  • 8/13/2019 A Greedy Heuristic and Simulated Annealing Approach for a Bicriteria

    13/19

    13

    3.2.5 SA Algorithm

    Table 4 summarizes the parameter settings for the SA algorithm. The following stepsrepresent the basic structure of the SA algorithm.

    Step 1: Parameters Settings

    Obtain the initial temperature To according to the preliminary experiment

    Initialize non-improving iterations at each temperature (nt = 150), cooling factor

    = 0.98 and final temperature Tf = 0.05 To

    Step 2: Initial Solution

    Generate initial sequence of batches using the EDD rule (the EDD rule is used

    based on Johnson et al. [29] for starting with a good initial seed)

    Construct the global schedule SG for

    Assign operations of jobs in SG to stages in the flowshop and compute the total

    tardiness time s

    Step 3:

    letT =To, best= , best= swhileTTf do

    let n= 1whilen nt do

    - Generate a neighbor sequence by randomly interchanging two batches in

    - Construct the global schedule SG for

    - Assign operations of jobs in SG to stages in the flowshop and compute s

    if(s , s)< 0 then=

    s = s

    if(s , best)< 0 thenbest =

    best = s

    n= 1end if

    else

    Generate a random number U

    if U

  • 8/13/2019 A Greedy Heuristic and Simulated Annealing Approach for a Bicriteria

    14/19

    14

    Table 4 Settings for the SA algorithm

    Parameter Setting

    Initial sequence EDD (earliest due date)Neighborho od structure Interchange two randomly selected batches

    Initial temperature To = f0ln(o)

    , o = 0.95

    Cooling schedule T(i+ 1) = T(i), = 0.98Probability of acceptance Pa = exp(/T)Relative percentage deviation in cost func-tion

    = (s s)100/s

    Number of iteration per temperature 150 non-improving iterationFinal temperature Tf = 0.05To

    4 Experimental Study

    In this section, we address the computational results obtained from our proposed greedy

    heuristic and the SA algorithm developed in this paper. The objective is to compare

    the solution accuracy of the algorithms with the optimal solution for the addressed

    problem. The optimal solution is obtained using the complete enumeration method.

    The data for the set of problems used is randomly generated, based on existing rules in

    the application domain under consideration. The data generation rules are summarized

    as:

    1. A job belongs to one of three size categories: small, medium and large. 30 percent

    of jobs are small size jobs, 50 percent are medium size jobs, and 20 percent are large

    size jobs. A small job consists of 20 to 30 material sheets, medium jobs consist of

    40 to 60 material sheets and large jobs consist of 70 to 90 material sheet. All jobshave a ratio of 2:3 of front material (material A) to melamine material (material

    B).

    2. 80 percent of the jobs have a stage 5 operation, while 30 percent of the jobs have

    a stage 2 operation.

    3. The cost of a front material sheet ranges from $100 to $1000.

    4. The savings factor ranges from 5 percent to 10 percent, depending mainly on the

    design and layout of the job.

    5. The set of front materials (material A) consists of 10 materials.

    6. The processing time of one material sheet in stage 1 or stage 2 is approximately

    10 minutes. For example, a small job consisting of 25 sheets would require around

    250 minutes in stage 1 while a large job consisting of 80 sheets needs around 800minutes in stage 1. The processing time of the operations in stage 3 to stage 5 is

    relative to the job size, design and layout. The job size determines the number of

    material sheets while the design and layout specifies the number of pieces to cut

    and the holes to drill on every sheet. Table 5 shows the range of the processing

    times of the operations in stages 3 to 5 relative to the job size. The processing time

    pi of job i is the sum of the processing times of its operations throughout the five

    stages. It is calculated as:

    pi =

    5

    k=1

    Oik (16)

    whereOik is the processing time of job i at stage k.

    The due dates are generated with different levels of tightness as proposed in [28].

    Once the processing times of all jobs are generated, the total processing time P =

  • 8/13/2019 A Greedy Heuristic and Simulated Annealing Approach for a Bicriteria

    15/19

    15

    Table 5 Range of processing times in stages 3 to 5 relative to the job size

    Job Size Processing Times Range (in hours)

    Stage 3 Stage 4 Stage 5

    Small [0.5, 1] [3, 4] [8, 10]Medium [1, 2] [6, 7] [16, 20]Large [2, 3] [9, 10] [24, 30]

    Table 6 Problem no. 1: Cost savings matrix for 5 jobs

    J1 J2 J3 J4 J5J1 0 373 262 363 300J2 373 0 333 373 184J3 262 333 0 394 201J4 363 373 394 0 333

    J5 300 184 201 333 0

    Table 7 Problem no. 2: Cost savings matrix for 6 jobs

    J1 J2 J3 J4 J5 J6J1 0 916 549 1133 879 961J2 916 0 357 845 1030 320J3 549 357 0 567 732 288J4 1133 845 567 0 881 453J5 879 1030 732 881 0 769J6 961 320 288 453 769 0

    Table 8 Problem no. 3: Cost savings matrix for 7 jobs

    J1 J2 J3 J4 J5 J6 J7J1 0 149 224 465 191 289 275J2 149 0 144 241 161 239 223J3 224 144 0 339 231 256 149J4 465 241 339 0 437 517 446J5 191 161 231 437 0 229 289J6 289 239 256 517 229 0 353J7 275 223 149 446 289 353 0

    ni=1pi is computed. Then the due date for each job is generated from the uniform

    distribution:

    [P(1 T FRDD

    2 )), P(1 T F+

    RDD

    2 ))] (17)

    where T F is the average tardiness factor and RDD is the range of due dates. The

    settings of T F = 0.6 and RDD = 0.4 are used. Note that these settings produce

    tighter due dates.

    The relative percentage deviation (RPD) in the objective value from the optimal

    is used as the performance measured and is calculated as:

    RP D=

    Oheuristic OoptimalOoptimal 100 (18)

  • 8/13/2019 A Greedy Heuristic and Simulated Annealing Approach for a Bicriteria

    16/19

    16

    Table 9 Problem no. 4: Cost savings matrix for 8 jobs

    J1 J2 J3 J4 J5 J6 J7 J8

    J1 0 377 495 435 406 600 413 304J2 377 0 466 385 556 548 565 652J3 495 466 0 208 295 580 369 365J4 435 385 208 0 263 371 436 365J5 406 556 295 263 0 548 614 440J6 600 548 580 371 548 0 684 574J7 413 565 369 436 614 684 0 478J8 304 652 365 365 440 574 478 0

    Table 10 Problem no. 5: Cost savings matrix for 9 jobs

    J1 J2 J3 J4 J5 J6 J7 J8 J9J1 0 174 252 242 198 252 365 284 270

    J2 174 0 165 348 240 110 185 216 121J3 252 165 0 226 145 156 180 270 193J4 242 348 226 0 444 264 453 503 317J5 198 240 145 444 0 261 416 249 185J6 252 110 156 264 261 0 300 210 154J7 365 185 180 453 416 300 0 298 255J8 284 216 270 503 249 210 298 0 191J9 270 121 193 317 185 154 255 191 0

    Table 11 Problem no. 6: Cost savings matrix for 10 jobs

    J1 J2 J3 J4 J5 J6 J7 J8 J9 J10J1 0 143 143 198 275 255 232 356 287 325

    J2 143 0 99 182 184 95 154 181 171 196J3 143 99 0 202 158 171 232 113 171 98J4 198 182 202 0 284 282 314 223 169 259J5 275 184 158 284 0 240 246 304 309 209J6 255 95 171 282 240 0 202 245 243 193J7 232 154 232 314 246 202 0 299 337 206J8 356 181 113 223 304 245 299 0 245 187J9 287 171 171 169 309 243 337 245 0 276J10 325 196 98 259 209 193 206 187 276 0

    Table 12 Computational results of the greedy heuristic for the sample problem set

    Problem no. Jobs Optimal Solution Copt Heuristic Solution CHeu1 5 {34215} 1440 {34215} 14402 6 {614523} 4362 {614523} 43623 7 {1 4 6 7 5

    32}1999 {1 4 6 7 5

    32}1999

    4 8 {3 6 7 5 2841}

    3886 {3 6 7 5 2841}

    3886

    5 9 {3 8 4 7 56192}

    2546 {3 8 4 7 56192}

    2546

    6 10 {21018597463}

    2594 {21018597463}

    2594

    Additionally, the mean relative percentage deviation (MRPD) is calculated for each

    problem set. The greedy heuristic is tested on problem sets consisting of 5, 6, 7, 8, 9 and

    10 jobs. These jobs are all clustered in one batch (i.e they all have the same material).

  • 8/13/2019 A Greedy Heuristic and Simulated Annealing Approach for a Bicriteria

    17/19

    17

    Table 6 to Table 11 show the cost savings matrix for a sample of the problem sets. The

    total cost savings using the greedy heuristic and the optimal total cost savings obtained

    by the complete enumeration method are presented in Table 12. Results show that thegreedy heuristic achieves the optimal solution for the sample problem sets presented.

    The heuristic was tested on a total number of 150 problem sets consisting of 5 to 10

    jobs and achieved the optimal solution for every problem set.

    The SA algorithm is tested on problem sets with combinations of n jobs and b

    batches. The RPD is calculated for every problem and the MRPD for every problem

    set to show the percentage of accuracy of the SA solution to the optimal solution. The

    results are summarized in Table 13. The SA achieved the optimal solution for small size

    problems and produced solutions within 0.56% of the optimal solution on the average

    with a maximum deviation of 1.87%. Given the experimental results, the SA produced

    very high quality solutions with low computational complexity based on the NP-hard

    nature of the problem.

    5 Conclusion

    In this paper, a greedy heuristic and a SA algorithm were considered to minimize the

    material cost and the total tardiness time. The problem is NP-hard and is significantly

    practical for many industrial applications, especially in the joinery manufacturing. The

    proposed greedy heuristic achieved the optimal solution for minimizing the material

    total cost savings. This is proven by comparing the accuracy of the produced solution

    to the optimal solution obtained by the complete enumeration method. Additionally,

    the SA algorithm obtained solutions at a significant level of 0.56% from the optimalsolution. This shows that both algorithms are very practical for use by industry prac-

    titioners based on their simplicity and low computations requirements.

    In summary, the experimental results presented in this paper are very encouraging

    and promising for the application of both the greedy heuristic and the SA algorithm

    in the joinery manufacturing domain. For future work, the flowshop model will be ex-

    tended to handle parallel machines in each stage. This research may also be extended

    in the direction of providing the decision maker with the set of Pareto optimal solu-

    tions by optimizing both criteria simultaneously, based on a linear composite objective

    function, which gives the decision maker the flexibility of choosing the solution that

    best satisfies his or her preferences.

    References

    1. Evans GW (1984) An overview of techniques for solving multiobjective mathematical pro-grams. Manage Sci 30:1268-1282

    2. Fry TD, Armstrong RD, Lewis H (1999) A framework for single machine multiple objectivesequencing research. Omega 17:595-607

    3. Nagar A, Heragu SS, Haddock J (1995) A branch and bound approach for a two-machineflowshop scheduling problem. J Oper Res Soc 46:721-734

    4. Sridhar J, Rajendran C, (1996) Scheduling in flowshop and cellular manufacturing systemswith multiple objectives a genetic algorithmic approach. Prod Plan Control 7:374-382

    5. Framinan JM, Leisten R, Ruiz-Usano R (2002) Efficient heuristics for flowshop sequencingwith the objectives of makespan and flowtime minimisation. Eur J Oper Res 141:559-569

    6. Tkindt V, Billaut J-C, Proust C (2001) Solving a bicriteria scheduling problem on unrelatedparallel machines occurring in the glass bottle industry. Eur J Oper Res 135:42-49

  • 8/13/2019 A Greedy Heuristic and Simulated Annealing Approach for a Bicriteria

    18/19

    18

    Table 13 Computational results of the SA algorithm

    Problem T RPD MRPD(nb) Optimal SA

    10 5 45 45 020 5 226 230 1.7740 5 1386 1386 0 0.29560 5 3632 3632 080 5 6094 6094 0100 5 10186 10186 010 6 43 43 020 6 223 223 040 6 1558 1578 1.28 0.21360 6 3175 3175 080 6 8997 8997 0

    100 6 10584 10584 010 7 25 25 020 7 206 208 0.9740 7 1579 1607 1.77 0.47160 7 2975 2975 080 7 6071 6071 0100 7 9605 9614 0.0910 8 40 40 020 8 366 366 040 8 1229 1252 1.87 0.64160 8 3089 3124 1.1380 8 6030 6053 0.38100 8 9462 9506 0.4710 9 32 32 0

    20 9 192 195 1.5640 9 1211 1232 1.73 0.72560 9 2736 2748 0.4480 9 5400 5400 0100 9 10265 10329 0.6210 10 21 21 020 10 198 201 1.5240 10 1118 1132 1.25 1.0260 10 3358 3381 0.6880 10 4810 4872 1.29100 10 8860 8982 1.38

    Average RPD 0.561

    7. Marler RT, Arora JS (2004) Survey of multi-objective optimization methods for engineering.Struct Multidisc Optim 26:369-395

    8. Tkindt V, Billaut J-C (2001) Multicriteria scheduling problems: A survey. RAIRO OperRes 35:143-163

    9. Hoogeveen H (2005) Multicriteria scheduling. Eur J Oper Res 167:592-623

    10. Nawaz M, Enscore E, Ham L (1983) A heuristic for the m-machine n-job flowshop se-quencing problem. Omega II:91-95.

    11. Panneerselvam R (2006) Simple heuristic to minimize total tardiness in a single machinescheduling problem. Int J Adv Manuf Tech 30:722-726

    12. Reeves CR (1995) A genetic algorithm for flowshop sequencing. Comput Oper Res 22:5-13

    13. Rajendran C, Ziegler H (2004) Ant-colony algorithms for permutation flowshop schedulingto minimize makespan/total flowtime of jobs. Eur J Oper Res 155:426-38

    14. Noorul Haq A, Saravanan M, Vivekraj AR, Prasad T (2006) A scatter search algorithmfor general flowshop scheduling problem. Int J Adv Manuf Tech 31:731-736

  • 8/13/2019 A Greedy Heuristic and Simulated Annealing Approach for a Bicriteria

    19/19

    19

    15. Suman B (2002) Multiobjective simulated annealinga metaheuristic technique for multi-objective optimization of a constrained problem. Found Comput Decis Soc 27:171-191

    16. Kirkpatrick S, Gelatt CD, Vecchi MP (1983) Optimization by simulated annealing. Science

    20:671-68017. Eglese RW (1990) Simulated annealing: a tool for operational research. Eur J Oper Res

    46:271-281.18. Ehrgott M, Gandibleux X (2000) A survey and annotated bibliography of multiobjective

    combinatorial optimization. OR Spektrum 22:425-460.19. Van Laarhoven PJM, Aarts EHL, Lenstra JK (1992) Job shop scheduling by simulated

    annealing. Oper Res 40:113-12520. Liaw CF (1999) Applying simulated annealing to the open shop scheduling problem. IIE

    T 31:457-46521. Dipak L, Chakraborty UK (2009) An efficient hybrid heuristic for makespan minimization

    in permutation flow shop scheduling. Int J Adv Manuf Tech 44:559-56922. Varadharajan TK, Rajendran C (2005) A multi-objective simulated-annealing algorithm

    for scheduling in flowshops to minimize the makespan and total flowtime of jobs. Eur J Oper

    Res 167:772-79523. Suman B, Kumar P (2006) A survey of simulated annealing as a tool for single andmultiobjective optimization. J Oper Res Soc 57:1143-1160

    24. Rajasekaran S (1990) On the Convergence Time of Simulated Annealing. University ofPennsylvania Department of Computer and Information Science, Technical Report No. MS-CIS-90-89

    25. Bertsimas D, Tsitsiklis J (1993) Simulated Annealing. Statistical Science 8(1):10-1526. Ben-Daya M, Al-Fawzan M (1996) A simulated annealing approach for the one-machine

    mean tardiness scheduling problem. Eur J Oper Res 93:61-6727. Parthasarathy S, Rajendran C (1997) A simulated annealing heuristic for scheduling to

    minimize mean weighted tardiness in a flowshop with sequence-dependent setup times ofjobs-a case study. Prod Plan Control 8:475-483

    28. Potts CN, Van Wassenhove LN (1991) Single machine tardiness sequencing heuristics. IIET 23(4):346-354.

    29. Johnson DS, Aragon CR, Mcgeoch LA, Schevon C (1989) Optimisation by simulatedannealing: an experimental valuation. Part I, Graph partitioning, Oper Res 37:865-891.