Short-Term Scheduling of Refinery Crude Oil Operations - American

Jun 11, 2012 - capacity storage tanks and charging tanks, hence, these models .... crude-oil from vessels to storage tank is termed as unloading task,...
0 downloads 0 Views 2MB Size
Article pubs.acs.org/IECR

Short-Term Scheduling of Refinery Crude Oil Operations† Sanjeev Yadav and Munawar A. Shaik* Department of Chemical Engineering, Indian Institute of Technology, Delhi, Hauz Khas, New Delhi, 110 016, India ABSTRACT: Scheduling of crude oil unloading and loading operations is an important optimization problem for minimizing the significant costs at the front end of a refinery. The scheduling problem involves finding the optimal operation of crude-oil unloading from vessels, its transfer to storage tanks, and determination of charging schedule for each crude-oil mixture to the continuous distillation units. In this work, we propose a simplified state-task-network (STN) based formulation to address the problem of short-term scheduling of crude oil operations using unit-specific event-based continuous-time representation by incorporating explicit storage tasks for handling material transfer from storage and charging tanks. Constraints are developed for different cases corresponding to material flow in a tank based on (i) whether bypassing is allowed or not, (ii) whether crude mixing is allowed or not, and based on (iii) whether simultaneous input and output is allowed or not. The proposed model is applied to a few benchmark examples from literature giving better results with improved objective functions compared with the results reported in previous works.

1. INTRODUCTION In industry, scheduling is necessary to define which products are to be produced, which products are to be consumed at each time instance over a given period; to determine sequencing of products on each unit, to decide when to perform changeovers; to predict the inventory levels of different products, raw material arrival, and final product dispatch in order to meet the product demands. Efficient scheduling of all the parts of an enterprise, from raw material procurement to production and final product distribution, is a key to economic gain or loss. In the last couple of decades researchers have developed various formulations to model real-life scheduling problems based on different time representations.1,2 A detailed comparison of various continuoustime models for short-term scheduling of batch and continuous plants was performed recently by Shaik et al.3 and Shaik and Floudas.4−6 Among the different models unit-specific eventbased formulations3−11 are most popular because of their better performance and smaller model size. The issues related to modeling are much different in batch and continuous plants, and there is significant research on scheduling of batch plants compared to continuous plants. In this work, we limit our focus on scheduling of continuous plants. For semicontinuous/continuous plants involving various storage requirements such as dedicated, finite, unlimited, and no intermediate storage policies, Shaik and Floudas4 presented an improved model compared to Ierapetritou and Floudas,8 the effectiveness of which was demonstrated through the solution of an industrial case study from a fast-moving consumer goods manufacturing process. Recently, Li et al.10 presented additional benchmark examples for batch and semicontinuous/continuous plants and demonstrated the generality of the models of Shaik and Floudas.4,6 Additionally, for semicontinuous/continuous processes Li et al.10 emphasized the need for considering explicit storage tasks for the cases involving dedicated finite storage policies as well, thus eliminating the doubt in Shaik and Floudas4 for this scenario. In the context of a refinery, optimization of overall refinery operations can be divided into three subproblems: (i) scheduling of crude-oil operations involving unloading and loading of © 2012 American Chemical Society

different types of crude-oil/crude-mix, (ii) scheduling of the production process, and finally (iii) scheduling of product blending and distribution process. In this work, we address the first part, i.e. scheduling of crude-oil operations. The main feature of crude-oil scheduling is the blending and storage of the right crude-mix just before the crude-distillation units (CDUs) to ensure their continuous operation and to minimize the total cost satisfying several operational constraints. In the scheduling literature, several authors have addressed the problem of refinery crude-oil operations using both discrete and continuous-time representations. Shah12 and Lee et al.13 presented initial efforts to develop the crude-oil scheduling model based on discrete-time representations. Later, several short-term scheduling models were developed for crude-oil operations based on continuoustime representations14−21 resulting in reduced complexity, fewer variables and constraints giving rise to improved solutions compared to their discrete-time counter parts. Among the unit-specific event-based models, the following are the limitations of Jia et al.,14 Jia and Ierapetritou,15 and Furman et al.:16 (i) storage tasks are not explicitly modeled for the finite capacity storage tanks and charging tanks, hence, these models might give solutions that are either suboptimal or infeasible or have real time storage violations as discussed in Shaik and Floudas4 and Li et al.10 (ii) These models do not accurately monitor the inventory levels in storage and charging tasks unlike the model of Shaik and Floudas,4 and only depict the crude-oil/ mixture transfers across different units. (iii) They do not clearly distinguish the scenarios based on whether bypassing is allowed or not. Additionally, in Jia et al.14 the consuming tasks are not properly aligned with respect to the producing tasks, leading to physically impossible scenarios. In the two Gantt charts reported in their paper14 for example 1 (both MILP and MINLP solutions), it can be observed that crude-oil is transferred to a Received: Revised: Accepted: Published: 9287

January 6, 2012 May 3, 2012 June 11, 2012 June 11, 2012 dx.doi.org/10.1021/ie300046g | Ind. Eng. Chem. Res. 2012, 51, 9287−9299

Industrial & Engineering Chemistry Research

Article

charging tank even before it is unloaded into the storage tank, in other words a downstream consuming task starts utilizing the amount produced/transferred even before its production/ transfer by an upstream producing task. Similarly, in the Gantt charts reported in their paper14 for examples 1 and 2, it can be observed that the transfers from storage tanks are not shown accurately. These two issues are partly corrected by Jia and Ierapetritou15 by aligning the producing and consuming tasks, but it is not sufficient4,10 and may still lead to real-time storage violations because explicit storage tasks are not modeled and the condition of same start and finish times is not enforced for the producing and consuming tasks. Furman et al.16 partly resolved these issues compared to Jia et al.,14 and Jia and Ierapetritou,15 however, they enforced no simultaneous input and output restriction uniformly for all tanks involving multicomponent flows irrespective of whether mixing is allowed or not. Additionally, they proposed modified material and sequencing constraints to enforce that a consuming task would always start after the end of a producing task which need not be true always, because if there is sufficient inventory a consuming task may start earlier. Due to these limitations their model may either give infeasible or suboptimal solutions or may require more events to find the optimal solution. Karuppiah et al.17 presented an outerapproximation algorithm to find the global optimum solution based on the model of Furman et al.16 and hence, the same limitations mentioned above would apply. There are different ways of producing the crude blends before CDUs. In some cases the different types of crudes are blended directly in the tanks, while in other cases the blend is made in a manifold just before the CDUs using the pipeline. In the present study we focus on the first case. In this paper, we propose a simplified state-task-network (STN)-based formulation to address the problem of short-term scheduling of crude-oil operations using unit-specific event-based continuous-time representation by incorporating explicit storage tasks for handling material transfer from storage and charging tanks. The proposed model is an extension of the model of Shaik and Floudas.4 Constraints are developed for different cases for a tank based on (i) whether bypassing is allowed or not, (ii) whether crude mixing is allowed or not, and based on (iii) whether simultaneous input and output is allowed or not. Several models have been developed in the literature18−21 for scheduling of crude-oil operations involving other features such as multiple parcel vessels, multiple jetties, brine settling, multiple properties for characterizing crude blends, and multiple tanks feeding multiple CDUs, etc. These issues may be incorporated in future work by extending the proposed model.

