machine scheduling with an availability constraint and job delivery coordination

10
Machine Scheduling with an Availability Constraint and Job Delivery Coordination Xiuli Wang, 1,2 T. C. Edwin Cheng 2 1 School of Economics and Management, Nanjing University of Science and Technology, People’s Republic of China 2 Department of Logistics, The Hong Kong Polytechnic University, Hung Hom, Kowloon, Hong Kong Received 11 August 2005; revised 28 May 2006; accepted 3 June 2006 DOI 10.1002/nav.20175 Published online 31 July 2006 in Wiley InterScience (www.interscience.wiley.com). Abstract: In this paper we study the scheduling problem that considers both production and job delivery at the same time with machine availability considerations. Only one vehicle is available to deliver jobs in a fixed transportation time to a distribution center. The vehicle can load at most K jobs as a delivery batch in one shipment due to the vehicle capacity constraint. The objective is to minimize the arrival time of the last delivery batch to the distribution center. Since machines may not always be available over the production period in real life due to preventive maintenance, we incorporate machine availability into the models. Three scenarios of the problem are studied. For the problem in which the jobs are processed on a single machine and the jobs interrupted by the unavailable machine interval are resumable, we provide a polynomial algorithm to solve the problem optimally. For the problem in which the jobs are processed on a single machine and the interrupted jobs are nonresumable, we first show that the problem is NP-hard. We then propose a heuristic with a worst-case error bound of 1/2 and show that the bound is tight. For the problem in which the jobs are processed on either one of two parallel machines, where only one machine has an unavailable interval and the interrupted jobs are resumable, we propose a heuristic with a worst-case error bound of 2/3. © 2006 Wiley Periodicals, Inc. Naval Research Logistics 54: 11–20, 2007. Keywords: scheduling; availability; heuristics; supply chain management 1. INTRODUCTION A supply chain is made up of all the stages of value creation such as supply, production, and distribution at which value is added to a manufactured and delivered product. Research on supply chain management aims at developing strategies to help firms to achieve optimal chain- wide performance via proper coordination of the different stages of their supply chains. Much of the supply chain literature focuses on inventory control or lot-sizing issues. Thomas and Griffin [16] highlighted the need for studying supply chain issues at an operational rather than a strategic or tactical level. However, as Hall and Potts [3] have pointed out, little research in supply chain management has been carried out at the detailed scheduling level. They showed that if decision makers at different stages of a supply chain make poorly coordinated decisions at the op- erational level, substantial inefficiencies may result. Eren- gu ¨c et al. [2] emphasized the operational aspects of supply chains and the need for decision-making at the supplier, plant, and distribution stages of a supply chain. In this paper we consider scheduling models that inte- grate production and delivery whereby the jobs are first processed in a manufacturing center, after which they are delivered to a distribution center. The manufacturing set- tings may be a single machine or two identical parallel machines. In a production period, there exists an unavail- able interval on a machine for processing jobs due to pre- ventive maintenance. Job delivery is performed by an avail- able vehicle with a fixed load capacity. The objective is to minimize the arrival time of the last shipment to the distri- bution center. Hall and Potts [3] considered a variety of scheduling, batching, and delivery scenarios that arise in an arborescent supply chain. The objective is to minimize the overall scheduling and delivery cost. Transportation capacity was not considered in their models. Lee and Chen [7] studied the problem that considers machine scheduling and finished job delivery together. Jobs are delivered in batches by vehicles. Correspondence to: T. C. E. Cheng ([email protected]) © 2006 Wiley Periodicals, Inc.

Upload: xiuli-wang

Post on 15-Jun-2016

215 views

Category:

Documents


3 download

TRANSCRIPT

Machine Scheduling with an Availability Constraintand Job Delivery Coordination

Xiuli Wang,1,2 T. C. Edwin Cheng2

1School of Economics and Management, Nanjing University of Science and Technology, People’s Republic of China

2Department of Logistics, The Hong Kong Polytechnic University, Hung Hom, Kowloon, Hong Kong

Received 11 August 2005; revised 28 May 2006; accepted 3 June 2006DOI 10.1002/nav.20175

Published online 31 July 2006 in Wiley InterScience (www.interscience.wiley.com).

Abstract: In this paper we study the scheduling problem that considers both production and job delivery at the same time withmachine availability considerations. Only one vehicle is available to deliver jobs in a fixed transportation time to a distributioncenter. The vehicle can load at most K jobs as a delivery batch in one shipment due to the vehicle capacity constraint. The objectiveis to minimize the arrival time of the last delivery batch to the distribution center. Since machines may not always be availableover the production period in real life due to preventive maintenance, we incorporate machine availability into the models. Threescenarios of the problem are studied. For the problem in which the jobs are processed on a single machine and the jobs interruptedby the unavailable machine interval are resumable, we provide a polynomial algorithm to solve the problem optimally. For theproblem in which the jobs are processed on a single machine and the interrupted jobs are nonresumable, we first show that theproblem is NP-hard. We then propose a heuristic with a worst-case error bound of 1/2 and show that the bound is tight. For theproblem in which the jobs are processed on either one of two parallel machines, where only one machine has an unavailableinterval and the interrupted jobs are resumable, we propose a heuristic with a worst-case error bound of 2/3. © 2006 WileyPeriodicals, Inc. Naval Research Logistics 54: 11–20, 2007.

Keywords: scheduling; availability; heuristics; supply chain management

1. INTRODUCTION

A supply chain is made up of all the stages of valuecreation such as supply, production, and distribution atwhich value is added to a manufactured and deliveredproduct. Research on supply chain management aims atdeveloping strategies to help firms to achieve optimal chain-wide performance via proper coordination of the differentstages of their supply chains. Much of the supply chainliterature focuses on inventory control or lot-sizing issues.Thomas and Griffin [16] highlighted the need for studyingsupply chain issues at an operational rather than a strategicor tactical level. However, as Hall and Potts [3] havepointed out, little research in supply chain management hasbeen carried out at the detailed scheduling level. Theyshowed that if decision makers at different stages of asupply chain make poorly coordinated decisions at the op-erational level, substantial inefficiencies may result. Eren-

