a tabu search algorithm for unrelated parallel machine scheduling with sequence- and...

9
ORIGINAL ARTICLE A tabu search algorithm for unrelated parallel machine scheduling with sequence- and machine-dependent setups: minimizing total tardiness Jae-Ho Lee & Jae-Min Yu & Dong-Ho Lee Received: 28 December 2010 / Accepted: 9 July 2013 # Springer-Verlag London 2013 Abstract This study considers the problem of scheduling independent jobs on unrelated parallel machines with machine- and sequence-dependent setup times for the objec- tive of minimizing the total tardiness, i.e., R m S ijk T j . Since the parallel machines are unrelated, sequence- dependent setup times must depend on machines. To the best of the authorsknowledge, the simulated annealing and the iterated greedy algorithms are two existing ones for the new class of scheduling problem with an additional constraint of strict due date constraints for some jobs, i.e., deadlines. In this study, we suggest a tabu search algorithm that incorpo- rates various neighborhood generation methods. A compu- tational experiment was done on the instances generated by the method used in the two previous research articles, and the results show that the tabu search algorithm outperforms the simulated annealing algorithm significantly. In particular, it gave optimal solutions for more than 50 % of small-sized test instances. Also, an additional test was done to compare the performances of the tabu search and the existing iterated greedy algorithms, and the result shows that the tabu search algorithm gives quicker solutions than the iterated greedy algorithm although it gives less quality solutions. Keywords Scheduling . Unrelated parallel machines . Sequence- and machine-dependent setups . Total tardiness . Tabu search 1 Introduction Parallel machine scheduling, a generalization of single machine scheduling, is the problem of determining allocation of jobs to parallel machines as well as sequence of the jobs assigned to each machine [1]. In general, adding additional resources in parallel are common in various manufacturing and service systems to obtain adequate capacity. From the practical view- point, the parallel machine scheduling problem can be found in various manufacturing systems such as printed circuit board manufacturing, semiconductor manufacturing, group technolo- gy cells, painting and plastic industries, injection molding pro- cess, remanufacturing, etc. For example, in the injection mold- ing process that has a huge global market, efficient scheduling can be one of the important means to increase productivity and customer service level at the same time [2]. In general, parallel machine scheduling problems can be classified according to the characteristics of machines (identi- cal, uniform, and unrelated machines) and setups (sequence- and/or machine-independent and dependent setups). Here, processing times are proportional to ratios associated with machine speeds in uniform machines, while they are different at random in unrelated machines. Other factors to classify the parallel machine problems are precedence relations (indepen- dent and dependent jobs), job preemption (preemptive and non-preemptive schedules), performance measures, comple- tion time dependent job values, resource-dependent process- ing times, etc. Among them, see [35] for the concepts and applications of resource-dependent processing times. Except for some special cases, the parallel machine scheduling prob- lems are known to be NP hard, and hence, optimal solutions can be found only for small-sized instances [6]. According the classification scheme explained earlier, this study considers the unrelated parallel machine scheduling problem with machine- and sequence-dependent setup times. The objective is to minimize the total tardiness, which close- ly related with maximizing customer satisfaction on meeting J.<H. Lee : J.<M. Yu Department of Industrial Engineering, Hanyang University, Seoul 133-791, Republic of Korea D.<H. Lee (*) Department of Industrial Engineering, Graduate School of Technology and Innovation Management, Hanyang University, Seoul 133-791, Republic of Korea e-mail: [email protected] Int J Adv Manuf Technol DOI 10.1007/s00170-013-5192-6

Upload: dong-ho-lee

Post on 13-Dec-2016

213 views

Category:

Documents


0 download

TRANSCRIPT

ORIGINAL ARTICLE

A tabu search algorithm for unrelated parallel machinescheduling with sequence- and machine-dependent setups:minimizing total tardiness

Jae-Ho Lee & Jae-Min Yu & Dong-Ho Lee

Received: 28 December 2010 /Accepted: 9 July 2013# Springer-Verlag London 2013

Abstract This study considers the problem of schedulingindependent jobs on unrelated parallel machines withmachine- and sequence-dependent setup times for the objec-tive of minimizing the total tardiness, i.e., Rm│Sijk│∑Tj.Since the parallel machines are unrelated, sequence-dependent setup times must depend on machines. To the bestof the authors’ knowledge, the simulated annealing and theiterated greedy algorithms are two existing ones for the newclass of scheduling problem with an additional constraint ofstrict due date constraints for some jobs, i.e., deadlines. Inthis study, we suggest a tabu search algorithm that incorpo-rates various neighborhood generation methods. A compu-tational experiment was done on the instances generated bythe method used in the two previous research articles, and theresults show that the tabu search algorithm outperforms thesimulated annealing algorithm significantly. In particular, itgave optimal solutions for more than 50 % of small-sized testinstances. Also, an additional test was done to compare theperformances of the tabu search and the existing iteratedgreedy algorithms, and the result shows that the tabu searchalgorithm gives quicker solutions than the iterated greedyalgorithm although it gives less quality solutions.

Keywords Scheduling . Unrelated parallel machines .

Sequence- and machine-dependent setups . Total tardiness .

Tabu search

1 Introduction

