Sei sulla pagina 1di 13

m tlmu

ELSEVIER Operations Research Letters 16 (1994) 87-99

One-machine generalized precedence constrained


scheduling problems
Erick D. Wikum 1"*, Donna C. Llewellyn 2, George L. Nemhauser 3
School of Industrial and Systems Engineering Georgia Institute of Technology Atlanta, GA 30332-0205, LISA
(Received 15 February 1993; revised I March 1994)

Abstract

We investigate one-machine scheduling problems subject to generalized precedence constraints which specify that
when job Jr precedes job Jr' (denoted by Jj --* Jr'), the time between the end of job Jj and the beginning of job Jr' must be
at least lrr,, but no more than urj,, where 0 ~< ljr, ~< urn,. The objective is to minimize makespan. For some very simple
precedence relations, we present polynomial algorithms. For more complex precedence structures, we establish that the
problems are NP-hard. For one of these hard problems, we provide heuristics and worst-case bounds.

Key words." Scheduling; Precedence Constraints; Heuristics

1. Introduction

In scheduling athletic competitions such as the 1996 Atlanta Olympic Games, delays must be
included between certain pairs of events (jobs) to allow athletes time to rest. These delays resemble
setup times, but while a setup time is incurred between two jobs if and only if the two are scheduled
consecutively on the same machine, delays are required between two jobs even if other jobs intercede.
Precedence delays are also seen in the shifting bottleneck procedure for the general job shop scheduling
problem, see I-2].
In this paper, we investigate one-machine scheduling problems subject to generalized precedence con-
straints which specify that when job Jr precedes job Jj, (denoted by Jr ~ Jr'), the time between the end of job
Jr and the beginning of job Jr' must be at least lj~,, but no more than ujj,, where 0 <~ ljj, ~< ujr,. We adopt the
convention u~, = oo in the absence of an upper bound and we assume ljj, is an integer and urr, is an integer
whenever u~j, < oo.

* Corresponding author.
1Current address: Norfolk Southern Corp., Atlanta, GA 30303, USA.
2 Donna Llewellyn was supported in part by ONR Grant N00014-89-J-1658.
3 George Nemhauser was supported in part by NSF and AFOSR Grant DDM-9115768.

0167-6377/94/$07.00 © 1994 Elsevier Science B.V. All rights reserved


SSDI 0 1 6 7 - 6 3 7 7 ( 9 4 ) 0 0 0 1 8 - 2
88 E.D. Wikum et al. / Operations Research Letters 16 (1994) 87 99

In general, we assume that a finite set J of jobs is to be scheduled on a single machine that can process no
more than one j o b at a time. Each j o b Jr E J has a nonnegative integer processing requirement Pr, and
preemption is not allowed. In order to be feasible, a schedule ~, which specifies a nonnegative integer start time
a ( j ) (and completion time Cr(a ) = tr(j) + Pr) for each j o b Jr E J, must satisfy the generalized precedence
constraints given by

Irr, <<. a ( j ' ) - C~(a) <~ urr, V(Jr, J r ' ) e P,

where P ~ J × J is the set of all precedence constrained j o b pairs. Notice that if/jj, = 0 and ujj, = w, then the
generalized precedence constraint is an ordinary precedence constraint. Problems for which ljr, > 0
(ujr, < ~ ) for some (Jr, Jr' > ~ P are said to be subject to minimum (maximum) delay precedence constraints.
O u r objective is to minimize makespan, that is the function Cmax(a) = m a x j ~ j C r ( a ) .
In this paper, we consider job sets of the form
k
J =
U {J,,, ..... J,..,} '--' {*},
i=l

where k/> 2, n~ >~ ... >~ nk and precedence relations on J of the form

P = {<Ji,j, Ji,j+l>, i = 1 . . . . . k , j = 1..... n l - 1} u {<J~ .... *>, i= 1,...,k},

see Fig. 1. F o r ease of notation, we refer to such a precedence relation P on J as k nl . . . . . nk-chains, or simply
as k n-chains if nl . . . . . nk = n. N o t e that j o b * is always the last j o b in a feasible sequence and, without
loss of generality, we assume p . - 0.
In all sections other than Section 3.3, we also require ni e {1,2} for i = 1 . . . . . k. In particular, we allow k to
be a parameter of the problem t h r o u g h o u t this paper. In contrast to these "shallow" precedence relations is
a "deep" precedence relation where k is kept constant and the length of the chains is allowed to vary. In
a subsequent paper, we will report on the min and m a x delays, 2 nl, n2-chains problems.
Since we will only consider k nl . . . . . nk-chains precedence relations, without loss of clarity, we refer to
li,j.i,j+ l (Ui,j,i,j+l) simply a s li,j (ui,j) for i = 1 . . . . . k and j = 1 . . . . . n i - 1, and to li .... . (Ui .... .) simply as
li,,,, (ui.,,) for i = 1 . . . . . k.

Fig. 1. The k nl ..... nk-chains precedence graph.


E.D. Wikum et al. / Operations Research Letters" 16 (1994) 87-99 89

The organization of the rest of this paper is as follows. In Section 2, we discuss problems that are
polynomially solvable. In Section 3, we give problems that are NP-Complete. We provide some heuristics
and bounds for one of these problems in Section 4.

2. Easy problems

In this section we study the problems that are solvable in polynomial time; all of these are k 1-chains
problems (see Fig. 2). In these 1-chains problems min and max delays are closely related to due dates and
release times, respectively. For ease of notation, define J = { J l . . . . , Jk I ~J { * } when considering k l-chains
problems.
We first consider the problem subject to minimum delays only, that is with uj = ~ for each j = 1 . . . . . k.
Since our objective is to minimize makespan, we need only consider active schedules, that is, schedules in
which each job is scheduled as early as possible so as to satisfy all minimum delay precedence constraints.
Clearly, any feasible sequence has the form Jil --* "'" ---'Jik--* *- The schedule a associated with the
sequence J i l - + " ' " --+ J i k ---+ * has
j-1
~(il) = 0, a(ij) = ~ Pi, for j = 2 . . . . . k,
i 1

and
Cmax(O-) = C,(o') = (7(*) = max {a(ij) + p,j + l,j} = max IC,j(a) + lij}.
j-1 ..... k j-1 ..... k

To see how minimum precedence delays can be replaced by due dates, suppose that we impose a due date
of T on job • and then let the due date for job Jj be dj = T - Ij. If in the schedule that minimizes lateness all
due dates are satisfied, then there is a schedule that satisfies the minimum delays which ends no later than at
time T.

Proposition 2.1. The k 1-chains problem with min delays precedence constraints is solved by sequencing.jobs
J1 . . . . . . Jk in order o f nonincreasing precedence delay.

Proof. It is a well-known result for the one-machine scheduling problem with due dates (and no precedence
delays) that the schedule which minimizes lateness is in order of nondecreasing due dates [2]. ~2

Hence, this problem can be solved in O(klg k) time by sorting the jobs by precedence delay.
We now consider the same problem subject to m a x i m u m delays, that is with lj = 0 for j = 1 . . . . . k.
Without loss of generality, solutions to this problem contain no machine idle time. Thus, Max Delays,

Pl P2 Pk
Fig. 2. Instance of the rain delays, k 1-chains problem.
90 E.D. Wikum et al. / Operations Research Letters 16 (1994) 87-99

k 1-chains is the problem of finding a schedule without any idle time that satisfies the m a x i m u m delay
precedence constraints.
Let p(S) = ~ s j ~ s P j for all S ~ J, and define release dates rj = p ( J \ { J j } ) - uj for j = 1 . . . . . k. In any
feasible schedule without idle time, job * starts at time p(J). Thus, the completion time of job Jj
in any feasible schedule without idle time must be at least p(J) - uj for allj = 1 . . . . . k. Equivalently, the start
time of job Jj in any feasible schedule without idle time must be at least rj = p ( J \ { J j } ) - u j for all
j = 1 . . . . . k. Hence, if we have an optimal schedule for the max delays problem, then it must satisfy these
release times.
Now, suppose that there is a schedule satisfying the release times, that is a(j) ~ rj f o r j = 1,..., k. Then, for
each j = 1 . . . . . k,

0 >1 r j - tr(j) -= p ( J \ { J j } ) - u j - a ( j ) = a ( * ) - pj - u j - a(j),

which implies a( * ) - Cj(a) <~ uj for e a c h j = 1 . . . . . k. Therefore, schedule a is feasible and hence optimal for
the max delay problem.

Proposition 2.2. Assume rl <~ .." <~ rk. Then, either the instance of the k 1-chains problems with max delays
precedence constraints is infeasible or the schedule without machine idle time corresponding to the sequence
J1 ~ "'" ~ Jk --> * is optimal.

Proof. It is a well-known result for the one machine scheduling problem with release dates (and no
precedence delays) that the optimal sequence is in order of nondecreasing release dates. []

Sorting the jobs according to release date in time O ( k l g k ) is the most consuming step in solving this
problem.
Now, we address the k 1-chains problem in which either lj = 0 or uj = oo for each j = 1 . . . . . k. Let
S c_ {J1 . . . . . Jk} consist of those jobs for which lj > 0, and let T = {J1 . . . . . J k } \ S . Using the algorithm
below, we generate an optimal solution for this problem by combining the solutions given above for the min
delays problem on jobs in S w { * } and the max delays problem on jobs in T w { * }.

Proposition 2.3. The following algorithm solves the min or max delays, k 1-chains problem.
Step 1." Solve the max delays, k 1-chains problems on jobs in T w { * } (see above). I f there is no feasible
schedule for this max delays problem, then STOP: The instance of the rain or max delays problem is
INFEASIBLE.
Step 2: Solve the rain delays, k 1-chains problem on jobs in S w {* } (see above). Let (7 be the optimal
makespan.
Step 3: Combine the solutions from Steps 1 and 2 by putting the jobs in S first as ordered in Step 2,followed
by a gap o f [ C - p ( J ) ] + followed by the jobs in T as ordered in Step 1 (where [ f ] ÷ denotes the positive part
off, i.e. f iff > 0 and 0 otherwise). (Thus, [ C - p ( J ) ] + is the minimum amount of idle time that must be inserted
between jobs in S and jobs in T so as to satisfy the minimum delay precedence constraints corresponding to
jobs in S).

Proof. In Step 1 we either determine a feasible optimal schedule for jobs in T w { * }, or we find the instance
of the min or max delays problem is infeasible.
If [ ( 7 - p ( J ) ] ÷ = 0, the schedule obtained in Step 3 includes no machine idle time and hence is optimal.
On the other hand, if [ (7 - p ( J ) ] ÷ > 0, the schedule obtained in Step 3 has makespan (7, which, from Step 2,
provides a lower bound on the optimal makespan. []
E.D. Wikum et al. / Operations Research Letters 16 (1994) 8 7 - 9 9 91

Table 1
NP-completeness results

Type of delays Chain structure Complexity result

Min and Max k l-chains Strongly NP-complete

Min k 2, l, ..., 1-chains NP-complete


Max k 2, 1..... 1-chains NP-complete

Min k n~, 1..... 1-chains Strongly NP-complete


Max k nl, 1,..., l-chains Strongly NP-complete
Min k 2-chains Strongly NP-complete
Max k 2-chains NP-complete

3. Hard problems

In this section we give NP-completeness results that are summarized in Table 1. It is easy to check that all
of these problems have decision versions that are in NP.

3.1. Minimum and maximum delays, k 1-chains

In Section 2, we proved that the min or max delays, k l-chains problem is solvable in polynomial time. In
this subsection, we prove that determining whether or not there exists a schedule that satisfies the minimum
and maximum delay precedence constraints, where the precedence relation is k 1-chains, is strongly
NP-complete. The rain and max delays, k 1-chains feasibility problem is formally defined as follows:

I N S T A N C E : Job set J = {J1 . . . . . Jk} w { * }, processing requirement p j e Z g VJj e J, precedence relation


P on J of the form P = { ( J j , * ) , j = 1 . . . . . k}, minimum delays lj and maximum delays uj, where
0 <~ lj <<,u j, lj is a nonnegative integer, and uj is either infinite or a nonnegative integer for j =- 1 . . . . . k.
Q U E S T I O N : Is there a one-machine schedule for J (i.e., a function a with a ( j ) > a ( j ' ) implying
a(j)>~a(j')+pj,) that satisfies the minimum and maximum delay precedence constraints (i.e.,
lv <<.a ( * ) -- Cj(a) <~ b!j, where Cj(G) = a(j) + pj Vj = 1 . . . . . k)?

Proposition 3.1. The rain and max delays, k 1-chains feasibility problem is NP-complete in the stron9 sense.

Proof. It was noted in Section 2 that the min delays k 1-chains feasibility problem is equivalent to the due
dates feasibility problem, and that the max delays k 1-chains feasibility problem is equivalent to the release
dates feasibility problem. Thus, the min and max delays k 1-chains feasibility problem is equivalent to the
feasibility problem with both due dates and release dates and so the complexity result follows [3]. E5

3.2. k 2, 1 . . . . . 1-chains

In this subsection we begin to study problems where there are some precedence relationships among the
jobs. Suppose that the first chain has two jobs preceding job • while chains 2 . . . . . k still have only one job
preceding job *.
This problem with minimum delays yields the following decision problem.
92 E.D. Wikum et al. / Operations Research Letters 16 (1994) 87-99

INSTANCE: Job set J = {J~,Jx2} w {J2 . . . . . Jk} w { * }, processing requirement p j E Z ~ VJj ~J, pre-
cedence relation P on J of the form P = {(Jx~,Jx2)} w { ( J x z , * ) } w { ( J j , * ) , j = 2 . . . . . k}, nonnegative
integer minimum delays lx~, lx~, and lj for j = 2 , . . . , k, and a positive integer y.
QUESTION: Is there a one-machine schedule for J (i.e., a function a, with a ( j ) > a ( j ' ) implying
~r(j) >>.a(j')+p~,) that satisfies the minimum delay precedence constraints (i.e., a ( j ' ) - C j ( a ) > ~ lj
V( Jj, Jj,) ~ P, where Cj(a) = a ( j ) + pj VJj E J) and meets the overall deadline (i.e., C.(cr) ~< y)?

Proposition 3.2. The min delays, k 2, 1 . . . . . 1-chains decision problem is NP-complete.

Proof. We use for the reduction the NP-complete P A R T I T I O N problem [-4], which is defined as
follows:

INSTANCE: Index set A = {1 .... ,a} and size s(j)~ Z~ Vj ~ A.


QUESTION: Is there a subset A' _~ A such that ~j~A,S(j) = ~ j e A \ A , S ( j ) 9.

We construct a corresponding instance of the rain delays, k 2, 1 . . . . . 1-chains decision problem in poly-
nomial time as follows:

k=a+ 1; p~,=p~= 1; lx,=Ix~=½~s(j);


jEA

pj=s(j-- 1), j = 2 . . . . . k; lj=0, j = 2 . . . . . k; p.=0;

y = ~ s(j) + 2.
jEA

Since Pxl + Px~ + Y~= z PJ = Y, a schedule can have makespan at most y if and only if that schedule includes
no machine idle time. In any feasible schedule without machine idle time, the sum of the processing
requirements of jobs from {J2 . . . . . Jk} scheduled between jobs Jx~ and Jx2 (Jx2 and *) must be at least
Ix, = ½Zj~a s(j) (1~2 = ~Zj~a
1 s(j)). N o w ~ =
k z PJ = Zj~A s(j), so in any feasible schedule without machine idle
time, the sum of the processing requirements of jobs from { J 2 , . . . , J ~ } scheduled between jobs Jx~ and
Jx2 must equal ½~ ~a s(j), as must the sum of the processing requirements of jobs from {J2 . . . . . Jk } scheduled
between jobs Jx~ and *. Thus, there exists a feasible schedule that meets the overall deadline if and only if
there exists a partition of {J2 . . . . . Jk} into two disjoint subsets such that the sum of the processing
requirements of the jobs in each subset equals ½Zj~A s(j).

Proposition 3.2 does not preclude a pseudo-polynomial-time algorithm for the rain delays, k 2, 1,...,
l-chains problem. Whether or not such an algorithm exists is an open question.
Using the same type of reduction, we can show that the same problem setup with m a x i m u m delays is also
NP-complete (see [6] for details).

3.3. k nl, 1 . . . . . 1-chains

In this subsection we examine the minimum delays problem where we now allow an arbitrary number of
jobs in the first chain. The decision problem version of our problem is defined as follows:

INSTANCE: Job set J = {J~ . . . . . . Jx,,} ~ {J2, ... ,Jk} w { * }, processing requirement pj~ Z + VJi ~ J,
precedence relation P on J of the form P = {(Jxj,Jxj+l), j--- 1 . . . . . nl - 1} ~ { ( J x , , , * ) } w {(Jj,*),
j = 2 . . . . . k}, nonnegative integer minimum delays lxj f o r j = 1 . . . . . nl and lj f o r j -- 2 . . . . . k, and a positive
integer y.
E.D. W i k u m et al. / Operations Research Letters 16 (1994) 8 7 - 9 9 93

QUESTION: Is there a one-machine schedule for J (i.e., a function a, with a ( j ) > a(j') implying
a ( j ) > ~ a ( j ' ) + p j , ) that satisfies the minimum delay precedence constraints (i.e., a ( j ' ) - C j ( a ) > ~ lj
V ( Jj, J j. ) E P, where Cj(a) = a(j) + pj VJj ~ J) and meets the overall deadline (i.e., C,(a) ~< y)?

Proposition 3.3. The rain delays, k n~, 1 ..... 1-chains decision problem is NP-complete in the stronq sense.
Proof. This proof is a straightforward extension of the proof of Proposition 3.2 except that 3 - P A R T I T I O N
is used in place of P A R T I T I O N . []

Using the same type of reduction, we can prove that this problem setup with m a x i m u m delays is also
NP-complete in the strong sense (see [6] for details).

3.4 Min delays, k 2-chains

Here we study the minimum delay problem where each chain has two jobs. The decision problem version
of the rain delays, k 2-chains problem is defined as follows:

I N S T A N C E : Job set J = uk= 1 ~Jjl, ( Jj2s) kd { , }~ processing requirement pj e Z~ VJj e J, precedence


relation P on J of the form P = {(Jjx,Jj2), J = 1..... k} w { ( J j 2 , * ) , j = 1 . . . . . k}, nonnegative integer
minimum delays ljl and lj2 for j = 1 . . . . . k, and a positive integer y.
QUESTION: Is there a one-machine schedule for J (i.e., a function a, with a ( j ) > o-(j') implying
a ( j ) > ~ a ( j ' ) + p j , ) that satisfies the minimum delay precedence constraints (i.e., a ( j ' ) - C j ( a ) > ~ lj
V ( Jj, d).) E P, where C~(a) = a(j) + pj VJj e J) and meets the overall deadline (i.e., C,(a) <~ y)?

Proposition 3.4. The rain delays, k 2-chains decision problem is NP-complete in the strong sense.

Proof. We use for the reduction the strongly NP-complete S E Q U E N C I N G WITHIN INTERVALS
problem [3], which is defined as follows:

INSTANCE: Task set T = { 1 . . . . . t} and, for each t a s k ) ~ T, a length l(j) E Z +, a release time r(j) ~ Z0+,
and a deadline d(j) ~ Z +.
QUESTION: Is there a one-machine schedule for T (i.e., a function ~b: T ~ Z J , with ~b(.j)> qS(j')
implying ~b(j) ~> q~(j') + l(j')) that satisfies the release time constraints and meets all the deadlines ti.e., for all
j ~ T, c~(j) >. r(j) and (b(j) + l(j) <~ d(j))?

We construct a corresponding instance of our problem as follows:

k = t; Pil = 0, P)2 = l(j), j = 1 . . . . . k; p . = 0;

ljl = r ( j ) , j = 1,...,k: y = m a x j = l ..... td(j); liE=y-d()), j = 1 ..... k.

One can easily verify that this mapping satisfies the computation time and instance size requirements for
a pseudo-polynomial transformation.
Suppose there exists a schedule, a, that satisfies the minimum delay precedence constraints and meets the
overall deadline. Define schedule O : T ~ Z~- by qS(j)= a(j2) for j = 1 . . . . . t = k. Since ljl = r(j), then
~r(j2) >~ r(j) f o r ) = 1 . . . . . k, which implies ¢ ( j ) >~ r(j) f o r ) = 1 . . . . . t. Now

a(j2) + Pj2 + lj2 ~ a(*) <~ y f o r ) ---- 1 . . . . . k,


94 E.D. Wikum et al. / Operations Research Letters 16 (1994) 87-99

which implies
a(j2)+pjz<~y-(y-d(j))=d(j) for j = 1 . . . . . k.
Hence, ~b(j) + l(j) <~ d(j) f o r j = 1 ..... t and schedule ~b is feasible for S E Q U E N C I N G W I T H I N INTER-
VALS.
Now, suppose there exists a schedule q~: T ~ Z + such that, for allj ~ T, (o(j) >>.r(j) and ~b(j) + l(j) <<.d(j).
Define schedule a by
a(jl)=0 for j = 1 .... ,k,
a(jZ)=q~(j) for j = 1 . . . . . k = t ,

and
a(*) = max {o-(m2)+ Pine + lm2}"
m=l ..... k

Schedule a satisfies the minimum delay precedence constraints corresponding to ( J j l , J j 2 ) for j = 1 . . . . . k


since
a(j2) -- (a(jl) + pj~) = a(j2) = q~(j)/> r(j).
By definition of a(*), schedule a satisfies the minimum delay precedence constraints corresponding to
( J j2, *> for j = 1 . . . . . k. Finally, schedule a meets the overall deadline since
cb(j)+l(j)<~d(j) for j = 1. . . . . t ~ a ( j 2 ) + p j z ~ < d ( j ) for j = 1 . . . . . k,

which implies
c,(~) = ~( • ) = max {a(m2) + Pro2 + Ira2} ~ max {d(m) + lm2 }
m=l ..... k m=l ..... k

max {d(m) + y - d(m)} = y.


m=l ..... k

We do not know whether the max delays, k 2-chains problem is strongly NP-complete.

4. Heuristics and bounds, k 2, 1 .... ,1-chains

In each feasible sequence for the rain delays, k 2, 1 . . . . . 1-chains problem, each job from { J2 . . . . . Jk } appears
either before job Jxl, between jobs Jx, and Jx~, or between jobs Jx2 and *. The following proposition describes
the relative ordering of the jobs from {J2 . . . . . Jk } which appear before job J~,, between jobs Jx, and J~2, and
between jobs Jx2 and * in the sequence associated with some optimal schedule.

Proposition 4.1. For the min delays, k 2, 1. . . . . 1-chains problem, there exists an optimal schedule a* with
associated sequence of the form
Je2-~ ...--,Je,~Jx,--,Je,+,~ . . . . Jem-~J~2-~Je~+ - ~ . . . - ~ J e k - , , ,
where 1 ~ i <. m <~ k, such that
l~ >1 ... >~ le,, I. . . . ~ ... ~ le~ , and 1. . . . >~ ... >1 1~. (1)

Proof. This proposition may be proved by an interchange argument [6]. []


E.D. Wikum et al. / Operations Research Letters 16 (1994) 87 99 95

N o t e that although the jobs in each subset can be ordered by nonincreasing precedence delay time, it is not
true that the set { J2 . . . . . Jk} can be ordered in this way. The following class of examples shows that if we
restrict ourselves to schedules in which l~ >~ ... ~> le~ (called insertion schedules) then the worst-case
performance guarantee cannot be less than ~. Let k = 4, Px, - Px2 = 1, P2 --- P3 = ¼ s, P4 = s, lx, = s, Ix2 = ½ s,
12 = 13 = 1, and 14 = 0 and s >/1. Then one optimal insertion schedule is the one corresponding to the
sequence Jx, --* J2 ~ J3 ~ Jx2 ~ J4 --* *, with m a k e s p a n 2s + 2. The optimal schedule, corresponding to
sequence Jx, ~ -/4 ~ Jx~ ~ J2 ~ J3 ~ *, has m a k e s p a n 3s + 3. Thus,
C,(a) _ 2s + 2
lim C , ( a * ) lim _ 4
. . . . . . . -~s + 3 3.

An optimal insertion schedule can be found in O(k z) time by enumeration. Although we do not know the
m i n i m u m performance guarantee that can be achieved over all insertion schedules, in the next subsection we
give a single class of insertion schedules that yields a performance guarantee no greater than ~.

4.1. Insertion schedule with worst-case p e r f o r m a n c e ratio


First we describe two relaxations which yield lower bounds for the optimal makespan. The first relaxation,
R 1, is obtained simply by eliminating j o b Jx,. The second relaxation, R 2, is obtained by eliminating job
Jx2 and imposing a m i n i m u m delay of Ix1 + Px2 + lx2 between jobs Jx, and , . Clearly, if a I (a 2) is an optimal
schedule for R 1 (R z) and a * is an optimal schedule for the instance of the rain delays, k 2, 1 . . . . . 1-chains
problem, then
C , ( a 1) ~< C , ( a * )
and
C , ( a 2) ~< C , ( a * ) .
F r o m each relaxation, we will obtain an insertion schedule for the rain delays k 2, 1 . . . . . 1-chains problem
by scheduling the omitted job as early as possible so as to avoid any idle time. First, from a 1, we can obtain
an insertion schedule for the min delays, k 2, 1 . . . . . 1-chains p r o b l e m with a m a k e s p a n that exceeds the
m a k e s p a n of schedule a 1 by at most Px, + lx,. In Section 2, we proved that the min delays, k l-chains p r o b l e m
is solved by sequencing jobs J1 . . . . . JR in order of nonincreasing precedence delay. Thus, we can assume that
the sequence associated with schedule a I has the form
J,,2 ~ "" ~ Je,--* Jx2--* Je,+,--* "" ~ Jek ~ *,
where 1 ~< i ~< k and l~ >>- ... >~ le, >>-Ix~ >~ le,+, >~ "" >~ l~k. Let (~1 be the insertion schedule obtained from
a 1 by scheduling j o b Jx, first, that is, ~ is the schedule associated with the sequence
Jx,---~ J~2 -* "'"--*Je,---~ Jx2--* J~,+l --* "" -~ J~k--* *"
We have
0t(x2) = a~(x2) + Px, + [Ix, -- Eit=2Pet] +

"~ o'l(x2) -~ Pxl + Ix,,


which implies
C,(0') -- C,(a ~) <~ px, + 1~,. (2)
Similarly, from a 2, we can obtain an insertion schedule for the rain delays, k 2, 1 . . . . . 1-chains p r o b l e m with
a m a k e s p a n that exceeds the m a k e s p a n of schedule a 2 by at most Px2 + Ix~. We can assume that the sequence
associated with schedule a 2 has the form
J,,~ ...--*J~ ~J~,~J~+,--* ...~J~,,
96 E.D. Wikum et al. / Operations Research Letters 16 (1994) 87 99

where 1 ~< m ~< k and le2 >~ "" >/ 1~ >1 Ix, + p~2 + Ix~ >1 le~+, >~ "'" >~ l~. Let t~ 2 be the schedule obtained
from a 2 by inserting j o b J~2 as soon after j o b Jx, as possible so as to satisfy the m i n i m u m delay precedence
constraint corresponding to (Jx,, Jx~) (and thus avoiding any idle time), that is, #2 is the insertion schedule
associated with the sequence

Je2 ---~ "" --~ Jem-~ Jxt--~ Je,.+~ --* " ' " - - ~ J e ~ - * J x 2 - - * J .... "-} ""--*Jet, -~" *,

where r = argmin{s = m + 1 . . . . . k: ZT=,,+lP~ >/lx,}. If no such r exists, then j o b J~: can be inserted into
s c h e d u l e t7 2 before j o b * without affecting the m a k e s p a n , in which case C,(tY 2) = C,(a2). On the other hand,
if r exists, then we have

i f 2 ( * ) ~< 0 " 2 ( * ) "q- Px2 + lx2-- E Petl + .


t=r+l

Thus,
C,((~2) -- C,(02) ~ Px~ + lx~. (3)
We n o w prove that the heuristic that involves selecting the better of ~1 and 8 2 has a worst-case
performance ratio of ~.

Proposition 4.2. Let a = argmina=a,,a~ {C,(#)}. Then C,(a) ~ ~C,(a*).

Proof. F r o m Eqs. (2) and (3) we have


C , ( ~ i ) - C , ( a i) <<.px, + lx, fori= 1,2

and
C , ( a * ) ~> m a x {C,(al)}.
i=1,2

Hence,
min {C,(t~')} ~< C , ( a * ) + min {p~, + l~,},
i=1,2 i=1,2

so that
2
2 C , ( a ) < 2 C , ( a * ) + ~" (Px, + lx,)-
i=1

The desired inequality n o w follows since


2
Y (px, + 1~,) -<< c,(a*). []
i=1

The following series of examples shows that the heuristic's worst-case performance ratio is attainable. Let
k = 4, Px~ = Px2 = 1, P2 --- P3 = I s , P4 -----S, lx, -- s + 1, lx2 = s, 12 = 13 = 1, and 14 = 0 and s ~> 1. Then ~1, the
schedule corresponding to sequence J~, ---} Jx~ ~ J2 ~ J3 ---' J4 ~ *, has m a k e s p a n 3s + 3 and #2, the
schedule corresponding to sequence Jx, --* .I2 ~ J3 ~ .14 ~ Jx2 ~ *, has m a k e s p a n 3s + 2. The optimal
schedule, corresponding to sequence J~, ~ J2 ~ J3 ~ Jx~ ---} ,/4 ~ *, has m a k e s p a n 2s + 3. Thus,
C,(a) 3s + 2 3
lim
S~ct3 2, + 3 2"
E.D. Wikum et al. / Operations Research Letters 16 (1994) 87-.99 97

4.2. Pseudo-polynomial algorithm for special case with 12 . . . . lk = 0

In proving that the min delays, k 2, 1 . . . . . 1-chains problem is NP-hard, we in fact proved that the special
case with lz . . . . . lu = 0 is NP-hard. We now prove that this special case is not N P - h a r d in the strong
sense by exhibiting a pseudo-polynomial-time algorithm.

Proposition 4.3. There exists an optimal schedule for the special case of the rain delays, k, 2, 1 . . . . . 1-chains
problem with l2 . . . . . lk = 0 in which the first job scheduled is Jx~.

Proof. Let a* be any optimal schedule. If the first job scheduled in a* is J ~ , the proof is complete, so suppose
that jobs J~:, .... Je, are scheduled before job J ~ and jobs J~.... ..., J ~ are scheduled between jobs J ~ and
Jx2 in schedule a*, where 1 ~< i ~< m ~< k. The schedule #*, obtained from a* by interchanging jobs J ~ and
J~,, has makespan A less than C,(a*),

A-= ,=2Pe'+Pxt + ~ Pe'+ lxt-- ,=/+ -- Px'+,~-zPe'+ Ix'-- t

= lx,- Pe~ -- l~-- p~,


t=i+l t=2

>~ O. E5

Let cr be any active schedule with job Jx, scheduled first, let S c_ {J2 . . . . . J k } include those jobs scheduled
between jobs Jxl and Jx2 in ~r, and let T = { J 2 . . . . . J k } \ S include those jobs scheduled between jobs J~2 and
• in a. Since l 2 . . . . . lk = 0, then the order in which the jobs in S are scheduled in a is immaterial, as is the
order in which the jobs in T are scheduled in a. Now, either ~jj ~s Pj < I~l, in which case schedule 6 includes
idle time between jobs J ~ and J~2, or ~sj~sPj >~ lx,, and there is no idle time between jobs J~, and J~2.
Similarly, either 2Jj~rPj < lx~, in which case schedule a includes idle time between jobs J ~ and *, or
2Jj ~r Pj ~> l~, and there is no idle time between jobs J ~ and *. In other words, schedule o- has one of the four
forms shown in Fig. 3.
Since

p.~ + Ix, + p:,~ + l~ + p ,

151 lz2

>0 >0
lz 1 ->l=2
,^

I [ liiiiiiil] 'x, I I'1


_>ix 1 >0 >_lz 2

>L= z L=2

>o

Fig. 3. Four possible forms for any schedule with job Jx, scheduled first.
98 E,D. Wikum et al. / Operations Research Letters 16 (1994) 87-99

is a lower bound for the optimal makespan, then a " F o r m 1" schedule is necessarily optimal. Moreover,
since
Y~ pj
JjEJ

is a lower bound for the optimal makespan, then a " F o r m 3" schedule is necessarily optimal as well.
For each j = 2 .... , k, define

1, job Jj is scheduled between jobs J~, and Jx2,


xi = 0, job Jj is scheduled between jobs J~2 and , .

Recall that all data are assumed to be integral and let x 12 be an optimal solution for the knapsack problem
given by

max pjxj: ~ p i x j < ~ l ~ , - 1 , x j e { O , 1} for j = 2 . . . . . k}. (4)


j j=2

If ~ = 2 p j(1 - x) 2) < lx~, then the schedule, 0"12, defined by x 12 is a F o r m 1 schedule. Otherwise, 0-12 is
a F o r m 2 schedule with minimum idle time between jobs Jx, and Jx~ and hence with minimum makespan
a m o n g F o r m 2 schedules.
Let x 34 be an optimal solution to

rain pixj: pjxi>~lxl, x j e { 0 , 1 } for j = 2 . . . . . k .


J J
Equivalently, x a4 is the 0 - 1 complement of an optimal solution for the knapsack problem given by

max pjx/ ~pjxj~ ~pi-lx,, xje{0,1} forj=2,...,k . (5)


j j=2 j=2

If ~ = 2 p j ( l - x 34)/> lx~ then the schedule, 0-34, defined by x 34 is a F o r m 3 schedule. Otherwise, a 34 is


a F o r m 4 schedule with minimum idle time between jobs Jx~ and • and hence with minimum makespan
a m o n g F o r m 4 schedules.
In order to solve the special case of the min delays, k 2, 1 . . . . . 1-chains problem with 12 . . . . . lk = 0, we
first solve the knapsack problems (4) and (5). If 0-12 (0.34) is a F o r m 1 (3) schedule, then a 12 (0-34) is optimal.
Otherwise, the schedule with minimum makespan between 0-12 and cr34 is optimal. Problems (4) and (5) can
be solved by dynamic programming in time O(k.12,) and O ( k ( ~ = 2 pj - l~,)2). Thus, the NP-hard special
case with 12 . . . . . lk = 0 can be solved in pseudo-polynomial time.
It is interesting to note that e-approximations to the knapsack problems (4) and (5) do not necessarily lead
to an e-approximation for our problem. However, for an even more specific but still NP-hard special case,
where Ix1 = lx2 = ~(Zj=1 k 2 PJ), in I-6] it is shown that an e-approximation scheme for the knapsack problem [5]
yields a heuristic with a worst-case bound of ¼ + A, where A = f(e) ~< e/4.

Acknowledgements
We would like to thank Leslie Hall for pointing out the correspondence between our min delays and max
delays k 1-chains problems, and the due date and release date problems, respectively. Part of the proof of
Proposition 4.2 is due to Bo Chen and Leslie Hall.
E.D. Wikum et al. / Operations Research Letters 16 (1994) 87-99 99

References

[1] E. Balas, J.K. Lenstra and A. Vazacopoulos, "One machine scheduling with delayed precedence constraints", Management Science
Research Report # MSRR-589, Graduate School of Industrial Administration, Carnegie Mellon University, 1992.
[2] R.W. Conway, W.L. Maxwell and L.W. Miller, Theory of Schedulino, Addison-Wesley Reading, MA, 1967.
[3] M.R. Garey and D.S. Johnson, Computers and Intractability: A Guide to the Theory of NP-completeness, W.H. Freeman and
Company, San Fransisco, 1979.
[4] R.M. Karp, "Reducibility among combinatorial problems, in: R.E. Miller and J.W. Thatcher (eds.) Complexity of Computer
Computations, Plenum Press, New York, 1972, pp. 85-103.
[5] E.L. Lawler, "Fast approximation algorithms for knapsack problems", Math. Oper. Res. 4 (1979) 339 356.
[6] E.D. Wikum, "One-Machine Generalized Precedence Constrained Scheduling", Ph.D. Dissertation, School of Industrial and
Systems Engineering, Georgia Institute of Technology, 1992.

Potrebbero piacerti anche