A Novel Monolithic MILP Framework for Lot-Sizing ... - ACS Publications

Aug 28, 2015 - In oil companies, the content of a product in a pipeline is referred to as a batch or lot. In this work, existing batches in a pipeline...
2 downloads 0 Views 7MB Size
Article pubs.acs.org/IECR

A Novel Monolithic MILP Framework for Lot-Sizing and Scheduling of Multiproduct Treelike Pipeline Networks Hossein Mostafaei,*,† Pedro M. Castro,‡ and Alireza Ghaffari-Hadigheh§ †

Young Researchers and Elite Club, Ilkhchi Branch, Islamic Azad University, Ilkhchi, Iran Centro de Matemática Aplicações Fundamentais e Investigaçaõ Operacional, Faculdade de Ciências, Universidade de Lisboa, 1749-016 Lisboa, Portugal § Department of Applied Mathematics, Azarbaijan Shahid Madani University, Tabriz, Iran ‡

ABSTRACT: Detailed scheduling of long-distance multiproduct pipelines has received growing attention in the past few years. It helps the planner to reduce the number of pump and segment switches between active and idle conditions to obtain savings on pump operating and maintenance costs. Most contributions on the detailed scheduling of multiproduct pipelines concern networks with a single straight line. Large-scale pipeline networks, however, usually have a treelike configuration, featuring a mainline and several secondary lines, transporting smaller volumes of refined petroleum products over shorter distances. This work addresses the scheduling of a multiproduct treelike pipeline through a continuous-time mixed integer linear programming (MILP) model that allows the execution of simultaneous deliveries from a unique refinery to multiple downstream terminals so as to get a substantial increase in transportation capacity. Contrary to previous contributions on treelike pipeline systems, the new model solves batch sizing and sequencing problems in a single step, generating a detailed delivery schedule. It also handles flow rate limitations in downstream pipeline segments originated from a lower diameter. Three case studies including one real life problem are used to illustrate the efficacy of the proposed model. depots,10−18 a straight line with multiple refineries and depots19−21 to treelike pipelines22−25 and also mesh structure pipeline networks.26−35 Mirhassani and Jahromi22 presented a continuous time MILP model for the short-term scheduling of oil products distribution from a unique refinery to multiple depots through a treelike pipeline. The model considers the interface and forbidden sequence constraints in any pipeline branch but assumes that a single batch can be injected to the active secondary lines through a pumping run. For the problem of Mirhassani and Jahromi,22 Cafaro and Cerdá23 developed a smaller MILP formulation allowing multiple batches to transfer to the secondary lines, leading to better schedules in a much shorter computational time. While both approaches22,23 provide the optimal sequence of batch injections, none of them determines the optimal sequence of product deliveries to depots so as to generate a detailed delivery schedule. On the other hand, resource-task network (RTN)-based formulations have been shown to be very versatile, successfully handling a variety of real-life petroleum industry problems.36 Castro24 was the first to propose a RTN-based formulation for the short-term scheduling of treelike pipeline with multiple refineries and depots. The challenge was to find an appropriate set of virtual entities including tasks and resources of the resource-task network process representation and linking them in a modular way to the real system entities that are the products, refineries, and depots. Mostafaei et al.25 proposed a continuoustime MILP formulation for the short-term scheduling of treelike

1. INTRODUCTION Common carrier pipelines provide an economic mechanism for transporting refined petroleum products from one place to another. Pipelines operate continuously unlike other transportation modes (e.g., road, railroad, and vessel) and can transport large amounts of petroleum derivatives, such as gasoline, diesel, liquefied petroleum gas (LPG), and jet fuel. Pipelines come in a range of complexity. The simplest one has one refinery, one depot, and a single product to be conveyed, for example, the pipelines used for crude oil movement from coastal ports to inland refineries. At the next level of complexity, pipelines transport different types of products from multiple refineries to several depots and their arrangement ranges from a single straight line to a treelike structure, to a network-like system known as mesh-structure pipeline network. In the latter, a set of pipelines connects multiple input and output terminals with alternative paths between a pair of terminals. In this article, we focus on the multiproduct transportation problem featuring a treelike pipeline with a unique refinery and multiple depots. Unlike other transportation modes, there is no physical barrier between two adjacent products inside a pipeline. Therefore, a mixing area is formed at the interface, that is, the point where the two products meet. The extent of mixing or interface material depends on the pipeline profile (pump rate and length of pipeline) and the physicochemical properties of products. The primary aim of the pipeline scheduling problem is to meet the demands established by the markets, while minimizing the operating cost such as pumping and interface costs. Several authors have presented optimization tools for transporting oil products through pipelines, ranging from the simplest case1 to the complex structure with a straight multiproduct line including a unique refinery and depot,2−9 a single refinery and multiple © XXXX American Chemical Society

Received: April 16, 2015 Revised: July 26, 2015 Accepted: August 28, 2015

A

DOI: 10.1021/acs.iecr.5b01440 Ind. Eng. Chem. Res. XXXX, XXX, XXX−XXX

Article

Industrial & Engineering Chemistry Research

Figure 1. Pipeline transportation problem schematic overview.

depots to extract products from the pipeline at the same time (generating a detailed delivery schedule); (3) considering flow rate limitations in pipeline segments by means of lower and upper bounds (these are due to economic reasons, that is, to reduce pressure loss, which in turn is a function of the physical properties of the fluid and the pipeline diameter); and (4) solving the batch sizing problem together with the detailed scheduling problem in a single step, through a continuous-time monolithic model. The remainder of the paper is structured as follows: Following the problem statement in section 2, we present, in section 3, a novel MILP formulation for scheduling oil products distribution through a treelike network. The validity of the proposed model is tested using three case studies, leading to the results in section 4. Finally, we give the conclusions in section 5.

single-source pipeline systems. As the proposed model allows for a mainline depot to simultaneously extract product, while activating a secondary line, it assumes a fixed flow rate for the secondary lines. Cafaro et al.37 were the firsts to develop an optimization tool for detailed scheduling of straight pipelines featuring a single refinery and multiple depots. The model uses a two level approach, each relying on a continuous time MILP model. The objective function is to minimize the operation costs including flow restart and maintain costs. Later, the same authors developed a continuous-time MINLP formulation to compute the pump power required for transporting products by pipeline.38 The results showed that the proposed MINLP model achieves better pipeline schedules, significantly reducing the total operation costs with regards to their previous contributions.37 A similar pipeline scheduling problem was studied by GhaffariHadigheh and Mostafaei,39 who introduced a monolithic continuous time MILP framework, determining the sequence of batch-injections, and the detailed schedule of product deliveries in a single step. The model can easily handle simultaneous batch removals at depots as well as flow rate limitation in pipeline segments. The results show that allowing for simultaneous deliveries leads to a reduced number of pumping operations and a significant decrease in pipeline operational cost. However, such a tool is not capable of managing detailed scheduling of treelike pipeline networks. To cope with the limitations of previous models dealing with the detailed operation of straight pipelines,37−39 this paper introduces a single-level MILP framework, based on the continuous representation of time and volume domains, for the detailed scheduling of treelike pipeline networks featuring a single refinery and multiple depots. Although previous approaches on treelike pipeline scheduling22,23 also rely on a single step, these are better classified as planning approaches since they just provide an aggregate schedule defining: (i) the sequence of product batches to be injected at the refinery, (ii) the lot sizes and the start/end injecting times, and (iii) the set of aggregate product deliveries to be extracted by depots. They do not consider the sequence nor timing of batch removal at depots (detailed schedule) neither do they enforce flow rate constraints in pipeline segments. In response to this need, this work presents a novel MILP formulation that is capable of (1) detecting the pipeline segments where the flow is resumed or stopped (as indicated by Hane and Ratliff,10 most pump operating costs are associated with flow restarts in idle pipeline segments); (2) allowing multiple

2. PROBLEM DEFINITION We consider a unidirectional (flow from left to right) treelike pipeline system conveying refined petroleum products from a unique refinery to several output terminals (depots). The treelike pipeline network is composed of a set of pipelines with a trunk line, known as mainline (pipeline n0), and several secondary lines (pipelines n1, n2, ...) emerging from the mainline at different sites (branch points). Assuming that a segment of any pipeline (mainline or its branches) ends with a depot, or branch point, we arrive at the general system representation given in Figure 1. Note that to use the same index (s) for depots and segments, a branch point n with no real depot is regarded as dummy depot (in Figure 1, there is no depot in branch point n1 ). By doing so, the number of segments and depots located on pipeline network will be identical (vs,n ∈ {0,1} is used for indicating the state (active or idle) of segment sn, whereas xs,n ∈ (0,1) denotes the state of depot sn). Therefore, the real treelike pipeline system depicted in Figure 1 can be described as the artificial network given in Figure 2. Given are the following: (i) the length of planning horizon (hmax) measured in hours; (ii) the set of oil products to be conveyed (P); (iii) the volumetric coordinate of any branch point n (σn) measured in m3; (iv) the volumetric coordinate of any depot sn(τs,n) measured in m3; (v) the flow rate range limitation in any segment sn measured in m3/h; (vi) the initial product inventory at the refinery (ref tp) measured in m3; (vii) the volume of any pipeline (PVn) measured in m3; (viii) the demand of depot sn for product p within the time horizon (Demandp,s,n) measured B

DOI: 10.1021/acs.iecr.5b01440 Ind. Eng. Chem. Res. XXXX, XXX, XXX−XXX

Article

Industrial & Engineering Chemistry Research

Figure 2. Network for pipeline system in Figure 1. Every branch point features a depot, which may be real or dummy.