Parallel machine scheduling, a generalization of single machinescheduling, is the problem of determining allocation of jobs toparallel machines as well as sequence of the jobs assigned toeach machine [1]. In general, adding additional resources inparallel are common in various manufacturing and servicesystems to obtain adequate capacity. From the practical view-point, the parallel machine scheduling problem can be found invarious manufacturing systems such as printed circuit boardmanufacturing, semiconductor manufacturing, group technolo-gy cells, painting and plastic industries, injection molding pro-cess, remanufacturing, etc. For example, in the injection mold-ing process that has a huge global market, efficient schedulingcan be one of the important means to increase productivity andcustomer service level at the same time [2].

In general, parallel machine scheduling problems can beclassified according to the characteristics of machines (identi-cal, uniform, and unrelated machines) and setups (sequence-and/or machine-independent and dependent setups). Here,processing times are proportional to ratios associated withmachine speeds in uniform machines, while they are differentat random in unrelated machines. Other factors to classify theparallel machine problems are precedence relations (indepen-dent and dependent jobs), job preemption (preemptive andnon-preemptive schedules), performance measures, comple-tion time dependent job values, resource-dependent process-ing times, etc. Among them, see [3–5] for the concepts andapplications of resource-dependent processing times. Exceptfor some special cases, the parallel machine scheduling prob-lems are known to be NP hard, and hence, optimal solutionscan be found only for small-sized instances [6].

According the classification scheme explained earlier, thisstudy considers the unrelated parallel machine schedulingproblemwith machine- and sequence-dependent setup times.The objective is to minimize the total tardiness, which close-ly related with maximizing customer satisfaction on meeting

J.<H. Lee : J.<M. YuDepartment of Industrial Engineering, Hanyang University,Seoul 133-791, Republic of Korea

D.<H. Lee (*)Department of Industrial Engineering, Graduate School ofTechnology and Innovation Management, Hanyang University,Seoul 133-791, Republic of Koreae-mail: [email protected]

Int J Adv Manuf TechnolDOI 10.1007/s00170-013-5192-6

due dates. According to the three field notation for schedul-ing problems suggested by Lawler et al. [7] and Chen et al.[8], the problem considered in this study can be designated asRm│Sijk│∑Tj, where Rm, Sijk, and ∑Tj imply unrelated par-allel machines, machine and sequence-dependent setuptimes, and minimizing the total tardiness, respectively.

Since we consider unrelated machines, processing time ofa job depends on the machine to which the job is assigned.For example, up-to-date machines may work together withoverage machines. Although the overage machines are lessefficient, they may be kept in production systems due to theirhigh replacement costs. In this case, the newer machines mayperform the same operations as the older ones, but requireshorter processing time for the same operation.

As in other scheduling problems, sequence-dependent setuptime implies that setup time depend on the type of job justcompleted and on the job to be processed. In addition, due tothe characteristic of unrelated machines, we consider machine-dependent setup times, i.e., sequence-dependent setup timeitself is dependent onmachines. In other words, the time neededto setup between two jobs on a machine may differ from thoseon other machines. For example, machine- and sequence-dependent setups can be found in the injection molding process[9]. In this example, only themold change time is required if thesame material is used between two consecutive jobs, whileadditional screw cleaning time is required, otherwise. Also,setup times may be different on different machines becausenewer and older ones may be used in parallel.

To represent the problem clearly, it is formulated as aninteger programming model. Note that we can easily see thatthe problem considered in this study is NP-hard since the singlemachine scheduling problem that minimizes the total tardinesswas proved to be NP hard [10]. Therefore, we suggest a tabusearch algorithm that incorporates various neighborhood gen-eration methods. In the algorithm, we use the method of takingthe best move that is not tabu after evaluating the solutionsobtained from the neighborhood generation methods.

The rest of this paper is organized as follows. In the nextsection, the previous articles on parallel machine schedulingwith machine- and/or sequence-dependent setups arereviewed. In Section 3, the problem is described with a math-ematical formulation after the assumptions are summarized.Section 4 presents the tabu search algorithm suggested in thisstudy, and the results on computational experiments are re-ported in Section 5. Finally, Section 6 concludes the paperwith a summary and discussion of future research.

2 Literature review

This section reviews the previous studies on parallel machinescheduling problems with sequence- and/or machine-dependentsetups. Since we consider the problem that minimizes the total

tardiness, our review is restricted on those associated with duedate-related objectives. First, we review the previous studies onthose only with sequence-dependent setups. Then, those withboth machine- and sequence-dependent setups are reviewed. SeeCheng and Sin [11], Koulamas [12], and Allahverdi [13] forliterature reviews on various parallel machine schedulingproblems.

Most previous studies have been done on identical oruniform parallel machine scheduling only with sequence-dependent setup times. For minimizing the total tardiness,Bean [14] suggests a genetic algorithm and Koulamas [15]suggests hybrid simulated annealing algorithms based on thedecomposition approach. Also, Anghinolfi and Paolucci [16]suggest a hybrid meta-heuristic that incorporates the corefeatures of simulated annealing, tabu search and variableneighborhood search, and Armentano and de Franca Filho[17] propose the GRASP-based search heuristics that incor-porate adaptive memory principles. For minimizing the totalweighted tardiness, Lee and Pinedo [18] suggest a threephase heuristic with the apparent tardiness cost with setups(ATCS) dispatching rule and a simulated annealing algo-rithm, and Park et al. [19] improve the dispatching rule usinglook-ahead parameters calculated by a neural network. SeeSivrikaya-Serifoglu and Ulusoy [20], Radhakrishnan andVentura [21], Hiraishi et al. [22], Bilge et al. [23], M’Hallahand Bulfin [24], and Kim et al. [9] for other measures orextensions.

