multiple machine jit scheduling: a tabu search approach

18
This article was downloaded by: [University of Liverpool] On: 07 October 2014, At: 05:36 Publisher: Taylor & Francis Informa Ltd Registered in England and Wales Registered Number: 1072954 Registered office: Mortimer House, 37-41 Mortimer Street, London W1T 3JH, UK International Journal of Production Research Publication details, including instructions for authors and subscription information: http://www.tandfonline.com/loi/tprs20 Multiple machine JIT scheduling: a tabu search approach Daniel A. Finke a , D. J. Medeiros a & Mark T. Traband a a Pennsylvania State University , USA Published online: 26 Sep 2007. To cite this article: Daniel A. Finke , D. J. Medeiros & Mark T. Traband (2007) Multiple machine JIT scheduling: a tabu search approach, International Journal of Production Research, 45:21, 4899-4915 To link to this article: http://dx.doi.org/10.1080/00207540600871228 PLEASE SCROLL DOWN FOR ARTICLE Taylor & Francis makes every effort to ensure the accuracy of all the information (the “Content”) contained in the publications on our platform. However, Taylor & Francis, our agents, and our licensors make no representations or warranties whatsoever as to the accuracy, completeness, or suitability for any purpose of the Content. Any opinions and views expressed in this publication are the opinions and views of the authors, and are not the views of or endorsed by Taylor & Francis. The accuracy of the Content should not be relied upon and should be independently verified with primary sources of information. Taylor and Francis shall not be liable for any losses, actions, claims, proceedings, demands, costs, expenses, damages, and other liabilities whatsoever or howsoever caused arising directly or indirectly in connection with, in relation to or arising out of the use of the Content. This article may be used for research, teaching, and private study purposes. Any substantial or systematic reproduction, redistribution, reselling, loan, sub-licensing, systematic supply, or distribution in any form to anyone is expressly forbidden. Terms & Conditions of access and use can be found at http://www.tandfonline.com/page/terms- and-conditions

Upload: mark

Post on 16-Feb-2017

215 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Multiple machine JIT scheduling: a tabu search approach

This article was downloaded by: [University of Liverpool]On: 07 October 2014, At: 05:36Publisher: Taylor & FrancisInforma Ltd Registered in England and Wales Registered Number: 1072954 Registeredoffice: Mortimer House, 37-41 Mortimer Street, London W1T 3JH, UK

International Journal of ProductionResearchPublication details, including instructions for authors andsubscription information:http://www.tandfonline.com/loi/tprs20

Multiple machine JIT scheduling: a tabusearch approachDaniel A. Finke a , D. J. Medeiros a & Mark T. Traband aa Pennsylvania State University , USAPublished online: 26 Sep 2007.

To cite this article: Daniel A. Finke , D. J. Medeiros & Mark T. Traband (2007) Multiple machine JITscheduling: a tabu search approach, International Journal of Production Research, 45:21, 4899-4915

To link to this article: http://dx.doi.org/10.1080/00207540600871228

PLEASE SCROLL DOWN FOR ARTICLE

Taylor & Francis makes every effort to ensure the accuracy of all the information (the“Content”) contained in the publications on our platform. However, Taylor & Francis,our agents, and our licensors make no representations or warranties whatsoever as tothe accuracy, completeness, or suitability for any purpose of the Content. Any opinionsand views expressed in this publication are the opinions and views of the authors,and are not the views of or endorsed by Taylor & Francis. The accuracy of the Contentshould not be relied upon and should be independently verified with primary sourcesof information. Taylor and Francis shall not be liable for any losses, actions, claims,proceedings, demands, costs, expenses, damages, and other liabilities whatsoeveror howsoever caused arising directly or indirectly in connection with, in relation to orarising out of the use of the Content.

This article may be used for research, teaching, and private study purposes. Anysubstantial or systematic reproduction, redistribution, reselling, loan, sub-licensing,systematic supply, or distribution in any form to anyone is expressly forbidden. Terms &Conditions of access and use can be found at http://www.tandfonline.com/page/terms-and-conditions

Page 2: Multiple machine JIT scheduling: a tabu search approach

International Journal of Production Research,Vol. 45, No. 21, 1 November 2007, 4899–4915

Multiple machine JIT scheduling: a tabu search approach

DANIEL A. FINKE*, D. J. MEDEIROS and MARK T. TRABAND

Pennsylvania State University, USA

(Received 17 May 2005; in final form 8 September 2005)

This paper presents an approach to solving the multiple machine, non-preemptive, earliness-tardiness scheduling problem with unequal due dates in aflow shop with machine tiers (FMT). In this variant of the flow shop problem,machines are arranged in tiers or groups, and the jobs must visit one machinein each tier. The processing times, machine assignments, and due dates aredeterministic and known in advance. The objective is to find a permutationschedule that minimizes the total deviation of each job from its due date. A tabusearch (TS) meta-heuristic combined with an LP evaluation function is applied tosolve this problem and results are compared to optimal permutation solutionsfor small problems and the earliest due date schedule for large problems. Severalneighborhood generation methods and two diversification strategies are examinedto determine their effect on solution quality. Results show that the TS methodworks well for this problem. TS found the optimal solution in all but one of thesmall problem instances and improved the earliest due date solutions for largerinstances where no optimal solutions could be found.

Keywords: Multiple machine scheduling; Earliness-tardiness; Tabu search

1. Introduction

The Just-in-Time (JIT) philosophy is recognized as one of the most efficient strategic

planning methods known in the manufacturing world. Manufacturing organizations

have been striving to develop and achieve JIT operations since its value was

discovered in the early 1970s. Much research has been done to isolate and optimize

the specific components of JIT so as to allow for the analysis and implementation

of tactical methods. One tactical component of JIT is scheduling or specifically,

scheduling jobs so they finish exactly when they are needed in the next stage of

production. The specific research area is described as the earliness-tardiness (ET)

problem (Li et al. 2000).The premise of JIT is that a job finishes exactly on its due date. If a job finishes

early it must be held in finished goods inventory until it is needed, and a job that

completes after its due date may cause a customer to shut down operations or cause

