Abstract

This paper addresses the single-machine scheduling problems with simultaneous considerations of job rejection, deterioration effects, and deteriorating multimaintenance activities. A job is either rejected, in which case a rejection penalty has to be paid, or accepted and processed on the single machine. Three deterioration effect models are investigated, and it is assumed that each machine may be subject to several maintenance activities over the scheduling horizon, and the duration of the maintenance depends on its running time. Moreover, due to the restriction of the budget of maintenance, the upper bound of the total maintenance frequencies on the machine is assumed to be known in advance. The objective is to find jointly the optimal accepted job set, the optimal maintenance frequencies, the optimal maintenance positions, and the optimal accepted job sequence such that the cost function based on the total completion time and rejection penalty is minimized. It is shown that all the versions of the problem under study are polynomial time solutions.

1. Introduction

In classical deterministic scheduling models, the processing conditions, including the job processing times, are usually viewed as given constants. However, in many real-life situations, the processing conditions may vary over time, thereby affecting the actual durations of job processing. This leads to the study of scheduling models with variable job processing times. There are several categories of models that address scheduling problems with variable processing times. For example, the actual processing time of a job gets shorter if the job is scheduled later (such a phenomenon is called the “learning effect”). In scheduling with deterioration, the later a job starts, the longer it takes to process the job (such a job is called a “deteriorating job”). Furthermore, the job processing time can be modelled as a mixed form of both learning and deterioration. Applications of scheduling models with variable job processing times can be found in the forging process in steel plants, in silverware production, finance management, or workforce learning. The corresponding scheduling problems have received considerable research attention. For reviews of scheduling problems involving the learning effect, the reader may refer to Cheng and Wang [1], Cheng et al. [2, 3], Janiak and Rudek [46], Kuo et al. [7], Lee and Lai [8], Rudek [9], and Yin et al. [10, 11], while for reviews of research on scheduling with job deterioration, the reader may refer to Bachman et al. [12, 13], Inderfurth et al. [14], Janiak and Kovalyov [15], Mazdeh et al. [16], Yin et al. [1719], and Zhao and Tang [20]. For studies considering a mixed form of both learning and deterioration, we refer the reader to Cheng et al. [21], Wang [22, 23], Wang and Cheng [24], Wang et al. [2527], Yang and Kuo [28], and Yin and Xu [29]. The reader may also make reference to Alidaee and Womer [30], Biskup [31], and Cheng et al. [32] for recent state-of-the-art reviews in this area, as well as for discussion of practical applications of the models.

Most literature in scheduling assumes that machines are available at all times. However, machines subject to maintenance are found prevalently in process industries and manufacturing systems. In the real world, machines are usually not continuously available due to maintenance activities, tool changes, or breakdowns. It is well-known that the maintenance activity is important to improve the production efficiency of the machines or the quality of the products. During the maintenance activity, the machine is unavailable for processing jobs. Scheduling in such an environment is specified as scheduling with availability constraints and it has attracted many researchers. For details on this stream of research, the reader may refer to the comprehensive surveys by Schmidt [33] and Ma et al. [34]. Moreover, in order to model a more realistic production system, the problem of joint scheduling with the deterioration effect and maintenance activity has received the attention of many researchers, including Cheng et al. [21], Gawiejnowicz [35], Ji et al. [36], Lee and Wu [37], Low et al. [38], Lodree and Geiger [39], Wu and Lee [40], Rustogi and Strusevich [41], S. Yang and D. Yang [4244], and Zhao and Tang [45].

On the other hand, scheduling problems have been extensively studied in the literature under the assumption that all jobs have to be processed. However, in many cases the scheduler has to make a higher level decision on how to partition the set of jobs into a set of accepted and a set of rejected jobs and to efficiently schedule the set of accepted jobs among the machines. Job rejection may be considered, for example, in cases where the machine capacity is too low and does not allow the scheduler to process all the jobs. In such cases, the rejected jobs may be either outsourced or not get served at all, thus incurring a rejection penalty either due to an outsourcing cost or due to loss of income and reputation (see [46]). The idea of scheduling with rejection is relatively new. It was first introduced by Bartal et al. [47], who studied the problem of minimizing the sum of makespan and rejection penalties on a set of identical parallel machines, focusing on approximations. Since then, scheduling problems with rejection jobs have been extensively studied in the literature. Recently, Shabtay et al. [46] offer a very robust approach to scheduling with rejection by providing a bicriteria analysis of a large set of scheduling problems that can all be represented by (or reduced to) the same mathematical formulation.