Several researchers considered the problem on unrelatedparallel machines. For the problem of minimizing the totaltardiness, Guinet [25] suggests a local search heuristic thatinvolves pairwise exchange of jobs after constructing aninitial solution using a list scheduling heuristic, and Kimet al. [26] suggest a simulated annealing algorithm withvarious interchange and insertion methods. M’Hallah andBulfin [24] consider the problem with the objective of min-imizing the weighted number of tardy jobs, and suggestedoptimal branch and bound algorithms, and Chen and Chen[27] suggest hybrid meta-heuristics that integrate the tabusearch and the variable neighborhood descent approach forthe same problem. Also, Zhu and Heady [28] propose amixed integer programming model for the problem of min-imizing the sum of earliness and tardiness penalties.

Unlike those on the problems only with sequence-dependent setup times, not many studies have been doneon the problems with both machine- and sequence-dependent setup times. To the best of the authors’ knowl-edge, there are two previous research articles that considerthe new class of the problem. Chen [29] considers the prob-lem with an additional strict due date constraint for somejobs, i.e., deadlines, and suggests a simulated annealingalgorithm that incorporates the feasibility improvementmethod because strict due date constraints are considered.Later, Lin et al. [30] suggest an iterated greedy algorithm for

Int J Adv Manuf Technol

the same problem. Besides these, see Anagnostopoulos andRabadi [31], Rabadi et al. [32], Helal et al. [33], and Rochaet al. [34] for the problem with other performance measures.

3 Problem description

The unrelated parallel machine scheduling problem(Rm│Sijk│∑Tj) considered in this study can be described asfollows. There are a set of n independent jobs N={1, 2,…, n}to be processed on one of m parallel machines M={1, 2,…,m}. The machines are unrelated in the sense that processingtime of a job depends on the machine to which the job isassigned. Each machine is capable of processing any job butat most one job at a time. Due to the characteristic ofunrelated machines, machine- and sequence-dependent set-up times must be considered at the same time. Here,sequence- and machine-dependent setup times imply thatsequence-dependent setup time between two jobs is depen-dent on machines.

As in other parallel machine scheduling problems, thereare two types of decision variables: (a) allocating jobs tomachines and (b) sequencing the jobs assigned to eachmachine. Since it is assumed that jobs are independent, theproblems resulting after allocating jobs to machines becomethe single machine scheduling problems. The objective is tominimize the total tardiness, which can be represented as

Xj¼1

n

max 0;C j−d j

� �;

where Cj and dj denote the completion time and the due dateof job j, respectively. The total tardiness depends on the twodecision variables, allocation and sequencing, and the prob-lem considered here is to determine them for the objective ofminimizing the total tardiness while considering sequence-and machine-dependent setup times.

As an earlier study on the problem, we consider a staticand deterministic version of the problem. It is assumed thatall jobs are available for processing at time zero, i.e., zeroready times. The problem data, such as processing times, duedates, and setup times, are deterministic and given in ad-vance. Other assumptions made for the problem are: (a) nojob preemption, i.e., once a job is processed by a machine, itwill stay on the machine until its completion; and (b) ma-chine breakdowns are not considered.

To describe the problem more clearly, we provide a mixedinteger programming model, which is a modified one ofRabadi et al.’s [32]. Note that the formulation was used toobtain optimal solutions for small-sized test instances in thecomputational experiments. Before presenting the model, thenotations used are summarized below.

Parameters

dj due date of job jpjk processing time of job j on machine ksijk sequence-dependent setup time to process job j after

job i on machine k (s0jk denotes the setup time toprocess job j first on machine k)

Cj completion time of job jM large positive number

Decision variables

xijk = 1 if job j is processed directly after job i on machine kand 0 otherwise (x0jk (xj0k)=1 if job j is the first (last)job to be processed on machine k )

Now, the mixed integer programming model is givenbelow.

P½ �MinimizeXj¼1

n

max 0;C j−d j

� �

subject to

X

i¼0

i≠ j

n X

k¼1

m

xijk ¼ 1

for all j=1, 2, …n

X

i¼0

i≠h

n

xihk−X

j¼0

j≠ h

n

xhjk ¼ 0

for all h=1, 2, …n and k=1, 2, …m

C j≥Ci þXk¼1

m

xijk ⋅ sijk þ pjk

� �þM ⋅

Xk¼1

m

xijk−1

!

for all i=0, 1, …n and j=1, 2, …n

Xj¼0

n

x0jk ¼ 1

for all k=1, 2, …m

xijk∈ 0; 1f gfor all i=0, 1, …n, j=0, 1, …n, and k=1, 2, …m

C0 ¼ 0 ð6Þ

C j≥0

for all j=1, 2, …n

The objective function describes minimizing the totaltardiness. Constraint (1) states that each job is scheduled

ð1Þ

ð2Þ

