CON/SLK due date assignment and scheduling ... - Wiley Online Library

2 downloads 59 Views 152KB Size Report
Yunqiang Yin,1 Du-Juan Wang,2 Chin-Chia Wu,3 T.C.E. Cheng4. 1Faculty of Science, Kunming University of Science and Technology, Kunming 650093, China.
CON/SLK Due Date Assignment and Scheduling on a Single Machine with Two Agents Yunqiang Yin,1 Du-Juan Wang,2 Chin-Chia Wu,3 T.C.E. Cheng4 1

Faculty of Science, Kunming University of Science and Technology, Kunming 650093, China 2

Transportation Management College, Dalian Maritime University, Dalian 116023, China 3

4

Department of Statistics, Feng Chia University, Taichung, Taiwan

Department of Logistics and Maritime Studies, The Hong Kong Polytechnic University, Hung Hom, Kowloon, Hong Kong

Received 20 December 2015; revised 26 July 2016; accepted 26 July 2016 DOI 10.1002/nav.21700 Published online 13 August 2016 in Wiley Online Library (wileyonlinelibrary.com).

Abstract: We consider scheduling problems involving two agents (agents A and B), each having a set of jobs that compete for the use of a common machine to process their respective jobs. The due dates of the A-jobs are decision variables, which are determined by using the common (CON) or slack (SLK) due date assignment methods. Each agent wants to minimize a certain performance criterion depending on the completion times of its jobs only. Under each due date assignment method, the criterion of agent A is always the same, namely an integrated criterion consisting of the due date assignment cost and the weighted number of tardy jobs. Several different criteria are considered for agent B, including the maxima of regular functions (associated with each job), the total (weighted) completion time, and the weighted number of tardy jobs. The overall objective is to minimize the performance criterion of agent A, while keeping the objective value of agent B no greater than a given limit. We analyze the computational complexity, and devise polynomial or pseudo-polynomial dynamic programming algorithms for the considered problems. We also convert, if viable, any of the devised pseudopolynomial dynamic programming algorithms into a fully polynomial-time approximation scheme.© 2016 Wiley Periodicals, Inc. Naval Research Logistics 63: 416–429, 2016 Keywords: scheduling; two agents; due date assignment

1. 1.1.

INTRODUCTION Problem Definition

We consider the following scheduling problem: There are two agents, called agents A and B, each with its own set of nonpreemptive jobs to be processed on a common machine that is continuously available from time zero onwards. The machine can handle at most one job at a time. Agent A possesses the job set J A = {J1A , J2A , · · · , JnAA } while agent B possesses the job set J B = {J1B , J2B , · · · , JnBB }, which are called the A-jobs and B-jobs, respectively. The processing time of job JjA (resp., JkB ) is denoted by pjA (resp., pkB ), and its weight by wjA (resp., wkB ) which represents the importance of job JjA (resp., JkB ) relative to the other jobs in the system. Given a schedule, the completion time of job JjA (resp., JkB ) Correspondence to: Du-Juan Wang ([email protected]) © 2016 Wiley Periodicals, Inc.

is denoted by CjA (resp., CkB ). In addition, associated with each job JjA is an assignable due date djA , which needs to be determined by the decision maker, while associated with each job JjB is an exogenously given due date dkB . Two classical due date assignment methods are used to determine the due dates of A-jobs, which are described as follows: i. The common (CON) due date assignment method (referred to as the CON method): all the A-jobs are assigned the same due date, that is, djA = d A for j = 1, · · · , nA , where d A ≥ 0 is a decision variable; ii. The slack (SLK) due date assignment method (referred to as the SLK method): all the A-jobs are given an equal flow allowance reflecting equal waiting times, that is, djA = pjA + q A for j = 1, · · · , nA , where q A ≥ 0 is a decision variable. Given a feasible schedule, a job is referred to early if it finishes its processing before or exactly on its due date;

Yin et al.: CON/SLK Due Date Assignment and Scheduling

nA A B otherwise, it is tardy. Let P A = = j =1 pj (resp., P nB B   A B n n A B A B k=1 pk ) and W = j =1 wj (resp., W = k=1 wk ) be the total processing time and total weight of A-jobs (resp., A nB B B-jobs), respectively, and P = nj =1 pjA + k=1 pk be the total processing time of all the n = nA + nB jobs. Each agent wishes to optimize its own performance criterion, which depends only on the completion times of its own jobs. We consider the constrained optimization problem in which the objective value of agent A is to be minimized, while the objective value of agent B must be kept no larger than a fixed threshold QB . Specifically, agent A desires to minA A imize ϕd A + nj =1 wjA UjA and ϕq A + nj =1 wjA UjA under the CON and SLK methods, respectively, where ϕ is a nonnegative parameter denoting the unit due date assignment cost for the A-jobs, and UjA = 1 if CjA > djA and UjA = 0 otherwise; and agent B desires to minimize one of the following criteB B B B ria: fmax , nk=1 CkB , nk=1 wkB CkB , and nk=1 wkB UkB , where B fmax = max{fkB (CkB )} with each fkB (.) being nondecreasing function of the completion time of job JkB (maximum of regular functions), and UkB = 1 if CkB > dkB and UkB = 0 otherwise. In the sequel, we denote by CONF (resp., CONC, CONWC, and CONWT ) the problem of minimizing the performance criterion of agent A, that is, ϕd A + nA A A B j =1 wj Uj , while keeping the objective value of fmax nB B nB  B (resp., k=1 Ck , k=1 wkB CkB , and nk=1 wkB UkB ) no greater than the given limit QB under the CON method, and denote by SLKF, SLKC, SLKWC, and SLKWT the corresponding problems under the SLK method. To motivate the scheduling model, we consider the practical example presented in Yin et al. [22], where the manufacturer negotiates with agent A for a common due date (or an equal waiting time) for A-jobs such that all the early A-jobs are delivered together to agent A on the common due date (or at the completion time of the last early A-job). Another application of the model is found in the shipping industry as discussed in Yin et al. [23], where there is a port (a machine) that serves the ships (jobs) from two shipping firms (two agents). One of the shipping firms is a long-term customer (agent A) and the port will negotiate with it to set the due dates for serving its ships, while the other shipping firm (agent B) is an ad hoc customer and the due dates for serving its ships are exogenously given. From the perspective of the port, it seeks to determine a schedule to serve the ships of the two agents to minimize the objective value of agent A while keeping the objective value of agent B no greater than a given limit.

1.2.

Literature Review

In classical scheduling, all the jobs belong to a single decision maker that seeks to process the jobs in the most profitable

417

(or least costly) way (Agnetis [1]), typically minimizing a certain performance criterion. If multiple optimization criteria are involved, the problem becomes a multicriterion scheduling problem, in which each criterion depends on all the jobs. This is not the case where the jobs are not equivalent and applying the same performance criterion to all the jobs may not be appropriate. For example, consider the situation where different agents compete to perform their respective jobs on common processing resources (Agnetis [1]). In the literature, problems with scheduling criteria associated with subsets of the jobs are called “multi-agent scheduling.” The pioneering work on multiagent scheduling can be traced to Agnetis et al. [2] and Baker and Smith [4], in which the authors considered the scheduling problems arising when two agents, each with a nonpreemptive job set, compete to process their respective jobs on a shared processing facility and have their own performance criteria to optimize. Specifically, Baker and Smith [4] focused on minimizing an integrated criterion that combines the two agents’ own performance criteria, in which the criteria involved are makespan, maximum lateness, and total weighted completion time. Agnetis et al. [2] studied the constrained optimization problems on a single machine and in the job shop environment, in which one agent aims at optimizing its performance criterion, subject to the cost of the other agent not exceeding a given upper bound. As then, research on multiagent scheduling has been thriving in the scheduling field. Variants of the scheduling problem with multiple agents have been studied with applications in areas such as runway scheduling (Soomer and Franx [18]), project scheduling (Knotts et al. [9]), railway scheduling (Brewer and Plott [5]), and rescheduling (Pessan et al. [17]). The reader may refer to Agnetis et al. [3], and Perez-Gonzalez and Framinan [16], and the references in them for comprehensive surveys on multiagent scheduling. Among these studies, many consider due date related criteria. Leung et al. [13] studied the scheduling problems with two agents on a single machine or identical parallel machines, and extended the models investigated in Agnetis et al. [2] by including the total tardiness criterion, and allowing job preemption and jobs with release dates. Mor and Mosheiov [15] considered the minmax and minsum earliness single-machine scheduling problems on a single machine in the two-agent setting. Wan et al. [19] considered two-agent scheduling with resource-dependent processing times, in which one agent’s job processing times can be compressed by allocating extra resources to the jobs at an additional cost. Gerstl and Mosheiov [6] investigated just-intime (JIT) scheduling with the objective of finding a schedule to minimize the total deviation of the job completion times from a common due date for one agent, while keeping the maximum of the deviations of the job completion times from the common due date for the other agent no greater than a given limit. Yin et al. [21] studied JIT scheduling on unrelated parallel machines, where each agent desires to maximize the Naval Research Logistics DOI 10.1002/nav

