Ordinal Semi On-Line Scheduling for Jobs with Arbitrary Release Times on Identical Parallel Machines

Abstract

In this paper, we investigate the problem of semi-on-line scheduling n jobs on m identical parallel machines under the assumption that the ordering of the jobs by processing time is known and the jobs have arbitrary release times. Our aim is to minimize the maximum completion time. An ordinal algorithm is investigated and its worst case ratio is analyzed.

Share and Cite:

Ji, S. , Li, R. and Zhou, Y. (2017) Ordinal Semi On-Line Scheduling for Jobs with Arbitrary Release Times on Identical Parallel Machines. Intelligent Information Management, 9, 245-254. doi: 10.4236/iim.2017.96014.

1. Introduction

The problem of minimizing the maximum completion time for scheduling n jobs on m identical parallel machines (which is denoted by P m / / C max ) have attracted the interests of many researchers since it was proposed by Graham in 1969 [1] . The problem is defined as follows: Given a job set L = { J 1 , J 2 , , J n } of n jobs and an identical parallel machine set { M 1 , M 2 , , M m } , where job J j has non-negative processing time p j , assign the jobs onto the machines so as to minimize the maximum completion of the m machines.

A scheduling problem is called off-line if we have complete information about the job data before constructing a schedule. In contrast, the scheduling problem is called online if the jobs appear one by one and it requires scheduling the arriving job irrevocably on a machine without knowledge of the future jobs. The processing time of next job becomes available only after the current job is scheduled. Graham [1] proposed the List Scheduling (LS) algorithm to minimize the maximum completion time for online scheduling n jobs on m identical parallel machines.

Li and Huang [2] generalized Graham’s classical on-line scheduling problem to m identical machines. They describe the requests of all jobs in terms of order. For an order of the job J j , the scheduler is informed of a 2-tuple ( r j , p j ) , where r j and p j represent the release time and the processing time of the job J j , respectively. The orders of request have no release time but appear online one by one at the very beginning time of the system. In this online situation, the jobs’ release times are assumed to be arbitrary. If all jobs’ release times are zero, then the problem in Li and Huang [2] becomes the same as the Graham’s classical on-line scheduling problem.

For the classical online problem on the identical parallel machine system, we know that no algorithm can be better than algorithm LS when the number of machines is less than 4. In many applications, partial information about jobs can be made available in advance. This motivates us to study semi-online scheduling problems when different types of partial information become available [3] . He and Zhang [4] , and He and Dosa [5] consider the system when the lengths of all jobs are known in [ 1 , r ] with r 1 . See Cheng et al. [6] ; Li and Huang [7] ; Seiden et al. [8] ; Li et al. [9] for more recent results on semi-online scheduling.

Liu et al. [10] firstly considered ordinal semi-online problem in which it is assumed that the values of the processing times p j are unknown, but that the order of the jobs by non-increasing processing time is known, i.e.,

p 1 p 2 p n . The problem can be denoted as P m / ordinal / C max . They proposed an algorithm with worst case performance ratio not greater than

1 + m 1 m + m 2 . Later Q 2 / ordinal / C max is considered by Tan and He [11] and

P 3 / ordinal / C max is considered by He and Tan [12] .

In this paper, we assume that we are given m identical parallel machines { M 1 , M 2 , , M m } and an ordinal job list L = { J 1 , J 2 , , J n } with arbitrary release times, i.e., each J j has a release time r j and a processing size of p j satisfying p 1 p 2 p n . Our aim is to minimize the maximum completion time. We denote this problem as P m / ( ordinal , r j ) / C max .

The rest of the paper is organized as follows. In Section 2, some definitions and the algorithm P are given. In Section 3, we analyze the algorithm P and show its the upper bound of the worst case ratio. In Section 4, we give some concluding remarks.

2. Some Definitions and the Algorithm P

In this section we will give some definitions and an algorithm P.

Definition 1. Let algorithm A be a heuristic algorithm of scheduling job list L . C max A ( L ) and C max O P T ( L ) denote the makespan of algorithm A and an optimal off-line algorithm, respectively. We define

R ( m , A ) = sup L C max A ( L ) C max O P T (L)

as the worst case performance ratio of algorithm A .

