Exact Algorithms for Integrated Facility Location and Production Planning Problems

Size: px
Start display at page:

Download "Exact Algorithms for Integrated Facility Location and Production Planning Problems"

Transcription

1 Exact Agorithms for Integrated Faciity Location and Production Panning Probems Thomas C. Sharkey, 1 Joseph Geunes, 2 H. Edwin Romeijn, 3 Zuo-Jun Max Shen 4 1 Department of Industria and Systems Engineering, Rensseaer Poytechnic Institute, Troy, New York Department of Industria and Systems Engineering, University of Forida, Gainesvie, Forida Department of Industria and Operations Engineering, The University of Michigan, Ann Arbor, Michigan Department of Industria Engineering and Operations Research, University of Caifornia, Berkeey, Caifornia Received 13 June 2009; accepted 8 February 2011 DOI /nav Pubished onine 31 May 2011 in Wiey Onine Library (wieyonineibrary.com). Abstract: We consider a cass of faciity ocation probems with a time dimension, which requires assigning every customer to a suppy faciity in each of a finite number of periods. Each faciity must meet a assigned customer demand in every period at a minimum cost via its production and inventory decisions. We provide exact branch-and-price agorithms for this cass of probems and severa important variants. The corresponding pricing probem takes the form of an interesting cass of production panning and order seection probems. This probem cass requires seecting a set of orders that maximizes profit, defined as the revenue from seected orders minus production-panning-reated costs incurred in fufiing the seected orders. We provide poynomia-time dynamic programming agorithms for this cass of pricing probems, as we as for generaizations thereof. Computationa testing indicates the advantage of our branch-and-price agorithm over various approaches that use commercia software packages. These tests aso highight the significant cost savings possibe from integrating ocation with production and inventory decisions and demonstrate that the probem is rather insensitive to forecast errors associated with the demand streams Wiey Periodicas, Inc. Nava Research Logistics 58: , 2011 Keywords: faciity ocation; production panning; branch and price; order seection 1. INTRODUCTION The design of a suppy chain network structure has significant impacts on operating costs. The ocations of suppy faciities, the assignment of customer demands to these faciities, and the management of production and inventory at the faciities are a important contributors to overa suppy chain performance. When these ocation, assignment, and production panning decisions are undertaken separatey, the suppy chain may end up incurring significanty (and unnecessariy) high operating costs. A potentia for significant cost savings can often arise as a resut of considering these decisions simutaneousy in the panning phase. This artice considers such an integrated ocation and production panning probem, where individua customers have dynamic demand streams over a finite horizon. We must determine a set of operationa faciities and assign the demand of each customer in every Correspondence to: T.C. Sharkey (sharkt@rpi.edu) time period to an open faciity. We must then manage the production and inventory eves within each open faciity in order to meet assigned demands in every time period. The goa is to minimize tota faciity opening costs, assignment costs, and production panning costs incurred whie meeting a customer demands. Typica faciity ocation probems (see, for exampe, Daskin [7]) seek an assignment of customers to open faciities that minimizes the sum of the assignment costs (of customers to open faciities) and the faciity opening costs. These faciity ocation probems are often static in nature, meaning that they cannot, except at a very coarse eve, mode probems where customer demands vary over time. Dynamic faciity ocation probems (see Wesoowsky [28], Van Roy and Erenkotter [20], and Chardaire et a. [4]) are discrete modes in which customer demands vary over time where we wish to assign the demand of each customer in each time period to an open faciity. These dynamic modes are not ony interested in determining where to ocate faciities but aso 2011 Wiey Periodicas, Inc.

