Next Article in Journal
Faber Polynomial Coefficient Estimates for Bi-Univalent Functions Defined by Using Differential Subordination and a Certain Fractional Derivative Operator
Next Article in Special Issue
A Deep Learning Algorithm for the Max-Cut Problem Based on Pointer Network Structure with Supervised Learning and Reinforcement Learning Strategies
Previous Article in Journal
Angular Correlation Using Rogers-Szegő-Chaos
Previous Article in Special Issue
Dynamic Restructuring Framework for Scheduling with Release Times and Due-Dates
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Online Batch Scheduling of Simple Linear Deteriorating Jobs with Incompatible Families

1
School of Mathematics and Statistics, Zhengzhou University, Zhengzhou 450001, China
2
College of Science, Henan University of Technology, Zhengzhou 450001, China
3
Department of Economics, State University of New York at Binghamton, Binghamton, NY 13902, USA
*
Author to whom correspondence should be addressed.
Submission received: 31 December 2019 / Revised: 22 January 2020 / Accepted: 24 January 2020 / Published: 1 February 2020
(This article belongs to the Special Issue Advances and Novel Approaches in Discrete Optimization)

Abstract

:
We considered the online scheduling problem of simple linear deteriorating job families on m parallel batch machines to minimize the makespan, where the batch capacity is unbounded. In this paper, simple linear deteriorating jobs mean that the actual processing time p j of job J j is assumed to be a linear function of its starting time s j , i.e., p j = α j s j , where α j > 0 is the deterioration rate. Job families mean that one job must belong to some job family, and jobs of different families cannot be processed in the same batch. When m = 1 , we provide the best possible online algorithm with the competitive ratio of ( 1 + α max ) f , where f is the number of job families and α max is the maximum deterioration rate of all jobs. When m 1 and m = f , we provide the best possible online algorithm with the competitive ratio of 1 + α max .

1. Introduction

1.1. Background

In this paper, all jobs arrive over time, i.e., each job has an arrival time. Before the jobs arrive, we do not know any information, including arrival time, processing time, deterioration rate, etc. Due to the unknown information of the jobs, the online algorithm is not guaranteed to be optimal. Borodin and El-Yaniv [1] used the competitive ratio to measure the quality of an online algorithm. For a minimization scheduling problem, we define the competitive ratio of the online algorithm A as:
ρ = sup { A ( I ) / O P T ( I ) : I is any instance such that O P T ( I ) > 0 } .
where I is any job instance and A ( I ) and O P T ( I ) are the objective values obtained from the algorithm A and an optimal offline scheduling O P T , respectively. In this study, the objective was to minimize the makespan. An online algorithm A is called the best possible if no other online algorithms A * produce a smaller competitive ratio.
Parallel-batch means that one batch processing machine can process b jobs simultaneously as a batch. The processing time of a batch is the maximum processing time of all jobs in this batch. All jobs in a batch have the same starting time, processing time, and completion time. According to the number of jobs contained in a batch, Brucker et al. [2] divided the model into two cases: the unbounded model ( b = ) and the bounded model ( b < ) .
Job families mean that one job must belong to some job family, and jobs of different families cannot be processed in the same batch. Online scheduling problems on parallel batch machines with incompatible job families have been studied extensively. Fu et al. [3] studied the online algorithm on a single machine to minimize the makespan. Li et al. [4] examined the online scheduling of incompatible unit-length job families with lookahead on a single machine. Tian et al. [5] analyzed the problem on m parallel machines. However, research is lacking on the parallel-batch online scheduling with incompatible deteriorating job families.
Traditional scheduling problems assume that the processing time of a job is fixed. However, in real life, one job will take longer when it has a later starting time. For example, in steel production and financial management [6,7], the processing time is longer when it starts later. In the steel-making process, strict requirements are placed on temperature. If the waiting time is too long, the temperature of molten steel will drop. So, it will take time to heat up again before further processing. Other examples are provided in cleaning and fire fighting. The scheduling problem of deteriorating jobs was first introduced by Browne and Yechiali [8] and Gupta and Gupta [9], independently. Both considered minimizing makespan on a single machine. Since then, this topic has attracted considerable attentions. Gawiejnowicz and Kononov [10] considered the general properties of scheduling with fixed job processing time and scheduling with job processing time as proportional linear functions of the job starting time. The relevant research includes [11,12,13,14,15,16,17,18], among many others. Recently, some works have been published about online algorithms for linear deteriorating jobs [19,20,21,22,23].
To minimize the makespan of the online scheduling problem on m parallel machines with linear deteriorating jobs, Cheng et al. [19] constructed an algorithm and proved that the bound of the competitive ratio of the algorithm is tight, where m = 2 and the largest deterioration rate of jobs is known in advance. Yu et al. [22] proved that no deterministic online algorithm is better than ( 1 + α max ) -competitive when m = 2 , where α max is the maximum deterioration rate of all jobs.

1.2. Research Problem

