Abstract

We consider several two-agent scheduling problems with resource consumption on a single machine, where each of the agents wants to minimize a measure dependent on its own jobs. The starting time of each job of the first agent is related to the amount of resource consumed. The objective is to minimize the total amount of resource consumption of the first agent with the restriction that the makespan or the total completion time of the second agent cannot exceed a given bound . The optimal properties and the optimal polynomial time algorithms are proposed to solve the scheduling problems.

1. Introduction

Recently, there has been a growing interest in the literature to study multiagent scheduling problems, in which different agents share a common processing machine, and each agent wants to minimize a cost function dependent on its own job. Scheduling with multiple agents is firstly introduced by Baker and Smith [1] and Agnetis et al. [2]. Baker and Smith [1] manage to find a schedule that minimizes a combination of multiple agents’ objective functions. Agnetis et al. [2] study several scheduling problems with two agents that have requirements of their own objective functions. Some researchers pay their attention to the different machine environments and job characteristics of the scheduling problems with multiagent. Yuan et al. [3] show that two dynamic programming recursions in Baker and Smith [1] are incorrect and give a polynomial time algorithm for the same problems. Cheng et al. [4] extend one of the problems of Agnetis et al. [2] to the multiagent scheduling problem with minimizing the total weighted number of tardy jobs on a single machine. They show that the problem is strongly NP-complete in general, and they study a special case in which the number of agents is fixed. Cheng et al. [5] consider the multiagent scheduling problem on a single machine, where the agent’s objective functions are of the max form. They study the feasibility model and the minimality model. Leung et al. [6] study a two-agent scheduling environment with identical parallel machines and generalize the results of Baker and Smith [1] and Agnetis et al. [2] by including the total tardiness objective, allowing for preemptions, and considering jobs with different release dates. Gawiejnowicz et al. [7] consider a single-machine two-agent scheduling problem with proportionally deteriorating job processing times. Yin et al. [8] consider several two-agent scheduling problems with assignable due dates on a single machine. Gerstl and Mosheiov [9] consider the scheduling problems with two competing agents to minimize the weighted earliness-tardiness. Cheng et al. [10] study a two-agent single-machine scheduling problem with release times to minimize the total weighted completion time. Zhao and Lu [11] consider two models of two-agent scheduling problems on identical machines. Yin et al. [12] provide a branch-and-bound procedure for a single-machine earliness scheduling problem with two agents. Yu et al. [13] investigate several single-machine two-synergetic-agent scheduling problems. For other recent scheduling problems with two agents, the reader is referred to Lee et al. [14], Wu et al. [15], Feng et al. [16], and Wu et al. [17].

On the other hand, the scheduling problems with resource consumption have received a considerable attention in the last two decades. The classical scheduling problems have traditionally been considered under the assumptions that job processing times and release times are constant parameters and that the resource allocation issue is ignored. Cheng and Janiak [18] study the resource optimal control of job completion on a single machine with a constraint on maximum job completion time. Li [19] considers the problem of scheduling a set of jobs on a single machine where the release time of a job is related to the amount of resources consumed. Vasilev and Foote [20] investigate a single-machine scheduling problem where the resources consumed depend on the release times of jobs. Kaspi and Shabtay [21] consider the problem of scheduling jobs on a single machine where job processing times are controllable through the allocation of a common limited resource. Wang and Cheng [22] consider the single-machine scheduling problem with resource-dependent release times and processing times. Shabtay and Kaspi [23] study the parallel machine scheduling problems with a convex resource consumption function. Yedidsion et al. [24] provide an optimization algorithm for the single-machine problem where the processing time of each job is resource-dependent. Wang et al. [25] study the single-machine scheduling problem with learning effect and resource-dependent processing times. Wei et al. [26] consider the single-machine scheduling with time and resource-dependent processing times. J. B. Wang and M. Z. Wang [27] consider the single-machine scheduling to minimize total convex resource consumption with a constraint on total weighted flow time. Wang et al. [28] consider the scheduling problem with processing times dependent on position, starting time, and allotted resources. Wang et al. [29] consider single-machine scheduling problems with deteriorating jobs and resource allocation in a group technology environment. Hsu and Yang [30] analyze unrelated parallel machine scheduling resource allocation problems with position-dependent deteriorating jobs.

However, to the best of our knowledge, the multiagent scheduling problem with the consideration of resource-dependent starting times has hardly been studied in the literature. These two categories of scheduling problems have been extensively and separately researched over the last two decades. In this paper, we study the two-agent scheduling problems on a single machine with resource-dependent starting times, where the goal is to find a schedule that minimizes the objective function of one agent with the restriction that the objective function of the other agent cannot exceed a given bound. The problems under consideration fall into the category of scheduling problems with resource consumption and multiple agents.

The remainder of this paper is organized as follows. In Section 2, we describe the proposed problems. In Sections 3 and 4, we develop the optimal polynomial time algorithms for the two-agent single-machine scheduling problems. Section 5 gives some concluding remarks.

2. Problem Description

We now describe our problems formally. There are two families of independent and nonpreemptive jobs and to be processed on a common single machine. All jobs are available for processing at time zero. The jobs in and are called -agent’s jobs and -agent’s jobs, respectively. Associated with each job , let denote the processing time, . The starting time is related to the amount of the resource , consumed on job . We assume that , where , called the resource consumption function, is a strictly increasing continuous function to -agent’s jobs. Associated with each job , let denote the processing time, . Let indicate a feasible schedule of the jobs. Let denote the completion time of -agent’s job under schedule . The objective function of agent is to minimize the total amount of resource consumption . The objective function of agent is to minimize the makespan or the total completion time .