delays downstream (Baker and Scudder 1990). System constraints rarely allow for a

trivial solution, meaning some jobs will have to finish early and some jobs will have

*Corresponding author. Email: [email protected]

International Journal of Production Research

ISSN 0020–7543 print/ISSN 1366–588X online � 2007 Taylor & Francis

http://www.tandf.co.uk/journals

DOI: 10.1080/00207540600871228

Dow

nloa

ded

by [

Uni

vers

ity o

f L

iver

pool

] at

05:

36 0

7 O

ctob

er 2

014

Page 3: Multiple machine JIT scheduling: a tabu search approach

to finish late. Under these circumstances, it is desirable to schedule the jobs tominimize the earliness and tardiness costs.

This paper addresses a particular instance of the ET problem where the objectiveis to schedule n jobs on m machines to minimize the earliness-tardiness performancemeasure, and the solution is restricted to permutation schedules. The jobs havedifferent due dates, common penalties for earliness and tardiness, and no preemptionis allowed. All jobs are available for immediate processing. The processing time andmachine assignment for every job are deterministic and known in advance. Themachine setup time is included in the processing time of each job. The machines inthis system are arranged in groups or tiers, and every job must be processed by asingle machine in each tier before it can be processed in the next tier. We refer to thisproblem as the flow shop with machine tiers (FMT). This type of environment issimilar to the flow shop with parallel machines (FSPM) described in Nowicki andSmutnicki (1998). Our problem differs from the general FSPM in that each job isassigned a specific machine in each tier. Though the machines in a tier are similar,there are often advantages to making a specific assignment either because of setuprequirements or because some particular characteristic of a job makes it especiallysuited for one of the machines. Furthermore, we restrict our attention to the class ofsolutions where all the tiers process the jobs in the same sequence. Keeping afixed sequence is beneficial in systems where low work-in-process levels are desired,as when buffer space is limited.

This problem was motivated by our experience with a manufacturer of largeequipment; the manufacturing process used significant quantities of metal platein various sizes and alloys which were cut and finished on an automated line.Earliness-tardiness was a major concern because of the limited space for holdingin-process inventories and the possibility of disrupting downstream schedules. Morethan one piece of processing equipment was available at each step; however due todifferences in part size, material composition, equipment setup time, and final parttolerances management strongly preferred (and in many cases, had no alternativethan) to use a specific piece of equipment from each group for a specific part type.Buffer space between steps was limited because a conveyor was used to move themetal plates between operations.

1.1 Current related research

Baker and Scudder (1990) provide a thorough review of the research up to that time,but in the years since many authors have examined ET problems in great detail.The basic ET problem, scheduling n jobs on a single machine with common duedates, is the foundation of all problems in this class. Many variations of this problemexist; these include common and distinct due dates, single and multiple machines,sequential and parallel multiple machines, restrictive or unrestrictive due dates,and setup times.

The single machine ET problem with restrictive due dates has been proven to beNP-hard, while the unrestricted case has been shown to be polynomially solvable(Baker and Scudder 1990, Biskup and Feldmann 2001, Mondal and Sen 2001). Themultiple machine ET problem is a much more difficult and complex problem. Headyand Zhu (1998) state that the multiple machine, multiple job ET problem is NP-hard.The multiple machine case can be separated even further into two categories,

4900 D. A. Finke et al.

Dow

nloa

ded

by [

Uni

vers

ity o

f L

iver

pool

] at

05:

36 0

7 O

ctob

er 2

014

Page 4: Multiple machine JIT scheduling: a tabu search approach

serial or parallel machines. The majority of research has been done on the identical,parallel machine case, where a job has to be processed by one of the machines andthe objective is to schedule that job to a machine and find a sequence for eachmachine. Very little work has been published on the flow shop with parallel machines(flexible flow line, serial multiple machine) case.

Tamaki et al. (1999b) present a solution method for the identical parallel machinecase that uses a genetic algorithm in the framework of multiple objectiveoptimization. Tamaki et al. (1999a) use a list scheduling technique to find the starttimes on each machine. Pandelis and Teneketzis (1993) present a model to solve themultiple machine case using queuing theory. This model has merit in the dynamiccase where the set of jobs to be processed is not known ahead of time.

Little is known about the flow shop with parallel machines case of the multiplemachine ET problem. Lashine et al. (1991) propose a nonlinear mixed integer goal-programming model for the two-machine closed flow shop case, where all jobs areknown in advance. However, they look at the problem from the production controllevel and not the production planning level.

1.2 Review of work on tabu search

Optimal procedures for multiple machine scheduling problems become intractable asthe problem size increases, therefore it is necessary to use a heuristic procedure tofind solutions to problems of realistic size. Several heuristic procedures exist andhave been implemented to solve scheduling problems. Some of these heuristicprocedures include simulated annealing, genetic algorithms, and the tabu search(TS) meta-heuristic. Yagiura and Ibaraki (2001) compile a very large amount ofthe current literature on heuristic procedures and present a good comparison ofthe methods on several standard problems. One of these heuristic procedures,TS meta-heuristic, is presented in (Glover 1989, 1990a, 1990b).

TS has been applied to many difficult optimization problems with a great deal ofsuccess. Løkketangen and Glover (1998) show that TS can produce good if notsuperior results when applied to large integer programming problems. Nonobe andIbaraki (1998) apply TS to the constraint satisfaction problem and report positiveresults in terms of solution times and quality. Skorin-Kapov and Vakharia (1993) useTS to solve a flowshop scheduling problem, and Valls et al. (1998) apply it to asimilar job shop problem; both show positive results over the best-known heuristicprocedure. Nowicki and Smutnicki (1998) also apply TS to the FSPM makespanproblem and show that it provides good solutions. Barnes and Laguna (1993) use TSto solve the multiple machine weighted flowtime problem and demonstrate thatTS outperforms branch and bound in terms of solution time.