Our contribution is to extend the online scheduling problem on m parallel batch machines with simple linear deteriorating job families to minimize the makespan. Here, batch capacity is unbounded, i.e., b = . We use f-family to denote there are f job families. We constructed the best possible online algorithm with the competitive ratio of ( 1 + α max ) f when m = 1 , where f is the number of job families and α max is the maximum deterioration rate of all jobs. When m 1 and m = f , we created the best possible online algorithm with the competitive ratio of 1 + α max .
We examined the online batch scheduling of simple linear deteriorating job families. The actual processing time p j of job J j is assumed to be a linear function of its starting time s j , i.e., p j = α j s j , where α j > 0 is the deterioration rate, which is unknown until it arrives. The objective was to minimize makespan. Assume that the arrival time of all jobs is greater than or equal to t 0 > 0 ; otherwise, jobs arriving at time 0 can be completed at time 0. We used the three-field notation α | β | γ [24] to represent one scheduling problem.
This paper is organized as follows. In Section 2, we consider the problem 1 | online , r j , p - batch , b = ,f-family, p j = α j t | C max , where f is the number of job families. We prove the lower bound and provide the best possible online algorithm with the competitive ratio of ( 1 + α max ) f . In Section 3, we consider the problem P m | online , r j , p - batch , b = ,m-family, p j = α j t | C max , where m is the number of machines. We prove the lower bound and provide the best possible online algorithm with the competitive ratio of 1 + α max , where α max is the maximum deterioration rate of all jobs.
Throughout this paper, we use σ and π to denote the schedules obtained from an online algorithm and an optimal offline schedule, respectively. Let C max ( σ ) and C max ( π ) be the objective values of σ and π , respectively, and α max be the maximum deterioration rate of all jobs. Let ϵ be an arbitrary small positive number.

2. Single Batch Machine ( m = 1 )