in m3; (ix) the Boolean matrix of possible/forbidden sequences between two pairs of products (Touchp,p′) In oil companies, the content of a product in a pipeline is referred to as a batch or lot. In this work, existing batches in a pipeline at the start of the scheduling horizon are considered as old batches (Iold n ). The sets of old batches in the pipeline system old depicted in Figure 2 are as follows: Iold n0 = {B1, B2, ..., B6}, In1 = new new old {B4}, and In2 = {B1, B2, B3}. The set I (In0 ) is the set of new batches that will be injected into the mainline during the planning horizon. In turn, Inew n is the set of new batches that can be entered in the secondary line n. For Instance, if two new lots (Inew= {B7, B8}) are pumped into the mainline as shown in new Figure 2, then, Inew n1 = {B5,..., B8} and In2 = {B4,..., B8}. new old Moreover, the set In given by In = In ∪ In is the set of lots to have traveled along pipeline n during the planning horizon. On the other hand, the set Isn = {i ∈ In| ILPVi+1,n < τs,n} is the set of lots that can be diverted into depot sn through the scheduling horizon, where ILPVi,n is the upper location of old batch i in pipeline n. For example, for pipeline n0 and depot s4n0 in Figure 2, old we have I0 = Inew 0 ∪ In0 = {B7, B8} ∪ {B1, B2, ..., B6} = {B1, B2, ..., s4 B8} and In0 = {i ∈ In0| ILPVi+1,n0 < τs,n0} = {B3, B4, ..., B8},

3. OPTIMIZATION MODEL In this section, we present the proposed MILP formulation for the short-term scheduling of treelike pipeline systems. Different from our previous work in Mostafaei et al.25 we now: (i) allow pipeline segments to operate in continuous flow rate, rather than discrete flow rate; (ii) allow not only two but multiple depots to simultaneously receive products from the pipeline through any pumping operation; (iii) allow multiple secondary lines to receive material from the mainline through any pumping operation rather than a single one; and (iv) consider the aggregate, as well as the detailed, delivery schedule. The nomenclature can be found at the end of the paper. 3.1. Product Allocation to Batches. Every batch can be only assigned to a single product. Let us define the binary variable yi,p to allocate refined petroleum products to batches. If yi,p = 1, the batch i ∈ Inew transports some amount of product p (PPVi,p,k) injected to the mainline through one or more pumping runs. In P turn, yno = 1(∑p∈Pyi,p = 0) indicates that lot i is a fictitious batch i and should be placed at the end of ordered set I.

respectively. Note that depot s4n0 can only receive products from batch B3, B4, ..., B8 during the planning horizon (see Figure 2) since batches B1 and B2 have already passed. Remark 1: There will be no product delivery to a dummy depot through the planning horizon, and so for a dummy depot sn, we will have Isn = ⌀. Thus, considering dummy depots at branch points has no influence in model size. 2.1. Model Assumptions. The continuous-time mathematical formulation is based on the following assumptions (operating rules): (1) All branches emerge from the mainline, and so, there are no branches in secondary lines (same as in Mirhassani and Jahromi,22 Cafaro and Cerdá,23 and Mostafaei et al.25). (2) Every pipeline segment is completely full of products at any time. (3) During a pumping run, at most a single batch can be entered into any pipeline. (4) Since there is no separation device between two adjacent products, a contamination material (interface) is formed at the interface of two products. Because of quality reasons, some product sequences are forbidden. (5) During a pumping run, at most a single batch removal can be accomplished in any depot. (6) The flow-rate range at pipeline segments varies with the pipeline diameter and the operating characteristics of valves.

P yino ⇒ yino P , ∀ i ∈ I new −1

(1b)

3.2. Pumping Sequence. Pumping operations at the refinery are chronologically ordered through a finite set K = {k1, k2, ..., k|K|} with the pumping run km being performed after the preceding one km−1 has finished. Since STk and Lk are the starting time and the length of pumping run k ∈ K, respectively, we have the equations STk ≥ STk − 1 + Lk − 1 , ∀ k ∈ K (k ≥ 2)

(2)

ST1 = stf

(3)

∑ Lk ≤ hmax k∈K

(4)

where stf stands for the starting time of the first pumping run and hmax is the maximum length of the planning horizon. 3.3. Location of Lots in Mainline and Branches. Batch i + 1 will always move right after batch i in the mainline and also in its branches, so the upper coordinate of batch i ∈ In (batch i in pipeline n) at the end of pumping run k (LPVi,k,n) will be equal to the total volume of batches i, i + 1, ... in the pipeline n at time STk+1 (see Figure 3). C

DOI: 10.1021/acs.iecr.5b01440 Ind. Eng. Chem. Res. XXXX, XXX, XXX−XXX

Article

Industrial & Engineering Chemistry Research

Figure 3. Upper and lower coordinates of batch i ∈ In at the end of pumping run k.

Figure 4. Simple example illustrating eq 10a.

LPVi , k , n =

can never surpass the total volume of that product in refinery tanks (ref tp). Hence,

∑ SPVi′ ,k ,n , ∀ i ∈ In , k ∈ K , n ∈ N i ′∈ In i≤i′

(5)

∑ PPVi ,p,k = IPVi ,k ,n , ∀ i ∈ In (i ≥ |Inold|), k ∈ K

Notice that by subtracting the continuous variable SPVi,k,n ≥ 0 (the size of batch i ∈ In at the end of pumping run k) from both sides of eq 5, we have LPVi,k,n − SPVi,k,n = ∑i+1≤i′SPVi′,k,n = LPVi+1,k,n; that is, LPVi+1,k,n presents both the upper coordinate of batch i + 1 and lower coordinate of batch i at time STk+1. 3.4. Batch Injection at Refinery. The refinery injects a single batch into the mainline during any pumping operation. Let binary variable λi,k denote that pumping run k injects batch i into the mainline. If λi,k = 1, the lower coordinate of batch i touches the origin of mainline (LPVi+1,k−1,n0 = 0) and some portion of batch i (IPVi,k,n0) is pumped into the mainline at a given flow rate max [vrmin n0 ; vrn0 ] during the length of pumping run k. If instead batch λno = 1 (∑i∈In0 λi,k = 0), the pumping run k is a fictitious k operation and should be placed at the end of set K to reduce solution degeneracy. We have thus the following disjunction.40

batch λkno ⇒ λkno batch , ∀ k ∈ K −1

0

0

0

(7)

p∈P

∑ ∑ PPVi ,p,k ≤ reftp , ∀ p ∈ P (8)

i ∈ In0 k ∈ K

Because of operational reasons, products should be pumped into max the pipeline at a feasible range. Assuming that [ratePmin p , ratePp ] is the acceptable range for injection rate of product p into the pipeline, we have the following inequality: ratePpmin· Lk − PPV pmax(2 − yi , p − λi , k ) ≤ PPVi , p , k ≤ ratePpmax · Lk + IPVnmax (2 − yi , p − λi , k ), ∀ 0 i ∈ In0(i ≥ |Inold |), p ∈ P , k ∈ K 0

(9)

3.5. Supplying Material to Output Terminals (Depots). Through pumping run k, an active depot sn can receive material from batch i ∈ Isn only if the upper and lower coordinates of batch i at two consecutive runs k and (k−1) satisfy the following condition: LPVi+1,k,n ≤ τs,n ≤ LPVi,k−1,n. Let binary variable xi,s,k,n indicate the status of depot sn during pumping run k. If xi,s,k,n = 1, depot sn extracts a certain amount of batch i ∈ Isn (DPVi,s,k,n) limited by the volume that is accessible by the depot sn through batch pumping run k (see Figure 4). In turn, the condition xno = s,k,n 1(∑i∈Isn xi,s,k,n = 0) denotes that the depot sn is inactive during pumping run k, and no material can be transferred to that depot, that is, DPVi,s,k,n = 0 for all i ∈ Isn. We have thus the following disjunction:

(6b)

If batch i ∈ Inew is never pumped into the mainline, it will be a fictitious batch. Hence

Since every batch can at most transport a single product, the size of product p contained in lot i discharged to depot s ∈ Sn during the pumping run k, computed through the non-negative continuous variable PDPVi,p,s,k,d, will be equal to DPVi,s,k,n. Moreover, the total volume of product p discharged to depot sn should be as large as Demandp,s,n, a known datum indicating the total demand of product p to be satisfied at depot sn. Note that it is

Note that by eq 6c, the assignment of product p to new lot i implies that some portion of batch i is injected into the mainline through at least one pumping run. Since each injected batch can only carry a single product, the value of lot i containing product p during any run will be equal to IPVi,k,n0. Moreover, the size of product p injected into the mainline during the horizon length D

DOI: 10.1021/acs.iecr.5b01440 Ind. Eng. Chem. Res. XXXX, XXX, XXX−XXX

Article

Industrial & Engineering Chemistry Research n

possible that some demands cannot be satisfied within the planning horizon, with slack variable Backp,s,n standing for the unsatisfied demand of product p at depot sn in eq 12. This will have a unit penalty cost in the objective function to prioritize demand satisfaction.

∑ PDPVi ,p,s ,k ,d = DPVi ,s ,k ,n , ∀ i ∈

Ins ,

∑ s ∈ Sn0



IPVi , k , n ≤ (σn − LPVi + 1, k − 1, n0)

n ′∈ N n ′≥ 1

σn≥ τs , n 0

+ IPVi , k , n0 + PVn0(1 − ui , k , n), ∀ i ∈ In0 , k ∈ K , n ∈ N (16)

s ∈ Sn , k

s

p∈P

∈ K, n ∈ N

DPVi , s , k , n0 +



(11)

DPVi , s ′ , k , n0+

s ′∈ Sn0

∑ ∑ PDPVi ,p,s ,k ,d



IPVi , k , n ≤ (τs , n0 − LPVi + 1, k − 1, n0)

n ∈ N (n ≥ 1) σn≤ τs , n 0

+ IPVi , k , n0 + PVn0(1 − xi , s , k , n0), ∀ i ∈ In0 , k

k ∈ K i ∈ In

∈ K , s ∈ Sn0

≥ Demandp , s , n − Back p , s , n , ∀ p ∈ P , s ∈ Sn , n ∈ N

(17)

3.8. Size of Batch i. In this section the size of batch i at the end of run k in pipeline n (SPVi,k,n) is computed. 3.8.2. Size of Batch i in Mainline. Through the execution of pumping run k, the value of continuous variable SPVi,k,n0 can be increased by extracting an additional amount of material coming from the refinery, and decreased by transferring some amount of products to depots and secondary lines.

(12)