TS has several elements that define the procedure; these are: initial solution,neighborhood generation method, stopping conditions, and the tabu list. The searchbegins with an initial solution, which can be random or the result of a simpledispatching rule or simple search procedure. From the initial solution the procedureiteratively creates neighborhoods of candidate solutions using a neighborhoodgeneration method until the stopping conditions have been met. Each time aneighborhood is generated the objective function value is obtained for eachcandidate and the candidate with the best value is selected as the current solution andit is put on the tabu list. The tabu list removes past solutions from future

Multiple machine JIT scheduling: A tabu search approach 4901

Dow

nloa

ded

by [

Uni

vers

ity o

f L

iver

pool

] at

05:

36 0

7 O

ctob

er 2

014

Page 5: Multiple machine JIT scheduling: a tabu search approach

consideration for a number of iterations. There are two stopping conditions: totalnumber of iterations and number of iterations without an improvement in theobjective function value.

Candidate or neighborhood generation has a large impact on the performance ofthe TS method (James and Buchanan 1998). The neighborhood can consist of acomplete enumeration of all possible candidates for that neighbor or it can be asubset of those candidates (Barnes and Laguna 1993, Song and Lee 1996). There areseveral different generation techniques for scheduling problems based on pairwiseinterchanges. James (1997) and Armentano and Ronconi (1999) incorporatethe insert method for neighborhood generation. Song and Lee (1996) and Li et al.(2004) use the swap, or pairwise interchange method. James and Buchanan (1996)and James (1997) state that from comparative studies of adjacent pairwiseinterchange, swapping of any two random jobs, and insertion of any job infront of any other job, the latter gives better results. Barnes and Laguna (1993) andJames (1997) state that a hybrid of the swap and insert method produces the bestresults.

TS memory structures to a large extent differentiate the procedure from othersimple search techniques, therefore utilization of memory structures is veryimportant to realize the full potential of the procedure. Several implementations oftabu list strategies exist in current literature; these include a simple single list strategy,using a short-term list with a long-term list for intensification and diversification,and using flexible memory structures where the list size changes over time. Examplesinclude:

. Single Short-Term Tabu List. List contains pairs of jobs – (Nowicki and Smutnicki 1998, Verhoeven

1998, Geyik and Cedimoglu 2004). List contains single jobs or job positions (generating job) – (Barnes and

Laguna 1993, Armentano and Ronconi 1999). Long-Term Tabu List

. List contains complete solutions found in previous iterations –(Verhoeven 1998, Armentano and Ronconi 1999, Jain et al. 2000)

. Flexible Memory Structures. Frequency based – (Song and Lee 1996). List portions – (Glover and Laguna 1997, Thesen 1998)

From the listings above we can see that there is a great variety of tabu list structuresand implementations. Although all have merit for their applied problems, someapproaches may work better than others depending on the characteristics of thecurrent problem. This work utilizes two tabu lists, a short-term and a long-term list.Both the short-term and long-term lists are fixed in size and contain complete jobsequences. The long-term list is used for diversification and stores ‘‘good’’ sequencesfor the search to return to when it reaches a local minima.

In the next section, we present a mathematical model of the Flow Shop withMachine Tiers Earliness-Tardiness (FMT-ET) problem and describe a TS procedurefor solving the problem. In Section 3, we describe results from testing the procedureon varying sizes of randomly generated problems and identify critical aspects ofTS for this problem. Finally, we suggest some opportunities for future research inthis area.

4902 D. A. Finke et al.

Dow

nloa

ded

by [

Uni

vers

ity o

f L

iver

pool

] at

05:

36 0

7 O

ctob

er 2

014

Page 6: Multiple machine JIT scheduling: a tabu search approach

2. Methodology

The mathematical representation of this system is in the form of a Mixed IntegerLinear Program (MILP), where binary variables are used to decide a precedence ofjobs in a sequence and the processing time, due date, and machine assignments aregiven as problem inputs. This formulation is similar to formulations presented byRadhakrishnan and Ventura (2000) and Biskup and Feldmann (2001), but has beenmodified to accommodate this specific flow discipline.

2.1 Notation

Parameters

N Total number of jobs to be processedM Total number of machines in system

NM(t) Total number of machines in tier tTT Total number of tiersptmj Processing time of job j on machine m in tier tdj Due date of job jW A large number

Indices

J Job index, j¼ 1, 2, 3, . . . ,NM Machine index, m¼ 1, 2, 3, . . .MT Tier index, t¼ 1, 2, 3, . . . ,TT

Decision variables

Ctmj Completion time of job j on machine m in tier t

Xj1j21 f job j1 precedes j2,0 otherwise

j1,j2 ¼ 1, 2, 3, . . . ,N and j1 6¼ j2.Ej Earliness of job jTj Tardiness of job j

Stm The set of jobs that are processed by machine m in tier tNumber the machines in each tier from 1 to NM(t), t¼ 1, 2, 3, . . . ,TT

i.e.Tier 1: 1, 2, 3, . . . ,NM(1),Tier 2: 1, 2, 3, . . . ,NM(2),. . .Tier TT: 1, 2, 3, . . . ,NM(TT),and

NMð1Þ þNMð2Þ þNMð3Þ þ � � � þNMðTTÞ ¼ M

2.2 FMT-ET general mathematical formulation

Objective function

MIN Z ¼X

j2STTm

Ej þ Tj

� �, m ¼ 1, 2, 3, . . . ,NMðTTÞ:

Multiple machine JIT scheduling: A tabu search approach 4903

Dow

nloa

ded

by [

Uni

vers

ity o

f L

iver

pool

] at

05:

36 0

7 O

ctob

er 2

014

Page 7: Multiple machine JIT scheduling: a tabu search approach

subject to

Ctmj1 þ ptmj2 � Ctmj2 þW 1� Xj1j2

� �t ¼ 1, 2, 3, . . . ,TT,m ¼ 1, 2, 3, . . . ,NMðtÞ,j1 j2 2 Stm

j1 6¼ j2

ð2:1Þ

Ctmj � ptmj � Cðt�1Þm0j t ¼ 2, 3, 4, . . . ,TTm ¼ 1, 2, 3, . . . ,NMðtÞ,m0 ¼ 1, 2, 3, . . . ,NMðt� 1Þ,j 2 Stm \Sðt�1Þm0