ð3Þ

ð4Þ

ð5Þ

ð7Þ

Int J Adv Manuf Technol

only one machine, and constraint (2) ensures that each jobmust neither be preceded nor succeeded by more than onejob. Constraint (3) calculates completion times and ensuresthat no job can precede and succeed the same job. Constraint(4) states that only one job must be scheduled first at eachmachine. Constraints (5), (6), and (7) represent the conditionsof decision variables. In particular, Constraint (6) initializesthe completion time for the dummy job (job 0) to be 0.

4 Tabu search algorithm

Tabu search (TS), suggested by Glover [35], is one of themost popular meta-heuristics to find solutions of variouscombinatorial optimization problems. A typical TS imple-mentation starts from an initial solution and moves from thecurrent solution to the best one among its neighborhoods ateach iteration. To avoid cycling, attributes of recently visitedsolutions are set to be tabu for a certain number of iterations,and these moves are stored in the tabu list. Elements of tabulist define all tabu moves that cannot be applied to the currentsolution. The size of tabu list is bounded by a parameter.Note that a tabu move can be always allowed to be chosen ifit creates a solution better than the incumbent solution, thebest objective value obtained so far. This is called the aspi-ration criterion.

An application of TS is generally characterized by severalfactors. They are: (a) obtaining an initial solution, (b) neigh-borhood generation methods, i.e., set of possible movesapplicable to the current solution, (c) definition of tabumoves with the tabu list size, and (d) termination condition.Each of the implementation factors is explained below.

4.1 Solution representation

In the TS algorithm suggested in this study, the solution isrepresented as Fig. 1. In this figure, Jik denotes the index ofthe ith job assigned to machine k, and nk denotes the numberof jobs allocated to machine k. For a given solution, theobjective value can be easily calculated by going throughthe sequence of jobs in each machine and summing up thetardiness of each job.

4.2 Obtaining an initial solution

An initial solution is obtained by modifying the apparent-tardiness-cost-with-setup (ATCS) procedure suggested byLee and Pinedo [18] for solving identical parallel machinescheduling problems. According to Lee and Pinedo [18],whenever a machine is freed, the priority index is computedfor each unscheduled job. Then, the job with the largestpriority index is assigned to the machine on which it can becompleted the earliest. Since we consider unrelated parallel

machines, a modified priority index is used that can berepresented as

I j t; ið Þ ¼ 1

pjmexp −

max d j−pjm−t; 0� �

k1p

0@

1Aexp −

sijm

k2s

!;

where Ij(t, i) is the priority index for job j given that job i isthe last job completed at time t, pjm is the processing time forjob j on machinem, dj is the due date of job j, p is the averageprocessing time, sijm is the sequence-dependent setup time toprocess job j after job i on machine m, s is the average setuptime, and k1 and k2 are scaling parameters. The scalingparameters were set to 4.4 and 0.45 using the method ofLee and Pinedo [18].

4.3 Neighborhood generation methods

Eight neighborhood generation methods are included in theTS algorithm suggested in this study, each of which is basedon the interchange and the insertion methods. In general, theinterchange method, alternatively called the swap method,generates a neighborhood solution by selecting two jobs (orjob groups) in the current schedule and interchanging them,while the insertion method selects two jobs (or job groups)and removing the first job from the original place andinserting it to the position that directly precedes the secondjob. Here, the interchange and insertion methods can be donefor the jobs assigned to the same machine (intra-machine) ordifferent machines (inter-machine).

There may be several ways of considering moves. Amongthem, we use the method of examining a set of neighbor-hoods generated by the eight neighborhood generationmethods and taking the best move that is not tabu. This isbecause the neighborhood generation methods generate toomany neighborhood solutions, and hence it is needed to limitthe neighborhood solutions examined.

Now, each of the eight neighborhood generation methodsis explained below. In these methods, a sub_job_group is

Machine 1

Machine 2

Machine k

Machine m

:

:

:

:

Jm1

. . . . . . . . .

. . . . . .

. . .

. . . . . . . . . . . .

Jn,nmJm3

J21 J22J23

J11 J13

Jk,nk

J2,n2

J1,n1J12

Jk1 Jk2Jk3

Jm2

Fig. 1 Representing solutions

Int J Adv Manuf Technol

defined as a set of consecutive tardy or early jobs amongthose assigned to a machine, i.e., {Jik Ji+1,k, … Jtk} inmachine k, where all jobs Jik Ji+1,k, … and Jtk are tardy orearly. Also, the machine tardiness of a machine is the totaltardiness for the jobs assigned to the machine.

1) Sub_job_group reallocationThis method, based on the insertion method, removes

a set of consecutive jobs within a randomly selectedsub_job_group on the machine with the maximum ma-chine tardiness and inserts them to a randomly selectedposition of the machine with the minimum machinetardiness. Here, the set of consecutive jobs, which startfrom the first job in the selected sub_job_group, isselected randomly. Figure 2 shows an example of thesub_job_group reallocation method.

2) Job reallocationThis method is the same as the sub-job-group

reallocation method except that a job (instead of a jobgroup) is selected and inserted. In other words, a jobamong those assigned to the machine with the maximummachine tardiness is removed from the original place,and then it is inserted to an arbitrary position in thesequence of the jobs assigned to the machine with theminimum machine tardiness. As in the sub-job-groupreallocation method, the job is selected randomly amongthose assigned to the machine with the maximum ma-chine tardiness.