3.6. Supplying Material to Secondary Lines. Through pumping run k, a batch i ∈ In can be transferred to a secondary line n only if the coordinates of this batch at the two runs k and (k − 1) satisfy the following condition: LPVi+1,k−1,n0 ≤ σn ≤ LPVNi,k,n0, where σn is the volumetric coordinate of branch point n from the mainline origin. Let us define the binary variable ui,k,n to choose the active secondary line and the batch for pumping run k ∈ K. The condition ui,k,n = 1 denotes that a positive volume of batch i ∈ In(IPVi,k,n), restricted by (σn − LPVNi+1,k−1,n0) + IPVi,k,n0, is transferred into secondary line n at an admissible flow rate, during the activity length LNn,k of secondary line n. If instead batch = 1(∑i∈In ui,k,n ≤ 0), the secondary line n is inactive uno k,n through run k, and no material can be transferred to that line. We have thus the following disjunction:



SPVi , k , n0 = SPVi , k − 1, n0 + IPVi , k , n0 −

DPVi , s , k , n0

s ∈ Sn0





IPVi , k , n , ∀ i ∈ In0 , k ∈ K (k ≥ 1) (18)

n ∈ N (n ≥ 1)

3.8.2. Size of Batch i in Secondary Lines. The size of continuous variable SPVi,k,n (n ≠ n0) can be obtained from its size at time STk by adding the volume injected from the mainline during run k and subtracting the amount of material transferred to depots s ∈ Sn. SPVi , k , n = SPVi , k − 1, n + IPVi , k , n −

∑ DPVi ,s ,k ,n , ∀ i ∈ In , k s ∈ Sn

∈ K (k ≥ 1), n ∈ N (n ≠ n0)

3.9. Mass Balance. According to the assumption 2, any pipeline n is completely full with products at any time meaning that at the end of pumping run k, the total volume of lots moving along pipeline n must be equal to PVn.

A new batch i ∈ Inew cannot be transferred to a secondary line n if it still has not been injected into the mainline at the origin.

∑ ∑ ui ,k′ ,n ≤ |K ||N | ∑ k ′∈ K n ∈ N k ′< k

∑ SPVi ,k ,n = PVn , ∀ k ∈ K , n ∈ N

λi , k ′ , i ∈ I new , k ∈ K (14)

Furthermore, the total volume of material that has entered in the pipeline should be equal to the total volume discharged from that line.

3.7. Constraints on Supplying Material from Batch i ∈ In0 to Mainline Depots and Secondary Lines. Since simultaneous deliveries are permitted, it is possible that several depots and secondary lines receive product from batch i ∈ In0 during the execution of pumping run k. In this case, the total volume transferred from batch i ∈ In0 to depots s ∈ Sn0 and secondary lines n ∈ N (n ≠ n0) can never exceed the volume that is accessible by depots s ∈ Sn0 and secondary lines n ∈ N at time STk, plus the total volume injected to batch i ∈ In0 from refinery. We have thus the following equations:

∑ s ∈ Sn0

DPVi , s , k , n0 +

∑ IPVi ,k ,n i ∈ In0

+

0

=

∑ ∑ DPVi ,s ,k ,n

0

s ∈ Sn0 i ∈ In0



∑ IPVi ,k ,n , ∀ k ∈ K

n ∈ N (n ≥ 1) i ∈ In0

(21)

∑ IPVi ,k ,n = ∑ ∑ DPVi ,s ,k ,n , ∀ k ∈ K , n ∈ N (n ≠ n0) i ∈ In

s ∈ Sn i ∈ In

(22)

3.10. Interface and Forbidden Sequences. Since there is no separating device between lots of refined products pumped into the pipeline, there is always some product mixing between two adjacent batches. The blended material is called interface and is usually directed to a separate tank with a few costly operations

∑ IPVi ,k ,n n∈N n≥1

≤ SPVi , k − 1, n0 + IPVi , k , n0 , ∀ i ∈ In0 , k ∈ K

(20)

i ∈ In

k ′∈ K k ′≤ k

(19)

(15) E

DOI: 10.1021/acs.iecr.5b01440 Ind. Eng. Chem. Res. XXXX, XXX, XXX−XXX

Article

Industrial & Engineering Chemistry Research

Figure 5. Interface material between two products.

Figure 6. Simple example illustrating eq 26.

batches move between two real batches in a branchline since some mainline batches are never diverted in that branchline. Therefore, it is possible that there is no interface volume between two adjacent batches i and (i − 1) in a branchline. For example, in Figure 5, batch B2 has no interface with batch B3, while it has an interface with batch B4. To account for these potential events, we consider the following constraint for computing the interface volume between batches inside the a secondary line n ∈ N:

being needed to recover the products. In this section, we detect the interface volume between lots of products. 3.10.1. Interface and Forbidden Sequence in the Mainline. At any time, batch im will be moving immediately after the batch im−1 along pipeline n. By eq 6c, every inputted batch into the mainline contains a product and empty batches are never injected into the mainline. Consequently, batch i ∈ In0 will have interface with two batches: (i + 1) and (i − 1). Assuming that MIXp,p′,n0 is the interface volume between products p and p′ in the mainline (see Figure 5), the size of variable INTFi,p,p′,n0, indicating the interface volume generated by injecting batch ip in the mainline cannot exceed MIXp,p′,n0.

INTFi , p , p ′ , n ≥ MIX p , p ′ , n(yi , p + yi ′ , p ′ + zi , n + zi ′ , n i−1





zi ″ , n−Touchp , p ′ − 2) (26)

i ″≥ i ′+ 1

yi , p ∧ yi − 1, p ′ ⇒ YiMIX , p , p ′ , n0 , ∀ i ∈ In0(i > first(In0)), p , p′ ∈ P

where i,i′ ∈ In(i′ < i, first(Iold n ) < i), p, p′ ∈ p, n ∈ N(n ≠ n0). Forbidden sequences between oil products should also be considered in secondary lines, as imposed by eq 27.

(23a)

i−1

zi , n + zi ′ , n ≤

For quality reasons, some products should not be successively pumped into the pipeline. These restrictions are considered by the binary parameter Touchp,p′. If product p can touch product p′ inside the line, then Touchp,p′ = 1; otherwise Touchp,p′ = 0. Since batch i is pumped into the mainline right after batch (i−1), we have the following condition:

zi ″ , n − yi , p − yi ′ , p ′ + Touchp , p ′ + 3

i ″∈ In i ″≥ i ′+ 1

(27)

where i ∈ i ∈ In(i′ < i), p, p′ ∈ P, n ∈ N(n ≠ n0). To correctly compute the interface volume between batches inside a secondary line n through eq 26, the parameter MIXp,p′,n should be equal to zero when Touchp,p′ = 0. To clarify this, let us consider an illustrative example as shown in Figure 6. From this Figure, the batch B3 has not touched batch B1 in secondary line n, and so eq 26 should result in INTFB3,P1,P3,n = 0 for i = B3 and i′ = B1 transporting two incompatible products P1 and P3 (TouchP1,P3 = 0), respectively. If MIXP1,P3,n > 0, then by eq 26, and for i = B3 and i′ = B1, we will have INTFB3,P1,P3,n ≥ B2 MIXP1,P3,n(yB3,P1 + yB1,P3 + zB3,n + zB1,n−∑i″≥B2 zi″,n − TouchP3,P1 − 2) = MIXP1,P3,n(1 + 1 + 1 + 1 − 1 − 0 − 2) = MIXP1,P3,n, and therefore INTFB3,P1,P3,n = MIXP1,P3,n > 0 meaning that there is an interface volume between two batches B3 and B1 that is a contradiction. Note that by eqs 27 and 24a, two batches with incompatible products can never touch each other inside the pipeline. 3.11. Activated and Stopped Volume of Pipeline. Let us define the 0−1 variable vs,k,n to denote that segment s of pipeline n (hereafter segment sn) is active during pumping run k whenever Inew n ,

¬Touchp , p ′ ⇒ ¬ (yi , p ∧ yi − 1, p ′), ∀ i ∈ I new , p ∈ P , p′ ∈ P (24a)

3.10.2. Interface and Forbidden Sequence in the Secondary Lines. Let the 0−1 variable zi,n = 1 denote that a portion of i ∈ In is diverted to secondary line n. Then, there is at least a pumping run k ∈ K transferring batch i ∈ In to secondary line n (∑k∈K ui,k,n ≥ 1). In contrast, if zi,n = 0, the batch i ∈ Inew n is never branched into secondary line n during the scheduling horizon. We have thus the following constraint: zi , n ≤



∑ ui ,k ,n ≤ |K |zi ,n , ∀ i ∈ Innew , n ∈ N(n ≠ n0) k∈K

(25)

A major issue in treelike pipeline scheduling problems is the interface detection between two different products inside the branchlines. Unlike the mainline, it may happen that some empty F

DOI: 10.1021/acs.iecr.5b01440 Ind. Eng. Chem. Res. XXXX, XXX, XXX−XXX

Article

Industrial & Engineering Chemistry Research

Figure 7. Initial linefill for the treelike pipeline considered in Example 1.

Table 1. Product Supplies, Demands, and Pumping/Interface Costs for Example 1 ref tp (m3)

CPp ($/m3)

ref

ref

N1

N2

N3

P1

P2

P3

P4

P5

P6

9000

12 5.5 10 12.5 8 5.5

3000

2000 2000 2000

3000 3000 1000 4000

0 24/1 25/1 20/1 × ×

25/1 0 30/1 × × 36/1

24/1 30/1 0 26/1 21/1 21/1

20/1 × 26/1 0 40/1 32/1

× × 21/1 40/1 0 22/1

× 36/1 21/1 32/1 22/1 0

P1 P2 P3 P4 P5 P6

10000 5000 8000 5000

demand (m3)

3000 2000 2000

CIFp,p′(102$/m3)/MIXp,p′,n (m3)

vs,k,n = 1; otherwise vs,k,n = 0 and there is no flow motion. Clearly, segment sn will be idle if the previous segment (s − 1)n is inactive. On the other hand, the first segment of any pipeline n will be active when that segment receives some material from the origin of pipeline n and vice versa. vs , k , n ≤ vs − 1, k , n , ∀ s ∈ Sn , k ∈ K (k ≥ 1), n ∈ N

