13.07.2015 Views

ExxonMobil - Carnegie Mellon University

ExxonMobil - Carnegie Mellon University

ExxonMobil - Carnegie Mellon University

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Motivation- Scheduling and Planning of flow of crude oil is key problem in petrochemical refineries- Large cost savings can be realized with an optimum schedule for the movement of crude oilVesselsStorageChargingCrude-Distillation UnitHow to coordinate discharge of vessels with loading to storage?How to synchronize charging tanks with crude-oil distillation?2


Crude Distillation Unit3


Problem StatementCrude oilsupply streamsStorageTanksChargingTanksCrudeDistillationUnitsGiven:(a) Maximum and minimum inventory levels for a tank(b) Initial total and component inventories in a tank(c) Upper and lower bounds on the fraction of key components in the crude inside a tank(d) Times of arrival of crude oil in the supply streams(e) Amount of crude arriving in the supply streams(f) Fractions of various components in the supply streams(g) Bounds on the flowrates of the streams in the network(h) Time horizon for schedulingDetermine:(i) Total and component inventory levels in the tanks at various points of time(ii) Volumes of total and component flows from one unit to another in a certain time interval(iii) Start and end times of the flows in each stream of the system.Objective: Minimize Cost MILP Model: Lee, Pinto, Grossmann, Park (1996)4


Assumptions MINLP Model1. Perfect mixing takes place in each tank.2. Negligible change in specific gravities on mixing.3. Discrete flows of volumes into and from a tank.4. Simultaneous inputs into and outputs from a tank are not allowed.5. Each distillation unit can be charged by at most one charging tank at a point of time.6. Each charging tank can charge at most one distillation unit at a point of time.7. All the distillation units have to be operated continuously throughout the entire time horizon.5


Scheduling Model‣ Continuous time formulation by Furman et al. (2006)• State Task Network Representation‣ Based on time events where inputs and outputs to an unit can take place in the same timeevent• No simultaneous input into and from a tank‣ Formulation reduces number of binary variables required in the scheduling modelOptimization model :min cost objective(P)s.t. Tank constraintsDistillation unit constraintsSupply stream constraintsVariable boundsVariables in the model :totI b , tjIb , ttotV s , tjV s , t1T s,t2T s,tw s , t– Total inventory in tank b at end of time event t– Inventory of component j in tank b at end of timeevent t– Total flow in stream s in time event t– Flow of component j in stream s in time event t– Start time of flow in stream s in time event t– End time of flow in stream s in time event t– Binary variable pertaining to existence of flowin stream s in time event t6


Constraints in ModelTank constraintsOverall mass balance Individual component balanceNon-linear equationscontaining Bilinearities Logic constraintso Related to the existence of a flow into or from a tank in a time event t Duration constraintso To bound the flow of a stream into/from a tank in a particular time event t Simple sequencing constraints Inventory bounds Bounds on component fractions inside a tank Input and output restraints over whole horizon7


Constraints in Model (Contd …)Distillation unit constraintsContinuous time operation constraint Allocation constraintso Only one CDU can be charged by a charging tank in a time event to Only one charging tank can charge a CDU in a time event t Crude-mix demand constraintsSupply stream constraintsOverall mass balances Component mass balances Start and end timing constraints8


Non-convex MINLPObjective function :‣ Minimize a cost objective similar to the one by Jia and Ierapetritou (2003)min total cost =waiting cost for supply streams+ unloading cost of supply streams+ inventory cost for each tank over scheduling horizon+ changeover cost for charging CDUs with different charging tanksOverall model ≡ (P)Non-convex MINLPConvex relaxation of (P)(obtained by linearizing non-linearequations in Tank constraints andintroducing McCormick convexenvelopes (1976) for bilinear terms)≡ (R)MILP9


Global Optimization of MINLP‣ Large-scale non-convex MINLPs such as (P) are very difficult to solve• Global optimization solvers fail to converge to solution in tractable computationaltimes (e.g. BARON)‣ Special Outer-Approximation algorithm proposed to solve problem to global optimalityNLP fixed 0-1Upper BoundMaster MILPLower Bound• Guaranteed to converge to global optimum within tolerance of lower and upper boundsUpper Bound : Feasible solution of (P) obtained by fixing the binary variables to thevalues obtained from the solution of the relaxation and solving theresulting NLPLower Bound : Obtained by solving a convex relaxation (R) of the non-convexMINLP model with Lagrangean Decomposition based cuts added to it10


