# A Decomposition-Based Approach for the  Multiperiod Multiproduct Distribution Planning Problem

Authors: S. Ahmad Hosseini; Güvenç Şahin; Tonguç Ünlüyurt
Journal: Journal of Applied Mathematics
 (2014)

---

## Abstract

We address the most general case of multiperiod, multiproduct network planning problems, where we allow spoilage on arcs and storage at nodes. In our models, all network parameters change over time and products. The minimum-cost flow problem in the discrete-time model with varying network parameters is investigated when we allow storage and/or spoilage, and some reformulation techniques employing polyhedrals are developed to obtain optimal solutions for a predefined horizon. Our methods rely on appropriate definitions of polyhedrals and matrices that lead to LP problems comprising a set of sparse subproblems with special structures. Knowing that computational expenses of solving such a large-scale planning problem can be decreased by using decomposition techniques, the special structure of polyhedrals is utilized to develop algorithmic approaches based on decomposition techniques to handle the global problem aiming to save computational resources.


---

## Body

## 1. Introduction

Static network flows are very common in the literature [1]. However, they fail to capture the time-varying property of many practical applications, such as production-distribution systems, traffic planning, communication networks, and evacuation planning [2–10]. A static flow cannot properly consider the evolution of such systems over time. The need for more realistic models led to the development of multiperiod and dynamic network flow formulations which have been applied to a variety of applications. In such applications, flow values on arcs are not constant but may change over time and not only the amount of flow to be transmitted but also the time needed for the transmission plays an essential role. Capacitated dynamic networks arise in a variety of relevant decision making problems (Aronson [2], Cai et al. [3], Hoppe [4], Wayne [5], Lozovanu [6], Hosseini [7], Newman et al. [8], Pantelides [9], Groß and Skutella [10, 11], and Stefansson et al. [12]). In some practical applications the network structure and problem parameters may be time-varying (time-dependent network flow) [11, 13, 14], and there is no guarantee for the flow to be conserved [5, 15–17].Motivated by time-dependent multi-item distribution planning problems, we study an extension of this class of problems as network problems which generalize the problems in Hosseini and Saridarq [14, 15] by includinghorizon capacities,time-commodity varying capacities, time-commodity varying costs, andtime-commodity varying loss/gain factors over a finite horizon. This study focuses on theminimum cost dynamic flows (MCDF) onmultiperiod multiproduct networks (MMN) where spoilage over arcs and storage on nodes are allowed. In such networks, an arc is assigned a nonnegative time-commodity varyinggain/loss factor, two nonnegative time and time-commodity varying capacity functions, a nonnegative horizon capacity, and a nonnegative time-commodity varying cost function. In our setting, a positive time-commodity varying factor represents the fraction of flow that remains when it is sent at a specific time period. MMNs have many interesting applications [18–23].There are some approaches to address multiperiod network problems such as state-task network [23] and resource-task network [9], with important differences with respect to the assumption of continuity or discreteness of the time horizon. Jackson et al. [18, 19] use temporal and spatial Lagrangean decompositions to solve the multisite multiperiod planning problems. Chen and Pinto [24] use Lagrangean-based decomposition techniques for solving the temporal decomposition of a continuous flexible process network; they use subgradient methods to solve the decomposed problem. Neiro and Pinto [25] use temporal Lagrangean decomposition to solve a multiperiod mixed-integer nonlinear programming planning problem under uncertainty concerning a petroleum refinery.We consider nonsimultaneous shipment of commodities from production sites (sources) to markets (sinks) in a distribution network with known production capacities where demand should be satisfied from available supply with time-commodity dependent shipments during a planning horizon represented in discrete time periods. Hence, the problem is a decision problem that finds an optimal dynamic flow minimizing a predefined nonnegative distribution cost function. We formulate a MCDF problem on a MMN with special structures that permit efficient computation of its solution and help save storage requirements. Our approach relies on appropriately defining polyhedral sets. We develop some decomposition-based approaches to solve the minimum-cost flow problem employing polyhedral sets embedded within the underlying network.The organization of this paper is as follows. We discuss the necessary notations and time representations in Section2; we introduce and analyze the minimum cost flow problem on multiperiod multiproduct distribution planning networks including spoilage in Section 3. Section 4 discusses the same problem while spoilage and/or storage become the key elements of the problem formulation. In Section 5, we discuss some special cases of the problem and propose some alternative approaches. Section 6 reports a real-life application and presents some computational experiments.


## 2. Minimum-Cost Flow Problem on Multiperiod Multiproduct Networks

Many planning problems arising in large-scale systems can be formulated as a minimum-cost multiperiod (dynamic) multiproduct network flow problem [2–6]. Towards this goal, the single-commodity dynamic flow problem formulations can be extended to consider a multiproduct network. In the MCDF problem on MMN, there exists a set of products that are manufactured in several multiproduct production sites (sources) and shipped to a set of markets (sinks) where they are sold. The aim is to find a time-dependent distribution plan to nonsimultaneously ship the products from source nodes to sink nodes through a network honoring the arc capacities (time-varying, time-commodity varying, and horizon capacities) at a minimal cost during a finite-length planning horizon. G=(V,A,T,k) denotes a distribution (directed) network where V is the set of production and demand sites (nodes), A is the set of all possible connections between sites (arcs), K={1,2,…,k} is the set of products, and T represents the length of the planning horizon. With dynamic flow decision variable xijq(t) as the vector of flow rates of commodity q entering arc (i,j) at time period t, the formulation for the MCDF on MMN becomes
(1)Continuous-Time-MCDFMinxijq(t)∑q∈K∑(i,j)∈A∫0Tcijq(t)xijq(t)dt,(2)∑j∫0Txijq(t)dt-∑j∫0Txjiq(t)dt=Viq∀i∈V,∀q∈K,(3)∑q∈K∫0Txijq(t)dt≤uij∀(i,j)∈A,(4)∑q∈Kxijq(t)≤uij(t)∀(i,j)∈A,∀t∈[0,T],(5)0≤xijq(t)≤uijq(t)∀(i,j)∈A,∀q∈K,∀t∈[0,T],
where cijq:[0,T]→IR+ is the nonnegative cost function with respect to product q and Viq denotes the predefined supply/demand capacities at node i over the entire planning horizon. Constraint (2) involves the flow conservation constraints for each commodity. We refer to (3) ashorizon capacity constraints; horizon capacity of an arc limits the amount of total flow (of all commodities) on the arc throughout the entire planning horizon. Constraint (4) represents the maximum possible amount of total flow that can enter (i,j) at time t: it is referred to as themoment/period capacity constraint. Constraint (5) is the time-commodity varying capacity constraint for each commodity at each moment.The problem formulation in (1)–(5) represents MCDF in acontinuous-time setting. However, as an approximation to this setting, time may be represented in discrete increments [25]. The continuous-time problem seeks for the multiproduct flow distributed continuously over time within period [0,T] while the discrete case determines the flow rates over discrete time periods. For a finite-length planning horizon T, we denote the time horizon N={0,1,…,T-1} in the discrete-time model. There is a natural transformation of continuous-time dynamic (multiproduct) flow x to a discrete flow x- of the same horizon and vice versa [3, 4]. Let x-ijq(t) represent the total amount of flow sent into arc (i,j) during time interval [t,t+1); then
(6)x-ijq(t)≔∫tt+1xijq(ξ)dξ,u-ijq(t)≔∫tt+1uijq(ξ)dξ,c-ijq(t):=cijq(ξt)∀q∈K,
where ξt∈(t,t+1), t∈N, and ∫tt+1cijq(ξ)xijq(ξ)dξ=cijq(ξt)∫tt+1xijq(ξ)dξ∀q∈K.The last equality follows asc and x are nonnegative continuous functions (see [26–28]). For any discrete time period t, any commodity q, and time horizon T, it is easy to verify that flow conservation constraints hold and x- satisfies all such constraints and also the flow cost is preserved as
(7)∑q∈K∑(i,j)∈A∫0Tcijq(ξ)xijq(ξ)dξ=∑q∈K∑(i,j)∈A∑t=0T-1cijq(ξt)∫tt+1xijq(ξ)dξ=∑q∈K∑(i,j)∈A∑t∈Nc-ijq(t)x-ijq(t).


