Ui\lV£RSlTY OF ILLINOIS LIBRARY AT URBANA-CHAMPAIGN BOOKSTACKS Faculty Working Paper 93-0120 330 B335 1993:120 COPY 2 STX THE LIRRA:?v -c MAR 2 5 ''" UNiVLr, Input Control in Job Shops Narayan Raman Departtnenl of Business Adtninistratian University of Illinois Bureau of Economic and Business Research College of Commerce and Business Administration University of Illinois at Urbana-Champaign BEBR FACULTY WORKING PAPER NO. 93-0120 College of Commerce and Business Administration University of Illinois at Urbana-Champaign March 1993 Input Control in Job Shops Narayan Raman Department of Business Administration Digitized by the Internet Archive in 2011 with funding from University of Illinois Urbana-Champaign http://www.archive.org/details/inputcontrolinjo93120rama Input Control in Job Shops Narayan Raman Department of Business Administration University of Illinois at Urbana-Champaign Champaign, Illinois 61820 September 1991 Revised March 1993 ABSTRACT Input Control plays a critical role in regulating the release of jobs into a production system, and thereby, controlling the inventory levels. For a just-in-time system, we model the input control decision as a bicriterion problem which requires the maximization of the sum of job release times subject to minimum total job tardiness. We propose a solution method that requires partitioning the set of available jobs into blocks; jobs in the same block are processed without any inserted idle time. The suggested procedure updates the membership of each block, determines the schedule of jobs within each block as well as the schedule of blocks in an iterative manner by solving a sequence of subproblems. Computational results show the effectiveness of the proposed method as well as the substantial improvement that can be affected in job release times, without adversely affecting the tardiness values, over an approach that considers the single objective of minimizing total tardiness. This result is of interest to an operating manager who is responsible for controlling work-in-process and finished goods inventory related costs in addition to meeting due dates effectively. 1 Introduction In many manufacturing systems, the release of jobs into the production shop floor is regulated by means of an input control mechanism. The purpose of this mechanism is to allow jobs to be introduced selectively into the system instead of releasing them whenever they become available. In most manufacturing systems, this leads to important savings. First, it reduces work-in-process levels that results in less congestion on the shop floor. Second, it simphfies operation scheduling and smooths system output. Third, input control promotes just-in-time (JIT) manufacture in that it discourages early job completions. In so doing, it improves the robustness of the master production schedule because, by deferring jobs required at a future date, the system is less susceptible to demand and due date variations on account of factors such as order cancellations. Input control is also imperative in many flexible manufacturing systems (FMSs) because of the limited buffer space available. Stecke (1983), for example, proposes a hierarchical approach to FMS planning and scheduhng in which the determination of part input sequence precedes the operations assignment and tool loading decisions. Other instances when input control is required include shop load levehng (Irastorza and Deanne 1974) and load balancing (Shimoyashiro et al. 1984). While there are many practical benefits of using input control, Baker (1984a) notes its important drawbacks as weU. By removing some of the options available to the scheduler, input control may be counterproductive. In particular, if the scheduhng objectives are re^w/ar measures, i.e., if the schedule costs are nondecreasing in job completion times, then delaying job input could easily result in suboptimal solutions. However, the success of JIT manufacture has highlighted the costs incurred when jobs are completed weU ahead of their due dates. This has generated increased interest in nonregular scheduhng measures, such as minimizing earliness, that promote the notion that jobs should be released as close to their due dates as possible. Therefore, as Baker and Scudder (1990) note, due date considerations under JIT production require addressing both tardiness and earliness related costs. The purpose of input control in such systems is to determine the job release times that minimize these costs. The earliness of any job is usuaUy defined as the positive difference between its due date and its completion time. However, if the job comprises multiple operations to be done on different machines, the cost of completing the job ahead of its due date should also consider the waiting times between operations. In so doing, the input sequence accounts for the cost of work-in-process inventories in addition to the finished goods inventories. As we discuss in §2, minimizing the sum of earliness and the total waiting time for any job is equivalent to maximizing the time it is released into the system. Furthermore, by insuring that the raw materials required for any job arrive at the time the job is scheduled to start its first operation as determined by the input sequence, raw material inventories can be largely avoided. Therefore, from a scheduhng perspective, maximizing job release times appears to be an appropriate surrogate for minimizing inventories. [Also see Ahmadi and Bagchi 1992 for a related discussion.] In this pap>er, we consider the static input control problem in a job shop. For the given set of available jobs with individual due dates and processing requirements, we model this decision as the problem of maximizing the sum of job release times subject to the minimization of the total job tardiness. Thus, we consider the tardiness and earliness costs in a hierarchical manner. This objective is consistent with the results of surveys of industrial scheduhng practices conducted by Panwalker, Dudek and Smith (1973) and more recently by Smith et al. (1986). These surveys find that operating managers consider meeting due dates as their most important objective, and other scheduling criteria are considered only after the best schedule for meeting job due dates has been determined. We consider minimizing total tardiness as the objective that captures the importance of meeting due dates. In a just-in- time system with its emphasis on minimizing inventories, it is natural to consider maximizing the sum of job release times as the secondary objective. Previous research on combining earliness and tardiness measures has primarily considered the objective of minimizing their weighted sum in single machine systems. Baker and Scudder (1990) mention the paucity of work done for the case in which jobs have distinct, prespecified due dates. Fry, Armstrong and Blackstone (1987), Garey, Tarjan and Wilfong (1988), Kim and Yano (1986), and Yano and Kim (1991) give procedures for finding the optimal job start times when the job sequence is known. Fry et al. (1987) give a pairwise-interchange based heuristic procedure for finding this sequence when the earliness and the tardiness weights are the same across all jobs. Kim and Yano (1986) give a branch and bound procedure for the unweighted case, and Yano and Kim (1991) present a branch and bound procedure as well as several heuristic methods when the earliness and the tardiness weights are distinct for each job. However, the literature on the earliness and tardiness measures, considered individually is quite rich. Because of its NP-completeness (see, for example, Rinnooy Kan 1976). prior research on the job shop tardiness problem has primarily considered the use of priority dis- patching rules. Baker (1984b) and Vepsalainen and Morton (1987) give extensive discussions on this research. In a recent study, Raman, Talbot and Rachamadugu (1989) develop an implicit enumeration approach as well as a decomposition based heuristic for solving this problem. While the objective of maximizing the sum of job release times in a job shop has not yet been addressed directly, there is considerable literature on this subject for single machine systems for which this objective reduces to that of minimizing earliness. Baker and Scudder's survey (1990) provides a detailed description of the work done on this objective and its variants. Ahmadi and Bagchi (1992) extend this work to a two-machine flow shop for the objective of minimizing total job idleness. Thus, this study differs from the previous research dealing with the simultaneous minimiza- tion of tardiness and earliness in two aspects. First, we treat these two costs lexicographically. Second, we extend the previous work that addressed single machine systems to a job shop. This paper is organized as follows. In §2, we give a mathematical programming formulation of the input control problem. In §3, we discuss a possible decomposition of this problem, and bring out the various embedded subproblems. The proposed solution procedure is given in §4, and our computational experience with this approach is described in §5. We conclude in §6 with a summary discussion. 2 Problem Statement We consider a static problem with A'^ jobs that are all available for scheduhng at time zero in an M-machine job shop. Let J — {1, . . . , A'^} denote the set of jobs. Job j £ J comprises Nj operations that need to be done in a given order on prespecified machines; however, the machine visitation sequence varies from one job to another. Let Oji denote operation i in job j. The input parameters include the operation processing time p^, of Oj,, job processing time pj = Y.i=iPji-i and job due date d^. It is then possible to determine the set Aj of pairs of adjacent operations in job j, (i,/) G Aj if operation i is the immediate predecessor of operation / in job j. Let //^ be the set of all operations processed on machine m. The decision variables include the job release time r^, and the start time Sji and the completion time Cji of operation Oji. Jobs are released into the system when they are scheduled for their first operation. Hence, Sj\ = rj^ and 5j, > Cj^i-i for i = 2,...,Nj. Let c-j = Cjj\/^ be the completion time, Tj = max(0, Cj — dj) be the tardiness, and Ej = max{0, dj — Cj) be the earliness of job j. The job shop input control problem is stated as ICP N Z2 = max ^ rj (1) subject to N Zi=J2 Tj = min^^s{T(cr)} (2) Cuv - Cji > puv V Cji - Cuv > Pji, V Oji, Ouv G /^m, Vm (3) Cji -Tj = pju V; (4) Cji — Cj, > pji, V(z, /) € Ajand Vj (5) CjN, + Ej - Tj = dj, V; (6) c,. >0, Vz,;; r„^„T, >0,V; (7) where S is the set of all feasible schedules for ICP. Equation (1) refers to the secondary objective of maximizing the sum of job release times. Constraint (2) specifies the primary 4 objective of minimizing total tardiness. In the given expression, T(-) refers to the total tardiness incurred in schedule (•). Constraints (3) represent the disjunction which insures that no more than one operation is processed on a machine at any time. Constraints (4) and (5), respectively, require that the first operation of any job is started when the job is released, and any subsequent operation is scheduled only after its predecessor operation is completed. Constraints (6) define tardiness while Constraints (7) specify the nature of the variables. ICP generahzes two well-known NP-complete problems, and therefore, NP-complete itself. (2) - (7) define the job shop minimum total tardiness problem. This problem is known to be NP-complete even when M = 1 (Du and Leung 1990). If Zi = 0, then (1), (3) - (7) define the problem of maximizing the sum of job release times subject to all jobs being completed on or before their due dates. Let Wj^ be the operation waiting time of job j after operation i. Then Cj = Tj + Pj + Y^ Wji j = l and when all jobs are completed on or before their due dates dj = Cj -\- Ej = rj +pj+ Yl ^J^ + ^J- Hence, N N N iV f^j-1 N N N N j=i j=i j=i j=i 1=1 Because job due dates and processing times are given, maximizing the sum of job release times is equivalent to minimizing the sum of operation waiting times and earliness over all jobs. For single machine problems, Nj = 1, Vj, and maximizing Y,j€J^j ^^ equivalent to minimizing total earliness J2jeJ ^j- Chand and Schneeberger (1986) show that this problem is NP-complete. For given operation processing times, Cji = Vj -\-pji , and maximizing YljeJ ^j is equivalent to maximizing YljeJ^j^ which is considered by Ahmadi and Bagchi (1992) for a flow shop. 3 The Notion of Critical Jobs In general, an optimal schedule will have inserted idle times because the secondary objective is nonregular; this results in one or more job blocks. A block Bk satisfies the property that for any job v in Bk, there is another job u in Bk such that if Cy > Cu, then c^ > r^. Figure 1 shows a schedule comprising three blocks for a 3-machine, 11-job problem. [In this figure, Ml, M2 and M3 denote the individual machines.] Let Bk denote the set of jobs in block Bk. It is easily seen that for two adjacent blocks [k] and [k + 1] in any sequence, INSERT FIGURE 1 HERE For block Bk^ we define the block release time Rk, block completion time Ck, and block due date Dk as: Rk = TniUjeBA^j} (9) Ck = maXj^BA^j} (10) Dk = rmnj^Bk{^j\^j = ^k} (1^) Clearly, these parameters depend upon the sequence of the various jobs within block k. We define the block processing time Pk as the makespan of this sequence. Then Ck = Rk + Rk- Let (7 be a feasible schedule with K > 1 blocks, and total tardiness Z\{(j) > 0. Suppose it contains a job j such that j G B[k], k > I, and Tj > 0. Let u be the job with the earliest release time in B^k]-, i.e., R[k] = r^. If j and all jobs in B[k] that start before j are left shifted such that u is now released at C[k-i], then Tj can be reduced because of the idle time between B[k-i] and B[k]- Clearly, jobs that start after j remain unaffected by this left-shift and therefore, Zi((7) is reduced. Note that all left-shifted jobs are merged with B[k-i]. Such a left-shifting, with commensurate decrease in Zi{a), can be done whenever a tardy job is found. Therefore, from induction, it follows that if Zi > 0, then all tardy jobs in any optimal solution must belong to B[i]. Furthermore, if Zi > 0, then R[i] = in an optimal solution because otherwise, as before, Z\ can be reduced by enforcing this condition. On the other hand, if Z\ — 0, then clearly ZijeSri] ^j = 0- Therefore, Remark 1. There exists an optimal schedule such that Z\ — Xljger ^j? ^nd if Zi > 0, then i?[i] = 0. Henceforth we consider only those schedules that satisfy the above property. For a given schedule cr, we define the set of cn'h'ca/ jobs J\ as Note that, while a tardy job is also a critical job, the reverse is not necessarily true. This is so because some jobs, which are in 5[i] and which are early in a given sequence, may become tardy in another sequence in which they are taken up with J9[fc], k > 2 because of the inserted idle times between blocks. Let S2 = J\J\ denote the set of noncnhca/ jobs. Clearly, a job is noncritical if and only if it is early. Note that if Zi{a) = 0, then J'l is empty, and ^2 must comprise at least one block. Alternatively, if Zi{(7) > 0, then Ji consists of exactly one block, namely B^iy, in this case, J'2 can be empty. Consider a block B[kj G J2 in a. Because each job in J'2 is early, Cj < dj for any j G B[k]. Suppose that Cj < dj for all j G B[k]- Let Tj = dj — Cj be the slack of j, and u = arg 'minj^i3^^^{Tj] be the job with the minimum slack in B[k]- If h,k+i = f^[k+i] — Qat] is the idle time between B[kj and B[A:+i], then, it is easy to see that all jobs in B[f;] can be right-shifted by r = min{Tu, Ik,k+i} to yield a solution which has the same Zi as a but a higher Z2 value, and therefore, is superior to a. If r = r^, then u is completed exactly at its due date; otherwise, this right-shift results in the merger of block B[k] with 5[A:+i]- Let the blocks be renumbered following this merger, and w, r^, Ik,k+i-, and r be redefined for the modified block. If Cj < dj for all j G ^[A:], then similar right-shifting will result in a further increase in Z2. This process will terminate if either r = r^ in a merged block, or we reach the block sequenced last. But in the latter case, we again have t = Tu. Hence, in either case after the right shift, c^ = d^. Repeating this argument whenever Cj < dj for all j G B[k], implies that Remark 2. In each block Bk G J2 in an optimal schedule, there exists a pivotal job jk such that Cj^ = dj^. Jx and J2 clearly depend on the schedule. On the other hand, if a partition (J\^J2) that satisfies the condition given in Remark 1 is known then, as shown below, ICP separates into two problems - ICPl that considers only J7i, and ICP2 that considers only J2. ICPl(Ji) subject to and Maximize Z2 = ^ rj jeJi J2 Tj = Zi = min^^s{T{(T)} J€Ji (3) - (7), Vi e Ji. (12) (13) ICP2(J2) subject to and. Z2 = max 22 ^J j€J2 T, = 0, Vi € J2 Vj - maxj^j^ {cj} - 1 > V; e J2 (3) - (7), Vj G J2 (14) (15) (16) where constraints (16) follow from (8). Together with (15), these constraints insure that the partition (J\^J2) is feasible. Note that the dual objectives apply only to ICPl, while ICP2 considers only the objective of maximizing the sum of job release times. Let J2 = \J2\ denote the number of noncritical jobs. With the introduction of blocks, ICP2 can be reformulated as 8 ICP3(J2) J2 Z2 = max Y, Yl ^J (1*^) subject to J2 J2yjk = l. VjG J2 (18) k=l %+i] - q,] - 1 > 0, VA: (19) minj^j^{rj} - maxj^j^{cj} - 1 > (20) Cuv - Cji > puv V Cj. - Cuv > Pji, V Oji, Ouv G f^myj, u E Bk, Vm, k (21) Cji > Tj +Pji, Vj € Bk, and VA; (22) Cji > Cji +Pji, V; e Bk, (ij) G Aj, and VA: (23) c,;v, 0; Tj > 0, Vz, Vj e i?ik, yk (25) where y^^ equals 1 if job j is assigned to block k, zero otherwise. Constraint (18) insures that each job is assigned to exactly one block, while constraints (19) and (20) follow from (8). Note that for a given partition of ^2 into K blocks, {Bk}k=ii that satisfies (18)-(20), ICP3 decomposes into K independent subproblems. The kth subproblem, hereafter the block maximum release time problem (BMRP) is of the form BMRP(/t) max ^ Tj jeB[k] subject to. (21) - (25) Vj e Bk. 4 Solution Approach In view of the NP-completeness of ICP, problems of reasonable size are likely to be solved only by heuristic methods. We first give an outhne of the suggested heuristic procedure; details of individual steps are discussed subsequently. The proposed heuristic procedure is now described; first, we give an outhne of this method. Initially, we assume that all jobs can be finished on time, and set J^ — J\J\ = 0. We construct an initial partition of J2 into blocks, and attempt to solve BMRP for each block. If there is no feasible solution for a given block Bk (which implies that at least one job in Bk cannot be completed by its due date in this schedule), then all jobs in Bk are assigned to set J7i, and J2 is updated. At the end of this step, we obtain a tentative partition of J into J\ and J2^ and a partition of J2 into blocks that consist of early jobs when considered independently. If Ji is not empty, we next solve ICPl, and assign R[i] = 0. For the blocks in J'2, we solve a relaxation of ICP3 in which (19) and (20) are ignored. This is done by sequencing these blocks such that Cj^ = dj,^ for each k. If the resulting schedule satisfies (19) and (20), then the algorithm terminates. It is easy to see that, with respect to the given sequence of jobs within J7i and within each Bk E J^2i this schedule is optimal. Otherwise, suppose that (19) is violated such that R[k+i] < C[ic] + 1, A: > 1. In this case, block Bk+i is merged with block B[k], and BMRP is solved for B^k] with the enlarged set of jobs. The values of Cj,^. and Ci-i + 1, go to Step 3c. Else, go to Step 4. c) If i = A', stop. Otherwise, set z <— z + 1 and go to Step 3b. Step 4-' Block Merging Merge Bi with 5,_i. Set Bk-i <— Bk, for i < k < K. If z = 2, and Ji is not empty, go to Step 2d. Otherwise, solve BMRP for the enlarged block Bi-i. Update P,_i, ii_i, Cj,_j and ^j.-i • Go to Step 3a. The major steps in the algorithm are i) the determination of the initial blocks, ii) solving BMRP, and iii) solving ICPl. These are now discussed. II 4.1 Determination of Initial Blocks Clearly, each job can be considered as an independent block initially. However, the overall computational effort can generally be reduced by identifying subsets of jobs that are likely to be in same block in an optimal sequence. In this procedure, we group jobs with overlapped processing to form the initial set of blocks. A pair u^v £ J of jobs are said to have overlapped processing if they satisfy the property that if d^ > in an optimal schedule. Then u ^ J\. If v ^ J7i, then Cv>,ry -\r Pv> Cy,-\r Pv> du^ Pv> dy and V is tardy as well. But this contradicts Remark 1; hence v must also lie in J7i. It can similarly be shown that in an optimal schedule, if Ty > 0, then u,v ^ J\. Therefore, if a pair of jobs have the overlapped processing property, then they belong to the same block if any one of them is tardy. Counterexamples can, however, be easily constructed to show that this result does not hold if both jobs are early. Nonetheless, prehminary computational experiments revealed that, in most of the final sequences obtained, jobs with overlapped processing are produced in the same block. An 0{N'^) algorithm for identifying pairs of jobs with the overlapped processing property is given below. Recall that all jobs are numbered in the nondecreasing order of their due dates. Algorithm InitialBlocks Step 1. Set A' = 1; j = A^; and k = K. Step 2. Set y^k = 1; and j = j — \. If j = 0, go to Step 4. Else go to Step 3. Step 3. If there exists a block Bk, A: = 1, 2, . . . , A' such that dj > du — Pw, ^u ^ Bk-, then go to Step 2. Else, set A' <— A' + 1; A: = A', and go to Step 2. Step 4- Renumber blocks: Set A: <— A' + 1 — A:, A: = 1, 2, . . . , A'. It is easy to verify that at most one Bk will satisfy the condition stated in Step 3. 12 4.2 The Block Maximum Release Time Problem The problem of sequencing jobs in each block such that the sum of their release times is maximized subject to their completion on or before their due dates is easily shown to be NP-complete. We propose an iterative, improvement heuristic method for solving this problem. We first discuss the procedure for generating the initial solution, and subsequently describe the improvement step. 4.2.1 Initial Solution We construct the initial schedule for BMRP by considering its inverse problem - the com- pletion time problem CTP. For a given instance of BMRP, the corresponding instance of CTP is constructed by reversing the order of operations in each job such that p'^- = pj,jVj+i-M where the "prime" distinguishes the parameters and variables in CTP. Each job j E J is assigned a ready time q', = dmax — dj, where dmax is the maximum of the due dates of jobs within the given block. For block Bk, CTP is stated as CTP(A:) min ^ c'j subject to, 4>o, yjeBk Any schedule feasible to BMRP has an equivalent, antithetic schedule feasible to CTP with operation completion times c', = dmax — ■Sj.A^j-i-i-n and job completion times c'j = dmax - rj. (26) 13 The equivalence between these two problems is illustrated in the 3-job, 3-machine example shown in Figure 2. In this example, we have d2 < d^ < di = dmax for BMRP. The job ready times in the corresponding instance of CTP are q[ = 0^ q!^ = di — d2, and q'^ = di — d^. INSERT FIGURE 2 HERE We note here that Ahmadi and Bagchi (1992) use a similar problem inversion for addressing a nonregular scheduling objective. They refer to CTP as the mirror image problem, and independently derive a formal equivalence between CTP and the minimum job idleness problem in a flow shop. BMRP is then solved by first solving CTP to determine job completion times c^^c^^ and C3, and then using (26) to obtain the ready times rj. CTP remains a hard problem even for a single machine system (Hariri and Potts 1983). We generate a nondelay schedule (Baker 1974, page 191) in which ties between competing jobs are broken in favor of the job with the shortest imminent operation time. The order of operations generated for CTP is reversed to obtain the desired sequence of jobs within the block for BMRP. Let Cj, and 5j,, respectively, denote the completion time and the start time of operation i within job j in this sequence. 4.2.2 Schedule Improvement At the start of the improvement phase, the machines are ranked in the nonincreasing order of their workloads. We consider one machine at a time in the ranked order starting with the machine at the top of the list. For each machine, an attempt is made to reschedule operations, and the revised schedule is then used to update the parameters considered for the next machine. When all machines have been considered, the first machine on the list is reinvestigated at the beginning of the next cycle. This iterative procedure terminates when no improvement in the total release times for all jobs in the block is obtained in one complete cycle. The problem to be solved at each machine requires maximizing the sum of release times of operations subject to their availability by their ready times and completion by the specified due dates. For operation i in job j, the ready time is 14 and the due date is djt = c_,,,_i if i > 1 otherwise Sj^i+i if i < Nj dj otherwise. This problem is equivalent to minimizing total earliness subject to specified ready times (ERP). Let X be the set of operations processed on the machine currently under consider- ation. For the ease of presentation, we introduce the following modified notation. Let a,, 6,, ti, and /, denote, respectively, the ready time, due date, processing time, and completion time of operation i. Let 2} be the set of adjacent operations in job j. ERP can then be stated as: Minimize ^ (6, — /,) .61 subject to, /. > a. + ^, Vz /:<&., Vz f:-fh>Uy fh-f,>tk yi.h.i^h fi>f,+ti, V(^/)eJ,,V; /. >0, Vz Because the regular earliness problem is NP-complete. ERP is NP-complete as weU; there- fore, it is unlikely that a polynomial time algorithm exists for solving it exactly. We con- struct a heuristic solution algorithm which is a modification of the approximation method suggested by Chand and Schneeberger (1985) for the regular earliness problem. For the sake of completeness, we give an outhne of the Chand and Schneeberger heuristic below. The algorithm uses the Smith (1956) heuristic to build the schedule backwards by assigning one operation at a time. Suppose that at the end of a step i operations have been scheduled in positions .V — i-\-l through N. At the next iterative step, from among all operations feasible for assignment, the operation with the smallest processing time is selected and scheduled 15 such that it is completed at r = mm{6,, /[yv-i+i] — ^[^v-i+i]}- The schedule developed in this manner is optimal if ^[,] > ^[i+i], i = 1, ...,/— 1. Suppose a^ = {i,cr} and cr^ = {/i,z, cr} are two subsequences that satisfy the above opti- mality condition. Suppose further that the operation g selected at the next step yields the subsequence cr"^ = {g, h, i, cr] that violates this condition. The heuristic then backtracks to the partial solution 0/ Lmax)- As before, a feasible completion exists if and only if the optimal Lmax < 0. Although //I/tj > 0/Lmax is NP-complete in the strong sense, effective algorithms for solving it have been proposed by McMahon and Florian (1975) and Carher (1982) that are based on implicit enumeration. We modify Carlier's algorithm in order to improve its efficiency in the context of ERP. This is done by identifying conditions that lead to infeasible completions. Clearly, a positive lower bound on Lmax gives one such condition. Our computational experience revealed that the overall solution time improves if preprocessing to insure that two additional conditions are satisfied is carried out. These conditions are: 1) i > a, + i,, for all i 6 U, and 2) t > Y.ieu ^^ where t is the start time of the most recently scheduled operation and U is the set of operations yet to be scheduled. Modifying the start and the completion times of an operation of any job on a given machine results in revising the ready time for the succeeding operation and the due date for the 16 preceding operation in the same job. Thus, in general, rescheduHng a machine leads to updating the parameters for the next machine to be considered. Although it is difficult to theoretically guarantee convergence of the objective function value, we found it to be so in our computational experience; indeed, the bulk of the improvement was obtained within the first three cycles. In some cases, the solution to BMRP results in decomposing a block into two or more blocks. In such cases, the total number of blocks is updated. 4.3 Problem ICPl As discussed earlier, ICPl is bicriterion problem with the primary objective of minimizing mean tardiness of all jobs in J\. Our solution method consists of solving the mean tardiness problem first. The job due dates are then revised, if necessary, based on the resulting schedule. Given these due dates, the maximum release time problem is next solved following the procedure discussed in the previous section. In view of the strong NP-completeness of the mean tardiness problem, we propose using the heuristic method developed by Raman, Talbot and Rachamadugu (1989) which is briefly described now. This method generates an initial solution by first setting the operation due dates (ODDs) loosely at the maximum values that they can assume without delaying the corresponding jobs. The due date of operation i in job j is then given by I dj^ if i = Nj dj, = < I 6^j,j+i— Pji, otherwise The sequence of operations at each machine is obtained by applying the Modified Operation Due Date (See, for example. Baker 1984b) rule. Each machine is then considered in the order of its relative workload, and an attempt is made to revise the schedule of operations on that machine by modifying their ODDs. The jobs processed on this machine are ranked in the nonincreasing order of their tardiness. For any operation in a given job with positive tardiness, first we determine the appropriate interval for searching for its ODD. For each ODD value in this interval, the entire system is rescheduled. The value that yields the 17 minimum total tardiness is returned as the ODD for that operation. This step is repeated for all other operations of that job processed on the machine under consideration, for all other tardy jobs on that machine following their rank order, and for all machines in the system. From the minimum mean tardiness schedule, job due dates are revised according to dj <— max{dj, Cj). Subject to these due dates, we next solve BMRP for the jobs in J7i. Because a feasible schedule is available initially, we can go directly to the schedule improvement phase discussed in §4.2.2. 5 Computational Experience Three sets of experiments were conducted. The first two sets evaluated the performance of algorithm InputControl, while the third set addressed the improvement obtained in the sum of job release times by solving the dual-objective input control problem over the single-objective mean tardiness problem. While it is clear that exphcit consideration of the secondary objective should result in better solutions, the purpose of this set of experiments was to examine the margin of possible improvement achieved by using algorithm Input- Control. 5.1 Experimental Design The first set of experiments considered a single-machine problem with 10 jobs. Job processing times varied uniformly in the interval (0,100). The due date of dj of a given job j was determined by d, = F.iY.p,) (27) J where Fj was sampled from a uniform distribution in the interval (F — RF/2, F + RF/2). F and R respectively control the tightness and the variability of job due dates. Eight levels of F - 0.05, 0.10, 0.15, 0.20, 0.30, 0.40, 0.50, and 0.60, were used to give a wide range of due date tightness. At each of these eight levels, two values oi R - 0.5, and 1.5, were used to provide a total of 16 combinations of due date tightness and variability. 18 Ten instances of each problem scenario were randomly generated. We used IBM's Optimiza- tion Subroutine Library (OSL) to determine the optimal solution under each instance. The solution values with respect to total tardiness and the sum of job release times obtained under both the optimal and the proposed solution approaches were recorded and averaged over the ten problem instances. For reporting purposes, the total tardiness value was divided by the sum of job processing times to obtain the normalized value. Similarly, the sum of job release times was normahzed with respect to the sum of job due dates. The results are shown in Table 1 in which Z\ and Z2, respectively, denote normaHzed total tardiness and normahzed sum of release times. In total, the first set of experiments considered 160 problems. The second set evaluated the performance of InputControI with respect to known upper bounds for a 2-machine flow shop problem in which all job due dates are equal. Ahmadi and Bagchi (1992) develop an approach based on Lagrangean relaxation for deriving an upper bound on the solution value for this problem. This approach duahzes constraints (5) with nonnegative multipliers; this decomposes the original problem into two subproblems, one for each machine. The individual subproblems require maximizing the sum of weighted job completion times subject to no jobs being tardy. While this problem is NP-complete, Ahmadi and Bagchi construct a multiplier adjustment procedure for generating an upper bound on its solution value. The Lagrange multiphers are determined through a modified subgradient optimization procedure. To our knowledge, this is the only other upper bound available currently for multiple machine problems that address similar objectives. Let U B denote this upper bound. [Ahmadi and Bagchi also derive an upper bound for permutation schedules when job due dates are distinct. We do not consider this case here because InputControI is likely to generate many nonpermutation schedules as well.] We considered two problem sizes; the smaller problem considered 25 jobs while the larger problem had 50 jobs. The operation processing times were selected from a uniform distri- bution in the interval (0,100). All jobs had the same due date d which was determined by 19 j Five values of F - 0.6, 0.7, 0.8, 0.9, and 1.0 were used to generate increasingly loose due dates. [As reported in Ahmadi and Bagchi's (1992) study as well, we found that F < 0.6 led to due date infeasibility in many cases.] As in the first set of experiments, ten problem instances were solved for each scenario. For each instance, the ratio of Z2 obtained from InputControl to UB was recorded. The results reported in Table 2 indicate the average as well as the minimum and the maximum values of these ratios over the ten problem instances. In all, the second set of experiments considered 100 problems. The third set addressed a 5-machine job shop for three values of N - 10, 20, and 30. Each job was assigned 5 operations, and the machine visitation sequence was assigned randomly though successive operations of a given job were processed in different machines. Ten ran- domly generated instances of each problem scenario were solved using two approaches. The first approach employed InputControl that considered both primary and secondary ob- jectives. The second approach considered only the primary objective of minimizing total tardiness. In order to restrict the computational costs within reasonable limits, the Modified Operation Due Date (MOD) rule [see, for example. Baker 1984] was used for solving the mean tardiness problem under both approaches. Operation processing times were selected from a uniform distribution in the interval (0,100). As in the first set, jobs due dates were determined by (27) and 16 combinations of F and R were used. Table 3 gives the normahzed values of Zi and Z2 under the two approaches, as well as the ratio p = Z2(InputControl)/Z2(MOD). We also report the computation times for InputControl on an IBM 3081-GX2 computer. In total, the third set of experiments considered 480 problems. 5.2 Experimental Results It can be seen from Table 1 that InputControl finds solution values that are close to the optimal values, in particular when R = 1.5. Table 2 indicates that its performance extends to two-machine flow shops. On average, its solution value is within 6.9% of the upper bound across the tested problems. 20 As indicated in Table 3, Z\ decreases in all cases as due dates become progressively looser with an increase in F . For MOD, there is a decrease in Z2 as well. Recall that Z^ is normalized with respect to the sum of due dates; while an increase in F increases the due dates, the release times do not change appreciably. On the other hand, for InputControl, after an initial decrease, Z2 starts increasing as the release times are extended commensurate with the due dates. Note that for the same value of F, Z2 is generally higher for higher values of R. This is due to the fact that, with greater dispersion in job due dates, the final schedule contains a larger number of blocks. Hence, a larger portion of jobs is completed close to their due dates with consequent increase in release times as well. As indicated by the p values in Table 3, InputControl is seen to yield substantial im- provement in Z2 values over MOD even when due dates are quite tight. This improvement increases as due dates become looser, although for R = 0.5, there is a small decrease in p initially at small F values. Note also that InputControl gives marginally better total tar- diness values as well. This is due to the fact that InputControl first schedules jobs in J7i, while MOD considers all jobs to be schedulable at any given time. Therefore, in constructing a nondelay schedule, MOD frequently takes up a nonurgent job for processing if by doing so, machine idleness is avoided. This could delay the processing of an urgent job that arrives at the machine soon thereafter. 6 SUMMARY This paper examines the effectiveness of employing input control as a mechanism for deferring job release in a just-in-time system. The input control decision is modeled as a dual objective problem of minimizing total job tardiness and maximizing the sum of job release times in a lexicographic manner. In view of the problem complexity, a heuristic solution method is constructed in which jobs are grouped into blocks for simultaneous processing. The membership of each block is updated in an iterative manner by solving a sequence of subproblems. Our computational experience indicates that this approach yields substantial improvement in job release times, 21 without adversely affecting the tardiness values, over an approach that considers the single objective of minimizing total tardiness. This result is of interest to an operating manager who is responsible for controlling work-in-process and finished goods inventory related costs in addition to meeting due dates effectively. Acknowledgements The author thanks the Department Editor and two anonymous referees for their thoughtful and detailed comments, and suggestions that have greatly improved this paper. 22 REFERENCES 1. Ahmadi, R. H. and U. Bagchi (1992), "Minimizing Job Idleness in Deadline Con- strained Environments," Operations Research, Vol. 40, 972-985. 2. Baker, K. R. (1974), Introduction to Sequencing and Scheduling, John Wiley and Sons, New York, NY. 3. Baker, K. R. (1984a), "The Effects of Input Control in a Simple Scheduhng Model," Journal of Operations Management, Vol. 4, 99-112. 4. Baker K. R. (1984b), "Sequencing Rules and Due date Assignments in a Job Shop," Management Science, Vol. 30, 1093-1104. 5. Baker, K. R. and G. D. Scudder (1990), "Sequencing with Earhness and Tardiness Penalties: A Review," Operations Research, Vol. 38, 22-36. 6. Carher, J. (1982), "The One-Machine Scheduhng Problem," European Journal of Op- erational Research, Vol. 11, 42-47. 7. Chand, S. and H. Schneeberger (1985), "A Two-Stage Approximation Method for the Single Machine Weighted Earhness Problem," Working Paper # 424, Graduate School of Business Administration, The University of Michigan, Ann Arbor, MI. 8. Chand, S. and H. Schneeberger (1986), "A Note on the Single Machine Scheduhng Problem with Minimum Weighted Completion Time and Maximum Allowable Tardi- ness," Naval Research Logistics Quarterly, Vol. 33, 551-557. 9. Du, Z. and J. Y.-T. Leung (1990), "Minimizing Total Tardiness on One-Machine is NP-Hard," Mathematics of Operations Research, Vol. 15, 483-495. 10. Fry, T. D., R. D. Armstrong and J. H. Blackstone (1987), "Minimizing Weighted Absolute Deviation in Single Machine Scheduhng," HE Transactions, Vol. 19, 445- 450. 23 11. Garey, M. R., R. E. Tarjan and G. T. Wilfong (1988), "One- Processor Scheduling with Symmetric EarHness and Tardiness Penalties," Mathematics of Operations Research, Vol. 13, 330-348. 12. Hariri, A. M. A. and C. N. Potts (1983), "An Algorithm for Single Machine Sequencing with Release Dates to Minimize To Weighted Completion Time," Discrete Applied Mathematics, Vol. 5, 99-109. 13. Irastorza, J. C. and R. H. Deanne (1974), "A Loading and Balancing Methodology for Job Shop Control," A HE Transactions, Vol. 6, 302-307. 14. Kim, Y.-D. and C. A. Yano (1986), "Algorithms for Single Machine Scheduhng Prob- lems Minimizing Tardiness and Earhness," Technical Report 86-40, Dept. of Industrial and Operations Engineering, The University of Michigan, Ann Arbor, MI. 15. McMahon, G. and M. Florian (1975), "On Scheduhng with Ready Times and Due Dates to Minimize Maximum Lateness," Operations Research, Vol. 23, 475-482. 16. Panwalker, S. S., R. A. Dudek and M. L. Smith (1973), "Sequencing Research and the Industrial Problem," in Symposium on the Theory of Scheduling, edited by S. E. Elmaghraby, Springer- Verlag, Berlin. 17. Raman, N., F. B. Talbot and R. V. Rachamadugu (1989), "Scheduhng a General Flexible Manufacturing System to Minimize Tardiness Related Costs," BEBR Faculty Working Paper # 89-1547, Univ. of Illinois at Urbana-Champaign, Champaign, IL. 18. Rinnooy Kan, A. H. G. (1976), Machine Scheduling Problems: Classification, Com- plexity and Computations, Nijhoff, The Hague, Netherlands. 19. Shimoyashiro, S., K. Isoda and H. Awane (1984), "Input Scheduhng and Load Balance Control for a Job Shop," International Journal of Production Research, Vol. 22, 597- 605. 20. Smith, M. L., R. Ramesh, R. A. Dudek and E. L. Blair (1986), "Characteristics of U.S. Flexible Manufacturing Systems - A Survey," in Proceedings of the Second ORSA/TIMS Conference on Flexible Manufacturing Systems, Ann Arbor, MI, 477-486. 24 21. Smith, W. E. (1956), "Various Optimizers for Single Stage Production," Naval Research Logistics Quarterly, Vol. 3, 56-66. 22. Stecke, K. E. (1983), "Formulation and Solution of Nonlinear Integer Programming Problems for Flexible Manufacturing Systems," Management Science, Vol. 29, 273- 288. 23. Vepsalainen, A. P. J. and T. E. Morton (1987), "Priority Rules for Job Shops with Weighted Tardiness Costs," Management Science, Vol. 33, 1035-1047. 24. Yano, C. A. and Y.-D. Kim (1991), "Algorithms for a Class of Single- Machine Weighted Tardiness and Earliness Problems," European Journal of Operational Research, Vol. 52, 167-178. 25 TABLE 1 Performance of InputControl: The Single- Machine Case R F InputControl Optimal Zi Z2 Zi Z2 0.5 0.05 3.42 5.88 3.42 5.88 0.10 3.08 3.06 3.07 3.05 0.15 2.79 2.14 2.79 2.14 0.20 2.42 1.66 2.42 1.66 0.25 2.26 1.47 2.23 1.44 0.30 1.76 1.16 1.76 1.16 0.40 1.34 0.97 1.33 0.92 0.50 0.96 0.85 0.95 0.81 1.5 0.05 3.59 6.47 3.59 6.47 0.10 3.08 3.07 3.08 3.07 0.15 2.65 2.09 2.65 2.09 0.20 2.45 1.75 2.45 1.75 0.25 2.05 1.38 2.05 1.48 0.30 1.90 1.28 1.90 1.28 0.40 1.07 0.96 1.07 0.96 0.50 0.68 0.86 0.68 0.86 26 TABLE 2 Performance of InputControl: The Two-Machine Flow Shop Case N F Z2(InputControl)/f/5 Minimum Average Maximum 25 0.6 0.905 0.944 0.967 0.7 0.912 0.949 0.996 0.8 0.917 0.935 0.978 0.9 0.922 0.959 0.990 1.0 0.935 0.963 0.993 50 0.6 0.914 0.934 0.967 0.7 0.904 0.931 0.961 0.8 0.925 0.940 0.973 0.9 0.933 0.942 0.964 1.0 0.936 0.951 0.969 27 TABLE 3 Comparison of InputControl with MOD: The Job Shop Case N R F MOD InputControl P CPU seconds Zi Z2 Zi Z2 10 0.5 0.05 1.426 0.633 1.424 1.065 1.682 0.074 0.10 0.876 0.296 0.862 0.458 1.547 0.078 0.15 0.728 0.370 0.724 0.519 1.402 0.114 0.20 0.319 0.236 0.312 0.387 1.640 0.119 0.25 0.115 0.188 0.114 0.427 2.272 0.098 0.30 0.018 0.162 0.018 0.503 3.105 0.127 0.40 0.009 0.166 0.009 0.616 3.711 0.137 0.50 0.000 0.113 0.000 0.693 6.133 0.016 1.5 0.05 1.303 0.876 1.299 1.085 1.238 0.068 0.10 0.860 0.312 0.858 0.517 1.657 0.080 0.15 0.510 0.236 0.507 0.431 1.826 0.097 0.20 0.415 0.261 0.415 0.514 1.969 0.116 0.25 0.144 0.181 0.142 0.488 2.696 0.123 0.30 0.123 0.148 0.121 0.597 4.034 0.123 0.40 0.062 0.134 0.062 0.668 4.985 0.111 0.50 0.034 0.109 0.033 0.729 6.688 0.142 28 TABLE 3 (continued) Comparison of InputControl with MOD: The Job Shop Case N R F MOD InputControl P CPU seconds z. Z2 Zi Z2 20 0.5 0.05 1.819 0.838 1.802 1.208 1.441 0.941 0.10 1.242 0.533 1.224 0.708 1.328 0.906 0.15 0.534 0.387 0.525 0.549 1.419 0.866 0.20 0.102 0.292 0.102 0.497 1.702 1.502 0.25 0.013 0.245 0.012 0.549 2.241 1.586 0.30 0.000 0.223 0.000 0.654 2,933 1.434 0.40 0.000 0.150 0.000 0.768 5.120 0.977 0.50 0.000 0.132 0.000 0.819 6.204 2.094 1.5 0.05 1.812 0.920 1.795 1.247 0.491 1.355 0.10 1.122 0.504 1.097 0.723 1.434 1.028 0.15 0.610 0.443 0.595 0.655 1.478 0.885 0.20 0.174 0.309 0.171 0.640 2.071 1.109 0.25 0.067 0.263 0.065 0.696 2.646 1.404 0.30 0.008 0.233 0.008 0.763 3.275 1.364 0.40 0.005 0.157 0.005 0.809 5.142 1.091 0.50 0.000 0.131 0.000 0.875 6.679 1.232 29 TABLE 3 (continued) Comparison of InputControl with MOD: The Job Shop Case N R F MOD InputControl P CPU seconds Zi Z2 Zi Z2 30 0.5 0.05 2.391 0.970 2.346 1.285 1.325 4.412 0.10 1.545 0.590 1.507 0.791 1.341 6.970 0.15 0.600 0.462 0.578 0.626 1.355 5.955 0.20 0.092 0.335 0.090 0.544 1.624 8.149 0.25 0.000 0.282 0.000 0.668 2.368 9.060 0.30 0.000 0.239 0.000 0.740 3.096 12.636 0.40 0.000 0.178 0.000 0.764 4.341 10.453 0.50 0.000 0.137 0.000 0.808 5.898 15.654 1.5 0.05 2.381 0.947 2.343 1.348 1.423 4.534 0.10 1.134 0.628 1.102 0.754 1.201 4.399 0.15 0.467 0.484 0.448 0.684 1.413 3.530 0.20 0.082 0.337 0.080 0.734 2.178 8.314 0.25 0.054 0.306 0.049 0.717 2.343 9.642 0.30 0.000 0.237 0.000 0.731 3.084 13.711 0.40 0.000 0.178 0.000 0.842 4.730 20.451 0.50 0.000 0.154 0.000 0.767 4.980 26.066 30 Ml 10 M2 11 M3 Figure 1: A Typical Feasible Schedule 31 d2 Ml r. 1 q2 1 2 C2 di d3 M2 r. q'3 1 3 1 ir^ < d, M3 r. (^3 d, BMRP CTP Figure 2: An Illustration of the Equivalence between BMRP and CTP 32 HECKMAN BINDERY INC, JUN95 uoJ-To.Pkas^ N.MANCHESTER INDIANA 46962