A Novel Way to Analyze Competitive
Performance of Online Algorithms
Jiping Tao
∗Zhijun Chao
Yugeng Xi
Abstract—A competitive analysis method for on-line algorithms is developed based on the idea of in-stance transformation. The method is applied on a single machine online scheduling problem where an assumption is made that the longest processing time among the jobs in any instance is not longer than a constant, say γ, times the shortest processing time. An online algorithm is designed and its competitive ratio is proven to be 1 + γ−1
1+√1+γ(γ−1) by the proposed analysis method.
Keywords: online algorithm, competitive analysis, sin-gle machine scheduling, total completion time
1
Introduction
Many scheduling problems are intrinsically online in that they require immediate decisions to be made in real time. Ready-made examples include CPU scheduling in the multi-processor operating system and routing in commu-nications networks. The corresponding algorithms solv-ing these online problems have to be online. In contrast to the offline version, an online algorithm must produce a sequence of decisions based on past events without any information about the future. The lack of knowledge of the future does generally not guarantee the optimality of the obtained schedule. Thus a natural issue is how to evaluate different online algorithms that solve the prob-lem.
A widely used approach to evaluate online algorithms is competitive analysis, where the quality of an online algo-rithm on each input instance is measured by comparing its performance with that of the optimal offline algorithm. An online algorithm is calledρ-competitive if, for any in-stance, the objective function value of the schedule ob-tained from this algorithm is no worse than ρtimes the objective value of the optimal offline schedule [2]. Thus a
ρ-competitive online algorithm guarantees that schedules by the algorithm are in some way not too far from the optimal. In this sense, we hope thatρis as small as pos-sible. For a given online algorithm, its competitive ratio is defined as the infimum ofρsuch that the algorithm is
∗This work is supported by the National Science Foundation of
China (No.60504026) and Specialized Research Fund for the Doc-toral Program of Higher Education (No.20070248004). Department of Automation, Shanghai Jiao Tong University, 800 Dong Chuan Road, Shanghai, China. Email: [email protected]
ρ-competitive.
Competitive analysis of online algorithms is never a triv-ial routine. The difficulty lies in two aspects. The first one is that the set of all instance for a given problem is not a very structured set. The number of jobs, released dates, processing time can be extremely arbitrary. The difficulty is how to explore the arbitrariness and locate the worst case instance. Another difficulty is that no real-izable optimal offline algorithm is available in most cases due to the NP-hard characteristic, a reasonable lower bound on the optimal schedule has to be constructed. For these twofold aspects of difficulty, most of the com-petitive analysis methods are typically constructive and problem dependent.
In this work, we focus on the first difficulty and develop a straightforward analysis method based on instance trans-formation. We use the widely used online model which as-sumes that jobs arrive at the machine over time, and any job’s information is not revealed until it is released. For an instanceIof the considered problem, DenoteALG(I) as the objective value of the schedule by an online algo-rithm, and L(I) as a lower bound on the optimal objec-tive value. Our method is to modifyIby an adjustmentδ
on the instance data, and to choose an appropriateδ ac-cording to the change tendency of bothALG(I) andL(I) with respected toδ, such that not only does the modified instance show a more special structure compared with before the modification, but also the ratio ofALG(I) to
L(I) doesn’t reduce.
We apply the proposed method to analysis online algo-rithms for the single machine scheduling problem with the objective of minimizing total completion time. This prob-lem is denoted by 1|rj|
P
Cj in the notation of Lawler et al.[7]. Numerous results have been obtained for the problem [3, 5, 6, 8, 9]. Hoogeveen and Vestjens [5] prove any online algorithm has a competitive ratio of at least 2 for the problem. They construct an online algorithm called by delayed SPT rule (D-SPT) which has exactly an competitive ratio of 2. The D-SPT algorithm delays the release date of each job j until time max{rj, pj}, then implements the shortest processing time (SPT) rule on the modified instance.
first employ it to verify the competitive ratio of D-SPT algorithm. Then we generalize the problem by assum-ing that the ratio of the longest processassum-ing time among the jobs in any instance to the shortest is not greater than a constant, say γ. We notate the general prob-lem by 1|rj,ppmaxmin ≤γ|
P
Ci and call it a single machine scheduling problem with bounded processing time. For this problem, we construct a deterministic online algo-rithm and also apply our proposed analysis method to prove that it has a competitive ratio of 1 + γ−1
1+√1+γ(γ−1).
The paper is organized as follows. The competitive analy-sis method is presented by verifying the competitive ratio of D-SPT algorithm in Section 2. The same method is then applied on an online algorithm for a generalized sin-gle machine problem in Section 3. Concluding remarks are given in Section 4.
2
Competitive Ratio of D-SPT
Algo-rithm
In order to present our analysis method more clearly, we first use it to verify the competitive ratio of D-SPT algo-rithm which was proposed and proven to be 2-competitive by Hoogeveen [5].
First we introduce an important lemma without proof since it can be derived from basic mathematics. The lemma will be repeatedly used in the competitive analy-sis.
Lemma 1. Let f(x) and g(x) be two positive func-tions defined in the interval [u, v], moreoverf(x)is con-vex and g(x) is concave. Then f(x)/g(x) reaches its maximum at one endpoint of the interval, i.e.,fg((xx)) ≤
max n
f(u)
g(u),
f(v)
g(v)
o
∀x∈[u, v].
Next we will develop an upper bound on the competitive ratio of D-SPT Algorithm. Throughout the analysis the performance ratio is calculated with respected to the op-timal preemptive schedule since its objective value is a lower bound of the optimal non-preemptive schedule and can be easily obtained by the shortest remain process-ing time(SRPT) rule [1]. For any instanceI, denote the schedule obtained by D-SPT byσ(I) and the optimal pre-emptive schedule byφ(I), and denote the objective values of these two schedules byALG(I) andL(I), respectively. In order to develop an upper bound, we begin with an arbitrary instance and modify the instance step by step, such that the modified instance has a simple structure and its performance ratio can be directly calculated or analyzed. Similar to the analysis in [5], we only need focus on such instances for which the schedules by D-SPT are composed of a single block. Denote any one of these instances byI1. Denote the release time of the first
released job byr0. Denote the start time of the block by
S. We further partition jobs into subblocks, such that the jobs within each subblock are ordered according to the SPT rule, and that the last job of a subblock is longer than the first job of the succeeding subblock if it exists [5].
We can keep the processing order unchanged and reduce the release dates of jobs released after S, such that each of these jobs is released either atS or at the staring time of the last job in a subblock plus an infinitely small pos-itive value ε. The adjustment doesn’t decrease the per-formance ratio since it keeps ALG(I1) unchanged and
doesn’t increase L(I1). Likewise, for these jobs released
before S, we can reduce their release dates to r0 since
they don’t start processed before the time S according to D-SPT rule. For some job released at S, say Ji , if
pi≥S, we can also reduce its release time tor0.
There-fore, without loss of generality, all the jobs in I1 can be
classified into three sets in terms of their release dates, denoted byQS↑,QS andQS↓ respectively, i.e.
QS↑ = {Ji|ri=r0 pi≥S}
QS = {Ji|ri=S pi< S}
QS↓ = {Ji|ri> S}
Denote these subblocks inσ(I1) byB1, B2,· · ·, Bm.
De-note the last job of the jth subblockBj byJBj, its pro-cessing time bypBj, and its starting time inσ(I1) bySBj. Then if j < m, the jth release date after S is SBj +ε. Denote the set of jobs released atSBj+εbyQ
j
S↓. Figure1 illustrates the structure ofσ(I1).
Figure 1: The schedule by D-SPT forI1
Next we will develop two lemmas to show that the in-stance I1 can be modified step by step such that in the
new instance,QS andQS↓ are both empty.
Lemma 2. A new instance, denoted by I2, can be con-structed by modifying I1, such that QS↓ in I2 is empty, moreover
ALG(I1)
L(I1)
≤max ½
ALG(I2)
L(I2)
,2 ¾
(1)
Proof. Consider the last release date, denote it byrLfor the sake of convenience. Suppose the job being processed atrL in σ(I1) isJk. AfterJk is finished inσ(I1), all the
there is no jobs released hereafter. Likewise, jobs are processed continuously according to SRPT rule from the timerL in φ(I1). DenoteQLS↓ as the set of jobs released atrL. Divide it into three sets,
QL0
S↓ = {Ji|Ji ∈QLS↓,0< pi< pk} (2)
QLS↓00 = {Ji|Ji ∈QLS↓, pi ≥pk} (3)
QL000
S↓ = {Ji|Ji ∈QLS↓, pi = 0} (4) The following adjustment procedure removes all the jobs in QL0
S↓ into QL
00
S↓ orQL
000
S↓.
Increase the processing time of all the jobs in QL0
S↓ byδ, which is a parameter to be chosen hereafter. Let
δ = −min{pi|Ji∈QL
0
S↓} (5)
¯
δ = pk−max{pi|Ji∈QL
0
S↓} (6)
Denote the intermediate instance after this adjustment byI0
1.
Jobs are continuously processed inσ(I0
1) in the same
or-der as in σ(I1) for any δ ∈ [δ,¯δ]. Hence ALG(I10) is a
linear function with respected toδ. Consider howφ(I0
1)
changes with respected toδ. If jobs keeps the same pro-cessing order as in φ(I1), the objective value of the
ob-tained preemptive schedule is also a linear function w.r.t
δ. Since the optimal preemptive schedule φ(I0
1) is the
one with the minimal objective value among all the feasi-ble schedules, we can figure out thatL(I0
1) is a piecewise
linear function with respected to δ, moreover its slope doesn’t increase withδincreasing, i.e.,L(I0
1) is a concave
function with respected toδ. According to Lemma1, we can obtain an instance with a worse performance ratio by choosingδas eitherδor ¯δ. Thus at least one job belong-ing toQL0
S↓ whose processing time is adjusted to 0 orpk according to (5) and (6).
Update QL0
S↓, QL
00
S↓ and QL
000
S↓ according to (2)(3)(4). We can repeat the above adjustment procedure. After finite steps, all the jobs inQL0
S↓ can removed intoQL
00
S↓ or QL
000
S↓ sinceQL0
S↓is finite.
For all the jobs inQL000
S↓ , they are processed continuously from rL in φ(I1) and processed immediately afterJk is finished in σ(I1). Suppose that there areq jobs inQL
000
S↓ . We can delete these q jobs and get an intermediate in-stanceI0
1which satisfies
ALG(I1)
L(I1) =
ALG(I0
1) +q(rL+pk)
L(I0
1) +qrL
≤ max ½
ALG(I0
1)
L(I0
1)
,2 ¾
(7)
where the last relation comes frompk ≤rL. Furthermore the release dates of jobs in QL00
S↓ can be reduced to the release date ofJk since they would not be selected before
Jk is finished. Thus QLS↓ becomes empty. Therefore, we can begin from the new last release date again and repeatedly execute the above adjustment procedure for jobs in QS↓. After finite loops, these jobs either have processing time 0 and are deleted, or are removed into
QSandQS↑. Moreover the relation (1) is always satisfied.
Remark 3. In the above proof, if there appears idle time between the execution of jobs in σ(I0
1)after some adjust-ment due to the waiting strategy of D-SPT, we can obtain an smaller instance with a worse performance ratio. So for the sake of simplicity, we make an implicit assump-tion that jobs are always processed continuously inσ(I0
1) during the adjustment.
Lemma 4. A new instance, denoted by I3, can be con-structed by modifying I2, such that QS in I3 is empty, moreover
ALG(I2)
L(I2) ≤
ALG(I3)
L(I3) (8)
The proof is almost the same as that for Lemma 2 except that (2)(3)(4) are replaced by the following equations
Q0S = {Ji|Ji∈QS,0< pi< S}
Q00
S = {Ji|Ji∈QS, pi≥S}
Q000S = {Ji|Ji∈QS, pi= 0} and (5)(6) are replaced by
δ = −min{pi|Ji∈Q0S} ¯
δ = S−max{pi|Ji∈Q0S}
Another exception is that the upper bound becomes as follows when deleting jobs with the processing time of 0 in QS.
ALG(I2)
L(I2) =
ALG(I0
2) +qS
L(L0
2) +qS
≤ ALG(I
0
2)
L(I0
2)
After the same adjustment in Lemma2, Q0
S becomes empty, jobs in Q00
S can be removed into QS↑, and jobs in Q000
S can be deleted. The detailed proof can be easily finished by readers.
QS and QS↓ in I3 are both empty. We can figure out
that σ(I3) begins continuously processing all the jobs in
QS↑ from the time S according to SPT rule, and φ(I3)
processes jobs from the time r0 in the same order as in
σ(I3). Thus each job starts latter inσ(I3) byS than in
φ(I3). For the jobJi, denote its completion time inσ(I3)
andφ(I3) byCi andCi0. We have
ALG(I3)
L(I3) =
P
Ji∈QS↑
Ci P
Ji∈QS↑
C0 i
≤ max Ji∈QS↑
½
C0 i+S
C0 i
¾
≤ min Ji∈QS↑
½ 1 + S
pi ¾
where the last relation comes from (1). Combining Lemma 2, 4 with (9), we can immediately obtain the following lemma.
Lemma 5. The D-SPT online algorithm in [5] is 2 -competitive for 1|rj|
P
Cj.
3
The
α
D-SPT online algorithm and its
competitive analysis
In this section, we generalize the problem 1|rj| P
Cj by assuming that the ratio of the longest processing time among the jobs in any instance to the shortest is not greater than a constant, say γ. We denote the modi-fied problem by 1|rj,ppmaxmin ≤ γ|
P
Ci. Kaminsky and Simchi-Levi [6] make the same assumption and prove that the shortest processing time among available jobs algo-rithm(SPTA) is asymptotically optimal. This assump-tion is also adopted by He and D´osa [4] for parallel ma-chine scheduling problems. For the modified problem, we will construct an online algorithm and employ the same method as in Section 2 to analysis its competitive perfor-mance.
The key point to develop a good online algorithm for the problem considered here is to determine whether to insert appropriate waiting time or to immediately sched-ule a job when the machine is idle and some jobs are available. D-SPT algorithm [5] makes this decision by comparing the processing time of jobs with the current time, which guarantees each job starts processed at the time no earlier than its processing time. The resulted ad-ditional waiting time for some jobs is necessary in order to avoid the performance ratio becoming too bad when there are jobs with extremely short processing time ar-riving immediately after starting to process a job. Under our assumption that the longest processing time among the jobs in any instance is not longer than γ times the shortest one, intuitively, less waiting time is needed in order to avoid the performance deterioration in the case mentioned above since processing time can only jump up and down over a limited proportional range. A ready-made example is that no-wait SPT strategy is optimal when all the jobs have the same processing time.
In view of the above consideration, we directly extend D-SPT algorithm [5] by introducing a well-designed pa-rameter and construct an online algorithm, called by α -delayed SPT algorithm (αD-SPT). Denote the current decision time by t. αD-SPT algorithm can be described as follows. Whenever the machine is idle and some jobs are available, choose a job with the shortest processing time in all the arrived and unscheduled jobs, say Ji , if
pi ≤αt, schedule Ji; otherwise, wait until the above in-equality is satisfied or a new job arrives, where αis an algorithm parameter to be designed.
We use the same analysis method based on instance
re-duction as in Section 2 to develop an upper bound on the competitive ratio ofαD-SPT Algorithm. Throughout the analysis, we employ the same notations as in Section 2 in condition that no confusion is induced. Similarly, we begin with an arbitrary instance I1 for which the
con-structed schedule by αD-SPT is composed of a block. Denote the shortest and longest processing time among jobs inI1bypminandpmax. We modify jobs inQS↓and
QS in the inverse order of release data. Similar results as Lemma 2 and 4 can be reduced.
Lemma 6. A new instance, denoted by I2, can be con-structed by modifying I1, such that QS↓ in I2 either is empty, or only includes jobs with the shortest processing timepmin, moreover
ALG(I1)
L(I1)
≤max ½
ALG(I2)
L(I2)
,1 + 1
α
¾
(10)
Lemma 7. A new instance, denoted by I3, can be con-structed by modifying I2, such that QS in I3 either is empty, or only includes jobs with processing time pmin,
moreover
ALG(I2)
L(I2) ≤max
½
ALG(I3)
L(I3) ,1 +
1
α
¾
(11)
The proofs are similar to the one for Lemma 2. The essential idea is still to transform the instance along the direction of its performance ratio increasing. Intuitively, for the αD-SPT online algorithm, the worst case should occur in two possible cases. One is that there are several extremely small jobs released immediately afterαD-SPT chooses to process a job. Another case is that there is no any jobs released when αD-SPT keeps the machine idle for a period of time when some jobs are available. The intuition is just validated by the above two lemmas, where I3 is corresponding to the first case and 1 + α1 is
the upper bound in the later case. The detailed proofs are omitted due to the space limitation.
Figure 2: The schedule byαD-SPT and the optimal pre-emptive schedule forI3
QS andQS↓ in I3 either are empty, or only include jobs
begins with all the jobs in QS at the time S, then alter-nately processes jobs in QS↑ and jobs in QS↓. In φ(I3)
jobs are processed continuously from the time r0,
more-over these jobs inQS↑keep the same processing order as in σ(I3) except that some jobs are preempted by some
jobs inQS or QS↓. Both σ(I3) andφ(I3) are illustrated
in Figure2. We can analyze the performance ratio of I3
by directly comparing jobs’ completion time inσ(I3) and
φ(I3). Lemma 8.
ALG(I3)
L(I3)
≤max ½
1 + 1
α,1 + γ−1 γ α+ 2
¾
Proof. For the jobJi, denote its completion time inσ(I3)
and φ(I3) by Ci and Ci0 respectively. Denote the set of all the jobs in I3 byQ, and denote one of its subsets by
Q0. We have
ALG(I3)
L(I3) ≤Qmax0⊂Q
( P
Ji∈Q0Ci P
Ji∈Q0Ci0
)
(12)
Next we divideQinto different subsets and compare their completion time.
Denote the first processed job inφ(I3) by J1, which
ob-viously belongs toQS↑. Suppose there areq1jobs inQS. IfJ1 is not preempted inφ(I3) by theseq1 jobs, we have
C1=C10 +S+q1pmin
ConsiderJ1and theseq1jobs together as a subsetQ0, we
can obtain
C1+
P
Ji∈QSCi
C0
1+
P Ji∈QSC
0 i
= C
0
1+S+q1pmin+q1S+q1(q21+1)pmin
C0
1+q1p1+q1(q21+1)pmin
≤ 1 + S+q1pmin+q1(S−p1)
p1+q1p1+q1(q21+1)pmin
≤ 1 + S+q1S
p1+q1p1
≤ 1 + 1
α (13)
where the last relation comes from p1 ≥αS sinceJ1 is
not processed before S inσ(I3).
IfJ1is preempted by theq1jobs and otherk1jobs which
belong toQ1
S↓, then we have
C1 = C10+S−k1pmin
Ci = Ci0 ∀Ji∈QS
Ci = Ci0+p1 ∀Ji∈Q1S↓
Likewise, consider J1, QS and Q1S↓ together as a subset
Q0, we can obtain
C1+
P
Ji∈QSCi+ P
Ji∈Q1
S↓Ci
C0
1+
P
Ji∈QSC 0 i+
P Ji∈Q1
S↓C
0 i
=
C0
1+S−k1pmin+ P
Ji∈QS
C0 i+
P
Ji∈Q1
S↓
(C0 i+p1)
C0
1+
P
Ji∈QS
C0 i+
P
Ji∈Q1
S↓
C0 i
≤ 1 +S−k
1p
min+k1p1
C0
1+
P
Ji∈Q1
S↓
C0 i
≤ 1 + S+k1(p1−pmin)
p1+ (q1+k1)pmim+k1SB1+
k1(k1+1)
2 pmin
≤ max ½
1 + S
p1,1 +
p1−pmin
SB1+ 2pmin
¾
≤ max ½
1 + 1
α,1 + γ−1 γ α+ 2
¾
(14)
where the last relation comes fromp1≥αS, p1≤γpmin andp1≤αSB1 due toαD-SPT rule.
For the remained jobs exceptJ1 in QS↑, we divide them into two subsets denoted by Q0
S↑ and Q00S↑ such that, in
φ(I3), no jobs inQ0S↑ is preempted and each job in Q00S↑ is preempted. We can figure out that Q00
S↑ is composed of the last job of some subblocks inσ(I3). Denote by A
the index set such that jobs inQjS↓ preempt the jobJBj in φ(I3) forj∈A. ThenQS00↑={JBj|j ∈A}. Denote by
Q0
S↓ the set of all the remained jobs inQS↓ which don’t preempt any job inφ(I3). Denote the number of jobs in
QjS↓(1≤j < m) bykj. We have
Ci = Ci0+S ∀Ji∈Q0S↑
CBj = C 0
Bj+S−k jp
min JBj ∈Q 00
S↑ ∀j ∈A
Ci = Ci0+pBj ∀Ji∈Q j
S↓ ∀j∈A
Ci = Ci0+S ∀Ji∈Q0S↓ So we have for any jobJi inQ0S↑ orQ0S↓,
Ci
C0 i
=C
0 i+S
C0 i
≤1 + S
p1 ≤1 +
1
α (15)
For j ∈A, consider the job JBj in Q 00
S↑ and all the jobs in QjS↓ together as a subsetQ0, we can obtain similar to the transformation in (14)
CBj + P
Ji∈Qj S↓Ci
C0 Bj +
P Ji∈Qj
S↓C
0 i
≤ max ½
1 + S
p1
,1 + pBj −pmin
SBj + 2pmin ¾
≤ max ½
1 + 1
α,1 + γ−1 γ α+ 2
¾
Each job inQis involved in one of the subsets above men-tioned and considered in one of (13)(14)(15)(16). Com-bining that with (12), we can immediately finish the proof.
Theorem 9. For the problem 1|rj,ppmaxmin ≤γ| P
Cj, the
αD-SPT online algorithm withα=1+
√
1+γ(γ−1)
γ−1 has the competitive ratio of1 + 1
α.
Proof. From Lemma 6,7 and 8, we can obtain the com-petitive ratioρofαD-SPT
ρ ≤ max I1
ALG(I1)
L(I1) ≤max
½ 1 + 1
α,1 + γ−1 γ α+ 2
¾
Let 1 + 1α= 1 + γγ−1
α+2, i.e.,α=
1+√1+γ(γ−1)
γ−1 , we have
ρ≤1 + 1
α (17)
The lower bound can be obtain by constructing the fol-lowing instance. Consider an instance with only one job released at the time 0 with processing time 1, αD-SPT schedules the job from the time 1
α, and the optimal ob-jective value is obviously 1, so we have
ρ≥1 + 1
α (18)
Remark 10. The result covers the D-SPT online algo-rithm since αD-SPT has the competitive ratio of2 when
γ tends to infinity. At the same time the algorithm de-generates into a no-wait SPT strategy when γis equal to
1, which is obviously the optimal algorithm for the corre-sponding problem 1|rj, pj=p|
P
Cj.
4
Concluding remarks
In this work, we develop a novel analysis technique to de-rive the competitive ratio of the online algorithm based on the idea of instance transformation. In order to de-rive an upper bound on the performance ratio among all the instances, the analysis method exploits the possible structure of the worst case instance with respect to the given online algorithm. It begins with an arbitrary in-stance, and transforms the instance along the direction of its performance ratio increasing, such that the mod-ified instance shows a more special structure of which we can take advantage to analyze its performance ratio. We present the method by verifying the competitive ratio of D-SPT algorithm proposed by Hoogeveen [5] for the single machine scheduling problem with the objective of minimizing total completion time. Then we generalize the problem by assuming that the ratio of the longest processing time to the shortest in any instance is not
greater than a constant γ. We design an online algo-rithm called byαD-SPT and apply our analysis method to derive its competitive ratio is 1 + 1
α whereαis equal to 1+
√
1+γ(γ−1)
γ−1 . Further work is needed to extend the
analysis method to other online problems.
References
[1] K.R. Baker. Introduction to Sequencing and Schedul-ing. John Wiley & Sons, 1974.
[2] A. Fiat and G.J. Woeginger. Online algorithms: the state of the art. Springer, 1998.
[3] L. A. Hall, A. S. Schulz, D. B. Shmoys, and J. Wein. Scheduling to minimize average completion time: Off-line and on-Off-line approximation algorithms. Mathe-matics of Operations Research, 22(3):513–544, 1997.
[4] Y. He and G. D´osa. Semi-online scheduling jobs with tightly-grouped processing times on three iden-tical machines. Discrete Applied Mathematics, 150(1-3):140–159, 2005.
[5] J. A. Hoogeveen and A. P. A. Vestjens. Optimal on-line algorithms for single-machine scheduling.Lecture Notes in Computer Science, 1084:404–414, 1996.
[6] P. Kaminsky and D. Simchi-Levi. Asymptotic analy-sis of an on-line algorithm for the single machine com-pletion time problem with release dates. Operations Research Letters, 29(3):141–148, 2001.
[7] E.L. Lawler, J.K. Lenstra, A.H.G.R. Kan, and D.B. Shmoys. Sequencing and scheduling: Algorithms and complexity. In S.C. Graves, A.H.G. Rinnooy Kan, and P.H. Zipkin, editors, Handbooks in Operations research and Management Science, volume 4, pages 445–522. North-Holland, 1993.
[8] X. Lu, RA Sitters, and L. Stougie. A class of on-line scheduling algorithms to minimize total comple-tion time. Operations Research Letters, 31(3):232– 236, 2003.
[9] C. Phillips, C. Stein, and J. Wein. Minimizing aver-age completion time in the presence of release dates.