Transcript

European Journal of Operational Research 162 (2005) 727–739

www.elsevier.com/locate/dsw

Discrete Optimization

Single machine scheduling with resource dependentrelease times and processing times

Xiuli Wang a, T.C.E. Cheng b,*

a Department of Automation, Shanghai Jiaotong University, Shanghai, PR Chinab Department of Logistics, The Hong Kong Polytechnic University, Hung Hom, Kowloon, Hong Kong

Received 29 November 2002; accepted 27 October 2003

Available online 24 December 2003

Abstract

We consider the single machine scheduling problem with resource dependent release times and processing times, in

which both the release times and processing times are strictly linear decreasing functions of the amount of resources

consumed. The objective is to minimize the makespan plus the total resource consumption costs. We propose a heuristic

algorithm for the general problem by utilizing some derived optimal properties and analyze its performance bound. For

some special cases, we propose another heuristic algorithm that achieves a tighter performance bound.

� 2003 Elsevier B.V. All rights reserved.

Keywords: Scheduling; Resource dependent release times; Resource dependent processing times; Heuristics; Performance bound

1. Introduction

The scheduling problem with resource dependent processing times has received much research attention

in recent years. Studies in this area were initiated by Vickson [15,16] and Van Wassenhove and Baker [14].

A survey of this topic up to 1990 was given by Nowicki and Zdrzalka [11]. During the last decade, somenew results on these problems have appeared in the literature. They can be found in [1–3,5,9,12,13,17,18].

The scheduling models cited above all assume that each job is available at the beginning or its release time is

constant.

The scheduling problem with resource dependent release times has also received considerable attention

of the scheduling research community in recent years. Some research results can be found in [4,6–8,10]. In

these scheduling models, the jobs are each assumed to have a fixed processing time.

However, to the best of our knowledge, there seem to exist no papers studying the scheduling problem

in which both release times and processing times are resource dependent. Such a scheduling problemcommonly arises in the chemical processing industry. Before chemical compounds (jobs) are ready for

* Corresponding author. Tel.: +852-27665216; fax: +852-23645245.

E-mail address: [email protected] (T.C.E. Cheng).

0377-2217/$ - see front matter � 2003 Elsevier B.V. All rights reserved.

doi:10.1016/j.ejor.2003.10.024

728 X. Wang, T.C.E. Cheng / European Journal of Operational Research 162 (2005) 727–739

processing, they have to be preheated to reach a temperature threshold below which chemical reactions willnot take place. This preheating process consumes resources such as fuel and so a chemical compound is

ready earlier for processing if more fuel is consumed to preheat it. On the other hand, the processing time of

a chemical compound varies according to the speed of its chemical reaction, which is directly related to the

amount of catalysts consumed. Hence, both the job release times and processing times are variable and

depend on the amount of resources consumed. The objective of the scheduling problem is to minimize the

sum of resource consumption and the makespan, i.e., the total elapsed time to complete all jobs. Such a

situation can be modeled as our scheduling problem with resource dependent release times and processing

times on a single machine.This paper is organized as follows. In Section 2, we formulate the problem under study. In Section 3, we

derive some properties of an optimal solution. In Section 4, we present a heuristic algorithm for the general

problem and analyze its performance bound. In Section 5, we present a heuristic algorithm for some special

cases that yields a tighter performance bound. Section 6 concludes with a summary and suggestions for

further research.

2. Problem formulation

In this section the single machine scheduling problem is considered under the assumption that both

release times and processing times are strictly linear decreasing functions of the amount of resources

consumed. Formally, the problem can be formulated as follows.

We consider the problem of scheduling a set J ¼ fJ1; . . . ; Jng of n jobs on a single machine. Let p denote

a permutation of the jobs in set J and P the set of all such permutations. All jobs are initially available at

time v, but each job may be made available at an earlier time point by consuming extra resources (e.g. fuel)

that will incur additional costs. Associated with each job Ji is a processing time pi and a release time ri,i ¼ 1; 2; . . . ; n, where both pi and ri depend on the amount of resources consumed. Specifically, pi ¼ ai � xi,where ai is the normal processing time and xi the amount of processing time compression, 06 xi 6 ai;ri ¼ v� ui=w, where ui is the cost of the resource consumed to advance the availability of Ji to ri and w the

cost per unit reduction of release time, 06 ui 6wv. For the convenience of theoretically analyzing the

studied problem, it should be noted that the case pi ¼ 0 means that the actual processing time of job Ji is sosmall that it can be neglected in the objective function. Let x ¼ ðx1; x2; . . . ; xnÞ denote a processing time

compression vector and r ¼ ðr1; r2; . . . ; rnÞ a release time vector. Also, let X denote the set of all feasible xand R the set of all feasible r.

For any job Ji, since the amount of resources consumed for its release time reduction ui, ui ¼ wðv� riÞ, isa decreasing function of the release time ri, i ¼ 1; 2; . . . ; n, we assume that all jobs start as early as possible

after they are released. For given p, x and r, assuming the job permutation p ¼ ðJ1; . . . ; JnÞ, the objective

function, or total cost, Kðx; r; pÞ is defined as

Kðx; r; pÞ ¼ max16 j6 n

rj

(þXni¼jðai � xiÞ

)þXni¼1

cixi þXni¼1

wðv� riÞ; ð1Þ

where ci, i ¼ 1; 2; . . . ; n, is the cost per unit processing time reduction. To simplify notation, we assume that

