Research Article Two Parallel Machines Scheduling with Two-Vehicle Job Delivery to Minimize Makespan

A problem of parallel machine scheduling with coordinated job deliveries is handled to minimize the makespan. Diﬀerent jobs call for dissimilar sizes of storing space in the process of transportation. A range of jobs of one customer in the problem have priority to be processed on two identical parallel machines without preemption and then delivered to the customer by two vehicles in batches. For this NP-hard problem, we ﬁrst prove that it is impossible to have a polynomial heuristic with a worst-case performance ratio bound less than 2 unless P � NP. Thereafter, we develop a polynomial heuristic for this problem, the worst-case ratio of which is bounded by


Introduction
Production and distribution operations are two key operational functions in a supply chain; it is critical to integrate these two functions and schedule them jointly in a coordinated manner so as to achieve optimal operational performance [1]. However, in traditional scheduling problems, it is always assumed that there are enough vehicles for delivery of jobs that are finished with no time needed for transportation. Unlike conventional scheduling, a scheduling problem with two stages is investigated in the current research, with the first stage for processing jobs on two parallel machines while the second for delivering jobs that are finished using two vehicles.
In integrated production and outbound distribution scheduling (IPODS) problems, it is required to coordinate scheduling, batching, and delivery decisions at all levels of the supply chain in order to minimize the overall scheduling and delivery cost [2]. In the last two decades, various IPODS models have been widely studied. Chen [1] conducted a comprehensive survey on these models. Based on the survey, the problem of interest is regarded as an IPODS model of jobs with general size and a finite quantity of vehicles. erefore, in the following, we just review a few closely related research works. In recent years, some works on IPODS models with parallel machines and equal-size jobs were done, in which all the jobs have the same size. For example, Hall and Potts [3] studied several models having enough vehicles. In their models, all the finished products are delivered to one customer. e models with multiple customers were also investigated in [4,5]. Wang and Cheng [6] ever studied a model with two identical parallel machines and a single vehicle to minimize the makespan. In this model, an unavailable interval existed on one of the machines due to preventive maintenance, and an unfinished job can resume processing after the machine becomes available again. ey showed that the problem is NP-hard and proposed a heuristic with a worst-case ratio of 5/3. Recently, Pan and Su [7] developed an improved heuristic with a worstcase ratio of 3/2. Obviously, for the models where the jobs have generally different sizes, it will be considerably tougher to resolve compared with models involving jobs of equal size since the batching decision now involves bin packing, which alone is NP-hard in the strong sense [8] in the case that it does not allow split delivery. Chang and Lee [9] took the lead to research models involving jobs of general size. In accordance with their models, one can use only a vehicle for delivery of jobs during the second stage. ey proposed two heuristics with worst-case ratio of 5/3 and 2, respectively, for the models with single machine configuration and two identical parallel machine configurations. After that, several improved heuristics were proposed. For the model with single machine configuration, He et al. [10] and Zhong et al. [11] put forward a modified heuristic and a most feasible heuristic with ratios in the worst case of 53/35 and 3/2 + ϵ, where ϵ is positive and can be an arbitrary value approximating 0; for the model with two identical parallel machine configurations, Zhong et al. [11] provided a heuristic with a worst-case ratio of 5/3, and Su et al. [12] proposed a heuristic with a worst-case ratio of 63/40, except for two particular cases. For the model with more than one vehicle, Chen and Pundoor [13] carried out a research study on a model having enough vehicles and all jobs therein have their deadlines. For the purpose of minimizing total cost for transportation, they developed a heuristic for the model. Jiang and Tan [14] designed a polynomial-time heuristic with a worst-case ratio of 2 for the model with a single machine and two vehicles. However, to the best of our knowledge, little attention is paid on the models with identical parallel machines and a finite number of vehicles not less than two. e problem we study is an extension of the model studied by Jiang and Tan [14], in which the machine environment in the first stage is extended from one machine to two identical parallel machines. e problem in the research is summarized as follows: for a cluster of customer's jobs with the number of n and independent from each other, N � J 1 , J 2 , . . . , J n , each of which must be first nonpreemptively processed by one of the two identical parallel machines, M 1 and M 2 , in a manufacturing system and then delivered to the customer. Job J j , j � 1, 2, . . . , n, needs a processing time of p j in the manufacturing system and has a size s j which represents the physical space J j as it is loaded in vehicles. ere are two homogeneous vehicles (V 1 and V 2 ) that can be used for delivery of batched completed jobs originally in the manufacturing system. e capacity of each of the vehicles is z. It indicates that one can arrange completed jobs to match the physical space of vehicles provided the total size is smaller than z. One delivery batch refers to jobs that are delivered all at once by the same vehicle. One vehicle takes a time period of T, for transportation while delivering a batch of jobs, a duration from the beginning moment of the vehicle in delivery of the batch to that when it goes back to the machine after the delivery. As for the goal, it is to search for a schedule of handling jobs in manufacturing systems, followed by delivery of completed jobs to customers so as to minimize the time needed for all jobs in N waiting for processing and delivery to customers. For ease of analysis, makespan of a schedule is defined as C max . It is duration from one of the vehicles accomplishing delivery of the last batch to customers to the moment it goes back to the manufacturing system. Under the condition, what we need to solve is to search for a schedule that can minimize the makespan.
Since so far as we know that we are the first to consider the model with two machines and two vehicles, this paper has two objectives. Our first objective is to analyze the computational complexity of our model and provide some optimality properties satisfied by the model. Also, the wellknown algorithms for similar models could not solve our model. So, our second objective is to develop a fast heuristic targeting the problem. Organization of the rest of the research is shown as follows: Section 2 introduces notations, along with several optimality properties of the problem of interest at first. Section 3 provides a heuristic for the problem of interest, followed by analysis of performance of the heuristic in the worst case. Section 4 draws on conclusions.