guc et al. [2] emphasized the operational aspects of supplychains and the need for decision-making at the supplier,plant, and distribution stages of a supply chain.

In this paper we consider scheduling models that inte-grate production and delivery whereby the jobs are firstprocessed in a manufacturing center, after which they aredelivered to a distribution center. The manufacturing set-tings may be a single machine or two identical parallelmachines. In a production period, there exists an unavail-able interval on a machine for processing jobs due to pre-ventive maintenance. Job delivery is performed by an avail-able vehicle with a fixed load capacity. The objective is tominimize the arrival time of the last shipment to the distri-bution center.

Hall and Potts [3] considered a variety of scheduling,batching, and delivery scenarios that arise in an arborescentsupply chain. The objective is to minimize the overallscheduling and delivery cost. Transportation capacity wasnot considered in their models. Lee and Chen [7] studied theproblem that considers machine scheduling and finished jobdelivery together. Jobs are delivered in batches by vehicles.Correspondence to: T. C. E. Cheng ([email protected])

© 2006 Wiley Periodicals, Inc.

Both transportation times and vehicle capacity were consid-ered in their models. All the jobs take the same amount ofphysical space in a transportation vehicle. Chang and Lee[1] extended Lee and Chen’s work to the situation whereeach finished job has a different size; hence, assigning jobsto delivery batches amounts to solving the bin-packingproblem. They proposed a heuristic with a worst-case anal-ysis for each special scenario associated with different pro-cessing settings and costumers. Li et al. [11] developed asingle-machine scheduling model that incorporates routingdecisions of a delivery vehicle that serves customers atdifferent locations. The objective is to minimize the sum ofjob arrival times. They proposed dynamic programmingalgorithms for the special case with a customer and for thegeneral case. In the above-mentioned models, the machinesare always available for processing jobs over the productionperiod.

Another line of research related to our problem focuseson machine scheduling problems with availability con-straints. These models reflect the real-world situation whereover a scheduling period there may exist unavailable inter-vals on the machines for processing jobs due to preventivemaintenance. Lee [4] studied single-machine and parallel-machine scheduling problems with an availability con-straint. For various performance measures, he developedpseudo-polynomial dynamic programming algorithms tosolve the problem optimally or provided heuristics witherror bound analyses. Lee and Chen [6] studied parallel-machine scheduling problems where each machine is main-tained once during the planning period. They proposedbranch and bound algorithms to minimize the objective ofthe total weighted completion time. Liao et al. [12] consid-ered a two-parallel-machine scheduling problem where onemachine is not available over a period of time. The proposedalgorithms have exponential time complexity but are effi-cient in solving large-size (up to 100 jobs) problems. Tolearn more about research results on this aspect, the readeris referred to the review papers by Lee et al. [8], Schmidt[15], and Lee [5].

