Production and Transportation Integration for a Make-to-Order Manufacturing Company with a Commit-to-Delivery Business Mode

Size: px
Start display at page:

Download "Production and Transportation Integration for a Make-to-Order Manufacturing Company with a Commit-to-Delivery Business Mode"

Transcription

1 Production and Transportation Integration for a Make-to-Order Manufacturing Company with a Commit-to-Delivery Business Mode Kathryn E Stecke, Xuying Zhao The University of Texas at Dallas, School of Management,Richardson, TX {kstecke@utdallasedu, xuyingzhao@utdallasedu} When a make-to-order manufacturing company adopts a commit-to-delivery business mode, it commits a delivery due date for an order and is responsible for the shipping cost Without loss of generality, we consider that transportation is done by a third party logistics company such as FedEx or UPS, which provides multiple shipping modes such as overnight, one-day, two-day delivery, and more When the transportation time has to be short, clearly shipping cost is more expensive than it could have been How should a company schedule production for accepted orders so that the company can leave enough transportation time for orders to take slow shipping modes to reduce the shipping cost? We study this problem of integrating the production and transportation functions for a manufacturing company producing a variety of customized products in a make-to-order environment with a commit-to-delivery mode of business Various realistic scenarios are investigated, in increasing order of complexity When partial delivery is allowed by customers, we provide both an MIP model and a minimum cost flow model We show that nonpreemptive EDD production schedules are optimal when partial delivery is allowed and shipping cost is a decreasing convex function with transportation time When partial delivery is not allowed, we develop an MIP model and prove that the problem is NP-hard An efficient heuristic algorithm with polynomial computation time is provided for the NP-hard problem It gives nearoptimal production schedules, as shown via thousands of numerical experiments We also provide models and analysis for other scenarios where shipping cost accounts for customer locations and quantity discounts 1 Introduction Some companies produce products and stock them as inventory until they are sold (make-to-stock) Other firms produce products only after they are ordered (make-to-order) This can reduce inventory and can allow customization However, the make-to-order mode also has its disadvantages Customers have to wait for the orders to be manufactured and shipped Orders may miss their due dates because of production and lead time variability or insufficient production capacity In a make-to-order environment, it is common that the transportation is done by a third party logistics company such as FedEx or UPS, which provides multiple shipping modes such as overnight, one-day, two-day delivery, etcetera A shipping date is the date when the manufacturing company gives products to a third party logistics company A delivery date is the date when the customer receives the products Some companies in a make-to-order environment, such as Dell, which use a commit-to-ship business mode, promise customers to ship products on or before committed shipping dates In a commit- 1

2 to-ship mode, customers choose a shipping mode and pay the shipping cost when they place an order Many companies in a make-to-order environment use a commit-to-delivery business mode by promising to deliver orders to customers on or before committed delivery dates Companies such as Cemex, a Mexican cement producer with $65 billion revenue per year and MEI, an electronics company with $14 billion consolidated sales per year, have adopted the commit-to-delivery business mode In commit-to-delivery, manufacturing companies can select a shipping mode dynamically according to the production finishing time for each order and then pay the shipping cost Among the two modes, commit-to-delivery could reduce lead time variability and then improve customer satisfaction This is because if an order is produced late, the company could select a faster shipping mode for the order to increase the chance that it arrives on or before the committed delivery date A firm in a make-to-order environment may improve profits from using a commit-to-delivery business mode as customers might be willing to pay more for a guaranteed delivery date instead of just a shipping date In addition, if an order is finished early, a slow shipping mode could be applied Consequently, the shipping cost can be reduced and thus profit can be improved It is common for customers to receive compensation when their orders miss due dates In committo-delivery, a customer could get compensation from the manufacturer even if the delay is not caused by manufacturing but by shipping The manufacturer will determine whether or not the logistics company should share the penalty cost incurred from such compensation However, in commit-toship, the customer has to deal with both the manufacturer and the logistics company in case of delayed service For the reasons mentioned above, commit-to-delivery could be better than commit-to-ship for both customers and make-to-order manufacturing companies Some companies such as Dell are considering providing commit-to-delivery service to customers with additional premium payment The integration of production and transportation is very important when adopting a commit-todelivery mode In order to avoid penalty costs, a manufacturer desires that all orders meet their due dates Poor production schedules can cause manufacturing delays Consequently, the manufacturer may have to expedite shipping The shipping cost may then increase which in turn may reduce profit In this paper, we address the integration of production and transportation for a manufacturing 2

3 company producing customized products in a make-to-order environment with a commit-to-delivery mode, where companies are responsible for shipping cost and commit a delivery date when a customer places an order In order to improve profit, the manufacturing company wants to reduce the total shipping cost paid for all fulfilled orders by selecting a slow shipping mode for each order when possible while still meeting its due date We show that we can take advantage of slow shipping modes and then reduce the shipping cost to some extent through adopting a proper production schedule The motivation for this research comes from a project that we have completed at Dell As mentioned in a report by Best Practice LLC, Dell successfully reduced its inventory to only a fiveday supply on average 95% of customer orders are shipped within eight hours This is much earlier than a committed shipping date, which on average is five days after the order is placed Short manufacturing lead time helps Dell to lower inventory, which is a key competitive advantage as a low-cost producer in the computer industry Dell can reap the benefits of lower inventory costs almost immediately and reflect that benefit in its consumer product prices Dell is looking for ways to increase profit while still providing low prices to customers Commit-todelivery could help Dell to obtain extra profit from those 95% of orders which are shipped within eight hours For example, suppose that a customer places an order and she chooses overnight shipping Dell commits to ship the computer after five days Suppose that the customer pays $610 including a $160 overnight shipping fee, which is normal for a computer In this model, Dell gets $450 and the logistics company gets $160 Now if Dell adopts commit-to-delivery, Dell can specify a proper production schedule for all newly received orders and try to finish production for the order early, eg, within eight hours Then Dell could select a slow ship mode, such as three-day delivery, which may cost $80 With a commit-to-delivery mode, Dell would get $530 and the logistics company would get $80 In this case, Dell s revenue increases by 17% without incurring extra costs and hence its profit increases more than 17% by adopting the commit-to-delivery business mode This example demonstrates the concepts, but obvious variations could be more appropriate For example, if a company commits a delivery date, it may charge a default shipping cost equal to overnight delivery A good schedule can increase profit as demonstrated In order to adopt commit-to-delivery, companies like Dell need to answer the following question: What production schedule could help reduce the total shipping cost as much as possible and also deliver orders on time? In this paper, we model this problem and answer this question for a variety 3

4 of scenarios The study of the integration between transportation and production has attracted attention in recent years (eg, Cohen and Lee 1988, Bhatnagar, Chandra, and Goyal 1993, Chandra and Fisher 1994, Thomas and Griffin 1996, Fumero and Vercellis 1999, Sarmiento and Nagi 1999) Hax, Majluf, and Pendrock (1980) examined a large firm manufacturing and distributing more than one billion pounds of final consumer goods per year The production and distribution decisions in the firm are generated together using one large-scale linear program to minimize the total production and distribution costs A survey by Chen (2004) notes that most papers in this area study strategic or tactical levels, and only a few papers examine the detailed scheduling level However, to solve our problem, we need models that provide detailed production schedules The papers that include scheduling details can be classified into two categories The first category aims to minimize the lead time from when customers place orders to when customers receive orders Potts (1980), Lee and Chen (2001), Hall et al (2001), and Geismar et al (2007) minimize the maximum order lead time However, our objective is to minimize total shipping cost under the constraint that all orders meet their delivery due dates The second category of papers considers both lead time and shipping cost in the objective function See Chen (1996), Cheng et al (1996), Hall and Potts (2003), Chen and Vairaktarakis (2005), Pundoor and Chen (2005), and Chen and Pundoor (2006) The first three papers assume that shipping between the manufacturer and customers is instantaneous The last three papers consider a constant transportation time from a manufacturer to a customer In our scenarios, the transportation function is outsourced to a third party logistics company (3PL), which offers various shipping modes with different transportation times Our shipping cost from a manufacturer to a customer is a general convex decreasing function of transportation time Considering shipping mode and shipping cost, De Matta and Miller (2004) is close to our paper They study the problem of coordinating production and inter-facility transportation They note that coordinating production and transportation decisions can control the use of expedited transport mode to a minimum through timely shipments of sufficient intermediate product quantities via the normal inexpensive mode to meet the input requirements of the finishing plant To our knowledge, no research to date addresses how to integrate production and transportation for a commit-to-delivery business mode in a make-to-order environment when delivery service is 4

5 performed by a third party logistics company We seek to fill this gap with our paper We analyze the problem under the different distribution scenarios of partial delivery allowed or not allowed When partial delivery is allowed by customers, the manufacturer could divide a customer s order into multiple smaller orders and ship them at different times This increases the flexibility of the production schedule and may help a firm to save more on shipping costs When partial delivery is not allowed by customers, an order is not shipped until the last product in the order is ready for shipping We organize the rest of the paper as follows Section 2 introduces the problem settings Sections 3 and 4 study the integration problems when partial delivery is allowed and not allowed, respectively When partial delivery is allowed, both mixed integer programming and minimum cost flow models are provided in section 31 In section 32, a nonpreemptive earliest due date first production schedule, which is easy to implement, is proved to be optimal for the problem When partial delivery is not allowed, an MIP model is given in section 41 The problem is proved to be strongly NP-hard in section 42 A heuristic Algorithm NPD is developed in section 43 By showing that the solution generated by Algorithm NPD, an upper bound to the optimal solution value, is very close to a lower bound for the optimal solution value, we show that the heuristic algorithm provides a near-optimal solution in section 44 In section 5, we extend our models and discussions to consider customer locations and quantity discounts in the shipping cost function Section 6 concludes this paper 2 Problem Settings In this section, we describe our production, order, and transportation settings In sections 3, 4, and 5, we build models based on these settings Table 1 contains the notation used in this paper Table 1 Notation c = available daily production capacity (in number of products produced per day) Q i = number of items required in order i m = number of production days in the planning horizon d i = production due date for order i; d i m t i = shipping date for order i; t i d i r i = shipping mode (transportation time) for order i; r i = d i t i G(r i, Q i ) = shipping cost function 5

6 21 Production Settings In order to respond quickly to customers, make-to-order manufacturing companies assemble finished products from partly-finished products and customized components after receiving customer orders For example, in Dell s assembly plant in Texas, customized components required for one customer s computer are placed in a tray, which goes to the assembly line, consisting of multiple stations Each station is responsible for assembling one or more components into a computer For example, one station inserts a memory card to a computer s motherboard A wide variety of computers can be assembled on a Dell assembly production line The processing time at each station for each customized computer is the same, because it takes almost the same time to install customized components at a station For example, customers can choose the storage size of a memory card, ie, 256M or 512M No matter which option a customer chooses, it takes the same time for Dell to insert their memory card into a computer In such a production environment, the changeover cost between product types can be negligible The differences between orders exist in the types/models of components So when switching production for one order to another order, Dell just needs to put different models of components in the trays at the beginning of the assembly line Therefore, switching production from one order to another order rarely incurs any extra production costs Our models match the production patterns in Dell and are appropriate for paced, capacityconstrained production or assembly lines that produce a variety of customized products as well as single machine production For our purposes, it suffices to model the production or assembly function as a capacity-constrained single machine Suppose that the manufacturing company operates 24 hours a day and seven days a week The production rate of a production line of the company is c products per day Different lines with different output rates can easily be accomodated 22 Order Settings We specify the production schedule for n new, just-arrived, and accumulated orders with delivery due dates For example, Dell may receive over one hundred orders for desktops per day from consumers in the US We address how to schedule production for these newly received one hundred orders to save total shipping costs The production schedule for these new orders can be added to the end of the current master production schedule 6

7 A manufacturer can wait for customer orders to accumulate as long as its master production schedule is not empty For example, suppose that it takes Dell four days to finish all of the orders already scheduled for production in the master production schedule Also suppose that Dell receives n new orders during the first three days Then Dell can accumulate all of the n new orders and schedule them together for shipping cost savings The production schedule for the n new orders can be added to the end of the master production schedule Then a new accumulation process can start As far as the component vendors are concerned, all information about an order s delivery due date and components requirements are revealed as soon as orders are received So a three-day delay of the detailed order production schedule in Dell should not hurt the vendors Since they have the order information, they know what is due soon, if not yet exactly when Suppose that there are n orders to be scheduled for production Each order O i has a delivery due date and requires Q i units For modeling convenience, we define a production due date for each order A production due date d i is the latest production date that the order O i can be finished in order to arrive on the delivery due date via overnight shipping That is, in order to meet the delivery due date of an order O i, the manufacturer must finish production for the order on or before its production due date d i Otherwise, the order will not arrive to the customer in time, even via overnight shipping The production planning horizon is m days, where m is the maximum number of days from the beginning of the planning horizon to the latest production due date d i, i (1,, n) For convenience of presentation, all production due dates are expressed in number of days from the beginning of the planning horizon For example, when an order s production due date d i = 2, the order O i has to be finished production before the end of the second day in the planning horizon Clearly, the latest production due date is m Given n orders with production due dates and the daily production capacity c, how should these n orders be scheduled over the production planning horizon of m days? All orders should meet their due dates and the total shipping cost for the n orders should be as small as possible In order to make sure that a feasible schedule exists, in which all orders meet their due dates, we assume that all n orders satisfy the following feasibility condition: Q i c j, j = 1,, m, (1) i A j 7

8 where A j = {i d i j} denotes a set of orders having a production due date on or before the j th day in the planning horizon 23 Transportation Settings Each day a third party logistics company comes at the same time, say 3:00 PM, to collect the orders ready for shipping For convenience, we define one production day in the production planning horizon as starting at 3:00 PM and ending at 3:00 PM the next day Figure 1 depicts a planning horizon that starts at 3:00 PM today 3:00 PM today Production Day 1 Production Day Planning Horizon 12:00 AM 3:00 PM 12:00 AM 3:00 PM 12:00 AM tomorrow the day after tomorrow A logistics company comes to collect finished orders A logistics company comes to collect finished orders Figure 1: Example of a planning horizon The shipping mode and also the transportation time for order O i is r i When r i equals k, order O i has a k-day shipping mode and the transportation time is k days When r i is zero, the transportation time is less than one day and overnight shipping would be used Table 2 is a screenshot of a FedEx shipping cost table, found on the FedEx website Three types of overnight shipping listed in the table have different arrival times for a package Here, overnight shipping means standard overnight shipping, by which packages will arrive before 3:00 PM the next business day to most cities As shown in Table 2, when the transportation time has to be short, clearly shipping cost is more expensive than it could have been In addition, the cost difference between overnight and one-day shipping is much larger than the difference between two-day and three-day shipping So the shipping cost function G(r i, Q i ) is convex decreasing with the transportation time r i In order to save shipping cost, the shipping date t i for an order O i is equal to its production finishing date in the planning horizon Since shipping cost decreases with transportation time, a manufacturer ships an order on the day that it is finished production to try to have a long transportation time available before its delivery due date The shipping mode r i for an order O i is dynamically selected according to r i = d i t i For 8

9 Table 2 Screenshot of a FedEx shipping cost table instance, suppose that an order has a delivery due date on day 10 in the planning horizon Then the production due date for this order is day 9 If the manufacturer schedules to finish production for the order on day 6, then the shipping date for this order is also day 6, ie, t i = 6 Since r i = d i t i, the manufacturer ships the order via the three-day shipping mode; ie, r i = 3, so that the order meets its delivery due date and the shipping cost for this order is as low as possible It is common practice that shipping cost need not consider customer locations as long as customers are inside the US continent For example, most Ebay sellers charge the same shipping cost to all customers inside the US Figure 2 is from Dell s website, where the shipping cost is given before a customer specifies her location This assumption is relaxed in section 51, where we extend our models to consider customer locations in the shipping cost function This scenario occurs, for example, for overseas shipping Notice that the shipping cost in Table 2 is almost linearly increasing with the total weight of items shipped Although the products in each order are customized, the weight of these products are all about the same For example, different CPU speeds, different storage sizes of memory card and hard drive, and different quality of video and sound cards do not affect a computer s weight Therefore, the total weight of an order O i linearly increases with its quantity Q i, as does the shipping cost Then the shipping cost G(r i, Q i ) linearly increases with quantity Q i In section 52, we relax this assumption and discuss the impact of quantity discounts in a shipping cost function 9

10 Figure 2: Example showing that shipping cost can depend only on transportation time 3 When Partial Delivery is Allowed We denote the production and transportation integration problem when partial delivery is allowed as Problem PD, which is modeled in section 31 Then optimal solutions for Problem PD are presented in section Models of Problem PD When partial delivery is allowed, the manufacturer ships all of the products which are produced in one production day when the 3PL company comes at the end of the production day Let Q ij denote the number of items produced for customer order i in production day j, where i {1,, n} and j {1,, m} Then the shipping date for quantity Q ij is day j in the planning horizon With shipping mode d i j, the shipping cost is G(d i j, Q ij ) for quantity Q ij 311 Mixed Integer Programming Model of Problem PD In the following mixed integer programming model, the objective is to find the optimal production schedule, determined by decision variables Q ij, to minimize the total shipping cost 10

11 MIP-PD : subject to Minimize n d i G(d i j, Q ij ) i=1 j=1 d i Q ij = Q i, i = 1,, n (2) j=1 n Q ij c, j = 1,, m (3) i=1 Q ij 0, i = 1,, n; j = 1,, m (4) Q ij integer i = 1,, n; j = 1,, m (5) The objective function minimizes total shipping cost for n orders Constraint (2) ensures that all items required in order i are produced on or before the order s production due date d i Constraint (3) ensures that the daily production quantity does not exceed the daily production capacity c Constraints (4) and (5) simply ensure that the Q ij for all i and j take nonnegative integer values We show that the constraint matrix of MIP-PD is totally unimodular Then the mixed integer programming model can be solved as a linear program To show total unimodularity, the variables in model MIP-PD are listed in the sequence Q 11, Q 12,, Q 1m ; ; Q n1, Q n2,, Q nm The constraint matrix A for constraints (1) and (2) in MIP-PD is as below 1 th d th 1 m th th m + d 2 2m th (n 1)m th th d n nm th The above (0, 1) matrix A is totally unimodular because it satisfies the following two conditions: 1 Each column contains at most two nonzero elements, which are the number 1 2 The rows of A can be partitioned into two sets: A 1, which includes row 1 to row n, and A 2 including row n + 1 to row n + m, such that the two 1 entries in a column are in two different sets of rows Combined with the identity constraint matrix I from constraint (4), the constraint matrix for model [ ] A MIP-PD becomes, which is totally unimodular because A is totally unimodular I 11

12 Therefore, model MIP-PD has an integral polytope, which has only integral extremal points Then the MIP-PD model always has integer solutions and is equivalent to the following linear programming model, in which we remove constraint (5) The LP-PD model can be solved quickly by any optimization package such as ILOG CPLEX LP-PD : n d i Minimize G(d i j, Q ij ) i=1 j=1 subject to (1), (2), and (3) 312 Minimum Cost Flow Model of Problem PD Problem PD can also be modeled as a minimum cost flow problem Figure 3 shows two sets of nodes One set represents orders and the other set represents production days in the planning horizon The flow into every order node i is Q i Every order node i is connected to day nodes j with a flow Q ij and cost G(d i j, Q ij ), where j d i The flow coming out of each day node is c before the last active day node k, where k = i=n i=1 Q i c, whose flow equals the sum of all orders quantities minus the capacity of all fully utilized days After day node k, the flow coming out of each day node is zero A make-to-order manufacturer would like to determine the flow Q ij from order node i to day node j so that the total cost is minimized Orders Production Day Q c Q i Q n i n G( di j, Qij ) j n c i= 1 Q c*( k 1) i k m 0 Figure 3: A minimum cost flow network This minimum cost flow problem always has an integer minimum cost flow according to the integrality property (Ahuja, Magnanti, and Orlin 1993) This corresponds to the total unimodularity property for the mixed integer programming model MIP-PD The production planner can adopt an existing minimum cost flow algorithm to get the optimal solution for Problem PD 12

13 32 Solutions In an optimal production schedule, production should be continuous, without any idle time Any schedule that has idle time during production can be converted into a schedule without idle time by removing all idle time and advancing the production start times of all orders in the same sequence as they appear in the current schedule (Pinedo 2002) This process does not increase the objective function value Nonpreemptive Earliest Due Date Schedule (NEDD): A production schedule is a nonpreemptive earliest due date first schedule when orders are sorted according to earliest due date first and processed nonpreemptively and continuously without idle time Figure 4 provides an example of a NEDD schedule The orders are sorted according to nondecreasing due dates as in an EDD schedule and then produced one by one without preemption and idle time during production O 1 O 2 O 3 O 4 O m d 1 =1 d 2 =d 3 =2 d 4 = d 5 = 3 Figure 4: An example of a NEDD schedule Production Planning Horizon Lemma 1 Given that all orders satisfy the feasibility condition (1), a NEDD schedule is a feasible schedule (where all orders meet their due dates) Proof: Suppose an order O 1 has production due date j Then we show that its production finishing date in a NEDD schedule will not be later than day j We use A j = {i d i j} to denote a set of orders having a production due date on or before production day j in the planning horizon Because orders are produced according to nondecreasing due dates in a NEDD schedule, only orders O i, where i is in the set A j, can be scheduled for production before order O 1 Thus, the latest production finishing date for order O 1 is i A j Q i c that i A j Q i c j Thus, Since the feasibility condition (1) is satisfied for all orders, we know i A j Q i c for order O 1 is no later than its production due day j c j = j, which means that the production finishing date c Theorem 1 A NEDD schedule is optimal for Problem PD Any feasible schedule which is not a NEDD schedule can be transformed into an optimal NEDD schedule by a series of order interchanges In each such interchange, the objective function value either improves or remains the same 13

14 Proof: Suppose that a feasible schedule S (which may not be optimal) is not a NEDD schedule Then there exist two orders O 1 and O 2 (or two partial orders) such that d 2 < d 1 and order O 1 finishes before order O 2 (see Figure 5) Without loss of generality, we may assume that orders O 1 and O 2 (or two partial orders) have the same quantity q, q c, and order O 1 (O 2 ) starts and finishes production on the same day i (j) It is obvious that interchanging the positions of O 1 and O 2 will not change the objective function value if i = j For i < j, we know that i < j d 2 < d 1 Let k = j i, x 1 = d 1 i, and x 2 = d 2 j, where x 1 (x 2 ) denotes the transportation time in number of days for order O 1 (O 2 ) in schedule S The cost contributions of these two orders in schedule S is G(x 1, q) + G(x 2, q) Interchange the positions of O 1 and O 2 See Figure 5 for the new schedule The cost contributions of these two orders in the new schedule is G(x 1, q) + G(x 2, q), where x 1 = d 1 j and x 2 = d 2 i Note that the transportation time of order O 1 decreases by k days while the transportation time of order O 2 increases by k days Since x 1 > x 2 + k and the cost function G(x, q) is convex decreasing on x, we can easily show that G(x 1, q) + G(x 2, q) < G(x 1, q) + G(x 2, q) Schedule S: x 1 =d 1 -i O 1 (q) O 2 (q) Day 0 Day 1 Day i-1 Day i Day j Day d 2 Day d 1 k=j-i x 2 =d 2 -j Schedule after interchanging O 1 and O 2 : x 1 =d 1 -j=x 1 -k O 2 (q) O 1 (q) Day 0 Day 1 Day i-1 Day i Day j k=j-i Day d 2 Day d 1 x 2 =d 2 -i=x 2 +k Figure 5: Interchange equal-quantity positions of two orders in schedule S By performing a finite number of such interchanges, we could convert S into a NEDD schedule by either improving the objective function value or leaving this value unchanged for each such interchange Thus, a NEDD schedule is optimal QED In summary, when partial delivery is allowed, managers have various ways to solve this production and transportation integration problem They can use an optimization package such as ILOG CPLEX to solve the linear programming model LP-PD, or use an existing minimum cost flow algorithm, or implement a NEDD production schedule However, when partial delivery is not allowed, the problem 14

