Transcript
Page 1: Single machine scheduling with a variable common due date and resource-dependent processing times

Available online at www.sciencedirect.com

Computers & Operations Research 30 (2003) 1173–1185www.elsevier.com/locate/dsw

Single machine scheduling with a variable common due dateand resource-dependent processing times

C.T. Daniel Nga ; ∗, T.C. Edwin Chenga, Mikhail Y. Kovalyovb, S.S. Lamc

aDepartment of Management, The Hong Kong Polytechnic University, Hung Hom, Kowloon, Hong KongbInstitute of Engineering Cybernetics, National Academy of Sciences of Belarus, Minsk 220012, Belarus

cSchool of Business & Administration, The Open University of Hong Kong, Homantin, Kowloon, Hong Kong

Received 1 March 2001; received in revised form 1 November 2001

Abstract

The problem of scheduling n jobs with a variable common due date on a single machine is studied.It is assumed that the job processing times are non-increasing linear functions of an equal amount of aresource allocated to the jobs. The due date and resource values can be continuous or discrete. The objectiveis to minimize a linear combination of scheduling, due date assignment and resource consumption costs.The resource consumption cost function may be non-monotonous. Algorithms with O(n2 log n) running timesare presented for scheduling costs involving earliness=tardiness and number of tardy jobs. Computationalexperiments show that the algorithms can solve problems with n= 5; 000 in less than a minute on a standardPC.

Scope and purpose

We study a problem that combines scheduling, common due date assignment and resource allocation de-cisions. Due date scheduling is an important area of scheduling research because it focuses on customersatisfaction. Variable common due date applies to situations where several items constitute a single cus-tomer’s order and the due date for the order can be negotiated. Resource-dependent processing times appearwhenever resources can be employed to adjust processing requirements. Polynomial time algorithms are pre-sented for minimizing a linear combination of scheduling, due date assignment and resource consumptioncosts. Computational experiments demonstrate their e>ciency in solving large-scale problem instances.? 2002 Elsevier Science Ltd. All rights reserved.

Keywords: Single machine scheduling; Common due date assignment; Controllable processing times

∗ Corresponding author. Tel.: +852-2766-7364; fax: +852-2774-3679.E-mail address: [email protected] (C.T.D. Ng).

0305-0548/03/$ - see front matter ? 2002 Elsevier Science Ltd. All rights reserved.PII: S0305-0548(02)00066-7

Page 2: Single machine scheduling with a variable common due date and resource-dependent processing times

1174 C.T.D. Ng et al. / Computers & Operations Research 30 (2003) 1173–1185

1. Introduction

The following single machine scheduling problem with a variable common due date and resource-dependent processing times is studied. There are n independent, non-preemptive and simultaneouslyavailable jobs to be scheduled for processing on a single machine. Each job j has a processingtime pj; j = 1; : : : ; n, and is to be assigned a common due date d; d¿ 0. The due date d is acontinuous or discrete variable, and the job processing times are linearly non-increasing functionsof an equal amount of a continuously divisible or a discrete resource x used for performing thejobs: pj = uj − vjx, where uj is the normal (maximum) value of the processing time and vj is thecompression rate, i.e., reduction of the processing time per unit of the resource used, j = 1; : : : ; n. Itis assumed that x∈ [0; xmax] and uj − vjxmax ¿ 0; j = 1; : : : ; n.

A solution to the problem speciHes the job schedule S and the values of d and x. Given a solution,the job completion times Cj; j = 1; : : : ; n, can be calculated. The objective is to Hnd a solution suchthat the cost function F(S; d; x) is minimized. We consider F(S; d; x)∈{∑n

j=1 (�Ej + �Tj + �d) +g(x);

∑nj=1 (�Uj+�d)+g(x)}, where Ej=max{0; d−Cj} is the earliness of job j; Tj=max{0; Cj−d}

is its tardiness, and∑

Uj is the number of tardy jobs such that Uj = 0 if j is early (Cj6d) andUj = 1 if j is tardy (Cj ¿d); j = 1; : : : ; n. The resource consumption cost function g(x) may benon-monotonous for x∈ [0; xmax]. More precisely, we assume that it satisHes Properties 1 and 2presented in Section 3.

If the job processing times are Hxed, then there exists an optimal schedule for which the machinehas no idle time from time zero until it Hnishes the processing of the last job, see Panwalkar et al.[1] and Cheng [2]. Clearly, this statement also holds for variable processing times. Therefore, weconsider such schedules only, and so any schedule can be represented by its job sequence.

There exist many practical situations in which problems combining scheduling with common duedate assignment arise. Examples can be found in Wheelright [3], Smith and Seidmann [4], Ragatz andMabert [5], Cheng and Gupta [6], Baker and Scudder [7] and Cheng [2]. They include just-in-timeproduction, assembly scheduling, batch delivery, project management and shoe making. Schedulingproblems with controllable processing times are observed in steel production, part manufacturing,project management, see, for example, Williams [8], Vickson [9,10], Van Wassenhove and Baker[11], Nowicki and Zdrza lka [12], Janiak [13], Blazewicz et al. [14], Janiak and Portmann [15] andChen et al. [16].