both ci, 0 < ci < 1, and w, 0 < w < 1, are appropriately scaled so that their units are compatible with that

of the makespan. It is clear that max16 j6 n frj þPn

i¼j ðai � xiÞg is the makespan,Pn

i¼1 cixi is the totalprocessing time compressing cost, and

Pni¼1 wðv� riÞ is the total release time compressing cost. Thus, the

optimal objective K�ðx; r; pÞ is

K�ðx; r; pÞ ¼ minx2X ;r2R;p2P

Kðx; r; pÞ: ð2Þ

X. Wang, T.C.E. Cheng / European Journal of Operational Research 162 (2005) 727–739 729

Under the constraint of a common deadline, the single machine scheduling problem to minimize re-source consumption, in which the job release times follow a linear model, ri ¼ v� ui=w, i ¼ 1; 2; . . . ; n,while the processing times are constant, is NP-hard in the ordinary sense [8]. In our problem the release

times follow the same linear model as that in [8], but the processing times are also linearly dependent on the

amount of resources the jobs have consumed. So the problem studied here is more difficult to deal with, and

is evidently NP-hard. Thus, we will focus on developing heuristic algorithms for the problem under study.

3. Problem analysis

In this section we establish some properties of an optimal solution to the scheduling problem under

consideration.

We first note that if there exists idle time between the first job and the last job in a permutation p, thetotal cost can be reduced by eliminating the idle time through changing the actual processing times and

release times of some jobs. So we have the following lemma.

Lemma 1. In an optimal schedule, there exists no idle time between the first and the last processed jobs.

Proof. In a given solution ðx; r; pÞ with an objective function Kðx; r; pÞ, if there exists an integer m(0 < m < n) such that the idle time between the mth job and ðmþ 1Þst job is Dt (Dt > 0), we can construct a

new solution ðx; r0;pÞ with an objective function Kðx; r0; pÞ such that Kðx; r0; pÞ < Kðx; r; pÞ.If vP rmþ ðam� xmÞ þDt, we set r0 ¼ ðr01; r02; . . . ; r0nÞ ¼ ðr1 þDt; . . . ; rm þDt; rmþ1; . . . ; rnÞ. Then Kðx; r0;pÞ is

Kðx; r0;pÞ ¼ max16 j6 n

r0j

(þXni¼jðai � xiÞ

)þXni¼1

cixi þXni¼1

wðv� r0iÞ

¼ max16 j6 n

rj

(þXni¼jðai � xiÞ

)þXni¼1

cixi þXni¼1

wðv� riÞ � mDt

¼ Kðx; r; pÞ � mDt < Kðx; r; pÞ:

If rm þ ðam � xmÞ < v < rm þ ðam � xmÞ þ Dt, we set Dt ¼ Dt1 þ Dt2, where rm þ ðam � xmÞ þ Dt1 ¼ v, and

r0 ¼ ðr01; r02; . . . ; r0nÞ ¼ ðr1 þ Dt1; . . . ; rm þ Dt1; rmþ1 � Dt2; . . . ; rn � Dt2Þ. Then Kðx; r0; pÞ is

Kðx; r0;pÞ ¼ max16 j6 n

r0j

(þXni¼jðai � xiÞ

)þXni¼1

cixi þXni¼1

wðv� r0iÞ

¼ max16 j6 n

rj

(þXni¼jðai � xiÞ

)� Dt2 þ

Xni¼1

cixi þXni¼1

wðv� riÞ � mDt1

¼ Kðx; r; pÞ � ðmDt1 þ Dt2Þ < Kðx; r; pÞ:

If v < rm þ ðam � xmÞ, we set r0 ¼ ðr01; r02; . . . ; r0nÞ ¼ ðr1; . . . ; rm; rmþ1 � Dt; . . . ; rn � DtÞ. Then Kðx; r0; pÞ is

Kðx; r0;pÞ ¼ max16 j6 n

r0j

(þXni¼jðai � xiÞ

)þXni¼1

cixi þXni¼1

wðv� r0iÞ

¼ max16 j6 n

rj

(þXni¼jðai � xiÞ

)� Dt þ

Xni¼1

cixi þXni¼1

wðv� riÞ

¼ Kðx; r; pÞ � Dt < Kðx; r; pÞ:

Summarizing the above discussion, the conclusion holds. h

730 X. Wang, T.C.E. Cheng / European Journal of Operational Research 162 (2005) 727–739

According to Lemma 1, the objective function Kðx; r; pÞ can be re-written as

Kðx; r; pÞ ¼ r1 þXni¼1ðai � xiÞ þ

Xni¼1

cixi þXni¼1

wðv� riÞ: ð3Þ

Further, although an optimal solution is determined by the factors p, x and r, these factors are interrelatedin the process of searching for an optimal solution. So it is necessary to analyze the relations among these

factors in an optimal solution. In the following, we derive some optimal properties to determine the release

times for given p and x. We also develop some optimal properties to sequence jobs and determine theprocessing time compressions simultaneously.

In an optimal solution, let p� denote its permutation and x� its processing time compression vector. We

have

Lemma 2. For p� and x� in an optimal solution, ri, i ¼ 2; . . . ; n, should satisfy the following conditions:

(i) If r1 þPi�1

j¼1 ðaj � x�j Þ6 v, then ri ¼ r1 þPi�1

j¼1 ðaj � x�j Þ;(ii) If r1 þ

