Better Algorithm for Order On-Line Scheduling on Uniform Machines ()
1. Introduction
For the online scheduling on a system of m uniform parallel machines, denoted by Qm/online/Cmax, each machine
has a speed si, i.e., the time used for finishing a job with size p on Mi is p/si. Without loss of generality, we assume
. Cho and Sahni [1] are the first to consider the online scheduling problem on m uniform machines. For Q2/online/Cmax, Epstein et al. [2] showed that LS has the competitive ratio
and is an optimal online algorithm, where the speed ratio
. Q3/online/Cmax was considered by Cai and Yang [3] . They showed that the algorithm LS is an optimal online algorithm when the speed ratios
, where
,
,
,
.
Aspnes et al. [4] are the first to try to design better algorithm for Qm/online/Cmax. They presented a new algorithm with competitive ratio of 8 for the deterministic version, and 5.436 for its randomized variant. Later the previous ratios are improved to 5.828 and 4.311, respectively, by Berman et al. [5] .
The special case
and
was fisrt considered by Li and Shi [6] . It is proved that for
LS is optimal when sm = 2 and they also developed an algorithm with a better competitive ratio than LS for m ≥ 4 and sm = s ≥ 1. For m ≥ 4 and 1 ≤ s ≤ 2, Cheng et al. [7] proposed an algorithm with a competitive ratio not greater than 2.45.
Motivated by air cargo import terminal problem, a generalization of the Graham’s classical on-line scheduling problem was proposed by Li and Huang [8] [9] . They describe the requests of all jobs in terms of order, where for any job list
, job Jj is given as order with the information of a release time rj and a processing size of pj. More recent results can be found in the research by Li et al. [10] and Yin et al. [11] .
Our task is to allocate an order sequence of jobs to m parallel uniform machines which have speeds of
in an online fashion, while minimizing the maximum completion time of the machines. An algorithm with worst case performance not bigger than 7.4641 is developed. The result is better than the existing result of 12 in Cheng et al. [12] .
The rest of the paper is organized as follows. In Section 2, some definitions are given. In Section 3, an algorithm R is addressed and its competitive ratio is analyzed.
2. Some Definitions
In this section we will give some definitions.
Definition 1: We have m parallel machines with speeds
, respectively. Let
be any list of jobs, where jobs arrives online one by one and each Jj has a release time rj and a processing size of pj. Algorithm A is a heuristic algorithm.
and
denote the makespan of algorithm A and an optimal off-line algorithm, respectively. We refer to
as the competitive ratio of algorithm A.
Definition 2: Suppose that Jj is the current job with release time rj and size of pj. We say that machine Mi has an idle time interval for job Jj, if there exists a time interval
satisfying the following two conditions:
1) Machine Mi is idle in interval
and a job with release time T2 has been assigned to machine Mi to start at time T2.
2)
.
It is obvious that if machine Mi has an idle time interval for job Jj, then we can assign Jj to machine Mi in the idle interval.
In the following we consider m parallel uniform machines with speeds
and a job list
with information (rj, pj) for each job
, where ri and pi represent its release time and processing size, respectively. For convenience, we assume that the sequence of machine speeds is non-decreasing, i.e.,
. Let
;
;
;
;
;
,
.
By our definition,
.
3. Algorithm R and Its Performance
Now we present the algorithm R by use of the notations given in the former section in the following:
Algorithm R:
Step 0. Let t: = 0, Δt: = very small positive number.
For i = 1 to m do mi: = Δtsi, ci: = 2 mi, Hi = 0.
.
Step 1. Let Jj be a new job with release time rj and processing size pj given to the algorithm. If there is a machine Mi which has an idle time interval for job Jj, then we assign Jj to machine Mi in the idle interval and set
.
Step 2. If
or
for some
then goto Step 3. Otherwise goto Step 4.
Step 3. (*start a new phase*)
Set Δ: = rΔt, t: = t + 1, Δt: = Δ,
For i = 1 to m do
,
.
Set
and Goto Step 2.
Step 4. (*schedule pj*)
;
Assign Jj on machine Mk; Set:
;
.
Set
.
The running time of R is mainly in Step 1 and Step 4. In Step 1, at most j-1 times of checking can determine if there is an idle interval for current job Jj. In Step 4 at most m times can determine to assign current job Jj. Hence the complexity of our algorithm is O(n2).
Now we begin to analyze the performance of algorithm R. The following statement is obvious:
Lemma 1. For a job list L, if
, then
and rj < Δ hold for every
and every
.
Let Ll be the stream of jobs scheduled in phase l. We define
to be the stream of jobs that in phase l machine Mi passed over or Mi+1 received,
(for
, these two conditions are equivalent, for i = 0, only the latter and for i = m only the former applies).
Now the correctness of algorithm R will mean that the stream
is empty for every phase l.
Lemma 2. For every
and every phase l, we have
Proof: First of all, by the rules of the algorithm, we have
for every phase l and every
. Therefore
for every phase l and every
. Now we prove the claim by induction. For i = 0, it follows simply from the fact that
For l = 0, L0 is empty and hence
is empty for all i. Thus we have
.
This means that it is true for all i.
Now we will show the claim for (i, l) is true under the assumptions that the claim is true for (i−1, l) and (i, l−1). We prove it according to the following two cases:
Case 1. ci > 0. In this case, any job J with release time r and size p satisfying
in
cannot be passed over machine Mi to machine Mi+1. Hence we have
.
Thus we have
.
By the assumption on the claim for (i, l−1), we get
Adding up the above two inequality we get the claim for (i, l).
Case 2.
. In this case, we consider the sum of job sizes that assigned on machine Mi from phase 0 to phase l, which can be expressed as
Because
, Hi, the height of machine Mi at the end of phase l, is at least
By the rules of the algorithm, no job has release time greater than Δl. Thismeans that there is no idle time in time interval
on machineMi. Hence the sum of the job sizes that assigned on machine Mi from phase 0 to phase l satisfies:
.
By the inductive hypothesis for (i−1, l), we have
The above two inequalities include the truth of the claim for (i, l).
Lemma 2 show that, for every phase t, we have
.
This includes that
is empty for every phase t.
Theorem 3. The competitive ratio of algorithm R is not greater than 7.4641.
Proof: Suppose that the algorithm ended at phase k. Then the optimal value is at least
and the completion time of the algorithm is at most
Hence the performance ratio is not greater than
It is easy to see that the best value of r is
and the performance ratio is
.
4. Conclusion
In this paper, on-line scheduling problem for jobs with arbitrary release times on uniform machines is considered. We developed an algorithm with the competitive ratio of 7.4641 which is better than existing result of 12. In order to improve the competitive ratio more detailed consideration should be taken in.
Acknowledgements
The authors would like to express their thanks to the National Natural Science Foundation of China for financially supporting under Grant No.11471110 and the Foundation Grant of Education Department of Hunan (No. 16A126).