A Competitive Two-Agent Scheduling Problem on Parallel Machines with Release Dates and Preemption

We consider a competitive two-agent scheduling problem on multiple identical machines with release dates and preemption. In the scheduling model, there are two agents and each having their own job sets and , respectively. Each job has a release date and the jobs need to be preemptively scheduled on identical machines. For , we show that the trade-off curve of all the Pareto optimal points can be characterized in polynomial time. When is input, we show that can be solved in strongly polynomial time.


Introduction and Problem Formulation
In recent years, multiagent scheduling problems are under extensive research.A multiagent scheduling problem means that there are multiple agents which must compete to perform their own tasks on the common processing resource.Each agent wants to optimize his/her own objective function.The objective function considered in this paper is to minimize the maximum lateness of the jobs.First, let us briefly recall the history of the classic scheduling problems of minimizing the maximum lateness of the jobs that is, there is only one agent in such a problem.Horn [1] considered the problem of scheduling the jobs preemptively on identical machines with release dates and deadlines and showed that it can be determined in strongly polynomial time if the problem has a feasible schedule by reducing it to a network flow problem which is well known to be solved in strongly polynomial time.Sahni [2] presented a faster algorithm to determine if the problem with identical release dates has a feasible schedule.Furthermore, Sahni and Cho [3] showed that it also can be determined in strongly polynomial time if the problem on related machines has a feasible schedule.Lawler and Labetoulle [4] proved that the feasibility problem on unrelated machines can be settled in weakly polynomial time by means of linear programming.Labetoulle et al. [5] studied the problems of scheduling the jobs on the parallel machines preemptively to minimize the maximum lateness of the jobs with release dates.They gave a strongly polynomial-time algorithm to solve the problem on identical machines which is based on the same network flow structure introduced by Horn [1] and a weakly polynomial-time algorithm to solve the problem on uniform machines in terms of the polymatroidal network flow model introduced by Lawler and Martel [6].For the latter, a similar result can be found in Martel [7].The multiagent scheduling models were initially introduced by Baker and Smith [8] and Agnetis et al. [9].Their research focused on the problems of nonpreemptively scheduling the jobs which belong to two agents on a single machine.Agnetis et al. [10] investigated the multiagent single machine problem of finding a nonpreemptive schedule in which the cost of each agent does not exceed a given threshold value which is also studied in Cheng et al. [11].Cheng et al. [12] considered the feasibility model of multiagent scheduling on a single machine for which each agent competes to minimize the total weighted number of his/her own tardy jobs and showed that the problem is strongly NP-hard.For more papers about the multiagent problems of scheduling the jobs nonpreemptively on a single machine, the readers are referred to Yuan et al.