3) Sub_job_group and sub_job_group chain reallocationIn this method, a sub_job_group selected from the

machine with the maximum machine tardiness isreallocated to a randomly selected intermediate machineand then another sub_job_group selected from the inter-mediate machine is reallocated to the machine with theminimum machine tardiness. Figure 3 shows an exam-ple of the sub_job_group and sub_job_group chainreallocation method.

4) Sub_job_group and job chain reallocationThis method is the same as the sub_job_group and

sub_job_group chain reallocation method except that ajob (instead of a job group) selected from the interme-diate machine is reallocated to the machine with theminimum machine tardiness.

5) Job and job chain reallocationThis method is the same as the sub_job_group and

sub_job_group chain reallocation method except thatthe two reallocations (from the machine with the maxi-mum machine tardiness to an intermediate machine andfrom the intermediate machine to the machine with theminimummachine tardiness) are done in job-base, not injob group-base.

6) Sub_job_group and sub_job_group swapThis method, based on the interchange method, gen-

erates a neighborhood solution by selecting twosub_job_groups and interchanging them. More specifi-cally, a sub_job_group selected from the machine withthe maximum machine tardiness is swapped with asub_job_group selected from another arbitrary machine.

7) Inter-machines job and job swapThis method is the same as the swap method for

sub_job_groups except that two jobs, instead ofsub_job_groups, are interchanged. In other words, ajob selected from the machine with the maximum ma-chine tardiness is swapped with a job selected randomlyfrom another arbitrary machine.

8) Intra- machine job and job swapThis method is the same as the inter-machines job and

job swap method except for interchanging two jobsselected from those assigned to an arbitrary machine.

4.4 Tabu conditions

Tabu moves are defined as follows. The interchange basedmethods define a tabu move as the job/sub_job_groupmoved, while the swap based methods as a pair ofjobs/sub_job_groups swapped. When a job orsub_job_group on a machine is moved by reallocation orswap methods, we may consider that machine as a tabumove. However, machines are not considered as tabu movesbecause if tabu conditions are too subdivided then the tabulist checking time may be required longer. As an exceptionalcase in tabu conditions, a tabu move can be allowed to bechosen if it generates a solution better than the incumbentsolution, i.e., the best objective value obtained so far.

The tabu list size (l) is an important parameter and affectsthe speed of convergence of heuristic. If the tabu list is toolong, its use becomes time consuming while if it is too short,it becomes ineffective in escaping from local optimal

Fig. 2 An example of thesub_job_group reallocationmethod

Int J Adv Manuf Technol

solutions. In our application, the tabu list size was deter-mined by a preliminary test.

4.5 Termination condition

The number of consecutive iterations without improving theincumbent solution (LTS) was used as the termination condi-tion in this study.

5 Computational results

To show the performances of the tabu search algorithmsuggested in this study, computational experiments weredone on various test instances and the results are reportedin this section. More specifically, we compare the tabu searchalgorithm with the simulated annealing algorithm of Chen[29] and the iterated greedy algorithms of Lin et al. [30]. Thethree algorithms were coded in C++, and the tests were doneon a workstation with an Intel Core 2 Duo processor operat-ing at 3.00 GHz clock speed.

The problem data were generated using the method ofChen [29]. More specifically, processing times of jobs ondifferent machines were generated from

1.f mj � DU 10; 40ð Þ;

where fmj, generated from 1/DU(5, 15), is the speed factor ofjob j on machine m. (DU[a, b] is the discrete uniform distri-bution with range [a, b].) The due dates of jobs were gener-ated from

U L 1−T−R.2

� �; L 1−T þ R

.2

� �� �;

where L, T, and R are lower bound for makespan, tardinessfactor and due date range, respectively. (U[a, b] is the con-tinuous uniform distribution with range [a, b].) Here, thelower bound L for makespan was calculated by

L ¼Xi¼1

n

pmini þ smin

i

� �.m;

where pimin is the minimum processing time of job i over the

machines and simin is the minimum of the machine- and

sequence-dependent setup times of job i. Also, R was set to

be 0.8, and T was 0.4 (loose) and 0.5 (tight). Finally,machine- and sequence-dependent setup times were gener-ated from DU(10, 100).

To find the appropriate parameter values for the tabusearch algorithm, a preliminary experiment was done. Inother words, several values for the parameters for the tabulist size (l) and the termination condition (LTS) were tested onseveral representative test instances, and they were set to 20and 100, respectively. Also, in the case of the simulatedannealing algorithm, we used the parameter values reportedin Chen [29]. In particular, the same termination conditionwas used for the simulated annealing algorithm.

Two data sets, small and large-sized instances, were gen-erated. First, for the test on small-sized instances, 160 in-stances were generated, i.e., 10 instances for each of 16combinations of two levels of the number of machines (3and 4), four levels of the number of jobs (7, 8, 9 and 10), andtwo levels of the due date tightness (loose and tight). In thistest, the effectiveness of each heuristic is shown with threeperformance measures: (a) number of instances that eachheuristic found the optimal solutions, (b) average percentagegap from the optimal solution values, and (c) CPU seconds.Here, the optimal solutions were obtained by CPLEX 11.0, acommercial integer programming software package.