2 420 Nava Research Logistics, Vo. 58 (2011) when to open the faciities. In these dynamic modes, each customer must be assigned to an open faciity in every time period and the faciity must meet the demand of its assigned customers. However, these dynamic ocation modes do not capture the typica economies of scae observed in production at the faciities. Further, and more importanty, these dynamic modes assume that a demand assigned to a faciity in a time period is produced during that time period, i.e., they do not permit faciities to carry inventory between time periods. Typica modeing approaches attempt to capture the production and inventory costs at a faciity as a component of the inear assignment or connection cost incurred when serving a customer from the faciity. However, this can typicay ony serve as an approximation because of the economies of scae often seen in production (for exampe, fixed-charge production set up costs), which require knowedge of the entire set of demands assigned to the faciity before computing tota production cost. Effective mode precision and accuracy requires ocation modes that expicity account for the production and inventory decisions at each faciity. Recent research has incorporated production and/or inventory decisions and associated costs within faciity ocation probems to varying degrees. Daskin et a. [6], Shen et a. [23], and Shu et a. [24] consider joint inventory-ocation modes where each customer has uncertain demand (athough the parameters of the associated probabiity distributions are static over time) and each faciity must determine when to produce (or reorder) and the amount of safety stock to hod to meet a prescribed system-wide service eve. Huang et a. [12] consider a continuous-time singe-sourcing probem where each customer has a constant, static demand rate and each faciity must determine its optima order poicy based on the tota demand rate assigned to it in the face of cassic economic order quantity costs. These modes incorporate production and/or inventory decisions at faciities, but customer demands (or the distributions of these demands) are assumed to be stationary over time. The previous research on assigning customers to faciities when customers have dynamic demand has focused on the muti-period singe-sourcing probem (MPSSP); however, this probem does not account for strategic faciity opening decisions (see Romeijn and Romero Moraes [16 18] and Freing et a. [9]). Moreover, previous work on the MPSSP has made the simpifying assumption that production and inventory costs are inear (athough production and inventory quantities may be capacitated), meaning that this work does not account for economies of scae in production. Freing et a. [9] deveoped an exact branch-and-price agorithm for a specia case of the MPSSP where the demand patterns foow the same seasona pattern and the goa is to assign a customer to the same faciity for the entire horizon. This specia case of the MPSSP can be reduced to a ocation probem with static demand, for which the branch-and-price agorithm was deveoped. The integrated faciity ocation and production panning modes deveoped in this artice overcome severa of the shortcomings of the aforementioned work by incuding faciity ocation decisions, dynamic customer demands, and economies of scae in production within the mode. These modes wi make the practica assumption, typicay seen in distribution systems, that we operate under a singe-sourcing strategy. This means that a customer s demand in a period is not spit among mutipe suppy faciities. This strategy offers severa practica advantages, such as reduced coordination compexity between faciities, and has been assumed in the joint inventory-ocation mode, the continuous-time singe-sourcing probem, and the MPSSP. In the context of our probem where customers have dynamic demand streams, we wi interpret the singe-sourcing strategy to mean that a customer s demand in any given period is not spit across mutipe faciities. We wi, however, aow assignment decisions in our ocation mode to vary dynamicay. The branch-and-price approaches previousy deveoped for the joint inventory-ocation mode, the continuous-time singesourcing probem, and the MPSSP did not permit dynamic assignments. As noted previousy, we deveop exact branch-and-price agorithms to sove our integrated faciity ocation and production panning modes. Romeijn et a. [19] considered a simiar cass of integrated ocation and production panning probems, but they were concerned with deveoping approximation agorithms for this cass of probems. In particuar, Romeijn et a. [19] require that a customer is assigned to the same faciity over the probem s horizon and prove that it is unikey that there exists a constant factor approximation agorithm for this probem. For the specia case where the demand patterns of the customers foow the same seasona trend, Romeijn et a. [19] deveop a 1.52-approximation agorithm. The probems we consider in this artice are strategic panning probems and fast soution times are, therefore, not of paramount importance. This means that finding a good soution quicky may not be as important as finding an optima soution in a time frame that can aid in suppy chain panning activities. Further, we are abe to expore certain characteristics of our probem cass by determining an optima soution using a branch-and-price agorithm. This permits characterizing potentia cost savings by comparing the integrated mode soution to that obtained using a sequentia approach that first soves the cassica faciity ocation probem and then determines the optima production and inventory eves for the corresponding faciity set. We aso expore the sensitivity of our probem cass to forecast errors in the customer demand streams. These comparisons woud be ess meaningfu if we were to base them on heuristic soutions.

3 Sharkey et a.: Integrated Faciity Location and Production Panning Probems 421 We use a branch-and-price agorithm to sove the setcovering formuation of the integrated faciity ocation and production panning probem. Savesbergh [21] first deveoped a branch-and-price agorithm for a set-partitioning formuation of the Generaized Assignment Probem. There has been much success (see, for exampe, Shen et a. [23], Freing et a. [9], Huang et a. [12], and Shu et a. [24]) in appying branch-and-price agorithms to set-partitioning or set-covering formuation(s) of customer assignment modes. It turns out that the pricing probems that arise in these agorithms are often interesting suppy chain panning probems in their own right. In particuar, the pricing probem is typicay a suppy chain panning probem with customer (or order) seection. In these probems, the suppier seects a subset of customers that maximizes profit, i.e., revenues from customers minus the costs necessary to serve the customers. In the context of our integrated faciity ocation and production panning mode, this pricing probem takes the form of a production panning probem with order seection. This probem is a generaization of the probem studied by Geunes et a. [10] and can aso be interpreted as a joint pricing and production panning probem. The pricing probem in this artice considers genera concave production cost functions, as opposed to the fixed-charge pus inear production cost functions in Geunes et a. [10]. Therefore, the contribution of this artice ies not ony in the integrated ocation and production panning probem but aso in deveoping agorithms to sove this production panning probem with order seection and various extensions thereof. The remainder of this artice is organized as foows. We formay describe and formuate the integrated faciity ocation and production panning probem and discuss its appications in Section 2. The set-covering formuation and the branch-and-price agorithm for this probem are then discussed in Section 3. We discuss the pricing probem, i.e., the production panning and order seection probem, in Section 4. We provide the resuts of our computationa testing in Section 5. These computationa tests incude comparing our agorithm to various approaches using commercia sovers. They aso anayticay characterize the vaue of integrating ocation with production and inventory decisions and examine the sensitivity of our mode to forecast errors in customer demand streams. We discuss how to modify the branch-and-price agorithm to account for severa important variants of our integrated ocation and production panning probem in Section 6. These extensions ead to severa variants of the production panning and order seection probem. We concude the artice in Section PROBLEM STATEMENT The integrated ocation and production panning probem can be mathematicay formuated as foows. We are given a set of m faciities, n customers, and T time periods. The demand of customer j in period t is given by d jt (j = 1,..., n, t = 1,..., T). A connection cost, c ij t, is associated with faciity i and customer j in time period t, which is expressed as a cost per unit of demand. Each faciity has an associated opening cost of f i, which is incurred if we assign any customers to the faciity. Each faciity i has an associated concave cost function that corresponds to the cost of producing p units in time period t, P it (p), and a per-unit inventory cost, h it, for hoding a unit of inventory in time period t. We aow customer assignments to vary dynamicay over the horizon, i.e., in each time period t we must determine which faciity wi suppy the demand of customer j. We thus define a binary variabe x ij t for i = 1,..., m, j = 1,..., n, and t = 1,..., T, which equas 1 if we assign customer j to faciity i in time period t, and equas 0 otherwise. The binary variabe y i for i = 1,..., m is equa to 1 if faciity i is open. We further define the variabes p it and I it for i = 1,..., m and t = 1,..., T as the production and inventory eves, respectivey, at faciity i in time period t. Our integrated faciity ocation and production panning probem can be formuated as foows: ( ) minimize f i y i + (P it (p it ) + h it I it ) subject to i=1 x ij t 1 i=1 t=1 + i=1 t=1 d jt c ij t x ij t for j = 1,..., n, t = 1,..., T (P) (1) x ij t y i for i = 1,..., m, j = 1,..., n, t = 1,..., T (2) x ij t {0, 1} for i = 1,..., m, j = 1,..., n, t = 1,..., T (3) y i {0, 1} for i = 1,..., m (4) I i,t 1 + p it = d jt x ij t + I it for i = 1,..., m, t = 1,..., T (5) I i0 = 0 for i = 1,..., m (6) p it, I it 0 for i = 1,..., m, t = 1,..., T. (7) Constraints (1) (4) are traditiona (dynamic) faciity ocation constraints and constraints (5) (7) are production panning constraints at each faciity to ensure that, in each time