Figure 1. Oil-flow network for example 1.

Figure 2. Oil-flow network for example 2.

Figure 3. Oil-flow network for example 3.

instantaneous mixing is assumed in the tanks with no additional time required for mixing, (c) the property/state of each crude oil or crude mix is decided only by specific key components. The following information is required for scheduling the flow of crude oil in the above network: (a) Estimated arrival times of ships containing vessels with given sizes, crude unloading transfer rates. (b) Number of storage and charging tanks, their capacities, their initial crude stocks and compositions, crude quality specifications. (c) Number of CDUs, their processing rates, and crude quality specifications. (d) Demand of crude-mix to be charged from a charging tank. (e) Bounds on flow rates of different streams in the network. (f) Time horizon for scheduling. (g) Sea waiting costs, unloading costs, crude change over costs, and storage costs. Given the above data and all system parameters related to a refinery, the scheduling problem can be stated as to determine the following: (i) Unloading schedule for each vessel including the timings, rates, and tank transfers.

2. PROBLEM DEFINITION At the front end of a refinery different types of crude oils are received through ships carrying large crude vessels that arrive at the port from which different grades of crude-oil is unloaded into storage tanks. These crudes are blended in charging tanks to produce different crude-mixtures, which are then charged directly to the CDUs. Typical oil-flow networks are shown below (Figures 1−3) to illustrate the crude-oil unloading and blending system for three benchmark examples taken from literature.13,14 The crude oil supply streams or crude carrying vessels are connected to the storage tanks, which are connected to the charging tanks, which in turn, are connected to the distillation units. The following assumptions are made: (a) the time required for a CDU mode change is neglected, (b) perfect and 9288

dx.doi.org/10.1021/ie300046g | Ind. Eng. Chem. Res. 2012, 51, 9287−9299

Industrial & Engineering Chemistry Research

Article

Figure 4. STN representation for example 1.

Figure 5. STN representation for example 2.

STN-based mathematical formulation is proposed for an efficient solution of the problem.

(ii) Inventory and composition profiles of all storage and charging tanks. (iii) Charging schedule for each CDU including the feed tanks, feed rates, and timings. Subject to the following operating practices: (1) Sequence of vessels to be unloaded from the ship is given a priori. A vessel can unload to only one storage tank at any moment, but may unload to multiple tanks over time. A vessel has to wait at sea if a preceding vessel does not leave the docking station. (2) A charging tank cannot receive and feed crude to CDU at the same time. (3) Each charging tank may charge at most one CDU at any time and multiple charging tanks cannot feed a CDU simultaneously. (4) All the CDUs have to be operated continuously throughout the time horizon. The objective of the scheduling problem is to maximize the gross profit, which is the revenue computed in terms of crude margins minus the operating costs. Otherwise, the objective could be to simply minimize the total operating cost, which includes sea waiting cost, unloading cost, inventory cost, and changeover cost. On the basis of the above description of the problem, a simpler

3. STN REPRESENTATION In a traditional STN representation tasks are normally defined based on the different processing operations occurring in a unit. In the proposed model, in order to effectively handle the unloading and loading operations the transfer of oil from one storage unit to another unit is treated as a task. Unloading of crude-oil from vessels to storage tank is termed as unloading task, transfer of crude-oil from storage tank to charging tank is termed as transfer task, and charging of CDUs from crude-mix stored in charging tank as charging task. The corresponding units suitable for these tasks would be the respective pipelines connected between the upstream and downstream units, although not explicitly mentioned here. The proposed model considers crudeoil stored in marine vessels as raw material states, crude-oil and crude-mix stored in storage tanks and charging tanks, respectively, as the intermediate states, and crude-mix fed to the CDUs as final states. Unloading tasks, transfer tasks, and charging tasks also distinguish the change of status of oil after each operation in the network. The proposed STN representations for 9289

dx.doi.org/10.1021/ie300046g | Ind. Eng. Chem. Res. 2012, 51, 9287−9299

Industrial & Engineering Chemistry Research

Article

Figure 6. STN representation for example 3.

the benchmark examples shown earlier in Figures 1−3 are shown in Figures 4−6. Because of the STN representation, which naturally treats all tasks and states in a unified way, there is no need to consider explicit variables and constraints based on each unit (vessels, storage tanks, charging tanks, etc.) as done in most of the works in the literature.14,15 And hence, there is no need to write separate allocation constraints, material balances, and duration constraints for each unit (vessels, storage tanks, charging tanks, etc.) in a repeated manner. Although they claim that some models are based on STN representation in literature they did not take advantage of the elegance and compactness of STN-based formulations.

4. MATHEMATICAL FORMULATION The nomenclature used in the proposed formulation is presented at the end of the text of this article. Mathematical formulation proposed in this paper aims to handle optimization of the problem of transfer of crude oil from its source, i.e. marine vessels, to its destination, i.e. CDUs, for which the following constraints are proposed. Explicit storage tasks are considered for handling material transfer from storage and charging tanks. The proposed model is an extension of the model of Shaik and Floudas,4 where they classified storage tanks based on whether bypassing is allowed or not and proposed constraints accordingly. Here, we consider additional scenarios based on (i) whether crude mixing is allowed or not, and based on (ii) whether simultaneous input and output is allowed or not. The different possibilities are shown in Figure 7. When crude oil mixing is allowed in a tank, then bypassing of storage should not be allowed because the crude oil entering the tank cannot be transferred directly to the downstream unit without mixing the same with another stream or with the oil stored in the tank. In this case, depending on the operational flexibility simultaneous input and output to the tank may or may not be allowed. Due to practical limitations if instantaneous mixing is not possible or some additional/settling time is to be enforced in a tank where mixing is occurring, then it will not be desirable to allow simultaneous input

Figure 7. Different possibilities for mixing and material flow in a tank.