418

Naval Research Logistics, Vol. 63 (2016)

weighted number of its just-in-time jobs that are completed exactly on their due dates. Li and Yuan [14] studied twoagent scheduling on a common unbounded parallel-batching machine, where any number of jobs can be processed simultaneously in a batch, while Kovalyov et al. [11] and Yin et al. [24] focused on the unbounded serial-batching machine case, where all the jobs in a batch are considered to have been completed together at the completion time of the last job in the batch. Although research on multiagent scheduling with due date related criteria has grown rapidly over the past decade, most studies assume that the due dates are exogenously given and little work has dealt with the case where the due dates are assignable, that is, the due dates are decision variables. Due date assignment has become a challenging issue and a promising topic for scheduling research. The reason behind this may be as follows: To reduce the tardiness penalty, a firm strives hard to set attainable due dates, whereby setting long due dates may not be acceptable to customers or the firm has to offer heavy price discounts to retain customers. Therefore, it is crucial for the firm to make a trade-off between incurring high inventory holding costs and reaping the benefits of fulfilling orders in time (Gordon et al. [7], Kaminsky and Hochbaum [8]). To the best of our knowledge, the only studies that consider two-agent scheduling with due date assignment are Wang et al. [20] and Yin et al. [22]. Specifically, Wang et al. [20] considered two-agent single-machine scheduling with three due date assignment methods, namely the CON, SLK, and DIF (the jobs can be assigned different due dates) methods are adopted. Each of the two agents desires to minimize an integrated criterion including the due date assignment cost, earliness, and weighted number of its tardy jobs. Yin et al. [22] considered two-agent scheduling where the A-jobs’ due dates are decision variables to be determined using the DIF method, while the B-jobs’ due dates are given in advance. The objective is to minimize the sum of the due date assignment cost and weighted number of tardy A-jobs, subject to an upper limit on the maximum of a regular scheduling function (associated with the B-jobs) or the number of tardy B-jobs. Compared with Wang et al. [20] and Yin et al. [22], we focus in this study on due date assignment in the two-agent scheduling setting and address the following issues:

i. We study the situation in which the due dates of one agent’s jobs are decision variables to be determined using the CON and SLK methods while the due dates of the other agent’s jobs are given in advance; ii. We consider more classical scheduling criteria, including maximum of regular functions, total (weighted) completion time, and weighted number of tardy jobs. Naval Research Logistics DOI 10.1002/nav

The aim of this article is twofold. One is to study the more realistic and complex scheduling models involving the CON and SLK methods in the two-agent setting. The other is to ascertain the computational complexity status and provide solution procedures, if viable, for the problems under consideration. We organize the rest of the paper as follows: In Section 2, we present some structural properties of the optimal schedules for the considered problems. In Sections 3 and 4, we show that the problems CONF, SLKF, CONC, and SLKC are all N P-hard, develop pseudopolynomial time procedures for solving them, establishing that they are N P-hard in the ordinary sense, and show that they admit fully polynomialtime approximation schemes (FPTASs). In Sections 5 and 6, we show that the problems CONWC, SLKWC, CONWT, and SLKWT are all N P-hard and develop pseudopolynomial time procedures to solve them, establishing that they are N P-hard in the ordinary sense. The last section concludes the article and suggests some topics for future research. 2.

PRELIMINARY ANALYSIS

This section presents some structural properties of optimal schedules for the problems under consideration, which we will use in the design of algorithms in the following sections. LEMMA 2.1: For each considered problem, there is an optimal schedule, if one exists, in which 1. All the jobs are scheduled consecutively without idle time and the first job starts at time 0; 2. All the early jobs are scheduled before all the tardy jobs. PROOF: The proof is analogous to that of Lemma 2.1 in Wang et al. [20].  For each B-job JjB , as in Agnetis et al. [2], let us define a deadline DjB such that fjB (CjB ) ≤ QB for CjB ≤ DjB and −1 fjB (CjB ) > QB for CjB > DjB . (If the inverse function fjB (.) is available, the deadlines can be computed in constant time; otherwise, this requires logarithmic time.) LEMMA 2.2: Under the CON method, there is an optimal schedule, if one exists, in the form (πB , πA , πB , π ) that possesses the following properties: 1. The optimal due date dA for all the A-jobs equals either the completion time of the last early A-job or 0; 2. The partial schedule πA contains all the early A-jobs only (which may be empty) in which the jobs are sequenced in an arbitrary order;

Yin et al.: CON/SLK Due Date Assignment and Scheduling  3. The partial schedules πB and sequences nBπB are B B B of the (early when γ = w U j =1 j j ) B-jobs, either of which may be empty, in which the jobs in πB ∪ πB are sequenced in nondecreasing order of B DjB (resp., pjB , djB ) when γ B = fmax (resp., γ B =  nB n B B B B B = j =1 Cj , γ j =1 wj Uj ), while the jobs in  πB and πB are sequenced in nondecreasing order of B pjB /wjB , respectively, when γ B = nj =1 wjB CjB ; 4. The partial schedule π contains all the nBtardyB AB jobs and tardy B-jobs when γ B = j =1 wj Uj (which may be empty), if any, in which the jobs are sequenced in an arbitrary order.

PROOF: The proofs of (1) and (4) are straightforward. We only prove (2) and (3). (2) Suppose that there is an optimal schedule S with property (1) that does not possess property (2). That is to say, there exists at least one (early) B-job between two early A-jobs. Without loss of generality, we assume that S = (πB , πA , πB , πA , π), where πA and πA are the nonempty job sequences of early A-jobs, and πB is the nonempty job sequence of (early) B-jobs. Now construct a new schedule S  from S by removing the jobs in πB and re-inserting them just before batch πA while keeping the other jobs the same as in S. By property (1), in S  the common due date d A is the same as that in S, and the completion time of each B-job in πB or πB is no larger than that in S. As the criterion of agent B is regular, that is, nondecreasing on the completion times of B-jobs, the objective value of agent B in S  is no larger than that in S, implying that S  is feasible. Consequently, S  is no worse than S. Continuing in this way when necessary, the resulting schedule will satisfy property  A (2).AIn Aaddition, since the criterion of agent A is ϕd A + nj =1 wj Uj , the job sequence in πA is immaterial. (3) By property (2), the jobs in πB and πB are all Bjobs. Then, it follows from the proof of Lemmas 5.3 and 5.4 in Agnetis et al. [2] that there is an optimal schedule in which the jobs in πB ∪ πB are arranged according to the B and nondecreasing order of DjB and pjB when γ B = fmax nB B B γ = j =1 Cj , respectively, and from the proof of Lemma 7.1 in Agnetis et al. [2] that there is an optimal schedule in which the jobs in πB ∪ πB are arranged according to of djB B when γ B = nj =1 wjB UjB . In addition, by the well-known result in Lawler [12], sequencing the jobs in πB and πB in nondecreasing order of pjB /wjB , respectively, will be optimal B wjB CjB .  when γ B = nj =1 LEMMA 2.3: Under the SLK method, there is an optimal schedule, if one exists, in the form (πB , πA , πB , π ) that possesses the following properties: 1. The optimal slack time qA for all the A-jobs equals either the start time of the last early A-job or 0;