4 422 Nava Research Logistics, Vo. 58 (2011) period, we meet the demand of a customers assigned to the faciity. If we know the set of customers assigned to a given faciity in a time periods, then we simpy need to sove an uncapacitated production panning probem at the faciity. This production panning probem is a generaization of the cassic economic ot-sizing probem (see Wagner and Whitin [27]), where concave production cost functions repace fixed-charge pus inear production costs. This subprobem can be soved via a dynamic programming agorithm in O(T 2 ) time (see Veinott [25] or Denardo [8]). In terms of the faciity ocation mode, we can essentiay view each customer j as T separate customers, one for each time period, since we can assign the demand of customer j to different faciities in different time periods. The appication of probem (P) is appropriate in the strategic panning phase when evauating suppy chain design options. The purpose of such modes is typicay to evauate suppy chain design aternatives and to aid in ong-range budget panning. As noted by Shapiro [22], accounting for inventory costs in such modes serves to approximate the way in which inventory pans infuence suppy chain costs. Thus, our mode provides a mechanism to more cosey approximate these production- and inventory-reated costs when economies of scae in production strongy infuence tota costs. Appication of the mode therefore requires judicious baancing between ong-term (ocation) costs and shorterrange (production- and inventory-reated) costs. Whie a deterministic demand assumption is often empoyed in strategic panning modes in the iterature (and in ocation modes in particuar), the deterministic demands used in our mode are ceary used to represent projected customer demands over a ong-range (or strategic) panning horizon, and how these contribute to operationa costs. Athough a deterministic demand assumption is often an abstraction from reaity, as we ater show in Section 5.3, the onger-term strategic ocation decisions our mode provides are reasonaby insensitive to errors in forecasted demand, whie the resuting mode costs provide good estimates of overa costs for use in budget panning. We aso recognize the imitations introduced by ignoring faciity capacity imits. This imitation may necessitate use of a capacity requirements panning or finite-capacity scheduing function for appication to existing faciities with hard capacity imits (see Zipkin [30] for a discussion on how simiar imitations are addressed in existing materia requirements panning systems). Aternativey, for new faciity ocations, we might account for a inear approximation of the cost of capacity as part of the faciity connection cost parameters, and pan faciity capacity eves based on the demands assigned to a faciity in the optima soution. Probem (P) can be used to sove probems where the costs and customer demand patterns repeat over time. In such situations, the probem horizon is then interpreted as the duration of the pattern before it repeats. We note that if the cost or demand patterns at different customers have different cyce engths, then the overa cyce ength (or horizon of (P)) wi be the east common mutipe of the different cyce engths of the cost and demand patterns. In these settings, the faciity opening costs, f i, might contain (i) an annuaized opening cost and (ii) the operating cost of the faciity over the horizon. It may aso be appropriate to mode the probem so that the inventory entering the first period equas the inventory eaving the ast period (i.e., I i0 = I it for a i = 1,..., m). It is not difficut to show that in an optima soution to (P), we have I i0 = I it = 0 for a i = 1,..., m, but we may want to aow these inventory eves to take non-negative vaues in practice. We show that our branch-and-price agorithm can sove this extension of (P), which we refer to as cycic, in Section 6.2. Probem (P) can aso be appied to muti-item production panning probems with component substitutions (see, for exampe, Baakrishnan and Geunes [1] and Wu and Gobasi [29]). In this setting, each faciity corresponds to a particuar component that may be used in producing different end products (the customers). Each end product has an associated demand stream over the finite horizon. The connection cost of end product j to component i is then interpreted as the substitution or conversion cost for using component i in end product j. The faciity opening cost for component i can then be interpreted as the cost of acquiring the capabiities of producing the component (e.g., a design cost). We then account for economies of scae in producing component i in each of the time periods over the horizon of our production panning probem, and the abiity to hod components in inventory. Baakrishnan and Geunes [1] considered this muti-item production panning probem with substitutions in the absence of component acquisition costs and when the production cost of a component consists of a fixed charge setup cost pus a per unit variabe production cost. Our probem (P) can thus be used to mode more genera situations than considered by Baakrishan and Geunes [1], where we have component acquisition costs and a more genera form of economies of scae in component production. 3. A BRANCH-AND-PRICE ALGORITHM In this section, we deveop a branch-and-price agorithm for (P) that wi sove the probem to optimaity. The current formuation of (P) is a arge-scae mixed integer noninear programming probem. We deveop an equivaent formuation of (P) that removes the noninearity of the objective function of (P) by posing the probem as a set-covering probem. However, this set-covering formuation contains an exponentia number of variabes. To address this probem, we use the coumn generation approach of Gimore and Gomory [11] to sove the reaxation of the set-covering formuation. This