and output in that tank. Additionally, simultaneous input and output option may be disabled to avoid high fluctuations in the tank levels, when bypassing is not allowed. On the other hand, if crude mixing is not taking place in a tank, then several possibilities exist. If simultaneous input and output to the tank is not allowed due to operational limitations, then automatically the option of bypassing of storage does not arise. Suppose, if simultaneous input and output to the tank is allowed, then both options of storage bypassing may or may not be allowed, are possible. Depending on each case, the material balances, sequencing, and timing constraints would have to be formulated carefully. The following is the proposed mathematical model which takes care of the above-mentioned scenarios and distinguishes them clearly: w(ist , n + 1) ≥ w(ist , n) + z(ist , n) − 1 ∀ ist ∈ Ist , n ∈ N

(1)

Allocation Constraints. Constraint 1 states that if a storage task is active and it stores a nonzero amount by the end of event n, then the same storage task should be active at next event n + 1 as well. Compared to the general model of Shaik and Floudas,4 9290

dx.doi.org/10.1021/ie300046g | Ind. Eng. Chem. Res. 2012, 51, 9287−9299

Industrial & Engineering Chemistry Research

Article

here it is not necessary to consider explicit allocation constraints, because there are no multiple processing/storage tasks suitable in a given unit. f imin (Tf (ip , p

st 0s +

∀ i p ∈ Ip , n ∈ N

p

∀ ist ∈ Ist , n ∈ N

(3)

b(ist , n) ≤ stimax z(ist , n) st

∀ ist ∈ Ist , n ∈ N

(4)

Tf (ist , n) ≥ Ts(ist , n)

∀ i ∈ Ip , n ∈ N

∀ ist ∈ Ist , n ∈ N

∑ ∑ b(ip , n) ip ∈ Iut

∀ ist ∈ Is , s ∈ S b(ist , n) = st 0s +

im1

b(ip , n) −

(5)

st 0s +

∑ ip ∈ Isp

b(ip , n) −

ist ∈ Is

ip ∈ Isp

∀ s ∈ Sim1a , n > 1

(11)

∑ stimaxw(ist , n) st

ist ∈ Is

∑ ip ∈ Isp

(12)

b(ip , n) ≤

∑ stimaxw(ist , n) st

ist ∈ Is

(13)

st(s , k , n) = st 0sst 0s , k − +





s ′∈ Sim1 ip ∈ Isp ∩ ip ∈ Isc′

∑ Q (ip , s , k , n)

ip ∈ Isc

b(ip , n)st 0s ′ , k

∀ s ∈ Sim2 , k ∈ K , n = 1

st(s , k , n) = st(s , k , n − 1) −

(14)

∑ Q (ip , s , k , n)

ip ∈ Isc

+





s ′∈ Sim1 ip ∈ Isp ∩ ip ∈ Isc′

(8a)

b(ip , n)st 0s ′ , k

∀ s ∈ Sim2 , k ∈ K , n > 1

∑ b(ip , n)

(15)

Constraints 14 and 15 are used for the component material balance. Constraint 14 states that for the first event, the amount of component k present in state s is equal to the initial amount of component k in state s adjusted by the amount of component k transferred into or out of the tank. Constraint 15 gives the component balance at higher events. Here, the crude-oil entering charging tank will have fixed concentration corresponding to the storage tank (st0s,k), while the crude-mix leaving the charging tank will have a variable concentration. Hence, component balances are not needed for storage tanks.

ip ∈ Isc

b(ip , n) ≤

∑ b(ip , n)

ip ∈ Isc

(c). Material Balances for Charging Tanks. Here, since simultaneous input and output is not allowed in charging tanks and crude mixing occurs in these tanks, hence, storage bypassing is not allowed and the constraints 10−13 are needed accordingly, which are similar to constraints 8 and 9. Material Balances for Component k. Scenario 1. When mixing occurs in the charging tanks only (and not in storage tanks).

(8b)

Constraint 8a states that the amount stored in a tank is adjusted by the amount it receives and the amount that it transfers at each event, while constraint 8b takes care of the initial amount available in the storage. For the case where crude mixing is also allowed in storage tanks, bypassing should not be allowed (Figure 7) and the constraints 9a and 9b are needed additionally.

∑ b(ist , n − 1) + ∑

(10)

b(ip , n) ≤

∑ b(ip , n)

∀ ist ∈ Is , s ∈ Sim1 , n = 1

∑ b(ip , n)

ip ∈ Isc

∀ s ∈ Sim2 , n = 1

ip ∈ Isc

,n>1

b(ip , n) −

∀ s ∈ Sim2 , n > 1

Overall Material Balances. (a). Material Balance for Vessels Unloading Crude Oil. Constraint 7 states that all the crude oil in the marine vessels should be unloaded to the storage tanks before leaving the docking station. (b). Material Balances for Storage Tanks. Here, simultaneous input and output is allowed in storage tanks. If crude mixing does not happen in these tanks, then storage bypassing can be allowed in storage tanks (Figure 7) and the constraints 8a and 8b are needed accordingly.



∑ ip ∈ Isp

b(ip , n) −

ip ∈ Isp

ist ∈ Is

(7)

ip ∈ Isp

∑ ip ∈ Isp

∑ b(ist , n − 1) + ∑

∀ s ∈ Sv

b(ist , n) = b(ist , n − 1) +

(9b)

∀ ist ∈ Is , s ∈ Sim2 , n = 1

(6)

n

st

ist ∈ Is

b(ist , n) = st 0s +

Duration Constraints. Constraint 5 states that the duration of a processing task should be zero if the task is not active at event n, otherwise the constraint is relaxed. While constraint 6 states that for all storage tasks corresponding to both storage and charging tanks the finish time must be greater than or equal to the start time at each event. st 0s =

∑ stimaxw(ist , n)

∀ ist ∈ Is , s ∈ Sim2 , n > 1

Capacity Constraints. In constraint 2 the limit on the quantity of a crude oil or crude mix that can be transferred from or into a tank/CDU is bounded by the minimum and maximum flow rates, while constraint 3 limits the quantity stored by a storage task at event n. Constraint 4, although similar to constraint 3, uses a different binary variable z(ist, n) to confine only those instances when nonzero amount is stored at event n, through penalizing it in the objective function defined later. Tf (ip , n) ≤ Ts(ip , n) + Hw(ip , n)

b(ip , n) ≤

b(ist , n) = b(ist , n − 1) +

(2)

b(ist , n) ≤ stimax w(ist , n) st

ip ∈ Isp

∀ s ∈ Sim1a , n = 1

n) − Ts(ip , n)) ≤ b(ip , n)

≤ f imax (Tf (ip , n) − Ts(ip , n))



∑ stimaxw(ist , n)

max stsmin , k b(ip , n) ≤ Q (ip , s , k , n) ≤ sts , k b(ip , n)

st

ist ∈ Is

∀ s ∈ Sim2 , k ∈ K , ip ∈ Isc , n > 1

(9a) 9291

(16a)

dx.doi.org/10.1021/ie300046g | Ind. Eng. Chem. Res. 2012, 51, 9287−9299