ð2:2Þ

CTTmj � Tj þ Ej ¼ dj m ¼ 1, 2, 3, . . . ,NMðTTÞ,j ¼ 1, 2, 3, . . . ,N

ð2:3Þ

Xj1j2 þ Xj2j1 ¼ 1 j1 ¼ 1, 2, 3, . . . ,N,j2 ¼ 1, 2, 3, . . . ,N,j1 6¼ j2

ð2:4Þ

C1mj � p1mj m ¼ 1, 2, 3, . . . ,NMð1Þ,j ¼ 1, 2, 3, . . . ,N

ð2:5Þ

Xj1j2 2 0, 1f g j1 ¼ 1, 2, 3, . . . ,N,j2 ¼ 1, 2, 3, . . . ,N,j1 6¼ j2

ð2:6Þ

Ej,Tj � 0 t ¼ 2, 3, 4, . . . ,TT,Ctmj � 0 m ¼ 1, 2, 3, . . . ,NMðtÞ,

j ¼ 1, 2, 3, . . . ,N,ð2:7Þ

To simplify the formulation of this model, we assume that there is a buffer betweeneach tier of the system that has infinite capacity. Also, we note that the model

generates a permutation schedule: a single sequence which is maintained between

tiers of machines, but not necessarily within a tier. For example if there are two

machines in one tier and the sequence is {1, 2, 3, 4, 5}, jobs 1 and 2 might be processed

on machine 1 and jobs 3–5 might be processed on machine 2. In this case, jobs 1 and

3 would be processed simultaneously on machines 1 and 2. If there is a tier that has

a single machine, then the sequence is strictly held.Constraint set (2.1) ensures that a job cannot begin processing on a machine until

the previous job processed on that machine is complete. Two constraints of this type

will be generated for each pair of jobs that are processed on each machine, however

only one constraint will be binding. The constraint is binding if job j1 precedes job j2.

Job precedence is determined by a set of binary variables.The constraints in set (2.2) ensure that a job does not start processing in any tier

before it has finished processing in the previous tier. This set works in conjunction

with set (2.1) to determine the completion time of each job at each tier.The earliness and tardiness for each job is calculated in constraint set (2.3).

One of these variables will be zero and the other will be the absolute value of the

difference between the due date of the job and its completion time in the final tier.Constraint set (2.4) ensures that either job j1 is processed before job j2 or job j2

is processed before job j1.

4904 D. A. Finke et al.

Dow

nloa

ded

by [

Uni

vers

ity o

f L

iver

pool

] at

05:

36 0

7 O

ctob

er 2

014

Page 8: Multiple machine JIT scheduling: a tabu search approach

Set (2.5) ensures that the completion time of each job in the first tier is greaterthan or equal to its processing time. Constraints in this set are similar to constraintsin set (2.2), but apply to the first tier only.

The last two constraint sets are definition and non-negativity constraints.The constraints in set (2.6) define the binary variables used in constraint sets (2.1)and (2.4). Constraint set (2.7) ensures that the earliness, tardiness and the completiontime of each job on each machine are greater than or equal to zero.

2.3 TS design

The TS method is comprised of five basic elements: an initial sequence, aneighborhood generator, a neighbor evaluator, a memory structure, and stoppingcriteria. In earliness-tardiness problems, there is a difference between the sequenceand the solution. The sequence defines the order in which jobs become candidates forprocessing. However, if a job is processed as soon as it becomes available, therecould be a significant earliness penalty. The solution is obtained by inserting idletime to improve the earliness component of the objective function.

Several methods have been proposed for single machine earliness-tardinessproblems to determine the initial solution (James 1997, James and Buchanan 1998,Al-Turki et al. 2001). Three fast methods include random, earliest due date (EDD),and a V-shaped schedule. EDD and V-shaped sequences have been shown to bebetter than random sequences and for certain problems V-shaped ordering is betterthan EDD. A small experiment was conducted to determine the best initial sequencegeneration method for the FMT problem, EDD or V-shaped. In each of the testcases the EDD schedule outperformed the V-shaped schedule, thus the EDDschedule was used.

The neighborhood generation method used in this work is similar to theimplementation in James (1997) and James and Buchanan (1998) which was firstintroduced in Reeves (1993). The neighborhood generation method used here isbased on pairwise interchanges of jobs in the sequence. First two parameters, thenumber of generating jobs and the window size must be defined. A generating jobcan be thought of as a pivotal point in the sequence. The generating job(s)is interchanged with (swapped), or inserted before other jobs in the sequence.The window size represents the number of jobs to the left and right of the generatingjob that are candidates for interchange or insertion among. A neighborhood isgenerated by randomly selecting a job position (the generating job) and then eitherinterchanging it with or inserting it before other jobs in a predetermined window inthe sequence. Each swap or insertion represents a new sequence; together thesesequences form the neighborhood of the starting sequence. Along with the swap andinsert methods, a third method is used here which is a hybrid of both the swap andinsert. The hybrid method does both a swap and an insert move, thus creatinga neighborhood that has the qualities of both methods, but is larger. This methodof neighborhood generation produces a subset of the total number of neighborsthat would be produced if an enumeration method was used. Reducing theneighborhood size reduces the chance that the best solution is in the neighborhood,but at the same time it reduces the computation time and allows the procedure tovisit more neighborhoods.

Multiple machine JIT scheduling: A tabu search approach 4905

Dow

nloa

ded

by [

Uni

vers

ity o

f L

iver

pool

] at

05:

36 0

7 O

ctob

er 2

014

Page 9: Multiple machine JIT scheduling: a tabu search approach

The evaluation element of TS determines the value of the objective function,given a sequence of jobs. For the ET class of problems this is not a trivial calculationdue to the fact that idle time insertion may reduce the value of the objective function.It has been shown that if the sequence is known then optimally inserting idle time canbe accomplished using linear programming (Yano and Kim 1986). Following thisapproach, we use the MILP formulation above as the evaluation element in our TSprocedure. Since the sequence is known, we add another set of constraints that forcethe jobs to be processed in the desired sequence. The resulting model can be quicklysolved to optimality, resulting in a sequence with optimally inserted idle time anda value for earliness-tardiness of each job.