Test results for small-sized instances are summarized inTable 1. It can be seen from the table that the tabu searchalgorithm outperforms the simulated annealing algorithmsignificantly. In fact, the overall average gap from the opti-mal solutions of the tabu search and the simulated annealingalgorithms were 5.44 % and 9.38 %, and the tabu searchalgorithm found more optimal solutions, i.e., more than 50 %of the test instances. Also, the simulated annealing algorithmgave larger overall standard deviation in percentage gap,which shows that the performance of the simulated annealingalgorithm is unstable. This outperformance results from thefact that the tabu search algorithm can search the neighbor-hood solutions more effectively. In other words, the simulat-ed annealing algorithm generates neighborhood solutionsone by one and hence the seven neighborhood generationmethods may not be utilized fully. On the other hand, thetabu search algorithm generates eight neighborhood solu-tions at a time. Finally, both meta-heuristics required shortcomputation times, while CPLEX took more than 30 min forthe test instances with 3 machines and 10 jobs.

For the test on large-sized instances, 240 instances wereadditionally generated, i.e., 10 instances for each of 24

Fig. 3 An example of thesub_job_group andsub_job_group chainreallocation method

Int J Adv Manuf Technol

combinations of three levels of the number of machines (4, 6,and 8), four levels of the number of jobs (30, 50, 70, and 90),and two levels of the due date tightness (loose and tight). Inthis case, the two meta-heuristics were compared with therelative performance ratios. Here, the relative performanceratio (RPR) of meta-heuristic a for a problem is defined as

100⋅ Ca−Cbestð Þ.Cbest;

where Ca is the objective function value obtained using heu-ristic a for the problem and Cbest is the best objective functionvalue of those obtained from the two meta-heuristics.

Result for large-sized test instances are summarized inTable 2, which shows the average relative performance ratiosand the average CPU seconds. As in the results for small-sized instances, the tabu search algorithm outperforms thesimulated annealing algorithm significantly for most testinstances. In particular, the performance of the simulatedannealing algorithm gets worse as the problem size in-creases, which shows the effectiveness of the tabu searchalgorithm suggested in this study. Finally, the tabu search

algorithm required longer CPU seconds, which implies thatit can search more solutions than the simulated annealingalgorithm. In fact, it gave solutions for the largest instanceswith 8 machines and 90 jobs about 2 minutes in overallaverage.

Finally, an additional test was done to compare the tabusearch and the iterated greedy algorithms for the large-sizedtest instances. Here, the original tabu search algorithm wasreinforced by applying the 2-opt based local search algo-rithm of Lin et al. [30] to the jobs assigned to each machinefor the job group based neighborhood generation methods,i.e., sub_job_group reallocation, sub_job_group andsub_job_group chain reallocation, sub_job_group and jobchain reallocation, and sub_job_group and sub_job_groupswap. Also, the parameter values reported in Lin et al. [30]were used for the iterated greedy algorithm. The test resultsare reported in Table 3 that shows the average relativeperformance ratios and the average CPU seconds. It can beseen from the table that the tabu search algorithm is notcompetitive to the iterated greedy in solution quality, but itrequires much less computation time.

Table 1 Test results on the comparison of the simulated annealing and the tabu search algorithms: small-sized instances

Number of machines Number of jobs Simulated annealinga Tabu search

NOPTb GAPc CPUd NOPT GAP CPU

(a) Loose due dates (tardiness factor (T)=0.4)

3 7 4 4.37 (4.33) 2.4 6 4.32 (5.91) 0.4

8 5 6.03 (8.65) 2.5 7 2.14 (4.33) 0.3

9 1 9.95 (9.89) 2.4 7 4.16 (5.67) 0.5

10 1 15.06 (11.45) 2.4 5 2.32 (4.11) 0.5

4 7 8 4.17 (8.97) 2.6 6 5.15 (8.93) 0.7

8 3 9.55 (11.70) 2.4 7 4.12 (7.60) 0.6

9 2 13.29 (10.28) 2.4 4 9.58 (11.13) 0.8

10 0 12.63 (5.70) 2.5 3 6.23 (5.73) 0.7

Average 3.0 9.38 (8.87) 2.5 5.6 4.75 (6.67) 0.6

(b) Tight due dates (tardiness factor (T)=0.5)

3 7 7 1.35 (3.30) 2.3 7 0.34 (0.61) 0.5

8 2 6.88 (5.73) 2.2 6 1.46 (2.55) 0.3

9 1 5.01 (5.13) 2.2 6 3.49 (6.03) 0.4

10 1 8.36 (6.61) 2.6 3 5.07 (5.89) 0.5

4 7 5 3.57 (4.16) 2.6 7 0.67 (1.36) 0.6

8 1 7.88 (5.70) 2.4 5 4.43 (6.45) 0.7

9 4 5.84 (7.63) 2.6 5 3.92 (4.70) 0.3

10 0 13.26 (9.68) 2.6 5 7.13 (10.17) 0.5

Average 2.6 6.52 (5.99) 2.4 5.5 3.31(4.72) 0.5