There exist some research results on scheduling andbatching problems (see the survey papers by Potts and VanWassenhove [14], Webster and Baker [17], and Potts andKovalyov [13]. However, these studies did not take trans-portation time into consideration, i.e., they assumed thatdeliveries can be made at once.

We follow the notation of Lee et al. [8] to denote theproblems under study, with extensions to include batchdeliveries. This notation consists of three fields �|�|�, where� denotes the machine environment, � denotes the problemcharacteristics, and � denotes the performance measure tobe optimized. The problems under study are denoted 1|r �a, D|Cmax, 1|nr �a, D|Cmax, and P2|r � a, D|Cmax, respec-tively. In the field �, “1” denotes that there is only a single

machine to process the jobs and “P2” denotes that there aretwo identical parallel machines to process the jobs. In thefield �, “r � a” denotes that jobs interrupted by the un-available interval can resume processing after the machineagain becomes available, while “nr � a” denotes that in-terrupted jobs must restart processing after the machinebecomes available again. “D” denotes that jobs must bedelivered to the distribution center after finishing processingin the manufacturing center. In the field �, Cmax denotes thetime at which the vehicle returns to the manufacturingcenter after delivering the last batch to the distributioncenter.

The remainder of the paper is organized as follows. InSection 2 we formally describe the problem and introducesome notation. In Section 3 we show that the shortestprocessing time (SPT) rule for scheduling jobs and a suit-able delivery scheme can produce an optimal solution forthe problem 1|r � a, D|Cmax. In Section 4 we first show thatthe problem 1|nr � a, D|Cmax is NP-hard. We then proposea heuristic with an error bound of 1/2 and show that thebound is tight. In Section 5 we first show that the problemP2|r � a, D|Cmax is NP-hard and then propose a heuristicwith an error bound of 2/3. In the last section some con-cluding remarks are given.

2. DESCRIPTION AND NOTATION

Our problem is formally stated as follows. Given a set ofn jobs, S � {J1, J2, . . ., Jn}, which are to be first processedin a manufacturing center and then delivered to a distribu-tion center. Each job Ji requires a processing time of pi inthe manufacturing center. Only one vehicle is available fordelivering the jobs, which can load at most K jobs in oneshipment. The vehicle is initially at the manufacturing cen-ter and available for delivery. All the jobs delivered togetherin one shipment are defined as a delivery batch. Associatedwith each delivery batch is T, which is the transportationtime from the manufacturing center to the distribution cen-ter. We also assume that the travel time from the distributioncenter to the manufacturing center is T. The objective is tominimize the arrival time of the last delivery batch to thedistribution center. For convenience of analysis, the objec-tive may also be defined as minimizing the time at which thevehicle finishes delivering the last batch to the distributioncenter and returns to the manufacturing center.

In this paper we consider two production settings;namely, the manufacturing center consists of a single ma-chine and two identical parallel machines. In the single-machine case, we assume that there exists an unavailableinterval over the production period due to preventive main-tenance. In the case of two identical parallel machines, weassume that there exists an unavailable interval on one ofthe machines while the other machine is always available

12 Naval Research Logistics, Vol. 54 (2007)

Naval Research Logistics DOI 10.1002/nav

over the production period. This assumption for the parallel-machine case is reasonable because preventive maintenanceis usually performed on a rotational basis rather than on allthe machines simultaneously (see, for example, [9]).

The following notation is used throughout this paper:Mj: machine j,j � 1, 2;

� � t1 � s1: the unavailable interval on a machine fromtime s1 to t1;

�: a schedule for processing the jobs in S;Bk: the kth delivery batch;�(�, Bk): the available time for delivering Bk, i.e., the

completion time of processing the last job of Bk in �;C(�, Bk): the vehicle returning time to the manufacturing

center for delivery batch Bk;q1 and q2: integers such that n � Kq1 � q2 and 0 � q2 �

K;� � [B1, B2, . . ., Bm]: a delivery scheme, where q1 � 1 �

m � n;(�, �): a solution of the problem;C(�, �): the objective value of (�, �);CHx: the objective value of Heuristic Hx;C*: the objective value of an optimal solution.Unless confusion would occur, we simplify �(�, Bk),

C(�, Bk) as �(Bk), C(Bk), respectively.To facilitate understanding of our models, an example of

the problem 1|nr � a, D|Cmax is given in Fig. 1. In thisexample, there are five jobs with the processing times p1 �2, p2 � 8, p3 � 7, p4 � 8, and p5 � 4. The unavailableinterval is from s1 � 19 to t1 � 25. One shipment can loadat most two jobs. The one-way travel time between themanufacturing center and the distribution center is 5. Asolution for the instance is (�, �), defined by the schedule� � [J1, J2, J3, J4, J5], and the delivery scheme � � [B1, B2,B3], where B1 � {J1, J2}, B2 � {J3} and B3 � {J4, J5}. Theobjective value of the solution C(�, �) is 47.

We define a delivery batch as an available delivery batchif all of the jobs in the batch have finished processing on themachine(s).

For the problems under study, we consider not only theschedule of the jobs to be processed on the machine(s), butalso the delivery plan to transport processed jobs to thedistribution center. Coordination of the two stages of pro-duction and delivery is necessary for obtaining a globaloptimal solution.

For the problems 1|r � a, D|Cmax, 1|nr � a, D|Cmax, andP2|r � a, D|Cmax, the following optimal property is obvious.

PROPERTY 1. There exists an optimal solution thatsatisfies the following properties:

(i) The jobs should be processed as early as possiblein a schedule.

(ii) If there exist available delivery batches, then thevehicle should not be idle.

3. PROBLEM 1|r�a, D|CMAX

From Lee [4], we know that 1|r � a|C�max can be solvedoptimally by any sequence, where Cmax� denotes the com-pletion time of the last job under a given schedule. How-ever, this argument does not hold for the problem 1|r � a,D|Cmax. For the problem without any unavailable interval ina scheduling period, Lee and Chen [7] provided some op-timal properties and showed that the problem is solvable inpolynomial time. Similar to Property 2 of Lee and Chen [7],we now give the following optimal property of the problem1|r � a, D|Cmax.

PROPERTY 2. For the problem 1|r � a, D|Cmax, anoptimal solution must satisfy the following conditions:

(i) The jobs of a batch are processed consecutivelyon the machine.

(ii) The batch that becomes available earlier is deliv-ered earlier.

(iii) The first delivery batch includes q2 jobs, and eachof the last q1 delivery batches includes K jobs.

PROOF. (i) For a solution (�, �) of the problem, supposethat the jobs in Bk are not processed consecutively and thatthe last processed job of Bk in � is Jj. We produce a schedule�� by only moving the processed jobs of Bk�{Jj} in � topositions just before Jj. Then, we have �(��, Bi) � �(�, Bi)for i � 1, 2, . . ., m. Noting that C(�, Bi) � max{�(�, Bi),C(�, Bi � 1)} � 2T and C(��, Bi) � max{�(��, Bi), C(��,Bi�1)} � 2T, according to Property 1, we have C(��, Bm) �C(�, Bm). Therefore, C(��, �) � C(�, �).

Figure 1. A solution for the instance of the problem 1 |nr�a, D| Cmax.

13Wang and Cheng: Machine Scheduling and Delivery Coordination

Naval Research Logistics DOI 10.1002/nav

(ii) It can easily be proved by the batch swapping argu-ment.

(iii) For a solution (�, �) satisfying conditions of (i) and(ii), where � � [B1, B2, . . ., Bm], if |Bm| � . . . � |Bk � 1|�K,but |Bk|�h � K, we put the last finished K � h jobs of Bk �

1 into Bk to generate a new delivery scheme ���[B1, . . .,Bk�2, Bk�1�, Bk�, Bk � 1, . . ., Bm], where | B�k � 1| � |Bk � 1

| �(K � h) and |B�k|�K. Clearly, we have �(Bk�1�) ��(Bk�1), so C(�, ��) � C(�, �). Repeat the above procedureand we can reach the conclusion.

Property 2 stipulates, once a schedule is determined, howthe processed jobs are divided into delivery batches andhow the batches are delivered in order to obtain an optimalsolution. For the problem 1|r � a, D|Cmax, based on Prop-erties 1 and 2, we give the following algorithm.

Algorithm A

Step 1. Sequence the jobs of S in nondecreasing order ofpi, and denote the resulting schedule �.

Step 2. Determine a delivery scheme � � [B1, B2, . . .,Bq1�1] such that B1 includes the first q2 jobs and Bh�1

includes the ((h�1)K � q2�1)th to the (hK � q2)th jobs of�, h � 1, 2, . . ., q1.

Step 3. Deliver each batch of � as early as possible.Stop.

Since sequencing the jobs in Step 1 requires O(nlogn)time, and Step 1 is dominant in Algorithm A, the timecomplexity of Algorithm A is O(nlogn).

Utilizing Properties 1 and 2, we can easily obtain thefollowing theorem.

THEOREM 1. Algorithm A delivers an optimal solutionof the problem 1|r � a, D|Cmax.

4. PROBLEM 1|nr�a, D|CMAX

For the problem under study, there is only a singlemachine to process jobs in the manufacturing center. Overthe production period, there exists an unavailable intervaldue to preventive maintenance; more exactly, �i�1

n pi�s1.The job interrupted by the unavailable interval is nonresum-able, i.e., the interrupted job must restart processing afterthe machine becomes available again. The processed jobsshould be transported to the distribution center, where agroup of customers are located in proximity to one another.The objective of minimizing the arrival time of the lastdelivery batch to the distribution center entails the coordi-nation of the two stages of production and product delivery.

The following lemma shows that the problem is NP-hard.LEMMA 1. The problem 1|nr�a, D|Cmax is NP-hard.

PROOF. For the case of 1|nr�a, D|Cmax with 2T �min{pi|Ji�S} and K � 1, we can easily show that it isequivalent to 1|nr � a|C�max, where C�max denotes the makes-pan. The problem 1|nr � a|C�max is NP-hard in the ordinarysense (see [4]). Consequently, our general problem is atleast NP-hard in the ordinary sense.

Since the considered problem is NP-hard, developing aheuristic approach is justifiable. Since there exists an un-available interval in the scheduling period and the jobs arenonresumable for the problem under study, the optimalproperties of scheduling jobs for processing, unlike thesituation of the problem without any unavailable interval ina planning period (see [7]) are related to the delivery batchscheme of the problem. So we need to first identify theoptimal properties of the delivery batch scheme for anyschedule and then derive the optimal properties of schedul-ing jobs for processing.

We define a delivery scheme as an ordered set � � [B1,B2, . . ., Bm], where Bk is the kth delivery batch, and |Bk| �K due to the restriction of the vehicle load capacity. For aschedule �, the set of all the delivery schemes is denoted by

�� �� �B1,B2,· · ·,Bm | � i�1m Bi

S where q1 1 � m � n

and Bi � Bj �(empty set) for i � j}.