419

2. The partial schedule πA contains all the early A-jobs only (which may be empty) in which the last early A-job has the maximum processing time among all the early A-jobs;  3. The partial schedules πB and sequences nBπB are B B B of the (early when γ = w U j =1 j j ) B-jobs, either of which may be empty, in which the jobs in πB ∪ πB are sequenced in nondecreasing order of B DjB (resp., pjB , djB ) when γ B = fmax (resp., γ B =  nB n B B B B B = j =1 Cj , γ j =1 wj Uj ), while the jobs in  order of πB and πB are sequenced in nondecreasing B pjB /wjB , respectively, when γ B = nj =1 wjB CjB ; 4. The partial schedule π containsall the tardy A-jobs B and tardy B-jobs when γ B = nj =1 wjB UjB (which may be empty) in which the jobs are sequenced in an arbitrary order. PROOF: The proof of (3) is analogous to that of Lemma 2.2 and the proof of (4) is straightforward. We only prove (1) and (2). 1. Suppose that there is an optimal schedule S with property (4). It suffices to show that the last early A A-job (the kth A-job, denoted as J[k] ) in S is the only on-time A-job. It is evident that the last early A-job must be on time. Now suppose that in S there exists another on-time A-job, for example, for some job A J[jA] , 1 ≤ j ≤ k − 1, C[jA ] = d[jA] = q A + p[j ] . Then A A A A A A C[j +1] ≥ C[j ] + p[j +1] = q + p[j ] + p[j +1] > A , which contradicts property d[jA+1] = q A + p[j +1] A (4). It follows that J[k] is the only on-time A-job, so A A q = C[k−1] , as required. 2. The proof that the partial schedule πA contains all the early A-jobs only (which may be empty) is analogous to that of (2) in Lemma 2.2. In what follows, we show that the last early A-job in πA has the maximum processing time among all the early A-jobs. Assume that there are m A-jobs, say JmA1 , · · · , JmAm , that are assigned in πA , that is, scheduled as early jobs, and the first job starts at t. Then  the objecA tive value of agent A is equal to ϕ(t + m−1 k=1 p[k] ) +  A A JjA ∈J A \{JmA1 ,··· ,JmAm } wj , where p[k] denotes the processing time of the job scheduled in the kth position in πA . It is evident that it is optimal to assign the job among {JmA1 , · · · , JmAm } with the maximum processing time to the last position in πA .  Hereafter, we assume that A-jobs are sequenced in the longest processing time (LPT) order, the B-jobs are B , sequenced in nondecreasing order of DjB when γ B = fmax B in the shortest processing time (SPT) order when γ =  nB B j =1 Cj , in the weighted shortest processing time (WSPT) Naval Research Logistics DOI 10.1002/nav

420

Naval Research Logistics, Vol. 63 (2016)

B order when γ B = nj =1 wjB CjB , and in the earliest due date B wjB UjB . (EDD) order when γ B = nj =1

3.

B PROBLEMS WITH THE CRITERION fmax

This section focuses on the problems CONF and SLKF. In the following subsections, we first show that both problems are N P-hard in the ordinary sense even when the criterion B of agent B is the maximum lateness, that is, fmax = LBmax , and then show that each of them admits an FPTAS.

3.1.

Complexity Analysis

Partition: Given a finite set I of h positive integers aj ,  there two disjoint j = 1, · · · , h such that hj=1 aj = 2K, are subsets I 1 and I 2 of {1, 2, · · · , h} such that j ∈Ii aj = K for i = 1, 2? B THEOREM 3.1: The problem CONF with fmax = LBmax is N P-hard.

PROOF: Given an instance of Partition, consider the following instance of decision version of the problem CONF the A such that ϕd A + nj =1 wjA UjA ≤ QA and LBmax ≤ QB . Agent A has nA = h jobs, associating with processing times pjA = aj and weights wjA = 2aj for j = 1, · · · , h. Agent B has only one job, associating with a processing time p1B = 3K and due date d1B = 4K. Finally, set ϕ = 1, QA = 3K, and QB = 0. Analogous to the proof of Lemma 4.1 in Wang et al. [20], it is easy to see that there is a solution to the instance of Partition if and only if there is a feasible solution to the decision version of the problem CONF.  B THEOREM 3.2: The problem SLKF with fmax = LBmax is N P-hard.

PROOF: Given an instance of Partition, consider the following instance of  the decision version of the problem SLKF A such that ϕq A + nj =1 wjA UjA ≤ QA and LBmax ≤ QB . Agent A has nA = h + 1 jobs, having processing times pjA = aj , ph+1 = 3K, weights wjA = 2aj , and wh+1 = 4K for j = 1, · · · , h. Agent B has only one job, having processing time p1B = 3K and due date d1B = 7K. Finally, set ϕ = 1, QA = 3K, and QB = 0. Analogous to the proof of Lemma 4.2 in Wang et al. [20], it is easy to see that there is a solution to the instance of Partition if and only if there is a feasible solution to the decision version of the problem SLKF.  Naval Research Logistics DOI 10.1002/nav

3.2.

Pseudopolynomial Time Dynamic Programming Algorithm

This subsection develops a pseudopolynomial time dynamic programming (DP) algorithm for the problems CONF and SLKF, respectively, establishing that both problems are N P-hard in the ordinary sense. The algorithm exploits the property stated in Lemmas 2.1–2.3. To find the optimal schedule, we need to determine the suitable k such that the early A-jobs are scheduled between the kth B-job and (k + 1) th B-job. Thus, we need to enumerate all the possible values of k. For each k = 0, 1, · · · , nB , we denote the resulting subproblems as CONFk and SLKFk, j respectively, and let k = minj =k+1,··· ,nB {DjB − i=1 piB } denote the maximum time unit that can be inserted between B jobs JkB and Jk+1 . We now develop a forward DP algorithm W T MDPk (V ) to solve the subproblems CONFk and SLKFk using the trial state representation, where V is an upper limit on the above problems. It is worth noting that scheduling all the A-jobs tardy is a feasible solution, if the problem instance is feasible, for both of the problems. Hence, we can set V = W A . Algorithm W T MDPk (V ) contains nA + 1 phases. For each j = 0, 1, · · · , nA , let I(j ) be the generated state set in the jth phase. Any state in I(j ) is a vector (t, f A ) encoding a feasible subschedule for the first j jobs J1A , J2A , · · · , JjA , in which t stands for the total processing time of the early A-jobs in the partial schedule and F A measures agent A’s objective value of the subschedule. The state space I(j ) is dynamically constructed from I(j − 1), j = 1, · · · , n. It is initialized by setting I(0) = {(0, 0)}. For each state (t, f A ) ∈ I(j − 1), to construct a new state, a decision that scheduling job JjA as early or tardy is necessary. Thus, we need to consider the following two cases.

Case 1: Job JjA is scheduled as early. This will increase t by pjA , which is feasible only if t + pjA ≤ k . Job JjA generates a cost ϕpjA to agent A’s objective under the CON method, and generates a cost zero if t = 0, which indicates that job JjA is the first early A-job in the current subschedule that will be the last early A-job in the final schedule and ϕpjA otherwise under the SLK method. In  addition, if t = 0, ϕ ki=1 piB should also be added to the objective value of agent A for both methods. Moreover, since V is an upper bound on the problems, this case can be dropped if the resulting objective value of agent A is larger than  V. Hence, if t = 0, we add states (t + pjA , f A + ϕ( ki=1 piB + pjA )) and (t + pjA , f A +   ϕ ki=1 piB ) to I(j ) if f A + ϕ( ki=1 piB + pjA ) ≤ V  and f A + ϕ ki=1 piB ≤ V under the CON and SLK methods, respectively, and t + pjA ≤ k ; otherwise, add

Yin et al.: CON/SLK Due Date Assignment and Scheduling

state (t + pjA , f A + ϕpjA ) to I(j ) if f A + ϕpjA ≤ V and t + pjA ≤ k under both methods. Case 2: Job JjA is scheduled as tardy. In this case, under both methods, job JjA generates a cost wjA to agent A’s objective. Thus, we add state (t, f A + wjA ) to I(j ) if f A + wjA ≤ V .

