We propose replace the full space MINLP by MILP + NLP decomposition for large problems and the partition of crude scheduling in crude assignment and crude blend scheduling.
As continuous-time model cannot be easily implemented by plant operators, the objective is to explore to the limit discrete-time models:
- 8h-step (shift) for 2-4 weeks (42-84 periods)
- 2h-step for 7 days (84 periods)
- 1h-step for 4 days (48 periods)
1. Brenno C. Menezes
PostDoc Research Scholar
Carnegie Mellon University
Pittsburgh, PA, US
Jeffrey D. Kelly
CTO and Co-Founder
IndustrIALgorithms
Toronto, ON, Canada
Industrial View of Crude-oil Scheduling Problems
EWO Meeting, CMU, Pittsburgh, Mar 9th, 2016.
Ignacio E. Grossmann
R. R. Dean Professor of Chemical Engineering
Carnegie Mellon University
Pittsburgh, PA, US
Faramroze Engineer
Senior Consultant
SK-Innovation
Seoul, South Korea
1st: Crude to Tank Assignment (CTA) for Improved Scheduling: MILP
2nd: Crude Blend Scheduling Optimization (CBSO): MILP+NLP
1
Remark: Continuous-time model cannot
be easily implemented by plant operators
Objective: Explore to the limit discrete-time model
- 8h-step (shift) for 2-4 weeks (42-84 periods)
- 2h-step for 7 days (84 periods)
- 1h-step for 4 days (48 periods)
Motivation 1: Replace Full Space MINLP by MILP + NLP decompositions for large problems
Motivation 2: Partition of crude scheduling in crude assignment and crude blend scheduling
2. Crude
Transferring
Refinery Units Fuel
Deliveries
Fuel
Blending
Crude
Dieting
Crude
Receiving
Hydrocarbon Flow
FCC
DHT
NHT
KHT
REF
DC
B
L
E
N
SRFCC
Fuel gas
LPG
Naphtha
Gasoline
Kerosene
Diesel
Diluent
Fuel oil
Asphalt
Crude-Oil Management Crude-to-Fuel Transformation Blend-Shop
Charging or
Feed Tanks
Whole Scheduling: from Crude to Fuels
Crude-Oil Scheduling Problem
Receiving or
Storage Tanks
Transferring or
Feedstock Tanks
CTA CBSO
VDU
(MILP+NLP)
PDH Decomposition (logistics + quality problems)
Includes logistics details
1996: Lee, Pinto, Grossmann and Park (MILP), discrete-time
2004: Randy, Karimi and Srinivasan (MILP), continuous-time
2009: Mouret, Grossmann and Pestiaux: MILP+NLP continuous-time
2014: Castro and Grossmann: MINLP ; MILP+NLP, continuous-time
2015: Cerda, Pautasso and Cafaro: MILP+NLP, continuous-time
(336h: 14 days; binary โ 4,000; continuous โ 6,000; constraints โ 100K; CPU(s) โ 500)
2
(MILP)
EWO Meeting, Mar 9th, 2016.
1st Crude to Tank
Assignment (CTA)
2016 Goal: solve a SK refinery scheduling for a week
(38 crude, 2 pipelines, 23 storage tanks, 11 feed tanks, 5 CDUs)
Improves the polyhedral space of optimization for CDU feed diet
Reduces optimization search space for further scheduling
2nd Crude Blend Scheduling
Optimization (CSBO)
Yields
Rates (crude diet, fuel recipes, conversion)
(Menezes, Kelly & Grossmann, 2015)
3. Transferring or
Feedstock Tanks
Receiving or
Storage Tanks
Charging or
Feed Tanks
Clusters
1st Crude Tank Assignment (CTA) for Improved Scheduling
Charging
Tanks
Tanks
(storage)
y = binary variables (setup su)
3
CTA CBSO
EWO Meeting, Mar 9th, 2016.
x = continuous variables (flow f)
MILP
๐ฒ๐๐ซ,๐๐ฉ
๐ฒ๐ญ๐ค(๐๐ฅ๐ฎ๐ฌ๐ญ๐๐ซ),๐๐ฉ
โk-meansโ clustering (KM) and โfuzzy c-meansโ clustering
(FCM) algorithms found in Bezdek et. al. (1984).
perimeter
Arrow
Ports
f and su
f and su
f
- Uses crude assay data
- Multi-period NT=NCrude
- Neglects logistics details:
initial volume, holdup,
ssspipeline flow, etc.
Determines Crude-oil
Segregation Rules
๐ฑ ๐๐ซ,๐๐ฉ
๐ฑ ๐ญ๐ค(๐๐ฅ๐ฎ๐ฌ๐ญ๐๐ซ),๐๐ฉ
๐ฑ ๐๐ซ,๐๐ฉ,๐ญ๐ค
Crude
(feedstock)
cr crude (or time)
cp yield or property
tk storage tank
in-port
out-port
Transfer Min Variance
4. Transferring or
Feedstock Tanks
Receiving or
Storage Tanks
Charging or
Feed Tanks
Clusters
1st Crude Tank Assignment (CTA) for Improved Scheduling
Charging
Tanks
Tanks
(storage)
y = binary variables (setup su)
4
CTA CBSO
EWO Meeting, Mar 9th, 2016.
Min ๐ = ๐๐ซ ๐๐ฉ ๐ญ๐ค
๐ฑ ๐๐ซ,๐๐ฉ,๐ญ๐ค
๐ฆ๐๐ฑ ๐๐ซ,๐๐ฉ ๐ฉ๐ซ๐๐ซ,๐๐ฉ โ๐ฆ๐ข๐ง ๐๐ซ,๐๐ฉ ๐ฉ๐ซ๐๐ซ,๐๐ฉ
โ๐ฆ๐๐ฑ ๐๐ซ,๐๐ฉ ๐ฉ๐ซ๐๐ซ,๐๐ฉ โค ๐ฑ ๐๐ซ,๐ฉ๐ซ,๐ญ๐คโค ๐ฆ๐๐ฑ ๐๐ซ,๐๐ฉ ๐ฉ๐ซ๐๐ซ,๐๐ฉ โ ๐๐ซ, ๐๐ฉ, ๐ญ๐ค
โ๐ฆ๐๐ฑ ๐๐ซ,๐๐ฉ(๐ฉ๐ซ๐๐ซ,๐๐ฉ) ๐ฒ๐ญ๐ค(๐๐ฅ๐ฎ๐ฌ๐ญ๐๐ซ),๐๐ฉ โค ๐ฑ ๐ญ๐ค(๐๐ฅ๐ฎ๐ฌ๐ญ๐๐ซ),๐๐ฉโค ๐ โ ๐๐ฉ, ๐ญ๐ค
๐ฉ๐ซ๐๐ซ ๐ฒ๐๐ซ,๐๐ฉ โค ๐ฑ ๐๐ซ,๐๐ฉโค ๐ฉ๐ซ๐๐ซ ๐ฒ๐๐ซ,๐๐ฉ โ ๐๐ซ, ๐๐ฉ
๐ฑ ๐๐ซ,๐ฉ๐ซ,๐ญ๐ค = ๐ฑ ๐๐ซ,๐๐ฉ ๐ฒ๐๐ซ,๐๐ฉ= โ๐ฑ ๐ญ๐ค(๐๐ฅ๐ฎ๐ฌ๐ญ๐๐ซ),๐๐ฉ ๐ฒ๐ญ๐ค(๐๐ฅ๐ฎ๐ฌ๐ญ๐๐ซ),๐๐ฉ โ ๐๐ซ, ๐๐ฉ, ๐ญ๐ค
x = continuous variables (flow f)
๐ญ๐ค ๐ฒ๐๐ซ,๐๐ฉ
๐ญ๐ค
=1 โ ๐๐ซ, ๐๐ฉ
MILP
๐ฒ๐๐ซ,๐๐ฉ
๐ฒ๐ญ๐ค(๐๐ฅ๐ฎ๐ฌ๐ญ๐๐ซ),๐๐ฉ
โk-meansโ clustering (KM) and โfuzzy c-meansโ clustering
(FCM) algorithms found in Bezdek et. al. (1984).
perimeter
Arrow
Ports
f and su
f and su
f
- Uses crude assay data
- Multi-period NT=NCrude
- Neglects logistics details:
initial volume, holdup,
ssspipeline flow, etc.
Determines Crude-oil
Segregation Rules
๐ฑ ๐๐ซ,๐๐ฉ
๐ฑ ๐ญ๐ค(๐๐ฅ๐ฎ๐ฌ๐ญ๐๐ซ),๐๐ฉ
๐ฑ ๐๐ซ,๐๐ฉ,๐ญ๐ค
Assign crude to only one cluster
Define one crude per time(1)
(2)
(3)
(4)
(5)
flow-in=flow-out in the in-port
yield or property โflowsโ
naphtha-yield (NY)
diesel-yield (DY) prcr
diesel-sulfur (DS)
residue-yield (RY)
Crude
(feedstock)
cr crude (or time)
cp yield or property
tk storage tank
in-port
out-port
Transfer Min Variance
5. naphtha-yield (NY)
diesel-yield (DY)
diesel-sulfur (DS)
residue-yield (RY)
Solver: CPLEX 12.6 in 8 threads; Modeler: IMPL
Cluster 1 Membership (16): 1, 4, 6, 8, 12, 13, 15,
21, 28, 30, 34, 36, 40, 41, 43, 45
Cluster 2 Membership (9): 3, 9, 14, 24, 25, 27,
32, 33, 37
Cluster 3 Membership (18): 2, 5, 10, 11, 16, 17,
18, 19, 20, 22, 26, 29, 31, 35, 38, 39, 42, 44
Cluster 4 Membership (2): 7, 23
Cluster 1 Means: 18.75, 20.84, 0.1594, 8.58
Cluster 2 Means: 32.88, 13.61, 0.0900, 1.53
Cluster 3 Means: 14.08, 17.06, 0.2300, 18.64
Cluster 4 Means: 7.72, 10.31, 1.83, 35.39
NY DY DS RY
5
EWO Meeting, Mar 9th, 2016.
Ultra heavy
Light
Heavy
1st Crude Tank Assignment (CTA) for Improved Scheduling
45 Crude from http://www.exxonmobil.com/crudeoil/, accessed April, 2015.45 Crude
45
to close the
MILP optimality
Gap to 0.0%
Global optimal within
4 min for ๏ณ 30 crude
6. asasasa
2nd Crude Blend Scheduling Optimization (CBSO-QL)
6
MILP(QL) + NLP(QQ)
โข Key logistics details โฆ (QL)
1st: fill-draw-delay for storage tanks (e.g. 9h)
2nd: uptime (run-length) for blend header (3h)
6th: uptime for tank-to-CDU flows (e.g. 19h)
3rd: 1 flow-out at-a-time for the blend header
4th: fill-draw-delay for feed tanks (e.g. 3h)
5th: 1 or 2 flow-in at-a-time for the CDU
7th: 0-h downtime (continuous) for the CDU
8thโฆ: Feed tank transitions
Sequence-dependent (Kelly and Zyngier, 2007)
EWO Meeting, Mar 9th, 2016.
CBSOCTA
Mixing-time Uptime-Use Multi-Use Other types Quantity + Logic
7. asasasa
2nd Crude Blend Scheduling Optimization (CBSO-QL)
7
MILP(QL) + NLP(QQ)
โข Key logistics details โฆ (QL)
1st: fill-draw-delay for storage tanks (e.g. 9h)
2nd: uptime (run-length) for blend header (3h)
6th: uptime for tank-to-CDU flows (e.g. 19h)
3rd: 1 flow-out at-a-time for the blend header
4th: fill-draw-delay for feed tanks (e.g. 3h)
5th: 1 or 2 flow-in at-a-time for the CDU
7th: 0-h downtime (continuous) for the CDU
8thโฆ: Feed tank transitions
Sequence-dependent (Kelly and Zyngier, 2007)
EWO Meeting, Mar 9th, 2016.
CBSOCTA
Mixing-time Uptime-Use Multi-Use Other types Quantity + Logic
8. CBSOCTA
asasasa
8
MILP(QL) + NLP(QQ)
โข Key quality detailsโฆ (QQ)
1st: Feed Tank diet
2nd: CDU models (modes of operations).
Fractionation Index (Alattas et al., 2012, 2013); Improved Swing-Cut (Menezes et al., 2013), Distillation Blending (Kelly et al., 2014)
2nd Crude Blend Scheduling Optimization (CBSO-QQ)
EWO Meeting, Mar 9th, 2016.
Drawback: โ binary variables, Option: NLP models
Yields
Rates (crude diet, fuel recipes, conversion)
Quantity + Quality
9. 9
2nd Crude-oil Blend Scheduling Optimization-PDH
(Menezes, Kelly & Grossmann, 2015)
EWO Meeting, Mar 9th, 2016.
6,736 continuous variables
6,057 equality and 1,640 inequality (DoF=679)
CPU: SLPQPE _CPLEX : 13.4s
4,881 continuous and 2,998 binary variables
2,323 equality and 11,105 inequality (DoF=5,556)
CPU: 91s (8 threads); 455s (1 thread) in CPLEX 12.6
ZMILP=972 ZNLP=899
for 14 days (2h-step)= 168 periods
MILP(QL) + NLP(QQ)
Yields
Rates
@ 0.0% MILP Optimality GAP (3600s in Gurobi 6.5.0 @ 1.73% GAP )
IPOPT: 50.1s
CTA CBSO
Max Z= CDU feed
_COINMP: 13.4s
_GLPK: 188.2s
CDU feed= 75[u3]/day
_GUROBI: 11.1s
Modeler: IMPL
10. 10
2nd Crude-oil Blend Scheduling Optimization-PDH
(Menezes, Kelly & Grossmann, 2015)
EWO Meeting, Mar 9th, 2016.
6,736 continuous variables
6,057 equality and 1,640 inequality (DoF=679)
CPU: SLPQPE _CPLEX : 13.4s
4,881 continuous and 2,998 binary variables
2,323 equality and 11,105 inequality (DoF=5,556)
CPU: 91s (8 threads); 455s (1 thread) in CPLEX 12.6
ZMILP=972 ZNLP=899
for 14 days (2h-step)= 168 periods
MILP(QL) + NLP(QQ)
Yields
Rates
7.5% MILP-NLP Gap
T=[0,2h] QL QQ T=[2,4h] QL QQ
S1 12.75 5.00 S1 12.75 5.00
S2 77.25 38.87 S2 77.25 5.00
S3 5.00 5.80 S3 5.00 10.92
S4 5.00 50.32 S4 5.00 79.07
F1 Tank diet (%)
@ 0.0% MILP Optimality GAP (3600s in Gurobi 6.5.0 @ 1.73% GAP )
IPOPT: 50.1s
CTA CBSO
Max Z= CDU feed
_COINMP: 13.4s
_GLPK: 188.2s
CDU feed= 75[u3]/day
_GUROBI: 11.1s
11. y = binary variables (setup su)
x = continuous variables (flow f)
2nd Crude-oil Blend Scheduling Optimization (CBSO-IMF-QL)
11Gantt Chart: Crude blender, CDU and Feed Tanks Holdup.
EWO Meeting, Mar 9th, 2016.
Blender
Feed Tanks
CDU
Time (step 2h)
To tank F1 To tank F2
Boxes in black means binary setup => y=1
Sequence of feed tanks to CDU: F3->F1->F2->F1->F3
12. y = binary variables (setup su)
x = continuous variables (flow f)
2nd Crude-oil Blend Scheduling Optimization (CBSO-IMF-QL)
12Gantt Chart: Crude blender, CDU and Feed Tanks Holdup.
EWO Meeting, Mar 9th, 2016.
Blender
Feed Tanks
CDU
Time (step 2h)
To tank F1 To tank F2
Boxes in black means binary setup => y=1
Sequence of feed tanks to CDU: F3->F1->F2->F1->F3
13. 2nd Crude-oil Blend Scheduling Optimization (CBSO-IMF-QL)
13Gantt Chart: Crude blender, CDU and Feed Tanks Holdup.
EWO Meeting, Mar 9th, 2016.
Blender
Feed Tanks
CDU
Time (step 2h)
To tank F1 To tank F2
Boxes in black means binary setup => y=1
To tank F1 To tank F3 To tank F1
Sequence of feed tanks to CDU: F3->F1->F2->F1->F3
14. 14
Gantt Chart: Feed Tank F1 Holdup and its crude composition.
EWO Meeting, Mar 9th, 2016.
2nd Crude-oil Blend Scheduling Optimization (CBSO-IMF-QQ)
Feed Tank 1
Crude composition (C1-C6)
Time (step 2h)
15. Conclusion
15
EWO Meeting, Mar 9th, 2016.
Novelty:
โข Segregates crude management in storage assignment and crude blend
scheduling.
โข Phenomenological decomposition in logistics (MILP) and quality (NLP)
problems applied in a scheduling problem.
โข Details all logistics relationships from practiced industrial operations.
16. 16
EWO Meeting, Mar 9th, 2016.
Conclusion
Impact for industrial applications:
โข Quickly reproduced (2weeks) using the structural programming language IMPL
โข UOPSS modeling, pre-solving, and parallel processing permitted to solve an 2h
time-step discrete-time formulation for a highly complex refinery (38 crude, 23
storage tanks, 11 feed tanks, 5 CDUs): for 6-7 days (72-80 time-periods) considering
included after the pre-solving
14,753 continuous and 8,481 binary variables;
5,029 equality and 32,852 inequality constraints (DoF=18,205)
CPU: 7.2 min (Cplex) and 3.6 min (Gurobi) (both in 8 threads)
7.4 min (Cplex) and 8.4 min (Gurobi) (both in 1 thread)
14,239 continuous and 9,937 binary variables
5,869 equality and 38,517 inequality constraints (DoF=21,307)
CPU: 36.4 min (Cplex) in 8 threads
6 days 7 days
No results (Gurobi 6.5.0)
@ 0.0% MILP Optimality GAP @ 0.0% MILP Optimality GAP
65.4 min (Cplex) in 1 thread