AVk , n ≥ (vs , k , n − vs + 1, k , n) ·τs , n , ∀ k ∈ K , n ∈ N , s ∈ Sn

(28)

(33)

∑ λi ,k , ∀ k ∈ K , s = first(Sn )

vs , k , n0 =

AVk , n ≤ τs , n + (PVn − τs , n)(1 − vs , k , n + vs + 1, k , n), ∀

0

i ∈ In0

vs , k , n =

variable AVk,n. If vs,k,n = 1 and vs+1,k,n = 0, the active volume of pipeline n will be τs,n, meaning that the active volume of pipeline n is the volume from the origin of pipeline n to the end of furthest active segment sn. We have thus the following constraints:

(29)

k ∈ K , n ∈ N , s ∈ Sn

∑ ui ,k ,n , ∀ k ∈ K , n ∈ N(n ≠ n0), s = first(Sn)

During any run k, the active volume of secondary line n is equal to zero, if the first segment of that line is inactive.

i ∈ In

(30)

AVkn ≤ PVnvs , k , n , ∀ k ∈ K , n ∈ N (n ≠ n0), s = first(Sn)

All mainline segments between refinery and branch point n are active when the first segment of branchline n is activated. ρn vs , k , n ≤



(35)

By computing the value of AVk,n at the end of two successive pumping runs k and (k − 1), the model can easily minimize the activated volume of any pipeline n during the scheduling horizon which is equivalent to minimizing the number of flow resumes in idle pipeline segments. In fact, the activated volume of pipeline n by run k (ACVk,n) is the idle volume of the pipeline n, where the flow is resumed at run k.

vs ′ , k , n0 , ∀ k ∈ K , n ∈ N (n ≠ n0), s

s ′∈ Sn0 τs ′ , n≤ σn

= first(Sn)

(31)

where the parameter ρn is the number of mainline segments between refinery and branch point n. All pipeline segments s ∈ Sn between the origin of pipeline n and depot sn are active when depot sn is extracting some material from the pipeline.

ACVk , n ≥ AVk , n − AVk − 1, n , ∀ k ∈ K , n ∈ N

(36)

In some cases, it is desirable to minimize the stopped volume of pipelines during the planning horizon. The stopped volume of pipeline n by run k (STVk,n) is the active volume of pipeline n where the flow should be stopped at run k. Hence

∑ xi ,s ,k ,n ≤ vs ,k ,n , ∀ s ∈ Sn , k ∈ K , n ∈ N i ∈ Ins

(34)

(32)

STVk , n ≥ AVk − 1, n − AVk , n , ∀ k ∈ K , n ∈ N

The main purpose of this work is minimizing the number of flow resumes in the idle pipeline segments during the planning horizon, which is the main contributor to pump operating and maintenance costs. We first need to determine the active volume of any pipeline n at the end of pumping run k through continuous

(37)

3.12. Flow Rate Limitation on Pipeline Segments. For operational reasons, the flow rate at active segments sn featuring max vs,k,n = 1 should be maintained in admissible range [vsmin s,n ; vss,n ]. For the first segment of any pipeline n, the streamflow is regulated G

DOI: 10.1021/acs.iecr.5b01440 Ind. Eng. Chem. Res. XXXX, XXX, XXX−XXX

Article

Industrial & Engineering Chemistry Research Table 2. Computational Results of Example 1

SD SD SD SD PD PD PD PD a

runs |K|

CPU (s)

C. var.

B. var.

eqs

B.ora (%)

pump cost ($)

interf. cost ($)

restart cost ($)

on/off cost ($)

zRelax

zMILP (US$)

int. gapb

11 12 13 14c 8 9 10 11c

121.6 157.2 212.2 247.3 87.3 112.6 141.2 176.8

2836 3075 3314 3553 2119 2358 2597 2836

434 469 504 539 329 364 399 434

4397 4646 4895 5144 3974 4230 4486 4742

3.7 0 0 0 3.7 0 0 0

236 500 252 500 248 500 248 500 251 500 250 500 248 500 248 500

20 200 20 200 20 200 20 200 20 200 20 200 20 200 20 200

21 000 29 000 21 000 21 000 11 000 17 000 17 000 17 000

110 120 130 130 80 90 100 100

246 599 246 388 246 209 246 055 247 552 247 164 246 853 246 599

477 810 301 820 289 830 289 830 482 780 287 790 285 800 285 800

0.483 0.224 0.150 0.150 0.487 0.141 0.137 0.137

Back order. bIntegrality gab = (zMILP − zRelax)/zMILP, cOne of the pumping operations is dummy at the optimum.

Figure 8. Best detailed schedule for Example 1 in SD mode.

by pump rate constraints. For other segments the two following restrictions are included:

max LNkvssmin , n − IPVn (1 − vs , k , n) ≤

∑ ∑ DPVi ,s ′ ,k ,n s ′∈ Sn i ∈ In s ′≥ s

max Lk vssmin , n0 − IPVn0 (1 − vs , k , n0) ≤

∑ ∑ s ′∈ Sn0 i ∈ In0

DPVi , s



, k , n0



LNkvssmax ,n ,

∀ s ∈ Sn , k ∈ K , n ∈ N (n ≠ n0)

(39)

s ′≥ s

+

∑ ∑ n∈N σn≥ τs , n 0

i ∈ In0

IPVi , k , n ≤ Lk vssmax , n0 , ∀ s ∈ Sn0 , k ∈ K

3.13. Initial Conditions. The following constraints account (38)

for the pipeline initial status: H

DOI: 10.1021/acs.iecr.5b01440 Ind. Eng. Chem. Res. XXXX, XXX, XXX−XXX

Article

Industrial & Engineering Chemistry Research

Figure 9. Best detailed schedule for example 1 in PD mode.

Figure 10. Pipeline network of Example 2.

SPVi , k , n = ISPVi , n , ∀ i ∈ Inold , n ∈ N , k = 0

(40)

zi , n = 1, ∀ i ∈ INn , n ∈ N (n ≠ 0)

(42)

LPVi , k , n = ILPVi , n , ∀ i ∈ Inold , n ∈ N , k = 0

(41)

yi , p = 1, ∀ i ∈ Inold , p = Pi

(43)

I

DOI: 10.1021/acs.iecr.5b01440 Ind. Eng. Chem. Res. XXXX, XXX, XXX−XXX

Article

Industrial & Engineering Chemistry Research Table 3. Product Supplies, Demands, and Costs for Example 2

P1 P2 P3 P4 P5 P6

ref tp(m3)

CPp($/m3)

ref

ref

6000 8000 10000 18000 18000 18000

8.25 12.6 15.2 15.8 8.25 6.40

demand (102 m3) N1

20 30 40

CIFp,p′(102$/m3)/MIXp,p′,n (m3)

N2

N3

N4

N5

N6

P1

P2

P3

P4

P5

P6

10 30 10 20 20

10 20

20 20

35

30 20 40

0 80/1 × 60/1 60/1 30/1

80/1 0 40/1 35/1 × 80/1

× 40/1 0 20/1 × 50/1

60/1 35/1 20/1 0 80/1 ×

60/1 × × 80/1 0 30/1

30/1 80/1 50/1 × 30/1 0

20 20

15

Figure 11. Best detailed schedule for Example 2 in PD mode.

order, flow restarts/stoppages, and ON/OFF pump switchings costs

3.14. Objective Function. The objective is to minimize the total operating costs including pumping, interface, back J

DOI: 10.1021/acs.iecr.5b01440 Ind. Eng. Chem. Res. XXXX, XXX, XXX−XXX

Article

Industrial & Engineering Chemistry Research Table 4. Computational Results of Examples 2 and 3

a

case

mode

runs |K|

CPU (s)

C. var.

B. var.

eqs

B.or (%)

zRelax

zMILP (US$)

Int. gap

Opt. gap (%)

Ex. 2 Ex. 2 Ex. 2 Ex. 3 Ex. 3 Ex. 3

SD PD PD SD PD PD

19 9 10a 20 12 13a

54000 402.42 514.04 54000 468.23 574.15

7332 3652 4020 5541 3453 3714

1175 585 644 1181 725 782

10427 6436 6763 8968 5864 6239

32.15 0.0 0.0 24.63 0.0 0.0

332 627 332 644 332 564 744 556 744 660 744 580

5 543 780 547 250 547 250 5 610 799 833 480 833 480

0.940 0.392 0.392 0.867 0.106 0.106

21.45 0.0 0.0 8.42 0.0 0.0

One of the pumping operations is dummy at the optimum.

Figure 12. Refined products pipeline network for Example 3.

Table 5. Product Supplies, Demands, Related Pumping, and Interface Costs for Example 3 ref tp(m3)

CPp($/m3)

ref

ref

N1

N2

N3

N4

N5

N6

P1

P2

P3

P4

36 000 32 000 16 000 42 000

8.0 7.5 8.0 7.0

52 39

48 34 23 31

53 47 30 12

67 24 30

88 29 38

63 132 73

0 60/60 90/60 ×

60/60 0 100/65 100/77

90/60 100/65 0 140/20

× 100/77 140/20 0

P1 P2 P3 P4

min z =

demand (102 m3)

89

Intel i5-4210U CPU (1.7 GHz with Turbo Boost up to 2.7 GHz) with 6 GB of RAM running Windows 7 (64-bit). 4.1. Example 1. The main purpose of the small network in Example 1 is to show the computational advantages of parallel deliveries (PD) against single deliveries (SD). In single delivery mode (enforced by making ∑n∈N ∑s∈Sn ∑i∈Isn xi,s,k,n ≤ 1, for all k), one depot is connected to the pipeline at any given time, whereas in the parallel delivery mode, multiple depots can simultaneously receive material from the pipeline. The pipeline topography, its initial state (batches volume and product type at the start time of planning horizon), maximum and minimum batch sizes inputted/diverted to any pipeline/depot through any run, depot, and branching point locations, as well as the flow rate range at pipeline segments, are shown in Figure 7. Products available in the refinery, demands in depots N1, N2, and N3 for the next 8 days (hmax= 192 h), the pumping costs at the refinery and interface costs between products are all listed in