In order to determine an optimal delivery scheme, we willidentify the following properties of the problem.

PROPERTY 3. For a delivery scheme � � [B1, B2, . . .,Bm]� �(�) in an optimal solution, it must satisfy the fol-lowing conditions:

�B1 �B2 · · · �Bm.

In order to obtain an optimal solution, we may confineourselves to delivery schemes that satisfy the conditions ofProperty 3. Thus, we define a subset of �(�) as

�1� �� �B1,B2,· · ·,Bm �� � ��

and �(B1) � �(B2) � · · · � �(Bm)}.

For any ��[B1,B2,. . .,Bm]��1(�), we may generate adelivery scheme �� �[B� 1,B� 2,. . .,B� q1�1]��1(�) by the follow-ing procedure. The procedure backward constructs q1 � 1batches of �� in turn from �.

We treat ��[B1,B2,. . .,Bm] as a list of delivery batchesand let |Bk| � ik for k � 1,2,. . .,m.

Beginning with the last batch of the list, choose an ih suchthat ih�ih�1�. . .�im�K�ih�1�. . .�im. If ih�1�. . .�im�K,then set Bh�1�. . .�Bm�B� q1�1, and delete Bh�1,. . .,Bm from

14 Naval Research Logistics, Vol. 54 (2007)

Naval Research Logistics DOI 10.1002/nav

the list. Otherwise, let i��K�(ih�1�. . .�im); clearly, i��ih.Choose i� jobs with the latest completion times from Bh toconstitute subset Bh1 of Bh. Set Bh1�Bh�1�. . .�Bm�B� q1�1

and Bh�Bh1�Bh2. Delete Bh, Bh�1,. . .,Bm from the list, and addBh2 to the last position of the list.

Repeating the above procedure, we can construct q1 � 1batches: B� q1�1, B� q1

,. . .,B� 1 from the list. From the procedureof construction, we see that |B� 1|�q2, |B� 2|�. . .�|B� q1�1|�K,and �(B� 1)��(B� 2)�. . .��(B� q1�1). So the new deliveryscheme is �� �[B� 1, B� 2, . . ., B� q1�1]��1(�).

We denote by �2(�) the set of all the delivery schemesgenerated by the above procedure, i.e.,

�2� ��� �B� 1,B� 2,· · ·,B� q1�1 ��� � �� 1�

and |B� 1| � q2,|B� 2| � . . . � |B� q1�1| � K}.

PROPERTY 4. For an optimal solution, its deliveryscheme �� must belong to �2(�).

PROOF. From the above construction process, we have�(Bm)��(B� q1�1), �(Bm�1)��(B� q1

), �(Bm�2)��(B� q1�1),. . ., �(Bm�q1

)��(B� 1). From C(Bm � q1)� max{C(Bm � q1�1),

�(Bm�q1)}�2T and C(B� 1)��(B� 1)�2T, we have C(Bm�q1

)�C(B� 1). Repeating the above reasoning, we deduce thatC(Bm)�C(B� q1�1); thus, C(�,�)�C(�,�� ).

PROPERTY 5. For a delivery scheme ���[B� 1,B� 2,. . .,B� q1�1]��2(�), if i � j, the jobs of B� i should be processedbefore those of B� j in an optimal solution.

PROOF. Suppose that the jobs of �� �[B� 1,B� 2,. . .,B� q1�1]satisfy the conditions. For any delivery scheme ��[B1,B2,. . .,Bq1�1]��2(�), if B1�B� 1, then �(B1)��(B� 1), andwe have C(B1) � �(B1) � 2T � �(B� 1)�2T�C(B� 1). Other-wise, there exists at least a job Jh1 � B1 and Jh1 �/ B� 1, whosecompletion time in � is later than �(B� 1), so �(B1) � �(B� 1).Thus, C(B1) � C(B� 1). If B1 � B2 � B� 1 � B� 2, then�(B2)��(B� 2); since C(B2)� max{C(B1), �(B2)} � 2T andC(B� 2) � max{C(B� 1), �(B� 2)}�2T, we have C(B2)�C(B� 2).Otherwise, since |B1�B2|�|B� 1�B� 2��K�q2, there exists atleast a job Jh2�B1�B2 and Jh2 �/ B� 1�B� 2. So the completiontime of Jh2 is later than �(B� 2); hence, �(B2)��(B� 2). We alsohave C(B2)�C(B� 2). Similarly, for i � 3,4,. . .,q1�1, wededuce that C(Bi) � C(B� i). Hence, C(�, �)�C(�, �� ). Thus,the conclusion follows.

Since our problem essentially requires the coordination ofscheduling and delivery, an optimal schedule may not pro-duce an optimal solution for 1|nr � a, D|Cmax. UtilizingProperties 4 and 5, we may focus on determining a suitableschedule for obtaining an optimal solution.