Mathematical Problems in Engineering
[13], Ng et al. [14], and Mor and Mosheiov [15].Leung et al. [16] which initiated the preemptively multiagent scheduling problems investigated the two-agent scheduling problems of scheduling the jobs preemptively on a single machine or identical machines.Yuan et al. [17] studied a competitive two-agent scheduling problem on a single machine with release dates and preemption for which the objective of each agent is to minimize the maximum lateness and showed that all Pareto optimal points can be found in strongly polynomial time.Wan et al. [18] investigated the same twoagent scheduling model for which one agent's objective is to minimize the maximum lateness and the other agent's objective is to minimize the total completion time of his/her jobs.They proved that the problem is NP-hard in the ordinary sense by means of reduction from even-odd partition which is well known to be ordinarily NP-hard [19].
The problems in the paper are stated as follows.There are two agents  and  each having their own job sets J  = {  1 , . . .,     } and J  = {  1 , . . .,     }, respectively.We make the assumption that J  ∩J  = 0.The jobs in J  are called -jobs and the jobs in J  are called -jobs.Each job   ∈ J  ∪ J  has a release date   , a due date   , and a processing time   .And the  =   +   jobs need to be preemptively scheduled on  identical machines.Two agents have the same objective of minimizing the maximum lateness.We use the following notation throughout this paper.A schedule  is called Pareto optimal if there is no schedule  such that   max () ≤   max (),   max () ≤   max (), and at least one inequality strictly holds, that is, a schedule is Pareto optimal for any schedule; if it is better for one agent, then it must be worse for the other agent.We say (  max (),   max ()) is a Pareto optimal point if schedule  is a Pareto optimal schedule.The first problem we consider is to find all the Pareto optimal points and a corresponding schedule for each Pareto optimal point when  = 2 and all the jobs are released at 0. The second problem we consider is to minimize the maximum lateness of agent  with the maximum lateness of agent  bounded by a given threshold  when  is input.
By use of the well-known three-field notation [20], the first and second problems can be formulated as follows.
The rest of the paper is organized as follows.In Section 2, we show that the tradeoff curve of the Pareto optimal points can be characterized in strongly polynomial time for 2|pmtn|(  max :   max ).Section 3 gives a polynomial time algorithm to solve Problem |  , pmtn|  max :   max ≤ .We draw some conclusions and present some further research.
Before we present the characterization of feasibility of 2|pmtn|(  max :   max ), we first state a well-known result from [2].Algorithm Sahni.Consider the following steps.
Step 2. Find a unscheduled job   of J () Step 3. If all the jobs of J () are scheduled, then reset  := +1; else, go back to Step 2.
Step 4. If  =  + 1, then stop; else, go back to Step 2.  1 and  2 denote the current loads of machine 1 and machine 2 in algorithm Sahni, respectively.And algorithm Sahni first schedules the jobs of J (1) , then schedule J (2) and so on.The following theorem is from [2].
"If " Part.When  = 1, which means that all the jobs have the same deadline .By the conditions, we have  max =  1 ≤  and ∑  =1   /2 ≤ .According to the result of [21], we know that there exists a feasible schedule of the  jobs meeting with the same deadline.Now assume that the conclusion holds for  = .We consider the case of  =  + 1.Let J = { 1 ,  2 , . . .,    } = ∪  =1 J () .By the assumption of  = , we know that there exists a feasible schedule  for J. Furthermore, by Theorem 1, we can assume that  is generated by algorithm Sahni.Denote by  and  the loads of machine 1 and machine 2, respectively.By the assumption of  =  + 1 and by the algorithm Sahni, we have that  +    +1 ≤  (+1) and ++∑  +1 =  +1   ≤ 2 (+1) .Similar to McNaughton's algorithm of [21], we can schedule the jobs of J (+1) starting from  to meet with the deadlines of the jobs of J (+1) .Then we can get a feasible schedule for the job set ∪ +1 =1 J () .
By Theorem 2, we can easily get the following lemma.
In the following, let us consider problem 2|pmtn|(  max :   max ).Let ( 1 ,  1 ) and ( 2 ,  2 ) be two Pareto optimal points of 2|pmtn|(  max :   max ); then  1 >  2 means that  1 <  2 .So we can assume  = () such that (, ) is a Pareto optimal point of 2|pmtn|(  max :   max ), and we know that  = () is a strictly decreasing function on .In order to calculate the tradeoff curve of 2|pmtn|(  max :   max ), we must determine the domain  of  and present an efficient calculation of ().Let () be the optimal value of 2|pmtn|  max ≤  :   max then {(, ()) : 0 ≤  ≤  0 } includes all the Pareto optimal points of 2|pmtn|(  max :   max ); that is, {(, ()) :  ∈ } is the remaining set after {(, ()) : 0 ≤  ≤  0 } deletes all the non-Pareto optimal points.We call (, ()) a transit point if the due date order of the jobs in J with the due date of    considered as    +  −  and the due date of    considered as    +(−) are different from the due date order of the jobs in J with the due date of    considered as    +  +  and the due date of    considered as    +(+) for sufficiently small .By Lemma 4, we first get the optimal value  0 of 2|pmtn|  max :   max < +∞ and the optimal value  0 of 2|pmtn|  max < +∞ :   max in polynomial time.We simply assume that  0 =  0 = 0.If not, we can make  0 =  0 = 0 by changing the due dates of the jobs of J  and J  to the appropriate numbers.
Step 1.We get the optimal value  0 of 2|pmtn|  max ≤ 0 :   max , reset the due date    :=    +  0 ,  = 1, 2, . . .,   , and keep the due dates   1 ,   2 , . . .,     unchanged.Let  be the order of the jobs in J according to the due dates from small to large.Set  1 = min 1≤≤  {ℎ(  1 )−  1 }.Let  and let  = () be the numbers such that J has the due date order  when the due date of    is regarded as    +  and the due date of    is regarded as    − .Consider    +  as the deadline of    and    −  as the deadline of    , applying the Theorem 2, subject to  +  ≤  1 , we can find the exact representation of (), where () is a curve of ( 2 ) broken lines and the slopes of the broken lines are increasing and  1 such that ( 1 , ( 1 )) is the transit point in polynomial time.
Step 2. We reset    :=    + ( 1 ) and    :=    +  1 , repeat the process of Step 1 to find the next transit point ( 2 , ( 2 )), go on the process until we find all the transit points and note that the number of the transit points is bounded by     .
In the following, we provide an instance to help the understanding of this algorithm.