It is natural to study problems combining scheduling, due date assignment and controllable pro-cessing times. To the best of our knowledge, only Cheng et al. [17] and Biskup and Jahnke [18]study the problems of this type. Cheng, Oguz and Qi consider the single machine problem in whichthe model for job processing times is pj = uj − xj; 06 xj6 Oxj6 uj; 16 j6 n, the resource con-sumption cost is g(x1; : : : ; xn) =

∑nj=1 bjxj, and the job due dates to be assigned are dj = d (the

common due date model) or dj = pj + k (the slack due date model), j = 1; : : : ; n. Cheng, Oguz andQi reduce their problem to an assignment problem.

Biskup and Jahnke give the following examples where the resource allocation is the same for alljobs. In steel production, a furnace can be heated to a speciHc temperature every day before theprocessing of an order for ingots (jobs) starts. It is not beneHcial to change the temperature forevery single job. A higher temperature reduces the processing time of the jobs but incurs a cost forusing the furnace. A similar situation is observed for a machine on which some tools have to beperiodically changed. When a new tool is installed, a decision about the production power of the

Page 3: Single machine scheduling with a variable common due date and resource-dependent processing times

C.T.D. Ng et al. / Computers & Operations Research 30 (2003) 1173–1185 1175

tool used in the coming time period has to be made. For example, a drilling machine can run with adiamond drill, a high- or low-quality steel drill. If the diamond drill is set up, then the jobs can beprocessed faster than with a steel drill by incurring a higher cost. Another example is an assemblyline the speed of which depends on the number of workers and tools available. It is generally notpossible or advantageous to change the speed during the day.

This paper can be considered as an extension of the results of Biskup and Jahnke. The maindiQerence is that Biskup and Jahnke assume that the dependence of the job processing timeson the resource value is such that pj = uj(1 − x); j = 1; : : : ; n. This means that the processingtime compression rate is equal to the normal processing time for each job. It is clear that ourmodel is more general for describing practical situations. For example, consider the situation witha drilling machine. In this situation, the normal processing time of a job depends on the com-plexity of the shape of the part to be drilled, its dimensions, weight, material it is made from,and the number and depth of holes to be drilled. The processing time compression rate dependsonly on the latter three factors. The second diQerence is that we allow the values of the due dateand the resource to be discrete. In the above example, the resource is discrete. The third diQer-ence is that Biskup and Jahnke assume the resource consumption cost g(x) to be a monotonousincreasing function for x∈ [0; xmax]. We allow this function to have several local minima within[0; xmax]. Such a situation exists in reality. For example, when the resource is obtained from asupplier in batches and a non-full batch is more expensive than a full one because it is notstandard.

We call the job sequence (j1; : : : ; jn) the SPT sequence if the jobs are placed in the shortestprocessing time order such that pj1 6 · · ·6pjn . Since the job processing times depend on x, theremay exist many SPT sequences. However, in the next section, we show that there are at most O(n2)distinct feasible SPT sequences. For our purposes, we do not distinguish the SPT sequences thatdiQer only in the positions of the jobs with equal processing times. In Sections 3 and 4, we use thisresult to derive O(n2 log n) time algorithms for the problems with earliness=tardiness and number oftardy jobs scheduling costs, respectively. For the number of tardy jobs, we also identify an errormade by Biskup and Jahnke [18]. Computational results are given in Section 5. They conHrm thee>ciency of the presented algorithms on randomly generated instances with up to 5000 jobs. Thepaper concludes with some remarks and suggestions for future research.

2. Constructing all the SPT sequences

Let us represent the job processing times as the lines y=pj(x) = uj − vjx; j= 1; : : : ; n, in the x–yplane. Further, construct all the intersection points of these lines for 06 x6 xmax. An example isgiven in Fig. 1.

For each intersection point (x; y), denote the set of lines that intersect at (x; y) as I(x; y). Theremay be several intersection points with the same x-coordinate. Denote the set of y-coordinates ofsuch points as Y (x).

There are at most n(n−1)=2 intersection points. These points and their associated sets I(x; y) andY (x) can be found in O(n2) time. Sort the distinct x-coordinates of the intersection points, togetherwith 0 and xmax, in increasing order such that 0 = x0 ¡x1 ¡ · · ·¡xk = xmax; k6 n(n − 1)=2 + 1.This sorting requires O(k log k)6O(n2 log n) time.

Page 4: Single machine scheduling with a variable common due date and resource-dependent processing times

1176 C.T.D. Ng et al. / Computers & Operations Research 30 (2003) 1173–1185

Fig. 1. Lines y = uj − vjx; j = 1; : : : ; n, and their intersections.

It is clear that for any x∈ [xi−1; xi]; i∈{1; : : : ; k}, the job processing times can be numbered suchthat pji1

