Approximation Algorithms for Shop Scheduling Problems with Minsum Objective

advertisement
Approximation Algorithms for Shop Scheduling Problems with
Minsum Objective ∗†
Maurice Queyranne‡
Maxim Sviridenko§
April 29, 1999
This paper is dedicated to Elisabeth Inger L. on the day of her birth.
Abstract
We consider a general class of multiprocessor shop scheduling problems, preemptive or nonpreemptive, with precedence constraints between operations, with job or operation release dates,
and with a class of objective functions including weighted sums of job, operations and stage completion times. We present a general approximation method combining a linear programming
relaxation in the operation completion times, with any algorithm for the makespan version of
these problems without release dates. If the latter produces a schedule with makespan no larger
than ρ times the “trivial lower bound” consisting of the largest of all stage average loads (or
“congestion”) and job lengths (or “dilation”), then our method produces a feasible schedule with
minsum objective no larger than 2eρ times the optimum where 2e ≈ 5.44. This leads in particular to a polynomial time algorithm with polylogarithmic
performance
P guarantee for the minsum
P
multiprocessor dag-shop problem J(P )|rij , dagj | S wS CS where S wS CS is a general minsum objective including weighted sum of operation and job completion times, stages makespans
and others, whereas the best known earlierP
performance guarantees were O(m) (where m
P is the
number of stages) for the
special
cases
J||
C
(Gonzalez
and
Sahni,
1978),
F
(P
)|r
|
wj Cj
j
j
P
(Schulz, 1996) and O|| Cj (Achugbue and Chin, 1982). We also obtain
a
O(1)
performance
P
guarantee for the acyclic job shop problem J|pij = 1, acyclic − dagj | S wS CS with unit processing times and weighted sum of operation (or job) completion time objective. Our results
extend to a broad class of minsum objective functions including some convex objectives related
to load balancing. We
P then present an improved 5.83-approximation algorithm for the open
shop problem O|rj | wj Cj with total weighted job completion time objective. We conclude
with a very simple method which yields O(m)-approximation algorithms for various job shop
problems (preemptive, nonpreemptive, and no-wait) with m single-processor stages and total
weighted job completion time objective.
1
Introduction
Approximation algorithms have been developed during the past three decades for many scheduling
problems with minmax objective—primarily the makespan. In contrast, scheduling problems with
minsum objective—typically, a weighted sum of completion times—have only recently received
∗
Research supported by a research grant from NSERC (the Natural Sciences and Research Council of Canada) to
the first author.
†
An extended abstract of this work has been published in Proceedings of SODA00 [28]
‡
Faculty of Commerce and Business Administration, University of British Columbia, Vancouver, B.C., Canada
V6T 1Z2; Email: Maurice.Queyranne@commerce.ubc.ca
§
IBM T. J. Watson Research Center, P.O. Box 218, Yorktown Heights, NY 10598, USA; Email: sviri@us.ibm.com
1
extensive attention. Many results for the makespan shop scheduling problems use a trivial lower
bound which is the largest of (i) the maximum stage average load, also known as “congestion”
[21], and (ii) the maximum job length, or “dilation” (ibid.). On the other hand, two of the most
successful tools for the minsum problems have been the use of time intervals with geometrically
increasing lengths (as in in Hall et all. [15, 16] and Chakrabarti et al. [6]) and linear programming
relaxations (see Queyranne and Schulz [26], Skutella [37] and Shmoys [35] for extensive reviews and
references). In this paper, we combine these three techniques—makespan approximation algorithms
relative to the trivial lower bound, geometric time intervals, and linear programming relaxations—
to obtain a general approximation method for large classe of scheduling problems with minsum (and
related) objective. All scheduling problems studied in the paper are denoted using the standard
three-field notations; see [18] for definitions.
Our main result is the following: if there exists a polytime algorithm for a class of multiprocessor
job shop problems which guarantees a makespan no larger than ρ times the trivial lower bound, then
we obtain a polytime algorithm for the minsum version of the problem, with release dates, which
guarantees an objective value no larger than 2eρ times the optimum where e ≈ 2.718 is the base
of the natural logarithms. This yields algorithms with the best known performance guarantees for
various classes of job shop, flow shop and open shop problems with minsum and related objectives.
We also present an improved version of this algorithm, with performance guarantees 5.83, for the
P
open shop problem with release dates O|rj | wj Cj with weighted sum of job completion times
objective. This approximation factor is slightly weaker than the (5.78 + ε)-approximation factor
P
obtained by Chakrabarti et al. [6] for the open shop problem Om|rj | wj Cj with fixed number m
of machines. On the other hand, our algorithm, which uses a novel idea of ”LP-based job precedence
constraints” derived from LP-solution, is polynomial for any number of machines. We also present
P
a simple 3-approximation algorithm for the preemptive problem O|rj , pmtn| wj Cj . In contrast
with the other algorithms in this paper, it is a simple job-based greedy algorithm using directly
the LP-solution without recourse to geometrically increasing time intervals. Its approximation
P
factor is also slightly weaker than the (2.89 + ε)-approximation factor for Om|rj , pmtn| wj Cj in
Chakrabarti et al. [6], but again our algorithm is polynomial for any number of machines. Notice
also that recently (2+ε)-approximation algorithms for generalized preemptive open shop scheduling
problems with minsum objective were obtained in [28]. On the other hand, Hoogeveen et al. [17]
P
P
have shown that the problems F || Cj and O|| Cj are MAX-SNP-hard, hence there is no hope
for obtaining approximation guarantees arbitrarily close to 1 for these problems, unless P = N P.
Our approach applies to a broad class of shop scheduling problems defined as follows. The
shop consists of m stages, where stage Pi consists of mi identical parallel machines (or processors).
Each machine can process at most one operation at a time. A set of n jobs must be processed
in this shop, where job Jj consists of µj operations Ohj (h = 1, . . . , µj ), each of which must be
processed on one machine in a specified stage for phj time units. There are three types of constraints
on the operations Ohj of each job Jj : (i) no two operations of a same job Jj may be performed
simultaneously; (ii) each operation Ohj may have a specified release date rhj ; and (iii) there may be
precedence constraints between operations (of a same job, or of different jobs) forming a directed
acyclic graph.
We consider both nonpreemptive and preemptive scheduling; in the former, every operation
must be processed without interruption, while it may be interrupted at any point in time and
resumed later at no penalty or delay in the latter. We seek a feasible schedule which minimizes the
P
minsum objective S wS CS where CS = maxOhj ∈S Chj and Chj is the completion time of operation
Ohj in the schedule. This objective function includes few interesting special cases: operation
completion times (S = {Ohj }), job completion times (S = {O1j , . . . , Oµj j }), stage completion
times and makespan. Our general objective function also includes all variants of weighted sums of
2
above special cases. This composite objective may represent total costs, including deferral costs for
operations and entire jobs, such as holding costs, delay penalties and opportunity costs; and rental
costs for the individual stages and for the whole shop. In this paper we will consider instances with
polynomial number of different sets S and wS > 0 for all sets S.
We present a linear programming (LP) relaxation for the multiprocessor job shop problem
presented above, where the variables are the operation completion times Chj and the set completion
times CS . This LP relaxation includes five types of linear inequality constraints: (i) a release date
constraint Chj ≥ rhj + phj for each operation Ohj ; (ii) a precedence constraint Chk ≥ Cgj + phk for
each intransitive precedence relation “Ogj precedes Ohk ”; (iii) a set of “stage capacity constraints”
for each stage, see equation (5) below; (iv) a set of “job capacity constraints” for each job; and (v) a
set of constraints defining the set completion times CS ≥ Chj for all Ohj ∈ S. Relaxations including
the first three types of constraints have been proposed earlier, by Wolsey [39] and Queyranne [24, 25]
for single machine problems, and by Schulz [30] (see also [16]) for parallel machines and flow shop
problems. They were also used (with limited computational success) by Applegate and Cook [4] in
their computational study of the classical job shop problem with makespan objective. The fourth
set of constraints is a novel feature of this relaxation; it allows us to take into account the job lengths
in our analysis of the relaxation and approximation algorithm. In spite of its exponential number
of constraints, this LP relaxation is solvable in polynomial time since the separation problem for
these constraints is itself solvable in polynomial time [25].
We use an optimal solution C LP to this LP relaxation as the basis for our approximation
algorithm. We first partition all operations into the subsets O(k) (k = 0, 1, 2, . . . ,) of operations
LP < βek+1 where β ∈ [e−1 , 1] is some random
with LP completion times satisfying βek ≤ Chj
variable. We note that we have a polynomial number of nonempty subsets O(k) . Ignoring for now
the release dates, each of the nonempty subsets O(k) defines an instance I (k) of the makespan job
shop problem J(P )|prec|Cmax restricted to O(k) . Applying a ρ-approximation algorithm (relative
to the trivial lower bound) to each of these instances I (k) produces a partial schedule C (k) (starting
at time 0) for all operations in O(k) . We then concatenate these partial schedules C (k) . We show
P
that approximate schedule is feasible for the original problem J(P )|rj , prec| wS CS . We prove
that expected value of this schedule is at most 2eρ of the LP lower bound.
Using known makespan approximation algorithms, we obtain the following approximation bounds
for weighted sum of operations (or job) completion times objectives. For the first three results,
we use the reduction from the multiprocessor makespan problem J(P )|dagj |Cmax to the singleprocessor makespan problem J|dagj |Cmax due to Shmoys et al. [36].
P
• O((log(mµ)/ log log(mµ))2 ) for the job shop problem J(P )|rj , dagj | wS CS (where m is the
number of stages; µ = maxj µj is the largest number of operations per job; and we use the
notation dagj to indicate that the only precedence constraints are between operations of a
same job), using the approximation algorithm of Goldberg et al. [12] for the single-processor
makespan problem. This polylogarithmic performance guarantee dominates1 earlier O(m)
results for:
– the classical job-shop problem J||
Sahni [13]);
P
Cj with mean flow time objective (Gonzalez and
– the multiprocessor flow-shop problem F (P )|rj |
pletion times objective (Schulz [30]); and
– the open shop problem O||
1
P
P
wj Cj with weighted sum of job com-
Cj with mean flow time objective (Achugbue and Chin [1]).
Except for the case of “very long jobs”, discussed in Section 6.
3
• O(log(mµ)/ log log(mµ)) for the unit-processing-time job shop problem J(P )|rj , phj = 1, dagj |
using a unit-processing-time version of the Goldberg et al. algorithm (ibid.).
P
wS CS
P
• O log m · log1+ε log m for the acyclic job shop problem J(P )|rj , acyclic-dagj | wS CS (in an
acyclic job shop each job visits each stage at most once) using algorithms for J|acyclic-dagj |Cmax
from [10, 9]
P
• O(1) for the acyclic unit-processing-time job shop problem J(P )|rj , phj = 1, acyclic-dagj | wS CS
using the makespan algorithm of Leighton et al. [21, 22] for the corresponding single-processor
makespan problem J|phj = 1, acyclic-dagj |Cmax .
P
• 10.88 for the multiprocessor minsum open shop problem O(P )|rj | wS CS with release dates,
using the 2-approximation algorithm of Schuurman and Woeginger [33] for O(P )||Cmax .
P
• 5.44 for the preemptive version O(P )|rj , pmtn| wS CS of the preceding open shop problem,
using a result of Lawler et al. [20] that the trivial lower bound is achievable for O(P )|pmtn|Cmax
and a corresponding polytime algorithm.
All these new approximation bounds, which are summarized in Table 1, strictly improve upon
known results. Furthermore, any new makespan result (relative to the trivial lower bound) for
problems of this type will lead to a corresponding approximation result for the minsum version
of the same problem, with release date constraints added. Note that these results also imply
bounds on the performance of our LP relaxation. Since the LP lower bound is valid for preemptive
schedules, the approximation results above also apply to the preemptive problems (though our
approximation bound of 5.44 for preemptive multi-processor open shop problems is already better
than our nonpreemptive bound of 10.88), and they also bound the gap between optimum preemptive
and nonpreemptive schedules. Since the bounds we obtain are operation-by-operation bounds (see
(11)), they imply similar approximation results for a large class of objective functions, including
some convex objectives related to load balancing, which we discuss briefly at the end of Section 4
below.
We also present two related results for weighted sum of job completion times objectives. First,
P
we consider the open shop problem O|rj | j wj Cj . We propose a simplified and strengthened LP
relaxation, and a more effective approximation algorithm, resulting in a 5.83 performance guarantee.
P
Using the same LP relaxation we obtain a 3-approximation for O|rj , pmtn| j wj Cj . Next, we
present a very simple approach to (single processor) shop scheduling problems with very long jobs,
that is, where m = o((log(mµ)/ log log(mµ))2 )) (for example, if µ = 2m ), for which the preceding
performance guarantee may be worse than O(m). For these problems, we propose a single machine
relaxation, using a speed-m machine. Whenever the resulting preemptive single-machine minsum
scheduling problem is approximable in polynomial time within a constant factor α, we obtain
a heuristic for the original preemptive problem with performance guarantee α m. Furthermore,
if we can construct in polynomial time a nonpreemptive single-machine schedule with objective
value within a constant factor β of the preemptive single-machine optimum, then we obtain a
nonpreemptive and no-wait schedule with objective value within a factor β m of the optimum for
the original minsum job shop problem. These observations yield very simple O(m)-approximations,
summarized in Table 2, for the (very long job version of) the shop scheduling problems mentioned
above.
It may be interesting to note, in reference to the discussion of types of list scheduling algorithms
in Munier et al. [23], that our open shop algorithm uses a variant of “machine-based” (or “nonidling”) scheduling (Section 5), that our job shop algorithm for very long jobs uses “job-based” list
4
scheduling (Section 6), and that our main job shop algorithm in Section 4 combines a makespan approximation algorithm, which in most cases is a machine-based list scheduling one, for constructing
the partial schedules, with a simple method similar to job-based list scheduling for concatenating
the resulting partial schedules.
The contents of this paper are as follows. In Section 2, we present the notations and assumptions used for our general result. We introduce and discuss our LP relaxation in Section 3, and
our approximation algorithm in Section 4. The improved open shop approximation algorithm is
presented in Section 5 and the simple O(m) method for job shop problems with very long jobs in
Section 6. Results from Sections 4 and 5 are summarized in Table 1, and those from Section 6 in
Table 2.
2
Notations and assumptions
An instance I of the minsum job shop problem J(P )|rj , prec|
P = (P1 , . . . , Pm ) is the set of stages;
P
wS CS is defined as follows:
stage Pi consists of mi identical parallel machines (or processors) (mi ≥ 1).
J = (J1 , . . . , Jn ) is the set of jobs;
job Jj consists of a set of µj operations O1j , . . . , Oµj j , where Ohj must be processed without interruption on one machine in stage m(h, j) for phj time units, where phj is the given processing
time of operation Ohj . No two operations on a same job may be performed simultaneously.
Let Oi be the set of all operations Ohj which must be processed on stage Pi , i.e., such that
m(h, j) = i, and let O = ∪i Oi denote the set of all operations.
There are two additional types of constraints on the operations:
≺ denotes the precedence constraints between operations: Ogj ≺ Ohk means that operation Ogj
must be completed before operation Ohk can start; operation Ogj is a predecessor of Ohk and
Ohk is a successor of Ogj ; we assume that ≺ defines a (strict) partial order, i.e., an acyclic
digraph or dag;
rhj ≥ 0 is the release date of operation Ohj ; w.l.o.g., we may assume that the release dates are
compatible with the precedence constraints, that is, rgj + pgj ≤ rhk whenever Ogj ≺ Ohk .
Finally, let U ∈ 2O be a set of operations sets. We assume that all sets are given explicitly in
the input and therefore |U | is bounded by a polynomial of the input length. Let wS > 0 denote
the weight of set S ∈ U .
The problem is to schedule all operations on machines in the prescribed stages, and in the sequence prescribed by the precedence constraints between operations, so as to minimize the weighted
P
sum S∈U wS CS of set completion times CS = maxOij ∈S Cij . We are interested in both the preemptive and nonpreemptive versions of this job shop problem.
P
As was noted in the Introduction the function S∈U wS CS includes few natural objective functions as special cases: the operation completion times (S = {Ohj }); the job completion times
(S = {O1j , . . . , Oµj j }); the stage makespans S = Oi ; the overall makespan S = O.
We assume that all phj and rhj are nonnegative integers. Zero processing times (phj = 0) and
release dates (rhj = 0) are allowed, but we assume w.l.o.g. that rhj + phj ≥ 1 for all Ohj , since
5
all operations with zero processing time and release date may be performed at time zero without
increasing the objective value or affecting the rest of the schedule.
P
We define the average load of stage Pi as Li = (1/mi ) (h,j)∈Oi phj and the length of job Jj as
P
ℓj = h phj . The trivial lower bound for the corresponding makespan problem is max{maxi Li , maxj ℓj }.
3
A linear programming relaxation
As mentioned in the Introduction, the following LP relaxation extends to job shop problems earlier
relaxations introduced by Wolsey [39] and Queyranne [24, 25], and recently used by several authors
for a variety of minsum scheduling problems; see [26] and [37] for extensive reviews and references.
minimize
X
wS CS
(1)
S∈U
s.t. CS ≥ Chj ,
Chj ≥ rhj + phj ,
X
Chk ≥ Cgj + phk ,
Ohj ∈A
X
h∈B
where
phj Chj ≥ fi (A),
phj Chj ≥ gj (B),
Ohj ∈ S, S ∈ U ;
(2)
Ogj ≺ Ohk ;
(4)
Ohj ∈ O;
(3)
A ⊆ Oi , i = 1, . . . , m;
(5)
B ⊆ {1, . . . , µj }, Jj ∈ J ;
(6)
2