LEMMA 2. Let S1 and S2 be a partition of S. If S1 andS2 are sequenced before and after the unavailable interval,respectively, then the jobs belonging to S1 and S2 should besequenced in nondecreasing order of their job processingtimes in an optimal solution.

PROOF. Sequencing the jobs in S1 and S2 in nondecreas-ing order of their job processing times, respectively, we obtaina schedule �. According to Properties 4 and 5, we generate adelivery scheme ��[B1,B2,. . .,Bq1�1]. Suppose �� is a sched-ule in which the jobs in S1 and S2 are randomly sequenced,respectively. And ���[B�1,B�2,. . .,B�q1�1] is a delivery schemethat possesses Properties 4 and 5. We have �(�, Bi)��(��, Bi�)for i � 1,2,. . .,q1 � 1. Since C(�, Bi) � max {C(�, Bi�1),�(�, Bi)}�2T and C(��,B�i)�max{C(��,B�i�1), �(��, B�i)} � 2Tfor i � 1, 2, . . ., q1 � 1, we have C(�, �) � C(��, ��). Theconclusion follows.

For the problem 1|nr � a, D|Cmax, we give the followingheuristic algorithm.

Heuristic H1

Step 1. Sequence the jobs in nondecreasing order of pi,and denote the resulting schedule as �1.

Step 2. Select a job Jk such that pk � max{pi|Ji�S}. Ifpk�s1, then sequence Jk just before the unavailable interval.The remaining n � 1 jobs are sequenced in nondecreasingorder of their processing times. Each job must be processedas early as possible. Denote the resulting schedule as �2.

Step 3. According to Properties 4 and 5, generate twodelivery schemes �1 and �2 for �1 and �2, respectively.Deliver each batch as early as possible.

Step 4. Let CH1 � min{C(�1,�1), C(�2,�2)}. Stop.Since sequencing the jobs in Step 1 requires O(nlogn)

time, and Step 1 is dominant in Heuristic H1, the timecomplexity of Heuristic H1 is O(nlogn).

We note that an optimal solution of 1|nr � a, D|Cmax isalso a solution of 1|r � a, D|Cmax. Hence, the objectivevalue of an optimal solution of 1|nr � a, D|Cmax is no lessthan that of an optimal solution of 1|r � a, D|Cmax.

THEOREM 2. For the problem 1|nr � a, D|Cmax,(CH1 � C*)/C*�1/2 and the bound is tight.

PROOF. If �i�1n pi � s1, clearly we can show that

(�1,�1) is an optimal solution. Thus, we are done. In thefollowing, we assume that �i�1

n pi�s1.Let �i�1

n pi���x and N�{Ji|pi�x/2 and Ji�S}. Then,|N|� 1. We consider the following two cases.

Case 1. |N|�0 Let C� * denote the optimal solution ofthe problem 1|r � a, D|Cmax. Obviously, we have

15Wang and Cheng: Machine Scheduling and Delivery Coordination

Naval Research Logistics DOI 10.1002/nav

C(�1,�1)�C� *��, where � is the idle time just before theunavailable interval in �1. Since ��max{pi|Ji�S}�x/2, wehave C(�1,�1)�C� *�x/2�C*�C*/2�3C*/2.

Case 2. |N|�1 Without loss of generality, we assumethat Jn�N. When s1 � pn, if �i�1

n�1pi � s1, it is easy to provethat (�1, �1) produces an optimal solution for the problem;otherwise, similar to Case 1 above, we can show thatC(�1,�1) � 3C*/2.

When s1 � pn, we have �i � 1n � 1 pi � s1; otherwise,

�i � 1n pi � pn � s1 � 2pn � �i�1

n pi � �, a contradiction.We may first determine a partition S1 and S2 of S and then

sequence the jobs in S1 and S2 before and after the unavail-able interval, respectively. According to Properties 4 and 5,we determine a delivery scheme. Denote by � the set of allthe partitions of S, i.e., � � {(S1,S2)|S1�S2�S andS1�S2 � �}. We define two subsets of � as �1 �{(S1,S2)|(S1,S2)�� and Jn�S2} and �2�{(S1, S2)|(S1,S2)�� and Jn�S1}. Obviously, we have �1��2��and �1��2��. In the following, we may identify the bestsolution for these two subsets, respectively.

For the case (S1,S2)��1, if the optimal solution is in �1,since �i�1

n�1pi�s1, we can improve the performance of thesolution by moving any job Jk(Jk�Jn) of S2 to S1. Thus, inan optimal solution, the partition (S1,S2) should satisfy thatS1�S�{Jn} and S2�{Jn}. According to Lemma 2, we caneasily prove that the solution produced by (�1,�1) is the bestof those obtained by all the partitions in �1.

For the case (S1,S2)��2, if the optimal solution in �2, wehave C(�2,�2)�C� *��, where C� * is the optimal solution forthe problem 1|r�a, D|Cmax with Jn being sequenced justbefore the unavailable interval, and � being the idle time justbefore the unavailable interval in �2. Then,C(�2,�2)�C� *���C� *�x/2�C*�C*/2�3C*/2.

Summarizing the cases (S1,S2)��1 and (S1,S2)��2, wehave CH1 � min{C(�1,�1),C(�2,�2)}�3C*/2.

The following instance shows that the bound is tight.Consider an instance with p1��,p2�A,p3�A,s1�2A,t1�2A��, T��/2, and K�1. Applying Heuristic H1yields �1 � �2 � [J1,J2,J3], and CH1�3A�2� (see Fig. 2a).The optimal solution sequences the jobs as [J2,J3,J1], withC*�2A�3� (see Fig. 2b). Hence, (CH1 � C*)/C* ap-proaches 1/2 as A approaches infinity.

5. PROBLEM P2|r � a, D|CMAX

We now consider the problem in the setting with twoidentical parallel machines in the manufacturing center.Over the production period, M1 is always available forprocessing jobs and there exists an unavailable interval onM2 due to preventive maintenance. More precisely, weassume that (�i�1

n pi��)/2�t1 for the unavailable interval.Each job can be processed on either machine. An unfinishedjob can resume processing after M2 becomes availableagain.