To further reduce the state space, we provide the following elimination rule.

421

LEMMA 3.3: For any two states (t, f A ) and (t  , f A ) in I(j ) with t ≤ t  and f A ≤ f A , keep the former state in I(j ). PROOF: That the latter state can be eliminated stems from the fact that any later states generated from this state would not lead to a smaller f A value than those of similar states generated from the former state.  In summary, we formally describe Algorithm W T MDPk (V ) for the subproblems CONFk and SLKFk as follows:

WT-Max-DP Algorithm W T MDPk (V ) Step 1. [Initialization] Set I(0) = {(0, 0)}. Step 2. [Generation] Generate I(j ) from I(j −1) For j = 1 to nA do Set I(j ) = ∅; For each (t, f A ) ∈ I(j − 1) do /∗ Corresponding to Case 1 ∗ / If t + pjA ≤ k , then If t = 0, then

k

piB + pjA ) ≤ V , then /∗ For the CON method only  set I(j ) ← I(j ) ∪ {(t + pjA , f A + ϕ( ki=1 piB + pjA ))};  If f A + ϕ ki=1 piB ≤ V , then /∗ For the SLK method only  set I(j ) ← I(j ) ∪ {(t + pjA , f A + ϕ ki=1 piB )};

If f A + ϕ(

i=1

Else If f A + ϕpjA ≤ V , then set I(j ) ← I(j ) ∪ {(t + pjA , f A + ϕpjA )}; /∗ Corresponding to Case 2 ∗ / If f A + wjA ≤ V , then set I(j ) ← I(j ) ∪ {(t, f A + wjA )}; Endfor [Elimination] /∗ Update set I(j ) ∗ / For any two states (t, f A ) and (t  , f A ) in I(j ) with t ≤ t  , f A ≤ f A , eliminate the latter one. Endfor Step 3. [Result] The optimal objective value is f A∗ (k) = min{fA |(t, f A ) ∈ I(nA )}.

Note that the [Generation] step is the most time consuming part of Algorithm W T MDPk (V ). At the beginning of iteration j, there are at most min{P A , W A } states in F(j ) after the elimination process since there are at most PA possible values for t and W A is an upper limit on agent A’s objective. Thus, after nA iterations,

Step 3 can be executed in O(nA min{P A , W A }) time, which is also the overall time complexity of Algorithm W T MDPk (V ). Combining Algorithm WTMDP(k), we formally develop an algorithm for the problems CONF and SLKF described as follows:

Naval Research Logistics DOI 10.1002/nav

422

Naval Research Logistics, Vol. 63 (2016)

WT-Max-DP Algorithm WTMDP(V) Step 1. [Preprocessing] Re-index the A-jobs in the LPT order, calculate the deadline of each B-job JjB from fj (DjB ) = QB , and re-index the B-jobs in nondecreasing order of DjB . Step 2. [Initialization] Set F ∗ = +∞. Step 3. [Generation] For k = 0 to nB do j B Set k = minnj =k+1 {DjB − i=1 piB }; Implement Algorithm W T MDPk (V ) to obtain F A∗ (k); If F A∗ (k) < F ∗ , then set F ∗ = F A∗ (k); Endfor Step 4. [Result] The optimal objective value is F ∗ and the corresponding optimal solution can be found by backtracking. In view of the above analysis, we conclude with the following result. THEOREM 3.4: Algorithm WTMDP(V) solves the problems CONF and SLKF in O(nA nB min{P A , W A }) time. 3.3.

Fully Polynomial-Time Approximation Schemes

iii. For every state (t, f A ) in the untrimmed state set I(j ),  I(j ) contains some state ( t, fA ) such that f A A and f fall within the same subinterval and  t ≤ t. We give a formal description of Algorithm W T MDPkε (L(k), V (k)) in the following. Algorithm W T MDPkε (L(k), V (k)) Step 1.  [Initialization] Partition the interval [0, V (k)]  V (k) into subintervals of equal size δ as follows: δ [0, δ), [δ, 2δ), · · · , [( V (k)/δ − 1)δ, V (k)]; Step 2. [Generation] Generate  I(j ) from  I(j − 1) For j = 1 to nA do [State Generation] Perform the same operations as those in Algorithm W T MDPk (V (k)); [Elimination] /∗ Update set  I(j ) ∗ /

1. For any two states (t, f A ), (t  , f A ) ∈  I(j ), where f A and f A are in the same subinterval with t ≤ t  , delete the latter one; 2. For any two states (t, f A ), (t  , f A ) ∈  I(j ) with t ≤ t  , delete the latter one;

Endfor

This subsection first shows how to convert Algorithm W T MDPk (V ) into an FPTAS by using the interval partitioning technique under the CON method, which implies that the problem CONF admits an FPTAS, and then briefly discuss how the result can be generalized to the SLK method. The main idea is to trim the state space of Algorithm W T MDPk (V ) by merging certain states that are “close” to one another into a single state. While undertaking these merging, we must ensure that the resulting errors cannot propagate in an uncontrolled way. Let L(k) and V (k), k = 0, 1, · · · , nB , be a pair of lower and upper bounds for the problem CONF. Given an arbitrary ε > 0, define δ = L(k)ε and split the interval [0, V (k)] into nA   V (k) equal-size subintervals with the last subinterval being δ possibly smaller. This   will result in a partition of [0, V (k)] into a set of V δ(k) subintervals. In developing the approximation scheme, our Algorithm W T MDPkε (L(k), V (k)) trims down every state set I(j ) in Algorithm W T MDPk (V ) to a relatively small state set  I(j ) at the end of the jth phase, j = 1, 2, · · · , nA . The resulting state set  I(j ) satisfies the following properties:

PROOF: Note that δ denotes the maximum length of any subinterval in the partition with respect to the objective of agent A. Thus, for every eliminated state, we keep the one whose f A value may be smaller by at most  ≤ δ, where  is the loss in the f A value. Since this loss is additive, the overall error in the f A value after nA stages is not more than nA  = L(k)ε. Thus, the value of fA will be upper bounded by f A + L(k)ε ≤ (1 + ε)f A . For the time complexity of Algorithm W T MDPkε (L(k), V (k)), the whole interval [0, V (k)] is divided into a set of V (k)/δ = nA V (k)/L(k)ε subintervals. Thus, we have | I(j )| ≤ nA V (k)/L(k)ε and the time complexity of Algorithm W T MDPkε (L(k), V (k)) is O(n2A V (k)/L(k)ε) indeed. 

 I(j ) is a subset of I(j );  I(j ) does not contain any two states in the same subinterval;

In what follows, for each k = 0, 1, · · · , nB , we show how to derive an initial lower bound L(k) and upper bound L(k) for the subproblem CONFk. To do this, we need to solve

i. ii.

Naval Research Logistics DOI 10.1002/nav

Step 3. [Optimization] f A (k) = min{f A |(t, f A ) ∈  I(nA )}. THEOREM 3.5: For any ε > 0 and eliminated state (t, f A ), Algorithm W T MDPkε (L(k), V (k)) finds in t, fA ) such that O(n2A V (k)/L(k)ε) time a solution pair ( t ≤t A A  and f ≤ (1 + ε)f .

Yin et al.: CON/SLK Due Date Assignment and Scheduling

an auxiliary problem such that early A-jobs are scheduled B between jobs JkB and Jk+1 with the objective of minimizing A A B maxJjA ∈J A wj Uj while keeping the objective value of fmax no greater than the given limit QB , which can be solved to optimally as follows: insert the first possible A-job with the B maximum wjA between jobs JkB and Jk+1 ; similarly, insert the second possible A-job with the maximum wjA immediately after the first A-job; this process is repeated until no A-job can be inserted. This takes O(nA log nA ) time. The following lemma provides an initial lower bound and upper bound for the subproblem CONFk. LEMMA 3.6: Let L(k) and f (k) be the optimal solution values of the auxiliary problem and subproblem CONFk, respectively. Then   k

 B A max ϕ pi + pι , L(k) A∗

i=1

≤f

A∗



  k  B A (k) ≤ nA max ϕ pi + pι , L(k) , i=1

where ι = argJ A ∈{J A | ki=1 pB +pA ≤k } max{pjA } j

i

i

j

k

B i=1 pi

+ pιA ), L(k)}