5 Sharkey et a.: Integrated Faciity Location and Production Panning Probems 423 procedure wi be used to cacuate the inear programming (LP) bounds at each node of a branch-and-bound tree, eading to a branch-and-price agorithm to sove (P). It is easy to see that any feasibe soution to (P) can be viewed as a partition of the customer/time period pairs into m subsets, each of which is assigned to a faciity. Denote the number of distinct subsets that can be feasiby assigned to a faciity by L. In particuar, L = 2 nt since each customer/time period pair can be incuded or not incuded in the subset. Furthermore, we et the binary matrix αi represent the th subset associated with faciity i, where αij t = 1 if customer/time period pair (j, t) beongs to the subset, and 0 otherwise. For consistency with past approaches (for exampe, Savesbergh [21]), we wi aso refer to αi as the th coumn associated with faciity i. Furthermore, et ζ i (αi ) denote the cost associated with serving the set of customers/time periods given by αi at faciity i. If we then define the decision variabe y i to be equa to 1 if faciity i serves the th associated subset and 0 otherwise, the set-covering formuation (SC) of (P) reads: subject to i=1 =1 minimize L αij t y i 1 i=1 =1 L ( ζ i α i ) y i for j = 1,..., n, t = 1,..., T (SC) y i {0, 1} for i = 1,..., m, = 1,..., L. (8) Without oss of generaity, we assume that αi 1 represents the empty set, so ceary ζ i (αi ) 1 = 0. Otherwise, we have ( ζ i α i ) = fi + d jt c ij t αij t t=1 + g i d j1 αij 1,..., d jt αij T, (9) where g i (D 1,..., D T ) is equa to the optima soution vaue of an associated production panning probem: subject to minimize (P it (p it ) + h it I it ) t=1 I i,t 1 + p it = D t + I it for t = 1,..., T I i0 = 0 p it, I it 0 for t = 1,..., T. For convenience, throughout the remainder of this paper, we wi refer to v(probem) as the vaue of the optima soution to Probem. We wi aso refer to ProbemR as the probem that is obtained if the integraity constraints in Probem are reaxed. It is easy to see that v(sc) is equa to v(p). Therefore, v(scr) is a ower bound on v(p). We wi prove that v(pr) provides a tighter bound on v(p) than v(scr) in Section 3.2. However, we first describe the branch-and-price agorithm that we wi use to sove (SC) Components of the Agorithm We next discuss a branch-and-price agorithm for soving (SC). We sove the reaxation of (SC) through coumn generation (see, for exampe, Gimore and Gomory [11]) at each node of a branch and bound tree. There are many important factors invoved in designing an efficient and effective branch-and-price agorithm (e.g., Barnhart et a. [3]). In this section, we focus on two of the main theoretica factors that arise in the design of a branch-and-price agorithm for our probem: (i) the pricing probem in the agorithm and (ii) the branching rues in the agorithm The Pricing Probem The most vita factor in the success of a branch-and-price agorithm is the abiity to sove (either exacty or heuristicay) the pricing probem that arises as a resut of the coumn generation approach. In this section, we derive the optimization probem that arises as the pricing probem for soving probem (P). Suppose that N is the current set of coumns in the reduced LP reaxation of (SC). We et (SCR(N)) denote the corresponding reaxation and et µ (N) be the optima dua mutipiers associated with constraints (8). The coumns wi be evauated for each faciity i = 1,..., m in order to determine if there is an eigibe nonbasic variabe (or coumn) to enter the basis. In particuar, we must determine if a coumn exists such that the optima soution vaue to the probem min x i {0,1} n T d jt c ij t x ij t t=1 + g i d j1 x ij 1,..., t=1 d jt x ij T µ jt (N)x ij t + f i (10) is negative. We may disregard the constant f i in soving this probem and define r ij t = µ jt (N) d jtc ij t, which can be