In this section, we consider the online scheduling on an unbounded batch machine and the jobs belong to f incompatible deteriorating job families. The number of job families, f, is known in advance. We prove the lower bound and provide the best possible online algorithm with the competitive ratio of ( 1 + α max ) f .
Theorem 1.
For problem 1 | o n l i n e , r j , p b a t c h , b = ,f-family, p j = α j t | C max , the competitive ratio of any online algorithm is not less than ( 1 + α max ) f .
Proof. 
Let H be any online algorithm and I be a job instance provided by the adversary. In instance I, all the jobs have the same deterioration rate of α .
At time t 0 , f jobs from the f different job families arrive by the adversary. If a job is scheduled by H to process at time t and t is in the time interval [ t 0 , ( 1 + α ) f t 0 ) , then at time t + ϵ , the adversary releases a copy of this job, which belongs to the same job family. Let s be the starting time of the first job whose completion time is at least ( 1 + α ) f t 0 . ( 1 + α ) s ( 1 + α ) f t 0 . so,
s ( 1 + α ) f 1 t 0 .
Case 1 ( 1 + α ) f 1 t 0 s < ( 1 + α ) f t 0 .
In this case, there are still f jobs from f distinct job families that are not processed at time ( 1 + α ) s . So,
C max ( σ ) ( 1 + α ) f ( 1 + α ) s = ( 1 + α ) f + 1 s .
We assume that the jobs processed in the time interval [ t 0 , ( 1 + α ) s ) belong to k distinct job families, say, F 1 , F 2 , , F k , where 1 k f . The other f k job families are defined by F k + 1 , F k + 2 , , F f . Let s i be the last starting time of the jobs in F i that start before or at time s for 1 i k , and satisfy s 1 < s 2 < < s k . Clearly, s k = s . From the construction of instance I, we know that the last arrival time of the jobs in F i ( 1 i k ) is s i + ϵ and the arrival time of the jobs in F i ( k + 1 i f ) is t 0 .
Construct a schedule π below: the jobs in F i ( 1 i f ) form a batch starting at time s i , where:
s i = ( 1 + α ) i ( k + 1 ) t 0 , k + 1 i f max { s i + ϵ , ( 1 + α ) ( f + i ) ( k + 1 ) t 0 } , 1 i k .
We can see that π is feasible, and the maximum completion time of the jobs in π is the completion time of the jobs in F k . So,
C max ( π ) = ( 1 + α ) max { s k + ϵ , ( 1 + α ) f 1 t 0 } .
Since s k = s , we have C max ( π ) = max { ( 1 + α ) ( s + ϵ ) , ( 1 + α ) f t 0 } . and C max ( π ) C max ( π ) .
If C max ( π ) = ( 1 + α ) ( s + ϵ ) , then by Equation (2) we know that:
C max ( σ ) C max ( π ) ( 1 + α ) f + 1 s ( 1 + α ) ( s + ϵ ) ( 1 + α ) f = ( 1 + α max ) f , ϵ 0 .
If C max ( π ) = ( 1 + α ) f t 0 , then by Equations (1) and (2), we know that:
C max ( σ ) C max ( π ) ( 1 + α ) f + 1 s ( 1 + α ) f t 0 = ( 1 + α ) s t 0 ( 1 + α ) f = ( 1 + α max ) f .
Case 2 s ( 1 + α ) f t 0 .
According to the constructing of I, s k is the last starting time of the jobs in time interval [ t 0 , ( 1 + α ) f t 0 ) , and s k + ϵ is the last arrival time of all jobs.
Since s is the starting time of the first job whose completion time is at least ( 1 + α ) f t 0 , we obtain ( 1 + α ) s k < ( 1 + α ) f t 0 , i.e., s k < ( 1 + α ) f 1 t 0 . From Equation (3), we have:
C max ( π ) = max { ( 1 + α ) ( s k + ϵ ) , ( 1 + α ) f t 0 } max { ( 1 + α ) s k , ( 1 + α ) f t 0 } = ( 1 + α ) f t 0 ,
as ϵ 0 .
By the definition of s, f jobs from f distinct job families have not been processed at time s. So,
C max ( σ ) ( 1 + α ) f s .
Thus,
C max ( σ ) C max ( π ) ( 1 + α ) f s ( 1 + α ) f t 0 = s t 0 ( 1 + α ) f = ( 1 + α max ) f .
The result follows. □
Before introducing the online algorithm, given a batch B, we define some notations in the following:
J ( B ) : the last job with maximum deterioration rate in B.
r ( B ) : the arrival time of J ( B ) .
s ( B ) : the starting time of J ( B ) in σ .
α ( B ) : the deterioration rate of J ( B ) .
U ( t ) : the set of the unprocessed jobs at time t.
B i ( t ) : the set of the unprocessed jobs of the same family at time t, 1 i f , which is a waiting batch at time t if B i ( t ) .
B ( t ) : the set of the waiting batches at time t.
| B ( t ) | : the number of all waiting batches at time t.
r ( B ( t ) ) = min { r ( B ) : B B ( t ) } .
The online algorithm, called A 1 (Algorithm 1), can be stated as follows. Without causing confusion, assume that B i ( t ) = B i in the following.
Algorithm 1: A 1
Input: Job instance I. do
Step 0: Set t = t 0 .
Step 1: If B ( t ) = , then go to Step 5.
Step 2: Let B ( t ) = { B 1 , B 2 , , B k } such that α ( B 1 ) α ( B 2 ) α ( B k ) , where k f .
Step 3: If t ( 1 + α ( B 1 ) ) k t 0 , then process the batch B 1 at time t. Reset t = ( 1 + α ( B 1 ) ) t . Return to Step 1.
Step 4: If t < ( 1 + α ( B 1 ) ) k t 0 , then reset t = min { ( 1 + α ( B 1 ) ) k t 0 , t * } , where t * is the arrival time of the next job. Go to Step 2.
Step 5: If new jobs arrive after t, then reset t as the arrival time of the first new job. Go to Step 1.
Output: Job schedule σ .
Example 1.
To make the algorithm more intuitive, we present an instance I 1 in Table 1, where F 1 and F 2 are two different families. As shown in Figure 1, σ is the schedule generated by A 1 and π is an optimal offline schedule for I 1 , where B 1 = { J 1 , J 3 } and B 2 = { J 2 } .
We have C max ( σ ) = 81 and C max ( π ) = 9 .
Suppose that r l is the last arrival time. Let s r l be the minimum time, such that s is the starting time of some batch and there is no idle time between s and C max ( σ ) in σ . Let B be the set of the batches that process between s and C max ( σ ) in σ and s ( B ) be the start time of B . Since s ( B ) = s r l , each batch in B is from a different family and B = B ( s ) . From Algorithm 1, B = { B 1 , B 2 , , B k } with α ( B 1 ) α ( B 2 ) α ( B k ) , where k f . Then,
C max ( σ ) = i = 1 k ( 1 + α ( B i ) ) s ( B ) .
The following two lemmas are the competition ratio analyses of Algorithm 1.
Lemma 1.
Suppose the machine has an idle time immediately before s ( B ) in σ. Then, C max ( σ ) / C max ( π ) ( 1 + α max ) f .
Proof. 
Since an idle time occurs immediately before s ( B ) in σ , from Algorithm 1, we have: s ( B ) = max { r l , ( 1 + α ( B 1 ) ) k t 0 } .
If s ( B ) = r l , then for each B i B with 1 i k , J ( B i ) arrives at time r l . From Equation (4), we know that C max ( σ ) = i = 1 k ( 1 + α ( B i ) ) r l C max ( π ) .
If s ( B ) = ( 1 + α ( B 1 ) ) k t 0 , then from Equation (4) we have C max ( σ ) = i = 1 k ( 1 + α ( B i ) ) ( 1 + α ( B 1 ) ) k t 0 . Since C max ( π ) i = 1 k ( 1 + α ( B i ) ) t 0 , so C max ( σ ) / C max ( π ) ( 1 + α ( B 1 ) ) k ( 1 + α max ) f . □
Lemma 2.
Suppose the machine has no idle time immediately before s ( B ) in σ. Then, C max ( σ ) / C max ( π ) ( 1 + α max ) f .
Proof. 
Since the machine has no idle time immediately before s ( B ) in σ , s ( B ) is the completion time of some batch, say B * , in σ . We have s ( B ) = ( 1 + α ( B * ) ) s ( B * ) . From the definition of s, we know s ( B * ) < r l .
We suppose that B is divided into two sets, B 1 and B 2 , such that:
B 1 = { B i B : r ( B i ) > s ( B * ) } , B 2 = { B j B : r ( B j ) s ( B * ) } .
Since B = B 1 B 2 , s ( B ) = ( 1 + α ( B * ) ) s ( B * ) , then from Equation (4) we have:
C max ( σ ) = i = 1 k ( 1 + α ( B i ) ) s ( B ) = B i B ( 1 + α ( B i ) ) s ( B ) = B i B 1 ( 1 + α ( B i ) ) B j B 2 ( 1 + α ( B j ) ) ( 1 + α ( B * ) ) s ( B * ) .
From the definition of B 1 , we know C max ( π ) B i B 1 ( 1 + α ( B i ) ) s ( B * ) . Hence,
C max ( σ ) = B i B 1 ( 1 + α ( B i ) ) B j B 2 ( 1 + α ( B j ) ) ( 1 + α ( B * ) ) s ( B * ) B j B 2 ( 1 + α ( B j ) ) ( 1 + α ( B * ) ) C max ( π ) .
According to the definition of B 2 and Algorithm 1, each batch in set B 2 and B * belongs to the different family. Then, at most f 1 batches exist in B 2 . Hence,
C max ( σ ) / C max ( π ) B j B 2 ( 1 + α ( B j ) ) ( 1 + α ( B * ) ) ( 1 + α max ) f .
By Lemmas 1 and 2, and Theorem 1, we can reach the final conclusion.
Theorem 2.
For problem 1 | o n l i n e , r j , p b a t c h , b = ,f-family, p j = α j t | C max , Algorithm 1 has a competitive ratio of ( 1 + α max ) f and is the best possible.

