Scheduling on a Single Machine and Parallel Machines with Batch Deliveries and Potential Disruption

In this paper, we study several coordinated production-delivery scheduling problems with potential disruption motivated by a supply chain in the manufacturing industry. Both single-machine environment and identical parallel-machine environment are considered in the production part. The jobs ﬁnished on the machines are delivered to the same customer in batches. Each delivery batch has a capacity and incurs a delivery cost. There is a situation that a possible disruption in the production part may occur at some particular time and will last for a period of time with a probability. We consider both resumable case and nonresumable case where a job does not need (needs) to restart if it is disrupted for a resumable (nonresumable) case. The objective is to ﬁnd a coordinated schedule of production and delivery that minimizes the expected total ﬂow times plus the delivery costs. We ﬁrst present some properties and analyze the NP-hard complexity for four various problems. For the corresponding single-machine and parallel-machine scheduling problems, pseudo-polynomial-time algorithms and fully polynomial-time approximation schemes (FPTASs) are presented in this paper, respectively.


Introduction
Production scheduling and delivery decision are two key operations in the supply chain management. Coordinated production and delivery schedules play an important role in improving optimal operational performance in the supply chain of high energy-consuming manufacturing industry. However, traditionally, the scheduling decisions of coordinated production and delivery in a firm are often made in a certain environment. In a real industry, the production scheduling environment is dynamic and uncertain. Unexpected events may occur from some time point and will last a period. ere is a situation that the internal and external factors cause various disruptions since the machines or facilities are disrupted and unavailable for a certain period of time during production, such as material shortages, machine breakdowns, power failures, quality issues, and others. is will lead to affect production efficiency, extra energy consumption, and logistics management in the service system. For example, in the iron and steel industry, the slabs are first rolled into the coils in the hot rolling mill. e coils are transported by the trucks to the customers or the downstream facilities for further processing. e slabs need high temperature to ensure to be processed on the hot rolling machines. If the disruption occurs on the hot rolling machines, it will lead to the temperature decrease of the slabs. When the disruption time exceeds a limit, the slabs must to return to the heating furnaces to re-heat to keep high temperature. is disruption will not only affect the production rhythm and increase the energy consumption in the mill but also influence the delivery decision for the customers. Hence, the reasonable scheduling for the disruption affects the revenue in the iron and steel industry. e inventory level and the total delivery cost are the major concerns for the industry managers. e inventory level is measured by a function of the flow time when the finished coils arrive to the customers. It is well understood that coordinated scheduling of production and delivery can significantly improve inventory level and reduce delivery cost.
In this paper, we study several coordinated productiondelivery scheduling problems with potential disruption motivated by the dynamic and uncertain environment. All the jobs are first finished processing on the machines and then delivered to the customers in batches. A possible disruption in the production part may occur at a particular time and will last for a period of time with a probability. We investigate the optimal strategies on how to deal with disruptions in scheduling in the single-machine environment and identical parallel-machine environment, respectively. e objective is to find a feasible schedule to minimize the expected total flow times and the delivery costs.
Many coordinated scheduling problems with production and delivery in most manufacturing systems consider the balance relationship between the finished products and the transportation or delivery. Chen [1] presented a survey of integrated production and outbound distribution scheduling with batch delivery. Wang et al. [2] provided a survey of the integrated scheduling models of production and distribution.
e coordinated scheduling problems of production and transportation with batching decisions in the iron and steel industry are considered in [3][4][5][6]. Some researchers addressed production and distribution scheduling of minimizing the sum of the total (weighted) flow time and delivery cost from a batch delivery point of view. is environment is related to batching because all the completed jobs are delivered in batches to the customer. Hall and Potts [7] considered the single-machine or identical parallelmachine scheduling problems in supply chain with batch deliveries. Wang and Cheng [8] considered a parallel-machine scheduling problem with batch delivery cost where the batch delivery date is equal to the completion time of the last job in a batch. Chen and Vairaktarakis [9] considered the single-machine and parallel-machine scheduling problems with distribution scheduling and routing for delivery of completed jobs to the customers. Wan and Zhang [10] studied the extension of the parallel-machine scheduling problem with batch delivery. e above scheduling literatures do not deal with the coordination of production and delivery related to potential disruptions. e research on machine scheduling with potential disruption has some results in a significant amount of interest in production scheduling research. Lee and Yu [11] considered the single-machine scheduling problems with potential disruptions due to external factors where the objective functions are the expected total weighted completion times and the expected maximum tardiness. Lee and Yu [12] further considered the parallel-machine problems to minimize the expected total weighted completion time. Yin et al. [13] considered the parallel-machine scheduling problems with deterioration in a disruptive environment in which the machines may be unavailable due to potential disruptions. Zheng and Fan [14] studied the parallel-machine scheduling problems with position-dependent processing times under potential disruption. Lee et al. [15] considered a two-machine scheduling problem with disruptions and transportation considerations. In [15], once one machine undergoes disruption and is unavailable, the jobs can either be moved to other available machines for processing, which consider transportation time and transportation cost, or be processed by the same machine after the disruption.
In this paper, we study coordinated scheduling problems with potential disruption and batch deliveries considering single machine or identical parallel machines. Our problem is an extension of the problem proposed by Gong et al. [6] and Hall and Potts [7], who studied the single-machine and parallel-machine scheduling problems with batch delivery without potential disruption. On the other hand, our problem is a natural extension of the problem proposed by Lee and Yu [12], who studied the parallel-machine problem under potential disruption without production and delivery coordination. We develop coordinated scheduling on the single machine and parallel machines with both batch deliveries and potential disruption in this paper. Both resumable case and nonresumable case are considered in this paper where a job does not need (needs) to restart if it is disrupted for a resumable (nonresumable) case. e objective is to minimize the sum of the expected total flow time and total delivery costs. To the best of our knowledge, the scheduling problems with batch deliveries and potential disruption on the single machine and parallel machines have never been discussed. In this paper, we first pinpoint the difficulty by reducing the problems to be NP-hard. We also present pseudo-polynomial-time algorithms to solve these problems and further show that the problems proposed in this paper are NP-hard in the ordinary sense, respectively. Finally, we provide fully polynomial-time approximation schemes via the scaling and trimming techniques to solve the problems.
For many NP-hard scheduling problems, it will be clearly hard to find optimal schedules in a time-effective manner. e existence of a pseudo-polynomial-time algorithm for a NP-hard problem means that this NP-hard problem is ordinarily NP-hard, but not strongly NP-hard [16]. A fully polynomial-time approximation scheme (FPTAS) for a problem is an approximation scheme with a time complexity that is polynomial in the input size n and in 1/ε for any given ε > 0. With regard to worst-case approximations, an FPTAS is the strongest possible polynomialtime approximation result that one can obtain for an NPhard problem unless P � NP [17]. e rest of the paper is organized as follows. We introduce the problem description and some properties in Section 2. In Section 3, we provide the algorithms and approximation schemes for the single-machine scheduling problems. Section 4 deals with two-parallel-machine problems and develops the corresponding algorithms and approximation schemes. Section 5 provides a conclusion and some suggestions for future research.