The goal is to minimize the total amount of resource consumption of agent with the restriction that the makespan or the total completion time of agent cannot exceed a given bound . If the value is too small, an instance of the scheduling problem may not have feasible solutions. If there is at least one feasible solution, we say that the instance is feasible. According to the three-field notation of Graham et al. [31], the two scheduling problems are denoted as and , respectively.

3. Problem

In this section, we develop an optimal polynomial time algorithm to solve the problem . The following Lemmas 1 and 2 are easily obtained, and we omit the details of the proof.

Lemma 1. Given a sequence and a constant , define . Then, if , the sequence corresponds to an infeasible schedule.

Lemma 2. Given a sequence and a constant , define . Then, if , the schedule corresponding to the sequence is feasible.

Now we can define bounds for the constraint . Define and .

Lemma 3. If , there are no feasible schedules. If , there are feasible schedules for all possible sequences.

From now on, we will always assume that in this problem.

Lemma 4. An optimal schedule exists in which the -agent’s jobs are processed in the nondecreasing order of processing times .

Proof. The resource consumption function is a strictly increasing continuous function to -agent’s jobs. Since starting -agent’s jobs later consumes more resources, -agent’s jobs should be processed as early as possible. Hence, -agent’s jobs should be processed in a nondecreasing order of .

Lemma 5. An optimal schedule exists in which the -agent’s jobs are consecutively processed.

Proof. The makespan of agent is the maximum completion time of -agent’s jobs on the single machine; that is, the makespan of agent is the completion time of -agent’s last job. Using a pairwise job interchange argument, we can consecutively process -agent’s jobs and consolidate all -agent’s jobs into a block.

Next, an algorithm to determine an optimal schedule of the problem is developed as follows.

Algorithm 6.

Step 1. Set .

Step 2. Arrange the -agent’s jobs as according to the nondecreasing order of and denote all -agent’s jobs as a dummy job .

Step 3. Define sequence and calculate the makespan for agent . If , then the sequence is an optimal schedule.

Step 4. Select the dummy job to the position in the sequence and calculate the makespan for agent . If , then the sequence is an optimal schedule, and stop. Otherwise, go to Step 5.

Step 5. If and , then , and go to Step 4. Otherwise, stop.

Theorem 7. Algorithm 6 generates an optimal schedule for the problem in time.

Proof. The proof of optimality is straightforward from the results of Lemmas 15. We now turn to time complexity. The time to sequence the jobs of set according to the nondecreasing order of is . Creating dummy job incurs operations. The solution requires finding locations for the dummy job among the -agent’s jobs sequenced by the nondecreasing order of . So, the overall computational complexity of Algorithm 6 is bounded by . This completes the proof.

4. Problem

For the problem , we have the following lemmas that are similar to Lemmas 1, 2, and 3.

Lemma 8. Given a sequence and a constant , define . Then, if , the sequence corresponds to an infeasible schedule.

Proof. If , then which implies that the sequence is infeasible.

Lemma 9. Given a sequence and a constant , define . Then, if , the schedule corresponding to the sequence is feasible.

Proof. If , then which implies that the sequence is feasible.

Now we can define bounds for the constraint . Let the processing times of the -agent’s jobs be ordered in the nondecreasing order . Then, define and . These constants play an important role in this problem.

Lemma 10. If , there are no feasible schedules. If , there are feasible schedules for all possible sequences.

In view of these properties, the analysis in the following section will be confined to the case in which .

Lemma 11. An optimal schedule exists in which the -agent’s jobs are processed in the nondecreasing order of processing times .

Proof. The proof is same to Lemma 4, and we omit the details.

Lemma 12. An optimal schedule exists in which the -agent’s jobs are consecutively processed in the nondecreasing order of processing times .

Proof. Using a pairwise job interchange argument, we can consecutively process -agent’s jobs in the nondecreasing order of processing times .

Next, an algorithm to determine an optimal schedule of the problem is developed as follows.

Algorithm 13.

Step 1. Set .

Step 2. Arrange the -agent’s jobs as according to the nondecreasing order of , and denote all -agent’s jobs sequenced by the nondecreasing order of as a dummy job .

Step 3. Define sequence and calculate the total completion time for agent . If , then the sequence is an optimal schedule.

Step 4. Select the dummy job to the position in the sequence and calculate for agent . If , then the sequence is an optimal schedule, and stop. Otherwise, go to Step 5.

Step 5. If and , then , and go to Step 4. Otherwise, stop.

Theorem 14. Algorithm 13 generates an optimal schedule for the problem in time.

Proof. The proof of optimality is straightforward from the results of Lemmas 812. We now turn to time complexity. The times to sequence the jobs of sets and according to the nondecreasing orders of and are and , respectively. Creating dummy job incurs operations. So, the overall computational complexity of Algorithm 13 is bounded by . This completes the proof.

5. Conclusions

In this paper, we introduce a new scheduling model in which both resource-dependent starting times and two agents exist simultaneously. The objective is to minimize the total amount of resource consumption of the first agent with the restriction that the makespan or the total completion time of the second agent does not exceed a given bound. We propose the optimal properties and the optimal polynomial time algorithms for the considered scheduling problems.

Future research may be directed to analyze the problems with other objective functions such as minimizing the number of late jobs, the total weighted completion time, and tardiness. An interesting research topic is also to consider other resource consumption functions. Finally, the future research direction is to analyze the scheduling problem with more than two agents or in other machine environments.

Acknowledgments

This research is supported by the National Natural Science Foundation of China (Grant no. 71001074), the Program for Liaoning Excellent Talents in University (Grant no. WJQ2013003), and the Science Research Foundation, Department of Education, Liaoning Province of China (Grant no. W2010302).