Transcript
Page 1: The selection and scheduling of textile orders with due dates

European Journal of Operational Research 44 (1990) 11-16 11 North-Holland

Case Study

The selection and scheduling of textile orders with due dates

H e l m a n I. S T E R N * Department of Industrial Engineering and Management, Ben Gurion University of the Negev, Beersheva, Israel

Z i o n AVIVI Umar Textiles, Ltd., Ashkelon, Israel

Abstract: This paper describes a case study of a textile firm. The problem was reduced to a 0-1 integer program which selects the best subset of orders that maximizes revenue while meeting due dates (a problem that is NP-hard). Because of the limited technical competence of the firm's employees a 'bes t of three heuristic' solution procedure was proffered. Each of the heuristics are greedy with polynomial complexity of O(n 2) where n is the number of possible orders available for selection. These algorithms were tested using real problem data and gave results of 4.5 (on average) percent error of maximum revenue. This was within the five percent limit specified by the firm. Initial successful implementation followed by disbandonment due to economic downturn displays the need for more strategic approaches to abet the implementation of operations research methodologies.

Keywords: Job scheduling, integer programming, greedy heuristics, textile production, job selection

1. Introduction

This paper describes a case study of a textile firm. The firms manufacturing plant contains 48 wide modern weaving machines for cotton fabrics and 8 narrow weaving machines for wool fabrics. Orders are assigned to either the wide or narrow machines according to the type of fabric re- quested. For a given fabric type all the looms are identical so that any order may be processed on any loom. Presently the number and size of orders exceeds the capacity of the looms. The sales de-

* Now at the San Francisco State University, San Francisco, USA.

Received June 1989

partment must decide which orders to accept and which to reject. This decision had traditionally been based solely on a profitability criteria without regard to the production departments schedule. Consequently, the firms looms were overloaded and due dates not met by the production depart- ment. Recognizing the interdependence of the de- cisions made by each of these two departments top management decided to coordinate their activ- ities in a manner more beneficial to the overall goals of the firm. This meant devising a scheme to select only those orders that will maximize reve- nues without exceeding the production depart- ment 's capability of meeting the desired due dates.

The approach toward solving this problem was first to conduct an examination of orders accord-

0377-2217/90/$3.50 © 1990, Elsevier Science Publishers B.V. (North-Holland)

Page 2: The selection and scheduling of textile orders with due dates

12 H.L Stern, Z. A vivi / Selection and scheduling of textile orders with due dates

ing to each orders profit rate, due date and fabri- cation time. The nature of these orders allowed them to be split among the available looms. In addition, since each order was assigned to a wide or narrow machine according to the type of fabric ordered it was possible to decompose the problem into two separate and structurally equivalent prob- lems. Each such problem can be viewed as that of the selection and scheduling of preemptive jobs with due dates on identical machines with the objective of maximizing the weighted number of early (accepted) jobs. Similar problems have been treated in the literature (see for example, Lawler and Moore [2]) with the goal of finding the opti- mal solution. The solution techniques are complex namely because this problem falls in the class of combinatorially difficult problems deemed NP- Hard. For this reason we have proffered an ap- proximate solution method.

The textile production case study is described in the next section. In Section 3 the problem is formulated as a 0-1 integer program. Heuristic procedures are discussed in Section 4. Section 5 reports on computational experience with the heuristic. The closing remarks in Section 6 com- plete the paper.

of the order is increased. A histogram of the sample of job processing times was plotted, and found to be uniform between the limits of 5 and 45 machine weeks. Thus, unrealistic negative re- turns for the function p~ lie outside the domain of use.

Discussions with the sales department revealed that a job was rejected if it was assessed that its due date could not be met. The assessment had been on a purely judgemental basis with limited success. It was desired to provide a more valid analytical procedure to determine whether jobs should be selected or rejected. The scheduling horizon is in three month intervals. The selection process is carried out four times a year (January, April, July and October). If a potential customer submits a job say in June the firm informs him that only in July will they be able to tell him if the job can be accepted and when it will be scheduled. Since the demand is greater than the production capacity of the firm this luxury allows the inclu- sion of priorities for good customers. Preferred customers can be selected by artificially increasing their rate of return by some weighting coefficient. Real problem sizes can be up to 30 jobs and 10 machines. A more concrete description of the problem is given below.

2. The textile production problem Problem definition

Revenue and job size data were collected from a local firm. For a sample size of 150 linear regression was applied to determine the relation- ship between the independent variable ti (job processing time in machine weeks for job i) and the dependent variable r~ (return rate in dollars per week of processing time). The resultant func- tion, with a coefficient of regression of r 2 = 0.96, was found to be