Problem Description and Notation
In this section, we describe our problems briefly. ere are n jobs {J 1 , . . ., J n } to be first processed on either a single machine or m identical parallel machines M 1 , . . ., M m , all to be delivered in batches to the same customer. Each machine can process at most one job at a time. All the jobs are available for processing at initial time. For job J j , let a j and C j be the processing time and the completion time on the machine, respectively. Preemption may happen for some jobs if potential disruption of some machines happens. We assume that a machine disruption occurs at time point r and will last for α time units (α � 0, 1, . . . , c) with a certain probability p α . e machines are the same for all the disrupted machines once the disruption occurs. Here, p 0 is the probability that the potential disruption will not happen and the machine is always available. Without loss of generality, we assume the machine disruption situation that the disruption may happen simultaneously on the first k machines M 1 , . . ., M k , with 1 ≤ k ≤ m. Let A j � j i�1 a i represent the total processing time for the first jobs J 1 , . . ., J j . Set a max � max a j : j � 1, . . . , n .
Once the disruption machines have unavailable time intervals [r, r + α], the disrupted jobs need to restart on the machines. We consider two cases: resumable and nonresumable. If a job is disrupted during processing on some disrupted machine, it is called resumable (nonresumable) that the job does not need (needs) to restart when the machine becomes available again. For the resumable case, the remaining part of the disrupted job will continue at time point r + α without any penalty. For the nonresumable case, the disrupted job needs to restart at time point r + α.
In the delivery part, a fleet of transporter for delivering the jobs in batches to the same customer will be viewed as a single transporter because they have common departure times and return times. A group of jobs forms a delivery batch B l if all of these jobs are delivered to the customer simultaneously. e number of jobs in a delivery batch cannot exceed the delivery capacity C. Let y be the number of delivery batches for all jobs in a schedule. Delivering a batch will incur a fixed delivery cost D. e single transporter is located at the production area at initial time. Assume that T/2 is the transportation time from the machine to the customers, and the return time from the customer to the machine is T/2. ere is at least minimum time interval T between any consecutive batches. Let F j denote the flow time of job J j when it is delivered to the customer. e objective that we consider is to schedule the jobs for production and delivery such that the sum of the expected total flow times E[ F j ] and the delivery costs Dy is minimized. e problems considered in this paper can be expressed as 1|T, disruption| E[ F j ] + Dy and P m |T, disruption| E[ F j ] + Dy by adopting the notation introduced by Hall and Potts [7]. e four various problems can be expressed as follows: (1) Next, we analyze the complexity of the problems studied in this paper.
For the single-machine scheduling problem with batch deliveries without delivery capacity, problem 1|T| F j + Dy proposed by Hall and Potts [7] is optimal to sequencing the jobs in SPT rule. Note that a special case of our problem 1|T, disruption| E[ F j ] + Dy, in which the delivery part is ignored and the objective is to minimize E[ C j ], was studied by Lee and Yu [11]. On the other hand, even if p 0 � 1 (it means that the disruption will certainly happen in a fixed period), problem 1|disruption| E[ C j ] in [11] is ordinarily NP-hard. We extend 1|T| F j + Dy to consider disruption constraint and 1|disruption| E[ C j ] to consider delivery coordination. Hence, P1 and P2 proposed in this paper are NP-hard.
For the parallel-machine scheduling problem with batch deliveries, Pm|T| F j + Dy is shown NP-hard in the ordinary sense by Gong et al. [6] even if the potential disruption does not happen. Hence, Pm|T, disruption | E[ F j ] + Dy is at least NP-hard even if p 0 � 0. If the delivery is ignored, two-parallel-machine scheduling problem with potential disruption is already NP-hard even if p 0 � 1 as presented by Lee and Yu [12]. Hence, our problems P3 and P4 are also NP-hard.
In [6,7], the goal is to determine the job sequencing on the machines and the job partitioning into delivery batches, but not considering the machine potential disruption. In [11,12], they made the production scheduling decision on potential disruption according to two sequential decisions at 0 and disruption r. In this paper, we need to not only sequence the jobs on the single machine or parallel machines and reschedule the jobs with disruption consideration in the production part but also partition the jobs into delivery batches in the delivery part. In this paper, we will derive the corresponding pseudo-polynomial-time algorithms for problem 1|T, disruption| E[ F j ] + Dy and P m |T, disruption| E[ F j ] + Dy based on dynamic programming, respectively. Furthermore, the fully polynomial-time approximation schemes are provided for four problems that show that the problems are NP-hard in the ordinary sense. e following properties hold for both resumable and nonresumable cases.