Notations and Preliminaries
e section introduces the following notations at first. ese notations are used uniformly throughout the paper: P: total times for processing all jobs in a manufacturing system, i.e., P � n j�1 p j . As to a schedule δ for the problem, it is defined that b(δ): total quantity of batches to be delivered in δ. For each k � 1, . . . , b(δ), we define the following: sum of processing times of all the jobs in batch B k (δ). σ k (δ): time for a vehicle to depart from the manufacturing system for delivering B k (δ). ρ k (δ): time for preparation of B k (δ), representing the latest time for completing processing of jobs allocated to B k (δ). It is worth noting that in any possible schedule, there is σ k (δ) ≥ ρ k (δ). Unless it is ambiguous, B k (δ), P k (δ), σ k (δ), and ρ k (δ) are simplified as B k , P k , σ k , and ρ k , separately. For the optimum schedule, it is defined that C * max : optimum makespan. C max (M) * : time moment at which machines complete processing of the last job. b * : amount of batches delivered.
Several optimality properties of the problem are given as follows. Because of straightforwardness of the conditions, the proofs are omitted. Lemma 1. An optimal schedule exists for a problem meeting the following conditions: (i) ere is no idle time between the jobs processed on any machine (ii) For each delivery batch, all the jobs in the batch that are processed on the same machine are processed consecutively on that machine (iii) Jobs assigned to one batch and processed on the same machine can be processed on that machine in any order

Complexity
Hence, only schedules that satisfy the above properties are considered further.
Clearly, our problem is NP-hard since a special case with transportation time T � 0 is equivalent to solving the classical two parallel machine makespan minimization problems, which are NP-hard.

Lemma 3.
It is impossible to have a polynomial heuristic with a worst-case performance ratio bound less than 2 unless P � NP.
Proof. We prove this by a reduction from the following PARTITION problem, which is known to be NP-complete [8].
PARTITION: Given n natural numbers a 1 , . . . , a n , is there a subset S ⊆ 1, . . . , n { } such that i∈S a i � i∉S a i ? Given this instance of PARTITION, we consider an instance of our problem with n jobs, J 1 , . . . , J n , where for j � 1, . . . , n. (1) As a subset S * ⊆ 1, . . . , n { } satisfying i∈S * a i � i∉S * a i can be attained. It is obvious that the above PARTITION instance has an affirmative answer when and only when there are two batches formed in the optimal schedule for the instance. As to the schedule, jobs in J j | j ∈ S * and J j | j ∉ S * are separately processed by machines M 1 and M 2 followed by assignment to two different batches, each of which is delivered by one vehicle, with the makespan of C max � T. In contrast, it needs three batches or more for the instance for any subset S ⊆ 1, . . . , n { } satisfying i∈S a i ≠ i∉S a i . One of the vehicles at least delivers two batches, so the makespan of relevant schedule is It is assumed that there exists a polynomial heuristic for our problem with worst-case ratio bound less than 2. For the formation of two batches under the optimal schedule of the instance, as has been noted, the optimal makespan is C * max � T. It is obvious that the presumptive algorithm is able to search the optimal schedule all the time, as the makespan C max � 2T when 3 batches are under demand.
is is supposed to be a polynomial-time algorithm for which the bound of a performance ratio in the worst case is 2. erefore, through the reduction above, the algorithm is able to resolve the PARTITION instance just in the polynomial time, implying that P � NP, which contradicts our claim that P ≠ NP. erefore, for the problem, there is no possibility for obtaining a polynomial heuristic with a worst-case performance ratio bound less than 2 unless P � NP.