Definition 2. Suppose that J j is the current job with information ( r j , p j ) , i.e., release time r j and size of p j , to be scheduled on machine M i . We say that machine M i has an idle time interval for job J j , if there exists a time interval [ T 1 , T 2 ] satisfying the following two conditions:

1) Machine M i is idle in interval [ T 1 , T 2 ] and a job with release time T 2 has been assigned to machine M i to start at time T 2 .

2) T 2 max [ T 1 , r j ] p j .

It is obvious that if machine M i has an idle time interval for job J j then we can assign J j to machine M i in the idle interval.

The algorithm P:

Let L = { J 1 , J 2 , , J n } be a job list of problem P m / ( ordinal , r i ) / C max . We assign jobs of L one by one on machine M i ( i = 1 , 2 , , m ) according to the following rules:

If 1 i m 2 holds, we assign the following jobs on machine M i :

{ J i } { J 2 m + 1 i + k ( m + m 2 ) | k 0 } .

If 1 + m 2 i m holds, we assign the following jobs on machine M i :

{ J i } { J 2 m + 1 i + k ( m + m 2 ) | k 0 } { J 3 m + 1 i + k ( m + m 2 ) | k 0 } .

Assignment example for m = 5 :

M 1 : J 1 J 10 J 18 M 2 : J 2 J 9 J 17 M 3 : J 3 J 8 J 13 J 16 J 21 M 4 : J 4 J 7 J 12 J 15 J 20 M 5 : J 5 J 6 J 11 J 14 J 19

Note: The above assignment just means the order of the job’s assigning, not mean the order of job’s processing because of the release times of the jobs. For example on machine M 1 , if r 1 = 6 , p 1 = 8 , r 10 = 6 , p 10 = 6 , then J 10 begin to be processed at time zero and J 1 begin to be processed at 6 even though J 1 is assigned before J 10 because J 1 appears before J 10 .

The following symbols will be used in the analysis of this paper later on:

1) P 1 n = j = 1 n p j , P k n = j = k n p j .

2) U i : the total sum of the idle time on machine M i in the schedule P.

3) C i : The completion time of machine M i in the schedule P. It is equal to the total sum of the processing time of the jobs assigned on machine M i and the idle time of machine M i in the schedule P. It is easy to see that C max P ( L ) = max { C 1 , C 2 , , C m } holds.

1) [ h ] i : the index of the h-th job assigned on machine M i in the schedule P.

2) x : It represents the smallest integer not less than x.

3) x : It represents the largest integer not bigger than x.

3. Main Results

The following simple inequality will be referred to later on:

C max O P T ( L ) max { j = 1 n p j m , r j + p j , j = 1 , 2 , , n , U i + p i , i = 1 , 2 , , m }

Furthermore it is easy to get

C max O P T ( L ) U i , i = 1 , 2 , , m

Lemma 1: For any job list L = { J 1 , J 2 , , J n } from problem

P m / ( ordinal , r i ) / C max , suppose that h jobs are assigned on machine M i by

algorithm P. If h 2 and [ h ] i [ 1 ] i = [ h ] i i h 1 x hold, then we have

C i x P i + 1 n + U i + p i .

Proof: It is easy to see that h 2 , x h 1 [ h ] i i holds. Firstly we prove the

following statement by induction for h :

x P i + 1 [ h ] i p [ 2 ] i + + p [ h ] i + [ x ( [ h ] i [ 1 ] i ) ( h 1 ) ] p [ h ] i (1)

For h = 2 we have

x P i + 1 [ 2 ] i = x ( p [ 1 ] i + 1 + + p [ 2 ] i ) x [ ( [ 2 ] i [ 1 ] i ) p [ 2 ] i ] = p [ 2 ] i + [ x ( [ 2 ] i [ 1 ] i ) ( 2 1 ) ] p [ 2 ] i

That means the statement is true for h = 2. Now suppose (1) holds for h = k, i.e.,

x P i + 1 [ k ] i p [ 2 ] i + p [ 3 ] i + + p [ k ] i + [ x ( [ k ] i [ 1 ] i ) ( k 1 ) ] p [ k ] i .

Then for h = k + 1 we have