Pi�1j¼1 ðaj � x�j Þ > v, then ri ¼ v.

Proof. (i) If ri < r1 þPi�1

j¼1 ðaj � x�j Þ, we set Dri ¼ r1 þPi�1

j¼1 ðaj � x�j Þ � ri, and �r ¼ ðr1; . . . ; ri�1; riþDri; riþ1; . . . ; rnÞ. From (3), we have

Kðx�;�r; p�Þ � Kðx�; r; p�Þ ¼ w½v� ðri þ DriÞ� � wðv� riÞ ¼ �wDri < 0:

If ri > r1 þPi�1

j¼1 ðaj � x�j Þ, it contradicts Lemma 1.

(ii) The conclusion holds trivially. h

We assume that the constant w is such that 1k < w6

1k�1, where k is an integer and k P 2. We will notice in

the sequel that, to minimize the objective function, the optimal determination of the release time vector is

directly affected by the integer k.For given permutation p and x ¼ ðx1; x2; . . . ; xnÞ, in view of the optimal properties of Lemmas 1 and 2, we

can determine r ¼ ðr1; r2; . . . ; rnÞ using the following algorithm.

Algorithm A1Step 1. If p1 þ þ pk�1 > v holds, then set r1 ¼ 0; otherwise, set

r1 ¼ v� ðp1 þ þ pk�1Þ:Step 2. If r1 ¼ 0, then determine the integer m, m < k, such that p1 þ þ pm�1 6 v < p1 þ þ pm holds.

Set r2 ¼ p1; r3 ¼ p1 þ p2; . . . ; rm ¼ p1 þ þ pm�1; rmþ1 ¼ v; . . . ; rn ¼ v. Otherwise, set r2 ¼ r1þp1; r3 ¼ r1 þ p1 þ p2; . . . ; rk�1 ¼ r1 þ p1 þ þ pk�2; rk ¼ r1 þ p1 þ þ pk�1 ¼ v; rkþ1 ¼ v; . . . ;rn ¼ v.

According to Algorithm A1, for the case where p1 þ þ pk�1 > v, the objective function K1ðx; r; pÞis

K1ðx; r; pÞ ¼Xni¼1ðai � xiÞ þ

Xni¼1

cixi þXni¼1

wðv� riÞ

¼Xni¼1ðai � xiÞ þ

Xni¼1

cixi þ wvþ w½v� ða1 � x1Þ� þ þ w v

"�Xm�1i¼1ðai � xiÞ

#

X. Wang, T.C.E. Cheng / European Journal of Operational Research 162 (2005) 727–739 731

¼Xni¼1ðai � xiÞ þ

Xni¼1

cixi þ wXm�1i¼1ðai

"� xiÞ þ dm

#þ w

Xm�1i¼2ðai

"� xiÞ þ dm

#

þ þ w½ðam�1 � xm�1Þ þ dm� þ wdm

¼Xni¼1ðai � xiÞ þ

Xni¼1

cixi þ mwdm þ w½ða1 � x1Þ

þ 2ða2 � x2Þ þ þ ðm� 1Þðam�1 � xm�1Þ�; ð4Þ

where dm ¼ v�Pm�1

i¼1 ðai � xiÞ and 06 dm < am � xm.For the case where p1 þ þ pk�1 6 v, the objective function K2ðx; r; pÞ is

K2ðx; r; pÞ ¼ r1 þXni¼1ðai � xiÞ þ

Xni¼1

cixi þ w½ða1 � x1Þ þ 2ða2 � x2Þ þ þ ðk � 1Þðak�1 � xk�1Þ�

¼ vþXni¼kðai � xiÞ þ

Xni¼1

cixi þ w½ða1 � x1Þ þ 2ða2 � x2Þ þ þ ðk � 1Þðak�1 � xk�1Þ�: ð5Þ

In Step 1 of Algorithm A1, we select the value of r1 based on the following consideration.

If p1 þ þ pk�1 > v, and if we set 0 < r1 6 v, then r1 may be denoted as r1 ¼ Dt1 þ þ Dtm�1 þ d 0m,where 06Dti 6 pi, i ¼ 1; 2; . . . ;m� 1, 0 < d 0m 6 dm. And assume that if d 0m < dm, then Dtm�1 ¼ 0, and if

Dti < pi ði ¼ 2; 3; . . . ;m� 1Þ, then Dth ¼ 0 for h ¼ 1; 2; . . . ; i� 1. According to Lemmas 1 and 2,

r2 ¼ r1 þ p1 �Dt1; r3 ¼ r1 þ p1 þ p2 � ðDt1 þDt2Þ; . . . ; rm ¼ r1 þ p1 þ þ pm�1 � ðDt1 þ þDtm�1Þ; rmþ1 ¼v; . . . ; rn ¼ v. Then the objective function K 0ðx; r; pÞ is

K 0ðx; r;pÞ ¼ r1 þXni¼1ðai � xiÞ þ

Xni¼1

cixi þXni¼1

wðv� riÞ

¼ K1ðx; r; pÞ þ ð1� wÞDt1 þ ð1� 2wÞDt2 þ þ ð1� ðm� 1ÞwÞDtm�1þ ð1� mwÞd 0m PK1ðx; r; pÞ: ð6Þ

If p1 þ þ pk�1 6 v, and if we set 0 < r1 < v� ðp1 þ þ pk�1Þ, then r1 may be denoted as