3. Parallel Batch Machines ( m 1 )

In this section, we consider the online scheduling on m parallel batch machines and the jobs belong to m incompatible deteriorating job families. We prove the lower bound and construct the best possible online algorithm with a competitive ratio of 1 + α max .
Theorem 3.
For problem P m | o n l i n e , r j , p b a t c h , b = ,m-family, p j = α j t | C max , no online algorithm exists with a competitive ratio less than 1 + α max .
Proof. 
Let H be any online algorithm and I be a job instance provided by the adversary. In the instance I, all the jobs have a deterioration rate of α .
At time t 0 , m jobs J 1 , J 2 , , J m from different families arrive. Suppose that job J j starts processing at time s j in σ , j = 1 , 2 , , m .
If a job J k exists such that s k ( 1 + α ) t 0 , where 1 k m , then the adversary does not release other jobs. Hence,
C max ( σ ) ( 1 + α ) s k ( 1 + α ) 2 t 0 and C max ( π ) = ( 1 + α ) t 0 .
We have C max ( σ ) / C max ( π ) 1 + α = 1 + α max .
If for each job J j with 1 j m , s j < ( 1 + α ) t 0 , let J l { J 1 , J 2 , , J m } is the last starting job. At time s l + ϵ , a copy of the job J j ( j = 1 , 2 , , m ) arrives. We have:
C max ( σ ) ( 1 + α ) 2 s l and C max ( π ) = ( 1 + α ) ( s l + ϵ ) .
Hence, C max ( σ ) / C max ( π ) ( 1 + α ) s l / ( s l + ϵ ) 1 + α = 1 + α max , as ϵ 0 .
The result follows. □
Before providing the online algorithm, we define some notations used in the following:
U ( t ) : the set of the unprocessed jobs at time t.
α max ( t ) : the maximum deterioration rate of the jobs arrived at t or before t.
m ( t ) : the number of the idle machines at time t.
f ( t ) : the number of job families in U ( t ) at time t.
B i ( t ) : the nonempty set of the unprocessed jobs of the same family at time t, where 1 i f ( t ) .
J i ( t ) : the job with the maximum deterioration rate in B i ( t ) , where 1 i f ( t ) .
α i ( t ) : the deterioration rate of the job J i ( t ) , where 1 i f ( t ) .
Without loss of generality, assume that α 1 ( t ) α 2 ( t ) α f ( t ) ( t ) . The online algorithm, called A 2 (Algorithm 2), can be stated as follows.
Algorithm 2: A 2
Input: Job instance I. do
Step 0: Set t = t 0 .
Step 1: If U ( t ) = , then go to Step 6.
Step 2: If m ( t ) = m , and t ( 1 + α max ( t ) ) t 0 , then at time t, start B i ( t ) as a single batch on the idle machine for any i = 1 , 2 , , f ( t ) . Reset t = ( 1 + α f ( t ) ( t ) ) t . Go to Step 1.
Step 3: If m ( t ) = m , and t < ( 1 + α max ( t ) ) t 0 , then reset t = t * , such that t * is either the arrival time of the next job or ( 1 + α max ( t ) ) t 0 . Go to Step 1.
Step 4: If m ( t ) < m , and t ( 1 + α max ( t ) ) ( 1 + α 1 ( t ) ) t 0 , then at time t, start B i ( t ) as a single batch on the idle machine for any i = 1 , 2 , , min { m ( t ) , f ( t ) } . Reset t = t * , such that t * is either the arrival time of the next job or ( 1 + α min { m ( t ) , f ( t ) } ( t ) ) t . Go to Step 1.
STEP 5: If m ( t ) < m , and t < ( 1 + α max ( t ) ) ( 1 + α 1 ( t ) ) t 0 , then reset t = t * , such that either t * is the arrival time of the next job or m ( t * ) > m ( t ) , or t * = ( 1 + α max ( t ) ) ( 1 + α 1 ( t ) ) t 0 .
Step 6: If new jobs arrive after t, then reset t as the arrival time of the first new job. Go to Step 1.
Output: Job schedule σ .
Example 2.
To make the algorithm more intuitive, we present an instance I 2 in Table 2. Figure 2 depicts the schedule generated by Algorithm 2 and Figure 3 is an optimal offline schedule for I 2 .
We have C max ( σ ) = 12 and C max ( π ) = 8 .
Suppose that Algorithm 2 generates n batches B 1 , B 2 , B n . For batch B i , we define some notations in the following:
J i : the job with the maximum deterioration rate in B i .
α i : the deterioration rate of J i or the deterioration rate of B i .
r i : the arrival time of J i .
s i : the starting time of B i in σ , suppose that s 1 s 2 s n .
The following is the competition ratio analysis of the Algorithm 2.
Let B l be the first batch in σ assuming the objective value. B i is a regular batch if s i = max { ( 1 + α max ( s i ) ) t 0 , r i } or max { ( 1 + α max ( s i ) ) t 0 , r i } < s i ( 1 + α max ( s i ) ) ( 1 + α 1 ( s i ) ) t 0 .
Lemma 3.
Suppose that only one job J i exists in batch B i of σ, i = 1 , 2 , , n , then the value of C max ( σ ) / C max ( π ) does not decrease.
Proof. 
From Algorithm 2, the start time of batch B i is only related to the maximum deterioration rate of the jobs in this batch and the maximum deterioration rate of all jobs that have arrived. So, the value of C max ( σ ) does not change when we assume each batch B i has only one job J i . The reduction in the number of jobs may decrease the value of C max ( π ) , so the value of C max ( σ ) / C max ( π ) does not decrease. □
In the following, we assume that only one job J i exists in batch B i of σ , i = 1 , 2 , , n . Per Lemma 3, this does not influence the competition ratio analysis of Algorithm 2.
Lemma 4.
α l = α 1 ( s l ) .
Proof. 
Obviously, α l α 1 ( s l ) . If α l < α 1 ( s l ) , since J 1 ( s l ) U ( s l ) , then
C max ( σ ) ( 1 + α 1 ( s l ) ) s l > ( 1 + α l ) s l .
This contradicts the completion time of B l being the maximum completion time. Hence, α l = α 1 ( s l ) . □
Lemma 5.
If the batch B l is a regular batch, then C max ( σ ) / C max ( π ) 1 + α max .
Proof. 
Since B l is a regular batch, then
s l = max { ( 1 + α max ( s l ) ) t 0 , r l } ,
or
max { ( 1 + α max ( s l ) ) t 0 , r l } < s l ( 1 + α max ( s l ) ) ( 1 + α 1 ( s l ) ) t 0 .
Case 1 s l = max { ( 1 + α max ( s l ) ) t 0 , r l } .
Then
C max ( σ ) = ( 1 + α l ) s l = max { ( 1 + α l ) ( 1 + α max ( s l ) ) t 0 , ( 1 + α l ) r l } ( 1 + α max ) max { ( 1 + α l ) t 0 , r l } ( 1 + α max ) C max ( π ) .
Case 2 max { ( 1 + α max ( s l ) ) t 0 , r l } < s l ( 1 + α max ( s l ) ) ( 1 + α 1 ( s l ) ) t 0 .
In this case, at time s l , some batches must have a start time less than s l being processed. Let B a be the last such batch to start, then s a < s l ( 1 + α a ) s a . Hence,
C max ( σ ) = ( 1 + α l ) s l ( 1 + α l ) ( 1 + α a ) s a .
Suppose that r l s a . Since s l > s a , the batch with a larger deterioration rate has higher priority in σ , then α l α a α 1 ( s a ) per Algorithm 2. At time s a , J l does not start processing. This indicates that there is no machine that can process J l at time s a , i.e., m ( s a ) < f ( s a ) m . From Algorithm 2, we know that s a ( 1 + α max ( s a ) ) ( 1 + α 1 ( s a ) ) t 0 . By Lemma 4, we have α l = α 1 ( s l ) . Hence,
α 1 ( s a ) α a α l = α 1 ( s l ) .
By the definition of B a , we have α max ( s a ) = α max ( s l ) , so
s a ( 1 + α max ( s a ) ) ( 1 + α 1 ( s a ) ) t 0 ( 1 + α max ( s l ) ) ( 1 + α 1 ( s l ) ) t 0 s l .
This contradicts s a < s l . Hence r l > s a .
Thus, C max ( π ) ( 1 + α l ) r l > ( 1 + α l ) s a . From Equation (5), we have
C max ( σ ) / C max ( π ) < 1 + α a 1 + α max .
In the following, we discuss the case where B l is not a regular batch. This implies that no machine is idle immediately before time s l , where s l > max { ( 1 + α max ( s l ) ) ( 1 + α 1 ( s l ) t 0 , r l } . Renumber the m last batches starting on the m machines before time s l to B l , 1 , B l , 2 , , B l , m , such that s l , 1 s l , 2 s l , m . By Lemma 4, we have α l = α 1 ( s l ) . So,
C max ( σ ) = ( 1 + α l ) s l ( 1 + α l ) min 1 j m { ( 1 + α l , j ) s l , j } .
If s l , 1 = s l , 2 = = s l , k = = s l , m < s l , then J l , 1 , J l , 2 , , J l , m belong to m different job families and one of them belongs to the same family with J l . Then r l > s l , 1 and C max ( π ) ( 1 + α l ) r l > ( 1 + α l ) s l , 1 . From Equation (6), we have:
C max ( σ ) ( 1 + α l ) min 1 j m { ( 1 + α l , j ) s l , 1 } < min 1 j m ( 1 + α l , j ) 1 + α m .
In the following, we suppose that s l , i < s l , i + 1 for some i { 1 , 2 , , m 1 } . Let k be the index that satisfies s l , 1 = s l , 2 = = s l , k < s l , k + 1 s l , m < s l , then α l , 1 α l , 2 α l , k and J l , 1 = J 1 ( s l , 1 ) . If k 2 , then we observe that any two jobs from { J l , 1 , J l , 2 , , J l , k } belong to different job families. Define
I 1 = { J l , 1 , J l , 2 , , J l , k } and I 2 = { J l , k + 1 , , J l , m } .
Lemma 6.
For any job J l , j I 2 , we have s l , j ( 1 + α max ( s l , j ) ) ( 1 + α l , j ) t 0 .
Proof. 
Since s l , 1 = s l , 2 = = s l , k < s l , k + 1 s l , m < s l , there is no idle machine immediately before time s l , and B l , 1 , B l , 2 , , B l , m is the m last batches starting on the m machines before time s l , then m ( t ) < m for any time t [ s l , k + 1 , s l , m ] . From Algorithm 2, we have: s l , j ( 1 + α max ( s l , j ) ) ( 1 + α l , j ) t 0 for any job J l , j I 2 . □
Lemma 7.
If r l > s l , k + 1 , then C max ( σ ) / C max ( π ) 1 + α max .
Proof. 
Since r l > s l , k + 1 , then C max ( π ) ( 1 + α l ) r l > ( 1 + α l ) s l , k + 1 . From Equation (6), we have:
C max ( σ ) ( 1 + α l ) min 1 j m { ( 1 + α l , j ) s l , j } ( 1 + α l ) ( 1 + α l , k + 1 ) s l , k + 1 .
Hence,
C max ( σ ) / C max ( π ) < 1 + α l , k + 1 1 + α max .
Lemma 8.
If r l s l , k + 1 , then C max ( σ ) / C max ( π ) 1 + α max .
Proof. 
Since r l s l , k + 1 , from Algorithm 2, we have:
α l min { α l , j | J l , j I 2 } .
If a job J l , h I 2 \ { J l , k + 1 } exists such that r l , h > s l , k + 1 , then from Equation (7), we obtain:
C max ( π ) ( 1 + α l , h ) r l , h > ( 1 + α l , h ) s l , k + 1 ( 1 + α l ) s l , k + 1 .
From Equation (6), we have:
C max ( σ ) ( 1 + α l ) min 1 j m { ( 1 + α l , j ) s l , j } ( 1 + α l ) ( 1 + α l , k + 1 ) s l , k + 1 .
Hence,
C max ( σ ) / C max ( π ) < 1 + α l , k + 1 1 + α max .
Suppose that, for any job J l , h I 2 \ { J l , k + 1 } , r l , h s l , k + 1 . Since r l , k + 1 s l , k + 1 and r l s l , k + 1 , then the arrival time of all jobs from I 2 { J l } is less than s l , k + 1 . Thus, any two jobs from I 2 { J l } belong to distinct job families.
Claim At least one job in I 2 { J l } has an arrival time greater than s l , k .
Otherwise, if the arrival time of all jobs is less than or equal to s l , k , then all jobs in I 1 I 2 { J l } are available at time s l , 1 , and each job independently forms a batch in σ . We obtain that every two jobs from I 1 I 2 { J l } belong to distinct job families. Since I 1 I 2 { J l } = { J l , 1 , J l , 2 , , J l , m } { J l } , then f ( s l , 1 ) = m + 1 > m . This contradicts f ( s l , 1 ) m . The claim follows.
Since at least one job from I 2 { J l } arrives after s l , k , from Equation (7), we have:
C max ( π ) > ( 1 + α l ) s l , k .
From Equation (6), we have:
C max ( σ ) ( 1 + α l ) min 1 j m { ( 1 + α l , j ) s l , j } ( 1 + α l ) ( 1 + α l , k ) s l , k .
Hence,
C max ( σ ) / C max ( π ) < 1 + α l , k 1 + α max .
From Lemmas 5, 7 and 8, and Theorem 3, we obtain the following theorem.
Theorem 4.
For problem P m | o n l i n e , r j , p b a t c h , b = ,m-family, p j = α j t | C max , Algorithm 2 has a competitive ratio of 1 + α max and is the best possible.

4. Conclusions and Future Research

In this paper, we outlined two best possible online algorithms. The first algorithm for problem 1 | online , r j , p - batch , b = ,f-family, p j = α j t | C max is a simple delay algorithm. We obtained the delay time by analyzing the properties of the unprocessed jobs, providing the best possible online algorithm with the competitive ratio of ( 1 + α max ) f . The second algorithm for problem P m | online , r j , p - batch , b = ,m-family, p j = α j t | C max is a more complex delay algorithm. We obtained the different delay times depending on the number of idle machines and provide the best possible online algorithm with the competitive ratio of 1 + α max . The results are shown in Table 3.
In future research, the general linear deterioration effect, such as p j = α j s j + β j , is worthy of research. In additional, for the online scheduling problem on m parallel machines with linear deteriorating jobs to minimize the makespan, Yu et al. [22] only proved that no deterministic online algorithm is better than ( 1 + α max ) -competitive when m = 2 , where α max is the maximum deterioration rate of all jobs. However, no best possible online algorithm has been reported. This is also a topic for further study.

Author Contributions

Conceptualization, methodology and funding acquisition, W.L.; formal analysis and writing-original draft preparation, L.W.; writing—review, supervision and project administration, W.L. and X.C.; investigation, H.Y. All authors have read and agreed to the published version of the manuscript.

Funding

Research supported by NSFC (Nos. 11571321,11971443 and 11771406).

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Borodin, A.; El-Yaniv, R. Online Computation and Competitive Analysis; Cambridge University Press: Cambridge, UK, 1998. [Google Scholar]
  2. Brucker, P.; Gladky, A.; Hoogeveen, H.; Kovalyov, M.Y.; Potts, C.N.; Tautenhahn, T.; van de Velde, S.L. Scheduling a batching machine. J. Sched. 1998, 1, 31–54. [Google Scholar] [CrossRef]
  3. Fu, R.Y.; Cheng, T.C.E.; Ng, C.T.; Yuan, J.J. An optimal online algorithm for single parallel-batch machine scheduling with incompatible job families to minimize makespan. Oper. Res. Lett. 2013, 41, 216–219. [Google Scholar] [CrossRef]
  4. Li, W.H.; Yuan, J.J.; Yang, S.F. Online scheduling of incompatible unit-length job families with lookahead. Theor. Comput. Sci. 2014, 543, 120–125. [Google Scholar] [CrossRef]
  5. Tian, J.; Cheng, T.C.E.; Ng, C.T.; Yuan, J.J. Online scheduling on unbounded parallel-batch machines with incompatible job families. Theor. Comput. Sci. 2011, 412, 2380–2386. [Google Scholar] [CrossRef] [Green Version]
  6. Kunnathur, A.S.; Gupta, S.K. Minimizing the makespan with late start penalties added to processing times in a single facility scheduling problem. Eur. J. Oper. Res. 1990, 47, 56–64. [Google Scholar] [CrossRef]
  7. Mosheiov, G. Schedulig jobs under simple linear deterioration. Comput. Oper. Res. 1994, 21, 653–659. [Google Scholar] [CrossRef]
  8. Browne, S.; Yechiali, U. Scheduling deteriorating jobs on a single processor. Oper. Res. 1990, 38, 495–498. [Google Scholar] [CrossRef]
  9. Gupta, J.N.D.; Gupta, S.K. Single facility scheduling with nonlinear processing times. Comput. Ind. Eng. 1988, 14, 387–393. [Google Scholar] [CrossRef]
  10. Gawiejnowicz, S.; Kononov, A. Isomorphic scheduling problems. Ann. Oper. Res. 2014, 213, 131–145. [Google Scholar] [CrossRef]
  11. Gawiejnowicz, S. Scheduling deteriorating jobs subject to job or machine availability constraints. Eur. J. Oper. Res. 2007, 180, 472–478. [Google Scholar] [CrossRef]
  12. Ji, M.; Cheng, T.C.E. Batch scheduling of simple linear deteriorating jobs on a single machine to minimize makespan. Eur. J. Oper. Res. 2010, 202, 90–98. [Google Scholar] [CrossRef]
  13. Lee, W.; Wu, C.; Chung, Y. Scheduling deteriorating jobs on a single machine with release times. Comput. Ind. Eng. 2008, 54, 441–452. [Google Scholar] [CrossRef]
  14. Ng, C.T.; Li, S.S.; Cheng, T.C.E.; Yuan, J.J. Preemptive scheduling with simple linear deterioration on a single machine. Theor. Comput. Sci. 2010, 411, 3578–3586. [Google Scholar] [CrossRef] [Green Version]
  15. Ji, M.; He, Y.; Cheng, T.C.E. Scheduling linear deteriorating jobs with an availability constraint on a single machine. Theor. Comput. Sci. 2006, 362, 115–126. [Google Scholar] [CrossRef] [Green Version]
  16. Agnetis, A.; Billaut, J.; Gawiejnowicz, S.; Pacciarelli, D.; Soukhal, A. Multiagent Scheduling; Springer: Berlin/Heidelberg, Germany, 2014. [Google Scholar]
  17. Gawiejnowicz, S. Time-Dependent Scheduling; Springer: Berlin/Heidelberg, Germany, 2008. [Google Scholar]
  18. Strusevich, V.; Rustogi, K. Scheduling with Time-Changing Effects and Rate-Modifying Activities; Springer: Berlin/Heidelberg, Germany, 2017. [Google Scholar]
  19. Cheng, M.B.; Sun, S.J. A heuristic MBLS algorithm for two semi-online parallel machine scheduling problems with deterioration jobs. J. Shanghai Univ. 2007, 11, 451–456. [Google Scholar] [CrossRef]
  20. Liu, M.; Zheng, F.; Wang, S.; Huo, J. Optimal algorithms for online single machine scheduling with deteriorating jobs. Theor. Comput. Sci. 2012, 445, 75–81. [Google Scholar] [CrossRef] [Green Version]
  21. Ma, R.; Tao, J.P.; Yuan, J.J. Online scheduling with linear deteriorating jobs to minimize the total weighted completion time. Appl. Math. Comput. 2016, 273, 570–583. [Google Scholar] [CrossRef]
  22. Yu, S.; Ojiaku, J.T.; Wong, P.W.H.; Xu, Y.F. Online makespan scheduling of linear deteriorating jobs on parallel machines. In Proceedings of the International Conference on Theory and Applications of Models of Computation 2012, Beijing, China, 16–21 May 2012; pp. 260–272. [Google Scholar]
  23. Yu, S.; Wong, P.W.H. Online scheduling of simple linear deteriorating jobs to minimize the total general completion time. Theor. Comput. Sci. 2013, 487, 95–102. [Google Scholar] [CrossRef]
  24. Graham, R.L.; Lawler, E.L.; Lenstra, J.K.; Kan, A.H.G.R. Optimization and approximation in deterministic sequencing and scheduling: A survey. Ann. Discret. 1979, 5, 646–675. [Google Scholar]
Figure 1. Schedule for Instance I 1 .
Figure 1. Schedule for Instance I 1 .
Mathematics 08 00170 g001
Figure 2. Schedule generated by A 2 for Instance I 2 .
Figure 2. Schedule generated by A 2 for Instance I 2 .
Mathematics 08 00170 g002
Figure 3. Optimal offline schedule for Instance I 2 .
Figure 3. Optimal offline schedule for Instance I 2 .
Mathematics 08 00170 g003
Table 1. Instance I 1 .
Table 1. Instance I 1 .
JobArrival TimeDeterioration Rate
J 1 F 1 r 1 = t 0 = 1 2
J 2 F 2 r 2 = t 0 = 1 2
J 3 F 1 r 3 = 2 1
Table 2. Instance I 2 .
Table 2. Instance I 2 .
JobArrival TimeDeterioration Rate
J 1 F 1 r 1 = t 0 = 1 2
J 2 F 2 r 2 = t 0 = 1 1
J 3 F 3 r 3 = t 0 = 1 1
J 4 F 1 r 4 = 4 1
Table 3. Summary of results.
Table 3. Summary of results.
Parallel MachineNumber of FamiliesOptimum Rate
m = 1 f ( 1 + α max ) f ; best possible
m 1 f = m 1 + α max ; best possible

Share and Cite

MDPI and ACS Style

Li, W.; Wang, L.; Chai, X.; Yuan, H. Online Batch Scheduling of Simple Linear Deteriorating Jobs with Incompatible Families. Mathematics 2020, 8, 170. https://0-doi-org.brum.beds.ac.uk/10.3390/math8020170

AMA Style

Li W, Wang L, Chai X, Yuan H. Online Batch Scheduling of Simple Linear Deteriorating Jobs with Incompatible Families. Mathematics. 2020; 8(2):170. https://0-doi-org.brum.beds.ac.uk/10.3390/math8020170

Chicago/Turabian Style

Li, Wenhua, Libo Wang, Xing Chai, and Hang Yuan. 2020. "Online Batch Scheduling of Simple Linear Deteriorating Jobs with Incompatible Families" Mathematics 8, no. 2: 170. https://0-doi-org.brum.beds.ac.uk/10.3390/math8020170

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop