Integrated scheduling of production and distribution for manufacturers with parallel batching facilities
 192 Downloads
Abstract
We consider a class of integrated scheduling problems for manufacturers. The manufacturer processes job orders and delivers products to the customer. The objective is to minimize the service span, that is, the period lasting from the time when the order is received to the time when all the products have been delivered to the customer. In the production phase, parallel batchprocessing facilities are used to process the jobs. Jobs have arbitrary sizes and processing times. Each facility has a fixed capacity and jobs are processed in batches with the restriction that the total size of jobs in a batch does not exceed the facility capacity. When all the jobs in a batch are completed, the batch is completed. In the distribution phase, the manufacturer uses a vehicle with a fixed capacity to deliver products. The transportation time from the manufacturer to the customer is a constant. Completed products can be delivered in one transfer if the total size does not exceed the vehicle capacity. We first consider the problem where jobs have the same size and arbitrary processing times. We propose approximation algorithms for the problem and we show that a worstcase ratio performance guarantee is respectively 2–1/m. Then we consider the problem where jobs have the same processing time and arbitrary sizes. An approximation algorithm is proposed with an absolute worstcase ratio of 13/7 and an asymptotic worstcase ratio of 11/9. Both the proposed algorithms can be executed in polynomial time.
Keywords
Integrated scheduling Production Distribution Identical batchprocessing facilities Approximation algorithms1 Introduction
Integrated scheduling of production and logistics has attracted the interest of researchers in recent years. In contrast with classical scheduling, which focuses on the production operations, integrated scheduling focuses on the coordination of production and logistics. The objective of production scheduling is to optimize the production and the ordinary measurements including makespan, total weighted completion time, maximum lateness, and so on. However, the optimal production plan does not lead to an optimal integrated plan of production and distribution because the logistic factors are not considered. In the distribution phase, the logistic factors should be considered including the vehicle configuration, transport time, locations of customers, etc. Therefore, integrated scheduling is more practical and is also more difficult to solve. So far, there has been a considerable amount of literature on integrated scheduling.
Hall and Potts [1] studied the integrated scheduling which involves the supplier, the manufacturer and the customer. Their results show that the coordination of the supplier and the manufacturer can reduce the total system cost by at least 20%. This kind of scheduling is concerned with the supply of materials, production, and distribution. Other researchers considered the scheduling with different constraints and proposed effective algorithms [2, 3, 4, 5]. The integrated scheduling involves two parts, i.e., the manufacturer and the customer are also well studied. Chen and Vairaktarakis [6] showed that most of the integrated scheduling problems dealing with production and distribution are NPhard. Therefore, the practical algorithms to handle such problems are approximation algorithms and intelligent algorithms [7, 8, 9, 10, 11].
The current integrated scheduling models use the classical production mode [12], where the facility processes one job or a fixed number of jobs at a time. In real industries, however, batchprocessing facilities with arbitrary sizes are also widely applied. In production with batchprocessing facilities, each facility has a limited capacity to accommodate jobs which have arbitrary sizes. The problem of minimizing makespan for a single batchprocessing facility is NPhard in the strong sense since it can be converted to a binpacking problem. Approximation algorithms with better performances have also been proposed to solve singlefacility problems [13, 14, 15]. Pei et al. [16, 17, 18] proposed branchandbound algorithms and the results show that these algorithms are effective to solve such problems. Furthermore, parallelmachine scheduling problems were considered in [19, 20, 21, 22].
In this paper, we consider the integrated scheduling problem considering production and distribution for manufacturers with parallel batchprocessing facilities. To respond quickly to the customer, the manufacturer needs to minimize the total time of production and distribution. That is, the period lasting from the time when the order is received to the time when all the products arrive at the customer. For simplicity, we call this period the service span. In this paper, we consider two problems of minimizing service span for manufacturers with batchprocessing facilities and design approximation algorithms for them. The rest of the paper is as follows. In Sect. 2, we introduce the models and notation. In Sect. 3, we propose an approximation algorithm for the problem where jobs have the same size but arbitrary processing times. In Sect. 4, we propose an approximation algorithm for the problem where jobs have the same processing time but arbitrary sizes. In Sect. 5, we conclude this paper and present directions for future research.
2 Preliminaries
The problem under investigation can be described as follows. There are n jobs to be processed and delivered to the customer. Each job has a given size and processing time. Several jobs can be processed together in a batch as long as their total size does not exceed the facility capacity. The processing of a batch cannot be interrupted until it is completed. Each job can be processed on any facility and only needs to be processed one time. Completed products are delivered to the customer with a vehicle which has a given transportation capacity. When the last delivery arrives at the customer, the service is completed. Service span is the period lasting from the processing of the first job to the time when the last product is delivered to the customer. Let SS denote the service span. The variables are listed as following.
 n

Number of jobs
 j

jth job
 \(p_j\)

Processing time of j
 \(s_j\)

Size of j
 m

Number of facilities
 \(M_i\)

ith facility
 D

Facility capacity
 K

Number of batches
 \(K_i\)

Number of batches processed on \(M_i\)
 \(b_{ik}\)

kth batch processed on \(M_i\)
 \(P_{ik}\)

Processing time of \(b_{ik}\)
 \(C_{ik}\)

Completion time of \(b_{ik}\)
 V

Transportation capacity of the vehicle
 T

Transportation time from manufacturer to customer
 L

Number of deliveries
 \(d_l\)

Set of products in the lth delivery
 \(g_l\)

Departure time of \(d_l\)
 SS

Service span
3 Algorithm for \(PmB,s_j=1,p_j,pbatch1,V1SS\)
In this section, we study problem \(\Phi _1\), where jobs have the same size, i.e., \(s_j=1\). In practice, manufacturers select equipments with appropriate sizes in order to improve the production and logistics. If different equipments match well, then the efficiency of supply chain can be improved and waste can be reduced. So in the following content, we assume that the manufacturer use appropriate equipments. That is, \(V = rmD\), where \(r \ge 2\) and is a positive integer. Under this assumption, the waste in production and logistics can be reduced obviously. First we show the computational complexity of \(\Phi _1\). Consider the special case \(\Phi _1'\), where \(D = 1\), i.e., each batch contains at most one job. Simultaneously, \(T =0\), i.e., no delivery is needed. It is easy to see that \(\Phi _1'\) is equivalent to \(PmC_{max}\), which is a famous NPhard problem. Since \(\Phi _1'\) is a special case of \(\Phi _1\), we have \(PmC_{max} \propto \Phi _1 \). So we obtain the following conclusion.
Proposition 1
\(PmD,s_j=1,p_j,pbatch1,V1SS\) is NPhard.
In the following content, we use \(\pi ^*\) to represent an optimal solution of the problem. Let \(X^*\) to represent the variables of \(\pi ^*\), for example, \(SS^*\) and \(L^*\) represent the optimal service span and the optimal number of deliveries. When there is no ambiguity, the corresponding symbols without \(^*\) represent the variables of \(\pi \), which is obtained by our proposed algorithms. In practice, the number of deliveries L is usually large. So a too small L does not make sense. In the following content we assume \(L^* \ge 3\).
We propose algorithm A1 for \(PmD,s_j=1,p_j,pbatch1,V1SS\).
Algorithm A1.
Step 1. Order the jobs in nonincreasing order of their processing times.
Step 2. Generate batches using the following rule. Create the first empty batch \(B_1\) and put the first D jobs in \(B_1\). Then create \(B_2\) and put the next D jobs in it. Repeat the assignment until there are only y jobs left where \(1\le y \le D\). Put them in the last batch \(B_K\) and the obtained batch set is \(\{B_1,\ldots , B_K\}\). The batches are in nonincreasing order of processing times.
Step 3. Assign batches on facilities using First Available Facility rule. First order the batches in nondecreasing order and relabel them as \(B_1,\ldots , B_K\). Then assign the first m batches on the facilities, i.e., \(B_1, \ldots , B_m\). For the subsequent batches, if any facility becomes idle, assign the next batch on it. Execute the assignment until all batches are assigned.
Step 4. Deliver completed jobs. Find positive integers x and y to make \(K = xrm+y\) where \(1\le y \le rm\). Assign the first y batches in the first delivery \(d_1\) and deliver them to the customer immediately. Then assign the next rm ones in \(d_2\). If the vehicle returns to the manufacturer when batches in \(d_2\) are completed, then deliver all the jobs in \(d_2\) immediately. If the vehicle has not returned, then wait until it returns and then deliver. Repeat the distribution rule, that is, deliver rm batches in each delivery until all the batches are delivered. The obtained deliver set is \(\{d_1,\ldots , d_L\}\). Denote the obtained integrated schedule as \(\pi \). \(\square \)
Since the facility capacity is D, we can obtain the optimal number of batches and optimal number of deliveries as following. The proof is omitted.
Lemma 1
The optimal number of batches and deliveries are respectively \(K^* = \lceil n/D\rceil \) and \(L^* = \lceil n/V\rceil \), where \(\lceil a\rceil \) represents the smallest integer larger than a. In the solution \(\pi \) generated by A1, \(K = K^*\) and \(L = L^*\).
Lemma 2
Order all the batches of \(\pi \) and \(\pi ^*\) in nondecreasing order of processing times and relabel them as \(B_1, \ldots , B_K\) and \(B_1^*, \ldots , B_K^*\). Then \(P_k \le P_k^*\) for \(k = 1,\ldots , K^*\).
Proof
Find positive numbers \(\alpha \) and \(\beta \) to make \(n = \alpha D+\beta \) where \(1\le \beta \le D\). We see that the optimal number of batches is \(K^* = \alpha +1\). For simplicity, we order all the jobs in nondecreasing order and their processing times are \(p_1,\ldots , p_n\). Obviously, the last batch \(B_{\alpha +1}\) has a processing time \(P_{\alpha +1}= p_n\) since job n is assigned in the batch. The processing time of the second last batch is \(P_{\alpha } \ge p_{(\alpha 1)D+\beta }\). In \(\pi \), we have \(P_{\alpha } = p_{(\alpha D 1)D+\beta }\). So the processing time of \(P_{\alpha }\) is also optimal. By Lemma 1, \(K = K^*\). Therefore, all the batches has an optimal processing time. So for any \(k = 1,\ldots K^*\), \(P_k \le P_k^*\). \(\square \)
In the distribution, rm batches are delivered in one delivery since \(V = rmD\). If \(K = xrm+y\), where x and y are both positive integers and \(1\le y\le rm\), then the optimal number of deliveries is \(L = x+1\). By Step 3, the obtained production schedule is a Shortest Processing Time First (SPT) schedule. Let \(C_l\) denote the completion time of batches in \(d_l\) and let \(Q_l = C_lC_{l1}\) where \(l = 1,\ldots , L\). Since the processing of batches in \(d_1\) starts at time 0, we define \(C_0 = 0\).
Lemma 3
In \(\pi \), \(Q_1 \le Q_2 \le \cdots \le Q_L\).
Proof
By Lemma 3, we obtain the following lemma on the service span of \(\pi \).
Lemma 4
If the last delivery \(d_L\) can be delivered immediately when the batches in it are completed, \(SS = C_L+T\). Otherwise, \(SS = Q_1+(2L1)T\).
Proof
Now we give the performance of A1 for solving \(\Phi _1\).
Theorem 1
Algorithm A1 can be executed in \(O(n^2)\) time. When solving \(\Phi _1\), the worst case ratio is no more than \((21/m)\).
Proof
First we analyze the time complexity of A1. Step 1 is to order n jobs and the time complexity is \(O(n\log n)\). Step 2 is to use First Fit rule to assign n jobs and the time complexity is \(O(n\log n)\). Step 3 is to use SPT for K batches and the time complexity is \(O(K\log K)\), which is no more than \(O(n\log n)\). Step 4 is to assign the delivery when batches in each delivery are completed and the time complexity is no more than \(O(n^2)\). Therefore, the time complexity of A1 is \(O(n^2)\).
Now we analyze the worst case ratio of A1. As discussed in Lemma 4, we show the worst case ratio in two cases.
Case 1 \(d_L\) can be delivered immediately when batches in \(d_L\) are completed.
4 Algorithm for \(PmB,s_j,p_j=1,pbatch1,V1SS\)
In \(\Phi _2\), i.e., \(PmB,s_j,p_j=1,pbatch1,V1SS\), all the jobs has a unit processing time but arbitrary sizes. First we present the computational complexity of \(\Phi _2\).
Proposition 2
\(PmB,s_j,p_j=1,pbatch1,V1SS\) is NPhard in the strong sense.
Proof

BPP.

Minimize the number of Bins K

Number of items: n

Size of item j: \(s_j/D\)

Bin capacity: 1
We propose the following approximation algorithm for \(\Phi _2\).
Algorithm A 2.
Step 1. Order the jobs in nonincreasing order of their sizes. Relabel them as job \(1,2,\ldots , n\).
Step 2. Use First Fit Decreasing rule (FFD) to assign jobs into batches. Create the first empty batch \(b_1\) and put job 1 in it. Check the following jobs one by one whether it can be put in the batch. If so, put the job in \(b_1\) and delete it from the job list. If it is not the case, go on to check the next job. When all the jobs have been assigned, create the second batch \(b_2\) and assign the remaining jobs in the job list. Repeat the assignment until there is no job in the job list. The obtained batch set is \(\{B_1,\ldots , B_K\}\).
Step 3. Assign the batches on facilities in arbitrary order.
Step 4. Find positive integers x and y to make \(K = xrm+y\) where \(1\le y \le rm\). Deliver the first completed y batches in \(d_1\). For the next batches, deliver rm batches immediately in each delivery. If the vehicle is available when the rm batches are completed, deliver them immediately. If the vehicle is not available at the time, wait until the vehicle returns to the manufacturer and deliver the batches. When the last rm batches are delivered to the customer, The production and distribution are finished and the obtained deliveries are \(d_1,\ldots , d_L\).
Dosa et al. [24] proved that when solving binpacking problem, FFD can obtain a solution where the number of batches \(K(FFD) \le \frac{11}{9}K^*+\frac{6}{9}\). In algorithm A2, Steps 1 and 2 assign jobs in batches with FFD rule, So we have the following conclusion on K.
Proposition 3
(Dosa et al. [24]) \(K \le \frac{11}{9}K^*+\frac{6}{9}\).
In the production, \(C_L\) is the completion time of batches in the last delivery. Actually, \(C_L\) is the makespan of the production part. In an optimal solution \(\pi ^*\), \(C_{L^*}^*\) is the makespan.
Lemma 5
When \(x^* \le 9\), \(C_L \le 1.5C_{L^*}^*\).
Proof
The upper bound of \(C_L/C_{L^*}^*\)
\(x^*\)  2  3  4  5  6  7  8  9 

\(C_{L^*}^*\)  3  4  5  6  7  8  9  10 
\(C_L\)  4  6  7  8  9  11  12  13 
UB of \(C_L/C_{L^*}^*\)  4/3  3/2  7/5  4/3  9/7  11/8  4/3  13/10 
Lemma 6
When \(x^* \ge 10\), \(C_L \le 1.308C_{L^*}^*\).
The upper bound of \(C_L/C_{L^*}^*\)
f  1  2  3  4  5  6  7  8  9 

\(C_{L^*}^*\)  9e\(+\)2  9e\(+\)3  9e\(+\)4  9e\(+\)5  9e\(+\)6  9e\(+\)7  9e\(+\)8  9e\(+\)9  9e\(+\)10 
\(C_L\)  11e\(+\)3  11e\(+\)4  11e\(+\)6  11e\(+\)7  11e\(+\)8  11e\(+\)9  11e\(+\)10  11e\(+\)12  11e\(+\)13 
UB of \(C_L/C_{L^*}^*\)  14/11  5/4  17/13  9/7  19/15  5/4  21/17  23/18  24/19 
Case 1 \(2T \le Q_2\).
The results of \((2L+1)/(2L^*1)\) for \( x^*\le 9\)
\(x^*\)  2  3  4  5  6  7  8  9 

\(L^*\)  3  4  5  6  7  8  9  10 
L  4  6  7  8  9  10  12  13 
\((2L+1)/(2L^*1)\)  9/5  13/7  5/3  17/11  19/13  7/5  23/17  25/19 
The upper bound of \((2L+1)/(2L^*1)\) for \(x^*\le 9\)
f  2  3  4  5  6  7  8  9 

\(L^*\)  9e\(+\)3  9e\(+\)4  9e\(+\)5  9e\(+\)6  9e\(+\)7  9e\(+\)8  9e\(+\)9  9e\(+\)10 
L  11e\(+\)4  11e\(+\)6  11e\(+\)7  11e\(+\)8  11e\(+\)9  11e\(+\)10  11e\(+\)12  11e\(+\)13 
UB of \(\frac{2L+1}{2L^*1}\)  31/23  7/5  37/27  39/29  41/31  43/33  47/35  49/37 
Theorem 2
The time complexity of A2 is \(O(n^2)\). When solving \(\Phi _2\), the absolute worst case ratio is \(R_{A2} = 13/7\) and the asymptotic worst case ratio is \(R_{A2}^\infty = 11/9\).
5 Conclusions
In this paper, we study a class of integrated scheduling problems for manufacturers. The manufacturer serves the customer by producing and delivering products to it. In the production phase, parallel batchprocessing facilities are used to process jobs. In the distribution phase, a vehicle with a fixed capacity is used to deliver products to the customer. We first consider the problem where jobs have the same size and propose an approximation algorithm with a worstcase ratio of \((21/m)\). Then we consider the problem where jobs have the same processing time and propose an algorithm with a worstcase ratio of 13/7 and an asymptotic ratio of 11/9. Both the algorithms can be executed in \(O(n\log n)\) time.
Many related problems remain open and deserve more research. First, the total cost is an important objective for integrated scheduling. Multiobjective problems deserve more work and the objectives could involve service span, production cost, distribution cost, and inventory cost. How to handle these objectives and propose effective algorithms is an interesting direction. Second, online integrated scheduling deserves more work. The offline problems are NPhard and the online problems are even more complex to solve. Effective online algorithms are an interesting goal for future research. Finally, the equilibrium between the manufacturer and the customer is also an interesting research focus. In this paper, we study the scheduling decisions made by the manufacturer. However, in practice, the customers have different demands regarding the production and distribution. More investigation is needed to find the best balance between the manufacturers capabilities and the customers demands.
Notes
Acknowledgements
This work is supported by the National Natural Science Foundation of China under Grants 71671055, 71601065, 71331002, 71521001 and 71531008. This work is also supported by Anhui Social Science Foundation under Grants SK2016A0526 and 1607a0202031.
References
 1.Hall, N.G., Potts, C.N.: Supply chain scheduling: batching and delivery. Oper. Res. 51(4), 566–584 (2003)MathSciNetCrossRefGoogle Scholar
 2.Selvarajah, E., Steiner, G.: Approximation algorithms for the supplier’s supply chain scheduling problem to minimize delivery and inventory holding costs. Oper. Res. 57(2), 426–438 (2009)MathSciNetCrossRefGoogle Scholar
 3.Sawik, T.: Coordinated supply chain scheduling. Int. J. Prod. Econ. 120(2), 437–451 (2009)CrossRefGoogle Scholar
 4.Yeung, W.K., Choi, T.M., Cheng, T.C.E.: Supply chain scheduling and coordination with dual delivery models and inventory storage cost. Int. J. Prod. Econ. 132(2), 223–229 (2011)CrossRefGoogle Scholar
 5.Azadian, F., Murat, A., Chinnam, R.B.: Integrated production and logistics planning: contract manufacturing and choice of air/surface transportation. Eur. J. Oper. Res. 247(1), 113–123 (2015)MathSciNetCrossRefGoogle Scholar
 6.Chen, Z.L., Vairaktarakis, G.L.: Integrated scheduling of production and distribution operations. Manag. Sci. 51(4), 614–628 (2005)CrossRefGoogle Scholar
 7.Amorim, P., Gunther, H., AlmadaLobo, B.: Multiobjective integrated production and distribution planning of perishable products. Int. J. Prod. Econ. 138(1), 89–101 (2012)CrossRefGoogle Scholar
 8.Leung, J.Y.T., Chen, Z.L.: Integrated production and distribution with fixed delivery departure dates. Oper. Res. Lett. 41(3), 290–293 (2013)MathSciNetCrossRefGoogle Scholar
 9.Gao, A., Qi, L., Lei, L.: Integrated batch production and distribution scheduling with limited vehicle capacity. Int. J. Prod. Econ. 160, 13–25 (2015)CrossRefGoogle Scholar
 10.Nasiri, G.R., Zolfaghari, R., Davoudpour, H.: An integrated supply chain production–distribution planning with stochastic demands. Comput. Ind. Eng. 77, 35–45 (2014)CrossRefGoogle Scholar
 11.Averbakh, I.: Online integrated production–distribution scheduling problems with capacitated deliveries. Eur. J. Oper. Res. 200(2), 377–384 (2010)MathSciNetCrossRefGoogle Scholar
 12.Pinedo, M.L.: Scheduling: Theory, Algorithms, and Systems, 4th edn. Springer, New York (2012)CrossRefGoogle Scholar
 13.Leung, J.Y.T., Ng, C.T., Cheng, T.C.E.: Minimizing sum of completion times for batch scheduling of jobs with deteriorating processing times. Eur. J. Oper. Res. 187(3), 1090–1099 (2008)MathSciNetCrossRefGoogle Scholar
 14.Cheng, B., Cai, J., Yang, S., Hu, X.: Algorithms for scheduling incompatible job families on single batching machine with limited capacity. Comput. Ind. Eng. 75, 116–120 (2014)CrossRefGoogle Scholar
 15.Malapert, A., Guret, C., Rousseau, L.: A constraint programming approach for a batch processing problem with nonidentical job sizes. Eur. J. Oper. Res. 221(3), 533–545 (2012)MathSciNetCrossRefGoogle Scholar
 16.Pei, J., Liu, X., Pardalos, P.M., Fan, W., Yang, S.: Single machine serialbatching scheduling with independent setup time and deteriorating job processing times. Optim. Lett. 9(1), 91–104 (2015)MathSciNetCrossRefGoogle Scholar
 17.Pei, J., Liu, X., Pardalos, P.M., Li, K., Fan, W., Migdalas, A.: Singlemachine serialbatching scheduling with a machine availability constraint, positiondependent processing time, and timedependent setup time. Optim. Lett. (2016). doi: 10.1007/s1159001610749 CrossRefzbMATHGoogle Scholar
 18.Mazdeh, M.M., Sarhadi, M., Hindi, K.S.: A branchandbound algorithm for singlemachine scheduling with batch delivery and job release times. Comput. Oper. Res. 35(4), 1099–1111 (2008)MathSciNetCrossRefGoogle Scholar
 19.Jula, P., Leachman, R.C.: Coordinated multistage scheduling of parallel batchprocessing machines under multiresource constraints. Oper. Res. 58(4), 933–947 (2010)MathSciNetCrossRefGoogle Scholar
 20.Parsa, N.R., Karimi, B., Kashan, A.H.: A branch and price algorithm to minimize makespan on a single batchprocessing machine with arbitrary job sizes. Comput. Oper. Res. 37(10), 1720–1730 (2010)MathSciNetCrossRefGoogle Scholar
 21.Liu, L.L., Ng, C.T., Cheng, T.C.E.: Scheduling jobs with release dates on parallel batch processing machines to minimize the makespan. Optim. Lett. 8(1), 307–318 (2014)MathSciNetCrossRefGoogle Scholar
 22.Xu, S., Bean, B.C.: Scheduling parallelmachine batch operations to maximize ontime delivery performance. J. Sched. 19(5), 583–600 (2016)MathSciNetCrossRefGoogle Scholar
 23.Chen, Z.L. Integrated production and outbound distribution scheduling: review and extensions. Operations Res. 58(1), 130–148 (2010)CrossRefGoogle Scholar
 24.Dosa, G., Tan Z., Tuza, Z., Yan Y., Lányi, C.S. Improved bounds for batch scheduling with nonidentical job sizes. Naval Res. Logist. 61(5), 351–358 (2014)MathSciNetCrossRefGoogle Scholar