OPTIMAL ORDER AND DISTRIBUTION STRATEGIES IN PRODUCTION NETWORKS Simone Göttlich, Michael Herty, and Christian Ringhofer Abstract Production networks are usually defined as a set of processes utilized to efficiently integrate suppliers, manufacturers, and customers so that goods are produced and distributed in the right quantities, to the right locations, and at the right time, in order to reduce costs while satisfying delivery conditions. More precisely, in our setting, we focus on a network of suppliers which order goods from each other, process a product according to orders, and receive payments according to a pricing strategy. Modeling manufacturing systems is characterized by many different scales and several different mathematical approaches. Here, we follow a dynamic approach: we are interested in the time behavior of the entire system. Therefore we introduce a coupled system of ordinary differential delay equations where time-dependent distribution and order strategies of individual manufacturers affect the flow of goods and hence the total revenue. It is even possible that manufacturers face bankruptcy. All order and distribution strategies are degrees of freedom which can vary in time. They need to be fixed by solving an optimization problem where additionally economic factors such as production and inventory costs, liquidity and credit limits influence the maximization of profit. Instead of using a simulation-based optimization procedure, we derive an efficient way to transform the original model into a mixedinteger programming problem and benefit from established commercial solvers. Simone Göttlich TU Kaiserslautern, e-mail: [email protected] Michael Herty RWTH Aachen University e-mail: [email protected] Christian Ringhofer Arizona State University e-mail: [email protected] 1 2 Simone Göttlich, Michael Herty, and Christian Ringhofer 1 Introduction A supply chain consists of suppliers, manufacturers, warehouses and stores where parts are produced and distributed among different production facilities. Mathematical models are used to monitor cost efficient distribution of parts and to measure current business processes. Naturally, depending on the scale, these models are characterized by several approaches which are either discrete (Discrete Event Simulations) or continuous (differential equations). The main difference between these two mathematical concepts is the description of parts as individuals at discrete time instances or as a dynamic flow. Simulations in general represent a powerful computing technique to analyze manufacturing systems while performing numerical experiments of the models. In case of discrete event simulations the evolution of the system is viewed as a sequence of significant changes in time, also called events, for each part separately. For instance, consider a supply chain consisting of numerous consecutive facilities where parts arrive, get processed and depart when their service is completed. Informally, this means that the transportation of parts from one production step to another characterizes dynamic events that can be easily evaluated using performance measures like the number of parts in the system, the individual waiting times and so forth. Definitely, discrete event simulations [10, 14, 12] serve as the finest level of description of interacting part-based systems but with the drawback of exponentially increasing computing times for large-scale systems which is in particular a drawback concerning optimization issues. An alternative modeling approach which remedies the computational aspect are differential equations. In contrast to the discrete event simulation, averaged quantities in case of large quantity production predict the time evolution of parts and include the dynamics inside the different production steps. To derive accurate continuous models the overall modeling goal is to transfer as much of the detailed and complex discrete model to the continuous level. This will be achieved regarding dynamic flows, i.e. parts per time unit, instead of individual parts. Since numerical schemes for differential equations allow for fast simulation times, supply chain problems with multiple manufacturers and thousands of parts are solved very costeffective. It furthermore allows to apply efficient optimization methods. In recent years these continuous models have been intensively investigated. Continuous models like [21, 2, 4, 33, 22] use partial differential equations to model production flow in an aggregate way, leading to deterministic coarse grained and fast models. The fundamental setup is as in [5]. A high volume multi stage production line is considered. Of fundamental interest is the time evolution of the lot-density ρ (x,t) describing WIP at time t at a position x. Here, the position x ∈ [0, 1] does not represent physical positions in the factory but the stages or degree of completion in a production process. The factory has a prescribed inflow λ (t) at x = 0 and an outflow x = 1 generated by the production process through the factory. Since mass or WIP is conserved, the system has to satisfy a conservation law of the form PRODUCTION NETWORKS 3 ∂ρ ∂F + = 0. ∂t ∂x (1) All the important details of the modeling approach are hidden in the exact model for the flux F. Typical models are the adiabatic model F = veq (ρ )ρ with a suitable equilibrium velocity veq (ρ ) [5] and the Chapman Enscog model F = veq (ρ )ρ + ∂∂Dxρ [2]. Alternatively, Eq (1) is the first in an infinite hierarchy of conservation laws [4]. Recently those models based on scalar conservation laws have been reformulated in the framework of network models where the dynamics on the arcs is governed by a partial differential equation (PDE); see [29, 30, 24, 31]. This approach is inspired by other recent discussions on other problems on networks; see, e.g., [8, 20, 32, 24, 35, 37, 34, 9]. Here, we consider the following problem modelled by continuous equations for a supply chain network. A network of suppliers, each processing a product at various stages. Each supplier receives orders for its output from the other suppliers in the network, as well as from a final customer. Each supplier orders its input from a select set of other suppliers in the network as well as from a raw material supplier. Each supplier receives payments for delivered items at a certain fixed set of prices and has to pay production costs at certain rates for each item produced. This setup is similar to the ones studied in [7], [11] and [18], where it is shown that the resulting dynamics can exhibit a quite complicated behavior. One of the key features of the model considered in this paper is the presence of limited production capacities. We assume that each supplier has a certain limited capacity µ , i.e. it cannot process more than µ∆ t items in the infinitesimal time interval ∆ t. We use a generalization of the model employed in [1] to incorporate this additional limitation. The modeling of the payments allows for the definition of capital flows through the network and, consequently, for the occurrence of bankruptcies if the capitalization of a node in the network falls below a certain threshold. We consider the optimization of profits, i.e., given a set of production costs, to choose ordering strategies to maximize the income of each node. The optimization of routing strategies for networks of almost arbitrary complexity has been investigated in [31] using an adjoint calculus approach and a discretization based on mixed–integer variables. Both, the model and the discreitzation, will be discussed in the following sections. Finally, we present some numerical results on sample problems taken from the literature. 2 The mathematical models In this section we review commonly used macroscopic models for supply chains. These models are in particularly useful, if the number of parts is large and the number of machines is large, too. This assumption allows to pass from a discrete event model description to a continuous description of flow properties [2, 3, 6, 43, 44]. This limit can be proven rigorously in various situations [1, 3, 5, 6, 25]. Further- 4 Simone Göttlich, Michael Herty, and Christian Ringhofer more, in case of a continuous description of the arising flow patterns gradient–based optimization procedures [38, 42] can be applied. Therefore, also from control point of view the continuous description allows to make use of the underlying structure of the problem in an iterative optimization scheme. This has been employed for example in [38] for a general supply chain model and in [42] for a highly re–entrant supply chain model. We refer to the references for more details on the derived calculus. In the following we derive and discuss a class of models used to describe 2.1 The supply chain model The basic setup requires two inventories for each supplier, namely 1. An input inventory, allowing for the storage of items the supplier has ordered at a rate faster than it can process. (This might be a reasonable strategy if the supplier expects shortages in the future.) 2. An output inventory, allowing for the storage of items which have been produced at a rate faster than ordered. (This might be a reasonable strategy if the supplier anticipates a future demand larger than its capacity.) Additionally, we might have a delay for the transport from input to output inventory. This delay is caused by a processing time of the supplier. This time might, for example, be given by a processing velocity v and the length of the supplier [29, 38]. A spatial variable x corresponds to the stage of completion of the part. It is assumed to be completed as soon as x = 1 and this may take the constant time T. 3. A part enters the supply chain at stage x = 0 and leaves at stage x = 1 after a given, fixed processing time T = 1v ; the throughput time of the processor. In the case of a model including property three, the dynamics inside the supplier requires a detailed modeling. Clearly, no parts are lost due to the transition from input to output inventory. Therefore, inside the supply chain the dynamics of the number of parts per unit length ρ (x,t) is given by the conservation law ∂t ρ (x,t) + v∂x ρ (x,t) = 0. (2) The mass flux is given by f = vρ and the previous equation can be solved explicitly: ρ (1,t) = ρ (0,t − T ). Hence, the hyperbolic partial differential equation (2) is nothing else but a time delay in the throughput. Therefore, a model fulfilling properties (1) and (2) can be extended to a model including processing times at the expense of a single additional equation. In order to derive a deterministic input and output inventory model it has to be prescribed at which rate parts are released. We therefore might define a simple deterministic model for inventories as follows. The inventory has an influx ψ and an PRODUCTION NETWORKS 5 output µ . Thus the inventory position p would satisfy the simple differential equation p′ (t) = ψ − µ . This constitutes the balance of mass. However, the inventory position cannot become negative. Thus, in addition to the simple ODE, we also have to satisfy the constraint p(t) ≥ 0. Therefore, we have in fact an obstacle problem. We use a relaxation model for the obstacle problem, replacing the differential equation by p(t) dp = max{ψ (t) − µ , − }, dt ε (3) where ε denotes a small relaxation parameter. Equation (3) has the following features: • As long as the inventory is growing (ψ − µ > 0) the inventory in the model (3) grows according to ddtp = ψ − µ . • If the inventory position is decreasing (ψ − µ < 0), the inventory in (3) decays until p = ε (µ − ψ ) holds, i.e. until the inventory is almost empty. From this point on equation (7) becomes ddtp = − εp , and the inventory position decays exponentially to zero on an O( ε1 ) time scale, until the net flux ψ − µ becomes positive again, and we switch to the previous regime. Thus, the inventory position p(t) in (3) will remain always positive, and represent an O(ε ) approximation of the (deterministic) evolution of an actual inventory. Equation (3) represents an approximate relaxation model where the actual depletion of the inventory in finite time is replaced by an exponential decay to zero. As discussed above the model can be easily extended to inventories with processing times. This amounts in replacing equation (3) by dp p(t) = max{ψ (t − T ) − µ , − }, dt ε or equivalently by p(t) 1 1 dp 1 } ∂t ρ + ∂x ρ = 0, ρ (0,t) = ψ (t). = max{ ρ (1,t) − µ , − dt T ε T T In order to describe a realistic supply chain, we need to consider connected input and output inventories. This can be done as follows. We now consider a network of processors. So, we have J processors connected by K nodes. We need two inventories to describe the evolution of a single node, namely an input and an output inventory. The input inventory pk of node number k = 1 : K receives an influx ψk , and has an outflux, given by the processing rate µk . Thus we have in a model respecting (1) and (2) 6 Simone Göttlich, Michael Herty, and Christian Ringhofer d pk pk = max{ψk − µk , − } = ψk − φk , dt ε φk = min{µk , pk + ψk } . ε (4) The term φk denotes the flux from the inventory into the processor. Obviously φk ≤ µk holds, since the processor cannot accept items at a rate larger than µk . Assuming the processing time Tk := τk , the influx into the output inventory is given by φk (t − τk ), i.e. the time delayed outflux of the input inventory. The evolution of the output inventory position qk is then given in the same way by qk dqk = max{φk (t − τk ) − ωk , − } = φk (t − τk ) − fk , dt ε (5) qk + φk (t − τk )} , ε with ωk the rate of orders received by processor k, and fk the total outflux of node number k. Again, fk cannot exceed ωk , and node number k cannot deliver at a faster rate than orders are received. The inventory model used here essentially corresponds to replacing the inventory by a processor with a very short cycle time ε , and then using a version of the model for a production unit developed in [1] and [30, 29]. Similar simple inventory models have been used in [1] and [4] in a different context. Given the evolution of the input and output inventories, defined previously, we have to define the interaction of the different nodes in the supply chain network. This means, we have to define the influx ψk of node number k in (4) in terms of the outfluxes fk of the other nodes, given by (5), and we have to decide on a rule for the order rates ωk in (5). One of the key mechanisms, governing the dynamics of the system is obviously the policy of placing orders. In general, we will denote with Ω jk the rate at which node number j places orders to node number k, and the total rate of orders received by node number k in (5) is given by ωk = ∑ j Ω jk . Concerning the rules governing the node policies we also refer to recent literature on the theory of traffic flow and internet traffic. Therein, similar problems appears and a suitable definition of the distribution of parts or vehicles among in- and output inventories has to be modeled. Obviously, a wide variety of choices exist. We refer to [13, 15, 16, 17, 19, 23, 27, 28, 37] for more details. Here, we consider a simple distribution policy. The need for this policy arises in the case that not all orders can be filled. We define by Fjk the flux from node k into node j. Consequently, fk = ∑ j Fjk is the total outflux of node number k. Because of (5) we already have that fk ≤ ωk holds. The need for a distribution policy arises when fk is actually strictly less than ωk , i.e. node number k cannot satisfy all its orders and has to make a decision how to distribute its limited resources. We write the flux from node number k to node number j as Fjk = A jk fk , where the matrix A = {A jk } is a Markov matrix, i.e. a matrix with non - negative entries whose column sums equal unity. For an admissible distribution policy, the matrix A should satisfy the following two criteria: fk = min{ωk , • Fjk = A jk fk ≤ Ω jk , i.e. node k cannot deliver more to node j than node j is ordering from node k. PRODUCTION NETWORKS 7 • If fk = ωk holds in (5), then Fjk = Ω jk should hold, i.e. if node number k can satisfy all its orders, then it will do so. This assumption is also found in the traffic and internet traffic flow literature, see e.g. [19, 37, 39]. It is also well–known that, in addition, we have to define an external supplier of raw materials and a final customer. For simplicity, we assume a single raw material supplier, defined as node number k = 0, and a single customer, defined as node number k = K + 1. So Ω j0 denote the rates at which raw materials are ordered, ΩK+1,k denote the rates at which the final customer orders, and FK+1,k are the rates at which product is delivered to the customer. There are many different ways to define a distribution policy, i.e. a matrix A, satisfying the two criteria above. Here, we will restrict ourselves to the simplest one, namely a proportional policy, setting A jk = Ω jk , j = 1 : K + 1, k = 1 : K, ωk ωk = K+1 ∑ Ω jk , k = 1 : K . (6) j=1 The distribution policy (6) satisfies the admissibility criteria since, by definition, Ω f Fjk = ωjk k holds. Thus the inequality is always satisfied because of fk ≤ ωk , and k equality holds in the case fk = ωk . The distribution policy (6) means that, if not all orders can be satisfied, node number k distributes the product proportionally according to the orders received. In summary, the dynamics of the flow of the network is given by equations (4) and (5) for all processor nodes k = 1 : K, where the influx functions ψk in (4) are determined by the outflux rates fk in (5) through the connectivity matrix A = {A jk }. So ψj = K ∑ A jk fk + Ω j0, j=1:K (7) k=1 holds. Ω j0 denote the external inputs into the system, from the raw material supplier which, assuming an unlimited supply, equal the orders placed to the raw material supplier. After choosing an order matrix Z = {Ω jk , j = 1 : K + 1, k = 0 : K} the dynamics of the system are therefore completely defined. However, the system (4)(7) represents an open system, i.e. mass is not conserved, due to the external influx and outflux at the supplier and the customer node. For analytical purposes, it will be convenient to replace the open system by a closed system by introducing an artificial ’recycling step’. That is we artificially identify the raw material supplier with the customer, and feed the delivered product back into the system as raw material. So, Ω j0 still denote the order rates from the raw material supplier and Ω0k = ΩK+1,k denote now the rates at which the customer orders. With this change in notation, (6) and (7) become (a) A jk = Ω jk , j = 0 : K, k = 0 : K, ωk ωk = K ∑ Ω jk , k = 0 : K , j=0 (8) 8 Simone Göttlich, Michael Herty, and Christian Ringhofer (b) ψ j = K ∑ A jk fk , j=0:K . k=0 ψ0 , the influx into the raw material supplier / customer is now the rate at which final product is delivered. The advantage of this notational trick is, that it allows for a uniform treatment of all the nodes and yields a mass conserving system. In order not to change the dynamics of the system we have to design node number k = 0 in such a way, that there is a limitless supply. This is easily done by giving the raw material supplier / customer formally an infinite production capacity and a zero processing time, and by making its output inventory large enough at the beginning such, that it never runs dry, i.e. we set formally µ0 = ∞, τ0 = 0 in (4) and make q0 (0) sufficiently large. This has the effect that all the product delivered to the final customer immediately goes to the output inventory, and the system is fed from this (sufficiently large) output inventory q0 , i.e. we have φ0 = ψ0 , f0 = ω0 in (4). Alternatively, we could simply change the definition of the fluxes in (4) and (5) for the node k = 0 to φ0 = ψ0 , f 0 = ω0 , allowing the output inventory q0 to become negative. The system is now closed and the total product is conserved, since the columns of the square matrix A = {A jk , j, k = 0 : K} all add up to unity. If we define the contents of the processor k number k at time t by rk (t) its evolution is given according to (4)-(5) by dr dt = φk (t) − φk (t − τk ), and the evolution of the total mass in the system is given by d dt K K k=0 k=0 ∑ (pk + qk + rk ) = ∑ ψk − fk = 0 . We note that this modification of the system is done only for technical convenience, and that, if the initial supply inventory q0 (0) is chosen large enough, the dynamics of the network remain unchanged. Concerning a detailed analysis of the system we refer to [31]. An existence result for the model including the processing time is given in [36]. These results ensure well–posedness of the model in case of L1 –initial data. In the inventory model given a set of capacities, production costs and a certain topography, we can derive the following conclusions [31]: A steady state of the system is characterized, via Kirchhoff’s law, by the fact that the influx into each node equals the outflux. More precisely, for pk , rk , qk in (4)-(5) to be time independent, the condition ψk = φk = fk has to hold for time independent functions φk . The condition ψk = fk implies, that the fluxes fk are eigenvectors of the connectivity matrix A, satisfying Af = f . Because we have formulated the system as a closed system, the connectivity matrix A is a Markov matrix, i.e. a matrix with nonnegative entries whose column sums equal unity. In the following, we employ some standard properties of Markov matrices. We start with the following PRODUCTION NETWORKS 9 Lemma 1. The matrix A = {A jk , j, k = 0 : K} is primitive, that is, there exists an index n such that all the values of An are strictly positive. Lemma 1 essentially excludes only trivial cases. It basically states that a part starting out in node number k at time t = 0 has a nonzero probability to appear in all the other nodes after a sufficiently long time, i.e. after iterating the matrix A sufficiently often. Given the recycling trick employed, this will be the case, since the part will eventually end up at the final customer and re - enter the system as raw material. The only possibility that Assumption 1 is violated arises for the (pathological) case of closed loops, i.e. the existence of a self contained sub - graph which is not connected to the rest of the network and the raw material supplier. As a consequence, we have Lemma 2. The matrix A, defined in (8) has an eigenvalue λmax equal to unity. All other eigenvalues are strictly less than 1. The eigenspace to the eigenvalue λmax = 1 is one dimensional. The unique normalized eigenvector z to the eigenvalue λmax = 1 has only nonnegative elements. Lemma 3. Given a primitive distribution matrix A and, correspondingly, a unique normalized eigenvector z with Az = z, all possible steady states of the system are given by choosing a constant γ ≤ min{ µz k , k = 0 : K} and a vector α = (α0 , .., αK ) k with 0 < αk ≤ 1, k = 0 : K, and setting fk = γ zk , ωk = γ zk , αk Ω jk = A jk ωk . All orders are satisfied in steady state if α = (1, .., 1) is chosen, and the system runs at its optimal capacity if γ = min{ µz k , k = 0 : K} holds. k Lemma 3 describes how to choose the optimal orders received, the quantities ωk given a distribution policy matrix A. In this sub-optimal solution, the nodes with index k, for which fk = γ zk < µk holds, will run below capacity. To construct an optimal solution, where all nodes run at their capacity, would involve the construction of a matrix A such that the eigenvector z is parallel to the capacity vector µ . In this case, setting α = (1, .., 1), we would obtain fk = µk = ωk , k = 0 : K. So, all nodes would run at their capacity and all orders would be satisfied. Given, that the network will in general not allow a supplier to order from any other supplier, because not all suppliers are equal, and there is some hierarchical structure in the production process, finding the optimal matrix A will be impossible in general. 10 Simone Göttlich, Michael Herty, and Christian Ringhofer 3 A mixed integer programming approach An important question in the context of production networks are optimal order and distribution strategies. Depending on the model, many aspects will be of interest: inventory and production costs, distribution of goods and supply and demand. Here, we introduce a special cost functional and choose the distribution matrix A and the order matrix Z dynamically to optimize the functional. The solution to this problem can of course only be given numerically. We start, by discretizing the dynamical system defined in Section 2. On the discrete time level, the dynamics will actually appear as a large set of nonlinear constraints for a given cost functional. There are essentially two ways to treat the the resulting constrained optimization problem: Either the constraints are formulated on a continuous level using an adjoint calculus to compute a restricted gradient direction as in [38, 41], or a nonlinear programming approach is used, introducing additional binary variables. The latter leads to a mixed integer program MIP [26]. 3.1 Numerical discretization We start with a proper discretization of the differential equations (4) and (5) for the inventories pk and qk . We discretize on a uniform mesh in time setting pnk = pk (n∆ t), n = 0 : N with T = N ∆ t the final time of the simulation. As is almost always the case in relaxation models, we have introduced an artificial O( ε1 ) time scale in the system, and thus artificially created a stiff system. In order not to impose too severe a restriction on the time step ∆ t we discretize equation (4) implicitly, giving pnk n−1 ∆ t max{ ψ µ }, n = 1 : N , (9) − pnk = pn−1 + , − k k k ε with ψkn−1 the influx at the previous time step. Equation (9) can be inverted explicitly for pnk , by using the following Lemma 4. The function u(x) = min{ax + b, cx + d} is invertible for a > 0, c > 0. y−d This inverse is given by u−1 (y) = max{ y−b a , c }. Reordering equation (9), we have min{pnk − ∆ t(ψkn−1 − µk ), (1 + ∆t n )p } = pn−1 k ε k and therefore, setting a = 1, b = −∆ t(ψkn−1 − µk ), c = 1 + ∆εt , d = 0 in Lemma 4, we obtain n−1 − µk ), pnk = max{pn−1 k + ∆ t(ψk pn−1 k 1+ ∆t ε n−1 − µk , − } = pn−1 k + ∆ t max{ψk 1 pn−1 } ε + ∆t k PRODUCTION NETWORKS which we write as 11 pnk = pn−1 + ∆ t(ψkn−1 − φkn−1 ) k with 1 pn−1 } (10) ε + ∆t k Therefore the implicit discretization of equation (4) can be written in explicit form as + ∆ t(ψkn−1 − φkn−1 ) pnk = pn−1 k φkn−1 = min{µk , ψkn−1 + with the numerical outflux φkn−1 given by (10). Note, that this eliminates any restriction on the time step, since the flux function φkn−1 , as defined in (10), is well defined in the limit ε → 0. We employ the same implicit discretization strategy for the evolution of the output inventory qk in (5). To avoid any additional interpolation procedure, we assume that all the processing times τk , k = 0 : K are integer multiples of the time step ∆ t. So ∆τkt ∈ N holds. Thus, we obtain, setting n−τk /∆ t ψkn → φk µk → ωkn−1 , , n−τk /∆ t (a) qnk = qn−1 + ∆ t(φk k − fkn−1 ), (11) 1 qn−1 } ε + ∆t k Any optimization problem, involving the discretization of the dynamical system, as formulated above, will still be nonlinear, because of the nonlinear (or, more precisely, piecewise linear) definition of the flux functions in (10) and (11). The goal of this section is to formulate an optimization problem for the dynamics defined in Section 2 in a framework close to a linear programming problem, i.e. as a mixed integer programming problem. A mixed integer program is a linear program which includes binary switches, i.e. variables taking only values in {0, 1}. The advantage of linear and mixed integer programming approaches is, that they are capable of dealing with an enormous amount of free variables. The basic tool to convert an optimization problem involving the piecewise linear flux functions (10) - (11) into a MIP is given by the following Lemma (see [26]): n−τk /∆ t (b) fkn−1 = min{ωkn−1, φk + Lemma 5. Let ξ ∈ {0, 1} be a binary variable. Let M > |a − b| be a sufficiently large constant. Then, for a given constant M, the solution of the inequalities a − M ξ ≤ φ ≤ a, is given by b − M(1 − ξ ) ≤ φ ≤ b (12) φ = min{a, b} . Using Lemma 5, we replace the definition (10)-(11) of the fluxes φkn , fkn by the constraints 12 Simone Göttlich, Michael Herty, and Christian Ringhofer (a) µk − M ξkn ≤ φkn ≤ µk , (b) ψkn + pnk ε + ∆t − M(1 − ξkn) ≤ φkn ≤ ψkn + (13) pnk ε + ∆t (c) ωkn − M ηkn ≤ fkn ≤ ωkn , n−τk /∆ t (d) φk + qnk qnk n−τ /∆ t − M(1 − ηkn) ≤ fkn ≤ φk k + ε + ∆t ε + ∆t with the binary variables ξkn , ηkn ∈ {0, 1}, k = 0 : K, n = 0 : N, and a constant M, chosen a priori sufficiently large. The MIP approach allows us to optimize the order strategies, given by the matrix Z, as well as the distribution strategies, given by the matrix A dynamically at the same time. In order to encode the topology of the network, we define the elements of the order matrix Z as Ω njk = θ jk Ω̃ njk , where the matrix Θ = {θ jk , j, k = 0 : K} denotes the adjacency matrix of the graph defining the network topology, i.e. θ jk = 1 if node number j can order from node number k, and θ jk = 0 otherwise. Similarly, we define Fjkn = θ jk F̃jkn for the fluxes. In the context of the MIP approach, the orders and fluxes Ω̃ njk , F̃jkn at each time step are treated as free variables to be optimized. In order to guarantee conservation of product, we have to add the constraint fkn = K ∑ θ jk F̃jkn , j=0 ψkn = K ∑ θk j F̃knj , k = 0 : K, n = 0 : N , (14) j=0 and in order to guarantee that fluxes cannot exceed orders, we enforce the constraints 0 ≤ F̃jkn ≤ Ω̃ njk , k = 0 : K, n = 0 : N . (15) Of course, only the orders and fluxes for adjacent nodes, i.e. for nodes j and k for which θ jk = 1 holds, have to be used in the actual program. The solution of the MIP implicitly defines an, adaptive and time dependent, distribution policy matrix A, given by θ jk F̃jkn , Anjk = fkn and the amount of orders received by node number k, which is used in the constraint (13)(b), is given by ωkn = ∑ θk j Ω̃knj . (16) j So, altogether, the external variables, which have to be supplied to the MIP, are • • • • • µk the processor capacities. θ jk the adjacency matrix of the graph. Ω̃Kn j the time dependent orders of the final customer. p0k , q0k , the initial inventory positions. φkn , n = −τk /∆ t : 0, the past influx of the processors, defining the processor contents at time t = 0. PRODUCTION NETWORKS 13 The free variables, to be optimized consist of • Ω̃ njk , j = 1 : K − 1, k = 1 : K: the internal orders • F̃jkn , fkn , ψkn , φkn , ωkn : the partial and total fluxes and total orders received for each node, given in terms of the Ω̃knj by the constraints (13)-(16) • ξkn , ηkn : the auxiliary binary variables, used in the MIP formulation. There are various possible goals to be followed when defining the cost functional to be optimized. A general cost functional might be of the form K N ∑ ∑ J (pnk , qnk ), (17) k=1 n=1 where J is a function depending on the queue-loads pnk and qnk . For example, think of the minimization of storing costs or the maximization of fluxes. Combining all discretization we observe that the optimization problem is in a fact mixed–integer programming problem and given by max or min (17) subject to (9) − (16). (18) Remark 1. The optimization problem (18) can be extended introducing an additional equation for the flow of capital. We assume that each node in the network charges a production cost βk , k = 0 : K per item delivered, and has a specific price bk per unit delivered. The evolution of the amount of capital κkn of node number k is therefore given by the discretized equation K κkn = κkn−1 + ∆ t(βk fkn−1 − ∑ Ak j β j f jn−1 − bk φkn−1 ), n=1:N . (19) j=0 In order to study the actual profitability of a given policy, it is necessary to adapt the objective. The simplest choice is then to optimize the capitalization of all the interior nodes at the final time: K J = ∑ κkN . (20) k=1 In order to further incorporate bankruptcies, we make the possible orders dependent of the capitalization rates of the individual nodes, and force each node to cease ordering as soon as its capital falls below a certain threshold κ k . In the context of the MIP approach, we implement this by introducing another binary variable νkn ∈ {0, 1} and by defining the total rate at which node k orders as σkn = K ∑ θk j Ω̃knj . j=0 (21) 14 Simone Göttlich, Michael Herty, and Christian Ringhofer To force the node into bankruptcy as soon as its capital falls below the threshold, we add the constraints σkn ≤ M νkn , M(νkn − 1) ≤ κkn − κ k ≤ M νkn , (22) where M again denotes a sufficiently large a priori constant. Again, as in the Lemma 5, there are two ways to satisfy the constraint (22). For νkn = 1 we have 0 ≤ κkn − κ k and essentially no constraint for σkn (provided that M is sufficiently large). For νkn = 0, the bankruptcy case, we have κkn − κ k ≤ 0 and σkn = 0. Adding the variables κkn and σkn to the the system together with the constraints (19)-(22), allows now for the optimization of the cost functional (20) together with the possibilities of bankruptcies. The optimization problem max (20) subject to (9) − (16), (19), (21), (22). (23) gives rise to a case study where three different order and distribution rates are compared: I As ’benchmark’ scenario we denote the problem as stated in equation (23). The solution to this problem should give the maximal possible profit since there are no additional constraints on the distribution and order rates. II We require the order policies to be time–independent. This amounts to add the constraints n Ω n+1 jk = Ω jk . (24) This choice is reasonable if the suppliers do not want to change there policy dynamically. Clearly, this additional constraint restricts the set of possible solutions and we expect a lower profit. The optimization problem hence reads max (20) subject to (9) − (16), (19), (21), (22) and (24) (25) and this scenario will be called ’time–independent orders’ in the numerical results. III We impose the following rule: Whenever the supplier Sk is not bankrupt, the supplier has to order up to his capacity µk : ∑ Ω njk ≤ νkn µk . (26) j where νkn is the binary variable introduced in equation (22). This rule is motivated by the fact that the complete production line should have the highest possible utilization. Therefore, whenever a supplier has a positive cash flow, he should order as much goods as possible from his peers. The optimization problem hence reads max (20) subject to (9) − (16), (19), (21), (22) and (26) (27) PRODUCTION NETWORKS 15 and this scenario will be called ’order–up to capacity’ for short. 3.2 Computational experiments All optimization problem are solved using the mixed–integer programming framework. The latter is solved using the commercial software ILOG CPLEX V11.0 [40] with default parameters. We study the behavior of the optimal controls Ω jk and A jk on two different networks and the three different cases I − III and study the complexity of the mixed–integer problem. If not stated otherwise we use default parameters when running the commercial solver with a maximum computation time of 24h. All computations are done on a AMD 2 Ghz personal computer. In the models we set τk ≡ ∆ t ≡ ε ≡ 1 for all examples. The network we are interested in consists of seven suppliers and six vertices, see Figure 1. A51 S1 S5 rrrrr rrrrr rrrrr rrr rrrrr r rrrrr rrr rrrrr rr rrrrr rr rrrrr rr rrrrr rrrrr rrr rrrrr rrrrr rrr rrrrr rr rrr rrrrr rr rrrrr rr rrr r rrrrrrrrrrrrrrr rrrrrrr r r r rr rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr r r rr rrrrr rrrrrr rrrrrrrrrrrrrrrr rr r rrrrr rr rrrrrrrrr rrrrr r r r r r rrrrr rr rr rr rrrrr rrrrr rr rrrrr rrrrr rrrrr rrrrr rrr rrrrr rrrrr rrrrr rrrrr rrr rrrrr rrrrr r r r r r r rrrrr rr r rr rrrr rrrrr rrrrr rrrrr rr rrrrrrrrrrrrr rrrrr rrrrr rr rr rrrrr rrrrr rr rrrrr r rrrr rrrrrrrrrrrrrrr S0 rrrrrrrrrrrrrrr rr r rrrrr rrr rrrr rrr rrrrr rrrrr r r r r rrrrr r r r r rrr rrrrr rrrrr rrrrr rrrrr rrrrr rrrrr r r r rrrr A10 S3 S2 S6 rrrrrrr r rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr r rrrrrr S4 Fig. 1 Sample network of six suppliers and a customer Each supplier (except for customer k = 6 and raw material supplier k = 0) has specific prices, production capacities and production costs as given in Table 1. Processor k 1 2 3 4 5 bk 1 2 1 1 1 µk 2 1 1 1 1 βk 0 1 1 10 10 Table 1 Specification of suppliers Sk present in the diamond network. For each scenario we consider a constant inflow ψ0n = 2 and a threshold for going bankrupt of κ k = −5. The total simulation time is T = 40. Note that, for the data given the processing chain ’raw material supplier → supplier 1 → supplier 5 → customer’ is the preferred one. However, the inflow of two parts per time cannot be 16 Simone Göttlich, Michael Herty, and Christian Ringhofer passed through supplier 5 and there is the possibility to either store the goods in the input inventory of 5 or redistribute along suppliers 3 and 4. We give computational results for the scenarios I-III by solving (23), (25) and (27), respectively. In Table 2 we report on the size of the optimization problem (non–zero variables), the computational time used by CPLEX (CPU time), the optimal profit ∑k κk (T ) and the amount of delivered parts over time at customer, i.e., RT 0 f 6 (t)dt. Benchmark (I) Time–independent orders (II) Order up to capacity (III) # nonzero vars CPU–times [sec] Bankruptcy percentage Optimal profit Delivered parts 1497 3480 24 % 260,4 3,6 1907 406 1% 16,72 1,54 1600 140 14.5 % 31,00 4,00 Table 2 Comparison of computation results for the diamond network. On a simple factory of six suppliers rule (I) yields the highest profit, but rule (III) yields the most delivered parts since the policy requires to order as many parts as possible. The highest profit is only obtained at the expense of the bankruptcy of some internal suppliers for a very long time. The optimal choice in the benchmark case is to accept the bankruptcy of most of suppliers in order to maximize the total profit. In the case of the time–dependent policy most of the suppliers to do not go bankrupt, however, there is nearly no part delivered and the overall profit is the least of all cases. 4 Conclusion The presented production network is suitable for a wide range of applications including order and distribution policies and money flow as well. The model is an essential extension to recently proposed continuous production network models. The distribution and order rates are determined by an optimization problem for maximizing the money flow where the discretized maximization problem is solved by mixed–integer programming techniques. We added a case study for a sample network where we studied a priori determined order and distribution strategies, namely, each supplier can decide at every time on his own how to order and deliver (I), each supplier has to fix an order and delivery rule for the full production process (II) or each supplier has to order up to his capacity as long as he is not bankrupt (III). As indicated by the case study, the presented model might be used to compare different a priori given rules (e.g., I to III) or to detect costly suppliers. PRODUCTION NETWORKS 17 References 1. D. A RMBRUSTER , C. DE B EER , M. F REITAG , T. JAGALSKI , AND C. R INGHOFER , Autonomous control of production networks using a pheromone approach, PHYSICA A, 363 (2006), pp. 104–114. 2. D. A RMBRUSTER , P. D EGOND , AND C. R INGHOFER , A model for the dynamics of large queuing networks and supply chains., SIAM J. Appl. Math., 66 (2006), pp. 896–920. , Kinetic and fluid models for supply chains supporting policy attributes, Bull. Inst. 3. Math. Acad. Sin. (N.S.), 2 (2007), pp. 433–460. 4. D. A RMBRUSTER , D. M ARTHALER , AND C. R INGHOFER , Kinetic and fluid model hierarchies for supply chains., Multiscale Model. Simul., 2 (2004), pp. 43–61. 5. D. A RMBRUSTER , D. M ARTHALER , C. R INGHOFER , K. K EMPF, AND T.-C. J O , A continuum model for a re-entrant factory, Operations Research, 54 (2006), pp. 933–950. 6. D. A RMBRUSTER AND C. R INGHOFER , Thermalized kinetic and fluid models for reentrant supply chains., Multiscale Model. Simul., 3 (2005), pp. 782–800. 7. P. BAK , K. C HEN , J. S CHEINKMAN , AND M. W OODFORD , Aggregate fluctuations from independent sectoral shocks: Self- organized criticality in a model of production and inventory dynamics, Ricerche Economiche, 3 (1993), pp. 3–30. 8. M. K. BANDA , M. H ERTY, AND A. K LAR , Coupling conditions for gas networks governed by the isothermal Euler equations, Netw. Heterog. Media, 1 (2006), pp. 295–314. 9. M. K. BANDA , M. H ERTY, AND A. K LAR , Gas flow in pipeline networks, Networks and Heterogenous Media, 1 (2006). 10. J. BANKS AND J. S. C ARSON , Discrete-event system simulation., Prentice-Hall International Series in Industrial and Systems Engineering. Englewood Cliffs, New Jersey: Prentice-Hall, Inc. XIV, 514 p. $ 33.70 , 1984. 11. S. BATTISTON , D. D ELLI G ATTI , M. G ALLEGATI , B. G REENWALD , AND J. S TIGLITZ, Credit chains and bankruptcy propagation in production networks, Journal of Economic Dynamics and Control, 31 (2007), pp. 2061–2084. 12. W.-J. BAUMOL, Economic Dynamics, Macmilan, New York, 1970. 13. S. B LANDIN , G. B RETTI , A. C UTOLO , AND B. P ICCOLI , Numerical simulations of traffic data via fluid dynamic approach, Appl. Math. Comput., 210 (2009), pp. 441–454. 14. G. B OLCH , S. G REINER , H. DE M EER , AND K. S. T RIVEDI , Queueing networks and Markov chains. Modeling and performance evaluation with computer science applications. 2nd ed., Hoboken, NJ: John Wiley & Sons. xvi, 878 p. EUR 104.20; 73.95 , 2006. 15. G. B RETTI , C. D’A PICE , R. M ANZO , AND B. P ICCOLI , A continuum-discrete model for supply chains dynamics, Networks and Heterogeneous Media, (2007). 16. G. B RETTI , R. NATALINI , AND B. P ICCOLI , Fast algorithms for the approximation of a traffic flow model on networks., Discrete Contin. Dyn. Syst., Ser. B, 6 (2006), pp. 427–448. 17. G. B RETTI , R. NATALINI , AND B. P ICCOLI , Numerical approximations of a traffic flow model on networks., Netw. Heterog. Media, 1 (2006), pp. 57–84. 18. G. C ALDARELLI , S. BATTISTON , D. G ARLASCHELLI , AND M. C ATANZARO , Emergence of complexity in financial networks, Lecture Notes in Physics, ”Complex Networks”, editors: Eli Ben-Naim, Hans Frauenfelder, Zoltan Toroczkai, Springer-Verlag, 650 (2004), pp. 399–423. 19. G. M. C OCLITE , M. G ARAVELLO , AND B. P ICCOLI , Traffic flow on a road network, SIAM J. Math. Anal., 36 (2005), pp. 1862–1886. 20. R. M. C OLOMBO , G. G UERRA , M. H ERTY, AND V. S CHLEPER , Optimal control in networks of pipes and canals, SIAM J. Control Optim., 48 (2009), pp. 2032–2050. 21. C. F. DAGANZO , A theory of supply chains., Lecture Notes in Economics and Mathematical Systems. 526. Berlin: Springer. viii, 123 p, 2003. 22. C. D’A PICE AND R. M ANZO , A fluid dynamic model for supply chains, Networks and Heterogenous Media, 1 (2006), pp. 379–389. 23. C. D’A PICE , R. M ANZO , AND B. P ICCOLI , Packet flow on telecommunication networks., SIAM J. Math. Anal., 38 (2006), pp. 717–740. 18 Simone Göttlich, Michael Herty, and Christian Ringhofer 24. P. D EGOND , S. G ÖTTLICH , M. H ERTY, AND A. K LAR , A network model for supply chains with multiple policies, Multiscale Model. Simul., 6 (2007), pp. 820–837. 25. P. D EGOND AND C. R INGHOFER , Stochastic dynamics of long supply chains with random breakdowns, SIAM J. Appl. Math., 68 (2007), pp. 59–79 (electronic). 26. A. F ÜGENSCHUH , S. G ÖTTLICH , M. H ERTY, A. K LAR , AND A. M ARTIN , A discrete optimization approach to large scale supply networks based on partial differential equations, SIAM J. Sci. Comput., 30 (2008), pp. 1490–1507. 27. M. G ARAVELLO AND B. P ICCOLI , Traffic flow on a road network using the aw-rascle model, Comm. Partial Differential Equations, 31 (2006), pp. 243–275. 28. M. G ARAVELLO AND B. P ICCOLI , Traffic flow on networks, vol. 1 of AIMS Series on Applied Mathematics, American Institute of Mathematical Sciences (AIMS), Springfield, MO, 2006. Conservation laws models. 29. S. G ÖTTLICH , M. H ERTY, AND A. K LAR , Network models for supply chains, Communication in Mathematical Sciences, 3 (2005), pp. 545–559. , Modelling and optimization of supply chains on complex networks, Communication 30. in Mathematical Sciences, 4 (2006), pp. 315–350. 31. S. G ÖTTLICH , M. H ERTY, AND C. R INGHOFER , Optimization of order policies in supply networks, European J. Oper. Res., 202 (2010), pp. 456–465. 32. M. G UGAT, G. L EUGERING , K. S CHITTKOWSKI , AND E. J. P. G. S CHMIDT, Modelling, stabilization, and control of flow in networks of open channels, in Online optimization of large scale systems, Springer, Berlin, 2001, pp. 251–270. 33. D. H ELBING , Verkehrsdynamik, Springer-Verlag, Berlin, Heidelberg, New York, 1997. 34. M. H ERTY, C. K IRCHNER , AND S. M OUTARI , Multi-class traffic models for road networks, Communications in Mathematical Sciences, 4 (2006). 35. M. H ERTY AND A. K LAR , Simplified dynamics and optimization of large scale traffic networks, Math. Models Methods Appl. Sci., 14 (2004), pp. 579–601. 36. M. H ERTY, A. K LAR , AND B. P ICCOLI , Existence of solutions for supply chain models based on partial differential equations., SIAM J. Math. Anal., 39 (2007), pp. 160–173. 37. M. H ERTY AND M. R ASCLE, Coupling conditions for a class of second order models for traffic flow, SIAM J. MATH. ANAL, 38 (2006), pp. 592–616. 38. M. H ERTY AND C. R INGHOFER , Optimization for supply chain models with policies, Physica A, (2007). 39. H. H OLDEN AND N. H. R ISEBRO , A mathematical model of traffic flow on a network of unidirectional roads, SIAM J. Math. Analysis, 26 (1995), pp. 999–1017. 40. IBM ILOG CPLEX, IBM Deutschland GmbH, 71137 Ehningen, Germany, 2010. Information available at URL http://www.ibm.com/software/products/de/de/ilogcple/. 41. C. K ELLEY , Iterative methods for optimization, SIAM Frontiers in Applied Mathematics, 1999. 42. M. L A M ARCA , D. A RMBRUSTER , M. H ERTY, AND C. R INGHOFER , Control of continuum odels of production systems, IEEE Transacations on Control, (2010). 43. C. R INGHOFER , A level set approach to modeling general service rules in supply chains, Comm. Math. Sci., (2008). 44. A. U NVER AND C. R INGHOFER , Estimation of transport coefficients in re-entrant factory models, submitted, (2008).
© Copyright 2026 Paperzz