a Simulated annealing algorithm of Chen [26]b Number of instances that the meta-heuristic found the optimal solutions out of 10 instancesc Average percentage gap from the optimal solution values with standard deviation in parenthesis out of ten instancesd Average CPU second out of ten instances

Int J Adv Manuf Technol

6 Concluding remarks

This study considered the unrelated parallel machine sched-uling problem for the objective of minimizing total tardiness.Since we consider unrelated machines, processing time of ajob depends on the machine to which the job is assigned. In

particular, we considered sequence- and machine-dependentsetup times, i.e., sequence-dependent setup times themselvesdepend on machines. Due to the complexity of the problem,we suggested a tabu search algorithm. Computational exper-iments were done on a number of randomly generated testinstances and the results showed that the tabu search

Table 2 Test results on the comparison of the simulated annealing and the tabu search algorithms: large-sized instances

Number of machines Number of jobs Simulated annealing Tabu search

Loose due dates (T=0.4) Tight due dates (T=0.5) Loose due dates (T=0.4) Tight due dates (T=0.5)

RPRa CPUb RPR CPU RPR CPU RPR CPU

4 30 14.9 3.8 7.5 3.8 0.0 6.7 0.7 7.1

50 18.8 7.6 15.8 6.0 0.0 15.1 0.0 14.0

70 30.0 9.3 24.3 11.1 0.0 25.4 0.0 28.8

90 34.5 16.9 26.2 19.4 0.0 39.7 0.0 66.1

6 30 18.7 4.2 17.5 4.6 1.1 8.6 0.0 16.8

50 23.4 12.4 18.5 9.1 0.0 17.4 0.0 32.0

70 24.9 12.4 22.1 13.2 0.0 32.7 0.0 51.8

90 35.7 26.1 28.3 29.9 0.0 68.7 0.0 118.4

8 30 23.7 6.1 22.1 6.1 0.0 10.8 0.0 21.0

50 27.8 11.3 27.8 12.5 0.3 25.4 0.0 42.8

70 28.1 23.6 25.0 24.5 0.0 58.9 0.0 86.6

90 35.4 36.8 27.0 35.6 0.0 97.3 0.0 126.3

Average 26.3 14.2 21.8 14.6 0.1 33.9 0.1 51.0

a Average relative performance ratio out of ten instancesb Average CPU second out of ten instances

Table 3 Test results on the comparison of the tabu search and the iterated greedy algorithms: large-sized instances

Number of machines Number of jobs Iterated Greedy Tabu Search

Loose due dates (T=0.4) Tight due dates (T=0.5) Loose due dates (T=0.4) Tight due dates (T=0.5)

RPR1 CPU2 RPR CPU RPR CPU RPR CPU

4 30 1.28 2.35 1.31 3.06 5.91 0.39 7.17 0.40

50 4.32 14.49 1.42 22.12 5.00 2.14 7.58 2.24

70 2.35 39.03 2.12 55.12 7.62 7.08 5.56 7.40

90 0.52 129.61 3.48 135.61 7.31 18.07 3.94 17.76

6 30 3.36 1.26 1.04 1.51 7.00 0.45 7.58 0.45

50 0.00 6.93 1.05 8.20 11.74 2.38 5.76 2.40

70 2.03 22.20 4.37 23.11 5.00 7.44 4.34 7.32

90 1.47 52.43 0.87 63.49 5.27 17.94 9.60 18.39

8 30 1.16 0.64 3.01 0.68 7.81 0.54 3.13 0.55

50 0.41 3.73 3.67 4.44 6.19 2.56 5.15 2.53

70 2.81 11.73 2.73 12.79 7.73 7.91 6.46 7.94

90 2.49 31.54 3.16 34.69 4.32 19.42 6.57 19.22

Average 1.85 26.33 2.35 30.40 6.74 7.19 6.07 7.22

1 average relative performance ratio out of 10 instances2 average CPU second out of 10 instances

Int J Adv Manuf Technol

algorithm outperformed the existing simulated annealingalgorithm significantly. Also, it gave optimal solutions formore than 50 % of small-sized test instances. Also, the tabusearch algorithm gave quicker solutions than the iteratedgreedy algorithm although it did not give better solutions.

This research can be extended in several directions. First,it is needed to study more sophisticated neighborhood gen-eration methods, such as those with optimal solution prop-erties. Second, as one of practical approaches, dynamic andstochastic problems with non-zero ready times are worth tobe considered.

Acknowledgments This work was supported by the National Re-search Foundation of Korea grant funded by Korea government(NRF; Grant Code: 2011-0015888). This is gratefully acknowledged.

References

1. Baker KR (1974) Introduction to Sequencing and Scheduling. JohnWily & Sons.

2. Dastidar GS, Nagi R (2004) Scheduling injection molding opera-tions with multiple resource constraints and sequence dependentsetup times and costs. Comput Oper Res 32:2987–3005

3. Cheng ETC, Janiak A (1994) Resource optimal control in somesingle machine scheduling problems. IEEE Trans Autom Control39:1243–1246

4. Janiak A, Kovalyov MY (1996) Single machine scheduling subjectto deadlines and resource dependent processing times. Eur J OperRes 94:284–291

5. Cheng ETC, Janiak A, Kovalyov MY (1998) Bicriterion singlemachine scheduling with resource dependent processing times.SIAM J Optim 8:617–630