1  X
1 X 2
fi (A) =
p
phj  +
2mi O ∈A
2 O ∈A hj
hj
hj
and
2

1 X
1 X 2
gj (B) = 
p .
phj  +
2 h∈B
2 h∈B hj
The objective is the weighted sum of sets completion times, and constraints (3) and (4) are the
release date and precedence constraints, respectively. Constraints (5) form (a relaxation of) the
stage capacity constraints. They prevent too much work from being completed too early on each
stage, and are valid for both preemptive and nonpreemptive schedules. They are parallel machine
extensions, introduced by Schulz [29], of the single machine inequalities of Wolsey and Queyranne;
see [30] or [16] for a proof of their validity. Constraints (6) are a new feature of this work. They
may be interpreted as “job capacity constraints”, and their validity follows from the requirement
that no two operations of the same job may be processed simultaneously. They have the same
mathematical structure as the single-machine capacity constraints (5), except that they correspond
to subsets of operations on a same job. A physical interpretation is that every job may be considered
as a “resource” with unit capacity. Note that these job capacity constraints are implied by the
release date and precedence constraints (3) and (4) when a job consists of a chain (totally ordered
set) of operations, such as in flow shop and “classical” job shop problems.
The LP-relaxation (1)–(6) has one variable per operation, but an exponential number of constraints (5) and (6). Since the separation problem for these constraints can be solved in polynomial
time (Queyranne [25]), it follows that the LP (1)–(6) can itself be solved in polynomial time [14].
6
In the sequel, we let C LP denote an optimum solution to the LP (1)–(6). By the release date
LP ≥ 1 for all operations O . Let
constraints (3) and a preceding observation, we have Chj
hj
T = max rhj +
h,j
X
ph,j .
(7)
h,j
LP ≤ T for all operations O . Indeed, it is easy to verify that (i) a
We may assume that Chj
hj
LP
(componentwise) minimal optimal solution C
(i.e., such that C ′ ≤ C LP for an optimal C ′
′
LP
implies C = C ) satisfies these upper bound constraints and (ii) for any instance where whj > 0
for all operations Ohj without successor, an optimal LP solution must be minimal. (Alternately,
we might directly add the constraints Chj ≤ T to the above LP; indeed, note that any schedule in
which an operation completes later than date T must include some time interval between 0 and T
when all machines are idle, and may therefore be shortened; thus attention may be restricted to
schedules in which all operations complete no later than date T .) We use the vector inequalities
LP ≤ T for all O
1 ≤ C LP ≤ T to represent the inequalities 1 ≤ Chj
hj ∈ O.
Summarizing the preceding observations, we have:
Proposition 3.1 Consider the shop scheduling problem defined in Section 2. Then one can find
in polynomial time an optimal solution C LP to the LP-relaxation (1)–(6) such that 1 ≤ C LP ≤ T
P
P
LP ≤ OPT, where OPT denotes the optimal objective
and S∈U wS CSLP = S∈U wS maxOhj ∈S Chj
value of the preemptive scheduling problem and T is defined in (7) above.
As in earlier work using this type of LP relaxations for defining approximation algorithms, we
use the LP relaxation in three ways. First, it provides a lower bound on the optimum objective value
OPT, against which the objective value of a heuristic schedule may be compared. Next, we use the
optimal LP solution C LP as a guide in the construction of a heuristic nonpreemptive schedule C H ;
in particular, we exploit the release date and precedence constraints (3) and (4) to ensure that the
heuristic schedule C H is feasible. Third, we use the stage and job capacity constraints (5) and (6)
H ≤ 2eβρ C LP for all operations O
to derive operation-by-operation bounds Chj
hj and fixed parameter
e−1 hj
β ∈ [e−1 , 1]. These operation-by-operation bounds imply the 2eρ performance guarantee for our
randomized algorithm.
A key result in deriving these operation-by-operation bounds is the following lemma, due to
Schulz [30]:
Lemma 3.2 (Schulz’s Lemma for stage Pi ) If C satisfies the stage capacity constraints (5) for
stage Pi then for all dates θ > 0,
X
1
pgk ≤ 2 θ
mi (g,k)∈S[i,θ]
where S[i, θ] = {Ogk : m(g, k) = i and Cgk ≤ θ} is the set of operations on stage Pi with “LP
completion time” Cgk no later than θ.
Proof.
have
From the definition of S[i, θ] and the stage capacity constraint (5) for set A = S[i, θ], we


