Operation Scheduling Optimization of a Transfer Hub with Multiple

Feb 15, 2018 - This study addresses the operation-scheduling problem of a transfer hub with multiple tank farms (M-TH) connected to a multiproduct pip...
4 downloads 5 Views 2MB Size
Article Cite This: Ind. Eng. Chem. Res. XXXX, XXX, XXX−XXX

pubs.acs.org/IECR

Operation Scheduling Optimization of a Transfer Hub with Multiple Tank Farms Based on a New Continuous Time Representation Li Wang, Changchun Wu,* Yanfei Huang, Lili Zuo, and Haihong Chen National Engineering Laboratory for Pipeline Safety/Beijing Key Laboratory of Urban Oil and Gas Distribution Technology, China University of Petroleum, Beijing 102200, China S Supporting Information *

ABSTRACT: This study addresses the operation-scheduling problem of a transfer hub with multiple tank farms (M-TH) connected to a multiproduct pipeline network. As part of the pipeline network, the THs serve as links that receive, store, and deliver oil products. Previous scheduling optimization works on pipeline networks with oil products largely focused on the batch plans of each pipeline, without considering the operation schedule of the THs. In this study, the main task is to optimize the loading and unloading scheduling operations of the tanks in the M-TH, which are subjected to given schedules of upstream/downstream pipelines. The schedules of pipelines that carry different types of products can be decomposed into several independent single product scenarios. A mixedinteger linear programming (MILP) formulation is presented. The proposed formulation takes into account the capacities of the tanks, operational rules of the tanks and tank farms, structural constraints, and settling time after the loading operation, while minimizing the switch operations between the tanks and switchovers between the tank farms. Moreover, the MILP formulation can be solved for one separate products at one time as there is no interference among the single-product scheduling problems within the transfer hub. The formulation is based on a new continuous time representation with static and dynamic time slots. The scheduling horizon is partitioned into several static time slots on the basis of the time points of batches arriving at and leaving from the M-TH or the flow rate changed. Each static time slot is divided into several dynamic time slots, whose duration and starting/ending points are determined by the optimization process. The proposed formulation is validated using the optimal results of a real-world case. A time horizon partitioning strategy is employed to deal with the long-term horizon scenario. The results help verify that we can substantially save computational time and obtain a satisfactory solution; however, the optimality is compromised.



INTRODUCTION Pipelines are one of the major modes of transporting refined products from refineries to terminals located close to large consumers and local markets. It is widely known that pipeline networks are one of the most cost-effective and reliable methods of transporting large quantities of oil products for long distances. Pipeline networks consist of a series of interconnected pipelines and several nodes. The pipelines can deliver multiple types of oil products in batches one after another. The nodes correspond to transfer hubs (THs) with several tanks that store different types of oil products. Transfer hubs serve as links that help coordinate the transportation and supply of refined products. They are used to receive oil products from upstream pipelines, store them separately, and then deliver them to the downstream pipelines. An infeasible operational schedule of the tank hubs may result in shut downs of the upstream or downstream pipelines. The unnecessary shut downs would increase the financial burden on enterprises because of the cost of starting the pumps, increased contamination at the interface of two adjacent batches, and additional cost incurred for not meeting the market demand. With different types of inner structures, there are two types of transfer hubs: a transfer hub with a single farm or one with © XXXX American Chemical Society

multiple farms. The inner topological structure of the transfer hub with multiple farms is more complex than that with a single farm. A transfer hub with multiple tank farms can be caused by tank farms’ expansions, which is often seen in China. Many studies on the scheduling optimization of multiproduct pipeline networks have been published, from tree-structure to mesh-structure pipeline networks. Some researchers proposed heuristic algorithms to optimize the scheduling of tree-structure pipeline networks with branching terminals. This method cannot derive an optimal solution but can attain satisfactory schedules quickly.1 Some other studies proposed mathematical formulation based on discrete or continuous time representation for a pipeline network with a branching structure.2−5 Recent studies on scheduling of pipeline networks have focused on meshstructure pipeline networks. Many methods have been used to optimize the scheduling of mesh-structure pipeline networks, such as the hybrid method combined with the heuristic method Received: Revised: Accepted: Published: A

August 7, 2017 January 30, 2018 February 15, 2018 February 15, 2018 DOI: 10.1021/acs.iecr.7b03275 Ind. Eng. Chem. Res. XXXX, XXX, XXX−XXX

Article

Industrial & Engineering Chemistry Research

proposed with the objective of minimizing the tank capacity violations (factor 1), temporal violations of the operations (factor 2), and number of movements within the tank hub (factor 3). The external pipeline network scheduling is determined by pipeline schedulers abiding by the full capacity of each product and is considered as an input parameter. This characteristic is similar to the scheduling problem of the M-TH addressed in this paper. However, in the previous study,20 the capacity violations of the tanks and the temporal violations of the pipeline schedule are considered as two factors of objective functions; however, these violations would lead to infeasible results in reality. The capacity of the tanks and the pipeline schedule should be considered as constraints when the mathematical model is proposed. In the aforementioned papers on pipeline networks, a feasible or optimal schedule of multiproduct pipeline networks can be obtained. However, these schedules may lead to infeasibility in the operations of tank hubs because the total inventory limitation of the entire tank hub was considered instead of the inventory limitations of each tank. Studies on the scheduling problem of refineries are very useful to this paper because of its similarity to the scheduling optimization problem of transfer hubs. However, as mentioned earlier, many differences exist between the scheduling problems of tank farm operation in refineries and transfer hubs. Moreover, the schedulers draft the operational plan of the tank hubs based on a trial-and-error method at present. In this method, the schedulers cannot always determine a feasible operational plan even if it actually exists because of a wide variety of operation rules, limited storage space, and complex topological structure, particularly when the total inventory of a type of product is close to the upper and lower capacity limitations. Therefore, it is necessary to explore the operational scheduling problem for the transfer hubs of multiproduct pipeline networks. In this paper, we address the operation scheduling of transfer hubs with multiple farms. The tanks are dedicated to only one type of product, implying that, once a tank is arranged to store a particular type of product, it cannot be used to store another product. After loading a certain type of product from the upstream pipeline, a settling period is required to achieve the qualified standard and give the inspectors sufficient time to test the quality of the product. When the settling time meets the requirement, these products would become available to feed downstream. The batch plans of the upstream and downstream pipelines are given, wherein some discrete time points are circumscribed. The fixed time points are the starting/ending times of batches arriving at and leaving from a transfer hub or the flow rate changed. When a batch is arriving at the tank hub, the flow must be continuously received to a dedicated tank. Similarly, there must be a tank feeding the pipeline when a batch is leaving. Between the fixed points, dynamic slots are created via the loading and unloading operations of the tanks, the length and position of which are determined from the optimization process.