6 · · ·6pjin . Therefore, for any x∈ [xi−1; xi], there exists a unique (if we do not distinguishthe jobs with equal processing times) SPT sequence. This sequence can be found in O(n log n) timeby calculating the job processing times for x = (xi−1 + xi)=2 and sorting them in non-decreasingorder. Let us denote this sequence as Q(i) = (ji1; : : : ; j

in).

Observe that, in order to obtain sequence Q(i+1) from sequence Q(i), it is su>cient to reverse theorder of the jobs that correspond to the distinct lines from I(xi; y) for each y∈Y (xi). Let qi bethe number of such distinct lines. Then sequence Q(i+1) can be constructed in O(qi) time if Q(i) isgiven, i = 1; : : : ; k − 1. Sequence Q(1) can be constructed in O(n log n) time. For the example givenin Fig. 1, we have Q(1) = (3; 2; 1); Q(2) = (3; 1; 2) and Q(3) = (1; 3; 2).

It is easy to see that the problem of minimizing F(S; d; x) with x∈ [0; xmax] reduces to k analogousproblems with x∈ [xi−1; xi]; i = 1; : : : ; k.

3. Minimizing earliness=tardiness

Consider the problem of minimizing F(S; d; x)=∑n

j=1 (�Ej+�Tj+�d)+g(x), subject to x∈ [xi−1; xi];i∈{1; : : : ; k}. Denote an optimal schedule, optimal due date and resource values by S(i); d(i) andx(i), respectively.

For the development of our algorithm, we need the following lemma. Calculate

b = max{

0;⌈n(� − �)� + �

⌉}:

Lemma 1. If b = 0; then an associated optimal due date is d = 0; and if b¿ 0; then there existsan optimal schedule where the job sequenced bth completes at d. Moreover; the objective function

Page 5: Single machine scheduling with a variable common due date and resource-dependent processing times

C.T.D. Ng et al. / Computers & Operations Research 30 (2003) 1173–1185 1177

F(S; d; x) for an arbitrary job sequence S = (j1; : : : ; jn) can be written as

F(S; d; x) =n∑

r=1

wrpjr + g(x);

where

wr =