∑ ∑ ∑ CPp·PPVi , p, k k ∈ K i ∈ In0 p ∈ P

+

∑∑∑ ∑

CIFp , p ′·INTFi , p , p ′ , n

n ∈ N i ∈ I p ∈ P p ′∈ P

+

∑ ∑ ∑ CBp, s , n ·Backp, s , n n∈N s∈S p∈P

+

∑ ∑ (CA n·ACVk , n + CSn·STVk , n) + ∑ ∑ CF ·λi , k n∈N k∈K

CIFp,p′($/m3)/MIXp,p′,n (m3)

i ∈ In 0 k ∈ K

(44)

4. RESULTS AND DISCUSSION Three examples are solved to illustrate the capabilities of the new continuous-time formulation for the short-term scheduling of treelike pipeline systems, one of them involving an industrial case study. All MILP problems were solved by AIMMs 3.9/CPLEX 12.1 in parallel deterministic mode (using up to 6 threads) on an K

DOI: 10.1021/acs.iecr.5b01440 Ind. Eng. Chem. Res. XXXX, XXX, XXX−XXX

Article

Industrial & Engineering Chemistry Research

Figure 13. Optimal pipeline schedule for Example 3 in PD mode using single level model.

Table 1. Product transitions denoted with an × in Table 1 are forbidden. For instance, product P1 can only move immediately after products P2, P3, or P4. Moreover, the following values for the parameters in the objective function have been used: CBp,s,n = 200 $/m3, CF = 10.0 $/run, CAn = 1.0 $/m3, and CSn = 0.0 $/m3.

Remark 2: The number of pumping runs is a function of product demand and the policy of product delivery, that is, PD or SD mode. Since the parallel delivery mode is far more efficient, the value of |K| in PD mode (|K|PD) will be generally lower than |K|SD. On the other hand, since all injections may not be L

DOI: 10.1021/acs.iecr.5b01440 Ind. Eng. Chem. Res. XXXX, XXX, XXX−XXX

Article

Industrial & Engineering Chemistry Research

Figure 14. Flow-rate profile in every pipeline segment of Example 3.

performed at maximum volume (IPVmax n0 ), |K| will be greater than max ⌈Dem/(IPVn0 )⌉, where ⌈.⌉ is the ceiling function. Since in SD mode just one depot extracts products from the pipeline through a pumping run, the cardinality of set K cannot be less than the number of nonzero elements aDM of the demand matrix Demandp,s,n.

From Table 1, at least 11 product deliveries should be carried out in SD mode to satisfy the depots requirements through the planning horizon (aDM = 11 ≤ |K|SD). Therefore, we start to solve Example 1 with |K| = 11. The optimal solution is found in 121.60 CPUs and corresponds to a total cost of $477,810 (see Table 2). Interestingly, it is not possible to completely fulfill all product demands (3.7% back order). This is no longer the case for |K| = 12, for which the total operating cost decreases to $301 820. Since all runs have been carried out, the cardinality of set K was raised to 13 and a new best schedule worth $289 830 was found in 212.21 CPUs, of which $248 500 correspond to pumping costs. Specifying an additional run (|K| = 14) leads to no improvement in the optimal schedule (at the optimum, the last is actually a dummy run, that is, ∑i∈In0 λi,14 = 0). The optimal SD schedule for Example 1 with |K| = 13 is shown in Figure 8. To solve Example 1 in PD mode, we first set |K|PD = ⌈Dem/ (IPVmax n0 )⌉ = ⌈27 000/4000⌉ = 7 to find an optimal solution with

⎡ Dem ⎤ ⎢ ⎥ ≤ |K |PD ≤ |K |SD ⎢ IPVnmax ⎥ 0

aDM ≤ |K |SD

We start by solving the problem with |K| equal to the lower bound, and then, following single increments in |K|, keep solving it in until the objective function stops improving or the computational time becomes too long. M

DOI: 10.1021/acs.iecr.5b01440 Ind. Eng. Chem. Res. XXXX, XXX, XXX−XXX

Article

Industrial & Engineering Chemistry Research

Figure 15. Aggregate pipeline schedule for Example 3 using upper level model.

The best parallel delivery schedule for Example 1 and |K| = 10 is shown in Figure 9 and features a makespan equal to 154.17 h. Compared with the best SD schedule, pipeline running time has been reduced by 29.17 h. Of the 10 pumping runs in Figure 8, eight send products to more than one depot simultaneously (from time 30.00 to 154.17 h). Though the interface and pumping costs are similar (see Table 2), the pipeline restart and ON/OFF pump switching costs are lower in PD mode. The computational statistics for Example 1 can also be found in Table 2. Due to the lower number of pumping operations required in PD mode, the model size decreases substantially, and consequently good feasible schedules are more rapidly discovered. 4.2. Example 2. The treelike pipeline system studied in Example 2 involves 3 pipelines conveying six products (P1, P2, P3, P4, P5, and P6) to six depots over a 10-day time horizon (hmax= 240 h). The pipeline structure and relevant data are given in Figure 10. Besides the data in Figure 10, we need to know the product inventory at the refinery, products demand, pumping and interface costs (Table 3). Moreover, the following values for

Table 6. Comparison between Single and Two Level Approaches upper level model no. of pumping runs no. of continuous variables no. of binary variables no. of constraints CPU (s) activated volume (m3)

lower level model

proposed single level model

10 2768

24 6281

12 3714

531 4601 164.18 -

1381 9090 412.60 118400

782 5864 468.23 39200

high operational cost (7.4% back order). Back order is reduced for |K| to 8, but demands are fully satisfied only for |K| = 9. The operational cost of $287 790 can be further reduced to $285 800 after making |K|PD = 10. All pumping runs have been carried out (∑i∈In0 λi,k = 1 for all k = 1, 2, ..., 10) and the computational time is 141.20 CPUs. No further improvements are possible. N

DOI: 10.1021/acs.iecr.5b01440 Ind. Eng. Chem. Res. XXXX, XXX, XXX−XXX

Article

Industrial & Engineering Chemistry Research

Figure 16. Detailed pipeline schedule for Example 3 using lower level model.

the parameters in the objective function have been used: CBp,s,n = 200 $/m3, CF = 100.0 $/run, CAn = 0.2 $/m3, and CSn = 0.0 $/m3. The best PD schedule for Example 2 is depicted in Figure 11, and is found in 402.42 CPUs (see Table 4). It features 9 pumping operations, with 8 of them simultaneously sending products to

more than one depot (the seventh pumping run, see the eighth line of Figure 10, is the only one diverting product to a single terminal). From the product requirements in Table 3, at least 19 product deliveries should be accomplished in SD mode. By adopting |K| = 19, the size of the resulting MILP problem O

DOI: 10.1021/acs.iecr.5b01440 Ind. Eng. Chem. Res. XXXX, XXX, XXX−XXX

Article

Industrial & Engineering Chemistry Research

and therefore all pipeline segments can operate in a flow rate in the range 300−800 m3/h. By fixing the aggregate batch sizes, the starting and completion times, and solving the second step (detailed scheduling) using the proposed single level model given in section 3, the best detailed schedule is found in 412.60 s of CPU time (note that the lower level model no longer needs to account for the interface and forbidden sequence constraints). Therefore, the two level approach leads to a total CPU times of 576.78 s (164.18 + 412.60) compared with 468.23 s for the proposed single level model. The optimal detailed schedule using the lower level model that is shown in Figure 16 includes 24 pumping runs. Of them, 17 pumping runs simultaneously send product to more than one depot. Analysis of Figure 16 leads to the conclusion that there are more flow resumes during the planning horizon. As a result, the pipeline activated volume obtained by the lower level model is 118 400 m3 compared with the 39 200 m3 achieved by the proposed monolithic approach.

inevitably becomes larger and a very poor solution of $5 543 780 (32.15% backorder) is obtained up to the maximum computational time of 54 000 CPUs. 4.3. Example 3. Example 3 is an industrial size case taken from Mostafaei et al.25 The pipeline configuration, its initial state, maximum and minimum batch sizes inputted/diverted to any pipeline/depot through any run, depot and branching point locations and the flow rate range at pipeline segments are shown in Figure 12. A set of 8 segments identified by the code numbers # 01, # 02, # 03, # 04, # 05, # 11, # 12, and # 21 are connected by a treelike configuration. The pipeline system should transport four oil products from a unique refinery to six depots (N1−N6). Product demands at the depots, product inventories at the refinery, product pumping and interface costs are all listed in Table 5. Data have been received from the National Iranian Oil Pipeline and Telecommunication Company (NIOPTC) and correspond to operations carried out from fourth to 11th February 2015. For quality reasons, product P1 should not have an interface with product P4 (denoted with an × in Table 5). Moreover, the following values for the parameters in the objective function have been used: CBp,s,n = 200 $/m3, CF = 0.0 $/run, CAn = 0.4 $/m3, and CSn = 0.0 $/m3. The optimal PD schedule for Example 3 is found in 468.23 CPUs (see Table 4) and is shown in Figure 13. It includes 12 pumping operations, supplying products to more than one depot at the same time. From Figure 12, the optimal schedule includes: (a) a single flow restart in the mainline segments at the first operation k1, (b) two flow resumes in the first segment of branchline n1 at operations k1 and k11 and two flow restarts in the second segment of the same branchline at pumping runs k2 and k11, and (c) just one flow resume in the second secondary line at time 40.44 h. Figure 13 shows the flow-rate variation in every pipeline segment during the planning horizon. A brief look at Figure 14 confirms that the streamflow rate remains within the specified range in each pipeline segment over the pipeline running time. In particular, the first segment is fed by a stable pump-rate. At least 20 pumping operations must be carried out in single delivery mode (SD) to meet products requirements at depots. Adopting |K| = 20 leads to a very poor solution of $5 610 799 (24.63% backorder and 8.42% optimality gap) up to 54000 CPUs (see Table 4). With parallel product deliveries, however, the value of the objective function drops to $833 480. Cafaro et al.17 proposed a two-step hierarchical approach for detailed scheduling of a multiproduct pipeline with single refinery and several depots. At the upper level, the optimal sequence of lot injection, the size and the destination for each product, and the batch feature (product and pump rate) are specified (the aggregate schedule) whereas the lower level determines the sequence and the size of batches discharged to the selected output terminals during every pumping operation as well as the times at which pumps should be turned ON or OFF (the detailed schedule). In order to compare the solution quality and the computational burden of both the single level and the two-step approaches, we have solved Example 3 with the aggregate MILP model (given in Appendix B) and then, after fixing the aggregate batch sizes, we generated a detailed delivery schedule (lower level stage) with starting and completion times. The best aggregated plan that was obtained is shown in Figure 15. It was found in 164.18 CPU s and includes 10 pumping runs (see Table 6). Note that no flow rate restrictions are specified for active pipeline segments during any injection,