15 becomes difficult to solve In section 4, we analyze this problem when partial delivery is not allowed 4 When Partial Delivery is Not Allowed When partial delivery is not allowed, an order cannot be shipped until the last product in the order has finished production Interrupting the production of an order and leaving the order partly-finished for some time is not beneficial Therefore, in an optimal schedule, orders are finished one-by-one nonpreemptively and continuously However, when partial delivery is not allowed, a NEDD schedule may no longer be optimal, as shown in Figure 6 Figure 6 shows four accepted orders Orders Q1, Q2, Q3, and Q4 require 60, 80, 40, and 80 products, respectively, which have to be produced before the end of day 1, 2, 3, and 3, respectively The company can only produce 100 products in one day Suppose that the rates for overnight shipping, one-day delivery, and two-day delivery are $30, $10, and $5 for one product From Figure 6, the total shipping cost based on the NEDD production schedule is $7000, while another feasible schedule gives a lower shipping cost of $6800 NEDD is not optimal Order Q1 Q2 Q3 Q4 Quantity Due Date Ship Mode Overnight One day Two days Ship Rate Total shipping cost for the NEDD schedule is 60*$30+80*$30+40*$10+80*$30=$7000 Q4 Q1(60) Q2(40) Q2(40) Q3(40) Q4(60) (20) Day 0 Day 1 Day 2 Day 3 Total ship cost for another schedule is 60*$30+40*$5+80*$30+80*$30=$6800 Q4 Q1(60) Q3(40) Q2(80) Q4(60) (20) Day 0 Day 1 Day 2 Day 3 Figure 6: NEDD is not optimal when partial delivery is not allowed The production and transportation integration problem is denoted as Problem NPD when partial delivery is not allowed Section 41 models Problem NPD as a mixed integer program Section 42 analyzes the complexity of Problem NPD A heuristic algorithm is developed in section 43 This algorithm is shown to be efficient and effective by numerical analysis in section 44 15