6 424 Nava Research Logistics, Vo. 58 (2011) interpreted as the revenue associated with seecting customer j. This means that the pricing probem can be formuated as max x i {0,1} n T t=1 r ij t x ij t g i d j1 x ij 1,..., d jt x ij T, where g i ( n d j1x ij 1,..., n d jtx ij T ) represents the optima cost of serving the demands of the seected customers through production and inventory decisions at faciity i. This formuation of the pricing probem can be interpreted as seecting the set of customers that maximize our profits, i.e., the revenues received from them minus the costs associated with serving the customers. We refer to this probem as the production panning and order seection probem (PPOSP), which we wi study in Section The Branching Rue If the optima soution to (SCR) is not integra, one can add cutting panes to (SCR) or appy branch-and-bound in order to obtain an integra optima soution to sove (SC). A natura choice for a branching rue woud be to branch on the variabes yi, but as mentioned in Savesbergh [21], this branching rue destroys the structure of the pricing probem to be soved at successive nodes of the branch-and-bound tree. In particuar, this branching rue may require us to determine a kth best soution to the pricing probem, where k is equa to the depth of the current node in the branch and bound tree. If the soution to (SCR) is fractiona, there exists at east some with 2 that is fractiona. This impies that at east one underying ocation variabe, y i, and one underying customer assignment variabe, x ij t, in (P) are aso fractiona. This eads to two potentia branching rues: (i) branch on the underying ocation variabe or (ii) branch on the underying customer assignment variabe. The fact that we branch on these underying variabes preserves the structure of our pricing probems at the nodes of the branch and bound tree (see, for exampe, Savesbergh [21]). In most situations, it wi be advantageous to branch on the underying ocation variabe first, since we can often expect that a set of customer assignment variabes wi be fractiona in the soution to (SCR) Tightness of the Set Covering Formuation In this section, we wi focus on comparing the tightness of (SC), i.e., the vaue v(scr), and the tightness of (P), i.e., the vaue v(pr). We wi prove that v(pr) provides a better ower bound on v(p) than v(scr). The main idea behind our proof is to show that: (i) the probem (PR) is equivaent to another probem, which we denote by (P R), and (ii) any soution to (P R) (and hence (PR)) can be converted to a feasibe soution to (SCR) with an objective function that is ess than or equa to the objective function in (P R). We summarize this resut in the foowing theorem. THEOREM 3.1: v(pr) v(scr). PROOF: The fu proof appears in the appendix. Despite this negative resut about the tightness of (SCR) compared with the tightness of (PR), there is sti an inherent advantage to soving (SCR) rather than (PR). This is because (SCR) is inear (athough the pricing probems are noninear) and (PR) is noninear. Therefore, if we can sove the pricing probem for (SCR) effectivey, we generay expect that the branch-and-price agorithm wi perform we. Further, our computationa resuts indicate that (SCR) (and, therefore, (PR)) often provides the optima objective function vaue to (P). 4. THE PRODUCTION PLANNING AND ORDER SELECTION PROBLEM In this section, we consider the pricing probem associated with (SCR). Reca that we determined previousy that the pricing probem associated with (SCR) can be formuated as max x i {0,1} n T t=1 r ij t x ij t g i d j1 x ij 1,..., d jt x ij T, where g i represents the optima cost of serving the demands of the seected customers through production and inventory decisions at faciity i. We can suppress the index i in the decision variabes and incude the production and inventory decisions expicity in our formuation of the pricing probem, i.e., we can formuate it as ( ) maximize r jt x jt (P t (p t ) + h t I t ) subject to I t 1 + p t = t=1 d jt x jt + I t t=1 I 0 = 0 p t, I t 0 for t = 1,..., T x {0, 1} n T. for t = 1,..., T (PPOSP)

7 Sharkey et a.: Integrated Faciity Location and Production Panning Probems 425 The (PPOSP) can be intuitivey described as foows: a suppier is given a set of orders, each with an associated demand eve, revenue, and time period. The suppier wishes to determine a seection of orders that maximizes profit, i.e., the revenues received from seected orders minus the production and inventory costs associated with meeting those orders. The (PPOSP) is cosey reated to the probem considered by Geunes et a. [10]. In their probem, they consider an integrated pricing and ot-sizing mode where the demand to be satisfied in each time period is determined by the price eve. They assume that the revenue function in each time period is piecewise inear and concave and show that the probem can be interpreted as an order seection probem. This means that the probem of Geunes et a. [10] is a specia case of the (PPOSP) where the production cost functions are those of the traditiona economic ot-sizing probem, i.e., a fixed-charge setup cost pus a per-unit production cost. They propose a dynamic programming agorithm for this specia cass of the (PPOSP) that runs in O(nT 2 ) time where n is the argest number of orders in a singe time period (i.e., the number of customers in the probem). The dynamic programming (DP) agorithm we use to sove (PPOSP) is quite simiar to the DP agorithm for the cassic production panning probem (see Denardo [8]). It reies on the fact that we can decompose the optima soution to the (PPOSP) into a sequence of subpans defined by the periods in which we hod zero inventory. A subpan is defined by two time periods t and t such that t<t with the property that we have no inventory entering and eaving the subpan (i.e., I t 1 = I t 1 = 0), and we produce a the seected demand between periods t and t 1 using production in time period t. It is we known that if production and inventory costs are concave in the production panning probem, then an optima soution exists that is composed of a series of subpans (see, for exampe, Wagner [26], Veinott [25], and Love [14]). This hods true for the (PPOSP) as we because if we know the optima seection of customers, the probem reduces to a production panning probem with concave cost functions. For our probem, we define the function p(t, t ) (with t < t ) to be equa to the maximum profit obtained in the subpan (t, t ). The vaue of p(t, t ) is equa to the optima soution vaue of the probem subject to maximize t 1 s=t t 1 r js x js P t t 1 s 1 s=t s =t s=t h s d js x js d js x js x js {0, 1} for j = 1,..., n, for s = t,..., t 1. (SP-P) We can simpify the objective function of this probem by grouping together the revenues and inventory hoding costs of each customer in the probem. In other words, we define R js = r js s 1 s =t h s d js and we can formuate (SP-P) as maximize t 1 s=t t 1 R js x js P t s=t d js x js subject to (SP-P ) x js {0, 1} for j = 1,..., n, for s = t,..., t 1. It has been shown (see Shen et a. [23] and Huang et a. [12]) that a probem of the form (SP-P ) with a concave function P t can be soved by (i) sorting the variabes in nonincreasing order of the ratio R js /d js and (ii) evauating each soution that seects the first customers in this ordering. In the worst case, step (i) requires O(n(t t)og n(t t)) = O(nT og nt ) to sort the variabes/customers and step (ii) requires O(n(t t)) = O(nT ) time. This means that to cacuate p(t, t ) for a t = 1,..., T and t = t + 1,..., T + 1 requires O(nT 3 og nt ) time. By using the vaue of a subpan, p(t, t ) for t = 1,..., T and t = t,..., T + 1, we can provide both a forward and a backward dynamic programming agorithm. We define the function C(t) to be the maximum profit obtained in the probem (PPOSP) by ony considering time periods 1,..., t. We can set C(0) = 0 and define our recurrence reationship as C(t) = max {C(s) + p(s + 1, t + 1)} (11) s=0,...,t 1 for t = 1,..., T. We can aso define the function C (t) to be the maximum profit obtained in the probem (PPOSP) by ony considering time periods t, t +1,..., T. We set C(T +1) = 0 and define the recurrence reationship as C (t) = max {p(t, s) + C(s)}. s=t+1,...,t for t = 1,..., T. In both these cases, the tota time required to sove the (PPOSP) by dynamic programming is O(nT 3 og nt ). 5. COMPUTATIONAL TESTING In this section, we discuss our computationa testing on severa issues surrounding the integrated ocation and production panning probem. We note that a tests were performed on a De Optipex 755 with an Inte Core 2 Duo CPU E GHz processor and 4 gigabytes of memory. A inear programs and integer programs that arise in the testing were soved using the defaut options of CPLEX 11.0.