Heuristic
In this section, we first introduce the following algorithm FFD (First Fit Decreasing) [15], which is a classical algorithm for solving the bin-packing problem. It will be applied to constitute batches in the heuristic proposed. Note that vehicle capacity (z) and job sizes (s j ) proposed in the research underlay the algorithm FFD.

Algorithm FFD
Step 1: sort the jobs in a nonincreasing order of size (s j ) Step 2: assign the job with the largest size to B 1 Step 3: For j � 2, . . ., n, if the jth largest job is considered, then assign it to the lowest indexed batch such that the total job size of the corresponding batch does not exceed z Lemma 4 (see [16]).

For an instance I of binning, assuming that FFD(I) and OPT(I) are separate numbers of bins used for the optimal solution and the solution obtained using the FFD algorithm, we have FFD(I) ≤ (3/2)OPT(I).
In the following, we will present a heuristic for the problem and analyze its worst-case performance. is heuristic is described as follows.

Heuristic HA
Step 1: FFD algorithm is used to assign jobs to batches. Supposing the amount of formed batches is b H .
Step 2: As to jobs in batch B k , the total times for processing them are calculated and denoted as P k , for k � 1, 2, . . . , b H . e batches are retrieved so that P 1 ≤ P 2 ≤ · · · ≤ P b H .
Step 3: Batches are assigned one after another from B 1 to a machine having a lower load before assignment (allocating jobs in one batch to the same machine). Jobs in each batch are sorted according to a random order.
Step 4: e first and second vehicles are supposed to deliver all batches allocated to machines M 1 and M 2 . Each vehicle needs to distribute each finished batch waiting for delivery whenever; in the case that there are more than one batch finished under conditions that a vehicle is available, the vehicle requires dispatching a batch having the lowest index.
We first analyze the time complexity of heuristic HA. Since it is well known that the time complexity of the FFD algorithm is O(n 2 ), it will take time period O(n 2 ) in Step 1; also, it will take O(n) times to obtain all P k for k � 1, 2, . . . , b H in Step 2; the job batch assignment will cost at most O(n log n) in Step 3, and the batch delivery will take at most O(n) in Step 4 depending on b H . So, we have that heuristic HA has a time complexity of O(n 2 ). It is supposed that C H max represents the makespan from heuristic HA. Furthermore, in the solution of the heuristic, let C (1) max and C (2) max represent time moments for finishing jobs Complexity 3 sorted in the last two machines M 1 and M 2 .
Based on heuristic HA, batches are indexed in a nondecreasing order of their processing times and are assigned one by one to the machine that has a smaller load before the batch is assigned. It can be shown easily that each batch with an odd index is assigned to machine M 1 and delivered by vehicle V 1 ; for batches having even indexes, they are allocated to M 2 , followed by delivery using vehicle V 2 . Furthermore, the delivery of a batch with a smaller index happens earlier compared with that having a larger index.
Suppose that x and y are separate total times for dealing with jobs allocated to the first and second batches in a solution attained using heuristic HA, that is, x � P 1 and y � P 2 .
Proof. Because P 1 ≤ P k , for k � 1, . . . , n, according to Step 2, we have b H P 1 ≤ P and Proof. It is assumed that b * L represents the amount of batches when an optimal method is used to allocate jobs to batches, instead by algorithm FDD in Step 1. Obviously, e schedule attained using heuristic HA is considered.
Clearly, (C H max /C * max ) < 2 if b H ≥ 5. Because b H is odd and b H ≥ 3, we only need to consider the case with b H � 3. If b H � 3, then 4 Complexity

Lemma 10. If b H is even and
Obviously, (C H max /C * max ) < 2 if b H ≥ 5. Because b H is even and b H ≥ 4, we only need to consider the case with b H � 4. If b H � 4, by Lemma 6, we have b * � 3 or b * � 4.
If b H � 4 and b * � 3, then If b H � b * � 4, then According to Lemma 3 and eorem 1, we can conclude that our heuristic is a best possible polynomial heuristic for the problem.

Conclusion
e study investigated the scheduling problem involving two identical parallel machines with coordinated delivery of jobs to minimize the makespan, which can be viewed as an IPODS model involving two parallel machines that are completely the same, as well as general-size jobs. We first showed that the problem is NP-hard and then provided a polynomial heuristic for the problem. We also proved that it is impossible to have a polynomial heuristic for this problem with a worst-case performance ratio bound less than 2 unless P � NP; besides, the performance ratio of our heuristic in the worst case has a bound of 2, which means that our heuristic is the best possible one. Models involving more than two vehicles or machines are expected to be studied in future research.

Data Availability
e data used to support the findings of this study are included within the article.

Conflicts of Interest
e authors declare that they have no conflicts of interest.