Complexity
Proof. Assume an optimal schedule π * . If π * contains jobs that are not sequenced in SPT rule, then J j is followed by J i where a j > a i .
(1) If J j and J i are assigned into the same delivery batch, then the jobs can be sequenced in the SPT rule without affecting the objective cost. (2) If J j is the last job in batch B l − 1 and J i is the first job in batch B l , then form a schedule π with B l − 1 ∪ {i}\{j} and B l ∪ {j}\{i} by interchanging J j and J i . Before r or after r, B l − 1 ∪ {i}\{j} in schedule π is delivered at the same time as batch B l − 1 in schedule π * , and B l ∪ {j}\{i} in schedule π is delivered at the same time as batch B l in schedule π * . All other delivery batches are identical and delivered at the same time in π as in π * . Hence, the objective cost associated with π is the same as the objective cost associated with π * . Repeating the argument can find an optimal schedule with SPT rule. Proof. For any given scenario α, Lemma 3 shows that the subproblem is optimal to schedule the jobs finished no later than r or after r in the SPT rule when M i can be viewed as a single machine. For all possible scenarios α and all the machines, this argument holds when the objective is to minimize E[ F j ] + D y .

Single-Machine Scheduling
In this section, two pseudo-polynomial-time algorithms to solve two single-machine problems with the nonresumable case (P1) and the resumable case (P2) are developed, respectively. Furthermore, we will convert the dynamic programming algorithms into fully polynomial-time approximation schemes (FPTASs) to solve problems P1 and P2. We will recall the definition of an FPTAS in Section 3.3.