16 41 Mixed Integer Programming Model of Problem NPD To model the problem when partial delivery is not allowed, some new notation is required Subscripts i, k, and j, respectively, refer to order i, the k th order to be produced in the production schedule, and the j th day in the production planning horizon, respectively We have the following additional decision variables { 1, if order i is the k X ik = th order to be produced in the optimal schedule; 0, otherwise { 1, if the completion time of customer order i falls in production day j; Y ij = 0, otherwise f i = exact production finishing time of order i, in days from the beginning of the planning horizon For example, f i = 25 means that order O i is finished in the middle of day 3 f k = exact production finishing time of the k th order to be produced according to the production schedule, in days from the beginning of the planning horizon MIP-NPD: subject to Minimize n m Y ij G(d i j, Q i ) i=1 j=1 n X ik = 1, i = 1,, n (6) k=1 n X ik = 1, k = 1,, n (7) i=1 m Y ij = 1, i = 1,, n (8) j=1 f 0 = 0 (9) ni=1 Q i X ik f k = f k 1 + c k = 1,, n (10) f k f i MZ ik k, i = 1,, n (11) f i f k MZ ik k, i = 1,, n (12) X ik 1 Z ik k, i = 1,, n (13) f i d i i = 1,, n (14) m f i jy ij i = 1,, n (15) j=1 X ik, Y ij, Z ik {0, 1} j = 1,, m k, i = 1,, n M is a large positive number 16

17 Since an optimal schedule is a sequential queue, one order can occupy only one position and one position can have only one order Therefore, constraints (6) and (7) hold Constraint (8) ensures that no partial delivery is allowed All items in one order O i are shipped together on day j, when Y ij has the value 1 This means that order O i is finished production on day j To obtain the exact production finishing time (f k ) of the k th order to be produced in the optimal schedule, constraint (10) is an iteration step and constraint (9) gives the initial starting time In constraint (10), f k 1, the production finishing time of the (k 1) th order in the schedule, is also the production starting time of the k th order Since only the order in position k has X ik = 1, n i=1 Q i X ik is the size of the order in position k Then ( n i=1 Q i X ik )/c provides the production time (in days) of the order Given the starting time and the production time, constraint (10) provides the production finishing time for the order in position k in the schedule, where k is an integer from 1 to n Constraints (11), (12), and (13) together mean that if X ik = 1, then f i = f k (Winston 1994) When X ik = 1, which indicates that order i is produced in the k th position in the optimal schedule, f i equals f k The finishing time f i of order O i has to be on or before its due date (constraint 14) Constraint (15) insures that the production finishing date is no earlier than the production finishing time For example, when production finishing time f i = 27, the production finishing date j, where Y ij = 1, should be an integer greater than 27 Considering the objective function, which desires a early production finishing date in order to save shipping cost, the production finishing date should be day 3, which is the smallest integer greater than 27 Therefore, constraint (15) and the objective function together decide the production finishing date for an order 42 Complexity of Problem NPD In this section, we show that Problem NPD is strongly NP-hard Therefore, it is probable that no polynomial time algorithm can be found to solve it (Garey, Graham, and Johnson (1978)) Theorem 2 Problem NPD is NP-hard in the strong sense Proof: We prove that 3-PARTITION is reducible to Problem NPD 3-PARTITION: Given integers N and B and given a set of integers a 1,, a 3N such that B 4 < a i < B 2, i = 1,, 3N, and 3N i=1 a i = NB, are there n pairwise disjoint three-element subsets A j {1,, 3N} such that i A j a i = B, j = 1,, N? We restate our optimization problem as a decision problem: 17

18 Decision Problem: Given a set of n orders, each order i demands Q i items that must be produced in a single lot on or before its production due date d i There are s shipping modes for order i: {r 1,, r s }, where s = d i The planning horizon is m The cost of using shipping mode r k, k = 1, 2,, m, is c k per item, where c 1 < c 2 < < c m Does there exist a schedule of customer orders where the total shipping cost is less than or equal to Z? We now construct an NPD problem that has a solution if and only if 3-PARTITION has a solution The planning horizon m = N The production capacity c = 3X +B items per day There are n = 3N orders with demands Q i = X + a i for each order i, i = 1,, n, where n i=1 Q i = 3NX + NB The production due date of each order is d i = N, i = 1,, n The number of shipping modes for each order is s = N Let c 1 = 1 and c k+1 = c k + 1, k = 1,, N 1 Set Z = N i=1 3Xc i + N i=1 Bc i, where X > N i=1 Bc i 3 P ART IT ION NP D: The existence of a 3-Partition allows demand Q i to be grouped into N lots, each of which has 3X + B items and exactly satisfies the demand of three customer orders using shipping mode r i, i = 1,, N (See Figure 7) Note that a lot of 3X + B items will be completed every day Because the shipping cost for each lot is c i (3X + B) using shipping mode r i, i = 1,, N, the total cost is Z = N i=1 c i (3X + B) X + a 1 X + a 2 X + a 3 X + a 4 X + a 5 X + a 6 X + a 3N 2 X + a 3N 1 X + a 3N 0 3X + B 6X + 2B 3NX + NB Day 1 Day 2 Day N Figure 7: Schedule for producing and delivering orders NP D 3 P ART IT ION: Suppose that there exists a schedule for Problem NPD such that Z Ni=1 3Xc i + N i=1 Bc i We now show that there exists a 3-Partition by proving the following two claims Claim 1: No more than 3k orders finish production before production day k, where k = 1,, N Proof: Four orders cannot finish production before production day 1 because 4X > 3X +B Similarly, seven orders cannot finish production before production day 2 because 7X > 6X + 2B, and so on Claim 2: Exactly 3k orders finish production before production day k, where k = 1,, N Proof: Suppose that there is a schedule in which less than 3k jobs finish production in production day k The total cost is at least 3Xc Xc k + 4Xc k Xc N > Z Therefore, Problem NPD is NP-hard in the strong sense QED 18

19 In section 43, a heuristic algorithm is developed for Problem NPD Section 44 shows that the algorithm is effective and efficient 43 A Heuristic Algorithm for Problem NPD As described at the beginning of section 4, production in an optimal schedule should be nonpreemptive and continuous without any idle time during production Based on this feature, we use a NEDD schedule as an initial production schedule and develop a heuristic algorithm that provides an optimal or near-optimal schedule Suppose that the schedule in Figure 8 is a NEDD schedule Let C j denote the number of products produced in day j but shipped later In day 1, c products can be produced But only c C 1 products can be shipped at the end of day 1, because order O 2 is not finished yet In day 2, the manufacturer produces c products again but ships c + C 1 C 2 products at the end of day 2 C 1 C 2 C C 3 4 O 1 O 2 O 5 O 6 O Figure 8: An example of C j for each day j in a NEDD schedule Observe that when C j, j [1, m 1], is reduced, the total shipping cost is reduced For example, if the small order O 6 is produced before the large order O 5 in Figure 8, then C 2 will be reduced, order O 6 can be shipped earlier, and the shipping dates for all other orders will not be affected Thus a better production schedule is obtained in terms of shipping cost In order to gain more insight into the relationship between C j and shipping cost, where j = 1,, m, consider a general linear shipping cost function G(r i, Q i ) = Q i [b a (d i t i )], where a > 0, b > 0, and d i t i is the transportation time with shipping mode r i = d i t i The value b is the cost per item for overnight shipping, which has the shortest transportation time and highest cost, while a is the dollar value of increasing transportation time by one more day Rewrite the objective function n i=1 mj=1 Y ij G(d i j, Q i ) into n i=1 mj=1 Y ij Q i [b a(d i j)], which can be shown in a desired form as follows n m n m m n ( Y ij )Q i b ( Y ij )Q i ad i + ( Y ij Q i )aj i=1 j=1 i=1 j=1 j=1 i=1 19

20 Note that the first two terms in the expression are constants since m j=1 Y ij = 1 To minimize the objective function, we need only minimize m j=1 ( n i=1 Y ij Q i )aj, where n i=1 Y ij Q i is the total number of items shipped in day j Since the number of items shipped each day can be expressed using C j and the capacity constant c, the objective function is further reduced to minimize a weighted sum of C j, where j is from 1 to m 1 For example, in Figure 8, m j=1 ( n i=1 Y ij Q i )aj is equal to a[1(c C 1 )+2(c+C 1 C 2 )+3(c C 3 )+4(C 2 + C 3 +c C 4 )+5(C 4 +c+(5c n i=1 Q i ))], which is a[ 5 j=1 (cj)]+a[c 1 +2C 2 +C 3 +C 4 ] 5a(5c n i=1 Q i ) after some algebra Since a[ 5 j=1 (cj)] 5a(5c n i=1 Q i ) is a constant, we just need minimize W S = C 1 + 2C 2 + C 3 + C 4, a weighted sum of all of the partial order quantities that are produced in one day but shipped in a different day Given a schedule, the rule to find the weights can be described as follows If the order corresponding to C j is shipped the next day after production day j, then C j gets weight 1 For example, C 1, C 3, and C 4 all have weight 1 Similarly, if the order corresponding to C j is shipped in the k th day after production day j, then the weight is k For example, the weight of C 2 is 2 Therefore, a production schedule minimizes the objective function for Problem NPD if it has a minimum W S while satisfying the due dates and the limited production capacity constraints According to this observation, we devise the following heuristic algorithm that cuts down the quantity C j on each day j, so that the value of W S could be reduced The steps of the algorithm are described as follows Algorithm NPD Step 1 Construct a NEDD schedule according to the nondecreasing order of due dates and large i=n i=1 order first in case of a tie Set the initial value of j to be Q i c Step 2 If 0 < C j < c, then go to Step 3 If C j = c, go to Step 4 Otherwise, go to Step 5 Step 3 If all orders that are finished in day j + 1 have a larger quantity of products than C j, then go to Step 5 Otherwise, among the orders that are started and finished in day j + 1 and also have a less or equal quantity compared with C j, pick the order with the largest quantity (Q i ) and switch it with an equal quantity belonging to C j After switching, C j is reduced to C j Q i The switch may preempt an order O k into two portions whose finishing time falls on day j+1 If preemption happens, there exists a set of orders (say set J) processed between the 20

21 two portions of O k Adjust the schedule to be nonpreemptive by interchanging positions of the last portion of O k with the orders in set J This process achieves a nonpreemptive schedule without increasing the value of the objective function Go to Step 2 Step 4 Set t = j Repeat j = j 1 until C j < c or j = 1 Find all orders which are started and finished in day t + 1 Switch them one by one with an equal quantity in j=t j=i C j as described in Step 3 Step 5 If j is greater than 1, set j = j 1 and go to Step 2 again Otherwise, STOP Algorithm NPD gives a near optimal production schedule for Problem NPD Step 1 gives an initial NEDD schedule that satisfies the due dates and limited capacity constraints Based on the initial schedule, Step 3 reduces the quantity C j that is produced in day j and shipped later than day j If this quantity is equal to c, then Step 4 is executed to reduce C j When the process of reducing C j is done for each day j, from the last active day i=n i=1 Q i c to day 1, the algorithm stops and results in a better production schedule Figure 9 illustrates how to reduce C m 1, which is shown as a shadow region Example to reduce C m 1 1 (Step 1) According to increasing due dates and large order first in a tie, an initial NEDD schedule is generated 2 (Step 2) Since C m 1 in shadow is larger than zero and less than c, go to Step 3 3 (Step 3) In day m, the completed orders O u and O w have smaller quantities than C m 1 Since Q w > Q u, pick O w to switch with an equal quantity belonging to C m 1 After the switch, the shadow part C m 1 is reduced to C m 1 Q w, which is shown in shadow in the second schedule in Figure 9 Now order Q k is preempted Set J = {Q u } Without increasing the objective function, interchange the second portion of O k with the orders in set J Then a nonpreemptive schedule is generated and illustrated as the third schedule in Figure 9 Go to Step 2 4 (Step 2) Since the new C m 1 is still larger than zero, go to Step 3 5 (Step 3) Repeat the process and switch order O u with an equal quantity belonging to C m 1 Note that C m 1 is further reduced as shown in the fourth schedule in Figure 9 Go to Step 2 6 (Step 2) Go to Step 3 again because 0 < C m 1 < c 21

22 7 (Step 3) Since there is no completed order in day m which has a smaller quantity than the new C m 1, go to Step 5 8 (Step 5) Since j is greater than 1, j = j 1 and start the process to reduce C m 2 Initial NEDD schedule after Step 1: 0 Schedule after switching O w before O k ( set J={O u }): O k O u O w O w O k O u O k 0 Schedule after interchanging the positions of the last portion of O k and orders in set J: 0 Schedule after switching O u before O k : O w O k O u O w O u O k 0 Day 1 Day 2 Day m-2 Day m-1 Day m Figure 9: Example to minimize C m 1 After the process is repeated and finished reducing C 1, the algorithm stops and a near-optimal schedule is generated The above example doesn t yet show how Step 4 in Algorithm NPD reduces C j when there are large orders The following is another example to illustrate Step 4 C 1 C 2 C 3 C 5 C 4 O 1 O 2 O 3 O 4 O 5 O C 1 C 2 C 3 C 5 C 4 O 1 O 2 O 4 O 5 O 3 O Figure 10: Example to show how to reduce C j when C j > c In Figure 10, there is a large order O 3 When the algorithm detects C 4 = c, it goes to Step 4 Since j = 4, then t = j = 4 Here, t is used to record the production finishing date t + 1 for the large order In order to find the production starting date for the large order, repeat j = j 1 until C j < c or j = 1 The iteration stops when j = 2 because C 2 < c Thus, production for the large order starts in day j = 2 and ends in day t + 1 = 5 Therefore, the quantity of the large order contributes C 2 + C 3 + C 4 to the weighted sum W S Orders O 4 and O 5 are started and finished in day t

23 Switch O 4 first, then O 5 with an equal quantity belonging to C 2 + C 3 + C 4 Then we get the second schedule in Figure 10 Both C 2 and C 3 are reduced after the switches Algorithm NPD provides a near-optimal solution in polynomial time The performance of Algorithm NPD is tested in section Performance Evaluation of Algorithm NPD In order to evaluate the performance of the heuristic Algorithm NPD, the algorithm is coded in Java and tested with 13 problem sets having different planning horizons of m days and number of orders n Each problem set has 500 problem instances The first two problem sets compare Algorithm NPD to the optimal solution Since only small problems can be solved optimally, the capacity c is 10 computers/day As the problems get large (above 8 orders and 8 days), CPLEX takes hours to find the optimal solution For larger problems, CPLEX may take days or may not be able to find an optimal solution So we next develop a good lower bound Then, the realistic large-size problems of 500 orders over 8 days were run with both the LB and Algorithm NPD The gaps between the upper and lower bounds on the optimal solutions are very small According to Hall and Posner (2001), there are two approaches to generate problem instances One of them is to generate data without regarding for feasibility and then discard instances that have no feasible schedule Following this approach, given the number of orders n (for example, n new orders are received and accumulated during the last two days) and the planning horizon m (for example, the latest production due date among these n orders is m days later), each order s due date d i is an integer generated randomly from a uniform distribution in the interval [1, m] The quantity Q i for each order i is an integer generated randomly from a uniform distribution in the interval [1, mc] After an order with d i and Q i is generated, we apply feasibility condition i A j Q i cj, j = 1,, m, where A j = {i d i j} denotes a set of accepted orders having delivery due date on or before day j When an order violates the feasibility condition, a new order is generated to replace it Suppose that a computer weighs 50 lbs From Table 2, we know the FedEx shipping rate for each shipping mode Plotting the shipping rate as a smooth function of transportation time in Excel, we observe a smooth curve as shown in Figure 11, which is close to the curve provided by function r i Thus, in the following numerical tests, we use G(r i, Q i ) = Q i ( r i ) as our shipping cost function 23

24 shipping cost function Fedex shipping rate shipping cost function G Shipping cost Transportation time Figure 11: Shipping cost function For performance comparison, CPLEX was used to obtain the optimal solution for the MIP model MIP-NPD described in section 41 Thirteen problem sets with increasing problem size are tested Tables 3 and 4 provide the performance measures for the heuristic Algorithm NPD for two problem sets: (n, m) = (5, 5) and (n, m) = (8, 8) Each line is a average result for 50 problem instances The second through fourth columns show, respectively, the average time (in milliseconds) that CPLEX takes to give the optimal solutions to the MIP-NPD model, the average time that Algorithm NPD takes to give the heuristic solutions, and the average percentage gap between the heuristic values and the optimal values (Zhao and Stecke (2005) tested ten problem instances in each of these two problem sets to provide the optimal solution values and the heuristic solution values for each problem instance) From Tables 3 and 4, Algorithm NPD is efficient, takes much less than one millisecond, and gives a very close to optimal value when the number of orders is small For problems with a large number of orders, CPLEX can take hours or days to obtain a solution Therefore, lower bounds and an upper bound (Algorithm NPD) are used To find a good lower bound, we compare the lower bound provided by relaxing the MIP to an LP and the lower bound from relaxing the problem to allow partial delivery of orders Let LP-relaxation denote the LP model generated by treating all integer variables as real variables in MIP-NPD Using CPLEX, we can solve the LP-relaxation model quickly and obtain a lower bound for the NPD problem If we relax the no partial delivery requirement in the NPD problem, we can use the LP-PD model, which CPLEX solves efficiently, to provide a lower bound on the optimal solution For convenience 24

25 Table 3 Numerical results when n = 5 and m = 5 Optimal Solution CPU Time Heuristic Algorithm NPD CPU Time Average gap between optimal cost and (Milliseconds) (Milliseconds) heuristic cost % % % % % % % % % % Average % Table 4 Numerical results when n = 8 and m = 8 Optimal Solution CPU Time (Milliseconds) Heuristic Algorithm NPD CPU Time (Milliseconds) Average gap between optimal cost and heuristic cost % % % % % % % % % % Average % of discussion, we denote the LP-PD model as PD-relaxation In order to evaluate the quality of the two lower bounds, we test two problem sets and compare the results with optimal solutions in Figures 12 and 13 From the figures, we observe that PD-relaxation provides a much better lower bound for the objective function value With the lower-bound values provided by PD-relaxation, the performance of Algorithm NPD is tested with a problem set having a large number of orders n = 500 and a planning horizon m = 8 We set the production capacity c as 500 computers/day In Table 5, we compare the lower bound from PD-relaxation and the upper bound from Algorithm NPD in the fourth column The average gaps are quite small Thus, Algorithm NPD provides a near optimal solution for Problem NPD even when the number of orders is large 25

26 optimal LP-relaxation PD-relaxation optimal LP-relaxation PD-relaxation Figure 12: Lower bounds performance when n=m=5 Figure 13: n=m=8 Lower bounds performance when Most orders from individuals to Dell require only one or two computers For example, 70% of orders may require only one computer and 25% of orders might require two computers only We mimic this situation by limiting the quantity Q i required by 75% of the orders to be 1 computer, 25% of the orders to be 2, and the rest to be an integer generated randomly from a uniform distribution in the interval [3, 10] In Table 6, we tested 500 problems for each of ten problem sets with different numbers of orders n The sixth column in each row shows the average gap value summarized for 500 problem instances These small gap values show that heuristic Algorithm NPD performs very well when the number of orders is large but the size of most orders is small Table 5 Heuristic performance when n = 500 and m = 8 PD-relaxation CPU Time (Milliseconds) Heuristic Algorithm NPD CPU Time (Milliseconds) Average gap between the upper bound and lower bound % % % % % % % % % % Average % 26

27 Table 6 Heuristic performance when orders are small n m Heuristic PD-relaxation Gap between the Algorithm NPD CPU Time upper bound CPU Time (Milliseconds) and lower bound (Milliseconds) % % % % % % Average % 5 Extensions of Various Shipping Cost Functions In this section, we consider two extensions In section 51, we extend the models to consider customer locations in the shipping cost function G(r i, Q i ) In section 52, we consider quantity discounts in the shipping cost function, ie, function G(r i, Q i ) is concave increasing with the quantity Q i 51 Considering Customer Locations in the Shipping Cost Function Some 3PL companies may charge shipping cost according to not only transportation time but also customer locations Table 7 is a screenshot of a shipping cost table, found on the FedEx website, which categorizes customer locations into different zones Shipping cost is different for each zone To consider customer locations in a shipping cost function, we model the shipping cost function for order O i using G i (r i, Q i ), i = 1, 2,, n Functions G i (r i, Q i ) and G j (r j, Q j ) may be identical if order O i and order O j are from customers in a same zone Otherwise, there is a gap between these two shipping cost function values When partial delivery is allowed, model LP-PD can be slightly modified to account for customer locations For each order i, the shipping cost function is changed to G i (r i, Q i ) in the objective function Then the following LP model is presented The decision variables Q ij determine an optimal production schedule CPLEX solves the LP model in polynomial time n d i Minimize Q ij G i (d i j, Q i ) i=1 j=1 subject to the constraints, which are the same as in LP-PD 27

28 Table 7 Overnight shipping cost varies with customer locations in different zones When partial delivery is not accepted by customers, the shipping cost function in the objective function of model MIP-NPD can be changed to G i (d i j, Q i ) The following MIP model is obtained Minimize n m Y ij Q i G i (d i j, Q i ) i=1 j=1 subject to the constraints, which are the same as in MIP-NPD The problem considering customer locations in a shipping cost function when partial delivery is not allowed is strongly NP-hard To get a heuristic algorithm for the problem, the first step in Algorithm NPD is modified to get an initial schedule by using earliest due date first and break ties by putting an order with longer distance first This practice makes sense because the shipping cost for a long distance is more expensive than that for a short distance 52 Considering Quantity Discounts in the Shipping Cost Function Some 3PL companies offer quantity discounts when a manufacturer sends multiple products in a batch to a customer That is, the shipping cost function G i (r i, Q i ) is concave increasing with the quantity Q i Below we discuss the impact of quantity discounts on production scheduling When partial delivery is not allowed, the quantity discounts offered by the 3PL company will not affect the production schedule of the manufacturer However, when partial delivery is allowed by customers and quantity discounts are available from the 3PL company, the manufacturer faces one more tradeoff For example, suppose an order requires 100 computers with delivery due in 10 days 28