Parallel Machines Scheduling to Minimize Job Tardiness

Embed Size (px)

Citation preview

  • 8/11/2019 Parallel Machines Scheduling to Minimize Job Tardiness

    1/13

    Parallel machines scheduling to minimize job tardiness

    and machine deteriorating cost with deteriorating jobs

    Mohammad Mahdavi Mazdeh, Farzad Zaerpour, Abalfazl Zareei *, Ali Hajinezhad

    Department of Industrial Engineering, Iran University of Science and Technology, Tehran, Iran

    a r t i c l e i n f o

    Article history:

    Received 21 December 2008

    Received in revised form 22 August 2009

    Accepted 25 August 2009

    Available online 29 August 2009

    Keywords:

    Scheduling and sequencing

    Parallel machines

    Machine deterioration

    Job d eterioration

    Multi-objectives integer programming

    a b s t r a c t

    This paper studies the parallel machines bi-criteria scheduling problem (PMBSP) in a dete-

    riorating system. Sequencing and scheduling problems (SSP) have seldom considered the

    two phenomena concurrently. This paper discusses the parallel machines scheduling prob-

    lem with the effects of machine and job deterioration. By the machine deterioration effect,

    we mean that each machine deteriorates at a different rate. This deterioration is considered

    in terms of cost which depends on the production rate, the machines operating character-

    istics and the kind of work done by each machine. Moreover, job processing times are

    increasing functions of their starting times and follow a simple linear deterioration. The

    objective functions are minimizing total tardiness and machine deteriorating cost. The

    problem of total tardiness on identical parallel machines is NP-hard, thus the problem with

    machine deteriorating cost as an additional term is also NP-hard. We propose the LP-metric

    method to show the importance of our proposed multi-objective problem. A metaheuristic

    algorithm is developed to locate optimal or near optimal solutions based on a Tabu search

    mechanism. Numerical examples are presented to show the efficiency of this model. 2009 Elsevier Inc. All rights reserved.

    1. Introduction

    In most machine scheduling problems with different objective functions, it is assumed that machines are available all the

    time. This assumption is not reasonable in reality because there are many situations such as periodical repair, preventive

    maintenance, or accidental breakdown in which machines may not be available.

    In a real world application, each machine works with variable efficiency and depreciates because of usage and age at a

    random rate. On the other hand, jobs also may deteriorate, while waiting to be processed. By the effect of job deterioration,

    we mean that job processing times are defined by a function of their starting times and positions in the sequence. For exam-

    ple, a drop in the temperature of an ingot, while waiting to enter the rolling machine, requires the ingot to be reheated before

    rolling or the time required to control a fire will be increased, if there is a delay in the fire-fighting efforts. Scheduling in this

    manner is known as the deteriorating job scheduling problem. It was first introduced by Browne and Yechiali [1]. Since then,

    deteriorating job scheduling problems have been widely discussed. Ruat et al. [2] considered the problem of scheduling a

    given number of jobs on a single machine with time deteriorating job values and capacity constraints while the objective

    function is to maximize total revenue. Gawiejnowicz et al.[3]considered a single machine time-dependent scheduling prob-

    lem. They introduced two scenarios for a given sequence of job deterioration and formulated a greedy polynomial time

    approximation algorithm for each scenario.

    0307-904X/$ - see front matter 2009 Elsevier Inc. All rights reserved.doi:10.1016/j.apm.2009.08.023

    * Corresponding author.

    E-mail addresses: [email protected], [email protected](A. Zareei).

    Applied Mathematical Modelling 34 (2010) 14981510

    Contents lists available at ScienceDirect

    Applied Mathematical Modelling

    j o u r n a l h o m e p a g e : w w w . e l s e v i e r . c o m / l o c at e / a p m

    http://dx.doi.org/10.1016/j.apm.2009.08.023mailto:[email protected]:[email protected]://www.sciencedirect.com/science/journal/0307904Xhttp://www.elsevier.com/locate/apmhttp://www.elsevier.com/locate/apmhttp://www.sciencedirect.com/science/journal/0307904Xmailto:[email protected]:[email protected]://dx.doi.org/10.1016/j.apm.2009.08.023
  • 8/11/2019 Parallel Machines Scheduling to Minimize Job Tardiness

    2/13

    Wang[4] introduced the single-machine scheduling problem with the effects of learning and deterioration. He showed

    that even in presence of the learning effect and deteriorating jobs, the single-machine makespan and sum of completion

    times minimization problems remain polynomially solvable by the SPT rule. Xu et al. [5] investigated a parallel machine

    scheduling problem with almost periodic maintenance activities in which they proposed a 2T0/T-approximation algorithm

    to solve the Pm, MS[T, T0]kCmax problem.

    Oron[6]considered a single machine scheduling problem with simple linear deterioration. He proved several properties

    on the structure of an optimal schedule, and introduces two efficient heuristics for solving the problem. Wang and Xia [7]

    considered the scheduling problems under decreasing linear deterioration. They proved that an optimal schedule can be ob-

    tained by Johnsons rule for the two-machine flowshop scheduling problem to minimize the makespan. Jeng and Lin[8]stud-

    ied a scheduling problem of minimizing the total completion time on a single machine where the processing time of a job is a

    step function of its starting time and a due date that is common to all jobs. They showed that this problem is NP-hard. They

    developed a lower bound and two elimination rules to design a branch-and-bound algorithm to derive optimal solutions

    from a practical aspect.

    Unlike job deterioration, there are only a few studies that have considered machine deterioration. Amia and Nagraj [9]

    considered machine deterioration as a function of jobs engineering-determined parameters such as the job feed rate, drilling

    or cutting speed, chip removal rate, cooling efficiency for the type of cut, etc. They state that basically, each job, based on the

    complexity and speed of its operations, may be viewed as placing a certain amount of stress on the machine and the ma-

    chine breaks down when the total stress exceeds the threshold value. They also proved that job sequencing has an important

    role in minimizing the expected makespan in a deteriorating flexible machine when it processes multiple jobs, each contrib-

    uting to machine deterioration at a different rate.

    Lam and Yeh[10]stated that a machine may continuously deteriorate due to cumulative wear, fatigue, corrosion and so

    on. Due to the inevitable deterioration, manufacturing systems may not remain in a condition in which goods of acceptable

    quality can be produced. They investigated five maintenance policies for systems whose degrees of deterioration can be

    identified only through inspection. Their objective is to determine an optimal inspection such that the expected long run cost

    rate is minimized.

    Grall et al.[11]considered a system subject to a random deterioration and monitored through perfect inspection. When

    the system condition exceeds its failure level L , it passes into its failed state and a corrective replacement is immediately

    carried out.

    One of the familiar objective functions in parallel machine scheduling is the minimizing of weighted tardiness penalties.

    Bilge et al.[12]used a Tabu search method to schedule parallel machines with total weighted tardiness penalties.

    YI and Wang[13]introduced a model for scheduling grouped jobs on identical parallel machines. In their model a set-up

    time is incurred when one-machine changes from processing one type of component to a different type of component. The

    objective function here is to minimize the total earlinesstardiness penalties. Radhakrishnan et al.[14]emphasized the just-

    in-time (JIT) production philosophy, and used simulated annealing for parallel machine scheduling with earlinesstardiness

    penalties and sequence dependant set-up times (PETNDDSP).

    Lee et al.[15]proposed an algorithm to minimize the number of tardy jobs. Park et al. [16]investigated the problem of

    scheduling jobs on identical parallel machines to minimize the sum of weighted tardiness. They suggested an extension of

    the ATS (Apparent Tardiness cost with Setup) rule.

    While the body of literature in this area is huge, to the best of our knowledge there is not any paper that addresses the

    objective functions which are considered in this paper. The most similar study to our work belongs to Cao et al. [17]. They

    suggested a model to minimize the sum of machine holding cost and job tardiness cost without considering the effect of job

    deterioration. They have showed that the problem is NP-hard and have suggested a heuristic algorithm to locate optimal or

    near optimal solutions based on a Tabu search to control the search process in the solutions neighborhood for jobs sched-

    uled on specific machines.

    In this paper, the parallel machine scheduling problem and the effect of deterioration are considered concurrently. This

    deterioration is considered in terms of cost which is a function of production rate, machines operating characteristics and

    the kind of work done by each machine. Moreover, job processing times are increasing functions of their starting times and

    follow a simple linear deterioration.

    The rest of this paper is structured as follows: In Section2, we define the problem and introduce the objective functions in

    detail. Next, the mathematical formulation for the model is developed. In Section 3, the Lp-metric method is proposed to

    show the importance of considering these two objectives, simultaneously. In Section 4, we describe an approach in order

    to consider the two objectives as a single objective and a numerical example is used to prove the accuracy of the model with

    a single objective. In Section5, a heuristic algorithm is developed to locate optimal or near optimal solutions based on a Tabu

    search mechanism. In Section6, numerical examples are presented to show the efficiency of this model. Finally, Section 7

    includes the conclusion and further research suggestions.

    2. Problem description

    Let there beN

    independent jobs,J

    1,J

    2,. . .

    ,J

    non a number of parallel machines selected from a set ofM

    potential machines.Each jobJihas a processing time p iand a due datedi. All jobs are available at time zero and no preemption is allowed. Each

    M.M. Mazdeh et al./ Applied Mathematical Modelling 34 (2010) 14981510 1499

    http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-
  • 8/11/2019 Parallel Machines Scheduling to Minimize Job Tardiness

    3/13

    machine is supposed to deteriorate at a different rate. This deterioration is a function of production rate, machines operating

    characteristics and the kind of work accomplished by each machine and considered in terms of cost. Furthermore, we as-

    sume that jobs deteriorate while waiting to be processed.

    The job scheduling problem to minimize weighted tardiness in parallel machines is NP-hard in the strong sense [18,17],

    then the combinational problem in which the objective functions are minimizing the total tardiness and machine deterio-

    rating cost will also be NP-hard.

    The notation and other assumptions we used in mathematical formulation is given below.

    Assumptions:

    Each machine has the ability for processing each job.

    Job processing time may be different if processed by a different machine.

    Job processing time is described by a function of the starting time and fixed part of the processing time of the job

    (pjm=ajm+bjsjm).

    The growth rate of the processing time (bi) is independent of machine.

    Jobs deterioration are independent of machines deterioration.

    The job is available at time zero.

    The jobs are independent of each other.

    No job preemption is allowed.

    2.1. Objective functions

    In this paper, a multi-objective integer programming model is proposed with total tardiness and machine deteriorating

    cost as the first and the second objective, respectively. The most important question in such a problem is how we can

    consider the effect of machine deterioration in the model. According to the machines operating characteristics and the

    kind of work done by each machine, each machine deteriorates at a different rate. Over time, machine condition crosses

    a threshold and maintenance activities (e.g. preventive maintenance task) must be done. Each maintenance activity has a

    cost. So, we introduce machine deterioration as an objective and consider its effect in terms of cost. A question that may

    arise here is what the difference between machine deterioration cost and the holding cost defined in Cao et al. [17]is. If a

    machine is selected to process the jobs, holding cost will be occurred. But there is no relation between this cost, the kind

    of work and the amount of work done by the machine. Suppose the following matrix presents the costs relating to each

    machine

    c11 c12 c1n

    c21 c22 c2n

    cm1 c22 cmn

    2666666664

    3777777775: 1

    Since in holding cost the kind of work and the amount of work done by each machine are not considered, the cost in every

    column is equal

    c1i c2i cmi; i 1; 2;. . .; n: 2

    But when deterioration cost is considered, we face a matrix of costs where the kind of work and the amount of work done by

    each machine affects it and Eq.(2) is no longer valid.

    On the other hand, each delay on delivering products can affect total tardiness. Jobs may also deteriorate while waiting tobe processed. By the job deterioration effect, we mean that job processing time is defined by a function of its starting time

    and position in the sequence. (pjm=ajm+bjsjm).

    2.2. Input parameters

    Before entering the mathematical formulation, we introduce the following notation:N total number of jobs to be scheduledM total number of machines available

    i,j2I= {0,1, . . .,N} designate the job, where job 0 is a dummy job, which is always at the first position on a machine

    di due date of jobiCi completion time of jobi

    pim processing time of jobi on machinem, i 2 I= {0,1, . . .,N},m 2M= {0,1, . . .,M}S

    im starting time of jobi on machine m, i 2 I= {0,1, . . .,N},m 2M= {0,1, . . .,M}

    aim fixed part of the processing time for jobi on machinem ,i 2 I= {0,1, . . .,N},m 2M= {0,1, . . .,M}

    1500 M.M. Mazdeh et al. / Applied Mathematical Modelling 34 (2010) 14981510

  • 8/11/2019 Parallel Machines Scheduling to Minimize Job Tardiness

    4/13

    Cjm machine deteriorating cost

    bi the growth rate of the processing time of jobi on machine m, i 2 I= {0,1, . . .,N}

    2.3. Decision variables

    xijm 1 if job j immediately follows job i in sequence on machine m;

    0 otherwise;

    yjm 1 if job j assigned to machine m;

    0 otherwise:

    Each machine deteriorates at a different rate. This deterioration is described in terms of cost. Cjm is a function of machines

    operating characteristics and the kind of work done by each machine. The mathematical formulation is presented below:

    2.4. Mathematical formulation

    Min Z1XNi1

    Ti; 3

    Min Z2 XM

    m1XN

    j1

    Cjmyjm; 4

    XNj1

    x0jm 6 1 m 1; 2;. . .;M; 5

    XNi0;i j

    XMm1

    xijm 1 j 1; 2;. . .;N; 6

    XNj1;i j

    xijm 6 yim i 1; 2;. . .;N; m 1; 2;. . .;M; 7

    XNi0;i j

    xijm yjm j 1; 2;. . .;N; m 1; 2;. . .;M; 8

    XMm1

    yim 1 i 1; 2;. . .

    ;N; 9

    Cj P SjmPjm j 1; 2;. . .;N; m 1; 2;. . .;M; 10

    PjmM1 YjmP ajmbjSjm j 1; 2;. . .;N; m 1; 2;. . .;M 11

    SjmM1 xijmP CiC0 0; j 1; 2;. . .;N; ij; i 0; 1; 2;. . .;N; m 1; 2;. . .;M; 12

    S0m 0 m 1; 2;. . .;M; 13

    Ti P Cidi i 1; 2;. . .;N; 14

    Ci; Sim; Ti P 0;

    xijm;yim 2 f0; 1g:

    In the above model, Eqs.(1) and (2)are the objective functions, namely minimizing total tardiness and minimizing machine

    deteriorating cost.

    More precisely, Eq.(1)states that, ifCidi> 0 then delivering job i has been delayed and it causes tardiness. Otherwise,

    no tardiness is assumed. Eq.(2)states that if a job is processed on one machine, machine deteriorating cost will happen. Eq.

    (5)ensures that for each machine selected to assign jobs, only one real job follows the dummy job 0. Sometimes, in a job

    scheduling scheme, it is possible to schedule only one job on a machine, in this situation a dummy job (i= 0) helps us to

    defineXijm. Also sometimes to minimize objective functions, no job is scheduled on one machine, in this situation no job fol-

    lows the dummy job 0 and Eq.(5)is equal to zero. Eq.(6)determines that if a job is assigned to a machine, it will be imme-

    diately preceded by one job and a job must be processed only at one position on a machine. Eqs. (7)and (8) state that Njobs

    are assigned over Mmachines and if jobiis immediately followed byjon machinemthen both jobsiandjbelong to machine

    m. Eq.(9)states that each job is assigned to exactly one machine. Eq.(10)relates the processing time of each job to its start

    time and completion time. Eq.(11)expresses the relation between the processing time of each job, its start time and fixed

    part of the processing time. On the other hand, this equation bounds the amount of processing time. Eq.(12)expresses that

    the job starting time is at least equal to the completion time of the preceding job. Eq. (13)states that the starting time of the

    dummy job on each machine is equal to zero. Eq.(14)expresses the relation between the completion time of each job, its duedate and tardiness variable.

    M.M. Mazdeh et al./ Applied Mathematical Modelling 34 (2010) 14981510 1501

    http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-
  • 8/11/2019 Parallel Machines Scheduling to Minimize Job Tardiness

    5/13

    3. LP-metric method

    In multi-objective problems, the decision making often involves two factors, determining and addressing the objectives.

    In this paper, a multi-objective integer programming model is considered with total tardiness and machine deteriorating

    cost as the first and the second objectives respectively. Minimizing total tardiness is one of the objectives often discussed

    in scheduling problems, but according to our knowledge minimizing machine deteriorating cost is not considered in any pa-

    per. In this paper, the importance of considering these two objectives is first shown through the LP-metric method and then

    suitable weights will be used to simultaneously optimize these two objectives as an objective function,. We propose the LP-metric method which is one of the famous MCDM methods for showing the importance of our proposed multi-objective

    problem. According to this method, a multi-objective problem is solved for each objective function separately and then a

    single objective is formulated which aims to minimize the sum of normalized differences between each objective and its

    optimal value. For our proposed model assume that two objective functions are named as OB1 and OB2. According to the

    LP-metric method, PMBSP should be solved for each of these two objective functions separately. If the optimal values for

    these two problems are OB1 and OB2 the LP-metric objective function can be formulated as follows:

    Min w1OB1 OB

    1

    OB1w2

    OB2 OB2

    OB2

    : 15

    Here,w1and w2are the weights of the objective functions which are given by the decision maker. We used LINGO [19]to

    solve our proposed model.

    3.1. Experimental results

    In this section, the efficiency of the model is tested through four numerical examples. Therefore, three models are defined

    as follows:

    1. Model 1: consists of the first objective function and its related constraints (Eqs. (5)(14)).

    2. Model 2: consists of the second objective function and its related constraints (Eqs.(5)(9)).

    3. LP-metric model: The objective function of this model is calculated by Eq.(15), in which weights of the objective func-

    tions (w1, w2) are considered equal to 1 and the LP-metric objective function is subjected to all of the constraints of the

    model (Eqs.(5)(14)).

    OB1= First objective function of the model OB

    1 Best objective value found for model1OB2= Second objective function of the model OB2 Best objective value found for model2

    The results of the first objective function for these models in the examples are shown inFig. 1. The results of the second

    objective function for these models in the examples are shown in Fig. 2. The best results for the first objective are obtained

    via model 1, but in this model the worst results for the second objective are obtained. On the other hand, the best results for

    Fig. 1. Results for tardiness.

    1502 M.M. Mazdeh et al. / Applied Mathematical Modelling 34 (2010) 14981510

    http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-
  • 8/11/2019 Parallel Machines Scheduling to Minimize Job Tardiness

    6/13

    the second objective are obtained via model 2, but in this model the worst results for the first objective are obtained. In other

    words, considering merely one objective may sacrifice the other. Comparison of results shows that the LP-metric model and

    considering a multi-objective problem makes a tradeoff between these two objectives.

    4. Addressing the objectives

    In this section we establish a weighted objective function to include these two objective functions in a single objective

    function as follows:

    Min TCXNi1

    wiTiXMm1

    XNj1

    Cjmyjm: 16

    Using this objective function and considering PMBSP constraints, we have a single objective integer programming model,

    which can be solved by linear programming solvers.

    4.1. Numerical example

    In this section, an example problem is solved using optimization software LINGO [19]. It demonstrates that the optimal

    solution of the model leads to a job scheduling scheme balancing machine deteriorating cost and job weighted tardiness in

    the manufacturing system. For solving the example problem, data are given inTables 15.Table 1presents job tardiness

    penalty weights,wi, for the example problem.Tables 2 and 3give the common data of due dates and fixed part of the pro-

    cessing times. Data for the growth rate of the processing times and machine deteriorating costs are given in Tables 4 and 5.

    Table 6summarizes the optimal solution to the example problem (seeFig. 3).

    Fig. 2. Results for machine deteriorating cost.

    Table 1

    Weights (wi).

    Job No. 1 2 3 4 5 6 7 8

    wi 1 1 2 2 2 1 2 2

    Table 2

    Due dates (di).

    Job No. 1 2 3 4 5 6 7 8

    di 15 20 25 35 40 50 55 60

    M.M. Mazdeh et al./ Applied Mathematical Modelling 34 (2010) 14981510 1503

  • 8/11/2019 Parallel Machines Scheduling to Minimize Job Tardiness

    7/13

    The solution to this example problem for the proposed model leads to a job scheduling scheme balancing the machine

    deteriorating cost and the job weighted tardiness. A small change in job weighted tardiness or machine deteriorating costcan lead to a completely different job scheduling scheme.

    Table 3

    Fixed part of the processing times (aim).

    Job No. ai1 ai2 ai3

    1 9 10 11

    2 12 13 14

    3 15 16 18

    4 15 16 18

    5 20 22 23

    6 24 25 287 30 33 35

    8 36 37 39

    Table 4

    The growth rate of the processing time (bi).

    Job No. 1 2 3 4 5 6 7 8

    bi 0.25 0.25 0.5 0.6 0.65 0.72 0.75 0.82

    Table 5

    Machines deteriorating cost.

    Job No. Cj1 Cj2 Cj3

    1 2 1.5 2.5

    2 3 3 3.5

    3 4 4.5 5

    4 4 4.5 5

    5 5 5.5 6

    6 6.5 7 7.5

    7 8 8 8.5

    8 9 8.5 10

    Table 6

    Optimal solutions.

    Objective value Job scheduling scheme

    172.1305 M1:4 ? 7 ? 2

    M2:3 ? 8

    M3:1 ? 5 ? 6

    Fig. 3. Job scheduling scheme.

    1504 M.M. Mazdeh et al. / Applied Mathematical Modelling 34 (2010) 14981510

  • 8/11/2019 Parallel Machines Scheduling to Minimize Job Tardiness

    8/13

    5. The Tabu search solution methodology

    The heuristic algorithm for PMBSP problem presented in this section is based on the Tabu search metaheuristic which is

    one of the most frequently used methods in combinatorial optimization[20]. To our knowledge, direct solution methods for

    solving the PMBSP, such as an integer programming method can solve small problems with up to 8 jobs and 3 machines.

    Following, several concepts of Tabu search methodologies designed for the PMBSP problem are presented.

    5.1. Starting solution methodology

    A Tabu search procedure is started with an initial solution. Selection of an appropriate initial solution has an important

    effect on the efficiency of the search procedure. Following, a method of finding an initial solution for the PMBSP problem is

    illustrated.

    First, jobs are assigned to the machines using the following linear programming (LP) model:

    MinXMm1

    XNj1

    Cjmyjm

    S:t:XMm1

    yjm 1:

    17

    Second, the assigned jobs are scheduled according to the earliest due date (EDD) rule [21]. The LP model can be efficiently

    solved using optimization software such as LINGO and then an initial solution will be obtained by applying the EDD rule.

    5.2. Neighborhood generation

    Neighborhood generation results from a move strategy which determines the manner the neighbors are generated. In this

    paper, the neighborhood generation methodology presented in Cao et al.[17]is utilized. They used three types of moves, i.e.

    Machine Swap (MS), Job Insertion (JI) and Job Swap (JS). Machine Swap declares exchanging two machines without changing

    job sequences. Job Insertion is related to placing one job immediately after another job subsequent to identifying two par-

    ticular jobs loaded on different machines. Job Swap is concerned with exchanging positions of two different jobs on the same

    machine.

    5.3. Step and iteration

    The search process in a Tabu search algorithm explores the neighborhood of the previous local optimum found in thesearch process in order to find a new local optimum. The attempts to find new local optimum are called iterations and after

    finding a new local optimum the search goes to the next step and the attempts to find the new local optimum based on the

    neighborhood of this local optimum. Therefore, steps represent the local optimums in which the search process for a new

    local optimum is performed in their neighborhood.

    5.4. Tabu lists

    Variable xijmis equal to 1 if jobj immediately follows jobi on machinem. This variable is defined for arc (i,j, m). The Tabu

    list consists of different arcs in which any move that generates a value 1 for the related variable of these arcs is prohibited.

    Therefore the Tabu list prevents cycling and guides the search through unexplored regions. The arc remains in the Tabu list

    for number of times determined by the Tabu list size, TL, unless the move passes the aspiration criterion. The TL should be

    determined before starting the search process.

    5.5. Aspiration criterion

    If a certain move is labeled as Tabu while the corresponding objective function value in model PMBSP passes the given

    criterion, then the move will be performed.

    5.6. Stopping condition

    The search process will stop if a predetermined number of either iterations or steps are reached. These numbers are deter-

    mined before starting the search process. In this paper, both stopping conditions are used.

    5.7. The Tabu search algorithm

    Mmax(m) = Job count assigned to machine m

    M.M. Mazdeh et al./ Applied Mathematical Modelling 34 (2010) 14981510 1505

  • 8/11/2019 Parallel Machines Scheduling to Minimize Job Tardiness

    9/13

    X

    x11 x12 x1m

    x21

    xj1 xjm

    26666664

    37777775;

    1

  • 8/11/2019 Parallel Machines Scheduling to Minimize Job Tardiness

    10/13

    and 2 give the initial solution and TL. Column 3 presents the best objective value found by the heuristic algorithm. Columns 4

    and 5 present the steps and iterations needed to reach the best objective value in the search process. The best scheduling

    scheme resulted from the search process is described in column 6.

    Figs. 4 and 5 show the objective function value evolution based on the number of iterations and steps, respectively,reached in the search process.

    Table 7

    Search result of Example 1.

    Initial solution TL Total cost Steps needed Iterations needed Best scheduling scheme

    M1:4 ? 5 ? 6 M1:4 ? 5 ? 6

    M2:1 ? 7 ? 8 10 177.79 3 92 M2:1 ? 2 ? 8

    M3:3 ? 2 M3:3 ? 7

    Fig. 4. Objective value evolution based on the number of iteration (Example 3, TL = 30,000).

    Fig. 5. Objective value evolution based on the number of step (Example 3, TL = 30,000).

    Fig. 6. Objective value evolution based on the number of iteration (Example 2, TL = 50).

    M.M. Mazdeh et al./ Applied Mathematical Modelling 34 (2010) 14981510 1507

  • 8/11/2019 Parallel Machines Scheduling to Minimize Job Tardiness

    11/13

    6.2. Example 2. Medium example

    In this section, the Tabu search algorithm is tested on a medium size problem i.e. 20 jobs 4 machines. The related infor-

    mation of the example is shown inTable 8.

    The search results are presented inTable 9. Columns 1 and 2 give the initial solution and TL. Column 3 presents the best

    objective value found by the heuristic algorithm. Columns 4 and 5 present the steps and iterations needed to reach the best

    objective value in the search process. The best scheduling scheme resulted from the search process is described in column 6.

    Fig. 7 shows the objective function value evolution based on the number of steps reached in the search process. This

    shows the number of local optimums found in the search process. Fig. 6 shows the number of iterations in each step of

    the search process and as it can be seen in some of the steps in the search process, the number of iterations is large. Thisis because of the fact that the search process has fallen in an optimum point in which by searching the neighborhoods based

    on the Tabu algorithm no other optimum point is found.

    6.3. Example 3. A larger size problem

    The heuristic algorithm is also tested on several larger size problems. the features of one of these problems will be briefly

    discussed here. The problem size is 40 jobs5 machines.Figs. 8 and 9shows the objective function value evolution based on

    the number of iterations and steps, respectively. The problem is solved with TL = 600 for 3000 search iterations and 500

    steps. The search process reaches the best solution with objective value TC = 2212.88 at iteration 20753.

    Table 8

    Input data of Example 2.

    Job No. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

    wi 1 1 2 2 2 1 2 2 1 1 2 3 3 1 3 2 1 2 2 3

    di 20 25 25 30 40 50 55 60 65 65 70 80 95 100 115 115 120 120 130 130

    ai1 5 6 6 7 7 8 8 8 9 10 11 11 11 12 14 14 15 15 15 16

    ai1 4 4 5 6 7 8 8 8 9 10 10 10 10 11 13 13 14 14 14 15

    ai3 6 7 7 9 9 9 9 9 10 11 12 12 12 14 15 15 17 17 17 18

    ai4 5 6 6 7 7 8 8 8 9 10 11 11 11 12 14 14 15 15 15 16bi 0.2 0.2 0.2 0.5 0.5 0.5 0.65 0.65 0.65 0.7 0.7 0.7 0.8 0.8 0.8 0.82 0.85 0.85 0.86 0.86

    Ci1 4 6 6 7 7 8 8 8 9 10 9 9 10 12 13 12 12 16 15 14

    Ci2 5 4 7 6 5 5 7 9 10 11 10 10 11 13 11 11 14 13 14 15

    Ci3 7 7 4 8 9 9 9 10 11 8 8 12 14 15 10 17 18 18 13 17

    Ci4 6 8 5 5 8 7 5 7 7 9 11 11 13 10 12 14 15 15 16 16

    Table 9

    Search result of Example 2.

    Initial solution TL Total cost Steps needed Iterations needed Best scheduling scheme

    M1:1 ? 12 ? 13 ? 17 ? 20 50 875.39 21 5308 M1:13 ? 1 ? 20 ? 17

    M2:2 ? 5 ? 6 ? 16 ? 18 M2:5 ? 2 ? 3 ? 6 ? 18 ? 16

    M3:3?

    10?

    11?

    15?

    19 M3:10?

    11?

    15?

    19M4:4 ? 7 ? 8 ? 9 ? 14 M4:7 ? 4 ? 8 ? 9 ? 14

    Fig. 7. Objective value evolution based on the number of step (Example 2, TL = 50).

    1508 M.M. Mazdeh et al. / Applied Mathematical Modelling 34 (2010) 14981510

  • 8/11/2019 Parallel Machines Scheduling to Minimize Job Tardiness

    12/13

    Remarks

    In this section, five medium example problems are solved using lingo software and the proposed Tabu search. The

    amounts of total cost and the solving time for the two methods are shown in Table 10. The time Lingo takes to solve

    the problem is clearly more than the time the proposed Tabu search process takes. Results for the two methods are com-

    pared, and the mean absolute percent error (MAPE

    *

    ) is calculated less than 5.5%. InTable 11, the average runtime of dif-ferent tools in solving five medium examples are shown and we can compare them with each other.

    Fig. 8. Objective value evolution based on the number of iteration (Example 3, TL = 30,000).

    Fig. 9. Objective value evolution based on the number of step (Example 3, TL = 30,000).

    Table 10

    Comparison of Tabu search and Lingo results (TC) and runtime.

    (Jobsmachines) Tabu search Lingo Error*

    62 117.97/10 s 112.477/3 m 0.049

    72 248.79/15 s 248.285/11 m 0.002

    82 532.81/24 s 493.273/1 h 0.08

    73 86.76/30 s 79.24/1.5 h 0.095

    83 177.79/41 s 172.13/3 h 0.03

    Table 11

    Comparison of Tabu search and Lingo solution average runtime.

    Tabu search Lingo

    Average runtime 24 s More than 1 h

    M.M. Mazdeh et al./ Applied Mathematical Modelling 34 (2010) 14981510 1509

  • 8/11/2019 Parallel Machines Scheduling to Minimize Job Tardiness

    13/13

    *Error =jGlobal optimumLocal optimumj Global optimumMAPE

    PError N 100

    7. Conclusion and future research

    In this paper, a model was developed for scheduling bi-criteria parallel machines to minimize job tardiness and machine

    deteriorating cost with job deterioration. Production systems, because of machines, are subject to deterioration with usage

    and age. Machine deteriorating cost is a function of production rate, machines operating characteristics and the kind of workdone by each machine. Minimizing this factor, along with job weighted tardiness cost, helps to schedule in a real world con-

    dition. On the other hand, jobs also may deteriorate while waiting to be processed. By the effect of job deterioration, we

    mean that job processing times are defined by a function of their starting times and position in the sequence. The proposed

    model is vital as a decision support tool in a practice and helps companies to achieve a job scheduling scheme balancing the

    machine deteriorating cost and the job weighted tardiness. A heuristic algorithm is developed to locate the optimal or near

    optimal solutions based on a Tabu search mechanism. Numerical examples are presented to show the efficiency of this

    model.

    In the Tabu search process, we used only one type of the three different neighborhood generation methodologies; Ma-

    chine Swap (MS), Job Insertion (JI), and Job Swap (JS). It is obvious that changing the neighborhood generation methodologies

    can affect the efficiency of the search process. The methodology used has considerable effects on the search process. The

    question that which neighborhood generation methodology is best to use cannot be taken into view through this paper

    and needs to be considered separately.

    References

    [1] S. Browne, U. Yechiali, Scheduling deteriorating jobs on a single processor, Oper. Res. 38 (1990) 495498.[2] S. Ruat, S. Swami, N.D. Gupta, Scheduling a capacitated single machine with time deteriorating job values, Product. Econ. 114 (2008) 769780.[3] S. Gawiejnowicz, W. Kurc, L. Pankowska, Analysis of a time-dependent scheduling problem by signatures of deterioration rate sequences, Discrete

    Appl. Math. 154 (2006) 21502166.[4] J. Wang, Single-machine scheduling problems with the effects of learning and deterioration, Omega 35 (2007) 397402.[5] D. Xu, K. Sun, H. Li, Parallel machine scheduling with almost periodic maintenance and non-preemptive jobs to minimize makespan, Comput. Oper.

    Res. 35 (2008) 13441349.[6] D. Oron, Single machine scheduling with simple linear deterioration to minimize total absolute deviation of completion times, Comput. Oper. Res. 35

    (2008) 20712078.[7] J. Wang, Z. Xia, Scheduling jobs under decreasing linear deterioration, Inform. Pro. Lett. 94 (2005) 6369.[8] A. Jeng, B. Lin, Minimizing the total completion time in single-machine scheduling with step-deteriorating jobs, Comput. Oper. Res. 32 (2005) 521536.[9] A.K. Chakravarty, N. Balakrislman, Job sequencing rules for minimizing the expected makespan in flexible machines, Eur. J. Oper. Res. 96 (1996) 274

    288.[10] C.T. Lam, R.H. Yeh, Optimal maintenance policies for systems under various maintenance strategies, IEEE Trans. Reliab. (1993) 3192.[11] A. Grall, C. Berenguer, L. Dieulle, A condition-based maintenance policy for stochastically det eriorating systems, Reliab. Eng. Syst. Safe. 76 (2002) 167

    180.[12] U. Bilge, F. Kirac, M. Kurtulan, P. Pekgun, A Tabu search algorithm for parallel machine total tardiness problem, Comput. Oper. Res. 31 (2004) 397414.[13] Y. YI, D.W. Wang, Soft computing for scheduling with batch set up times earlinesstardiness penalties on parallel machine, J. Int. Man. 14 (2003) 311

    322.[14] S. Radhakrishnan, J. Ventura, Simulated annealing for parallel machine scheduling with earlinesstardiness penalties and sequence-dependent set-up

    times, Int. J. Prod. Res. 38 (2000) 22332252.[15] C.Y. Lee, R. Uzsoy, L. Martin-Vega, Efficient algorithms for scheduling semiconductor burn in operations, Oper. Res. 40 (1992) 764775.[16] Y. Park, S. Kim, Y. Lee, Scheduling jobs on parallel machines applying neural network heuristic rules, Comput. Ind. Eng. 38 (2000) 189202.[17] D. Cao, M. Chen, G. Wan, Parallel machine selection and job scheduling to minimize machine cost and job tardiness, Comput. Oper. Res. 32 (2005)

    19952012.[18] M. Pfund, W. Fowler J, A. Gadkari, Y. Chen, Scheduling jobs on parallel machines with setup times and ready times, Comput. Ind. Eng. 54 (2008) 764

    782.[19] Lingo Users Guide, LINDO Systems Inc., Chicago, 1999.[20] F. Glover, M. Laguna, Tabu Search, Kluwer Academic Publishers, Boston, 1997.[21] D. Sule, Industrial Scheduling, PWS Pub. Co., Boston, 1997.

    1510 M.M. Mazdeh et al. / Applied Mathematical Modelling 34 (2010) 14981510