8 426 Nava Research Logistics, Vo. 58 (2011) Section 5.1 focuses on the performance of our branch-andprice agorithm for the genera probem (P) with concave production cost functions. We compare its performance to the goba optimization software BARON and aso to an agorithm that soves successive inear approximations of (P) using CPLEX 11.0 (see, for exampe, Magnanti et a. [15]). For probems with fixed-charge pus inear production production cost functions, preiminary testing demonstrated that CPLEX 11.0 is extremey effective in soving a formuation of (P) based on the pant-ocation formuation (see Krarup and Bide [13]) of the economic ot-sizing probem. We, therefore, have focused our testing on the suitabiity of our approach and the approaches using commercia software packages for probems with genera concave production cost functions. Section 5.2 focuses on the vaue of integration of the ocation and production panning decisions. Section 5.3 is concerned with examining the impact of errors in the forecasted demand vectors of the customers on the costs and the soutions provided by our mode. There are many characteristics of the branch-and-price agorithm that need to be set in the computationa testing. We have used the dua simpex method in CPLEX 11.0 to sove the reaxation(s) of the set-covering probem in the branch-and-price approach. The initia poo of coumns in the reduced representation of (SCR) incuded, for each faciity, the coumn representing the assignment of a the customers and time periods to that faciity. The coumn generation approach used a mutipe pricing scheme where we soved the pricing probem for each faciity and incuded any coumn that had a negative reduced cost (i.e., we incude up to m coumns, one for each faciity, at each iteration of the coumn generation approach). After the coumn generation approach soved (SCR), if the current optima soution was non-integra, we then soved an integer programming probem over the set of coumns currenty in the reduced formuation to determine if there was an aternative integra optima soution to (SCR). In the computationa testing, we examine three intervas of faciity opening costs: (i) f i is set equa to zero, i.e., (P) becomes a generaization of the uncapacitated mutiperiod singe-sourcing probem (see Romeijn and Romero Moraes [16] for the definition of this probem) with noninear (concave) production cost functions, (ii) f i is uniformy generated on the interva [100, 250], and (iii) f i is uniformy generated on the interva [200, 500]. We have chosen to use square root functions to mode economies of scae in production, a typica choice for concave production cost functions. In particuar, the production cost function at faciity i in time period t is defined by P it (p it ) = A it pit, where the term A it is uniformy generated on the interva [5, 15]. The hoding costs, h it, were uniformy generated on the interva [1, 4]. The demands of the customers, d jt, were generated on the interva [5, 15]. In order to determine the connection costs, we generated the ocation of each faciity and customer uniformy on the box [0, 10] 2. The connection costs per unit of demand, c ij t, were then set equa to the Eucidian distance from the ocation of faciity i to customer j Performance of the Branch-and-Price Agorithm on the Genera Probem We first anayze the performance of the branch-and-price agorithm on randomy generated instances of (P) by comparing the performance of the branch-and-price agorithm with the commercia goba optimization software BARON. To sove (P), it is necessary to use the mixed-integer noninear programming option of BARON. We note that BARON was caed using its GAMS interface. We next compare the performance of the branch-and-price agorithm with the soution of (P) through a series of inear approximations. This type of approach was shown to be successfu for other suppy chain panning probems with noninear economies of scae in Magnanti et a. [15]. At each iteration of this approach (which we wi refer to as the successive inear approximation (SLA) approach), we approximate each of the concave production cost functions, P it, by a piecewise inear concave function with δ it breakpoints (we ca this function Pˆ it ). At each of these δ it breakpoints, the vaue of the piecewise inear function is equa to the vaue of the production cost function. This means that the piecewise inear concave function is a ower approximation of P it, and an increased number of breakpoints resuts in a better approximation. We then repace the production cost function P it with the approximation Pˆ it in (P). Further, we can represent the piecewise inear concave function by introducing a set of continuous and binary variabes. In particuar, we formuated each of the piecewise inear functions, Pˆ it, using the so-caed mutipe choice mode (see, for exampe, Baakrishnan and Graves [2] or Croxton et a. [5]) for converting piecewise inear functions into equivaent mixed-integer inear programming formuations. We have incuded the detais of this conversion in the Appendix. We then sove the resuting mixed-integer inear programming formuation using the integer programming sover within CPLEX After determining the optima soution to this probem, we then either update the coection of breakpoints for one or severa of the production cost functions or determine that the soution is aso optima to (P). In particuar, if the optima soution to the approximation has a production eve of ˆp it, we incude the vaue of ˆp it as a breakpoint in the approximation of P it if it has not aready been incuded. If a production eves are aready breakpoints in the approximations of their respective production cost functions, then the soution is optima to (P). We present the resuts for probems with a modest number of customers (n = 10 and n = 15) first and then examine probems with a arger number of customers. We examine