Industrial & Engineering Chemistry Research

Article

st(s , k , n) = st 0sst 0s , k −

Q (ip , s , k , n) = st 0s , k b(ip , n) ∀ s ∈ Sim2 , k ∈ K , ip ∈ Isc , n ∈ N , n = 1 stsmin , k b(ist ,

stsmax , k b(ist ,

n) ≤ st(s , k , n) ≤

(16b)

+

n)

∀ s ∈ Sim2 , k ∈ K , ist ∈ Isc , n ∈ N

+

∑ s ′∈ S

+



im1

ip ∈ Isp ∩ ip ∈ Isc′





s ′∈ Sim1a ip ∈ Isp ∩ ip ∈ Isc′

st(s , k , n) = st(s , k , n − 1) − +



+





s ′∈ Sim1a ip ∈ Isp ∩ ip ∈ Isc′

b(ip , n)st 0s ′ , k

∀ s ∈ Sim , ip ∈ Isc , ist ∈ Isc , k ∈ K , n > 1 Q (ip , s′, k , n)

∀ s ∈ Sim , ip ∈ Isc , ist ∈ Isc , k ∈ K , n ∈ N

Q (ip , s′, k , n) (19)

∀ s ∈ Sim1a , k ∈ K , ip ∈ Isc , n ∈ N

, k ∈ K , ip ∈

Isc ,

n∈N

(23)

Constraint 22 is used when simultaneous input and output is not allowed, whereas constraint 23 is used for cases where simultaneous input and output is allowed. In constraint 23, if the net amount stored at the end of an event is zero (i.e., z(ist, n) = 0) resulting in component and total inventories to be zero, then this equation becomes trivially satisfied. In that case, additional constraint enforcing same composition for all outgoing streams needs to be incorporated to avoid composition discrepancies. Note that nonlinearities appear in constraints 22 and 23, which makes this problem a MINLP, thus making it difficult to solve.

∑ Q (ip , s , k , n)

b(ip , n)st 0s ′ , k

n) ≤ st(s , k , n) ≤

(22)

Q (ip , s , k , n)b(ist , n) = st(s , k , n)b(ip , n) (18)