5. CONCLUSIONS This paper has addressed the scheduling problem of a multiproduct pipeline network featuring a treelike configuration with a single refinery and multiple depots. The pipeline system consists of a mainline for conveying high-volume of oil products over long distances and secondary lines for transporting lower volumes over shorter distances. A novel continuous-time MILP model has been proposed that, unlike previous contributions, is able to handle parallel deliveries to multiple depots and account for flow rate constraints emanating from different segment diameters. Through the solution of a real-life industrial problem and two additional test problems, we have shown that allowing the execution of simultaneous deliveries permits to reduce the number of pumping operations, flow restarts, ON/OFF costs, and more importantly, to satisfy depot requirements faster. Furthermore, the proposed model is significantly more efficient computationally because of the lower number of pumping runs required to find the optimal solution, which has a major influence on problem size. Future works will be focused on generalizing the proposed formulation to treelike pipeline systems with multiple refineries and dual purpose depots alternating as input and output nodes throughout the time horizon.



APPENDIX A

Converting Disjunctions to MILP Format

The mathematical formulation in section 3 features disjunctions and logic propositions. Constraints inside disjunctions have been reformulated using either the convex-hull or big-M standard approaches. Logic propositions have been converted step by step into conjunctive normal form and then represented as linear inequalities with the help of a truth table. Further information can be found in Castro and Grossmann.40 Below, we show the remaining MILP constraints of the model, with the number (1-1a) indicating that we are dealing with the first constraint resulting from disjunction 1a.

∑ yi ,p ≤ 1, ∀ i ∈ I new p∈P

PPV pminyi , p ≤

(1-1a)

∑ PPVi ,p,k ≤ PPVpmaxyi ,p , ∀ i ∈ I new , p ∈ P k∈K

(2-1a) P

DOI: 10.1021/acs.iecr.5b01440 Ind. Eng. Chem. Res. XXXX, XXX, XXX−XXX

Article

Industrial & Engineering Chemistry Research

∑ yi ,p ≤ ∑ yi− 1,p , ∀ i ∈ I new p∈P

vrnminLNn , k ≤ (1-1b)

p∈P

i ∈ In

∈ N (n ≠ n0)

LPVi + 1, k − 1, n0 ≤ PVn0(1 − λi , k ), ∀ i ∈ In0(i ≥ |Inold 0 |), k ∈ K (1-6a)

IPVnmin λi , k 0

≤ IPVi , k , n0 ≤

IPVnmax λi , k 0

i ∈ In0 i ≥|Inold| 0

IPVi , k , n0

≤ Lk ≤

vrnmin 0

∑ i ∈ In0 i ≥|Inold 0|

vrnmin 0

∈ N (n ≠ n0)

i ∈ In0(i > first(In0)), p , p′ ∈ P

(3-6a)

(1-23a,b)

yi , p + yi − 1, p ′ ≤ 1 + Touchp , p ′ , ∀ i ∈ I new , p ∈ P , p′ ∈ P (1-6b)

i∈I

∑ yi ,p ≤ ∑ λi ,k , ∀ i ∈ I new p∈P

(7-13a)

INTFi , p , p ′ , n0 ≥ MIX p , p ′ , n0(yi , p + yi − 1, p ′ − 1), ∀

,∀k∈K

∑ λi ,k ≤ ∑ λi ,k− 1, ∀ i ∈ I new i∈I

∑ ui ,k ,n), ∀ k ∈ K , n i ∈ In

∀ i ∈ In 0 , k ∈ K

IPVi , k , n0

(6-13a)