e Nonresumable Case P1.
In this section, a pseudopolynomial-time algorithm based on dynamic programming is presented to solve P1. At first, re-index jobs in the SPT rule. Fix the following variables: jobs J 1 , . . ., J j are assigned to two sets, S and {J 1 , . . ., J j }\S, such that i∈S a i � q ≤ r and the jobs in S will be processed consecutively without idle time on the single machine from initial time 0. Define t as the starting time of the first job in {J 1 , . . ., J j }\S if the disruption does not happen but the first job will finish after time r. It is clear that t ranges from max {q, r − a max + 1} to r. Let F (j, q, t, |B l |) be the expected objective value of a feasible partial schedule for jobs J 1 , . . ., J j , where |B l | is the number of jobs assigned into delivery batch B l and the variable q denotes the total actual processing time of jobs in S finished no later than r on the machine. Let F [l] be the delivery completion time of batch B l , which is the flow time of each job in B l delivered to the customer. We provide a dynamic programming to solve problem 1|T, nonresumable, disruption| E[ F j ] + Dy. Proof. We first analyze the possible recursive situations. Suppose that jobs J 1 , . . ., J j − 1 have been assigned optimally, and start to assign J j . In an optimal schedule, J j will be either the last job processed no later than t or last in the whole sequence. If J j is assigned no later than t, then it will be completed at least at time q on the machine. On the other hand, if job J j is assigned last in the whole sequence, then its completion time on the machine is at least Simultaneously, delivery batch B l at either the completion time of job J j or the return time of the transporter which has finished the previous batch to the machine. If J i is assigned into a new batch, then the delivery cost contributes D. Hence, the objective contribution of a new batch is F [l] + D. If J i is assigned into the current batch, the objective contribution is F [l] and the delivery cost does not change. Simultaneously, the number of jobs in each delivery batch cannot exceed the delivery capacity C. e SPT rule needs O (n log n ) time to sequence the jobs in Step 1. By the definition of the recursive relations, we have j, l ≤ n and q, t ≤ r. Hence, the overall complexity is O (n log n + r 2 n 2 ).

e Resumable
Case P2. Actually, Algorithm 1 (DP1) can be modified as below to solve problem P2 with resumable consideration.

Theorem 2. Algorithm 2 (DP2) can solve problem P2 in time complexity O (n log n + r 2 n 2 ).
Theorem 3. P1 and P2 are NP-hard in the ordinary sense.