Upper BoundLocal solution of NLP- non-rigorousLower bound on Global OptimumConvex relaxation (R) is a large MILP and is also difficult to solveGenerate cuts to add to relaxation to strengthen it and reduce solution timesKaruppiah and Grossmann (2006)Cut generation performed by a spatial decomposition of the network structure11


Spatial Decomposition of the networkCrude oilarrivalsStorageTanksChargingTanksCrudeDistillationUnitsD1baD2‣ Network is split into two decoupled sub-structures D1 and D2• Physically interpreted as cutting some pipelines (Here a and b )• Set of split streams denoted by p ∈ {a , b }12


Decomposition of the model‣ Create two copies of the variables pertaining to the split streamsand get two sets of duplicate variables : ,1 ,1 ,1 2 ,1,{ V V , T , T w }tot j 1 1p , t , p , t p , t p t , p , tThe equations involving the split streams in model (R) are re-written in terms of thenewly created variablesThese duplicate variables are related by equality constraints which are added to (R) toget model (RP):tot,1tot,2Vp , t = Vp,t ∀p,tand,2 ,2 ,2 2 ,2{ V V , T , T , w }tot j 1 2p , t , p , t p , t p t , p , t{ , V , T , T w }tot j 1 2V p,t p,t p,t p,t , p , tj,1t,2jV p , = V p , t ∀j,p,t1,1 1,2, , ∀Tp t = Tpt p,t2 ,1 2 ,2, , ∀Tp t = Tpt p,tNon-anticipativityconstraints1 2, , ∀wp t = wpt p,t‣ Non-anticipativity constraints in (RP) are multiplied by Lagrange multipliers andtransferred to objective function to bring model to a decomposable form which isdecomposed into sub-models (LD1) and (LD2)13


Decomposed Sub-modelsSub-probleminvolves duplicatevariablestot,1j,11,1 2,1 1{ V V , T , T w }p, t , p,t p,t p,t , p,tmin z 1=s.t.waiting cost for supply streams + unloadingcost of supply streams + inventory cost fortanks in D1 over scheduling horizon +changeover cost for charging CDUs in D1with different charging tanks +Vtot tot,1V j,1T1 1 ,1T2 2 ,1∑∑ λpt V p , t + ∑∑∑ λ j , p , t V p , t + ∑∑λp,t Tp , t + ∑∑λp,t Tp , t + ∑∑ptw, λ p,tj p tp tp tp tTank constraintsDistillation unit constraintsSupply stream constraintsVariable boundsw1p , t(LD1)Globallyoptimize toget solution*z 1Sub-probleminvolves duplicatevariablestot,2j,21,2 2,2 2{ V V , T , T w }p, t , p,t p,t p,t , p,tmin z 2=inventory cost for tanks in D2 overscheduling horizon + changeover cost forcharging CDUs in D2 with different chargingtanks +−∑∑ptVtot tot,2p t p t∑∑∑∑∑∑∑∑∑λ , V , − λ , , V , − λ T − λ T − λ , wj p tVj p tj,2p tptT1 1 ,2p,t p , tptT2 2 ,2p,t p , tptwp t2p , tGloballyoptimize toget solutions.t.Tank constraintsDistillation unit constraintsVariable bounds(LD2)*z 214


Cut Generation*‣ Using solutions and z we develop the following cuts :*z 12*z 1≤waiting cost for supply streams + unloading cost of supply streams +inventory cost for tanks in D1 over scheduling horizon + changeovercost for charging CDUs in D1 with different charging tanks +Vtot totV jT1 1 T 2 2∑∑ λpt p , t + ∑∑∑λj,p,t Vp, t + ∑∑λp, tTp, t + ∑∑λp, tTp, t + ∑∑ptw, V λp,twp,tj p tp tp tp tLagrange Multipliers*z 2≤inventory cost for tanks in D2 over scheduling horizon + changeovercost for charging CDUs in D2 with different charging tanks +−∑∑ptλ∑∑∑∑∑∑∑∑∑Vtot totV jT11T 2 2wp, t p tj p t p tp t p tp t p t λptj p tp tp tp tV , − λ , , V , − λ , T , − λ , T , −, w ,p t‣ Add above cuts to (R) to get (R’) which is solved to obtain a valid lower bound onglobal optimum of (P)Remark: Update Lagrange multipliers and generate more cuts to add to (R)15