Figure 2. The solutions of Heuristic H1 and an optimal solution. (a) The solutions (�1, �1) and (�2, �2). (b) The optimal solution (�*,�*).

16 Naval Research Logistics, Vol. 54 (2007)

Naval Research Logistics DOI 10.1002/nav

The finished jobs must be delivered to a distributioncenter. Only one vehicle is available for transportation andone shipment can load at most K products as a deliverybatch. A delivery batch may consist of the finished jobsprocessed by either machine, which is different from thedelivery batch defined by Chang and Lee [1]. Our assump-tion is more practical since a finished job is available fordelivery no matter which machine has processed it.

The two-parallel-machine makespan minimization prob-lem without the machine availability constraint and thedelivery consideration is NP-hard (see [10]). Our model notonly involves an availability constraint on one of the ma-chines but also deals with the coordination of productionand delivery. It is more general than P2�Cmax. Therefore, itis obviously NP-hard.

Since the problem is NP-hard, it is justifiable to developa heuristic for the problem. We first identify the followingoptimal property.

PROPERTY 6. For the problem P2|r�a, D|Cmax, anoptimal solution should satisfy the following conditions:

(i) The jobs of a batch are processed consecutivelyon the two machines.

(ii) The batch that becomes available earlier is deliv-ered earlier.

(iii) The first batch includes q2 jobs, and each of thelast q1 batches includes K jobs.

Proof. Similar to the proof of Property 2.In the following heuristic, we adopt different scheduling

strategies for processing jobs in view of the characteristicsof the job processing time distributions of different probleminstances. Specifically, let (�i�1

n pi��)/2�t andN�{Ji|Ji�S,pi�2t/3}. When |N|�0, we use the SPT ruleand the assigned job earliest finished rule to produce aschedule. When |N|�2 or |N|�1, and the processing time ofthe largest job is no less t, we assign the largest job to themachine without the unavailable interval and the remainingjobs to the other machine according to the SPT rule. When|N|�1 and the processing time of the largest job is less thant, we assign some jobs with the smallest processing timesand the largest job to the machine without the unavailableinterval and the remaining jobs to the other machine. All theprocessed jobs on both machines follow the SPT rule,respectively.

Heuristic H2

Step 1. List the jobs in nondecreasing order of theirprocessing times, and without loss of generality, denote thelist S��[J1,J2,. . .,Jn].

Step 2. Proceeding from the beginning of the list S� ,assign one job at a time to a machine such that the finishingtime of the job is minimized. The schedule is denoted as �1.According to Property 6, determine a delivery scheme �1,and deliver each job batch as early as possible.

Step 3. Assign job Jn of S� to M1 and the remaining n�1jobs to M2, and process the n�1 jobs in nondecreasing orderof their processing times on M2. The schedule is denoted as�2. According to Property 6, determine a delivery scheme�2, and deliver each job batch as early as possible.

Step 4. From list S��[J1,J2,. . .,Jn], select (n�h) jobsJh,. . .,Jn�1 such that Jh�. . .�Jn�1 � � � t andJh�1�Jh�. . .�Jn�1�� � t. Sequence the jobsJ1,. . .,Jh�1,Jn and Jh,. . .,Jn�1 in nondecreasing order oftheir processing times on M1 and M2, respectively. Thus, weobtain a schedule �3. According to Property 6, generate adelivery scheme �3. Deliver each batch as early as possible.

Step 5. Let CH2�min{C(�1,�1), C(�2,�2),C(�3,�3)}.Stop.

Since generating a list in Step 1 requires O(nlogn) time,and Step 1 is dominant in Heuristic H2, the time complexityof Heuristic H2 is O(nlogn).

For a solution (�,�) of the problem P2|r�a, D|Cmax, wedefine a delivery batch Bi as a critical batch if Bi is the lastdelivery batch such that C(�,�)��(Bi)�2(q1�i�2)T.

THEOREM 3. For the problem P2|r�a, D|Cmax,(CH2�C*)/C*�2/3.

PROOF. We assume that the jobs in S�[J1,J2,. . .,Jn]are indexed in nondecreasing order of their processingtimes. Clearly, |N|�2. We discuss the following three cases.

Case 1. |N|�0 For this case, we consider the solution(�1,�1). For schedule �1, let C� max(�1) denote the completiontime of the last processed job. We have C� max(�1)�pn�t. Ifpn � 2t/3, then

C� max�1 � t 2t/3 5t/3. (1)

We assume that �1�[B1,B2,. . .,Bq1�1] andC(�1,�1)��(Bh)�2(q1�h�2)T. For an optimal solution(�*, �*) of the problem, we assume that its delivery schemeis �*�[B1*,B2*,. . .,Bq1�1*]. Then there exists a criticalbatch Bk* such that C* � �(Bk*)�2(q1�k�2)T.

Let Nh � B1�. . .�Bh and th be the time instant such thatthe sum of the available time on both machines up to th isequal to �Ji�Nh

pi. Similar to (1), we have �(Bh)�5th/3. Inschedule �1 of Heuristic H2, we have Nh �{J1,J2,. . .,J(h�1)K�q2

} with p1 � p2 � . . . � p(h�1)K�q2. Let

Nh* � B1*�. . .�Bh*, if the set of the jobs in Nh* is such

17Wang and Cheng: Machine Scheduling and Delivery Coordination

Naval Research Logistics DOI 10.1002/nav

that p1*�p2*�. . .�p(h�1)K�q2*, we have pi � pi* for i �

1,2,. . .,(h�1)K � q2. Therefore, we have th � �(Bh*).Thus, �(Bh) � 5th/3 � 5�(Bh*)/3 for h � 1, 2, . . ., q1 � 1.

If k � h, then we have C(�1, �1) ��(Bh)�2(q1�h�2)T � 5�(Bk*)/3 � 2(q1� k � 2)T �5C*/3.

If k � h, then �(Bk*) � �(Bh*) � 2(k � h)T. Thus, C*� �(Bk*) � 2(q1�k � 2)T � �(Bh*) � 2(q1 � h � 2)T.Then, C(�1,�1) � �(Bh) � 2(q1 � h � 2) T � 5�(Bh*)/3 �2(q1 � h � 2)T � 5C*/3.