Two attributes of the tabu list architecture need to be defined: what is put on thelist, and what types of lists are used. In Glover (1990) two types of lists, long-termand short-term are defined and he suggests using one in conjunction with another tointensify and diversify the search. This work utilizes both a short-term tabu list anda long-term tabu list. The short-term tabu list, which is designed to minimizecycling, contains jobs that have been selected for movement in a neighborhood. Thelong-term tabu list is used to jump from a given point, or sequence, in the solutionspace to another position in that space to diversify the search. Two diversificationstrategies have been tested in this application: (1) previous ‘‘good’’ sequences; and(2) a flip move. A flip move is defined as reversing the order of the jobs within awindow and centered around a randomly generated position in the sequence.

Once the current sequence is selected, TS checks two parameters to determine ifthe search should end. The first parameter is the number of times TS has not foundan improved solution. In this work, when the number of non-improving movesreaches the limit, the procedure performs a diversification move. Kim and Yano(1994) set this parameter to the minimum of the number of jobs at 15, which wasused as the initial setting for this parameter. The second parameter that is checked isan overall iteration limit for the procedure. If the TS has performed a certain numberof iterations then the search terminates and outputs the best configuration foundso far. The overall iteration limit was set to 1000 iterations.

2.4 TS algorithm

Notation:

MAX_ITERATIONS The maximum number of iterations the search isallowed to perform

NON_IMPROVE_MOVES The number of iterations that have been per-formed in which no improving solution has beenfound

TABU_L_SIZE The size of the short-term tabu listDIVERSIFY_MOVES The maximum number of diversification moves

to be performedNUM_GEN_JOBS The number of jobs that will be used to generate

neighborhoodsWINDOW_SIZE The number of jobs that will be interchanged with

the generating jobs in the sequenceBEST_SEQ The best sequence found by the procedure so far

4906 D. A. Finke et al.

Dow

nloa

ded

by [

Uni

vers

ity o

f L

iver

pool

] at

05:

36 0

7 O

ctob

er 2

014

Page 10: Multiple machine JIT scheduling: a tabu search approach

CURRENT_VAL The solution value of the current sequenceBEST_SOLUTION The solution value of the best sequence found

so farI Iteration counter

NON_IMPROVE_COUNTER Counter for the number of moves without

improvement

Initialization: Set the maximum number of total iterations MAX_ITERATIONS,

the number of non-improving iterations NON_IMPROVE_MOVES, the short-term

tabu list size TABU_L_SIZE, the number of DIVERSIFY_MOVES, the window

size WINDOW_SIZE, and the number of generating jobs NUM_GEN_JOBS.

Generate an initial sequence using the EDD dispatching rule. Evaluate the sequence

using the MILP to obtain the earliness-tardiness penalty for the sequence.

Set BEST_SEQ to the initial sequence, CURRENT_VAL to its evaluationand BEST_SOLUTION¼CURRENT_VAL. Let I¼ 1 and NON_IMPROVE_

COUNTER¼ 1, then proceed to step 1.

Step 1: Generate a neighborhood by randomly choosing NUM_GEN_JOBS jobs

and interchange/insert them with jobs within � WINDOW_SIZE. Evaluate each

sequence using the MILP. Select the configuration with the lowest evaluation value,label it the current configuration and set CURRENT_VAL to its evaluation value.

Go to step 2.

Step 2: If the current sequence is not tabu, insert the generating job into the

short-term tabu list at the bottom, the configuration into the long-term tabu list, and

go to step 3. If the current configuration is tabu, then compare CURRENT_VAL

to BEST_SOLUTION. If CURRENT_VAL5BEST_SOLUTION, then set BEST_SOLUTION¼CURRENT_VAL, BEST_SEQ to the current configuration,

NON_IMPROVE_COUNTER¼ 0 and go to step 4. Otherwise set the current

configuration to the neighbor with the next best evaluation value and set

CURRENT_VAL to its evaluation value. Repeat step 2.

Step 3: If CURRENT_VAL5BEST_SOLUTION, then set BEST_SOLUTION¼

CURRENT_VAL, BEST_SEQ to the current configuration and NON_IMPROVE_

COUNTER¼ 0. Go to step 4.

Step 4: If I4¼MAX_ITERATIONS then stop. If NON_IMPROVE_

COUNTER4¼NON_IMPROVE_MOVES, and NUM_DIV_MOVES_

COUNTER5¼NUM_DIV_MOVES, then diversify and go to Step 1, otherwise

stop. The best sequence is BEST_SEQ and its value is BEST_SOLUTION.Otherwise increment I and NON_IMPROVE_COUNTER by 1 and go to step 1.

3. Experimentation and results

Two distinct experiments were conducted to determine the performance of the TS

procedure for this problem. The first experiment in this section compares TS

solutions to optimal permutation schedule solutions for small problem instances.

The second experiment tests the efficiency of the TS algorithm on large problems

Multiple machine JIT scheduling: A tabu search approach 4907

Dow

nloa

ded

by [

Uni

vers

ity o

f L

iver

pool

] at

05:

36 0

7 O

ctob

er 2

014

Page 11: Multiple machine JIT scheduling: a tabu search approach

and compares the solutions to the earliest due date dispatching rule. In addition,

we identify the parameters that have the most impact on the final solution.Each problem examined in this section was solved using a Dell Precision M60�

personal workstation with an Intel� Pentium� 1.7 GHz processor. The procedure

was programmed in JavaTM and LINDO� optimization software.

3.1 Experiment I (TS compared to optimal)

Several small problem instances were solved with both the MILP and the TS solution

procedures. A set of 25 test problems was generated each with 10 jobs. The number

of tiers varied from 1 to 5 and the number of machines varied from 1 to 12.

The machine assignments were randomly generated based on the number of

machines in each tier. The processing time for each job on each machine was

randomly generated from 1 to 50 time units. Job due dates were calculated by

multiplying a uniformly distributed random number (0,1) by the sum of the

processing time for all jobs over all tiers.Three neighborhood generation methods (insert, swap, and hybrid), and two