r1 ¼ v� ðp1 þ þ pk�1Þ � Dt, where 0 < Dt < v� ðp1 þ þ pk�1Þ. According to Lemmas 1 and 2,

r2 ¼ r1 þ p1; . . . ; rk�1 ¼ r1 þ ðp1 þ þ pk�2Þ; rk ¼ v� Dt; rkþ1 ¼ v; . . . ; rn ¼ v. Then the objective func-

tion K 0ðx; r; pÞ is

K 0ðx; r;pÞ ¼ r1 þXni¼1ðai � xiÞ þ

Xni¼1

cixi þ w½ða1 � x1Þ

þ 2ða2 � x2Þ þ þ ðk � 1Þðak�1 � xk�1Þ þ kDt�

¼ vþXni¼kðai � xiÞ þ

Xni¼1

cixi þ w½ða1 � x1Þ þ 2ða2 � x2Þ þ þ ðk � 1Þðak�1 � xk�1Þ�

þ ðkw� 1ÞDt¼ K2ðx; r; pÞ þ ðkw� 1ÞDt > K2ðx; r; pÞ: ð7Þ

If p1 þ þ pk�1 6 v, and if we set v� ðp1 þ þ pk�1Þ < r1 6 v, then r1 may be denoted as

r1 ¼ v� ðp1 þ þ pk�1Þ þ ðDt1 þ þ Dtk�1Þ, where 0 < Dtk�1 6 pk�1, 06Dti 6 pi, i ¼ 1; 2; . . . ; k � 2. Andassume that if Dti < pi ði ¼ 2; 3; . . . ; k � 1Þ, then Dth ¼ 0 for h ¼ 1; 2; . . . ; i� 1. According to Lemmas 1

and 2, r2 ¼ r1 þ p1 � Dt1; r3 ¼ r1 þ p1 þ p2 � ðDt1 þ Dt2Þ; . . . ; rk�1 ¼ r1 þ ðp1 þ þ pk�2Þ � ðDt1 þ þDtk�2Þ; rk ¼ v; . . . ; rn ¼ v. Then the objective function K 0ðx; r; pÞ is

732 X. Wang, T.C.E. Cheng / European Journal of Operational Research 162 (2005) 727–739

K 0ðx; r; pÞ ¼ r1 þXni¼1ðai � xiÞ þ

Xni¼1

cixi þXni¼1

wðv� riÞ

¼ vþXni¼kðai � xiÞ þ w½ða1 � x1Þ þ 2ða2 � x2Þ þ þ ðk � 1Þðak�1 � xk�1Þ�

þ ð1� wÞDt1 þ ð1� 2wÞDt2 þ þ ð1� ðk � 1ÞwÞDtk�1¼ K2ðx; r; pÞ þ ð1� wÞDt1 þ ð1� 2wÞDt2 þ þ ð1� ðk � 1ÞwÞDtk�1 PK2ðx; r;pÞ: ð8Þ

From (6)–(8), it is evident that the search for an optimal solution can be restricted to the space of the set

ðx; pÞ with r determined by Algorithm A1. According to Lemmas 1 and 2 and the above discussion, we have

the following result.

Theorem 1. In an optimal solution, r ¼ ðr1; r2; . . . ; rnÞ should be determined by Algorithm A1.

In view of Theorem 1, we will denote K1ðx; r; pÞ, K2ðx; r; pÞ and K�ðx; r; pÞ by K1ðx; pÞ, K2ðx; pÞ andK�ðx; pÞ, respectively. Thus, the optimal objective value K�ðx; pÞ is given by

K�ðx; pÞ ¼ minx2X ;p2P

fK1ðx; pÞ;K2ðx; pÞg:

From the above discussion, we may focus our attention on analyzing the relation between a permutation

p and a processing time compression vector x in order to search for an optimal schedule. In fact, the two

factors p and x are interrelated in an optimal solution. Next, we develop an optimal property to determine xunder a given p.

For a given p ¼ ðJ1; J2 . . . ; JnÞ, say, to minimize the objective function K1ðx; pÞ, we can treat the pro-

cessing time compressions xi, i ¼ 1; 2; . . . ; n, as decision variables and formulate the problem as a linear

programming problem P1:

(P1)

min K1ðx; pÞs:t: xi 6 ai; i ¼ 1; 2; . . . ; n;

x1 þ x2 þ þ xm�1 ¼ ða1 þ þ am�1Þ � ðv� dmÞ;xi P 0; i ¼ 1; 2; . . . ; n:

Similarly, to minimize the objective function K2ðx; pÞ, we can treat the processing time compressions xi,i ¼ 1; 2; . . . ; n, as decision variables and formulate the problem as a linear programming problem P2:

(P2)

min K2ðx; pÞs:t: xi 6 ai; i ¼ 1; 2; . . . ; n;

x1 þ x2 þ þ xk�1 ¼ ða1 þ þ ak�1Þ � ðv� r1Þ;xi P 0; i ¼ 1; 2; . . . ; n:

For problem P1, to minimize K1ðx; pÞ, it is obvious from (4) that if iPm, Ji must be fully compressed.

Moreover, since the coefficient of xi, i ¼ 1; 2; . . . ;m� 1, in (4) is �ð1� ci þ iwÞ, and under the con-

straint that x1 þ þ xn ¼ ða1 þ þ am�1Þ � ðv� dmÞ, a job Ji whose processing time compression xi hasa larger negative coefficient must be fully compressed to minimize K1ðx; pÞ. Specifically, the optimal

