Abstract

This paper investigates a single-machine two-agent scheduling problem to minimize the maximum costs with position-dependent jobs. There are two agents, each with a set of independent jobs, competing to perform their jobs on a common machine. In our scheduling setting, the actual position-dependent processing time of one job is characterized by variable function dependent on the position of the job in the sequence. Each agent wants to fulfil the objective of minimizing the maximum cost of its own jobs. We develop a feasible method to achieve all the Pareto optimal points in polynomial time.

1. Introduction

Scheduling theory is very useful in industrial applications and provides much guidance in the real world. The traditional scheduling problems have only one agent to optimize its own objective. With the development of modern technology, more and more scheduling models occur. Once entering the 21st century, the existing one-agent scheduling models can not meet with the requirement of the time. Particularly, in the big data period, the internet must handle various instructions of online net citizens and meet with their different preferences. Under such environments, multiagent scheduling models appear. The ultimate theoretical results of multiagent scheduling problems are to get all the Pareto optimal points. Such a problem is usually called as Pareto optimization problem (PP for short). Since Pareto optimization problems are very hard to deal with large number of scheduling models, the researchers consider somewhat weaker scheduling problems like single-objective scheduling problems, that is, to optimize the objective of one agent with the restrictions of the objectives of the other agents. Such a problem is called constrained optimization problem (CP for short). And, in reality, the resolution of CP problems will be more helpful for the resolution of PP problems. There are many papers in which the ultimate resolution of PP problems depends on the research results of CP problems; [1] is one of the most outstanding and instructive papers.

Of multiagent problems, the two-agent problems are obviously most simple and most representative. Agnetis et al. [1] first defined the two problems for two-agent scheduling models and opened the door of studying two-agent scheduling problems. Baker and Smith [2] dealt with two-agent scheduling problems by combining the two objectives of both agents into one single objective. And the method can also obtain all the Pareto optimal points in some certain condition. Yuan et al. [3] pointed out the faults of some dynamic programming designed in [2] and developed correct methods. Biskup [4] first introduced position-dependent processing times to classic scheduling models and developed optimal algorithms for the considered problems. Further, Mosheiov [5] extended it to more scheduling problems, including single-machine problems, multicriteria problems, and parallel-machine problems. Bachman and Janiak considered some special position-dependent scheduling problem and proved that it is NP-hard in the strong sense. But with regret, the proof is not complete with lack of key statement of some places. Janiak and Kovalyov [6] supplemented the key statement and provided a new complete proof. Wang and Xia [7] and Wang [8] considered position-dependent processing times in some flow shop scheduling problems. Yin et al. [9] generalized the position-dependent functions of processing times and some theoretical results appearing in [4, 5]. Yang [10] simultaneously considered the jobs deterioration and the position-dependent learning effect under deteriorating maintenance environment and analyzed some results of single-machine scheduling models. Biskup [11] gave an excellent retrospect of scheduling theory with learning effects. Liu et al. [12] initially introduced two-agent models to position-dependent scheduling problems. They studied a single-machine two-agent CP scheduling problem in which one agent wants to minimize the total completion time subject to the maximum cost of the other agent bounded by a constant, where jobs’ actual processing times are defined by linear functions dependent on their positions in the schedule. Furthermore, Wan [13] deepened the results and showed that the PP version of [12] is polynomially solvable. For more related papers, we refer to Yin et al. [1416].

In the paper, we study the two-agent PP scheduling model introduced in [12, 13]. The objectives of the two agents are that both want to minimize the maximum cost of jobs. We develop a polynomial time algorithm to show that the PP problem can be efficiently solved. Section 2 provides some notations and problem description. A polynomial time algorithm is developed to show that the PP problem is solvable in Section 3.

2. Notations and Problem Statement

There are two agents, agent and agent , competing to schedule their respective jobs on a common single machine. The job sets of agent and are and , respectively, where and are the numbers of the jobs of agents and , respectively. The normal processing time of is denoted by , , . Each job has a nondecreasing and nonnegative cost function defined on the completion time. Let and . For a feasible schedule of , the following three conditions follow.(i)The first job is processed at time zero.(ii)The processing of the jobs of does not overlap.(iii)The machine processes the jobs of without idle time.