𝑃|pmtn|𝐿
In the second phase, a maximum value flow and a minimum capacity cut are found in the network with capacities induced by the value  0 .Next, a value  1 >  0 is determined in such a way that the capacity of this cut is increased to exactly .The procedure is then repeated in the network induced by  1 .This process yields a sequence of increasing trial values   .It terminates when the minimum cut capacity is exactly , that is, at an iteration  where   is the first feasible trial value and therefore the optimum value of   max .We will show that  = (  max{, }).
Suppose a minimum cut with capacity  0 <  is found in the network for  0 .Consider how the capacity of this cut is changed when  0 is increased by some positive amount .The capacity  +1 −   of an arc (  ,   ) (a) stays the same if both of   and  +1 are induced deadlines or not induced deadlines, (b) increases by  if   is not induced deadline and  +1 is induced deadline, and (c) decreases by  if   is induced deadline and  +1 is not induced deadline.
A similar situation holds for the capacities of the arcs (  , ), except that they change by  or − rather than by  or −.All arcs whose capacities are increased are incident with a vertex   of type () of which there are at most .If (  , ) is in the cut, then no (  ,   ) can be forward arc in the cut, so that the cut capacity increases in all arcs incident with   is at most .It follows that eh capacity of the cut is increased by  0 , where  0 is an integer multiplier with  0 ≤   max{, }.We assert that  0 ≥ 1, and let  0 be the next critical value after  0 .Note that The vertex-arc structure of the network remains unchanged for  0 and  0 .Since  0 is a feasible critical value, by the max-flow min-cut theorem, we have that  0 +  0 ( 0 −  0 ) ≥ , which means that  0 ≥ 1. Accordingly, we set  = ( −  0 )/ 0 ,  1 =  0 +  and repeat.
Each cut in the network can be characterized by a pair (,   ), where  is its multiplier and   its capacity.When   is increased to  +1 , the multipliers of cuts do not change, although their capacities indeed do.Suppose that the minimum cut found at iteration  has multiplier   ≥ 1 and capacity   and consider the replacement of   by  +1 .Each cut with multiplier  ≥   will have its capacity increased to at lease .Hence,  +1 <   .Note that   ≥ 1 for all  and  0 ≤   max{, }.It follows that there can be at most  0 ≤   max{, } iterations.
[21] should be evident that the trial value  is feasible if and only if the maximum flow value is  = ∑  =1   , where   is the processing time of   .If the maximum flow value is indeed , a feasible schedule is easily Figure 1: The solid line and the solid point show all the Pareto optimal points and the dotted line and hollow point are the dominated points.constructed:foreachinterval   , the corresponding schedule part can be achieved by applying the McNaughton's algorithm[21].Notice that there are certain critical trial values of   max .There are at most   ( +   ) values  such that    +  =    or    +  =    or    +  =   ℎ .The vertex-arc structure of the network remains unchanged for all trial values between two successive critical values.
x y