In this problem, we investigate the scheduling problems with simultaneous considerations of rejected jobs, deterioration effects, and deteriorating multimaintenance activities which extends the problem considered in S. Yang and D. Yang [42] by allowing rejected jobs. The objective is to find jointly the accepted job set, the optimal maintenance frequencies, the optimal maintenance positions, and the optimal accepted job sequences such that the cost function based on the total completion time and rejection penalty is minimized. To the best of our knowledge, there are no papers in which such a problem has been studied so far. The rest of the paper is organized as follows: Section 2 formulates the problems under study. Section 3 addresses the optimal solution of the case where no maintenance is scheduled in the sequence. Section 4 provides polynomial time solutions for all the problems studied. We conclude the paper and suggest some future research topics in the last section.

2. Problem Definition

The single-machine scheduling with job rejection, deteriorating effects, and deteriorating maintenance activities may be stated as follows. Assume that there is a set of independent jobs to be processed on a single machine. The machine can handle at most one job at a time and job preemption is not allowed. Each job becomes available for processing at time zero, requires a nonnegative normal processing time , and has a nonnegative rejection penalty . For each job we must decide either to schedule that job on the machine or to reject it. If we reject job , we pay its rejection penalty . We denote the sets of accepted jobs and rejected jobs by and , respectively. Due to the deteriorating effects, maintenance may be performed on the machine to improve its production efficiency. In order to model a realistic manufacturing system, the machine may be subject to several maintenance activities during the planning horizon. As in S. Yang and D. Yang [42], we assume that the duration of each maintenance activity is a linear function of the running time of the machine and is denoted by , where is the basic time of maintenance activity, is the deteriorating maintenance factor, and is the running time of the machine between the th and th maintenance activities of the machine. We further assume that a maintenance activity can be scheduled immediately after completing the processing of any job. After maintenance, the machine reverts to its initial condition and the deteriorating effect starts a new. The upper bound of the maintenance frequency on the machine due to the restriction of budget of maintenance is assumed to be known in advance. Denote by and the maintenance frequency and the upper bound of the maintenance frequency on the machine, respectively, where .

There are three basic types of deteriorating effect investigated in our paper. The first type concerns the job-dependent deteriorating effect; that is, if job is scheduled in the th position, then its actual processing time is defined by where is its deteriorating factor of job .

The second type concerns the linear position-dependent deteriorating effect; that is, if job is scheduled in the th position, then its actual processing time is defined by where is the deteriorating ratio of job .

The third type concerns the linear time-dependent deteriorating effect model; that is, if job is scheduled in the th position, then its actual processing time is defined by where is the common deteriorating factor and is the starting time of a job processed in the position in a sequence; that is, .

The problem in this paper is to determine simultaneously the accepted job set , the optimal maintenance frequencies, the optimal maintenance positions, and the optimal accepted job sequence for minimizing the objective function when the upper bound of the maintenance frequency on the machine is given in advance, where is the number of accepted jobs and denotes the completion time of the th job in the accepted job sequence. Using the standard three-field notation introduced by Graham et al. [48], our scheduling problem can be denoted as , , where , , and in the second field represent the type of deteriorating effect, the maintenance activity, and the upper bound of the maintenance frequency on the machine, respectively.

3. Optimal Solution for the Case Where There Is No Maintenance

In this section we first study the problems under the case that there is no maintenance scheduled during the planning horizon (i.e., ) and show that all the problems studied are polynomially solvable. We begin with providing a useful lemma which will be used later.

Lemma 1 (see [49]). Consider two sequences of positive real numbers and . The value of is the least if the sequences are monotonic in the opposite sense.

Since the objective function is regular, there is an optimal schedule for the problems under consideration in which all the accepted jobs are processed consecutively without idle time and the first job starts at time 0.

3.1. The Problem

This subsection addresses the problem of finding the accepted job set and the optimal accepted job sequence to minimize the objective function given by (4) under model (1).

For a fixed job sequence with accepted jobs in the order of , where , (4) can be reformulated as where and denote the normal processing time and aging factor of the job scheduled in the th position in , respectively.

Theorem 2. Given the number of accepted jobs, the problem can be formulated as an assignment problem.

Proof. Let the number of accepted jobs be . By (5), we can define as the cost of assigning job to the th position in the schedule. Furthermore, let be the decision variable such that if job is in the th position, and otherwise, for . Then the scheduling problem can be formulated as the following assignment problem: The result follows.

Summing up the above analysis, the following solution algorithm can be presented for the problem .

Algorithm 3. Consider the following.
Step  1. For , calculate .
Step  2. For , solve the above assignment problem and calculate the corresponding objective value .
Step  3. The optimal objective value is .