Fully Polynomial-Time Approximation Schemes for P1 and P2.
A fully polynomial-time approximation scheme for the single-machine scheduling problems is provided in this section. Let f * represent the objective value of the optimal schedule and f represent the objective value of the schedule generated by the approximation algorithms. Note that a polynomial-time approximation scheme (PTAS) for a problem is a family of polynomial time (1 + ε) − approximation algorithms if f ≤ (1 + ε)f * , where ε > 0 is a bound on relative error of the algorithms. Furthermore, a special PTAS is called a fully polynomial-time approximation scheme (FPTAS) if its time complexity is polynomial in 1/ε. In pure technical sense, an FPTAS is a best one that may tackle to solve an NP-hard optimization problem, unless P � NP [16].
In the following, we present the general outline of an FPTAS for solving P1 and P2. is is done by applying the well-known scaling technique to formulate a certain scaled problem for the original problem. e pseudo-polynomialtime algorithm based on dynamic programming for the original problem can generate this scaled problem with its parameter.
is algorithm to solve this scaled problem provides a fully polynomial-time approximation scheme for the original problem.
Next, we convert the pseudo-polynomial-time algorithm using the scaling technique into an FPTAS.
Step 2. Construct a scaled problem. Define new parameters of each job J j for the scaled problem: Step 3. For the scaled problem, apply Algorithms 1 (DP1) and 2 (DP2) to obtain a schedule π ′ with minimal objective value.
Let π ′ be an optimal schedule and F ′ be its objective value for the scaled problem. Suppose that π * for the Step 1. Re-index the jobs in the SPT rule.
Step 3. Optimal solution: min F(j, q, t, |B l |) : q � 0, . . . , r ; t � max 0, r − a max + 1 , . . . , r ; ⌈n/C⌉ ≤ l ≤ n . ALGORITHM 2: Algorithm DP2. Complexity original problem is an optimal schedule and its objective value is F * . Note that the schedule has at most nc processing operations if the potential disruption occurs. For each state (i, q, t|B l |), increase each processing time by a j /δ − a j ′ before disruption q or after disruption, which increases C j by at most 2nc. Increase each disruption time point by r/δ − r ′ and each returning time by T/δ − T ′ . Increase each delivery cost by D/δ − D ′ . Further, the total flow time of all n jobs increases at most n(2nc + 3). Now consider 1/δ to be a unit. en, we obtain a schedule π ′ with an approximate solution for the original problem, and its objective value can be formulated as We have F ′ (π ′ ) ≤ F ′ (π * ) due to the definition of π ′ . It follows that F ′ (π * ) ≤ F * (π * )/δ from ⌊x⌋ ≤ x for any number x. We obtain (4) us, we can see that the approximate solution is at most a factor of 1 + ε away from the optimum solution.
e time complexity of the approximation scheme is dominated by the step to solve the scaled problem. It is easy to see that r ′ ≤ (r/δ) � (n(2nc + 3)/ε). us, the running time of the approximation scheme is bounded by which is polynomial for given c and 1/ε. Combining the above discussion and the time complexity, we summarize our main result as the following statement.

Parallel-Machine Scheduling
In this paper, we will develop pseudo-polynomial-time algorithms based on dynamic programming to solve problems P3 and P4 with m � 2. en, the algorithms for two parallel machines can be extended to solve general m-parallel-machine problems.

4.1.
e Nonresumable Case P3. For a feasible partial schedule {J 1 , . . ., J j } where these jobs are divided into two sets, S and {J 1 , . . ., J j }/S, we first give the following notation: where u 1 (u 2 ): the total actual processing time of jobs finished no later than r on the first machine M 1 (the second machine M 2 ). Jobs in {J 1 , . . ., J j }\S finish after r. Jobs in {J 1 , . . ., J j }\S are divided into two groups: one is assigned to M 1 with the total processing time of the jobs v 1 and the other is assigned to M 2 with the total processing time of the jobs v 2 .
F [l] : the completion time of delivery batch B l . Let F(j, u 1 , u 2 , v 1 , v 2 |B l |) be the expected optimal objective value of a feasible partial schedule for jobs J 1 , . . ., J j , where |B l | is the number of jobs assigned into delivery batch B l . Set F(j, u 1 , u 2 , v 1 , v 2 |B l |) � ∞, if there is no feasible schedule for the problem. e following dynamic programming algorithm (Algorithm 3) is developed to solve P3 with m � 2. Proof. We first analyze the possible recursive situations. Suppose that jobs J 1 , . . ., J j − 1 have been assigned optimally, and start to assign J j . J j needs to be assigned into machine 1 or machine 2. In an optimal solution, J j on each machine will be either the last job processed no later than t or last in the whole sequence. If J j is assigned no later than t, then it will be completed at time u 1 or u 2 on the machine. On the other hand, if J j is assigned last in the whole sequence, then its completion time on the machine is s α�0 p α (r + α + v 1 ) or s α�0 p α (r + α + v 2 ). Delivery batch B l starts at either the completion time of J j or the return time of the transporter which has finished the previous batch to the machine. Note that if J i is assigned into a new batch, then the delivery cost contributes D and the objective is F [l] + D. If J i is assigned into the current batch, the objective contribution is F [l] . e SPT rule needs O (n log n) time to sequence the jobs in Step 1. By the definition of the recursive relations, we have j, l ≤ n, u 1 , u 2 ≤ r and v 1 , v 2 ≤ A. Hence, the overall complexity is O (n log n + r 2 n 2 A 2 ).