Advantages of Cut Generation‣ Lower bound obtained is stronger (or as strong) than one from conventional Lagrangeandecomposition or LP relaxation of (R)‣ Alternative decomposition schemes can be used to generate more cuts to tightenrelaxation (R)cD2’dD1’16


Proposed AlgorithmOuter-Approximation based algorithm:Step1: Preprocessing – Bounds on the variables in the model are determined byphysical inspection of the network structure and using the numerical data givenStep2: Lower Bound Generation – Generate a valid lower bound on the solution by solving (R’)Step3: Upper bound – Fix integer variables in (P) to the values obtained from solution of (R’) andsolve resulting non-convex NLP denoted by (P-NLP)Step4: Integer Cut – Making use of the integer solution of (R’), add an integer cut to model (R’) topreclude the current combination of integer variables from re-appearing in futureiterationsStep5: Convergence – Iterate between solving models (R’) and (P-NLP) till the lower boundexceeds the upper bound or the relaxation gap between the lower and upper bounds isless than a specified tolerance17


Illustrative Example3 Supply streams – 6 Storage Tanks – 4 Charging Tanks – 3 Distillation unitsSchedulingHorizonNumber of InputsourcesIN1IN2IN3ArrivalTime1611Number of StorageTanksTank1Capacity10 – 90IncomingVolume ofcrude606060InitialInventory6015 hours3Fraction of keycomponent60.030.050.065Initial fraction of keycomponent (min –max)0.031 (0.025 – 0.038)Number of Charging TanksTank1Tank2Tank3Tank4Capacity80808080InitialInventory5303030Initial Fraction of keycomponent (min –max)0.0317 (0.03 – 0.035)0.0483 (0.043 – 0.05)0.0633 (0.06 – 0.065)0.075 (0.071 – 0.08)Number of CDUs : 3Waiting cost for supply streams (Csea): 5Unloading cost for supply streams (Cunload): 7Tank inventory costs (Cinv(b)): storage tanks – 0.05;charging tanks – 0.06Changeover cost for charged oil switch (Cset): 303Tank2Tank3Tank4Tank510 – 11010 – 11010 – 11010 – 90105040300.03 (0.02 – 0.04)0.05 (0.04 – 0.06)0.065 (0.06 – 0.07)0.075 (0.07 – 0.08)Demand of mixed oils by CDUs : oil mix 1 60oil mix 2 60oil mix 3 60oil mix 4 60Tank610 – 90600.075 (0.07 – 0.08)Bounds on flowrates in the streams: Lower Bound – 1.5, Upper Bound – 7018


Optimal Crude Flow ScheduleGantt chart of optimal scheduleInventory Profiles for Storage Tanks908070Storage tank 2 (ST2)Storage Tank 3 (ST3)Storage Tank 4 (ST4)60Inventory -->504030201000 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15time (# units) -->Inventory Profiles for Charging Tanks353025Charging tank 1 (CT1)Charging Tank 2 (CT2)Charging Tank 3 (CT3)Charging Tank 4 (CT4)Inventory -->201510500 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15time (# units) -->19


Optimal Crude Flow ScheduleGantt chart of optimal scheduleCharging schedule of Distillation unitsCDU1 being charged CDU2 being charged CDU3 being chargedDU3CT43030 30CT3 CT4DU230CT3CT247.6DU112.4CT260CT10 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15time (# units) -->20


Preliminary Computational ResultsMINLP 57 binary variables, 439 continuous variables and 1564 constraintsSub-optimal solutions obtained (using GAMS/ DICOPT) : 447 or 463 vs 440.94 (global)Proposed Algorithm :Solvers Used : MILP CPLEX 9.0, NLP CONOPT3Cut generation time* = 161.4 sLower bound : On solving (R) (without cuts)On solving (R’) (with proposed cuts)Upper bound :Total time* taken to solve problem = 2504.3 sSolution Time*(sec)440.93 7123.5440.93 2342.9440.94Lower and Upper bounds converge within 1 % tolerance at 1 st iteration of algorithmBARON (Sahinidis, 1996) could not find global solution in more than 10 hours** Pentium IV, 2.8 GHz , 512 MB RAM21


Future work1. Consider addition of RLT constraints to strengthen master problem2. Consider global solution of NLP subproblems3. Increase model accuracy4. Extend time horizon5. Integration with downstream refinery22

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!