9 Sharkey et a.: Integrated Faciity Location and Production Panning Probems 427 Tabe 1. BARON. Computationa resuts for n = 10 and m = 5 for the branch-and-price agorithm, the SLA approach, and the software package B&P agorithm SLA BARON f i T Time (s) S.D. Wins Time (s) S.D. Wins % Error Time (s) S.D. Wins % Error U[100, 250] U[200, 500] U[100, 250] U[200, 500] probems with T = 5 and T = 10 time periods and consider each cass of the faciity opening costs. We observed that for a instances considered, the branch-and-price agorithm soves (SC) at the root node of the branch and bound tree. This phenomenon has been observed before in soving uncapacitated customer assignment modes with concave cost functions (see, for exampe, Shen et a. [23] and Huang et a. [12]) Ten Customer Probems In Tabes 1 and 2, we report the average time (over 10 randomy generated instances) required to sove (P) with n = 10 customers by our agorithm, the SLA approach, and BARON for m = 5 and m = 10 faciities, respectivey. We imposed a time imit of 3600 seconds (1 hour) in our testing. In the coumn that reports the time required to sove (P), the superscript indicates the number of instances in which the SLA approach or BARON did not obtain the optima soution (or verify the optimaity) to (P) within an hour. In cacuating the average time for casses of probems in which the SLA approach or BARON did not sove an instance within an hour, we incuded these instances and set their time to 3600 s. This means that the entries are actuay ower bounds on the average time required by BARON or the SLA approach. The percentage error coumn reports the average error of the best soutions obtained within the time imit by the SLA approach or BARON on instances that were not soved. Further, we have presented the standard deviations associated with the running times of each of the three methods and the number of wins (out of the 10 instances) for each method. In other words, the number of wins for a method represents the number of instances in which the method found an optima soution in the shortest amount of time. The resuts ceary indicate that both our branch-and-price agorithm and the SLA approach outperform BARON for these tests. For m = 5, the branch-and-price agorithm has a better average running time than the SLA approach for a casses and is more robust in the sense that it has a smaer standard deviation (as a percentage of the average running time) for a casses. For m = 10, the branch-and-price agorithm outperforms the SLA approach: it has a much better average running time for a casses and outperforms the SLA approach on amost a instances. It is aso interesting to note that the SLA approach performs notaby worse for m = 10. This can be partiay attributed to the fact that the ratio of the number of customers to the number of faciities pays an important roe in the quaity of the inear reaxations of standard customer assignment modes. In particuar, as the ratio increases the quaity of the reaxations become extremey good and, therefore, the commercia software packages benefit from these improved bounds (see, e.g., Savesbergh [21]). These resuts indicate that this reationship seems to appy to our cass of probems as we. Tabe 2. Computationa resuts for n = 10 and m = 10 for the branch-and-price agorithm, the SLA approach, and the software package BARON. B&P agorithm SLA BARON f i T Time (s) S.D. Wins Time (s) S.D. Wins % Error Time (s) S.D. Wins % Error U[100, 250] U[200, 500] U[100, 250] U[200, 500]