and mixed-integer linear programming (MILP) formulation, decomposition approach, and MILP formulation based on continuous representation.6−8 Moreover, another researcher proposed a general formulation for a network of segments connecting different types of nodes with continuous time representation.9 These references focused on the scheduling optimization problem for pipeline networks and considered only the total inventory limitation of the transfer hubs. However, the operational scheduling problem of transfer hubs has never been considered. Many studies have been conducted on scheduling of tank farm operation in refineries. This is similar to the scheduling optimization problem of transfer hubs. Generally, the overall refinery system can be decomposed into three subsystems: crude oil unloading, mixing, and inventory control; production unit scheduling including fractionation and reaction processes; and finished product blending and shipping. Among the subsystems, the first and third subsystems involve management of loading and unloading operations of tanks. The first subsystem has been studied extensively,10−17 and it involves unloading crude oil from vessels to storage tanks and then transferring the crude oil to charging tanks, and, finally, from the charging tanks to distillation units. The key information includes the following: refinery infrastructure, arrival times of vessels, and initial inventory; composition; and capacity of tanks and specifications and demands of the distillation units. The objective is to determine the detailed schedule of the vessel unloading, tank allocation, and distillation unit charging operations and to minimize the operational cost. There are constraints on tank operations similar to the considered problem addressed in this paper. For example, loading and unloading operations of the tanks are not allowed simultaneously, and the operation is restricted to transfer crude from at most one original unit to one destination unit. As opposed to the scheduling problem of the transfer hub with multiple farms, although the vessel arrival times are also a set of discrete time points, the vessels can wait at the ports until tanks are available to unload the crude oil. The sea waiting cost is considered a factor of the objective function. However, in the scheduling problem of the transfer hub with multiple farms, the arrival or leaving batches cannot wait in the upstream/downstream pipelines because the flow in the pipelines should be continuous. This implies that there must be tanks available to deal with these batches at all times during the entire horizon. Only a few studies have been conducted18−20 on the scheduling of the third subsystem shipping of refinery, which is similar to the considered problem addressed in this paper. The tank farm receives products from the blending units and delivers them to the local markets. The receipt and delivery of the tank farm in the refinery are similar to the loading and unloading operations of transfer hub with multiple farms, respectively. Some researchers19 have explored the diesel blending and distribution scheduling problem. The time horizon is partitioned into periods of equal intervals, representing the days on which points demand may be incurred. This condition is similar to the case addressed in this paper, wherein the horizon is partitioned by a given pipeline schedule. However, the main difference between the diesel blending and distribution scheduling problem and the TH is that the former should complete the daily demand before the end of the day, whereas the latter not only has to complete the demand but also needs to operate with a given flow rate at all times. Other researchers20 addressed the scheduling problem of finished product tank farms with domestic production, local markets, and input and output pipeline scheduling. A MILP formulation was



PROBLEM DESCRIPTION With different types of inner structures, there are different types of THs. The inner topological structure of the TH with multiple farms (M-TH) is more complex than that with a single farm (S-TH). In general, the M-THs are larger than S-THs. As shown in Figure 1, in the M-THs, the tanks are divided into several groups arranged in different farms. The tank farms connect upstream and downstream (input and output) pipelines in direct and indirect ways. The direct way is an upstream or downstream pipeline connected to a tank farm via an inner pipeline (as shown in the third subfigure); the indirect connection is an upstream or downstream B

DOI: 10.1021/acs.iecr.7b03275 Ind. Eng. Chem. Res. XXXX, XXX, XXX−XXX

Article

Industrial & Engineering Chemistry Research

Figure 1. Direct and indirect connections between upstream pipelines and tank farms.

Figure 2. Schematic of a TH in a multiproduct pipeline network.

pipeline connected to a tank farm with a “connecting pipe” and two inner pipelines (as shown in the second and the third subfigures). The “connecting pipe” is used to connect two inner pipelines. In the S-TH, the sole tank farm connects to the upstream or downstream pipelines in a direct way. Figure 2 shows the general structure of the considered problem addressed in this study. The M-TH connects multiple upstream and multiple downstream pipelines. The inner pipelines connect to upstream/downstream pipelines and tank farms, which are made up of several tank groups. Each group of tanks is dedicated for a single type of product, and the exchange of products between different tanks is not allowed. The schedules of the pipelines involved with several types of products can be decomposed into several independent single product schedules. Therefore, the whole operation scheduling problem of the transfer hub can be decomposed into several single product scheduling problems. The type of product for each batch and the starting/ending time points of the batches arriving at and leaving from the M-TH are known as deterministic parameters. Once a batch arrives at the M-TH, there must be a tank for loading the product, and the same is true for the unloading operation. After a product is loaded into a tank, a settling period is needed to ensure that the stored product is qualified and then the tank can unload the product to the downstream pipeline. Complex topological structures and operation rules of the M-THs make the scheduling problem complex. As the rules of unloading from the tanks to the downstream pipelines are the same as those of loading from the upstream pipelines to the tanks, only the loading operation rules are detailed to avoid redundancy. (1) A tank farm can only load the product from one pipeline at a given time. (2) The product from a pipeline can only be inputted to one tank farm at a given time. In particular, the batch inputting from the upstream pipeline to a tank farm and the loading operation of the tank farm have one-to-one correspondence when the batch arrives at the M-TH. (3) When a tank farm loads the product via the indirect connection, this operation

activates two inner pipelines and a “connecting pipe” between them. In this case, the tank farm connected to the other inner pipeline cannot load the product, because there is only one “connecting pipe” between the two inner pipelines and the “connecting pipe” running unidirectionally. (4) In the beginning, each tank should be assigned to an initial inventory. Over the entire scheduling horizon, the tank inventory curve should follow its physical capacity and operational rules. (5) The loading operation of a tank and the batch inputting from the upstream pipeline to the tank also have one-to-one correspondence. (6) The loading and unloading operations of the tanks are not allowed simultaneously. (7) The product should be stored in the tank for a period to meet the expected quality. A switch operation is when a loading or unloading operation of a tank is interrupted and then implemented by another tank. For example, when tank A is receiving a product from an upstream pipeline, the operation is interrupted and then tank B receives product from this pipeline. If the former tank were full before the interruption, the switch operation would be necessary. Otherwise, this switch operation is undesired because it tends to not only reduce the utilization rate of the tank but also increase workloads on the tank operators. Moreover, a loading or unloading operation of a tank farm is interrupted and is therefore implemented by another tank farm, implying a switchover of the tank farms. The switchover between the tank farms would increase the workload compared to the switch operation of the tanks because of the complex structures between the tank farms. In other words, the switchover of the tank farms is undesired for dispatchers compared to the switch operation of the tanks. Therefore, the scheduling objective is to minimize the undesired switch operation of the tanks and switchover of the tank farms.



TIME REPRESENTATION

In this paper, the scheduling horizon is partitioned into several static time slots with different intervals on the basis of the time points at which the batches arrive at and leave from the M-TH or their flow rates are changed. The static time slots are predetermined C

DOI: 10.1021/acs.iecr.7b03275 Ind. Eng. Chem. Res. XXXX, XXX, XXX−XXX

Article

Industrial & Engineering Chemistry Research

static time slots. The product volume in each tank at the end of the time slot ns ≈ nd is determined by the summation of the volume in each tank at the end of the previous time slot ns ≈ (nd − 1) and the amounts of products loaded from the upstream pipelines to the corresponding tank, subtracted by the amounts unloaded to the downstream pipelines.

