MIT LIBRARIES 3 9080 02237 361 4_ 1 A.-^pri/lEtfTi HD28 .M414 DEWEY n3> ALFRED P. WORKING PAPER SLOAN SCHOOL OF MANAGEMENT Slack-based Lower for Bound and Heuristic Permutation Flowshop Models Anantaram Balakrishnan, Srimathy Gopalakrishnan, and Atsushi Kurebayashi Sloan WP# 3573-93 June, 1993 MASSACHUSETTS INSTITUTE OF TECHNOLOGY 50 MEMORIAL DRIVE CAMBRIDGE, MASSACHUSETTS 02139 Slack-based Lower for Permutation Bound and Heuristic Rowshop Models Anantaram Balakrishnan, Srimathy Gopalakrishnan, and Atsushi Kurebayashi Sloan WP# 3573-93 June, 1993 MASSACHUSETTS INSTITUTE OF TFrHWQi OGY NOV 1 4 2000 LIBRARIES Slack-based Lower Bound and Heuristic for Permutation Flowshop Models^ Anantaram Balakrishnan Sloan SchcxDl of Management M. I. T., Cambridge, MA 02139 Srimathy Gopalakrishnan Operations Research Center M. I. T.. Cambridge, MA 02139 Atsushi Kurebayashi Nippondenso Co. Ltd. Kariya-city, Japan ABSTRACT This paper addresses optimal job sequencing decisions for various classes of permutation We first describe a framework to classify flowshop flowshops. the level of intermediate storage, job transfer the interrelationships bound mechanism, and objective function. heuristic to generate effective job sequences. locally a trend, is and the assignment-patching effective results show that, compared when job processing times heuristic performs well for all Supported in part ai^e within 10% from by a research grant from are models. improving the heuristic solution using a two-exchange procedure, we are able generate solutions that ' discuss and describe an assignment-patching Our computational previous approaches, the slack-based lower bound By We between various flowshop models, develop a new slack-based lower for the total processing time of each machine, random or have scheduling problems based on optimal for most scenarios. MITs Leaders for Manufacturing program to to Introduction 1. Flowshop scheduling involves sequencing that follow the same processing flowshop scheduling a given set of jobs (or products, items, batches) literature cites many manufacturing and service applications such as sequencing programs on a computer system, managing operations at chemical and other continuous processing plants, and assembhng consumer durable products on an assembly Flowshops are inherently easier The route through successive stages (or operations, machines). to manage compared line. to job shops; they offer advantages of lower inventories, quick response, and rapid feedback for process control and improvement Consequendy, companies with complex manufacturing operations seek to streamline their product flows by creating "factories within the factory" (Skinner [1974]) using, say, group technology methods; this rationalization exercise often network of embedded flowshop operations. The transforms a huge job shop into a accentuated this trend. For instance, several electronics companies assembly lines that can each assemble With more than two machines, jobs in a permutation flowshop Kan is the many machines has availability of flexible now operate mixed-model different circuit boards in small lot sizes. problem of minimizing the makespan for known to be NP -complete (Lawler, Lenstra, and Rinnoo\ [1982]). Consequently, research has focussed on determining developing exact (enumerative) and heuristic algorithms (see, for good lower bounds, and example, McMahon Burton [1967], Campbell, Dudek and Smith [1970], Reddi and Ramamoonhy [1975], Dannenbring [1977], Lageweg, Lenstra, and Rinnooy Kan [1980], Szwarc [1983], Nawaz, Enscore, and Ham and [1972], Baker [1978], King and Spachis [1983], Park, Pegden and Enscore Hundal and Rajagopal [1988], and Rajendran and Chaudhari literature deals a given set of [1990]). The 1 19841. vast majority of this with the problem of miniming makespan for a permutation flowshop with infinite intermediate storage capacity (hence, machines are never blocked). and unrestricted or free flow of jobs We refer to this model between machines as the "standard" flowshop model. Other models covered be processed without waiting in the literature include the no-wait case in which each job must intermediate operations at (e.g., Reddi and Ramamoonhy Szwarc [1983]), and systems with limited or no intermediate storage between stages Leisten [1990]). environments Some (e.g., recent McCormick This paper develops and We scheduling models. work has addressed optimization models problems based on the lower bounds and heuristics for several different flowshop describe (in Section 2) a scheme for classifying flowshop We between these eight models and explore programming formulations. Section their interrelationships, 3 develops a the slack or forced idle lime of minimum makespan mechanism, consider four different intermediate storage-job transfer combinations, and two objective function s-makespan and cycle time. examines (e.g., for cyclic scheduling level of intermediate storage capacity, type of job transfer and optimization objective. 1972|, et al. [1989]). tests first f To clarify we examine the distinction their integer new slack-based lower bounding method each machine to compute a lower bound on that the or cycle time. Section 4 describes an assignment-patching heuristic algorithm, motivated by principles underlying no- wait scheduling, that solves a traveling salesman subproblem using estimates of the slack time between successive jobs. we In Section 5. apply the lower bounding and heuristic method to different flowshop models, and compare their performance with previous approaches method for the standard nxxiel). When (e.g., Lageweg et al.'s the job processing times are increasing or decreasing trend, our slack-based lower bounding models; the bound is random or have an method performs well for all not as effective for problem instances with correlated processing times The assignment-patching heuristic [1970] heuristic algorithm for local [1978] lower bounding improvement procedure, all compares favorably with Campbell, Dudek and Smith's models and processing time this heuristic distributions. Augmented with appears to be a versatile and effective method to generate near-optimal flowshop schedules for different contexts. a ) 2. Permutation flowshop scheduling: Alternative models and their interrelationships Given n available jobs and sequencing the n jobs to m machines, the flowshop scheduling problem optimize some criterion of interest. All jobs have the sequence but different processing times, machines can process only one job cannot undergo simultaneous processing every machine processes the jobs in a certain in the sequence, they follow the that the schedule at order. Thus, after we common a classification i.e., machines are not is empty commencing operations on assume idle unless (i.e.. machines the next job. the optimization objective might vary. flowshop scheduling models discussed scheme We context, the scheduling problem might include certain constraints on material storage and movement, and between the and jobs release jobs into the system they are "blocked" by downstream machines, or the upstream queue Depending on the application at a time, discipline at all intermediate queues. does not contain any "unforced" idleness, are "starved"), or timing constraints prevent same processing multiple machines. In permutation flowshops. same FCFS involves that is analagous to Graham et al.'s in the literature, To we distinguish flrsi descnbe (1979) framework to classify general machine scheduling problems based on the machine environment, job characteristics. and optimality criterion. We illustrate the differences between the various flowshop models in terms of their integer programming formulations, and relate their respective upper and lower bounds based on these formulation differences. We also introduce a new objective function, cycle time minimization, that applies to flowshops with cyclic scheduling policies. 2.1 Flowshop model classification We classify flowshop scheduhng models based on three problem charactenstics: ( 1 intermediate storage capacity, (2) job transfer mechanism, and (3) optimization objective. Intermediate storage capacity 2.1.1 Intermediate storage capacity refers to the maximum number of jobs that an intermediate queue between two successive stages can accommodate. The standard flowshop scheduling model (addressed by Johnson [1954] and assuming others) ignores such that intermediate storage capacity is infinite (or > queue limits, effectively We denote (n-1)). problems with unlimited intermediate storage capacity as IIS (infinite intermediate storage) problems. In applications, upstream operations can be blocked capacity, and so we must due to inadequate downstream storage explicitly account for this capacity constraint in the scheduling model. For instance, the length of the conveyor segment connecting adjacent of)erations electronics assembly line limits the number of boards waiting We refer to tightly coupled flowshops with limited FIS (finite intermediate storage) systems. storage capacities are zero as the that we some consider in this paper, NIS we can NIS problem instance by introducing to be processed at an in each station. (< (n-1)) intermediate storage capacity as We distinguish the special case when all intermediate (no intermediate storage) case. For the flowshop models transform any FIS problem instance into an equivalent dummy intermediate operations with zero processing times, one corresponding to each intermediate storage location. Therefore, in our subsequent discussions, we consider only two options for intermediate storage: IIS and NIS. Job transfer mechanism 2.1.2 The second flowshop characteristic, yo^ transfer mechanism, associated with nx)ving jobs to ot from each machine. refers to the timing constraints We consider three types of job transfer mechanisms: /ree/7ow (FR), no wait (NW), and synchronized (SYN). The FR case corresponds to unrestricted transfer of jobs from machines except due to downstream storage capacity constraints. this job idle), if and machine the When a machine finishes processing a job, we can immediately unload downstream queue start is not full (or, in the processing the next available job until the in downstream machine completes 4- NIS case, if the downstream machine queue; otherwise, the job waits its processing. The FR in the discipline often is applies to flowshops with asynchronous materials handling systems that use pallets to transfer products between machines. The standard flowshop scheduling model assumes an IIS system with FR job The transfers. NW case represents the most restrictive job transfer mechanism. once a job is staned (i.e., any intermediate waiting released for the (at first processing step) it Under scheme. this must be completed without intermediate machines or in storage); hence, NW systems do not have intermediate storage capacity. Hot roUing operations provide one example of NW' scheduling. In this context, the flowshop is a series of hot rolling mills connected by conveyors, and each incoming job or workpiece is a sohd, rectangular metal ingot. The successive rolUng mills progressively reduce the thickness and elongate the workpiece: the finished products are plates or sheets with varying thicknesses and lengths. time at The processing each rolUng mill varies by job, depending on the starting and finished dimensions of the workpiece. Each ingot elevated temperature to the next without staggered ensure The is preheated before is critical it is released for processing; since maintaining the for hot rolling, the workpiece must proceed from one rolling any interruptions. Consequently, the release of ingots to the line mill must be NW processing. third job transfer mechanism, synchronized flow, is common in assembly systems that use a single conveyor belt with equally pitched fixtures to transpon workpieces from one station to the next. In the SYN system, the process coordinated across machines, at the same instant of time. until all other machines i.e., all When a start times (and job unloading times) are machines stan processing the next available job machine completes its operations on a job, finish processing their current jobs; the unload the current job, and load the job Since having infinite storage capacity at (if it queue holds this job conveyor then moves foi^vard available) in the next position on any stage effectively decouples the to the conveyor. line at that stage, consider only the NIS case (and hence the FIS case using our transformanon) with -5 in SYN we tlov. 2.1.3 Optimization objective the job sequence that minimizes The standard flowshop scheduling model seeks i.e., the last machine. on the completion time of the last job in the sequence Some makespan. researchers have considered alternative performance measures such as minimizing the weighted sum of job completion times, or reducing lateness or tardiness (with respect to given job due dates). For periodic or cyclic scheduling environments intervals, the interval time for start interval time machine is of the the first last interval time over all machines. the length of the scheduling cycle job on that machine. Thus, (i.e., To The cycle time for a group of n jobs proponional all of its we focus on the M and C, respectively. is relevant interval time, for other machines after a machine completes discussions, the the time between the release of successive batches) must machines. This objective to the length is achieve regular (repeating) processing schedules. be greater than or equal to the cycle time. Another objective function of interest interval time of time processing times on the machine plus any forced idle time due to starvation, blocking, or timing constraints. maximum at regular We define the interval time of a machine as the elapsed job and the completion of the sum of job same schedule each machine and the cycle time for each batch of n jobs are important pjerformance metrics. between the that repeat the all its when example, if processing minimum makespan and Our observations concerning is the total the cost of operating a machine is operators can be reassigned to in a cycle. In our subsequent cycle time objectives which we denote as cycle time also apply to the total interval time objective. We can use these three problem characteristics-intermediate storage capacity, job transfer mechanism, and optimization objective-to distinguish between various flowshop scheduling contexts. Thus, NIS/FR/M no intermediate storage but refers to the free problem of minimizing makespan flow job transfers. As we have in a indicated, not flowshop with all combinations of options are compatible or practical; for instance, infinite intermediate storage is ingore the nS/SYN IIS/NW/M is not meaningful since having unnecessary when jobs are not permined to wail. Similarly, we combination. We will consider four combinations of intermediate storage and job transfer characterisiics-IIS/FR. NIS/FR, NIS/NW, and NTS/S YN-with each of M and C. objective functions cycle, i.e., we For the NIS/SYN/C nxxiel, many consider only a single scheduling of the flowshop scheduling models discussed not necessarily exhaustive. For instance, literarare, but is different batch sizes for processing and intermachine we have In this section, not considered systems with transfers, or batch processing stations we and bounds first for different mixed present a models integer formulation for the standard model, and discuss enhancements needed to incorporate intermediate storage capacity limitations NW and SYN flow, and cycle time minimization. We are given n jobs, require processing at machines k Pjj^ at in the heat treatment ovens) that can simultaneously process multiple jobs. 22. Formulations NIS), machine for the standard k, for all j = = 1, ..., n, m in 1 and k = j = 1 (i.e.. . . n. that sequence. Job j requires a processing time of 1, ...,m. The integer programming formulation flowshop scheduling problem uses the following three sets of decision variables: if we assign job otherwise; |0 =1^ X 'J 2.2.1 two ignore the synchronization requirements to dovetail adjacent cycles. This classification scheme covers (e.g., we the Tj^ = starting time of the S^^ = processing time of the i j to the job i'*^ i'^ in the job position in the sequence, and sequence on machine in the k; and, sequence on machine k. Minimum makespan models We first formulate the standard model, and then indicate how makespan models differ from the standard formulation. -7- the other three minimum The Standard model: IIS/FR/M minimize subject ^nm "* (2.1) ^nm to: Sequencing constraint: for all j = 1, ..., n. [2.2) for all i = 1, .... n, (2.3) for k = 1=1 n Processing rime equations: all 1, ..., m, 1, m-1, i = 1, .... (2.4) n. J=l Job starting time constraints: ^i(k+l) Machine starting time "^(i+Dk ^ "^ "^ik for all k ^ik = ..., i = n. (2.5) n -1, (2.6) 1 constraints: ^ "^ ^ik ^ik for all k = for all i, j i = m, 1 i = 1 Non- negativity and integrality constraints: Xij € {0,1} for all The objective function n'*^ job in every job sequence on the is (2.1) last = 1, ..., n, 1, ...,n, minimizes the makespan, which and k = is 1 we j in the to the i'^ position in the equal to the processing time of job downstream machine (k+1) can j start i'^ that sequence, and each position contains only one job. sequence, then on machine k. processing the job, while constraint (2.6) ensures that finishes the (2.7h) machine. The sequencing constraints (2.2) and (2.3) ensure assigned to one position assign job m. the completion time for the Equations (2.4) determine the appropriate processing time for each job If (2.7a) X- = 1 -8 chosen sequence. and equation (2.4) sets S|^, Constraint (2.5) specifies that the i'*' job only after machine k completes machine k stans processing the job. in the (i+1)^' this job only after it The NIS models: With soon as infinite intermediate storage its op>erations at that machine k immediately However, the i'*' for the must wait and k can then NIS in machine after the i'^ job is unloaded from machine k as are completed. Therefore, the (i+1 job i'*' free flow, the is )^' job can completed; constraint (2.6) expresses start on this condition. case, since the system does not have storage capacity between machines. machine k start and machine (k+1) completes the (i-1)^ job; machines (k+1 until processing the i'*^ and (i+1)^' jobs. ) The following machine blocking constraint imposes this requirement. Blocking constraints: ^ Vl)k Adding this set forallk=l T,(^^l) of constraints to the nS/FR/M i=l m-1, n-1. (2.8) formulation gives the formulation for the NIS/FR/M model. The NIS/NW/M and NIS/SYN/M models that we discuss next also contain these constraints. No-wait and Synchronized flow models with NIS: In addition to the blocking constraints (2.8), the no-wait starting time for the machine, i"^ job on machine (k+1) to be equal to its model NIS/NW/M requires the completion rime on the previous i.e.. No-wait constraints: %+!) For the = NIS/SYN/M Ty^+^ik forallk=l m-1, i=l n-1 (2.9i model, the job staning times must satisfy both the blocking constraints (2.8) and the following synchronization constraints: Synchronization constraints: Vl)k = %.l) forallk=l -9- m-1, i = l n-1. (2.10) processing consecutive jobs (since the Consffaints (2.10) require adjacent machines to start system has no intermediate storage) time. To summarize, the standard at the same IIS/FRAI model the core formulation to is which we add various constraints on the job starting times in order to nxxlel the NIS/FR/M, NIS/SYN/M flowshop constraints (2.8). while the scheduling problems. These In addition, the NlS/SYN/M model However, we as discuss NlS/NW/M model models all require the blocking requires the no-wait constraints (2.9i. contains the synchronization constraints (2.10). Note that the minimum makespan models do idleness" condition since the latter three NIS/NW/M. and not require an explicit constraint to enforce the "no unforced problem always has an optimal solution satisfying later, certain minimum this condition. cycle time models require a separate constraint for this purpose. Lower bounds: IIS/FR/M is a relaxation of the remaining three additional blocking constraints (2.8)), and NIS/SYN/M. NIS models NlS/FR/M is (all the NflS a relaxation of models contain NIS/NW/M the and Therefore, for a given set of problem parameters (number of machines and jobs. processing time on each machine), optimal value (makespan) of the IIS/FR/M model or any lower bound on (a) the is a valid lower bound on the optimal values for the optimal values of the In Section 3, observation NIS/FR/M model optimal value of the (b) the we (a), NIS/NW/M and or all its three is a valid lower bound on models. describe a slack-based lower bound for the IIS/FR/M model which, b> also underestimates the optimal subsequently improve these constraints in the latter makespan for the NIS models. We lower bounds by accounting for the additional timing NIS models. 10 value NIS models; and. lower bound NIS/SYN/M this Upper bounds: Given any job sequence O, we can choose timing constraints for each of the four models. optimal for nxxlel P constraints, if it appropriate job starting times that satisfy the We the objective value (makespan), NIS/FR/M, NIS/NW/M, or NIS/SYN/M. What and for the different SYN models can model to the between the a-optimal the relationship likewise, schedules for the \W same any a-optimal NIS/FR schedule relationship that upper bounds. In particular, if we observed Mp denotes ^IS/FR/M - is for the lower the a-optimal "^^ '^slIS/NW/M' ^NIS/SYN/M " For the special case of two-machine flowshops, we can show and NlS/SYN/M models Minimum The one of IIS/FR'M. makespan P, then: ^IS/FR/M 2.2.2 is be adjusted to produce a feasible (but possibly not a-optimal) for the feasible for the IIS/FR case. Therefore, the for is where P We note that the a-optimal models? NIS/FR model with equal or lower makespan; bounds also applies o- is processes jobs in the given sequence o, satisfies the model's timing and minimizes makespan values say that a schedule of starting times integer all have a common that the ' '-^'' NIS/FR/M, NIS/NW/M. optimal schedule. cycle time models programming formulations for the minimum cycle time models contain the previous sequencing and timing constraints (2.2) to (2.7), and the special constraints (2.8) to (2.10) for the NIS versions. In addition, the cycle time formulations require a new set of decision variables and constraints to model the cycle time objective, and two of the four models require special constraints to prevent unforced idleness. To express cycle time in terms of the sequencing and timing decision variables, interval time variables l^, for all k = 1, ..., the schedule. Since the interval time for m, and a variable machine k - 11 is C we define representing the cycle time of the difference between the completion time for the last (i.e., n'*') job and the start time of the first job on that machine, we introduce the following defining equations: Interval time equations: Since cycle time is T„,^S^-T„ = k maximum the interval time l^ forallk=l over all the m. machines k, (2.12) we add the cycle time constraints: C and the optimization objective > for all k I,^ = 1, m, ..., (2.13) is minimize C. (2 14) For the NIS/SYN/C model, the synchronization constraints (2.10) ensure not have unforced idleness. For instance, the machines 2 and idle only when 1, respectively, at the the input queue is same first and second jobs start any schedule that machines are empty. However, the DS/FR/C and NIS/FR/C models queue (otherwise, we can reduce the cycle time by postponing the that processing on time. Similarly, in the no-wait case, require additional constraints to prevent machines being ready but idle Note machines do that when jobs first are waiting in and subsequent does not have unforced idleness must process the first job jobs). in the sequence without intermediate waiting. Therefore, for the IIS/FR/C and NTS/FR/C models we add the following set of constraints to enforce the no- wait requirement for the fu-st job. No-wait processing for first job: Tlk These constraints are Adding makespan forallk = 2 "^Lk-l+Si^ sufficient to ensure feasibility of the schedule, that processes the first remaining jobs = job without intermediate waiting, to satisfy the we can m. i.e., (2.15) given any schedule adjust the starting times for the no unforced idleness condition without increasing the cycle time. constraints (2.12), (2.13) and (2.15) to formulation (2.2) to (2.7) of the standard tTKxlel IIS/FR/M, and replacing the objective function (2.1) with (2.14) gives the 12 integer programming formulation for the IIS/FR/C model. The NIS/FR/C model has the additional blocking constraints (2.8); replacing constraints (2.15) with the no- wait constraints (2.9) or the synchronization constraints (2.10) in the NIS/NW/C or NIS/SYN/C NIS/FR/C formulation gives the formulations, respectively. Lower bounds: IIS/FR/C is a relaxation of the NIS/FR/C model, which in turn is a relaxation of MS/NW/C (since constraints (2.15) are a subset of the no-wait constraints (2.9)). Therefore, the optimal value or a lower bound for IIS/FR/C However, unlike the to the other. maximum value, over We can set bound is for NIS/FR/C and NIS/NW/C. "unrelated" to NIS/FR/C since these of constraints each (constraints (2.10) and (2.15)) that do not A naive lower bound on the optimal cycle time of NlS/SYN/C all also underestimates the models). a valid lower makespan models, NIS/SYN/C two formulations have one belong is machines minimum k, of the total processing time TPj. on machine k cycle times for the IIS/FR/C, NIS/FR/C, and is the (this value NIS/NW/C possibly improve this bound by adding a lower bound on the machine idle times due to synchronization effects. Upper bounds: To relate the compare upper bounds for various models, we consider a specific job sequence a. and the cycle time of the o-optimal schedule (with respect to the cycle time criterion ) for each model. For any given job sequence a, the job starting times for the NIS/N'W/C model's O-optimal schedule feasible for is feasible for nS/FR/C. Therefore, ^IIS/FR/C - The o-oprimal schedule NIS/FR/C; likewise, the o-optimal schedule for NIS/FR/C if C^ denotes SlIS/FRyC for - the o-optimal cycle time for S(IS/NW/C- NIS/SYN/C might entail some model is P. then: '" '^' intermediate waiting time for the first job (due to synchronization constraints) and, therefore, does not necessarily satisfy the no unforced idleness assumption for the NIS/FR/C model. However, we could develop an upper 13- bound for NIS/FR/C by adding that the first In job must wait summary, at for NIS/S YN/C cycle time an estimate of the any machine the different and solution principles to the to ensure to the other related, models as well. develops a new slack-based lower bound for the IIS/FTl model, and extends and the NIS/FR cases. Section 4 proposes a time synchronous operation. flowshop scheduling models are closely one model might apply maximum common heuristic it and the bounds The next section NIS/NW to the method. Slack-based lower bound for Makespan and Cycle Time 3. Since the minimum makespan problem for flowshops with more than 3 machines is NP- complete, several authors have focussed on developing efficient procedures to estimate the smallest possible in an makespan for a given problem instance. enumeration procedure such as branch-and-bound eliminate suboptimal job sequences or stop the search optimal. Lageweg, Lenstra, and Rinnooy Kan [1978] We can then (e.g., when McMahon the generalizes and outperforms previous lower bounds on the bound 3.1 for both the close to will denote as the to generate the bound; minimum makespan that LLR it for the provides a lower makespan and cycle time minimization models. The slack-based bound belongs for the IIS/FR/M to the class of model machine-based bounds processing time of a particular machine. Machine-based bounds McMahon we new slack-based procedure Machine-based lower bounds [1965], is to describe an effective lower bounding method, solves several two-machine flowshop subproblems section proposes a and Burton [1967]) incumbent solution procedure for the standard flowshop model. This method, which IIS/fWM model. This use these lower bounds that focus (e.g., Ignall on the total and Schrage [1969]) underestimate the makespan by adding the following two terms to the total processing time TPj^ on a machine k: 14 (i) pre-k processing time: the first (ii) minimum (k-1) machines and reach machine post-k processing time: the the remaining minimum (m-k) machines after The maximum value of this sum over makespan, the time for the i.e., we compute the ail k, first job to complete processing on the and time required to complete processing the machine last job on k. machines k gives a valid lower bound on the minimum machine-based lower bound M on the minimum makespan for IIS/FR/M model as foUows: M = ^^'^^^^^ [M(k)], M(k)= where TPu + ,•"'" (3.1) {Qik + R,k} for all k i^k for all = k = 1, ..., m, (3.2) 1, m, (3.3) ..., (3.4) (3.5) M(k) is is the makespan lower bound obtained by using machine k the total processing time processing time for job first and j on machine and Qm^ and Rj-j^ correspond respectively and the post-k processing time for job j'. Jobs jobs in the sequence. The last k, as the reference machine. minimum value of [Q-^ + The LLR method generalizes this machine-based in and over R..|^} gives an underestimate of the total pre-k and post-k processing time j j' all TP|, to the pre-k are candidate job pairs j and any feasible schedule bound by considering a block of intermediate machines, say, from machine kl to machine k2, instead of a single reference machine k. makespan Suppose we can evaluate a lower bound to complete all (or the optimal value) jobs on machines kl to k2, assuming available (at time 0) at machine kl. Then, adding this jobs become simultaneously makespan or smallest possible pre-k j and post-k2 processing times over 15 all all on the minimum its lower bound job pairs j and j' to the gives a lower j' ) bound on the minimum makespan for the original m-machine problem. lower bound (or optimal value) of the makespan for machines kl computes the overall lower bound M denotes the LLR method to k2, the for as follows: maximum = If L(k:l ,k2) (3.6) M.(kl,k2), kl,k2=I....m, k2>kl where M(kl,k2) = L(kl,k2) + how Let us discuss kl = k2 = (i) if LLR bound k, is compute the same (iii) if ^^^ ^'^ ^^^^^ (Qjkl+RjTcl) the kl-to-k2 = ^^ ^ ^'^ bound the LLR method computes (kl + 1) to (k2-l), to transfer each job firom L(kl,k2) by treating all (i.e., intermediate these machines machine kl to machine k2). modifying the job processing times, Johnson's algorithm determines the machines By appropnately minimum makespan two-machine flowshop relaxation with intermediate job transfer delays. The LLR bound remains all the L(kl Jc2) for these two machines, and effectively introduce a delay, equal to the total intermediate processing time on of and (3.2); machines except machines kl and k2 as non-bottleneck machines this k, that: kl and k2 are adjacent machines, then Johnson's algorithm computes i.e., k2 > (kl+1), then sequence for - ^1.(3.7) makespan lower bound L(kl,k2). Note as the previous machine-based minimum makespan the ^ then L(kl,k2) equals the total processing time TP,^ on machine k2 = (kl + 1), (ii) if to ..^j'" . valid even m(m-l)/2 possible machine if we pairs. consider only a subset of machine pairs k Since instead of a single reference machine, this it bound 1 . k2 instead considers a block of consecutive machines is superior to the machine-based bound (3. 1 but requires additional computational effon (O(m^) applications of Johnson's algorithm). 3.2 The slack-based bound for IIS/FR The LLR method has proven very models effective in accelerating branch-and-bound solution procedures for the IIS/FR/M models (Lageweg et al. [1978]). However, because it uses Johnson's algorithm to solve the two-machine flowshop relaxation problems, the bound applies - 16- HS/FR/M model. The only to the difficulty, but the single slack-based bound that machine version we that we describe next overcomes this discuss might produce infenor bounds for the IIS/FR/M model. The key observation that motivates the slack-based bound remains valid even if we (i) the machine-based is that replace the total processing time TPj^ in (3.2) with any valid lower bound on the interval time of machine components: approach The k. interval time the actual processing time TPj^ for the n jobs I,^ consists of on machine k, and two (ii) the slack or "forced" idle time on machine k due to starvation, blocking, or job transfer timing constraints. If we can then use the processing time information to determine a lower bound on the slack time. we can strengthen the machine-based bound (3.2). Next, lower bound for the slack time in an nS/FR system. Since intermediate storage and job transfer system single machine, this lower bound appUes other model types as well (except the To times, 1) , we nS/FR discuss is compute interval time for a makespan and cycle time versions of NIS/SYN/C model as we a discussed in the Section 2.2.2). gain insights about the relationship between machine slack time and job processing let us examine the Gantt chart and machine machine k. Recall that shown S^ denotes Figure 1(a) shows the case k. in Figure 1 for two adjacent machines, machine (k- the processing time of the when completes on machine (k-1 Figure after machine k busy with prior jobs when machine (k-1) completes is it ); in 1 (b), the h"^ We let 5^ denote the cumulative slack time between the = 1 n, and all k = 2, ..., m. As Figure job shows, following inequality: - 17- first this at in sequence on on machine k job must wait since this job. IIS/FR system with no unforced idleness, the fu^t job does not wait ..., i'*^ the h'^ job starts processing immediately 2, to the least restnctive and since we focus on the to both the how Notice that in the any intermediate and h^ job on machine stage. k. for all h cumulative slack must satisfy the 2 1 ^^ max > 5jj t^-' k-1^ -I 0, 1=2 max X 0, (3.8) s.k i=l ^h = 1 * ^ ^i(k-l) ~ ^l(k-l) Ah A k-l 1=1 i=l = , I . where A, Z^i(k-l)~Z i=l The parameter (k-l) and the and j' as the first difference in total processing times for the last = aJoJ') we to calculate the parameter A last on machines 6j > [o, k— (k-2) in and bound on machine k, (k-l), Since the 2 n. k's slack and the slack time k— 5. time k— A^j,'^ + max + 5. on machine (k-2) and max { 0, { .. k'*' machine takes in in order terms of the job on machine 5. and so on. Making these substitutions Thus, the calculation of slack time on the all j (3.11) jobs (and not the entire sequence of jobs) terms of the slack time A^ + max{o, necessary for choose two jobs. say. n, if (j,j'). processing times on machines (k-l) and 5. Notice that for h = (h-I) jobs on machine (TPk-i-TPk)-(Pj.k-l-Pjk), Inequality (3.9) provides a lower express k. last jobs in the sequence, then (3.10) reduces to only need to choose the fu^t and we can (3.10) -(^Kk-D'^hk)- ^ik (h-1) jobs on machine and (3.9) m i=l Aj^ is the first n, h / h i.e., for all h = 2 and all k = 2 A + [o.Ai^s-] max aJ + (k- In turn. 1 ). the processing times in inequality (3.9) 6|,} } }] we get (3 12 into account the smallest slack times previous machines. first machine does not have any slack time And, for a given choice of the first and 18 last in jobs j an IIS/FR system. 5, = and j' in the sequence, for all we can h = compute 1[ Aj^Od') using equation (3.1 1) for machines all Substituting these values k. right-hand side of equation (3.12) gives a lower bound, say, a^(jj') on time on machine k of a^(j J') over all if jobs and j' j the job pairs j and j' any feasible nS/FR schedule. Adding lower bound, say, Ij^ and are the first on machine last jobs in the in the 5^(j,j'), the total slack minimum value sequence. The gives a lower bound on total slack time on machine k lower bound this k's interval to the total processing time time in any feasible schedule, TP^ in gives a i.e.. i*y For the makespan minimizing model IIS/FR/M, we can funher add the pre-k and post-k processing times as in (3.2) to get the slack-based lower bound on the optimal makespan. summarize this We slack-based bounding procedure below. Slack-based bounding method For every machine k = For every job pair compute A^(j,j') compute otj^CJo') k j, 1, j' .... = 1, for IIS/FR/M m, ..., n, j * j', using equation (3.1 1); k by substituting \ij,i') values and Compute slack-based lower bound M^'^'^(k) on the c 1 5^^ = in RHS of (3.12): minimum makespan using machine k as the reference machine: }^^Hk) = TP,+ jj,^;"„ {aJ(j,j') + Qjk + (3.14) Rj.k}. j*j' The slack-based bound on the optimal value of the IIS/FR/M model is: (3.15) Since the slack-based bounding method adds the non-negative term produces a lower bound that is at least as tight as the machine-based lower bound Observe from (3.12) and the definition of aJ (equation bound M^'^'Hk) depends on O-^ij.]) to TP,^. 1 ). (3.10)) that the slack-based lower the differences in processing times at successive 19- (3. it machines pnor to machine We, k. therefore, expect the slack-based bound when job processing times have downstream). Our computational Finally, as minimum the a negative trend indicated previously, the slack-based -•- any IIS/FR schedule maximum interval time over that all TP,. ^ n in to outperform the machine-based processing times decrease (i.e., results, reported in Section 5, cycle time as well. Since {a„(jj') machine k is we bound pnxesses job j this behavior. method provides bounds on the an underestimate of the interval time on is } confirm first and job j' last, and since cycle time machines, the following expression provides a slack- based lower bound on the minimum cycle rime: max _ - (-slack ^ ! m k=l F^p min n i,,=I „k,. , L^^k Improved Slack-based lower bound 3.3 ..."I (3.16) + ^n^'J^J for NIS models Although the slack-based bounds of Section 3.2 also apply the special structure of the IIS/FR case we NIS system to further strengthen these intermediate storage, however, jobs must wait in the machine becomes determine a lower bound on (3. 12), thus increasing discuss a how way machine set the total slack time 5. for the first release) until the second to a this (jj') value then available, method first it to machine and so we can add 6. NIS models, we can to the NIS/FR for exploit bounds. Recall that for the for (or all h = 2 we must might be n. With no delay their positive. If we can to the right-hand side of inequality and the overall makespan or cycle time lower bound. compute a lower bound on 5 to adapt this to NIS/NW We first systems, and subsequently show tiKxlel. Reddi and Ramamoorthy (1972) have shown that the NIS/NW/M problem is equivalent to an asymmetric traveling salesman problem (TSP) defined over a network whose nodes correspond to jobs. The distance from node i to node 20 j in this network represents the necessary o delay Ljj in releasing job j immediately follows job I ij max _ ~ l<g<m-l (to ensure that in the i does not wait it We compute sequence. X ^^i(k+l.i)-Pjk)'0 at L,. for all intermediate stages) when it as follows: i,j = n, 1 i * (3.17) j. k=l To develop bound on a lower sequencing the jobs, we the first machine's total slack time for and first last jobs and j smallest delay that any successor job will experience, \ For the first job j, if jobs j of total slack minimum /=i n. < For each job j'. ^ j. j', let X, be the i.e., n foralli=l , /^ij^i/ i • /-, •, i n, i^j,j. , (3.18a) we defme minimum _ ^ Then, = actually use the following principle. Consider a given choice of 1 NIS/NVV without , and j' are scheduled fu^t and last in the sequence, the first machine must have a at least n,i*j' IX, = SiCJO") (3.19) i=l to ensure NW job transfers. side of (3.12) to compute improved value of a Therefore, the lower we bound values of the no-wait models NIS/NW/M proposed an alternate lower bound for the NIS/NW/M algorithm), analagous to the cCj^OJ ) o" ^^ slack time in machine k; using this (3.14) and (3.16) gives tighter lower bounds on the optimal (jj') in of a series of rwo-machine substitute 5j^(J0') i" place of 5^ in the nght-hand and NIS/NW/C, respectively. Szwarc (1983) has NIS/NW/M problem based upon the optimal values subproblems (solved using Gilmore-Gomory's LLR bound for the performance of the slack-based bound for IIS/FR/M model. NIS/NW/M problems. 21 In Section 5, [ 1964] we compare with the Szwarc bound for our test the . For the NIS/FR case, jobs will However, because still by machine 2. the effect of downstream machines on therefore, consider only the first equation (3.17), i.e., we the job transfer at the first mechanism the release time delay two machines is is machine due free flow rather than no-wait. difficult to incorporate. in defining the i-to-j delay parameters (0, P|2-Pj, for } all i,j = 1 compute Lj; interval time 4. time units Xj (using We. L,| in if it follows job equations (3.18)) and lower bound i. As ^^(j,']') in the (3.20) n, i^^j. Since the NIS system does not have any storage capacity between machines wait at least to blocking set = max L,j experience a delay NIS/NW case, we 1 and use these 2, job L,. j must values to (using equation (3.19), thus improving the Ij^. Assignment-Patching heuristic for flowshop scheduling The slack-based lower bounds provide benchmarks to evaluate the quality of heuristic solutions for various flowshop scheduling models. Instead of implementing different specialized heuristics for IIS/FR, NlS/FR, NlS/NW and NIS/SYN, we apply a single optimization-based method called the assignment-patching heuristic to generate a promising job sequence o, and then evaluate the objective value for the a-optimal schedule corresponding the model of Subsequently, interest procedure. The assignment-patching NIS/NW/C models. time objectives; 4.1 we It we improve this solution heuristic exploits the using a local interchange TSP strucmre of the NIS/NW/M and uses slighdy different arc length parameters for the makespan and cycle describe the makespan version first. Assignment-Patching heuristic for minimum makespan models Reddi and Ramamoorthy [1972] transfonned the NIS/NW/M model into an equivalent directed traveUng salesman problem defined over a network containing (n+1 .... to n correspond to the n original jobs, and node (n+1) 22- is a dummy job ) nodes. Nodes 1 representing the starting and completion of the schedule. The length of arc time Ljj, dummy computed using Arc zero. ~ i, = j (i,n+l), for all has length equal to the post-1 processing time for job ^(n+l)j for all All the arcs (n+lj) for (3.17). node (n+1) have length (i,j) i ..., n, 1, ..., n, 1 i ^^ j, is the delay emanating from the n, incident to node (n+1) i.e., for all 0' 1. = = i, j j = 1, .... n, i = 1, ..., n. and (4.1a) m H(n+1) Any hamiltonian tour on = X ^'k k=2 this for network corresponds contains arcs (n+lj) and (j'.n+l) then jobs and if it all to a feasible and j' are the j first contains arc (p,q), for p,q < n, then job q follows job NIS/NW is the interval time job sequence (for for the last job systems) on machines 2 through tour plus the total processing time TPj n, the length for all job sequence. and last jobs If the in the tour sequence. Since the makespan of an\ p. on machine plus the processing time 1 of the corresponding traveling salesman jobs on machine Minimizing the length of the traveling salesman (4.1b) I equals the makespan. tour, therefore, solves the NIS/NW/M model optimally. Instead of solving the equivalent patching (AF) heuristic. all i, j = 1, ..., The formulation has assignment the sequence, apply the following assignment- We can formulate the TSP as an integer program using the sequencing variables Y^: for otherwise. TSP optimally, we n+1, i *]. Y- is 1 if job i precedes job binar\ j. and constraints (to assign each node to one position in and one node to each of the n positions) and subtour breaking constraints (Dantzig, Fulkerson, and Johnson [1954]). If get the following assignment relaxation of the Assignment Relaxation minimize of we ignore the subtour breaking constraints, TSP: TSP: n+1 n+1 J^ Pl X pi ^'^ ij '*'^^ 'J subject to 23- *^~' ue n+1 2^ Y,j = 1 for = 1 for alii all j = 1 n+1. (4.3) n+1. and (4.4) i=l n+1 y Y,j forallij = Y.j€ {0,1) If the assignment solution Otherwise, we must Lowe TSP tour, it 1, ..., n+1, i NIS/NW/M provides an optimal ^j. (4.5) sequence. patch together the subtours in the optimal assignment in order to construct a feasible job sequence. and a is =1 We use the following subtour patching method (adapted from Piante [1987]). Subtour patching heuristic: Step I Step 2: : Pick two sub-tours Tj and T2 arbitrarily. For every pair of arcs (i,j) € Tj and (i',j') replacing these two arcs with the arcs minimum Step 3: If the e T2, evaluate the incremental cost of and (i,i') (j,j'). Select the pair of arcs with the incremental cost, and perform the interchange. current solution has two or The subtour patching feasible job sequence heuristic requires at which we call the a relaxation of the (4.2) to (4.5) is a valid lower bound on more subtours, repeat Step most 0(n) AP makespan TSP representing the optimal value of iterations, solution. the Since the assignment model heuristic for cycle time minimization For cycle time minimization, the m machines. TSP To minimize we examine sequences the interval time arc lengths to represent the delay 24- i test its optimal value we compare is this problems. models that reduce the interval time on each of on any machine between jobs model, In Section 5, assignment lower bound with our slack-based lower bound for our ^2 AP Otherwise, stop. and terminates with a NIS/NW/M NIS/NW/M. 1. and j k, we must modify the previous on machine k (instead of machine 1 ). 1 and set Lj j^j equal to the processing time for job Let us defuie Ljj, for i). how describe first k all i, j = processing time TP|^ on machine k (instead of the post- total to compute n, as the 1, ..., the delay times for a necessary delay between jobs ensure no- wait processing. Using this notation, the value corresponds to job i Consider a sequence L|-. leaves machine processing job i at at 1 { t + time L Then, X ^ih ) in L,., i and j in the We k. on machine k to computed using equation which job j immediately follows job (3. 17). and suppose i, no-wait system, machine k must complete Furthermore, job • downstream machine j is released into the line at { t + L ) . and ^~^ reaches machine k at {t + L 1 + 'J interval X Pjh}- Therefore, the i-to-j slack time h=l i and the ^r 'J we The TSP with L^ and arrival = L*' approximately using the The of job j at machine k, is: ^^6' (4.7. TP,. _^, , for all i, j = 1, ..., n, AP heuristic, for as arc lengths NIS/NW models We system. every machine k = the sequence with the smallest cycle time, cycle time solution 4.3 Local the time h=2 minimizing the interval time on machine k for the i.e., is define Li,n.l sequence, which l^jh- l^.hb=l Similarly, , k k-l = k '' between the completion of job ^iU L - the problem of solve this TSP m, and choose the best 1 among the m TSP solutions as the AP . improvement procedure AP makespan or cycle time solution provides an makespan or cycle time models. For initial candidate sequence a given model, the initial upper bound is o for all the the objective value of the corresponding o-optimal schedule satisfying the model's intermediate storage and job transfer constraints. We then anempt to improve 25- this upper bound by applying a local . exchange . NIS/SYN/M heuristic. Consider, for instance, the makespan sequence, for every pair of jobs and i j, we model. Starting with the new sequence consider a AP obtained by a' interchanging the positions of these two jobs in the current sequence, and compute the objective function value (makespan) for the a'-optimal NIS/S than the current sequence, then method stops when no Improved has a lower makespan interchange and examine other job pairs. The this improvement If a' is p>ossible; we refer to the final job sequence as the solution Computational experience 5. 5.1 AP further we perform YN schedule. Test problems To lower bounds and heuristics, we generated random test the different sizes ranging the size from 6 jobs and 3 machines (number of jobs and machines) for each to test problems in nine 50 jobs and 3 machines. Table problem class. ..., n, and k = we mean independent, identically distributed processing times m. The processing times for a job are said 1 consistently smaller or greater than average on times exhibit a trend To By random we Given the processing time parameters of they increase or decrease for follow the method used by all Lageweg On jobs as for all i = 1. to be correlated if they are the other hand, job processing we progress down et al. the line. [1978] for their computational number of jobs and machines, our problem generator chooses an Pjj^ this for each job j on every machine k from an uniform uniform distribution integer job distribution. The reflect the desired correlation and/or trend structure. Problems with random processing times have To machines. P:|^ generate problem instances corresponding to each of the four processing time distributions, tests. if all shows We considered four different processing time distributions-random, correlated, trend, and correlated with trend. processing times 1 introduce correlation in processing times, P^ we !L Unif (1,100) for all jobs j generate n additional integers 26- and machines c., for all j = 1 k. .... n, from the Unif processing times, For problems with only correlation and no trend (1, 4) distribution. we randomly select Pj,^ Problems with trend (but no correlation) from the Unif (20c.+l. 20c.+20) in the distribution. data are generated by selecting machine ks processing times P^^ from the Unif (12.5(k-l)+l, 12.5(k-l)+100) distribution, for ..., m. This scheme increases the average processing dme per job processing times have an increasing trend. Finally, correlation and trend hy sampling from distribution, for all j = 1, ..., n, For each problem size shown in 1, Table we at = all k successive stages, 1. i.e.. the construct problem instances with hoih Unif (2.5(k-l)+20c., 2.5(k-l)+20c.+20) the and k = in ..., 1, m. we generated four groups of three problem instances each; the groups correspond to the four processing time distributions-random, with correlation, with trend, and with correlation + trend. We also "inverted" by renumbering machine k as machine m+l-k for k = positive trend original now have negative trend. m; ..., To summarize, we thus, original problems with generated 24 problem instances- 12 problems consisting of 3 random instances each for four processing time and 12 inverted problems-for each of models corresponding 5.2 1, each problem instance to the 9 problem sizes, and considered all distribution.s. 8 flowshop each of these 216 problem instances. Performance comparisons Our computational bounds tests seek to address three questions: relative to previous lower (i) how good are the slack-based bounding methods for makespan models; assignment heuristic perform compared to previous heuristic methods; and, (ii) how does (iii) what is quality of the heuristic solution obtained by locally improving the assignment-based job sequence? We elaborate on each of these issues next. 27 the the Comparison 5.2.1 Recall that we have bounds: of lower three versions of the slack-based bound for the minimum makespan problem: the basic version that provides a lower bound for the IIS/FR/M model, and enhanced versions for the N1S/FRA1 and NIS/NW/M models. For the nS/FR/M model, LLR bound the (described in Section 3.1) based on two-machine subproblem solutions has proven to be the most effective. This bound NIS/FR/M model. We, also valid for the is slack-based (basic and enhanced) for the IIS/FR/M and Note that, model is using both the slack-based and the same as the LLR NIS/FR/M model so comparison of bounds for the NlS/SYN/M case. For the the Szwarc [1983] lower bound and (4.5)) with the enhanced slack-based bound. The based solely on 5.2.2 To its we do we LLR NIS/SYN/M NIS/NW/M model, we compare both problem ((4 2) to and Szwarc bounds do not apply evaluate the quality of the slack-based bounds AP heuristic, we compare the objective values of the solution (before local improvement) and the solution produced by the 1970]) for all model types. The CDS heuristic, CDS algorithm, and selects the best k machines and last k machines each of the two machines minimization models, among in the k'*^ we augment the p job sequences. in the original auxiliary this The developed for the IIS/FR/M total s processing time on the problem serve as the job processing times on two-machine problem. For cycle time method by applying an improvement procedure sequencing the jobs using Johnson's algorithm. -28 AP heuristic (Campbell. model, solves p ^ (m-1) auxiliary two-machine flowshop subproblems using Johnson first to of heuristics: evaluate the effectiveness of the [ bound. closeness to the heuristic value (see Section 5.2.3). Comparison Dudek and Smith LLR the not perform a separate the optimal value of the assignment cycle time minimization problems, and so with the methods, the lower bound for the NIS/FTVM lower bound, and compare therefore, after Gap between upper and lower bounds: assess the quality of the improved AP 5.2.3 To % the gap between the objective value of of the slack-based lower bound and the values of this % gap imply that both the solution (after local improvement), this solution LLR with the best lower bound or Szwarc lower bounds) for we compute (i.e.. the better 8 models. all Small lower bounding method and the heuristic procedure are effective. 5.3 Computational results We implemented the problem generator and the an IBM 4381 computer, and the lower bounding methods heuristic procedures in 3 and 4 summarize our computational 6 f)ertain to results for the FORTRAN on a Macintosh computer. Tables minimum makespan 2. models; Tables 5 and cycle time minimization nxxlels. Table 2 compares the slack-based bound with the NIS/FR/M models, and For the C on in LLR bound, the LLR bound Szwarc and assignment lower bounds we followed Lageweg machine flowshop subproblems, for k2 = selecting the best lower bound. Table 2 et al.'s for the IIS/FR/M and NIS/NW/M case [1978] strategy of solving (m-1) two- m and kl shows for the = 1, ...., m-1 (see Section 3.1), and the average values of the ratio of lower bounds (averaged over 54 problem instances) for each of the four processing time distributions. As expected, the slack-based lower bound performs well for problems with trend times; it also appears to be as tight as the random processing times. in total processing times as effective. on adjacent machines LLR bound when processing and the Szwarc bounds for problems with However, when job processing times We observed that, even approaches the LLR in is are correlated, the difference small, and hence the slack-based bound for problems with correlated data, the slack-based the problem, the assignment lower bound number of jobs (i.e., is very large. For the is not bound NIS/NW/M the optimal value of the assignment subproblem) outperforms the slack-based lower bound. -29- ) Tables 3 and 5 compare the performance of the and the CDS Although solutions for well as the all CDS heuristic random processing CDS AP heuristic is based upon the (which was developed for when times,the this NIS/NW model, AP model); the the job processing times are AP solution for the solution has, on average, improvement cycle time models, other models as well. For the IIS/FR/M model, the other models especially than the the heuristic (without local minimum makespan and minimum heuristic for the respectively. AP AP it produces good heuristic performs as solution random or have is a trend. supenor for With 12%, 8%, and 67o lower makespan NIS/NW/M, NIS/FR/M, and NIS/SYN/M models, respectively. Similar performance differentials hold for the cycle time minimization models. Tables 4 and 6 compare the values of the improved for the the makespan and cycle time nxxlels, respectively. AP solution with the best lower bounds The average % gaps are 3% or less for NIS/NW/M, and IIS/FR/C IIS/FR/M, NlS/FR/M (except with random processing times), models, indicating that the heuristic generates near-optimal solutions for these cases, and the lower bounds are tight. The gaps correlated processing times; these cases, but the lower 6. we are large for the NIS/FR/C and NIS/NW/C models w suspect that the heuristics performance bound is is quite good ith e\ en for weak. Conclusions This paper has presented a new slack-based lower bound and an assignment-patching heuristic that apply to a variety of flowshop scheduling contexts. The slack-based bound improves upon the machine-based bound, and applies cycle time optimization problems. lower bound is as good as the trend in processing times. LLR The The computational bound for AP algorithm, to makespan, results show total interval time, that the and performance of the problems with random processing times or with together with heuristic local improvement. 30- performs well for all scenarios, producing schedules that are within 10% of optimal in most cases. Scheduling flowshops with synchronized job transfers, and with cycle time and interval time objectives are promising topics to investigate further. Although the slack-based method provides lower bounds for these models as well, we might be able to improve performance by exploiting the models' special structure. Similarly, instead of using a general sequencing algorithm based on no-wait principles, we might consider alternative heuristic methods that are specially adapted to cyclic and synchronous scheduling. -31 Figure Machine k-1 Machine k 1 : Slack time on adjacent machines Table Problem Group « 1: Sizes of Test Problems Table 3: Performance for Model of Assignment-Patching Heuristic Minimum Makespan Modelst Table 4: Model Gap between Upper and Lower Bounds for Minimum Makespan Modelst Table 5: Performance for Model of Assignment-Patching Heuristic Minimum Cycle Time Modelst Table 6: Model Gap between Upper and Lower Bounds for Minimum Cycle Time Modelst REFERENCES Baker, K. R., 1975, A Comparative Study of Flow-Shop Algorithms. Operations Research, 23, 63-73. Campbell, H. G., Dudek, R. A., and Smith, M. L., 1970, A Heuristic Algorithm for the Job, m Machine Sequencing Problem. Management Science, 16, B630-B637. Dannenbring, D. G., 1977, Management An Science, 23, Evaluation of 74- 1 1 82. 1 1 Row Shop Sequencing n Heuristics. Dantzig, G. B., Fulkerson, D. R., and Johnson, S. M., 1954, Solution of a Large-scale Traveling Salesman Problem. Operations Research, 2, 393-410. Gilmore, P. C, and Gomory, R. E., 1964, Sequencing a One State-Variable Machine: A Solvable Case of the Traveling Salesman Problem. Operations Research, 12, 655-679. Graham, R. L., Lawler, E. L., Lenstra, J. K., and Rinnooy Kan, A. H. G., 1979, Optimization and Approxirriation in Deterministic Sequencing and Scheduling: A Survey. Annals of Discrete Mathematics, 5, 287-326. Hundal, T. S. and Rajagopal, J., 1988, An Extension of Palmer's Heuristic for the Flow Shop Scheduling Problem. InternationalJournal of Production Research, 26, 11191124. Johnson, S. M., 1954, Optimal Two- and Three-Stage F*roduction Schedules with Setup Times Included. Naval Research Logistics Quarterly, I, 61-68. King, J. R., and Spachis, A. S., 1980, Heuristics for Flow-shop Scheduling. International Journal of Production Research, 18, 345-357. Lageweg, B. Scheme J., Lenstra, J. and Rinooy Kan, A. H. G., 1978, A General Bounding Flow-Shop Problem. Operations Research, 26, 53-67 K., for the Permutation Lawler, E. L., Lenstra, J. K., Rinooy Kan, A. H. G., 1982, Recent Developments in Deterministic Sequencing and Scheduling: A Survey. Deterministic Sequencing and Scheduling M. A. H. Ekmpster et al.{eds.), D. Reidel Co., Dordrecht, Holland. 35-74. , Leisten, R., 1990, Flowshop Sequencing Problems with Limited Buffer Storage. IruernationaJ Journal of Production Research, 8, 2085-2100. McCormick, S. T., Pinedo, M. L., Shenker, S., and Wolf, B., 1989, Sequencing in an Assembly Line with Blocking to Minimize Cycle Time. Operations Research. 37. 925935. McMahon, G. B. and Burton, P. G., 1967, Bound Method. Operations Research, Row-Shop Scheduling with the Branch-and- 15, 473-481. Nawaz, M. Enscore, E. E., and Ham, I., 1983, A Heuristic Algorithm for the m-Machine. n-Job Flow-Shop Sequencing Problenx The International Journal of Management Science, 11, 91-95. Park, Y. B., Pegden, D., and Enscore E. E., 1984, A Survey and Evaluation of Static Flowshop Scheduling Heuristics. International Journal of Production Research. 11. 127141. and Lowe, T. J., 1987, The Product Matrix Traveling Salesman Problem: An Application and Solution Heuristic. Operations Research, 35, 712-1S3. Plante, R. D. Rajendran, C. and Chaudhuri, D., 1990, Heiuistic Algorithms for Continuous Flowshop Problems. Naval Research Logistics 37, 695-705. , Reddi, S. S., and Ramamoorthy, C. V., 1972, On the Flow-shop Sequencing Problem with No Wait in Process. Operational Research Quarterly, 21, 544-549. Skinner, W., 1974, The Focused Factory. Harvard Business Review, 1 13-122. Szwarc, W., 1983, Solvable Cases of the Row-Shop Problem Without Interruptions Job Processing. Naval Research Logistics Quarterly, 30, 179-183. in MAR 2001' Date Due Lib-26-67 MIT LIBRARIES 3 9080 02237 3614