## 3. Multiperiod Multiproduct Network Flows with Spoilage (SMMN)

Any of the models discussed up to now has a fundamental assumption: the flow has to be conserved on any arc with respect to any commodity. However, some practical applications do not satisfy such a conservation assumption [1, 17]. In the transmission of a volatile gas, for example, we may lose some portion of the flow due to evaporation; or, in the transmission of liquids such as raw petroleum crude, some flow may be lost due to leakage [5]. The SMMN problem is a natural generalization of the problems stated in [14, 15]. When spoilage on arcs is also considered, each arc (i,j) has a time-commodity varying nonnegativegain/loss factorλijq(t) with respect to each time period time t and commodity q. When xijq(t) units of flow of commodity q are sent from node i via arc (i,j) at time t, λijq(t)xijq(t) units of flow arrive at node j at the same time. If λijq(t)<1, the arc islossy; if λijq(t)≥1 the arc isgainy on that time with respect to that commodity. Therefore, if there is spoilage (loss) of flow on an arc during all periods with respect to all commodities, the mathematical model may be modified only by assigning aloss factor to the related arc. Then,
(8)∑j∫0Txijq(t)dt-∑j∫0Tλjiq(t)xjiq(t)dt=Viq∑j∫0Tλjiq(t)xjiq(t)dit=Viq∀i∈V,∀q∈K.Such a production-distribution planning problem in discrete-time setting has an underlying graphG=(V,A,T,K) consisting of three capacity functions: uqt:A×N×K→IR+, ut:A×N→IR+, and u:A→IR+, a predefined nonnegative cost function cqt:A×N×K→IR+, and a predefined nonnegative time-commodity varying gain/loss function λqt:A×N×K→IR+. Therefore, adiscrete feasible dynamic flow is a nonnegative function x={xijqt}:A×N×K→IR+ satisfying (9)–(13), and the discrete-time minimum-cost dynamic flow problem becomes
(9)Discrete-Time-MCDFMinxijqt∑q∈K∑t∈N∑(i,j)∈Acijqtxijqt,(10)∑j∑t=0T-1xijqt-∑j∑t=0T-1λjiqtxjiqt=viq∀i∈V,∀q∈K,(11)∑q∈K∑t∈Nxijqt≤uij∀(i,j)∈A,(12)∑q∈Kxijqt≤uijt∀(i,j)∈A,∀t∈N,(13)0≤xijqt≤uijqt∀(i,j)∈A,∀q∈K,∀t∈N,
where we suppose that the arc capacity uijqt is an upper bound on the q-flow (flow of commodity q) sent from node i at time period t, not on the flow that becomes available at node j. Similarly, cijqt should be interpreted as the cost for each unit of flow which is sent from node i. In order to benefit from an efficient decomposition-based solution method by transforming the formulation structure, we introduce an unrestricted variable viqt, and the formulation becomes
(14)Discrete-Time-MCDF  (SMMN)Minxijqt,viqt∑q∈K∑t∈N∑(i,j)∈Acijqtxijqt,(15)(∑jxijqt-∑jλjiqtxjiqt)-viqt=0∀i∈V,∀q∈K,∀t∈N,(16)∑t∈Nviqt=viq∀i∈V,∀q∈K,(17)∑q∈K∑t∈Nxijqt≤uij∀(i,j)∈A,(18)∑q∈Kxijqt≤uijt∀(i,j)∈A,∀t∈N,(19)0≤xijqt≤uijqt∀(i,j)∈A,∀q∈K,∀t∈N,
where viqt denotes the difference between the outflow and the inflow of commodity q at node i at period t. It is easy to check that conditions (15) and (16) together are equivalent to condition (10). To develop our polyhedral-based approach we need to define the node-arc incidence matrix including the time component of the problem. Given an underlying SMM network and predefined loss/gain factors, we introduce an auxiliary matrix [Φqt]n×m for a time period t and for a product q as
(20)[Φqt]n×m:=[A]n×m×[Σqt]m×m,
where [A] is the node-arc incidence matrix of the underlying distribution network (which remains unchanged during the planning horizon) and [Σqt] is a m×m-diagonal matrix whose elements are the predefined arc factors (at time t with respect to q) in the same order that arcs appear in m-vector [Xqt]m×1 (m is the number of arcs of the network). For a time period t and a commodity q, we construct [Bqt]n×m as
(21)[Bqt]ij:={[Φqt]ijif[Φqt]ij≤0,1if[Φqt]ij>0,
where [Bqt]ij and [Φqt]ij represent the (i,j)th elements of the matrices [Bqt] and [Φqt], respectively. We refer to matrix [Bqt]n×m as thet-q-node-arc incidence matrix of the SMM network, and it represents the node-arc incidence matrix of SMMN at time t for commodity q. Due to the changes in arc factors over time and commodity, incident matrices are not necessarily the same during the complete planning horizon with respect to each product. However, since the time-commodity varying gain/loss functions are predefined, all matrices can be computed off-line.Substitutingviq+t-viq-t for viqt (viq+t≥0,viq-t≥0), considering relations (20)-(21), with appropriately vectors and matrices, the problem formulation, indeed, yields the following:
(22)MinXqt,Vq+t,Vq-t∑t∈N[C1tC2t⋯CKt][X1tX2t⋯XKt]trans⁡,∑t∈N([X1t]+⋯+[XKt])≤[U]m×1,∑t∈N([Vq+t]-[Vq-t])=[Vq]n×1∀q∈K,[Bqt]n×m[Xqt]-[Ι]n[Vq+t]+[Ι]n[Vq-t]=[0]n×1∀t∈N,∀q∈K,[X1t]+⋯+[XKt]≤[Ut]m×1∀t∈N,[0]m×1≤[Xqt]m×1≤[Uqt]m×1∀t∈N,∀q∈K,[Vq+t]n×1≥[0]n×1,[Vq-t]n×1≥[0]n×1∀t∈N,∀q∈K,
where [Vqt] and [Vq] are defined as the vector of free variables at time t with respect to commodity q and the vector of supply/demand numbers with respect to commodity q. [Xqt] and [Uqt] are the m-vectors of flow and capacities in t for commodity q. [U] is the m-vector of horizon capacities and [Ut] is the m-vector of period capacities with respect to period t. Let [Cqt] represent the vector of arc costs at t∈N for commodity q. Please see Appendix A for further details.With our modeling approach, we can formulate any MCDF problem on a SMMN as a problem which possesses theblock angular structure. In order to demonstrate this, we define(23)[Ct]:=(C1tC2t⋯CKt0000⋯000)t∈{0,1,…,T},[Yt]:=(X1tX2t⋯XKtV1+tV1-tV2+tV2-t⋯VK+tVK-tSt)trans⁡t∈{0,1,…,T},[Wt]:=(U1tU2t⋯UKtV1V1V2V2⋯VKVKUt)trans⁡t∈{0,1,…,T},[W-t]:=(000⋯0⋮Ut)trans⁡t∈{0,1,…,T},[At]:=[B1t0⋯0-II00⋯0000B2t⋯000-II0⋯00⋱⋱00⋯BKt0000⋯-II0------------II⋯I0000⋯00I]t∈{0,1,…,T},[M]:=[II⋯I0000⋯00000⋯0I-I00⋯00000⋯000I-I0⋯00⋱⋱00⋯000000I-I0].00000000000000000000000000(master matrix)According to the newly introduced notation, the LP formulation of the problem becomes
(24)Min∑t∈N[Ct][Yt][M][Y0]+[M][Y1]+⋯+[M][YT-1]+[M][YT]=(UV1⋯VK)trans⁡,[A0][Y0]=[W-0],[A1][Y1]=[W-1],[A2][Y2]=[W-2],⋮[AT][YT]=[W-T],[0]≤[Yt]≤[Wt]t∈{0,1,…,T}.Block diagonal structure is desired to speed up the solution of a sparse linear programming problem [29]. We may also conveniently exploit decomposition procedures or generalized upper bounding (GUB) techniques to solve such problems efficiently [30–34]. Interestingly enough, in our approach, the master constraint has the same matrix for any set of variables (X1tX2t⋯XKtV1+tV1-tV2+tV2-t⋯VK+tVK-tSt)trans⁡. In order to use the Dantzig-Wolfe decomposition in our problem, the constraint matrix should be exploited by splitting the original problem into smallersubproblems and a connecting constraint,master constraint (the one containing the master matrix M). The structure of the time-varying block-angular system admits a natural decomposition into a set of T+1 independent well-structured smaller parts instead of solving the original problem whose size and complexity are beyond what can be solved within a reasonable amount of time and then adjust the solution to take into account the interconnections. In general, it is not necessary for either set of constraints to have a special structure, but when available, it helps speed up the solution method. Thus, we may apply the block diagonal decomposition techniques to solve the foregoing problem to achieve the desired effect. Let us consider an application of a decomposition algorithm to the problem: define T+1 polyhedral sets χt for each t∈{0,1,…,T} as
(25)χt:={[Yt]:[At][Yt]=[W-t],[0]≤[Yt]≤[Wt]}.Considering Minkowski’s representation theorem, any[Yt]∈χt can be expressed as a convex combination of a finite number of extreme points of χt as
(26)(X1tX2t⋯XKtV1+tV1-tV2+tV2-t⋯VK+tVK-tSt)∈χt⟺[Yt]=∑i=1ktαit[yit]+∑j=1ltμjt[djt],∑i=1ktαit=1,αit≥0fori=1,…,kt,μjt≥0forj=1,…,lt,
where [y1t],[y2t],…,[yktt] and [d1t],[d2t],…,[dktt] are extreme points and extreme directions (if any) of polyhedral χt. The original problem can be reformulated as themaster problem under Minkowski’s mapping as follows:
(27)Minαit,μjt∑t∈N∑i=1ktαit[Ct][yit]+∑t∈N∑j=1ltμjt[Ct][djt],[M]∑i=0k0αi0[yi0]+[M]∑j=1ltμj0[dj0]+⋯+[M]∑i=1kTαiT[xiT]+[M]∑j=1ltμjT[djT]=(UV1V2⋯VK)trans⁡,∑i=1ktαit=1∀t∈N∪{T},αit≥0∀t∈N∪{T}i=1,…,kt,μjt≥0∀t∈N∪{T}j=1,…,lt.Due to having a huge number of extreme points for each polyhedron, enumerating all the extreme points and solving this problem directly seem to be impossible. Rather, we should find a reasonable approach without enumerating all the extreme points. This is where we suggest the use of decomposition techniques, especially due to the special structure of our problem that greatly intensifies the efficiency of the decomposition methods. Next, we develop the most general form of the minimum-cost flow problem formulation for a SMMN as(28)(CondensedMasterProblem)Minαit,μjt∑t∈N∪{T}[Ct](∑i=1ktαit[yit]+∑j=1ltμjt[djt]),[M]∑t∈N∪{T}(∑i=1ktαit[yit]+∑j=1ltμjt[djt])=(UV1V2⋯VK)trans⁡,∑i=1ktαit=1∀t∈N∪{T},αit≥0∀t∈N∪{T}i=1,…,kt,μjt≥0∀t∈N∪{T}j=1,…,lt.The formulation of the SMMN problem shows a much simpler constraint structure than the usual matrix form. It possesses onlym+Kn+T+1 constraints rather than (T+2)(m+Kn) in the earlier formulation. Problems of this type are well amenable by many decomposition algorithms and column generation methods [35–37]. As a result, the computational advantage of the algorithm depends on the efficiency of the decomposition methods. We propose Dantzig-Wolf decomposition (or Benders algorithm for the dual) and so, the same analysis is applied for this case. For more information, one may refer to [38]. When the problem has many thousands of rows and is unsolvable in a reasonable amount of time, however, our approach suggests a method to convert the large-scale problem (high dimensional problem) into one or more appropriately coordinated smaller sparse problems of manageable sizes.Considering Minkowski’s mapping and feasibility of the problem, it follows that any obtained optimal basis will detect one arc set for every time stept and for each commodity q that transports a positive amount of flow. Moreover, the values of viqt for each i, t, and q will be determined at any basis. It is immediately understood that the optimal arc sets for every time step and for any commodity are not necessarily the same. In other words, the optimal solution (corresponding to the optimal basis) determines a set of original variables of form [X1tX2t⋯XKtV1+tV1-tV2+tV2-t⋯VK+tVK-tSt] for each time step with respect to each commodity conveying a positive flow [35, 38, 39].


## 4. A Solution Approach for MM Networks with Storage

In certain practical problems, the intermediate storage policy is another important issue that has to be considered in the models. It may be necessary that theq-flow (flow of commodity q) is delayed at some nodes in various applications such as batch process scheduling, traffic routing, evacuation planning, energy transmission, inventory, and telecommunications [2]. This affects the complexity of the problem. When there are no storage equipments, nonintermediate storage policy is assumed. It is also common in the industry for a process to have different storage policies for different intermediates that is called mixed intermediate storage policy. In our model, we let the q-flow be stored at some (or all) intermediate nodes (or demand nodes) for only one time period with finite (or infinite) storage capacity depending on a predefined capacity function for each t, q, and i. Time and commodity dependent capacity functions allow different storage policies in different time periods with respect to different products, keeping the time lag as one period. However, the staircase structure, which will be discussed later, may have longer time lags. We represent the storage of flow by introducing loops as shown in Figure 1.Figure 1
A typical MMN with flow storage at nodes.Flow storage leads to a slightly different notion of flow conservation. If we decompose the set of verticesV into three subsets as VSQ, VIQ, and VDQ, respectively, comprising source nodes, intermediate nodes, and sink nodes with respect to each q, x(t):A→IR+ is adynamic feasible flow if and only if it satisfies constraints (2)–(5) together with
(29)∑j∫0θxijq(t)dt-∑j∫0θxjiq(t)dt≤0∀i∈V∖VSQ,∀q∈K,∀θ∈(0,T).
We may allow limited (or unlimited) flow storage at nodes but prohibit any deficit by constraint (29). As earlier, all q-demands must be met, and flow must not remain on the network after time T while each source/sink must not exceed its forecasted supply/demand. Adiscrete-time dynamic flow on G denoted by x:{A∪V}×N×K→IR+ is said to befeasible if it satisfies the following constraints:
(30)∑j∑t=0T-1xijq(t)-∑j∑t=0T-1xjiq(t)=Viq∀i∈V,∀q∈K,∑jxijq(t)-∑jxjiq(t)≤0∀i∈V∖VS,∀t∈N,∀q∈K,∑q∈K∑t∈Nxijq(t)≤uij∀(i,j)∈A,∑q∈Kxijq(t)≤uij(t)∀(i,j)∈A,∀t∈N,0≤xijq(t)≤uijq(t)∀(i,j)∈A,∀t∈N,∀q∈K.
If ciiq(t) is the cost of storage at node i at period t with respect to q, the total cost of a discrete dynamic flow x is defined by
(31)∑q∈K∑t∈N∑(i,j)∈Acijq(t)xijq(t)+∑q∈K∑i∈V∑t∈Nciiq(t)(∑jxjiq(t)-∑jxijq(t)).
With viq(t) denoting the difference between q-outflow and q-inflow at node i at time period t, we may reformulate the problem as
(32)Minxijq(t),xiiq(t),viq(t)∑q∈K∑t∈N∑(i,j)∈Acijq(t)xijq(t)+∑q∈K∑t∈N∑i∈Vciiq(t)xiiq(t),∑jxijq(t)-∑jxjiq(t)+[xiiq(t)-xiiq(t-1)]-viq(t)=0∀i∈V,∀t∈N,∀q∈K,∑t∈Nviq(t)=viq∀i∈V,∀q∈K,∑q∈K∑t∈Nxijq(t)≤uij∀(i,j)∈A,∑q∈Kxijq(t)≤uij(t)∀(i,j)∈A,∀t∈N,0≤xiiq(t)≤uiiq(t)∀i∈V∖VSQ,∀t∈N,∀q∈K,0≤xijq(t)≤uijq(t)∀(i,j)∈A,∀t∈N,∀q∈K,
where xiiq(t) and ciiq(t) denote the amount and cost of stored flow at node i in period t of product q. By setting viq(t)=viq+t-viq-t, our problem formulation is reduced to a standard LP formulation inmatrix form as shown in Appendix B, whose special structure enables efficient solution of the problem. The resulting formulation is as follows:
(33)Min[Xqt],[Xsqt],[Vq+t],[Vq-t]∑q∈K∑t∈N[Cqt][Xqt]+∑q∈K∑t∈N[Csqt][Xsqt],∑t∈N([X1t]+⋯+[XKt])≤[U]m×1,∑t∈N([Vq+t]-[Vq-t])=[Vq]n×1∀q∈K,[Aqt]n×m[Xqt]+[I]n×n[Xsqt]n×1+[-I]n×n[Xsqt-1]n×1-([Vq+t]-[Vq-t])=[0]n×1∀t∈N,∀q∈K,[X1t]+⋯+[XKt]≤[Ut]m×1∀t∈N,[0]m×1≤[Xqt]m×1≤[Uqt]m×1∀t∈N,∀q∈K,[0]n×1≤[Xsqt]n×1≤[Usqt]n×1∀t∈N,∀q∈K,[Vq+t]n×1≥[0]n×1,[Vq-t]n×1≥[0]n×1∀t∈N,∀q∈K,
where [Xqt]={xijq(t)}={xijqt} and [Xsqt]={xiiq(t)}={xiiqt} are the vectors of flow and storage at time period t and [Uqt]={uijq(t)}={uijt} and [Usqt]={uiiq(t)}={uiiqt} are the vectors of flow capacities and storage at t∈N, respectively. [U], [Ut], [Cqt], and [Vqt] are defined as earlier. [Csqt]={ciiq(t)}={ciiqt} is the vector of predefined storage costs and [A]n×m is the node-arc incidence matrix of the underlying network. A standard LP problem formulation is obtained by decomposing [Vqt] into nonnegative vectors [Vq+t] and [Vq-t]. [Vq]={viq} is the vector of predefined supply/demand of nodes with respect to commodity q. A further refinement of the matrix-form formulation shows that we can formulate a minimum-cost problem on a multiperiod dynamic network (with storage) in astaircase structured matrix form. For this purpose, we define(34)[Yt]:=(X1tX2t⋯XKtXs1tXs2t⋯XsKtV1+tV1-tV2+tV2-t⋯VK+tVK-tSt)trans⁡t∈{0,1,…,T},[Ct]:=(C1tC2t⋯CKtCs1tCs2t⋯CsKt0000⋯000)t∈{0,1,…,T},[Wt]:=(U1tU2t⋯UKtUs1tUs22⋯UsKtV1V1V2V2⋯VKVKUt)trans⁡t∈{0,1,…,T},[W-t]:=(000⋯0⋮U)trans⁡t∈{0,1,…,T}[M]:=[II⋯I00⋯00000⋯00000⋯000⋯0I-I000⋯00⋮⋱⋱⋮00⋯000⋯00000⋯I-I0----------------00⋯000⋯00000⋯000](master  matrix)[A]=[At]:=[A1t0⋯0I0⋯0-II00⋯0000A2t⋯00I0000-II0⋯00⋱⋱00⋯AKt00⋯I0000⋯-II0----------------II⋯I00⋯00000⋯00I]t∈{0,1,…,T},[M-]:=[00⋯0-I0⋯00000⋯00000⋯00-I0000000⋯00⋱⋱00⋯000⋯-I0000⋯000----------------00⋯000⋯00000⋯000].Accordingly, we obtain the formulation as
(35)Min∑t∈N[Ct][Yt][M][Y-1]+[M][Y0]+[M][Y1]+⋯+[M][YT-1]+[M][YT]=(UV1⋯VK0)trans⁡,[M-][Y-1]+[A][Y0]=[W-0],[M-][Y0]+[A][Y1]=[W-1],[M-][Y1]+[A][Y2]=[W-2],[M-][Y2]+[A][Y3]=[W-3],⋮[M-][YT-1]+[A][YT]=[W-T],[0]≤[Yt]≤[Wt]t∈{0,1,…,T}.We may now generalize the problem to consider MMN with storage at nodes and spoilage in arcs (SSMM), by allowing theq-flow to leak and be stored at the same time. The continuous time setting is then formulated as
(36)Min∑q∈K∑(i,j)∈A∫0Tcijq(t)xijq(t)dt-∑q∈K∑i∫0Tciq(t)∑j[xijq(t)-λjiq(t)xjiq(t)]dt,∑j∫0Txijq(t)dt-∑j∫0Tλjiq(t)xjiq(t)dt=viq∑j∫0Tλjiq(t)xjiq(t)dt=viq∀i∈V,∀q∈K.∑j∫0θxijq(t)dt-∑j∫0θλjiq(t)xjiq(t)dt≤0xijq(t)∀θ∈[0,T[,∀i∈V∖VSQ,∀q∈K,∑q∈K∫0Txij(t)dt≤uij∀(i,j)∈A,∑q∈Kxijq(t)≤uij(t)∀(i,j)∈A,∀t∈[0,T],0≤xijq(t)≤uijq(t)∀(i,j)∈A,∀t∈[0,T],∀q∈K.
The discrete time setting formulation is obtained by replacing (14) and (15), respectively, by
(37)Minxijt,xiit,vit∑q∈K∑t∈N∑(i,j)∈Acijqtxijqt+∑q∈K∑t∈N∑i∈Vciiqtxiiqt,xiiqt-xiiqt-1+∑jxijqt-∑j[λjiqtxjiqt]-viqt=0∀t∈N,∀i∈V,∀q∈K.To develop the matrix form of the formulation, we again use thet-q-node-arc incidence matrix introduced in (20)-(21). As earlier, we let [Bqt]n×m denote the q-t-node-arc incidence matrix at step t with respect to q. With similar transformations, the minimum-cost SSMMN flow problem can be formulated by replacing each [Aqt]n×m with the corresponding [Bqt]n×m.


## 5. An Alternative Approach for MMN without Period Capacities

To formulate MMN flow problem without period capacities, we slightly change the definition of the master matrix and decision variable vectors. Our approach brings more flexibility to modify the problem setting in various ways, but at the same time, it increases the number of subproblems (to be obtained by a decomposition) from(T+1) to K(T+1).Case 1 (MMN with spoilage).
We define decision variable vectors[Yqt] be time-commodity dependent; each will consist of one set of nonnegative variables Xqt in the qth position for each t and Vq+t and Vq_t in the (K+2q-1)th and (K+2q)th position, respectively, as
(38)[Yqt]:=[00⋯Xqt︸q0⋯Vq+t︸(K+2q-1)Vq-t︸(K+2q)000]trans⁡000000000000000000000000000000000∀q∈K,∀t∈N.
Analogously, we redefine the node-arc incidence matrices with respect to each t and q as
(39)[Aqt]:=[00⋯Bqt0⋯-II000]00000000000000000000∀q∈K,∀t∈N.
We also need to redefine our master matrix as
(40)[M]:=[II⋯I0000⋯0000⋯0I-I00⋯0000⋯000I-I⋯00⋱⋱00⋯000000I-I].
We can extract a block-angular structure with each block representing the constraint matrix for each time and commodity. In this respect, the flow conservation conditions turn out to have the following from:
(41)[M](X100⋮0V1+0V1-000⋮00)+[M](0X20⋮000V2+0V2-0⋮00)+⋯+[M](00⋮XK00000⋮VK+0VK-0)+[M](X110⋮0V1+1V1-100⋮00)+[M](0X21⋮000V2+1V2-1⋮00)+⋯+[M](00⋮XK10000⋮VK+1VK-1)+⋯+[M](X1T0⋮0V1+TV1-T00⋮00)+⋯+[M](00⋮XKT0000⋮VK+TVK-T)=(UV1V2V3⋮VK),[A10][X100⋯0V1+0V1-000⋯00]trans⁡=[0]n×1,[A20][0X20⋯0000V2+0V2-000]trans⁡=[0]n×1,⋮[AK0][00⋯XK00000⋯VK+0VK-0]trans⁡=[0]n×1,[A1T][X1T0⋯0V1+TV1-T00⋯00]trans⁡=[0]n×1,⋮[AKT][00⋯XKT0000⋯VK+TVK-T]trans⁡=[0]n×1,[0]≤[00⋯Xqt0⋯Vq+tVq-t000]≤[00⋯Uqt0⋯VqVq000]mmmmmmmmm∀q∈K,∀t∈N.
We define the following two matrices:
(42)[Ct]:=[00⋯Cqt0⋯00000]∀q∈K,∀t∈N,[Wqt]:=[00⋯Uqt0⋯VqVq000]∀q∈K,∀t∈N.
Then, the formulation for the minimum-cost MMN flow problem with spoilage is
(43)Min∑q∈K∑t∈N[Cqt][Yqt][M][Y10]+⋯+[M][YK0]+[M][Y11]+⋯+[M][YK1]+⋯+[M][Y1T]+⋯+[M][YKT]=[UV1⋯VK]trans⁡,[A10][Y10]=[0],⋮[AK0][YK0]=[0],[A11][Y11]=[0],⋮[AK1][YK1]=[0],⋮[A1T][Y1T]=[0],⋮[AKT][YKT]=[0],[0]≤[Yqt]≤[Wqt]∀q∈K,∀t∈N.
We now define K(T+1) time-commodity dependent polyhedrals and use Minkowski’s mapping as
(44)∀q∈K,∀t∈N,χqt:={[Yqt]:[Aqt][Yqt]=[0],mcm[0]≤[Yqt]≤[Wqt]}[Yqt]∈χqt⟺[Yqt]=∑i=1kqtαiqt[yiqt]+∑j=1lqtμjqt[djqt]000000000000000000000000∀q∈K,∀t∈N,∑i=1kqtαiqt=1,αiqt≥0,μjqt≥0∀q∈K,∀t∈N,
where [y1qt],[y2qt],…,[ykqtqt] and [d1qt],[d2qt],…,[dkqtqt] are extreme points and extreme directions (if any). Then, the same analysis as that in Section 3 can be applied.Case 2 (MMN with storage).
To formulate the flow problem with storage, we redefine the time-commodity varying decision variable vectors[Yqt] as(45)[Yqt]:=[00⋯Xqt︸q0⋯0Xsqt︸(K+q)0⋯Vq-t︸(2K+2q-1)Vq-t︸(2K+2q)0⋯0]trans⁡,∀q∈K,∀t∈N.Similarly, we change our node-arc incidence matrices with respect to each t and q as
(46)[C]≔[Aqt]≔[00⋯A0⋯0I0⋯-II0⋯0],mmmmmmmmmmmm∀q∈K,∀t∈N,[C-]:=[00⋯00⋯0-I0⋯000⋯0],mmmmmmmmmmmm∀q∈K,∀t∈N.
We should redefine our master matrix as follows:
(47)[M]:=[II⋯I00⋯00000⋯0000⋯000⋯0I-I000⋯0⋱⋱00⋯000⋯00000⋯I-I].
Then, the flow conservation constraints are written as
(48)[M](X100⋮0Xs100⋮0V1+0V1-000⋮00)+[M](0X20⋮00Xs20⋮000V2+0V2-0⋮00)+⋯+[M](00⋮XK000⋮0XsK0000⋮VK+0VK+0)+[M](X110⋮0Xs110⋮0V1+1V1-100⋮00)+[M](0X21⋮00Xs21⋮000V2+1V2-1⋮00)+⋯+[M](00⋮XK100⋮0XsK1000⋮VK+1VK+1)+⋯+[M](X1T0⋮0Xs1T0⋮0V1+TV1-T00⋮00)+⋯+[M](00⋮XKT00⋮0XsKT000⋮VK+TVK+T)=(UV1V2V3⋮VK),[C](X1t0⋮0Xs1t0⋮0V1+tV1-t00⋮00)=[0],[C](0X2t⋮00Xs2t⋮000V2+tV2-t⋮00)=[0],…,[C](00⋮XKt00⋮0XsKt000⋮VK+tVK+t)=[0]mmmmcmm∀t∈N,[C-](X1t-10⋮0Xs1t-10⋮0V1+t-1V1-t-100⋮00)+[C](X1t0⋮0Xs1t0⋮0V1+tV1-t00⋮00)=[0],[C-](0X2t-1⋮00Xs2t-1⋮000V2+t-1V2-t-1⋮00)+[C](0X2t⋮00Xs2t⋮000V2+tV2-t⋮00)=[0],…,[C-](00⋮XKt-100⋮0XsKt-1000⋮VK+t-1VK+t-1)+[C](00⋮XKt00⋮0XsKt000⋮VK+tVK+t)=[0]mmmmmmmmmmmm∀t∈N,[0]≤[00⋯Xqt0⋯0Xsqt0⋯Vq-tVq-t0⋯0]≤[00⋯Uqt0⋯0Usqt0⋯VqVq0⋯0].
To obtain the staircase structure form, we again define
(49)[Cqt]≔[00⋯Cqt︸q0⋯0Csqt︸(K+q)0⋯000⋯0]mmmmmmmmmmmmcmmm∀q∈K,∀t∈N,[Wqt]≔[00⋯Uqt0⋯0Usqt0⋯VqVq0⋯0]mmmmmmmmmmmmmmmm∀q∈K,∀t∈N.
Then the formulation for MMN flow problem with storage becomes
(50)Min∑q∈K∑t∈N[Cqt][Yqt][M][Y10]+[M][Y20]+⋯+[M][YK0]+[M][Y11]+[M][Y21]+⋯+[M][YK1]+⋯+[M][Y1T]+⋯+[M][YKT]=[UV1⋯VK]trans⁡,[C][Yq0]=[0]∀q∈K,[C-][Yq0]+[C][Yq1]=[0]∀q∈K,[C-][Yq1]+[C][Yq2]=[0]∀q∈K,⋮[C-][YqT-1]+[C][YqT]=[0]∀q∈K,[0]≤[Yqt]≤[Wqt]∀q∈K,∀t∈N.
Note that we assume [C]=[Aqt] for every t and q as the network is static over time with respect to any product. If that is not the case, we can use incidence matrix [Aqt] for time period t (for any q) in the staircase form formulation.Case 3 (MMN with storage and spoilage (SS networks)).
To formulate the MMN flow problem with both storage and spoilage, we define[Bqt] as the q-t-node-arc incidence matrix at time t with respect to commodity q. Following the approach for Case 2, it is sufficient to do the following replacement with respect to each t and q as
(51)[00⋯A0⋯0I0⋯-II0⋯0]⟶[00⋯Bqt0⋯0I0⋯-II0⋯0].


## 6. On Applications, Computational Tuning-Testing, and Analysis

To exploit decomposition methods as practical solution approaches, identifying block structures is a building block for our modeling approaches. One method is to plot the nonzero elements in the constraint matrix of a problem instance. One may expect that it would be easy to identify a block structure from a constraint matrix of an arbitrary problem instance, but this is not the case. Even for a relatively small problem instance, it is impossible to pick out a block structure visually from a plot of the nonzero elements, when the rows and columns are not arranged to expose it. A second approach could be to pose the problem of identifying block structure as an optimization problem itself and use optimization software to identify a structure. Various studies have been conducted in this line, but with limited success. One of the other efficient ways to obtain a block structure for an LP model for use is to study the algebraic formulation and generate block structures from the index sets of the model. Structures that rely on the algebraic formulation, rather than a specific data instance, have the key advantage of being scalable, that is, applicable to any data instance of the problem. One may consult Borndörfer et al. [40], Kernighan and Lin [41], and Weil and Kettler [42] to get more information on this matter.Given an arbitrary matrixA, let us consider a pair of partitions of the rows and columns: suppose the rows are divided into T+1 sets {I0,I1,…,IT} and the columns into T′+1 sets {J0,J1,…,JT′}. The rows (columns, resp.) in each set It (Jt′, resp.) need not be adjacent in the matrix. The partitions of the rows and columns clearly impose a partition on the matrix elements. We say that the elements are partitioned into blocks At,t′={at,t′∣t∈Itandt′∈Jt′}, and we refer to the partition of the matrix elements as a block structure. A block structure is thus defined by a pair of partitions on the rows {I0,I1,…,IT} and columns {J0,J1,…,JT′}. Given the constraint matrix A from a large sparse LP problem (like MCDF), it is often possible to choose a pair of partitions so that the nonzero elements of A are connected to relatively few of the blocks in the block structure (and normally these blocks will themselves be sparse).


### 6.1. Block-Angular Structured Systems

The matrix has a set of rowsI0 that connect with all sets of columns and sets of rows It that each connect with a single set of columns Jt. In some practical applications, there is usually an additional set of columns J0 that interacts solely with the row set I0. The block angular structure is one of the most widely recognized structures in decomposition, as it is the basis for the original decomposition method developed by DW. The structure may typically arise where the system being modeled splits naturally into a set of subsystems, for example, a set of facilities/periods, independent apart from a number of global constraints. The variables and constraints referring to a single subsystem t correspond to the rows and columns in sets It and Jt. The constraints that link the subsystems, corresponding to rows I0, may express limits of system-wide scarce resources or ensure that materials balance correctly between the subsystems (e.g., facilities or time periods) and are referred to as global, common, or linking constraints [30–32, 43].


### 6.2. Staircase-Structured Systems

The block staircase structure is best explained as a dynamic (time stage) structure. Let column setJt comprise the columns of variables related directly to time period t. Row set It comprises of the rows for constraints linking the decisions made in period t with those made in the previous period t-1. It is usually the case that staircase structure has a time lag of one, as activities in period t are related directly to those in period t-1, but not to those from earlier periods. However, we mentioned that the production/storage policy of the current period may only be affected by the previous step, and so this attribute (time lag of one) well describe the storage policy needed for MMNF. In general, the staircase structure may have longer time lags. These types of structure can be exploited by nested DW decomposition [30–32, 43].Dantzig-Wolfe decomposition (delayed column generation method), however, is often the best method of choice when dealing with large scale sparse problems of foregoing structures, especially in terms of storage requirements and good-quality suboptimal solutions. It is possible to solve problems of this type by Dantzig-Wolf decomposition using much less memory, without giving up on the solution time, when compared to revised simplex technique [37, 44]. To better illustrate, let us assume an MMN problem with T subproblems, each with n conservation constraints and with a master condition of n0 constraints (all in standard form). The storage requirement of the revised simplex method for the original problem will be O((n0+Tn)2), which is the size of the revised simplex tableau. In contrast, the storage requirements of the decomposition method for the same problem turn out to be O((n0+T)2) for the tableau of the master problem and T×O(n2) for the revised simplex tableau of subproblems (that are easy to solve). Moreover, applying decomposition on a MMN problem maintains only one tableau stored in the main memory at any time. For instance, let T=1000 and n=n0≫T. In this case, the main memory requirement of the decomposition method will be 1,000,000 times smaller than those of the revised simplex method. Therefore, while the memory is a key bottleneck in handling very large LPs, like MMN problems, the decomposition approach dramatically enlarges the range of problem instances that can be solved practically.Note that our approach is a two-phase method. In the first phase, we get thet-q-node-arc incidence matrices, and the second phase is an application of DW method. Evidently, the performance of our algorithm highly depends on the first phase. The overall complexity of the first phase is O(TKnm2) if a simple data structure is used to maintain the factors for each time period with respect to each product. As mentioned, although we consider time-commodity varying network parameters, all the t-q-incidence matrices/transformations can be updated/run off-line and in parallel. Therefore, if the solutions of the first phase are calculated in parallel, we can expect to obtain the optimal solution for any minimum-cost MMN problem in a reasonable amount of time.We demonstrate the computational efficiency of the proposed methods on electricity distribution-transmission networks. The topology of this class of network models has been described in detail in Hosseini [14, 43], so we only give a brief description here. The objective is to determine the production circuit and shipping electricity within the time period so as to minimize the daily cost (the planning horizon time is a day). To illustrate the performance of our approach, we conducted a series of experiments using a set of real data from our case study on real and random complete-bipartite MMNs. We mainly consider a distribution network that is a local, low-voltage part of the electricity system that connects the customers to the long-distance, high-voltage transmission system which, in turn, connects to generating plants.Electric power transmission is the bulk transfer of electrical energy, from generating power plants to electrical substations located near demand centers. This is distinct from the local wiring between high-voltage substations and customers, which is typically referred to as electric power distribution. Transmission lines, when interconnected with each other, become transmission networks. The combined transmission and distribution network is known as the “power grid” or just “the grid.” A wide area synchronous grid, also known as an “interconnection” directly connects a large number of generators delivering AC power with the same relative phase, to a large number of consumers.The distribution network may be viewed as connecting to the transmission system, via a substation, at a single point or source (in reality, it may connect to several points). We consider a number of customers (cities, factories, etc.) with demand for a certain product (that may vary over time) over a specified time period, for example, demand for electricity in our case study. We assume that demand is satisfied by shipping electricity in a fixed number of wires from a number of supply/production sites, where the cost of production is assumed to be time varying (or fixed for each time period). We restrict our attention to the case in which each wire must unload all of its goods (electricity) at the demand site upon arrival.Several parameters must be specified in order to generate the MMN topology, arc capacities and costs, losses and gains, and node storage capacities (if desired). These parameters are random seed, number of periodsT, number of products K, number of supply/demand nodes, indegree and outdegree of each node, minimum and maximum values of arc capacities for each q and t, losses, gains, and costs associated with the arcs, which must be all nonnegative. The cost on each arc (for each time period for each product) is randomly chosen from a uniform distribution between user defined parameter cmin⁡ and cmax⁡, and gain/loss factors for each commodity and period are also chosen from a [0,λmax⁡]-uniform distribution where λmax⁡ should be given for each q. The user also sets the number of time periods, supply nodes, and demand nodes. The demand for each time step with respect to each product q is to be randomly chosen from a uniform distribution between vqmin⁡ and vqmax⁡, and likewise for supply, storage capacity, spoilage, and arc capacities.The experiments are conducted on random multiperiod transportation networks with 26, 40, 46, 62, 74, 82, and 100 nodes and time horizon 13, 20, 23, 31, 37, 41, and 50 for the first two cases (Tables1 and 2) and random networks with 6, 10, 14, 22, 26, 30, and 34 nodes and time horizon 3, 5, 7, 11, 13, 15, and 17 for the last case (Table 3). For each value of n (n=n1+n2 is the total number of generating plants and demand sites), we create distribution networks with different indegree and outdegree in a range from 1 to max⁡{n1,n2}. We denote by δ the density of the network (δ=m/n). The minimum and maximum loss/gains are set to 0.999 and 1.100; rth capacities are set to 50 and 70 and are set to 10 and 100, respectively. For each specific setting of n and m, we have performed several computational tests and analyzed decomposition approach’s sensitivity on a variety of minimum-cost MMN problem instances. We have investigated different implementation ideas and sensitivity of the method to various data parameters, such as the number of arcs, number of time increments, and the congestion in the multiperiod network. We generated many MMN of various sizes, different number of time periods, and different levels of congestion.Table 1
Sizes and computational results for some MMNs with|K|=1 (T=13,20,23,31,37,41,50).
Number of polyhedrals
Number of variables
Number of constraints
Number of nonzeros
Computational time (sec)
Dataset 1
14
5070
4758
677
12.05
Dataset 2
21
17600
16840
1601
17.10
Dataset 3
24
26450
25438
2117
19.80
Dataset 4
32
63426
61566
3845
26.90
Dataset 5
38
106782
104118
5477
32.50
Dataset 6
42
144566
141286
6725
37.10
Dat set 7
51
260000
255100
10001
48.60Table 2
Sizes and computational results for some MMNs with|K|=7 (T=13,20,23,31,37,41,50).
Number of  polyhedrals
Number of variables
Number of constraints
Number of nonzeros
Computational time (sec)
Dataset 1
98
35490
19110
677
70.9
Dataset 2
147
123200
67480
1601
119.2
Dataset 3
168
185150
101890
2117
142.9
Dataset 4
224
443982
246450
3845
225.1
Dataset 5
266
747474
416694
5477
319.9
Dataset 6
294
1011962
565390
3362
764.7
Dataset 7
357
1820000
1020700
10001
2510.2Table 3
Sizes and computational results for some MMNs with|N|=2|K|=2T (T=3,5,7,11,13,15,17).
Number of polyhedrals
Number of variables
Number of constraints
Number of nonzeros
Computational time (sec)
Dataset 1
12
270
162
37
14.7
Dataset 2
30
1750
950
101
37.8
Dataset 3
56
6174
3234
197
68.6
Dataset 4
132
34606
17666
485
134.2
Dataset 5
182
65910
33462
677
114.6
Dataset 6
240
114750
58050
901
145.3
Dataset 7
306
186694
94214
1157
557.3A plot for each different network parameter,δ and T, helps us visualize the effects of time splitting and density on the growth of the problem or the average CPU time. Moreover, Figure 2 shows that execution time increases exponentially in denser networks. The same sensitivity is also observed with respect to the number of products. This behavior is generally related to the increase in the number of subproblems, since any increase in the number of time periods or products will directly affect the numbers/complexity of subproblems, and consequently, the algorithm’s running time increases. Our linear programming models and decomposition methods were implemented in GAMS and solved using CPLEX 7.0 on a personal computer with a 2.13 GHz processor and 4 GB physical RAM. The results of a very small number of runs are summarized in Tables 1–3. Computational experiences shown in the first four rows in any table correspond to some electricity transmission MMNs from our case study.Figure 2
Sensitivity to density of two sample problems: dataset 1 and dataset 2 from Table1.DW also provides a bound on the value of the objective function at each iteration, which allows the quality of the current solution to be assessed, so that the tradeoff between time and quality can be quantified. As a result, the procedure can be terminated, prior to finding an exact optimal solution, with a good estimate of the gap between the value of the current solution and the optimal value.Practical experience suggests that when decomposition is applied on an MCDF problem on an MMN, the algorithm makes substantial progress in the beginning, but the cost improvement becomes very slow later on. However, in spite of possible ill-conditioning of a decomposed problem, it usually turns out that its optimal solution is close to the true optimal solution, and so we may terminate it having a very good suboptimal solution. Figure3 plots the progress of a typical problem when we apply the decomposition method and Figure 4 represents the relative duality gap observed solving some other MMN. The plots show how the objective values and dual bounds converge as the number of iterations (time) increases. Since we are dealing with minimum-cost flow problems, the objective value descends from above and the dual bound ascends from below.Figure 3
Objective and dual bound progress of some decomposition application for a distribution MMN corresponding to dataset 2 from Table2 (the objective value descends from above and the dual bound ascends from below).Figure 4
The relative duality gap observed solving the sample problem in dataset 7 in Table3 (density=8.5, T=17, K=17).


## 6.1. Block-Angular Structured Systems

The matrix has a set of rowsI0 that connect with all sets of columns and sets of rows It that each connect with a single set of columns Jt. In some practical applications, there is usually an additional set of columns J0 that interacts solely with the row set I0. The block angular structure is one of the most widely recognized structures in decomposition, as it is the basis for the original decomposition method developed by DW. The structure may typically arise where the system being modeled splits naturally into a set of subsystems, for example, a set of facilities/periods, independent apart from a number of global constraints. The variables and constraints referring to a single subsystem t correspond to the rows and columns in sets It and Jt. The constraints that link the subsystems, corresponding to rows I0, may express limits of system-wide scarce resources or ensure that materials balance correctly between the subsystems (e.g., facilities or time periods) and are referred to as global, common, or linking constraints [30–32, 43].


## 6.2. Staircase-Structured Systems

The block staircase structure is best explained as a dynamic (time stage) structure. Let column setJt comprise the columns of variables related directly to time period t. Row set It comprises of the rows for constraints linking the decisions made in period t with those made in the previous period t-1. It is usually the case that staircase structure has a time lag of one, as activities in period t are related directly to those in period t-1, but not to those from earlier periods. However, we mentioned that the production/storage policy of the current period may only be affected by the previous step, and so this attribute (time lag of one) well describe the storage policy needed for MMNF. In general, the staircase structure may have longer time lags. These types of structure can be exploited by nested DW decomposition [30–32, 43].Dantzig-Wolfe decomposition (delayed column generation method), however, is often the best method of choice when dealing with large scale sparse problems of foregoing structures, especially in terms of storage requirements and good-quality suboptimal solutions. It is possible to solve problems of this type by Dantzig-Wolf decomposition using much less memory, without giving up on the solution time, when compared to revised simplex technique [37, 44]. To better illustrate, let us assume an MMN problem with T subproblems, each with n conservation constraints and with a master condition of n0 constraints (all in standard form). The storage requirement of the revised simplex method for the original problem will be O((n0+Tn)2), which is the size of the revised simplex tableau. In contrast, the storage requirements of the decomposition method for the same problem turn out to be O((n0+T)2) for the tableau of the master problem and T×O(n2) for the revised simplex tableau of subproblems (that are easy to solve). Moreover, applying decomposition on a MMN problem maintains only one tableau stored in the main memory at any time. For instance, let T=1000 and n=n0≫T. In this case, the main memory requirement of the decomposition method will be 1,000,000 times smaller than those of the revised simplex method. Therefore, while the memory is a key bottleneck in handling very large LPs, like MMN problems, the decomposition approach dramatically enlarges the range of problem instances that can be solved practically.Note that our approach is a two-phase method. In the first phase, we get thet-q-node-arc incidence matrices, and the second phase is an application of DW method. Evidently, the performance of our algorithm highly depends on the first phase. The overall complexity of the first phase is O(TKnm2) if a simple data structure is used to maintain the factors for each time period with respect to each product. As mentioned, although we consider time-commodity varying network parameters, all the t-q-incidence matrices/transformations can be updated/run off-line and in parallel. Therefore, if the solutions of the first phase are calculated in parallel, we can expect to obtain the optimal solution for any minimum-cost MMN problem in a reasonable amount of time.We demonstrate the computational efficiency of the proposed methods on electricity distribution-transmission networks. The topology of this class of network models has been described in detail in Hosseini [14, 43], so we only give a brief description here. The objective is to determine the production circuit and shipping electricity within the time period so as to minimize the daily cost (the planning horizon time is a day). To illustrate the performance of our approach, we conducted a series of experiments using a set of real data from our case study on real and random complete-bipartite MMNs. We mainly consider a distribution network that is a local, low-voltage part of the electricity system that connects the customers to the long-distance, high-voltage transmission system which, in turn, connects to generating plants.Electric power transmission is the bulk transfer of electrical energy, from generating power plants to electrical substations located near demand centers. This is distinct from the local wiring between high-voltage substations and customers, which is typically referred to as electric power distribution. Transmission lines, when interconnected with each other, become transmission networks. The combined transmission and distribution network is known as the “power grid” or just “the grid.” A wide area synchronous grid, also known as an “interconnection” directly connects a large number of generators delivering AC power with the same relative phase, to a large number of consumers.The distribution network may be viewed as connecting to the transmission system, via a substation, at a single point or source (in reality, it may connect to several points). We consider a number of customers (cities, factories, etc.) with demand for a certain product (that may vary over time) over a specified time period, for example, demand for electricity in our case study. We assume that demand is satisfied by shipping electricity in a fixed number of wires from a number of supply/production sites, where the cost of production is assumed to be time varying (or fixed for each time period). We restrict our attention to the case in which each wire must unload all of its goods (electricity) at the demand site upon arrival.Several parameters must be specified in order to generate the MMN topology, arc capacities and costs, losses and gains, and node storage capacities (if desired). These parameters are random seed, number of periodsT, number of products K, number of supply/demand nodes, indegree and outdegree of each node, minimum and maximum values of arc capacities for each q and t, losses, gains, and costs associated with the arcs, which must be all nonnegative. The cost on each arc (for each time period for each product) is randomly chosen from a uniform distribution between user defined parameter cmin⁡ and cmax⁡, and gain/loss factors for each commodity and period are also chosen from a [0,λmax⁡]-uniform distribution where λmax⁡ should be given for each q. The user also sets the number of time periods, supply nodes, and demand nodes. The demand for each time step with respect to each product q is to be randomly chosen from a uniform distribution between vqmin⁡ and vqmax⁡, and likewise for supply, storage capacity, spoilage, and arc capacities.The experiments are conducted on random multiperiod transportation networks with 26, 40, 46, 62, 74, 82, and 100 nodes and time horizon 13, 20, 23, 31, 37, 41, and 50 for the first two cases (Tables1 and 2) and random networks with 6, 10, 14, 22, 26, 30, and 34 nodes and time horizon 3, 5, 7, 11, 13, 15, and 17 for the last case (Table 3). For each value of n (n=n1+n2 is the total number of generating plants and demand sites), we create distribution networks with different indegree and outdegree in a range from 1 to max⁡{n1,n2}. We denote by δ the density of the network (δ=m/n). The minimum and maximum loss/gains are set to 0.999 and 1.100; rth capacities are set to 50 and 70 and are set to 10 and 100, respectively. For each specific setting of n and m, we have performed several computational tests and analyzed decomposition approach’s sensitivity on a variety of minimum-cost MMN problem instances. We have investigated different implementation ideas and sensitivity of the method to various data parameters, such as the number of arcs, number of time increments, and the congestion in the multiperiod network. We generated many MMN of various sizes, different number of time periods, and different levels of congestion.Table 1
Sizes and computational results for some MMNs with|K|=1 (T=13,20,23,31,37,41,50).
Number of polyhedrals
Number of variables
Number of constraints
Number of nonzeros
Computational time (sec)
Dataset 1
14
5070
4758
677
12.05
Dataset 2
21
17600
16840
1601
17.10
Dataset 3
24
26450
25438
2117
19.80
Dataset 4
32
63426
61566
3845
26.90
Dataset 5
38
106782
104118
5477
32.50
Dataset 6
42
144566
141286
6725
37.10
Dat set 7
51
260000
255100
10001
48.60Table 2
Sizes and computational results for some MMNs with|K|=7 (T=13,20,23,31,37,41,50).
Number of  polyhedrals
Number of variables
Number of constraints
Number of nonzeros
Computational time (sec)
Dataset 1
98
35490
19110
677
70.9
Dataset 2
147
123200
67480
1601
119.2
Dataset 3
168
185150
101890
2117
142.9
Dataset 4
224
443982
246450
3845
225.1
Dataset 5
266
747474
416694
5477
319.9
Dataset 6
294
1011962
565390
3362
764.7
Dataset 7
357
1820000
1020700
10001
2510.2Table 3
Sizes and computational results for some MMNs with|N|=2|K|=2T (T=3,5,7,11,13,15,17).
Number of polyhedrals
Number of variables
Number of constraints
Number of nonzeros
Computational time (sec)
Dataset 1
12
270
162
37
14.7
Dataset 2
30
1750
950
101
37.8
Dataset 3
56
6174
3234
197
68.6
Dataset 4
132
34606
17666
485
134.2
Dataset 5
182
65910
33462
677
114.6
Dataset 6
240
114750
58050
901
145.3
Dataset 7
306
186694
94214
1157
557.3A plot for each different network parameter,δ and T, helps us visualize the effects of time splitting and density on the growth of the problem or the average CPU time. Moreover, Figure 2 shows that execution time increases exponentially in denser networks. The same sensitivity is also observed with respect to the number of products. This behavior is generally related to the increase in the number of subproblems, since any increase in the number of time periods or products will directly affect the numbers/complexity of subproblems, and consequently, the algorithm’s running time increases. Our linear programming models and decomposition methods were implemented in GAMS and solved using CPLEX 7.0 on a personal computer with a 2.13 GHz processor and 4 GB physical RAM. The results of a very small number of runs are summarized in Tables 1–3. Computational experiences shown in the first four rows in any table correspond to some electricity transmission MMNs from our case study.Figure 2
Sensitivity to density of two sample problems: dataset 1 and dataset 2 from Table1.DW also provides a bound on the value of the objective function at each iteration, which allows the quality of the current solution to be assessed, so that the tradeoff between time and quality can be quantified. As a result, the procedure can be terminated, prior to finding an exact optimal solution, with a good estimate of the gap between the value of the current solution and the optimal value.Practical experience suggests that when decomposition is applied on an MCDF problem on an MMN, the algorithm makes substantial progress in the beginning, but the cost improvement becomes very slow later on. However, in spite of possible ill-conditioning of a decomposed problem, it usually turns out that its optimal solution is close to the true optimal solution, and so we may terminate it having a very good suboptimal solution. Figure3 plots the progress of a typical problem when we apply the decomposition method and Figure 4 represents the relative duality gap observed solving some other MMN. The plots show how the objective values and dual bounds converge as the number of iterations (time) increases. Since we are dealing with minimum-cost flow problems, the objective value descends from above and the dual bound ascends from below.Figure 3
Objective and dual bound progress of some decomposition application for a distribution MMN corresponding to dataset 2 from Table2 (the objective value descends from above and the dual bound ascends from below).Figure 4
The relative duality gap observed solving the sample problem in dataset 7 in Table3 (density=8.5, T=17, K=17).


## 7. Conclusion

This paper addresses discrete-time dynamic minimum-cost network flow problem on multiperiod multiproduct distribution networks under the generalization of node storage or/and arc spoilage. We develop some decomposition-based approaches to solve the minimum-cost flow problem employing polyhedral sets hidden in the underlying distribution network. Having appropriately defined some matrices, the original problems are reformulated into a series of structurally similar sparse LP subproblems (polyhedrals), which are utilized to develop decomposition-based techniques to decrease storage requirements.



---

*Source: 825058-2014-08-31.xml*