If k � h, then �(Bh*) � �(Bk*) � 2(k � h)T. Thus,C(�1,�1) � �(Bh) � 2(q1 � h � 2)T � 5�(Bh*)/3 � 2(q1 �h � 2) � 5[�(Bk*) � 2(q1 � k � 2)T]/3 � 5C*/3.

Case 2. |N| � 2 In this case, N � {Jn�1, Jn}. Weconsider the solution (�2,�2). If the last job of the criticalbatch Bh belongs to S�{Jn�1, Jn}, then C(�2,�2) � �(Bh) �2(q1 � h � 2)T � 2t/3 � 2(q1 � h � 2)T � 5C*/3.

If the last job of the critical batch Bh is Jn, since Jn andJn�1 are processed on M1 and M2, respectively, then wehave �(Bh) � 2t � pn�1 � 4t/3. Then, C(�2,�2) � �(Bh) �2(q1 � h � 2)T � 4t/3 � 2(q1 � h � 2)T. If q1 �0, thenC(�2,�2) � 4t/3 �2T � 4C*/3; otherwise, q1 � 1, sincethere exists at most one job Jn�1 processed after Jn in �2, wehave C(�2,�2) � 4t/3 � 2T � 2T. When t � 2T, since alower bound for the solution is no less than 4T, we haveC(�2,�2) � (t � 2T) � 2(t/2 � 3T)/3 � 4T � 4T � 2/3�C*� 2C*/3 � 5C*/3; when t � 2T, C(�2,�2) � (t � 2T) �2(t/2 � 3T)/3 � (t � 2T) � 2(t � 2T)/3 � 5C*/3.

If the last job of the critical batch Bh is Jn�1, similar to theabove analysis of the case of Jn, we can also prove thatC(�2,�2) � 5C*/3.

Case 3. |N| � 1 In this case, N � {Jn}. We considerthe following three subcases (i), (ii), and (iii).

(i) When pn � 4t/3, we can easily prove thatC(�2,�2) � 5C*/3 for this subcase.

(ii) When 2t/3 � pn � t, we focus on the solution(�3,�3).

If the last job of the critical batch Bk is finished in the timeinterval (0, 2t/3], then we have C(�3,�3) � �(Bk) � 2(q1 �k � 2)T � 2t/3 � 2(q1 � k � 2)T � 5C */3.

We now consider the situation that the last job of thecritical batch Bk is finished in the time interval [t, 2t]. Since(p1 �. . .� ph�1) � (ph �. . .�pn�1) � � �pn � 2t and (ph

�. . .� pn�1) � � � t � ph�1, we have (p1 �. . .�ph�1) �pn � t � ph�1. Notice that ph�1 � 2t/3 and pn � 2t/3, andwe have p1 �. . .� ph�1 � t. We also know that ph �. . .�pn�1 � � � t. Therefore, when ph �. . .� pn�1 � � � t, ifthe last job of the critical batch Bk is finished in the timeinterval [t, 2t], this job should be Jn. Thus, we haveC(�3,�3) � �(Bk) � 2T � 5t/3 �2T � 5C*/3. When ph

�. . .� pn�1 � � � t, then (p1 �. . .� ph�1) � pn � t. Ifthe last job of the critical batch Bk is finished in the timeinterval [t, 2t], then we have C(�3,�3) � (�(Bk) � 2T) � 2T� t � 4T � 3 max {4T,t � 2T}/2 � 3C*/2.

In the following we focus on the situation where the lastjob of the critical batch Bk is finished in the time interval(2t/3, t).

We set pn � 2t/3 � x, then 0 � x � t/3. Since ph �. . .�pn�1 � t � � � p h�1 and (p1 �. . .� ph�1) � (ph �. . .�pn�1) � 2t � � � pn � 4t/3 � � � x, we have

p1 · · · ph�1 t/3 ph�1 � x. (2)

If ph�1 � t/3 � x, from (2), we have p1 �. . .� ph�1 �2t/3. Then, there exist at least h � 1 jobs in the interval (0,2t/3] for schedule �3. Because max{p1, p2, . . ., ph�1

} �min{ph, ph�1, . . ., pn�1} and the set of the jobs finished in(2t/3, t) includes at most Jh, Jh�1, . . ., Jn�1 (this implies theassumption of ph �. . .� pn�1 � � � t; otherwise, if ph

�. . .� pn�1 � � � t, then l1 � 2l2 holds, and we can alsoreach the final conclusion), noticing that the completiontime of Jn is later than time t, we have h � 1 � 2[(n � 1) �(h � 1) � 1] � 2(n � h � 1). If we denote the number ofthe jobs finished in (0, 2t/3] and (2t/3, t) as l1 and l2,respectively, then we have l1 � h � 1 and l2 � n � h; thus,l1 � 2(l2 � 1).

When K � 1, we have l1 � l2 � 1 � Kq1 � q2 � n, andC(�3,�3) � �(Bk) � 2(l2 � 1)T � (t � 2T) � 2l2T. Whenl2 � 1, since p1 �. . .� ph�1 �2t/3, we have l1 � 1; whenl2 � 2, we have l1 � 2; when l2 � 2, we have l1 � l2. Notethat t � 2T and 2(l1 � l2 � 1)T are lower bounds for theproblem; therefore, we have C(�3,�3) � (�(Bk) � 2T) �2l2T � 3C*/2.

When K � 2, we denote the number of batches with avail-able delivery times in (0, 2t/3] and (2t/3, t) as l1� and l2�,respectively. When l2 � 1, noting that only one job is finishedin [t, 2t] and the last delivery batch includes K � 2 jobs, wehave l2� � 0; when l2 � 2, we have l2��l1�. Note that t � 2Tand 2(l1� � l2� � 1)T are lower bounds for the problem;therefore, we have C(�3,�3) � (t � 2T) � 2l2�T � 3C*/2.

If ph�1 � t/3 � x, since min{ph, . . . , pn�1} � t/3 � x,there exists at most one job finished in (2t/3, t) on M2. If p1