r~ = 11.08 - 0.15t~.

This indicates that the rate of return is in- versely proportional to the size of the order (meas- ured in weeks of required processing time). It follows that the total return function p~ = r~ti is concave in t~ and of the form

p~ = ll.08t~ - 0.15t 2.

This reflects decreasing returns to scale and is consistent with firm's pricing structure. This struc- ture is a graduated decreasing sale price as the size

The problem is to select among n candidate jobs, each with a due date falling within a given planning horizon, that subset of feasible jobs which can maximize return. A feasible job is a job which can be completed before its due date i.e.; no late jobs are allowed. Here it is assumed that the total work content of all jobs submitted is larger than the machine capacity for the planning period. Jobs are assumed to be independent and can be pre- empted (split) into parts which can be processed concurrently on several machines. For example, if the duration of job i is t i and job i is equally split and concurrently processed on 3 machines, then job i will be completed in ½ti units of time. Each machine, however, can process at most only one job at any point in time. This is unlike the pre- emptive scheduling problem treated by Sahni [4] in which no job can simultaneous be processed by more than one machine.

Let each job i be described by its processing time, t~, revenue, p~, and due date, di. Since

Page 3: The selection and scheduling of textile orders with due dates

H.I. Stern, Z. Avivi / selection and scheduling of textile orders with due dates 13

preempt ion is allowed with s imultaneously processing a job with a processing requirement of t~ time units may be processed simultaneously on m machines and completed in time t ' = t y m . Equivalently, if the same job were to be assigned to a ficticious machine that is m times faster, its due date constraint would take the form

t; <, d,.

This provides the opportunity to express the problem as scheduling a set of selected jobs on one machine with job due dates d i and processing times t ' , The set of selected jobs are determined in a manner that maximizes total return or revenue. An optimal formulation for this problem is given in the next section.

Proposition 1. I f job i is not accepted, then the i-th due date constraint is not effective.

Proof. To show this let j represent the last accepted job in A which is located before job i in the EDD sequence. Let LHS k denote the value of the left hand side of the k-th constraint. It follows that LHSj <~ dj and LHS~ = LHS c Hence, LHS~ ~< dj ~< d~.

Problem reduction

Since our due dates were in weekly increments there were many tied d,'s. The set of constraints with identical due dates may be replaced with the last constraint in the ordered list. This leads to the following proposition:

3. Mathematical formulation of the problem

Define a binary decision variable x i equal to 1, if job i is selected and 0, if job i is rejected. Let us assume that the jobs are ordered in such a way that i ~ j implies that di ~< d i. The jobs are said to be in earliest due date (EDD) sequence. Let Z be the total revenue. The following 0-1 integer pro- gramming problem describes the problem for- mally:

A 0-1 integer program

Max Z = ).~ pkxk (1) k = l

i

subject to Y'~ t£x k ~ d i, i = 1 . . . . . n, (2) k = l

x ~ = 0 , 1 , k = l . . . . . n. (3)