diversification strategies (long-term list and flip) were tested. Each of the 50

problems was solved using the TS procedure with every combination of

neighborhood generation and diversification strategies. The problems were also

solved optimally using the MILP formulation in LINDO�. The optimal permutation

schedule solutions were compared to the solutions found by the TS procedure using

MILP as the evaluation mechanism. Figure 1 shows the results from the first set

of problems. In this figure, the values plotted represent the difference between the

TS solution and the optimal solution.In 17 of the 25 problem instances EDD found the optimal solution (among

permutation sequences). This shows that the EDD dispatching rule is a suitable

choice to generate the initial solution. The results in figure 1 also show that when

EDD did not find the optimal solution it found very good initial solutions and all of

the methods found the optimal solution. It appears that the neighborhood

generation method used has little effect on the solution.

0

5

10

15

20

25

30

0 5 10 15 20 25

Problem number

Dev

iati

on

fro

m o

pti

mal

EDDInsertSwapHybridInsert LTLSwap LTLHybrid LTlInsert FFSwap FFHybrid FF

Figure 1. Graphical results of the first set of small problems.

4908 D. A. Finke et al.

Dow

nloa

ded

by [

Uni

vers

ity o

f L

iver

pool

] at

05:

36 0

7 O

ctob

er 2

014

Page 12: Multiple machine JIT scheduling: a tabu search approach

However, some of the effectiveness of EDD can be explained by the method usedto set the due dates in these problems. These due dates are relatively ‘‘loose,’’ that is,they do not create very many conflicts between competing jobs. Therefore, a secondset of sample problems was generated to test more restrictive due dates. Theproblems were identical to the first set except the due dates were modified to be morerestrictive. The due dates were regenerated by multiplying a uniformly distributedrandom number between 0.3 and 0.7 by the sum of the processing time for all jobsover all tiers. Figure 2 shows the results from the second set of problems.

With restrictive due dates, EDD produced the optimal permutation solution inonly 8 of the 25 problems. (This result is consistent with the findings of Heady andZhu (1998) for the single machine ET problem.) In all cases, at least one variantof the TS procedure found the optimal solution. In most cases, the differentneighborhood generation methods perform equally well. The one case that showssignificant differences between the methods is problem 4. This problem has one tierand one machine: it is the single machine earliness-tardiness problem. The initialsolution has a very large impact on the final solution in the TS procedure, and for thesingle machine case the V-shaped schedule has been shown to outperform EDD.Problem 4 also shows that using the long-term tabu list improves the solution, andoutperforms either not using a diversification strategy or using the flip method.

The results of these experiments show that the TS procedure works well on smallFMT-ET problems, that EDD is a good choice for generating the initialconfiguration, and that the neighborhood generation method is not a significantfactor in the procedure. With these foundational results, the procedure is used tosolve larger problems. The experiments for the large problems are presented in thefollowing section.

3.2 Experiment II (TS compared to EDD and parameter analysis)

In this experiment several large problems were generated and solved using the TSprocedure and the results were compared to the EDD schedule, which worked wellon our small problems and also has been shown to produce good initial solutions forheuristic procedures (James and Buchanan 1996, 1998). The EDD schedule wasgenerated by ordering the jobs in non-decreasing order of their due dates and

0

20

40

60

80

100

120

140

160

180

0 5 10 15 20 25Problem number

Dev

iati

on

fro

m o

pti

mal

EDDInsertSwapHybridInsertLTLSwap LTLHybridLTlInsert FFSwap FFHybrid FF

Figure 2. Graphical results of the second set of small problems.

Multiple machine JIT scheduling: A tabu search approach 4909

Dow

nloa

ded

by [

Uni

vers

ity o

f L

iver

pool

] at

05:

36 0

7 O

ctob

er 2

014

Page 13: Multiple machine JIT scheduling: a tabu search approach

inserting idle time optimally using the MILP. We compare our method to EDDbecause it is not feasible to generate optimal solutions to problems of this size.(In an effort to determine the optimal solution for one of our test problems,we dedicated a computer to this task. At the time of paper submittal, the MILP hadbeen running for 5 weeks without obtaining a solution.)

Five large problems were generated randomly for this experiment. The number ofjobs was held constant at 20. The number of tiers was randomly generated froma uniform distribution with upper and lower limits of two and five, respectively.The number of machines in each tier was randomly generated uniformly from 1 to 5and the total number of machines was limited to 10. The processing time andmachine assignments of each job were randomly generated in the same manner as inthe previous experiment. The due dates were generated by summing all of theprocessing times of the jobs and adding a random amount between 100 and 150.

Each of the five instances was solved using the combined TS-MILP procedure.Table 1 compares the sum of earliness and tardiness values over all jobs for the EDDand TS heuristics. Permutation schedule solutions obtained from the TS procedurewere on average 16% better than the EDD solutions.

Convergence toward a solution was examined for two of the five problems.Figures 3 and 4 show the results from solving problem 1 with five generating jobs, awindow size of six, tabu list size of 10, number of non-improve moves set to 20 andsix diversification steps. The graph in figure 3 plots the current and best solution ateach iteration and the graph in figure 4 shows the number of non-improve moves andthe number of diversification steps. When the top curve in figure 4 reaches a value of20, diversification is performed.

Notice that the first diversification move occurs quite early in the search andmuch improvement occurs subsequent to this move. The other diversification movesoccur near the end with very little to no improvement. Similar behavior was observedfor problem two. This suggests that diversification moves early in the search havea very large impact on the final solution.

It has been shown that the general TS procedure must be modified or tuned toa specific problem type (Kim and Yano 1994). Therefore, we tested the effect ofvarious parameter levels on the final solution in this experiment to determine thesensitivity of the procedure to the settings of the parameters. A designed experimentutilizing a 2n fractional factorial design with center points was used to determine theeffects of the parameters using the first two problems in this set. Table 2 gives a list ofthe parameters and the levels used in the experiment.

The first problem instance was used as the primary test case in this designedexperiment. Three replications were performed and center points were included to

Table 1. EDD and TS results.

Problem number EDD solution TS solution % Improvement

