Professional Documents
Culture Documents
Information Processing Letters: Cheng He, Hao Lin
Information Processing Letters: Cheng He, Hao Lin
a r t i c l e i n f o a b s t r a c t
Article history: For the hierarchical scheduling problem on identical machines to minimize the maximum
Received 13 September 2015 T-time of all machines under the condition that the total completion time of all jobs
Received in revised form 23 February 2016 is minimum, where the T-time of a machine is defined as the total completion time of
Accepted 8 December 2016
jobs scheduled on the machine, it is NP-hard if the number of the machines is fixed, and
Available online 21 December 2016
strongly NP-hard otherwise. When the number of the machines is fixed, a forward dynamic
Communicated by Nathan Fisher
programming algorithm and a fully polynomial-time approximation scheme (FPTAS) have
Keywords: been presented in a literature. In the literature, it is showed that the worst-case ratio of
Hierarchical scheduling the classical algorithm SPT is at most 11
6
and at least 53 . In this paper, we give an improved
Identical machines 9 7
worst-case ratio, which is at most 5
and at least 4
, of the algorithm. Another algorithm,
Total flowtime
whose worst-case ratio is at most 67 and at least 35
33
, is provided for the two-machine case.
Worst-case ratio
Approximation algorithms On the other hand, we present a backward dynamic programming algorithm and an FPTAS
with the better time complexities.
© 2016 Elsevier B.V. All rights reserved.
http://dx.doi.org/10.1016/j.ipl.2016.12.001
0020-0190/© 2016 Elsevier B.V. All rights reserved.
C. He, H. Lin / Information Processing Letters 120 (2017) 6–10 7
(1) Problem P is NP-hard and Problem P is strongly NP- schedule of P ||( C j )max . Hence we confine our attention
hard. on Q-SPT schedules in the following.
(2) The worst-case ratio of algorithm SPT for problem Let J (i ) be the current job set of jobs assigned to M i
P is at most 116
and at least 53 . and T M i be the sum of processing
times of jobs assigned
(3) The worst-case ratio of algorithm RSPT for problem to M i at present, i.e., T M i = j ∈J ( i ) p j .
P is at most 32 and at least 11
9
.
(4) An O (m! · nm+1 · P s2m )-time forward dynamic pro- Algorithm SPT.
gramming algorithm and an FPTAS with O (m! · nm+1 ·
( (mn+
)n 2m
) ) time for problem P, where P s = n
j =1 p j .
Step 0: Let T M i := 0, J (i ) := ∅, i = 1, . . . , m and j := n.
In the present paper, we improved the worst-case ratio of Step 1: Let T M i 0 = min1≤i ≤m { T M i } (if a tie, then the min-
algorithm SPT for problem P such that its upper bound imum i 0 first and M i 0 is different from the last ma-
and lower bound are 95 and 74 , respectively. For m = 2, we chinethat is chosen to schedule job). Let J (i 0 ) :=
present a better algorithm called Algorithm DLPT and de- J (i 0 ) { J j } and T M i 0 := T M i 0 + p j and schedule job
duce that its worst-case ratio is at most 76 and at least J j at the end of current schedule on M i 0 .
35
. Moreover, we present an O (m! · nm+1 · P m Step 2: If j > 1, then let j := j − 1 and go back to Step 1.
33 s )-time back-
ward dynamic programming algorithm and an FPTAS with Otherwise stop.
2m+1
O ( m!·n m ) time for problem P.
The paper is organized as follows. An improved worst- Lemma 2.3. The schedule derived by Algorithm SPT is a Q-SPT
case ratio of Algorithm SPT is discussed in Section 2. In schedule.
Section 3, we present a backward dynamic programming
algorithm and an FPTAS for problem P. In Section 4, an- Proof. Obviously, the m jobs J n , J n−1 , . . . , J n−m+1 , i.e.,
other algorithm, called Algorithm DLPT, is provided for J km , J km−1 , . . . , J (k−1)m+1 (for n = km) in Rk are sched-
m = 2. We deduce that the worst-case ratio of Algo- uled first on M 1 , M 2 , . . . , M m , respectively, by Algorithm
rithm DLPT is at most 76 and at least 35 . SPT. Then by Algorithm SPT, we have
33
Definition 2.1. A schedule σ is called Quasi-SPT (Q-SPT for By Claim 1 and Algorithm SPT, the schedule derived by
short) if σ satisfies the following three conditions. Algorithm SPT is a Q-SPT schedule. 2
k
k
( C j (σ ))max = jp ( j −1)m+1 = jx j (1) Fig. 1.1. The schedule σ = (π1 , π2 , π3 , π4 ) derived by Algorithm SPT.
j =1 j =1
k−1
( C j (σ ∗ ))max ≥ x1 + ixi +1 , (2) backward dynamic programming algorithm and an FPTAS,
whose time complexities are less.
i =2
Let F j be j-th (1 ≤ j ≤ k + 1) state space, and the ini-
k−1
tial state space F k+1 = [0, 0, . . . , 0]. F j is the set of state
∗ k− j +1
( C j (σ ))max ≥ 3x2 + ixi +1 , (3) vectors [t 1 , t 2 , . . . , tm ] of a schedule for job set i =1 Ri ,
i =3 j = 1, . . . , k, where t i is the flowtime of the jobs on
k−1
M i (1 ≤ i ≤ m). F j −1 can be recursively derived from F j ,
( C j (σ ∗ ))max ≥ x2 + 5x3 + ixi +1 . (4) j = 2, . . . , k + 1. By Lemma 2.2, there are m! assignments
i =4
of the jobs of Rk− j +2 for one state vector from F j . There-
fore at most m! different state vectors of F j −1 are gen-
From (1)–(4), we have erated. Suppose that [t 1 , t 2 , . . . , tm ] ∈ F j and π is a per-
mutation of {1, 2, . . . , m} that represents an assignment of
( C j (σ ))max = (x1 + ki =−21 ixi +1 ) the jobs of Rk− j +2 to the machines. Then the derived
+ (2x2 + x3 + ki=4 xi ) state vector [t 1 , t 2 , . . . , tm
] in F
j −1 satisfies t i = t i + (k −
j + 2) p (k− j +1)m+π (i ) , i = 1, 2, . . . , m. The optimal objective
≤ ( C j (σ ∗ ))max + 35 (3x2 + ki =−31 ixi +1 )
value is min{max{t 1 , t 2 , . . . , tm }|[t 1 , t 2 , . . . , tm ] ∈ F 1 }.
+ 15 (x2 + 5x3 + ki =−41 ixi +1 ) We see that for any [t 1 , t 2 , . . . , tm ] ∈ F j , t i ≤ n P s for
any 1 ≤ i ≤ m. So | F j | ≤ (n P s )m . It needs O (m! · m) time
≤ ( C j (σ ∗ ))max + 35 ( C j (σ ∗ ))max
to calculate the generated m! state vectors of F j −1 from
+ 15 ( C j (σ ∗ ))max each state vector of F j . So the overall complexity of the
≤ 95 ( C j (σ ∗ ))max dynamic programming is O (m! · nm+1 · P m s ). Thus we can
design an FPTAS from thedynamic programming by the
The following example shows that 74 is a lower bound rounding technique for P | C j ≤ T ∗ |( C j )max .
of the worst-case ratio of Algorithm SPT. There are 13 Let I be an instance on job set J and machine set
jobs, with the processing times 75, 39, 39, 39, 39, 21, M. And let P 0 be the objective value by applying Algo-
21, 21, 21, 9, 9, 9, 9, respectively, to be processed on 4 rithm SPT to I and γ = 9n20 , where 0 < < 1. Let I
5 P
identical machines M 1 , M 2 , M 3 and M 4 without preemp- be the new instance with the same job set and machine
tion. Fig. 1.1 and Fig. 1.2 are the schedule that gener- set as those in I , but the processing time p j of job J j is
ated by AlgorithmSPT and the optimal schedule,
respec- p
tively. We have ( C j (σ ))max = max1≤i ≤4 C j (πi ) = p j = γj
γ , j = 1, 2, . . . , n. Therefore p j ≤ p j ≤ p j + γ .
j ∈ π i
252 and ( C j (σ ∗ ))max = max1≤i ≤4 j ∈π ∗ C j (πi ) = 144.
Let σ ∗ and σ ∗ be the optimal schedules obtained by
i
performing the dynamic programming for I and I , re-
( C (σ ))max
Therefore ( C j(σ ∗ )) = 74 , yields the desired result. 2 spectively. Let σ be the schedule obtained by replacing
j max
and all processing times in I are multiples of γ , t i has Lemma 4.2 implies that σ is an optimal partition
at most l choices, where schedule of P 2||C max in respect to job set J if and only
if σ is an optimal schedule of P 2||C max in respect to job
ti P0 9n2
l= ≤ = . set J
γ γ 5 • Algorithm LPT: First sort all jobs in the order of
Therefore, the total running time of obtaining schedule σ non-increasing processing times, then assigns the first un-
2m+1 processed job in the sequence to the machine, which can
is O ( m!·n m ). Hence we have
process it as early as possible, till all jobs is processed.
Theorem 3.1.
The abovedynamic programming can solve the Lemma 4.3. ([4]) The worst-case ratio of Algorithm LPT for the
problem P | C j ≤ T ∗ |( C j )max in O (m! · nm+1 · P m
s ) time.
problem P m||C max is at most 34 − 3m
1
. Further, the worst-case
7
2m+1 ratio of Algorithm LPT for the problem P 2||C max is at most .
Theorem 3.2. Thereexists an O ( m!·n m )-time FPTAS for prob- 6
∗
lem P | C j ≤ T |( C j )max .
Algorithm DLPT.
4. Algorithm DLPT for the two-machine case Step 0: Let I be an instance on job set J = { J 1 , J 2 , . . . ,
J n }, with p 1 ≥ p 2 ≥ · · · ≥ pn , and machine set M =
In this section, we provide a better algorithm, called Al-
{ M 1 , M 2 }. Construct a new instance I : the job set
gorithm DLPT, for the two-machine case (i.e., m = 2). We
J := J and machine set M := M, and p 2i −1 :=
show that the worst-case ratio of Algorithm DLPT is at
ip 2i −1 and p 2i := ip 2i (obviously, p 2i −1 ≥ p 2i ) for 1 ≤
most 76 and at least 35 . Let n = 2k.
33 i ≤ k.
Let
σ = (π1 , π2 ) be any feasible schedule of P 2| C j ≤ Step 1: Perform Algorithm Partition on instance I and get
∗
T |( C j )max and p ji be the processing time of job
instance I . Let σ = (π1 , π2 ) be the schedule by Per-
that is scheduled on j-th position on machine M i ( j =
forming Algorithm LPT on I and obtain schedule σ .
1, . . . , k; i = 1, 2). A schedule σ = (π1 , π2 ) is called de-
Step 2: Let σ be the schedule, obtained by replacing p j by
rived schedule of σ if σ is obtained by replacing the
processing time p ji by p ji := (k − j + 1) p ji in σ , j =
p j (1 ≤ j ≤ n) in σ , of instance I .
1, . . . , k; i = 1, 2. Then
By Lemma 4.2 and the definition of σ , the sched-
ule σ derived by Algorithm DLPT is a Q-SPT schedule
Lemma 4.1. C max (σ ) = ( C j (σ ))max .
I and σ is the derived
of P 2||( C j )max on instance
schedule of σ . Therefore ( C j (σ ))max = C max (σ ) by
Proof.
By the definition
of σ , we have C max (σ ) =
Lemma 4.1.
max{ 1≤ j ≤k p j1 , 1≤ j ≤k p j2 } = max{ 1≤ j ≤k (k − j + 1) p j1 ,
(k − j + 1) p j2 } = max{ j ∈π1 C j (π1 ), j ∈π2 C j (π2 )} =
Lemma 4.4. Let σ ∗ be an optimal schedule of P 2||C max on
1≤ j ≤k
( C j (σ ))max . This completes the proof. 2 instance I and σ be the schedule derived by Algorithm DLPT.
C (σ )
Then max ∗ ≤ 76 .
C max (σ
Lemma
4.1 implies that solving the problem P 2| C j ≤ )
9
5
, p 8 = 4
5
, p 9 = 1, respectively. Further, instance I con-
tains 5 jobs with the processing times p 1 = 3
2
, p 3 =
3
2
, 5p = 1, p
7 = 1, p
9 = 1, respectively. The jobs of each in-
stance are processed on 2 identical machines M 1 and M 2 .
Fig. 2.1. The schedule σ derived by Algorithm DLPT.
Figs. 2.1–2.4
show the running process of Algorithm DLPT.
We have ( C j (σ ))max = 8.75 and ( C j (σ ∗ ))max = 8.25.
( C (σ ))max 35
Therefore ( C j(σ ∗ )) = 33
, yields the desired result. 2
j max
[1] E. Angel, E. Bampis, F. Pascual, How good are SPT schedules for fair
optimality criteria, Ann. Oper. Res. 159 (2008) 53–64.
[2] P. Brucker, Scheduling Algorithms, Springer, New York, 2007.
[3] B.T. Eck, M. Pinedo, On the minimization of the makespan subject to
flowtime optimality, Oper. Res. 41 (1993) 797–801.
Fig. 2.3. The schedule σ derived by Algorithm DLPT. [4] R.L. Graham, Bounds on multiprocessing timing anomalies, SIAM J.
Appl. Math. 17 (1969) 416–429.
[5] R.L. Graham, E.L. Lawler, J.K. Lenstra, A.H.G. Rinnooy Kan, Optimiza-
tion and approximation in deterministic sequencing and scheduling: a
survey, Ann. Discrete Math. 5 (1979) 287–326.
[6] L. Wan, Z.H. Ding, Q.Q. Chen, Z.Y. Tan, Scheduling to minimize the
maximum total completion time per machine, Eur. J. Oper. Res. 242
(2015) 45–50.
Fig. 2.4. The optimal schedule σ ∗. [7] L. Wan, R. Ma, J.J. Yuan, Primary–secondary bicriteria scheduling on
identical machines to minimize the total completion time of all jobs
47 9 9 and the maximum T-time of all machines, Theor. Comput. Sci. 518
60
, p 6 = 20 , p 7 = 20 , p 8 = 15 , p 9 = 15 , respectively. So in-
(2014) 117–123.
stance I contains 9 jobs with the processing times
p 1 = 91
30
, p 2 = 2315
, p 3 = 4615
, p 4 = 47
30
, p 5 = 47
20
, p 6 = 27
20
, p 7 =