solution is

X. Wang, T.C.E. Cheng / European Journal of Operational Research 162 (2005) 727–739 733

xi ¼ai if Ji 2 A1 or iPm;0 if Ji 2 A2;

~as if Ji 2 A3;

8<: ð9Þ

where ~as 6 as, 16 s6m� 1, Js 2 A3, ~as ¼ ðv� dmÞ �P

Ji2A2ai, A3 either consists of only one job or is empty,

A1 \ A2 ¼ U (i.e., the empty set), A1 [ A2 [ A3 ¼ fJ1; J2; . . . ; Jm�1g, and for any Ji 2 A2 and Jj 2 A1,

1� ci þ iw6 1� cs þ sw6 1� cj þ jw holds. Index s can be uniquely determined by sequencing the

coefficients of xi ði ¼ 1; 2; . . . ;m� 1Þ in descending order and considering the constraints of

x1 þ þ xm�1 ¼ ða1 þ þ am�1Þ � ðv� dmÞ and 06 xi 6 ai. The last condition helps to find the job Js andit indicates that to minimize K1ðx;pÞ, the jobs in A1 are fully compressed while those in A2 are not com-

pressed. Given such choices of decision variables, the optimal objective value K�1ðx; pÞ is

K�1ðx; pÞ ¼ vþ

XJi2JnðA2[A3Þ

ciai þ ðmw� 1Þdm þ wXJi2A2

iai þ cs~as þ swðas � ~asÞ: ð10Þ

For problem P2, by a similar argument, we see that the optimal solution is

xi ¼ai if Ji 2 B1 or iP k;0 if Ji 2 B2;

~as if Ji 2 B3;

8<: ð11Þ

where ~as 6 as, 16 s6 k � 1, Js 2 B3, ~as ¼ v�P

Ji2B2ai, B3 either consists of only one job or is empty,

B1 \ B2 ¼ U, B1 [ B2 [ B3 ¼ fJ1; J2; . . . ; Jk�1g, and for any Ji 2 B2 and Jj 2 B1, iw� ci 6 sw� cs 6 jw� cjholds. Index s can be uniquely determined by sequencing the coefficients of xi ði ¼ 1; 2; . . . ; k � 1Þ in

descending order and considering the constraints of x1 þ þ xk�1 ¼ ða1 þ þ ak�1Þ � ðv� r1Þ and06 xi 6 ai. Given such choices of decision variables, the optimal objective value K

�2ðx; pÞ is

K�2ðx; pÞ ¼ vþ

XJi2JnðB2[B3Þ

ciai þ wXJi2B2

iai þ cs~as þ swðas � ~asÞ: ð12Þ

Summarizing the above discussion, we have established the following theorem.

Theorem 2. In an optimal solution, the job processing time compression vector x should be determined by (9) or(11).

Before sequencing jobs in set J , we can determine the compression of some jobs according to their unit

compression cost ci, i ¼ 1; 2; . . . ; n. In order to analyze such properties for a given problem, we divide set Jinto k subsets:

Nl ¼ fJi j lw6 ci < ðlþ 1Þw; Ji 2 Jg;

where l ¼ 0; 1; . . . ; k � 1. For a given problem, some of these subsets may be empty. From (4) and (5), we

can easily obtain the following result.

Theorem 3. In an optimal solution, a job Ji belonging to N0 should be fully compressed, i.e., if Ji 2 N0, thenxi ¼ ai.

Proof. In a solution ðx; r; pÞ with objective function (4) or (5), assume that ch < w, i.e., Jh 2 N0. If we set

xh ¼ ah, for the case p1 þ þ pk�1 > v, denote the objective function as K 01ðx; r; pÞ, and for the case

p1 þ þ pk�1 6 v, denote the objective function as K 02ðx; r;pÞ.

734 X. Wang, T.C.E. Cheng / European Journal of Operational Research 162 (2005) 727–739

(i) p1 þ þ pk�1 > v.(1) If h > m, set xh ¼ ah, and we have

K 01ðx; r; pÞ ¼ K1ðx; r; pÞ � ð1� chÞðah � xhÞ < K1ðx; r;pÞ:(2) If h6m, set xh ¼ ah, and for the two cases

Pki¼1 pi � ph > v and

Pki¼1 pi � ph 6 v, we can derive the fol-

lowing formulation from (4) and (5):

K 01ðx; r; pÞ6K1ðx; r; pÞ � ðhw� chÞðah � xhÞ � ð1� ðk � 1ÞwÞðah � xhÞ < K1ðx; r; pÞ:(ii) p1 þ þ pk�1 6 v.In this case, similar to (i), we can also obtain

K 02ðx; r; pÞ < K2ðx; r; pÞ:

Therefore, the conclusion holds. h

4. A heuristic algorithm

Making use of the optimal properties derived in Section 3, we develop the following heuristic algorithm

for the general problem.

Heuristic Algorithm HA1

Step 1. If N0 6¼ U for all jobs Ji 2 N0, set xi ¼ ai; otherwise, go to Step 2.

Step 2. Let T ¼ U, h ¼ 0, and s be the largest index such that Ns 6¼ U and Nsþ1 ¼ U.

For g ¼ 1 to s, repeat:If Ng [ [ Ns 6¼ U, then let ag ¼ maxfaijJi 2 Ng [ [ Nsg.IfP

Ji2T ai þ ag > v, go to Step 3.

Otherwise, if Jg 2 Nm, then let Nm ¼ NmnfJgg and T ¼ T [ fJgg, h hþ 1, and put Jg in the hthposition of the sequence. If Ns ¼ U, then let s ¼ s� 1; otherwise, go to Step 3.

Step 3. For jobs in T , determine their release times by Algorithm A1, and start processing each job at its

release time. For all jobs Ji 2 N1 [ [ Ns, let xi ¼ ai.

We now establish the running time of Algorithm HA1. In Step 1, the determination of set N0 requires noperations to check all jobs. In Step 2, if N0 consists of n0 jobs, then the selection of each ag requires at most

ðn� n0 � g þ 1Þ operations, so Step 2 requires at most ðn�n0þ1Þðn�n0Þ2

operations. Step 3 requires ðn� n0Þoperations to determine the release times for the jobs in set T and compress the other jobs. Therefore,

Algorithm HA1 has an overall running time of no more than ðn�n0Þ2

2þ 5

2n� 3

2n0, i.e., Oðn2Þ.

In Algorithm HA1, Step 1 fully compresses all jobs in set N0 according to Theorem 3. In Step 2, since the

determination of the compression status of all jobs in J n N0 is complicated, we only determine some jobs

not to be compressed and make the total release time compressing cost as small as possible by utilizing

Theorem 2 simultaneously. Step 3 determines some release times by applying Theorem 1.

Using Algorithm HA1, we get the value of the objective function as follows:

Kh ¼ vþXJi2JnT

ciai þ w½a01 þ þ ha0h�; ð13Þ

where J 01; . . . ; J0h 2 T and a01 P a02 P P a0h.

Denote K� as the optimal objective value of the given problem, i.e.,

K� ¼ minx2X ;p2P

fK�1ðx; pÞ;K�2ðx; pÞg:

Algorithm HA1 has the following performance bound.

X. Wang, T.C.E. Cheng / European Journal of Operational Research 162 (2005) 727–739 735

Theorem 4. Kh=K�6 2.

Proof. For the case where p1 þ p2 þ þ pk�1 > v, let T denote the set A2 [ A3 of K�1ðx; pÞ, where

T ¼ fJ 1; J 2; . . . ; J tg. From Algorithm HA1, dm 6 am, and Jm 62 T , we have h6 t. Denote K as

K ¼ vþXJi2JnT

ciai þ wð�a1 þ 2�a2 þ þ t�atÞ; ð14Þ

where we assume that the sequence ðJ 1; J 2; . . . ; J tÞ is in decreasing order of their processing times. From

(10), we have

K þ ðmw� 1Þdm 6K�1ðx; pÞ;

that is

K 6K�1ðx; pÞ þ ð1� mwÞdm:

From Algorithm HA1, we have a0i P �ai, i ¼ 1; 2; . . . ; h: Let Ki, i ¼ 1; 2; . . . ; h, be the objective function

value of the schedule that is obtained by replacing J 0i in the ith position of the schedule, which is generated

by Algorithm HA1, by J i in set T . Without loss of generality, we assume that T \ T ¼ U, and we have

K1 ¼ Kh þ c01a01 � �c1�a1 þ w�a1 � wa01 ¼ Kh þ ðc01 � �c1Þ�a1 þ ðc01 � wÞða01 � �a1ÞPKh � ðk � 1Þw�a1:

Similarly, for i ¼ 2; . . . ; h, we also have

Ki PKh � ðk � 1Þw�ai:

Therefore,

K PKh � ðk � 1Þwð�a1 þ �a2 þ þ �ahÞ;

that is,

Kh 6K þ ðk � 1Þwð�a1 þ �a2 þ þ �ahÞ:

Because h6 t, so

Kh 6K þ ðk � 1Þwð�a1 þ �a2 þ þ �ahÞ þ ½�chþ1 � ðhþ 1Þw��ahþ1 þ þ ð�ct � twÞ�at6K

�1ðx; pÞ þ ðk � 1Þwð�a1 þ �a2 þ þ �atÞ þ ð1� mwÞdm:

From the constraints of problem P1, we have

ð1� mwÞdm þ ðk � 1Þwð�a1 þ �a2 þ þ �atÞ6 dm þ ðv� dmÞ ¼ v6K�1ðx; pÞ;

therefore,

Kh 6 2K�1ðx; pÞ;

i.e.,

Kh=K�1ðx; pÞ6 2:

For the case where p1 þ p2 þ þ pk�1 6 v, let T ¼ B2 [ B3, and we can similarly prove the resultKh=K

�2ðx; pÞ6 2.

Therefore, Kh=K�6 2. h

736 X. Wang, T.C.E. Cheng / European Journal of Operational Research 162 (2005) 727–739

5. Special cases

Assuming that c1 ¼ c2 ¼ ¼ cn ¼ c and considering the relation between c and w, we examine the

following special cases:

Case l. Assume that 1k < w6

1k�1, lw6 c < ðlþ 1Þw, and that the sum of the normal processing times of

any l jobs in J is not larger than v. In fact, for different l, l ¼ 1; 2; . . . ; k � 1, we have the same conclusions.

In order to reduce the scope to find the optimal schedule for the problem, it is necessary to consider two

cases.(i) p1 þ þ pk�1 > v.In this case, the objective function K1ðx; pÞ in (4) becomes K1ðx; pÞ:

K1ðx; pÞ ¼Xni¼1ðai � xiÞ þ

Xni¼1

cxi þ mwdm þ w½ða1 � x1Þ þ 2ða2 � x2Þ þ þ ðm� 1Þðam�1 � xm�1Þ�

¼Xmi¼1

ai þXni¼mðai � xiÞ þ

Xni¼m

cxi þ mwdm þ w½a1 þ þ ðm� 1Þam�1�

� ½ð1� cþ wÞx1 þ þ ð1� cþ ðm� 1ÞwÞxm�1�:

Thus, the optimal solution for problem P1 is

x1 ¼ 0; . . . ; xt ¼ 0; xtþ1 ¼ �atþ1; xtþ2 ¼ atþ2; . . . ; xm�1 ¼ am�1; . . . ; xn ¼ an;

where 06 �atþ1 < atþ1. The optimal objective value K1ðpÞ of problem P1 is

K1ðpÞ ¼Xt

i¼1ai þ ðatþ1 � �atþ1Þ þ mwdm þ c �atþ1

þXni¼tþ2

ai

!

þ w½a1 þ þ tat þ ðt þ 1Þðatþ1 � �atþ1Þ�

¼ vþ ðmw� 1Þdm þ c �atþ1

"þXni¼tþ2

ai

#þ w½ða1 þ þ tat þ ðt þ 1Þðatþ1 � �atþ1Þ�: ð15Þ

(ii) p1 þ þ pk�1 6 v.In this case, the objective function K2ðx; pÞ in (5) becomes K2ðx; pÞ:

K2ðx; pÞ ¼ vþXni¼kðai � xiÞ þ

Xni¼1

cxi þ w½ða1 � x1Þ þ þ ðk � 1Þðak�1 � xk�1Þ�

¼ vþXni¼k

cxi þ w½a1 þ þ ðk � 1Þak�1� � ½ðw� cÞx1 þ þ ððk � 1Þw� cÞxk�1�:

Thus, the optimal solution for problem P2 is

x1 ¼ 0; . . . ; xt ¼ 0; xtþ1 ¼ �atþ1; xtþ2 ¼ atþ2; . . . ; xk�1 ¼ ak�1; . . . ; xn ¼ an;

where 06 �atþ1 < atþ1. The optimal objective value K2ðpÞ of problem P2 is

K2ðpÞ ¼ vþ c �atþ1

þXni¼tþ2

ai

!þ w½a1 þ þ tat þ ðt þ 1Þðatþ1 � �atþ1Þ�: ð16Þ

For both cases (i) and (ii), when the status of all jobs belonging to set J is determined to be fully

compressed or not compressed, the permutation p that satisfies a1 P a2 P P at has the smallest

objective value.

X. Wang, T.C.E. Cheng / European Journal of Operational Research 162 (2005) 727–739 737

On the basis of the above discussion, an optimal schedule must be included in all different initial x 2 X inproblems P1 and P2 with formulations (15) and (16). Next, we develop a new heuristic algorithm for these

special cases.

Heuristic Algorithm HA2

Step 1. Sequence the jobs in decreasing order of their normal processing times, i.e., a01 P a02 P P a0n.Step 2. The first l jobs J 01; J

02; . . . ; J

0l in the sequence of Step 1 should not be compressed. Sequence them as

follows: Let their release times be r1 ¼ v� ða01 þ a02 þ þ a0lÞ; r2 ¼ r1 þ a01; . . . ; rl ¼ r1þa01 þ þ a0l�1, respectively. Furthermore, each job should begin processing at its release time.

Step 3. The other ðn� lÞ jobs should be fully compressed.

The running time of Algorithm HA2 can be estimated as follows. Step 1 requires n log n operations to

sequence n jobs. In Step 2, the determination of the release times of the first l jobs requires l operations.Step 3 requires ðn� lÞ operations to compress ðn� lÞ jobs. So, Algorithm HA2 has an overall running time

of no more than ðnþ n log nÞ, i.e., Oðn log nÞ.For Algorithm HA2, it is natural to first sequence the jobs in decreasing order of their normal processing

times owing to the peculiarities of the optimal solutions to problems P1 and P2 for these special cases.Then, Step 2 selects the first l jobs not to be compressed and sequences them by utilizing Theorems 1 and 2.

The objective function value generated by the Algorithm HA2 is

K 0h ¼ vþXni¼lþ1

ca0i þ w½a01 þ þ la0l�: ð17Þ

Let amax ¼ maxfai jai 2 Jg and denote K�1 as the optimal objective value of the problem. In the following,

we prove that the solution generated by Algorithm HA2 has the following performance bound.

Theorem 5. The solution generated by Algorithm HA2 has a performance bound of

K 0h � K�1 6 ð1� cÞamax:

Proof. First, we prove the conclusion for case (i):

Let a01 þ a02 þ þ a0n ¼ a1 þ a2 þ þ an ¼ M . From (15), (17) and tP l, we have

K1ðpÞ � K 0h ¼ ðmw� 1Þdm þ c �atþ1

þXni¼tþ2

ai

!þ w½a1 þ þ tat�1 þ ðt þ 1Þðatþ1 � �atþ1Þ�

�Xni¼lþ1

ca0i

"þ wða01 þ þ la0lÞ

#

¼ ðmw� 1Þdm þ cfM � ½a1 þ þ at þ ðatþ1 � �atþ1Þ�gþ w½a1 þ þ tat þ ðt þ 1Þðatþ1 � �atþ1Þ� � c½M � ða01 þ þ a0lÞ� � wða01 þ þ la0lÞ¼ ðmw� 1Þdm þ ½ðc� wÞa01 þ þ ðc� lwÞa0l�� fðc� wÞa1 þ þ ðc� twÞat þ ½c� ðt þ 1Þw�ðatþ1 � �atþ1Þg¼ ðmw� 1Þdm þ ðc� wÞða01 � a1Þ þ þ ðc� lwÞða0l � alÞ� ½c� ðlþ 1Þw�alþ1 � � ðc� twÞat � ½c� ðt þ 1Þw�ðatþ1 � �atþ1Þ:

We note that for any integer s, if s > l, then c� sw < 0; otherwise, c� swP 0. Therefore,

K1ðpÞ � K 0h P ðmw� 1Þdm;

738 X. Wang, T.C.E. Cheng / European Journal of Operational Research 162 (2005) 727–739

and, because m > l, we have

K 0h � K1ðpÞ6 ð1� mwÞdm 6 ð1� cÞdm 6 ð1� cÞam 6 ð1� cÞamax;

i.e.,

K 0h � K1ðpÞ6 ð1� cÞamax:

For case (ii), similar to (i), we can obtain the result K 0h � K2ðpÞ6 0. Therefore,

K 0h � K�1 6 ð1� cÞamax: �

It is clear that the performance bound of Algorithm HA2 for the special cases is tighter than that of

Algorithm HA1 for the general problem.

6. Conclusions

In this paper we have considered the single machine scheduling problem with resource dependent release

times and processing times, in which both release times and processing times are strictly linear decreasing

functions of the amount of resources consumed. Based on an analysis of the optimal properties, we have

developed a heuristic algorithm and derived its performance bound. For the special case where all unit

processing time compression costs c1; c2; . . . ; cn are equal, we have presented a heuristic algorithm that

yields a tighter performance bound.

Further research can be undertaken to develop efficient algorithms for the problem under different

parameter constraints such as bi 6 xi 6 ai, i ¼ 1; 2; . . . ; n, and other generalizations.

Acknowledgements

This research was supported in part by the Research Grants Council of Hong Kong under grant number

PolyU5245/99H.

References

[1] B. Alidaee, A. Ahmadian, Two parallel machine sequencing problems involving controllable job processing times, European

Journal of Operational Research 70 (1993) 335–341.

[2] Z.L. Chen, Q. Lu, G. Tang, Single machine scheduling with discretely controllable processing times, Operations Research Letters

21 (1997) 69–76.

[3] T.C.E. Cheng, Z.L. Chen, C.-L. Li, Parallel-machine scheduling with controllable processing times, IIE Transactions 28 (1996)

177–180.

[4] T.C.E. Cheng, A. Janiak, Resource optimal control in some single-machine scheduling problems, IEEE Transactions on

Automatic Control 39 (1994) 1243–1246.

[5] T.C.E. Cheng, A. Janiak, M.Y. Kovalyov, Single machine batch scheduling with resource dependent setup and processing times,

European Journal of Operational Research 135 (2001) 177–183.

[6] T.C.E. Cheng, M.Y. Kovalyov, Single machine batch scheduling with deadlines and resource dependent processing times,

Operations Research Letters 17 (1995) 243–249.

[7] A. Janiak, Time-optimal control in a single machine problem with resource constraints, Automatica 22 (1986) 745–747.

[8] A. Janiak, Single machine scheduling problem with a common deadline and resource dependent release dates, European Journal

of Operational Research 53 (1991) 317–325.

[9] A. Janiak, M.Y. Kovalyov, Single machine scheduling subject to deadlines and resource dependent processing times, European

Journal of Operational Research 94 (1996) 284–291.

X. Wang, T.C.E. Cheng / European Journal of Operational Research 162 (2005) 727–739 739

[10] C.-L. Li, E.C. Sewell, T.C.E. Cheng, Scheduling to minimize release-time resource consumption and tardiness penalties, Naval

Research Logistics 42 (1995) 949–966.

[11] E. Nowicki, S. Zdrzalka, A survey of results for sequencing problems with controllable processing times, Discrete Applied

Mathematics 26 (1990) 271–287.

[12] E. Nowicki, S. Zdrzalka, A bicriterion approach to preemptive scheduling of parallel machines with controllable job processing

times, Discrete Applied Mathematics 63 (1995) 237–256.

[13] S.S. Panwalkar, R. Rajagopalan, Single-machine sequencing with controllable processing times, European Journal of Operational

Research 59 (1992) 298–302.

[14] L.N. Van Wassenhove, K.R. Baker, A bicriterion approach to time/cost trade-offs in sequence, European Journal of Operational

Research 11 (1982) 48–54.

[15] R.G. Vickson, Choosing the job sequence and processing times to minimize total processing plus flow cost on a single machine,

Operations Research 28 (1980) 1155–1167.

[16] R.G. Vickson, Two single machine sequencing problems involving controllable job processing times, AIIE Transactions 12 (1980)

258–262.

[17] S. Zdrzalka, Scheduling jobs on a single machine with release dates, delivery times and controllable processing times: Worst-case

analysis, Operations Research Letters 10 (1991) 519–523.

[18] F. Zhang, G. Tang, Z.L. Chen, A 3/2-approximation algorithm for parallel machine scheduling with controllable processing times,

Operations Research Letters 29 (2001) 41–47.


Recommended