1 700 547 21.862 616 492 20.133 66 65 1.524 120 102 15.005 225 173 23.11

4910 D. A. Finke et al.

Dow

nloa

ded

by [

Uni

vers

ity o

f L

iver

pool

] at

05:

36 0

7 O

ctob

er 2

014

Page 14: Multiple machine JIT scheduling: a tabu search approach

determine if there was curvature in the response over the parameter space. Resultsindicate that the number of non-improve moves parameter has the largest effect onthe solution and is followed by the number of diversification moves. The otherparameters showed no significant effect. Figure 5 shows a plot of the effect ofnon-improve moves and diversification steps versus the objective value response.Notice that the response is actually at a minimum near the center point of thediversification steps and on the upper parameter limit for the number of non-improve moves. This shows that as the number of non-improve moves increases theobjective function value decreases and as the number of diversification movesincreases the performance actually declines after a certain period.

500

550

600

650

700

750

0 50 100 150

Iteration

Ob

ject

ive

fun

ctio

n v

alu

e

Current solutionBest solution

Figure 3. Solution results for large problem 1.

0

5

10

15

20

25

0 50 100 150

Iteration

Mo

ves

NonImprove moves

Diversification Steps

Figure 4. Plot of non-improve moves and diversification steps for large problem 1.

Multiple machine JIT scheduling: A tabu search approach 4911

Dow

nloa

ded

by [

Uni

vers

ity o

f L

iver

pool

] at

05:

36 0

7 O

ctob

er 2

014

Page 15: Multiple machine JIT scheduling: a tabu search approach

For performance tuning the focus should be placed on these two parameters forthis type of problem. For the 20-job problem a good parameter setting would bethree generating jobs, a window size of three, a tabu list size of three, 20 non-improvemoves and four diversification steps. Another component of performance is the timein which the procedure needs to come to a final solution. Obviously, as any of theparameters increase, the solution time increases. We can measure this time bycomputing the number of evaluations (the number of times the solver is called toevaluate a new sequence). The worst case increase for each of the parameters isshown in table 3.

We would like to find the best possible solution with the minimum number ofevaluation steps. The results of the experiment show that the number of non-improvemoves has the highest impact on the final solution. The cost of increasing thisparameter is fairly high, compared to increasing the number of generating jobs orthe window size, however in our experience the improvements in the final solutionoutweigh the added cost. Performance tuning in future implementations should focuson finding the equilibrium between the number of non-improve moves and thenumber of diversification steps. The interaction between these two parametersindicates that for this environment it is beneficial to search the neighborhoods thatare ‘‘near’’ the initial sequence found using EDD.

Obj value 1

0Non-improve

−1−1

1

1

0Diversification steps

650

600

550

Figure 5. Surface plot non-improve moves and diversification steps versus objective valuefor the first problem.

Table 2. Experimental design parameters.

Levels

Parameter Low Center High

Generating jobs 3 4 5Window size 3 4 6Tabu list size 3 6 10Non-improve moves 5 10 20Diversification steps 2 4 6

4912 D. A. Finke et al.

Dow

nloa

ded

by [

Uni

vers

ity o

f L

iver

pool

] at

05:

36 0

7 O

ctob

er 2

014

Page 16: Multiple machine JIT scheduling: a tabu search approach

Solution times, in computer processing time, for the small problems using theprocedure average 12.13 s and for the large problems average 640.74 s. Optimalsolution times average 1.0 s for the small problems, and could not be obtained for thelarge problems. Notice that small problems can be solved to optimality in less timethan is required for the TS method. The benefits of using the TS procedure are onlyrealized for larger problems when optimality is intractable. Obviously, the solutiontime of the TS procedure is directly related to the number of neighbors evaluated,so any parameter that affects the number of neighbors will have an effect on thesolution time of the procedure. The number of non-improve moves parameter hasthe highest impact on solution time, and as shown above, also has the highest impacton solution quality.

4. Conclusions and future work directions

The TS performs well in terms of solution quality when compared to the optimalsolution procedure and the EDD dispatching rule. For small problems with 10 jobsat least one variant of the TS found the optimal permutation schedule in all cases.The results also show that the earliest due date dispatching rule produces good(in some cases, optimal) initial solutions which supports the decision to use it asthe initial solution generator. For the larger problems with 20 jobs the TS solutionprocedure improved the solutions found by EDD. These conclusions would indicatethat TS is a good problem solver for this type of problem once the parameters havebeen tuned. When tuning the parameters, the focus should be placed on the numberof non-improve moves and the number of diversification moves.

The paucity of current research for problems in this class allows for manyextensions to this work and future research directions. One extension could removethe a priori machine assignments and allow the procedure to select the appropriatemachines for processing, perhaps with machine-dependent processing times. Severalperformance tuning issues are still open: neighborhood generation, memorystructures and interaction, and diversification strategies. One interesting approachto neighborhood generation stems from the evaluation method used in this work. Byusing a modified MILP the values of the deviational variables are available as eachneighbor is evaluated. These values show not only the jobs that are contributingto the objective function value, but also if they are early or late. The neighborhood

Table 3. Worst case number of increased evaluations by parameter.

Parameter Number of extra evaluations

Window size 2Generating jobs (2*window size)Non-improve moves #generating jobs* (2*window size)a

Diversification steps #non-improve moves *(#generating jobs* (2*window size))a

aThis is assuming that no improvements are found in this line of the search.

Multiple machine JIT scheduling: A tabu search approach 4913

Dow

nloa

ded

by [

Uni

vers

ity o

f L

iver

pool

] at

05:

36 0

7 O

ctob

er 2

014

Page 17: Multiple machine JIT scheduling: a tabu search approach

generation method could capitalize on this information by selecting generating jobsfrom among those that have large earliness-tardiness values.

References

Al-Turki, U., Fedjki, C., et al., Tabu search for a class of single-machine scheduling problems.Comput. Oper. Res., 2001, 28, 1223–1230.

Armentano, V.A. and Ronconi, D.P., Tabu search for total tardiness minimization inflowshop scheduling problems. Comput. Oper. Res., 1999, 26, 219–235.