6. Pinedo M (1995) Scheduling: Theory, Algorithms, and Systems.Prentice Hall.

7. Lawler EL, Lenstra JK, Rinnoy Kan AHJ, Shmoys DB (1993)Sequencing and scheduling: algorithm and complexity. Handbooksin Operations Research and Management Science. Logist ProdInvent 4:445–524

8. Chen B, Potts CN, Woeginger GJ (1998) A review of machine sched-uling: complexity, algorithms and applications. In: Du, D.-Z., Pardalos,P. M. (Eds.). Handbook of Combinatorial Optimization 21–169.

9. Kim SI, Choi HS, Lee DH (2007) Scheduling algorithms forparallel machines with sequence-dependent setup and distinct readytimes: minimizing total tardiness. Proc IME B J Eng Manufact221:1087–1096

10. Du J, Leung JYT (1990) Minimizing total tardiness on one proces-sor in NP-hard. Math Oper Res 12:483–495

11. Cheng TCE, Sin CCS (1990) A state-of-the-art review of parallel-machine scheduling research. Eur J Oper Res 47:271–292

12. Koulamas C (1994) The total tardiness problem: review and exten-sion. Oper Res 42:764–775

13. Allahverdi A, Ng CT, Cheng TCE, Kovalyov MY (2008) A surveyof scheduling problems with setup times or costs. Eur J Oper Res187:985–1032

14. Bean JC (1994) Genetic algorithm and random keys for sequencingand optimization. ORSA J Comput 6:154–160

15. Koulamas C (1997) Decomposition and hybrid simulated annealingheuristics for the parallel machine total tardiness problem. Nav ResLogist 44:109–125

16. Anghinolfi D, Paolucci M (2007) Parallel machine total tardinessscheduling with a new hybrid metaheuristic approach. ComputOper Res 34:3471–3490

17. Armentano VA, de Franca Filho MF (2007) Minimizing totaltardiness in parallel machines scheduling with setup times: anadaptive memory-based GRASP approach. Eur J Oper Res183:100–114

18. Lee YH, Pinedo M (1997) Scheduling jobs on parallel machineswith sequence-dependent setup times. Eur J Oper Res 100:464–474

19. Park Y, Kim S, Lee YH (2000) Scheduling jobs on parallel ma-chines applying neural network and heuristics rules. Comput IndEng 38:189–202

20. Sivrikaya-Serifoglu F, Ulusoy G (1999) Parallel machine schedul-ing with earliness and tardiness penalties. Comput Oper Res26:773–787

21. Radhakrishnan S, Ventura JA (2000) Simulated annealing for par-allel machine scheduling with earliness-tardiness penalties andsequence-dependent setup times. Int J Prod Res 38:2233–2252

22. Hiraishi K, Levner E, Vlach M (2002) Scheduling of parallelidentical machines to maximize the weighted number of just-in-time jobs. Comput Oper Res 29:841–848

23. Bilge U, Kirac F, Kurtulan M, Pekgun P (2004) A tabu searchalgorithm for parallel machine total tardiness problem. ComputOper Res 31:397–414

24. M’Hallah R, Bulfin RL (2005) Minimizing the weighted number oftardy jobs on parallel processors. Eur J Oper Res 160:471–484

25. Guinet A (1991) Textile production systems: a succession of non-identical parallel processor shops. J Oper Res Soc 42:655–671

26. Kim DW, Kim KH, Jang W, Chen FF (2002) Unrelated Parallelmachine scheduling with setup times using simulated annealing.Robot Comput Integr Manuf 18:223–231

27. Chen CL, Chen CL (2009) Hybrid metaheuristics for unrelatedparallel machine scheduling with sequence-dependent setup times.Int J Adv Manuf Technol 43:161–169

28. Zhu Z, Heady RB (2000) Minimizing the sum of earliness/tardinessin multi-machine scheduling: a mixed integer programming ap-proach. Comput Ind Eng 38:297–305

29. Chen JF (2009) Scheduling on unrelated parallel machines withsequence- and machine-dependent setup times and due-date con-straints. Int J Adv Manuf Technol 44:1204–1212

30. Lin SW, Lu CC, Ying KC (2010) Minimization of total tardiness onunrelated parallel machines with sequence- and machine-dependentsetup times under due date constraints. Int J Adv Manuf Technol53:353–361

31. Anagnostopoulos GC, Rabadi G (2002) A simulated annealingalgorithm for the unrelated parallel machine scheduling problem.World Automation Congress: Proceedings of the 5th Biannual 115–120.

32. Rabadi G, Moraga RJ, Al-Salem A (2006) Heuristics for theunrelated parallel machine scheduling problem with setup times. JIntell Manuf 17:85–97

33. Helal M, Rabadi G, Al-Salem A (2006) A tabu search algorithm tominimize the makespan for the unrelated parallel machines sched-uling problem with setup times. Int J Oper Res 3:182–192

34. Rocha PL, Ravatti MG, Mateus GR, Pardalos PM (2008) Exactalgorithms for a scheduling problem with unrelated parallel ma-chines and sequence and machine-dependent setup times. ComputOper Res 35:1250–1264

35. Glover F (1990) Tabu search-part II. ORSA J Comput 2:4–32

Int J Adv Manuf Technol