stsmax , k b(ist ,

(15a)

Q (ip , s , k , n)b(ist , n − 1) = st(s , k , n − 1)b(ip , n)

Ts(i , n) ≥ Timinw(i , n)

∀ i ∈ Iut , n ∈ N

(24)

Sequencing ConstraintsUnloading Constraints. Constraint 24 states that each vessel can start its unloading only after its arrival. Additionally, upper bounds need to be assigned to finish time of each unloading task so that it finishes unloading before the next scheduled unloading task starts. Ts(i , n + 1) ≥ Tf (i′, n)

∀ j ∈ J , i , i′ ∈ Ij , n < N

(25)

Sequencing Constraintsfor Tasks Occurring in the Same Unit. Constraint 25 states that start time of a task at the next event should be greater than or equal to the finish time of a task at the current event in each unit (both processing and storage). Sequencing ConstraintsCommon for All Tanks. The following sequencing constraints are written for all tanks (storage and charging):

max stsmin , k b(ip , n) ≤ Q (ip , s , k , n) ≤ sts , k b(ip , n)

∀s∈S



Component Concentrations. According to the perfect mixing assumption, the amount of component k of state s going out of a tank should be same as the amount present in the tank. Therefore, we need the following constraints to avoid composition discrepancies.

(a). For Charging Tanks. Constraints 18 and 19 determine the amount of crude-mix stored in charging tanks when they are being fed by crude-mix from some storage tanks and crude-oil from remaining storage tanks. The third term on the right-hand side of the equation is used for the crude-oil flow from storage tank (s ∈ Sim1) where there is no mixing (similar to eqs 14 and 15), while the fourth term is used for those storage tanks (s ∈ Sim1a) where mixing is taking place. Additionally, eqs 16 and 17 are required for keeping the component concentration in the tanks and in the flows within the limits. (b). For Storage Tanks Where Mixing Is Allowed (s ∈ Sim1a). Here, since crude mixing occurs in these tanks, hence, storage bypassing is not allowed (Figure 7) and constraints 20 and 21 would be needed in addition to eqs 8 and 9. Constraints 14a and 15a are component balances similar to 14 and 15 but written for s ∈ Sim1a.

im1a

∑ Q (ip , s , k , n)

∀ s ∈ Sim1a , k ∈ K , n > 1

b(ip , n)st 0s ′ , k

∀ s ∈ Sim2 , k ∈ K , n > 1

stsmin , k b(ist ,



s ′∈ Sv ip ∈ Isp ∩ ip ∈ Isc′

ip ∈ Isc



(14a)

ip ∈ Isc

∑ Q (ip , s , k , n)

st(s , k , n) = st(s , k , n − 1) −

s ′∈ Sim1 ip ∈ Isp ∩ ip ∈ Isc′

b(ip , n)st 0s ′ , k

∀ s ∈ Sim1a , k ∈ K , n = 1

ip ∈ Isc

∀ s ∈ Sim2 , k ∈ K , n = 1

+



(17)

Constraint 16a enforces bounds on the variable concentration of crude-mix leaving the charging tanks at higher events, while in constraint 16b, since simultaneous input and output is not allowed, the concentration of crude-mix leaving at first event would be same as initial concentration. Constraint 17 enforces similar bounds on the amount of component k present in state s at event n. Scenario 2. When mixing occurs in the charging tanks as well as in some storage tanks. st(s , k , n) = st 0sst 0s , k −



s ′∈ Sv ip ∈ Isp ∩ ip ∈ Isc′

∑ Q (ip , s , k , n)

ip ∈ Isc

Ts(ist , n) ≤ Tf (ist , n − 1) + H(1 − z(ist , n) + w(ip , n))

(20)

∀ s ∈ Sim , ist ∈ Is , ip ∈ Is , n ∈ N , n > 1

n)

(26)

If the corresponding processing task that either produces or consumes the state s is not active (w(ip,n) = 0), and there is a nonzero amount in the storage (z(ist, n) = 1), then it will continue

(21) 9292

dx.doi.org/10.1021/ie300046g | Ind. Eng. Chem. Res. 2012, 51, 9287−9299

Industrial & Engineering Chemistry Research

Article

to remain in the storage, hence, start time of the storage task should be equal to finish time of the same task at previous event as stated in constraints 25 and 26.

Constraints 36 and 37 state that the start time of a storage task should be same as the start time of the corresponding processing task that either produces or consumes the state s.

Tf (ist , n) ≥ Tf (ip , n) − H(2 − w(ist , n) − w(ip , n)) ∀ s ∈ Sim , ist ∈ Is , ip ∈ Is , n ∈ N

Ts(ist , n) ≥ Ts(ip , n) − H(2 − w(ist , n) − w(ip , n)) ∀ s ∈ Sim1 , ist ∈ Is , ip ∈ Is , n ∈ N

(27)

Constraint 27 states that the finish time of storage task should be greater than the finish times of both producing and consuming tasks of the state s.

Ts(ist , n) ≤ Ts(ip , n) + H(2 − w(ist , n) − w(ip , n)) ∀ s ∈ Sim1 , ist ∈ Is , ip ∈ Is , n ∈ N

Tf (ist , n) ≤ Tf (ip , n) + H(2 − w(ist , n) − w(ip , n)) + Hz(ist , n)

∀ s ∈ Sim , ist ∈ Is , ip ∈ Isc , n ∈ N

(28)

Ts(ist , n) ≥ Ts(ip , n) − H(2 − w(ist , n) − w(ip , n)) ∀ s ∈ Sim1a , ist ∈ Is , ip ∈ Isp , n ∈ N

Tf (ist , n) ≥ Tf (ip , n + 1) − H(2 − w(ist , n)

∀ s ∈ Sim1a , ist ∈ Is , ip ∈ Isp , n ∈ N (29)

− w(ip , n + 1)) + H(1 − z(ist , n))

Tf (ist , n) ≥ Hz(ist , n)

∀ ist ∈ Is , n = N

Ts(ip , n) ≥ Ts(ist , n) − H(2 − w(ist , n) − w(ip , n))

(30)

∀ s ∈ Sim1a , ist ∈ Is , ip ∈ Isc , n ∈ N

(31)

Tf (ip , n) ≥ Tf (i′ p , n) − H(2 − w(i′ p , n) − w(ip , n)) ∀ s ∈ Sim1a , ip ∈ Isc , i′ p ∈ Isp , n ∈ N

Ts(ip , n) ≥ Tf (i′ p , n) − H(1 − w(i′ p , n))

(32)

∀ s ∈ Sim2 , ip ∈ Isp , i′ p ∈ Isc , n ∈ N

Ts(ip , n) ≤ Ts(i′ p , n) + H(2 − w(i′ p , n) − w(ip , n))

∀ s ∈ Sim2 , ip ∈ Isp , i′ p ∈ Isc , n ∈ N

(43)

Operational Constraints. (a). No Simultaneous Input and Output. Constraints 42 and 43 enforce the requirement of no simultaneous input and output at any event from charging tanks, i.e. each charging tank can either be fed or charge a CDU at any event. For storage tanks with mixing allowed case also these constraints would be written if simultaneous input and output is

(34)

Tf (ip , n) ≤ Tf (i′ p , n) + H(2 − w(i′ p , n) − w(ip , n)) ∀ s ∈ Sim1 , ip ∈ Isc , i′ p ∈ Isp , n ∈ N

(42)

Ts(i′ p , n) ≥ Tf (ip , n) − H(1 − w(ip , n))

(33)

Tf (ip , n) ≥ Tf (i′ p , n) − H(2 − w(i′ p , n) − w(ip , n)) ∀ s ∈ Sim1 , ip ∈ Isc , i′ p ∈ Isp , n ∈ N

(41)

Sequencing Constraintsfor Charging Tanks. In this case also, since bypassing is not allowed for charging tanks, constraints 38−40 are needed for s∈Sim2 as well. However, if simultaneous input and output is not allowed either in storage or charging tanks, constraint 41 is not required as it will be taken care in 42 and 43.

Ts(ip , n) ≥ Ts(i′ p , n) − H(2 − w(i′ p , n) − w(ip , n))

∀ s ∈ Sim1 , ip ∈ Isc , i′ p ∈ Isp , n ∈ N

(40)

The finish time of the consuming task for state s must also be later than the finish time of the corresponding producing task as stated in 41.

Constraints 29 and 30 determine the finish time of storage tasks at all events except the last event, while constraint 31 determines the finish time at the last event. Here, since there are no more tasks after last event, the storage task continues to hold the nonzero amount until the end of the horizon thus giving accurate Gantt charts. Sequencing Constraintsfor Storage Tanks Where Mixing Is Not Allowed. If crude mixing does not happen in storage tanks, then storage bypassing can be allowed in storage tanks (Figure 7), and accordingly the start times and finish times of consuming and producing tasks must be same, respectively, as stated in constraints 32−35.

∀ s ∈ Sim1 , ip ∈ Isc , i′ p ∈ Isp , n ∈ N

(39)

Unlike constraints 36 and 37, the start time of the storage task here must be equal to the start time of the producing task only as stated in 38 and 39, while the consuming task may start later than the storage task as given in 40.

Tf (ist , n) ≤ Tf (ip , n + 1) + H(2 − w(ist , n) ∀ s ∈ Sim , ist ∈ Is , ip ∈ Is , n < N

(38)

Ts(ist , n) ≤ Ts(ip , n) + H(2 − w(ist , n) − w(ip , n))

− w(ip , n + 1)) − H(1 − z(ist , n)) ∀ s ∈ S , ist ∈ Is , ip ∈ Is , n < N

(37)

Sequencing Constraintsfor Storage Tanks Where Mixing Is Allowed. If crude mixing is allowed in storage tanks, then storage bypassing should not be allowed (Figure 7) and accordingly the following sequencing constraints are needed.

If the amount stored is zero (z(ist,n) = 0), then the finish time of storage task should be same as the finish time of corresponding consuming tasks according to constraints 27 and 28. However, if the amount stored is nonzero (z(ist,n) = 1), then it remains in storage until the next processing task starts, as stated in constraints 29 and 30.

im

(36)

(35) 9293

dx.doi.org/10.1021/ie300046g | Ind. Eng. Chem. Res. 2012, 51, 9287−9299

Industrial & Engineering Chemistry Research

Article

no explicit allocation constraints involving binary variables are used here to enforce these conditions.

Table 1. Unloading System Data for Examples 1−3 example 1

example 2

example 3

scheduling horizon (days) 8 10 12 no. of vessels 2 3 3 vessel arrival time (days) vessel 1 1 1 1 vessel 2 5 4 5 vessel 3 7 9 no. of storage tanks 2 3 3 no. of charging tanks 2 3 3 no. of CDUs 1 2 2 minimum flow rate 5(charging tasks), 5(charging tasks), 5(charging tasks), 0(others) 0(others) 0(others) maximum flow rate 50 50 50 unit unloading cost 8 8 10 unit sea waiting cost 5 5 5 unit inventory cost storage tank 0.08 0.05 0.04 charging tank 0.05 0.08 0.08 unit changeover cost 50 50 50 demand by CDUs oil mix 1 100 100 50 oil mix 2 100 100 50 oil mix 3 100 50 initial amount of crude vessel 1 100 100 50 vessel 2 100 100 50 vessel 3 100 50 initial amount in storage tank storage tank 1 25 20 20 storage tank 2 75 50 20 storage tank 3 70 20 initial amount in charging tank charging tank 1 50 30 30 charging tank 2 50 50 50 charging tank 3 30 30 maximum storage capacity storage tank 1 100 100 100 storage tank 2 100 100 100 storage tank 3 100 100 charging tank 1 100 100 100 charging tank 2 100 100 100 charging tank 3 100 100

ip ∈ Isp

n

(46)

(c). Continuous Operation of CDUs. Constraint 46 ensures that total operation time of each CDU should be equal to the time horizon H. Ts(ip , n) ≤ Tf (i′ p , n) + H(1 − w(i′ p , n)) ∀ s ∈ SCDU , ip , i′ p ∈ Isp , ip ≠ i′ p , n ∈ N

∀ s ∈ Sim2

∑ ∑ b(ip , n) = Ds ip ∈ Isc

n

(48)

Demand Constraint. The total demand of crude-mix must be met from all charging tasks as given in 48. Tss(i , n) ≥ Ts(i , n) − H(1 − w(i , n)) Tss(i , n) ≤ Ts(i , n)

∀ i ∈ Iut , n ∈ N

Tss(i , n) ≤ Hw(i , n)

Tfs(i , n) ≥ Tf (i , n) − H(1 − w(i , n)) Tfs(i , n) ≤ Tf (i , n)

∀ i ∈ Iut , n ∈ N

Tfs(i , n) ≤ Hw(i , n)

∀ i ∈ Iut , n ∈ N ∀ i ∈ Iut , n ∈ N

(53) (54)

Bilinear Constraintsfor Unloading Tasks. Constraints 49−54 are used to define start and finish times of unloading tasks only when the corresponding tasks are active, in order to define the unloading and sea waiting costs in the objective function given in 55. cost = Cs

∑ ∑ (Tss(i , n) − Timinw(i , n)) ut

i ∈ Iut

+ Cut

n

∑ ∑ (Tfs(i , n) − Tss(i , n)) i ∈ Iut

+ CstH

n



∑ ∑ (b(ist , n) + st 0s)

s ∈ Sim1∪ Sim1a ist ∈ Is

n

∑ ∑ ∑ (b(ist , n) + st 0s)

s ∈ Sim2 ist ∈ Is

i∈I

n

n

∑ ∑ (w(i , n) − D) n

+ P ∑ ∑ w(i , n) + P

∑ ∑ z(ist , n) ist ∈ Ist

n

(55)

Objective Function. The first term in the objective function is the sea waiting cost, the second term represents the unloading cost. The total inventory cost is approximated by third and fourth terms which correspond to the average value of the inventory levels over the time horizon under consideration. The fifth term corresponds to changeover costs, and in the last two terms we have a penalty on the total number of binary variables. The penalty for binary variables z(ist, n) may be

Ts(ip , n) ≥ Tf (i′ p , n) − H(1 − w(i′ p , n)) ∀ s ∈ SCDU , ip , i′ p ∈ Isp , ip ≠ i′ p , n ∈ N

(51)

(52)

i ∈ Ict

(b). No Simultaneous Charging of CDUs from Same Charging Tank and Vice Versa. A charging tank cannot feed multiple CDUs simultaneously as stated in 44.

(50)

∀ i ∈ Iut , n ∈ N

/(Ne + 1) + Ct (44)

∀ i ∈ Iut , n ∈ N (49)

/(Ne + 1) + CctH

∀ s ∈ Sim2 , ip , i′ p ∈ Isc , ip ≠ i′ p , n ∈ N

(47)

Constraints 45 and 47 ensure continuous supply of crude-mix to the CDUs to enforce continuous operation throughout the time horizon.

not allowed. Ts(ip , n) ≥ Tf (i′ p , n) − H(1 − w(i′ p , n))

∀ s ∈ SCDU

∑ ∑ (Tf (ip , n) − Ts(ip , n)) = H

(45)

Similarly, multiple charging tanks cannot feed the same CDU simultaneously as given in 45. Note that unlike in the literature, 9294

dx.doi.org/10.1021/ie300046g | Ind. Eng. Chem. Res. 2012, 51, 9287−9299

Industrial & Engineering Chemistry Research

Article

Table 2. Key Component Concentrations: In Initial Amount and their Range (Min, Max) example 1

example 2

component 1 vessel 1 vessel 2 vessel 3 storage tank 1 storage tank 2 storage tank 3 charging tank 1 charging tank 2 charging tank 3

0.01 0.06 0.01 0.06 0.02 (0.015, 0.025) 0.05 (0.045, 0.055)

example 3

component 1

component 2

component 1

0.01 0.03 0.05 0.01 0.03 0.05 0.0167(0.01, 0.02) 0.03(0.025, 0.035) 0.0433(0.04, 0.048)

0.04 0.02 0.01 0.04 0.02 0.01 0.0333(0.03, 0.038) 0.023(0.018, 0.027) 0.0133(0.01, 0.018)

0.01 0.085 0.06 0.02(0.01, 0.03) 0.05(0.02, 0.06) 0.08(0.06, 0.09) 0.03(0.025, 0.035) 0.05(0.045, 0.065) 0.08(0.075, 0.085)

Table 3. Model Statistics and Computational Results for Examples 1−3 continuous variables

constraints

cost

44 24 36

129 139 192

748 382 331

217 247 217.67

0.59 0.28 73.4

3 3

98 56 70

315 341 456

2247 990 825

305.8 413.48 352.55

51.84 4.89 4158.8

4 4

78 48 84

274 301 581

1510 888 1222

279.8 343.10 296.56

2.56 1.46 1089.4

3 3

example 1 proposedb Jia and Ierapetritou15 Lee et al.13 example 2 proposedb Jia and Ierapetritou15 Lee et al.13 example 3 proposedb Jia and Ierapetritou15 Lee et al.13 a

CPU time(s)a

binary variables

events

The CPU times for other literature models are shown for completeness only. bsolved with P = 0.01.

Figure 8. Gantt chart for example 1.

Bounds. In 56 the upper bound on timing variables is specified as the time horizon. In 57 the binary variable corresponding to the storage tasks that have nonzero initial amounts has been preassigned at the first event irrespective of whether bypassing is allowed or not. This is important especially when bypassing is allowed, for instance, if all initial amount is consumed at the first event itself implying that amount stored at the end of first event is zero. In this case, the storage task may or may not be active in constraint 3, but by enforcing 57 it will always be active because the amount is

different from other binary variables, and these penalties have to be tuned so that the variable z(ist, n) assumes nonzero value only when the amount stored is nonzero in eq 4 discussed earlier. Ts(i , n) ≤ H , Tf (i , n) ≤ H

∀ i ∈ I, n ∈ N

(56)

w(ist , n) = 1

∀ s ∈ Sim , ist ∈ Isc , n = 1, st 0s > 0

(57)

Ts(ist , n) = 0

∀ s ∈ Sim , ist ∈ Isc , n = 1, st 0s > 0

(58) 9295

dx.doi.org/10.1021/ie300046g | Ind. Eng. Chem. Res. 2012, 51, 9287−9299

Industrial & Engineering Chemistry Research

Article

Figure 9. Gantt chart for example 2.

vessels, capacity limitations of the tanks, i.e. upper and lower limits on the amount that can be stored in theses tanks, key component concentrations in the initial amounts, time horizon under consideration, and so on are given in Tables 1 and 2 for the three examples considered. In Table 3, the results obtained using the proposed model are compared with the results reported using two other models from the literature. Note that in example 3, unlike in examples 1 and 2, mixing is occurring in storage tanks as well, hence, storage bypassing is not allowed in either storage or charging tanks. But in storage tanks, depending on the operating policy, simultaneous input and output may or may not be allowed. The results presented in Table 3 are based on the assumption of perfect and instantaneous mixing, with simultaneous input and output allowed in storage tanks. The first two models reported in Table 3 are based on unitspecific event-based continuous-time representation, whereas the third model is based on discrete-time representation. As can be seen from Table 3, though the proposed formulation involves a higher number of binary variables and constraints, it results in better values of the objective function (minimization of total cost) compared to previous models reported in the literature. The number of continuous variables involved is less compared to other literature models for examples 1−3. The number of binary variables and constraints involved is higher

actually received from the storage. This will enable accuracy in plotting Gantt charts. Similarly, in 58, the start time of storage task that has nonzero initial amount is assigned to the reference start time (taken as zero here) at the first event.

5. RESULTS AND DISCUSSION The original model developed here corresponds to a mixed integer nonlinear programming problem (MINLP) which is difficult to solve and requires high computational efforts. To reduce the computational effort, we initially relax our MINLP model by dropping nonlinear constraints 22 and 23, as done in the literature. Due to this, the resulting MILP solutions may or may not give composition discrepancies. If the resulting MILP model has no composition discrepancies, then nothing needs to be done further and we have the optimal solution. Otherwise, if there are composition discrepancies, then besides solving MILP models, we also solve the original MINLP model to rectify composition discrepancies. The three examples discussed earlier are solved using the proposed approach using GAMS 23.5 software on WINDOWS XP machine with 2.67 GHz Intel core i5 processor with 2 GB RAM. For MINLP model, we used SBB with CONOPT as NLP solver and for MILP model we used CPLEX 12.2. The relevant data13,14 on arrival times of the marine 9296

dx.doi.org/10.1021/ie300046g | Ind. Eng. Chem. Res. 2012, 51, 9287−9299

Industrial & Engineering Chemistry Research

Article

Figure 10. Gantt chart for example 3.

Figure 11. Gantt chart of example 1(MINLP).

in the proposed model because of the explicit use of storage tasks in addition to processing tasks to properly address

the issues associated with the violation of the intermediate storage capacity. 9297

dx.doi.org/10.1021/ie300046g | Ind. Eng. Chem. Res. 2012, 51, 9287−9299

Industrial & Engineering Chemistry Research

Article

Notes

Table 4. Comparison of Results for Example 1

The authors declare no competing financial interest. † A preliminary version of this paper was presented at Indian Chemical Eng. Congress (CHEMCON 2010).

binary continuous CPU variables variables constraints cost time(s) events gap (%) MILP MINLP

44 44

129 129

748 752

217 217

0.59 147.91

3 3



0 0

ACKNOWLEDGMENTS We gratefully acknowledge financial support received from Department of Science and Technology (DST), India, under SERC scheme, grant SR/S3/CE/075/2009.

More important is that the storage tasks are not modeled accurately in the literature models. The models of Jia et al.,14 Jia and Ierapetritou,15 and Furman et al.16 do not consider explicit storage tasks for handling material transfer from storage and charging tanks resulting in suboptimal solutions. The resulting Gantt charts from the proposed model have the capability of depicting the material transfer explicitly. The Gantt charts for these three examples are shown in Figures 8−10. Note that in the Gantt charts, the storage tasks (for both storage and charging tanks) denoted by “ist”, are plotted along with the processing tasks showing the storage profiles of both storage and charging tanks at each event. So, for a continuous process, where the amount stored is changing continuously, a separate storage task is very useful to keep track of the entire storage profile at each event. The component concentrations are also shown in brackets. Note that for example 3, Lee et al.13 enforced no simultaneous input and output restriction for all storage tanks as well, in contrast to our model. Resolving Composition Discrepancies. The resulting MILP model, however, may have composition discrepancies due to elimination of the nonlinear equations mentioned earlier. Of the examples considered, only in example 1 were the composition discrepancies observed. The component concentrations in the tank and in the outgoing streams were found to be different for example 1 as shown in Figure 8. Hence, this example was solved again using the original MINLP model including the nonlinear equations for resolving these composition discrepancies. The comparison of MILP and MINLP results is shown in Table 4, from which the complexity of the MINLP model is evident. The resulting Gantt chart (shown in Figure 11) did not have any composition discrepancies and hence would be the optimal solution to example 1. This issue of composition discrepancies has been ignored in some works in the literature.13,15



Indices

i,i′ = tasks ist = storage tasks ip = processing tasks j = units s,s′ = states n = events k = components Sets

I = tasks Ip = processing tasks Ist = storage tasks Ij = tasks which can be performed in unit j Is = tasks which process state s and either produce or consume Ips = tasks which produce states s Ics = tasks which consume states s Iut = unloading tasks Ict = charging tasks J = units Ji = units which are suitable for performing task i N = events S = states SCDU = final states (CDUs) Sim = intermediate states Sim1 = intermediate states corresponding to storage tanks where crude mixing is not allowed Sim1a = intermediate states corresponding to storage tanks where crude mixing is allowed Sim2 = intermediate states corresponding to charging tanks where crude mixing is allowed Sv = raw states corresponding to marine vessels Parameters

6. CONCLUSIONS We proposed a simplified STN-based formulation to address the problem of scheduling of crude-oil operations at the front-end of a refinery using unit-specific event-based continuous-time representation resulting in better ways of handling material transfer from storage and charging tanks. We have classified the material flow in a tank based on (i) whether mixing is allowed or not, and (ii) whether simultaneous input and output is allowed or not, in addition to (iii) whether bypassing is allowed or not. Few benchmark examples from literature are solved using GAMS software leading to improved solutions. The proposed model provides a starting point for further integrating the production and product distribution aspects of the refinery to enable plantwide optimization in future.



NOMENCLATURE

Cct = inventory cost for charging tank per unit volume per day Cs = sea waiting cost Cst = inventory cost for storage tank per unit volume per day Cut = unloading cost per day Ct = changeover costs D = number of CDUs Ds = demand of state s f min ip = minimum flow rate for processing tasks f max ip = maximum flow rate for processing tasks H = time horizon Ne = number of event points P = penalty for binary variables in the objective function Ps = price of state s st0s = initial amount of state s stmax ist = maximum storage capacity for storage task ist st0s,k = initial concentration of component k in state s stmin s,k = minimum concentration of component k in state s stmax s,k = maximum concentration of component k in state s

AUTHOR INFORMATION

Corresponding Author

*Tel.: (91)-11-26591038. Fax: (91)-11-26581120. E-mail: [email protected]. 9298

dx.doi.org/10.1021/ie300046g | Ind. Eng. Chem. Res. 2012, 51, 9287−9299

Industrial & Engineering Chemistry Research

Article

Tmin iut = vessel arrival time for unloading task iut ρsi = proportion of state s produced or consumed by task i

(16) Furman, K. C.; Jia, Z.; Ierapetritou, M. G. A Robust Event-based Continuous-Time Formulation for Tank Transfer Scheduling. Ind. Eng. Chem. Res. 2007, 46, 9126. (17) Karuppiah, R.; Furman, K. C.; Grossmann, I. E. Global Optimization for Scheduling Refinery Crude Oil Operations. Comput. Chem. Eng. 2008, 32, 2745. (18) Reddy, P. C.; Karimi, I. A.; Srinivasan, R. A Novel Solution Approach for Optimizing Crude Oil Operations. AIChE J. 2004, 50, 1177. (19) Li, J.; Karimi, I. A.; Srinivasan, R. Improving the Robustness and Efficiency of Crude Scheduling Algorithms. AIChE J. 2007, 53, 2659. (20) Li, J.; Misener, R.; Floudas, C. A. Continuous-time Modeling and Global Optimization Approach for Scheduling of Crude Oil Operations. AIChE J. 2012, 58, 205. (21) Saharidis, G. K. D.; Minoux, M.; Dallery, Y. Scheduling of Loading and Unloading of Crude Oil in a Refinery Using Even-based Discrete Time Formulation. Comput. Chem. Eng. 2009, 33, 1413.

Binary Variables

w(i,n) = binary variable for assigning task i to event n z(ist,n)= binary variable to determine if storage task ist stores a nonzero amount by the end of event n Positive Variables

b(i,n) = amount processed by task i at event n b(ist,n) = amount stored in storage task ist at event n stk(s,k,n) = amount of component k in state s at event n Tf(i,n) = finish time of task i at event n Ts(i,n) = start time of task i at event n Tss(iut,n) = start time of unloading task iut at event n, only if it occurs Tfs(iut,n) = finish time of unloading task iut at event n, only if it occurs Q(ip,s,k,n) = amount of component k in state s transferred through processing task ip at event n



REFERENCES

(1) Floudas, C. A.; Lin, X. Continuous-time versus Discrete-time Approaches for Scheduling of Chemical Processes: A Review. Comput. Chem. Eng. 2004, 28, 2109. (2) Mendez, C. A.; Cerda, J.; Grossmann, I. E.; Harjunkoski, I.; Fahl, M. State-of-the-art Review of Optimization Methods for Short-term Scheduling of Batch Processes. Comput. Chem. Eng. 2006, 30, 913. (3) Shaik, M. A.; Janak, S. L.; Floudas, C. A. Continuous-time Models for Short-Term Scheduling of Multipurpose Batch Plants: A Comparative Study. Ind. Eng. Chem. Res. 2006, 45, 6190. (4) Shaik, M. A.; Floudas, C. A. Improved Unit-Specific Event-based Continuous-Time Model for Short-Term Scheduling of Continuous Processes: Rigorous Treatment of Storage Requirements. Ind. Eng. Chem. Res. 2007, 46, 1764. (5) Shaik, M. A.; Floudas, C. A. Unit-Specific Event-based ContinuousTime Approach for Short-Term Scheduling of Batch Plants using RTN Framework. Comput. Chem. Eng. 2008, 32, 260. (6) Shaik, M. A.; Floudas, C. A. Novel Unified Modeling Approach for Short Term Scheduling. Ind. Eng. Chem. Res. 2009, 48, 2947. (7) Ierapetritou, M. G.; Floudas, C. A. Effective Continuous Time Formulation for Short Term Scheduling: 1. Multipurpose Batch Processes. Ind. Eng. Chem. Res. 1998, 37, 4341. (8) Ierapetritou, M. G.; Floudas, C. A. Effective Continuous Time Formulation for Short Term Scheduling: 2. Continuous and Semicontinuous Processes. Ind. Eng. Chem. Res. 1998, 37, 4360. (9) Janak, S. L.; Lin, X.; Floudas, C. A. Enhanced Continuous-Time Unit-specific Event-based Formulation for Short-term Scheduling of Multipurpose Batch Processes: Resource Constraints and Mixed Storage Policies. Ind. Eng. Chem. Res. 2004, 43, 2516. (10) Li, J.; Susarla, N.; Karimi, I. A.; Shaik, M. A.; Floudas, C. A. An Analysis of Some Unit-specific Event-based Models for Short-term Scheduling of Non-Continuous Processes. Ind. Eng. Chem. Res. 2010, 49, 633. (11) Seid, R.; Majozi, T. A Robust Mathematical Formulation for Multipurpose Batch Plants. Comput. Chem. Eng. 2012, 68, 36. (12) Shah, N. Mathematical Programming Techniques for Crude Oil Scheduling. Comput. Chem. Eng. 1996, 20, S1227. (13) Lee, H.; Pinto, J. M.; Grossmann, I. E.; Park, S. Mixed-Integer Programming Model for Refinery Short Term Scheduling of Crude Oil Unloading with Inventory Management. Ind. Eng. Chem. Res. 1996, 35, 1630. (14) Jia, Z.; Ierapetritou, M. G.; Kelly, J. D. Refinery Short-Term Scheduling using Continuous Time Formulation: Crude Oil Operations. Ind. Eng. Chem. Res. 2003, 42, 3085. (15) Jia, Z.; Ierapetritou, M. G. Efficient Short-Term Scheduling of Refinery Operations based on a Continuous Time Formulation. Comput. Chem. Eng. 2004, 28, 1001. 9299

dx.doi.org/10.1021/ie300046g | Ind. Eng. Chem. Res. 2012, 51, 9287−9299