Baker, K.R. and Scudder, G.D., Sequencing with earliness and tardiness penalties: a review.Oper. Res., 1990, 38, 22–36.

Barnes, J.W. and Laguna, M., Solving the multiple-machine weighted flow time problem usingtabu search. IIE Transact., 1993, 25, 121–128.

Biskup, D. and Feldmann, M., Benchmarks for scheduling on a single machine againstrestrictive and unrestrictive common due dates. Comput. Oper. Res., 2001, 28, 787–801.

Geyik, F. and Cedimoglu, I.H., The strategies and parameters of tabu search for job-shopscheduling. J. Intell. Manuf., 2004, 15, 439–448.

Glover, F., Tabu search – Part I. ORSA J. Comput., 1989, 1, 190–204.Glover, F., Tabu search – Part II. ORSA J. Comput., 1990(a), 2, 4–32.Glover, F., Tabu search: a tutorial. Interfaces, 1990(b), 20, 74–94.Glover, F. and Laguna, M., Tabu Search, 1997 (Kluwer Academic Publishers: Boston).Heady, R.B. and Zhu, Z., Minimizing the sum of job earliness and tardiness in a multimachine

system. Int. J. Prod. Res., 1998, 36, 1619–1632.Jain, A.S., Rangaswamy, B. and Meeran, S., New and ‘‘stronger’’ job-shop neighbourhoods: a

focus on the method of Nowicki and Smutnicki (1996). J. Heurist., 2000, 6, 457–480.James, R.J.W., Using tabu search to solve the common due date early/tardy machine

scheduling problem. Comput. Oper. Res., 1997, 24, 199–208.James, R.J.W. and Buchanan, J.T. A neighbourhood scheme with a compressed solution

space for the early/tardy scheduling problem, University of Canterbury, Department ofManagement, 1996.

James, R.J.W. and Buchanan, J.T., Performance enhancements to tabu search for the early/tardy scheduling problem. Eur. J. Oper. Res., 1998, 106, 254–265.

Kim, Y.-D. and Yano, C.A., Minimizing mean tardiness and earliness in single-machinescheduling problems with unequal due dates. Nav. Res. Log., 1994, 41, 913–933.

Lashine, S., Foote, B. and Ravindran, A., A nonlinear mixed integer goal programming modelfor the two-machine closed flow shop. Eur. J. Oper. Res., 1991, 55, 57–70.

Li, W.D., Ong, S.K. and Nee, A.Y.C., Optimization of process plans using a constraint-basedtabu search approach. Inter. J. Prod. Res., 2004, 42, 1955–1985.

Li, Y., Man, K.F., Tang, K.S., Kwong, S. and Ip, W.H., Genetic algorithm to productionplanning and scheduling problems for manufacturing systems. Prod. Plan. Control,2000, 11, 443–458.

Løkketangen, A. and Glover, F., Solving zero-one mixed integer programming problemsusing tabu search. Eur. J. Oper. Res., 1998, 106, 624–658.

Mondal, S.A. and Sen, A.K., Single machine weighted earliness-tardiness penalty problemwith a common due date. Comput. Oper. Res., 2001, 28, 649–669.

Nonobe, K. and Ibaraki, T., A tabu search approach to the constraint satisfaction problemas a general problem solver. Eur. J. Oper. Res., 1998, 106, 599–623.

Nowicki, E. and Smutnicki, C., The flow shop with parallel machines: a tabu search approach.Eur. J. Oper. Res., 1998, 106, 226–253.

Pandelis, D.G. and Teneketzis, D., Optimal stochastic sequencing with earliness and/ortardiness costs. 32nd Conference on Decision and Control, San Antonio, TX, IEEE, 1993.

Radhakrishnan, S. and Ventura, J.A., Simulated annealing for parallel machine schedulingwith earliness-tardiness penalties and sequence-dependent set-up times. Inter. J. Prod.Res., 2000, 38, 2233–2252.

4914 D. A. Finke et al.

Dow

nloa

ded

by [

Uni

vers

ity o

f L

iver

pool

] at

05:

36 0

7 O

ctob

er 2

014

Page 18: Multiple machine JIT scheduling: a tabu search approach

Reeves, C.R., Improving the efficiency of tabu search for machine sequencing problems.J. Oper. Res. Societ., 1993, 44, 375–382.

Skorin-Kapov, J. and Vakharia, A.J., Scheduling a flow-line manufacturing cell: a tabu searchapproach. Inter. J. Prod. Res., 1993, 31, 1721–1734.

Song, J.-S. and Lee, T.-E., A tabu search procedure for periodic job shop scheduling.Comput. Indust. Engin., 1996, 30, 433–447.

Tamaki, H., Komori, T. and Abe, S., A heuristic approach to parallel machine schedulingwith earliness penalties. IEEE, 1999, 5, 1367–1370.

Tamaki, H., Nishino, E. and Abe, S., A genetic algorithm approach to multi-objectivescheduling problems with earliness and tardiness penalties. IEEE, 1999, 9, 46–52.

Thesen, A., Design and evaluation of tabu search algorithms for multiprocessor scheduling.J. Heurist., 1998, 4, 141–160.

Valls, V., Perez, M.A. and Quintanilla, S.M., A tabu search approach to machine scheduling.Eur. J. Oper. Res., 1998, 106, 277–300.

Verhoeven, M.G.A., Tabu search for resource-constrained scheduling. Eur. J. Oper. Res.,1998, 106, 266–276.

Yagiura, M. and Ibaraki, T., On metaheuristic algorithms for combinatorial optimizationproblems. Syst. Comput. Jpn, 2001, 32, 3–25.

Yano, C.A. and Kim, Y.-D., Algorithms for Single Machine Scheduling Problems andMinimizing Tardiness and Earliness, 1986 (The University of Michigan, Department ofIndustrial & Operations Engineering: Ann Arbor, MI).

Multiple machine JIT scheduling: A tabu search approach 4915

Dow

nloa

ded

by [

Uni

vers

ity o

f L

iver

pool

] at

05:

36 0

7 O

ctob

er 2

014