{(r − 1)� + n�; if r6 b;

(n− r + 1)�; if r ¿b;

is the positional weight of job jr .

Proof of Lemma 1 for Hxed processing times can be found in Panwalkar et al. [1] and Bakerand Scudder [7]. In their proofs, it is immaterial whether processing times are Hxed or variable.Therefore, Lemma 1 holds for variable processing times.

According to the result of the previous section, if x∈ [xi−1; xi], then Q(i) = (ji1; : : : ; jin) is such a

sequence that pji16 · · ·6pjin . In this case, it follows from Lemma 1 that an optimal job sequence

S(i) can be found in O(n log n) time by the following matching procedure. In addition to the SPTsequence Q(i), consider the sequence (k1; : : : ; kn) such that wk1 ¿ · · ·¿wkn . In the sequence S(i), jobjir is sequenced krth, r = 1; : : : ; n.

It is easy to see that, similar to Q(i+1) and Q(i), sequence S(i+1) can be obtained from S(i) byreversing the order of jobs corresponding to the distinct lines from I(xi; y) for each y∈Y (xi).Therefore, sequence S(i+1) can be constructed in O(qi) time if S(i) is given. Sequence S(1) can beconstructed in O(n log n) time.

For the Hxed job sequence S(i) = (li1; : : : ; lin) and variables x and d, calculate

F(S(i); d; x) =n∑

r=1

wrplir + g(x) =n∑

r=1

wr(ulir − vlir x) + g(x) = K (i) − L(i)x + g(x);

where K (i) =∑n

r=1 wrulir and L(i) =∑n

r=1 wrvlir . Therefore, the problem with x∈ [xi−1; xi] reduces tominimizing g(x) − L(i)x, subject to xi−16 x6 xi.

It is easy to see that K (i+1) and L(i+1) can be calculated in O(qi) time if I(xi; y); y∈Y (xi) andK (i); L(i) are given. K (1) and L(1) can be calculated in O(n) time if sequence S(1) is given.

The function g(x) may possess the following properties.

Property 1. For any x∈ [0; xmax]; g(x) is computable in a constant time.

Property 2. For an arbitrary constant L; function g(x) − Lx has a ;nite number of local minimain [0; xmax] that can be found in a constant time.

Properties 1 and 2 are satisHed for many functions such as polynomials of at most power Hve,some power functions, exponential and trigonometric functions. For example, if g(x) is a polynomialof power Hve, then its derivative g′(x) is a polynomial of power four. Local minima of the functiong(x)− Lx are among the solutions of the equation g′(x) = L, which is of power four. There are fourroots (solutions) for this equation and they can be found analytically in a constant time, see, forexample Herstein [19].

Page 6: Single machine scheduling with a variable common due date and resource-dependent processing times

1178 C.T.D. Ng et al. / Computers & Operations Research 30 (2003) 1173–1185

If Property 2 is satisHed, let e(i)1 ; e(i)

2 ; : : : ; e(i)c be the local minima of g(x)− L(i)x in [0; xmax]. Then

x(i) ∈{xi−1; xi; e(i)1 ; : : : ; e(i)

c } ∩ [xi−1; xi] for a continuously divisible resource and x(i) ∈{�xi−1�; xi;e(i)

r ; �e(i)r � | r = 1; : : : ; c} ∩ [xi−1; xi] for a discrete resource. If Property 1 is additionally satisHed,

then x(i) and F(S(i); d(i); x(i)) can be found in a constant time. Note that we do not need d(i) tocalculate the value of the function.

Let (S∗; d∗; x∗) denote an optimal solution to the problem with x∈ [0; xmax]. It is easy to see that

F(S∗; d∗; x∗) = min{F(S(i); d(i); x(i))|i = 1; : : : ; k}: (1)

If S∗ = (li1; : : : ; lin) and x∗ are known, then

d∗ =b∑

r=1

plir =b∑

r=1

(ulir − vlir x∗): (2)

The algorithm for calculating (S∗; d∗; x∗) and F(S∗; d∗; x∗) can be described as follows.

Algorithm ET.

Step 1: Calculate intersection points x0 = 0; x1; : : : ; xk = xmax and corresponding sets Y (xi) andI(xi; y); y∈Y (xi); i = 0; 1; : : : ; k.Step 2: Calculate value b and coe>cients wr; r = 1; : : : ; n. Find sequences Q(1) and S(1). Set i= 1

and go to Step 4.Step 3: Transform sequence S(i−1) into the sequence S(i) optimal for x∈ [xi−1; xi].Step 4: Calculate values K (i) and L(i).Step 5: Find a solution x(i) to the problem of minimizing g(x) − L(i)x, subject to xi−16 x6 xi.

Compute F(S(i); d(i); x(i)) = K (i) − L(i)x(i) + g(x(i)).Step 6: If i¡ k, then set i = i + 1 and go to Step 3.Step 7: Calculate F(S∗; d∗; x∗) and d∗ by using (1) and (2), respectively.

Above we have shown that Step 1 requires O(n2 log n) time. Moreover, S(1); K (1); L(1) and x(1) canbe found in O(n log n) time, and S(i); K (i); L(i) and x(i) can be found in O(qi) time for i = 2; : : : ; k.In the appendix, we prove that

∑ki=1 qi6 n(n− 1). Therefore, if function g(x) possesses Properties

1 and 2, the time complexity of Algorithm ET is O(n2 log n).

Example. Consider the problem with n=3 jobs; in which �=1; �=2; �=1 and g(x)=x2. Functionsfor job processing times are given in Fig. 1. According to Algorithm ET; we calculate the following:

k = 3; x0 = 0; x1 = 6; x2 = 9; x3 = 12; b = max{

0;⌈

3(2 − 1)3

⌉}= 1;

w1 = 3; w2 = 4; w3 = 2; (k1; k2; k3) = (2; 1; 3); Q(1) = (3; 2; 1);

S(1) = (2; 3; 1); K (1) = 93; L(1) =296; x(1) =

2912

; F(S(1); d(1); x(1)) = 8723144

;

S(2) = (1; 3; 2); K (2) = 96; L(2) =163; x(2) = 6; F(S(2); d(2); x(2)) = 100;

Page 7: Single machine scheduling with a variable common due date and resource-dependent processing times

C.T.D. Ng et al. / Computers & Operations Research 30 (2003) 1173–1185 1179

Fig. 2. Line y = �=(n�) and the lines y = uj − vjx; j = 1; : : : ; n.

S(3) = (3; 1; 2); K (3) = 102; L(3) = 6; x(3) = 9; F(S(3); d(3); x(3)) = 129;

F(S∗; d∗; x∗) = F(S(1); d(1); x(1)) = 8723144

; S∗ = (2; 3; 1); x∗ = 2512

; d∗ = p2(x∗) = 91924

:

4. Minimizing the number of tardy jobs

Consider the problem of minimizing F(S; d; x) =∑n

j=1(�Uj + �d) + g(x), subject to x∈ [xi−1; xi];i∈{1; : : : ; k}. For solving the problem, the following lemma is used.

Recall that Q(i) = (ji1; : : : ; jin) is the SPT sequence such that pji1

6 · · ·6pjin for any x∈ [xi−1; xi].Set pjin+1

= ∞.

Lemma 2. For any x∈ [xi−1; xi]; Q(i) is an optimal job sequence. Moreover; if pji1¿ �=(n�); then

an associated optimal due date is d = 0; and if pjia 6 �=(n�)6pjia+1for minimal a = 1; : : : ; n; then

an associated optimal due date d coincides with the completion time of job jia.

Lemma 2 is proved in Cheng [2] for Hxed processing times. Since it is immaterial whetherprocessing times are Hxed or variable in this proof, Lemma 2 is correct if processing times arevariable.

Consider the interval [xi−1; xi], the lines y =pj(x) = uj − vjx; j = 1; : : : ; n, and the line y = �=(n�).An example is given in Fig. 2.

Assume without loss of generality that there is no line with vj = 0 and uj = �=(n�), i.e., there isno job with constant processing time pj = �=(n�). If there is such a job, then according to Lemma2, it is always tardy in an optimal schedule.

Construct intersection points of the lines y = uj − vjx with the line y = �=(n�) in the interval[xi−1; xi]; i = 1; : : : ; k. Find distinct x-coordinates of the intersection points and sort them together

Page 8: Single machine scheduling with a variable common due date and resource-dependent processing times

1180 C.T.D. Ng et al. / Computers & Operations Research 30 (2003) 1173–1185

with xi−1 and xi so that xi−1 = x0i ¡ x1

i ¡ · · ·¡xnii = xi. Clearly, x0i+1 = xnii ; i = 1; : : : ; k − 1, and the

total number of distinct points xli ; i=1; : : : ; k; l=0; 1; : : : ; ni, does not exceed k +n+1. Their sortingcan be done in O((k + n)log(k + n))6O(n2 log n) time.

It follows from Lemma 2 that for any x∈ [0; xmax], the optimal number of early jobs is equal tothe number of lines lying strictly below the line y = �=(n�) at point x. These numbers change atpoints xli . For x = x0

1 = x0 = 0, denote the number of lines lying strictly below the line y = �=(n�) asa0

1. It is easy to see that a01 = |{j|uj ¡�=(n�); j = 1; : : : ; n}|. For any x from the semi-open interval

(xl−1i ; xli ], the number of lines lying strictly below the line y = �=(n�) is the same. Denote it as

ali ; i = 1; : : : ; k; l = 1; : : : ; ni. We have al+1i = ali + kli , where kli is the number of lines y = uj − vjx

that intersect with y= �=(n�) at point x= xli . Note that some of these lines may be identical. Valuesa0

1 and ali ; i = 1; : : : ; k; l = 1; : : : ; ni, can be calculated in O(n2) time.

For x= x01 = 0, an optimal job sequence is Q(1) = (j1

1 ; j12 ; : : : ; j

1n), optimal due date is d0 =

∑a01

r=1 uj1r

and F(Q(1); d0; 0) = F0 = �(n− a01) + �nd0 + g(0).

For x∈ (xl−1i ; xli ]; i = 1; : : : ; k; l = 1; : : : ; ni, an optimal job sequence is Q(i) = (ji1; j

i2; : : : ; j

in), and

we have

F(Q(i); d; x) = �(n− ali) + �nali∑r=1

pjir + g(x) = U (l; i) − V (l; i)x + g(x);

where U (l; i)=�(n−ali)+�n∑ali

r=1 ujir and V (l; i)=�n∑ali

r=1 vjir . Therefore, the problem with x∈ (xl−1i ; xli ]

reduces to minimizing g(x) − V (l; i)x, subject to xl−1i ¡ x6 xli . We now prove that the left endpoint

xl−1i can be included in latter inequalities.

Denote by F1 the objective function value calculated for Q(i); xl−1i and al−1

i being the numberof early jobs. Denote by F2 the objective function value calculated for Q(i); xl−1

i and ali being thenumber of early jobs.

Lemma 3. F1 = F2.

Proof. We have

F1 = �(n− al−1i ) + �n

al−1i∑r=1

(ujir − vjir xl−1i ) + g(xl−1

i )

=F2 + �(ali − al−1i ) − �n

ali∑r=al−1

i +1

(ujir − vjir xl−1i ):

Observe that ujir − vjir xl−1i = �=(�n) for r = al−1

i + 1; : : : ; ali ; because the corresponding lines intersectwith the line y = �=(�n) at point xl−1

i . From this observation it follows that F1 = F2.

If the inHmum of the function F(Q(i); d; x) for x∈ (xl−1i ; xli ] is reached at point xl−1

i , then Lemma3 shows that a solution of the same quality exists for x = xl−1

i .

Page 9: Single machine scheduling with a variable common due date and resource-dependent processing times

C.T.D. Ng et al. / Computers & Operations Research 30 (2003) 1173–1185 1181

Denote an optimal solution to the problem of minimizing g(x)− V (l; i)x, subject to xl−1i 6 x6 xli ,

as x(l; i). As in the previous section, x(l; i) can be found in a constant time if function g(x) possessesProperties 1 and 2.

Sequence Q(i+1) can be constructed in O(qi) time if Q(i) is given. U (l+1; i) and V (l+1; i) can becalculated in O(kli ) time if U (l; i) and V (l; i) are given.

Let S∗; d∗ and x∗ be an optimal job sequence, optimal due date and resource values, respectively,for x∈ [0; xmax]. It is easy to see that

F(S∗; d∗; x∗) = min{F0; F(Q(i); d; x(l; i))|i = 1; : : : ; k; l = 1; : : : ; ni}: (3)

Given S∗ = (ji1; : : : ; jin) and x∗ = x(l; i), the optimal due date value is

d∗ =ali∑r=1

pjir =ali∑r=1

(ujir − vjir x(l; i)): (4)

A formal description of the algorithm for minimizing the number of tardy jobs is given below.

Algorithm NT.

Step 1: Calculate intersection points xli and numbers ali of lines lying strictly below the liney = �=(n�) at point xli ; l = 0; 1; : : : ; ni; i = 1; : : : ; k.Step 2: Find SPT-sequence Q(1) = (j1

1 ; j12 ; : : : ; j

1n). Calculate d0 and F0 = F(Q(1); d0; 0). Set i = 1.

Step 3: If i¿ 1, transform sequence Q(i−1) into the sequence Q(i) = (ji1; ji2; : : : ; j

in) optimal for

x∈ [x0i ; x

nii ]. Set l = 1.

Step 4: Calculate values U (l; i) and V (l; i).Step 5: Find a solution x(l; i) to the problem of minimizing g(x)−V (l; i)x, subject to xl−1

i 6 x6 xli .Compute F(Q(i); d; x(l; i)) = U (l; i) − V (l; i)x(l; i) + g(x(l; i)).Step 6: If l¡ni, then set l = l + 1 and go to Step 4. If l = ni and i¡ k, then set i = i + 1 and

go to Step 3.Step 7: Calculate F(S∗; d∗; x∗) by using (3) and Hnd d∗ from (4).

Similar to the previous section, one can verify that the problem with the number of tardy jobsscheduling cost can be solved in O(n2 log n) time, if function g(x) possesses Properties 1 and 2.

Example. Consider the problem with n = 3 jobs; in which � = 21; � = 1 and g(x) = x2. Functionsfor job processing times are given in Fig. 2. According to Algorithm NT; calculate the following:

k = 3; n1 = 2; x01 = 0; a0

1 = 0; x11 = 3; a1

1 = 0; x21 = 6; a2

1 = 1;

n2 = 3; x20 = x2

1 ; a20 = a2

1; x12 = 7; a1

2 = 1; x22 = 8; a2

2 = 2; x32 = 9; a3

2 = 3;

n3 = 1; x03 = x3

2 ; a03 = a3

2; x13 = 12; a1

3 = 3;

Q(1) = (3; 2; 1); d0 = 0; F0 = F(Q(1); d0; 0) = 63;

Page 10: Single machine scheduling with a variable common due date and resource-dependent processing times

1182 C.T.D. Ng et al. / Computers & Operations Research 30 (2003) 1173–1185

U (1;1) = 63; V (1;1) = 0; x(1;1) = 0; F(Q(1); d; x(1;1)) = 63;

U (2;1) = 66; V (2;1) = 1; x(2;1) = 3; F(Q(1); d; x(2;1)) = 72;

Q(2) = (3; 1; 2); U (1;2) = 66; V (1;2) = 1; x(1;2) = 6; F(Q(2); d; x(1;2)) = 96;

U (2;2) = 87; V (2;2) = 4; x(2;2) = 7; F(Q(2); d; x(2;2)) = 108;

U (3;2) = 99; V (3;2) =112; x(3;2) = 8; F(Q(2); d; x(3;2)) = 119;

Q(3) = (1; 3; 2); U (1;3) = 99; V (1;3) =112; x(1;3) = 9; F(Q(3); d; x(1;3)) = 130

12;

F(S∗; d∗; x∗) = F(Q(1); d0; 0) = 63; S∗ = (3; 2; 1); x∗ = 0; d∗ = 0:

Biskup and Jahnke [18] describe an O(n log n) time algorithm for the case pj = uj(1 − x); j =1; : : : ; n, and a function g(x) increasing for x∈ [0; xmax]. Since the only intersection point for thelines y = uj(1 − x); j = 1; : : : ; n, is x = 1, we have k = 1 in this case and our algorithm runs inO(n log n) time as well.

The algorithm of Biskup and Jahnke assumes that the optimal resource value is x0 ∈{0; y0h+1;

y0h+2; : : : ; y

0n}, where y0

j = 1 − �=(n�uj) and h is such that uh6 �=(n�)6 uh+1. The algorithm iscorrect if the functions g(x) − V (l;1)x; l = 1; : : : ; n1, reach their minima at the points 0; y0

h+1; : : : ; y0n.

Otherwise, a better solution may exist.For example, consider the problem with parameters n= 2; p1 = 1− x; p2 = 2(1− x); �= 3; �= 1

and g(x) = 10x2. Calculate �=(n�) = 32 and h= 1. According to the algorithm of Biskup and Jahnke,

y20 = 1 − �=(n�u2) = 1

4 and x0 ∈{0; 14}. The optimal job sequence is S∗ = (1; 2). If the resource

value is y20, then p1(y2

0) = 34 and p2(y2

0) = 32 . The due date calculated for y2

0 is d′ = C1 = 34 .

Therefore, there is one tardy job and F(S∗; d′; y20) = � + n�d′ + g(y2

0) = 518 . If the resource value

is 0, then p1(0) = 1 and p2(0) = 2. The corresponding due date is d0 = 1. The value deliveredby the algorithm of Biskup and Jahnke is F(S∗; d0; 0) = 5. However, according to our algorithm,we minimize the function g(x) − �nx = 10x2 − 2x, subject to 06 x6 1

4 . The minimum of thisfunction is reached at x = 1

10 . Calculate p1(x) = 910 ; p2(x) = 9=5 and d = C1 = 9

10 . In this case,F(S∗; d; x) = 3 + 2d + 10x2 = 4:9¡F(S∗; d0; x0).

5. Computational experiment

To evaluate the e>ciency of algorithms ET and NT, we have implemented them in C languageand applied them to solve randomly generated instances of the problems with the following tworesource consumption cost functions: g(x) = x2 and g(x) = x3 − 30x2 + 30x.

In our experiments, the number of jobs n varies from 100 to 5000. The normal value of theprocessing time, uj, and the compression rate, vj, are uniformly sampled from the ranges [50,100]and [1,10], respectively. The xmax value is chosen such that uj − vjxmax ¿ 0 is guaranteed for allj. Other parameters of the objective functions are uniformly sampled from the following ranges:

Page 11: Single machine scheduling with a variable common due date and resource-dependent processing times

C.T.D. Ng et al. / Computers & Operations Research 30 (2003) 1173–1185 1183

Table 1Computation time of Algorithm ET

Number of jobs n CPU time (s)

g(x) = x2 g(x) = x3 − 30x2 + 30x

Min. Max. Average Min. Max. Average

100 ¡ 10−6 ¡ 0:1 ¡ 0:1 ¡ 10−6 ¡ 0:1 ¡ 0:1500 0.2 0.3 0.3 0.3 0.3 0.31000 1.0 1.1 1.0 1.0 1.1 1.02000 4.0 4.3 4.1 4.0 4.3 4.13000 9.2 10.4 9.6 9.3 9.9 9.54000 16.7 18.1 17.2 16.6 17.7 17.25000 26.6 29.2 27.5 26.8 28.2 27.5

Table 2Computation time of Algorithm NT

Number of jobs n CPU time (s)

g(x) = x2 g(x) = x3 − 30x2 + 30x

Min. Max. Average Min. Max. Average

100 ¡ 10−6 ¡ 0:1 ¡ 0:1 ¡ 10−6 ¡ 0:1 ¡ 0:1500 0.2 0.3 0.3 0.2 0.3 0.21000 0.9 1.0 1.0 0.9 1.0 1.02000 3.9 4.1 4.0 3.8 4.4 4.03000 8.8 9.4 9.2 8.9 9.4 9.14000 16.2 17.2 16.7 16.2 17.3 16.65000 26.0 28.0 26.6 25.9 29.2 26.8

�∈ [1; 10]; �∈ [1; 10]; �∈ [1; 10], and �∈ [10; 50]. For each value of n, 30 problem instances aregenerated and solved using a PC with an Intel PIII 866 Mhz CPU.

The minimum, maximum and average CPU time required to Hnd an optimal solution are summa-rized in Tables 1 and 2, from which one can observe that both algorithms are very e>cient. Theysolve large-scale instances in a very short and comparable time. For instances with n=5000 jobs, anoptimal solution is found in ¡ 30 s. Furthermore, changing the resource consumption cost functionfrom quadratic to cubic form does not aQect signiHcantly the computational time.

6. Conclusion

The single machine scheduling problem with a variable common due date and resource-dependentprocessing times has been studied. The due date and resource values can be continuous or discrete.The objective is to minimize a linear combination of scheduling, due date assignment and resourceconsumption costs. The resource consumption cost function may be non-monotonous. Algorithms

Page 12: Single machine scheduling with a variable common due date and resource-dependent processing times

1184 C.T.D. Ng et al. / Computers & Operations Research 30 (2003) 1173–1185

with O(n2 log n) running times are derived for earliness=tardiness and number of tardy jobs schedulingcosts. Computational experiments show that the algorithms can solve problem instances with up to5000 jobs in ¡ 30 s on a standard PC.

The presented results can be extended for the problem where the models for job processing timesare non-increasing functions pj(x) such that their intersections can easily be calculated. Examplesof such functions are polynomials of at most power four, which are non-increasing for x∈ [0; xmax].After the intersection points are found, all distinct feasible SPT sequences can be constructed andthe results of Sections 3 and 4 can be applied to Hnd candidates for optimal resource allocation incorresponding intervals and Hnally the optimal due date value.

An interesting topic for further research is to investigate the problem where the resource valuesdiQer among the jobs. This problem appears to be much more di>cult than the one studied in thispaper.

Acknowledgements

This research is supported in part by the RGC of the HKSAR under grant number PolyU5009=97H,and PolyU grant number G-T246. Additionally, the research of M.Y. Kovalyov is supported byINTAS under grant number 00-217.

Appendix

Denote by Hn the maximum value of∑k

i=1 qi for n lines. We have H2 = 2. Assume that a line isadded to the set of j lines and it goes through m; m¿ 0, existing intersection points of these lines,denoted by x1; : : : ; xm. If the added line is identical to an “old” line, then Hj+1 = Hj. Otherwise,Hj+1 = Hj + m + 2(j − ∑m

l=1 ql). Since ql¿ 2; l = 1; : : : ; m, value Hj+1 is maximized for m = 0.Thus, Hj+16Hj + 2j. From this inequality, we derive Hn6 2 + 4 + · · · + 2(n− 1) = n(n− 1).

References

[1] Panwalkar SS, Smith ML, Seidmann A. Common due date assignment to minimize total penalty for the one machinescheduling problem. Operations Research 1982;30:391–9.

[2] Cheng TCE. Common due-date assignment and scheduling for a single processor to minimize the number of tardyjobs. Engineering Optimization 1990;16:129–36.

[3] Wheelwright SC. ReVecting corporate strategy in manufacturing decisions. Business Horizons 1978;21:57–66.[4] Smith ML, Seidmann A. Due date selection procedures for job-shop simulation. Computers and Industrial Engineering

1983;7:199–207.[5] Ragatz GL, Mabert VA. A framework for the study of due-date management in job shops. International Journal of

Production Research 1984;22:685–95.[6] Cheng TCE, Gupta MC. Survey of scheduling research involving due-date determination decisions. European Journal

of Operational Research 1989;38:156–66.[7] Baker KR, Scudder GD. Sequencing with earliness and tardiness penalties: a review. Operations Research

1990;38:22–36.[8] Williams TJ. Analysis and design of hierarchical control systems with special reference to steel plant operations.

Amsterdam: North-Holland, 1985.

Page 13: Single machine scheduling with a variable common due date and resource-dependent processing times

C.T.D. Ng et al. / Computers & Operations Research 30 (2003) 1173–1185 1185

[9] Vickson RG. Choosing the job sequence and processing times to minimize total processing plus Vow cost on asingle machine. Operations Research 1980;28:1155–67.

[10] Vickson RG. Two single machine sequencing problems involving controllable job processing times. AIIE Transactions1980;12:258–62.

[11] Van Wassenhove LN, Baker KR. A bicriterion approach to time=cost tradeoQs in sequencing. European Journal ofOperational Research 1982;11:48–54.

[12] Nowicki E, Zdrza lka S. A survey of results for sequencing problems with controllable processing times. DiscreteApplied Mathematics 1990;26:271–87.

[13] Janiak A. Time-optimal control in a single machine problem with resource constraints. Automatica 1986;22:745–7.[14] Blazewicz J, Ecker KH, Pesch E, Schmidt G, Weg larz J. Scheduling computer and manufacturing processes. Berlin:

Springer, 1996.[15] Janiak A, Portmann M-C. Minimization of the maximum lateness in single machine scheduling with release dates

and additional resources. Proceedings of the International Conference on Industrial Engineering and ProductionManagement, Lyon, France, October 20–24, 1997, Book I. pp. 283–92.

[16] Chen ZL, Lu Q, Tang G. Single machine scheduling with discretely controllable processing times. OperationsResearch Letters 1997;21:69–76.

[17] Cheng TCE, Oguz C, Qi XD. Due-date assignment and single machine scheduling with compressible processingtimes. International Journal of Production Economics 1996;43:29–35.

[18] Biskup D, Jahnke H. Common due date assignment for scheduling on a single machine with jointly reducibleprocessing times. International Journal of Production Economics 2001;69:317–22.

[19] Herstein IN. Topics in algebra, 2nd ed. New York: Wiley, 1975.

C.T. Daniel Ng is Assistant Professor in the Department of Management, The Hong Kong Polytechnic University. Hereceived a Ph.D. in Systems Engineering and Engineering Management from the Chinese University of Hong Kong in1996. His research interests are in logistics, scheduling and operations management. He has published papers in severalprestigious journals.

T.C. Edwin Cheng is Chair Professor of Management in the Department of Management, The Hong Kong PolytechnicUniversity. He obtained a Ph.D. in operations research from the University of Cambridge in 1984. His research interestsare in operations research and operations management. Professor Cheng has published in a variety of academic andprofessional journals and co-authored two books.

Mikhail Y. Kovalyov is Principal Researcher at the Institute of Engineering Cybernetics, National Academy of Sciencesof Belarus, and Associate Professor in the Faculty of Applied Mathematics, Belarus State University. He received aCandidate of Sciences Degree (an equivalent of Ph.D.) and a Doctor of Sciences Degree (an equivalent of the HabilitationDegree) in mathematical cybernetics in 1986 and 1999, respectively. His research interests are in scheduling and discreteoptimization. He has published papers in several operational research journals.

S.S. Lam is Assistant Professor in the School of Business & Administration, The Open University of Hong Kong. Hereceived a Ph.D. in Systems Engineering and Engineering Management from the Chinese University of Hong Kong in2000. His research interests are in fuzzy scheduling, soft computing and e-commerce. He has published papers in severalinternational journals.


Recommended