PROOF: It is clear that max{ϕ( is a lower bound for the subproblem CONFk. Let S be an optimal solution for the auxiliary problem, which is also feasible for the subproblem CONFk. Due to the fact that JιA is the job with the maximum processing time that can be scheduled early and L(k) is the optimal  solution value of the auxiliary problem, we have nA max{ϕ( ki=1 piB + pιA ), L(k)} ≥ ϕ( ki=1 piB +  A A ≥ ϕ( ki=1 piB + |E k (S)|pι ) A+ |J \ Ek (S)|L(k) A A A∗ (k), JjA ∈Ek (S) pj ) + JjA ∈J A \Ek (S) wj = f (S) ≥ f where Ek (S) denotes the set of early A-jobs in S, as required.  k Lemma 3.6 indicates that L(k) = max{ϕ( i=1 piB +  pιA ), L(k)} and V (k) = nA max{ϕ( ki=1 piB + pιA ), L(k)} is a pair of lower and upper bounds for the subproblem CONFk with nA = V (k)/L(k). However, this ratio can be further improved to a constant, which can be achieved by an auxiliary algorithm. Note that Algorithm W T MDPkε (L(k), V (k)) possesses the following properties: i. For any ε, L(k), V (k), and an arbitrary problem instance, Algorithm W T MDPkε (L(k), V (k)) gives a solution with a value f A (k) ≤ (1+ 2ε )L(k)+ 2ε V (k) if f A∗ (k) ≤ V (k); ii. The time complexity of W T MDPkε (L(k), V (k)) is V (k) ) in the problem bounded by a polynomial P (X, εL(k) V (k) instance length X and in the value εL(k) .

423

Thus, borrowing the idea for improving the bounds introduced by Kovalyov [10], we can develop an algorithm to find a number f A0 (k) such that f A0 (k) ≤ f A∗ (k) ≤ 7 A0 f (k). In this algorithm, a binary search in the interval 2 [L(k), V (k)] is applied. For each trial value F, Algorithm W T MDPkε (F , 2F ) is called. The algorithm can be formally described as follows. Algorithm BIP Step 1. Set l = 1. Step 2. Set F l

=

2l−1 L(k) and apply Algorithm

W T MDPkε (F l , 2F l ). If it returns a solution with a value F A ≤ 27 F l , then set f A0 (k) = F l and stop. Otherwise, set l = l + 1 and go to Step 2. THEOREM 3.7: If 0 < L(k) ≤ f A∗ (k) ≤ V (k) and the approximation scheme W T MDPkε (L(k), V (k)) satisfies properties (i) and (ii), then Algorithm BIP generates a value f A0 (k) such that f A0 (k) ≤ f A∗ (k) ≤ 27 f A0 (k) in (k) O(P (X) log VL(k) ) time. PROOF: The proof is analogous to that of Theorem 1 in Kovalyov [10].  Our alternative approximation schedule, which is based on the family of algorithms W T MDPkε (L(k), V (k)) is given as follows:  Algorithm W T MDP kε Step 1. Obtain a pair of initial bounds [L(k), V (k)] by Lemma 3.6. Step 2. Implement Algorithm BIP to obtain a pair of tight bounds [f A0 (k), 27 f A0 (k)]. Step 3. For any given ε, if ε ≥ 25 f A0 (k), then stop. Otherwise, run Algorithm {W T MDPkε (f A0 (k), 27 f A0 (k))} to obtain the corresponding solution. Note that if ε ≥ 25 f A0 (k), then 27 f A0 (k) ≤ (1 + ε)f A0 (k) ≤ (1 + ε)f A∗ (k), which implies that 27 f A0 (k) is already a (1 + ε)-approximate solution value. Combining Theorem 3.5, Lemma 3.6, and Theorem 3.7, we conclude with the following result.  THEOREM 3.8: Algorithm W T MDP kε forms an FPTAS that finds a (1+ε)-approximation solution for the subproblem CONFk in O(n2A /ε + n2A log n) time. As a consequence of Theorem 3.8, the following result holds. Naval Research Logistics DOI 10.1002/nav

424

Naval Research Logistics, Vol. 63 (2016)

THEOREM 3.9: The problem CONF admits an FPTAS with a running time O(n2A nB /ε + n2A nB log nA ). Under the SLK method, it is difficult to obtain initial lower bound and upper bound since the contribution of the last early A-job to agent A’s objective is zero. To obtain an FPTAS for this case, we need to solve a series of subproblems by fixing a feasible A-job as the last early A-job for each given k = 0, 1, · · · , nB . Each such subproblem is equivalent to the CON due date assignment case. Thus, we conclude with the following result. THEOREM 3.10: The problem SLKF admits an FPTAS with a running time O(n3A nB /ε + n3A nB log nA ).

4.

PROBLEMS WITH THE CRITERION

NB

J =1

CJB

This section focuses on the problems CONC and SLKC, which are both N P-hard. In fact, given an instance of Partition, we can construct an instance of the decision version of the problem CONC (resp., SLKC) that is similar to that of CONF (resp., SLKF). The only difference is that we let QB = 4K (resp., QB = 7K) under the CON (resp., SLK) method. Analogous to the proofs of Lemmas 4.1 and 4.2 in Wang et al. [20], we can conclude that there is a solution to the instance of Partition if and only if there is a feasible solution to the decision version of the problem CONC (resp., SLKC). It is worth noting that the algorithms developed in Section 3 can also be applied for the problems CONC and SLKC. The reason for this is as follows: Due to Lemmas 2.2 and 2.3, there exists an optimal schedule in the form (πB , πA , πB , π), where the B-jobs in πB ∪ πB are sequenced in the SPT order. Thus to find such an optimal schedule, it suffices to determine the suitable k such that the early A-jobs are scheduled between the kth B-job and (k + 1) th B-job. Based on the above observation, for each k = 0, 1, · · · , nB , Algorithm ET LDPk (V ) with a simple modification can be applied for the two problems. Specifically, in the modified algorithm, k is defined B as QB − nj =1 (nB − j + 1)pjB and each early job JjA generates a cost (nB − k)pjA to agent B’s objective. Therefore, we conclude with the following results. THEOREM 4.1: Both problems CONC and SLKC can be solved in time O(nA nB min{P A , W A }). THEOREM 4.2: The problems CONC and SLKC admit FPTASs with running times O(n2A nB /ε+ n2A nB log nA ) and O(n3A nB /ε + n3A nB log nA ), respectively. Naval Research Logistics DOI 10.1002/nav

5.

PROBLEMS THE CRITERION WITH NB B B W J =1 J CJ

This section focuses on the problems CONWC and SLKWC. Note that the problem CONC (resp., SLKC) is just a special case of the problem CONWC (resp., SLKWC) with the weights of all the B-jobs being one, that is, wjB = 1 for all j. So both problems under consideration are N P-hard. In what follows, we develop a pseudopolynomial time DP algorithm WTWCDP(V ) for the two problems, establishing that they are N P-hard in the ordinary sense. The idea of Algorithm WTWCDP(V ), where V = W A is an upper bound on the two problems, is as follows: it contains nA nB + n phases, and let F(j ,k) , j = 0, 1, · · · , nA , k = 0, 1, · · · , nB , be the generated state set in the (j, k)th phase. Any state in F(j ,k) is a vector (t1 , t2 , w, f A , f B ) corresponding to a feasible subschedule for the jobs {J1A , · · · , JjA , J1B , · · · , JkB }, where the variables t 1 and t 2 denote the total processing times of the B-jobs scheduled before the early A-jobs and the early A-jobs in the partial schedule, respectively, w measures the total weight of the B-jobs scheduled after the early A-jobs, f A stands for agent A’s objective value while f B measures agent B’s objective value of the partial schedule. The state spaces F(j ,k) , j = 0, 1, · · · , nA , k = 0, 1, · · · , nB are constructed iteratively. The initial space F(0,0) contains (0, 0, 0, 0, 0) as its only element. In the (j, k)th phase, j = 0, 1, · · · , nA , k = 0, 1, · · · , nB , we generate state set F(j ,k) from F(j −1,k) and F(j ,k−1) . Specially, for each state (t1 , t2 , w, f A , f B ) ∈ F(j −1,k) corresponding to a feasible sub-schedule for the jobs {J1A , · · · , JjA−1 , J1B , · · · , JkB }, to construct a new state, a decision that scheduling job JjA as early or tardy is necessary, and hence we need to consider the following two cases. Case 1: Schedule job JjA as early. In this case, analogous to that in Algorithm WTMDPk(V ), job JjA generates a cost ϕpjA to agent A’s objective under the CON method, and generates a cost zero if t2 = 0, which indicates that job JjA is the first early A-job in the current subschedule that will be the last early A-job in the final schedule, and ϕpjA otherwise under the SLK method. In addition, if t2 = 0, ϕt1 should also be added to agent A’s objective for both methods. Moreover, job JjA generates a cost wpjA to agent B’s objective since scheduling JjA as early will increase the completion time of each B-job scheduled after the early A-jobs by pjA , which is possible only if f B + wpjA ≤ QB . Hence, if t2 = 0, we include the new states (t1 , t2 + pjA , w, f A + ϕ(t1 + pjA ), f B + wpjA ) and (t1 , t2 + pjA , w, f A + ϕt1 , f B + wpjA ) in F(j ,k) if f A +ϕ(t1 +pjA ) ≤ V and f A +ϕt1 ≤ V under the CON and SLK methods, respectively, and f B + wpjA ≤ QB ; otherwise, include the new state (t1 , t2 + pjA , w, f A +

Yin et al.: CON/SLK Due Date Assignment and Scheduling

ϕpjA , f B + wpjA ) in F(j ,k) if f A + ϕpjA ≤ V and f B + wpjA ≤ QB for both methods. Case 2: Schedule job JjA as tardy. In this case, job JjA generates a cost wjA and zero to agent A’s objective and B’s objective, respectively, under both methods. Thus, we include the new state (t1 , t2 , w, f A + wjA , f B ) in F(j ,k) if f A + wjA ≤ V . For each state (t1 , t2 , w, f A , f B ) ∈ F(j ,k−1) corresponding to a feasible subschedule for the jobs B {J1A , · · · , JjA , J1B , · · · , Jk−1 }, to construct a new state, a decision that scheduling job JkB before or after the early A-jobs is necessary, and hence we need to consider the following two cases. Case 3: Schedule job JkB before the early A-jobs. In this case, analogous to the analysis in Case 1, job JkB generates a cost ϕpkB to agent A’s objective if t2 > 0 and zero otherwise, while job JkB generates a cost wkB (t1 + pkB ) + wpkB to agent B’s objective under both methods. Thus, we include the new state (t1 + pkB , t2 , w, f A , f B + wkB (t1 + pkB ) + wpkB ) in F(j ,k) if t2 = 0 and f B + wkB (t1 + pkB ) + wpkB ≤ QB , and

include the new state (t1 + pkB , t2 , w, f A + ϕpkB , f B + wkB (t1 +pkB )+wpkB ) in F(j ,k) if t2 > 0, f A +ϕpkB ≤ V , and f B + wkB (t1 + pkB ) + wpkB ≤ QB . Case 4: Schedule job JkB after the early A-jobs. In this case, the completion time of job JkB is PkB + t2 , so job JkB generates a cost zero and wkB (PkB +t2 ) to agent A’s objective and B’s objective, respectively, under both methods, where PkB denotes the total processing times of the first k B-jobs. Thus, if f B + wkB (PkB + t2 ) ≤ QB , we include the new state (t1 , t2 , w + wjB , f A , f B + wkB (PkB + t2 )) in F(j ,k) . To further reduce the state space, we provide the following elimination rule. LEMMA 5.1: For any two states (t1 , t2 , w, f A , f B ) and F(j ,k) with t1 ≤ t1 , t1 ≤ t1 , w ≤ w , f ≤ f and f ≤ f B , keep the former state in F(j ,k) .

(t1 , t2 , w , f A , f B ) in  A A B

PROOF: The proof is analogous to that of Lemma 3.3.



Summarizing the above analysis, we formally present Algorithm WTWCDP(V ) as follows:

WT-WC-DP Algorithm WTWCDP(V) Step 1. [Preprocessing] Re-index the A-jobs and B-jobs in the LPT order and WSPT order, respectively. Step 2. [Initialization] Set F(0,0) = {(0, 0, 0, 0, 0)} and F(−1,k) = F(j ,−1) = ∅ for j = 1, · · · , nA , k = 1, · · · , nB Step 3. [Generation] Generate F(j ,k) from F(j −1,k) and F(j ,k−1) For j = 0 to nA do For k = 0 to nB do If j = 0 or k = 0, then set F(j ,k) = ∅; For each (t1 , t2 , w, f A , f B ) ∈ F(j −1,k) do /∗ Corresponding to Case 1 ∗ / If f B + wpjA ≤ QB , then If t2 = 0, then If f A + ϕ(t1 + pjA ) ≤ V , then /∗ For the CON method only set F(j ,k) ← F(j ,k) ∪ {(t1 , t2 + pjA , w, f A + ϕ(t1 + pjA ), f B + wpjA )}; If f A + ϕt1 ≤ V , then /∗ For the SLK method only set F(j ,k) ← F(j ,k) ∪ {(t1 , t2 + pjA , w, f A + ϕt1 , f B + wpjA )}; Else If f A + ϕpjA ≤ V , then set F(j ,k) ← F(j ,k) ∪ {(t1 , t2 + pjA , w, f A + ϕpjA , f B + wpjA )}; /∗ Corresponding to Case 2 ∗ / If f A + wjA ≤ V , then set F(j ,k) ← F(j ,k) ∪ {(t1 , t2 , w, f A + wjA , f B )}; Endfor

425

426

Naval Research Logistics, Vol. 63 (2016)

For each (t1 , t2 , w, f A , f B ) ∈ F(j ,k−1) do /∗ Corresponding to Case 3 ∗ / If t2 = 0 and f B + wkB (t1 + pkB ) + wpkB ≤ QB , then set F(j ,k) ← F(j ,k) ∪ {(t1 + pkB , t2 , w, f A , f B + wkB (t1 + pkB ) + wpkB )}; If t2 > 0, f A + ϕpkB ≤ V and f B + wkB (t1 + pkB ) + wpkB ≤ QB , then set F(j ,k) ← F(j ,k) ∪ {(t1 + pkB , t2 , w, f A + ϕpkB , f B + wkB (t1 + pkB ) + wpkB )}; /∗ Corresponding to Case 4 ∗ / If f B + wkB (PkB + t2 ) ≤ QB , then set F(j ,k) ← F(j ,k) ∪ {(t1 , t2 , w + wjB , f A , f B + wkB (PkB + t2 ))}; Endfor [Elimination] /∗ Update set F(j ,k) ∗ / For any two states (t1 , t2 , w, f A , f B ) and (t1 , t2 , w , f A , f B ) in F(j ,k) with t1 ≤ t1 , t2 ≤ t2 , w ≤ w  , f A ≤ f A , and f B ≤ f B , eliminate the latter one. Endfor Endfor Step 4. [Result] The optimal objective value is min{f A |(t1 , t2 , w, f A , f B ) ∈ F(nA ,nB ) }.

THEOREM 5.2: Algorithm WTWCDP(V) solves the problems CONWC and SLKWC in O(nA nB P A P B W B min{W A , QB }) time. PROOF: Because Algorithm WTWCDP(V ) exploits the structural properties developed in Lemmas 2.1–2.3, and compares the cost of all the possible state transitions, it generates an optimal schedule. Now we analyze the time complexity of the algorithm. Step 1 implements two sorting procedures that take O(nA log nA ) and O(nB log nB ) times, respectively. In Step 3, there are at most PB possible values for t 1 , at most PA possible values for t 2 , and at most W B possible values for w. Due to the elimination rule, the number of different combinations of f A and f B is upper-bounded by min{W A , QB }. Therefore, the number of new states generated in F(j ,k) is at most O(P A P B W B min{W A , QB }) after the elimination process. Thus, after nA nB + n iterations, Step 3 can be executed in O(nA nB P A P B W B min{W A , QB }) time, as required. 

6.

PROBLEMS THE CRITERION WITH NB B B W J =1 J UJ

This section focuses on the problems CONWT and SLKWT, which are both N P-hard. This follows straightforwardly from the N P-hardness of CONF and SLKF with B fmax = LBmax , respectively. In what follows, we develop a pseudo-polynomial time DP algorithm WTWTDP(V ) for Naval Research Logistics DOI 10.1002/nav

the two problems, establishing that they are N P-hard in the ordinary sense. The idea of Algorithm WTWTDP(V ), where V = W A is an upper bound on the two problems, is as follows: it contains nA nB + n phases, and let S(j ,k) , j = 0, 1, · · · , nA , k = 0, 1, · · · , nB , be the generated state set in the (j, k)th phase. Any state in S(j ,k) is a vector (t, x, y, f A , f B ) encoding a feasible subschedule for the jobs {J1A , · · · , JjA , J1B , · · · , JkB }, in which t denotes the completion time of the last early job in the subschedule, x is a binary variable that is equal to 1 if and only if there are early A-jobs in the subschedule, y is a binary variable that is equal to 1 if and only if the last early A-job in the current sub-schedule is the last early A-job in the final schedule, and f A stands for agent A’s objective value while f B measures agent B’s objective value of the subschedule. The state spaces S(j ,k) , j = 0, 1, · · · , nA , k = 0, 1, · · · , nB are constructed iteratively with S(0,0) = {(0, 0, 0, 0, 0)}. In the (j, k)th phase, j = 0, 1, · · · , nA , k = 0, 1, · · · , nB , we generate state set from S(j −1,k) and S(j ,k−1) . Specially, for each state (t, x, y, f A , f B ) ∈ S(j −1,k) corresponding to a feasible subschedule for the jobs {J1A , · · · , JjA−1 , J1B , · · · , JkB }, to construct a new state, a decision that scheduling job JjA as early or tardy is necessary, and hence we need to consider the following two cases. Case 1: Schedule job JjA as early. In this case, y = 0. Job JjA generates a cost ϕpjA to of agent A’s objective under the CON method, and generates a cost zero if x = 0, which means that job JjA is the first early A-job in the current

Yin et al.: CON/SLK Due Date Assignment and Scheduling

subschedule that will be the last early A-job in the final schedule, and ϕpjA otherwise under the SLK method; and job JjA generates a cost zero to of agent B’s objective under both methods. In addition, if x = 0, ϕt should also be added to agent A’s objective under both methods. Hence, there are two possible subcases to consider when adding new states in S(j ,k) .

Case 3: Schedule job JkB as early. In this case, there are two further subcases to consider. Subcase 3.1: y = 0 and x = 1. In this subcase, job JkB generates a cost ϕpkB and zero to agent A’s objective and B’s objective, respectively, under both methods. Hence, this is possible only if t +pkB ≤ dkB and f A +ϕpkB ≤ V . Thus, if y = 0, x = 1, t + pkB ≤ dkB , and f A + ϕpkB ≤ V , include the new state (t + pkB , x, y, f A + ϕpkB , f B ) in S(j ,k) .

Subcase 1.1: x = 0. In this subcase, include the new state (t +pjA , 1, 0, f A +ϕ(t +pjA ), f B ) in S(j ,k) if j < nA and f A + ϕ(t + pjA ) ≤ V , and (t + pjA , 1, 1, f A + ϕ(t + pjA ), f B ) in S(j ,k) if f A + ϕ(t + pjA ) ≤ V under the CON method; and include the new state (t + pjA , 1, 0, f A + ϕt, f B ) in S(j ,k) if j < nA and f A + ϕt ≤ V , and (t + pjA , 1, 1, f A + ϕt, f B ) in S(j ,k) if f A + ϕt ≤ V under the SLK method. Subcase 1.2: x = 1. In this subcase, include the new state (t + pjA , x, 0, f A + ϕpjA , f B ) in S(j ,k) if j < nA and f A + ϕpjA ≤ V , and (t + pjA , x, 1, f A + ϕpjA , f B ) in S(j ,k) if f A + ϕpjA ≤ V under both methods. Case 2: Schedule job JjA as tardy. In this case, job JjA generates a cost wjA and zero to agent A’s objective and B’s objective, respectively, under both methods. Thus, include the new state (t, x, y, f A + wjA , f B ) in S(j ,k) if f A + wjA ≤ V . For each state (t, x, y, f A , f B ) ∈ S(j ,k−1) corresponding to a feasible sub-schedule for the jobs B {J1A , · · · , JjA , J1B , · · · , Jk−1 }, to construct a new state, a decision that scheduling job JjA as early or tardy is necessary, and hence we need to consider the following two cases.

427

Subcase 3.2: y = 1 or (y = 0 and x = 0). This is possible only if t +pkB ≤ dkB since job JkB generates a cost zero to agent A’s objective and B’s objective, respectively, under both methods. Thus, if (y = 1 or (y = 0 and x = 0)) and t +pkB ≤ dkB , include the new state (t +pkB , x, y, f A , f B ) in S(j ,k) . Case 4: Schedule job JkB as tardy. In this case, job JkB generates a cost zero and wkB to agent A’s objective and B’s objective, respectively, under both methods. Thus, if f B +wkB ≤ QB , include the new state (t, x, y, f A , f B + wkB ) in S(j ,k) . To further reduce the state space, we provide the following elimination rule. LEMMA 6.1: For any two states (t, x, y, f A , f B ) and (t , x, y, f A , f B ) in S(j ,k) with t ≤ t  , f A ≤ f A and f B ≤ f B , keep the former state in S(j ,k) . 

PROOF: The proof is similar to that of Lemma 3.3.



Summarizing the above analysis, we formally present Algorithm WTWTDP(V ) as follows:

WT-WT-DP Algorithm WTWTDP(V) Step 1. [Preprocessing] Re-number the A-jobs and B-jobs in the LPT order and EDD order, respectively. Step 2. [Initialization] Set S(0,0) = {(0, 0, 0, 0, 0)} and S(−1,k) = S(j ,−1) = ∅ for j = 1, · · · , nA , k = 1, · · · , nB Step 3. [Generation] Generate S(j ,k) from S(j −1,k) and S(j ,k−1) For j = 0 to nA do For k = 1 to nB do If j = 0 or k = 0, then Set S(j ,k) = ∅; For each (t, x, y, f A , f B ) ∈ S(j −1,k) do /∗ Corresponding to Case 1 ∗ / If y = 0, then If x = 0, then If f A + ϕ(t + pjA ) ≤ V /∗ for the CON method only set S(j ,k) ← S(j ,k) ∪ {(t + pjA , 1, 1, f A + ϕ(t + pjA ), f B )};

428

Naval Research Logistics, Vol. 63 (2016)

If j < nA , then set S(j ,k) ← S(j ,k) ∪ {(t + pjA , 1, 0, f A + ϕ(t + pjA ), f B )}; If f A + ϕt ≤ V /∗ for the SLK method only set S(j ,k) ← S(j ,k) ∪ {(t + pjA , 1, 1, f A + ϕt, f B )}; If j < nA , then set S(j ,k) ← S(j ,k) ∪ {(t + pjA , 1, 0, f A + ϕt, f B )}; Else If f A + ϕpjA ≤ V , then Set S(j ,k) ← S(j ,k) ∪ {(t + pjA , 1, 1, f A + ϕpjA , f B )}; If j < nA , then set S(j ,k) ← S(j ,k) ∪ {(t + pjA , 1, 0, f A + ϕpjA , f B )}; /∗ Corresponding to Case 2 ∗ / If f A + wjA ≤ V , then set S(j ,k) ← S(j ,k) ∪ {(t, x, y, f A + wjA , f B )}; Endfor For each (t, x, y, f A , f B ) ∈ S(j ,k−1) do /∗ Corresponding to Case 3 ∗ / If x = 1, y = 0, t + pkB ≤ dkB and f A + ϕpkB ≤ V , then set S(j ,k) ← S(j ,k) ∪ {(t + pkB , x, y, f A + ϕpkB , f B )}; If (y = 1 or x = y = 0) and t + pkB ≤ dkB , then set S(j ,k) ← S(j ,k) ∪ {(t + pkB , x, y, f A , f B )}; /∗ Corresponding to Case 4 ∗ / If f B + wkB ≤ QB , then set S(j ,k) ← S(j ,k) ∪ {(t, x, y, f A , f B + wkB )}; Endfor [Elimination] /∗ Update set S(j ,k) ∗ / For any two states (t, x, y, f A , f B ) and (t  , x, y, f A , f B ) in S(j ,k) with t1 ≤ t1 and f A ≤ f A , f B ≤ f B , eliminate the latter one. Endfor Endfor Step 4. [Result] The optimal objective value is min{f A |(t, x, y, f A , f B ) ∈ S(nA ,nB ) .

THEOREM 6.2: Algorithm WTWTDP(V) solves the problems CONWT and SLKWT in O(nA nB P min{W A , QB }) time. PROOF: The proof is analogous to that of Theorem 5.2 with the only difference that the number of states in S(j ,k) is upper-bounded by O(P min{W A , QB }) after the elimination process since there are at most P possible values for t, at most two possible values for x and y, and at most W A and QB possible values for f A and f B , respectively.  7.

CONCLUSIONS

We consider a schedule problem in which two agents compete for the usage of a shared processing resource and each Naval Research Logistics DOI 10.1002/nav

agent has its own scheduling criterion to optimize, with consideration of due date assignment. Two well-known due date assignment methods, that is, CON and SLK methods, are used to assign due dates to the jobs of the first agent, while the due dates of the second agent are exogenously given. We consider several classical scheduling criteria. The goal is to find a schedule that minimizes the criterion of the first agent, subject to the constraint that the criterion of the second agent does not exceed an upper limit. We provide polynomial-time and pseudo-polynomial-time solution algorithms, and FPTASs, if viable, for each of the considered problems. Several important issues for future research may be foreseen.

Yin et al.: CON/SLK Due Date Assignment and Scheduling

i. Designing more effective approximation or exact algorithms for solving large-scale problem instances using mixed integer linear programming techniques, such as column generation, Lagrangian relaxation, branch-and-price, or branch-and-cut. ii. Extending our model to the case where a setup time is incurred at the start of a schedule and on each occasion when the machine switches from processing the jobs of one agent to the jobs of the other agent, while no setup time is required for a job if it belongs to the same agent of the previously processed job. iii. Extending our model to different machine environments, for example, flowshops or parallel machines.

ACKNOWLEDGMENTS We thank the Editor, an Associate Editor, and two anonymous referees for their helpful comments on earlier versions of our paper. This article was supported in part by the National Natural Science Foundation of China (Nos. 11561036, 71501024, 71301022); in part by the Application basic research project of the Ministry of Transport of the People’s Republic of China (No. 2014329225110); and in part by the NSC of Taiwan under grant numbers MOST 105-2221-E-035-053-MY3. Cheng was supported in part by The Hong Kong Polytechnic University under the Fung Yiu King - Wing Hang Bank Endowed Professorship in Business Administration.

REFERENCES [1] A. Agnetis, “Multiagent Scheduling Problems”, Tutorials in Operations Research: New Directions in: P.B. Mirchandani and J. Cole Smith (Editors). Informatics, Optimization, Logistics, and Production, INFORMS, Catonsville, 2012, pp. 151–170. [2] A. Agnetis, P.B. Mirchandani, D. Pacciarelli, A. Pacifici, Scheduling problems with two competing agents, Oper Res 52 (2004), 229–242. [3] A. Agnetis, J.C. Billaut, S. Gawiejnowicz, D. Pacciarelli, A. Soukhal, Multiagent scheduling: Models and algorithms. Springer, Heidelberg, 2014. [4] K.R. Baker, J.C. Smith, A multiple-criterion model for machine scheduling, J Scheduling 6 (2003), 7–16. [5] P.J. Brewer, C.R. Plott, A binary conflict ascending price (BICAP) mechanism for the decentralized allocation of the right to use railroad tracks, Int J Ind Org 14 (1996), 857–886. [6] E. Gerstl, G. Mosheiov, Single machine just-in-time scheduling problems with two competing agents, Naval Res Logist 61 (2014), 1–16.

429

[7] V. Gordon, V. Strusevich, A. Dolgui, Scheduling with due date assignment under special conditions on job processing, J Scheduling 15 (2012), 447–456. [8] P. Kaminsky, D. Hochbaum, “Due-date quotation models and algorithms.” in: J. Y.-T. Leung (Editors), Handbook of scheduling: Algorithms, models and performance analysis, CRC Press, Boca Raton, 2014, pp. 20-1–20-22). [9] G. Knotts, M. Dror, B.C. Hartman, Agent-based project scheduling, IIE Trans 32 (2000), 387–401. [10] M.Y. Kovalyov, Improving the complexities of approximation algorithms for optimization problems, Oper Res Lett 17 (1995), 85–87. [11] M.Y. Kovalyov, A. Oulamara, A. Soukhal, Two-agent scheduling with agent specific batches on an unbounded serial batching machine, J Scheduling 18 (2015), 423–434. [12] E.L. Lawler, “Recent results in the theory of machine scheduling.” in: A. Bachem, M. Groetschel, and B. Korte (Editors), Mathematical programming: the state of the art (Bonn, 1982), Springer, Berlin, 1983, pp. 202–C234. [13] J.Y.T. Leung, M. Pinedo, G.H. Wan, Competitive two agents scheduling and its applications, Oper Res 58 (2010), 458– 469. [14] S.S. Li, J.J. Yuan, Unbounded parallel-batching scheduling with two competitive agents, J Scheduling 15 (2012), 629– 640. [15] B. Mor, G. Mosheiov, Scheduling problems with two competing agents to minimize minmax and minsum earliness measures, Eur J Oper Res 206 (2010), 540–546. [16] P. Perez-Gonzalez, J.M. Framinan, A common framework and taxonomy for multicriteria scheduling problem with interfering and competing jobs: Multi-agent scheduling problems, Eur J Oper Res 235 (2014), 1–16. [17] C. Pessan, J.-L. Bouquard, E. Neron, An unrelated parallel machines model for an industrial production resetting problem, Eur J Ind Eng 2 (2008), 153–171. [18] M.J. Soomer, G.J. Franx, Scheduling aircraft landings using airlines preferences, Eur J Oper Res 190 (2008), 277– 291. [19] G. Wan, R.S. Vakati, J.Y.T. Leung, M. Pinedo, Scheduling two agents with controllable processing times, Eur J Oper Res 205 (2010), 528–539. [20] D. Wang, Y. Yin, S.R. Cheng, T.C.E. Cheng, C.C. Wu, Due date assignment and scheduling on a single machine with two competing agents, Int J Prod Res 54 (2016), 1152– 1169. [21] Y. Yin, S.R. Cheng, T.C.E. Cheng, D.J. Wang, C.C. Wu, Justin-time scheduling with two competing agents on unrelated parallel machines, Omega 63 (2016), 41–47. [22] Y. Yin, T.C.E. Cheng, X. Yang, C.C. Wu, Two-agent singlemachine scheduling with unrestricted due date assignment, Comput Ind Eng 79 (2015), 148–155. [23] Y. Yin, S.R. Cheng, T.C.E. Cheng, W.H. Wu, C.C. Wu, Two-agent single-machine scheduling with release times and deadlines, Int J Ship Trans Log 5 (2013), 75–94. [24] Y. Yin, Y. Wang, T.C.E. Cheng, D.J. Wang, C.C. Wu, Twoagent single-machine scheduling to minimize the batch delivery cost, Comput Ind Eng 92 (2016), 16–30.

Naval Research Logistics DOI 10.1002/nav

Suggest Documents