Let the set of accepted jobs be denoted as A. The set of jobs in A are said to be feasible if the completion time of each job is less than or equal to its due date. It is well known (see Baker [1, p.36] that for a single machine problem, a se- quence containing no late jobs exists if and only if the EDD sequence contains no late jobs. For any set of selected jobs A = { k l x k = 1} constraint (2) represents the due date feasibility constraints of the jobs arranged in EDD sequence. Note that the left hand side of the ith constraint represents the completion time of job i if it is accepted.

Proposition 2. Let S represent a set of jobs with common due date d. Let the cardinality o f S be q. Arrange the jobs in S according to some arbitrary order [di, d: . . . . . d i . . . . . dq] where d, = d, Vi ~ S. Then the set of constraints

i

t ~ x k < ~ d i = d , i = 1 . . . . . q, (4) k = l

can be replaced by a single consraint

T_, t ;xk <'% d,, = d. (5) k ~ S

Proof. Let { xk I k ~ S } be feasible for (5). Since t k > 0, k ~ S, the left hand side of any constraint in (4) is also less than or equal t o dq and thus feasible. Thus, the q - 1 constraints in (4) with right hand sides d 1, d 2 . . . . . dq 1 are redundant and may be dropped.

Applying this reduction proposition to our problem instances resulted in considerable reduc- tions in problem size. For example, problems with thirty jobs were reduced to the order of five to ten constraints.

Solution methods

This formulation has appeared in Lawler and Moore [2] who provide a pseudopolynomial dy- namic programming procedure that operates in time.

Page 4: The selection and scheduling of textile orders with due dates

14 H.L Stern, Z. A vivi / Selection and scheduling of textile orders with due dates

Potts and van Wassenhove [3] provide a reduc- tion technique followed by methods for obtaining upper and lower bounds which are employed in a branch and bound optimal procedure. They also provide empirical evidence that show problems with p~ and t~ correlated are harder than problems with uncorrelated values of Pi and ti. As was shown in Section 2, p~ and ts are correlated for our case study. Although Potts and Van Wassen- hove [3] are able to solve problems with up to 1000 jobs their procedure is quite complicated computationally. Because the firm did not possess a computer nor did they employ personnel with technical computer competence, it was decided to provide a simple procedure to solve the firm's problem in order to insure its acceptance and implementation. It was agreed that such a proce- dure need not solve the problem optimally but should have a margin of error under 5 percent on average.

(b) checking if the candidate job and each job that appears after it in the new schedule list can be completed before their due dates.

Step 1. Set k---1, S k =t~. Place all jobs in L according to rule R. Reindex jobs to correspond to their position in L, i.e., the k-th job in the list is job number k.

Step 2. Select job k from list L. Step 3. Insert job k temporarily in list S k

according to EDD order. Let job k ' s position be q, i.e., [q] = k.

Step 4. Feasibility test. If all jobs in position j of list S k ( j >/q) are feasible, i.e., c M ~< dlj j then accept job k in S k. Otherwise, reject job k and remove it from S k.

Step 5. Set k - - k + 1. If k > n then stop (the list S k provides the set of accepted jobs scheduled according to EDD order), otherwise return to Step 2.

4. Heuristic algorithm for maximizing revenue for jobs with due dates

Two algorithms A1 and A2 are described. In both procedures the jobs are examined in se- quence according to some ordering rule R. Several ordering rules, R, were examined. Among them were:

RI: order the jobs by nonincreasing revenue Pi, R2: order the jobs by nonincreasing revenue rate

r i = p i t , .

Notation

k = iteration number (k = 1 . . . . . n), L = ordered list of unexamined jobs, S k = ordered list of accepted jobs at iteration k, [ j ] = index of the job in position j of the list S k, clj I = completion time of the job assigned to

position j.

Algorithm A 1

This heuristic is a greedy algorithm which ex- amines each job exactly once and either accepts or rejects the job. The decision to accept a candidate job involves two operations:

(a) the insertion of the candidate job into the list of previously accepted jobs scheduled accord- ing to early due date (EDD) order, and

Algorithm A2

The above algorithm is modified as follows: In Step 1 we use the rule R3-order the jobs by nondecreasing due date d i (EDD). Since the jobs are examined in EDD order the candidate job k is placed at the end of the list S k in Step 3. Thus, in Step 4 one need only conduct one feasibility test - - t h a t for the incumbent job k. If it fits we accept it. Otherwise, before rejecting it we attempt to remove a job scheduled before k. We temporarily remove the scheduled job with the minimum reve- nue rate, i.e., job j ' such that

m i n { r i l i ~ S k, i ~ k } = 0 ' i f • ' < r k "

If this makes job k feasible, i.e. t

c[k ] -- t[j,] <~ d[k ]

then the incumbent k is accepted and j ' is removed. Otherwise, we temporarily remove the job in S k that has the next lowest revenue, and so o n .

Complexity of A 1

Ordering the jobs by some rule R 1 or R2 takes time O(n log n). At iteration k the insertions by binary search require at most O(log k) operations.

Page 5: The selection and scheduling of textile orders with due dates

H. L Stern, Z. A vivi / selection and scheduling of textile orders with due dates 15

Table 1 Data

Job no. i 1 2 3 4 5 6

Processing time, t, 7 12 8 6 9 7 Due date, d, 3 10 4 9 3 7 Revenue, p~ 70 132 72 48 63 91 Revenue rate, r, = p i / t , 10 11 9 8 7 13

Thus, Step 3 requires at most O(n log n) time. The maximum number of feasibility checks at iteration k is k. Step 4 then requires a total of at most ½n(n + 1) checks. The complexity of the overall algorithm when using R1 or R 2 is 2n log n + ½n(n + 1) which implies a worst case perfor- mance of O(n~).

Complexity of A2

The last accepted feasible schedule is S = [3, 6, 2] with a total revenue of Z = 295. Using R 2 in A1 the ordered list becomes

L = [ 6 2 1 3 4 5]

with associated

r , = [ 1 3 11 10 9 8 7].

The accepted feasible schedule is S = [1, 6, 2] with Z = 293. This solution is also obtained from A2 with rule R 3. At the last iteration the previously scheduled job 4 is replaced by job 2. Solving the 0-1 integer program shows the optimal solution is S ° = [3, 6, 2], Z ° = 295. The optimal solution was also found by AI(R1). This, of course, does not imply that the A1(R1) heuristic is superior as the computer experiment described in the next section demonstrates.

The complexity of A2 is determined as follows: Ordering the jobs according t o R 3 takes time O(n log n). In lieu of a binary search in Step 3 we simply place job k at the end of the ordered list S ~. However, Step 4 requires a binary search to maintain a list of jobs in S k in increasing order of r i. Again at most k comparisons of r, and k feasibility tests are made for job k. Thus, the complexity is again O(n2).

Using these three rules we apply the one pass heuristic to the following 6 j o b - 3 machine exam- ple.

Example

The data and results of using Algorithm A1 with rule R 1 are shown in Tables 1 and 2.

Table 2 Steps of Algorithm 2 using R 1

Iteration Job Candidate, Feasibility Accepted k examined S k test list

1 2 2 Accept 2 2 6 6, 2 Accept 6, 2 3 3 3, 6, 2 Accept 3, 6, 2 4 1 1, 3, 6, 2 Reject 3, 6, 2 5 5 5, 3, 6, 2 Reject 3, 6, 2 6 4 3, 6, 4, 2 Reject 3, 6, 2

5. Computational evaluation of the heuristic

The algorithm was tested for eight problem cases of ten trials each. The number of jobs was taken as 5, 10, 25 and 30 for 3 and 10 machines. The last case (corresponding to 30 jobs and 10 machines) was the largest real size problem encountered by the firm. For each trial job processing times were selected randomly from a uniform distribution and the associated return selected according to the regression function found earlier. Due dates were also selected so that they exceeded the job processing time divided by the number of machines. For each case jobs were scheduled using each of the three rules and the total return compared to the optimal found by solving the integer program.

The mean percent error was 17.53. 7.87 and 8.01 when using rule R 1, R 2 and R 3 respectively in the appropriate algorithm. Selecting the best result obtained from all three heuristic rules yielded an average error of 4.55 percent which falls within the acceptable error limit specified by the firm. It is easily seen that using rules R~ (maximum revenue rate) and R 3 (minimum due date) was superior to rule R~ (maximum revenue). Statistical tests however, showed that neither R~ or R 3 were superior to each other. Figure 1 pro- vides a bar chart of the average percent error for each of the eight cases tested. No conclusions

Page 6: The selection and scheduling of textile orders with due dates

16 H.L Stern, Z. Avivi / Selection and scheduling of textile orders with due dates

% !0

7.8~

5 10 25 30

Jobs

| J 13 Machine ~ IO Machine I

Figure 1. Percent error between optimal and heuristic solutions

could be made regarding the algorithms perfor- mance as a function of problem size.

soon abandoned (as well as plans to invest in a microcomputer DSS) because of an economic downturn in the demand for textile products. It is typical for the textile industry to experience peri- odic swings in its economic well-being. During periods of weak demand the textile industry is characterized by excess production capacity and no longer has the luxury of rejecting orders. The selection and scheduling problem discussed in this paper then becomes irrelevant. However, during such periods of slack demand a computerized DDS could be employed to support complemen- tary activities such as more aggressive advertising and marketing programs. This highlights the need for a more comprehensive strategic approach to abet the implementation of operations research methodologies.

6. Concluding remarks

Although the firm's textile production problem could be solved to optimality using existing integer programming codes, because of the lack of techni- cal computer oriented employees it was decided to provide heuristic procedures that could quickly be carried out by hand calculations. Three fast greedy algorithms were provided to find approximate solutions. These algorithms were tested using real problem data and gave results to within the five percent error specified by the firm. It was pointed out however, that the cost to develop or purchase a microcomputer integer programming based (de- cision support system) DDS (to solve the order selection and scheduling problem optimally) could be recovered in less than a year due to the oppor- tunity to realize a five percent (on average) in- crease in revenue.

Although the 'best of three heuristic' procedure was implemented with successful results it was

Acknowledgement

Special thanks are given to Oleg Pekerman and Eyal Ram for their assistance and to L.N. Van Wassenhove for pointing out his results to this problem.

References

[1] Baker, K.R., Introduction to Sequencing and Scheduling, John Wiley, New York, 1974.

[2] Lawler, E.L., and Moore, J.M., "A functional equation and its application to allocation and sequencing problems", Management Science 16 (1969) 77-84.

[3] Potts, C.N., and Van Wassenhove, L.N., "Algorithms for scheduling a single machine to minimize the weighted number of late jobs", Management Science 34 (1988) 843-858.

[4] Sahni, S., "Preemptive scheduling with due dates", Oper- ations Research 27 (1979) 925-934.


Recommended