From the conditions, any schedule is consistent with a sequence of . Generally, we let denote a sequence of , as well as the consistent schedule. Let denote the actual processing time of job at position , , where represents the variable ratio. We assume that if is negative lest the actual processing time of some job is negative in some feasible schedules, where . Given a sequence , the completion time of job is denoted by . The cost of job is equal to . Therefore, the cost of agent is defined as the maximum cost of jobs; that is, , . For any job set , we define the completion time of denoted by to be the completion time of its last job. If there is no confusion, , , and are short for , , and , respectively. For any two feasible schedules and , we call Pareto better than if and only if and at least one inequality strictly holds. is called Pareto optimal if there is no schedule Pareto better than . And is a Pareto optimal point. The objective is to find all the Pareto optimal points. Adopting the notation of [1], the PP problem can be denoted by . For any job set , let . Furthermore, if , then .

Lemma 1 (see [13]). Let be a feasible schedule of job set ; then .

From Lemma 1, we know that the completion time of does not depend on the processing order of jobs of .

Let be a number pair; we consider problem . For the pair , we define the resulting due date of to be with and , ; . Let EDD be the schedule in which we sequence the jobs of in nondecreasing order of the resulting due dates and try to schedule -jobs after -jobs for breaking the tie if it exists. Similar to the proof of EDD rule [17], we can get the following lemma.

Lemma 2. If problem is feasible, then schedule EDD is a feasible schedule.

3. The Main Results

In this section, we will describe our algorithm to show that the PP problem can be solved in . First, we design an algorithm to solve the problem and the problem for any given bound .

Algorithm  . For problem .

Step  0. Initialize , , , , .

Step  1. Calculate the current completion time .

Step  2. If and , then Stop and Return the value .

Step  3. If and , let be the set of -jobs of with the cost at most . If , then Stop and Return infeasible. Otherwise arbitrarily select one -job of and schedule job at position , , , , go to Step  1.

Step  4. If and , we select an -job out of so that and schedule at position , , go to Step  1.

Step  5. If and , let be the set of -jobs of with the cost at most . If , then we select an -job out of so that and schedule at position , , , , , go to Step  1. Otherwise arbitrarily select one -job of and schedule job at position , , , , go to Step  1.

We can apply Algorithm to problem only by exchanging the identities of agent and agent .

Theorem 3. Algorithm solves the problem correctly.

Proof. Suppose is the resulted sequence by applying Algorithm to problem . Let be an optimal sequence of problem ; we only need to prove that . Let be such an -job that ; we denote by the set of jobs prior to job in including job . Let be the last job of scheduled in ; we denote the set of jobs prior to job in including job by . and . According to Algorithm , for each -job , we have . Since , . Furthermore, must be an -job . By the algorithm, we know that . So We complete the proof.

In the following, we state a very popular method to get a Pareto optimal point of problem . The method is first developed in [18] and then applied in [1, 19, 20].

Algorithm . For problem .

Step  0. Call Algorithm to . If algorithm returns infeasible, then let Algorithm stop and returns infeasible. Otherwise let be the returned value . Call Algorithm to , let be the returned value, then we stop the algorithm and return the pair .

Theorem 4. Algorithm returns a Pareto optimal point with . Furthermore, if is also a Pareto optimal point with , then and .

For each schedule , we define the indicator function as below: Here means that is prior to in and vice versa. Furthermore, we set .

Lemma 5. For any two Pareto optimal points and , only if and .

Proof. Since the cost function of job is nondecreasing, , we have for any -job , and for any -job , . Therefore,Note that and are two Pareto optimal points; we have and , . Let be such a -job that which means that ; we denote the job set of jobs prior to in including job by :Let be the last job of scheduled in , and we denote the set of jobs prior to job in including job by : and . By (4), It means that is not a -job but an -job. And we denote the -job by ; thenTherefore, We complete the proof.

Algorithm . For problem .

Step  0. Initialize , .

Step  1. Call Algorithm for problem .

Step  2. If Algorithm returns infeasible, then we stop and output the Pareto optimal points . Otherwise, let be the resulted schedule from Algorithm ; set , , . And go to Step  1.

Theorem 6. Algorithm returns all the Pareto optimal points of problem in .

Proof. It is obvious that Algorithm returns all the Pareto optimal points. We then analyze the complexity of Algorithm . Note that Algorithm can be implemented in ; Algorithm can also be implemented in . For any feasible schedule , . Hence, by Lemma 5, there are at most times of implementation of Algorithm during the running of Algorithm . Furthermore, we can get that Algorithm can be completed in .

Conflict of Interests

The author declares that there is no conflict of interests regarding the publication of this paper.

Acknowledgments

This work was supported by the Natural Sciences Foundation (Grant no. 20142BAB211017) of Jiangxi Province and the School Subject (Grant no. 06162015) of Jiangxi University of Finance and Economics.