LNn , k ≤ Lk ≤ LNn , k + hmax (1 −

(2-6a)



∑ IPVi ,k ,n ≤ vrnmaxLNn,k , ∀ k ∈ K , n



(1-6c)

k∈K

B1. Product Allocation to Batches.

(1-10a)

LPVi + 1, k , n ≤ τs , n + (PVn − τs , n)(1 − xi , s , k , n), ∀ i ∈ ∈ Sn , k ∈ K , n ∈ N

Ins ,

APPENDIX B

MILP Model for Generating an Aggregated Plan (Upper Level Model)

∑ xi ,s ,k ,n ≤ 1, ∀ s ∈ Sn , k ∈ K , n ∈ N i ∈ Ins

(1-24a)

∑ yi ,p ≤ 1, ∀ i ∈ I new

s

p∈P

PPV pminyi , p ≤

(2-10a)

k∈K

LPVi , k − 1, n ≥ τs , nxi , s , k , n , ∀ i ∈ Ins , s ∈ Sn , k ∈ K , n ∈ N

∑ yi ,p ≤ ∑ yi− 1,p , ∀ i ∈ I new

(3-10a)

p∈P

max DPVsmin , n xi , s , k , n ≤ DPVi , s , k , n ≤ DPVs , n xi , s , k , n

(4-10a)

STk ≥ STk − 1 + Lk − 1 , ∀ k ∈ K (k ≥ 2)

DPVi , s , k , n ≤ (τs , n − LPVi + 1, k − 1, n) + IPVi , k , n + (PVn − τs , n)(1 − xi , s , k , n), ∀ i ∈

p∈P

B2. Pumping Sequence.

, ∀ i ∈ Ins , s ∈ Sn , k ∈ K , n ∈ N

Ins ,

∑ PPVi ,p,k ≤ PPVpmaxyi ,p , ∀ i ∈ I new , p ∈ P

ST1 = stf

s ∈ Sn , k

∈ K, n ∈ N

∑ Lk ≤ hmax (5-10a)

k∈K

B3. Location of Lots in Mainline and Branches.

∑ ui ,k ,n ≤ 1, ∀ k ∈ K , n ∈ N(n ≠ n0)

∑ SPVi′ ,k ,n , ∀ i ∈ In , k ∈ K , n ∈ N

LPVi , k , n =

(1-13a)

i ∈ In

i ′∈ In i≤i′

LPVi + 1, k , n0 ≤ σn + (PVn0 − σn)(1 − ui , k , n), ∀

B4. Batch Injection at Refinery.

i ∈ In(i ≥ |Inold|), k ∈ K , n ∈ N (n ≠ n0)

LPVi , k − 1, n0 ≥ σnui , k , n , ∀ i ∈ In(i ≥

|Inold|),

(2-13a)

LPVi + 1, k − 1, n0 ≤ PVn0(1 − λi , k ), ∀ i ∈ In0(i ≥ |Inold |), k ∈ K 0

k ∈ K, n

∈ N (n ≠ n 0 )

IPVnmin λi , k ≤ IPVi , k , n0 ≤ IPVnmax λ i , k ∀ i ∈ In 0 , k ∈ K 0 0

(3-13a)



IPVnminui , k , n ≤ IPVi , k , n

i ∈ In0

IPVi , k , n0 vrnmin 0



≤ Lk ≤

i ∈ In0

IPVi , k , n0 vrnmin 0

≤ IPVnminui , k , n , ∀ i ∈ In(i

i ≥|Inold| 0

≥ |Inold|), k ∈ K , n ∈ N (n

∑ λi ,k ≤ ∑ λi ,k− 1, ∀ i ∈ I new

≠ n0)

i∈I

(4-13a)

+ (PVn − σn)(1 − ui , k , n), ∀ i ∈ In(i ≥ ∈ N (n ≠ n 0 )

i ≥|Inold| 0

i∈I

∑ yi ,p ≤ ∑ λi ,k , ∀ i ∈ I new

IPVi , k , n ≤ (σn − LPVNi + 1, k − 1, n0) + IPVi , k , n0 |Inold|),

,∀k∈K

p∈P

k ∈ K, n

k∈K

∑ PPVi ,p,k = IPVi ,k ,n , ∀ i ∈ In (i ≥ |Inold|), k ∈ K 0

(5-13a)

0

0

p∈P

Q

DOI: 10.1021/acs.iecr.5b01440 Ind. Eng. Chem. Res. XXXX, XXX, XXX−XXX

Article

Industrial & Engineering Chemistry Research s

∑ ∑ PPVi ,p,k ≤ reft p , ∀ p ∈ P



i ∈ In0 k ∈ K

DPVi , s ′ , k , n0+

s ′∈ Sn0



IPVi , k , n ≤ (τs , n0 − LPVi + 1, k − 1, n0)

n ∈ N (n ≥ 1) σn≤ τs , n 0

B5. Supplying Material to Output Terminals (Depots).

+ IPVi , k , n0 + PVn0(1 − xi , s , k , n0), ∀ i ∈ In0 , , k

max DPVsmin , n xi , s , k , n ≤ DPVi , s , k , n ≤ DPVs , n xi , s , k , n

∈ K , s ∈ Sn0

, ∀ i ∈ Ins , s ∈ Sn , k ∈ K , n ∈ N

B8. Size of Batch i in Mainline and Its Secondary Line. LPVi + 1, k − 1, n ≤ τs , n + (PVn − τs , n)(1 − xi , s , k , n), ∀ i ∈ Ins , s



DPVi , s

′,k ,n



∑ IPVi ,k ,n , ∀ i ∈ In , k ∈ K (k ≥ 1) 0

n∈N

≤ (τs , n − LPVi + 1, k − 1, n) + IPVi , k , n

SPVi , k , n = SPVi , k − 1, n + IPVi , k , n −

∑ DPVi ,s ,k ,n , ∀ i ∈ In , k s ∈ Sn

+ (PVn − τs , n)(1 − xi , s , k , n), ∀ i ∈ Ins , s ∈ Sn , k ∈ K , n

∈ K (k ≥ 1), n ∈ N (n ≠ 0)

∈N

B9. Mass Balance.

∑ PDPVi ,p,s ,k ,d = DPVi ,s ,k ,n , ∀ i ∈ In , s ∈ Sn , k ∈ K , n

∑ SPVi ,k ,n = PVn , ∀ k ∈ K , n ∈ N

p∈P

i ∈ In

∈N

∑ IPVi ,k ,n

0

=

i ∈ In0

∑ ∑ PDPVi ,p,s ,k ,d ≥ Demandp,s ,n − Backp,s ,n , ∀ k ∈ K i ∈ In

i ∈ In

∑ ∑ IPVi ,k ,n , ∀ n ∈ N i ∈ In0

s ∈ Sn i ∈ In

INTFi , p , p

≥ MIX p , p , n0(yi , p + yi − 1, p − 1), ∀ ′ , n0 ′ ′ i ∈ In0(i > first(In0)), p , p′ ∈ P

i ∈ In(i ≥ |Inold|), k ∈ K , n ∈ N (n ≠ n0)

LPVi , k , n0 ≥ σnui , k , n , ∀ i ∈ In(i ≥ |Inold|), k ∈ K , n

yi , p + yi − 1, p ′ ≤ 1 + Touchp , p ′ , ∀ i ∈ I new , p ∈ P , p′ ∈ P

∈ N (n ≠ n 0 )

zi , n ≤

LPVnminui , k , n ≤ IPVi , k , n ≤ IPVnminui , k , n , ∀ i ∈ In(i ≥ |Inold|), k

∑ ui ,k ,n ≤ |K |zi ,n , ∀ i ∈ Innew , n ∈ N(n ≠ 0) k∈K

∈ K , n ∈ N (n ≠ n 0 )

INTFi , p , p ′ , n ≥ MIX p , p ′ , n(yi , p + yi ′ , p ′ + zi , n + zi ′ , n

IPVi , k , n ≤ (σn − LPVNi + 1, k − 1, n0) + IPVi , k , n0

i−1





+ (PVn − σn)(1 − ui , k , n), ∀ i ∈ In(i

zi ″ , n − Touchp , p ′ − 2), ∀ i , i′

i ″≥ i ′+ 1

≥ |Inold|), k ∈ K , n ∈ N (n

∈ In(i′ < i , first(Inold) < i), p , p′ ∈ P , n ∈ N (n ≠ n0)

≠ n 0)

i−1

zi , n + zi ′ , n ≤

B7. Constraints on Supplying Material from Batch i ∈ In0 to Mainline Depots and Secondary Lines. DPVi , s , k , n0 +

s ∈ Sn0

∑ IPVi ,k ,n ≤ SPVi ,k− 1,n

0

i∈

+ IPVi , k , n0 , ∀

Innew ,

i′ ∈ In(i′ < i), p , p′ ∈ P , n ∈ N (n ≠ n0)

B11. Initial Conditions.

n≥1

SPVi , k , n = ISPVi , n , ∀ i ∈ Inold , n ∈ N , k = 0

n



zi ″ , n − yi , p −yi ′ , p ′ + Touchp , p ′ + 3, ∀

i ″≥ i ′+ 1

n∈N

DPVi , s , k , n0 +

∑ i ″∈ In

i ∈ In 0 , , k ∈ K , n ∈ N

s∈S

+

B10. Interface and Forbidden Sequences.

LPVi + 1, k − 1, n0 ≤ σn + (PVn0 − σn)(1 − ui , k , n), ∀

n0 σn≥ τs , n 0

0

∑ IPVi ,k ,n = ∑ ∑ DPVi ,s ,k ,n , ∀ k ∈ K , n ∈ N(n ≠ 0)

B6. Supplying Material to Secondary Lines.



∑ ∑ DPVi ,s ,k ,n s ∈ Sn0 i ∈ In0

k∈K

p ∈ P , s ∈ Sn , n ∈ N



DPVi , s , k , n0

s ∈ Sn0

LPVi , k , n ≥ τs , nxi , s , k , n , ∀ i ∈ Ins , s ∈ Sn , k ∈ K , n ∈ N

s ′∈ Sn



SPVi , k , n0 = SPVi , k − 1, n0 + IPVi , k , n0 −

∈ Sn , k ∈ K , n ∈ N

LPVi , k , n = ILPVi , n , ∀ i ∈ Inold , n ∈ N , k = 0

PVi , k , n≤I(σn − LPVi + 1, k − 1, n0)

n ′∈ N

zi , n = 1, ∀ i ∈ INn , n ∈ N (n ≠ 0)

n ′≥ 1

yi , p = 1, ∀ i ∈ Inold , p = Pi

+ IPVi , k , n0 + PVn0(1 − ui , k , n), ∀ i ∈ In0 , k ∈ K , n ∈ N R

DOI: 10.1021/acs.iecr.5b01440 Ind. Eng. Chem. Res. XXXX, XXX, XXX−XXX

Article

Industrial & Engineering Chemistry Research

σn = volumetric coordinate of branch point n from the mainline origin (m3) τs,n = volume of pipeline n from its origin to the end of segment sn (m3) Touchp,p′ = 1 if product p can touch product p′; otherwise 0 MIXp,p′,n = size of interface between products p and p′ in pipeline n (m3) ISPVi,n = size of old batch i in pipeline n at time stf (m3) 3 ILPVi,n = upper coordinate of old batch i ∈ Iold n at time stf (m ) 3 Demandp,s,n = demand of product p at depot sn (m ) reftp = inventory of product p at refinery through planning horizon (m3) CIFp,p′ = unit reprocessing cost of interface volume between products p and p′ ($/m3) CPp = unit pumping cost of product p at refinery ($/m3) CBp,s,n = unit backorder cost for tardily satisfying product p at depot sn ($/m3) CF = fixed cost for fulfilling a pumping run ($/run) CAn = unit restart cost of flow in pipeline n ($/m3) CSn = unit stoppage cost of flow in pipeline n ($/ m3)

B12. Objective Function. min z =

∑ ∑ ∑ CPp·PPVi ,p,k k ∈ K i ∈ In0 p ∈ P

+

∑∑∑ ∑

CIFp , p ′·INTFi , p , p ′ , n

n ∈ N i ∈ I p ∈ P p ′∈ P

+

∑ ∑ ∑ CBp,s ,n ·Backp,s ,n n∈N s∈S p∈P



AUTHOR INFORMATION

Corresponding Author

*E-mail: [email protected]. Notes

The authors declare no competing financial interest.



ACKNOWLEDGMENTS P.C. gratefully acknowledges financial support from Fundaçaõ para a Ciência e Tecnologia (FCT) through the Investigador FCT 2013 program. The authors are grateful to the two anonymous reviewers for their constructive, insightful comments and suggestions. The authors remain responsible for any omissions and inaccuracies.



Non-negative Continuous Variables

INFTi,p,p′,n = interface volume in pipeline n between batch ip and (i − 1)p′ (m3) Backp,s,n = backorder of product p at depot sn (m3) AVk,n = active volume of pipeline n through the run k (m3) ACVk,n = activated volume of pipeline n through the run k (m3) STVk,n = stopped volume of pipeline n through the run k (m3) IPVi,k,n = volume of batch i ∈ In (i ≥ |Iold n |) injected to pipeline n during run k (m3) PPVi,p,k = volume of batch i ∈ In0 (i ≥ |Iold n0 |) containing product p injected into the mainline during run k (m3) DPVi,s,k,n = volume of batch i ∈ Isn transferred to depot sn during run k (m3) PDPVi,p,s,k,n = volume of batch i ∈ Isn conveying product p transferred to depot sn during run k (m3) STk/Lk = starting time/length of pumping run k (h) LNk,n = activity length of secondary line n during run k (h) SPVi,k,n = size of batch i ∈ In at the end of pumping run k (m3) LPVi,k,n = upper coordinate of batch i ∈ In at the end of pumping run k (m3)

NOMENCLATURE

Sets

K = set of pumping operations indexed by k, k′ = 0, ..., |K| N = set of pipelines in network indexed by n, n′ = 0, ..., |N| I = set of product batches indexed by i, i′, i″ = 1, ..., |I| Inew = set of new batches to be pumped into the mainline during the scheduling horizon (Inew ⊂ I) Sn = set of depots or segments in pipeline n indexed by s,s′ Iold n = set of old batches in pipeline n at the start time of scheduling horizon Inew n = set of new batches to be moved in pipeline n during the scheduling horizon In = set of batches to be moved in pipeline n during the new scheduling horizon (I ⊇ In = Iold n ∪ In ) Isn = set of batches in pipeline n that can be received by depot sn P = set of oil products indexed by p, p′ = 1,..., |P| Pi = product contained in the old batch i INn = set of nonempty old batches existent in branchline line n at the start time of planning horizon (INn ⊂ In)

0−1 Variables

Parameters

hmax = horizon length in hours stf = start time of planning horizon measured in hours max vsmin s,n /vss,n = minimum/maximum flow rate in segment sn 3 (m /h) max vrmin = minimum/maximum flow rate in the first n /vrn segment of pipeline n (m3/h) max ratePmin = minimum/maximum injection rate of p , ratePp product n into the pipeline (m3/h) max IPVmin n /IPVn = minimum/maximum batch volume that can be transferred to the first segment of pipeline n (m3) max PPVmin p /PPVp = minimum/maximum size of product p that can be injected into the mainline (m3) max DPVmin s,n /DPVs,n = minimum/maximum batch volume that can be transferred to depot sn (m3) PVn = volume of pipeline n (m3) ρn = number of mainline segments between refinery and branch point n



λi,k = 1 if refinery injects some portion of batch i (i ≥ |Iold n0 |) into the mainline through run k; 0 otherwise ui,k,n = 1 if secondary line n receives some portion of batch i (i ≥ |Iold n |) through run k; 0 otherwise zi,n = 1 if some portion of batch i is diverted to secondary line n; 0 otherwise xi,s,k,n = 1 if depot sn receives some portion of batch i ∈ Isn through run k; 0 otherwise vs,k,n = 1 if segment sn is active through run k; 0 otherwise yi,p = 1 if batch i conveys product p; 0 otherwise

REFERENCES

(1) Shah, N. Mathematical Programming Techniques for Crude Oil Scheduling. Comput. Chem. Eng. 1996, 20, 1227−1232. (2) Magatão, L.; Arruda, L. V. R.; Neves, F., Jr A Mixed Integer Programming Approach for Scheduling Commodities in a Pipeline. Comput. Chem. Eng. 2004, 28, 171−185. (3) Relvas, S.; Matos, H. A.; Barbosa-Póvoa, A. P. F. D.; Fialho, J.; Pinheiro, A. S. Pipeline Scheduling and Inventory Management of a Multiproduct Distribution Oil System. Ind. Eng. Chem. Res. 2006, 45, 7841−7855. S

DOI: 10.1021/acs.iecr.5b01440 Ind. Eng. Chem. Res. XXXX, XXX, XXX−XXX

Article

Industrial & Engineering Chemistry Research (4) Relvas, S.; Matos, H. A.; Barbosa-Póvoa, A. P. F. D.; Fialho, J. Reactive Scheduling Framework for a Multiproduct Pipeline with Inventory Management. Ind. Eng. Chem. Res. 2007, 46, 5659−5672. (5) Cafaro, D. C.; Cerdá, J. Efficient Tool for the Scheduling of Multiproduct Pipeline and Terminal Operation. Ind. Eng. Chem. Res. 2008, 47, 9941−9956. (6) Relvas, S.; Barbosa-Póvoa, A. A. P. F. D.; Matos, H. A. Heuristic Batch Sequencing on a Multiproduct Oil Distribution System. Comput. Chem. Eng. 2009, 33, 712−730. (7) Magatão, L.; Arruda, L. V. R.; Neves, F. A., Jr. A Combined CLPMILP Approach for Scheduling Commodities in a Pipeline. J. Scheduling 2011, 14, 57−87. (8) Relvas, S.; Boschetto Magatão, S. N.; Barbosa-Póvoa, A. A. P. F. D.; Neves, F., Jr. Integrated Scheduling and Inventory Management of an Oil Products Distribution System. Omega 2013, 41, 955−968. (9) Cafaro, D. C.; Cerdá, J. Rigorous Formulation for the Scheduling of Reversible-Flow Multiproduct Pipelines. Comput. Chem. Eng. 2014, 61, 59−76. (10) Hane, C. A.; Ratliff, H. D. Sequencing Inputs to MultiCommodity Pipelines. Annals of Operations Research 1995, 57, 73−101. (11) Sasikumar, M.; Prakash, P. R.; Patil, S. M.; Ramani, S. PIPES: A Heuristic Search Model for Pipeline Schedule Generation. KnowledgeBased Systems 1997, 10, 169−175. (12) Rejowski, R. J.; Pinto, J. M. Scheduling of a Multiproduct Pipeline System. Comput. Chem. Eng. 2003, 27, 1229−1246. (13) Rejowski, R. J.; Pinto, J. M. Efficient MILP Formulations and Valid Cuts for Multiproduct Pipeline Scheduling. Comput. Chem. Eng. 2004, 28, 1511−1528. (14) Cafaro, D. C.; Cerdá, J. Optimal Scheduling of Multiproduct Pipeline Systems Using a Non-Discrete MILP Formulation. Comput. Chem. Eng. 2004, 28, 2053−2068. (15) Cafaro, D. C.; Cerdá, J. Dynamic Scheduling of Multiproduct Pipelines with Multiple Delivery Due Dates. Comput. Chem. Eng. 2008, 32, 728−753. (16) Rejowski, R., Jr.; Pinto, J. M. A Novel Continuous Time Representation for the Scheduling of Pipeline Systems with Pumping Yield Rate Constraints. Comput. Chem. Eng. 2008, 32, 1042−1066. (17) Cafaro, V. G.; Cafaro, D. C.; Mendéz, C. A.; Cerdá, J. Detailed scheduling of operations in single-source refined products pipelines. Ind. Eng. Chem. Res. 2011, 50, 6240−6259. (18) Mostafaei, H.; Ghaffari-Hadigheh, A. R. A General Modeling Framework for the Long-Term Scheduling of Multiproduct Pipelines with Delivery Constraints. Ind. Eng. Chem. Res. 2014, 53, 7029−7042. (19) Cafaro, D. C.; Cerdá, J. Optimal Scheduling of Refined Products Pipelines with Multiple Sources. Ind. Eng. Chem. Res. 2009, 48, 6675− 6689. (20) Cafaro, D. C.; Cerdá, J. Operational Scheduling of Refined Products Pipeline Networks with Simultaneous Batch Injections. Comput. Chem. Eng. 2010, 28 (10), 1687−1704. (21) Mostafaei, H.; Alipouri, Y.; Shokri, J. A Mixed-Integer Linear Programming for Scheduling a Multi-Product Pipeline with DualPurpose Terminals. Computational and Applied Mathematics 2014, DOI: 10.1007/s40314-014-0162-7. (22) Mirhassani, S. A.; Fani Jahromi, H. Scheduling Multi-Product Tree-Structure Pipelines. Comput. Chem. Eng. 2011, 35, 165−176. (23) Cafaro, D. C.; Cerdá, J. A Rigorous Mathematical Formulation for the Scheduling of Tree-Structure Pipeline Networks. Ind. Eng. Chem. Res. 2011, 50, 5064−5085. (24) Castro, P. M. Optimal Scheduling of Pipeline Systems with a Resource-Task Network Continuous -Time Formulation. Ind. Eng. Chem. Res. 2010, 49, 11491−11505. (25) Mostafaei, H.; Alipouri, Y.; Zadahmad, M. A Mathematical Model for Scheduling of Real-World Tree-Structured Multi-Product Pipeline System. Mathematical Methods of Operations Research 2015, 81, 53−81. (26) Boschetto, S. N.; Magatão, L.; Brondani, W. M.; Neves-Jr, F.; Arruda, L. V. R.; Barbosa-Póvoa, A. P. F. D.; Relvas, S. An Operational Scheduling Model to Product Distribution through a Pipeline Network. Ind. Eng. Chem. Res. 2010, 49, 5661−5682.

(27) Lopes, T. M. T.; Ciré, A. A.; de Souza, C. C.; Moura, A. V. A Hybrid Model for a Multiproduct Pipeline Planning and Scheduling Problem. Constraints 2010, 15, 151−189. (28) Herrán, A.; de la Cruz, J. M.; de Andrés, B. Mathematical Model for Planning Transportation of Multiple Petroleum Products in a MultiPipeline System. Comput. Chem. Eng. 2010, 34, 401−413. (29) Herrán, A.; de la Cruz, J. M.; de Andrés, B. Global Search Metaheuristics for Planning Transportation of Multiple Petroleum Products in a Multi-Pipeline system. Comput. Chem. Eng. 2012, 37, 248− 261. (30) Cafaro, D. C.; Cerdá, J. Rigorous Scheduling of Mesh-Structure Refined Petroleum Pipeline Networks. Comput. Chem. Eng. 2012, 38, 185−203. (31) Stebel, S. L.; Magatao, S. N. B.; Arruda, L. V. R.; Neves, F., Jr.; Povoa, A. P. F. D.; Relvas, S. Mixed Integer Linear Programming Formulation for Aiding Planning Activities in a Complex Pipeline Network. Ind. Eng. Chem. Res. 2012, 51, 11417−11433. (32) Ribas, P. C.; Yamamoto, L.; Polli, H. L.; Arruda, L. V. R.; Neves-Jr, F. A Micro-Genetic Algorithm for Multi-Objective Scheduling of a Real World Pipeline Network. Engineering Applications of Artificial Intelligence 2013, 26, 302−313. (33) Souza Filho, E. M.; Bahiense, L.; Ferreira Filho, V. J. M. Scheduling a Multi-Product Pipeline Network. Comput. Chem. Eng. 2013, 53, 55−69. (34) Fabro, J. A.; Stebel, S. L.; Rossato, D.; Polli, H. L.; Arruda, L. V. R.; Neves, F., Jr; Ribas, P. C.; Barbosa-Póvoa, A. P. F. D.; Relvas, S. A MILP (Mixed Integer Linear Programming) Decomposition Solution to the Scheduling of Heavy Oil Derivatives in a Real-World Pipeline. Comput. Chem. Eng. 2014, 66, 124−138. (35) Magatão, S. N. B.; Magatão, L.; Neves, F., Jr.; Arruda, L. V. R. A Novel MILP Decomposition Approach for Scheduling Product Distribution through a Pipeline Network. Ind. Eng. Chem. Res. 2015, 54, 5077. (36) Castro, P. M.; Grossmann, I. E. Global Optimal Scheduling of Crude Oil Blending Operations with RTN Continuous-time and Multiparametric Disaggregation. Ind. Eng. Chem. Res. 2014, 53, 15127− 15145. (37) Cafaro, V. G.; Cafaro, D. C.; Mendéz, C. A.; Cerdá, J. Detailed Scheduling of Single- Source Pipelines with Simultaneous Deliveries to Multiple Offtake Stations. Ind. Eng. Chem. Res. 2012, 51, 6145−6165. (38) Cafaro, V. G.; Cafaro, D. C.; Mendéz, C. A.; Cerdá, J. MINLP Model for the Detailed Scheduling of Refined Products Pipelines with Flow Rate Dependent Pumping Costs. Comput. Chem. Eng. 2015, 72, 210−221. (39) Ghaffari-Hadigheh, A. R.; Mostafaei, H. On the Scheduling of Real World Multiproduct Pipelines with Simultaneous Delivery. Optimization and Engineering 2014, DOI: 10.1007/s11081-014-9263-9. (40) Castro, P. M.; Grossmann, I. E. Generalizad Disjunctive Programming as a Systematic Modeling Framework to Derive Scheduling Formulations. Ind. Eng. Chem. Res. 2012, 51, 5781−5792.

T

DOI: 10.1021/acs.iecr.5b01440 Ind. Eng. Chem. Res. XXXX, XXX, XXX−XXX