t Parthasarati Dileepan is U.C. Foundation Associate Professor of the Department
of ..... This computational experiment is repeated for n = 4, 6, 8, 10, 12, and 15.
Computers Ops Res. Vol. 20, No. 2, pp. 179-184, Printed in Great Britain. All rights reserved
1993
0305-0548/93 s5.00 + 0.00 Copyright 0 1992 Pergamon Press Ltd
COMMON DUE DATE SCHEDULING PROBLEM WITH SEPARATE EARLINESS AND TARDINESS PENALTIES PARTHASARATI DILEEPANt Department of Management, The University of Tennessee at Chattanooga, 615 McCaflie Avenue, Chattanooga TN 37403, U.S.A. (Received
April 1991; in revised form March
1992)
Scope and Purpose-In this paper a static single-machine scheduling problem is considered where a common due date for a set of jobs is determined. The scheduling criterion is the unction of the sum of weighted earliness and tardiness values. Early research in scheduling problems with due dates, assumed the due dates to be given parameters. But, in many instances due dates for orders are negotiated rather than simply dictated by the customers. Therefore it is important to consider the due date as a decision variable. This is evident from the increasing number of papers appearing in the literature where the due date is determined. It is well understood by practitioners as well as researchers that early completion of orders, like tardy completion, is undesirable. Therefore, both earliness and tardiness values of jobs are included in the scheduling criterion, in this paper. Abstract-This paper considers the problem of linding an optimal schedule and a common due date for a set of jobs, in a static single machine system. The scheduling criterion is the minimization of the weighted sum of earliness and tardiness values. Different weights are considered as the earliness penalty and tardiness penalty, for each job. A branching procedure is presented for finding an optimal solution. An almost optimal heuristic is also presented.
1. INTRODUCTION
This paper considers the problem of developing a schedule and a common due date for a number of jobs in a static single machine system such that the weighted sum of earliness and tardiness values is minimized. Cheng [l] considered this problem with identical penalties for job earliness and tardiness values. He presented a partial search algorithm for determining an optimal solution and the corresponding colon due date. Here, we consider separate earliness and tardiness penalties for each job. The nature of cost associated with early completion of a job differs fundamentally with the nature of cost associated with its tardy completion. Cost of early completion stems from additional inventory holding cost and ineffective use of resources. On the other hand, cost of tardy completion arises from penalty for late delivery and lost goodwill. Therefore, it is relevant to consider the problem with separate earliness and tardiness penalty for each job. In this paper, a branching algorithm for dete~ining an optimal solution to the problem is presented. Hall and Posner [ 21 have shown this class of common due date determination problem to be NP-complete. Therefore, the branching algorithm presented here is a reasonable approach for solving this problem. In addition, a heuristic procedure that develops near-optimal solutions is also discussed. Finally, computational results for these solution procedures are given. But first, an overview of the relevant literature is presented below. Job scheduling problems with due dates have been studied with(i) due dates assumed as exogenous and (ii) due dates treated as decision variables whose values must be determined. The problem considered in this paper falls into the later class. Cheng and Gupta [3] surveyed the literature dealing with scheduling problems where the due dates are determined. Among such problems are the ones where a common due date is determined for each job. Several examples of these problems are found in the literature. Kanet [4] noted that a set of jobs needed to meet an assembly schedule will have a common due date. Hall [ 51 observed that a single customer placing several orders with no precedence relationships may be scheduled with a generalized due date that is determined. t Parthasarati Dileepan is U.C. Foundation Associate Professor of the Department of Management at The University of Tennessee at Chattanooga Tennessee. He received a B.E. from the University of Madras, Madras, India, an M.B.A. and a Ph.D. in Management Science from the University of Houston, University Park, Houston, Texas. He has numerous publications in prestigious journals such as Masers Science, OMEGA, and Computers & Opffario~ Research. He has afso presented many papers in professional conferences. 179
PARTHASARATI DILEEPAN
180
Several variations of the common due date determination problem have appeared in the literature. In one of the early published results, Kanet (1981) presented an algorithm for minimizing the mean absolute lateness. Bag&i et at. [6] showed that Kanet’s problem is equivalent to the Z-parallel machine, mean flowtime problem. Sundararaghavan and Ahmed [7] extended Kanet’s results to m parallel identical machines. Bagchi et al. [8] considered the problem with minimizing mean squared deviation of completion times about a common due date as the scheduling criterion. Panwalker et al. [9] were the first to consider different penalties for earliness and tardiness in the context of common due date assignment problems. They considered the problem with three penalties, one for due date, one for earliness value of each job and the other for tardiness value of each job. They developed an elegant algorithm for minimizing the total penalty. Bagchi et al. [lo] examined the sum of weighted absolute and squared deviations about a common due date with common earliness/tardiness penalty for all the jobs. They presented a branching algorithm for solving the problem. Cheng [ 1 ] extended the problem with individual earliness/tardiness penalty for each job. He presented an 0(@2”) partial search algorithm for finding an optimal sequence and the corresponding common due date. In this paper the problem is considered with two penalties for each job, one for the earliness value and the other for the tardiness value.
THEORETICAL
RESULTS
Let N = (1,2,..., n> be the jobs available for scheduling in a static single machine system. Let ti be the processing time for job i, and bi and a, be the corresponding earliness and tardiness penalties respectively. Then, for an arbitrary schedule of the n jobs S, the completion time for the job in the ith position CB] = cfi= 1 ttll. Also, let d be the common due date for each job in S. Then, the penalty function, whose value must be minimized, is given by,
ZtSvd) = C b,ijtd- C,i1)+ 1 U[il(CIi]- d) isA
ifB
where, B = set of jobs with Cul < d, and A = set of jobs with CIil> d. Kanet [4] noted that there cannot be any inserted idle times in an optimal schedule for the corresponding unwei~ted problem. A similar logic can be utilized to show that the same is true for this problem also. Lemma I. In an optimal schedule the common due date d = CliI for some i. Lemma 2. In an optimal schedule the jobs in set B, should be arranged in non-increasing order of ti/bi and the jobs in set A, should be arranged in non-decreasing order of t,/a,. Proof of Lemma 1 and 2 are similar to that of Kanet [4] for the unweighted problem, and Cheng [l] for that of weighted problem with identical earliness and tardiness penalties. Lemma 2 suggests a V-shaped optimal solution with respect to ti/bi values for the jobs in set B, and ti/‘ai values for the jobs in set A. This is similar to the results for the unweighted Kanet’s problem. ~~eu~ern 1. In an optimal schedule, the sum of the tardiness penalties of the jobs in set A is less than or equal to the sum of earliness penalties of the jobs in set B. Proof Suppose that S is an optimal schedule with d = Ctkl, for which Theorem That is,
1 is not true.
i$X bIil < j=;+ n 1 utJF Since d = t[,] + . . . -i- t[,, is the due date, Z(S, d) = b,,,(d - C,,,) + . . . + b,,- ,@ - C,,- 1,) + q,c+ &k+ i.e.
= b&,,
+ *.. + $1) + a.. +
bfk-l]t[k]
+
a[k+&k+ll
II - 4 + . . . + q,,W,1 f
v-1
+
u[n,(tIk+l]
***
+
+
‘**
+
+
*a.
- 4, t[n])e
Now, consider shifting the due date to d’ = t[,, + . . . + tfk+ll. Then, Z(S,d’) = b,,l(ti2l + . . . +
t[k+l])
+
*..
+
b[k+[k+l]
+
u[k.Z]t[k+2]
+
+&k+2]
+
$a])*
181
Scheduling problem with earliness and tardiness penalties
Subtracting the former from the latter, Z(S,d’) - Z(g,d) = b[,,t[k+l, + .** + b[k,t[k+l] =
t[k+l,{b[l,
+
..*
+
b,k,)
-
u[k+l]t[k+l]
b[k+l,
+
***
+
.** -
a[n]t[k+l]
a[,,)>*
This is ~0. Therefore the schedule S, with d as the common due date, cannot be optimal. This proves the theorem. The three results stated above are incorporated into a branching algorithm.
THE
BRANCHING
ALGORITHM
At the very outset let all the n jobs, arranged in Lemma 2 order, constitute the set B and let A be the null set. This represents the root node of the branching tree. When branching from a given node, new nodes are created by removing each job in set B and including it as the first job in the set A. If this violates either Lemma 2 or Theorem 1 for a particular job, then the corresponding new node is not created. Each node created in this fashion represents a solution with the completion time of the last job in set B as the common due date. The branching is continued until all the nodes in the tree have been considered and no new nodes are generated. The value of the objective function is calculated for each node and the current best solution is updated. The following example illustrates the branching procedure. The branching tree is shown in Fig. 1. Only the jobs in the set A are shown for each node. The rest of the jobs in set B are in Lemma 2 order for each node. Example Consider the following numerical example Job
4 h 01 0, Ma,
1
2
3
4
5
22 5 3 4.4 1.3
5 2 1 2.50 0.71
15 6 6 2.5 2.5
10 7 7 1.43 1.43
4 3 5 1.33 0.80
HEURISTIC
PROCEDURE
The following Lemma develops an algebraic expression for the possible improvement in the value of the objective function if a job is removed from the set B and included in the set A. Lemma 3. Let u be the change in the objective function value if job [i] E B is removed from B and included in the set A immediately after job [j] such that Lemma 2 for set A is satisfied. Then,
228
257
228
m OPTIMAL Fig. 1.
cm
20:2-F
253
273
The branching tree.
229
259
248
182
PARTHASARATIDILEEPAN
Proof: Consider the following schedule S. Suppose that the jobs in the sets B and A are scheduled in Lemma 2 order. i
1
k
k+l
n
j
I
Note that d = ttll + . . . + tIkl. Then, Z(S> 4 = i $& a=1
f
- C,,) +
h&C - &,l
g=k+l
Now, remove job [i] from B and insert it in A immediately after [j]. Then, the new due date d is d - t[i]. Using the same indexes for the jobs as in the schedule S, i-l Z(S’,d’)
=
c g=l
+
q#
-
C,,,)
+
i Q(b g=i+ 1
.=$+, 4d(Gl- ‘1 +
f
g=j+l
-
c;g1>
4g]tC[g, - d’)+ b[i](C[*]
-
d’)
In the above, C;,, = Cte, for jobs before i and after j. Also note that, d - Cfg, = d’ - C;,, for all the jobs after i in B, and, Csl - d’ = Ctgl - d for jobs up to and including job j in set A. Then, i-l o=Z(S,d)-Z(S’,d’)=
c
$g](d
-
d’)
g=1
+
i
b[g](d’
tpl
0 =
-
d)
+
U[i](d
-
C[i]) - b[i](C;i]- d’)
g=j+l
Gel + %I )
This proves the lemma. Note: If cr > 0, then removing job [i] from B and inserting it after the job [j] in A would reduce the objective function value by the amount rr. This idea is utilized in the ensuing heuristic procedure. Heuristic
Step 1. Let the set B = {1,2,..., n}, and the set A = ( }. Let d = CInl. Step 2. Arrange the jobs in the set B according to the Lemma 2 order. Step 3. If there is no job that can be removed from the set B and inserted into the set A without violating theorem 1, stop. Step 4. Compute the value of o for removing each job in set B and inserting it in set A in a position such that the jobs will be in Lemma 2 order. If all the c values are non-positive, stop. Step 5. Select the job i with the most positive cr value and insert it into the set A according to Lemma 2 order. Update the value of d; (d’ = d - ti). Then go back to Step 3. Example Consider the following numerical example Job
1
G/al
22 5 3 4.4 7.3
G
22
ai tilb,
2
3
4
5 4 3 5 1.33 0.80
15 6 6 2.5 2.5
10 7 I 1.43 1.43
27
42
52
56
48
99
88
60
5 2 I 2.50 0.71
highest Q value
B = {1,2,3,4,5} A={ 1 d=56,Z=340
Scheduling problem with earliness and tardiness penalties Job
2
3
4
5
t
11 b, ai
5 2 7
15 6 6
10 7 7
4 3 5
22 5 3
G
5
20
30
34
56
*
8
-21
183
B = {23>4,S) A=(l) d=34,Z=236
8 highest c value
Job
2
3
4
5
1
ii ai
2 5 7
15 6 6
10 7 7
4 :
225 3
G
5
20
30
34
56
CT
-25
-69
B={2,3,4} A={S,l} d=3O,Z=208
-48
The schedule found by the heuristic is 2 - 3 - 4 - 5 - 1 with d = Ct3] = 30. The value of the penalty function for this solution is 208. This is the optimal solution found by the branching algorithm discussed earlier. The computational effort required for stage 2 of the heuristic algorithm is bounded by frogs. Also, the number of computations required for stages 3 and 4 is at the most n2.
COMPUTATIONAL
EXPERIMENTATION
The branching algorithm and the heuristic are coded in FORTRAN IV and tested in an IBM 4381 computer. Problem data are generated according to the following scheme. The processing times are generated at random from uniform distributions with p = 20, 40, 60 and coefficients of variation (CV) equal to 20, 40 and 80%. For each combination of ~1and CV values, the penalties (Ui and bi values) are generated at random according to three methods: (a) from a uniform distribution between 1 and 10, i.e. U( 1, lo), (b) from U( 1,5) if processing time is less than ~1and from U(5,lO) otherwise, and (c) from U(5,lO) if processing time is less than p and from U( 1,5) otherwise. For each of these 27 combinations, 20 problems are generated. They are solved using the branching algorithm as well as the heuristic procedure. For the solutions generated by the branching algorithm, the number of nodes (NNODES) in the branching tree and the CPU time in seconds (BCPU) are gathered. For the solutions obtained by the heuristic procedure, the value of the objective function as a percentage of the optimal value found by the branching algorithm (%HEUR), the CPU time in seconds (HCPU), and the percentage reduction in the CPU time (%CPU) with respect to the CPU time taken by the branching algorithm for the corresponding problem are gathered. This computational experiment is repeated for n = 4, 6, 8, 10, 12, and 15. The summary of the results for each job size is presented in Table 1. There was no recognizable pattern in the computational results among the different parameter values used for problem generation. The heuristic solutions are remarkably close to the optimal ones. Therefore, for large problems, the heuristic solution may provide a very good alternative to an optimal solution that can be found only with considerable computational effort, The heuristic was tested for problems with n = 50 and n = 100. For each of these two n-values 540 problems,
Table 1. Average computational Branching atgorithm
n 4 6 8 10 12 15
NNODES 7 31 I22 476 1898 15,293
statistics for each n-value Heuristic procedure
BCPU Is)
%HEUR
HCPU (s)
%CPU
0.01 0.02 0.04 0.13 0.60 5.39
100.1 loo.7 101.2 100.8 101.3 101.0
0.002s 0.0029 0.0034 0.0042 0.0053 0.0075
75.0 85.4 91.4 96.7 99.1 99.9
184
PARTHASARATI DILEEPAN
as described earlier, were solved. The average CPU time for solving a problem with n = 50 was 0.46 s and with n = 100 was 4.8 s.
CONCLUSIONS
This paper addresses the problem in which each job has separate earliness and tardiness penalties. A branching algorithm and a simple heuristic have been developed for sequencing the jobs and assigning a common due date such that a weighted sum of earliness/tardiness is minimized for the single machine system. It may be noted that the branching algorithm and the heuristic procedure discussed in this paper can be used for Cheng’s [ 11 problem where the earliness and tardiness penalties are identical for each job.
REFERENCES 1. T. C. E. Cheng, A note on a partial search algorithm for the single-machine optimal common due-date assignment and sequencing problem. Computers Ops Res. 17, 321-324 (1990). 2. N. Hall and M. E. Posner, Earliness-tardiness scheduling problems, I: weighted deviation of completion times about a common due date. Ops Res. 39, 836-846 (1991). 3. T. C. Cheng and M. C. Gupta, Survey of scheduling research involving due date determination decisions. Eur. J. Opf Res. 38, 156-166 (1989). 4. J. J. Kanet, Minimizing the average deviation of job completion times about a common due date. Nav. Res. L@st. Q. 2%,643-651 (1981). 5. N. Hall, Scheduling problems with generalized due dates. IIE ‘hns. 18, 220-222 (1986). 6. U. Bagchi, R. S. Sullivan and Y. Chang, Minimizing mean absolute deviation of completion times about a common due date. Nav. Res. Logist. Q. 33, 227-240 (1986). 7. P. S. Sundararaghavan and M. U. Ahmed, Minimizing the sum of absolute lateness in single-machine and multi-machine scheduling. Nav. Res. Logist. Q. 31,32.5-333 (1984). 8. U. Bag&i, R. S. Sullivan and Y. Chang, Minimi~ng mean squared deviation of completion times about a common due date. Mgmt Sci. 33,894~906 (1987). 9. S. S. Panwalkar, M. L. Smith and A. Siedmann, Common due date assignment to minimize total penalty for the one machine scheduling problem. Ops Res. 30,391-399 (1982). 10. U. Bagchi, Y. Chang and R. S. Sullivan, Minimizing absolute and squared deviations of completion times with different earliness and tardiness penalties and a common due date. Nav. Res. Logist. Q. 34,739-751 (1987).