x P i + 1 [ k + 1 ] i p [ 2 ] i + p [ 3 ] i + + p [ k ] i + [ x ( [ k ] i [ 1 ] i ) ( k 1 ) ] p [ k ] i + x ( p [ k ] i + 1 + p [ k ] i + 2 + + p [ k + 1 ] i ) p [ 2 ] i + p [ 3 ] i + + p [ k ] i + [ x ( [ k ] i [ 1 ] i ) ( k 1 ) ] p [ k ] i + [ x ( [ k + 1 ] i [ k ] i ) ] p [ k + 1 ] i p [ 2 ] i + p [ 3 ] i + + p [ k ] i + [ x ( [ k ] i [ 1 ] i ) ( k 1 ) ] p [ k + 1 ] i

+ [ x ( [ k + 1 ] i [ k ] i ) ] p [ k + 1 ] i = p [ 2 ] i + p [ 3 ] i + + p [ k + 1 ] i + [ x ( [ k + 1 ] i [ 1 ] i ) ( k + 1 1 ) ] p [ k + 1 ] i

By (1) we have

x P i + 1 n + U i x P i + 1 [ h ] i + U i p [ 2 ] i + p [ 3 ] i + + p [ h ] i + [ x ( [ h ] i [ 1 ] i ) ( h 1 ) ] p [ k ] i + U i p [ 2 ] i + p [ 3 ] i + + p [ h ] i + U i = C i p i

where the last equality results from [ 1 ] i = i by the rules of algorithm P. The claim is proved.

Lemma 2: For any job list L = { J 1 , J 2 , , J n } from problem P m / ( ordinal , r i ) / C max , we have