4.2.
Modified Algorithm DP3. Similar to Algorithm 3 (DP3), denote u i as the total actual processing time of jobs finished no later than r on the machine M i , such that j∈S i a j � u i ≤ r for i � 1, . . . , m, Denote v i as the total actual processing time of jobs finished after r on the machine M i , for i � 1, . . ., m. Set F(j, u 1 , . . . , u m , v 1 , . . . , v m , |B l |) as the expected optimal objective value of a feasible partial schedule for {J 1 , . . ., J j }, where |B l | is the number of jobs assigned into delivery batch B l . Algorithm 3 (algorithm DP3) can be extended to the m-parallel-machine scheduling problem.

Complexity
For l � 1 and j ≤ C, set F(j, u 1 , ..., u m , v 1 , ..., v m , |B 1 |) � j(C j + (T/2)) + D. For l � 2 to n do, / * Schedule job J j to be finished after r on machine M i , For a feasible partial schedule {J 1 , . . ., J j } where these jobs are divided into two sets, S and {J 1 , . . ., J j }/S, we first give the following notation: S � S 1 ∪ S 2 and j∈S i a j � u i ≤ r for i � 1, 2.
Step 1. Re-index the jobs in the SPT rule.

Complexity
Jobs in {J 1 , . . ., J j }\S are finished processing after r. And jobs in {J 1 , . . ., J j }\S are divided into two groups: one is assigned to M 1 with the total processing time v 1 , and starts at time q 1 , while the other is assigned to M 2 with the total processing time v 2 and starts at time q 2 . If there is no feasible solution for P4, then F(j, u 1 , u 2 , q 1 , q 2 , v 1 , v 2 , |B l |) � ∞. Here, q 1 and q 2 represent the state link between the set of jobs finished no later than r and the set of jobs finished after r.
Time complexity: the SPT rule needs O(nlogn) time to sequence the jobs in Step 1. By the definition of the recursive relation, we have j, l ≤ n, u 1 , u 2 , q 1 , q 2 ≤ r and v 1 , v 2 ≤ A. Hence, the overall complexity is O (n log n + r 4 n 2 ·A 2 ). Similar to modified algorithm DP3, define  F(n, u 1 , . . . , u m , q 1 , . . . , q m , v 1 , . . . , v m , |B l |) as the objective value for P4, and we can extend Algorithm 4 to solve general m-parallel-machine problem with resumable case. e overall time complexity to solve P4 is O (n log n + r 2m n 2 ·A m ). Theorem 7. P3 and P4 are NP-hard in the ordinary sense.

Fully Polynomial-Time Approximation Schemes for P3
and P4. In this section, the dynamic programming algorithms for P3 or P4 will be translated into fully polynomial-time approximation schemes. e main framework is to iteratively thin out the state pace of the dynamic programming by using the trimming technique.
is method is to collapse solutions that are close to each other and decrease the size of the state space down to polynomial.

FPTAS for P3.
In the dynamic programming DP 3, we will store necessary information for some schedules for the first j jobs: each schedule is indexed by a six-dimensional vector [u 1 , u 2 , v 1 , v 2 , l, F]. Let the trimming parameter be δ � 1 + (ε/2n) for any given ε > 0. e trimming of the state spaces is formulated as the notion of δ-domination: a state s ′ � [u 1 ′ , u 2 ′ , v 2 ′ , v 2 ′ , l.F ′ ] is δ-dominated by another state s � [u 1 , u 2 , v 1 , v 2 , l, F], if and only if Step 1. Re-index the jobs in the SPT rule.