10 428 Nava Research Logistics, Vo. 58 (2011) Tabe 3. BARON. Computationa resuts for n = 15 and m = 5 for the branch-and-price agorithm, the SLA approach, and the software package B&P agorithm SLA BARON f i T Time (s) S.D. Wins Time (s) S.D. Wins % Error Time (s) S.D. Wins % Error U[100, 250] U[200, 500] U[100, 250] U[200, 500] Fifteen Customer Probems Tabes 3 and 4 report the resuts of our computationa testing for n = 15 customers with m = 5 and m = 10 faciities. Once again, both the branch-and-price agorithm and the SLA approach outperform BARON for these test probems. For m = 5, athough the SLA approach does outperform the branch-and-price agorithm for a number of instances, the resuts indicate that the branch-and-price agorithm has a better average running time and is more robust than the SLA approach. For m = 10, the branch-and-price agorithm significanty outperforms the SLA approach in both average running time and the number of instances in which it has the fastest running time. The resuts indicate the branch-andprice agorithm actuay soves probems with m = 10 more effectivey than probems with m = 5. We beieve that this can be attributed to the fact that there is more opportunity for faciities with ow operationa costs to be ocated near customers and, therefore, the customer assignment decisions become cearer Larger Scae Probems We next present the resuts of appying the branch-andprice agorithm and the SLA approach to probems of increased size. We wi focus on testing the boundaries of each of these approaches, meaning that we set a high time imit to see if these approaches can provide an optima soution (or a soution of high-quaity) within this imit. The main reason that we do not examine the goba optimization software package BARON is that we have aready reached the imits of this package for probems with n = 10 and n = 15. We note that since (P) is a strategic probem used in suppy chain panning, it is not unreasonabe to run either of these approaches for a few hours in order to determine an optima soution. Therefore, we set the time imit for these tests to 8 hours (480 minutes). For these resuts, we present the number of minutes required to sove the probem, as opposed to the number of seconds presented in Sections and Tabe 5 presents the computationa resuts for an instance of each probem from casses with n = 20 and T = 10. Tabe 6 reports the computationa resuts for instances with n = 30 and T = 10. The SLA approach either faied to find the optima soution to (P) or CPLEX 11.0 ran out of memory whie soving one of the inear approximations of the probem for every instance considered with n = 20 and n = 30. We note that the instances where the SLA approach ran out of memory are denoted by a and we report the current best known bounds at the time of termination of the approach. Further, in cacuating the error for the branch-andprice agorithm for the instances it did not sove to optimaity, we compared it with the best known ower bound given by the SLA approach. The branch-and-price agorithm outperforms (in computationa time and soution quaity) the SLA Tabe 4. Computationa resuts for n = 15 and m = 10 for the branch-and-price agorithm, the SLA approach, and the software package BARON. B&P agorithm SLA BARON f i T Time (s) S.D. Wins Time (s) S.D. Wins % Error Time (s) S.D. Wins % Error U[100, 250] U[200, 500] U[100, 250] U[200, 500]

11 Sharkey et a.: Integrated Faciity Location and Production Panning Probems 429 Tabe 5. Computationa resuts for n = 20 and T = 10 for the branch-and-price agorithm and the SLA approach. B&P agorithm SLA f i m Time (min) % Error Time (min) % Error U[100, 250] U[200, 500] U[100, 250] U[200, 500] approach for a the instances considered. We again see that the branch-and-price agorithm performs better on instances with a ower customer-to-faciity ratio: it soves a probems within the time imit for n = 30 and m = 15, but ony one instance within the time imit for n = 30 and m = 10, and no instances for n = 30 and m = 5. Based on these observations, we have tested our agorithm on instances with n = 40, m = 20, and T = 10 in Tabe 7. The resuts in Tabes 5 7 indicate that our agorithm is especiay suitabe for arge-scae probems with a ow customer-to-faciity ratio that focus simpy on the assignment decisions since it soves the instances of the probem with (f i = 0, n = 20, m = 10), (f i = 0, n = 30, m = 15), and (f i = 0, n = 40, m = 20) in under an hour The Vaue of Integration In this section, we characterize the vaue of integrating the faciity ocation and production panning decisions for each of the probem casses considered in Section 5.1. In other words, we determine the percentage of additiona costs incurred by undertaking the ocation and assignment decisions separatey from the production panning decisions, i.e., we consider them sequentiay. This means that we determine the ocation and assignment decisions based on soving a Tabe 6. Computationa resuts for n = 30 and T = 10 for the branch-and-price agorithm and the SLA approach. B&P agorithm SLA f i m Time (min) % Error Time (min) % Error U[100, 250] U[200, 500] U[100, 250] U[200, 500] U[100, 250] U[200, 500] Tabe 7. Computationa resuts for n = 40 and T = 10 for the branch-and-price agorithm and the SLA approach. B&P agorithm SLA f i m Time (min) % Error Time (min) % Error U[100, 250] U[200, 500] faciity ocation probem with m faciities and nt customers and then determine the production and inventory eves at each faciity by soving a production panning probem based on the optima assignments from the faciity ocation probem. If we et v denote the tota cost (ocation, assignment, and production panning costs) incurred in an optima soution for (P) and et v(s.a.) denote the tota cost obtained by the sequentia approach to the probem, then the vaue of the integration is defined as v(s.a.) v Vaue of Integration = 100. v To normaize the costs of a particuar instance of (P), we have removed the base connection costs from the probem (which does not change the optima soution to (P) or the faciity ocation probem). In particuar, for each customer and time period, we determined the minimum cost associated with transporting the demand of the customer/time period over a faciities and subtracted this minimum cost from the mode. Note that there is fexibiity in determining the assignment costs of customer j in time period t to faciity i in the traditiona faciity ocation probem during the sequentia panning process. We set this assignment cost equa to âp it + c ij t where âp it is an approximation of the production/inventory costs of a unit of demand assigned to faciity i in time period t and c ij t is the connection cost per unit demand of customer j to faciity i in time period t. We examine three different casses of âp it : (i) the FL cass: âp it = 0 meaning that the faciity ocation probem disregards the production/inventory costs, (ii) the 20% cass: âp it = P it (0.2d t )/0.2d t, where d t is the cumuative demand of the customers in time period t, which represents the average cost per unit demand of producing 20% of d t in period t at faciity i, and (iii) the 40% cass: âp it = P it (0.4d t )/0.4d t which represents the average cost per unit demand of producing 40% of d t in period t at faciity i. Note that (ii) and (iii) essentiay assume that we produce a demand assigned to faciity i in time period t with production in time period t. Note that (ii) woud be better suited than (iii) for probems where we expect to have a arger number of faciities operationa. Tabe 8 reports the average vaue of integration for each of the different casses of approximation production costs