C i { 2 p i + 1 n 3 ( m i + 1 ) + U i + p i 1 i m ; m is even 2 p i + 1 n 3 ( m i + 1 ) + 1 + U i + p i 1 i m 1 2 ; m is odd 4 p i + 1 n 3 m + 1 + U i + p i m + 1 2 i m ; m is odd

Proof: Case 1: m is even and 1 i m .

Case 1.1: 1 i m 2 and h = k + 2 .

By the rules of P we have

h 1 [ h ] i i = k + 2 1 2 m + 1 2 i + 3 k m 2 = 2 k + 2 4 m 4 i + 2 + 3 k m = 2 ( k + 1 ) 3 ( k + 1 ) ( m i + 1 ) + 3 k ( i 1 ) + m i 1 2 ( k + 1 ) 3 ( k + 1 ) ( m i + 1 ) = 2 3 ( m i + 1 )

Case 1.2: m 2 < i m and h = 2 k + 1 .

h 1 [ h ] i 1 = 2 k 2 m + 1 2 i + 3 k m 2 = 2 k 3 k ( m i + 1 ) + 3 k ( i 1 m 2 ) + 2 ( m i ) + 1 2 3 ( m i + 1 )

Case 1.3: m 2 < i m and h = 2 k + 2

h 1 [ h ] i 1 = 2 k + 1 3 m + 1 2 i + 3 k m 2 = 2 ( k + 1 2 ) 3 ( k + 1 2 ) ( m i + 1 ) + 3 k ( i 1 m 2 ) + 3 m i 1 2 2 3 ( m i + 1 )

Let x = 2 3 ( m i + 1 ) , by Lemma 1 when m is even and 1 i m we have

C i 2 P i + 1 n 3 ( m i + 1 ) + U i + p i

Case 2: m is odd. 1 i m 1 2 and h = k + 2 hold.

h 1 [ h ] i 1 = k + 2 1 2 m + 1 2 i + k ( 3 m + 1 ) 2 = 2 ( k + 1 ) 3 ( k + 1 ) ( m i + 1 ) + ( k + 1 ) + 3 k ( i 1 ) + m i 2 2 ( k + 1 ) 3 ( k + 1 ) ( m i + 1 ) + ( k + 1 ) + 3 k ( i 1 ) + i + 1 2 2 ( k + 1 ) 3 ( k + 1 ) ( m i + 1 ) + ( k + 1 ) 2 3 ( m i + 1 ) + 1

Let x = 2 3 ( m i + 1 ) + 1 , by Lemma 1, when m is odd and 1 i m 1 2 we have

C i 2 P i + 1 n 3 ( m i + 1 ) + 1 + U i + p i

Case 3: m is odd and m + 1 2 i m

Case 3.1: h = 2 k + 1

h 1 [ h ] i i = 2 k 2 m + 1 2 i + k ( 3 m + 1 ) 2 4 3 m + 1

Case 3.2: h = 2 k + 2

h 1 h i i = 2 k + 1 3 m + 1 2 i + k ( 3 m + 2 ) 2

= 4 ( k + 1 2 ) ( k + 1 2 ) ( 3 m + 1 ) + 3 2 + 9 m 2 4 i 4 3 m + 1

Let x = 4 3 m + 1 , when m is odd and m + 1 2 i m we have

C i 4 P i + 1 n 3 m + 1 + U i + p i

Hence the Lemma is proved.

Theorem 3 For any job list L = { J 1 , J 2 , , J n } from problem P m / ( ordinal , r i ) / C max we have:

R ( m , P ) 2 + m 1 m + m 2

Proof: Case 1: If m is even and 1 i m holds, by Lemma 2 we have

C i p i + 2 P i + 1 n 3 ( m i + 1 ) + U i = p i 2 P 1 i 3 ( m i + 1 ) + 2 P 1 n 3 ( m i + 1 ) + U i = 2 3 ( m i + 1 ) ( 3 ( m i + 1 ) 2 p i P 1 i ) + 2 P 1 n 3 ( m i + 1 ) + U i

3 m 5 i + 3 3 ( m i + 1 ) p i + 2 m 3 ( m i + 1 ) × P 1 n m + U i 8 m 8 i + 6 3 ( m i + 1 ) max { p i , P 1 n m , U i } 8 m 8 i + 6 3 ( m i + 1 ) C max O P T ( L ) 8 m 2 3 m C max O P T (L)

where the last inequality results from the fact that 8 m 8 x + 6 3 ( m x + 1 ) is a decreasing

function of x in interval x [ 1 , m ]

Case 2: m is odd and 1 i m 1 2

By Lemma 2 we have

C i p i + 2 P i + 1 n 3 ( m i + 1 ) + 1 + U i = p i 2 P 1 i 3 ( m i + 1 ) + 1 + 2 P 1 n 3 ( m i + 1 ) + 1 + U i

= 2 3 ( m i + 1 ) + 1 ( 3 ( m i + 1 ) + 1 2 p i P 1 i ) + 2 P 1 n 3 ( m i + 1 ) + 1 + U i 3 m 5 i + 4 3 ( m i + 1 ) + 1 p i + 2 m 3 ( m i + 1 ) + 1 × P 1 n m + U i 8 m 8 i + 8 3 ( m i + 1 ) + 1 max { p i , P 1 n m , U i } 8 m 8 i + 8 3 ( m i + 1 ) + 1 C max O P T ( L ) 8 m 3 m + 1 C max O P T (L)

where the last inequality results from the fact that 8 m 8 x + 6 3 ( m x + 1 ) + 1 is a decreasing function of x in interval x [ 1 , m ] .

Case 3: m is odd and m + 1 2 i m

By Lemma 2 we have

C i p i + 4 3 m + 1 P i + 1 n + U i = p i + 4 3 m + 1 ( P 1 n P 1 i ) + U i = 4 3 m + 1 [ ( 3 m + 1 ) p i 4 ( p 1 + p 2 + + p i ) ] + 4 3 m + 1 P 1 n + U i 4 3 m + 1 [ ( 3 m + 1 ) p i 4 i p i ] + 4 3 m + 1 P 1 n + U i

= 3 m 4 i + 1 3 m + 1 p i + 4 3 m + 1 P 1 n + U i 10 m 4 i + 2 3 m + 1 max { p i , P 1 n m , U i } 10 m 4 i + 2 3 m + 1 C max O P T ( L ) 8 m 3 m + 1 C max O P T (L)

By the above conclusions, when m is even we have C i 8 m 2 3 m C max O P T (L)

hold for i = 1 , 2 , , m . Hence we get

C max P ( L ) C max O P T ( L ) 8 m 2 3 m C max O P T ( L ) C max O P T ( L ) = 8 m 2 3 m = 2 + m 1 m + m 2

When m is odd then C i 8 m 3 m + 1 C max O P T ( L ) hold for i = 1 , 2 , , m . Hence we get

C max P ( L ) C max O P T ( L ) 8 m 3 m + 1 C max O P T ( L ) C max O P T ( L ) = 8 m 3 m + 1 = 2 + m 1 m + m 2

Thus we get

R ( m , P ) = sup L C max P ( L ) C max O P T ( L ) 2 + m 1 m + m 2

Hence the theorem is proved.

4. Concluding Remarks

In this paper, we consider the semi-online scheduling problem

P m / ( ordinal , r i ) / C max in which the job list has non-increasing processing times and arbitrary release times. An algorithm is investigated and it is shown that its

worse case performance ratio is bounded by 2 + ( m 1 ) / ( m + m 2 ) for all

values of m. For this problem, to investigate better algorithms or give lower bound and upper bound would be worth doing. There are many other scheduling problems where ordinal algorithms could be developed. The investigations to find good algorithms for these problems would be also of interest to the scheduling community.

Acknowledgements

This work was partly supported by the Chinese National Natural Science Foundation Grant (No.11471110) and the Foundation Grant of Education Department of Hunan (No. 16A126).

Conflicts of Interest

The authors declare no conflicts of interest.

References

[1] Graham, R.L. (1969) Bounds on Multiprocessing Timing Anomalies. SIAM Journal on Applied Mathematics, 17, 416-429.
https://doi.org/10.1137/0117039
[2] Li, R.H. and Huang, H.C. (2004) On-Line Scheduling for Jobs with Arbitrary Release Times. Computing, 73, 79-97.
https://doi.org/10.1007/s00607-004-0067-1
[3] Kellerer, H., Kotov, V., Speranza, M.G. and Tuza, Z. (1997) Semi On-Line Algorithms for the Partition Problem. Operations Research Letters, 21, 235-242.
https://doi.org/10.1016/S0167-6377(98)00005-4
[4] He, Y. and Zhang, G. (1999) Semi On-Line Scheduling on Two Identical Machines. Computing, 62, 179-187.
https://doi.org/10.1007/s006070050020
[5] He, Y. and Dósa, G. (2005) Semi-Online Scheduling Jobs with Tightly-Grouped Processing Times on Three Identical Machines. Discrete Applied Mathematics, 150, 140-159.
https://doi.org/10.1016/j.dam.2004.12.005
[6] Cheng, T.C.E., Kellerer, H. and Kotov, V. (2012) Algorithms Better Than LPT for Semi-Online Scheduling with Decreasing Processing Times. Operations Research Letters, 40, 349-352.
https://doi.org/10.1016/j.orl.2012.05.009
[7] Li, R.H. and Huang, H.C. (2007) List Scheduling for Jobs with Arbitrary Release Times and Similar Lengths. Journal of Scheduling, 10, 365-373.
https://doi.org/10.1007/s10951-007-0042-8
[8] Seiden, S., Sgall, J. and Woeginger, G.J. (20000 Semi-Online Scheduling with Decreasing Job Sizes. Operations Research Letters, 27, 215-227.
[9] Li, R.H., Cheng, X.Y. and Zhou, Y.X. (2014) On-Line Scheduling for Jobs with Non-Decreasing Release Times and Similar Lengths on Parallel Machines. Optimization-A Journal of Mathematical Programming and Operations Research, 63, 867-882.
[10] Liu, W.P., Sidney, J.B. and Vliet, A. (1996) Ordinal Algorithm for Parallel Machine Scheduling. Operations Research Letters, 18, 223-232.
https://doi.org/10.1016/0167-6377(95)00058-5
[11] Tan, Z.Y. and He, Y. (2001) Semi Online Scheduling with Ordinal Data on Two Uniform Machines. Operations Research Letters, 28, 221-231.
https://doi.org/10.1016/S0167-6377(01)00071-2
[12] He, Y. and Tan, Z.Y. (2002) Ordinal-Online Scheduling for Maximizing the Minimum Machine Completion Time. Journal of Combinatorial Optimization, 6, 199-206.
https://doi.org/10.1023/A:1013855712183

Copyright © 2024 by authors and Scientific Research Publishing Inc.

Creative Commons License

This work and the related PDF file are licensed under a Creative Commons Attribution 4.0 International License.