in batch schedules of the upstream or downstream pipelines of the M-TH. The flow rate of each pipeline is maintained constant during each static time slot. Within each static time slot, the number of dynamic time slots is prepostulated, though the duration and start/end points are determined from the optimization process. The number of dynamic time slots of a certain static time slot is decided by the duration of the static time slot and maximum flow rate in each connected pipeline. An approximate number of dynamic time slots can be obtained using the following empirical formula. ⎧ ⎢ rq ns(t 2ns − t1ns) ⎥ ⎪ ⎢ k max ⎥, Nd(ns) ≈ max ⎨ 0 i∈I ,m∈M ,k∈K⎪ ⎩⎢⎣ vi − vi ⎥⎦



⎧ ⎢ rq ns(t 2ns − t1ns) ⎥ ⎪ ⎢ kmax ⎥, ⎨ min ⎥⎦ i∈I ,m∈M ,k∈K⎪ ⎩⎢⎣ vi − vi

⎢ sq ns(t 2ns − t1ns) ⎥⎫ ⎪ ⎢ mmax ⎥⎬ ⎪ ⎢⎣ vi − vimin ⎥⎦⎭

∀ ns ∈ Ns \{1}

(2)

s

s

d

− Tksin, ks , nd)



rqmns(Tmf in, ms , nd

− Tmsin, ms , nd)

m∈M

∀ i ∈ I , ns ∈ Ns , nd ∈ Nd(ns), nd ≥ 2

(4)

For the first dynamic time slot of each static time slot, eq 5 is used to calculate the volume in each tank at the end of the time slot (ns − 1). The volume is given by the summation of the volume at the end of the last dynamic time slot of the previous static time slot (ns − 1) ≈ “Nd(ns − 1)” and the amounts of products loaded from the upstream pipelines to the corresponding tank, subtracted by the amounts unloaded to the downstream pipelines.

(1)

max

∑ rqkn (Tkf in,k,n k∈K

⎫ ⎢ sq ns(t 2ns − t1ns) ⎥⎪ ⎢ m0 ⎥⎬ , min ⎢⎣ vi − vi ⎥⎦⎪ ⎭

ns = 1

Nd(ns) ≈

V ins , nd = vins , nd ‐ 1 +

The number of dynamic time slots assigned to each tank is the same. However, the duration and start/end times do not have to coincide. As shown in Figure 3, the dynamic time slots do not

V ins ,1 = vins ‐ 1, ′ Nd(ns − 1) ′ +

∑ rqkn ·(Tkf in,k,1 s

s

− Tksin, ks ,1)

k∈K





sqmns(Tmf in, ms ,1

− Tmsin, ms ,1)

m∈M

∀ i ∈ I , k ∈ K , m ∈ M , ns ∈ Ns , ns ≥ 2

(5)

Capacity Constraints. The volume in each tank at the end of any time slot should be in between its upper and lower capacity limitations. vimin ≤ V ins , nd ≤ vimax

∀ i ∈ I , ns ∈ Ns , nd ∈ Nd(ns) (6)

Operation Rules. The product in an upstream pipeline would be loaded to a tank when a batch is arriving at the M-TH. Therefore, if a batch is arriving at the M-TH in the static time slot ns, there must be a tank receiving the product at any dynamic time slot within ns (∑i ∈ I Xin, ks , nd = 1). Otherwise, there is no loading operation between this upstream pipeline and a tank (∑i ∈ I Xin, ks , nd = 0). This condition is satisfied using eq 7. xrnksis a parameter that lies between 0−1, indicating whether the oil is transported from the input pipeline k in the static time slot ns.

Figure 3. Time representation: static and dynamic time slots.

overlap for the same tank. When multiple tanks receive a product from or deliver product to the same pipeline, the total length of the dynamic time slots is equal to the length of the static time slot. In this figure, k and m represent the input and output pipeline, respectively; i1−i5 represent the five tanks in the tank hub; and ns and nd represent the serial numbers of the static and dynamic time slots, respectively. Further details of the time representation are given in the mathematical model regarding time constraints.

∑ Xin,k,n s



d

= xrkns

∀ k ∈ K , ns ∈ Ns , nd ∈ Nd(ns)

i∈I

MATHEMATICAL FORMULATION Material Balance for Each Tank. The mass balance for each tank at the end of the time slot 1−1 (the first dynamic time slot of the first static time slot) is represented in eq 3. The product volume in each tank at the end of the time slot 1−1 is determined by the summation of the initial volume and the total amount of product loaded from the upstream pipelines to the corresponding tank, subtracted by the amounts unloaded to the downstream pipelines. Vi1,1 = v0i +

∑ rqk1(Tkfi1,1,k

The tanks in a tank farm can load a product from at most one upstream pipeline, as given by the inequality 8.

∑ ∑ Xin,k,n s



∑ m∈M

≤1

d

k ∈ K i ∈ Ij

∀ j ∈ J , k ∈ K , ns ∈ Ns , nd ∈ Nd(ns)

∑ Y in,m,n

− Tksi1,1 ,k )

s

d

= xsmns

∀ m ∈ M , ns ∈ Ns , nd ∈ Nd(ns)

i∈I



Tmsi1,1 , m)

(8)

Similar to constraints 7 and 8, the operation rules for unloading of the tanks is formulated using eqs 9 and 10.

k∈K