�. . .� ph�1 � 2t/3, from (p1 �. . .� ph�1) � pn � 5t/3 andpn � 2t/3, we have p1 �. . .� ph�1 � t, then there exists onejob finished in (2t/3, t) on M1; thus, l2 � 2. Since max{p1,. . ., ph�1} �2t/3, there exists at least one job finished in (0,2t/3] on M1; thus, l1 � 1. When K � 1, we have l1 � 1�l2,since t � 2T and 2(l1 � l2 � 1)T are lower bounds, thenC(�3,�3) � (t � 2T) � 2l2T � 3C*/2. When K � 2, if l2�� 1, then l1� � l2� � 1 � 2. Thus, C(�3,�3) � (t � 2T) �2l2�T � 3C*/2; if l2� � 0, there exists no critical batch withavailable delivery time in (2t/3, t). When K � 3, we have l2�� 0, so there exists no critical batch with available deliverytime in (2t/3, t).

18 Naval Research Logistics, Vol. 54 (2007)

Naval Research Logistics DOI 10.1002/nav

(iii) When t � pn � 4t/3, we consider the solution(�2,�2). Similar to (ii), we can prove that theconclusion holds.

Although we cannot show that the bound is tight, thefollowing example demonstrates that the performancebound of Heuristic H2 is no less than 4/3. Consider aninstance with K � 1, T � �, p1 � 2 � 2�, p2 � 2 � 2�,p3 � 2 � �, p4 � 2 � �, p5 � 4 � �, s1 � 2 � 2�, t1 �2 � �, and the unavailable interval is on M2. Let(�i�1

5pi � �)/2 � t, then t � 6. Applying Heuristic H2,�1 is [J1,J4] on M2 and [J2,J3,J5] on M1, then C(�1,�1) �

4t/3 � 2� (see Fig. 3a). �2 is [J1,J2,J3,J4] on M2 and J5

on M1, then C(�2,�2) � 4t/3 � � (see Fig. 3b). �3 is[J3,J4] on M2 and [J1,J2,J5] on M1, then C(�3,�3) �4t/3�� (see Fig. 3c). Thus, CH2 � 4t/3 � �. However, anoptimal solution �* is [J2,J3,J4] on M2 and [J1,J5] on M1,yielding C* � t � 3� (see Fig. 3d). When � approacheszero, (CH2 � C*)/C* approaches 1/3.

6. CONCLUSIONS

We studied the scheduling problem that considers bothproduction and delivery of finished jobs at the same time.Only one vehicle is available for delivering jobs and theload capacity of the vehicle is no more than a givennumber of jobs. The objective is to minimize the arrivaltime of the last delivery batch to the distribution center.We studied three scenarios of the problem and proposedan optimal algorithm and two heuristics for them. For theproblem 1|nr � a, D|Cmax, our heuristic yields a worst-case error bound of 1/2 and this error bound is tight. Forthe problem P2|r � a, D|Cmax, our heuristic has a worst-case error bound of 2/3.

ACKNOWLEDGMENTS

We are grateful to an Associate Editor and two anony-mous referees for their constructive comments on earlierversions of our paper. This research was supported in partby The Hong Kong Polytechnic University under a grantfrom the Area of Strategic Development in China BusinessServices.

REFERENCES

[1] Y.-C. Chang and C.-Y. Lee, Machine scheduling with jobdelivery coordination, Eur J Oper Res 158 (2004), 470–487.

[2] S.S. Erenguc, N.C. Simpson, and A.J. Vakharia, Integratedproduction/distribution planning in supply chains, Eur J OperRes 115 (1999), 219–236.

[3] N.G. Hall and C.N. Potts, Supply chain scheduling: Batchand delivery, Oper Res 51 (2003), 566–583.

[4] C.-Y. Lee, Machine scheduling with an availability con-straint, J Glob Optim 9 (1996), 395–416.

[5] C.-Y. Lee, Machine scheduling with availability constraints,Handbook of Scheduling, J. Leung, Editor, CRC Press, 22.1–22.13.

[6] C.-Y. Lee and Z.-L. Chen, Scheduling jobs and maintenanceactivities on parallel machines, Nav Res Logist 47 (2000),145–165.

[7] C.-Y. Lee and Z.-L. Chen, Machine scheduling with trans-portation considerations, J Schedul 4 (2001), 3–24.

[8] C.-Y. Lee, L. Lei, and M. Pinedo, Current trends in deter-ministic scheduling, Ann Oper Res 70 (1997), 1–41.

Figure 3. The solutions of Heuristic H2 and an optimal solution.(a) The solution (�1, �1). (b) The solution (�2, �2). (c) Thesolution (�3, �3). (d) The optimal solution (�*, �*).

19Wang and Cheng: Machine Scheduling and Delivery Coordination

Naval Research Logistics DOI 10.1002/nav

[9] C.-Y. Lee and S.D. Liman, Capacitated two-parallel ma-chines scheduling to minimize sum of job completion times,Discr Appl Math 41 (1993), 211–222.

[10] J.K. Lenstra, A.H.G. Rinnooy, and P. Brucker, Complexity ofmachine scheduling problems, Ann Discr Math 1 (1977), 342–362.

[11] C.-L. Li, G. Vairaktarakis, and C.-Y. Lee, Machine schedul-ing with deliveries to multiple customer locations, Eur J OperRes 164 (2005), 39–51.

[12] C.-T. Liao, D.-L. Shyur, and C.-H. Lin, Makespan minimi-zation for two parallel machines with an availability con-straint, Eur J Oper Res 160 (2005), 445–456.

[13] C.N. Potts and M.Y. Kovalyov, Scheduling with batching: Areview, Eur J Oper Res 120 (2000), 228–249.

[14] C.N. Potts and L.N. Van Wassenhove, Integrating schedulingwith batching and lot-sizing: A review of algorithms andcomplexity, J Oper Res Soc 43 (1992), 395–406.

[15] G. Schmidt, Scheduling with limited machine availability,Eur J Oper Res 121 (2000), 1–15.

[16] D.T. Thomas and P.M. Griffin, Coordinated supply chainmanagement, Eur J Oper Res 94 (1996), 1–15.

[17] S. Webster and K.B. Baker, Scheduling groups of jobs on asingle machine, Oper Res 43 (1995), 692–703.

20 Naval Research Logistics, Vol. 54 (2007)

Naval Research Logistics DOI 10.1002/nav