Theorem 4. Algorithm 3 solves the problem in time.

Proof. The correctness of Algorithm 3 follows directly from Theorem 2. Step 1 requires time, while Step 2 needs to solve n − 1 assignment problems where each one can be solved in time. Therefore, the overall time complexity of the algorithm is .

Now, let us turn our attention to the special case where for each , denoted as . In this case, (5) can be reformulated as follows. where for .

In what follows, we renumber the jobs in the nonincreasing order of their normal processing times (LPT order) and design a dynamic programming algorithm for the problem as follows.

Let be a state, where is the number of accepted jobs, represents that the jobs have been considered, and , , represents how many of these jobs have been sequenced as accepted jobs, and let be an optimal solution value for the state , and let be any schedule in state with solution value . By definition, set if no such schedule exists.

For given , calculate each values according to (7) for . Sort in nondecreasing order and reindex them as for such that . According to Lemma 1, the th accepted job in should be matched with . Thus, the schedule must have been constructed by taking one of the following two decisions in a previous state.(1) is scheduled as an accepted job: in this case must have been obtained from schedule and .(2) is scheduled as a rejected job: in this case must have been obtained from schedule and .

Based on the above analysis, we can develop an algorithm as follows.

Algorithm 5. Consider the following.
Step  1. Renumber the jobs in the LPT order.
Step  2. For , we have the following.

Step  2.1. Calculate each values according to (7) for . Sort in nondecreasing order and reindex them as for such that . Initialize

Step  2.2. For , compute

Step  3. The optimal objective value is and the resulting optimal accepted job sequence can be found by backtracking.

For each given , the algorithm generates no more than states and computing each requires constant time, so the time complexity is . This implies the following theorem.

Theorem 6. Algorithm 5 solves the problem in time.

3.2. The Problem

This subsection addresses the problem of finding the accepted job set and the optimal accepted job sequence to minimize the objective function given by (4) under model (2).

For a fixed job sequence with accepted jobs in the order of , where , (4) can be reformulated as

Theorem 7. Given the number of accepted jobs, the problem can be formulated as an assignment problem.

Proof. Let the number of accepted jobs be    . By (5), we can define as the cost of assigning job to the th position in the schedule. Furthermore, let be the decision variable such that if job is in the th position, and otherwise, for . Then the scheduling problem can be formulated as the following assignment problem: The result follows.

Summing up the above analysis, the following solution algorithm can be presented for the problem .

Algorithm 8. Consider the following.
Step  1. For , calculate .
Step  2. For , solve the above assignment problem and calculate the corresponding objective value .
Step  3. The optimal objective value is .

Theorem 9. Algorithm 8 solves the problem in time.

3.3. The Problem

This subsection addresses the problem of finding the accepted job set and the optimal accepted job sequence to minimize the objective function given by (4) under model (3).

For a fixed job sequence with accepted jobs in the order of , where , (4) can be reformulated as where . Since , we have that .

Define for . Then . Assume that the jobs have been reindexed in the LPT order. In what follows, we design a backward dynamic programming algorithm for the problem . Let be a state, in which represents that the jobs have been considered, and , , represents how many of these jobs have been sequenced as accepted jobs, and let be an optimal solution value for the state and any schedule in state with solution value . By definition, set if no such schedule exists. Then, the schedule must have been constructed by taking one of the following two decisions in a previous state.(1) is scheduled as an accepted job: in this case, by Lemma 1, the th accepted job in should be matched with ; hence must have been obtained from schedule and .(2) is scheduled as a rejected job: in this case must have been obtained from schedule and .

The dynamic programming algorithm can be formally stated as follows.

Algorithm 10. Consider the following.
Step  1. Renumber the jobs in the LPT order.
Step  2. Initialize
Step  3. For , compute
Step  4. The optimal objective value is and the resulting optimal accepted job sequence can be found by backtracking.

Theorem 11. Algorithm 10 solves the problem in time.

4. Problems ,

In this section we address the problem , and show that all the problems consideration are polynomially solvable.

If the machine is subject to times of maintenance, then there are groups of jobs in the accepted job sequence. Let denote the groups of accepted jobs in the schedule. Then the group of accepted jobs and maintenance sequence can be denoted as , where represents the th maintenance activity. Denote by the allocation vector of the number of jobs in each group, where is the number of jobs in group and . Then group can be denoted as .

Analogous to the analysis in Section 3, since the objective function is regular, there is an optimal schedule for the problems under consideration in which all the accepted jobs are processed consecutively without idle time and the first job starts at time 0.

4.1. The Problem ,