X
(g,k)∈S[i,θ]
and the lemma follows.

pgk  θ ≥
X
(g,k)∈S[i,θ]
pgk Cgk

2
1  X
pgk 
≥ fi (S[i, θ]) ≥
2mi (g,k)∈S[i,θ]
A similar result follows from the job capacity constraints (6):
7
2
Corollary 3.3 (Schulz’s Lemma for job Jj ) If C satisfies the job capacity constraints (6) for
job Jj then for all dates θ > 0,
X
pgj ≤ 2 θ
g∈S ′ [j,θ]
where S ′ [j, θ] = {g : Cgj ≤ θ} is the set of operations on job Jj with LP completion time Cgj no
later than θ.
4
A minsum job shop approximation algorithm
In the first step of our algorithm we find an optimal solution C LP to the linear program (1)–
(6). As discussed above, this can be done in polynomial time and we have 1 ≤ C LP ≤ T , where
P
T = maxh,j rhj + h,j ph,j . Define lg T = ⌈ln T ⌉+1. Let e denote the base of the natural logarithms.
We use a uniform random variable X on [0, 1] to determine a random base point β = e−X . Thus,
at the end of the first step, β is a fixed number satisfying e−1 ≤ β ≤ 1.
.
LP < βek+1 }, i.e.,
In the second step, we define operation subsets O(k) = {Ohj : βek ≤ Chj
LP in interval I = [βek , βek+1 ), for
O(k) is the set of all operations with LP completion times Chj
k
(k)
k = 0, . . . , lg T . Note that the nonempty subsets O form a partition of the set O of all operations,
and that their number 1 + lg T is polynomially bounded. For each nonempty O(k) , we define an
instance I (k) of the makespan job shop problem restricted to the operations in O(k) and ignoring
the release date constraints (but not the precedence constraints between operations). Let
(k)
Li
. 1 X
{phj : Ohj ∈ O(k) and m(h, j) = i}
=
mi
denote the average load of stage Pi in instance I (k) , and let
(k)
ℓj
. X
=
{phj : Ohj ∈ O(k) }
(k) .
(k)
(k) .
(k)
denote the length of job Jj in I (k) . Let Lmax = maxi Li and ℓmax = maxj ℓj denote the maximum
stage load and maximum job length, respectively, in instance I (k). Applying Schulz’s Lemma 3.2
to stage Pi with θ = βek+1 we have
(k)
Li
≤
o
1 Xn
LP
phj : Chj
≤ θ and m(h, j) = i ≤ 2θ ≤ 2βek+1 .
mi
(8)
Similarly, applying Corollary 3.3 to job Jj with θ = βek+1 we have
(k)
ℓi
≤
Xn
o
LP
phv : Chv
≤ θ ≤ 2θ ≤ 2βek+1 .
(9)
Let C (k) denote the completion time vector of the schedule, starting at time 0 and obtained by
applying to I (k) a makespan approximation algorithm with the property that
n
o
n
o
(k)
(k) .
(k)
Cmax
= max Chj : Ohj ∈ O(k) ≤ ρ |I (k) | max L(k)
max , ℓmax
where |I (k) | is the size of instance I (k) and ρ is a nondecreasing function such that ρ |I (k) | ≥ 1.
From inequalities (8) and (9) and ρ(·) nondecreasing, it follows that
(k)
Cmax
≤ 2βek+1 ρ |I (k) | ≤ 2βek+1 ρ (|I|) = 2βek+1 ρ
8
(10)
and we use “ρ” as an abbreviation for “ρ (|I|)” hereafter.
In the third step of our algorithm, we concatenate these partial schedules C (k) into the heuristic
(k) , and keeping
H = 2βek+1 ρ/(e − 1) + C (k) for all operations O
schedule C H by letting Chj
hj ∈ O
hj
the same assignment of operations to the parallel machines at every stage. So, in schedule C H , all
operations in a subset O(k) are completed before the start time of any operation in any later subset
O(q) (q > k), since
(k)
2βek+1 ρ/(e − 1) + Chj ≤ 2βek+1 ρ/(e − 1) + 2βek+1 ρ = 2βek+2 ρ/(e − 1).
Therefore C H is a schedule in which no machine at any stage processes more than one operation
at a time, no job has more than one operation processed at any time, and all operation precedence
LP < βek+1 for O
(k) and ρ ≥ 1, we have
constraints are satisfied. Since rhj + phj ≤ Chj
hj ∈ O
H
k+1
k+1
H
Chj > 2βe ρ/(e − 1) > βe
> rhj + phj , so C also satisfies all release date constraints. This
H
shows that C is a feasible schedule for the original instance I. Using inequality (10) and definition
of O(k) , we have for all Ohj ∈ O(k) ,
H
≤
Chj
2βek+1 ρ
2βek+1 ρ
(k)
LP
+ Cmax
≤
+ 2βek+1 ρ ≤ 2βe2 ρChj
/(e − 1)
e−1
e−1
(11)
H ≤ T . It is
Remark: The heuristic schedule C H may violate the upper bound constraints Chj
possible to rectify this by processing operations as early as possible in the same order as in C H .
It may also be possible to improve on the objective value of the schedule by further modifications,
such as operation interchanges. However, such changes, which may be very useful in practice, are
not needed in our analysis.
The inequality (11) implies the 2eρ performance guarantee of above randomized algorithm
E(
X
S∈U
wS CSH ) =
X
S∈U
2e2 ρ
e−1
H
)≤
wS max E(Chj
Ohj ∈S
Z
0
1
e−X dX
X
S∈U
X
S∈U
LP
/(e − 1)) =
wS max E(2βe2 ρChj
Ohj ∈S
LP
wS max Chj
≤ 2eρOPT.
Ohj ∈S
In fact, a similar performance guarantee applies to a much broader class of objective functions.
.
Let Γ = [1, T ]O denote the set of all vectors C ∈ ℜO such that 1 ≤ C ≤ T . Let W : Γ 7→ ℜ+ be a
nonnegative real-valued function defined on the operation completion time vector C ∈ Γ. Assume
that W satisfies the following properties:
(W1) W is nondecreasing, i.e., W (C) ≤ W (C ′ ) whenever C ≤ C ′ .
(W2) There exists a function F : ℜ+ 7→ ℜ+ such that W (λ C) ≤ F (λ)W (C) for all C ∈ Γ and
scalar λ ≥ 0.
(W3) There exists a nonnegative constant ǫ ≥ 0 such that one can find in polynomial time a
feasible solution C W to the relaxation
W ∗ = min{W (C) : C ∈ Γ and (3)–(6)}
with objective value W (C W ) ≤ (1 + ǫ)W ∗ .
(W4) The value of the following integral is well-defined for all ρ ≥ 1
IN T (ρ) =
Z
1
F
0
9
!
2e2 ρ
dX.
eX (e − 1)
(12)
Property (W3) is satisfied, for instance, if W is convex, can be evaluated in polynomial time for
any C ∈ Γ, and satisfies some additional technical assumptions, so that one can apply the ellipsoid
method to the convex programming problem (12); see [14] for details.
Let C H be the feasible schedule obtained as above, using C W in place of C LP . Properties
(W1)–(W4) of W and the operation-by-operation bound (11) imply that
H
E W (C ) ≤ E W
2βe2 ρ W
C
e−1
!!
≤ IN T (ρ)W (C W ) ≤ IN T (ρ)(1 + ǫ)OPT
where OPT denotes the minimum of W (C) over all feasible schedules C. We have shown:
Theorem 4.1 Consider a class of instances of the makespan job shop problem J(P )|prec|Cmax
for which there exists a polynomial time algorithm producing a feasible schedule with makespan no
larger than ρ times the trivial lower bound (largest of all stage average loads and job lengths), where
ρ may be a nondecreasing function of the size of the instance. Let W be an objective function
satisfying properties (W1)–(W4). Then there exists a polynomial time approximation algorithm
for the scheduling problem J(P )|rhj , prec|W (C) with performance guarantee (1 + ǫ) IN T (ρ).
P
A simple example is the function S wS CS studied in this paper. This function is convex and
satisfies properties (W1)–(W4) with F (λ) = λ, ǫ = 0 and IN T (ρ) = 2eρ.
For another example, consider the job shop problem with an objective to minimize the sum
P
of squared stage makespans i Mi2 where Mi = maxOhj ∈Oi Chj . This objective function is common in load balancing and related problems, see, e.g., Chandra and Wong [7] and Alon et al. [2].
The corresponding function W is convex (since each function C 7→ Mi2 is the composition of a
nondecreasing univariate convex function Mi 7→ Mi2 and a convex function C 7→ maxhj∈Oi Chj )
2 (e+1)
ρ2 . We thus obtain a
and satisfies properties (W1)–(W4) with F (λ) = λ2 and IN T (ρ) = 2e e−1
O(ρ2 ) approximation algorithm for this job shop load balancing problem.
Our randomized algorithm can be simply derandomized by discretizing the probability space.
The simplest way to do it is to consider parameters β ∈ [e−1 , 1] which are powers of 1 + δ for some
small constant δ > 0. Since our performance guarantee is based on operation-by-operation bounds
(11), we can loose only a factor of 1 + δ by such discretizing. It is also possible to show using
more complex argument that by considering polynomially many different values of β we can find a
solution of value at most 2eρ times of optimal value.
5
Improved approximation algorithms for open shop problems
In this section we present a 5.83-approximation algorithm for the single-processor nonpreemptive
P
open shop problem O|rj | wj Cj with weighted sum of job completion times objective and a 3P
approximation algorithm for the preemptive open shop problem O|rj , pmtn| wj Cj . Note that the
method of the preceding sections yields a 10.88-approximation and 5.44-approximation, respectively.
To achieve the improved performance, we modify each of the three steps of our general approach.
The open shop problem we consider here is slightly more general than usual, in that we allow
each job to include any number of operations on every machine. We let pij denote the total
processing time of all operations of job Jj on machine Pi (with pij = 0 if there is no such operation).
We first consider a modified linear programming relaxation, which only includes one variable
Cj per job:
min
X
wj Cj
(13)
10
X
j∈A
pij Cj ≥ fi (A),
Cj ≥ rj + lj ,
A ⊆ {1, . . . , n}, i = 1, . . . , m;
(14)
Jj ∈ J ;
(15)
P
where function fi is as defined in Section 3 with mi = 1, and lj = m
i=1 pij is the length of the job
Jj . Note that the machine capacity constraints (14) follow from the corresponding stage capacity
constraints (5) with mi = 1, using the inequalities Cj ≥ Chj for all operations Ohj ∈ Oi . On the
other hand, the job length inequality constraints (15) replace the job capacity and release dates
constraints but are not implied by the latter. Let C LP denote an optimal solution to (13)–(15).
Notice that the optimal value of this LP is a lower bound both for preemptive and nonpreemptive
open shop problems.
5.1
A 5.83-approximation algorithm for O|rj |
P
w j Cj
In the second step of the algorithm for the nonpreemptive problem, instead of partitioning the
set of all operations, we define a partial order “≺
√LP ” among the jobs as follows: let Jj ≺LP Jk
if and only if γ CjLP < CkLP , where γ = 1 + 12 2 ≈ 1.707. We will use these job precedences
Jj ≺LP Jk in our approximation algorithm to prevent starting job Jk on machine Pi before every
job Jj with “sufficiently early LP completion time” (as defined by the condition γ CjLP < CkLP ) has
been completed on this machine.
In our third step we schedule the operations using “machine-based scheduling” consistent with
these job precedences. Namely, we start at time t = 0 with all jobs without predecessor in ≺LP
and rj = 0 being available for each machine; the availability date of each machine Pi is Ai = 0. We
repeat the following until all job completion times have been determined. Let Pi be a machine with
.
the earliest availability date t = Ai = minh Ah . If there is a job Jj available for machine Pi and not
in process on some other machine at date t then: process Jj on Pi in the time interval [t, t + pij ];
update Ai = t + pij ; declare job Jj not available any more for machine Pi ; and declare available for
machine Pi every job Jk such that Jj ≺LP Jk , rk ≤ t + pij and of which every other predecessor
Jℓ ≺LP Jk has been processed on Pi . (Remark that job Jj may be available for machine Pi even if
some operations of some of its predecessors are not complete on some other machines.) Otherwise
(that is, if there is no job which, at date t, is available for machine Pi and is not in process on some
other machine) update Ai to the minimum between the next smallest machine availability date and
the next smallest release date Ai = min {min{rj : rj > t}, min{Ah : Ah > t}}: machine Pi will be
idle during the time interval [t, Ai ]. Declare job Jj available for machine Pi if rk ≤ Ai and every
other predecessor Jℓ ≺LP Jk has been processed on Pi .
We obtain the following job-by-job bound:
Lemma 5.1 Let C LP be an optimal solution to (13)–(15). Then the algorithm described in the
preceding paragraph defines a feasible schedule with job completion times CjH satisfying, for every
job Jj ,
√ γ
H
CjLP = 3 + 2 2 CjLP ≈ 5.83 CjLP .
Cj ≤ 2γ +
γ−1
Proof. We first observe that the date t is nondecreasing during the execution of the algorithm,
and that the following invariant is maintained: no job starts on any machine at a date later than t.
Therefore, at any time, no machine processes more than one job, and no job is being processed on
more than one machine. The algorithm thus constructs a feasible nonpreemptive schedule, which
we call the heuristic schedule in the rest of this proof. Consider a job Jj and its completion time
CjH in the heuristic schedule and let Pi denote the last machine on which Jj is processed. We let
11
CjH = B + I where B ≥ 0 is the total busy time of machine Pi in interval [0, CjH ], and I is its total
idle time in this interval. Because of the job precedences, machine Pi cannot process before job Jj
P
any job Jk such that γ CjLP < CkLP . Therefore, B ≤ {pik : CkLP ≤ γ CjLP } and, by constraints
(14) and Schulz’s Lemma 3.2 with θ = γ CjLP , we obtain B ≤ 2γ CjLP .
We now bound the total idle time I of machine Pi during the time interval [0, CjH ]. We construct
.
a finite sequence (v(0), v(1), . . . , v(q)) of job indices such that v(0) = j and for k ≥ 1, v(k) is the
last job processed on machine Pi in the heuristic schedule, if any, such that Jv(k) ≺LP Jv(k−1) .
LP < γ −1 C LP
Thus, for all k = 2, . . . , q, we have Cv(k)
v(k−1) and, by induction,
LP
Cv(k)
< γ −k CjLP .
(16)
H denote the completion time of (the last operation of) job J on machine P in the
Let Ci,j
j
i
heuristic schedule. Note that, for 0 ≤ k ≤ q − 1, job Jv(k) becomes available for processing
H
H
on machine Pi at date max{Ci,v(k+1)
, rv(k) } and remains available until its start date Ci,v(k)
−
pi,v(k) . Therefore, job Jv(k) must be in process on some other machine at any time during interH
H
val [max{Ci,v(k+1)
, rv(k) }, Ci,v(k)
] when machine Pi is idle. This implies that the total idle time Ik
H
H
on machine Pi during the time interval [Ci,v(k+1)
, Ci,v(k)
] cannot exceed the total length ℓv(k) of
job Jv(k) plus its release date rv(k) . Similarly, job Jv(q) is available at time rv(q) so the total idle
H
time Iq on machine Pi during the time interval [0, Ci,v(q)
] cannot exceed ℓv(q) + rv(q) . We obtain
I=
q
X
k=0
Ik ≤
q
X
k=0
ℓv(k) + rv(k) ≤
q
X
LP
Cv(k)
k=0
≤
q
X
γ −k CjLP <
k=0
γ
C LP
γ−1 j
where the second inequality follows from constraint (15) and the third one from (16). It follows
that
√ γ
CjH = B + I < 2γ +
CjLP = 3 + 2 2 CjLP
γ−1
and the proof is complete.
2
From this job-by-job bound, we obtain a 5.83-approximation for the open shop problem with
weighted sum of job completion times objective:
√ Theorem 5.2 There exists a polynomial time 3 + 2 2 -approximation algorithm for the minsum
P
open shop problem O|rj | wj Cj .
5.2
A 3-approximation algorithm for O|rj , pmtn|
P
w j Cj
In contrast with the nonpreemptive open shop algorithm above, we use a job-based greedy algorithm
to preemptively schedule the jobs in order of their LP completion times C LP . Namely, assume
w.l.o.g. that the jobs are indexed in nondecreasing order of their LP completion times, that is, that
C1LP ≤ C2LP ≤ . . . ≤ CnLP . We consider the jobs Jj one by one, in this order j = 1, 2, . . . , n, and all
operations of job Jj are scheduled as follows, without modifying the schedule of jobs J1 , . . . , Jj−1 .
Given the partial schedule of these jobs J1 , . . . , Jj−1 , job Jj is preemptively assigned to the earliest
available time slots after job release date rj , so long as its corresponding operations are not complete.
Ties between machines and/or operations available at the same time are broken arbitrarily. When
all work for job Jj has been scheduled, defining its completion time CjH , we turn to job Jj+1 . The
schedule is complete when the last job Jn is scheduled.
We obtain the following job-by-job bound:
12
Lemma 5.3 Let C LP be an optimal solution to (13)–(15). Then the algorithm described in this
section defines a feasible preemptive schedule with job completion times CjH satisfying, for every
job Jj ,
CjH ≤ 3 CjLP .
Proof. As in the proof of the Lemma 5.1, let Pi denote the last machine on which Jj is processed
and let CjH = B + I where B ≥ 0 is the amount of time on machine Pi in interval [0, CjH ] when
jobs J1 , . . . , Jj are proccesed, and I is the total length of remaining time slots in this interval, i.e.
B is the total busy time in interval [0, CjH ] and I is the idle time in this interval just after the job
P
Jj was scheduled. Because of the job order, B ≤ {pik : CkLP ≤ CjLP } and, by constraints (14)
and Schulz’s Lemma 3.2 with θ = CjLP , we obtain B ≤ 2CjLP .
If job Jj was not scheduled into some idle time slots on machine Pi during the time interval
[rj , CjH ] then it must be in process on some other machine at the same time. Therefore, I ≤ rj + lj
and lemma follows.
2
From this job-by-job bound, we obtain a 3-approximation for the preemptive open shop problem
with a weighted sum of job completion times objective:
Theorem 5.4 There exists a polynomial time 3-approximation algorithm for the preemptive open
P
shop problem O|rj , pmtn| wj Cj .
6
Jobs shops with very long jobs
The job shop approximation results in Section 4 may be worse than O(m) if the maximum number
µ of operations per job is very large, for example if µ = 2m . We say that a job shop instance has
very long jobs if m = o((log(mµ)/ log log(mµ))2 )). In this Section, we consider job shop problems
P
J|job prec. delays djk | wj Cj with job precedence delays and a weighted sum of job completion
time objective, for which we derive a very simple O(m) approximation algorithm. Note that this
result is not directly comparable to our earlier results due to the more general setting of precedence
delays. It improves upon our earlier results, when they apply, for the case of very long jobs.
P
In the job shop problem J|job prec. delays djk | wj Cj each job consists, as before, of operations,
each with a specified stage, and (ordinary) precedence constraints between operations of a same
job. In addition we have a set A of precedence constraints between jobs. We associate with each
precedence-constrained job pair (j, k) ∈ A a nonnegative precedence delay djk , with the following
meaning: in every feasible schedule, job k cannot start until djk time units after job j is completed:
Sk ≥ Cj + djk , where Sℓ and Cℓ denote the start time and completion time of job Jℓ , respectively.
Special cases include ordinary precedence constraints between jobs (djk = 0), and job release dates
rj ≥ 0 (which may be modeled by adding a dummy job 0 with zero processing time, and precedence
delays d0j = rj for all other jobs). Precedence delays were considered for one-machine “pipeline”
scheduling problems and for parallel machine scheduling, see [19] and [23] for discussion and further
references. We consider both nonpreemptive and preemptive schedules; for the latter, we restrict
attention to schedules with a finite number of preemptions.
To every instance of this precedence-delay job shop problem, we associate an instance of a
P
single machine preemptive problem 1|s1 = m, pmtn, prec. delays djk | wj Cj with the same set of
jobs J1 , . . . , Jn and with job processing times lj for each job Jj and the original job precedence
delays djk , and where the machine has speed s1 = m. The detailed composition of each job (that
is, its operations, their individual processing times, and any precedence constraints between them)
is ignored in this transformation.
13
Several special cases of the following two lemmata belong to scheduling folklore; their application
to the precedence-delay job shop problem is, to our knowledge, new.
Lemma 6.1 To every feasible (preemptive or nonpreemptive) schedule for the original precedencedelay job shop problem corresponds a feasible preemptive schedule on the speed-m machine with
completion times Cej ≤ Cj for all jobs Jj , where Cj is the completion time of job Jj in the given
job shop schedule.
Proof. Let Shj and Chj denote the start time and completion time, respectively, of operation
Ohj in the given job shop schedule. Partition the time interval [minhj Shj , maxhj Chj ] into intervals
[at−1 , at ] (t = 1, . . . , τ ) such that exactly the same operations are being processed during each
interval. Thus {at : t = 0, . . . , τ } is the set of all operation start and completion times, and
all times at which some operation is preempted. Partition each job Jj into τ pieces (j, t) with
lengths qjt = at − at−1 if one operation of Jj is being processed during interval [at−1 , at ], and zero
P
otherwise. Since each job Jj is performed in the given schedule, we have τt=1 qjt = ℓj . Since each
P
of the m machines Pi has unit capacity, we have j qjt ≤ m(at − at−1 ) for all t. Now, construct a
preemptive schedule on the speed-m machine by processing, for each t = 1, . . . , τ , all pieces (j, t)
with qjt = at − at−1 , in arbitrary order, during the interval [at−1 , at ]. In this preemptive singlemachine schedule, the speed-m machine processes no more than one job at any time. Furthermore,
each operation Ohj (and therefore each job Jj ) is started no earlier than the beginning at−1 = Shj
of the first interval [at−1 , at ] during which it is processed in the given job shop schedule, and is
completed no later than the end au = Chj of the last interval [at−1 , at ] during which it is processed
in the job shop schedule. This implies that the single-machine schedule satisfies all precedence
delays, and that its job completion times Ce satisfy Cej ≤ Cj for all jobs Jj .
2
A feasible job shop schedule is a no-wait schedule if every job Jj is being processed at every
instant between its start time Sj and its completion time Cj ; that is, if Cj = Sj + ℓj for all jobs Jj .
Lemma 6.2 Given a feasible preemptive schedule on the speed-m machine, we can construct in
polynomial time a feasible preemptive schedule for the original precedence-delay job shop problem with completion times CjH ≤ m Cbj , where Cbj is the completion time of job Jj in the given
single-machine schedule. If the latter is nonpreemptive, then the job shop schedule C H is also
nonpreemptive and is a no-wait schedule.
Proof.
Let Sbj and Cbj denote the start time and completion time, respectively, of job Jj in
the given single-machine schedule. Let [αjt , βjt ] (t = 1, . . . , τj ) denote the time intervals during
which job Jj is being processed in this given schedule. Thus, αj1 = Sbj , the start time of Jj ;
P
b
t (βjt − αjt ) = ℓj /m; and βjτj = Cj . For every job Jj , order all its operations in any sequence
consistent with the precedence constraints within Jj and preemptively assign them, in this order,
to the “expanded” time intervals [mαjt , mβjt ] for t = 1, . . . , τj . In the resulting schedule no more
than one operation altogether is being processed at any time; the start time of every job Jj is
SjH = m αj1 = m Sbj and its completion time CjH = m βjτj = m Cbj . Thus, for any precedence
constrained job pair (j, k) ∈ A we have SkH ≥ CjH + m djk ≥ CjH + djk . This shows that C H is
a feasible preemptive schedule for the job shop problem and CjH ≤ m Cbj for every job Jj . Note
also that if Cb is nonpreemptive then so is C H ; since there is no positive precedence delay between
operations of job Jj all these operations are processed consecutively in C H , so C H is a feasible
no-wait schedule.
2
These two lemmata then imply:
14
Theorem 6.3 Consider a class of instances of the (preemptive or nonpreemptive) minsum singleP
processor job shop problem J|job prec. delays djk | wj Cj .
(i) If there exist a polynomial time α-approximation algorithm for the preemptive single-machine
version of the problem for this class, then there exists a polynomial time α m-approximation algorithm for the preemptive minsum job shop problem for this class.
(ii) Assume that there exist a polynomial time approximation algorithm for the nonpreemptive
single-machine version of the problem for this class, producing a schedule with objective value no
larger than β times a lower bound on the minimum objective value of the preemptive single-machine
problem. Then there exists a polynomial time β m-approximation algorithm for the nonpreemptive
(and no-wait) minsum job shop problem for this class.
Remark: The algorithm in Lemma 6.2 is polynomial in the input size for the scheduling problem
and in the number of preemptions in the given preemptive single-machine schedule. The singlemachine algorithms invoked in Theorem 6.3, being polynomial in the (scheduling problem) input
size, lead to a polynomial number of preemptions. The resulting job shop algorithms then indeed
run in time polynomial in the (scheduling problem) input size, as stated.
Consequences of Theorem 6.3 are listed in Table 2, giving performance guarantees that match
or improve upon known results in [1], [13] and [30]. Extension of Theorem 6.3 to a more general
class of objective functions, similar to those in Theorem 4.1, is left to the interested reader.
7
Conclusion
In this paper we designed approximation algorithms for variety of shop scheduling problems with
minsum objective. Since our algorithms are very general we could expect better approximation
algorithms for specific problems. Indeed, we designed few algorithms with better performance
guarantees in Section 5 and [28]. We believe that there exists an approximation algorithm for
P
O|| wj Cj with performance guarantee better then 5.83. It is also possible that there exist
approximation schemes for shop scheduling problems on fixed number of machines, for example
P
P
Jm|op ≤ µ| wj Cj and Om|| wj Cj . It would be interesting to prove or disprove the existence
of such algorithms.
References
[1] J.O. Achugbue and F.Y. Chin, “Scheduling the open shop to minimize mean flow time.” SIAM Journal
on Computing 11 (1982) 709–720.
[2] N. Alon, Y. Azar, G.J. Woeginger, and T. Yadid, “Approximation schemes for scheduling on parallel
machines.” Journal of Scheduling 1 (1998) 55–66.
[3] E. Anderson, T. S. Jayram and T. Kimbrel, Tighter bounds on preemptive job shop scheduling with two
machines, to appear in Computing.
[4] D. Applegate and W. Cook, “A Computational Study of the Job–Shop Scheduling Problem.” ORSA
Journal on Computing 3 (1991) 149–156.
[5] K.R. Baker, Introduction to Sequencing and Scheduling. Wiley, 1974.
[6] S. Chakrabarti, C. Phillips, A. Schulz, D. Shmoys, C. Stein and J. Wein, Improved Scheduling Algorithms
for Minsum Criteria, In Proceedings of the 23rd International Colloquium on Automata, Languages, and
Programming (ICALP’96), 646–657.
[7] A.K. Chandra and C.K. Wong, “Worst-case analysis of a placement algorithm related to storage allocation.” SIAM Journal on Computing 4 (1975) 249–263.
15
[8] C. Chekuri, R. Motwani, B. Natarajan, and C. Stein, “Approximation Techniques for Average Completion
Time Scheduling.” Proceedings of the 8th Symposium on Discrete Algorithms (1997) 609–618.
[9] A. Czumaj and C. Scheideler, A New Algorithmic Approach to the General Lovasz Local Lemma with
Applications to Schedulung and Satisfiability Problems, Proc. 32 ACM Symposium on Theory of Computing (STOC) , 2000.
[10] U. Feige and C. Scheideler, “Improved bounds for acyclic job shop scheduling.” In: Proceedings of the
30th Annual ACM Symposium on Theory of Computing (STOC’98, 1998), ACM Press, New York, NY,
624-633.
[11] M. Goemans, M. Queyranne, A.S. Schulz, M. Skutella, and Y. Wang, Single Machine
Scheduling with Release Dates,submitted for publication, available at http://www.math.tuberlin.de/ skutella/publications.html.
[12] L. A. Goldberg, M. Paterson, A. Srinivasan, and E. Sweedyk, Better approximation guarantees for jobshop scheduling, to appear in SIAM Journal on Discrete Mathematics, Preliminary version in: Proceedings
of the 8th Symposium on Discrete Algorithms (1997) 599–608.
[13] T. Gonzalez and S. Sahni, “Flowshop and jobshop schedules: Complexity and approximation.” Operations Research 26 (1978) 36–52.
[14] M. Grötschel, L. Lovász, and A. Schrijver, Geometric Algorithms and Combinatorial Optimization.
Springer, 1988.
[15] L.A. Hall, D.B. Shmoys, and J. Wein, “Scheduling to Minimize Average Completion Time: Off–line
and On–line Algorithms”, Proceedings of the 7th Symposium on Discrete Algorithms (1996) 142–151.
[16] L.A. Hall, A.S. Schulz, D.B. Shmoys, and J. Wein, “Scheduling to Minimize Average Completion Time:
Off–Line and On–Line Approximation Algorithms”, Mathematics of Operations Research 22 (1997) 513–
544.
[17] H. Hoogeveen, P. Schuurman, and G. Woeginger, “Non-approximability results for scheduling problems
with minsum criteria.” In: R.E. Bixby, E.A. Boyd, and R.Z. Rios-Mercado, eds, Integer Programming and
Combinatorial Optimization (IPCO-VI Proceedings, 1998), Lecture Notes in Computer Science 1412,
Springer, 353–366.
[18] E.L. Lawler, J.K. Lenstra, A.H.G. Rinnooy Kan, and D.B. Shmoys, Sequencing and Scheduling: Algorithms and Complexity, In: S.C. Graves, A.H.G. Rinnooy Kan, and P.H. Zipkin, eds., Logistics of Production and Inventory, Handbooks in Operations Research and Management Science 4, North–Holland,
Amsterdam, The Netherlands (1993) 445–522.
[19] E.L. Lawler, J.K. Lenstra, C. Martel, B. Simons, and L. Stockmeyer, “Pipeline scheduling: A survey.”
Report RJ 5738 (57717), IBM Research Division, San Jose, California, 1987.
[20] E. L. Lawler, M. G. Luby, and V. V. Vazirani, “Scheduling open shops with parallel machines.” Operations Research Letters 1 (1982) 161–164.
[21] F.T. Leighton, B.M. Maggs, and S.B. Rao, “Packet routing and job-shop scheduling in O(congestion +
dilation) steps.” Combinatorica 14 (1994) 167–186.
[22] F.T. Leighton, B.M. Maggs, and A.W. Richa, “Fast algorithms for finding O(congestion + dilation)
packet routing schedules.” Combinatorica 19 (1999) 375–401.
[23] A. Munier, M. Queyranne, and A.S. Schulz, “Approximation bounds for a general class of precedence
constrained parallel machine scheduling problem.” In: R.E. Bixby, E.A. Boyd, and R.Z. Rios-Mercado,
eds, Integer Programming and Combinatorial Optimization (IPCO-VI Proceedings, 1998), Lecture Notes
in Computer Science 1412, Springer, 367-382.
[24] M. Queyranne, “Polyhedral Approaches to Scheduling Problems.” Seminar presented at RUTCOR,
Rutgers University, November 16, 1987.
16
[25] M. Queyranne, “Structure of a Simple Scheduling Polyhedron.” Mathematical Programming 58 (1993)
263–285.
[26] M. Queyranne and A.S. Schulz, “Polyhedral Approaches to Machine Scheduling.” Report 408/1994, Department of Mathematics, University of Technology, Berlin, Germany, November 1994; revised, October
1996.
[27] M. Queyranne and M. Sviridenko, New and Improved Algorithms for Minsum Shop Scheduling, Proceedings of SODA00, 871–878.
[28] M. Queyranne and M. Sviridenko, A (2 + ε)-approximation algorithm for generalized preemptive open
shop problem with minsum objective, to appear in IPCO 2001.
[29] A.S. Schulz, “Polytopes and Scheduling.” Ph.D. Thesis, Faculty of Mathematics, Technical University
of Berlin, Berlin, Germany, 1995.
[30] A.S. Schulz, “Scheduling to minimize total weigthed completion time: Performance guarantees of LPbased heuristics and lower bounds.” In: W.H. Cunningham, M. Queyranne and S.T. McCormick, eds,
Integer Programming and Combinatorial Optimization (IPCO-V Proceedings, 1996), Lecture Notes in
Computer Science 1084, Springer, 301–315.
[31] A.S. Schulz and M. Skutella, “Random-Based Scheduling: New Approximations and LP Lower Bounds.”
In: J. Rolim, ed., Randomization and Approximation Techniques in Computer Science (Random’97
Proceedings, 1997) Lecture Notes in Computer Science 1269, Springer, 119–133.
[32] A.S. Schulz and M. Skutella, “The Power of alpha-Points in Preemptive Single Machine Scheduling.”to
appear in Journal of Scheduling.
[33] P. Schuurman and G.J. Woeginger, “Approximation algorithms for the multiprocessor open shop
scheduling problem.” Operation Research Letters 24 (1999) 157–163.
[34] S. Sevastianov and G. Woeginger, Makespan minimization in preemptive two machine job shops, Computing 60 (1998) 73–79.
[35] D.B. Shmoys, “Using linear programming in the design and analysis of approximation algorithms: Two
illustrative examples.” In: K.Jansen and J.Rolim, eds, Approximation Algorithms for Combinatorial
Optimization (APPROX’98 Proceedings, 1998), Lecture Notes in Computer Science 1444, Springer,
15–32.
[36] D.B. Shmoys, C. Stein, and J. Wein, “Improved approximation algorithms for shop scheduling problems.” SIAM Journal of Computing 23 (1994), 617–632.
[37] M. Skutella, “Approximation and Randomization in Scheduling”, Ph.D. Thesis, Faculty of Mathematics,
Technical University of Berlin, Berlin, Germany, May 1998.
[38] W.E. Smith, “Various Optimizers for Single–Stage Production.” Naval Research and Logistics Quarterly
3 (1956) 59–66.
[39] L.A. Wolsey, “Mixed integer programming formulations for production planning and scheduling problems.” Invited talk at the 12th International Symposium on Mathematical Programming, MIT, Cambridge, N.J., August 1985.
17
Problem
J(P )|rhj , dagj |
P
Performance guarantee
wS CS
J(P )|rhj , dagj , pij = 1|
J(P )|rhj , acyclic-dagj |
P
P
O
wS CS
O(P )|rhj |
P
P
O(P )|rhj , pmtn|
P
P
wS CS
wS CS
wj Cj
O|rj , pmtn|
P
log mµ
log log mµ
wS CS
P
2
log mµ
log log mµ
wj Cj
[12]
O log m · log1+ε log m
wS CS
J2|rhj , pmtn|
O|rj |
O
wS CS
J(P )|rhj , acyclic-dagj , pij = 1|
Makespan algorithm used
[12]
[10, 9]
O (1)
[21, 22]
10.88
[33]
8.16(*)
[34, 3]
5.44
[20]
5.83
(**)
3
(**)
Table 1: New approximation results for minsum shop scheduling problems.
(*) An algorithm from Section 6 leads to an 8/3-approximation algorithm for the closely related problem
P
P
J2|rj , pmtn| wj Cj and to a 2-approximation for the problem J2|rj , pmtn| Cj (see also the Table 2).
(**) Does not use a makespan approximation algorithm; see Section 5 for details.
All performance guarantees in this table also apply to the preemptive versions of the problems.
18
Problem
Performance guarantee
Single-machine algorithm used
3m
[23]
2.72 m
[31]
2m
[31]
2m
[30, 16]
wj Cj
1.69 m
[11, 37]
Cj
1.59 m
[8]
4
3m
[32, 37]
m
[38]
m
[5]
J|job prec. delays, dagj |
P
J|rj , prec, dagj |
P
J|rj , dagj |
P
J|rj , dagj |
P
J|dagj |
P
P
wj Cj
J|rj , dagj , pmtn|
P
wj Cj
wj Cj
J|rj , dagj , pmtn|
wj Cj
wj Cj
J|rj , prec, dagj , pmtn|
J|prec, dagj |
P
P
Cj
wj Cj
Table 2: Approximation results for minsum job shop problems with very long jobs.
All nonpreemptive results in this table also apply to the no-wait versions of the problems.
19
Download