sqm1 (Tmfi1,1 ,m

(7)

∀i∈I

∑ ∑ Y in,m,n s

(3)

d

(9)

≤1

m ∈ M i ∈ Ij

Equation 4 establishes the mass balance for each tank at the end of all of the dynamic time slots but for the first one in the

∀ j ∈ J , k ∈ M , ns ∈ Ns , nd ∈ Nd(ns) D

(10)

DOI: 10.1021/acs.iecr.7b03275 Ind. Eng. Chem. Res. XXXX, XXX, XXX−XXX

Article

Industrial & Engineering Chemistry Research

slot, constraints 20 and 21 enforce the time slot allocated to tank i and pipeline m to be null.

As mentioned in the problem description section, when a tank farm loads a product via the indirect connection, this operation activates two inner pipelines and a “connecting pipe” between them. In this case, the tank farm connected to the other inner pipeline cannot load, because there is only one “connecting pipe” between the two inner pipelines and the “connecting pipe” running unidirectionally. To formulate this condition, Fxnr snd and Oxnr snd are introduced to represent that the product in the connecting pipe r flows positively and negatively, respectively (as shown in Figure 1). The connecting pipe can take three states: flow positively (Fxnr snd = 1 and Oxnr snd = 0), flow negatively (Oxnr snd = 1 and Fxnr snd = 0), or remain idle (Fxnr snd = 0 and Oxnr snd = 0). It is necessary to note that the values of Fxnr snd and Oxnr snd cannot be 1 simultaneously. Constraints 11−13 define these conditions. jfr and kfr correspond to the serial numbers of the tank farm and upstream pipeline, respectively, when the loaded product in the connecting pipe r is flowing positively. Similarly, jor and kor correspond to the serial numbers of the tank farm and upstream pipeline, respectively, when the loaded product in the connecting pipe r is flowing negatively.

∑ Xin,k,n

Fxrns , nd =

s

d

fr

Tkf in, ks , nd − Tksin, ks , nd ≤ (t 2ns − t1ns)Xin, ks , nd ∀ i ∈ I , k ∈ K , ns ∈ Ns , nd ∈ Nd(ns) Tkf in, ks , nd − Tksin, ks , nd ≥ 0 ∀ i ∈ I , k ∈ K , ns ∈ Ns , nd ∈ Nd(ns)

∀ i ∈ I , m ∈ M , ns ∈ Ns , nd ∈ Nd(ns)

∀ i ∈ I , m ∈ M , ns ∈ Ns , nd ∈ Nd(ns)



∀ r ∈ RP , ns ∈ Ns , nd ∈ Nd(ns)

∀ r ∈ RP , ns ∈ Ns , nd ∈ Nd(ns)

i∈I j

or

(12)

Fxrns , nd

Oxrns , nd

≤1−

∀ r ∈ RP

(13)

Similarly, when a tank farm unloads via the indirect connection, the other tank farm cannot unload, as given by Constraints 14−16. jfs and mfs correspond to the serial numbers of the tank farm and downstream pipeline, respectively, when the unloaded product in the connecting pipe is flowing positively. jos and mos correspond to the serial numbers of the tank farm and downstream pipeline, respectively, when the unloaded product in the connecting pipe is flowing negatively. Fysns , nd =

∑ Y in,m,n s

d fs

i ∈ I nd ∈ Nd(ns)

∀ k ∈ K , ns ∈ Ns i ∈ I nd ∈ Nd(ns)

∀ s ∈ SP , ns ∈ Ns , nd ∈ Nd(ns)

∀ m ∈ M , ns ∈ Ns

(23)

The sequence constraints for any adjacent dynamic time slot are given by inequalities 24−29. Moreover, the time variable bounds are given as constraints 30−33, i.e., between starting and ending time points of each static time slot.

(14)

Y in, ms , nosd

(22)

(Tmf in, ms , nd − Tmsin, ms , nd) = (t 2ns − t1ns)xsmns

∑ ∑

fs



(Tkf in, ks , nd − Tksin, ks , nd) = (t 2ns − t1ns)xrkns

∑ ∑

i∈I j

Oysns , nd =

(21)

The input operations of the upstream pipelines and the output operations of the downstream pipelines are discontinuous operations in terms of batches during the scheduling horizon. However, within a static time slot, the input and output operations run continuously with a constant flow rate. To represent this situation, eq 22 equates the total duration of the loading operations for an upstream pipeline to the corresponding static time slot because each pipeline can connect to at most one tank simultaneously. Similarly, constraint 23 equates the total duration of the unloading operations for a downstream pipeline to the corresponding static time slot. It is necessary to note that constraints 22 and 23 are activated only when a batch is arriving at the M-TH or leaving from the M-TH.

(11)

=

(20)

Tmf in, ms , nd − Tmsin, ms , nd ≥ 0

fr

Xin, ks ,ornd

(19)

Tmf in, ms , nd − Tmsin, ms , nd ≤ (t 2ns − t1ns)Y in, ms , nd

i∈I j

Oxrns , nd

(18)

∀ s ∈ SP , ns ∈ Ns , nd ∈ Nd(ns)

i∈I j

os

Tkf in, ks , nd − 1 ≤ Tksin, ks ,0nd

(15)

Fysns , nd ≤ 1 − Oysns , nd

∀ s ∈ SP

(16)

∀ i ∈ I , k ∈ K , k 0 ∈ K , ns ∈ Ns , nd ∈ Nd(ns), nd ≥ 2 (24)

Moreover, the loading and unloading operations are not allowed simultaneously, as imposed by inequality 17.

∑ Xin,k,n s

k∈K

d

+



Tmf in, ms , nd − 1

Y in, ms , nd ≤ 1

∀ i ∈ I , m ∈ M , m0 ∈ M , ns ∈ Ns , nd ∈ Nd(ns), nd ≥ 2 (25)

m∈M

∀ i ∈ I , ns ∈ Ns , nd ∈ Nd(ns)



Tmsin, ms , n0d

(17)

Tmf in, ms , nd − 1 ≤ Tksin, ks ,0nd

Time Constraints. The duration of any dynamic time slot within a certain static time slot should be no greater than the time duration of the static time slot, as defined by constraints 18−21. Moreover, if no loading operation is assigned between a tank i and an upstream pipeline k for a certain time slot, constraints 18 and 19 enforce the time slot allocated to tank i and pipeline k to be null. Likewise, if no unloading operation is assigned between a tank i and a downstream pipeline m for a certain time

∀ i ∈ I , m ∈ M , k 0 ∈ K , ns ∈ Ns , nd ∈ Nd(ns), nd ≥ 2 (26)

Tkf in, ks , nd − 1 ≤ Tmsin, ms , n0d ∀ i ∈ I , k ∈ K , m0 ∈ M , ns ∈ Ns , nd ∈ Nd(ns), nd ≥ 2 (27) E

DOI: 10.1021/acs.iecr.7b03275 Ind. Eng. Chem. Res. XXXX, XXX, XXX−XXX

Article

Industrial & Engineering Chemistry Research

0 to 1 or 1 to 0 in two adjacent dynamic time slots, we consider this situation as a switch operation. In this method, the starting and ending points of a batch arriving or leaving from the M-TH are considered as “switch operations.” However, these “switch operations” do not influence the optimality of the solution because the number of “switch operations” are independent of the schedules of loading and unloading operations for the tanks. Constraints 38.1−38.8 are used to identify the number of switch operations of the tanks. Constraints 38.1 and 38.2 are used to count the switch operations for the loading process. Similarly, constraints 38.3 and 38.4 are used to count the switch operations for the unloading process. Constraints 38.5−38.8 deal with the condition between the first dynamic time slot of a certain static time slot and the last dynamic time slot of the previous static time slot.

Tmf in, ms , nd ‐ 1 ≤ Tmsin0s,,mnd ∀ i ∈ I , i0 ∈ I , m ∈ M , ns ∈ Ns , nd ∈ Nd(ns), nd ≥ 2 (28)

Tkf in, ks , nd ‐ 1 ≤ Tksin0s,,knd ∀ i ∈ I , i0 ∈ I , k ∈ K , ns ∈ Ns , nd ∈ Nd(ns), nd ≥ 2 (29)

Tksin, ks ,1

≥ t1ns

Tmsin, ms ,1 ≥ t1ns

∀ i ∈ I , k ∈ K , ns ∈ Ns

(30)

∀ i ∈ I , m ∈ M , ns ∈ Ns

(31)

Tkf in, ks , ′ Nd(ns) ′ ≤ t 2ns

∀ i ∈ I , k ∈ K , ns ∈ Ns

(32)

Tmf in, ms , ′ Nd(ns) ′ ≤ t 2ns

∀ i ∈ I , m ∈ M , ns ∈ Ns

(33)

Ztins , nd ≥ Xin, ks , nd − Xin, ks , nd − 1 ∀ i ∈ I , k ∈ K , ns ∈ Ns , nd ∈ Nd , nd ≥ 2

Settling Time Constraints. After receiving a product, a tank must settle for a certain period to ensure product quality and leave enough time for inspectors to inspect the quality of the product stored in the tank. The tank can unload again after settling for enough time. When the tank loads in the slot ns ∼ nd and if the unloading operation is assigned to slot ns ∼ (nd + 1), the starting point of slot ns ∼ (nd + 1) should meet the required settling time Ts; if the loading and unloading operations are not assigned to slot ns ∼ (nd + 1) and the unloading operation is assigned to slot ns ∼ (nd + 2), the starting point of slot ns ∼ (nd + 2) should meet the required settling time Ts as well. Therefore, we need to determine a certain slot after slot ns ∼ nd that can be used for the unloading operation. Constraints 34−37 indicate that a tank loading in slot ns ∼ nd needs time up to the starting of the slot ns ∼ nd0 for settling. Constraints 34 and 35 can identify if a tank has loading or unloading operation in slot ns ∼ nd. Constraint 36 represents this situation when slots ns ∼ nd and ns ∼ nd0 are within the same static time slot. In contrast, constraint 37 represents this situation when slots ns ∼ nd and ns ∼ nd0 are within two adjacent static time slots. Xtins , nd =

∑ Xin,k,n s

Ztins , nd ≥ Xin, ks , nd − 1 − Xin, ks , nd ∀ i ∈ I , k ∈ K , ns ∈ Ns , nd ∈ Nd , nd ≥ 2

∀ i ∈ I , m ∈ M , ns ∈ Ns , nd ∈ Nd , nd ≥ 2

∀ i ∈ I , m ∈ M , ns ∈ Ns , nd ∈ Nd , nd ≥ 2

Y in, ms , nd

(38.4)

Ztins ,1 ≥ Xin, ks ,1 − Xin, ks − 1, ′ Nd(ns − 1) ′ ∀ i ∈ I , k ∈ K , ns ∈ Ns , ns ≥ 2

(38.5)

Ztins ,1 ≥ Xin, ks − 1, ′ Nd(ns − 1) ′ − Xin, ks ,1 ∀ i ∈ I , k ∈ K , ns ∈ Ns , ns ≥ 2

(38.6)

Ztins ,1 ≥ Y in, ms ,1 − Y in, ms − 1, ′ Nd(ns − 1) ′ ∀ i ∈ I , m ∈ M , ns ∈ Ns , ns ≥ 2

(34)



(38.3)

Ztins , nd ≥ Y in, ms , nd − 1 − Y in, ms , nd

k∈K

Ytins , nd =

(38.2)

Ztins , nd ≥ Y in, ms , nd − Y in, ms , nd − 1

∀ i ∈ I , ns ∈ Ns , nd ∈ Nd(ns)

d

(38.1)

(38.7)

Ztins ,1 ≥ Y in, ms − 1, ′ Nd(ns − 1) ′ − Y in, ms ,1

∀ i ∈ I , ns ∈ Ns , nd ∈ Nd(ns)

m∈M

∀ i ∈ I , m ∈ M , ns ∈ Ns , ns ≥ 2

(35)

Tmsin, ms , nd0



Tkf in, ks , nd

+

ts(Xtins , nd

+

Ytins , nd0

Number of Switchovers between the Tank Farms. The variables Fxnr snd and Oxnr snd are used to count the number of switchovers between the tank farms. The switchover of the tank farms is operated through the connecting pipe between the inner pipelines of the tank hub. Therefore, the switchover of the tank farms is counted via counting the number of positive flow, negative flow, and idle states of the connecting pipe. Both the positive and negative flow states are considered as active state. When the state of the connecting pipe changes from active to idle or idle to active in two adjacent dynamic time slots, we consider this situation as a switchover between the tank farms. Constraints 39.1−39.8 are used to count the switchover of the tank farms for the loading process. Similarly, constraints 40.1−40.8 are used to count the switchover of the tank farms for the unloading process.

− 1)

∀ i ∈ I , k ∈ K , m ∈ M , ns ∈ Ns , nd ∈ Nd(ns), nd0 ∈ Nd(ns), nd0 ≥ nd + 1

(36)

Tmsin, ms , nd0 ≥ Tkf in, ks − 1, nd + ts(Xtins − 1, nd + Ytins , nd0 − 1) ∀ i ∈ I , k ∈ K , m ∈ M , ns ∈ Ns , nd ∈ Nd(ns − 1) , nd0 ∈ Nd(ns)

(38.8)

(37)

Objective Function. The scheduling objective is to minimize the number of switch operation of the tanks and switchover between the tank farms. This implies that the objective function includes two factors. Number of Switch Operations of the Tanks. The variables nn nn Xi,ks d and Yi,ms d are used to calculate the number of switch opernn nn ations of the tanks. When the values of Xi,ks d and Yi,ms d change from

Ztrrns , nd ≥ Fxrns , nd − Fxrns , nd − 1 ∀ r ∈ RP , ns ∈ Ns , nd ∈ Nd , nd ≥ 2 F

(39.1)

DOI: 10.1021/acs.iecr.7b03275 Ind. Eng. Chem. Res. XXXX, XXX, XXX−XXX

Article

Industrial & Engineering Chemistry Research

As mentioned previously, the switchover of the tank farms is undesired for the dispatchers compared to the switch operation of the tanks. Therefore, we set ω as the weight for the number of switchovers of the tank farms, and the weight value of ω is greater than 1.

Ztrrns , nd ≥ Fxrns , nd − 1 − Fxrns , nd ∀ r ∈ RP , ns ∈ Ns , nd ∈ Nd , nd ≥ 2

(39.2)

Ztrrns , nd ≥ Oxrns , nd − Oxrns , nd − 1 ∀ r ∈ RP , ns ∈ Ns , nd ∈ Nd , nd ≥ 2 Ztrrns , nd



Oxrns , nd − 1





(39.3)

CASE STUDY The MILP formulation described in the previous section is applied to a real-world M-TH that includes two input pipelines {k1, k2}, two output pipelines {m1, m2}, two tank farms {j1, j2}, and 25 tanks (Ij1,p1 = {i1, i2, i3, i4} (tanks in tank farm 1 for product 1), Ij2,p1 = {i5, i6, i7, i8, i9}, Ij1,p2 = {i10, i11, i12, i13}, Ij2,p2 = {i14, i15, i16, i17}, Ij1,p3 = { i18, i19, i20, i21, i22}, Ij2,p3 = {i23, i24, i25}). Three refined products are inputted into and outputted from the M-TH during the horizon of 2 weeks (336 h). As mentioned in the problem description section, the schedules of the pipelines of several types of products can be decomposed into several single product scenarios. Therefore, in this example, the schedules of the pipelines are decomposed into three single product scenarios. The required data of the three single scenarios for the mathematical model are respectively presented in Tables S1−S6. Tables S1, S3, and S5 list the parameters related to the tanks. Tables S2, S4, and S6 list the parameters related to the schedules of the connected pipelines. The schedules of the pipelines divide the scheduling horizon of products 1, 2, and 3 into 9, 9, and 8 static time slots, respectively. The approximate number of dynamic time slots for each static time slot is calculated using the empirical formula mentioned in the time representation section. The number of dynamic time slots is then adjusted if the model is infeasible. In the end, an instance with more dynamic time slots is tested to verify the optimal number of dynamic time slots. After receiving a product, a tank must settle for a minimum time interval of 3 h. The weight value of ω is set as 18. The optimization problems are implemented using IBM ILOG CPLEX Optimization Studio 12.6.3.0 on a computer with an Intel Core i5 processor running at 2.60 GHz with 8 GB of RAM. The relative optimality tolerance used by CPLEX solver is 1 × 10−6. Table 1 lists the computational results for products 1−3. Table 2 shows the influence of the number of dynamic time slots on the computational results, as reflected in the case of product 1. Nine static time slots are assigned to the case of product 1. We can calculate an approximate set of the number of dynamic time slots within the static time slots, as shown in the second row of Table 2. However, the approximate set of the number of dynamic time slots (2,2,2,1,2,2,2,2,2) yields no feasible solution. Therefore, the set of the number of dynamic time slots should be adjusted. Usually, the static time slot with the highest input and output volumes of the product would be adjusted first. Hence, the number of dynamic time slots of the seventh static time slot (shown in Table 2) would be increased by one (2,2,2,1,2,2,3,2,2). A global optimal solution is obtained with an objective function value of 111. In the end, the optimal number of dynamic time slots would be investigated by increasing the number of dynamic time slots of the static time slots one by one. The solution with a minor objective function value 59 is found with the number of dynamic time slots (2,2,3,1,2,2,3,2,2) and (2,2,2,2,2,2,3,2,2). If the number of dynamic time slots within each static time slot is increased by one (3,3,4,2,3,3,4,3,3), there is no improvement in the objective function value, and a longer computational time (9373 s vs 38 s) is observed compared to the sets (2,2,3,1,2,2,3,2,2) and (2,2,2,3,2,2,3,2,2).

Oxrns , nd

∀ r ∈ RP , ns ∈ Ns , nd ∈ Nd , nd ≥ 2

(39.4)

Ztrrns ,1 ≥ Fxrns ,1 − Fxrns − 1, ′ Nd(ns − 1) ′ ∀ r ∈ RP , ns ∈ Ns , ns ≥ 2

(39.5)

Ztrrns ,1 ≥ Fxrns − 1, ′ Nd(ns − 1) ′ − Fxrns ,1 ∀ r ∈ RP , ns ∈ Ns , ns ≥ 2

(39.6)

Ztrrns ,1 ≥ Oxrns ,1 − Oxrns − 1, ′ Nd(ns − 1) ′ ∀ r ∈ RP , ns ∈ Ns , ns ≥ 2

(39.7)

Ztrrns ,1 ≥ Oxrns − 1, ′ Nd(ns − 1) ′ − Oxrns ,1 ∀ r ∈ RP , ns ∈ Ns , ns ≥ 2

(39.8)

Ztssns , nd ≥ Fysns , nd − Fysns , nd − 1 ∀ s ∈ SP , ns ∈ Ns , nd ∈ Nd , nd ≥ 2

(40.1)

Ztssns , nd ≥ Fysns , nd − 1 − Fysns , nd ∀ s ∈ SP , ns ∈ Ns , nd ∈ Nd , nd ≥ 2

(40.2)

Ztssns , nd ≥ Oysns , nd − Oysns , nd − 1 ∀ s ∈ SP , ns ∈ Ns , nd ∈ Nd , nd ≥ 2

(40.3)

Ztssns , nd ≥ Oysns , nd − 1 − Oysns , nd ∀ s ∈ SP , ns ∈ Ns , nd ∈ Nd , nd ≥ 2

(40.4)

Ztssns ,1 ≥ Fysns ,1 − Fysns − 1, ′ Nd(ns − 1) ′ ∀ s ∈ SP , ns ∈ Ns , ns ≥ 2

(40.5)

Ztssns ,1 ≥ Fysns − 1, ′ Nd(ns − 1) ′ − Fysns ,1 ∀ s ∈ SP , ns ∈ Ns , ns ≥ 2

(40.6)

Ztssns ,1 ≥ Oysns ,1 − Oysns − 1, ′ Nd(ns − 1) ′ ∀ s ∈ SP , ns ∈ Ns , ns ≥ 2

(40.7)

Ztssns ,1 ≥ Oysns − 1, ′ Nd(ns − 1) ′ − Oysns ,1 ∀ s ∈ SP , ns ∈ Ns , ns ≥ 2

(40.8)

The objective function is formulated as eq 41. min Z =

⎛ Ztins , nd + ω⎜⎜ ∑ nd ∈ Nd ⎝ r ∈ RP

∑ ∑ ∑ i ∈ I ns ∈ Ns

+

∑ ∑ s ∈ SP ns ∈ Ns

⎞ ∑ Ztssns , nd⎟⎟ nd ∈ Nd ⎠

∑ ∑

Ztrrns , nd

ns ∈ Ns nd ∈ Nd

(41) G

DOI: 10.1021/acs.iecr.7b03275 Ind. Eng. Chem. Res. XXXX, XXX, XXX−XXX

Article

Industrial & Engineering Chemistry Research Table 1. Computational Results of Different Scenarios for Products 1−3 scenario

p1 (0−336 h)

p2 (0−336 h)

p3(0−336 h)

p1 (336−720 h)

dynamic time slots continuous variables binary variables constraints CPU time (s) optimal solution switch operation of tanks switchover between tank fields

9 1406 608 9090 38 59 11 1

9 1110 480 6186 20 33 10 1

8 1110 480 6762 36 56 9 0

10 1748 760 11 460 170 41 13 1

Table 2. Influence of the Number of Dynamic Time Slots on the Computational Results

Figure 4. Gantt charts for product 1 (0−336 h).

section, the “connecting pipe” can only run unidirectionally. This indicates that in a tank hub with two tank farms (1) if only one batch arrives at the tank hub through an inputting pipeline, either tank farm can be loaded by the batch and (2) if two batches arrive at the tank hub through two inputting pipelines, the tank farms

Figure 4 shows the Gantt chart for the M-TH dealing with product 1. It can be observed that the constraints that a tank farm can only load the product from one pipeline and the product from a pipeline can only input to one tank farm at the same time are satisfied. Moreover, as mentioned in the problem description H

DOI: 10.1021/acs.iecr.7b03275 Ind. Eng. Chem. Res. XXXX, XXX, XXX−XXX

Article

Industrial & Engineering Chemistry Research

times between the tank farms are 1, 1, and 0 for products 1, 2, and 3, respectively. Figures 4−6 show that the unnecessary switch operations of the tanks are minimized, implying that the formulation presented in this paper for identifying the switch operations is effective. For example, during the transition from one static time slot to another, there is a tendency of delaying the switch operation as much as possible so that the tanks operate more smoothly, and the switch operations tend to occur after the tanks are full or empty. These are highly desirable from operational and cost standpoints. Figure 7 shows the inventory profiles for product 1−3 (0−336 h), including the dynamic behavior of the tanks during the horizon. There are 25 tanks in the M-TH, nine for product 1 (four in tank farm 1 and five in tank farm 2), eight for product 2 (four in tank farm 1 and four in tank farm 2), and eight for product 3 (three in tank farm 1 and five in tank farm 2). Moreover, each tank has opening stocks. In addition, Figure 7 shows the inventory profiles of each tank. Six subfigures are included according to different capacities and storing different types of the product. The subfigures show that the inventory of each tank is within the upper and lower limitation of the tanks during the scheduling horizon. The timing and material balance are in good agreement. The slopes of the inventory curve indicate the flow rates of the input and output flows of each tank.

can only load via the direct connection. For example, in the static time slot ns1, only one batch arrives at the M-TH. The tank i4 (belongs to tank farm j1) loads in the first dynamic time slot and i8 (belongs to tank farm j2) loads in the second dynamic time slot. However, in the static time slot ns4, two batches arrive at the M-TH through inputting pipelines k1 and k2 simultaneously. The tank i4 (belongs to tank farm j1) loads from pipeline k1 and tank i8 (belongs to tank farm j2) loads from pipeline k2. With regard to the operations between the pipelines and the tanks, it can be observed that a tank can only load from one pipeline and the product from a pipeline can be inputted to only one tank at a given time. Within each static time slot, the operations between the pipelines and the tanks are synchronized across the dynamic time slots, which can be verified by comparing the Gantt charts of the pipelines and the corresponding tanks. Moreover, the pipelines run continuously throughout the static time slots. Therefore, the total length of the dynamic time slots implemented between the tanks and a pipeline should be equal to the length of the static time slot. This is verified in the example for inputting pipeline k1 in the static time slot ns3 (shown in Figure 4), where the total length of the dynamic time slots of i1, i2, and i3 is equal to the length of the static time slot ns3. As the loading and unloading operations of the tanks are not allowed simultaneously, they should be assigned to different time slots, which can be verified from the Gantt chart for product 2, shown in Figure 5. In the first static time slot, the tank i13 feeds the outputting pipeline m1 in the first dynamic time slot, and it is loaded by the inputting pipeline k1 in the second dynamic time slot. Moreover, after receiving the product, a tank must settle for at least 3 h before it unloads again, which can also be verified from the Gantt chart for product 2 in Figure 5. In the static time slot ns5, the tank i17 finishes its loading operation at 142.17 h and starts the unloading operation at 145.17 h. The objective values of products 1, 2, and 3 are 59, 56, and 31, respectively, as listed in Table 1. As mentioned in the mathematical formulation section, the starting and ending points of a batch arriving or leaving from the M-TH are considered as “switch operations” and the “switch operations” do not influence the optimality of the solution. Accordingly, the true switch operations between the tanks are 11, 10, and 9 times and switchover



LONG-TERM PLANNING We consider a scenario for long-term planning, involving the same system as the aforementioned product 1 but with an extended scheduling horizon of a month (720 h). The required data of product 1 (336−720 h) for the mathematical model is presented in Tables S7 and S8. Table S7 presents the parameters related to the tanks. Table S8 lists the parameters related to the schedules of the connected pipelines. A time horizon partitioning strategy is employed, wherein we solve the model only for a period at a time, and the initial data for one period are given from the results obtained for the previous period. Figure S1 shows the Gantt chart of the M-TH dealing with product 1 for the second period (336−720 h). Table 3 presents the computational results of the long-term scenario, wherein it is divided into two mediumterm scenarios. The initial data for the second medium period are

Figure 5. Gantt charts for product 2 (0−336 h). I

DOI: 10.1021/acs.iecr.7b03275 Ind. Eng. Chem. Res. XXXX, XXX, XXX−XXX

Article

Industrial & Engineering Chemistry Research

Figure 6. Gantt charts for product 3 (0−336 h).

Figure 7. Inventory profiles of each tank for product 1−3 (0−336 h). J

DOI: 10.1021/acs.iecr.7b03275 Ind. Eng. Chem. Res. XXXX, XXX, XXX−XXX

Article

Industrial & Engineering Chemistry Research

(208 CPU s with a gap of 0% in comparison to 10 000 CPU s with a gap of 15.85%).

Table 3. Comparison between a Long-Term Scenario and Two Medium-Term Scenarios scheduling horizon

0−336 h

336−720 h

0−720 h

CPU time (s) optimality gap (%) best solution

38 0 59

170 0 43

10 000 15.85 105



S Supporting Information *

The Supporting Information is available free of charge on the ACS Publications website at DOI: 10.1021/acs.iecr.7b03275. Table S1. Parameters related to tanks stored product 1. Table S2. Parameters related to the schedules of connected pipelines for product 1. Table S3. Parameters related to tanks stored product 2. Table S4. Parameters related to the schedules of connected pipelines for product 2. Table S5. Parameters related to tanks stored product 3. Table S6. Parameters related to the schedules of connected pipelines for product 3. Table S7. Parameters related to tanks stored product 1 (336−720 h). Table S8. Parameters related to the schedules of connected pipelines for product 1 (336−720 h). Table S9. Parameters related to additional tanks stored product 1. Table S10. Batch plans of the upstream pipeline k1 feeding the transfer hub. Table S11. Batch plans of the upstream pipeline k2 feeding the transfer hub. Table S12. Batch plans of the downstream pipeline m1 leaving from the transfer hub. Table S13. Batch plans of the downstream pipeline m2 leaving from the transfer hub. Figure S1. Gantt charts for product 1 (336−720 h). (PDF)

given from the results obtained for the first period. With regard to the two medium-term scenarios, the solution with a relative gap of 0% can be found in 208 CPU s. In contrast, the best solution found after 10 000 CPU s for the scenario with a long-term horizon has an optimality gap of 15.85%.



MORE TANKS To show the influence of the number of tanks on the computational results, we consider a case study with a larger number of tanks. This system is the same as the system for product 1 (0−336 h) but with 12 tanks. The initial data for additional tanks is presented in Table S9. Table 4 presents the computational Table 4. Comparison between a Long-Term Scenario and Two Medium-Term Scenarios the number of tanks

9

12

continuous variables binary variables constraints CPU time (s) optimal solution

1040 608 9090 38 59

2090 912 15 350 1529 59

ASSOCIATED CONTENT



AUTHOR INFORMATION

Corresponding Author

*E-mail: [email protected].

results of the scenario of product 1 (0−336 h) with more tanks. As a result, the optimal value is 59, which is the same as the case with less tanks. However, the computational time increased dramatically with a larger number of tanks (1529 vs 38 s). Although the number of tanks is increased, the capacity of the tanks is the same as the former instance, and the initial inventory of the additional tanks is similar to the tanks in the former instance. Therefore, it is possible to get the same optimal value although the number of tanks is increased.

ORCID

Changchun Wu: 0000-0002-6735-006X Notes

The authors declare no competing financial interest.



NOMENCLATURE

Set/Subscript



I/i J/j K/k M/m R/r S/s Ns/ns Nd(ns)/nd

CONCLUSION In this paper, an MILP formulation for optimizing the operation scheduling of a TH with multiple tank farms connected to a multiproduct pipeline network was developed. The objective was to optimize the operation scheduling of the loading and unloading operations of the tanks while minimizing the number of switch operations of the tanks and the switchovers between the tank farms. A MILP formulation was presented based on a new continuous time representation with static and dynamic time slots. The static time slots are divided on the basis of the given schedules of the pipelines. On the contrary, the duration and starting/ending points of dynamic time slots are determined by the optimization process. Moreover, the state variables of the “connecting pipe” were used to define the connection between the tank farms and count the switchover times between the tank farms. The results obtained for a real-world case showed the tendency of delaying the switch operation of the tanks and switchover between the tank farms as much as possible so that the tank hub operates more smoothly. A time horizon partitioning strategy was employed to deal with the long-term horizon scenario. A long-term scenario and two medium-term scenarios were analyzed to show that the time horizon partitioning strategy can save considerable computational time

tank tank area input pipeline output pipeline input connecting pipe output connecting pipe static time slot dynamic time slot in static time slot ns

Parameters

v0i vmin i vmax i rqnks sqnms xrnks n

xsms n

t1s n t2s ts K

the initial inventory of tank i at the beginning of scheduling horizon (m3) the lower storage limit of tank i (m3) the upper storage limit of tank i (m3) the flow rate of oil products from input pipeline k in the static time slot ns the flow rate of oil products to output pipeline m in the static time slot ns (0−1) whether the oil products is transported from input pipeline k in the static time slot ns (0−1) whether the oil products is transported to output pipeline m in the static time slot ns the initial time of static time slot ns (h) the end time of static time slot ns (h) the shortest time for settlement after receiving oil products (h). DOI: 10.1021/acs.iecr.7b03275 Ind. Eng. Chem. Res. XXXX, XXX, XXX−XXX

Article

Industrial & Engineering Chemistry Research



Crude Oil Unloading with Inventory Management. Ind. Eng. Chem. Res. 1996, 35 (5), 1630−1641. (11) Jia, Z.; Ierapetritou, M.; Kelly, J. D. Refinery Short-Term Scheduling Using Continuous Time Formulation: Crude-Oil Operations. Ind. Eng. Chem. Res. 2003, 42 (13), 3085−3097. (12) Reddy, P. C. P.; Karimi, I. A.; Srinivasan, R. Novel solution approach for optimizing crude oil operations. AIChE J. 2004, 50 (6), 1177−1197. (13) Chen, X.; Grossmann, I. E.; Zheng, L. A comparative study of continuous-time models for scheduling of crude oil operations in inland refineries. Comput. Chem. Eng. 2012, 44, 141. (14) Reddy, P. C. P.; Karimi, I. A.; Srinivasan, R. A new continuoustime formulation for scheduling crude oil operations. Chem. Eng. Sci. 2004, 59 (6), 1325−1341. (15) Mouret, S.; Grossmann, I. E.; Pestiaux, P. A Novel Priority-Slot Based Continuous-Time Formulation for Crude-Oil Scheduling Problems. Ind. Eng. Chem. Res. 2009, 48 (18), 8515−8528. (16) Mouret, S.; Grossmann, I. E.; Pestiaux, P. Time representations and mathematical models for process scheduling problems. Comput. Chem. Eng. 2011, 35, 1038. (17) Castro, P. M. Source-based discrete and continuous-time formulations for the crude oil pooling problem. Comput. Chem. Eng. 2016, 93, 382−401. (18) Terrazas-Moreno, S.; Grossmann, I. E.; Wassick, J. M. A mixedinteger linear programming model for optimizing the scheduling and assignment of tank farm operations. Ind. Eng. Chem. Res. 2012, 51 (18), 6441−6454. (19) Neiro, S. M. S.; Murata, V. V.; Pinto, J. M. Hybrid time formulation for diesel blending and distribution scheduling. Ind. Eng. Chem. Res. 2014, 53 (44), 17124−17134. (20) Schneider, G. A.; Neves, F., Jr; Magatão, L.; Arruda, L. V. MILP Model for the Tank Farm Operation Problem of Finished Products in Refineries. Ind. Eng. Chem. Res. 2016, 55 (44), 11542−11565.

VARIABLES

0-1 Variables ns,nd Xi,k

Yni,ms,nd Xtni s,nd Ytni s,nd s,nd Fxn,n r ns,nd Oxr Fyns s,nd Oyns s,nd

whether tank i receives oil products from input pipeline k in the time slot ns ∼ nd (ns ∼ nd denotes the dynamic time slot nd in static time slot ns, same as follows) whether tank i delivers oil products for output pipeline m in ns ∼ nd whether tank i has receiving task in ns ∼ nd whether tank i has delivery task in ns ∼ nd the product in connecting pipe r flows positively the product in connecting pipe r flows negatively the product in connecting pipe s flows positively the product in connecting pipe s flows negatively

Continuous Variables

Vni s,nd

the inventory of tank i at the end of time slot ns ∼ nd (m3) Tksni,ks,nd the starting time of tank i receiving oil products from input pipeline k in the time slot ns ∼ nd (h) Tkf ni,ks,nd the ending time of tank i receiving oil products from input pipeline k in the time slot ns ∼ nd (h) Tmsni,ms,nd the starting time of tank i delivering oil products to output pipeline m in the time slot ns ∼ nd (h) ns,nd Tmf i,m the ending time of tank i delivering oil products to output pipeline m in the time slot ns ∼ nd (h) n ,n Zti s d (0 to 1) whether tank i has a switch operation in time slot ns ∼ nd n ,n Ztrr s d (0 to 1) whether a switchover occurs between two tank farms connected by a “connecting pipe” r in time slot ns ∼ nd n ,n Ztss s d (0 to 1) whether a switchover occurs between two tank farms connected by a “connecting pipe” s in time slot ns ∼ nd.



REFERENCES

(1) García-Sánchez, A.; Arreche, L. M.; Ortega-Mier, M. Combining simulation and tabu search for oil-derivatives pipeline scheduling. Studies in Computational Intelligence 2008, 128, 301−325. (2) Herrán, A.; de la Cruz, J. M.; de Andrés, B. A mathematical model for planning transportation of multiple petroleum products in a multipipeline system. Comput. Chem. Eng. 2010, 34, 401−413. (3) MirHassani, S. A.; Jahromi, H. F. Scheduling multi-product treestructure pipelines. Comput. Chem. Eng. 2011, 35, 165−176. (4) 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. (5) Mostafaei, H.; Castro, P. M.; Ghaffari-Hadigheh, A. A novel monolithic MILP framework for lot-sizing and scheduling of multiproduct treelike pipeline networks. Ind. Eng. Chem. Res. 2015, 54 (37), 9202−9221. (6) 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. (7) 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. (8) Cafaro, D. C.; Cerdá, J. Rigorous scheduling of mesh-structure refined petroleum pipeline networks. Comput. Chem. Eng. 2012, 38, 185−203. (9) Castro, P. M. Optimal Scheduling of Multiproduct Pipelines in Networks with Reversible Flow. Ind. Eng. Chem. Res. 2017, 56 (34), 9638−9656. (10) Lee, H.; Pinto, J. M.; Grossmann, I. E.; Park, S. Mixed-Integer Linear Programming Model for Refinery Short-Term Scheduling of L

DOI: 10.1021/acs.iecr.7b03275 Ind. Eng. Chem. Res. XXXX, XXX, XXX−XXX