For a fixed job sequence and maintenance activities with accepted jobs, (4) can be reformulated as where , and denote the normal processing time and deteriorating factor of the job scheduled in the th position in -group, respectively.

Theorem 12. Given the number of accepted jobs, the problem , can be formulated as an assignment problem.

Proof. Let the number of accepted jobs be , and let be the decision variable such that if job is in the th position, and otherwise, for . Then the scheduling problem can be formulated as the following assignment problem: where , for , and . The result follows.

Summing up the above analysis, the following solution algorithm can be presented for the problem , .

Algorithm 13. Consider the following.
Step  1. For , calculate .
Step  2. For given , , and vector , solve the above assignment problem and calculate the corresponding objective value .
Step  3. The optimal objective value is .

Theorem 14. Algorithm 13 solves the problem , in time.

Proof. The correction follows directly from Theorem 12. Step 1 requires time. For given , , and , solving this assignment problem requires an effort of . Now, the question is how many vectors exist. For given and , the number of jobs in group may be , for and the number of jobs assigned to the last group (i.e., ) can be determined uniquely by the numbers of jobs on the first groups. Thus we conclude that the upper bound of the number of vectors is . Therefore, the overall time complexity of the algorithm is indeed .

Now, let us turn our attention to the special case where for each , denoted as , . In this case, (4) can be reformulated as follows: where for and .

Assume that the jobs have been reindexed in the LPT order. In what follows, we develop a forward dynamic programming algorithm to solve the problem , . Let be a state, where represents that the jobs have been considered, and , , represents how many of these jobs have been sequenced as accepted jobs, while in the final optimal schedule for the whole job set, it contains exactly accepted jobs, maintenance activities, and jobs in group for . Let be an optimal solution value for the state and any schedule in state with solution value . By definition, set if no such schedule exists.

For given , , and , calculate each values according to (17) for and . Sort in nondecreasing order and reindex them as for such that . According to Lemma 1, the th accepted job in should be matched with . Thus, the schedule must have been constructed by taking one of the following two decisions in a previous state.(1)Job is scheduled as an accepted job. In this case, must have been obtained from schedule and (2)Job is scheduled as a rejected job. In this case, must have been obtained from schedule and

Based on the above analysis, we can develop an algorithm as follows.

Algorithm 15. Consider the following.
Step  1. Reindex the jobs in the in the LPT order.
Step  2. For , , and , we have the following.
Step  2.1. Calculate for and according to (17). Sort in nondecreasing order and reindex them as for such that .
Step  2.2. For , , do as follows.
Initialize and compute
Step 3. The optimal solution value is and the optimal schedule can be found by backtracking.

Theorem 16. Algorithm 15 solves the problem , in time.

Proof. Optimality is guaranteed by the principles underlying dynamic programming. We now consider the computational complexity of the dynamic programming solution algorithm. For each given and , the number of vectors can be approximated as , while for each given , , and , we have at most states and computing each requires constant time. Therefore, the overall time complexity of the algorithm is .

4.2. The Problem ,

For a fixed job sequence and maintenance activities with accepted jobs in the order of , (4) can be reformulated as where for and .

Theorem 17. Given the number of accepted jobs, the problem , can be formulated as an assignment problem.

Proof. Let the number of accepted jobs be , and let be the decision variable such that if job is in the th position, and otherwise, for . Then the scheduling problem can be formulated as the following assignment problem: where , for , and . The result follows.

Summing up the above analysis, the following solution algorithm can be presented for the problem , .

Algorithm 18. Consider the following.
Step  1. For , calculate .
Step  2. For given , , and vector , solve the above assignment problem and calculate the corresponding objective value .
Step  3. The optimal objective value is , .

Theorem 19. Algorithm 18 solves the problem , in time.

4.3. The Problem ,

For a fixed job sequence and maintenance activities with accepted jobs in the order of , (4) can be reformulated as where for and .

Analogous to the problem , , Algorithm 13 also can be used for solving the problem , by replacing with .

Theorem 20. The problem , can be solved in time.

5. Conclusions

This paper studies the single-machine scheduling problems with simultaneous considerations of job rejection, deterioration effects, and deteriorating multimaintenance activities with the objective of finding jointly the accepted job set, the optimal maintenance frequencies, the optimal maintenance positions, and the optimal job sequences such that the cost function based on the total completion time and rejection penalty is minimized, in which the upper bound of the total maintenance frequencies on the machine is assumed to be known in advance. The main results obtained are summarized in Table 1. Future research may focus on studying other models of maintenance duration, in multi-machine settings, and optimizing other performance measures.