Decomposition Approaches for Enterprise

DECOMPOSITION APPROACHES FOR ENTERPRISE-WIDE OPTIMIZATION IN
PROCESS INDUSTRY
by
NIKISHA K. SHAH
A Dissertation submitted to the
Graduate School-New Brunswick
Rutgers, The State University of New Jersey
In partial fulfillment of the requirements
For the degree of
Doctor of Philosophy
Graduate Program in Chemical and Biochemical Engineering
Written under the direction of
Marianthi G. Ierapetritou, PhD
And approved by
________________________
________________________
________________________
________________________
New Brunswick, New Jersey
May, 2015
ABSTRACT OF THE DISSERTATION
Decomposition Approaches For Enterprise-Wide Optimization In Process Industry
By NIKISHA K. SHAH
Dissertation Director:
Marianthi G. Ierapetritou, PhD
Enterprise-wide optimization (EWO) has gain lot of interest in recent years as the globalization
trends of past few decades have significantly increased the scale and complexity of modern
process industry and increasing economic pressures to remain competitive in global marketplace.
EWO entails optimization of supply, manufacturing, and distribution activities to reduce costs
and inventories through an integrated and coordinated decision-making among various functions
in the industry (vendors, production facilities, and distribution). One of the major challenges in
achieving EWO is mathematical tools for planning and scheduling for manufacturing facilities.
Main objective of this dissertation is to develop mathematical methodologies to assist in
achieving EWO goals for chemical process industry. Specially, mathematical formulation for
planning and scheduling decisions and decomposition strategies will be developed in order to
bridge the gap between concepts and industrial application. In this work, planning and scheduling
of multisite, multiproduct batch production and distribution faculties is addressed via dual
decomposition based approach, which aims to reduce computational complexity through parallel
computation. In the area of continuous production facilities, lack of efficient scheduling models
prevents us from developing coordinated planning and scheduling tools. To address this issue,
ii
mathematical formulations for scheduling of refinery operations is developed and novel heuristics
and mathematical decomposition strategies for large scale complex mixed integer linear
programming models are proposed. Throughout this dissertation, case studies will be used to
demonstrate the applicability of proposed decomposition approaches.
iii
Acknowledgements
I would never have been able to finish my PhD without the support and encouragement
from my family and my advisor. I have been extremely fortunate to have a wonderful parents,
advisor, and friends supporting me for the last few years. Without all of your guidance and help, I
would not have reached the finished line.
I would like to express my deepest and sincere gratitude to my advisor, Dr. Marianthi
Ierapetritou, for her excellent guidance, caring, tremendous patience, encouragement, and
providing me with an excellent atmosphere for doing research and grow as an independent
thinker. Her mentorship was paramount in helping me grow academically, professionally and
personally. I am not sure many graduate students are given the opportunity to develop their own
individuality or allowed to work with such independence. Thank you for always supporting me,
challenging me to do my best, and believing in me when I had lost faith in myself. For everything
you‟ve have done for me, Dr. Ierapetritou, I thank you.
I would also like to thank the members of my committee, Dr. Ioannis P. Androulakis, Dr.
Rohit Ramachandran, and Dr. Beverly Smith for their support and kind accommodations.
I was fortunate to have Dr. Zhenya Jia introduce me to my research topic when I was still
an undergraduate. I would especially like to thank Dr. Georgios Saharidis for his assistance and
guidance in getting my interest in decomposition strategies started on the right foot and providing
me with honest critical feedback on my first research article which has helped greatly improved
my ability to communicate my research effectively.
I wish to acknowledge past and present members of in the Laboratory for Optimization
and Systems Analysis and friends at Rutgers whose friendship and support I will always treasure:
Dr. Edgar Davis, Dr. Patricia Portillo, Dr. Hong Yang, Dr. Zukui Li, Dr. Vidya Iyer, Dr. Mehmet
Orman, Dr. Aditya Vanarase, Dr. Fani Boukouvala, Dr. Yijie Gao, Dr. Kaiyuan He, Dr. Shuliang
iv
Zhang, Dr. Ravendra Singh, Dr. Amanda Rogers, Dr. Jinjun Zhuge, Nihar Sahay, Zhaojia Lin,
Parham Farzan, and Sebastian Escotet.
Lastly, I would like to thank my family for all their love, encouragement, and
unconditional support. To my parents who raised me with a love of science, engineering, and
critical thinking. Without inspiring example of my mother, her friendship, and her constant belief
in me that I can achieve anything through hard work and dedication, I would never have made it
this far. To my sister Khushbu, for teaching me the virtues of personal strength and perseverance
– in the face of difficulties. To my younger brothers Vaibhav and Dhruv, for always providing me
with an entertainment.
v
Dedication
To my mother: Shobhana Shah
vi
Table of Contents
ABSTRACT OF THE DISSERTATION ........................................................................................ ii
Acknowledgements ......................................................................................................................... iv
Dedication ....................................................................................................................................... vi
List of Tables ................................................................................................................................. xii
List of Illustrations ......................................................................................................................... xv
Chapter 1 .......................................................................................................................................... 1
1.
Introduction .......................................................................................................................... 1
1.1.
Enterprise Wide Optimization ......................................................................................... 1
1.1.1.
Problems and Challenges ......................................................................................... 3
1.2.
Planning and Scheduling in Process Industry .................................................................. 5
1.3.
Refinery Operations Scheduling ...................................................................................... 6
1.4.
Motivation: development and implementation of decomposition tools for planning and
scheduling in process industry ..................................................................................................... 7
1.5.
Outline of dissertation ...................................................................................................... 7
Chapter 2 .......................................................................................................................................... 9
2.
Planning and scheduling of multisite batch production and distribution facilities .............. 9
2.1.
Introduction ...................................................................................................................... 9
2.2.
Problem Statement ......................................................................................................... 15
2.3.
Mathematical formulation .............................................................................................. 16
2.4.
Solution Method............................................................................................................. 18
vii
2.4.1.
Augmented Lagrangian Decomposition ................................................................ 19
2.5.
Numerical Examples ...................................................................................................... 25
2.6.
Summary ........................................................................................................................ 37
Chapter 3 ........................................................................................................................................ 40
Centralized – decentralized optimization for refinery scheduling ..................................... 40
3.
3.1.
Introduction .................................................................................................................... 40
3.2.
Problem Definition......................................................................................................... 42
3.3.
Mathematical Formulation ............................................................................................. 44
3.4.
Solution Approach ......................................................................................................... 51
3.5.
Numerical Results .......................................................................................................... 56
3.6.
Summary ........................................................................................................................ 62
Chapter 4 ........................................................................................................................................ 66
4.
Scheduling of a large-scale oil-refinery operations ........................................................... 66
4.1.
Introduction .................................................................................................................... 66
4.2.
Problem Definition......................................................................................................... 71
4.2.1.
4.3.
Mathematical Formulation ............................................................................................. 76
4.3.1.
4.4.
Case study description ........................................................................................... 74
Valid Inequities ...................................................................................................... 88
Results on the Case Studies ........................................................................................... 90
4.4.1.
Case study 1 ........................................................................................................... 92
4.4.2.
Case Study 2 .......................................................................................................... 95
viii
4.5.
Summary ........................................................................................................................ 99
Chapter 5 ...................................................................................................................................... 104
5.
Lagrangian Decomposition Approach for Refinery Operations Scheduling ................... 104
5.1.
Introduction .................................................................................................................. 104
5.2.
Refinery Operations Scheduling .................................................................................. 108
5.3.
Solution Strategy .......................................................................................................... 109
5.4.
Lagrangian Relaxation Framework and Sub-problems................................................ 111
5.4.1.
Relaxed Problem .................................................................................................. 112
5.4.1.1.
Relaxed Blend Scheduling Problem ................................................................ 116
5.4.1.2.
Relaxed Production Unit Scheduling Problem ................................................ 118
5.4.2.
Construction of a Feasible Schedule .................................................................... 122
5.4.2.1.
Restricted Relaxed Problem ............................................................................. 124
5.4.2.2.
Upper Bounding Problem ................................................................................ 128
5.5.
Strengthening the Lagrangian Relaxation .................................................................... 129
5.5.1.
Preprocessing Step ............................................................................................... 129
5.5.2.
Strengthening Lower Bound ................................................................................ 130
5.5.3.
Construction of lower bound from the best upper bound .................................... 132
5.6.
Lagrangian Decomposition Algorithm ........................................................................ 133
5.6.1.
Updating the Multipliers ...................................................................................... 134
5.6.2.
Stopping Criteria .................................................................................................. 135
5.6.3.
Algorithm ............................................................................................................. 136
ix
5.7.
Computational results .................................................................................................. 139
5.8.
Summary ...................................................................................................................... 149
Chapter 6 ...................................................................................................................................... 156
6.
Efficient Decomposition Approach for Large Scale Refinery Scheduling ...................... 156
6.1.
Introduction .................................................................................................................. 156
6.2.
Mathematical Formulations ......................................................................................... 157
6.3.
Solution Strategy .......................................................................................................... 163
6.3.1.
Blend Scheduling Problem................................................................................... 166
6.3.2.
Production Unit Scheduling Problem .................................................................. 170
6.3.3.
Restricted Blend Scheduling Problem ................................................................. 176
6.3.4.
Integer Cuts .......................................................................................................... 180
6.4.
Proposed Heuristic Algorithm ..................................................................................... 181
6.4.1.
Termination Criterion .......................................................................................... 184
6.4.2.
Evaluation of scheduling horizon ........................................................................ 184
6.5.
Case Study ................................................................................................................... 185
6.6.
Computational Results ................................................................................................. 187
6.7.
Summary ...................................................................................................................... 201
Chapter 7 ...................................................................................................................................... 208
7.
Augmented Lagrangian Relaxation Approach for Refinery Scheduling ......................... 208
7.1.
Introduction .................................................................................................................. 208
7.2.
Solution Strategy .......................................................................................................... 209
x
7.2.1.
Augmented Lagrangian method ........................................................................... 209
7.2.2.
Decomposition Strategy ....................................................................................... 211
7.3.
Decomposed Models .................................................................................................... 216
7.3.1.
Relaxed Blend Scheduling Problem .................................................................... 217
7.3.2.
Relaxed Production Unit Scheduling Problem .................................................... 221
7.4.
Strengthening the Augmented Lagrangian Decomposition ......................................... 226
7.4.1.
Preprocessing Step ............................................................................................... 226
7.4.2.
Strengthening Decomposed Problems ................................................................. 228
7.5.
Augmented Lagrangian Optimization Algorithm ........................................................ 235
7.6.
Examples ...................................................................................................................... 240
7.6.1.
7.7.
Computational Results ......................................................................................... 243
Summary ...................................................................................................................... 256
Acknowledgement of Prior Works .............................................................................................. 263
Appendix...................................................................................................................................... 264
Appendix Chapter 2 ................................................................................................................. 264
Appendix Chapter 3 ................................................................................................................. 268
Appendix Chapter 6 ................................................................................................................. 277
Appendix Chapter 7 ................................................................................................................. 287
Bibliography ................................................................................................................................ 295
xi
List of Tables
Table 2.1 Model statistics of full-space integrated problem .......................................................... 26
Table 2.2 Computational results for example 1 ............................................................................. 27
Table 2.3 Computational results for example 2 ............................................................................. 33
Table 2.4 Computational results for example 3 ............................................................................. 35
Table 3.1 Characteristics of mathematical formulation using Scenario 1...................................... 57
Table 3.2 Characteristics of mathematical formulation using Scenario 2...................................... 58
Table 3.3 Scenario 1 Centralized vs. Decentralized ...................................................................... 59
Table 3.4 Scenario 2 Centralized vs. Decentralized ...................................................................... 60
Table 4.1 Price of raw materials and final products ...................................................................... 90
Table 4.2 Penalty parameters in objective function ....................................................................... 91
Table 4.3 Group A products demand order data for case study 1 .................................................. 93
Table 4.4 Group B products demands data for case study 1 .......................................................... 94
Table 4.5 Computational performance of case study 1 (without valid inequalities) ...................... 94
Table 4.6 Computational performance of case study 1 (with valid inequalities) ........................... 94
Table 4.7 Material flow in and out of multipurpose tank for case study 1, example 1 .................. 95
Table 4.8 Group A products demand order data for case study 2 .................................................. 96
Table 4.9 Group B products demands data for case study 2 .......................................................... 97
Table 4.10 Computational results for case study 2 (with valid inequalities) ................................. 97
Table 5.1 Model statistics for preprocessing problems................................................................ 139
Table 5.2 Model statistics ............................................................................................................ 140
Table 5.3 Computational Results ................................................................................................. 142
Table 5.4 Time spent (%) in each step compared to the total solution time of Lagrangian
decomposition algorithms ............................................................................................................ 143
xii
Table 6.1 Possible task assignment solutions based on current iteration task changeovers
parameter i ,i, j ............................................................................................................................. 181
Table 6.2 Penalty parameters in objective function ..................................................................... 187
Table 6.3 Model statistics ............................................................................................................ 188
Table 6.4 Computational results .................................................................................................. 191
Table 6.5 Computational results .................................................................................................. 194
Table 6.6 Computational performance results ............................................................................. 195
Table 6.7 Algorithm progress and termination ............................................................................ 196
Table 7.1 Parameters in objective function .................................................................................. 243
Table 7.2 Model statistics for Example 1 .................................................................................... 245
Table 7.3 Numerical results for Example 1 ................................................................................. 247
Table 7.4 Model statistics for Example 2 .................................................................................... 249
Table 7.5 Numerical results for Example 2 ................................................................................. 250
Table 7.6 Model statistics for Example 3 .................................................................................... 252
Table 7.7 Numerical results for Example 3 ................................................................................. 253
Table 7.8 Model statistics for Example 5 .................................................................................... 254
Table 7.9 Numerical results for Example 5 ................................................................................. 255
Table A2-1 Example 1: Process data for production sites ........................................................... 264
Table A2-2 Production and Inventory cost data .......................................................................... 266
Table A2-3 Transportation and Backorder cost data ................................................................... 266
Table A3-1 Demand in Thousand barrels .................................................................................... 268
Table A3-2 Production rates in thousand barrels/hour ................................................................ 268
Table A3-3 Recipe data ............................................................................................................... 269
Table A3-4 Storage tank capacity data in thousand barrels ......................................................... 270
Table A6-1 Production rates in thousand barrels/hour ................................................................ 277
xiii
Table A6-2 Minimum/maximum recipe data............................................................................... 278
Table A6-3 Storage tank capacity data in thousand barrels ......................................................... 280
Table A6-4 Group A products demand order data for the case study .......................................... 282
Table A6-5 Group B products demands data for the case study .................................................. 285
Table A7-1 Production rates (thousand barrels/hour) for a second diesel blend unit .................. 290
Table A7-2 Storage tank capacity data for blend component tanks............................................. 290
Table A7-3 Group B products demands data for the case study .................................................. 291
Table A7-4 Group A products demand order data for the case study .......................................... 292
xiv
List of Illustrations
Figure 1.1 Major elements of enterprise-wide optimization. ........................................................... 2
Figure 2.1 Multisite production and distribution network ............................................................. 11
Figure 2.2 Constraints matrix structure of an integrated multisite model ...................................... 19
Figure 2.3 Constraints matrix structure of a reformulated model .................................................. 20
Figure 2.4 Augmented Lagrangian-DQA decomposition algorithm ............................................. 25
Figure 2.5 Production facility state and task network (STN) representation (Example 1) ............ 26
Figure 2.6 Solution procedure of the ALO-DQA method (Example 1 and 90 planning periods) . 28
Figure 2.7 Production profiles of products (P1 and P2) at production sites (S1, S2, and S3)
obtained using the ALO-DQA method (Example 1 and 30 planning periods) .............................. 29
Figure 2.8 Shipment profiles of products (P1 and P2) for production site 1 to markets (M1, M2,
and M3) obtained using the ALO-DQA method (Example 1 and 30 planning periods) ............... 30
Figure 2.9 Shipment profiles of products (P1 and P2) for production site 2 to markets (M1, M2,
and M3) obtained using the ALO-DQA method (Example 1 and 30 planning periods) ............... 30
Figure 2.10 Shipment profiles of products (P1 and P2) for production site 3 to markets (M1, M2,
and M3) obtained using the ALO-DQA method (Example 1 and 30 planning periods) ............... 31
Figure 2.11 Sales profiles of products (P1 and P2) for markets (M1, M2, and M3) obtained using
the ALO-DQA method (Example 1 and 30 planning periods) ...................................................... 31
Figure 2.12 Inventory profiles of products (P1 and P2) at production sites (S1, S2, and S3)
obtained using the ALO-DQA method (Example 1 and 30 planning periods) .............................. 32
Figure 2.13 Production facility state and task network (STN) representation (Example 2) .......... 33
Figure 2.14 Solution procedure of the ALO-DQA method (Example 2, T = 90 periods) ............. 34
Figure 2.15 Solution procedure of the ALO-DQA method (Example 3, T = 90 periods) ............. 36
Figure 3.1 State and unit representation of Honeywell Hi-Spec problem ..................................... 43
Figure 3.2 Intermediate storage tank connecting two sub-systems................................................ 53
xv
Figure 3.3 Decomposition of the refinery problem under consideration ....................................... 54
Figure 3.4 Gantt chart of the operation schedule for example 1, centralized system, scenario 1. . 61
Figure 3.5 Gantt chart of the operation schedule for Case 4, decentralized system, scenario 1. ... 62
Figure 4.1 Graphic overview of a standard refinery system .......................................................... 68
Figure 4.2 Schematic of the refinery production plant for reference example .............................. 75
Figure 5.1 Graphic overview of a standard refinery system: includes no blend components storage
tanks. ............................................................................................................................................ 107
Figure 5.2 Spatial decomposition of a refinery operations network ............................................ 110
Figure 5.3 Framework of classical Lagrangian Decomposition Algorithm ................................. 112
Figure 5.4 Gantt chart for a blender receiving component s. ....................................................... 115
Figure 5.5. Algorithm for the proposed restricted-Lagrangian decomposition (restricted-LD) .. 138
Figure 5.6 Convergence of upper and lower bound of Lagrangian decomposition for example 1.
..................................................................................................................................................... 144
Figure 5.7 Convergence of upper and lower bound of Lagrangian decomposition for example 2.
..................................................................................................................................................... 145
Figure 5.8 Convergence of upper and lower bound of Lagrangian decomposition for example 3.
..................................................................................................................................................... 146
Figure 5.9 Convergence of upper and lower bound of Lagrangian decomposition for example 4.
..................................................................................................................................................... 147
Figure 5.10 Convergence of upper and lower bound of Lagrangian decomposition for example 5.
..................................................................................................................................................... 148
Figure 5.11 Convergence of upper and lower bound of Lagrangian decomposition for example 6.
..................................................................................................................................................... 149
Figure 6.1 Decomposition of an oil-refinery operations network by splitting blend components
pipelines ....................................................................................................................................... 164
xvi
Figure 6.2 Illustration of scheduling sub-problems obtained by splitting component flow streams
connecting process units directly to blend headers ...................................................................... 164
Figure 6.3 Proposed solution approach. ....................................................................................... 166
Figure 6.4 Determining parameters for PSP using a solution of a blend header j ....................... 169
Figure 6.5 Determining parameter tupo for PSP using the corresponding blend header j ........... 169
Figure 6.6 Proposed heuristic algorithm ...................................................................................... 184
Figure 6.7 Schedule evaluation of BSP, PSP, and RBSP. Here i represents index for blend task.
..................................................................................................................................................... 185
Figure 6.8 Gantt chart for Example 5 obtained using integrated full-scale model ...................... 199
Figure 6.9 Gantt chart for Example 5 obtained from the heuristic algorithm .............................. 200
Figure 7.1 Spatial decomposition of a refinery network .............................................................. 212
Figure 7.2 Spatial decomposition of blend sub-network structure (BN) ..................................... 217
Figure 7.3 Production unit operations network ............................................................................ 222
Figure 7.4. Augmented Lagrangian optimization algorithm ........................................................ 240
Figure 7.5 Solution procedure for Example 1, problem 5. .......................................................... 248
Figure 7.6 Solution procedure for Example 2, problem 5 ........................................................... 251
Figure 7.7 Solution procedure for Example 3, problem 5. .......................................................... 254
Figure 7.8 Solution procedure for Example 4, problem 5. .......................................................... 256
Figure A2-1 Demand data for Example 1 .................................................................................... 267
Figure A3-1 Gantt chart of tank loading schedule for example 1, Centralized system, scenario 1
..................................................................................................................................................... 271
Figure A3-2 Gantt chart of the tank unloading schedule for example 1, Centralized system,
scenario 1 ..................................................................................................................................... 272
Figure A3-3 Gantt chart of tank loading schedule for example 1, Decentralized system, scenario 1
..................................................................................................................................................... 272
xvii
Figure A3-4 Gantt chart of the tank unloading schedule for example 1, Decentralized system,
scenario 1 ..................................................................................................................................... 273
Figure A3-5 Gantt chart of the operation schedule for example 1, Centralized system, scenario 2
..................................................................................................................................................... 273
Figure A3-6 Gantt chart of the operation schedule for example 1, Decentralized system, scenario
2 ................................................................................................................................................... 274
Figure A3-7 Gantt chart of tank loading schedule for example 1, Centralized system, scenario 2
..................................................................................................................................................... 274
Figure A3-8 Gantt chart of tank unloading schedule for example 1, Centralized system, scenario 2
..................................................................................................................................................... 275
Figure A3-9 Gantt chart of tank loading schedule for example 1, Centralized system, scenario 2
..................................................................................................................................................... 275
Figure A3-10 Gantt chart of tank unloading schedule for example 1, Centralized system, scenario
2 ................................................................................................................................................... 276
xviii
1
Chapter 1
1. Introduction
1.1. Enterprise Wide Optimization
The process industry is a key sector in the global economy, converting raw materials such as
crude oil, water, and natural resources into thousands of products. According to the American
Chemistry Council, over 96% of all manufactured goods are dependent on chemical industry and
U.S. produces over 15% of world‟s chemical output, amounting to US$812 billion in (2014). In
particular, the petroleum refining industry is the largest source of energy products in the world
and is supplying about 39% of total U.S. energy demand and 97% of transportation fuels. Process
industry has grown increasingly complex in the last 20 years as a result of tighter competition,
stricter environmental regulations, uncertainty in the prices of energy, raw materials, and
products, and lower-margin profits. Globalization trends of past few decades have significantly
increased the scale and complexity of the modern enterprise by transforming them into global
network consisting of multiple business units and functions. Today process industries involve
multipurpose, multisite production facilities producing hundreds of products, located in different
regions and countries and servicing international market. (Wassick, 2009) In last decades,
enterprises are realizing the importance of enterprise wide optimization in reducing the overall
costs and remaining competitive in a dynamic global marketplace.
Enterprise-wide optimization involves coordinated optimization of the operations of
supply, manufacturing, and distribution; and integration of the information and decisions-making
among the various functions that comprise the supply chain of the company. (I. Grossmann,
2005; I. E. Grossmann, 2014) The concept of enterprise-wide optimization (EWO) lies at the
interface of the process system engineering, operations research and supply chain optimization
and these concepts are suitably positioned to provide decisions making models and algorithms for
2
optimization of an integrated manufacturing and distribution complexes. Supply chain
optimization can be considered an equivalent term for describing the enterprise-wide optimization
although supply chain optimization places more emphasis on logistics and distribution, whereas
enterprise-wide optimization is aimed at manufacturing facilities optimization. (Shapiro, 2001)
The process industry supply chains vary from the petroleum supply chain (N. K. Shah et al.,
2011) to pharmaceutical industry supply chain (Nilay Shah, 2004); however they all include
manufacturing as a major component according to I. E. Grossmann (2014); Wassick (2009). The
main goal of EWO is to maximize profits while minimizing costs, inventories and to this ends,
major operational activities of EWO is planning, scheduling and real-time optimization and
control (Figure 1.1).
Figure 1.1 Major elements of enterprise-wide optimization.
In the field of enterprise-wide optimization, planning and scheduling are the most
important operational decisions. Objectives of the planning and scheduling problems is to
determine the allocation of available resources over time to perform a set of tasks required to
manufacture one or more products as to satisfy global demand. The long to medium term
planning covers a time horizon of between few months to a year and is concerned with decisions
such as production, inventory, and distribution profiles. Short-term scheduling decision deals with
issues such as assignment of tasks to units and sequencing of tasks in each unit and typically
covers time horizon of between days to a few weeks. Typically, much of the decision-making in a
3
supply chain is focused across solving sub-problems as an entity, but from the enterprise-wide
performance viewpoint, local improvements at any sublevel do not necessary lead to an overall
improvement and to realize full potential of EWO, integrated approach is necessary. Amongst the
challenge involve in EWO in process industry, the chief challenge is coordinated decisionmaking across different functions in industry (procurement, manufacturing, distributions),
between various geographically distributed manufacturing sites, and across three levels of
decisions-making process. (Shapiro, 2001) While the first challenge relates to spatial integration
and the third challenge involves temporal integration across different timescales. Coordinated
decision making between geographically distributed integrated manufacturing sites deals with not
only spatial integration but also with temporal integrations.
Several of the aforementioned issues can be addressed in part through integration of planning and
scheduling decision-making for multi-product, multi-site production and distribution facilities.
1.1.1. Problems and Challenges
I. Grossmann (2005) discussed four major challenges in application of EWO: (a) Mathematical
modeling, (b) multiscale optimization, (c) optimization under uncertainty, and (d) algorithmic and
computational challenge. The first challenge involves development of production and scheduling
models that can effectively capture the complexity of various operations but can also be solved in
reasonable time frame. Second challenge involves difficulty associated with coordination
between different time scale and over different geographically located sites. Uncertainty is
inherent in supply chain (e.g. prices, demand, equipment breakdown) and effectively addressing it
can effect industry profits. However, before addressing uncertainties, computationally effective
deterministic models should be developed. Various models developed in previous three points,
are large scale complex MILP or MINLP models and they require the application of various
decomposition techniques. Comprehensive reviews of challenges faced in EWO of process
industry are presented by I. E. Grossmann (2014); Nilay Shah (2004, 2005).
4
Scheduling models in process industry address continuous, batch, and semi-continuous
production systems and complexity involved modeling these three different production system
vary. In continuous production units, there is a simultaneous inlet and outlet streams, where as in
batch process, simultaneous inlet and outlet streams are not allowed. Large varieties of products
are produced using batch processes and food, beverages, pharmaceutical products, paint,
fertilizer, and cement are a few of the categories of products produced using batch processes. Oil
refinery is one of the prominent systems with continuous production process. In last ten years,
great progress has been in short-term batch scheduling process, few of these works are Burkard et
al. (2002); Pedro M. Castro et al. (2009); P. M. Castro et al. (2011); He and Hui (2007);
Ierapetritou and Floudas (1998 ); Janak et al. (2006); Janak et al. (2004); Kondili et al. (1993);
Maravelias and Grossmann (2003); Moniz et al. (2014). The challenge in batch process industry
lies in developing effective solution methodology for integrating existing scheduling models with
planning level model and integrating decisions making across multisite production and
distribution facilities. Whereas, the main challenge in continuous process industry lies in
developing general purpose scheduling models. Every continuous process industry has its own
unique problems and arriving at one scheduling model for different types of continuous process
operations is difficult and thus focus is on development of general scheduling models for specific
industry. (I. Grossmann, 2005) In petroleum industry, different operations in refinery have their
own scheduling model instead of an integrated scheduling model for overall refinery operations.
Before tackling planning and scheduling integration in refinery, efficient and effective scheduling
model for overall efficient refinery operations need to be developed. Furthermore, refinery
process is very complex and their scheduling models are large scale complex mixed integer
models that require novel decomposition strategies.(Kelly & Zyngier, 2008; Shaik & Floudas,
2007)
5
1.2. Planning and Scheduling in Process Industry
In the recent years, the area of integrated planning and scheduling has received much attention for
single-site batch production facilities. However, the current manufacturing environment for
process industry has changed from a traditional single-site production plant to a more integrated
global production serving the emerging market. (Wassick, 2009) Modern process industries
operate as a large integrated complex that involve multi-product, multi-purpose, and multi-site
facilities serving a global market. The process industries supply chain can be defined to be
composed of production facilities and distribution centers, where final products produced at
production facilities are transported to distribution center to satisfy the customers demand. In
current global market, spatially distributed production facilities across various geographical
locations can no longer be regarded as isolated from each other and interactions between the
production facilities and the distribution centers should be taken into account when making
decisions. In this context, the issues of enterprise planning and coordination across production
plants and distribution facilities are important for robust response to global demand and to
maintain business competiveness, sustainability, and growth. (Papageorgiou, 2009) As the
pressure to reduce the costs and inventories increases, centralized approaches have become the
main policies to address supply chain optimization. (Grossmann, 2005) The integrated planning
and scheduling model for multi-site facilities is important to ensure the consistency between
planning and scheduling level decisions and to optimize production and transportation costs.
Wassick (2009) proposed a planning and scheduling model based on resource task network
for an integrated chemical complex. He considered the enterprise-wide optimization of the liquid
waste treatment network with their model. Kreipl and Pinedo (2004) discussed issues present in
modeling the planning and scheduling decisions for supply chain management. For a multisite
facilities, the size and level of interdependences between these sites present unique challenges to
the integrated tactical production planning and day-to-day scheduling problem and these
6
challenges are highlighted by Kallrath (2002b). For further elucidation of various aspects of
planning, reader is directed to the work of Timpe and Kallrath (2000) and Kallrath (2002a).
1.3. Refinery Operations Scheduling
The continuous process plants scheduling have drawn less consideration in the literature
compared to that of batch plants even though continuous plants are prevalent in the chemical
process industries. Of the continuous process industries, the oil refinery production operation is
one of the most complex chemical industries, which involves many different and complicated
processes with various connections. Instead of tackling a comprehensive large-scale refinery
operations optimization problem, decomposition approaches are generally exploited. Oil refinery
manufacturing operations can be decomposed into three problems: (1) crude-oil unloading,
mixing, and inventory control, (2) scheduling of production units, and (3) finish products
blending and distribution. (Jia & Ierapetritou, 2004) The goal of EWO is to optimized overall
refinery operations in a coordinated fashioned. Depending on the problem characteristics as well
as the required flexibility in the solution, scheduling models can be based on either a discrete, a
continuous, or hybrid time domain representation. (Iiro Harjunkoski et al., 2014; J. Li & Karimi,
2011; Mouret et al., 2010; Neiro et al., 2014) Real-life features such as multipurpose production
units, multipurpose product tanks, parallel non-identical blenders, minimum run lengths,
sequence dependent changeovers, product giveaway, piecewise constant profiles for blend
component qualities and feed rates, etc. introduces in more operational constraints and many
combinatorial decisions, that renders this large scale mixed integer problem difficult to solve
without decomposition solution strategies. (Kelly, 2006; Kelly & Zyngier, 2008; Shaik &
Floudas, 2007; Shaik et al., 2009)
7
1.4. Motivation: development and implementation of decomposition tools for
planning and scheduling in process industry
Despite the many of the potential benefits in coordinated decisions making in EWO,
aforementioned challenges in coordinated decisions making in planning and scheduling for
multiproduct, multisite product and distribution facilities and scheduling of overall refinery
operations, concepts of enterprise-wide optimization are underutilized. This is due to the
difficulties associated with building effective mathematical formulation that captures real world
complexity without becoming incomprehensive to solve and for efficient models to be utilized for
real world application, the challenge lies in developing decomposition approaches for large scale
mixed integer models.(I. E. Grossmann, 2014)
First objective of this dissertation is to develop mathematical formulation for multisite
batch-process production and distribution facility planning and propose decomposition approach
to address multi-scale optimization problem arising from integration of planning and scheduling
decisions level. Second objective of this dissertation is to propose scheduling models for large
scale refinery operations, to develop efficient decomposition based methodology to address large
scale optimization problems and demonstrate applicability of decomposition methodologies. The
methodologies to tackle large scale optimization models include, valid inequalities, heuristic
algorithm, Lagrangian relaxation decomposition, and augmented Lagrangian optimization. Each
of these decomposition methods will be discussed in the context of refinery operations scheduling
and demonstrated using case studies related to real refinery complex.
1.5. Outline of dissertation
Each of the six main chapters in this dissertation will emphasize a specific concept or tool for
enterprise-wide optimization. Chapter 2 will present decomposition based methodology to solve
full space integrated planning and scheduling problem for multisite, multiproduct batch
production plants and multisite distribution facilities. Chapter 3 will present spatial
8
decomposition strategy for refinery operations where centralized and decentralized decision
making process is compared and conditions during which decentralized approach gives global
optimal solution are discussed. A unified comprehensive refinery operation scheduling model that
incorporates many of the real world operational and logistics rules is presented in Chapter 4. The
resulting model is large scale mixed integer linear programming model (MILP) and valid
inequalities are developed to reduce complexity of the model by reducing the total number of
nodes and iterations in branch and bound framework. Refinery operations scheduling model
incorporating many logistics rules is difficult to solve to optimality in reasonable computational
time even after inclusion of valid inequalities. For refinery without any blend component tanks,
Chapter 5 tackles complexity of large scale scheduling model by developing mathematical
decomposition, Lagrangian relaxation, while Chapter 6 focuses on efficient heuristic
decomposition algorithm. In Chapter 7, a general augmented Lagrangian decomposition for
different refinery operations configuration (rundown streams, blend component tanks, or both) is
introduced and applied to number of case studies to illustrate its effectiveness.
9
Chapter 2
2. Planning and scheduling of multisite batch production and distribution facilities
The current manufacturing environment for process industry has changed from a traditional
single-site, single market to a more integrated global production mode where multiple sites are
serving a global market. In this chapter, the integrated planning and scheduling problem for the
multisite, multiproduct batch plants is considered. The major challenge for addressing this
problem is that the corresponding optimization problem becomes computationally intractable as
the number of production sites, markets, and products increases in the supply chain network. To
effectively deal with the increasing complexity, the block angular structure of the constraints
matrix is exploited by relaxing the inventory constraints between adjoining time periods using the
augmented Lagrangian decomposition method. To resolve the issues of non-separable crossproduct terms in the augmented Lagrangian function, diagonal approximation method is applied.
Several examples have been studied to demonstrate that the proposed approach yields significant
computational savings compared to the full-scale integrated model.
2.1. Introduction
Modern process industries operate as a large integrated complex that involve multiproduct,
multipurpose, and multisite production facilities serving a global market. The process industries
supply chain is composed of production facilities and distribution centers, where the final
products are transported from the production facilities to distribution centers and then to retailers
to satisfy the customers demand. In current global market, spatially distributed production
facilities across various geographical locations can no longer be regarded as independent from
each other and interactions between the manufacturing sites and the distribution centers should be
taken into account when making decisions. In this context, the issues of enterprise planning and
coordination across production plants and distribution facilities are important for robust response
to global demand and to maintain business competiveness, sustainability, and growth.
10
(Papageorgiou, 2009) As the pressure to reduce the costs and inventories increases, centralized
approaches have become the main policies to address supply chain optimization. An excellent
overview of the enterprise-wide optimization (EWO) and the challenges related to process
industry supply chain is highlighted by I. Grossmann (2005). Varma et al. (2007) described the
main concepts of EWO and presented the potential research opportunities in addressing the
problem of EWO models and solution approaches.
Supply chain optimization can be considered an equivalent term for describing the
enterprise-wide optimization according to Shapiro (2001) although supply chain optimization
places more emphasis on logistics and distribution, whereas enterprise-wide optimization is
aimed at manufacturing facilities optimization. Key issues and challenges faced by process
industry supply chain are highlighted by Nilay Shah (2004, 2005). Traditional supply chain
management planning decisions can be divided into three levels: strategic (long-term), tactical
(medium-term), and operational (short-term). The long-term planning determines the
infrastructure (e.g. facility location, transportation network). The medium-term planning covers a
time horizon between few months to a year and is concerned with decisions such as production,
inventory, and distribution profiles. Finally, short-term planning decision deals with issues such
as assignment of tasks to units and sequencing of tasks in each unit. The short-term planning level
covers time horizon between days to a few weeks and at production level, is typically refer to as
scheduling. Wassick (2009) proposed a planning and scheduling model based on resource task
network for an integrated chemical complex. He considered the enterprise-wide optimization of
the liquid waste treatment network with their model. Kreipl and Pinedo (2004) discussed issues
present in modeling the planning and scheduling decisions for supply chain management. For a
multisite facilities, the size and level of interdependences between these sites present unique
challenges to the integrated tactical production planning and day-to-day scheduling problem and
11
these challenges are highlighted by Kallrath (2002b). For further elucidation of various aspects of
planning, the reader is directed to the work of Timpe and Kallrath (2000) and Kallrath (2002a).
A simple network featuring the multisite facilities is given in Figure 2.1, where multiple
products may be produced in individual process plants at different locations spread across
geographic region and then transported to distribution centers to satisfy customers demand. These
multisite plants produce a number of products driven by market demand under operating
conditions such as sequence dependent switchovers and resource constraints. Each plant within
the enterprise may have different production capacity and costs, different product recipes, and
different transportation costs to the markets according to the location of the plants. To maintain
economic competitiveness in a global market, interdependences between the different plants,
including intermediate products and shared resources need be taken into consideration when
making planning decisions. Furthermore, the planning model should take into account not only
individual production facilities constraints but also transportation constraints because in addition
to minimizing the production cost, it‟s important to minimize the costs of products transportation
from production facilities to the distribution center. Thus, simultaneous planning of all activities
from production to distribution stage is important in a multisite process industry supply chain.
(N. Shah, 1998)
Figure 2.1 Multisite production and distribution network
12
Wilkinson et al. (1996) proposed an aggregated planning model based on the resource task
network framework developed by Pantelides (1994). Their proposed planning model considers
integration of production, inventory, and distribution in multisite facilities. Lin and Chen (2007)
developed a multistage, multisite planning model that deals with routings of manufactured
products demand among different production plants. They simultaneously combine two different
time scales (i.e. monthly and daily) in their formulation by considering varying time buckets.
Verderame and Floudas (2009) developed an operational planning model which captures the
interactions between production facilities and distribution centers in multisite production facilities
network. Their proposed multisite planning with product aggregation model (Multisite-PPDM)
incorporates a tight upper bound on the production capacity and transportation cost between
production facilities and customers distribution centers in the supply chain network under
consideration. A multisite production planning and distribution model is proposed by Jackson and
Grossmann (2003) where they utilized nonlinear process models to represent production facilities.
They have exploited two different decomposition schemes to solve the large-scale nonlinear
model using Lagrangian decomposition. In temporal decomposition, the inventory constraints
between adjoining time periods are dualized in order to optimize the entire network for each
planning time period. In spatial decomposition technique, interconnection constraints between the
sites and markets are dualized in order to optimize each facility individually. They conclude that
temporal decomposition technique performs far better than spatial decomposition technique.
The traditional strategy to address planning and scheduling level decisions is to follow a
hierarchical approach in which planning decisions are made first and then scheduling decisions
are made using planning demand targets. However, this approach does not consider any
interactions between the two decision making levels and thus the planning decisions may result in
suboptimal or even infeasible scheduling problems. Due to significant interactions between
planning and scheduling decisions levels in order to determine the global optimal solution it is
13
necessary to consider the simultaneous optimization of the planning and scheduling decisions.
However, this simultaneous optimization problem leads to a large problem size and the model
becomes intractable when typical planning horizon is considered. For an overview of issues,
challenges and optimization opportunities present in production planning and scheduling
problem, the reader is referred to the work of Maravelias and Sung (2009).
In recent years, the area of integrated planning and scheduling for single site has received much
attention. Different decomposition strategies are developed to effectively deal with a large scale
integrated model. One of the existing approaches follows a hierarchical decomposition method,
where the upper level planning problem provides a set of decisions such as production and
inventory targets to the lower level problem to determine the detailed schedule. If the solution of
lower level problem is infeasible, an iterative framework is used to obtain a feasible solution.
(Bassett et al., 1996) To further improve this approach, tight upper bounds on production capacity
are implemented in upper level problem in presence of an approximate scheduling model or
aggregated capacity constraints. (Nilay Shah, 2005; Shapiro, 2001) Another related idea is the
one that follows a hierarchical decomposition within a rolling horizon framework. In this model
detailed scheduling models are used for a few early periods and aggregated models are used for
later periods. (Dimitriadis et al., 1997; Z. Li & Ierapetritou, 2010b; Verderame & Floudas, 2008;
Wu & Ierapetritou, 2007) A different decomposition strategy is based on the special structure of
the large-scale mathematical programming model. The integrated planning and scheduling model
has a block angular structure which arises when a single scheduling problem is used over multiple
planning periods. The constraints matrix of the integrated problem has complicating variables that
appear in multiple constraints. By making copies of the complicating variables, the complicating
variables are transformed into complicating constraints (linking constraints) and these
complicating constraints can be relaxed using the Lagrangian relaxation method. One major
drawback of the Lagrangian relaxation (LR) is that there is duality gap between the solution of
14
the Lagrangian relaxation method and original problem and to resolve this issue, augmented
Lagrangian relaxation (ALR) method should be used Y. Li et al. (2008); Tosserams et al. (2006);
Tosserams et al. (2008). Z. Li and Ierapetritou (2010a) applied augmented Lagrangian
optimization method to integrated planning and scheduling problem for single site plants. One
disadvantage of ALR method is the non-separability of the relaxed problem which arises due to
the quadratic penalty terms present in the objective function. To resolve the issue of the nonseparability, Z. Li and Ierapetritou (2010a) studied two different approaches. The first approach
is based on linearization the cross-product terms using diagonal quadratic approximation (DQA).
(Y. Li et al., 2008) However, in this approach, an approximation of the relaxation problem is
solved and it may not lead to a global optimal solution of the original problem. In the second
approach, Z. Li and Ierapetritou (2010a) proposed a two-level optimization method which solves
an exact relaxation problem. However, the proposed two-level optimization strategy requires a
non-smooth quadratic problem to be optimized at every iteration. They conclude that DQA-ALO
method is more effective than the two-level optimization method for the integrated planning and
scheduling problems.
Even though most companies operate in a multisite production manner, very limited
attention has been paid on integrating planning and scheduling decisions for multisite facilities.
The integrated planning and scheduling model for multisite facilities is important to ensure the
consistency between planning and scheduling level decisions and to optimize production and
transportation costs. Since the production planning and scheduling level deals with different time
scales, the major challenge for the integration using mathematical programming methods lies in
addressing large scale optimization models. The full-scale integrated planning and scheduling
optimization model spans the entire planning horizon of interest and includes decisions regarding
all the production sites and distribution centers. When typical planning horizon is considered, the
15
integrated full-scale problem becomes intractable and a mathematical decomposition solution
approach is necessary.
In this work, augmented Lagrangian relaxation method is applied to solve the multisite
production and distribution optimization problem. The chapter is organized as follow. The
problem statement is given in Section 2.2, whereas Section 2.3 presents the problem formulation.
The general augmented Lagrangian method and its application to multisite facility is given in
Section 2.4. The results of examples studied are shown in section 2.5 and the chapter concludes
with summary in section 2.6.
2.2. Problem Statement
The supply chain network (Figure 2.1) under investigation contains multiple batch
production facilities which supply products to multiple distribution centers. Every production site
may supply all distribution centers but all the products may not be produced at every production
site. In the proposed model, it is assumed that one cannot sell more products to a market than the
market forecasted demand. Thus the requested demand acts as an upper bound on finished
product sales. The proposed model tries to satisfy the market demands; however it allows for
unsatisfied demand to be carried over to the next planning period (backorder) and also allows for
partial order fulfillment. The unsatisfied demand and backorders are penalized on a daily basis in
order to maximize the degree of customer demand order fulfillment. Following assumptions are
made: unlimited supply of raw materials is available and fixed and variable production, storage,
and backorder costs are known for the planning horizon under consideration. The transportation
costs are also assumed to be known. It is further assumed that there are no shipping delays in the
network and the length of time of the planning horizon is such that the effects of transportation
delays are neglected.
Given the daily demand profiles for each distribution center, the goals of the integrated
planning and scheduling problem is to ascertain the daily production target profiles for each
16
production facilities and product shipment profiles from production facilities to distribution
centers so that demand is satisfied over the planning horizon under considerations (several
months up to a year). The objective of the integrated problem is to minimize inventory,
backorder, transportation, and production costs.
2.3. Mathematical formulation
The multisite model includes production site constraints and distribution center (market)
constraints. The set of products s ∈ PR are to be produced at various production sites (p ∈ PS)
and are to be distributed to a global market (m ∈ M) over planning horizon (t ∈ T). To formulate
the integrated planning and scheduling model, an integrated modeling approach is proposed in
which planning and scheduling decisions level constraints are incorporated. The planning horizon
is discretized into fixed time length (daily production periods) and for each planning period, a
detailed scheduling model for each batch production facilities is considered. The detailed
scheduling model is based on continuous time representation and notion of event points.
(Ierapetritou & Floudas, 1998 ) The planning and scheduling decisions levels are inter-connected
via production and inventory constraints. The integrated planning and scheduling model for a
single-site proposed by Z. Li and Ierapetritou (2010a) is extended to accommodate multisite
production facilities serving multiple markets. The extended integrated multisite model is as
follows.
min
   h Inv     u U
p
s
t
p
m
s
p ,t
s
p
sS f
t
m
m
sS f
m ,t
s
  
t
m
p

d sp ,m Dsp ,m,t
sS fp  S mf
     FixCostip wvip, ,jt,n  VarCostip bip, j,t,n 
t
s.t.
(1a)
p jJ p iI jp n
Invsp ,t  Invsp ,t -1  Ps p ,t -
D
p , m ,t
s
,  s  S fp , p  PS , t  T
(1b)
,  s  S mf , m  M , t  T
(1c)
m
U sm ,t  U sm ,t -1  Demsm ,t -
D
pPs
p , m ,t
s
17
stsp,n,t N - stinsp ,t  Ps p ,t , s  S fp , p  PS , t  T
(1d)
stinsp ,t  Invsp ,t -1 , s  S fp , p  PS , t  T
(1e)
 wv
(1f)
p ,t
i , j ,n
 1,  j  J p , n  N , p  PS , t  T
iI jp
p ,t
p ,t
max
p ,t
p
p
vimin
, j , p wvi , j , n  bi , j , n  vi , j , p wvi , j , n ,  i  I j , j  J , n  N , p  PS , t  T
(1g)
stsp,n,t  stcapsp , s  S p , n  N , p  PS , t  T
(1h)
stsp,n,t  stsp,n,t1 
  b
c, p
s ,i
iI sp
stsp,n,t1  stinsp ,t 

p ,t
i , j ,n
  b
c, p
s ,i
iI sp
 b
p, p
s ,i
iI sp
jJ ip
p ,t
i , j , n 1 ,
p ,t
i , j ,n 1 ,
s  S p , n  N , p  PS , t  T
jJ ip
s  S p , p  PS , t  T
jJ ip
(1i)
(1j)
Tfi ,pj,,tn  Tsip, ,jt,n   ip, j wvip, j,t,n  i p, j bip, j,t,n , i  I jp , j  J p , n  N , p  PS , t  T
(1k)
Tsip, ,jt,n 1  Tfi ,pj,,tn  H 1  wvip, j,t,n  , i  I jp , j  J p , n  N , p  PS , t  T
(1l)


(1m)
Tsip, ,jt,n 1  Tf ip, ,jt,n  H 1  wvip,,jt,n , i, i   I jp , i   i, j , j   J p , n  N , p  PS , t  T


(1n)
Tsip, ,jt,n 1  Tsip, ,jt,n , i  I jp , j  J p , n  N , p  PS , t  T
(1o)
Tfi ,pj,,tn 1  Tfi ,pj,,tn , i  I jp , j  J p , n  N , p  PS , t  T
(1p)
Tsip, ,jt,n  H , i  I jp , j  J p , n  N , p  PS , t  T
(1q)
Tfi ,pj,,tn  H , i  I jp , j  J p , n  N , p  PS , t  T
(1r)
Tsip, ,jt,n 1  Tfip, ,jt,n  H 1  wvip,,jt ,n , i  I jp , i   I jp , j  J p , n  N , p  PS , t  T
18
The objective function shown in equation (1a) minimizes the total costs of the integrated
model, which includes variable inventory costs, backorder costs, transportation costs, and
production costs and fixed production costs. The planning level is modeled by constraints (1b1c). Equation 1b predicts the production targets ( Ps p ,t ), inventory targets ( Invsp ,t ), and shipping
targets ( Dsp ,m ,t ) for each product. The constraint describing each distribution center (market) is
given in equation (1c). As shown in equation (1c), the backorder balance is performed for each
customer market by considering the demand forecast ( Demsm ,t ) of that market and the sales all the
shipments of the product from one or combination of all production sites to that market ( Dsp ,m ,t ).
Constraints (1d) assign production targets ( Ps p ,t ) of planning level solutions to scheduling level
problem for each product to each production facility for different planning periods. Equation (1e)
represents the connection between the inventory level requirements for the scheduling problems
to that of the different planning periods for each product. In addition to constraints (1a-1e), the
model also includes detailed scheduling constraints (1f-1r) for each production site (p ∈ PS) and
for each planning period (t ∈ T). These scheduling level constraints are allocation constraints (1f),
production capacity constraints (1g), storage capacity constraints (1h), material balance
constraints (1i) and (1j), and sequence constraints (1k-1r). Equations (1a-1r) comprise the
complete multisite batch production facilities and multisite distribution centers considering
planning and scheduling decisions.
2.4. Solution Method
The full-scale integrated model gives rise to a large scale optimization problem which requires
the use of decomposition methods to be solved effectively. The appropriate mathematical
decomposition approach is decided by analyzing the constraints matrix of the full-scale model. If
the planning decision variables ( Invsp ,t , Ps p ,t , Dsp ,m ,t ,U sm ,t ) are denoted as X t , p and scheduling
decision variables as Y t , p , then the structure of the integrated model can be illustrated as shown in
19
a constraints matrix (Figure 2.2). As it is seen in the Figure 2.2, the matrix has a block angular
structure and these blocks are linked through the planning decisions variables, inventory and
production targets for each production facilities ( Invsp ,t , Ps p ,t ). These complicating variables can be
handled using augmented Lagrangian relaxation method described in the next section to obtain a
decomposable structure.
Figure 2.2 Constraints matrix structure of an integrated multisite model
2.4.1. Augmented Lagrangian Decomposition
In order to obtain a decomposable structure, the complicating variables need to be transformed
into complicating constraints and then, the model can be relaxed by eliminating complicating
constraints from the total constraints set. The first step in obtaining the relaxation problem is to
duplicate the planning inventory and production targets variables, using different variables in
planning and scheduling problems and incorporate the coupling constraints (2f-2g) into the fullscale model. The production and inventory scheduling targets constraints are rewritten as (2q-2r).
20
This transforms the constraints matrix (Figure 2.2) into the matrix with complicating constraints
shown in Figure 2.3.
Figure 2.3 Constraints matrix structure of a reformulated model
min
   h Inv     u U
p
s
t

t
m sS mf
     FixCost

t
p
p ,t
i wvi , j , n
t
s.t.
m m ,t
s s
p ,t
s
p sS fp
 
m
p
 VarCostip bip, j,t,n
p iI p jJ ip n
Invsp ,t  Invsp ,t -1  Ps p ,t -
D
p , m ,t
,
s
d sp ,m Dsp ,m,t
sS fp  S mf

(2a)
 s  S fp , p  PS , t  T
(2b)
 s  S mf , m  M , t  T
(2c)
m
U sm ,t  U sm ,t -1  Demsm ,t -
D
p , m ,t
,
s
pPs
stsp,n,t N - stinsp ,t  PPsp ,t , s  S fp , p  PS , t  T
(2q)
stinsp ,t  II sp ,t -1 , s  S fp , p  PS , t  T
(2r)
II sp ,t  Invsp ,t , s  S fp , p  PS , t  T
(2f)
21
PPsp ,t  Psp ,t , s  S fp , p  PS , t  T
(2g)
y p,t Y , p  PS , t T
(2h)
The complicating constraints (2f-2g) link the planning level constraints with the scheduling level
constraints. The constraints (2h) express a compact representation of the scheduling level
constraints (1f-1r) for each production site and planning period.
The reformulated model (2) is still not decomposable since the planning and scheduling
problems are interconnected via coupling constraints thus the Augmented Lagrangian relaxation
method is applied by dualizing the complicating constraints in equations (2f-2g), which involves
removing them from the reformulated model constraints set and adding them to the objective
function multiplied by the Lagrange multipliers ( sp ,t ,  sp ,t ) and quadratic penalty parameters (σ)
as shown in equation (3a). Constraints (3a-3h) correspond to the augmented Lagrangian
relaxation problem.
f   ,  ,  = min
   h Inv     u U
p
s
t

t
m
p
p ,t
i wvi , j , n

t
p iI
p
p
j J i
n
    Inv
p ,t
s
p ,t
s
p sS fp
Invsp ,t  Invsp ,t -1  Ps p ,t -

- II sp ,t  
t
D
p , m ,t
,
s
m ,t
s
m
sS f
     FixCost
t
s.t.
p
m
s
p ,t
s
p
sS f

 
m
t

d sp ,m Dsp ,m,t
p sS fp  S mf

 VarCostip bip, j,t,n    sp ,t Psp ,t - PPsp ,t
    P
t
p ,t
s
p sS fp
- PPsp ,t
p
sS f
   Inv
2
p ,t
s
- II sp ,t

(3a)

2
 s  S fp , p  PS , t  T
(3b)
 s  S mf , m  M , t  T
(3c)
m
U sm ,t  U sm ,t -1  Demsm ,t -
D
p , m ,t
,
s
pPs
stsp,n,t N - stinsp ,t  PPsp ,t , s  S fp , p  PS , t  T
(3q)
stinsp ,t  II sp ,t -1 , s  S fp , p  PS , t  T
(3r)
22
y p,t Y , p  PS , t T
(3h)
To improve the convergence to the feasible solution and to avoid duality gap that may result with




just the Lagrangian terms ( sp ,t Ps p ,t - PPs p ,t and  sp ,t Invsp ,t - II sp ,t ), the quadratic penalty term (

   Inv
2
 Psp ,t - PPsp ,t
p ,t
s
- II sp ,t
 )
2
is applied to the relaxation formulation as given in (3a).
However, the quadratic penalty term in the objective function of the relaxation problem has nonseparable bilinear terms Psp,t  PPsp,t and Invsp ,t  II sp ,t . To resolve the non-separabilility issue, the
diagonal quadratic approximation (DQA) method is applied to linearize the cross-product terms
p ,t
p ,t
p ,t
   Inv
p ,t
s
 II sp ,t
p ,t
around the tentative solution P s , PP s , Inv s , II s as shown in the following equations ((Y. Li et al.,
2008)).
 Inv
 II sp ,t

 PPsp ,t

p ,t
s
P
s
p ,t

p ,t 2
2
 Invsp ,t  II s
2
 Psp,t  PP s

  P
p ,t 2
p ,t
s
 PPsp,t
   Inv
2
  P
2
p ,t
s
p ,t
s

p ,t 2
 II s

p ,t 2
 PP s
The objective function (3a) can be thus be rewritten in decomposable form given by equation
(4a‟).
f ( ,  ,  ) = f pl 
 f
p ,t
sc
(4a‟)
tT pPS
where, the f pl represents the objective function of the planning problem (4a, 4b, 4c).
f pl   ,  ,   min
P , Inv , D ,U
   h Inv     u U
p
s
t
p sS fp
   sp ,t Ps p ,t  
p
sS f
t

t
m
s
p ,t
s
t

t

m ,t
s
m sS mf

t
 
m
d sp ,m Dsp ,m,t
p sS fp  S mf
p ,t
p ,t
s Invs
(4a)
p sS fp
p ,t

p p   Psp,t - PP s
sS f
 
2
 
p ,t 2
 Invsp ,t - II s
p ,t
 
p ,t 2
 P s - PP s
p ,t
 
p ,t 2 
 Inv s - II s
23
s.t.
D
Invsp ,t  Invsp ,t -1  Ps p ,t -
p , m ,t
,
s
 s  S fp , p  PS , t  T
(4b)
 s  S mf , m  M , t  T
(4c)
m
U sm ,t  U sm ,t -1  Demsm ,t -
D
p , m ,t
,
s
pPs
where f scp ,t represents the objective function of the scheduling sub-problems (5a, 5b-5d). The
scheduling sub-problem is defined at each production site and for each planning period.
f scp ,t   ,  ,  


sS fp
s.t.
min
PP p ,t , II p ,t , y p ,t
p ,t p ,t
s II s
    FixCostip wvip, ,jt,n  VarCostipbip, j,t,n    sp,t PPsp,t
iI
p
p
j J i

 p ,t
   P s - PPsp ,t
sS fp 

sS fp
n
 
2
p ,t
Inv s
- II sp ,t

2



(5a)
stsp,n,t N - stinsp ,t  PPsp ,t , s  S fp , p  PS , t  T
(5b)
stinsp ,t  II sp ,t -1 , s  S fp , p  PS , t  T
(5c)
y p,t Y , p  PS , t T
(5d)
These quadratic problems are solved using a general augmented Lagrangian optimization and
diagonal quadratic approximation (ALO-DQA) algorithm which is outlined in Figure 2.4.
The ALO-DQA algorithm can provide an optimal solution if the objective functions and
constraints function are convex, feasible region is bounded and closed, and the step size is
sufficiently small. The algorithm has the following parameters: the initial Lagrange multipliers (
sp ,t ,0 ,  sp ,t ,0 ) which are chosen to be zero, the initial penalty parameter (  0  1 ), and the iteration
counter k which is set to 1. The convergence tolerance (   0 ) for the coupling constraints is 1 and
the parameters   (0,1) (e.g., 0.4) and   1 .
The augmented Lagrangian multipliers are updated at every iteration as shown in Figure
2.4 while the quadratic penalty parameters are updated only if the improvement of the current
24
iteration is not large enough. The ALO-DQA method alternates between solving an optimization
planning problem (4) and solving optimization scheduling sub-problems (5). The solution of each
problem is used to linearize the non-separable terms and the algorithm terminates when the
consistency constraints (g) have met the pre-defined tolerance or when the given iteration limit is
reached. In the next section, three numerical examples are solved using the ALO-DQA method.
Initialize, k = 1
 0 ,  0  0 initial multiplier
 penalty parameter
Solve Planning problem (4)
f pl*   k ,  k ,  k 
p ,t
p ,t
P s , Inv s
Solving Scheduling problems (5) in parallel
f sc*1,1   k ,  k ,  k 
f sc*1,2   k ,  k ,  k 
p ,t
f sc* P ,T   k ,  k ,  k 
p ,t
PP s , II s
Loop Converged?
g = [Inv-II P-PP] T
g ?
?
No
Update parameters
sp ,t  sp ,t    Ps p ,t - PPs p ,t 
 sp ,t   sp ,t    Invsp ,t - II sp ,t 
If g
k
 g
k 1
,   
Set k = k + 1
Yes
Feasible
solution f *
25
Figure 2.4 Augmented Lagrangian-DQA decomposition algorithm
2.5. Numerical Examples
The proposed multiproduct and multisite production facility model is applied to the two examples
of supply chain with a planning horizon of 3 months (90 days) and scheduling horizon of 1
production shift (8 hours). The full-scale integrated planning and scheduling problem corresponds
to a mixed integer linear programming (MILP) problem while in the ALO-DQA method, the
planning problem is quadratic programming (QP) problem and scheduling sub-problems are
mixed integer quadratic programming (MIQP) problem. The multisite models were implemented
using GAMS 23.6 (2010) and solved using CPLEX 12.2 on 2.53 GHz Precision T7500 Tower
Workstation with 6 GB RAM. The scheduling sub-problems (MIQP) in the ALO-DQA method
are solved in parallel for each planning period and each production site thus improving the
efficiency of the algorithm. In all the examples studied in our work, limited storage capacity for
final products and intermediate materials is considered.
Example 1: A small example that has 3 production sites serving 3 markets is studied. Each
production site contains a multiproduct, multitask batch process plant that produces two products,
P1 and P2. (Kondili et al., 1993) The state and task representation (STN) of the production plant
is given in Figure 2.5 and the data for the example are given in Appendix Chapter 2. The process
parameters, production and inventory costs, and shipping and backorder costs are given in Table
A2-1, Table A2-2, and Table A2-3, respectively. Continuous time scheduling problem is solved
using 6 event points and 8 hour time horizon. The daily demand data for the example 1 is given in
Figure A2-1 for planning horizon of 90 days.
26
Figure 2.5 Production facility state and task network (STN) representation (Example 1)
Table 2.1 Model statistics of full-space integrated problem
Example 1
Example 2
Example 3
Period
Binary
Cont.
(T)
Binary
Cont.
Const.
var.
var.
5
720
4006
10
1440
15
Binary
Cont.
var.
var.
Const.
Const.
var.
var.
10465
720
5011
10654
1440
8851
21178
8011
20935
1440
10021
21319
2880
17701
42373
2160
12016
31405
2160
15031
31984
4320
26551
63568
30
4320
24031
62815
4320
30061
63979
8640
53101
127153
45
6480
36046
94225
6480
45091
95974
12960
79651
190738
60
8640
48061
125635
8640
60121
127969
17280
106201
254323
90
12960
72091
188455
12960
90181
191959
25920
159301
381493
The full-scale model statistics for example 1 is shown in Table 2.1 and results are given in Table
2.2 for time periods 5 to 90. As the time periods increases, the problem becomes difficult to solve
to optimality as observed by the optimality gap (%) in Table 2.2 for the full-space model. The
performance and quality of the full-scale model to that of the ALO-DQA is compared in Table
27
2.2. From the Figure 2.6, it can be observed that the augmented Lagrangian algorithm converges
to a feasible solution of the original problem as the norm value of the coupling constraints (||g||)
converges to zero. The quality of the feasible solution (f*) obtained using the ALO-DQA method
may be inferior to the full-scale model since the ALO-DQA strategy solves an approximation
version of the relaxation problem. The key information that the integrated model solution
provides is production, shipping, sales, inventory, and backorder profiles. The profiles for
example 1 obtained using the ALO-DQA method are shown in Figure 2.7 to Figure 2.10 for 30
planning periods. The production profiles for production sites (S1, S2, and S3) are shown in
Figure 2.7. The transportation profile of products (P1 and P2) from production site (S1, S2, and
S3) to market place (M1, M2, and M3) is given in Figure 2.8, Figure 2.9, and Figure 2.10. Note
that as shown in Figure 2.8, Figure 2.9, and Figure 2.10, the production sites 1, 2, and 3 mainly
satisfy the demand of markets 1, 2, and 3, respectively. These transportation profiles are expected
based on the shipping cost. The total sale of products (P1 and P2) at markets (M1, M2, and M3) is
given in Figure 2.11. The variable inventory holding cost is highest at production site 2 and
lowest at site 3 and the model solution gives an inventory profiles (Figure 2.12) that has highest
holdup at site 3 and lowest holdup at site 2. As expected, the advantage of the proposed
decomposition approach is shown for bigger problems. So for larger number of time periods
(T=90 periods), better solutions were obtained using the ALO-DQA method than by the full-scale
model.
Table 2.2 Computational results for example 1
ALO-DQA method
Full-space model
 0  1.0,   2.0
T
CPU
Iter.
f*
sec
5
3600
58073
CPU
Gap (%)
0.63
k
sec
10
34.68
f*
λg + σ||g||2
||g||
59500
0.62
0.22
28
10
3600
119227
1.91
9
53.53
122903
34.80
0.66
15
3600
194567
2.07
12
101.97
199983
-157.42
0.89
30
3600
390528
2.27
12
183.21
403208
-17.96
0.85
45
3600
592649
2.44
12
292.25
608059
-166.23
0.76
60
7200
791399
3.28
13
436.03
803867
-128.27
0.59
90
7200
1225376
6.93
15
760.50
1203194
-324.10
0.92
Figure 2.6 Solution procedure of the ALO-DQA method (Example 1 and 90 planning periods)
29
Figure 2.7 Production profiles of products (P1 and P2) at production sites (S1, S2, and S3) obtained
using the ALO-DQA method (Example 1 and 30 planning periods)
30
Figure 2.8 Shipment profiles of products (P1 and P2) for production site 1 to markets (M1, M2, and
M3) obtained using the ALO-DQA method (Example 1 and 30 planning periods)
Figure 2.9 Shipment profiles of products (P1 and P2) for production site 2 to markets (M1, M2, and
M3) obtained using the ALO-DQA method (Example 1 and 30 planning periods)
31
Figure 2.10 Shipment profiles of products (P1 and P2) for production site 3 to markets (M1, M2, and
M3) obtained using the ALO-DQA method (Example 1 and 30 planning periods)
Figure 2.11 Sales profiles of products (P1 and P2) for markets (M1, M2, and M3) obtained using the
ALO-DQA method (Example 1 and 30 planning periods)
32
Figure 2.12 Inventory profiles of products (P1 and P2) at production sites (S1, S2, and S3) obtained
using the ALO-DQA method (Example 1 and 30 planning periods)
Example 2. In example 2, we consider a network of 3 production sites producing 4 different
products (P3-P6) and serving 3 global markets. All 3 production sites have batch facilities whose
STN network is shown in Figure 2.13. (Kondili, 1987) This batch facility produces 4 products
(P3, P4, P5, and P6) through 8 tasks from three feeds and there are 6 intermediates state in the
system. The full-scale model statistics for this example are shown in Table 2.1 and results are
shown in Table 2.3. The full-scale problem is much easier to solve compared with example 1,
even though this example is bigger than example 1. Thus, the production recipe, and the
parameters relating to production, capacity, demand, and costs have significant effect on the
performance of the full-scale model. To further improve the integrated model performance, we
applied the ALO-DQA method and the results are shown in Table 2.3. The solution convergence
33
profile for planning period 90 is shown in Figure 2.14. The performance of the ALO-DQA
method depends on the choice of the initial values of Lagrange multipliers, penalty parameters,
and other algorithm parameters. By selecting appropriate values of these parameters, we can
improve on the quality of the feasible solution obtained by the ALO-DQA. The results with set of
parameters
 0  0,  0  0, 0  0.20,  1.2,   0.4 are shown in the Table 2.3. Significant CPU
time savings is reported when the ALO-DQA method is used compared to the integrated fullscale model.
Figure 2.13 Production facility state and task network (STN) representation (Example 2)
Table 2.3 Computational results for example 2
ALO-DQA method
Full-space model
 0  0.2,  1.2
T
CPU
Gap
Iter
f*
sec
λg +
CPU sec
(%)
k
f*
||g||
σ||g||2
34
5
52.15
249097
0.00
36
49.37
250052
99.31
0.56
10
3600
502983
0.07
36
66.85
504687
14.18
0.65
15
3600
756527
0.25
40
112.49
762006
-211.75
0.89
30
3600
1381017
0.50
40
209.29
1390602
-216.91
0.95
45
3600
1964466
1.05
40
262.49
1968542
-234.33
0.98
60
3600
2594945
0.75
41
499.90
2608491
-1.59
0.70
90
3600
4009291
1.04
41
709.48
4024795
24.81
0.75
Figure 2.14 Solution procedure of the ALO-DQA method (Example 2, T = 90 periods)
Example 3. In example 3, we consider a network of 6 production sites producing 6 different
products (P1-P6) and serving 9 global markets. Of the 6 production sites, 3 batch production
facilities have the network shown in Figure 2.5 and produce 2 products (P1 and P2) and 3
35
production sites have the batch facilities whose STN network is shown in Figure 2.13 and
produce 4 products (P3, P4, P5, and P6) through multipurpose units.
Table 2.4 Computational results for example 3
ALO-DQA method
Full-space model
 0  1.0,  2.0
T
CPU
Iter
f*
CPU
Gap (%)
sec
k
sec
f*
λg + σ||g||2
||g||
5
3600
141129
4.11
11
71.11
151551
24.28
0.99
10
3600
276230
4.40
13
144.97
295756
609.56
0.88
15
3600
408436
4.97
12
192.53
435078
200.49
0.58
30
3600
784535
6.05
13
378.51
822924
-31.96
0.91
45
3600
1259638
12.97
16
749.96
1233187
-905.25
0.80
60
3600
8123074
82.11
16
984.92
1629968
-718.61
0.76
90
3600
8445397
74.11
15
1263.73
2437213
-1271.17
0.85
36
Figure 2.15 Solution procedure of the ALO-DQA method (Example 3, T = 90 periods)
The model statistics of example 3 are shown in Table 2.1. As expected, the complexity of the
integrated full-scale model increases as the planning horizon increases and this is reflected in the
solution time and relative gap (%) given in Table 2.4. The progress of the solution procedure of
the ALO-DQA method for 90 time periods is shown in Figure 2.15. Table 2.4 shows the solutions
of the integrated full-scale problem and the ALO-DQA decomposition method. Similar to results
of examples 1 and 2, significant computational savings are observed when decomposition is
applied compared to the full-scale model. Furthermore, for example 3, the ALO-DQA method is
able to provide a better solution than the one reported by the full-scale model for planning periods
of T=45, 60, and 90.
37
2.6. Summary
This work addresses the problem of integrated planning and scheduling for multisite,
multiproduct and multipurpose batch plants using the augmented Lagrangian method. The
integrated multisite model is proposed by extending single site formulation of(Z. Li &
Ierapetritou, 2010a). The shipping costs from the production sites to distribution markets are
taken into account explicitly in the integrated problem. Given the fixed demand forecast the
model optimizes the production, inventory, transportation, and backorder costs. Temporal
decomposition scheme was developed to address the large scale model resulting from multiperiod
planning and scheduling problem. The augmented Lagrangian relaxation with diagonal
approximation method allowed solution of the scheduling optimization problems into parallel.
Three example problems solved to illustrate the advantages of applying the augmented
Lagrangian decomposition scheme. With the proposed decomposition method, faster solution
times were realized.
Nomenclature
Indices
i
task
j
units
m
distribution market
n
event point
p
production site
s
material state
t
planning period
Sets
I
tasks
38
Ip
task that can be performed at site p
I jp
tasks that can be performed in unit j at site p
J
units
Jp
units that are located at site p
J ip
units that can perform task i at site p
M
distribution markets
N
event points
Ps
sites that can produced final product s
PS
production sites
S
material states
S mf
products that can be sold at market m
S fp
products that can be produced at site p
T
planning periods
Parameters
d sp , m
unit transport cost of material s from site p to market m
Demsm ,t
demand of product s at market m for period t
FixCostip
fixed production cost of task i at site p
hsp
holding cost of product s at production site p
stcapsp
available maximum storage capacity for state s at site p
u sm
backorder cost of product s at distribution market m
max
vimin
, j , p , vi , j , p
minimum and maximum capacity of unit j when processing task i at site p
VarCostip
unit variable cost of task i at site p
39
 ip, j , i p, j
constant, variable term of processing time of task i in unit j at site p
 sc,,ip ,  sp,i, p
proportion of state s consumed, produced by task i respectively at site p
Variables
bip, j,t,n
amount of material processed by task i in unit j at event point n at site p during
period t
Dsp ,m,t
transportation of product s from site p to market m at period t
Invsp ,t
inventory level of state s at the end of the planning period t for site p
stinsp,t
initial inventory for state s in planning period t
Tf i ,pj,,tn
finish time of task i in unit j at event point n in site p during period t
Tsip, ,jt,n
start time of task i in unit j at event point n in site p during period t
U sm ,t
backorder of product s at market m in planning period t
wvip, ,jt,n
binary variable, task i active in unit j at event point n at site s during period t
40
Chapter 3
3. Centralized – decentralized optimization for refinery scheduling
This chapter presents a novel decomposition strategy for solving large scale refinery scheduling
problems. Instead of formulating one huge and unsolvable MILP or MINLP for centralized
problem, we propose a general decomposition scheme that generates smaller sub-systems that can
be solved to global optimality. The original problem is decomposed at intermediate storage tanks
such that inlet and outlet stream of the tank belong to the different sub-systems. Following the
decomposition, each decentralized problem is solved to optimality and the solution to the original
problem is obtained by integrating the optimal schedule of each sub-systems. Different case
studies of refinery scheduling are presented to illustrate the applicability and effectiveness of the
decentralized strategy. The conditions under which these two types of optimization strategies
(centralized and decentralized) give the same optimal result are discussed.
3.1. Introduction
Production scheduling defines which products should be produced and which products should be
consumed in each time instant over a given small time horizon; hence, it defines which run-mode
to use and when to perform changeovers in order to meet the market needs and satisfy the
demand. Large-scale scheduling problems arise frequently in oil refineries where the main
objective is to assign sequence of tasks to processing units within certain time frame such that
demand of each product is satisfied before its due date. As the scale of the production problem
increases, the mathematical complexity of the corresponding scheduling problem increases
exponentially. Decomposition of the initial system into subsystems which are easier to be solved,
is a natural way to deal with this type of optimization problems.
There are relatively few papers that have addressed planning and scheduling problems
using centralized and decentralized optimization strategies providing a comparison of these two
approaches. (Kelly & Zyngier, 2008)presented a procedure to find a suitable way to decompose
41
large decision-making problems and compared different decentralized approaches using
hierarchical decomposition heuristics. The focus of their work was to find globally feasible
solutions to large decentralized and distributed decision-making problems when a centralized
approach is not possible. (G. K. Saharidis et al., 2006; G. K. D. Saharidis, Kouikoglou, et al.,
2009)studied the problem of production planning in deterministic and stochastic environments
and compared centralized and decentralized optimization for an enterprise consisting of two
production plants in series producing many different outputs with subcontracting options. (Chen
& Chen, 2005)studied a joint replenishment arrangement with a two-echelon supply chain with
one supplier and one buyer, facing a deterministic demand and selling a number of products in
the marketplace. They proposed both centralized and decentralized decision policies to analyze
the interplay and investigated the joint effects of two-echelon coordination and multi-product
replenishment on the reduction of total costs. The cost differences between these policies show
that the centralized policy significantly outperforms the decentralized policy. (Gnoni et al.,
2003)present a case study from the automotive industry dealing with the lot sizing and scheduling
decisions in a multi-site manufacturing system. They use a hybrid approach which combines
mixed-integer linear programming model and simulation to test local and global production
strategies. Their results show that local optimization strategy allows a cost reduction of about
19% compared to the reference actual annual production plan, whereas the global strategy leads
to a further cost reduction of 3.5% and a better overall economic performance.(I. Harjunkoski &
Grossmann, 2001) presented a decomposition scheme for solving large scheduling problems for
steel production which splits the original problem into sub-systems using the special features of
steel making. Their proposed approach cannot guarantee global optimality, but comparison with
theoretical estimates indicates that the method produces solutions within 1-3% of the global
optimum. (Bassett et al., 1996)presented resource decomposition method to reduce problem
complexity by dividing the scheduling problem into subsections based on its process recipes.
They showed that the overall solution time using resource decomposition is significantly lower
42
than the time needed to solve the global problem. However, their proposed resource
decomposition method did not involve any feedback mechanism to incorporate “raw material”
availability between sub sections.
In this work, the problem of refinery scheduling optimization is addressed with
centralized and decentralized decision making process. The chapter is organized as follows.
Section 3.2 describes the type of problem studied in this chapter and presents a real case study
provided by Honeywell Hi-Spec Solutions. Section 3.3 defines the mathematical formulation of
the problem, whereas the decomposition approach is presented in section 3.4. Section 3.5 presents
comparative results for centralized and decentralized optimization of the system. Finally section
3.6 draws conclusions.
3.2. Problem Definition
In general there are two decision levels in refinery process operations - the planning and the
scheduling level. The planning level determines the volume of raw materials needed for the
upcoming months (typically 12 months), and the type of final products and the estimated
quantities to be ordered, depending on demand forecasts. After determining the yearly plan in the
second level we have to determine the optimal production scheduling. The scheduling level
determines the detailed schedule of each production unit and CDU for a shorter period (typically
10 days) by taking into account the operational constraints of the system under study. Once the
plan is known (the quantities and the types of final products ordered as well as the arrival of raw
materials), managers must schedule the production of any unit based on the objective which
usually is minimization of the overall makespan or maximization of the total profit.
Refinery system considered here is composed of pipelines, a series of tanks to store the
crude oil (and prepare the different mixtures), production units and tanks to store the raw
materials and the intermediate and final products (see Figure 1). All the crude distillation units are
considered continuous processes and it is assumed that unlimited supply of the raw material is
43
available to system. The crude distillation unit produces different products according to the
recipes. There are two types of operating scenario for the storage tanks: scenario 1 where material
cannot flow out of the tank when material is flowing into the tank at any time interval, that is
loading and unloading cannot happen simultaneously (due to security reasons) or scenario 2
where loading and unloading can happen simultaneously.
Figure 3.1 represents the system under study which corresponds to a really case of
Honeywell Hi-Spec problem.
In this system the production starts from cracking units and
proceed to diesel blender unit to produce home heating oil (Red Dye diesel) and automotive
diesel (Carb diesel and EPA diesel). Cracking unit, 4CU, processes Alaskan North Slope (ANS)
crude oil which is stored in raw material storage tanks ANS1 and ANS2, whereas cracking unit 2
(2CU) processes San Joaquin Valley (SJV) crude oil. SJV crude oil is supplied to 2CU via
pipeline.
Figure 3.1 State and unit representation of Honeywell Hi-Spec problem
The products of cracking units are then processed further downstream by vacuum distillation
tower unit and diesel high pressure desulfurization (HDS) unit. The coker unit converts vacuum
resid into light and heavy gasoil and produces coke as residual product. The fluid catalyzed high
pressure desulfurization (FCC HDS) unit, FCC, Isomax unit produce products that are needed for
diesel blender unit. The FCC unit also produces by- product FCC gas. The diesel blender blends
HDS diesel, hydro diesel, and light cycle oil (LCO) to produce three different final products. The
diesel blender sends final products to final product storage tanks. The byproduct FCC gas and
44
residual product Coke is not stored but supplied to the market via pipeline. The system employs
four storage tanks to store intermediate products, vacuum resid, diesel, light gasoil, and heavy
gasoil.
In the system studied in this chapter, the long term plan is assumed to be given and the
objective is to define the optimal production scheduling. In such a case the key information
available for the managers is firstly the proportion of material produced or consumed at each
production units. These recipes are assumed fixed to maintain the model‟s linearity. The
managers also know the minimum and maximum flow-rates for each production unit and the
minimum and maximum inventory capacities for each storage tank. The different types of
material that can be stored in each storage tank are known as well as the demand of final products
at the end of time horizon. The objective is to determine the minimum total makespan of
production defining the optimal values of the following variables:
1) Starting and finishing times of task taking place at each production unit;
2) Amount and type of material being produced or consumed at each time in a production unit;
3) Amount and type of material stored at each time in each tank.
There are seven groups of constraints which guarantee the operational conditions of the system.
These are allocation constraints, production and storage capacity constraints, material balance
constraints for units and storage tanks, demand constraints, and time sequence constraints. The
mathematical formulation for the scheduling problem is presented in the following section.
3.3. Mathematical Formulation
In this section a mathematical model is presented for the scheduling of the refinery system
presented in section 3.2 where the objective is to minimize the overall makespan. The developed
mathematical formulation uses continuous time representation since this leads to reduced number
of decision variables and constraints compared to the discrete time representation and also since
due to the continuous operating mode, continuous time representation can provide more accurate
45
results. (Ierapetritou et al., 1999; Jia et al., 2003) The mathematical formulation proposed in this
chapter has the following main assumptions: 1) the change over time between different tasks at
each unit is negligible; and 2) the processes are running at steady state. The proposed model
presented in this section minimizes the overall makespan of the refinery production and involves
allocation, capacity, storage, material balance, demand, and time sequence constraints. The
integer and continuous decision variables used in the developed model give rise to a mixed
integer linear programming (MILP) problem.
For the minimization of the makespan, four main operating rules have to be followed.
The first one is to satisfy the constraint that at most one task can take place in one production unit
at one time interval and that at most one material can be stored in one storage tank at one time
interval (constraint 1). The second one is to satisfy the material balance constraints (constraints 710). The third one guarantees the demand satisfaction (constraint 11). Finally the forth one
guarantees the correct time sequence of the tasks given that a continuous time representation is
used (constraints 12-35).
Allocation Constraints:
Constraints (1) express that if a task (i) starts at event point (n), then it must be performed in one
of the suitable units (j). It also satisfies the rule that a unit can physically perform only one task at
any given time.
 wv(i, j, n)  1,
j  J , n  N
iI ( j )
(1)
Capacity Constraints:
Constraints (2) enforce the requirement that material processed by unit (j) performing task (i) at
any point (n) is bounded by the maximum and minimum rates of production. The maximum and
minimum production rates multiply by the duration of task (i) performed at unit (j) give the
maximum and minimum material being processed by unit (j) correspondingly.
46
Rmin (i, j )  Tf (i, j, n) - Ts(i, j, n)   b(i, j, n)  Rijmax Tf (i, j, n) - Ts(i, j, n)  , i  I , j  J (i ), n  N
(2)
Storage Constraints:
Variable in( j, jst, n) is equal to 1 if there is flow of material from production unit (j) to storage
tank (jst) at event point (n); otherwise it is equal to 0. Variable out ( jst , j, n) is equal to 1 if
material is flowing from storage (jst) to unit (j) at event point (n), otherwise it is equal to 0.
Equations (3) and (4) are capacity constraints for storage tank. Constraints (3) state that if there is
material inflow to tank (jst) at interval (n) then total amount of material inflow to the tank should
not exceed the maximum storage capacity limit. Similarly, constraints (4) state that if there is
outflow from tank (jst) at interval (n) then the total amount of material flowing out of tank should
not exceed the storage limit at event point (n).
infow( j, jst , n)  V max ( jst )  in( j, jst, n), j  J , jst  JSTprodst ( j), n  N
(3)
outflow( jst , j, n)  V max ( jst )  out ( jst , j, n), j  J , jst  JSTstprod ( j ), n  N
(4)
Constraints (5) and (6) represent the requirement that the material in tank (jst) should not exceed
the capacity limit V max ( jst ) of this storage tank at any event point (n).

st ( jst , n  1) 
inf low( j, jst , n)  inflow1( jst , n)  V max ( jst ),
jst  Jst ( s), n  N
jJprodst ( jst )
stin( jst ) 

inflow( j , jst , n)  inflow1( jst , n)  V max ( jst ),
jst  Jst (s ), n  0
jJprodst ( jst )
(5)
(6)
Material Balance Constraints for Operating Unit:
Constraints (7) represent the requirement that the production of a unit should be equal to the sum
of the amount of flows entering its subsequent storage tanks and reactors, and the delivery to the
market.

iI ( j )
p
( s, i)  b(i, j, n) 

jstJSTprodst ( j )  Jst ( s )
inflow( j, jst , n) 

unitflow( s, j, j , n)
j Jseq ( j )  Junitc ( s )
 outflow2( s, j, n),
s  S , j  J , n  N
(7)
47
Similarly, constraints (8) represent that the consumption at a unit is equal to the sum of the
amount of streams coming from preceding storage tanks, previous units, and stream coming from
supply.

C
( s, i )  b(i, j , n)  inflow2( s, j, n) 
iI ( j )

jstJSTstprod ( j )  Jst ( s )


unitflow( s, j , j , n),
outflow( jst , j, n)
j  J , s  S , n  N
(8)
j 'Jseq j  Junitps
Material Balance Constraints for Storage Tank:
Similar to material balance constraints for units, the material balance constraints (9) and (10) for
the storage tanks state that the inventory of a storage tank at one event point is equal to that at
previous event point adjusted by the input and output stream amount.

St ( jst , n)  St ( jst , n  1) 
inflow( j , jst , n)  in flow1( jst , n)
jJprodst ( jst )


outflow( jst , j , n)  outflow1( jst , n), jst  Jst , n  N
(9)
jJstprod ( jst )
St ( jst , n)  Stin( jst ) 

inflow( j , jst , n)  inflow1( jst , n)

outflow( jst , j, n)  outflow1( jst , n), jst  Jst , n  N
jJprodst ( jst )

(10)
jJstprod ( jst )
Demand Constraints:
Demand for each final product d(s) must be satisfied in centralized problem and also in
decentralized problem. Constraints (11) state that production units must at least produce enough
material to satisfy the demand by the end of the time horizon.
 outflow1( jst , n)   outflow2(s, j, n)  d (s),
( jst , n )
jst  Jst ( s), j  J , n  N , s  S
( j ,n)
(11)
Duration Constraints:
Time Sequence Constraints for Each Unit: Constraints (12) to (14) express that if task (i) starts at
event point (n+1), then it must start after the end of the same task happening at event point (n) in
the same unit (j). If task (i) takes place at unit (j) at event point (n) then wv(i,j,n)=1, and
Ts(i,j,n+1) must be greater than or equal to Ts(i,j,n). If wv(i,j,n)=0 then the constraint in equation
(12) is relaxed and constraints in equations (13) and (14) enforce the sequencing of tasks.
48
Ts(i, j, n  1)  Tf (i, j, n)  UH (1  wv(i, j, n)),
i  I , j  J (i), n  N
(12)
Ts(i, j, n  1)  Ts(i, j, n),
i  I , j  J (i), n  N
(13)
Tf (i, j, n  1)  Tf (i, j, n),
i  I , j  J (i), n  N
(14)
Constraints (15) represent the rule that if task (i’) should happen at event point (n) in unit (j) then
task (i) must start at event point (n+1) after the end of task (i’) at event point (n).
Ts(i, j, n  1)  Tf (i, j, n)  UH (1  wv(i, j, n)),
j  J (i), i  I ( j ), i  I ( j ), i  i , n  N
(15)
Constraints (16) to (19) represent that two consecutive productions, where unit (j) consumes the
material produce by unit (j’), with no storage in between, happen at the same time. If wv(i,j,n)=1
and wv(i’,j’,n)=1 then Ts(i,j,n)=Ts(i’,j’,n) and Tf(i,j,n)=Tf(i’,j’,n). If either wv(i,j,n)=0 or
wv(i’,j’,n)=0, then the constraints are relaxed.
Ts(i, j , n)  Ts(i , j , n)  UH (2  wv(i, j, n)  wv(i , j , n)),
j   J , j  Jseq( j ), i  I ( j ), i   I ( j ), n  N
(16)
Ts (i, j , n)  Ts (i , j , n)  UH (2  wv(i, j , n)  wv(i , j , n)),
j   J , j  Jseq( j ), i  I ( j ), i   I ( j ), n  N
(17)
Tf (i, j , n)  Tf (i , j , n)  UH (2  wv(i, j, n)  wv(i , j , n)),
j   J , j  Jseq ( j ), i  I ( j ), i   I ( j ), n  N
(18)
Tf (i, j , n)  Tf (i , j , n)  UH (2  wv(i, j , n)  wv(i , j , n)),
j   J , j  Jseq ( j ), i  I ( j ), i   I ( j ), n  N
(19)
Time Sequence Constraints Connecting Unit and Storage Tank: Constraints (20) to (23) state that
production and storage occur at the same time. If unit (j) produces the material that is stored in
tank (jst) then start and finishing time of production task at unit (j) and inflow to the storage tank
must be same.
Ts (i, j , n)  Tss ( j , jst , n)  UH (2  wv(i, j , n)  in( j , jst , n)),
jst  Jst, j  Jprodst ( jst ), i  I ( j ), n  N
Ts(i, j , n)  Tss( j , jst , n)  UH (2  wv(i, j, n)  in( j, jst , n)),
jst  Jst , j  Jprodst ( jst ), i  I ( j ), n  N
(20)
(21)
49
Tf (i, j , n)  Tsf ( j , jst , n)  UH (2  wv(i, j , n)  in( j , jst , n)),
jst  Jst, j  Jprodst ( jst ), i  I ( j ), n  N
(22)
Tf (i, j , n)  Tsf ( j , jst , n)  UH (2  wv(i, j , n)  in( j , jst , n)),
jst  Jst, j  Jprodst ( jst ), i  I ( j ), n  N
(23)
Constraints are given by Equations (24) to (27) state that storage and production happen at the
same time. If tank (jst) stores the material that is consumed in the unit (j), then outflow from
storage tank and production take place at the same time.
Ts(i, j , n)  Tss( jst , j, n)  UH (2  wv(i, j , n)  out ( jst , j, n)),
jst  Jst, j  Jstprod ( jst ), i  I ( j ), n  N
Ts(i, j , n)  Tss( jst , j, n)  UH (2  wv(i, j , n)  out ( jst , j , n)),
jst  Jst, j  Jstprod ( jst ), i  I ( j ), n  N
Tf (i, j , n)  Tsf ( jst , j , n)  UH (2  wv(i, j , n)  out ( jst , j , n)),
jst  Jst, j  Jstprod ( jst ), i  I ( j ), n  N
Tf (i, j , n)  Tsf ( jst , j, n)  UH (2  wv(i, j , n)  out ( jst , j , n)),
jst  Jst, j  Jstprod ( jst ), i  I ( j ), n  N
(24)
(25)
(26)
(27)
Sequence Constraints for Storage Tank: Constraints are given in Eqns. (28) to (35) connect input
and output flow happening at event (n) to the next event point (n+1) for storage tanks. Input starts
at event point (n+1) after output finishes at event point (n) and output flow happens at event point
(n+1) after the end of input flow happening at event point (n). Binary variable in(j,jst,n) equal to
1 when material is flowing into the tank (jst) from unit (j) at event point (n), otherwise its zero.
Similarly out(jst,j,n) equal to 1 when material is flowing from the tank to the unit at event point
(n), otherwise its zero.
Constraints (28), (31), (34), and (35) are active when the binary variables are equal to 1,
whereas when the binary variables are equal to 0, the sequence constraints are enforced by Eqns.
(29) , (30), (32), and (33).
Tss( j, jst, n  1)  Tsf ( j, jst, n)  UH (1  in( j, jst , n)),
Tss( j, jst , n  1)  Tss( j, jst , n),
jst  Jst , j  Jprodst ( jst ), n  N
jst  Jst, j  Jprodst ( jst ), n  N
(28)
(29)
50
Tsf ( j, jst , n  1)  Tsf ( j, jst , n),
jst  Jst, j  Jprodst ( jst ), n  N
Tss( jst , j, n  1)  Tsf ( jst , j, n)  UH (1  out ( jst , j, n)),
jst  Jst , j  Jstprod ( jst), n  N
(30)
(31)
Tss( jst , j, n  1)  Tss( jst, j, n),
jst  Jst, j  Jstprod ( jst ), n  N
(32)
Tss( jst , j, n  1)  Tsf ( jst, j, n),
jst  Jst, j  Jstprod ( jst ), n  N
(33)
Tss ( j , jst , n  1)  Tsf ( jst , j , n)  UH (1  out ( jst , j, n)),
jst  Jst , j  Jstprod ( jst ), j   Jprodst ( jst ), n  N
(34)
Tss ( jst , j , n  1)  Tsf ( j , jst , n)  UH (1  in( j , jst , n)),
jst  Jst , j  Jstprod ( jst ), j   Jprodst ( jst ), n  N
(35)
As we mentioned in section 3.2, there are two types of operating scenario for storage tanks and
for each one of them, we have the following additional constraints.
Scenario 1: Simultaneous Loading and Unloading Not Allowed
Scenario 1 represents that material cannot flow in and out of the storage tank at the same time at
any event point (n). This operation rule is used in many refineries for security reasons.
Constraints (36) represent that output flow from storage tank (jst) starts after input ends at any
event point (n).
Tsf ( j , jst , n)  UH (1  in( j , jst , n))  Tss ( jst , j , n)  UH (1  out ( jst , j , n)),
jst  Jst , j  Jprodst ( jst ), j   Jstprod ( jst ), n  N
(36)
Scenario 2: Simultaneous Loading and Unloading Allowed
The operation rule for scenario 2 is that material can flow in and out of tank at the same time at
any time interval (n). This assumption is very common in many refineries for intermediate
storage tanks.
Constrains (37) to (40) are enforced when both variables in(j,jst,n) and out(jst,j,n) are
equal to 1. When the constraints are enforced, the starting and finishing times of loading and
unloading events are equal. When either in(j,jst,n) or out(jst,j,n) is equal to zero, the constraints
are relaxed.
51
Tss ( j , jst , n)  UH (1  in( j , jst , n))  Tss ( jst , j , n)  UH (1  out ( jst , j , n)),
jst  Jst , j  Jprodst ( jst ), j   Jstprod ( jst ), n  N
(37)
Tss ( j , jst , n)  UH (1  in( j , jst , n))  Tss ( jst , j , n)  UH (1  out ( jst , j , n)),
jst  Jst , j  Jprodst ( jst ), j   Jstprod ( jst ), n  N
(38)
Tsf ( j , jst , n)  UH (1  in( j , jst , n))  Tsf ( jst , j , n)  UH (1  out ( jst , j , n)),
jst  Jst , j  Jprodst ( jst ), j   Jstprod ( jst ), n  N
(39)
Tsf ( j , jst , n)  UH (1  in( j , jst , n))  Tsf ( jst , j , n)  UH (1  out ( jst , j , n)),
jst  Jst , j  Jprodst ( jst ), j   Jstprod ( jst ), n  N
(40)
Makespan Constraints:
Constraints (41) to (46) state that starting and finishing time of any task is always less than equal
to the makespan (H).
Ts(i, j, n)  H ,
i  I , j  J (i), n  N
(41)
Tf (i, j, n)  H ,
i  I , j  J (i), n  N
(42)
Tss( j, jst, n)  H ,
jst  Jst, j  Jprodst ( jst ), n  N
(43)
Tsf ( j, jst , n)  H ,
jst  Jst , j  Jprodst ( jst ), n  N
(44)
Tss( jst, j, n)  H ,
jst  Jst , j  Jstprod ( jst ), n  N
(45)
Tsf ( jst , j, n)  H ,
jst  Jst , j  Jstprod ( jst ), n  N
(46)
Objective Function:
Finally, equation (47) defines the objective function of the problem which is the minimization of
makespan. The most common motivation for optimizing the process using minimization of
makespan as objective function is to improve customer services by accurately predicting order
delivery dates.
z  min( H )
(47)
3.4. Solution Approach
The CPU time for the solution of the overall model presented in the previous section is usually
high due to model size. In order to reduce the CPU resolution time we developed a structural
52
decomposition strategy which decomposes the problem into a number of smaller and thus easier
to solve subsystems. The developed structural decomposition approach and the additional
constraints presented in this section guarantee that the solution obtained by the decentralized
optimization will be feasible for the centralized system and is exactly the same.
Structural Decomposition Approach
Generally scheduling problems are large scale problems and are difficult to be solved to
optimality. As the scale of the production increases, the mathematical complexity of the
developed model increases, and the CPU time that is required for the solution of the
corresponding problem increases too. Decomposition is a natural way to dealing with large scale
problems. There are two types of decomposition: the structural decomposition of the system
under study and the mathematical decomposition such as Benders decomposition (Benders,
1962), Lagrangian relaxation (Minoux, 1986) etc. Note that mathematical decomposition can be
applied after the application of the structural decomposition if it is applicable.
The decomposition strategy proposed here decomposes the refinery scheduling problem
presented in section 3.2 spatially. To obtain the optimal solution in decentralized optimization
approach, each sub-system is solved to optimality and these optimal results are used to obtain the
optimal solution for the entire problem. In our proposed decomposition rule, we split the system
in such a way so that a minimum amount of information is shared between the sub-problems.
This means splitting the problem at intermediate storage tanks such that the inflow and outflow
streams of the tank belong to different sub-systems. The decomposition starts with the final
products or product storage tanks, and continues to include the reactors/units that are connected to
them and stops when the storage tanks are reached. The products, intermediate products, units
and storage tanks are part of the sub-system 1. Then following the input stream of each storage
tank, the same procedure is used to determine the next sub-system. If input and output stream of
the tank are included at the same local problem then the storage tank also belongs to that local
problem.
53
Figure 3.2 Intermediate storage tank connecting two sub-systems
When the problem is decomposed at intermediate storage tanks, storage tanks become a
connecting point between two sub-systems. The amount and type of material flowing out of the
connecting intermediate storage tank at any time interval (n) becomes demand for the preceding
sub-system (k+1) at corresponding time interval (see Figure 3.2).
After decomposing the centralized system, the individual sub-systems are treated as
independent scheduling problems and solved to optimality using the mathematical formulation
described in section 3.3. It should be also noticed that the operating rules for the decentralized
system are the same as those required for the centralized problem. In general the local
optimization of sub-system k gives minimum information to the sub-system k+1 which optimizes
its schedule with the restrictions regarding the demand of the intermediates obtained by subsystem k. In Figure 3.3 we present the decomposition of the system under study after the
application of the developed decomposition rule. The system is split in two sub-systems where
sub-system 1 produces all of the final products and one by-product. The sub-system 1 includes 5
production unit, 7 final product storage tanks, and 3 raw material tanks, Raw material tanks in
sub-system 1 are defined as intermediate tanks in centralized system. The sub-system 2 includes 4
production units, 1 intermediate tank, 2 raw material tanks and it produces 4 final products.
Except Coke, all other final products in sub-system 2 are defined as intermediate products in
centralized system.
54
Figure 3.3 Decomposition of the refinery problem under consideration
In the following section we present all the additional constraints used in the decentralized
approach in order to guarantee that the obtained solution by the sub-system 1 could be realized by
the sub-system 2.
Feasibility Constraints for Decentralized Model
The sub-systems obtained using the decomposition rule presented in the previous section, have all
the constraints presented in the basic model but in addition to that the k+1 sub-system has to
satisfy the demand of final products produced by this sub-system and also the demand of
intermediate products needed by sub-system k. The demand constraints for intermediate final
products for sub-system k+1 are given by equation (48).
 outflow2(s, j, n)  r (s, n),
s  S , j  Junitp( s, k  1), n  N
j
(48)
Scenario 1: Simultaneous Loading and Unloading Not Allowed
When production units in sub-system k+1 supply material to storage tanks located in sub-system
k, in order to obtain globally feasible solution, the following capacity constraints are added to
sub-system k+1. Constraint in equation (49) is for time interval n=0; sum of the material supplied
to storage tank (jst) in sub-system k and initial amount present in the storage tank must be within
tank capacity limit. Whereas equations (50) and (51) represents capacity constraints for event
point n=1 and n=2 respectively.
55
 outflow2(s, j, n)  stin( jst )  V
max
( jst ), s  S , jst  Jst ( s, k ), j  Junitp ( s, k  1), n  0
j
(49)
1
 outflow2(s, j, n)  stin( jst )  r (0)  V
j
max
s
n0
( jst ),
(50)
s  S , jst  Jst ( s, k ), j  Junitp( s, k  1), n  N
2
1
 outflow2(s, j, n)  stin( jst )   r(s,n)  V
j
n0
max
( jst ),
n0
(51)
s  S , jst  Jst ( s, k ), j  Junitp( s, k  1), n  N
Constraints (52) and (53) represent lot sizing constraints for sub-system k+1. The demand of
intermediate final product s at event point n is adjusted by the amount present in the storage tank
after the demand is satisfied at previous event point (n-1). This adjusted demand is then used in
demand constraints for intermediate final products.


r ( s,1)    outflow2( s, j , 0)  stin( jst )  r ( s, 0)   r ( s,1),
 j

s  S , j  Junitp (s , k  1), jst  Jst (s , k )
(52)
1
1


r ( s, 2)    outflow2( s, j, n)  stin( jst )   r ( s, n)   r ( s, 2),
n 0
 j n 0

s  S , j  Junitp( s, k  1), jst  Jst ( s, k ), n  N
(53)
The optimal time horizon of global problem is obtained by combining the optimal
schedules of sub-systems at each point (n) such that the material balance constraints are satisfied
for connecting intermediate storage tanks. Since sub-system k+1 satisfies the demand of subsystem k, sub-system k+1 will happen before the sub-system k.
Scenario 2: Simultaneous Loading and Unloading Allowed
To implement the constraint of simultaneous loading and unloading to intermediate connecting
storage tanks between any two sub-systems k and k+1, the following constraints are added to subsystem k.
inflow1( jst , n)   (s)  Tsf ( jst , j, n)  Tss( jst , j, n)  , s  S , jst  Jst (s, k ), j  Junitc( s), n  N
(54)
k 1
k 1
k
 (s)  Pmax
(s) if Pmax
(s) Cmax
(s), s  S
(55)
56
k
k+1
β(s)  Ckmax (s) if Cmax
(s)  Pmax
(s), s  S
(56)
k 1
where Pmax
(s) is the maximum rate of production of intermediate final product (s) in sub-system
k
k 1
k
k+1 and Cmax
(s) is the maximum rate of consumption of (s) in sub-system k. Pmax
(s) and Cmax
( s)
can be calculated before the start of the optimization process based on the configuration of subsystems. β(s) takes the value of either the maximum rate of production or maximum rate of
consumption as given by constraints (55) and (56). Constraint (54) determines the value of
material inflow to the storage tank at event point (n). When β(s) takes the value of maximum rate
of consumption, constraint (57) is added to the sub-system k+1.
 outflow2(s, j, n)   (s)  (Tf (i, j, n)  Ts(i, j, n)),
s  S , j  Junitp ( s, k  1), i  I ( j ), n  N
j
(57)
Constraints (57) state that the total amount of material (s) which is an intermediate final product,
produced in sub-system k+1 is equal to the maximum rate of consumption in sub-system k times
duration of production in sub-system k+1.
inflow1( jst , n)  iter   outflow2( s, j , n), s  S , jst  Jst ( s, k ), j  Junitp( s, k  1), n  N
j
(58)
where iter is a binary variable. After solving sub-systems k and k+1 to optimality respectively, if
the optimal makespan results in a time horizon of sub-system k+1 to be greater than sub-system
k, then iter = 1. When iter = 1, we resolve sub-system k to optimality with constraint (58) active
in the model. Eq. (58) specifies the amount of material flowing into the connecting intermediate
storage tank from sub-system k+1 at each event point (n).
Since, loading and unloading can happen at the same time, the time horizon of each subsystem will be the same and the global optimal solution can be obtained by combining the
optimal schedule of each sub-system.
3.5. Numerical Results
The refinery production scheduling case study presented here is based on realistic data provided
by Honeywell Hi-Spec Solutions. The data for the problem studied here are presented in
57
Appendix Chapter 3. Different demand cases for final products, Carb diesel, EPA diesel, and Red
Dye diesel; and residual products, Coke and FCC gas, are studied. The actual values of the
products‟ demands are given in Table A3-1. For all computations in this chapter GAMS/CPLEX
7.0 is used to solve the resulting MILP formulations. The optimal solution is obtained with 1e-6
integrality gap using a Pentium(R) 4 processor at 3.40Hz and with 1.99GB memory. The two
scenarios presented in section 3.3, with and without the assumption of simultaneously loading
and unloading of tank are examined. Centralized and decentralized optimization is applied using
the decomposition approach presented in section 3.4. In the following tables four different
examples are presented in order to illustrate the advantage of decentralized optimization using the
decomposition approaches. Four examples represent lower to high demands for the system that
need to be satisfied within available time horizon of 240 hours.
Following the mathematical model presented is section 3.3, the 1st sub-system as shown
in Figure 3.3 is solved to minimize the makespan and meet the demand for the final products.
Based on the optimal solution of sub-system 1, sub-system 2 is solved to optimality such that it
satisfies the demand required by sub-system 1. In the end the solutions of the two sub-systems
are combined to obtain the solution of the entire problem.
As shown in Table 3.1 and Table 3.2, after the application of the decomposition strategy
the size of subsystems is significantly reduced (ex. scenario 1 from 1081 to 749) giving rise to a
small increase in the number of constraints. This happens because the decision variables
associated with connecting the two sub-systems in centralized problem become demand data in
decentralized approach resulting to additional constraint to the first sub-system.
Table 3.1 Characteristics of mathematical formulation using Scenario 1
Total
Continuous
Binary
Total number
number of
Variables
Variables
Constraints
of constraints
variables
58
Centralized
985
96
Sub System 1
484
54
1081
1425
921
749
Sub System 2
187
1425
1686
24
765
Table 3.2 Characteristics of mathematical formulation using Scenario 2
Total
Continuous
Binary
Total number
number of
Variables
Constraints
Variables
of constraints
variables
Centralized
985
96
Sub System 1
484
54
1081
1488
930
743
Sub System 2
181
24
1425
1485
555
To obtain the global optimal solution for scenario 1, the optimal schedules of each subsystem are combined at each event point n such that the material balance and storage capacity
constraints for intermediate connecting tanks are satisfied, whereas the global optimal schedule in
scenario 2 is obtained by superimposing the optimal solution of each sub-system. As shown in
Table 3.3 and Table 3.4 for both scenarios, the centralized and decentralized optimizations give
exactly the same optimal makespan for all examples. As explained in the following section, subsystem 1 has exactly the same solution in centralized and decentralized optimization which gives
rise to the same optimal solution (centralized and decentralized) for sub-system 2.
The objective function in centralized and decentralized strategy is minimization of
makespan. In order to spend minimum time producing material (s), it is required to operate all the
units in the system in such a way that they will produce all materials needed at a maximum
production rate that is feasible for that particular system. The maximum possible production rate (
Pmax (s) ) for each product (s) can be determined based on the data given in Table A3-2, Table
59
A3-3. Storage tank capacity data are given in Table A3-4. In sub-system 2, only one unit (j)
produces the specific material (s), which means that Pmax (s) is defined only by the highest
feasible production rate of the unit (j). This highest feasible production rate of unit (j) is
calculated by taking under consideration the units that come before and after unit (j) (without any
storage in between). Thus, the highest feasible production rate for unit (j) depends only on the
parameters and the configuration of the system therefore, it is constant in both centralized and
decentralized approach for all event points (n). We can then conclude that the total time spent in
order to produce (s) is the same in centralized and decentralized system and this gives rise to
identical makespan for sub-system 1. Subsequently, given that the makespan for sub-system 1 is
the same in centralized and decentralized system, the sub-system 2 takes the same demand in
centralized and decentralized optimization because the final product demand requirements are the
same in both optimization approaches. Since, sub-system 2 has the same configuration, same
data, and same constraints in centralized and decentralized system, then sub-system 2 has the
same optimal solution (may be with different task assignments) concerning the makespan in both
optimization approaches.
As shown in Table 3.3 and Table 3.4, the CPU time required to find the optimal
makespan is reduced significantly in decentralized approach compared to centralized approach.
This is mainly due to the reduction in size and complexity of the system going from centralized
system to sub-systems.
Table 3.3 Scenario 1 Centralized vs. Decentralized
Centralized System
Ex.
CPU
Time (s)
Objective
Value (hr)
Decentralized System
Total
Local
CPU-
Objective
time(s)
value(hr)
CPU-
Global
Time(s)
Objective(hr)
60
1
2
3
4
318.672
256.187
2192.515
589.984
Sub 1
0.969
Sub 2
2.313
Sub 1
1.141
235.890
97.000
3.282
163.352
235.890
138.89
72.00
4.062
Sub 2
2.921
Sub 1
1.063
79.328
163.352
91.352
36.960
4.047
Sub 2
2.984
Sub 1
1.093
26.149
79.328
42.368
10.272
3.311
Sub 2
2.218
26.149
15.878
Table 3.4 Scenario 2 Centralized vs. Decentralized
Centralized System
Ex.
CPU
Time (s)
Decentralized System
Objective
Value (hr)
2
3
4
4.125
5.844
5.562
7.562
Local
CPU-
Objective
time(s)
value(hr)
Global
Time(s)
Sub 1
1
Total
CPU-
Objective(hr)
1.031
235.000
235.000
1.672
Sub 2
0.641
Sub 1
1.047
215.000
235.000
235.000
215.000
1.813
Sub 2
0.766
Sub 1
1.031
191.000
2.343
Sub 2
1.312
Sub 1
1.359
97.000
215.000
215.000
191.000
97.000
2.547
Sub 2
1.188
191.000
97.000
97.000
61
Figure 3.4 Gantt chart of the operation schedule for example 1, centralized system, scenario 1.
For scenario 1, the CPU time needed to solve the centralized system is in the order of 100
seconds whereas the decentralized system is solved within 5 CPU seconds. In scenario 2,
decentralized solution approach also show improvement compared to centralized system. The
CPU time needed to solve the problem is cut by half in decentralized system compared to
centralized system. For scenario 1, the production schedule obtained by decentralized approach is
different than that obtained by centralized approach as shown in Figure 3.4 and Figure 3.5 for
example 1. This difference in production schedule is obtained because in decentralized system, an
optimal solution is obtained by integrating the schedules of each sub-system at each event point.
Gantt charts for storage tanks are given in Figure A3-1 to Figure A3-10 for centralized and
decentralized systems and for scenario 2.
62
Figure 3.5 Gantt chart of the operation schedule for Case 4, decentralized system, scenario 1.
3.6. Summary
In this chapter, a structure decomposition strategy and formulation is presented for short-term
scheduling of refinery operations. It is shown that the decentralized system model results in fewer
constraints and fewer continuous and binary variables compared to centralized system. The
chapter presents a problem where both optimization strategies result in the same optimal
makespan with the advantage of having significant reduction in the computational time for
decentralized system compared to that of centralized system. For decisions making process in
refinery where demands always need to be satisfy and determination of the makespan is the main
concern, proposed approach provides a decomposition scheme that provides global optimal
solution in decentralized system. Furthermore, the proposed decomposition approach is suitable
for scheduling of production unit operations because they need to satisfy blend components
demand required by blend scheduling operations in time.
Nomenclature
Indices
j
Production units
jst
Storage tanks
63
i
Tasks
n
Event points
s
States
k
kth sub-system in decentralized system
Sets
J
Production units
Jst
Storage tanks
S
States
N
Event point within the time horizon
J (i)
Units which are suitable for performing task i
I ( j)
Tasks which can be performed in unit j
Iseq(i)
i produces state s that will be consumed by task i
Jstprod ( jst )
Units that consume material s stored in tank jst
Jprodst ( jst )
Units that produce material s stored in tank jst
Junitp(s)
Units that can produce material s
Junitp(s, k )
Units in sub-system k that can produce material s
Junitc(s)
Units that consume material s
Junitc(s, k )
Units in sub-system k that can consume material s
Jseq( j )
Units that follow unit j (no storage in between)
Jst (s)
Tanks that can store material s
Jst (s, k )
Tanks in sub-system k that can store material s
JSTprodst ( j )
Tanks that follow unit j
JSTstprod ( j )
Tanks that are followed by unit j
Parameters
64
Rmin (i, j )
Minimum rate of material processed by task i required to start
production unit j
Rmax (i, j )
Maximum rate of material processed by task i in unit j
Pmax (s)
The possible maximum rate of production of material (s)
k
Pmax
( s)
The maximum rate of production of intermediate final product s in
sub-system k
k
Cmax
( s)
The maximum rate of consumption of intermediate final product s
in sub-system k
V max ( jst )
Maximum available storage capacity of storage tank jst
 p (s, i)
Proportion of state s produced by task i,  p (s, i)  0
 c (s, i)
Proportion of state s consumed by task i,  c (s, i)  0
d ( s)
Demand of the final product s at the end of the time horizon
r (s, n)
Demand of intermediate state s at event point n
r  ( s, n)
Adjusted demand of intermediate state s at event point n
stin( jst )
Amount of state s that is present at the beginning of the time
horizon
UH
Available time horizon
Variables
wv(i, j, n)
Binary variable that assign the starting of task i in unit j at event
point n
iter
Binary variable that assign the number of iterations between subsystems
b(i, j, n)
Amount of material undertaking task i in unit j at event point n
st ( jst , n)
Amount of state s present in storage tank jst at event point n
65
inflow1( jst , n)
Flow of raw material to storage tank jst event point n
outflow1( jst , n)
Flow of final product from storage tank jst at event point n
inflow2(s, j, n)
Flow of raw material s to production unit j at point n
outflow2(s, j, n)
flow of product material s from unit j at point n
inflow( j, jst , n)
Flow of material from unit j to storage tank jst event point n
outflow( jst , j, n)
Flow of material from storage tank jst to unit j at point n
in( j, jst , n)
Binary variable that assign the starting of material flow into storage
tank jst from unit j at point n
out ( jst , j, n)
Binary variable that assign the starting of material flow out of
storage tank jst to unit j at point n
unitflow(s, j, j , n)
Flow of state s from unit j to consecutive unit j’ for consumption at
point n
st ( jst , n)
Amount of material in tank jst at event point n
Ts(i, j, n)
Time that task i starts in unit j at event point n
Tf (i, j, n)
Time that task i finishes in unit j at event point n
Tss( j, jst , n)
Time that material starts to flow from unit j to storage tank jst
Tsf ( j, jst , n)
Time that material finishes to flow from unit j to tank jst at event
point n
Tss( jst , j, n)
Time that material starts to flow from tank jst to unit j at event
point n
Tsf ( jst , j, n)
Time that material finishes to flow from tank jst to unit j at event
point n
H
Time horizon
66
Chapter 4
4. Scheduling of a large-scale oil-refinery operations
Refineries are increasingly concerned with improving the scheduling of their operations in order
to achieve better economic performances by minimizing quality, quantity, and logistics give
away. In this chapter, we present a comprehensive integrated optimization model based on
continuous-time formulation for the scheduling problem of production units and end-product
blending problem. The model incorporates quantity, quality, and logistics decisions related to
real-life refinery operations. These involve minimum run-length requirements, fill-draw-delay,
one-flow out of blender, sequence dependent switchovers, maximum heel quantity, and
downgrading of better quality product to lower quality. The logistics giveaways in our work are
associated with obtaining a feasible solution while minimizing violations of sequence dependent
switchovers and maximum heel quantity restrictions. A set of valid inequalities are proposed that
improves the computational performance of the model significantly. The formulation is used to
address realistic case studies where feasible solutions are obtained in reasonable computational
time.
4.1. Introduction
The oil-refinery production operation is one of the most complex chemical industries, which
involves many different and complicated processes with various connections. Over the last 20
years, it has grown increasingly more complex due to tighter competition, stricter environment
regulations, and lower margin profits. Main objective of the oil-refineries is to transform crudeoil into gasoline, diesel, jet fuel, and other middle distillate hydrocarbon products that can be used
as either feedstock or energy source in chemical process industry. The short-term scheduling is a
critical aspect in this large and complex production process. The refinery operations scheduling
problem involves decisions that are related to quantity, quality and logistics. Quantity decisions
67
include lot-sizes for raw material, intermediate and product tanks inventories, amount of material
moving between production units and storage tanks, etc, while quality decisions deal with
obtaining finished products that meet specific quality requirements. Logistics constraints include
policies and procedures for production operations which deal with allocating resources to
operations, sequencing or ordering of different modes of operations, and determining the
durations of operations. To remain competitive in dynamic global marketplace, the oil-refineries
are increasingly concerned with improving the scheduling of their operations in order to achieve
better economic performance by minimizing product quality violations, incidence of high quality
product giveaway, and logistics giveaway. Oil-refinery operations can be classified into three
sub-operations based on the structure of the refinery configuration as shown in Figure 4.1. (Jia et
al., 2003) These sub-operations are (1) crude-oil unloading and mixing, (2) production unit
operations, and (3) finished products blending and distribution. Sub-operation 1 involves the
crude-oil unloading, blending, and inventory control, Sub-operation 2 includes production unit
scheduling, and Sub-operation 3 consists of finished product blending and lifting. Typically, suboperations scheduling optimization problems are addressed separately since centralized
optimization approach gives rise to an incomprehensive large scale mixed integer non-linear
programming (MINLP) models. Review of refinery scheduling problem has been presented in
work of N. K. Shah et al. (2011).
The crude-oil unloading and mixing scheduling problem has been studied by Pedro M.
Castro and Grossmann (2014), Lee et al. (1996), Jia et al. (2003) , Kolodziej et al. (2013), Reddy
et al. (2004a), Reddy et al. (2004b), G. K. D. Saharidis, Minoux, et al. (2009), and G. K. D.
Saharidis et al. (2010). The complex crude-oil blend scheduling optimization problem is
decomposed into logistics and quality sub-problems by Kelly and Mann (2003a, 2003b). They
utilized successive linear programming (SLP) to solve the quality sub-problem. Once the crude
prepared mixture is prepared by crude oil loading and unloading operations, it is charged to
CDUs for distillation. The distillation cuts from CDU are then sent to other production units for
68
fractionation and reaction to produce blend components for finished products. The most common
refinery includes catalytic, hydro, and thermal cracking units to convert heavy hydrocarbons into
light hydrocarbons. They also include other process units like continuous catalytic reforming,
hydro treating, and hydro desulfurization units. The production unit operations scheduling
problem is characterized by continuous processes, intermediate component storage, and recycle
stream.
Figure 4.1 Graphic overview of a standard refinery system
The production units scheduling problem based on continuous time representation is
proposed by Joly et al. (2002) and Jia and Ierapetritou (2004) where they applied spatial
decomposition to solve the scheduling problem. Gary et al. (2007) is a comprehensive reference
for refinery production unit operations. The finished products blend scheduling has received
significant attention in the literature. The purpose of blend scheduling optimization problem is to
find the best way of mixing different semi-finished products that have been rectified during
various refinery processes with some additives so as to produce final products that meet quality
specifications and demand while minimizing cost. The gasoline blending operation is highly nonlinear and gives rise to a mixed integer non-linear programing scheduling model. Blend recipe
optimization problems considering nonlinear properties relations have been studied extensively.
69
(Castillo & Mahalec, 2014a, 2014b; Cuiwen et al., 2013; Glismann & Gruhn, 2001; J. Li &
Karimi, 2011; J. Li et al., 2010; Mendez et al., 2006; Zhao et al., 2008) Glismann and Gruhn
(2001) proposed a decomposition technique based on first solving the nonlinear (NLP) quality
optimization model and then solving a MILP model to optimize temporal and resource decisions.
J. Li and Karimi (2011) developed a slot-based MILP formulation for an integrated treatment of
recipe, specifications, blending, and storage considering real-life features such as multipurpose
product tanks, parallel nonidentical blenders, minimum run lengths, changeovers, piecewise
constant profiles for blend component qualities and feed rates, etc. To reduce the computational
complexity that arises from non-linear model, many have used constant component properties.
(Jia & Ierapetritou, 2003; Joly et al., 2002) Kelly (2006) emphasized the importance of logistics
details in refinery blending and delivery problem and proposed a decomposition of the blend
scheduling problem into two sub-problems, logistics and quality. The logistics sub-problem
considers only the quantity and logistics related variables and the problem constraints whereas the
quality sub-problem considers product specifications, quantity constraints and bounds. Their
work is based on discrete time representation and their formulation includes many logistics
details such as minimum run-length, sequence dependent changeovers, and fill-draw-delay. They
observed that incorporating logistics details into scheduling problem can yield substantial
improvements in efficiency and productivity. A MILP optimization model based on continuous
time representation, using unit specific event points, and fixed blend recipe was developed by Jia
and Ierapetritou (2003). They modeled multipurpose product tanks, but they do not include
certain features such as sequence dependent switchovers constraints, fill-draw-delay at product
tank, and one flow out of blender. An iterative procedure is proposed by Mendez et al. (2006) to
deal with variable recipe and nonlinear properties for different grades of products by replacing
MINLP with sequential MILP formulations. They enforced prepared blend recipe whenever it is
possible. In their model formulation they did not consider multipurpose product tanks, fill-drawdelay, and minimum run-length requirement. There is extensive literature on the refinery blending
70
problem using nonlinear optimization tools. (Adhya et al., 1999; Audet et al., 2004; Gounaris et
al., 2009)
With more product grades, stricter specifications, new government regulations, and fewer
feasible blends, refineries face increasing challenges to maintain, let alone increase, profitability.
What is needed is a comprehensive model for the entire refinery scheduling problem and for
various refinery configurations that addresses quality, quantity, and logistics issues in a unified,
yet flexible approach. The comprehensive model is complex, hard to build and solve and there is
sparse work in literature in this area. Moro et al. (1998) proposed a planning model for refinery
diesel production where the emphasis is on blending relations. Pinto et al. (2000) proposed a
planning and scheduling model for refinery production and distribution operations. Their
formulation is based on discretization of time and the model includes features such as sequence
dependent transition cost of products within oil pipeline. C. Luo and Rong ; Chunpeng Luo and
Rong (2007) developed a two-tiered decision-making hierarchical scheduling model for overall
refinery. The upper level optimization model is based on discrete time formulation and it is used
to determine sequencing and timing of operations modes and to decide the quantities of materials
produced/consumed at each operations mode. The upper decisions level uses aggregated tanks
storage capacity whereas the lower level uses heuristics to obtain a detailed schedule. They
consider multipurpose product tanks via an iterative procedure that allows to readjust aggregated
tank capacity at the lower level by changing multipurpose tank service mode and then to
recalculate corresponding optimal solution at the upper level. The logistics details are ensured
through heuristics at the lower level. There are also several commercial tools available for
refinery scheduling such as Aspen Petroleum Scheduler, Aspen Refinery Multi-Blend Optimizer,
Honeywell‟s Production Scheduler, and Honeywell‟s Blend. Honeywell‟s Production Scheduler
has a logistics solver to optimize logistics and quantity problems and a quality solver to solve
quantity and quality problems. Most of the models utilized in these commercial tools are based on
discrete time formulation.
71
In this work, we present a comprehensive integrated optimization model for the
production units and end-product blend scheduling problem that incorporates quantity, quality
and logistics decisions related to real-life refinery operations. The model is driven by the
shipment plan and accounts for the tradeoffs between costs of keeping inventory and changing
run-modes. The goals of refinery operations scheduling are to maximize the profit and
performance while minimizing the penalties subject to quantity, quality, and logistics giveaways
and nonattainment. (Kelly, 2003a) The outline of the chapter is as follow. Section 4.2 presents the
problem definition, section 4.3 presents the mathematical formulation which is applied to a
realistic case study example to illustrate the applicability of proposed model to large scale model
in section 4.4, and the chapter concludes with section 4.5.
4.2. Problem Definition
The production scheduling determines the detailed schedule of each production unit and each
demand order unloading for a short time period (typically 10 days - 1 month) by taking into
account the operational constraints of the plant. The schedule defines which products should be
produced and which materials should be consumed in each time interval over a given small time
horizon; hence, it defines which run-mode to use and when to perform changeovers in order to
meet the market needs satisfying the demand and product specifications. Large-scale scheduling
problems arise frequently in oil refineries where the main objective is to assign sequence of tasks
to processing units within certain time frame such that the demand of each product is satisfied
before its due date while minimizing the cost or maximizing the total profit.
The refinery production system considered here is composed of raw material storage
tanks, production units, blending units, intermediate tanks, and final product tanks. Each
production unit is defined as a continuous processing element that transforms the input streams
into several products according to the variable production recipe. For reasons of operating
flexibility and cost effectiveness, refinery unit operations can generate a range of intermediate
72
streams which are blended into finished products. For simplicity, we separate the final products
into two groups: a) products that are stored in tanks and b) products that are not stored in tanks
but are supplied to the market directly from production units. In this work, we limit the use of
term “demand order” only for the first group of products and each demand order corresponds to
only one kind of product since each multiproduct order can be decomposed into several single
product orders. The characteristics of the problem considered in this chapter are given in detail in
the next subsection.
Problem Characteristics
The key information available for the refinery include the following:
1) Maximum and minimum proportion of material produced or consumed at each production
unit
2) Maximum and minimum production flow-rates for each production unit
3) Maximum and minimum inventory capacities for each storage tank, identity of material type
that each tank can service, and initial holdup in each tanks
4) Upper limit on the flows out of finished product tanks
5) Demand orders for group A products and their delivery time windows
6) Total demand for group B products
7) Maximum allowable heel quantity for multipurpose product tanks
8) Minimum run-length for units and maintenance time for multipurpose tanks between runmodes
9) Quality specifications limit on blend product properties
10) Available scheduling time horizon of 10 days
The goal of optimization is to determine:
73
1) The sequencing of tasks for production units
2) Each product pool that satisfies demand orders
3) Durations of tasks at production units and duration of unloading tasks from product pools
4) The inventory levels in component and product pools
5) Production rates for units and unloading rate for product pools
6) Composition of material produced and consumed
The problem is also restricted by a series of logistics details as follows:
1) At any given time, only one task can take place at production unit
2) Minimum run-length constraint for production units
3) Non-contiguous product order fulfillment for product in group A
4) Blend unit can send product to multiple pool sequentially, not simultaneously
5) Product tanks cannot distribute and receive material at the same time
6) Fill-draw-delay restriction for product pools enforces certain amount of downtime on tanks
after product loading event has taken place
7) Multipurpose tanks can store different types of materials over time, but only one type of
material at any given time
8) Sequence dependent switch over for multipurpose tanks where higher quality product is
stored before lower grade products
9)
Maximum heel requirement restriction does not allow product heel to exceed specified
maximum heel quantity when the multipurpose tank is switched to a different mode
10) Downgrading of the higher grade product to lower grade product if necessary
Although a realistic case study is modeled the following assumptions had to be made:
74
1) Unlimited supply of raw materials
2) Fixed recipe for crude distillation units (CDUs)
3) Constant blend components properties
4) Perfect mixing in the blender
5) Product tank cannot satisfy multiple demand orders simultaneously
6) Each demand order involves only one product
7) For production units, the amount of time required for run-modes change is neglected
8) Changeover times in multipurpose tanks from higher to lower grade product are negligible
Before presenting the mathematical model, a case study with realistic data provided by
Honeywell Process Solutions (HPS) is presented in the next section. The refinery produces diesel
fuels, jet fuel, and components for gasoline production. This case study will be used to illustrate
the applicability of the proposed model in section 4.3.
4.2.1. Case study description
The production process at Honeywell refinery consists of 2 blender units, 13 other processing
units, and 2 non-identical parallel crude distillation units (CDUs) that process two different type
of crude oils. The schematic of production system is shown in Figure 4.2. There are two charging
tanks for one CDU and a charging pipeline for another CDU. The CDUs concurrently transform
crude oil into several distillation cuts. These distillation cuts from the CDUs are then sent to other
production units for fractionation and reaction to produce blend components for finished
products. The oil-refinery under case study has following production units: Vacuum Tower,
Coker conversion unit, Continuous catalytic reforming (CCR) process unit, Isomax, Fluid
catalytic cracking (FCC) unit, Penex, De-C5, and Alkylation process unit. Current regulatory
requirements to produce ultra-low-sulfur fuels require the use of hydrotreating technology. Thus,
75
the refinery also includes three hydrodesulfurization (HDS) units: Naphtha HDS, Diesel HDS,
fluid catalytic cracking HDS (FCC HDS).
Figure 4.2 Schematic of the refinery production plant for reference example
Honeywell refinery utilizes Jet blender and Diesel blender units to blend components
produced by other production units to produce final products. Jet blender unit blends straight run
jet, coker jet, and isomax jet streams to produce jet fuel which can be stored in 2 product tanks.
Diesel blender unit produces three different grades of fuel: CARB diesel, EPA diesel, and Reddye diesel. Light cycle oil, HDS diesel, and hydrocracked diesel are blended to produce these
three grades of diesel products using three different run-modes. There are two dedicated tanks for
each grade of diesel products and one multipurpose tank that can service CARB and EPA diesel.
There is 6 hours of cleaning or maintenance downtime when the multipurpose tank
service switches from lower grade of diesel product to higher grade of product. This cleaning
downtime is essential to remove any sulfur contamination present in the tank before low sulfur
76
product is sent for storage. The product tank has 4 hours of down time called fill-draw-delay for
certificate of analysis preparation and to let the product settle down and mix before is shipped to
the market.
4.3. Mathematical Formulation
In this section we present the mathematical formulation for the refinery production scheduling
problem based on continuous time representation and the idea of unit specific event points.(M. G.
Ierapetritou & C. A. Floudas, 1998; M.G. Ierapetritou & C.A. Floudas, 1998; Ierapetritou et al.,
1999) A state-task network (STN) representation introduced by Kondili et al. (1993) is used to
describe the refinery operations. The model involves material balance constraints, capacity
constraints, demand constraints, quality constraints, logistics constraints, and setup constraints.
Material balance constraints connect the amount of material at one event point to next event
point, storage and production capacity limit is enforced by capacity constraints, and demand
constraints ensure that all the products demand is satisfied while quality constraints ensure
product quality specifications. Logistics constraints include all the logistics details presented in
the previous section. If a feasible solution that satisfies all the quantity, quality, and logistics
constraints cannot be obtained, then it is essential to produce a schedule that can still be
implemented in real-life refinery sacrificing model feasibility. In this case we introduced artificial
variables to treat any infeasibility present and these variables are subsequently penalized in the
objective function to obtain an optimal solution that satisfies as many as possible from the
quantity, logistics, and quality constraints by minimizing giveaways. A detailed description of the
each variable and parameter used in the model can be found in the nomenclature section.
Variable recipe constraints:
Upper and lower bounds are forced on the individual components volumetric flow rates processed
at each production units. Here Bi , j ,n is a total amount of material processed at unit j performing
77
task i at event point n . Constraint (1a) enforces the bound for the amount produced, whereas
constraint (1b) ensures that the amount consumed is restricted by the imposed recipe.
sp,i,min Bi , j , n  bps,i , j , n  sp,i,max Bi , j , n ,
s  S , i  I sP , j  J i , n  N
(1a)
sc,,min
Bi , j , n  bcs,i , j , n  sc,,max
Bi , j , n ,
i
i
s  S , i  I sC , j  J i , n  N
(1b)
Furthermore, the amount of material processed is equal to the total amount of material consumed
or produced. Therefore, constraints (1a-1b) can be replaced by (2a-2c) and we can eliminate
variable Bi , j ,n . Constraint (2c) satisfies material balance at each production unit j , which states
that the total amount of material consumed is equal to the total amount of material produced.
 bp
 sp,i,min
 bps ,i , j , n   sp,i,max
s , i , j , n
s Sip
 bc
 sc,,min
i
s , i , j , n
 bcs ,i , j , n   sc,,max
i
s Sic
 bp
s ,i , j , n
 bp
s , i , j , n
,
s  S , i  I sP , j  J i , n  N
s Sip
 bc
s , i , j , n
,
s  S , i  I sC , j  J i , n  N
s Sic

 bc
s ,i , j , n
, j  J , i  I j , n  N
sSic
sSip
(2a)
(2b)
(2c)
In our work we assume that the crude distillation units have the same lower and upper bounds
which means that the distillation cuts are assumed to be known.
Material balance constraints for production units:
Constraints (3a) connect the material produced at production units to subsequent storage tanks,
production units, and end product delivery to market. Constraints (3b) represents that the
consumption at a production unit is equal to the amount of material coming from preceding
storage tanks, previous units, and raw material supply.
 bp
iI j
 bc
iI j
s ,i , j , n
s ,i , j , n


Kif s , j , k , n 

Kof s , k , j , n 
k K jpk

JJf s , j , j , n  Uof s , j , n , s  S , j  J sp , n  N
(3a)

JJf s , j , j , n  Uif s , j , n , s  S , j  J sc , n  N
(3b)
c
j J seq
j Js
 Ks
k K kp
j Ks

p
j J seq
j Js
Material balance constraints for storage tanks:
The material balance constraints for storage tanks are given by equations (4a-4b). The equations
state that the inventory of a tank at one event point is equal to that of previous event point
78
adjusted by the input and output streams amount and by taking into account the downgraded
products amount.
sts , k , n  stos , k 
 Kif
s , j ,k ,n
 Rif s ,k ,n 
jJ kpk

 std
s Sk
sts , k , n  sts , k , n 1 
 Kof
 Kif
s , s , k , n
s, j ,k ,n

 std
s Sk
 Rif s , k , n 
jJ kpk

s , j ,k ,n
jJ kkp
 std
s Sk
s , s , k , n

 std
 Kof
s Sk
s , s , k , n
oOs
, s  S , k  K s , n  1
jJ kkp
s , s , k , n
  Lfk ,o ,n
s , j ,k ,n
(4a)
  Lf k ,o , n
oOs
, s  S , k  K s ,1  n  N
(4b)
The variable std s, s, k , n is defined as the tank heel of material s  present at the end of event point
n 1 that is downgraded to material s during event point n .
 0 if product s ' is downgraded to s in tank k at event point n
std s, s , k , n  
otherwise
0
When there is a changeover from higher grade product to lower grade, the tank heel present in the
tank would be transformed into lower grade product without violating any product property
specifications of lower grade product.
Capacity constraints for production units:
Constraint (5) enforces that the material processed by unit j performing task i is bounded by the
maximum and minimum rate of production. Constraint (6) gives an upper bound on total amount
of material processed at unit j over the entire time horizon.
Rimin
, j Tf i , j , n  Tsi , j , n  
 bp
s , i , j , n
 bp
s ,i , j , n
s Sip
 UH  Rimax
, j  wvi , j , n ,
 Rimax
i  I , j  Ji , n  N
, j Tf i , j , n  Tsi , j , n  ,
i  I , j  J i , n  N
s Sip
(5)
(6)
Capacity constraints for storage tanks:
Constraints (7a-7c) are capacity constraints for storage tanks and they define the binary variables
associated with flow in and out of the tanks.
79
Kif s , j , k , n  Vkmax  ins , j , k , n ,
j  J , k  K jpk , n  N
Kof s , j , k , n  Vkmax  outs , j ,k ,n ,
(7a)
j  J , k  K kp
j ,n N
(7b)
Lf s , k ,o, n  Vkmax  lk ,o,n , s  S , k  Ks , o  Os , n  N
(7c)
Constraints (8a-8c) represent that the material present in the tank should not exceed maximum
storage capacity. The multipurpose tanks can store different grades of products and if the higher
grade product is present in the tank when it is being serviced for lower grade product, then the
high quality product will be downgraded into lower quality. The downgraded products are taken
into consideration for storage capacity limit in constraints (8a-8b).
stos , k 
 Kif
s, j ,k ,n
 Rif s , k , n 
jJ kpk
sts , k , n 1 
 Kif
s, j ,k ,n
 Rif s , k , n 
jJ kpk
 Kof
jJ kkp
s,k , j,n

 Lf
oOs
 std
s Sk
k ,o, n
s , s , k , n
 std
s Sk
 Vkmax ys , k , n ,

s , s , k , n
 std
s S k

s , s , k , n
 std
s Sk
 Vkmax ys , k , n ,
s , s , k , n
 Vkmax ys , k , n ,
s  S , k  K s , n  1
s  S , k  K s ,1  n  N
s  S , k  K s , n  N
(8a)
(8b)
(8c)
The maximum and minimum unloading (lift) rate for product storage tanks must be bounded as
specified by constraint (9).
RU kmin Tof k , o, n  Tosk , o, n   Lf k , o, n  RU kmax Tof k , o, n  Tosk , o, n  , k  K p , o  O, n  N
(9)
Quality constraints:
The final products produced by the blenders should satisfy the quality specifications. These
product qualities are assumed to be computed by volumetric average to maintain model linearity.
Since the blend components properties are assumed to be constant, linearity of the model is
preserved. Constraint (10) guarantees that final product leaving the outlet port of the blender
satisfies set product quality range. Here, Psmin
and Psmax
, p are the upper and lower limit of property p
,p
for final blend product s.
80
l
Psmin
, p  bps , i , j , n  pg s , p , n 
iI sp

iI sp , s Sic
u
Ps , p bcs ,i , j , n  Psmax
s  Sb , j  J sp , n  N
, p  bps , i , j , n  pg s , p , n ,
iI sp
(10)
When the final products produced by the blenders cannot meet the quality specifications at event
point n, we introduced positive slack variables pgsl , p,n and pgsu, p,n which are penalized in objective
function to minimize giveaways.
Demand constraints:
Demand of each finished product must be satisfied during the entire scheduling horizon.
Constraint (11) guarantees that sufficient amount of product will be available to meet the demand.
Do, s  rs  dg ol  rg s    Lf k ,o , n   Uof s , j , n  Do, s  dgou , s  Sb , o  Os  s  S f
k ,n
j ,n
(11)
Due to production capacity limitation, sometimes the demand order of finished product cannot be
satisfied during the entire scheduling horizon. A feasible solution can be obtained by introducing
the positive artificial variables dgol , dgou and rgs in the demand constraint which are penalized in
the objective function to minimize quantity giveaway.
Logistics Constraints:
Allocation constraints: Constraint (12) expresses that if a task i starts at event point n , then it
must be performed in one of the suitable units j . It also satisfies the operating detail that a unit
can physically perform only one task at any given time.
 wv
iI j
i, j ,n
 1,
j  J , n  N
(12)
The requirement that multipurpose storage tanks can store only one type of products at any time
is enforced by equation (13).
y
sK s
s,k ,n
 1, k  K m , n  N
(13)
Minimum run-lengths: The minimum run-length for each task is enforced by constraint (14). Here
the minimum run-length ( RLi ) is 15 hours.
81
Tf i , j , n  Tsi , j , n  RLi wvi , j , n  UH 1  wvi , j , n  , i  I , j  I j , n  N
(14)
Similar to minimum run-length constraint, maximum run-length restriction can be imposed if
necessary.
Loading and unloading constraints: Product tanks cannot load and unload material at the same
time and this restriction is enforced by equations (15). Furthermore, we restrict that product tanks
can only satisfy one demand order at any given time.
 in
s, j ,k ,n
sSk
  lk , o , n  1, k  K , j  J kpk , n  N
(15)
oO
A one-flow-out restriction for blender unit: A one-flow-out restriction given by equation (16) is
required for all operation tasks on a blender to ensure that the product output from the blend unit
can only go to one product tank. This restriction is imposed because the refinery has a blend
property online controller that is set up to fill a specific product tank by taking into account the
tank heel properties. If a blend unit does not comply with this restriction and send the output from
the blender to multiple tanks simultaneously and not sequentially, then this miss-operation can
result in a significant off-specification of product stocks.

ins , j , k , n  1, s  Sb , j  J sp , n  N
(16)
k K s  K jpk
Set-up constraints: To model tank set-up, we use the binary variables k ,n which are defined by
constraints (17a-17b).
1 if storage tank k becomes active at event point n for first time
0 otherwise
k ,n  
k ,n 
k ,n 
y
s,k ,n
y
s,k ,n
sSk
sSk


ys , k , n , k  K h , n  N ,  yos ,k  0
(17a)

ys , k , n , k  K h , n  N ,  yos , k  0
(17b)
sSk , n   n

s Sk , n   n
s
s
82
Similarly for production unit, the setup variables are  j ,n and constraints (18a-18b) represent the
utilization of unit at event n for the very first time during the production time horizon.
1 if unit j becomes active at event point n for first time
0 otherwise
 j ,n  
 j , n   wvi , j , n 
iJ i
 j , n   wvi , j , n 
iJ i

wvi , j , n , j  J h , n  N
(18a)

wvi , j , n , j  J h , n  N
(18b)
iJ i , n   n
i J i , n   n
Since, the refinery operates in a continuous mode; we only define the setup variables for identical
parallel production units and tanks. Setup variables are penalized in the objective function to
minimize the total number of units and storage tanks that are utilized during refinery operation.
Changeovers constraints: Different mode of production and storage tasks are specified by
different types of product being produced or stored. Changeovers between modes of operations
cause disturbances and additional costs. Thus, few changeovers (long sequences of the same
mode of operations) are desired. Continuous variables i,i , j ,n and s, s ,k ,n denote changeover of
task at production unit j and changeover of service mode at product pool k, respectively.
1 if mode changes from i ' at event point n to i at later event point
0 otherwise
 i , i , j , n  
1 if mode changes from s ' at event point n to s at later event point
0 otherwise
 s , s , k , n  
Changeover constraints proposed by Shaik et al. (2009) are used in this work. Constraints (1920c) are thus used to force the changeover variables to 1 if there is a change in operations mode
from event point n to any later event point.
i,i , j ,n  wvi, j ,n , j  J m , i  I j , i  I j , i  i, n  N
(19a)
83
i,i , j , n  1  wvi , j , n   wvi , j , n 
i I j

i I j , nn  n n 
wvi , j , n ,
j  J m , i  I j , i   I j , i   i, n  N , n  n  N
 i ,i , j , n  wvi, j , n  wvi , j , n  1 

i I j , n  n   n 
wvi , j , n , j  J m , i  I j , i   I j , i   i,, n  N , n  n   N
s, s, k , n  ys,k ,n , k  K m , s  Sk , s  Sk , s  s, n  N
 s  , s , k , n  1  ys , k , n  
y
s Sk
s , k , n 


s Sk , n n  n  n 

s Sk , n  n   n 
(19c)
(20a)
ys , k , n ,
k  K m , s  Sk , s   Sk , s   s, n  N , n  n  N
 s  , s , k , n  ys , k , n  ys , k , n   1 
(19b)
ys , k , n , k  K m , s  Sk , s   Sk , s   s,, n  N , n  n  N
(20b)
(20c)
The changeover variable  os, s ,k in equation (20d) is active if there is material s’ present in the
tank at the beginning of the time horizon and then service is changed over to new material s at
event point n=1.
yos , k  ys,k ,n  os , s, k  1, k  K m , s  Sk , s  Sk , s  s, yos ,k  1
(20d)
Changeovers variables i,i , j ,n ,  os, s ,k and s, s ,k ,n are penalized in the objective function to
minimize the changeovers.
Heel requirement: When changeover occurs from higher to lower quality product, the holdup in
the tank must be less than equal to the maximum heel quantity specified. The maximum heel
requirement can be enforced on std s , s,k ,n as soft constraint using equations (21a-21b) and positive
slack variable mhs ,k ,n . The artificial variable mhs ,k ,n is penalized in the objective function to
minimize the heel.
std s , s , k , n  mhs , k , n  Vkheel  Vkmax 1   os , s , k  , k  K , s  K s , s   K s ,  s    s , n  1
(21a)
std s , s , k , n 1  mhs , k , n 1  Vkheel  Vkmax 1  s , s , k , n  , k  K , s  K s , s   K s , s   s , n  N
(21b)
84
Product downgrading: The downgrading of product happens, 1) there is a changeover of service
at used multipurpose tanks or 2) it is required to meet lower quality product lifting demand order
due to production capacity limitation. The downgrading of product is captured by equations (22a22e). The variable associated with downgrading std s , s,k ,n is zero when the switchover occurs from
lower to higher quality product.
stds , s, k , n  0, k  K m , s  Ks , s  K s , s  s , n  N
(22a)
stds , s, k , n  Vkmaxos , s,k , k  K m , s  Ks , s  Ks , s   s , n  1
(22b)
stds , s, k , n 1  Vkmaxs , s, k , n , k  K m , s  Ks , s  Ks , s  s , n  N
(22c)
std s , s, k , n  Vkmax 1   os , s , k   stos , k  std s , s , k , n  Vkmax 1   os , s ,k  ,
k  K m , s  K s , s   K s , s  s , n  1
std s , s , k , n 1  Vkmax 1  s , s , k , n   sts , k , n  std s , s , k , n 1  Vkmax 1  s , s , k , n  ,
k  K m , s  K s , s   K s , s  s , n  N
(22d)
(22e)
Timing Constraints:
Sequence Constraints for production units: Finishing time of any task must be greater than the
starting time of that task, as represented by constraint (23a). Constraint (23b) expresses that if
task i starts at event point n  1 , then it must start after the end of the same task happening at
event point n while equation (23c) enforces the time sequence constraint for different tasks
happening in the same unit.
Tfi , j ,n  Tsi , j ,n , i  I , j  Ji , n  N
(23a)
Tsi , j , n1  Tfi , j , n , i  I , j  J i , n  N , n  N
(23b)
Tsi , j , n 1  Tf i , j , n  UH 1  wvi , j , n  , j  J , i  I j , i   I j , i   i, n  N , n  N
(23c)
85
Constraints (24a-24d) represent that two consecutive productions with no storage in between,
happen at the same time because production units operate as continuous processes. Here, unit j
consumes the material produced by unit j  .

Tsi , j , n  Tsi , j , n  UH  2  wvi , j , n  wvi , j , n  , j   J , j  J seq
j , i  I j , i  I j , n  N
(24a)

Tsi , j , n  Tsi , j , n  UH  2  wvi , j , n  wvi , j , n  , j   J , j  J seq
j , i  I j , i  I j , n  N
(24b)

Tf i , j , n  Tf i , j , n  UH  2  wvi , j , n  wvi , j , n  , j   J , j  J seq
j , i  I j , i  I j , n  N
(24c)

Tf i , j , n  Tf i , j , n  UH  2  wvi , j , n  wvi , j , n  , j   J , j  J seq
j , i  I j , i  I j , n  N
(24d)
Sequence Constraints for storage tanks: Finishing time of the inlet, outlet transfer service has to
be greater than or equal to the start time of that service. Constraints (25-27) enforce the sequence
time requirement for movement transfer task from one event point to next event point for same
unit-tank connection.
Tsf j , k , n  Tss j , k , n , k  K , j  J kpk , n  N
(25a)
Tss j , k , n 1  Tsf j , k , n , k  K , j  J kpk , n  N , n  N
(25b)
Tsf k , j , n  Tssk , j , n , k  K , j  J kkp , n  N
(26a)
Tssk , j , n 1  Tsf k , j , n , k  K , j  J kkp , n  N , n  N
(26b)
Tofk ,o,n  Tosk ,o,n , k  K p , o  O, n  N
(27a)
Tosk ,o, n 1  Tof k ,o, n , k  K p , o  O, n  N , n  N
(27b)
Start time sequence constraints for tanks receiving/sending material from/to multiple production
units is given by constraints (28a) and (28b). Whereas constraints enforcing time sequence
requirement for different type of demand orders satisfied by the tank is given equation (28c).
86
Tss j , k , n 1  Tsf j , k , n  UH 1  ins , j , k , n  , k  K , j  J kpk , j   J kpk , j   j , n  N , n  N
(28a)
Tssk , j , n 1  Tsf k , j , n  UH 1  outk , j , n  , k  K , j  J kkp , j   J kkp , j   j , n  N , n  N
(28b)
Tosk ,o, n 1  Tof k , o, n  UH 1  lk ,o , n  , k  K p , o  O, o  O, o   O, n  N , n  N
(28c)
Sequence constraint for material transfer in and out of intermediate tanks happening at the same
event point is enforced by equations (29a-29d).
Tss j , k , n  UH 1  ins , j , k , n   Tssk , j , n  UH 1  out s , k , j , n  , k  K , j  J kpk , j   J kkp , n  N
(29a)
Tss j , k , n  UH 1  ins , j , k , n   Tssk , j , n  UH 1  outs , k , j , n  , k  K , j  J kpk , j   J kkp , n  N
(29b)
Tsf j , k , n  UH 1  ins , j , k , n   Tsf k , j , n  UH 1  outs , k , j , n  , k  K , j  J kpk , j   J kkp , n  N
(29c)
Tsf j , k , n  UH 1  ins , j , k , n   Tsf k , j , n  UH 1  outs , k , j , n  , k  K , j  J kpk , j   J kkp , n  N
(29d)
Constraints (30a-30b) connect material transfer from one event point to next event point. Product
tanks cannot simultaneously load and unload material and this restriction is enforced by equations
(31a-31b). Variable tak is a fill-draw-delay parameter for tank k . The tank unloading happens
anytime after the material flow into the tank is over and fill-draw-delay downtime has elapsed.
Product flow into the tank starts after the end of the product unloading.
Tss j , k , n 1  Tssk , j , n  UH 1  outs , k , j , n  , k  K , j  J kpk , j   J kkp , n  N , n  N
(30a)
Tssk , j , n 1  Tss j , k , n  UH 1  ins , j , k , n  , k  K , j  J kpk , j   J kkp , n  N
(30b)
Tosk , o , n 1  Tsf j , k , n  UH 1  ins , j , k , n   tak ins , j , k , n , s  S , k  K s , j  J kpk , o  Os , n  N
(31a)
Tss j , k , n 1  Tof k ,o , n  UH 1  lk ,o , n  , k  K , j  J kpk , o  O, n  N
(31b)
The tank needs to go through cleaning maintenance to store higher grade product after servicing
lower grade product. This maintenance downtime requirement is captured by constraints (31c).
87
Constraints are relaxed if the there is no switchover in the service from lower grade to higher
grade product type.
Tss j , k , n 1  Tof k , o, n  tcleank  2 s, s , k , n  1 , k  K , s  S k , s   S s ,  s   s , j  J kpk , o  Os  , n  N
(31c)
Sequence Constraints for production units and storage tanks: Upstream production and material
flow into storage tank happens at the same time, which is imposed by constraints (32a-32d).
Tsi , j , n  Tss j , k , n  UH  2  wvi , j , n  ins , j , k , n  , s  S , k  K s , j  J kpk , i  I j , n  N
(32a)
Tsi , j , n  Tss j , k , n  UH  2  wvi , j , n  ins , j , k , n  , s  S , k  K s , j  J kpk , i  I j , n  N
(32b)
Tf i , j , n  Tsf j , k , n  UH  2  wvi , j , n  ins , j , k , n  , s  S , k  K s , j  J kpk , i  I j , n  N
(32c)
Tf i , j , n  Tsf j , k , n  UH  2  wvi , j , n  ins , j , k , n  , s  S , k  K s , j  J kpk , i  I j , n  N
(32d)
For intermediate storage tanks, downstream production and material flow out of feed tank occur
simultaneously. This constraint is imposed by equations (33a-33d).
Tsi , j , n  Tssk , j , n  UH  2  wvi , j , n  out s , k , j , n  , s  S , k  K s , j  J kkp , i  I j , n  N
(33a)
Tsi , j , n  Tssk , j , n  UH  2  wvi , j , n  out s , k , j , n  , s  S , k  K s , j  J kkp , i  I j , n  N
(33b)
Tf i , j , n  Tsf k , j , n  UH  2  wvi , j , n  out s , k , j , n  , s  S , k  K s , j  J kkp , i  I j , n  N
(33c)
Tf i , j , n  Tsf k , j , n  UH  2  wvi , j , n  out s , k , j , n  , s  S , k  K s , j  J kkp , i  I j , n  N
(33d)
All tasks should start and finish before the end of the scheduling time horizon as stated in (34a34d).
Tsi , j ,n  H , Tfi , j ,n  H ,
Tss j , k , n  H , Tsf j , k , n  H ,
i  I , j  J i , n  N
j  J , k  K jpk , n  N
(34a)
(34b)
88
Tssk , j , n  H , Tsf k , j ,n  H ,
j  J , k  K kp
j ,n N
(34c)
Tosk ,o,n  H , Tofk ,o,n  H ,
o  O, k  K p , n  N
(34d)
Intermediate due dates: Intermediate due dates for group A products, which are stored in product
pools, are given by constraints (35a-35b). Orders can start unloading anytime after the vessel
arrival time and finish unloading anytime before vessel departure time. The due date requirements
are enforced as inequality constraints to consider demurrage by using slack variables Tearlyo and
Tlateo which are penalized in the objective function.
Tosk ,o , n  UH 1  lk ,o , n   timeso  Tearlyo , o  O, k  K p , n  N
(35a)
Tof k ,o , n  UH 1  lk ,o , n   timef o  Tlateo , o  O, k  K p , n  N
(35b)
4.3.1. Valid Inequities
Valid inequalities are added in the proposed model to improve the computational efficiency of the
proposed model. Constraints (36a-36b) enforce that if the material s is flowing into the tank at
event point n , then the binary variable ys,k ,n is 1 and similarly, if the material is flowing out of the
tank, then the binary variable is also 1.
 in
s, j ,k ,n


jJ kpk
ys , k , n , k  K , s  S k , n  N
jJ kpk
 out

s, j ,k ,n
jJ kkp

ys , k , n , k  K , s  S k , n  N
jJ kkp
(36a)
(36b)
If the tank is sending or receiving the material from a production unit, then that unit is active and
these requirements are represented by equations (37a-37b).
 in
s, j ,k ,n

k K jpk
 out
k K kp
j
 
k K jpk
s,k , j ,n

wvi , j , n , j  J , s  S jp , n  N
(37a)
wvi , j , n , j  J , s  S cj , n  N
(37b)
iI j  I sp
 
k K kp
j
iI j  I sc
89
Since loading and unloading cannot happen at the same event point, if the material is unloaded at
event point n  1 then tank is not empty at previous event point n .This is feature of model is
captured by equation (38).
l
k , o , n 1

y
sSk
o
s,k ,n
, k  K , n  N , n  N
(38)
If two units are consecutive without any storage tank between them, then constraint (39) impose
the simultaneous operation of these units due to the continuous operation mode. However, this
constraint is not imposed on parallel production units that can produce the same type of products.

j J seq
j

wvi , j , n 
j J seq
j
/ J , i I j
h
wvi , j , n , j  J , j  J h , n  N
/ J , iI j
h
(39)
Constraint (40) enforces the material balance constraint in addition to the constraint presented in
equation (2c).

Kof s , k , j , n 

JJf s , j , j , n  Uif s , j , n 
p
j J seq
j Js
k K kp
j  Ks

k K jpk
Kif s , j , k , n 
 Ks

JJf s , j , j , n  Uof s , j , n , j  J , n  N
(40)
c
j J seq
j Js
Objective Function:
The objective function (41) is used to maximize the performance and profit of total production.
The refinery performance is represented by the minimization of utilization of units and tanks, all
the connection between production units and tanks, start up set-ups, changeovers, and production
downgrading. The blending task is significantly improved by reducing the quantities of
downgraded products. Logistics and quality give-aways, under and over production, and
demurrage are penalized. Profit term includes the costs of feeds and revenue of products. The
penalty weights are assigned arbitrary to each term depending on its importance in schedule. The
deviation from intermediate due dates is heavily penalized, quality give-aways are penalized the
second most, while connection between unit and tank is least heavily penalized. It is favorable
that the multipurpose product tanks store different grade products only in a certain order that is
90
allowed by the sequence dependent switchovers constraint. The favorable switchovers are from
higher grade of product to lower grade and unfavorable switchovers are from lower grade to
higher grade product. Due to contamination issues, unfavorable switchovers are more heavily
penalized than favorable. Similar to multipurpose tanks, there is a sequence dependent switchover
restriction for multipurpose blend units. The switchover from the run mode that produces better
quality product to lower quality product is least penalized than vice versa.

z
i , jJ i , n
ci1, j wvi , j , n 



s , k K s , n
ck2 ys , k , n 
c outs , k , j , n 
4
k, j
j , sS cj , k K s , n



sSb , p , n
c


std s , s , k , n 
c mhs , k , n 
11
s,k
k K m , sS k , n
oO
  c Tlateo 
oO
cs8, s  s , s , k , n 
k K , sS k , s S k , s  s  , n
10
k K m

sSb , k K s , oOs , n

k , sS k , n
oO
c Rif s , k , n 
19
s
c
ci7,i  i ,i , j , n
jJ m ,iI j ,i I j ,i   i , n

u
14
l
15
u
c13
s , p pg s , p , n   co dg o   co dg o 
18
o

ck6  k , n 
k K h , n
m
k K m , sS k , s S k , s  s , n

c 4j , k ins , j , k , n
j , sS jp , k K s , n

c  j ,n 
cs8, s  os , s , k 
k K , sS k , s S k , s  s 
m
k K p , o , n

ck3lk , o, n 
5
j
j J h , n




c
sS f
16
s
Uif s , j , n 
19
s
s , jsc , n

s , k K s , n

sSb , p , n
ck9 sts , k , n
l
c12
s , p pg s , p , n
(41)
rg s   c17
o Tearlyo
oO

cs20Uof s , j , n
sS f , jsp , n
cs21 Lf s , k , o , n
Note that the different penalty parameters have significant effect on the computational time
required to obtain an optimal solution.
4.4. Results on the Case Studies
In this section two problems based on the realistic case study presented in section 4.2.1 are solved
to optimality and analyzed to show the effectiveness of the proposed model. Each case study
includes different set of examples that differ in either demands, intermediate due dates, or initial
hold up in the tank. All the problems are solved on a Dell Precision (Intel R XeonTM with CPU
3.20 GHz and 2 GB memory) running on Windows XP using CPLEX 12.1.0/GAMS 23.2. Raw
materials and finished product prices are given in Table 4.1 and the penalties parameter used in
the objective function are given in Table 4.2.
Table 4.1 Price of raw materials and final products
91
Material
Price
Material
Price
Material
Price
ANS crude oil
25
Jet Fuel
70
Pentane
40
SJV crude oil
20
Refinery Gases
50
NC4
40
Carb Diesel
80
Isomerate
60
Alkylate
60
EPA Diesel
60
Reformate
60
FCC Gas
45
Red Dye Diesel
50
Isomax Gasoline
65
Coke
30
Table 4.2 Penalty parameters in objective function
Penalty Parameter
Value
Penalty Parameter
Value
1
Ccarbnormal
, diesel blender
125
Cs11,k
10
1
CEPAnormal
, diesel blender
105
Cs12,p
1000
1
CRe
d dyenormal , diesel blender
85
Cs13,p
1300
Ck2
1
Co14
1150
Ck3
1
Co15
500
C 4j , k
4 (multipurpose tank: 6)
Cs16
1100
C 5j
1
Co17
1400
Ck6
150
Co18
1250
Ci7,i 
40 (Unfavorable: 50)
Cs19
price(s)  (e  q)1
Cs8, s
60 (unfavorable: 70)
Cs20
price(s)  e1
Cs21
price(s)  q1
Ck9
V 
Ck10
V 
max 1
k
heel
k
Where, e  3 rs and q  2 ordero , s .
s
o,s
1
92
4.4.1. Case study 1
The first case study is obtained by deleting three diesel product tanks to reduce the model size
and to obtain medium scale case study. The medium scale refinery has only one dedicated tank
for each three diesel product and one multipurpose tank that can service CARB and EPA diesel.
For this problem, there are no product tanks receiving material from more than one blender unit
and no raw material tank supplying material to multiple CDUs. Thus we exclude constraints (28a)
and (28b) from the model because the time sequence requirements for intermediate tanks are
satisfied by other sequence constraints present in the formulation. Data for different set of
examples is given in Table 4.3 and Table 4.4 and results are shown in Table 4.5 and Table 4.6.
The initial hold up in Table 4.4 is stated for multipurpose tanks. Demand of group B products has
to be met before the end of the scheduling time horizon. In this case study, the scheduling horizon
is 72 hours (3 days). The products P1, P2, P3, and P4 correspond to Red dye diesel, EPA diesel,
CARB diesel and Jet fuel, respectively. In this case study, we have included 4 product qualities
requirements for blend products. The rule of thumb for the smallest number of event points
needed to obtain an optimal solution is (d+1) where d represents the total number of diesel
products in the demand orders. For example, if only CARB and EPA diesel products are required,
then 3 event points should be considered first.
For the examples addressed in the case study 1, the aforementioned valid inequalities
allowed us to compute medium scale scheduling problems with significantly less computational
effort. The first integer solution is obtained within 15 seconds for all the examples studied. The
computational performance without and with valid inequalities is presented in Table 4.5 and
Table 4.6, respectively. When the valid inequalities are included in the model, the number of
variables remains the same, but the number of constraints and nonzero elements increase. Valid
inequalities have no effect on quality of the optimal solution; rather their effect is concentrated in
significantly reducing the computational effort needed to find the optimal solution. The CPU time
required to reach optimal solution is reduced by 90% when the valid inequalities are present
93
versus when they are not included in the model. When example 3 is solved without valid
inequalities, the optimal solution is not obtained even after 28 hours, whereas, when it is solved
with valid inequalities, the optimal solution is obtained within 1 hour. The size of the model
increases as the event point increases and time to obtain optimal solution also increases as
observed for examples 4. In example 1, in order to satisfy the demand of order 2 (O2) within its
delivery window, higher quality product P1 is downgraded to lower quality product P2.
Multipurpose tank inventory data for example 1 is shown in Table 4.7. Product degradation is
observed in optimal solution of example 3 in order to satisfy the product demand of order 2.
Table 4.3 Group A products demand order data for case study 1
Orders (Product type, amount(kbbl), delivery window, delivery rate(kbbl/h))
Ex.
O6
O7
P4
P4
P2
[10,75]
[50,150]
[25,75]
[10,38]
[36,48]
[54,65]
[25,38]
[55,72]
[63,72]
10
10
10
10
10
10
P3
P2
P1
P1
P4
P4
P2
[5,15]
[5,21]
[15,50]
[10,75]
[50,150]
[25,75]
[10,38]
[10,23]
[23,30]
[36,48]
[54,65]
[25,38]
[55,72]
[63,72]
O1
O2
O3
O4
O5
P3
P2
P1
P4
[10,100]
[50,150]
[50,175]
[10,150]
[58,71]
[10,20]
[28.5,46.5]
[40,70]
3
10
10
3
P3
P2
P1
P4
P4
[37,100]
[55,150]
[98,175]
[112,150]
[50,100]
[65,72]
[55,68]
[30,43]
[38,50]
[59.6,71.5]
10
10
10
10
10
P3
P2
P1
P1
[5,15]
[5,21]
[15,50]
[10,23]
[23,30]
10
1
2
3
4
94
10
10
10
10
10
10
10
Table 4.4 Group B products demands data for case study 1
Group B products demand (kbbl)
Initial holdup
Ex.
(product, kbbl)
P5
P6
P7
P8
P9
P10
P11
P12
P13
1
P1 - 10
5
20
20
20
5
0
5
5
0
2
-
5
24
65
13
5
0
5
5
0
3
P1 - 7
5
20
15
8
5
3
5
4
9
4
P2 - 7
5
20
15
8
5
3
5
4
9
Table 4.5 Computational performance of case study 1 (without valid inequalities)
0-1
Ex.
Cont.
n
Nonzero
Const.
Var.
Var.
Nodes
CPU
Obj.
Time (s)
Value
Iterations
Elements
% gap
1
4
260
1683
4200
14841
167899
24414456
12504.70
1125.98
0.00
2
4
268
1719
4311
15245
379243
58903042
35273.88
1643.92
0.00
3
4
284
1793
4542
16024
1000000
161530640
102634.73
1234.92
3.75*
4
4
284
1794
4541
16021
1000000
204485505
121729.67
1193.73
5.01*
4
5
355
2242
5743
20702
564000
218078428
169094.88
1065.40
16.30**
CPU
Obj.
%
Time (s)
Value
gap
*Nodes limit reached, ** out of memory
Table 4.6 Computational performance of case study 1 (with valid inequalities)
Ex
0-1
Cont.
n
.
Nonzero
Const.
Var.
Var.
Nodes
Iterations
Elem
1
4
260
1683
4474
15675
10552
1487406
713.28
1125.98
0.00
2
4
268
1719
4585
16085
20085
2684973
1309.78
1643.92
0.00
3
4
284
1793
4816
16876
56424
7003479
3473.47
1234.24
0.00
95
4
4
284
1794
4815
16873
14922
1810327
983.47
1193.54
0.00
4
5
355
2242
6087
21772
78318
17482935
11616.69
1055.45
0.00
Table 4.7 Material flow in and out of multipurpose tank for case study 1, example 1
Event Points
Initial Hold Up
Flow Direction
(product/amount, kbbl)
n1
loading
n2
P2 (40 kbbl)
P1/10
unloading
P2 (50 kbbl)
4.4.2. Case Study 2
In this section the proposed model is applied to Honeywell Hi-Spec refinery problem
presented in section 4.2.1. We exclude constraints (28a) and (28b) because of the reasons
mentioned in the previous case study. The time horizon considered in this case study is 10 days
(240hrs) and there are four different quality restrictions placed on the blend products. The data for
different demand orders are shown in Table 4.8 and Table 4.9 and results for these data are shown
in Table 4.10. All the examples reach the first integer solution within 20 seconds. In many
instances, the optimal solution is reached fast and the rest of the time is spent proving the global
optimality which is a typical behavior of mixed integer programming models. In example 1, the
optimal solution is obtained with product P4 sulfur limit violations and due date violation
(demurrage) of demand order 1. When only 4 event points are used for example 3, the optimal
solution of 3866.22 is obtained that does not fully satisfy demand order 7 (O7). However, when 5
event points are used, the optimal solution of 1562.13 is obtained that satisfies all the demand
orders within their due dates. In the case of example 5 with 5 event points, the first integer
solution of 286630.74 and 99.78% gap is reached within 10 seconds and the first integer solution
that does not violate any demand requirements and due date restrictions is obtained within 1600
96
seconds with an objective value of 1741.81 and gap of 58.89 %. Example 6 obtains the first
integer solution with objective value of 287161.44 and 99.91% gap in 15 seconds. The solution
without any quantity, quality, and demurrage violations is reached within 450 seconds with
objective value of 1728.68 and 82.08% gap. A solution without product downgrading is obtained
for example 6 when 6 event points are used. As the demand order increases, the event points
needed to reach best solution also increases, thus size of the model increases too.
Table 4.8 Group A products demand order data for case study 2
Product type, amount(kbbl), delivery window, delivery rate (10 kbbl/h)
Orders
O1
O2
O3
O4
O5
O6
Ex 1
Ex 2
Ex 3
Ex 4
Ex 5
Ex 6
P3
P3
P3
P3
P1
P1
[50,100]
[75,100]
[15,50]
[15,50]
[15,50]
[15,50]
[28.5,46.5]
[110,140]
[36,54]
[36,54]
[36,54]
[24,50]
P2
P2
P2
P2
P2
P1
[50,150]
[50,100]
[32,50]
[32,50]
[32,50]
[10,50]
[65,89]
[63,89]
[63,92]
[63,92]
[63,92]
[63.73]
P1
P1
P1
P1
P3
P2
[50,200]
[75,125]
[45,70]
[45,70]
[45,70]
[5,70]
[105,130]
[26.5,60]
[103,119]
[103,119]
[103,119]
[85,109]
P1
P1
P1
P1
P1
P3
[50,175]
[100,175]
[63,98]
[63,98]
[63,98]
[13,98]
[216.5,235.5]
[215,235.5]
[135,148.5]
[135,148.5]
[135,148.5]
[125,138.5]
P4
P4
P4
P4
P4
P4
[75,200]
[100,200]
[50,150]
[50,150]
[50,150]
[20,150]
[90,120]
[90,120]
[100,135]
[100,135]
[100,135]
[100,125]
P4
P4
P4
P4
P4
P4
[50,250]
[75,250]
[15,130]
[15,130]
[15,130]
[25,130]
[174,200]
[204,230]
[200,236.5]
[200,236.5]
[200,236.5]
[200,236.5]
97
O7
P2
P2
P2
P2
P2
P1
[50,100]
[50,100]
[10,48]
[10,48]
[10,48]
[10,48]
[166,211.5]
[166,191.5]
[166,199.5]
[166,199.5]
[166,205]
[145,175]
P3
P3
P1
P2
[10,35]
[10,35]
[10,35]
[10,35]
[226,240]
[226,240]
[226,240]
[195,220]
O8
P3
O9
[10,35]
[230,240]
P4
O10
[25,150]
[225,240]
Table 4.9 Group B products demands data for case study 2
Group B products demand (kbbl)
Initial holdup
Ex.
(product, kbbl)
P5
P6
P7
P8
P9
P10
P11
P12
P13
1
-
10
50
50
50
10
10
15
15
0
2
-
5
50
200
50
50
10
40
10
50
3
P2-8
7
43
172
53
40
11
44
15
30
4
-
7
43
172
53
40
11
44
15
30
5
-
7
43
172
53
40
11
44
15
30
6
P1-10
2
13
72
30
10
5
22
5
0
Table 4.10 Computational results for case study 2 (with valid inequalities)
Last Integer Solution
Var.
Optimal Solution
Event
Ex.
Int./Cont.
Nodes/
Obj.
CPU
Gap
Nodes/
Obj.
CPU
(Constraints)
Iterations
Value
Time
(%)
Iterations
Value
Time (s)
Points
98
(s)
Nonzero
Elem.
328/1956
103384/
1
4
(5333)
249153/
34638.64
5000
0.45
9312323
34638.64
7910.20
1671.86
2449.83
3866.22
12762.77
1562.13
112879.86
1743.87
5150.23
1649.75
3787.66
1511.44
136811.42*
1137.57
234163.58**
997.25
161182.4***
14282981
18614
328/1957
20760/
2
4
(5333)
35489/
1671.86
1800
6.57
3626885
4741152
18622
336/1994
79969/
3
4
(5431)
207687/
3866.22
8300
3.64
15494045
23440793
18947
420/2490
419747/
3
5
(6872)
872647/
1562.13
100700
1.96
119257871
133443528
24466
336/1993
43412/
4
4
(5438)
59005/
1743.87
4650
6.70
8367727
9238856
18992
340/2009
22787/
5
4
(5518)
55538/
1649.75
2650
3.16
4473417
6353433
19244
425/2510
97379/
5
5
(6976)
509585/
1511.44
21500
44.30
30910982
178283024
24793
445/2597
428485/
6
5
(7246)
916986/
1137.57
132500
38.10
160549580
281680876
25694
534/3114
120720/
6
6
(8778)
375832/
997.25
54800
52056975
31779
* Out of memory. Optimal solution obtain with 33.13% gap
** Out of memory. Optimal solution obtain with 12.62% gap
40.71
150550479
99
*** Out of memory. Optimal solution obtain with 30.59% gap
4.5. Summary
In this chapter, a short-term scheduling model is developed based on continuous time
representation for large-scale refineries. The model features logistics decisions such as start-up,
minimum run-length, fill-draw-delay, one-flow out of blender, sequence dependent changeovers,
maximum heel quantity, and downgrading of product. A set of valid inequalities are proposed that
reduces the CPU resolution time by a significant factor for large scale refinery problems. The
model with valid inequalities is applied to different examples and was observed that valid
inequalities result in up to 90% reduction in CPU performance time compared to model without
inequalities. The model is applied to two case studies to illustrate the applicability of the proposed
formulations to large scale refinery operations. However, even with inclusion of the valid
inequalities in the scheduling model, computational expense required to reach an optimal solution
is still considerably high for the real-life oil-refinery applications. Hence, there is a need to
employ different decomposition approaches such as mathematical, heuristics, or combination of
both heuristics and mathematical decomposition to enable the solution of large-scale problems in
a reasonable timeframe and bridge the gap between theory and industrial applicability.
Nomenclature
Indices
i
Tasks
j
Production units
k
Storage tanks
n
Event points
o
Product order
p
Properties
100
s
States
Sets
Ij
Tasks which can be performed in unit j
I sp
Tasks which can produce material s
I sc
Tasks which can consume material s
J
Production units
J sc
Units that consume material s
Ji
Units which are suitable for performing task i
Jh
Units that can produce all the same products as some other unit in the refinery
Jm
Units which are suitable for performing multiple tasks
J kkp
Units that consume material s stored in tank k
J kpk
Units that produce material s stored in tank k
J sp
Units that can produce material s
J seq
j
Units that follow unit j (no storage in between)
K
Storage tanks
Kh
tanks that can store the same products as some other tank in the refinery
K kp
j
Tanks that store material consumed by unit j
Km
Multipurpose tanks that can store multiple materials
Kp
Tanks that can store final products
K jpk
Tanks that store material produced by unit j
Ks
Tanks that can store material s
N
Event point within the time horizon
O
Orders for products that are stored in tanks
P
Product Properties
101
S
States
Sb
Group A final products, produced by blenders and stored in tanks
Sf
Group B final products, products that are not stored in tanks
Sk
Materials that can be stored in tank k
Sic
Materials that can be consumed by task i
S cj
Materials that can be consumed by unit j
Sip
Materials that can be produced by task i
S jp
Materials that can be produced by unit j
Parameters
Do, s , Do, s
Demand limit requirement for order o and product s that is stored in tank
rs
Demand of the final product s at the end of the time horizon
max
Rimin
, j / Ri , j
Minimum/ maximum rate of material be processed by task i in unit j
RLi
Minimum run length for task i
RU kmin / RU kmax
Minimum/maximum rate of product unloading at tank k
stos,k
Amount of state s that is present at the beginning of the time horizon in k
tak
Fill draw delay for product tank k
UH
Available time horizon
Vkmax
Maximum available storage capacity of storage tank k
Vkheel
Maximum heel available for storage tank k
yos , k
1 if the material s is present at the beginning of the time horizon in k
max
smin
,i /  s ,i
Proportion of state s produced/consumed by task i,
Variables
Binary Variables
102
wvi , j , n
Assignment of task i in unit j at event point n
ins , j ,k ,n
Assigns the material flow of s into storage tank k from unit j at point n
Assigns the starting of product flow out of product tank k to satisfy order o at event point
lk ,o,n
n
outs , k , j , n
Assigns the material flow of s out of storage tank k into unit j at point n
ys , k , n
Denotes that material s is stored in tank k at event point n
Positive variables
bps ,i , j , n
Amount of material s produced task i in unit j at event point n
bcs ,i , j , n
Amount of material s undertaking task i in unit j at event point n
dgol
Minimum demand quantity give-away term for order o
dgou
Maximum demand quantity give-away term for order o
H
Total time horizon used for production tasks
JJf s , j , j , n
Flow of state s from unit j to consecutive unit j’ for consumption at point n
Kif s , j ,k ,n
Flow of material s from unit j to storage tank k event point n
Kof s , k , j , n
Flow of material s from storage tank k to unit j at point n
Lfo, k , n
Flow of final product for order o from storage tank k at event point n
mhs , k , n
Maximum heel give-away term for product tanks
pg sl , p, n
Lower limit giveaway of product quality p
pg su, p, n
Upper limit giveaway of quality p for product s
rgs
Minimum demand quantity give-away term for Group B product s
Rif s, k , n
Flow of raw material to storage tank k event point n
sts , k ,n
Amount of state s present in storage tank k at event point n
std s , s, k , n
Amount of state s that is downgraded to state s‟ in storage tank k at event point n
103
Tearlyo
Early fulfillment of order o than required
Tfi , j ,n
Time that task i finishes in unit j at event point n
Tlateo
Late fulfillment of order o than required
Tosk ,o, n
Time that material starts to flow from tank k for order o at event point n
Tof k ,o, n
Time that material finishes to flow from tank k for order o at event point n
Tsi , j ,n
Time that task i starts in unit j at event point n
Tsf j ,k ,n
Time that material finishes to flow from unit j to tank k at event point n
Tsf k , j , n
Time that material finishes to flow from tank k to unit j at event point n
Tss j , k , n
Time that material starts to flow from unit j to storage tank k
Tssk , j , n
Time that material starts to flow from tank k to unit j at event point n
Uif s , j ,n
Flow of raw material s to production unit j at point n
Uof s , j , n
Flow of product material s from unit j at point n
 j ,n
For unit j, 1 if the unit becomes active for very first time at event point n
k , n
For tank k, 1 if the tank becomes active for very first time at event point n
s , s , k , n
 os , s, k
i , i , j , n
Continuous 0-1 variable, 1 if material in tank k switchover service from s at event point n
to s‟ at later event point
Continuous 0-1 variable, 1 if material in tank k switchover service from s to s‟
Continuous 0-1 variable, 1 if task at unit j changes from i at event point n to i’at later
event point.
104
Chapter 5
5. Lagrangian Decomposition Approach for Refinery Operations Scheduling
In this chapter, mathematical decomposition based on Lagrangian relaxation is proposed for the
scheduling of refinery operations from crude oil processing to the blending and dispatch of
finished products. A new algorithm for Lagrangian decomposition (LD) is proposed and applied
to realistic large scale refinery scheduling problem to evaluate its efficiency. A novel strategy is
presented to formulate restricted relaxed sub-problems based on the solution of the Lagrangian
relaxed sub-problems that take into consideration the continuous process characteristic of the
refinery. This new restricted algorithm provides tighter lower bound compared to classical
Lagrangian decomposition approach. Furthermore, proposed heuristic rules leads to faster
improvement in upper bounds. The goal of the mathematical decomposition is to produce better
solutions for those integrated scheduling problems that cannot be solved in reasonable
computation times. The application of the proposed algorithm results in substantial reduction in
CPU solution time, duality gap, and the total number of iterations compared to classical LD.
5.1. Introduction
Lagrangian relaxation is often used for NP-hard problems where it is observed that many
problems can be considered easy problems made difficult because of presence of complicating
constraints. Lagrangian decomposition creates relaxed problem that is relatively easy to solve
than original problem by relaxing these complicating constraints and dualizing them in the
objective function with multipliers. Lagrangian relaxation provides a lower bound on the global
optimal for minimization problem. Relaxed Lagrangian problems can be decomposed into easy to
solve sub-problems by fixing Lagrangian multipliers. These multipliers are then typically updated
iteratively using a subgradient method (Fisher, 1985) based on the upper bound. Upper bound is
usually obtained using heuristics at every iteration and iterations proceeds until duality gap lies
105
within predefined tolerance. The use of Lagrangian relaxation was popularized in the early 1970s
(Cornuejols et al., 1977; Fisher, 1973, 1981; Held & Karp, 1971; Held & Karp, 1970) and this
approach has wide ranging application such as scheduling (Adhya et al., 1999; Ghaddar et al.,
2014; Luh & Hoitomt, 1993; Wu & Ierapetritou, 2003), planning (Graves, 1982; Gupta &
Maranas, 1999; Tang & Jiang, 2009), and integrated planning and scheduling (Calfa et al., 2013;
Z. Li & Ierapetritou, 2010a; Mouret et al., 2011). Lagrangian relaxation is also used to calculate
lower bound in outer approximation algorithm for crude oil scheduling by Karuppiah et al. (2008)
and in branch and bound approach by Holmberg and Hellstrand (1998); Holmberg and Yuan
(2000).
Refinery operations involve crude oil unloading and blending, production unit operations,
and finished product blending and delivery as mention in previous chapter. The model proposed
in previous chapter is an integrated unified model for production unit operations and blending
operations scheduling that can be applied to different type of refinery configurations. These
refinery configurations differ based on blending modes. Traditionally, blending is carried out
from blend component tanks, normally used for gasoline, while “rundown blending” is normally
used for diesel, jet fuel, and kerosene. In rundown blending many, if not all component streams
come directly from a process unit with no component storage. Many refineries are forgoing the
use component tanks due to economic pressure for reducing on-site storage inventory and safety
concerns for reducing inventory of volatile materials. In many instances when blend scheduling
optimization problem is investigated, traditional blending operations with components storage
tanks are considered. (Castillo & Mahalec, 2014a, 2014b; Cuiwen et al., 2013; Glismann &
Gruhn, 2001; J. Li & Karimi, 2011; J. Li et al., 2010; Mendez et al., 2006; Zhao et al., 2008)
However, scant attention has been paid to rundown blending operations optimization problem in
refinery. These traditional blending scheduling models are not designed to optimize blending
operations without component storage tanks. In recent years, a long term swing in demand for
106
diesel is expected to increase by 75% from 2010 to 2040 due to higher fuel efficiency of diesel
engines and preferential tax treatment of diesel "The Outlook for Energy: A View to 2040" 2013).
Furthermore, demand for jet fuel is projected to grow close to 75% and increase availability of
natural gas has similar long term shift away from heating oil. Refineries that can shift production
to maximize diesel and jet fuel are best positioned to serve their markets. (Polasek & Mann,
2013) Compared to gasoline blending operations, blending of diesel, jet fuel, and other middle
distillate products has been neglected since they are blended without component tanks. Many
refineries in APAC and Europe have blend operations without component tanks and use excel
with trial and error to obtain feasible solution. (Varvarezos)
Usually, the refinery operations scheduling problem has been tackled by addressing the
optimization of the three sub-operations, defined in previous chapter, independently of each
other. This decentralized approach for scheduling optimization is not suitable for refineries where
one or more component streams is directly blended without intermediate storage. Rundown
blending optimization is challenging since many process units feed into the blender and
fluctuations in the incoming flow rate and property has significant impact on finished product
blend qualities and quantity. Additionally, rundown header is responsible for all the material that
is transferred to it from the upstream process as seen in Figure 5.1. In a blending scenario with
no intermediate tanks, the number of classic degrees of freedom is limited to the component
rundown flow rate or the component qualities as manipulated variables. Thus if any changes
happen in the blend recipe to meet finished product properties specifications, it would have a
direct impact on the production unit operations. These interdependences of the blending
operations and production unit operations require an integrated approach to scheduling.
107
Crude oil
marine
vessels
Storage
tanks
charging
tanks
Crude Oil Unloading
and Blending
Production
CDUs
units
Storage and other
Production units
Production Unit
Operations
Shipping
points
Blend
headers
Product
tanks
Product Blending
and Delivery
Figure 5.1 Graphic overview of a standard refinery system: includes no blend components storage
tanks.
It is imperative to model an integrated production unit operations and finished product
blending-delivery problem to address the issue of rundown blending. The resulting
comprehensive model is complex, hard to build and solve, and has received sparse attention in the
literature. Moro et al. (1998) proposed a planning model for refinery diesel production where the
emphasis is on blend relations. Pinto et al. (2000) proposed a planning and scheduling model for
refinery operations. They presented the formulation based on discretization of time for production
and distribution scheduling and their model included the features such as sequence dependent
transition cost of products within oil pipeline.(C. Luo & Rong); Chunpeng Luo and Rong (2007)
developed a two decisions levels scheduling model for overall refinery. The upper level
optimization model is based on discrete time formulation and it is used to determine sequencing
and timing of operations modes and to decide the quantities of materials produced/consumed at
each operations mode. The upper level decisions level uses aggregated tanks storage capacity
whereas the lower level uses heuristics to obtain a detailed schedule. They consider multi-purpose
product tanks via an iterative procedure that allows to readjust aggregated tank capacity at lower
108
level by changing multi-purpose tank service mode and then to recalculate corresponding optimal
solution at upper level. The logistics details are ensured through heuristics at the lower level.
In previous chapter we have proposed a MILP model based on continuous-time
representation for the simultaneous scheduling of production unit operations and end-product
blending and delivery operations. The model incorporates quantity, quality, and logistics
decisions related to real-life refinery operations. These logistics details involve minimum runlength requirements, fill-draw-delay, one-flow out of blender, sequence dependent switchovers,
maximum heel quantity, and downgrading of the better quality product to the lower quality.
Incorporating these logistics details in blend operations can yield significant improvement in
productivity and efficiency. (Kelly, 2006) We proposed a set of valid inequalities that improves
the computational performance of the model significantly in section 4.3.1. However, even with
valid inequalities present, the scheduling model is still computationally prohibitive. It is
imperative to develop global optimization strategy for an integrated production unit and finished
product blending-delivery scheduling problem to address the issue of online blend units.
The chapter is organized in the following way. Section 5.2 describes the integrated refinery
operations problem. Section 5.3 presents solution strategy for the integrated problem, whereas
section 5.4 defines relaxed sub-problems and presents methodology to construct novel heuristic
approach to construct restricted Lagrangian sub-problems and feasible solution. Steps for
obtaining tighter lower bounds are described in section 5.5 and detailed algorithm steps are
presented in section 5.6. Section 5.7 provides results, and the chapter concludes with section 5.8.
5.2. Refinery Operations Scheduling
The refinery operations scheduling MILP model proposed in Chapter 4 is used in this
work to serve as a benchmark for the proposed decomposition algorithm. The formulation for the
refinery operations scheduling problem is based on the continuous time representation and an
idea of unit-specific event-points first introduced by M. G. Ierapetritou and C. A. Floudas (1998);
109
M.G. Ierapetritou and C.A. Floudas (1998); Ierapetritou et al. (1999). State-task network
representation introduced by Kondili et al. (1993) is used in formulating the problem. Continuous
time representation is preferable because it leads to lower number of binaries and constraints
compared to discrete time representation and accurate start and finish timing of tasks. Discrete
formulation requires the time horizon to be divided into smaller grids to acquire an acceptable
approximation of timings which leads to increasing number of binaries. (Stefansson et al., 2011)
In contrasts, continuous time formulation has more complicated structure where task can start and
finish at any time point. (Floudas & Lin, 2004)
The goal of the refinery operations scheduling is to maximize the production performance
while minimizing the penalties subject to quantity, quality, and logistics giveaways and
nonattainment. (Kelly, 2003a) The optimum values of the following variables in the system are
driven by the shipment plan and accounts for the tradeoffs between costs of keeping inventory
and changing run-modes: (i) sequencing of tasks for production units; (ii) each product pool that
satisfies demand orders; (iii) duration of tasks at production units and duration of unloading tasks
from product pools; (iv) inventory levels in component and product pools; (v) production rates
for units and unloading rate for product pools; (vi) composition of material produced and
consumed.
5.3. Solution Strategy
The integrated refinery scheduling model (IP) presented in previous chapter gives rise to a large
scale complex MILPs problem that requires specialized solution algorithms. We apply a
Lagrangian decomposition (LD) algorithm to solve the integrated scheduling problem (IP) using
an iterative procedure. The LD algorithm involves relaxing complicating constraints to the
objective function by introducing Lagrange multipliers to form a relaxed version of a primal
problem. In LD algorithm, we obtain lower bound and upper bound of the optimal value of (IP) at
each iteration.
110
= start time of transfer to
Blend Header
P
j ,n
Tsn
Tfn Pj, n
Tsn
B
j ,n
blend unit „j‟ in event point
„n‟.
Tfn Bj, n
= end time of transfer to blend
P
s , j ,n
Cfn
unit „j‟ in event point „n‟.
B
s , j ,n
Cfn
= flow of component „s‟ to
blend unit „j‟ in event point „n‟.
Production Unit
Scheduling
Blending and Delivery
Scheduling
Figure 5.2 Spatial decomposition of a refinery operations network
In this work, the integrated full-scale scheduling problem is decomposed into production
unit scheduling problem (PSP) and blend scheduling problem (BSP) using spatial decomposition,
as shown in Figure 5.2. Here, the network is split into two independent sub-problems;
furthermore, each sub-problem can be further decomposed into smaller independent subproblems. The variables pertaining to the blend components flows amount, and start and finish
times of these flows are also split alongside the connections (pipelines) in the network. Thus, two
sets of linking variables, one set that belongs to the production unit scheduling sub-problem
(PSP) and another set that belongs to the blend scheduling sub-problem (BSP), are present. To
achieve this decomposition, coupling constraints are introduced to the integrated model (IP).
Coupling constraints equate the split variables (flow amount, start and end time variables) of the
blend components pipelines. Based on this spatial decomposition of the refinery structure, the
main goal of the production unit scheduling sub-problem is to satisfy the demand requirement of
final products that belong to set S B and demand of the blend components required by the subproblem. Similarly, the goal of the blend scheduling sub-problem is to satisfy the demand of the
111
finished blend products belonging to set S A by mixing the raw materials, supplied by (PSP),
following the blending recipe and product property specifications.
5.4. Lagrangian Relaxation Framework and Sub-problems
Lagrangian relaxation provides an efficient way for obtaining lower bounds for large
scale MILPs. These problems are characterized by a set of complicating constraints whose
removal to objective function using Lagrangian multipliers yields a relaxed problem that can be
decomposed into smaller independent sub-problems that are easier to solve. In classical LD,
lower bound is obtained from the solution of the relaxed problem and upper bound is obtained by
constructing a feasible solution based on a solution to the relaxed problem. Then the multipliers
are updated along a sub-gradient direction.
The general framework of the classical Lagrangian decomposition (LD) algorithm is
given in Figure 5.3. Here m is used to account for the algorithm iterations,  Z L  is lower bound,
m
and  Z U  is upper bound.  u Tsj,t 
m
iteration.
(m)
,  u Tfj,t 
(m)
, and  usCf, j ,t 
(m)
are the Lagrange multipliers at the mth
112
Initialize Lagrange multipliers
,
,
,
Solve Relaxed Problem
Obtain lower bound (
)
Construct feasible solution
Obtain Upper bound ( )
No
Update Lagrange multipliers
,
,
,
Yes
Done
Figure 5.3 Framework of classical Lagrangian Decomposition Algorithm
In our work we develop a modified LD algorithm to suit the application to refinery continuous
production processes, especially for refinery that have a blend header receiving at least one blend
component stream directly from upstream processes without component storage. We formulate
restricted relaxed sub-problems using the solution of Lagrangian relaxed sub-problems to obtain
tighter lower and upper bounds. The details of each step in Lagrangian algorithm are given in the
following subsections.
5.4.1. Relaxed Problem
The connections between production units and blend units are cut off by splitting the
pipelines between them since the refinery network does not contain blend component tanks. Thus,
the variables
 JJf
s , j , j , n
,
s  Sbc , j  J sp  J PU , j   J sc  J BU , n  N
pertaining to the blend
component flow are replaced with CfnsP, j , n , CfnsB, j , n  , s  Sbc , j   J BU  J sc , n  N . Here, J BU is a
set of blend units and J PU is a set of units present in (PSP). Furthermore, the time sequence
113
constraints which enforce that the start and finish time of the production units which produce
blend component ( s ) should be same as the blend unit which consumes the blend component ( s )
are eliminated from the relaxed problem. In place of these sequence constraints, we introduce
variables Tsn j , n , Tfn j , n  , j  J BU , n  N for start and finish time of flow from production unit
scheduling problem to a blend unit b .
The variables pertaining to the blend component flow and start/end times of flow for all split
connections between production unit operations and blend units are duplicated. The model has
two sets of linking variables, one set that belongs to the production unit scheduling sub-problem
 Cfn
, Tsn Pj , n , Tfn Pj , n 
 Cfn
, Tsn Bj , n , Tfn Bj , n  . All other variables in model (IP) are called non-linking variables since they
P
s, j ,n
B
s, j ,n
and another set that belongs to the blend scheduling sub-problem
are separate for both sub-problems.
Coupling constraints (1)-(3) are introduced to equate the split variables (flow amount, start
and end time variables) for every event-point n .
TsnPj , n  TsnBj ,n , j  J BU , n  N
(1)
TfnPj , n  TfnBj ,n , j  J BU , n  N
(2)
CfnsP, j , n  CfnsB, j , n , j  J BU , s  S cj , n  N
(3)
To obtain the Lagrangian relaxation of the original problem, the complicating constraints
(1-3) are relaxed using Lagrange multipliers ( u ) and considered in the objective function as
shown in equation (4).
Ln  u   z 
B
P
u Tsn
j , n Tsn j , n  Tsn j , n  

j J
BU
,n
B
P
uTfn
j , n Tfn j , n  Tfn j , n  

j J
BU
,n
jJ

BU
, sS cj , n
B
P
usCfn
, j , n  Cfns , j , n  Cfns , j , n 
(4)
The objective function (4) of the relaxed problem is decomposable into smaller sub-problems
corresponding to the production unit operations and the finished product blending and delivery
operations, which are relatively easier to solve. The model (P1-n) includes objective function (
LBn ) and all the constraints and variables pertaining to the finished product blending and delivery
114
operations, whereas, the model (P2-n) includes objective function ( LPn ) and all the equations and
variables pertaining to the production unit operations.


B
Tfn
B
B
minimize  LBn  u   z   uTsn
usCfn

j , n Tsn j , n   u j , nTfn j , n 
, j , n Cfns , j , n 
jJ BU , n
jJ BU , n
jJ BU , sS cj , n


s.t. constraints corresponding to finished product blending and delivery operations
(P1-n)


P
Tfn
P
P
minimize  LPn  u   z   uTsn
usCfn

j , n Tsn j , n   u j , nTfn j , n 
, j , n Cfns , j , n 
jJ BU , n
jJ BU , n
jJ BU , sS cj , n


s.t. constraints corresponding to production units scheduling operations
(P2-n)
The models (P1-n) and (P2-n) are independent and can be solved in parallel. Their solutions will
provide a feasible solution to the original problem when the coupling constraints (1-3) are
satisfied for all event-points. Figure 5.4 shows a typical solution obtained by solving (P1-n) and
(P2-n) for problem that has one blend unit, say b1. Gantt chart shows the flow amount and
start/end times of one of the blend component ( s1 ) for blend unit b1. As you can see, blend
components are being supplied from production units to the blend header and consumed by the
blend header at the same time. However, if one were to look at Gantt chart closely, the eventpoints for the component streams are not the same. The complicating constraints (1)-(3) are not
satisfied for event-points n  2 and n  3 .
n1
n2
n4
P1-n
n1
n3
n4
P2-n
Time
115
Figure 5.4 Gantt chart for a blender receiving component s.
This kind of situation arises frequently when comparing solutions of (P1-n) and (P2-n)
across event points due to the nature of unit specific event points and continuous time
representation used in the model. To meditate this kind effect, we introduce a time-point t that
has one-to-one correspondence with an active event-point n and cardinality of set T is equal to
the cardinality of set N . To eliminate the occurrence of non-active time-points before active
time-points, additional constraints are included to enforce that active time-points always occur
before non-active time-points.
To compare material flow between production operations and blend operations at each
time points, a new set of variables  Cf s , j ,t , Ts j ,t , Tf j ,t  are introduced. The coupling constraints
presented in equation (1)-(3) are replaced by (1b)-(3b).
Ts Pj ,t  Ts Bj ,t , j  J BU , t  T
(1b)
Tf jP,t  Tf jB,t , j  J BU , t  T
(2b)
Cf sP, j ,t  Cf sB, j ,t , j  J BU , s  S cj , t  T
(3b)
The Lagrangian relaxation objective function Ln (u) given in equation (4) is updated to
L(u) given in equation (4b),
L u   z 

jJ BU ,t
u Tsj ,t Ts Bj ,t  Ts Pj ,t  

jJ BU ,t
u Tfj ,t Tf jB,t  Tf jP,t  

jJ BU , sS cj ,t
usCf, j ,t  Cf sB, j ,t  Cf sP, j ,t 
(4b)
Where the variables  Cfns , j , n , Tsn j , n , Tfn j , n  are replaced with variables  Cf s , j ,t , Ts j ,t , Tf j ,t  .
The relaxed sub-problems (P1-t) and (P2-t) are obtained by decomposing L(u) .


minimize  LB  u   z   uTsj ,t Ts Bj ,t   uTfj ,t Tf jB,t   usCf, j ,t Cf sB, j ,t 
jJ BU , t
jJ BU ,t
jJ BU , sS cj ,t


s.t. constraints corresponding to finished product blending and delivery operations
(P1-t)
116


minimize  LP  u   z   u Tsj ,t Ts Pj ,t   u Tfj ,t Tf jP,t   usCf, j ,t Cf sP, j ,t 
jJ BU , t
jJ BU ,t
jJ BU , sS cj ,t


s.t. constraints corresponding to production units scheduling operations
5.4.1.1.
(P2-t)
Relaxed Blend Scheduling Problem
Relaxed blend scheduling problem includes all the constraints and variables of the
relaxed sub-problem (P1-t) and in addition to those constraints and variables; we introduce a new
continuous 0-1 variable x Bj, n ,t to connect the time-points t and event-points n .
x Bj , n ,t   wvi , j , n , j  J BU , n  N , t  T , n  t
iI j
x Bj , n,t  1 
x Bj , n,t  1 

x Bj , n ,t  , j  J BU , n  N , t  T , n  t
(6)

x Bj , n,t , j  J BU , n  N , t  T , n  t
(7)
t  t ,t  n
n n , n t
x Bj , n ,t   wvi , j , n 
iI j
x
n t 
B
j , n ,t 
(5)

t t ,t  n
x Bj , n,t  

n n , n t
x Bj , n,t  , j  J BU , n  N , t  T , n  t
  x Bj , n ,t , j  J BU , t  T , t   T , t   t
nt
(8)
(9)
x Bj , n,t  x Bj , n,t   1, j  J BU , n  N , n  N , n  n, t  T , t   T , t   t , n  t , n  t , n  t , n  t 
(10)
x Bj , n,t  0, j  J BU , n  N , t  T , n  t
(11)
Constraint (5) states that variable x Bj, n ,t is non-zero at time-point t only if a blend unit j is active
at event-point n. Here wvi. j.n is a binary assignment variable, 1 if task i is active in unit j at eventpoint n, and 0 otherwise. Constraints (6) and (7) enforce that each blend unit j has one-to-one
correspondence between a time-point and an event-point. Equation (8) states that if the blend unit
is active at event-point n then it must correspond to some time-point t. Constraint (9) restrict that
time-point t   t should be assign an event-point before time-point t. Similar to constraint (10),
117
n  n should be assigned to a time-point t   t before assigning n to t. Since, we want to restrict
inactive time-points ( x Bj, n,t  0 ) to happen after active time-points ( x Bj,n,t  1 ), we add equation (11).
The decoupled flow and time variables at each time-point are defined as follow:
Ts Bj ,t  Tsi , j , n  UH  2  wvi , j , n  x Bj , n ,t  , j  J BU , i  I j , n  N , t  T , n  t
(12a)
Ts Bj ,t  Tsi , j , n  UH  2  wvi , j , n  x Bj , n ,t  , j  J BU , i  I j , n  N , t  T , n  t
(12b)
Tf jB,t  Tf i , j , n  UH  2  wvi , j , n  x Bj , n ,t  , j  J BU , i  I j , n  N , t  T , n  t
(12c)
Tf jB,t  Tf i , j , n  UH  2  wvi , j , n  x Bj , n ,t  , j  J BU , i  I j , n  N , t  T , n  t
(12d)
Cf sB, j ,t  Uif s , j , n  M 1  x Bj , n ,t  , j  J BU , s  S cj , n  N , t  T , n  t
(13a)
Cf sB, j ,t  Uif s , j , n  M 1  x Bj , n ,t  , j  J BU , s  S cj , n  N , t  T , n  t
(13b)
Ts Bj ,t  UH  x Bj , n ,t , j  J BU , t  T
(14a)
Tf jB,t  UH  x Bj , n ,t , j  J BU , t  T
(14b)
n t
n t
Cf sB, j ,t  M  x Bj , n ,t , j  J BU , s  S cj , t  T
n t
(15)
Constraints (12a)-(12d) assign start and end times to time-point t using the corresponding eventpoint n. Similarly, blend components flow amount is assigned to time-point t using equation (13a)
and (13b), where M is a big M term. If a time-point is not active then the variables pertaining to
blend components flows are equal to zero as defined by equations (14a), (14b) and (15). If
refinery under study contains multiple blend units, then the relaxed blend scheduling problem
may be decomposed into multiple independent blend scheduling problems. Each of these
independent blend scheduling problems must blend different components, more specifically, any
two independent scheduling problems must not share a common blend component.
x
n t
B
j , n ,t
 1, j  J BU , t  T
(16)
118
x
t n
B
j , n ,t
  wvi , j , n , j  J BU , n  N
(17)
iI j
To improve the computational performance of the decomposed problems, valid inequalities (16)
and (17) are added to the blend scheduling models. Inequality (16) states that for a given timepoint t, continuous 0-1 variable x Bj, n ,t can only correspond to one event-point and equality (17)
states that if blend unit is active at given event-point n then there must be a time-point t
corresponding to n.
5.4.1.2.
Relaxed Production Unit Scheduling Problem
Continuous 0-1 variables x Pj, n ,t and a j ,n
are introduced to define split variables belonging to
production unit scheduling problem in terms of time-point t instead of event-point n. To this goal,
we first introduce equations (18a) and (18b).
a j ,n 
j J

iI j , S cj  Sip
PU

wvi , j , n , j  J BU , n  N
, iI j , S cj  Sip

wvi , j , n  a j , n , j  J BU , j   J PU , j  J seq
j , n  N
 ,
(18a)
(18b)
Binary variable a j ,n takes the value of 1 if at least one production task produces a blend
component at event-point n that can be consumed by blend unit j as stated by constraint (18a).
Equation (18b) restricts a j ,n to 0 if production operations are not producing blend components at
event- point n for blend unit j.
Similarly to blend scheduling problem, production unit scheduling problem has equations (19)(25) to define 0-1 continuous variable x Pj, n ,t .
x Pj , n,t  a j ,n , j  J BU , n  N , t  T , n  t
x Pj , n,t  1 
x Pj , n,t  1 
(19)

x Pj , n ,t  , j  J BU , n  N , t  T , n  t
(20)

x Pj , n,t , j  J BU , n  N , t  T , n  t
(21)
t  t ,t  n
n n , n t
119
x Pj , n ,t  a j , n 
x
n t 
P
j , n ,t 

t  t ,t  n
x Pj , n ,t  

n n , n t
x Pj , n ,t  , j  J BU , n  N , t  T , n  t
  x Pj , n ,t , j  J BU , t  T , t   T , t   t
nt
(22)
(23)
x Pj , n,t  x Pj , n,t   1, j  J BU , n  N , n  N , n  n, t  T , t   T , t   t , n  t , n  t , n  t , n  t 
(24)
x Pj , n,t  0, j  J BU , n  N , t  T , n  t
(25)
Constraint (19) states that variable x Pj, n ,t is non-zero at time-point t only if there is at least one
production unit operational at event-point n that can produce a blend component necessary for
blend unit j. Constraints (20) and (21) enforce that there is one to one relationship between a
time-point and an event-point for a every connections between production unit scheduling
problem and blend unit j. Equation (22) ensures that if there is a blend component production
happening event-point n then it must correspond to some time-point t. Constraint (23)-(25) are
same as constraints (9)-(11) present in the blend scheduling problem.

wvi , j , n  a j , n , j  J BU , s  S cj , n  N
j J PU  J sp , iI j  I sp
(26)
Since there are no blend component tanks present, blend unit must receive all blend components
from production scheduling problem at the same time for inline continuous blending. Constraint
(26) requires that if at least one blend component is produced at event-point n for a blend unit j
then all other blend components for the blend unit must be produced at event-point n. This
requirement is valid because in a typical refinery, a blend unit produces multiple products by
mixing a fixed set of blend components using different blend recipes. That is, j  J BU , I  I j , the
blend components that can be consumed by different tasks at blend unit j gives us S cj  Sic .
The goals of the production unit scheduling problem is to produce hydrocarbon products
( S B ) that are not stored in tanks but are supplied straight to the market and to produce blend
components that are needed by blend units to produce finished blend products. Since there are no
tanks available to store blend components, these products (blend components) are supplied
120
straight to the market (here market is blend unit). Thus, the product set ( S B ) includes the blend
components and other hydrocarbon products that will be used as feedstock in chemical industry.
Constraints relating the split variables (flow, start and end times) of the production scheduling
problem to time-points are given below.
Ts Pj ,t  UH  x Pj , n ,t , j  J BU , t  T
(27a)
Tf jP,t  UH  x Pj , n ,t , j  J BU , t  T
(27b)
n t
n t
Ts Pj ,t  Tsi , j , n  UH  2  wvi , j , n  x Pj , n,t  ,
p
c
j  J PU , j   J BU , j   J seq
j , i  I j , n  N , t  T , n  t , Si  S j   
Ts Pj ,t  Tsi , j , n  UH  2  wvi , j , n  x Pj , n,t  ,
p
c
j  J PU , j   J BU , j   J seq
j , i  I j , n  N , t  T , n  t , Si  S j   
Tf jP,t  Tfi , j , n  UH  2  wvi , j , n  x Pj , n,t  ,
p
c
j  J PU , j   J BU , j   J seq
j , i  I j , n  N , t  T , n  t , Si  S j   
Tf jP,t  Tfi , j , n  UH  2  wvi , j , n  x Pj , n,t  ,
p
c
j  J PU , j   J BU , j   J seq
j , i  I j , n  N , t  T , n  t , Si  S j   
(28a)
(28b)
(28c)
(28d)
Constraints (27a) and (27b) states that start and end times are zero if material is not flowing to a
blend unit j’ at time-point t. If production unit operations are producing blend components at
time-point t, then equations (28a)-(28d) are used to assign start and end times to blend component
flow to a blend unit j’.
All production and blend units in the refinery are continuous processes and since there is no
storage between the production unit scheduling operations and the blend units, material produced
by the production unit scheduling problem is directly consumed. Thus production capacity of
blend units and blend recipes of each blend component should also be taken into consideration
when the components are supplied by production unit operations. Parameters RBmax
and RBmin
are
j
j
maximum and minimum blend rate of a blend unit j, respectively and are calculated using
121
equations (29a) and (29b). The maximum and minimum blend recipe of component s in blend
unit j, bsmax
and  bsmin
, j respectively, are determined from Equations (30a) and (30b).
,j
RB max
 max  Rimax
j  J BU
j
, j ,
(29a)
RB min
 min  Rimin
j  J BU
j
, j ,
(29b)
max
 bsmax
j  J BU
, j  max   s , i  ,
(30a)
min
 bsmin
j  J BU
, j  min   s , i  ,
(30b)
iI j
iI j
iI j
iI j
The blend component production is set to zero by equation (31a) if there is no production
happening at time-point t for blend component s. Constraints (31b) and (31c) determines the
individual component flow amount from the production unit scheduling problem to a blend unit j
at time-point t.
max
P
Cf sP, j ,t   bsmax
j  J BU , s  S cj , t  T
, j RB j UH  x j , n , t ,
nt
s , j , n
max
P
  bsmax
j  J BU , s  S cj , n  N , t  T , n  t
, j RB j UH 1  x j , n , t  ,
(31b)
s , j , n
max
P
  bsmax
j  J BU , s  S cj , n  N , t  T , n  t
, j RB j UH 1  x j , n , t  ,
(31c)
 Uof
Cf sP, j ,t 
j J sp
Cf sP, j ,t 
 Uof
j  jsp
(31a)
 Cf
P
s , j ,t


P
 RB max
j  J BU , t  T
Tf jP,t  Ts Pj ,t   RB max
j
j UH  1   x j , n ,t  ,
 n t

(32a)
 Cf
P
s , j ,t


P
 RB min
j  J BU , t  T
Tf jP,t  Ts Pj ,t   RB min
j
j UH  1   x j , n ,t  ,
 n t

(32b)
sS cj
sS cj


max
P
Cf sP, j ,t   bsmax
j  J BU , s  S cj , t  T
Tf jP,t  Ts Pj ,t   bsmax, j RB max
, j RB j
j UH  1   x j , n ,t  ,
 nt

(32c)


min
P
Cf sP, j ,t   bsmin
j  J BU , s  S cj , t  T
Tf jP,t  Ts Pj ,t   bsmin, j RB min
, j RB j
j UH  1   x j , n ,t  ,
 n t

(32d)
122
Constraints (32a) and (32b) enforce that total amount of material supplied to a blend unit j at
time-point t is bounded by maximum and minimum production rate of corresponding blend unit
and production of each blend component is bounded by equations (32c) and (32d).
Similar to valid inequalities (16) and (17) included in blend scheduling sub-problem, we
introduce constraints (33) and (34) to production unit scheduling problem. Inequality (33) states
that for a given time-point t, continuous 0-1 variable x Pj, n ,t can only correspond to one event-point.
If at event-point n production unit operations are producing materials for blend unit j, then there
must be at least one time-point t corresponding to n as stated by equality (34).
x
P
x
P
j , n ,t
n t
t n
j , n ,t
 1, j  J BU , t  T
 a j , n , j  J BU , n  N
(33)
(34)
5.4.2. Construction of a Feasible Schedule
Traditionally an upper bound for the Lagrangian decomposition is obtained by fixing certain
binary variables of the original full-scale integrated MILP problem (IP) based upon the solution
of the relaxed sub-problems. However the solution derived by solving relaxed sub-problems ((P1t) and (P2-t)) are usually infeasible in each iteration because the complicating constraints are are
violated. Therefore, a heuristics procedure or some other methods for generating feasible solution
is necessary. In this work, feasible solution at each iteration is obtained by fixing some of the
binary variables to 1 and to decide which binaries to fix, we propose using solution of the relaxed
sub-problems to build new restricted relaxed sub-problems. These restricted relaxed subproblems‟ solution will always provide feasible fullspace solution unlike relaxed sub-problems.
In proposed decomposition strategy, complicated variables are expressed in terms of eventpoint t and not event-point n , thus the schedule obtained solving relaxed problem (P1-t) and (P2t) would lead to an infeasible solution of the (IP). In most instances the infeasibility in full-scale
model occurs because the fundamental operational rule of the refinery is violated because
material balance constraints are not satisfied for blend units or production units that produce
123
blend components. The refinery system under study doesn‟t contain blend component tanks thus
blend operations and corresponding production unit operations must operate concurrently to
satisfy mass balance constraints of rundown streams. Relaxed sub-problems (P1-t) and (P2-t)
defined in previous section are solved independent of each other and their solutions are compared
at time-point t . Thus at some iteration m , the production operations scheduling model (P2-t)
may produce a solution where blend components are supplied to a blend unit j during eventpoints n  2 and n  4 , that is x Pj,2,1  1 and x Pj,4,2  1 , while relaxed blend scheduling model (P1-t)
solution has the blend unit j is receiving components during event-points n  1 and n  3 , that is
x Bj,1,1  1 and x Bj,3,2  1 . Hence at if the binary variables
wv  i, j, n
i, j ,n
in the original integrated
model (IP) are fixed based upon the solution of relaxed sub-problems, it would lead to an
infeasible solution. Infeasibility would occur because in the refinery, for two sequential units
without storage any between them must operate at the same event-point. Hence sub-problems
must provide a solution where a blend unit j  J BU is receiving and blending components at the
same event-points. That is, both x Pj, n ,t and x Bj, n ,t have to be nonzero at event point n to provide
feasible solution of full space problem.
Before the steps to build restricted relaxed sub-problems are presented, we first state
assumptions behind proposed method to derive restricted relaxed sub-problems.
We assume that no parallel blend units are present in the refinery and no two blend units
share a particular blend component. These assumptions are valid because, in this work, the
refinery does not have any blend component tanks present. The mathematical representation of
these assumptions is given below as:
S cj  S cj   , K jpk  K jpk   j  J BU , j   J BU , j  j 
124
Thus, blend scheduling problems (BSP) can be decomposed into sub-problems containing
only one blend unit. Here each (BSP) sub-problem defined as BSP jJ
BC
has its own set of blend
components, materials, and tanks corresponding a blend unit j  J BC .
Now we analyze the structure of the (PSP), particular for a refinery that has more than one
blend unit and the (BSP) can be decomposed into independent sub-problems. We check if the
production units that supply components to different (BSP) sub-problems are connected or not.
Production units are said to be “connected” if they all have to be operational at the same time
which corresponds to being active at same event-points so that the continuous process operational
rule is not violated for the (PSP). We assume in our work that all the production units which
produce blend components for different blend units are connected. Based upon this assumption,
all independent sub-problems of the (BSP) must also be active at the same event-point to obtain a
feasible solution to the integrated model (IP).
A two steps approach is developed to determine an upper bound for the algorithm which is
obtained from a feasible solution to the original full-scale model. In step 1 a restricted relaxed
problem is solved to obtain a solution that has production units active at the same event-points as
the blend units. Using the solution of step 1, in step 2 a feasible solution to (IP) is realized.
5.4.2.1.
Restricted Relaxed Problem
Upon solving relaxed sub-problems presented in section 5.4.1, we obtain schedule for blending
operations and production unit operations, respectively. To build a restricted relaxed problem
using the optimal solution of relaxed problem, the following steps are proposed:
Step 1: From the optimal relaxed sub-problems solution, determine over the scheduling
horizon which tasks, units, and storage tanks are active for at least one event-point.
Step 2: Pick a primary sub-problem from  PSP  BSP j , j  J BU  by analyzing solution of
the corresponding relaxed sub-problems. Determine active event-points during which the primary
sub-problem is either supplying or receiving blend components.
125
Step 3: Obtain restricted relaxed problem by fixing some of the binary variables in
corresponding relaxed problem to 1 at active event-points.
Step 1: Determine parameters from an optimal solution of relaxed sub-problems. Using equations
(35a)-(35d), we can calculate active task for units ( wvia, j ), the flow in and out of tanks ( insa, j ,k and
outsa, k , j ), and the changeovers from task i to i  at unit j , respectively over the scheduling
horizon. Parameter ia,i, j is calculated using equation (35e) which gives the total number of time a
task i is change to a task i  at unit j .
a
i, j
wv
a
s, j ,k
in
out

1 if


0 if

 wv
 wv
1 if


0 if

 in
 in
a
s,k , j
a
i ,i , j
0
i, j ,n
0
j  J , i  I j
(35a)
n
s , j , k .n
0
s, j ,k ,n
0
n
s  S , k  K s , j  J kpk
(35b)
n
 out
 out
1 if


0 if

1 if


0 if

i, j ,n
n
s,k , j ,n
0
s,k , j ,n
0
n
s  S , k  K s , j  J kkp
(35c)
n


i ,i , j , n
0
i ,i , j , n
0
n
j  J , i  I j , i   I j
(35d)
n
 ia,i , j    i ,i , j , n
j  J , i  I j , i   I j
n
(35e)
Step 2: From the solution of relaxed sub-problems, the total number of active time-points for
each Lagrangian decomposed problem are calculated as:
Tat j 
x
t ,n t
j , n ,t
, j  J BU
Since we assume that the production units which produce blend components for different blend
units are connected, for (PSP),
Tat P =Tat Pj  Tat Pj  , j  J BU , j   J BU , j  j 
126
The total numbers of active-points for each sub-problem BSP j containing blend unit j are given
as Tat Bj . The maximum number of active time-points is determined by finding maximum among
(BSP) and (PSP) as:
Mat  max Tat P   Tat Bj , j  J BU 
If there is more than one sub-problem that has the total active time-points equal to Mat , then the
following rules are used to determine the primary problem:
Rule 1: If Tat Bj  Mat and sub-problem BSP j includes multipurpose blend unit j then
the
primary problem is ( PP   BSP j  ).
Rule 2: If Tat Bj  Mat and sub-problem BSP j doesn‟t include multipurpose blend unit j then
the blend scheduling sub-problem is chosen as the primary problem ( PP   BSP j  ).
Rule 3: If Tat Bj  Mat
and Tat P  Mat then (PSP) is selected as the primary problem (
PP  PSP ).
When determining the primary problem, priority is given to a problem that satisfy rule 1;
however if rule 1 is not satisfy then we check rule 2 and subsequently rule 3.
The solution of primary problem is used to determine parameter Aen which represents
active event-point.
1 if  wvi , j , n  0

iI j
Aen  
,
0
if
wvi , j , n  0


iI j

j  J BC , BSP j  PP
1 if
 c p wvi, j,n  0

j J PU , jJ seq
j , iI j , S j  Si 
Aen  
,
0 if PU seq c p wvi , j , n  0
j J , jJ j ,iI j , S j  Si 

j  J BC , PSP  PP
(36a)
(36b)
Parameter Aen is determined by equation (36a) if the primary problem is a sub-problem
BSP j otherwise it is determined by equation (36b).
127
Step 3: Using parameters wvia, j , insa, j ,k , outsa,k , j , ia,i, j , ia,i, j and Aen we restrict the solution
space of the relaxed sub-problems so that a solution of the restricted problem have production
operations producing blend components at the same event-point as the blend units are mixing..
We fix binary variables { wvi , j ,n , ins , j ,k ,n , outs , k , j ,n , i ,i, j ,n } as shown equations (37a)-(37h).
wvi , j , n  wvia, j Aen , j  J , j  J m , i  I j , n  N
(37a)
wvi , j , n  0, j  J m , i  I j , n  N ,  Aen  0    wvia, j  0 
(37b)

wvi , j , n  Aen , j  J m , n  N , Aen  0
(37c)
iI j , wvia, j  0

n , Aen  0
wvi , j , n  wvia, j , j  J m , i  I j , wvia, j  0,   ia,i , j  0
i  ,i 
 i ,i , j , n  0, j  J , i  I j , i   I j , n  N ,  Aen  0     ia,i , j  0 

n , Aen  0
 i ,i , j , n  ia,i , j , j  J , i  I j , i   I j , i  i , n  N , ia,i , j  0
(37d)
(37e)
(37f)
ins , j , k , n  insa, j , k Aen , k  K , k  K m , k  K p , j  J kpk , j  J m , i  I j , s  Sk , n  N
(37g)
outs , k , k , n  outsa, k , j Aen , k  K , k  K m , k  K p , j  J kkp , j  J m , i  I j , s  Sk , n  N
(37h)
Equation (37a) fixes binary assignment variable for all units except for multipurpose
units. For multipurpose units, equations (37b)-(37f) are used, where equation (37b) fixes
assignment variable wvi , j ,n
to zero if the task i has not been active in relaxed problem or if the
event-point n is not active in primary problem. Constraint (37c) forces unit to be active when
Aen  1 and constraint (37d) enforces that task i needs be active in unit j if wvia, j  1 and no
tasks changeovers are happening

i , i 
a
i , i , j
 0 over the time horizon. Equation (37e) fixes
continuous 0-1 variable i ,i, j ,n to be zero at event-point n if Aen  0 and the total number times
the changeover from task i to i  can happen in unit j is fixed to ia,i, j in constraint (37f). Binary
variables ins , j ,k ,n and outs , k , j ,n are fixed in restricted relaxed problem as shown in equations (37g)(37h) for all units and tanks that do not perform multipurpose tasks and store final product tanks.
128
Since the blend products demand is to be satisfied before its due date, we do not fix any variables
associated with the product tanks as not to restrict solution space of the restricted relaxed problem
too much that product demands do not get satisfied. This situation can occur because in refinery
under study, the products tanks can‟t load and unload products simultaneously. Thus, if we fix the
binary variable associated with loading and unloading of product tanks based upon the solution of
the relaxed problem, it may cause infeasibility in the restricted relaxed problem.
Restricted relaxed problem is built and solved for every sub-problem except for the subproblem that is chosen as the primary problem. Solution of the restricted relaxed problem gives us
consistent solution across (BSP) and (PSP) in terms of event-points so that the continuous process
material balance is not violated.
5.4.2.2.
Upper Bounding Problem
We fix many of the binary variables { wvi , j ,n , ins , j ,k ,n , outs , k , j ,n , lk ,o,n } in problem (IP) to the values
of the corresponding binary variables obtained from the solution of restricted relaxed subproblems and obtain a MILP model (IP-U). The solution of the restricted relaxed problem is {
wvir, j , n , insr, j , k , n , outsr, k , j , n , lkr,o, n } and based on non-zero values of these binaries, corresponding
variables in (IP) are fixed. Only certain binary variables in problem (IP) are fixed to 1 and no
binaries are fixed to 0 so that a better upper bound can be attained in earliest iterations in the LD
algorithm. Equations (38a)-(38d) show how the variables are fixed in the problem (IP) to obtain a
MILP model (IP-U).
wi , j , n  1, j  J , i  I j , n  N , wvir, j ,n  0
(38a)
ins , j , k , n  1, k  K , j  J kpk , i  I j , s  Sk , n  N , insr, j ,k  0
(38b)
outs , k , k , n  1, k  K , j  J kkp , i  I j , s  Sk , n  N , outsr,k , j  0
(38c)
lk ,o, n  1, k  K p , j  J kpk , i  I j , s  Sk , n  N , lkr,o,n  0
(38d)
Solving model (IP-U) yields an upper bound on the solution of (IP). The model (IP-U) is always
feasible because the model includes demand, due-dates, and blend logistics giveaways.
129
5.5. Strengthening the Lagrangian Relaxation
There are several constraints, redundant or unnecessary in (IP) that can be added to the relaxed
problem and the restricted relaxed problem to strengthen the performance of the Lagrangian
algorithm. To improve the lower bound, we propose a pre-processing step before the Lagrangian
algorithm and add constraints related to product demands to the decomposed problems in the
algorithm. A common feature of the preprocessing steps and constraints strengthening lower
bound is that they in some sense recreate what has been relaxed, namely the network structure of
the refinery, but without destroying the separability of the Lagrangian sub-problems.
Furthermore, using the solution of the best upper bound, in the decomposed problems, penalty
variables relating violations of demands, due dates, and blend logistics can be fixed to zero.
5.5.1. Preprocessing Step
Because the refinery is decomposed into (BSP) and (PSP), production capacity limitation
for the blend components in (PSP) is not taken into consideration while solving (BSP). Therefore,
we present a preprocessing step that determines the maximum production rate for each blend
component s and maximum production capacity for a set of blend components that can be mixed
by a blend unit.




minimize  zsPP  100
Uof s , j , n  , s  Sbc

PU
p
jJ , jJ s , nN




(39)




minimize  z PP
 100
Uof s , j , n  , j  J BU

j
j J PU , sS cj  S jp , nN




(40)
The preprocessing problem (PC-s) and (PC-j) are based upon the relaxed sub-problem
corresponding to production unit operations (PSP). The model (PC-s) is obtained by replacing
objective function of relaxed problem with that given in equation (71) to determine maximum
production rate of each blend component. Another preprocessing problem (PC-j) is presented to
calculate the maximum rate at which production units can supply materials to each blend unit.
130
The objective function for (PC-j) is presented in equation (72). Problem (PC-s) is solved for each
blend component and problem (PC-j) for each blend unit before the Lagrangian algorithm begins.
Furthermore these problems are independent of each other and can be solved in parallel.
Upon solving the pre-processing problems, we obtain values of variables Cf sP, j ,t , Ts Pj ,t , Tf jP,t , x Pj , n ,t 
s, j, n, t from the optimal solution.
RP
 Cf sP, j ,t  x Pj , n,t 


BU
c
n
 max 
 , j  J , s  S j
P
P
t
Tf

Ts
j ,t
j ,t 



(41a)
RPjmax
  Cf sP, j ,t  x Pj , n,t 
 sS c

n
BU
 max  j P
 , j  J
P
t
 Tf j ,t  Ts j ,t



(41b)
max
s
The maximum rate of production of component s is determined by equation (41a) using the
optimal solution obtained upon solving corresponding preprocessing problem (PC-s). Similarly,
the maximum rate for set of blend components supplied to blend unit j is determined by
equation (41b) using the optimal solution values of corresponding preprocessing problem (PC-j).
5.5.2. Strengthening Lower Bound
To strengthen the Lagrangian decomposition algorithm, the information obtained in preprocessing step is applied to update the blend component production rate upper bounds in
equations (13a), (13b), and (15) for relaxed and restricted relaxed blend scheduling problems.
Computationally inefficient big M term is replaced with tighter bound upper RPsmax as shown in
equations (42a)-(42c).
Cf sB, j ,t  Uif s , j , n  RPsmax 1  x Bj , n ,t  , j  J BU , s  S cj , n  N , t  T , n  t
(42a)
Cf sB, j ,t  Uif s , j , n  RPsmax 1  x Bj , n ,t  , j  J BU , s  S cj , n  N , t  T , n  t
(42b)
Cf sB, j ,t  RPsmax  x Bj , n ,t , j  J BU , s  S cj , t  T
(42c)
n t
131


Cf sB, j ,t  RPsmax Tf jB,t  Ts Bj ,t   RPsmaxUH 1   x Bj , n,t  , j  J BU , s  S cj , t  T
 n t

 Cf
B
s , j ,t
sS cj


 RPjmax Tf jB,t  Ts Bj ,t   RPjmaxUH 1   x Bj , n ,t  , j  J BU , t  T
 n t

(42d)
(42e)
The amount of blend component processed by blend unit j at time-point t is bounded by the
maximum production rate of the component and blend unit‟s process time as enforced by
constraint (42d). Similarly, constraint (42e) states that the total bending rate is bounded by the
maximum rate at which material is supplied to a blend unit j.

iI sp ,
wvi , j , n  1, s  S A  S B , Amt min  0
(43)
j J i , n

iI j , i I j ,i  i , n
 i ,i , j , n  1 

1, j  J M  J BU
sS jp , iI sp , iI j
Here parameter Amt min 

sS A , oOs
Do, s 

sS A , k K s
(44)
stos , k . Constraint (43) enforces that tasks that produce
product s must be active at least once over the scheduling time horizon and constraint (44)
enforces minimum number of changeover of tasks at multipurpose blend units. Constraint (43) is
added to both (PSP) and (BSP); however, equation (44) is only present in (BSP).

Uof s , j , n  Amt min  pen
sSbc , jJ sp , n  N


minimize  LPm  u   z  C11 pen   u Tsj ,t Ts Pj ,t   uTfj ,t Tf jP,t   usCf, j ,t Cf sP, j ,t 
jJ BU ,t
jJ BU ,t
jJ BU , sS cj ,t


(45)
(46)
Constraint (45) enforces that (PSP) must produce at least minimum amount of blend
components required for (BSP) so that demand of blend products can be satisfied. If due to
production capacity limitation, (PSP) cannot produce enough blend components, then we add
positive penalty variable pen in equation (45) which is penalized in the objective function as
shown in equation (46). The objective function of relaxed and restricted relaxed problems is now
replaced by the one given in equation (46).
132
5.5.3. Construction of lower bound from the best upper bound
Due to production capacity limitation, the refinery might not be able to satisfy the demand of the
products on time, might not respect all the blend logistics requirements, and may not be able to
meet product quality specifications. To obtain a feasible schedule that can be implemented in the
refinery, we have included, demand, due dates, and blend logistics giveaways in all scheduling
models. These violations are heavily penalized in the objective function. Equation (47a) gives the
demand and due violations cost and equation (47b) gives total violation cost by including the
product downgrading and minimum heel violation penalty to the demand violation cost. We also
obtain the cost of task changeovers for multipurpose blend units from feasible solution as given in
equation (47c).
l
12
u
violatndem   c11
o dg o   co dg o 
oO
oO
violatntotal  violatndem 

c
sS B
13
s
k K , sS k , s S k , s  s , n
m
chgovr 

rg s   co14Tearlyo   c15
o Tlateo
oO
ck9K m std s , s , k , n 
oO

c10
s , k mhs , k , n
k K , sS k , n
m
ci6,i   i ,i , j , n
jJ m , iI j , i I j , i   i , n
(47a)
(47b)
(47c)
For a minimization problem, Z L  Z opt  Z U thus, if the best upper bound obtained at the current
iteration provides a solution without any violations, then the optimal schedule of the original
integrated problem will not have any violations. Furthermore, in refinery, an optimal solution
with lowest task changeovers cost is desired if there are no demand and due-date violations. The
desired changeovers at multipurpose blend units are from task producing high quality blend
product to tasks producing low quality products so that the products produced during changeover
U
transition are not discarded. Thus, we can conclude that chgovr opt  chgovrU , if violatntotal
0.
dg , dg
l
o
u
o
U
, rg s , Tearlyo , Tlateo   0, if violatndem
0
(48a)
dg , dg
u
o
U
, rg s , Tearlyo , Tlateo , std s , s , k , n , mhs , k , n   0, if violatntotal
0
(48b)
l
o
133

U
ci6,i   i ,i , j , n  chgovr U , if violatntotal
0
jJ , iI j ,i I j ,i   i , n
m
(48c)
U
We can produce tighter lower bound by considering value of parameter violatntotal
obtained from the best upper bound solution for a given set of Lagrangian multipliers. If best
upper bound obtained satisfies finished products demand and their due-dates, violatnUdem  0 , then
we fixed variables associated with demands and due-dates to zero as given by equation (48a).
Similarly, in constraint (48b), variables associated with demand and blend logistics violations are
U
fixed to zero if the best upper bound solution where violatntotal
 0 . Furthermore, total changeover
cost for multipurpose blend units is bounded by the total changeover cost ( chgovrU ) using
equation (48c).
5.6. Lagrangian Decomposition Algorithm
In this section, proposed Lagrangian decomposition algorithm is presented in detail. This
algorithm differs from classical Lagrangian decomposition in the way that the lower bound and
Lagrange multipliers are obtained. In classical Lagrangian decomposition (classical-LD), the
lower bound is always obtained from the Lagrangian relaxed problem where as in the proposed
restricted Lagrangian decomposition (restricted-LD) the tighter lower bound is chosen among the
relaxed problem and the restricted relaxed problem.
Before presenting the details of the algorithm, the scheduling models used in the algorithm
are defined first. The relaxed blend scheduling model (P1) consists of tasks, units, materials,
tanks relating to (BSP) and is defined as below:


minimize  LB  u   z   u Tsj ,t Ts Bj ,t   u Tfj ,t Tf jB,t   usCf, j ,t Cf sB, j ,t 
jJ BU , t
jJ BU , t
jJ BU , sS cj , t


s.t. constraints (5-11),(12a-12d),(14a-14b),(16-17),(42a-42e),(43-44),(48a-48c),
and all the constraints corresponding to finished product blending
and delivery operations in model (IP)
(P1)
134
The relaxed production unit scheduling model (P2) consists of tasks, units, materials, tanks
relating to (PSP) and is defined as below:


minimize  LPm  u   z  C11 pen   u Tsj ,t Ts Pj ,t   u Tfj ,t Tf jP,t   usCf, j ,t Cf sP, j ,t 
jJ BU , t
jJ BU , t
jJ BU , sS cj , t


s.t. constraints (18a-18b),(19-26),(27a-27b),(28a-28d),(31a-31c),(32a-32d),
(33-34),(43),(45),(48a-48c),
and all the constraints corresponding to production units scheduling
operations in model (IP)
(P2)
The restricted relaxed models (P1-R) and (P2-R) are constructed by fixing binary variables using
equations (37a)-(37h) in models (P1) and (P2), respectively. Infeasible restricted relaxed model is
obtained by removing equations (48a)-(48c) from models (P1-R) and (P2-R). The upper bounding
problem (IP-U) is obtained by fixing values of certain variables using equations (38a)-(38d) in
full-scale model (IP) presented in chapter 4. The models (PC-s) and (PC-j) are obtained from (P2)
by replacing its objective function by (39) and (40), respectively.
5.6.1. Updating the Multipliers
The subgradient method first proposed by Fisher (1981) is commonly used method to update
Lagrangian multipliers used in solving Lagrangian relaxation problems. It requires solving all
sub-problems at each iteration to find a subgradient of the relaxed problem to compose a search
direction to update the multipliers. The elements of subgradient to the relaxed problems are as
follows:
B
P
g Tsj ,t  Ts j ,t  Ts j ,t , j  J BU , t  T
g Tfj ,t  Tf
B
j ,t
 Tf
B
P
j ,t
, j  J BU , t  T
P
g sCf, j ,t  Cf s , j ,t  Cf s , j ,t , j  J BU , s  S cj , t  T
135
Cf
Where
B
B
s , j ,t
, Ts j ,t , Tf
B
j ,t
 and Cf
P
s , j ,t
P
, Ts j ,t , Tf
P
j ,t
 are
the values of the duplicating variables,
obtained from the solution of the blend scheduling problem and production scheduling problem,
respectively.
The multiplier is updated for the next iteration according to
u( m1)  u( m)  s( m) d ( m)
Here, u( m) denotes the multiplier values, s( m) is the step size, and d ( m) is the search direction in
iteration m. The search direction is usually set to the subgradient, but it is more efficient to use
modified formula that takes into consideration pervious iteration direction. Search direction is
defined as recursive formula as suggested in Gaivoronski (1988), where d (1)  g (1) :
d (m) 
g
(m)
  d ( m 1) 
 1
, m  1
Where  determines how much consideration is given to the previous direction, 0 being no
consideration to previous direction and 1 being an average of current and previous search
direction. The step size s( m) is given by a widely used formula:
s
(m)

(m)
Z
U
 L(u ( m ) ) 
g (m)
2
Here Z U is the upper bound of (IP) , L  u ( m )  is the solution of the relaxed problem at u( m) , and
 ( m) should be assigned a value in the interval (  , 2   ), where   0 to ensure convergence. If
there is no improvement in the lower bound in K successive iterations, we set  ( m)  0.5 ( m1) .
 ( m) is reset back to  (0) whenever an improved upper bound or lower bound.
5.6.2. Stopping Criteria
In this section, we present the stopping criteria used to terminate the Lagrangian algorithm.
-
Stop if the feasible solution is found at lower bound, which happens when g ( m)  0 ; but
this rarely occurs for large problems.
136
-
Stop if the lower bound from the Lagrangian relaxation exceeds the best known upper
bound, i.e., if Z L  Z U .
-
Stop if the duality gap is less than or equal to 1%.
 ZU  Z L 
duality gap  

L
 Z

Stop if d ( m )   , s( m)   , or Z U  Z L   .
-
In practice we do not wait till above mentioned stopping criteria is met, so we impose the number
of iteration as the stopping criterion, i.e., stop after a limited number of iterations.
5.6.3. Algorithm
Here using u( m) at mth iteration, the objective value of the relaxed problem and restricted
relaxed problem is calculated from equation in (4b) and given as Z R  u ( m )  and Z RR  u ( m ) 
respectively. Z ( m) is the objective value of the feasible solution through constructed heuristic at
the mth iteration.
The procedure for the restricted-LD algorithm:
Step 1: Solve pre-processing problems (PC-j) and (PC-s) as described in section 5.5.1
Step 2: Initialize m=0; Z U  ; Z L  ;  uTsj ,t 
(0)
 0;  u Tfj ,t 
(0)
 0;  usCf, j ,t 
(0)
 0;  (0) ;
Step 3: Solve relaxed problem by decomposition that is solve independent problems (P1) and
(P2).

B
Obtain Z R , Cf s , j ,t
 , violatn
R
R
total
, and chgovrR .
Step 4: Construct a restricted relaxed problem as described in section 5.4.2. Solve the
restricted sub-problems (P1-R) and (P2-R).
If infeasible, then solve corresponding infeasible sub-problem using model (P1-RI) or (P2RI).
137

B
Obtain Z RR , Cf s , j ,t

RR
RR
, violatntotal
, and chgovrRR .
RR
R
Step 5: If violatntotal
and Z RR  u ( m )   Z L , then Z L  Z RR  u ( m )  .
 violatntotal
RR
R
Otherwise, if violatntotal
and Z R  u ( m )   Z L , then Z L  Z R  u ( m )  .
 violatntotal
Step 6: Construct a feasible solution to the original problem as described in section 5.4.2.2.
U
If Z m  Z U , then Z U  Z m and obtain parameters violatnUdem , violatntotal
, and chgovrU for
constraints described in section 5.5.3.
Step 7: Update Lagrangian multipliers by using the sub-gradient method presented in section
5.6.1.
Step 8: Terminate the algorithm if the current solution satisfies at least one “stopping
criteria” listed in section 5.6.2. is met. Otherwise, set m  m  1 and return to step 3.
In step 7, the Lagrangian multipliers are calculated using restricted relaxed problem solution
RR
R
unless violatntotal
. Problems in step 1 are independent and can be solved in parallel.
 violatntotal
Similarly, optimization models (P1) and (P2) in step 3 and models (P1-R) and (P2-R) in step 4 are
independent of each other and can be solve in parallel to reduce computational time. The
flowchart of the framework for the algorithm is given Figure 5.5.
138
Solve (PC-j) and (PC-s)
Initialize
,
,
and Lagrange multipliers
Solve (P1) and (P2)
Solve (P1-R) and (P2-R)
Solve corresponding
infeasible problem
No
Sub-problems
feasible
Yes
No
Yes
If
Yes
,
,
If
Done
If
Solve IP-U
,
Terminating
Criteria
No
Update multipliers
Figure 5.5. Algorithm for the proposed restricted-Lagrangian decomposition (restricted-LD)
139
5.7. Computational results
The computational results are obtained on Dell Precision (IntelR XeonTM with CPU 3.20
GHz, 3.19 GHz, and 2 GB memory) running on Linux using CPLEX 12.3.0/GAMS 23.7.2 to
demonstrate their effectiveness in solving oil-refinery scheduling problems using 6 different
examples, where each example differs in either demands values, intermediate due dates, and
initial hold up in the tank. The Lagrangian algorithm is set up in MATLAB and interfaces with
GAMS to solve scheduling problems. The algorithm is evaluated with three performance
measures: duality gap, number of iterations, and computational time (seconds). The maximum
solution time of 28,800 CPU seconds is used for full-scale problem and for the decomposed
problem maximum solution time of 3,600 CPU seconds is used. Optimality tolerance of 1e-6 is
used as termination criteria for all examples solved using CPLEX. For the algorithm, the
maximum number of iteration is set to 100,   16 , and K = 2.
Table 5.1 Model statistics for preprocessing problems
(PC-j)
(PC-s)
Diesel Blender
Jet Blender
Event pt.
3
3
3
Int./Cont. var.
120/924
120/980
120/978
(Constraints)
(2425)
(2425)
(2425)
Nonzero Elem.
7753
7813
7813
The preprocessing problems for each blend components and blend units are solved before
Lagrangian algorithm is implemented. The model statistics for preprocessing models are
presented in Table 5.1 and these models are solved in less than 1 CPU seconds. The model
statistics for full-scale integrated model and relaxed sub-problems for 6 different examples are
shown in Table 5.2. Total number variables in restricted relaxed sub-problems, (P1-R) and (P2-
140
R), are same as that of corresponding relaxed models because (P1-R) and (P2-R) are obtained by
restricting solution space by including additional constraints and fixing values of certain
binaries/continuous 0-1 variables in corresponding relaxed models, (P1) and (P2).
Table 5.2 Model statistics
Blend scheduling model (P1)
Full Scale
Production scheduling
Event pt.
Model
model (P2)
Int./Cont. variables
Ex
#
Event pt.
Event pt.
(Constraints)
.
Orders
Int./Cont. var.
Int./Cont. var.
Nonzero Elem.
(Constraints)
(Constraints)
Diesel
Nonzero Elem.
Jet Blender
Nonzero Elem.
Blender
1
2
3
4
5
5
5
5
360/2663
127/958
33/247
200/1526
(6387)
(2489)
(717)
(4649)
22633
9819
2323
15394
5
5
5
5
360/2663
127/958
33/247
200/1526
(6379)
(2481)
(717)
(4649)
22569
9760
2329
15405
5
5
5
5
360/2663
127/958
33/247
200/1526
(6379)
(2480)
(717)
(4649)
22569
9725
2324
15395
5
5
5
5
380/2771
139/1022
41/291
200/1526
4
4
4
6
141
5
6
(6741)
(2695)
(847)
(4648)
24018
10598
2794
15399
6
6
6
6
484/3453
184/1309
60/402
240/1835
(8644)
(3649)
(1272)
(5794)
31765
14956
4384
19442
7
7
7
7
736/5005
277/1829
83/530
280/2146
(13394)
(5585)
(1833)
(7027)
53145
23804
6643
23903
8
13
The computational results for full-scale model and Lagrangian algorithm are shown in
Table 5.3. Proposed restricted-Lagrangian decomposition algorithm is quite effective for these
refinery scheduling problems and we obtain good solutions to the scheduling problem. Figure 5.6
to Figure 5.11 shows the convergence of upper and lower bound using the classical LD and
restricted LD algorithms in examples 1-6, respectively. The proposed restricted-LD algorithm
outperforms classical Lagrangian decomposition in terms of quality of the solution, duality gap,
number of iterations, and computational time. In classical approach, the lower bound is obtained
solely from relaxed problem‟s solution, whereas proposed restricted-LD picks the best lower
bound between the solution of relaxed problem and restricted relaxed problem. Thus, restrictedLD lower bounds take into consideration the continuous process characteristic of the refinery
units and gives better lower bound as observed in Figure 5.6 to Figure 5.11.
In most cases, both algorithms provide an upper bound closer to the optimal solution of
original problem in first iteration because feasible problem is constructed using restricted relaxed
problem solutions and has flexibility of obtaining a better solution because only the certain
binaries are fixed to 1 and none are fixed to 0. In situation where first iteration doesn‟t provide an
142
upper bound closer to optimal solution, the upper bound improves vastly early on and ultimately
provides a better solution. In example 5, the first iteration provides an upper bound that is very far
from an optimal solution, however, it improves greatly in second iteration, and by fifth iterations
it‟s almost closed to the optimal value. After finding the best upper bound early on, both
algorithms spend rest of the computational time proving optimality.
Table 5.3 Computational Results
Full Scale Model
E
x
Gap
CPU
z
Classical LD
Restricted LD
  1.50,  0.8
  1.20,  0.7
Gap
CPU
Total
z
(%)
sec
Gap
CPU
Total
(%)
sec
Iter
z
(%)
sec
Iter
1
450.77
0.00
342
450.77
29.34
652
43
450.77
-0.21
113
11
2
598.64
0.00
367
598.64
5.92
2133
57
622.91
0.15
251
9
3
6222.54
0.00
8952
6222.54
1.49
15304
71
6222.54
0.79
3245
14
4
592.81
0.00
1535
602.33
25.22
1048
26
592.81
0.95
1225
40
5
503.19
0.00
6458
504.25
12.62
1234
22
503.86
7.72
2652
20
6
749.35
72.8
28800
552.50
18.04
36865
20
512.65
-0.86
20490
15
The performance (duality gap) of restricted-LD algorithm is better than that of classical
approach because restricted-LD is able to improve lower bound faster than classical LD.
Proposed restricted-LD provides better duality gap than classical LD and restricted-LD is
terminated in almost all cases when gap is less than 1% as shown in Table 5.3. In case of classical
decomposition approach, the algorithm was terminated for all examples when the step size meets
the predefined tolerance of 1e-6. The step size reaches the tolerance faster because we cut the step
size parameter  ( m) by half if the lower bound does not improve after 2 iterations. Even when the
duality gap is high, the upper bound is closer to the original problem optimal solution in both
algorithms.
143
Table 5.4 Time spent (%) in each step compared to the total solution time of Lagrangian
decomposition algorithms
Problems
Relaxed
Ex. 1
Ex. 2
Ex. 3
Ex. 4
Ex. 5
Ex. 6
77.32 91.47 98.28 90.78 94.16 93.31
Classical
Restricted relaxed 11.48
4.40
0.96
4.17
2.80
2.95
4.13
0.75
5.05
3.04
3.74
LD
Feasible
11.20
Relaxed
68.12 87.92 98.76 89.61 97.48 91.96
Restricted
Restricted relaxed 13.26
4.94
0.49
4.19
1.31
7.96
7.14
0.75
6.19
1.21
0.076
LD
Feasible
18.63
Table 5.4 compares the computational effort exerted to solve relaxed problem, restricted
relaxed problem, and feasible upper bounding problem. As expected, majority of the time is spent
in solving relaxed problem. Classical LD takes 652 CPU seconds to solve example 1 and spends
77.32% of the total time on solving for relaxed problem and only 11.48% on solving restricted
relaxed problem. Similarly for restricted-LD, example 1 takes 68.12% of the total computational
time on solving relaxed problem, 13.26% on solving restricted relaxed problem, and 18.63% on
solving upper bounding problem MILP problem. Even for the large scale complex problem given
in example 6, the upper bounding MILP problem can be easily solved. Computational time can be
further improved by solving relaxed sub-problems in parallel and similarly restricted relaxed
problems can be solved in parallel.
144
Figure 5.6 Convergence of upper and lower bound of Lagrangian decomposition for example 1.
145
Figure 5.7 Convergence of upper and lower bound of Lagrangian decomposition for example 2.
146
Figure 5.8 Convergence of upper and lower bound of Lagrangian decomposition for example 3.
147
Figure 5.9 Convergence of upper and lower bound of Lagrangian decomposition for example 4.
148
Figure 5.10 Convergence of upper and lower bound of Lagrangian decomposition for example 5.
149
Figure 5.11 Convergence of upper and lower bound of Lagrangian decomposition for example 6.
5.8. Summary
This chapter introduces a Lagrangian decomposition framework, restricted Lagrangian
relaxation problems for integrated production unit scheduling and finished product blending and
delivery scheduling problems. The algorithm is built based on the mathematical formulation
given in Chapter 4. A restricted relaxed Lagrangian problem is constructed to facilitate generation
of tighter upper bound in each iteration. Restricted relaxed sub-problems are based upon the
solution of Lagrangian relaxed sub-problems and solution of restricted relaxed problem takes into
consideration the continuous process characteristic of rundown streams. To improve the
performance of the algorithm, a preprocessing step, constraints for decomposed sub-problems,
and inclusion of the best upper bound‟s solution in lower bounding problems are proposed. The
150
proposed restricted relaxed sub-problems produce better lower bounds and better upper bounds.
Computational results of a real case study show that the proposed algorithm is very effective and
provide better solutions in reasonable times.
Nomenclature
Indices
i
Tasks
j
Production units
k
Storage tanks
n
Event-points
m
Lagrangian algorithm iteration counter
o
Product order
p
Properties
s
States
t
Continuous time-points similar to event-points
Sets
Ij
Tasks which can be performed in unit j
I sc / I sp
Tasks which can consume/produce material s
J
All Production units
J BU
Blend units
J PU
Production units that belong to production unit operations
J sc / J sp
Units that consume/produce material s
Ji
Units which are suitable for performing task i
Jh
Units that can produce all the same products as some other unit in the
151
refinery
Jm
Units which are suitable for performing multiple tasks
J seq
j
Units that follow unit j (no storage in between)
J kkp / J kpk
Units that consume/produce material s stored in tank k
JP
Units that produce products
K
Storage tanks
Kh
tanks that can store the same products as some other tank in the refinery
pk
K kp
j / Kj
Tanks that store material consumed/produce by unit j
Km
Multipurpose tanks that can store multiple materials
Kp
Tanks that can store final products
Ks
Tanks that can store material s
N
Event-point within the time horizon
O
Orders for products that are stored in tanks
Os
Orders for finished product s
P
Product Properties
S
States
SA
Group A products, stored in tanks
SB
Group B products, not stored in tanks
Sbc
States that are blended by blend-units
Sk
States that can be stored in tank k
Sic / Sip
States that can be consumed/produced by task i
S cj / S jp
States that can be consumed/produced by unit j
Parameters
152
Do, s , Do, s
Demand limit requirement for order o and product s that is stored in tank
max_rates
Maximum rate of production of material s
oto,i
1 if task i is performed when order o of PUSP is processed by BSP.
rs
Demand of the final product s at the end of the time horizon
RBmin
/ RBmax
j
j
minimum and maximum production rate of a blend unit j
RPjmax
Maximum rate material is supplied by (PSP) to blend unit j
RPsmax
Maximum rate blend component s is supplied by (PSP) to blend unit j
max
Rimin
, j / Ri , j
Minimum/ maximum rate of material be processed by task i in unit j
RLi
Minimum run length for task i
RU kmin / RU kmax
Minimum/maximum rate of product unloading at tank k
stos , k
Amount of state s that is present at the beginning of the time horizon in k
tak
Fill draw delay for product tank k
UH
Available time horizon
Vkmax
Maximum available storage capacity of storage tank k
Vkheel
Maximum heel available for storage tank k
yos , k
1 if the material s is present at the beginning of the time horizon in k
max
smin
,i /  s ,i
Proportion of state s produced/consumed by task i
max
bsmin
, j /  bs , j
Minimum/maximum proportion of blend component s consumed by blend
unit j
Variables
Binary Variables
wvi , j , n
Assignment of task i in unit j at event-point n
ins , j , k , n
Assigns the material flow of s into storage tank k from unit j at point n
153
Assigns the starting of product flow out of product tank k to satisfy order o
lk ,o, n
at event-point n
outs , k , j , n
Assigns the material flow of s out of storage tank k into unit j at point n
ys , k , n
Denotes that material s is stored in tank k at event-point n
0-1 continuous variables
 j ,n
For unit j, 1 if the unit becomes active for very first time at event-point n
k , n
For tank k, 1 if the tank becomes active for very first time at event-point n
s , s , k , n
1 if material in tank k switchover service from s at event-point n to s‟ at later
event-point
 os , s, k
1 if material in tank k switchover service from s to s‟
i , i , j , n
1 if task at unit j changes from i at event-point n to i’at later event-point.
a j ,n
Assigns the materials flow to blend unit j at event-point n
x j , n ,t
Denotes that blend unit j is active at event-point n and time-point t
Positive variables
bps ,i , j , n
Amount of material s produced task i in unit j at event-point n
bcs ,i , j , n
Amount of material s undertaking task i in unit j at event-point n
Amount of blend component s consumed/supplied at blend unit j at time-
Cf sB, j ,t / Cf sP, j ,t
point t
dgol
Minimum demand quantity give-away term for order o
dgou
Maximum demand quantity give-away term for order o
H
Total time horizon used for production tasks
JJf s , j , j , n
Flow of state s from unit j to consecutive unit j’ for consumption at point n
Kif s , j ,k ,n
Flow of material s from unit j to storage tank k event-point n
154
Kof s , k , j , n
Flow of material s from storage tank k to unit j at point n
Lfo, k , n
Flow of final product for order o from storage tank k at event-point n
mhs , k , n
Maximum heel give-away term for product tanks
rgs
Minimum demand quantity give-away term for Group B product s
Rif s , k , n
Flow of raw material to storage tank k event-point n
sts , k , n
Amount of state s present in storage tank k at event-point n
Amount of state s that is downgraded to state s‟ in storage tank k at event-
std s , s, k , n
point n
Tearlyo
Early fulfillment of order o than required
Tfi , j , n
Time that task i finishes in unit j at event-point n
Tf jB,t / Tf jP,t
Finish time for materials consumption/supply at blend unit j at time-point t
Tlateo
Late fulfillment of order o than required
Tosk ,o, n
Time that material starts to flow from tank k for order o at event-point n
Tof k ,o, n
Time that material finishes to flow from tank k for order o at event-point n
Tsi , j , n
Time that task i starts in unit j at event-point n
Ts Bj ,t / Ts Pj ,t
Start time for materials consumption/supply at blend unit j at time-point t
Tsf j , k , n
Time that material finishes to flow from unit j to tank k at event-point n
Tsf k , j , n
Time that material finishes to flow from tank k to unit j at event-point n
Tss j , k , n
Time that material starts to flow from unit j to storage tank k
Tssk , j , n
Time that material starts to flow from tank k to unit j at event-point n
Uif s , j ,n
Flow of raw material s to production unit j at point n
Uof s , j , n
Flow of product material s from unit j at point n
UUf j , s ,v , n
Amount of state s received by unit j at period v is processed at event n
155
z
Objective value of full-scale integrated model
156
Chapter 6
6. Efficient Decomposition Approach for Large Scale Refinery Scheduling
This chapter proposes a heuristic algorithm for integrated scheduling of refinery production unit
operations and finished product blending and delivery operations. This work addresses the
interdependences of the production unit operations and finished product blending and delivery
operations in the refinery that has components streams coming directly from process units to
blend headers with no components storage options available. To apply the proposed iterative
algorithm, the integrated oil-refinery scheduling problem is decomposed into production unit
scheduling problem and into finished product blending and delivery scheduling problem. The
goal of the algorithm is to obtain a feasible solution that satisfies products demands commitments
with minimum demurrage violations while minimizing inventory cost and penalties subject to
product and logistics giveaways. The applicability of the algorithm is illustrated by a realistic
large-scale refinery case study producing diesel and jet fuel. Significant savings are realized in
the computational effort.
6.1. Introduction
Even with inclusion of valid inequalities the refinery operations scheduling model is still
computationally prohibitive. The mathematical decomposition approach presented in previous
chapter can lead to global optimal solution, however for practical application where the need for
feasible solution is greater than obtaining the best solution possible, the solution times of
mathematical decomposition is undesirable. For this situation, heuristics approach exploiting
inherent structure of the problem alongside insight into the makeup of a feasible solution provides
an alternative to massive full-scale optimization problem or over mathematical decomposition.
Furthermore, heuristics approach can be used as preprocessing step for mathematical
decomposition solution strategy to reduce complexity of the original model (i.e. reduce feasible
157
solution space). (Amaldi et al., 2008; Arief et al., 2007; Cornillier et al., 2008; Karuppiah et al.,
2010; Kelly, 2003b; Roslof et al., 2002)
Usually blend component tanks are present when the blending and delivery sub-problem is
addressed without simultaneously addressing production unit scheduling problem. However,
when blend components tanks are not available, blend units are directly connected to the
upstream production units. In order to comply with the finished blend product properties
specifications, blend recipe needs be determined by considering the production constraints of
upstream processes so that the blend components production and consumption rate is consistent
across two scheduling decision levels. These interdependences of the blending operations and
production unit scheduling operations require an integrated approach to the refinery scheduling.
In this work, we decomposed the large-scale integrated problem into a production unit
scheduling problem and a finished product blending and delivery problem. A heuristic algorithm
is proposed based on the decomposed network to obtain a good solution of the original integrated
problem in reasonable computational times. The algorithm is built upon the mathematical
formulation developed given in Chapter 4. The proposed decomposition approach focuses on
effectively solving the decomposed problem to obtain a feasible solution that satisfies demands
while minimizing due date violations, product giveaway, task changeovers at multipurpose blend
units and tanks, and inventory costs.
The outline of the chapter is as follows. Section 6.2 presents additional valid inequalities,
section 6.3 presents proposed solution approach and the heuristic algorithm is discussed in section
6.4. A realistic case study presented in section 4.2.1 is used to illustrate the applicability of the
proposed algorithm to a large-scale model in section 6.6.
6.2. Mathematical Formulations
Mathematical formulations proposed earlier for the oil-refinery operations scheduling problem is
based on the continuous time representation and an idea of unit-specific event points. (M. G.
158
Ierapetritou & C. A. Floudas, 1998; M.G. Ierapetritou & C.A. Floudas, 1998; Ierapetritou et al.,
1999) State-task network (STN) representation introduced by Kondili et al. (1993) is used in
formulating the problem. Event based formulation enables the representation of time in a
continuous manner without unnecessary time slots or intervals. Although the location of the event
points is unknown, the number of event points has to be considered initially. It is not
straightforward to know the minimum number of event points needed to achieve the global
optimum solution. Choosing a large number of event points makes it more likely to achieve the
global optimum solution but it also results in larger solution times. A number of advances of the
original methodology have been proposed in the literature to improve the scheduling formulation.
(Janak et al., 2004; Mouret et al., 2011) The model involves material balance constraints, capacity
constraints, demand constraints, quality constraints, logistics constraints, and setup constraints.
The demand constraints ensure that all the products demand are satisfied while the quality
constraints ensures that product quality specifications are met. To preserve the linearity of the
formulation, linear blending rules are considered. The logistics constraints include all the
operational rules presented in the previous section and the setup constraints models the activation
of parallel production units and parallel storage tanks during the scheduling horizon. Due to
production capacity limitation, downgrading of a higher quality product to a lower quality
product may be necessary to satisfy demand on time and constraints are added in the model to
formulate product downgrading in multipurpose storage tanks. If a feasible solution that satisfies
all the quantity and logistics constraints cannot be obtained, then it is essential to produce a
schedule that can still be implemented in real-life oil-refinery sacrificing model feasibility. In this
case, we introduced artificial variables to treat any infeasibility present and these variables are
subsequently penalized in the objective function to obtain an optimal solution that satisfies as
many as possible from the quantity logistics constraints by minimizing giveaways.
The objective function (1) is used to maximize the performance, minimize inventory
costs and product demands and intermediate due-dates violations.
159

z
i , jJ i , n
ci1, j wvi , j , n 



k K p , o , n
ci6,i   i ,i , j , n 
jJ , iI j , i I j , i   i , n
m



c
sS B

s , k K s
ck3 sts , k , N 

c 4j  j , n 
j J h , n

c std s , s , k , n 
9
k

k K m , sS k , n

ck5  k , n
k K h , n
cs7, s  os , s , k 
k K , sS k , s S k , s  s 
m
k K m , sSk , s S k , s  s , n
13
s
ck2 lk ,o , n 

cs8, s  s , s , k , n
k K , sS k , s S k , s  s  , n
m
c mhs , k , n   co11dg ol   co12 dg ou
10
s,k
oO
(1)
oO
rg s   c Tearlyo   c Tlateo
oO
14
o
oO
15
o
The oil-refinery performance is represented by longer run-modes ( wvi , j ,n , lk ,o,n ) and minimization
of inventory ( sts ,k ,n ), start up set-ups (  j , n , k ,n ), changeovers ( i ,i, j ,n ,os, s, k ,s, s, k , n ), maximum
heel violations ( mhs ,k ,n ) and production downgrading ( std s , s,k ,n ). Logistics giveaways, under and
over production, and demurrage are penalized. The penalty weights are assigned arbitrarily to
each term depending on its importance in schedule. The deviation from intermediate due dates (
Tearlyo , Tlateo ) and under/over production of finished products ( dgol , dgou , rgs ) are heavily
penalized. It is favorable that the multipurpose product tanks store different grade products only
in a certain order that is allowed by the sequence dependent switchovers constraint. The favorable
switchovers are from higher grade of product to lower grade and unfavorable switchovers are
from lower grade to higher grade product. Due to contamination issues, unfavorable switchovers
are more heavily penalized than favorable. Similar to multipurpose tanks, there is a sequence
dependent switchover restriction for multipurpose blend units. Note that the different penalty
parameters have significant effect on the computational time required to obtain an optimal
solution.
All these constraints and objective function give rise to a large scale, incomprehensible
mixed integer linear programming (MILP) model that becomes computationally expensive to
solve using standard optimization software to optimality.
Valid Inequalities
160
To improve the computational efficiency, valid inequalities for the refinery scheduling
model are introduced in previous chapter. These valid inequalities are based on certain logistics
and operational rules and material balance. These inequalities are redundant to the original model
because the optimizer will eventually discards infeasible solution and arrive at a feasible solution.
Thus, these inequalities do not cut feasible solutions space but rather eliminate the region of
infeasible solution explicitly instead of waiting for optimizer to reach that conclusion.
Application of valid inequalities in scheduling model to speed up convergence to optimal solution
can be found in work of Velez et al. (2013), G. K. D. Saharidis and Ierapetritou (2009), and Khor
et al. (2012).
The valid inequalities that are included in the full-scale integrated model used in this
work are as follows:
Constraint (1a) connects total amount of material consumed and produced at unit j and event
point n in a form of inequality since material balance constraints present in the fullscale model
uphold material balance requirements.


Kof s , k , j , n 
JJf s , j , j , n  Uif s , j , n 
p
j J seq
j Js
k K kp
j  Ks

k K jpk
Kif s , j , k , n 

JJf s , j , j , n  Uof s , j , n , j  J , n  N
(1a)
c
j J seq
j Js
 Ks
Constraints (1b-1d) reaffirms binary variable ys,k ,n to be 1 if there is material s flowing in and out
of the storage tanks k at given event point n.
 in
s, j ,k ,n

jJ kpk
 out
jJ kkp

ys , k , n , k  K , s  S k , n  N
jJ kpk
s, j ,k ,n


jJ kkp
ys , k , n , k  K , s  S k , n  N
(1b)
(1c)
161
l
oOs
 ys , k , n , k  K bp , s  Sk , n  N
k ,o, n
(1d)
If the tank is sending or receiving material s from a production unit j at event point n, then that
unit will be active at event point n and these allocation requirements are represented by equations
(1e-1f).

ins , j , k , n 

outs , k , j , n 
k K jpk
 Ks




k K jpk
wvi , j , n , j  J pk , s  S jp , n  N
(1e)
wvi , j , n , j  J kp , s  S cj , n  N
(1f)
 K s iI j  I sp
c
k K kp
j  K s iI j  I s
k K kp
j Ks
Constraints (1g-1h) asserts material s flow in/out of tanks to be active at event point n if the unit j
is processing the material at that event point.

ins , j , k , n 

outs , k , j , n 
k K jpk

wvi , j , n , j  J pk , s  S jp , n  N
(1g)
wvi , j , n , j  J kp , s  S cj , n  N
(1h)
iI j  I sp
 Ks

iI j  I sc
k K kp
j  Ks
In addition to the valid inequalities proposed in our earlier work, we propose here some
new valid inequalities to further improve the computational performance.
If two units are consecutive without any storage tank between them, then constraint (1i) affirms
the simultaneous operation of these units due to the continuous operation mode. However, this
constraint is not imposed on parallel production units that can produce the same type of products.
For units that follow or are followed by parallel units, valid inequalities (1j-1l) are included.
 wv
iI j
i, j ,n

 wv
iI j
i , j , n
, j  J / J h , j   J / J h , j  j , j   J seq
j ,n  N
(1i)
162
 wv

 wv

 wv

iI j
iI j
iI j
i, j ,n

wvi , j , n , j  J h , n  N , and j   J h , j  J seq
j
(1j)

wvi , j , n , j  J / J h , n  N , and j   J h , j  J seq
j
(1k)
j J h , jJ seq
j , iI j
i, j ,n
j J h , jJ seq
j , iI j
i, j ,n
j J
h

wvi , j , n , j  J / J h , n  N , J seq
Jh  
j
(1l)
 J seq
j , iI j
As mentioned earlier, the demand order set O is arranged according to the ascending due date
start time. That is, timeso  timeso , o, o  o, o  o . Operational requirement for the finished
blend product tank is that loading and unloading cannot happen at the same time, thus if the
material is unloaded at tank k at event point n+1 then the tank should not be empty at previous
event point n . This is condition is captured by equation (1m).
l
k , o , n 1

o
y
sSk
s,k ,n
, k  K bp , n  N , n  N
(1m)
The demand order set O is arranged in chronologically ascending order based on intermediate
due-dates. We apply inequality (1n) to require that the demand order o to be satisfied by product
tank k earlier than order o  o . Furthermore, if the initial inventory of the products is less than
the required total minimum demand orders, then the production should take place before the
demand is fulfilled. This requirement is upheld by constraint (1o) where prs 
lk , o  , n 

k K s , n   n
lk , o , n 

lk ,o , n , k  Kbp , s  Sk , o  Os , o  Os , o  o, n  N
iI sp , jJ i , n   n
wvi , j , n , s  S A  Sbp , k  K s , o  Os , prs  0, n  N , n  1
D
oOs

o, s

 sto
k K s
s,k
.
(1n)
(1o)
The mathematical formulation presented in presented in last chapter, inequalities (1a-1o), and
objective function (1) comprise the large-scale MILP model for an integrated scheduling
problem.
163
6.3. Solution Strategy
In this section, we propose a heuristics-based algorithm for solving full-scale integrated
problem within reasonable computational times. The algorithm involves solving independent subproblems in an iterative fashion until a feasible solution is found. Spatial decomposition is
applied to refinery system under study as shown in Figure 6.1, to obtain smaller sub-problems
that are easier to solve than full-scale integrated problem. (Jia & Ierapetritou, 2003; Karuppiah et
al., 2008) The refinery system under study involves rundown blending operations, thus overall
refinery structure is decoupled by splitting the blend components stream originating from process
units operations and supplying directly to blend headers. This decoupling produces two
scheduling sub-problems relating to the production unit operations and blending and delivery
operations of finished products, respectively. The complicating variables associated with split
pipelines are defined differently in decomposed scheduling sub-problems than are in the
integrated problem. Production unit scheduling problem defines variables associated with
component streams as demand variables whereas blend scheduling operations defines the
component flow variables as raw materials variables, as seen in Figure 6.1. Hence, the main goal
of the production unit scheduling sub problem (PSP) is to satisfy the demand requirement of final
products that belong to set S B and demand of the blend components required by the blend
scheduling sub problem. Similarly, the purpose of the blend scheduling sub problem (BSP) is to
satisfy the demand of the finished blend products by mixing the raw materials (blend
components), supplied by PSP, following the blend recipe and product property specifications.
164
Intermediate
Products
Finished
Blend
Products
Production
CDUs
units
Storage and
other
Production
units
Blend
headers
Production Unit
Operations
Shipping/lifting
points
Product
tanks
Product Blending
and Delivery
Figure 6.1 Decomposition of an oil-refinery operations network by splitting blend components
pipelines
Dummy Tanks
for Blend Components
Production Scheduling Problem
….
…...
…...
…...
Production Unit
Operations
Blending and Delivery
Operations
Blend Scheduling Problem
Figure 6.2 Illustration of scheduling sub-problems obtained by splitting component flow streams
connecting process units directly to blend headers
In refinery system under study, blend components flow from process units to blend headers
happen simultaneously with blending operations. Thus, in decomposed system, production unit
165
scheduling problem needs to satisfy demand of blend components within certain time frame. We
introduce dummy tanks for blend components in PSP as seen in Figure 6.2 for ease of imposing
strict intermediate due-dates for components demand. These dummy tanks acts as product storage
tanks in PSP but have different operational rules than finished blend product tanks. These
operational rules as follow:
-
Each dummy tank are dedicated to a blend component
-
Simultaneous loading and unloading of blend components
-
No accumulation of component at the end of an event-point
-
Dummy tanks can supply components to multiple blend headers at same time
-
Multiple tanks supplying directly to the same blend header must do so at the same time
Constraints relating to these rules are presented in detail later, but first, a general outline of the
proposed iterative algorithm is presented in Figure 6.3. The algorithm solves BSP, PSP and
restricted BSP in iterative fashioned until a global feasible solution that satisfies the final products
demand requirements while minimizing demurrage. Here, the restricted blend scheduling problem
(RBSP) is derived by limiting the feasible solution space of BSP based on solutions of PSP and
BSP.
Blend Scheduling Problem (BSP)
Demand targets for
Blend components
Production Unit Problem (PSP)
Supply of Blend
components
Restricted Blend Scheduling
Problem (RBSP)
Integer Cuts
166
Figure 6.3 Proposed solution approach.
The details of BSP, PSP, and RBSP are presented in the following sub-sections. These
problems include all the constraints present in the full-scale model and some additional
constraints that are necessary to facilitate the convergence to a global feasible solution at the end
of iteration. The demand constraint is given in equation (2) and a feasible global solution of the
heuristic algorithm must satisfy the minimum demand requirements hence demand give-away
variables dgol  0 and rgs  0 in equation (2).
Do, s  rs  dg ol  rg s    Lf k ,o , n   Uof s , j , n  Do, s  dgou , s  Sb , o  Os  s  S f
k ,n
j ,n
(2)
6.3.1. Blend Scheduling Problem
Blend scheduling problem (BSP) involves blend headers, finished blend products storage
tanks, delivery of these products according to intermediate due-dates and raw materials being
supplied directly to blend headers. Refinery may include more than one blend headers producing
multiple blend products. In the event that refinery has more than one blend header, we can further
decompose BSP into smaller scheduling sub-problems depending upon the interactions between
blend headers. The blend scheduling sub-problems must not share common blend components
and finished product tanks and should produce different types of finished blend products. Hence,
blenders using shared components must be jointly optimized. Decomposed independent blend
scheduling sub-problems can be solved in parallel.
The mathematical model for BSP contains all the constraints that are present in the
original model presented in chapter 4 and some additional constraints. To obtain a solution that
provides minimum amount of blend component necessary for satisfying finished product
demands, we fix the maximum finished blend-product demand to the minimum demand
167
requirement, that is, Do, s  Do, s . Furthermore, the demand give-away variables are fixed to zero,
dgol  0, dgou  0 . Thus, the demand constraint is rewritten as follow for BSP:

k K s , n
Lf k ,o , n  Do, s , s  S A , o  Os
(3a)
Where, parameter Do, s .is a minimum demand of product s and order o and variable Lf k ,o,n
is the flow of product from product tank k to satisfy to order o at event-point n. Furthermore,
instead of having amount of product satisfied by tank k to be bounded by minimum and
maximum unloading rate, RU kmin and RU kmax , as is in full-scale model; for BSP, unloading rate is
fixed to the maximum and the capacity constraints given in original model can be restated as
follow:
Lf k ,o , n  RU kmax Tof k ,o , n  Tosk ,o , n  , k  K p , o  O, n  N
(3b)
To consider the production capacity of the process units producing blend components,
maximum blend components flow rate constraint (3c) is included. The maximum blend
components flow rate ( max_rates ) parameter is determined a priori using the maximum
production recipe and maximum production capacity of the process units.
Uif s , j , n  max_rates Tf i , j , n  Tsi , j , n   UH 1  wvi , j , n  , j  J b , i  I j , s  Sic , n  N
(3c)
Furthermore, we can reduce the feasible solution space by not allowing the production to
take place at the very last event point since the blend scheduling problem must respect the loading
and unloading restrictions of product tanks, which means that material produced at the last event
would not contribute to satisfying the demand and would just accumulate.
wvi , j ,n  0, j  J b , i  I j , n  N , n  N
(3d)
168
Restriction given in equation (3d) reduces the computational cost involve solving BSP
without sacrificing an optimal solution of BSP.
6.3.1.1.
Acquiring Parameters for PSP and RBSP from Solution of BSP
The optimal solution of the BSP provides the information regarding the amount ( Uif s , j ,n ) of blend
component s flowing into each blend header j at event point n to produce blend product s using
task i. The start and finish time ( Tsi , j ,n and Tfi , j ,n ) of the blend component flow into the unit is also
available. Based on this information, we derive demand, due dates, and other parameters for the
production unit scheduling problem.
Each blend header gives rise to Sbcj  n j demand orders o  O j that needs to be satisfied by
PSP. Here, Sbcj  S cj  Sbc and Sbcj is the cardinality of the set Sbcj , n j   wvi , j , n , and O j is a set
i,n
of demand orders comprising of blend components consumed by blend unit j. Parameter
MN  max  n j   1 . The parameter oto,i is 1 if task i is performed by a blend header j when order o
j
is processed. A parameter ato  1 for the demand orders determined using the solution of BSP.
The active event points of each blend unit j are used to assign values to demand orders as:
Do, s  Uf s , j ,n , Do, s  Uf s , j ,n , timeso  Tsi , j , n , timefo  Tfi , j , n , and oto,i  wvi , j ,n . That is, if a given blend
header is active for 3 event points and can blend 3 components, a total of 9 active demand orders
correspond to the blend header, as seen in Figure 6.4.
In order to take into consideration the interactions of the production units in PSP and to allow
flexibility for over production, Sbcj additional demand orders are included to the set O j . These
additional demand orders are also necessary to satisfy group B product demands and to meet
blend component due-dates without causing infeasibility in PSP. These demand orders have
values of Do, s  0 , Do, s  M , timeso  0 , timefo  UH . Parameter oto,i for these additional demand
169
orders is equal to the task mode of the last active event point ( n j ) so that the task changeovers
cost is minimized. Each demand order only corresponds to one blend component, thus the
cardinality of the order set O for PSP is

j J
Sbcj   n j  1 . Demand orders greater than Sbcj  n j do
B
not need to be satisfied by PSP and are called non-active demand orders and ato  0 . In Figure 6.4,
demand orders o10, o11, and o12 are non-active demand orders.
n1, i2
o1
o2
n2, i3
o3
o4
o5
n4, i1
o6
o7
o8
o9
o10 o11
o12
Figure 6.4 Determining parameters for PSP using a solution of a blend header j
Flow into a
product tank k
Flow out of
a tank k
x
y
Figure 6.5 Determining parameter tupo for PSP using the corresponding blend header j
The in-line blender mixes multiple components at the same time to produce final
products, thus we introduce a parameter bo j ,o to capture the relation between different demand
orders for a blend unit j. As mentioned before, each blend unit has Sbcj  n j  1 demand orders
belonging to set O j . We assign the value of 1 to the first set of demand orders that are processed
at the same time by the blend unit j. For the last set of demand orders, bo j ,o  n j  1 . Note that the
170
set O j is arranged in an ascending chronological order based on due-date. Figure 6.4 shows how
active demand orders are assigned and how parameter bo j ,o is determined.
To minimize demurrage violations for finished blend-products in the optimal solution of
RBSP, a feasible solution of PSP should satisfy blend components demand within certain time
frame. For this purpose, a parameter tupo is determined from the optimal solution of BSP. A
product tank k receives finished product produced by blend unit j to satisfy finished product
demand within the due date window. From the optimal solution of BSP, we know which tank
receives the product produced by the blend unit when processing PSP blend component demand
order o and we can determine the very first finished product demand order o that is satisfied by
the product tank. We use the end time ( Tsf j ,k ,n ) of the material flow into the tank k, start time (
Tosk ,o, n ), finish time ( Tof k ,o, n ) and a due date ( timeso - timefo ) of the first demand order o satisfied
by the tank k to determine tupo as shown in Figure 6.5. Here, parameter tak is fill-draw-delay for
the product tank and tupo is the maximum demurrage violation that can be incurred by blend
component demand order o that is satisfied by PSP without demurrage violation of finished
product due date in RBSP. Another parameter that is determined from the optimal solution of
BSP is  j ,i ,i . Parameter  j ,i ,i is 1 if the changeover of service from task i to i' at blend unit j
happens at any time during the scheduling horizon,

i ,i , j , n
 0 , otherwise it is 0. The
n
parameters Do, s , Do, s , timeso , timefo , oto,i , bo j ,o , ato , tupo , and  j ,i ,i are obtained from the optimal
solution of BSP and are used in formulating the production unit scheduling problem and at least
 MN  1 event points are needed to solve the PSP in order to obtain a feasible solution.
6.3.2. Production Unit Scheduling Problem
Goal of production unit scheduling (PSP) is to satisfy demands of intermediate products (
S B ) and blend components. To this end, PSP is solved using the parameters determined from the
171
optimal solution of BSP. Formulation for PSP follows the original model expect that few new
constraints are added and some existing constraints are eliminated to obtain a feasible solution
that satisfy group B products demand ( rgs  0 ). The oil-refinery system under study in this work
does not possess blend components storage tanks. However, to model the intermediate due dates
for blend components, we have introduced Sbc dedicated storage tanks for blend component
products. These artificial product tanks have zero accumulation at the end of each event-point as
given by equation (4a). Thus, material balance constraint for tanks present in Chapter 4 is
rewritten as equation (4a‟) for blend components tanks.
sts , k , n  0, s  Sbc , k  K s , n  N
sts , k , n 
 Kif
jJ kpk
s, j ,k ,n
  Lf k ,o , n , s  Sbc , k  K s , n  N
(4a)
(4a‟)
oOs
In the full-scale model, the finished blend product tanks have the restriction of not
loading material out of a tank when there is a material flowing into the tank. For PSP, to satisfy
material balance of the blend component tanks, it is imperative to have simultaneous flow of
material into and out of these tanks. Furthermore, since material flow in and out of these tanks
should happen at the same time, we introduce (4b-4e) sequence constraints to align the start and
finish time of flow in and out of the blend component tank.
Tss j , k , n  Tosk ,o , n  UH  2  lk ,o , n  ins , j , k , n  , s  Sbc , k  K s , o  Os , j  J kpk , n  N
(4b)
Tss j , k , n  Tosk ,o , n  UH  2  lk ,o , n  ins , j , k , n  , s  Sbc , k  K s , o  Os , j  J kpk , n  N
(4c)
Tsf j , k , n  Tof k ,o , n  UH  2  lk ,o , n  ins , j , k , n  , s  Sbc , k  K s , o  Os , j  J kpk , n  N
(4d)
Tsf j , k , n  Tof k ,o , n  UH  2  lk , o, n  ins , j , k , n  , s  Sbc , k  K s , o  Os , j  J kpk , n  N
(4e)
172
During rundown blending operations, blend unit must receive all the blend components at the
same time and this requirement is captured by equations (4f-4h). Constraints (4g-4h) are included
because demurrage violation variables Tlateo and Tearlyo are not be penalized in the objective
function but a positive variable lateo defined in the equation (4i) is penalized.
l
k K p

k ,o, n
l
k K p
k , o , n
, j  J b , o  O J , o  O J , o  o, bo j ,o  bo j ,o , n  N
(4f)
Tlateo  Tlateo , j  J b , o  O J , o  O J , o  o, bo j ,o  bo j ,o
(4g)
Tearlyo  Tearlyo , j  J b , o  O J , o  O J , o  o, bo j ,o  bo j ,o
(4h)
Tlateo  tupo  lateo , o  O, ato  1
(4i)
If multiple blend headers share common blend component, then at any given time, blend
component can supply material to multiple blend units. However, a product tank cannot supply
multiple demand orders to the same blend unit at the same time. This restriction is captured by
constraint (4j).

oOs , bo j ,o  0
lk ,o , n  1, k  K p , s  Sbc  Sk , j  J sc  J b , n  N
(4j)
Demand violations ( dgol  0, dgou  0 ) for blend components are not subject to penalty in
the PSP objective function. However constraint (4k) ensures that the total demand for a given
blend unit is satisfied for rundown blending operation at time period v.

sSbc , oOs O j , k K s , ato 1,bo j ,o  v
Lf k ,o , n 

sSbc , oOs O j , ato 1,bo j ,o  v
Do, s , j  J b , v  {1, 2,..., MN }
(4k)
Constraint (4l) takes maximum production capacity of a blend unit into consideration by limiting
total flow of blend components to the blender.
173

o O , k K p ,bo j ,o  v
Lf k ,o, n  Rimax
, j Tof k , o , n  Tosk , o , n   UH 1  lk , o , n  ,
j  J b , s  S cj , o  Os , k  K s , i  I j , oto ,i  1, v  1, 2,..., MN  , bo j ,o  v, n  N
(4l)
To obtain a feasible solution at the end of iteration, we introduce consumption recipe constraint
(4m) for blend components and finished blend-product quality constraint (4n) based on linear
blending rules to maintain model linearity.
 sc,,min
i

oO , k K p , bo j ,o  v
Lf k ,o, n 
 Lf
k K p
k ,o,n
  sc,,max
i

o O , k K p ,bo j ,o  v
Lf k ,o, n ,
j  J b , s  S cj , o  Os , i  I j , oto,i  0, v  1, 2,..., MN  , bo j ,o  v, n  N
psmin
,p

oO , k K p , oto ,i 1, bo j ,o  v
 psmax
,p
Lf k ,o , n 


oO , k K p , oto ,i 1,bo j ,o  v
oO , k K p , oto ,i 1, bo j ,o  v
p
s, p
(4m)
Lf k ,o , n 
Lf k ,o, n , j  J b , i  I j , s  Sip , v  1, 2,..., MN  , n  N
(4n)
To restrict the solution space of the model, certain variables relating to blend components
outflow from the artificial tanks are fixed to be zero as shown in equation (4o). The PSP must
satisfy all the active demand orders ( ato  1 ) and at least  MN  1 event points are needed to
solve the PSP in order to obtain a feasible solution. We add constraints (4p-4q) in the model to
facilitate longer run modes with constant blending rate in blending operations. In equation (4p),
PSP is force to fulfill demand order within 3 event-points however this limit can be set higher if
needed.
Lf k ,o, n , lk ,o, n  0, j  J b , o  O j , k  K p , n  N , n  bo j ,o
(4o)

lk , o , n  3, o  O, ato  0
(4p)

lk , o , n  MN , o  O, ato  0
(4q)
k K p , nN
k K p , nN
174
Valid inequalities for PSP are given in (4r-4v). Similar to inequality (1n), constraint (4r)
reinforces that if material is flowing out of blend component tank, then it must be being produced
by process units at the same event-point. Based on nature of the blend component dummy tanks,
we introduce cuts (4s)-(4t) in the formulation of PSP.

lk , o , n 
wvi , j , n , k  K p , s  Sbc  Sk , o  Os , n  N
iI sp , jJ i
l
oOs
k ,o, n

 l
jJ kpk oOs
  in
s, j ,k ,n
oOs jJ kpk
k ,o, n

 in
, s  Sbc , k  K s , n  N
s, j ,k ,n
, s  Sbc , k  K s , n  N
jJ kpk
(4r)
(4s)
(4t)
Note that the demand order set pertaining to each blend header is arranged in chronologically
ascending order. When bo j ,o  bo j ,o '  0 , constraint (4u) states that blend component tanks cannot
satisfy demand order o before order o' and equation (4v) restates that if demand order o is
satisfied at event-point n then order o' must have been satisfied at earlier even-points.
lk ,o, n  lk ,o ', n  1, k  K p , j  J b , o  O, o  O, bo j ,o  bo j ,o , n  n, n  N
lk ,o, n 

k K s , nN , n   n
(4u)
lk ,o, n ,
k  K p , s  Sbc  Sk , o  Os , o  Os , o  o, j  J b , b j ,o  b j ,o , n  N
(4v)
The objective function of the PSP is given in (4w). The second term in the objective
function takes into account desire for constant blend rate and the two last terms are necessary to
take into consideration the cost incurred if finished blend product demands are not met on time
and the cost of storage of finished products in blend scheduling problem. The parameter
tdm 

sS A  Sbp , oOs
Do, s is an upper bound on the total amount of finished blend product that can be
supplied to the market.
175

z psp 
i , jJ i / J b , n


s , k K s
oO , jJ b , iI j , bo j ,o  0, oto ,i 1, k K , n

ck3 sts , k , N 
c 4j  j , n 
j J / J , n
h


c  os , s , k 
1

ci6,i  i ,i , j , n
jJ / J , iI j , i I j , i   i , n
m

b
(4w)
cs8, s  s , s , k , n
k K m , sS k , s S k , s  s , n
c lateo
oO , jJ b , bo j ,o  0

o O , bo j ,o  0
ck5  k , n 
h
7
s , s
14
o


k K , n
b
k K m , sS k , s S k , s  s 

ci1, j lk ,o , n

ci1, j wvi , j , n 

o O , bo j ,o  0


 c st   Lf k ,o , n  tdm 
1
 kK , oO , n

For the purpose of global solution and the algorithm, we report value Z P calculated from
equation (4) using optimal solution of PSP.
Z PSP 

i , j J i , n

ci1, j wvi , j , n 


s , k K s , n
ck3 sts , k , n 
c  i , i , j , n 
6
i ,i 
jJ m ,iI j ,i I j ,i   i , n
6.3.2.1.

c 4j  j , n 
jJ , n


ck5  k , n
k K , n
h
h
c  os , s, k 
7
s , s
k K m , sSk , s S k , s  s 

cs8, s s , s , k , n
(4)
k K m , sS k , s S k , s  s , n
Acquiring Parameters for RBSP from the Solution of PSP
To solve the restricted blend scheduling problem (RBSP), we determined certain parameters from
the optimal solution of the PSP. A new set is defined as T j  1, 2,..., pn j  where parameter pn j
represents the total number of time periods in which blend components flow into the blend unit j
from PSP and pn j 

 lk , o , n

 j

j
v1,2,..., MN   oO , bo j ,o  v , k K p , nN  bc


 
 .
 
A simple algorithm is used to determine blend components flows into blend units as shown
below:
For j  J b
Initialize t  0
For n  N
176
If

oO , k K P ,b j ,o  0
lk , o , n  1
t  t 1
For s  S cj , o  Os , bo j ,o  0, and k  Ks
If lk ,o, n  1
Uifx j , s,t  Lf k ,o, n , Tsx j , s,t  Tosk ,o, n , Tfx j , s,t  Tof k ,o, n , tx j ,i ,t  oto,i
End Procedure
From the optimal solution of PSP, the information regarding the blend components flow amount (
Uifx j , s ,t ) to blend unit j, start and finish time ( Tsx j , s,t , Tfx j , s,t ) of these flows, and the task that
should be performed ( tx j ,i ,t ) when blend unit j is processing these blend components is obtained.
Set T j and parameters Uifx j , s,t , Tsx j , s,t , Tfx j , s ,t and tx j ,i ,t are obtained from the optimal solution of
PSP and will be used alongside with parameters obtained from BSP in formulating the restricted
blend scheduling problem. Formula max T j can be used as a starting point in determining number
j
of event-points needed to obtain a feasible solution of RBSP. If blend scheduling problem can be
decomposed into smaller problem than event point is determined separately for each blend
scheduling sub-problem. Minimum numbers of event-points for a sub-problem are determined by
finding max T j for all blend headers that belong to the sub-problem.
j
6.3.3. Restricted Blend Scheduling Problem
The restricted blend scheduling problem (RBSP) model incorporates all the constraints of
the full-scale model and some additional constraints that are necessary to incorporate the
solutions of BSP and PSP. RBSP restricts feasible solution space of BSP by fixing allowable task
changeovers for multipurpose blend headers. However unlike BSP, where production in the last
177
event point is not allowed (equation (3d)), RBSP allows blending operations to happen at the last
event point to provide flexibility in blending all the material supplied by upstream process units.
The operating mode changeovers at multipurpose blend headers are restricted to those of BSP (
 j ,i ,i ) as shown in equation (5a).

 1 if  j ,i ,i   0
, j, i  I j , i   I j , i  i , n  N

 0 if  j ,i ,i   0
 i ,i , j , n 
(5a)
We introduce a binary variable x j ,i ,t , n to capture the relationship between supply of blend
components to a blend header at time period t by PSP and blending of these components at some
event point n by the blend header. Variable x j ,i ,t , n is 1 if event point n allocates to time period t
given tx j ,i ,t is 1.
Constraint (5b) requires that each time period t must correspond to at least one event
point n. Equation (5c) ensures that event point n can correspond to at most one time period t and
equation (5d) forces binary variable wvi , j ,n to be 1 if binary variable x j ,i ,t , n is 1. However, if the
event point n does not correspond to any time-period t then variable wvi , j ,n is forced to be zero by
constraint (5e).

nN , n  t
x j ,i ,t , n  1, j  J , i  I j , t  T j , tx j ,i ,t  1

tT j , n  t , tx j ,i ,t 1
x j ,i ,t , n  1, j  J , i  I j , n  N
x j ,i ,t ,n  wvi , j ,n , j  J , i  I j , n  N , t  Tj , n  t , tx j ,i ,t  1
wvi , j , n 

tT j , n  t , tx j ,i ,t 1
x j ,i ,t , n , j  J , i  I j , n  N
(5b)
(5c)
(5d)
(5e)
178
An assignment constraint (5f) connects fixed amount of material flowing into a blend unit j and
time period t to an event point n. Continuous variable UUf j , s ,t ,n represents amount of component s
supplied by PSP at time period t is consumed by a blend header j at event point n. Constraint (5g)
ensures that all of the material supplied to blend header j by PSP is blended over scheduling
horizon and equation (5h) determines amount of blend component s processed by blend unit j at
event point n.
UUf j , s ,t , n  Uifx j , s ,t x j ,i ,t , n , j  J b , i  I j , s  Sic , n  N , t  Tj , n  t , tx j ,i ,t  1

nN , n  t
UUf j , s ,t , n  Uifx j , s ,t , j  J b , i  I j , s  Sic , t  T j , tx j ,i ,t  1
Uif s , j , n 

tT j , n  t ,
 tx j ,i ,t 1
UUf j , s ,t , n , j  J b , s  S cj , n  N
(5f)
(5g)
(5h)
iI j
Equation (5i) sets binary variable x j ,i ,t , n to zero if flow of materials into blend header j at time
period t is not intended for blending run-mode i, that is . tx j ,i ,t  0 . Constraint (5j) fixes amount of
.
material that received and blended by blend header j to zero if at given time period t, process
units are not supplying blend components.
x j ,i ,t ,n  0 if tx j ,i ,t  0, j b , i  I j , i   I j , i  i , n  N , t  T j
UUf j , s ,t , n  0 if
 tx
iI j
j ,i ,t
 0, j b , s  S cj , n  N , t  T j
(5i)
(5j)
Constraints (5k-5l) determines the duration of each task being performed at unit j at event
point n using component flow rate into blend header at corresponding time period t. Equations
(5m-5n) bound the start and finish time of each task happening at event point n to the start and
finish time of the corresponding time period t.
179

Uifx j , s ,t
Uif s , j , n  
 Tfx  Tsx
j , s ,t
j , s ,t


 Tfi , j , n  Tsi , j , n   M  2  wvi , j , n  x j ,i ,t , n  ,

j  J , i  I j , s  Sic , n  N , t  T j , n  t , tx j ,i ,t  1
(5k)

Uifx j , s ,t
Uif s , j , n  
 Tfx  Tsx
j , s ,t
j , s ,t


 Tfi , j , n  Tsi , j , n   M  2  wvi , j , n  x j ,i ,t , n  ,

j  J , i  I j , s  Sic , n  N , t  T j , n  t , tx j ,i ,t  1
(5l)
Tsi , j , n  UH  2  wvi , j , n  x j ,i ,t , n   Tsx j , s ,t , j  J , i  I j , n  N , n  t , t  T j , tx j ,i ,t  1
(5m)
Tf i , j , n  UH  2  wvi , j , n  x j ,i ,t , n   Tfx j , s ,t , j  J , i  I j , n  N , t  T j , n  t , tx j ,i ,t  1
(5n)
Constraint (5o) restricts that a time period corresponds to at most three event points similar to
constraint (4p) in PSP.

nN , n  t
x j ,i ,t , n  3, j  J , i  I j , t  T j , tx j ,i ,t  1
(5o)
To improve the performance of the model, constraint (5p) is added to restrict the feasible space of
the model. Constraint (5p) results from the requirement that the scheduling problem must blend
components received from PSP. RBSP must satisfy the finished blend product demands hence
demand give-away variable dgol  0 and over supply of demand, dgou  0 , is penalized. Demand
demurrages violations are allowed to meet minimum finished blend product demand requirement
and these violation are heavily penalized. At least max  T j  event points are necessary to obtain a
j
feasible solution of the RBSP.
x j ,i ,t ,n  0,UUf j , s ,t ,n  0, j  J , i  I j , s  Sic , tx j ,i ,t  1, n  N , t  Tj , n  t
The RBSP model has the same objective function as the original full-scale model.
(5p)
180
6.3.4. Integer Cuts
If RBSP provides an optimal solution with due-date violations, integer cuts are generated
so that they can be added to the BSP in the next iteration. These integer cuts exclude current task
changeover sequence for blend headers from future blend scheduling problems. The cuts are
produced by deriving alternative combinations of production task assignment to different event
points such that the current production task changeover sequence i ,i, j is maintained. These
alternative assignment sequences are feasible solutions of RBSP because RBSP optimizes blend
scheduling problem by keeping current task changeover sequence fixed. Table 6.1 shows how
alternative combinations of task allocation for blend header are obtained. For example, a BSP that
has one multipurpose blend header that can perform 3 tasks to produce 3 different blend products.
In the next iteration BSP is to be solved using 5 event-points and current iteration has task
changeover sequence for blender (j = 1) obtained from section 6.3.1.1 using BSP solution is
3,1,1 , 2,3,1 . Possible alternative solutions of task allocation variable wvi , j , n are provided in Table
6.1 along with the original solution obtained in current iteration. The last event-point has no
production taking place because we restrict solution space of BSP as mention in section 6.3.1 by
fixing allocation variable wvi , j , N  0 . For the given changeover sequence, 6 alternative solutions
can be possible and the total of 7 integer cuts are generated as shown in Table 6.1
Hence, multiple cuts can be generated every iteration so that the current changeover
sequence is excluded from feasible solution space of BSP in the subsequent iterations of the
algorithm. The cuts are only added to those sub-problems that include multi-purpose blend units.
Multiple integer cuts of the form (6) are added to the BSP cut-pool for the subsequent iterations.

 i , j , n Q
wvi , j , n 
tsc

 i , j , n NQ
wvi , j , n  Q tsc  1, tsc  1, 2,...TSC
tsc
(6)
181
Here, TSC is the total number of solutions that have been obtained to exclude task
changeover sequences obtained by current and previous iterations. Set Qtsc includes assignments
where wvi , j , n  1 and set NQtsc includes assignments where wvi , j , n  0 . The blend scheduling
problem can be decomposed into small independent sub-problems and these independent subproblems do not share common blend components, products, and product tanks. For instances
where more than one sub-problem report due-date violations, cuts are added to one of the subproblems' cut pool. It is important to note that if BSP, PSP, or RBSP are not globally optimized in
steps 1, 2, and 3, adding these integer cuts to the BSP in the next iteration could potentially cut
off a better global solution with lower objective value.
Table 6.1 Possible task assignment solutions based on current iteration task changeovers parameter
i , i  , j
wv  2,1, n1
Task changeover
BSP solution for
wv  2,1, n2 
sequence:
multipurpose blend unit
wv  3,1, n3
Possible solutions
 2,3,1
wv 1,1, n4 
 3,1,1
wv  2,1, n1
wv  2,1, n1
wv  2,1, n1
wv  3,1, n2 
wv  3,1, n3
wv  3,1, n2 
wv 1,1, n3
wv 1,1, n4 
wv 1,1, n4 
wv  2,1, n1
wv  2,1, n1
wv  3,1, n2 
wv  3,1, n2 
wv  3,1, n3
wv 1,1, n3
wv 1,1, n4 
wv 1,1, n4 
wv  2,1, n2 
wv  3,1, n3
wv 1,1, n4 
6.4. Proposed Heuristic Algorithm
Detailed framework of the algorithm is as follows. The procedure for the algorithm has
six steps. We define Zd in equation (7) to be the cost of due-date violations. Z Bh and Z Ph are
182
calculated using the optimal objective values of the RBSP and PSP, respectively at the hth
iteration.
Zd 
c
oO
14
o
Tearlyo   co15Tlateo
oO
(7)
Step 1: Solve the blend scheduling problem (BSP).
Obtain parameters Do, s , Do, s , timeso , timefo , oto,i , bo j ,o , ato , tupo , and  j ,i ,i .If infeasible, go to step 6.
Step 2: Based on the requirement of blend components, solve the production unit scheduling
problem (PSP) so that the components demand is met with minimum due date violations. The
solution of PSP is Z Ph  Z PSP .
Obtained Set T j and parameters Uifx j , s,t , Tsx j , s,t , Tfx j , s ,t and tx j ,i ,t .
Step 3: Restricted BSP (RBSP) is solved using the task changeovers sequence obtained by the
solution of BSP for blend units and information about blend components flow into blend units
obtained by the solution of PSP. The solution of RBSP is Z Bh  Z RBSP .
Step 4: The global feasible solution is Z h  Z Bh  Z Ph .
If the optimal solution of RBSP satisfies the finished blend products demand without any
intermediate due-date violations, stop the algorithm and Z  Z h .
If an optimal solution has demurrage violations ( Zd RBSP  0 ), go to step 5. If infeasible, go to step
6.
Step 5: Develop integer cuts based on the task changeover sequence (  j ,i ,i ) of the BSP solution.
Add these cuts to BSP in the next iteration.
h  h  1 and go to step 1.
183
Step 6: If an optimal solution of RBSP cannot be obtained without demurrage violations or BSP
is infeasible, pick the best feasible solution. Z  min  Z h  and exit the algorithm.
h
Initialize
, Integer Cut Pool,
Solve BSP
Done
No
Feasible
Yes
No
Yes
Solve PSP
Add Integer Cuts
Solve RBSP
,
Yes
emurrage
No
Done
Done
184
Figure 6.6 Proposed heuristic algorithm
6.4.1. Termination Criterion
The algorithm iterates between solving models BSP, PSP, and RBSP until a global feasible
solution with minimum due-date violations and minimum total cost is obtained as presented in
Figure 6.6. The optimal schedules of PSP and RBSP provide a feasible solution of the overall
refinery problem.
We initialized our BSP model with an empty integer cut-pool. If RBSP reports a solution
that respects intermediate demand due dates, then the algorithm terminates and the current
solution is kept. If RBSP provides an optimal solution with due-date violations at hth iteration,
then corresponding BSP changeover solution ( ih,i, j ) is used to generate integer cuts for cut pool.
RBSP can never provide a better solution than BSP. Thus, if BSP reports worse solution than the
h
best obtained so far by RBSP, that is Zd BSP  min  Zd RBSP
 , then the algorithm is terminated and
h
best global solution obtained so far is kept. BSP can report an infeasible solution when all
feasible schedules from its solution space are eliminated due to the addition of integer cuts. In the
case of BSP infeasibility, the algorithm terminates and the best solution from previous iterations
is reported as a global solution.
At the end of each iteration, the heuristic algorithm provides a feasible solution however
the algorithm cannot guarantee a global optimal solution since it terminates when there is no
demurrage and not when the overall objective is minimal.
6.4.2. Evaluation of scheduling horizon
The evaluation of BSP, PSP and RBSP problems‟ scheduling horizon is shown in Figure
6.7. In the Figure 6.7, BSP and RBSP show schedule of a blend unit j and PSP shows schedule of
materials being supplied to the blend unit ( tx j ,i ,t >0) by process units at event point n. A feasible
185
solution of PSP satisfies blend components demands requested by BSP and intermediate products
demands ( S B ). However due to the production capacity limitation, PSP may not able to meet
intermediate due dates of blend components unless PSP utilizes inactive demand orders ( ato  0 ).
In Figure 6.7, the BSP is active only for a total of 4 event points whereas, PSP supplies material
to blend unit for 5 event points. The schedule of RBSP is based upon the solution of BSP and
PSP; however to meet the due dates of the finished blend products, the time period have
flexibility to split. In Figure 6.7, the optimal schedule of RBSP shows that the event point n3 of
PSP is split in two event points, n3 and n4 and blend header is performing task with constant
blend rate for these event points.
BSP
PSP
RBSP
n1, i2
n2, i2
n1, i2
n2, i2
n1, i2
n2, i2
n4, i1
n3, i3
n3, i3
n3, i3
n4, i1
n4, i3
n5, i1
n5, i1
n6, i1
Figure 6.7 Schedule evaluation of BSP, PSP, and RBSP. Here i represents index for blend task.
Both PSP and RBSP provide schedules that can be implemented without any further
manipulations after algorithm is terminated.
6.5. Case Study
A case study with realistic data provided by Honeywell Process Solutions (HPS) is used to
illustrate the effectiveness of the proposed heuristic algorithm. The refinery produces diesel fuels,
jet fuel, and other middle distillate products. The production process at Honeywell refinery
consists of 2 blender headers, 13 other processing units, and 2 non-identical parallel crude
distillation units (CDUs) that process two different types of crude oils. The schematic of
production system is shown in Figure 4.2 and details are provided in 4.2.1. Honeywell refinery
utilizes rundown blending operations at Jet blender and Diesel blender units to blend components
186
supplied directly from other process units to produce final products. Jet blender unit blends three
blend component streams to produce jet fuel that can be stored in 2 product tanks. Diesel blender
unit can produces three different grades of fuel: CARB diesel, EPA diesel, and Red-dye diesel by
blending three different components in different proportions using three different run-modes
called CARB normal, EPA normal, and Red-dye normal, respectively. There are two dedicated
tanks for each grade of diesel products and one multipurpose tank that can service CARB and
EPA diesel. In addition to Diesel blender, FCC is also a multipurpose unit that has two modes,
max distillate mode and max gasoline mode.
To apply the proposed heuristic algorithm, we decompose the case study problem into production
unit scheduling and blend scheduling problem. The blend scheduling problem consists of Diesel
and Jet blender units and finished product storage tanks associated with these two blenders. The
production unit scheduling problem involves all other units and raw material and intermediate
storage tanks. The Diesel blender does not consume the same type of blend components as the Jet
blender unit and the products produced by these two blenders are serviced by different product
tanks, hence, we can decompose the blend scheduling problem (BSP) into two sub-problems, the
diesel blend scheduling problem (D-BSP) and the jet blend scheduling problem (J-BSP).
There is a 6 hours of cleaning or maintenance downtime when the multipurpose tank service
switches from lower grade of diesel product to higher grade of product. This cleaning downtime
is essential to remove any sulfur contamination present in the tank before low sulfur product is
sent for storage. The product tank has 4 hours of down time called fill-draw-delay for certificate
of analysis preparation and to let the product settle down and mix before is shipped to the market.
A minimum run-length restriction of 6 hours is imposed on all production units. The data for this
case study for provided in Appendix Chapter 6. Table A6-1 provides maximum and minimum
production rate for units, variable production and consumption recipe data for the production
units is presented in Table A6-2, and the maximum storage capacity and what material can be
stored in each tanks is given in Table A6-3.
187
6.6. Computational Results
The effectiveness of the proposed heuristic algorithm in solving refinery scheduling
problems is demonstrated using ten different examples for the case study presented. Each
example differs in either demands, due dates, or initial hold up in the tank. All the examples are
solved on a Dell® Optiplex 9020 computer with 2.90 GHz Quad Core Intel® Processor i5-4570S,
CPU 2.90GHz, and 16.0 GB memory using CPLEX 12.3.0/GAMS 23.7.1. The heuristic
algorithm is implemented in MATLAB R2014a and interfaces with GAMS to solve optimization
problems. The maximum solution time of 8 hours and optimality tolerance of 1e-6 are used as
termination criteria for all examples. The number of blend product demand orders range from 4 to
22 and with different intermediate due-dates and amount. The scheduling horizon for these
problems is 240 hours (10 days). Table 6.2 provides penalty parameters used in objective function
and Table A6-4 give demand data for finished blend product with intermediate due-date window.
Products CARB diesel, EPA diesel, Red-dye diesel, and Jet fuel are referred to as product P1, P2,
P3 and P4, respectively. Intermediate demands are bound by maximum and minimum amount
and can be delivered anytime during the delivery window. Maximum delivery rate, product
unloading rate to satisfy demand, is 10 (kbbl/h). Demand for distillate product for different
examples is given in Table A6-5.
Table 6.2 Penalty parameters in objective function
Penalty
Penalty Parameter
Value
Value
Parameter
1
CCarbNormal,Diesel
Blender
10
Cs7, s
40 (Unfavorable: 60)
1
CEPA
Normal,Diesel Blender
7
Cs8, s
40 (unfavorable: 60)
1
CReddye
Normal,DieselBlender
4
Ck9
5
1
CJetNormal,Jet
Blender
5
Cs10,k
5
188
Ck2
1 (Swing tank: 3)
50  Vkmax 
Ck3
1
Co11
1150
Co12
800
C 4j
50
Cs13
1100
Ck5
10 (Swing tank: 40)
Co14
5400
Ci6,i 
100 (Unfavorable: 250)
Co15
3250
Model statistics for the proposed algorithm sub-problems and full-scale problems are
reported in Table 6.3. For every iteration, the minimum number of event points necessary for
optimal solutions are not known prior and need to be determined by trial and error for subproblems. BSP model is solved using same number of event points during each iteration in the
algorithm, as seen in Table 6.3 for examples 3 and 6. Starting point in determining the minimum
number of event points for PSP is given in section 6.3.1.1 and the event points for RBSP are
determined from optimal solution of PSP as mention in section 6.3.2.1. If PSP optimal solution
reports due-date violations for blend component demand orders, then the number of event points
necessary for obtaining optimal solution of RBSP may be higher than for corresponding PSP.
Table 6.3 Model statistics
Heuristic Algorithm
Full Scale
Model
BSP model
PSP model
RBSP model
Event pt.
Event pt.
Event pt.
Event pt.
#
Int./Cont.
Int./Cont. variables
Int./Cont.
Int./Cont. vairables
Orders
var.
(Constraints)
var.
(Constraints)
(Constraints)
Nonzero Elem.
(Constraints)
Nonzero Elem.
Ex.
Nonzero
Nonzero
D-BSP
Elem.
J-BSP
D-RBSP
Elem.
J-RBSP
189
1
2
5
4
2
4
5
4
360/2663
97/658
12/86
263/1599
141/878
36/382
(6387)
(1698)
(181)
(5412)
(2319)
(663)
22633
6068
546
17336
8536
1798
5
4
2
4
4
5
360/2663
97/658
12/86
263/1599
110/698
47/482
(6379)
(1692)
(181)
(5412)
(1794)
(844)
22569
6026
546
17344
6324
2349
5
2
5
5
5
124/822
12/86
337/2049
142/882
48/486
(2169)
(181)
(7381)
(2327)
(861)
8020
546
23843
8526
2403
5
2
5
5
4
124/822
12/86
337/2049
141/878
36/382
(2170)
(181)
(7381)
(2311)
(663)
8035
546
23853
8472
1798
5
2
5
5
4
124/822
12/86
337/2049
141/878
36/382
(2171)
(181)
(7381)
(2309)
(663)
8050
546
23853
8472
1798
5
2
5
5
5
124/822
12/86
337/2049
142/882
48/486
(2178)
(181)
(7381)
(2326)
(861)
8155
546
23843
8526
2403
5
2
5
5
4
4
4
5
360/2663
3
4
(6379)
22569
190
4
5
6
7
124/822
12/86
337/2049
141/878
36/382
(2185)
(181)
(7381)
(2311)
(663)
8260
546
23853
8472
1798
5
2
124/822
12/86
-
-
-
(2186)
(181)
8275
546
5
5
4
4
5
4
380/2771
136/886
32/202
269/1662
153/942
42/426
(6741)
(2399)
(481)
(5819)
(2525)
(765)
24018
8916
1516
18733
9310
2160
6
6
4
6
9
7
484/3453
181/1138
38/238
426/2610
322/1858
98/850
(8644)
(3227)
(611)
(10364)
(5464)
(1686)
31765
12507
1978
33812
24234
5369
7
4
7
8
8
226/1386
44/274
518/3120
299/1722
131/1070
8
(4038)
(761)
(13029)
(5011)
(2284)
680/4737
16326
2524
42828
21059
7794
(12260)
7
4
7
9
8
47983
226/1386
44/274
518/3120
341/1946
131/1070
(4087)
(761)
(13029)
(5750)
(2284)
17355
2524
42842
25360
7794
7
7
4
7
8
8
640/4383
274/1622
44/274
509/3120
355/1990
131/1118
6
8
10
13
191
8
9
10
(11628)
(5057)
(761)
(13349)
(6116)
(2284)
44759
20588
2524
43662
25900
7842
7
6
4
6
7
7
682/4591
256/1522
50/310
417/2436
332/1870
120/1046
(12669)
(4898)
(931)
(8739)
(5916)
(2219)
49601
19356
3154
28529
24332
7739
8
7
6
7
8
9
841/5509
328/1886
100/558
518/3120
418/2290
199/1548
(16222)
(6512)
(2061)
(13029)
(7722)
(3929)
67119
27371
7790
42856
33814
15617
10
7
8
7
9
10
1117/7125
340/1946
166/870
512/3021
493/2658
261/1914
(22251)
(6801)
(3823)
(12027)
(9183)
(5672)
100257
28643
16250
39592
42180
24780
16
19
22
Table 6.4 Computational results
Objective ( Z )
Ex.
Full Scale
Heuristic Algorithm
PSP
D-BSP
J-BSP
Total
PSP
D-RBSP
J-RBSP
Total
1
109.67
276.21
64.90
450.78
110.88
276.22
60.74
447.84
2
105.16
412.48
81.00
598.64
129.57
421.55
101.46
652.58
3
116.28
14530.12
57.59
14704.00
119.49
15751.44
58.28
15929.21
4
117.66
416.50
58.65
592.81
115.20
427.25
61.11
603.56
5
144.74
294.00
65.46
503.19
150.53
318.00
81.84
550.37
192
6
154.27
692.85
69.52
916.64
155.67
576.43
80.82
812.92
7
150.54
303.00
59.07
512.61
149.89
309.36
69.26
528.51
8
140.37
446.00
51.00
637.37
156.40
461.15
58.21
675.76
9
165.39
562.46
67.50
795.34
162.48
567.92
71.58
801.99
10
150.69
868.78
79.17
1098.64
166.92
462.31
74.62
703.85
The objective of the proposed algorithm is to obtain a global feasible solution that
satisfies minimum demand requirements while minimizing product shipment commitments
violations, inventory costs, product giveaway, product tank heel quantity, and undesired mode
changeovers at multipurpose blend headers and product tanks. Table 6.4 gives the objective
function of full-scale model and heuristic approach. The minimum demand violations are allowed
and not fixed to zero in full-scale problem in order to find the optimal solution. To compare
quality solution obtained by integrated approach versus decomposition approach, the optimal
solution of the integrated problem is used to calculated objective value for each sub-problems.
The computational performance results of the full-scale model and the proposed algorithm are
shown in Table 6.6. The proposed algorithm is able to obtain a solution at significantly less
computational expense than the full-scale model and in some instances full scale model failed to
find optimal solutions after 8 hours. For the largest examples with 22 intermediate demand
orders, the full-scale has optimality gap of 82.82% after 8 hours whereas the heuristic approach is
able to obtain a solution after 865 seconds. For examples 3 and 6, heuristic approach takes more
than one iterations before the algorithm terminates and the progress of the algorithm is shown in
detail in Table 6.7. Majority of computational effort in the algorithm is spent solving for BSP
while RBSP consume less computational time compared to both BSP and PSP. In our work,
blend scheduling sub-problems are not solved in parallel however to reduce computational time,
they can be solved in parallel. Of two blend scheduling sub-problem, Diesel blend scheduling
193
sub-problem is more complicated due to presence of multipurpose blend header, hence is much
harder to solve than Jet blend scheduling sub-problem.
The objective function results obtained using decentralized approach are comparable to
that of centralized approach for all examples as shown in Table 6.4. However, for example 1, an
optimal solution of integrated full-scale model is higher than that of heuristic approach solution.

This happens because our objective function includes a term
i , j J i , n
ci1, j wvi , j , n . Thus, the objective
value of sub-problems is highly dependent on the number of event points used to solve
scheduling model. This term is included in objective function as to minimize number of different
run modes hence to maintain constant blend rate for longer length of time. In example 1, the fullscale model is solved using 5 event points and diesel and jet blenders are active for all 5 event
points, where as in heuristic approach, only diesel blender is active for 5 event points and jet
blender for 4 event points since only D-RBSP is solved using 5 points.
zcost 

k K p , o , n
ck2 lk , o , n 



s , k K s
ci6,i   i ,i , j , n 
jJ , iI j , i I j ,i   i , n
m



c
sS f
c 4j  j , n 
9
k K m

ck5  k , n
jJ h , n
k K h , n

cs7, s  os , s , k 
k K , sS k , s S k , s  s 
m
c
k K m , sSk , s S k , s  s , n
13
s

ck3 sts , k , N 
std s , s , k , n 

k K m , sS k , n

cs8, s  s , s , k , n
k K , sS k , s S k , s  s , n
m
c mhs , k , n   co11dg ol   co12 dg ou
10
s,k
oO
(8)
oO
rg s   c Tearlyo   c Tlateo
oO
14
o
oO
15
o
To effectively compare the quality of the solution between full-scale and heuristic
approach, we calculate value Zcost given equation (8) using optimal solution. Here, Zcost is almost
same as optimization problem objective function but the term

i , j J i , n
ci1, j wvi , j , n is not considered.
When Zcost value is compared for heuristic and full-scale approach, as expected, the fullscale model optimal solution gives lower cost ( Zcost ) than the proposed algorithm as seen in Table
6.5. Proposed algorithm is successful in obtaining a feasible solution that satisfies minimum and
194
maximum demand requirement while meeting intermediate due-dates for every example for
which such a feasible solution exists. Furthermore, heuristic approach is able to provide solution
without product giveaway or demand violations for all examples except example 3. For example
3, the full-scale problem reports an optimal solution is with due-date violations and product
giveaway. Product giveaway occurs when premium quality product must be given away for the
regular product price to meet the regular product demands shipment commitment. The largest
example with 22 intermediate demand orders, heuristic provides feasible solution that satisfy
demand and intermediate due-dates while minimizing unfavorable blend mode changeovers and
product giveaway whereas the full-scale model provides feasible solution with product giveaway
and higher unfavorable blend mode changeovers at multipurpose blender.
Table 6.5 Computational results
Objective ( Zcost )
E
Full Scale
Heuristic Algorithm
x
PSP
D-BSP
J-BSP
Total
PSP
D-RBSP
J-RBSP
Total
1
109.67
247.21
39.90
396.78
110.88
247.22
40.74
398.85
2
105.16
384.48
61.00
550.64
129.57
390.55
76.46
596.58
3
116.28
14502.00
37.59
14656.00
119.49
15723.44
38.28
15881.22
4
117.66
388.50
38.65
544.81
115.20
399.25
41.11
555.56
5
144.74
256.00
40.46
440.19
150.23
256.00
46.84
453.37
6
154.27
647.85
39.52
841.64
155.67
519.43
40.82
715.91
7
150.54
261.00
29.07
440.61
149.89
263.36
29.26
442.51
8
140.37
411.00
26.00
577.37
156.40
416.15
28.21
600.76
9
165.39
504.46
32.50
702.34
162.48
509.92
31.58
703.99
10
150.69
809.78
39.17
999.64
166.92
414.31
34.62
615.85
195
Except for examples 3 and 6, the heuristic algorithm is able to obtain a feasible solution
without demurrage in first iteration. The algorithm takes 2 iterations to obtain a global feasible
without demurrage in case of the example 6. Even for example 6, heuristic algorithm is able to
find a solution in about 564 seconds while full-scale model is not even able to find an optimal
solution after 8 hours.
Table 6.6 Computational performance results
Heuristic Algorithm
Full Scale Model
CPU time (seconds)
Ex.
CPU
Gap
time (s)
(%)
1
108.59
2
249.85
3
1939.09
D-BSP
J-BSP
PSP
D-RBSP
J-RBSP
Total
0.00
0.44
0.06
2.53
0.20
0.06
3.29
0.00
0.50
1.01
2.76
0.08
0.20
4.56
19.11
0.047
5.32
0.125
0.046
12.25
0.047
6.24
0.327
0.031
12.86
0.063
6.55
0.250
0.062
0.00
117.09
15.38
0.062
13.10
0.203
0.047
8.33
0.032
4.87
0.343
0.062
11.25
0.093
-
-
-
4
457.27
0.00
1.23
0.047
5.73
0.16
0.031
7.192
5
14716.62
0.00
2.26
0.11
18.31
11.89
0.39
32.96
246.56
0.047
90.71
14.77
1.72
6
28800
77.98
141.63
0.047
27.32
40.42
1.23
564.46
7
28800
9.05
56.52
0.063
28.64
1.37
0.86
87.46
8
28800
69.92
16.51
0.078
33.06
14.62
2.34
66.44
9
28800
74.71
296.73
0.250
37.25
88.41
8.00
430.64
196
10
28800
82.82
232.10
1.030
51.56
444.87
135.85
865.40
Evolution of the algorithm for example 6 is shown in Table 6.7. In the first iteration,
Diesel RBSP obtains optimal solution with intermediate due-date violations. Since only Diesel
blend scheduling sub-problem has multi-purpose blender, we produce integer cuts for next
iteration using the current iteration task changeover sequence of diesel blender. Diesel blender
can perform three tasks (i1, i2, and i3) to produce three different grades of diesel blend products.
Changeover sequence ( i ,i, j ) in first iteration is (i3, i1), (i1, i2) and (i2, i3) and Diesel-BSP sub
problem in next iteration is solved using 7 event-points. Total of 49 alternative solutions are
obtain from the changeover sequence as described in section 6.3.4 and thus 49 integer cuts are
added to D-BSP in 2nd iteration. The algorithm is terminated after 2nd iteration when a global
feasible solution without demurrage costs is obtained.
Table 6.7 Algorithm progress and termination
Ex.
Iter.
Objective( Z )
Integer
Demurrage Cost ( Zd )
Cuts
D-BSP
J-BSP
PSP
D-RBSP
J-RBSP
Total
2120.64
16.00
107.01
16497.52
63.97
16668.50
886.36
0
0
15247.44
0
15247.44
2120.64
16.00
119.51
16481.71
55.83
16657.05
886
0
0
15247.44
0
15247.44
5467.63
16.00
119.49
15751.44
58.28
15929.21
4963.64
0
0
15247.44
0
15247.44
5467.64
16.00
107.00
15767.25
62.86
15937.11
4963.64
0
0
15247.44
0
15247.44
1
Generated
1
2
1
3
3
7
4
7
197
8207.00
16.00
119.50
20440.81
55.83
20616.14
7150.00
0
0
19383.81
0
19383.81
24006.24
16.00
-
-
-
-
22750.00
0
518.00
39.00
154.89
24852.47
79.81
25087.17
0
0
0
24248.63
0
24248.63
518.00
39.00
155.67
576.43
80.82
812.92
0
0
0
0
0
0
5
1
6
1
-
49
6
2
-
The heuristic algorithm progress for example 3 is reported in Table 6.7 and the algorithm
terminates during 6th iteration and the best solution found so far is kept. For example 3, in the first
iteration, D-RBSP sub-problem reports a solution with due date violations thus integer cuts are
produced to eliminate the current changeover sequence and are added onto the D-BSP integer
cut-pool. In 6th iteration the objective of D-BSP is 24006 and demurrage cost is 22750 which is
worse than the best objective of 15929 and demurrage 15247 obtained in 3rd iteration. Thus, the
algorithm terminates during 6th iteration because the current D-BSP optimal solution is worse
than the best D-RBSP solution obtained so far and RBSP can never do better than its
corresponding BSP. The solution obtained by 3rd iteration is reported as the final solution since it
has the lowest overall cost of all 5 iterations and lowest demurrage cost. Total of 17 integer cuts
are generated at the end of 5th iterations and it takes only about 120 seconds for algorithm to
terminate compared to 1939 seconds for full-scale model. For example 3, the full-scale integrated
optimal solution reports demurrage violation for a blend product demand order to be 4.32 hours
whereas the proposed heuristic approach solution gives violation to be 4.69 hours. Furthermore,
the solution obtained using the heuristic algorithm has the same product giveaway cost as fullscale optimal solution.
198
The performance of our heuristic algorithm is significantly better than that of full-scale model
and decomposed problems are able to produce schedules that are similar to that of full-scale
model. Figure 6.8 and Figure 6.9 shows Gantt chart for production schedule for example 5 obtain
using integrated full-scale model and heuristic model, respectively. The decomposition approach
provides similar schedule as integrated approach. Since the refinery under study has blend
headers that receive blend components straight from upstream process units, blend headers must
always be active when process units are sending materials. This continuous process characteristic
of rundown blending is clearly observed in the Gantt charts. It is preferable for blend headers to
blend material at constant blend rate. In our heuristic approach, constant blend rate is achieved
when material being sent by upstream processes at given time-period is processed during
different event-points when restricted blend scheduling problem is solved using production unit
scheduling problem results. In Figure 6.9, for the last two event points when Jet blender is using
constant blend rate of 0.4826 when blending 106.8 kbbl and 44.5 kbbl amount of jet fuel.
Similarly, even though diesel blender has two smaller run modes, blend rate is kept constant
between 73.98 to 99.21 hour, and 99.21 to 132.45 hour.
199
Figure 6.8 Gantt chart for Example 5 obtained using integrated full-scale model
200
Figure 6.9 Gantt chart for Example 5 obtained from the heuristic algorithm
The work in this chapter is based upon the linear blending rules for finished products and
this approach does not reflect the non-linearity of the mixing rules. When the non-linear mixing
rules are considered, the scheduling model becomes MINLP instead of MILP which is much
harder in terms of computational complexity. The approach proposed here can be utilized as a
201
preprocessing step before tackling complicated MINLP problem. To reduce the complexity of the
MINLP scheduling problem, solution space of the non-linear model can be restricted based upon
the solution of the pre-processing step. In pre-processing step, the corresponding MILP model of
MINLP will be first solved using the heuristic algorithm presented in this work. The obtained
feasible solution will provide information on the blend mode changeover sequences for multipurpose blend headers necessary for meeting minimum demand requirements and intermediate
due-dates. By using this information, MINLP feasible solution can be restricted to allow tasks
changeovers that are only present in the corresponding MILP. To further reduce complexity of
MINLP, other binary and allocation variables can be fixed to the solution obtained from the
heuristic algorithm. Proposed algorithm can also be extended to refineries that have blend
component storage tanks by making minor changes in PSP model.
6.7. Summary
In this chapter, we present valid inequalities for the large-scale oil-refinery scheduling
problems that improve the computational expense necessary to obtain optimal solution. An
integrated refinery problem is decomposed into production unit scheduling problem and finished
product blending and delivery problem via splitting blend components streams. A heuristic
algorithm is proposed based on the decomposed network to obtain a feasible solution of the
original problem that satisfies minimum demand requirements while minimizing due-date
violations and maximizing performance. It is demonstrated on realistic diesel refinery case study
that the proposed algorithm provides feasible solutions that are closer to the optimal solution with
significantly less computational effort than that required by the full-scale model.
Nomenclature
Indices
202
i
Tasks
j
Production units
k
Storage tanks
n
Event points
o
Product order
p
Properties
s
States
Periods relating to blend components flow into a unit (calculated from
t
optimal solution of BSP)
Periods relating to blend components flow into a unit ( calculated from
v
optimal solution of PSP)
Sets
Ij
Tasks which can be performed in unit j
I sc / I sp
Tasks which can consume/produce material s
J
Production units
Jb
Blend units
J sc / J sp
Units that consume/produce material s
Ji
Units which are suitable for performing task i
Units that can produce all the same products as some other unit in the
Jh
refinery
Jm
Units which are suitable for performing multiple tasks
J kkp / J kpk
Units that consume/produce material s stored in tank k
J seq
j
Units that follow unit j (no storage in between)
K
Storage tanks
203
Kh
tanks that can store the same products as some other tank in the refinery
pk
K kp
j / Kj
Tanks that store material consumed/produce by unit j
Km
Multipurpose tanks that can store multiple materials
Kbp
Tanks that can store finished blend products
Kp
Tanks that can store products
Ks
Tanks that can store material s
N
Event point within the time horizon
O
Orders for products that are stored in tanks
P
Product Properties
S
States
SA
Group A products, stored in tanks
SB
Group B products, not stored in tanks
Sbp
finished blend products, stored in tanks
Sk
Materials that can be stored in tank k
Sbc
Blend components
Sbcj
Blend components that can be consumed by blend header j
Sic / Sip
Materials that can be consumed/produced by task i
S cj / S jp
Materials that can be consumed/produced by unit j
Time periods within RBSP during which blend unit j receives component
Vj
flow
Parameters
ato
1 if the order o of PSP has to be satisfied by PSP.
bo j ,o
Order o of PSP is needed by blend unit j
204
Do, s , Do, s
Demand limit requirement for order o and product s that is stored in tank
max_rates
Maximum production rate of material s
nj
Number of total event points used by blend unit j in BSP model solution
oto,i
1 if task i is performed when order o of PSP is processed by BSP.
Ps, p
Property p of blend component s
max
Psmin
, p / Ps , p
Minimum/maximum specification of property p of blend product s
Total number of time period in which blend components flow into the blend
pn j
unit j from PSP
rs
Demand of the final product s at the end of the time horizon
max
Rimin
, j / Ri , j
Minimum/ maximum rate of material be processed by task i in unit j
RLi
Minimum run length for task i
RU kmin / RU kmax
Minimum/maximum rate of product unloading at tank k
stos,k
Amount of state s that is present at the beginning of the time horizon in k
tak
Fill draw delay for product tank k
Start and finish time of blend component s flow to blend unit j at time
Tsx j , s,t / Tfx j , s,t
period t
tupo
Allowable due-date violations of order o without any penalty in PSP
tx j ,i ,v
At time period v, blend unit j is performing task i
UH
Available time horizon
Amount of blend component s received by blend unit j from PSP at time
Uifx j , s ,v
period v
Vkmax
Maximum available storage capacity of storage tank k
Vkheel
Maximum heel available for storage tank k
205
yos , k
1 if the material s is present at the beginning of the time horizon in k
 j ,i ,i 
1 if changeover of task happen from i to i’ at blend unit j in BSP
max
smin
,i /  s ,i
Proportion of state s produced/consumed by task i,
Variables
Binary Variables
wvi , j , n
Assignment of task i in unit j at event point n
ins , j ,k ,n
Assigns the material flow of s into storage tank k from unit j at point n
Assigns the starting of product flow out of product tank k to satisfy order o
lk ,o,n
at event point n
outs , k , j , n
Assigns the material flow of s out of storage tank k into unit j at point n
Denotes that process material received by blend unit j at period v is
x j ,i , v , n
processed by task i at event point n
ys , k , n
Denotes that material s is stored in tank k at event point n
Positive variables
bps ,i , j , n
Amount of material s produced task i in unit j at event point n
bcs ,i , j , n
Amount of material s undertaking task i in unit j at event point n
dgol
Minimum demand quantity give-away term for order o
dgou
Maximum demand quantity give-away term for order o
H
Total time horizon used for production tasks
JJf s , j , j , n
Flow of state s from unit j to consecutive unit j’ for consumption at point n
Kif s , j ,k ,n
Flow of material s from unit j to storage tank k event point n
Kof s , k , j , n
Flow of material s from storage tank k to unit j at point n
lateo
In PSP, due date violation of blend component demand order o
206
Lfo, k , n
Flow of final product for order o from storage tank k at event point n
mhs , k , n
Maximum heel give-away term for product tanks
rgs
Minimum demand quantity give-away term for Group B product s
Rif s , k , n
Flow of raw material to storage tank k event point n
sts , k ,n
Amount of state s present in storage tank k at event point n
Amount of state s that is downgraded to state s‟ in storage tank k at event
std s , s, k , n
point n
Tearlyo
Early fulfillment of order o than required
Tfi , j ,n
Time that task i finishes in unit j at event point n
Tlateo
Late fulfillment of order o than required
Tosk ,o, n
Time that material starts to flow from tank k for order o at event point n
Tof k ,o, n
Time that material finishes to flow from tank k for order o at event point n
Tsi , j ,n
Time that task i starts in unit j at event point n
Tsf j , k ,n
Time that material finishes to flow from unit j to tank k at event point n
Tsf k , j , n
Time that material finishes to flow from tank k to unit j at event point n
Tss j , k , n
Time that material starts to flow from unit j to storage tank k
Tssk , j , n
Time that material starts to flow from tank k to unit j at event point n
Uif s , j ,n
Flow of raw material s to production unit j at point n
Uof s , j , n
Flow of product material s from unit j at point n
UUf j , s ,t ,n
Amount of state s received by unit j at period v is processed at event n
 j ,n
For unit j, 1 if the unit becomes active for very first time at event point n
k , n
For tank k, 1 if the tank becomes active for very first time at event point n
207
s , s , k , n
Continuous 0-1 variable, 1 if material in tank k switchover service from s at
event point n to s‟ at later event point
 os , s, k
Continuous 0-1 variable, 1 if material in tank k switchover service from s to
s‟
i , i , j , n
Continuous 0-1 variable, 1 if task at unit j changes from i at event point n to
i’at later event point.
208
Chapter 7
7. Augmented Lagrangian Relaxation Approach for Refinery Scheduling
To improve quality of the decision making in the refinery operations, coordination between frontend of a refinery to end-products blending is necessary. Finished product blending and delivery
operations and production unit operations present unique challenges each and lead to a complex
scheduling model. In this work, we present a unified framework for decomposition via
augmented Lagrangian relaxation. The coupling constraints of two operations system are relaxed
using augmented Lagrangian relaxation technique and the full-space model is decomposed into
production unit scheduling relaxed sub-problem and finished product blending and delivery
scheduling relaxed sub-problem. The non-separability terms introduced by augmented penalty are
resolved using diagonal quadratic approximation method. A general decomposition algorithm that
addresses real-world features such as parallel blend headers, multipurpose product tanks, product
giveaway, and blending operations with/without components storage. Applicability of proposed
approach is presented on by addressing four different refinery network configurations: no blend
component tanks, parallel blend units and no component tanks, component tanks present and no
direct flow to blend unit, and direct flow to blend unit and components storage options.
7.1. Introduction
Lagrangian decomposition (LD) method developed in previous chapter addresses scheduling of
refinery operations with rundown blending (no blend component tanks) and proposed restricted
LD is effective addressing large scale problems. In this chapter, a unified decomposition strategy
based on Augmented Lagrangian relaxation method is developed that can address different
refinery configurations effectively. In ordinary Lagrangian decomposition, duality gap exists
between solution of dual problem and the solution original problem in presence of integer
variables or other non-convexities. Thus, heuristic procedures are needed to obtain feasible
209
solution at the end of each iteration. To overcome this problem, an augmented Lagrangian
relaxation (ALR) method is adopted. ALR method has been used in several applications
(Andreani et al., 2008; Fortin & Glowinski, 1983; Gupta et al., 2001; Z. Li & Ierapetritou, 2010a;
Nishi et al., 2008; Tosserams et al., 2006; Tosserams et al., 2008) and strong convergence
property of ALR algorithm is proved by (Andreani et al., 2008). One of the drawbacks of ALR
method is introduction quadratic term by the augmented penalty term. This nonseparability can
be resolved using Diagonal Quadratic Approximation (DQA) method (Ruszczynski, 1995), the
Block Coordinate Decent (BCD) method (Bertsekas, 1995; Bertsimas & Sim, 2003), and the
Alternating Direction Method (Bertsekas & Tsitsiklis, 1989).
In this chapter, we apply augmented Lagrangian optimization algorithm to decompose
refinery operations scheduling problem into production unit scheduling sub-problem and finished
product blending and delivery scheduling sub-problem. This chapter is organized as follows.
Section 7.2 presents solution strategy, section 7.3 proposes detailed Augmented Lagrangian
decomposition (LD) algorithm, and strengthening of decomposition algorithm is presented in
section 7.4. Detailed algorithm steps for augmented Lagrangian relaxation are given in section
7.5. Computational results for several different refinery configurations on which algorithm was
applied are given in section 7.6 and the chapter concludes with summary in section 7.7.
7.2. Solution Strategy
7.2.1. Augmented Lagrangian method
Augmented Lagrangian relaxation is an appropriate decomposition approach when the
problem under study has complicating constraints that upon relaxation leads to smaller subproblems that are easier to solve. This approach is suitable for integrating two independent
scheduling models without needing to obtain full-scale model or using heuristics to find feasible
solution. We briefly present a general augmented Lagrangian optimization algorithm for a
following linear problem:
210
Initial Problem (IP)
z  Min cx  dy
s.t. Hx  b  0
Ax  By  0
x  n , y   q
Where, c n , d q , b m , A and B are m  n and m  q matrices, respectively. To decompose
the model (IP) into sub-problems, we introduce duplicating variables xx and coupling constraints
x  xx  0 .
z  Min cx  dy
s.t. Hxx  b  0
Ax  By  0
x  xx  0
x  n , xx  n , y  q
When coupling constraint are relaxed and incorporated into the objective function. In
addition to Lagrangian term, augmented penalty terms are introduced to reduced duality gap.
Relaxed Problem (RP)
zR  Min cx  dy   T  x  xx     x  xx 
2
s.t. Hxx  b  0
Ax  By  0
x  n , xx  n , y  q
Where,  represents Lagrangian multipliers and  is a positive penalty parameters. The
augmented penalty term cannot be decomposed as it contains an inseparable cross penalty terms (
x  xx ). To resolve the non-separability issue, diagonal quadratic approximation (DQA) method is
used to linearize the cross-product quadratic term around the tentative solution. (Y. Li et al.,
2008)
( x , xx ).  x  xx    x  xx    x  xx    x  xx 
2
2
2
2
Thus with above substitution for the non-separable term, the relaxed problem (RP) can be
decomposed into sub-problem (RP1) and sub-problem (RP2).
211
Subproblem Problem (RP2)
Subproblem Problem (RP1)

Z R1  Min cx  dy   T x   x  xx

2
s.t. Ax  By  0
x  , y 
n

zP 2  Min   T xx  
 x  xx    x  xx  
2
2
s.t. Hxx  b  0
q

xx  n
Resulting decomposed models (RP1) and (RP2) are quadratic optimization problems due to
quadratic terms in the objective function.
The procedure for augmented Lagrangian optimization is as follows:
Step1. Initiate the Lagrangian multiplier  (0) and penalty parameter  (0)  0 , m  0
Step 2. For given  ( m) , ( m) , xx , solve sub-problem (RP1). Update x  x .
Step 3. Solve sub-problem (RP2) based on  ( m) ,  ( m) and x . Update xx  xx .
Step 4. Update the Lagrangian multipliers using multiplier method  ( m 1)   ( m )   m  x  xx  .
m
Step 5. If g
m
 g
m 1
, update  m1   m . Here,   (0,1) . For convex objective function,   1
is strictly necessary and for fast convergence, 2    3 range is recommended. (Tosserams et al.,
2006)
Step 6. If g   , the feasible solution is calculated. Here,   0 Otherwise, m  m  1 .
Step 7. If iteration number m is larger than the pre-specified number, terminate. Otherwise, go to
step 2.
Here, g  x  xx , is a coupling constraint violation matrix. Penalty parameter (  ) is updated
when the constraint violation is not decreased by a factor  . Algorithm is terminated when the
tolerance is met for constraints violations and feasible solution is found or predefined maximum
iteration limit is reached. The augmented Lagrangian optimization algorithm always converges to
a feasible solution for    .
7.2.2. Decomposition Strategy
Large scale MILPs such as problem (P) proposed in Chapter 4, require specialized
solution algorithms that can take into account unique characteristics of unit specific event – points
212
in presence of multi-purpose blend units, and intermediate due-dates. We apply augmented
Lagrangian optimization algorithm for solving model (P) and propose modified sub-problems that
helps algorithm to converge to an optimal or near optimal solutions. To obtain sub-problems,
refinery network is decoupled following the concept of spatial decomposition (e.g. (Karuppiah et
al., 2008)). The network is split into two sub-networks, one belonging to production unit
operations and other belonging to finished product blending and delivery operations.
Production
units
PN
BN
kCf sP,t
kCf sB,t
kCTf sP,t , kCTssP,t
kCTf sB,t , kCTssB,t
Cf sP, j ,t
Cf sB, j ,t
CTf jP,t , CTs Pj ,t
CTf jB,t , CTs Bj ,t
Production Unit Operations
Component
tanks
Blenders
Blending and delivery Operations
Figure 7.1 Spatial decomposition of a refinery network
To picture physical split, imagine cutting pipelines transferring blend components from
production units to blend units or blend component tanks. The variables corresponding to the split
pipelines correspond to complicating variables in full-scale model and these variables are amount
of material flow and start and finish time of the flow between production operations sub-structure
(PN) and blending operations sub-structure (BN). In original model (P), flow of blend component
s from production unit j to blend unit j  at event point n ( JJf s , j , j , n ), flow of component s
from production unit j to blend component storage tank k at event point n ( Kif s , j ,k ,n , ins , j , k , n ),
and start and finish timing variables for flow of material between unit and component tanks (
Tss j , k , n , Tsf j , k , n ), are complicating variables. Other variables in model (P) are called non-linking
213
variables since they are separate for both sub-structures PN and BN. Using the approach
presented in section 7.2.1, the complicating variables are duplicated, coupling constraints are
introduced to model (P) and then these coupling constraints are relaxed in Augmented Lagrangian
fashioned using diagonal quadratic approximation method to eliminate non-separable terms. This
allows us to decompose the relaxed model (RP) shown below into two models corresponding to
sub-networks PN and BN.
min L( ,  ,  )  z 

sSbc , j , j , n


s , j , j , n  JJf sB, j , j , n  JJf sP, j , j , n  
 j , k , n Tss
j , k Kbc , n
B
j , k , n
 Tss
P
j , k , n
 
j , k K bc , n

   JJf

   Kif

P
  
JJf sB, j , j , n  JJf s , j , j , n
 sSbc , j , j , n
P

  
Kif sB, j , k , n  Kif s , j , k , n
 sSbc , j , k , n

sSbc , j , k , n
 s , j , k , n  Kif sB, j , k , n  Kif sP, j ,k ,n 
 j , k , n Tsf jB, k , n  Tsf jP, k , n 
2
B
s , j , j , n
2
B
s , j , k , n
 JJf sP, j , j , n
   JJf
 Kif sP, j , k , n
2
B
   Kif
2
P
s , j , j , n
 JJf s , j , j , n
B
P
s , j , k , n
 Kif s , j ,k ,n

  Tss
B
j , k , n
 Tss Pj , k , n
  Tss
B
j , k , n
 Tss j , k , n

  Tsf
B
 Tsf jP, k , n
  Tsf
B
 Tsf

P
    Tss Bj , k , n  Tss j , k , n
 j , kKbc , n
P

    Tsf jB, k , n  Tsf j , k , n
 j , kKbc , n
2
2
j , k , n
2
2
j , k , n
s.t. constraints corresponding and variables in (P) proposed in Chapter 4
P
 
2
 
2
 
P
j , k , n
2
 
2
(RP)
However, to avoid introducing large set of complicating variables ( JJf s , j , j ,n , Kif s , j ,k ,n ,
ins , j , k , n , Tss j , k , n , Tsf j , k , n ), we aggregate the blend component s streams from multiple production
units supplying BN into one stream supplying BN as seen in Figure 7.1. Similarly, multiple inlet
streams for a blend component s that has storage option available, is aggregated into one inlet
stream which is then split into multiple stream connecting different component tanks (Figure 7.1).
New the complicating variables are reduced to ( Cf s, j ,n , KCf s ,n , KCTss , n , KCTf s , n ). Here, Cf s, j ,n is
flow of component s from sub-structure PN into blend unit j in BN an event-point n . For blend
component that can be stored in component tanks, KCfn s , n is flow of component s from PN to
BN at event-point n , and KCTss , n / KCTf s , n is start/finish time of flow of component s from PN
to BN at event-point n .
214
Complicating variables are in terms of continuous time representation and notion of unit
specific event points. When augmented Lagrangian algorithm is implemented, this types of model
leads to sub-optimal solutions and oscillations in objective function in the beginning of the
algorithm, especially for a refinery configuration that has no blend component storage options
and multipurpose blend units. To eliminate this behavior, we introduce a new transfer event-point
t that is only active if there is flow of material between production unit operations and blending
operations and the complicating variables can we replaced with ( Cf s , j ,t , KCf s ,t , KCTss ,t , KCTf s ,t ).
The detail information regarding new transfer event-point t and its relationship with event-point
n is provided in detail in section 7.3. Furthermore, the start and finish time of component s flow
between PN and a blend unit j are not defined explicitly in full-scale model and therefore these
complicating variables ( CTs j ,t , CTf j ,t ) need to be defined in decomposed models. The timing
variables for a component s flow between PN and a blend unit j at transfer event- point t is
defined as CTs j ,t and CTf j ,t instead of CTss , j ,t and CTf s , j ,t because all components that are
supplied directly to the blend unit must have same start and finish times due to continuous
production.
Using the updated set of complicating variables ( Cf s , j ,t , KCf s ,t , CTs j ,t , CTf j ,t , KCTss ,t ,
KCTf s ,t ), we obtain a new relaxed problem (LRP) where old complicating variables ( JJf s , j , j , n ,
Kif s , j ,k ,n , ins , j , k , n , Tss j , k , n , Tsf j , k , n ) connecting two sub-structures and related constraints are
eliminated from model (RP).
215

min f  z 
sSbc , jJ BU , tT

s , j ,t  Cf sB, j ,t  Cf sP, j ,t  
   KCf
s ,t
sSbc , t
   CTs
j ,t

 CTs Pj ,t    j ,t  CTf jB,t  CTf jP,t 
B
j ,t
jJ BU ,t

 KCf sP,t    s ,t  KCTssB,t  KCTssP,t    s ,t  KCTf sB,t  KCTf sP,t 
B
s ,t
  Cf  Cf   Cf  Cf  


 CTs  CTs    CTs  CTs    CTs  CTs  
  

 CTf  CTf

CTf

CTf

CTf

CTf
 
 
 
 


 KCf  KCf    KCf  KCf    KCf  KCf 





     KCTs  KCTs    KCTs  KCTs    KCTs  KCTs  




  KCTf  KCTf    KCTf  KCTf    KCTf  KCTf  




P

B
 Cf s , j ,t  Cf s , j ,t
sSbc , jJ BU , t 

sSbc , t
2
2
P
j ,t
j ,t
2
2
B
s ,t
P
s ,t
s ,t
B
s ,t
P
s ,t
2
P
2
B
s ,t
s ,t
B
P
s , j ,t
s , j ,t
B
P
j ,t
j ,t
B
P
s ,t
s ,t
2
B
s ,t
P
s ,t
B
P
s ,t
2
2
P 2
s ,t
B
s ,t
2
s ,t
2
P 2
j ,t
B
j ,t
P
j ,t
B
j ,t
P
B
s ,t
P
s , j ,t
B
j ,t
2
P
B
j ,t
2
B
s , j ,t
P 2
j ,t
B
j ,t
jJ BU , t
2
2
B
P
s ,t
s ,t
(LRP)
s.t. constraints corresponding to non-linking variables in (P)
Following the augmented Lagrangian decomposition approach presented in section 7.2.1,
model (LRP) can be decomposed into two relaxed sub-problems (LBSP) and (LPSP) such that
model (LBSP) includes equations and variables pertaining to sub-network BN, while model
(LPSP) includes equations and variables corresponding to the structure PN. The bounds of nonlinking variables in both the both sub-problems are same as original full-space model (P) whereas
the original linking variables are eliminated from the original full-space problem (P) and will be
replaced with new variables that will be defined in section 7.3. The two models (LBSP) and
(LPSP) are as follows:

min f BSP  z 
sSbc , jJ

s , j ,t Cf sB, j ,t 
BU

j J
,t
 
sSbc , t
s ,t


BU
CTs Bj ,t   j ,t CTf jB,t 
,t
B
s ,t

P
Cf sB, j ,t  Cf s , j ,t
P

B
 KCf s ,t  KCf s ,t
sSbc , t 

j ,t
KCf   s ,t KCTssB,t   s ,t KCTf sB,t 
sSbc , jJ BU , t

 

2


P

B
 CTs j ,t  CTs j ,t
jJ BU , t 

   KCTs
2
B
s ,t
P
 KCTs s ,t
 
2
 CTf jB,t  CTf
   KCTf
2
s.t. constraints corresponding to units and connections in BN
B
s ,t
P
 KCTf s ,t
P
j ,t
 
2
 
2
(LBSP)
216
 
min f PSP  z 
s , j ,t
sSbc , jJ BU , t

 
sSbc , t
s ,t
Cf sP, j ,t  
 
jJ BU , t
j ,t
CTs Pj ,t   j ,t CTf jP,t 
KCf   s ,t KCTssP,t   s ,t KCTf sP,t 
P
s ,t
  Cf  Cf  


 CTs  CTs    CTs  CTs  
  

 CTf  CTf
  CTf  CTf  
 


 Kif

 KCf  KCf    Kif





     KCTs  KCTs    KCTs  KCTs  




  KCTf  KCTf    KCTf  KCTf  




B

P
 Cf s , j ,t  Cf s , j ,t
BU

sSbc , jJ , t

2
B
j ,t
2
P
j ,t
j ,t
2
B
P
s ,t
s ,t
B
s ,t
P
s ,t
B
P
s ,t
sSbc , t
s ,t
B
P
s , j ,t
s , j ,t
2
P 2
j ,t
B
j ,t
P
j ,t
B
jJ BU , t
2
B
P
j ,t
j ,t
2
B
P
s , j , k , n
s , j , k , n
2
2
B
s ,t
P 2
s ,t
2
B
P
s ,t
s ,t
2
s.t. constraints corresponding to units and connections in PN
(LPSP)
Here, s, j ,t ,  s, j ,t ,  s, j ,t , s,t ,  s,t , and s,t represent Lagrangian multipliers and  is the
corresponds to augmented Lagrangian penalty term. The scheduling model (LBSP) and (LPSP)
min
min
can be solved using different number of event points, epPN
and epBN
corresponds to the minimum
number of event-points ( n ) required to obtain optimal solution of (LPSP) and (LBSP),
min
respectively. The cardinality of transfer event-point set is equal to epPN
, that is set
T  1, 2,
min
, epPN
.
7.3. Decomposed Models
In addition to non-linking variables and constraints present in (P), decomposed models
(LBSP) and (LPSP) includes additional constraints and variables to define complicating variables
in terms of new transfer event-point t . We first present finished product blending and delivery
scheduling problem (LBSP) and then relaxed production unit scheduling model (LPSP).
217
7.3.1. Relaxed Blend Scheduling Problem
Product
tanks
BN1
Kif s , j , k , n
Component
tanks
Blenders
Tsf j , k , n , Tss j ,k ,n
kCf sB,t
kCTf sB,t , kCTssB,t
BN2
Cf sB, j ,t
B
j ,t
CTf , CTs
Uif s , j ,n
B
j ,t
Tf i , j , n , Tsi , j , n
Figure 7.2 Spatial decomposition of blend sub-network structure (BN)
Finished product blending and delivery operations correspond to sub-structure BN shown
in Figure 7.2 in detail. In this problem we assume that all blend component tanks are dedicated
tank and blend components are either supplied directly to a blend unit or are supplied to
component tanks. Blending operations features parallel blend units, multiple non-identical blend
units producing different products, multipurpose blend units, and multipurpose product tanks. BN
can be decomposed into smaller sub-structures using following rule: sub-structures do not have
common blend components, products, units, and tanks. Spatial decomposition using this rule is
carried out in Figure 7.2 and we obtain two sub-structures BN1 and BN2. Based on this
decomposition, problem (LBSP) can be decompose into two independent problems (LBSP1) and
(LBSP2), where model (LBSP1) contain all the variables and equations relating to sub-network
BN1 and problem (LBSP2) includes all the variables and equations relating to sub-network BN2.
For a given refinery network, additional decomposition of BN can be carried out to obtain more
218
than 2 sub-networks and corresponding decomposed scheduling models if possible and set BN
includes all the decomposed sub-network of BN, e.g. BN  BN1, BN 2 . These independent
decomposed scheduling models can be solved using different number of event-points and
parameter epbnmin gives minimum number of event-points needed to solve scheduling problem
corresponding to sub-network bn to optimality.
Since original complicating variables ( JJf s , j , j ,n , Kif s , j ,k ,n , ins , j , k , n , Tss j , k , n , Tsf j , k , n ) are
eliminated from (LBSP), we make following changes:
-
If a blend component is supplied directly to unit without storage options, then the blend
component is treated as a raw material for blend unit and flow of component s to blend
unit j at event-point n is given by Uif s , j ,n
-
A unit is added set J for BN to represent a dummy production unit
-
For blend component that can be stored into tanks, variable Kif s , j ,k ,n represent flow of
component s into tank k from dummy production unit j at event-point n
The start and finish time ( Tss j , k , n , Tsf j ,k ,n ) for flow into the component tank at event-point n is
define by Eq. (1).
Kif s , j , k , n  M Tsf j , k , n  Tss j , k , n   M 1  ins , j , k , n  , s  Sbc , k  K s , j  J dmy , n  N
(1)
Here, the binary variable ins , j ,k ,n is defined by equation (7a) in Chapter 4 and is equal to 1 if the
blend component is flowing into tank at event-point n . If component is supplied to the tank from
a dummy production unit j at event-point n , then total amount is bounded by product of big-M
and duration of flow into the tank.
To represent complicating variables in terms of transfer event-point t instead of eventpoint n , we introduce 0-1 continuous variables x j ,n,t and xks, n,t . These variables are 1 if a transfer
event-point t to corresponds to an active event-point n , otherwise 0.
219
x Bj , n ,t   wvi , j , n , j  J BU  J ds , n  N , t  T , n  t
iI j
x Bj , n ,t  1 
x Bj , n ,t  1 

x Bj , n ,t  , j  J BU  J ds , n  N , t  T , n  t
(2b)

x Bj , n,t , j  J BU  J ds , n  N , t  T , n  t
(2c)
t  t ,t  n
n n , n t
x Bj , n ,t   wvi , j , n 
iI j
x
n t 
B
j , n ,t 
(2a)

t  t ,t  n
  x Bj , n ,t ,
x Bj , n ,t  

n n , n t
x Bj , n ,t  , j  J BU  J ds , n  N , t  T , n  t
j  J BU  J ds , t  T , t   T , t   t
n t
(2d)
(2e)
x Bj , n,t  x Bj , n,t   1, j  J BU  J ds , n  N , n  N , n  n, t  T , t   T , t   t , n  t , n  t , n  t , n  t 
(2f)
x Bj , n,t  0, j  J BU  J ds , n  N , t  T , n  t
(2g)
Constraints (2a)-(2g) are for a blend unit that receives at least one blend component
directly from production unit operations. Binary assignment variable wvi , j ,n is 1 if task i is active
at event-point n for unit j . For a blend unit j that is performing some task at event-point n ,
Eqs. (2a)-(2d) only one event-point t to the event-point n . Eqs. (2e) enforce that event-point
t   t should be assign an active event-point n before event-point t . More ever, for any two active
event-points n  n , n must be assigned to an event-point t  before assigning n to an event-point
t , where t   t . Constraints (2a)-(2e) eliminates an occurrence of a situation where x j , n,t  1 and
x j , n,t   0 for t   t . Since there is one to one correspondence between an active event-point n and
event-point t for a unit j , we introduce Eq. (2g) to fix variable x j , n,t  0 whenever n  t .
Similar to constraints (2a)-(2g) for blend unit that receive components directly from
production unit operations, we present Eqs. (3a)-(3g) for blend component tanks as follows:
xksB, n,t 

k K s , jJ dmy
xksB, n ,t  1 

t  t ,t  n
ins , j , k , n , s  Sbc  Sk , n  N , t  T , n  t
(3a)
xk sB, n ,t  , s  Sbc  S k , n  N , t  T , n  t
(3b)
220
xk sB, n ,t  1 
xksB, n,t 
 xk
n t 

n n , n t

jJ dmy
B
s , n ,t 
xksB, n,t , s  Sbc  Sk , n  N , t  T , n  t
ins , j , k , n 
  xk sB, n ,t ,
nt

t  t ,t  n
xksB, n,t  

n n , nt
xk sB, n,t  , s  Sbc  Sk , k  K s , n  N , t  T , n  t
s  Sbc  S k , t  T , t   T , t   t
(3c)
(3d)
(3e)
xksB, n,t  xksB, n,t   1, s  Sbc  Sk , n  N , n  N , n  n, t  T , t   T , t   t , n  t , n  t , n  t , n  t 
(3f)
xksB,n,t  0, s  Sbc  Sk , n  N , t  T , n  t
(3g)
Complicating variables ( Cf s , j ,t , KCf s ,t , CTss , j ,t , CTf s , j ,t , KCTss ,t , KCTf s ,t ) expressed through
transfer event-point t are defined below:
Cf sB, j ,t  Uif s , j , n  M 1  x Bj , n ,t  , j  J BU , s  S cj / S k , n  N , t  T , n  t
(4a)
Cf sB, j ,t  Uif s , j , n  M 1  x Bj , n ,t  , j  J BU , s  S cj / S k , n  N , t  T , n  t
(4b)
Cf sB, j ,t  M  x Bj , n ,t ,
(4c)
n t
j  J BU , s  S cj / S k , t  T
CTs Bj ,t  Tsi , j , n  UH  2  wvi , j , n  x Bj , n,t  , j  J BU  J ds , i  I j , n  N , t  T , n  t
(5a)
CTs Bj ,t  Tsi , j , n  UH  2  wvi , j , n  x Bj , n,t  , j  J BU  J ds , i  I j , n  N , t  T , n  t
(5b)
CTf jB,t  Tf i , j , n  UH  2  wvi , j , n  x Bj , n ,t  , j  J BU  J ds , i  I j , n  N , t  T , n  t
(5c)
CTf jB,t  Tf i , j , n  UH  2  wvi , j , n  x Bj , n ,t  , j  J BU  J ds , i  I j , n  N , t  T , n  t
(5d)
CTs Bj ,t  UH  x Bj , n ,t ,
j  J BU  J ds , t  T
(5e)
CTf jB,t  UH  x Bj , n ,t ,
j  J BU  J ds , t  T
n t
nt
(5f)
Flow of component s from sub-network PN to blend unit j at transfer event-point t is
equal to raw material flow into the blend unit at event-point n if x j ,n,t equal to 1 as stated by Eqs.
(4a)-(4b). Eq. (50c) forces Cf
s , j ,t
to be zero if at transfer event point t , no flow exists between
PN and a blend unit in BN. As given in Eqs. (5a)-(5d), timing variables for component flows at
event-point t into a blend unit j are determined by start and finish time of blend run-mode at
221
corresponding event point n . Eqs. (5e)-(5f) force start and finish time to be zero at event-point t
if the event-point t is not assigned to any event-point n . Similarly, he complicating variables
associated with blend component tanks are determined by Eqs. (6a)-(7f) as shown below.
Aggregated component s stream connecting PN and BN sub-networks is split into multiple
streams connecting suitable component tanks as expressed by Eqs. (6a)-(6b).
KCf sB,t 
KCf sB,t 
KCf sB,t 

Kif s , j , k , n  M 1  xksB, n ,t  , s  Sbc  Sk , n  N , t  T , n  t
(6a)

Kif s , j , k , n  M 1  xksB, n ,t  , s  Sbc  Sk , n  N , t  T , n  t
(6b)
k K s , jJ dmy
k K s , jJ dmy
 V  xk
k K s
max
k
n t
B
s , n ,t
, s  Sbc  S k , t  T
(6c)
KCTssB,t  Tss j , k , n  UH  2  ins , j , k , n  xk sB, n ,t  , s  Sbc , k  K s , j  J dmy , n  N , t  T , n  t
(7a)
KCTssB,t  Tss j , k , n  UH  2  ins , j , k , n  xk sB, n ,t  , s  Sbc , k  K s , j  J dmy , n  N , t  T , n  t
(7b)
KCTf sB,t  Tsf j , k , n  UH  2  ins , j , k , n  xk sB, n ,t  , s  Sbc , k  K s , j  J dmy , n  N , t  T , n  t
(7c)
KCTf sB,t  Tsf j , k , n  UH  2  ins , j , k , n  xk sB, n ,t  , s  Sbc , k  K s , j  J dmy , n  N , t  T , n  t
(7d)
KCTssB,t  UH  xk sB, n ,t ,
s  Sbc  S k , t  T
(7e)
KCTf sB,t  UH  xk sB, n ,t ,
s  Sbc  S k , t  T
(7f)
n t
nt
If no transfer of flow exists between BN and PN for component s that can be stored in tanks at
transfer event-point t , then the corresponding transfer variables are fixed to zero as enforced by
Eqs. (6c), (7e) and (7f).
7.3.2. Relaxed Production Unit Scheduling Problem
In production unit operations, more than one production unit can produce a blend component s
and these blend component can be either directly supplied to a blend unit j   J BU or can be sent
to a blend component tanks but not both. Original complicating variables ( JJf s , j , j ,n , Kif s , j ,k ,n ,
ins , j , k , n , Tss j , k , n , Tsf j , k , n ) are eliminated in model (LPSP) and blend components are defined as
222
products instead of intermediates in PN (Figure 7.3). Depending on if the blend component can
be stored in tank or not in BN, following changes are made:
For blend component s supplied directly to a blend unit j  without storage options and
-
produced by production unit j at event-point n , the flow is represented by Uofbs , j , j , n .
-
For blend component s that can be stored into tanks and produced by production unit j
at event-point n , the flow is given by Uof s , j ,n .
Production
units
PN
Uof s , j ,n
Tf i , j , n , Tsi , j , n
kCf sP,t
kCTf sP,t , kCTssP,t
Cf sP, j ,t
Uofbs , j , j ,n
CTf jP,t , CTs Pj ,t
Tf i , j , n , Tsi , j , n
Figure 7.3 Production unit operations network
The material balance constraints (3a) in section 4.3 for blend component s and for production
unit j and valid inequality (42) are updated as to define blend components as raw material for
PN as follows:
 bp
iI j

s ,i , j , n
k K kp
j  Ks


k K jpk
Kif s , j , k , n 
JJf s , j , j , n  Uof s , j , n 


j J
c
j J seq
j Js
 Ks
Kof s , k , j , n 

BU
Uofbs , j , j ,n , s  S , j  J sp , n  N
 J sc
JJf s , j , j , n  Uif s , j , n
p
j J seq
j Js


(3a‟)
k K jpk  K s
Kif s , j , k , n 

c
j J seq
j Js
JJf s , j , j , n  Uof s , j , n 

Uofbs , j , j , n , j  J , n  N
(42‟)
j J BU  J sc
To determine if transfer happening between production unit j and blend unit j  at event-point n ,
a binary variable a j , j,n is introduced. This variable is needed because refinery might have
223
multiple blend units that can consume blend component s . According to Eq. (8), if production
unit j is supplying a component to a blend unit j  at event-point n then binary variable a j , j,n is
equal to 1.
max
Uofbs , j , j , n    bsmax
s  Sc / Sk , j  J sp , j   J bu  J sc , n  N
, j  RB j  UH  a j , j , n ,
(8)
Here, bsmax
is maximum blend recipe component s and RBmax
is maximum blending
,j
j
rate for blend unit j and they are determined using the available information about blending
operations. Eqs. (9a)-(9d) determines maximum/minimum blend recipe for components and
maximum/minimum production rate for each blend units, respectively.
c ,max
 bsmax
 , s  Sbc , j  J BU  J sc
, j  max   s , i
(9a)
c ,min
 bsmin
 , s  Sbc , j  J BU  J sc
, j  min   s , i
(9b)
RB max
 max  Rimax
j  J BU
j
, j ,
(9c)
RB min
 min  Rimin
j  J BU
j
, j ,
(9d)
iI j
iI j
iI j
iI j
The flow of a component into sub-network BN is bounded by total storage capacity in BN at any
given time as stated by Eq. (10).
Uof s , j , n 
V
k K s
max
k

wvi , j , n , s  Sbc  Sk , j  J sp , n  N
iI j  I sp
(10)
To obtain the complicating variables in terms of transfer event-point t , constraints similar to
(2a)-(2g) are added to production scheduling problem. For a blend unit that receives at least one
blend component directly from PN, Eqs. (11a)-(11g) are used and for a blend component that has
storage options available in BN, Eqs. (12a)-(12g) are used to determine active transfer flow at
event-point t . Here, variables x j ,n,t and xks,n,t are continuous 0-1 variables.
x Pj , n,t 

j J seq
j
a j , j , n , j  J BU  J ds , n  N , t  T , n  t
(11a)
224
x Pj , n ,t  1 
x Pj , n ,t  1 

x Pj , n ,t  , j  J BU  J ds , n  N , t  T , n  t
(11b)

x Pj , n,t , j  J BU  J ds , n  N , t  T , n  t
(11c)

(11d)
t  t ,t  n
n n , n t
x Pj , n ,t  a j , j , n 
x
n t 
P
j , n ,t 
t  t ,t  n
  x Pj , n ,t ,
x Pj , n ,t  

n n , nt
x Pj , n,t  , j  J BU  J ds , j   J seq
j , n  N,t T , n  t
j  J BU  J ds , t  T , t   T , t   t
n t
(11e)
x Pj , n,t  x Pj , n,t   1, j  J BU  J ds , n  N , n  N , n  n, t  T , t   T , t   t , n  t , n  t , n  t , n  t 
(11f)
x Pj , n,t  0, j  J BU  J ds , n  N , t  T , n  t
(11g)

xksP, n,t 
wvi , j , n , s  Sbc  Sk , n  N , t  T , n  t
iI sp , jJ i
xksP, n ,t  1 
xk sP, n ,t  1 
xksP, n,t 

xk sP, n ,t  , s  Sbc  S k , n  N , t  T , n  t
(12b)

xksP, n,t , s  Sbc  Sk , n  N , t  T , n  t
(12c)
t  t ,t  n
n n , n t
 wv
i, j ,n

iI sp
 xk
n t 
P
s , n ,t 
(12a)

t  t ,t  n
  xk sP, n ,t ,
nt
xksP, n,t  

n n , nt
xksP, n,t  , s  Sbc  S k , j  J sp , n  N , t  T , n  t
s  Sbc  S k , t  T , t   T , t   t
(12d)
(12e)
xksP, n,t  xksP, n,t   1, s  Sbc  Sk , n  N , n  N , n  n, t  T , t   T , t   t , n  t , n  t , n  t , n  t 
(12f)
xksP,n,t  0, s  Sbc  Sk , n  N , t  T , n  t
(12g)
Similar to Eqs. (4a)-(7f) used to determine flow amounts and duration of components flow into
BN, Eqs. (13a)-(16f) are used to determine the complicating variables associated with transfer
event as follows:
Cf sP, j ,t 
 Uofb
max
P
  bsmax
j  J BU , s  S cj / S k , n  N , t  T , n  t
, j RB j UH 1  x j , n , t  ,
(13a)
 Uofb
max
P
  bsmax
j  J BU , s  S cj / S k , n  N , t  T , n  t
, j RB j UH 1  x j , n , t  ,
(13b)
s , j , j , n
j J sp
Cf sP, j ,t 
s , j , j , n
j J sp
max
Cf sP, j ,t   bsmax
UH  x Pj , n ,t ,
, j RB j
nt
j  J BU , s  S cj / S k , t  T
(13c)
225
CTs Pj ,t  Tsi , j ,n  UH  3  wvi , j ,n  a j , j ,n  x jP,n ,t  , j  J BU  J ds , j   J jseq ,i  I j  ,n  N ,t T ,n  t
(14a)
CTs Pj ,t  Tsi , j ,n  UH  3  wvi , j ,n  a j , j ,n  x jP,n ,t  , j  J BU  J ds , j   J jseq ,i  I j  ,n  N ,t T ,n  t
(14b)
CTf jP,t  Tf i , j ,n  UH  3  wvi , j ,n  a j , j ,n  x jP,n ,t  , j  J BU  J ds , j   J jseq ,i  I j  ,n  N ,t T ,n  t
(14c)
CTf jP,t  Tf i , j ,n  UH  3  wvi , j ,n  a j , j ,n  x jP,n ,t  , j  J BU  J ds , j   J jseq ,i  I j  ,n  N ,t T ,n  t
(14d)
CTf jP,t  UH  x Pj , n, t ,
j  J BU  J ds , t  T
(14e)
CTf jP,t  UH  x Pj , n, t ,
j  J BU  J ds , t  T
nt
nt
KCf sP,t 
 Uof
s, j, n

KCf sP,t 
 Uof
s, j, n

jJ sp
KCf sP,t 
V
 1  xksp, n, t  , s  Sbc  Sk , n  N , t  T , n  t
(15a)
V
 1  xksp, n, t  , s  Sbc  Sk , n  N , t  T , n  t
(15b)
max
k
n t
max
k
k K s
 V  xk
k K s
max
k
k K s
jJ sp
(14f)
P
s , n, t
, s  Sbc  S k , t  T
(15c)
KCTs sP,t  Tsi , j ,n  UH  2  wvi , j ,n  xk sP,n ,t  , s  S bc , S k ,i  I sp , j  J i ,n  N ,t T ,n  t
(16a)
KCTs sP,t  Tsi , j ,n  UH  2  wvi , j ,n  xk sP,n ,t  , s  S bc , S k ,i  I sp , j  J i ,n  N ,t T ,n  t
(16b)
KCTf sP,t  Tf i , j ,n  UH  2  wvi , j ,n  xk sP,n ,t  , s  S bc , S k ,i  I sp , j  J i ,n  N ,t T ,n  t
(16c)
KCTf sP,t  Tf i , j ,n  UH  2  wvi , j ,n  xk sP,n ,t  , s  S bc , S k ,i  I sp , j  J i ,n  N ,t T ,n  t
(16d)
KCTssP,t  UH  xk sP, n, t ,
s  Sbc  S k , t  T
(16e)
KCTf sP,t  UH  xk sP, n, t ,
s  Sbc  S k , t  T
(16f)
n t
nt
As mention before, the multiple streams for a blend component are aggregated into one stream to
reduce complicating variables in augmented Lagrangian decomposition algorithm. Thus, the flow
of component s between PN and BN at transfer event-point t is determined in Eqs. (13a), (13b),
(15a), and (15b) by adding component s flow from multiple production units. More ever, flow
max
of component s to a blend-unit j is bounded by maximum consumption rate ( bsmax
, j RB j UH )
226
and flow to storage tanks is limited by maximum available storage capacity (  Vsmax ). Duration
k K s
of a transfer event between PN and a blend unit j is determined by the start and finish time of
run-modes of production units that are supplying material to the blend unit (i.e. a j , j ,n = 1). In
addition to determine the timing variables for a direct flow of components between a production
unit and a blend unit at transfer event-point t , Eqs. (14a)-(14d) enforces that same start and finish
time for flow of all components that can be consumed by the blend unit. Similarly, the (16a)(16d) assigns start and finish time for flow of components that can be stored in tanks. If no flow
transfer between PN and BN at event-point t , then corresponding linking variables are zero as
enforced by Eqs. (13c),(14e),(14f), (15c), (16e), and (16f).
7.4. Strengthening the Augmented Lagrangian Decomposition
When refinery operations network is decomposed, information regarding the operational
and logistics rules that govern flow of components between PN and BN is lost. To incorporate
many of these rules without destroying separability, additional constraints are included in (LBSP)
and (LPSP) and presented in section 7.4.2. These constraints speed up convergence to a feasible
solution in augmented Lagrangian optimization algorithm and in most instances push feasible
solution closer to a global optimal solution. To further improve performance of augmented
Lagrangian optimization, valid inequalities can be added to improve computational efficiency of
decomposed models and they are presented in Appendix Chapter 7 for model (LBSP) and
(LPSP).
To improve integration between PN and BN, production capacity limitation of production
unit operations should be obtained before start of the optimization algorithm.
7.4.1. Preprocessing Step
When refiner network is decomposed into (BN) and (PN), the resulting decomposed
scheduling problem (LBSP) does not take into consideration the production capacity limitation of
227
production unit operations. Therefore, a pre-processing step before the start of the algorithm is
needed to determine maximum and minimum production rate of each blend component.
Relaxed production unit operation scheduling model (LPSP) is optimized for one of the
following objective function to obtain maximum and minimum production rate for a blend
component s .
z  Cf s , j ,T   CTf j ,T  CTs j ,T  , s  Sbc \ S k , j  J sc
(17a)
z  KCf s ,T   KCTf s ,T  KCTss ,T  , s  Sbc  S k
(17b)
Objective function (17a) is maximized to determine the maximum production flow rate of a
component s to a blend unit j and Eq. (17b) is used to obtain the maximum production rate for
components that have storage options available. The minimum flow rate would always be zero
unless constraint (18a)-(18b) is added to the model to require flow to happen.
x
j , n ,T
 1,
s  Sbc \ S k , j  J sc
(18a)
n
 xk
s , n ,T
 1,
s  Sbc  S k
(18b)
n
Eq. (18a) requires the flow of component s from PN to a blend unit at transfer event-point T and
for component that can be stored in tanks, Eq. (18b) enforces flow to happen at event-point T .
For blend units that receive all the components directly from production unit operations without
any storage, the maximum and minimum total flow rate into a blend unit is determined using
objective function given in Eq. (19).
z
 Cf
sSbc
s , j ,T

  CTf j ,T  CTs j ,T  , j  J BU  J ads
(19)
P
Upon solving the pre-processing problems, we obtain values of variables { Cf s , j ,t , CTs Pj,t , CTf jP,t ,
x Pj, n ,t , KCf sP,t , KCTssP,t , KCTf sP,t , xk sP, n ,t } from the optimal solution.
RPus , j 
Cf sP, j ,T  x Pj , n,T
n
Tf jP,T  Ts Pj ,T
, j  J BU , s  S cj \ Sk
(20a)
228
RPks 
KCf sP, j ,T  xksP, n,T
n
KTf sP,T  KTssP,T
 Cf  x
P
s , j ,T
RPj 
sS cj
, s  Sbc  Sk
(20b)
, j  J BU  J ads
(20c)
P
j , n ,T
n
Tf jP,T  Ts Pj ,T
Flow rate for a component from PN to a blend unit is calculated using Eq. (20a), total flow rate
into the blend unit is determined using Eq. (20c) and Eq. (20b) is used for components that are
stored in tanks.
7.4.2. Strengthening Decomposed Problems
Many constraints that are unnecessary or redundant in full-scale model (P) are needed in
decomposed model to obtain a solution that is much more align with a feasible solution of fullscale problem and to speed up convergence to a feasible solution in augmented Lagrangian
algorithm. In this section, we propose constraints that improve performance of the decomposition
algorithm.
7.4.2.1.
Relaxed Blend Scheduling Problem
Lower bound on the duration of the component flow from PN to BN is determined by
minimum run-length ( RL ) requirement for production units in PN. Thus, constraints (21b) similar
to Eq. (14) of original model in section 4.3 is included in relaxed problem.
Tsf j , k , n  Tss j , k , n  RL  ins , j , k , n  UH 1  ins , j , k , n  , s  Sbc , k  K s , j  J dmy , n  N
(21b)
For a case when more than one blend component can be stored in component tanks in BN
and if these blend components are produced by production units in PN that are interconnected,
that is these production units must operate at the same time, then components produced by these
units would be supplied to BN at the same time.
ins , j , k , n 
 in
k K s
s , j , k , n
, s  Sbc , s   S bc , k  K s , j  J dmy , n  N , cont s , s   0
(22)
229

k K s , k K s
ins , j , k , n 
 in
k K s
s , j , k , n
, s  Sbc , s   S bc , j  J dmy , n  N , conts , s   0
(23)
Here, parameter conts , s is equal to 1 if components s and s  are produced by units in PN that are
interconnected. Eqs. (22)-(23) states that if a blend unit s is being supplied to a component tank at
event-point n then component s  must also be supplied to at least one suitable component tank at
event-point n. Timing constraints for these connected blend components are given in Eqs. (24a)(24d) which enforce same start and finish time for component flow at event-point n.
Tss j , k , n  Tss j , k , n  UH  2  ins , j , k , n  ins , j , k , n  ,
s  Sbc , s   Sbc , k  K s , k   K s  , j  J dmy , n  N , conts , s   0
Tss j , k , n  Tss j , k , n  UH  2  ins , j , k , n  ins , j , k , n  ,
s  Sbc , s   Sbc , k  K s , k   K s  , j  J dmy , n  N , conts , s   0
Tsf j , k , n  Tsf j , k , n  UH  2  ins , j , k , n  ins, j , k , n  ,
s  Sbc , s   Sbc , k  K s , k   K s  , j  J dmy , n  N , conts , s   0
Tsf j , k , n  Tsf j , k , n  UH  2  ins , j , k , n  ins, j , k , n  ,
s  Sbc , s   Sbc , k  K s , k   K s  , j  J dmy , n  N , conts , s   0
(24a)
(24b)
(24c)
(24d)
Furthermore, if multiple tanks are available to store a blend component, then following sequence
constraint (25) are needed as it captures what happens in during production unit operations in PN.
Tss j ,k ,n 1  Tsf j ,k ,n , s  Sbc , k  Ks , k   Ks , k  k , j  J dmy , n  N
(25)
Set J ds includes all blend units that receive at least one blend component directly from
production unit operations without any storage. If all the components consumed by blend unit j
are supplied directly without storage, then that blend unit belongs to set J ads .
The production capacity of blend components determined in pre-processing step is
incorporated into relaxed blend scheduling by removing the big-M term from model.
Kif s , j , k , n  RPk smax Tsf j , k , n  Tss j , k , n   RPk smaxUH 1  ins , j , k , n  , s  Sbc , k  K s , j  J dmy , n  N
B
Cf sB, j ,t  Uif s , j , n  RPusmax
j  J BU , s  S cj / S k , n  N , t  T , n  t
, j UH 1  x j , n , t  ,
(1‟)
(4a‟)
230
B
Cf sB, j ,t  Uif s , j , n  RPusmax
j  J BU , s  S cj / S k , n  N , t  T , n  t
, j UH 1  x j , n , t  ,
(4b‟)
B
Cf sB, j ,t  RPusmax
, j UH  x j , n , t ,
(4c‟)
n t
KCf sB,t 
KCf sB,t 
j  J BU , s  S cj / S k , t  T

Kif s , j , k , n  RPksmaxUH 1  xk sB, n ,t  , s  Sbc  Sk , n  N , t  T , n  t
(6a‟)

Kif s , j , k , n  RPksmaxUH 1  xksB, n ,t  , s  Sbc  Sk , n  N , t  T , n  t
(6b‟)
k K s , jJ dmy
k K s , jJ dmy
Eqs. (1), (4a), (4b), (4c), (6a), and (6b) are replaced with updated constraints (1‟), (4a‟), (4b‟),
(4c‟), (6a‟), and (6b‟). Upper and lower limit on flow into BN from PN at transfer event-point t
is given by Eqs. (26a)-(28b).


B
B
max
B
Cf sB, j ,t  RPusmax
j  J BU , s  S cj / S k , t  T
, j  CTf j , t  CTs j , t   RPu s , j UH  1   x j , n ,t  ,
 n t

(26a)


B
B
max
B
Cf sB, j ,t  RPusmin
j  J BU , s  S cj / S k , t  T
, j  CTf j , t  CTs j , t   RPu s , j UH  1   x j , n ,t  ,
 n t

(26b)


KCf sB,t  RPksmax  KCTf sB,t  KCTssB,t   RPk smaxUH 1   xk sB, n,t  , s  Sbc  S k , t  T
 n t

(27a)


KCf sB,t  RPksmin  KCTf sB,t  KCTssB,t   RPk smaxUH 1   xk sB, n ,t  , s  Sbc  S k , t  T
 nt

(27b)


Cf sB, j ,t  RPjmax  CTf jB,t  CTs Bj ,t   RPjmaxUH 1   x Bj , n,t  , j  J BU  J ads , t  T
 n t

/ Sk
(28a)


Cf sB, j ,t  RPjmin  CTf jB,t  CTs Bj ,t   RPjmaxUH 1   x Bj , n ,t  , j  J BU  J ads , t  T
n

t


/ Sk
(28b)

sS cj

sS cj
Flow of component s to blend unit j is bounded by product of duration of flow and
min
maximum/minimum production rate ( RPu max
s , j / RPu s , j ) as limited by Eqs. (26a) and (26b),
respectively. If no flow exists between PN and a blend unit (i.e.
x
j , n ,t
 0 ) then inequality in
n
(26a)-(26b) is relaxed. For a blend component that can be stored in tanks, if no flow exists
between PN and BN for a (i.e.
 xk
n
s , n ,t
 0 ) then inequalities (27a)-(27b) are relaxed. Similarly,
231
for blend units that receive all their components directly from production unit operations, the total
flow amount is bounded by upper and lower limits as enforced by Eqs. (28a)-(28b).
A lower bound of (LBSP) is obtained, when the model (LBSP) is solved to optimality with all the
Lagrangian and augmented penalty parameter fixed to zero. Thus, solution
f 
BSP ( m  0)
at
algorithm count m  0 gives the best lower bound of (LBSP) and Eq. (29) is added to model.
f BSP   f BSP 
( m  0)
, if
m 1
(29)
For a refinery that has multiple dedicated tanks for blend component storage, Eq. (30) is added to
model when algorithm iteration count is m  1 .
 in
n N
s, j ,k ,n
 1, s  Sbc , k  K sh , j  J dmy , m  1 if
 in
( m  0)
s, j ,k ,n
0
n
(30)
The blend scheduling problem become difficult to solve as the additional flexibility of a parallel
blend component tanks is introduced. To reduce this complexity, Eq. (30) is added for parallel
blend component tanks.
In our work, since we do not maintain minimum inventory levels for components or
blend products, following constraints can be added to simplify the blend scheduling problem.
If one were to require either minimum inventory level for blend components but not finished
blend product, then constraint (31) can be added to the model without compromising the optimal
solution. Finished product blend tanks cannot have simultaneous loading and unloading
operations for security reasons and to allow time for mixing and product specification certificate
analysis. For this reason, if a blend unit is receiving all of its blend components from storage
tanks, then this blend unit would not be active during last event point N because the product
produce will not contribute to demand orders fulfillment and there is no minimum inventory
requirement for products. We add Eqs. (31) to (LBSP) to fix blend unit allocation wvi , j , N to zero.
wvi , j ,n  0, j  J ads , i  I j , n  N
(31)
232
Furthermore, linking variables are compared for transfer event-point t and not event-point n , the
scheduling problem corresponding to sub-network PN can be solved using less number of eventmin
min
min
points n ( epPN
) than scheduling problem corresponding to sub-network BN. When epPN
,
 epbn
then following variables are zero at last event-point in (LBSP) when no minimum inventory level
requirement for components and blend products.
min
ins, j , k , n  0, s  Sbc , k  Ks , j  J dmy , n  N , if epPN
 epbnmin
(32a)
min
min
ins, j , k , n  0, j  J BU  J ds , s  S jp , k  Ks , n  N , if epPN
 epbn
(32b)
min
min
wvi , j ,n  0, j  J BU  J ds , i  I j , n  N , if epPN
 epbn
(32c)
min
min
x j , n,t  0, j  J BU  J ds , t  T , n  N , if epPN
 epbn
(32d)
min
xks, n,t  0, s  Sbc , t  T , n  N , if epPN
 epbnmin
(32e)
min
Cardinality of set T  epPN
and transfer event-point t only corresponds to an event-point n  t .
min
min
When epPN
, flow of components into the BN happens only to satisfy finished product
 epbn
demand, and Eqs. (32a)-(32e) fixes some binary and 0-1 continuous variables to zero for n  N .
If one were to require minimum inventory level for products and components, then these
constraints should not be included in the model.
7.4.2.2.
Relaxed Production unit Scheduling Problem
To insure that demand commitments for finished blend product are met and excess
inventory is minimized in BN, Eqs. (33a) –(33b) are included when parameter is r not zero. The
parameter r is different than algorithm iteration count m and will be defined in section 7.5.

min
sSbc  Sk , jJ sp , n  epbn

Uof s , j , n 
Uofbs , j , j , n
min
sSbc / Sk , jJ sp , j J BU  J sc , n  epbn


sS A  S bn , oOs
Do, s 

sS bn , k K s
stos , k  DmPbn , bn  BN , r  1
(33a)
233


Uof s , j , n 
Uofbs , j , j , n
min
sSbc / S k , jJ sp , j J BU  J sc , n  epbn
min
sSbc  Sk , jJ sp , n  epbn


(33b)
Do, s  InvtPbn , bn  BN , r  1
sS A  S bn , oOs
Each independent sub-networks of BN has their own set of finished blend product demand orders
and initial storage inventory. Eq. (33a) requires production unit operation to produce at least
minimum amount of total components to satisfy demand for each blending operations subnetwork. More ever, if the total demand cannot be met, then a positive slack variable DmPbn is
added to facilitate feasible solution. Eq. (33b) limits the total production of blend components as
it is bounded by maximum demand for finished blend products. For cases where production
exceeds, a positive slack variable InvtPbn is introduced and is later penalized in objective function.
To ensure that demand is met on time and to improve performance of model, constraints
(34a) and (35c) are added to the model when parameter is r  1 .
CTs Pj ,t  CTs j ,t  esPj ,t , bn  BN , j  J bnBU , t  T , t  epbnmin ,  Cf s , j ,t  0, r  1
(34a)
CTs Pj ,t  CTs j ,t  esPj ,t , bn  BN , j  J bnBU , t  T , t  epbnmin ,  Cf s , j ,t  0, r  1
(34b)
CTf jP,t  max
 lePj , bn  BN , j  J bnBU , t  T , t  epbnmin ,  Cf s , j ,t  0, r  1
min
(34c)
B
B
s
B
B
s
B
t  epbn
s
B
B
B
B
min
KCTssP,t  KCTs s ,t  eskPs ,t , bn  BN , s  Sbc , t  T , t  epbn
, KCf s ,t  0, r  1
(35a)
min
KCTssP,t  KCTs s ,t  eskPs ,t , bn  BN , s  Sbc , t  T , t  epbn
, KCf s ,t  0, r  1

B

(35b)
B
min
KCTf sP,t  max
KCTf s ,t  lekPs , bn  BN , s  Sbc , t  T , t  epbn
, KCf s ,t  0, r  1
min
t  epbn
(35c)
Constraints (34a)-(34b) and (35a)-(35b) encourage the start and finish time of flow to be near the
corresponding timing variables‟ solution obtain solving (LBSP). Here esPj ,t , eskPs,t , lePj , and
lekPs are positive slack variables which are penalized in objective function.
Constraint (36) requires the objective function to be bounded by  f PSP 
(LBSP).
r 0
, similar to Eq. (73) in
234
f PSP   f PSP 
( r  0)
r 1
, if
(36)

x Pj , n ,t  1, j  J BU , t  T ,  Cf s , j ,t  0, r  1

xksP, n ,t  1, s  Sbc  Sk , t  T , KCf s ,t  0, r  1
nN , n  t
nN , n  t
B
(37a)
s
B
(37b)
Since PN is producing blend components for BN, we add following requirement (37a)-(37b) in
model (LBSP) when flow variables are nonzero in BN for transfer event-point t .
The slack variables ( DmPbn , Invtbn , esPj ,t , lePj , eskPs ,t , lekPs ) are penalized and the updated objective
function for the model (LPSP) is given below:
 
min ff PSP  z 
s , j ,t
sSbc , jJ

BU
 
sSbc , t
Cf sP, j ,t  
,t
s ,t
 
jJ
BU
j ,t
CTs Pj ,t   j ,t CTf jP,t 
,t
KCf   s ,t KCTs   s ,t KCTf sP,t 
P
s ,t
P
s ,t
  Cf  Cf  


 CTs  CTs    CTs  CTs  
  

 CTf  CTf

CTf

CTf
 
 
 


 Kif

 KCf  KCf    Kif





     KCTs  KCTs    KCTs  KCTs  




  KCTf  KCTf    KCTf  KCTf  




B

P
 Cf s , j ,t  Cf s , j ,t
sSbc , jJ BU , t 

2
B
j ,t
2
P
j ,t
j ,t
2
B
P
s ,t
s ,t
B
P
s , j ,t
s , j ,t
B
P
j ,t
j ,t
P
s ,t
B
P
s ,t
sSbc , t
B
P
s , j , k , n
2
P 2
s ,t
B
s ,t
2
s ,t
2
s , j , k , n
2
B
s ,t
2
P 2
j ,t
B
j ,t
P
j ,t
B
jJ BU , t
2
B
P
s ,t
s ,t
2


Uof s , j , n 
Uofbs , j , j , n 
 Invtbn 


min
min
bnBN , r 1 
sSbc  S k , jJ sp , n  epbn
sSbc / S k , jJ sp , j J BU  J sc , n  epbn


11
16
17
18
c
 DmPbn  c  esPj ,t  c  eskPs ,t  c  lePj
 c3

bnBN , r 1
 c19
sSbc  S k ,t , r 1
jJ BU , t , r 1

sSbc  Sk , r 1
lekPs 
j J
h
min
, t  epbn
,


Cf
B
s , j  ,t
 0,
jJ h , s


min
jJ h , t  epbn
,

Cf
 0, r 1
j J
c 20 x j , n ,t
B
s , j ,t
 0, r 1
s
c1j x j , n ,t 
B
s , j  ,t
 Cf
jJ BU , r 1
h

c1j x j , n ,t
min
, t  epbn
, r 1
jJ h , s
Objective function ff PSP includes original objective function, augmented Lagrangian terms and
additional terms that tries to take into consideration the cost that will be incurred in blending
235
operations by minimizing excess inventory for blend components, under production of blend
components and component flow start and finish time violations based on solution of LBSP. This
transfer time violation is not penalized heavily as it would be the goal of augmented Lagrangian
optimization algorithm to eliminate this violation in order to obtain feasible solution of global
problem. The last three terms in the objective function is for parallel blend units. If the material
flow is happening to at least one parallel blend unit in BN (  Cf s , j ,t  0 ) at event-point t then the
B
s
rest of the parallel units that have no flow happening (  Cf s , j ,t  0 ) at that event-point are
B
s
penalized less heavily than if no flow was happening at any parallel blend unit (  Cf s , j ,t  0 ) at
B
s, j
event-point t . Cost coefficients c16 , c17 , c18 , c19 , and c20 need to be determined along with
Lagrangian multipliers and augmented penalty parameters. The coefficients c20 should be
0.50  c20  c1 and parameters c16 , c17 , c18 , c19 should be within [0,1].
7.5. Augmented Lagrangian Optimization Algorithm
Before proposed augmented Lagrangian optimization algorithm is presented, models under for
the algorithm are as follows:

min f BSP  z 
sSbc , jJ

s , j ,t Cf sB, j ,t 
BU
sSbc , t


j J
,t
 
s ,t
BU
CTs Bj ,t   j ,t CTf jB,t 
,t
B
s ,t

P
 Cf Cf sB, j ,t  Cf s , j ,t

P

B
 KCf KCf s ,t  KCf s ,t
sSbc , t 

j ,t
KCf   s ,t KCTssB,t  s ,t KCTf sB,t 
sSbc , jJ BU , t

 

2

   CTf  CTf  
    KCTf  KCTf  
P

B
 CTs CTs j ,t  CTs j ,t
BU
jJ , t 

    KCTs
2
KCTs
B
s ,t
P
 KCTs s ,t
2
CTf
B
j ,t
2
KCTf
B
s ,t
P
2
j ,t
P
2
s ,t
s.t. constraints corresponding to units and connections in BN
(LBSP)
and valid inequalities in Appendix Chapter 7
236
 
min ff PSP  z 
s , j ,t
sSbc , jJ BU , t

 
sSbc , t
s ,t
Cf sP, j ,t  
 
j ,t
jJ BU ,t
CTs Pj ,t   j ,t CTf jP,t 
KCf   s ,t KCTssP,t  s ,t KCTf sP,t 
P
s ,t
  Cf  Cf  




 
  CTs  CTs    CTs  CTs   


 
  




 CTf  CTf    CTf  CTf  





 
 Kif
 

  KCf  KCf    Kif

 



 
   
 KCTs  KCTs    KCTs  KCTs   







 KCTf  KCTf    KCTf  KCTf  






B
 Cf  Cf s , j ,t  Cf sP, j ,t
2
2
B
P
s , j ,t
s , j ,t
sSbc , jJ BU ,t
2
B
j ,t
CTs
2
B
jJ BU , t
CTf
P
j ,t
j ,t
2
B
KCf
sSbc , t
P
s ,t
s ,t
KCTs
KCTf
 c3
B
s ,t
P
s ,t
B
P
s ,t
s ,t
P 2
j ,t
B
j ,t
P
j ,t
2
B
P
j ,t
j ,t
2
B
P
s , j , k , n
s , j , k , n
2
B
s ,t
P 2
s ,t
2
B
P
s ,t
s ,t
2


Uof s , j , n 
Uofbs , j , j , n 
 Invtbn 


min
min
bnBN , r 1 
sSbc  Sk , jJ sp , n  epbn
sSbc / Sk , jJ sp , j J BU  J sc , n  epbn


 c11


bnBN , r 1
jJ
min
, t  epbn
,
esPj ,t  c17
jJ BU , t , r 1

h

DmPbn  c16


Cf
B
s , j  ,t
 0,
jJ h , s
 Cf
s

sSbc  Sk , t , r 1
eskPs ,t  c18

c 20 x j , n ,t 
B
s , j ,t
 0, r 1
j J
h
min
, t  epbn
,

lePj  c19
jJ BU , r 1

c1j x j , n ,t 
Cf
B
s , j  ,t
 0, r 1
j J
h

sSbc  S k , r 1

lekPs
c1j x j , n,t
min
, t  epbn
, r 1
jJ h , s
s.t. constraints corresponding to units and connections in PN
(LPSP)
and valid inequalities in Appendix Chapter 7
The Model (LBSP) includes equations, objective function and variables present in model (LRP)
corresponding to units and connection in sub-network BN and constraints presented in section
7.3.1, section 7.4.2.1. If sub-network BN can be decomposed into smaller structures, then the
model (LBSP) will be decomposed such that model (LBSP1) would only include constraints
regarding units and connections present in sub-structure BN1, and so on. Meanwhile, the model
(LPSP) includes constraints and variables present in (LRP) pertaining to sub-network PN,
constraints proposed in sections 7.3.2 and 7.4.2.2, and objective function ff PSP . Due to quadratic
terms in the objective function, models (LBSP) and (LPSP) are mixed integer quadratic
programming (MIQP) problems.
237
max zs , j  Cf s , j ,T   CTf j ,T  CTs j ,T  , s  Sbc \ S k , j  J sc
s.t. constraints corresponding to units and connections in PN
(PCs-1)
min zs , j  Cf s , j ,T   CTf j ,T  CTs j ,T  , s  Sbc \ S k , j  J sc
s.t. constraints and variables corresponding model (LPSP) and
(PCs-2)
equation (18a)
Models (PCs-1) and (PCs-2) is used to determine maximum and minimum production rate of
blend component s to blend unit j , respectively.
max zs  KCf s ,T   KCTf s ,T  KCTss ,T  , s  S bc  S k
s.t. constraints and variables corresponding model (LPSP)
(PKs-1)
min zs  KCf s ,T   KCTf s ,T  KCTss ,T  , s  Sbc  S k
s.t. constraints and variables corresponding model (LPSP) and
(PKs-2)
equation (18b)
The upper and lower limit of production rate for blend components that are stored is obtained
solving models (PKs-1) and (PKs-2), respectively, and these problems are optimized for each
blend component.
max z j 
 Cf
sSbc
s , j ,T

  CTf j ,T  CTs j ,T  , j  J BU  J ads
s.t. constraints and variables corresponding model (LPSP)
(PJ-1)
238
min z j 
 Cf
sSbc
s , j ,T

  CTf j ,T  CTs j ,T  , j  J BU  J ads
s.t. constraints and variables corresponding model (LPSP) and equation (18a)
(PJ-2)
Maximum and minimum production rate limits for a blend unit that receives all of its components
straight from production units is determined using models (PJ-1) and (PJ-2), respectively. All the
pre-processing MILP models are independent and can be solved in parallel.
Proposed Augmented Lagrangian optimization algorithm is shown in Figure 7.4 and the
detailed steps and termination criteria are as follows:
Step 1: Solve preprocessing models (PJ-1), (PJ-2), (PCs-1), (PCs-2), (PKs-1), and (PKs-2) in
min
max
parallel. Calculate RPusmax
, RPksmin , RPjmax , and RPjmin .
, j , RPus , j , RPks
Step 2: Set m  0 , r  0 . Initialize Lagrangian multipliers s(0)
,  s(0),j ,t  0 ,  s(0),j ,t  0 , s(0),t  0 ,
, j ,t  0
(0)
(0)
(0)
(0)
(0)
(0)
s(0)
 s(0)
,t  0 and penalty parameters  Cf ,  CTs ,  CTf ,  KCf ,  KCTs ,  KCTf . Pick algorithm
,t  0 ,
parameters  ,  ,   1 , and maximum algorithm count M .
Step 3: For r  0 , solve model (LBSP) and (LPSP) in parallel and obtain lower bounds
f 
BSP ( m  0)
,  f PSP 
( r  0)
, and update r  r  1 .
Otherwise if r  1 , solve (LBSP).
B
B
Obtain Cf s , j ,t , CTs j ,t , CTf
B
j ,t
P
B
B
B
, KCf s ,t , KCTs s ,t , KCTf s ,t .
P
Step 4: Solve (LPSP) and obtain Cf s , j ,t , CTs j ,t , CTf
P
j ,t
P
P
P
, KCf s ,t , KCTs s ,t , KCTf s ,t .
Step 5: Check if violation matrix norm ( g ) meets tolerance  . Where,
239
Cf sB, j ,t  Cf sP, j ,t



B
P
 KCf s ,t  KCf s ,t 


B
P
CTs j ,t  CTs j ,t

g

B
P
CTf j ,t  CTf j ,t

 KCTs B  KCTs P 
s ,t
s ,t 

 KCTf B  KCTf P 
s ,t
s ,t 

If g   , set m  m  1 . Update multipliers using equation  ( m 1)   ( m )   m  x  xx  .
m
If g
m
 g
m 1
, update  m1   m and go to step 3.
Step 7: If g   , a feasible solution is found and the objective function for refinery operation is
calculated as follows:
f  f PSP 
 f
bnBN
BSP
bn
H
Minimization of time horizon is included in (LPSP) and (LBSP) objective function thus
makespan H is subtracted from solution of (LBSP).
Step 8: if m  M , terminate the algorithm as the maximum iterations limit is reached. Otherwise,
go to step 3.
240
Maximum/minimum production
Rate for blend components and
blend units
Solve Pre Processing models
Initialize
and Lagrange
multipliers, penalty parameters
Solve in Parallel
Solve (LBSP1)
Solve (LBSP2)
Solve (LBSPn)
If
Solve (LBSP1)
Solve (LPSP)
Loop converged?
No
. Update
multipliers and penalty
parameters
Yes
Feasible solution
Figure 7.4. Augmented Lagrangian optimization algorithm
7.6. Examples
Three different refinery configurations are used to demonstrate the effectiveness of the
proposed algorithm in solving scheduling problems. These refinery configurations are: (1) no
241
blend component tanks, (2) storage options for all blend components, and (3) component tanks
for some blend unit.
A real case study provided by Honeywell Process Solution (HPS) presented in Chapter 4
is used to obtain four different examples. The original Honeywell refinery network includes two
non-identical blend unit, parallel crude distillation units (CDUs), 13 other production units, 5
intermediate tanks, 9 product tanks, and 2 charging tanks for one of the CDU while other CDU
receives crude oil mixture from pipeline. The refinery produces middle distillate products using 8
production units and four finished blend products using two non-identical blend units. A
multipurpose Diesel blender produces three different grades of diesel while jet fuel is blended by
jet blender. For each blend products, 2 dedicated product tanks are available. In addition to these
tanks, a multipurpose product tank is present that services two different grades of diesel product.
A minimum of 6 hours maintenance downtime is required when swing tank switches from
servicing lower grade product to high grade. This downtime is essential to remove any sulfur or
other contamination from swing tank before low sulfur grade product is serviced. Fill-draw-delay
for finished blend product tanks is set to 4 hours to let product to settle down and mix properly
for certificate analysis. For all production and blend units, minimum of 6 hours uptime (minimum
run-length) is required and total available scheduling horizon is 240 hours. Data for the case study
is given in Appendix Chapter 3.
Example 1. No component tanks
The case study provided by Honeywell is used.
Example 2. No component tanks and parallel blend units
The original case study (Figure 4.2) is modified by adding a second diesel blend unit alongside
the original diesel blender. This new diesel blender produces same three grade products as the
original blender and 7 product tanks are available to service diesel blend products produced by
both diesel blenders. Table A7-1 gives production rate capacity information about parallel diesel
blender.
242
Example 3. Storage tanks for all blend components
The case study presented in Figure 4.2 is modified by severing connections between production
units and blend units (diesel and jet blenders) adding dedicated storage tanks for 6 different blend
components and storage capacity data are provided in Table A7-2.
Example 4. Blend component storage and direct flow of component to blend unit
In this example, the refinery has both component storage options and direct flow of
component from production units to a blend unit. We include 3 dedicated component tanks for the
diesel blender and no blend component storage options for the jet blend unit.
Decomposition:
We decompose the refinery network presented in Figure 4.2 into sub-networks PN and
BN by splitting pipeline that transports components from a production unit to a blend unit or
component storage tank. Thus, sub-network PN contains charging tanks, CDUs, production units,
intermediate tanks and produces blend components, intermediates and intermediate distillate
products that are supplied directly to market without storage options whereas sub-network BN
includes diesel and jet blenders, component tanks (if any), product tanks, and produces finished
blend products diesel and jet fuel. These two different blend products are not stored in same tanks
neither do diesel and jet blenders share a common blend component. Thus, we can further
decompose sub-network BN into two sub-networks, BN1 and BN2. Network BN1 containing
diesel blender, tanks for components blended in diesel blender (if any), and product tanks that
service diesel products and corresponding model is (LBSP1). Whereas, sub-network BN2
includes jet blender, components tanks and jet fuel product tanks and relaxed model is (LBSP2).
For example 2, two parallel diesel blenders would be present in one network because two parallel
blenders share blend components and produce diesel fuels that are stored in same product tanks.
243
7.6.1. Computational Results
In this section, we investigate the performance of the proposed augmented Lagrangian
optimization algorithm. The algorithm is evaluated with three performance measures: number of
iterations, and computational time (seconds), and quality of the solution.
Data for cost
coefficients parameters for objective function is given in Table 7.1. Table A7-3 gives demand for
intermediate distillate products. Table A7-4 provides demand for finished blend products,
products CARB diesel, EPA diesel, Red-dye diesel, and Jet fuel are referred to as product P1, P2,
P3 and P4, respectively. Intermediate demand orders are bound by maximum and minimum
amount and can be delivered anytime during the delivery window. Maximum delivery rate,
product unloading rate to satisfy demand, is 10 (kbbl/h). All the optimization models are
formulated using GAMS, decomposition algorithm implemented in MATLAB R2014a and
solved on a Dell® Optiplex 9020 computer with 2.90 GHz Quad Core Intel® Processor i5-4570S,
CPU 2.90GHz, and 16.0 GB memory. CPLEX 12.3.0/GAMS 23.7.1 solver is used to solve both
MILP and MIQP problems. Optimality tolerance of 1e6 % is used for full-scale and preprocessing step models, while for (LBSP) and (LPSP), optimality tolerance of 1% is used and for
the algorithm, maximum number of iteration is set to 100.
Table 7.1 Parameters in objective function
Parameter
Value*100
1
CCarbNormal,DieselBlender
10
Parameter
Value*100
Cs7, s
40 (Unfavorable:
60)
C1EPA Normal,DieselBlender
7
Cs8, s
40 (unfavorable:
60)
C1ReddyeNormal,DieselBlender
4
Ck9
5
C1JetNormal,Jet Blender
5
C10
s,k
5
244
Ck2
0.51 (Swing tank: 1.5)
50  Vkmax 
Ck3
1
Co11
1150
Co12
800
C 4j
50
C13
s
1100
Ck5
10 (Swing tank: 40)
Co14
5400
Ci6,i
100 (Unfavorable: 250)
Co15
3250
Example 1.
This example involves no blend component tanks, 1 multipurpose diesel blender
producing three different grades of diesel products that can be stored in 7 different product tanks
and 1 jet blender producing jet fuel that can be stored in 2 tanks. One of the diesel product tanks
is a swing tank that can store two different type of diesel fuel. For this case study, we select
parameters as c16  UH  e 2 and c18  UH  e 1 . These set of parameters drives solution of
1
1
model (LPSP) for iteration m  0 to that has linking timing variables values much closer to that
obtain by (LBSP). This Model sizes for different set of demand examples are shown in Table 7.2.
As the number of demand order increase, size of the model increase too and decomposed models
have significant less numbers of variables and constraints compared to full-scale model.
Furthermore, the complicating variables are expressed in terms of transfer event points, we are
able to solve decomposed model with different set of event-points. Full scale model of problem 1
requires minimum of 6 event points to obtain optimal solution while using proposed approach, we
are able to solve relaxed diesel blend scheduling model (LBSP1) is solved using 5 event points,
relaxed jet blend scheduling model (LBSP2) using 6, and production unit scheduling model
(LPSP) using 5 event points. The total numbers of transfer event-points are always equal to the
number of event-points n used to solve (LPSP). In Table 7.3, we compare solutions of full space
245
model and proposed decomposition approach for problems of varying demand requirements. In
Table 7.3, column „  g   g ‟ represents the value of the augmented and penalty term in the
2
augmented Lagrangian function, „ g ‟ represents norm of the consistency constraints.
The computational time to obtain optimal solution increases as the complexity of the
model increases and for problem 7, optimality gap is still at 12.91% even after 8 hours. The
performance of the algorithm in terms of solution and the quality of the solution is shown in
Table 7.3. For all the problems, proposed algorithm provides feasible solution that is closer to the
optimal solution reported by full-scale model. For full-scale model that are computationally
expensive, proposed algorithm is able to obtain solution in less time. For problem 5, proposed
approach is able to report feasible solution of 68717 in 2755 seconds while optimal solution of
67286 is obtained by full scale model in 5115 seconds. The solution procedure for problem 5 is
shown in Figure 7.5. The solution time for algorithm is driven by relaxed blend scheduling
problem (LBSP). More specially, relaxed diesel blending (LBSP1) is the most difficult to solve
due to presence of multipurpose blend unit and multipurpose product tanks.
Table 7.2 Model statistics for Example 1
Augmented Lagrangian Algorithm
Ex.
Full Scale Model
LBSP model
#
Event pt.
Event pt. n
Demand
Int./Cont. var.
Int./Cont. variables
Orders
(Constraints)
(Constraints)
Nonzero Elem.
Nonzero Elem.
LPSP model
Event pt. n
Int./Cont. var.
(Constraints)
Nonzero Elem.
1
4
LBSP1
LBSP2
6
5
6
5
434/3197
127/742
37/243
235/1610
(7748)
(2594)
(985)
(4859)
246
2
3
4
5
6
7
28085
9794
3556
17498
5
5
5
4
360/2663
116/736
30/200
188/1288
(6392)
(2545)
(752)
(3727)
22608
9584
2571
13045
4
4
4
4
286/2129
100/592
26/164
188/1286
(5050)
(1967)
(587)
(3719)
17461
7096
1926
13022
4
4
4
4
301/2217
109/644
32/200
188/1286
(5339)
(2134)
(689)
(3721)
18547
7718
2284
13021
6
6
6
5
484/3453
173/1039
57/347
235/1611
(8653)
(3739)
(1335)
(4862)
31676
14750
4888
17508
6
6
6
5
484/3453
173/1039
57/347
235/1611
(8643)
(3729)
(1335)
(4862)
31586
14661
4888
17508
7
7
7
6
640/4383
266/1511
80/467
282/1936
(11642)
(5718)
(1930)
(6092)
44572
23720
7518
22632
4
4
6
8
8
13
247
Table 7.3 Numerical results for Example 1
Augmented Lagrangian Algorithm
Full Scale model
(0)
(0)
 Cf(0)  0.2 ,  CTs
 0.3 ,  CTf  0.2 ,   0.37 ,   2.15
Ex
Objective
CPU(sec)
Gap
Iter.
ze 
(%)
m
2
g
Time (sec)
f e
2
g  g
2
1
608.73
501.89
0.00
10
368.02
502.35
11.90
0.70
2
73.29
428.25
0.00
12
525.29
428.19
541.73
0.87
3
16.35
788.98
0.00
9
138.95
791.77
-16.23
0.40
4
36.12
735.16
0.00
15
195.30
747.36
-2.98
0.34
5
5114.95
672.86
0.00
14
2755.25
687.17
1693.37
0.86
6
23085.76
866.43
0.00
8
3001.96
869.75
37.65
0.76
7
28800
695.79
12.91
10
14720.16
695.62
122.12
0.90
248
Figure 7.5 Solution procedure for Example 1, problem 5.
Example 2.
Refinery configuration with parallel blend unit and no component flow is examined to
check efficacy of the proposed decomposition approach. Parameters for model (LPSP) objective
function are chosen to be c16  UH  e 2 , c18  UH  e 1 , and c20  0.75c1j . Parallel diesel
1
1
blenders that can produce three different grade of diesel product are present thus compared to
Example 1, this refinery configuration require less number of event points for blend scheduling
model (LBSP) to obtain optimal solution that satisfy demand orders for finished blend products.
Decomposition provides smaller scheduling problem than full scale scheduling problem as shown
in Table 7.4. Proposed decomposition algorithm is able to provide a good feasible solution and in
reasonable solution time, as reported in Table 7.5. Solution procedure for problem 5 is shown in
249
Figure 7.6. The solution time in ALO-DQA algorithm is mainly spent solving relaxed problem
corresponding to multipurpose diesel blend units.
Table 7.4 Model statistics for Example 2
Augmented Lagrangian Algorithm
Full Scale Model
LBSP model
Event pt.
Event pt.
Int./Cont. var.
Int./Cont. variables
(Constraints)
(Constraints)
Nonzero Elem.
Nonzero Elem.
LPSP model
#
Ex.
Event pt.
Orders
Int./Cont. var.
(Constraints)
Nonzero Elem.
1
2
3
4
LBSP1
LBSP2
4
4
4
3
330/2425
122/882
23/159
150/1010
(6319)
(3465)
(550)
(2928)
22522
12906
1788
10218
4
4
4
3
330/2425
122/882
23/159
150/1010
(6319)
(3465)
(550)
(2928)
22522
12906
1788
10218
3
3
3
3
245/1817
106/668
19/124
150/1007
(4655)
(2512)
(408)
(2929)
16274
9059
1280
10205
3
3
3
3
255/1885
112/708
23/152
150/1007
(4883)
(2647)
(483)
(2929)
4
4
4
6
250
5
6
7
17107
9558
1539
10202
5
5
5
4
455/3249
184/1238
46/289
200/1347
(8821)
(5084)
(1040)
(4139)
32386
19672
3636
14870
4
4
4
3
360/2601
140/986
35/231
150/1010
(6953)
(3835)
(776)
(2936)
24884
14237
2598
10230
5
5
5
4
503/3509
224/1454
54/333
200/1347
(9941)
(5975)
(1223)
(4139)
36900
23174
4345
14870
8
8
13
Table 7.5 Numerical results for Example 2
Augmented Lagrangian Algorithm
Full Scale model
(0)
(0)
 Cf(0)  0.3 ,  CTs
 0.3 ,  CTf  0.3 ,   0.30 ,   2.20
Ex
Objective
CPU(sec)
Gap
Iter.
ze 
(%)
m
2
g
Time (sec)
f e
2
g  g
2
1
559.25
464.88
0.00
8
446.08
474.23
-7.65
0.379
2
82.62
382.35
0.00
10
539.03
413.51
92.67
0.568
3
39.58
629.05
0.00
9
263.35
630.02
-2.50
0.794
4
16.30
579.62
0.00
11
576.03
584.46
-14.43
0.278
5
19466.87
661.53
0.00
16
9700.18
705.76
10580.87
0.971
251
6
12872.25
756.43
0.00
7
2251.59
767.34
-2.49
0.252
7
28800
683.57
13.24
7
13300.39
692.36
-15.76
0.659
Figure 7.6 Solution procedure for Example 2, problem 5
Example 3.
Refinery configuration with dedicated component tanks is studied in this example. We
include 1 storage tank for each blend component and eliminate all direct streams from production
units to blenders. For all problems, parameters value are set at c17  0.01 , c19  0.5 . Model
statistics for this example is shown in Table 7.6 and computational results are given in Table 7.7.
Augmented Lagrangian algorithm converges to a feasible solution for each problem within 20
iterations and proposed multipliers and penalty parameters gives a solution that is closer to
original full-scale model optimal solution. However, for problem 1, the solution obtain using
252
decomposition algorithm is far worse than optimal solution, and this is due to the augmented
Lagrangian parameters and penalty. For problem 1, the algorithm converges to a solution that has
high task changeovers cost. Convergence profile for problem 5 is given in Figure 7.7. Similar to
other example, relaxed diesel blend scheduling (LBSP1) is most difficult to solve and other two
problems take only few seconds.
Table 7.6 Model statistics for Example 3
Augmented Lagrangian Algorithm
Full Scale Model
LBSP model
Event pt.
Event pt.
Int./Cont. var.
Int./Cont. variables
(Constraints)
(Constraints)
Nonzero Elem.
Nonzero Elem.
LPSP model
#
Ex.
Event pt.
Orders
Int./Cont. var.
(Constraints)
Nonzero Elem.
1
2
3
LBSP1
LBSP2
5
5
5
5
455/2978
169/927
23/159
150/1010
(7230)
(3464)
(550)
(2928)
24793
12582
1788
10218
5
5
4
4
455/2978
122/882
23/159
150/1010
(7230)
(3465)
(550)
(2928)
24793
12906
1788
10218
4
4
4
4
362/2381
106/668
19/124
150/1007
(5715)
(2512)
(408)
(2929)
19193
9059
1280
10205
4
4
4
253
4
5
6
4
4
4
4
377/2469
112/708
23/152
150/1007
(6004)
(2647)
(483)
(2929)
20279
9558
1539
10202
6
6
6
6
598/3831
184/1238
46/289
200/1347
(9664)
(5084)
(1040)
(4139)
34314
19672
3636
14870
6
6
6
5
598/3831
140/986
35/231
150/1010
(9654)
(3835)
(776)
(2936)
34224
14237
2598
10230
6
8
8
Table 7.7 Numerical results for Example 3
Augmented Lagrangian Algorithm
Full Scale model
(0)
(0)
(0)
 KCf
 0.05 ,  KCTs
 0.05 ,  KCTf  0.05 ,   0.25 ,   2.20
Ex
Objective
CPU(sec)
Gap
Iter.
ze 
(%)
m
2
g
Time (sec)
f e
2
g  g
2
1
266.31
475.54
0.00
8
1063.97
1743.94
7.96
0.109
2
254.30
421.41
0.00
11
464.76
565.70
-296.52
0.428
3
56.71
730.47
0.00
9
154.27
738.25
0.09
0.202
4
147.78
711.69
0.00
13
239.89
726.78
82.14
0.454
5
28800
654.61
1.06
16
3766.46
658.51
1199.03
0.952
6
28800
866.43
25.18
7
21496.02
871.84
-29.66
0.956
254
Figure 7.7 Solution procedure for Example 3, problem 5.
Example 4.
In this example, we test the proposed algorithm for a refinery that has blend component
tanks and direct flow to blend units. Model statistics and computational results are shown in
Table 7.8 and Table 7.9 for problem 5.
Table 7.8 Model statistics for Example 5
Full scale
Event points
Augmented Lagrangian Optimization Approach
Model
LBSP1
LBSP2
LPSP
6
6
6
5
538
232
57
220
3633
1315
347
1664
Binary
variables
Continuous
255
Variables
Constraints
9097
4863
1335
5021
32774
18599
4888
17791
Nonzero
Elements
Table 7.9 Numerical results for Example 5
Full scale Model Augmented Lagrangian Optimization Approach
CPU time (Sec)
28800
1556
Objective
66895
69938
Gap (%)
10.67
Iterations ( m )
g  g
8
2
359.97
g
0.862
Full-scale model is not able to obtain an optimal solution even after 8 hours, whereas proposed
approach provides a feasible solution in 1556 seconds. Parameters present in model (LPSP)
objective function has value of c16  UH  e 2 , c17  0.01 , c18  UH  e 1 ,
1
Solution procedure for problem 5 is shown in Figure 7.8.
1
and c19  0.5 .
256
Figure 7.8 Solution procedure for Example 4, problem 5.
From above results for all four examples, it can be observed that the augmented
Lagrangian algorithm converges to a feasible solution of the full-scale problem because the
linking variables error norm value always convergences to zero as augmented penalty term
   . Quality of the feasible solution obtain and solution time is not only affected by
augmented Lagrangian optimization parameters but also by parameters c16 , c17 , c18 , c19 , and c20 in
some extant.
7.7. Summary
We have applied Augmented Lagrangian approach to refinery operations scheduling problem
by decomposing the problem into production unit operations and finished blend product and
delivery operations. Continuous time formulation based on event-points is used in this work and
257
complicating variables and coupling constraints for decomposed problems are expressed in terms
of novel transfer event-points. To improve the performance of the algorithm, a preprocessing step
and constraints to incorporate information lost during decomposition are proposed. Proposed
approach is shown to effectively address four different refinery network configurations.
Main advantages of the proposed decomposition approach are: (a) decomposed problems can
be solved using different set of event-points n because complicating variables and coupling
variables are expressed in terms of transfer event-points t ; (b) when blending operations network
can be decomposed further, this method allows for parallel implementation of blend scheduling
problems; (c) the convergence of the algorithm to a feasible solution is guaranteed. Furthermore,
this approach can be extended to include crude-oil loading and unloading operations so entire
refinery operations scheduling problem can be integrated.
Nomenclature
Indices
bn
Blending operations sub-network
i
Tasks
j
Production units
k
Storage units
n
Event-points
m
Lagrangian algorithm iteration counter
o
Product order
p
Properties
s
States
t
Transfer event-points
Sets
258
BN
All decomposed sub-networks belonging to blending operations
Ij
Tasks which can be performed in unit j
I sc / I sp
Tasks which can consume/produce material s
J
All Production units
J ads
Blend units that receive at least all components directly from production units
J BU
Blend units
All production units and blend units that receive at least one component
J
cont
directly from production unit operations
J ds
Blend units that receive at least one component directly from production units
J PU
Production units that belong to production unit operations
J sc / J sp
Units that consume/produce material s
Ji
Units which are suitable for performing task i
Jh
Units that can produce all the same products as some other unit in the refinery
Jm
Units which are suitable for performing multiple tasks
J seq
j
Units that follow unit j (no storage in between)
J kkp / J kpk
Units that consume/produce material s stored in tank k
JP
Units that produce products
K
Storage units
Kh
tanks that can store the same products as some other tank in the refinery
pk
K kp
j / Kj
Tanks that store material consumed/produce by unit j
Km
Multipurpose tanks that can store multiple materials
Kp
Tanks that can store final products
Ks
Tanks that can store material s
259
N
Event-point within the time horizon
Os
Orders for finished blend product s that is stored in tanks
P
Product Properties
S
States
SA
Group A products, stored in tanks
SB
Group B products, not stored in tanks
Sbc
Blend components states
S bn
States that belong to sub-network bn
Sk
States that can be stored in tank k
Sic / Sip
States that can be consumed/produced by task i
S cj / S jp
States that can be consumed/produced by unit j
Parameters
conts , s
1 if components s and s  are produced by units in PN that are interconnected
Do, s , Do, s
Demand limit requirement for order o and product s that is stored in tank
max_rates
Maximum rate of production of material s
oto,i
1 if task i is performed when order o of PUSP is processed by BSP.
rs
Demand of the final product s at the end of the time horizon
RBmin
/ RBmax
j
j
minimum and maximum production rate of a blend unit j
RPjmax
Maximum rate material is supplied by (PSP) to blend unit j
RPsmax
Maximum rate blend component s is supplied by (PSP) to blend unit j
max
Rimin
, j / Ri , j
Minimum/ maximum rate of material be processed by task i in unit j
RLi
Minimum run length for task i
RU kmin / RU kmax
Minimum/maximum rate of product unloading at tank k
260
stos , k
Amount of state s that is present at the beginning of the time horizon in k
tak
Fill draw delay for product tank k
UH
Available time horizon
Vkmax
Maximum available storage capacity of storage tank k
Vkheel
Maximum heel available for storage tank k
yos , k
1 if the material s is present at the beginning of the time horizon in k
max
smin
,i /  s ,i
Proportion of state s produced/consumed by task i
max
bsmin
, j /  bs , j
Minimum/maximum proportion of blend component s consumed by blend unit
j
s
Quality index for finished blend product, higher index means better quality
Variables
Binary Variables
a j , j , n
Assigns the materials flow to blend unit j from unit j  at event-point n
wvi , j , n
Assignment of task i in unit j at event-point n
ins , j , k , n
Assigns the material flow of s into storage tank k from unit j at point n
Assigns the starting of product flow out of product tank k to satisfy order o at
lk ,o, n
event-point n
outs , k , j , n
Assigns the material flow of s out of storage tank k into unit j at point n
ys , k , n
Denotes that material s is stored in tank k at event-point n
0-1 continuous variables
 j ,n
For unit j, 1 if the unit becomes active for very first time at event-point n
k , n
For tank k, 1 if the tank becomes active for very first time at event-point n
s , s , k , n
Continuous 0-1 variable, 1 if material in tank k switchover service from s at
261
event-point n to s‟ at later event-point
os , s, k
i , i , j , n
Continuous 0-1 variable, 1 if material in tank k switchover service from s to s‟
Continuous 0-1 variable, 1 if task at unit j changes from i at event-point n to
i’at later event-point.
x j , n,t / xks , n,t
Cont. 0-1 variable denotes transfer event-point t corresponds to event-point n
Positive variables
bps ,i , j , n
Amount of material s produced task i in unit j at event-point n
bcs ,i , j , n
Amount of material s undertaking task i in unit j at event-point n
Cf s , j ,t / KCf s ,t
Amount of blend component s transferred between BN and PN at event-point t
dgol
Minimum demand quantity give-away term for order o
dgou
Maximum demand quantity give-away term for order o
H
time horizon used for production tasks
JJf s , j , j , n
Flow of state s from unit j to consecutive unit j’ for consumption at point n
Kif s , j ,k ,n
Flow of material s from unit j to storage tank k event-point n
Kof s , k , j , n
Flow of material s from storage tank k to unit j at point n
Lfo, k , n
Flow of final product for order o from storage tank k at event-point n
mhs , k ,n
Maximum heel give-away term for product tanks
rgs
Minimum demand quantity give-away term for Group B product s
Rif s , k , n
Flow of raw material to storage tank k event-point n
sts , k , n
Amount of state s present in storage tank k at event-point n
Amount of state s that is downgraded to state s‟ in storage tank k at event-point
std s , s, k , n
n
Tearlyo
Early fulfillment of order o than required
262
Tfi , j , n
Time that task i finishes in unit j at event-point n
CTf j ,t / KCTf s ,t
Finish time for components transfer between BN and PN at time-point t
Tlateo
Late fulfillment of order o than required
Tosk ,o, n
Time that material starts to flow from tank k for order o at event-point n
Tof k ,o, n
Time that material finishes to flow from tank k for order o at event-point n
Tsi , j , n
Time that task i starts in unit j at event-point n
CTs j ,t / KCTss ,t
Start time for components transfer at time-point t
Tsf j , k , n
Time that material finishes to flow from unit j to tank k at event-point n
Tsf k , j , n
Time that material finishes to flow from tank k to unit j at event-point n
Tss j , k , n
Time that material starts to flow from unit j to storage tank k
Tssk , j , n
Time that material starts to flow from tank k to unit j at event-point n
Uif s , j ,n
Flow of raw material s to production unit j at point n
Uofbs , j , j , n
Flow of component s from production unit j to blend unit j  at point n
Uof s , j , n
Flow of product material s from unit j at point n
UUf j , s ,v , n
Amount of state s received by unit j at period v is processed at event n
z
Objective value of full-scale integrated model
263
Acknowledgement of Prior Works
All of the work presented in this dissertation represents original research by the author. However
some of the concepts presented in Chapters 2 to Chapter 6 have previously appeared in published
works, for which the author of this dissertation is also the first author. The author of this
dissertation is also first author on these prior works, which include:
-
Shah, N. K., & Ierapetritou, M. G. (In Process). Lagrangian Decomposition Approach to
Scheduling of a Large-Scale Oil-Refinery Operations.
-
Shah, N. K., & Ierapetritou, M. G. (In Process). Efficient Heuristic Algorithm Strategy for
Short-Term Scheduling of Refinery Operations.
-
Shah, N. K., & Ierapetritou, M. G. (2012). Integrated production planning and scheduling
optimization of multisite, multiproduct process industry. Computers and Chemical
Engineering, 37, 214-226.
-
Shah, N. K., Li, Z., & Ierapetritou, M. G. (2011). Petroleum Refining Operations: Key Issues,
Advances, and Opportunities. Industrial & Engineering Chemistry Research, 50, 1161-1170.
-
Shah, N. K., & Ierapetritou, M. G. (2011). Short-term scheduling of a large-scale oil-refinery
operations: Incorporating logistics details. AIChE Journal, 57, 1570-1584.
-
Shah, N., Saharidis, G. K. D., Jia, Z., & Ierapetritou, M. G. (2009). Centralized-decentralized
optimization for refinery scheduling. Computers & Chemical Engineering, 33, 2091-2105.
264
Appendix
Appendix Chapter 2
Table A2-1 Example 1: Process data for production sites
Production
Unit
Capacity
Suitability
Processing Time
Heater
100
Heating
1.0
Reactor 1
50
Reactions 1,2,3
2.0,2.0,1.0
Reactor 2
80
Reactions 1,2,3
2.0,2.0,1.0
Sill
200
Separation
Site
S1
1 for Product 2
2 for IntAB
S2
Heater
150
Heating
1.0
Reactor 1
100
Reactions 1,2,3
2.0,2.0,1.0
Reactor 2
80
Reactions 1,2,3
2.0,2.0,1.0
1 for Product 2
Sill
300
Separation
2 for IntAB
S3
Heater
100
Heating
1.0
Reactor 1
75
Reactions 1,2,3
2.0,2.0,1.0
Reactor 2
100
Reactions 1,2,3
2.0,2.0,1.0
1 for Product 2
Sill
150
Separation
2 for IntAB
Production
Storage
State
Site
Initial Amount
Capacity
Feed A
100000
100000
Feed B
100000
100000
S1
265
S2
S3
Feed C
100000
100000
Hot A
100
0.0
Int AB
200
0.0
Int BC
150
0.0
Impure
200
0.0
Product 1
400
0.0
Product 2
375
0.0
Feed A
100000
100000
Feed B
100000
100000
Feed C
100000
100000
Hot A
130
0.0
Int AB
250
0.0
Int BC
150
0.0
Impure
300
0.0
Product 1
300
0.0
Product 2
425
0.0
Feed A
100000
100000
Feed B
100000
100000
Feed C
100000
100000
Hot A
115
0.0
Int AB
250
0.0
Int BC
150
0.0
Impure
300
0.0
Product 1
350
0.0
Product 2
400
0.0
266
Table A2-2 Production and Inventory cost data
Production Sites
Heating
Fixed Cost
Variable Costs
150
1.0
100
0.5
Reactions
S1
1,2,3
Separation
150
1.0
Heating
175
1.5
125
0.75
Reactions
S2
1,2,3
S3
Separation
175
1.5
Heating
100
0.8
Inventory Cost
P1
10
P2
10
P1
15
P2
15
P1
8
P2
8
Table A2-3 Transportation and Backorder cost data
Market
M1
M2
M3
Transportation Cost
S1
5
S2
8
S3
10
S1
10
S2
5
S3
8
S1
8
S2
10
S3
8
Backorder Cost
P1
100
P2
100
P1
150
P2
150
P1
75
P2
75
267
Figure A2-1 Demand data for Example 1
268
Appendix Chapter 3
Table A3-1 Demand in Thousand barrels
Scenario 1
Final
Products
Scenario 2
Case 1
Case 2
Case 3
Case 4
Case 1
Case 2
Case 3
Case 4
FCC gas
10
50
35
75
75
150
200
200
Coke
10
35
10
75
75
75
100
150
Carb diesel
10
100
50
100
100
300
350
500
EPA diesel
10
100
50
150
150
250
250
250
10
100
50
150
150
250
300
250
Red dye
diesel
Table A3-2 Production rates in thousand barrels/hour
Unit
Task
Rmin
Rmax
4CU
4CU Normal
0.1
7.292
2CU
2CU Normal
0.1
4.167
Vacuum Tower
Vacuum Normal
0.1
5.708
Coker
Coker Normal
0.1
2.75
FCC HDS
FCCHDS Normal
0.1
3.00
FCC
Maxdistillation Mode
0.1
2.708
FCC
Maxgasoline Mode
0.1
2.708
269
Diesel
Diesel Normal
0.1
2.5
Isomax
Isomax Normal
0.1
2.042
Diesel Blemder
Carb Diesel
0.1
54.167
Diesel Blender
EPA Diesel
0.1
54.167
Diesel Blender
RedDye Diesel
0.1
54.167
Table A3-3 Recipe data
State
Task
State Produced
ρP
ρc
Consumed
4 CU
Diesel
0.691
Normal
Resid
0.309
2 CU
Diesel
0.284
Normal
Resid
0.716
Vacuum Resid
0.334
Heavy Gasoil
0.333
Light Gasoil
0.333
Coke
0.640
Heavy Gasoil
0.180
Light Gasoil
0.180
FCC HDS
1
Maxdistillation
FCC Gas
0.50
Mode
LCO
0.50
ANS1
1
SJV Crude
1
Resid
1
Vacuum Resid
1
Heavy Gasoil
1
FCC HDS
1
Vacuum Tower
Normal
Coker
Normal
FCC HDS
Normal
270
Maxgosoline
FCC Gas
0.50
Mode
LCO
0.50
HDS Diesel
Hydro Diesel
FCC HDS
1
1
Diesel
1
1
Light Gasoil
1
HDS Diesel
0.20
Hydro Diesel
0.25
LCO
0.55
HDS Diesel
0.25
Hydro Diesel
0.15
LCO
0.60
HDS Diesel
0.23
Hydro Diesel
0.12
LCO
0.65
Diesel
Normal
Isomax Normal
Carb Diesel
Carb Diesel
1
Normal
EPA Diesel
EPA Diesel
1
Normal
Red Dye Diesel
Red Dye Diesel
1
Normal
Table A3-4 Storage tank capacity data in thousand barrels
Storage Tank
Material Stored
Capacity
Initial Amount
ANS Feed Tank 1
ANS
750
10
ANS Feed Tank 2
ANS
750
10
Coker Feed Tank
Vacuum Resid
500
0
FCC HDS Feed Tank
Heavy Gasoil
500
0
Diesel HDS Feed Tank
Diesel
500
0
271
Isomax Feed Tank
Light Gasoil
500
0
Carb Diesel Tank 1
Carb Diesel
200
0
Carb Diesel Tank 2
Carb Diesel
200
0
Diesel Swing Tank
Carb Diesel
200
0
EPA Diesel Tank 1
EPA Diesel
125
0
EPA Diesel Tank 2
EPA Diesel
125
0
RedDye Diesel Tank1
RedDye Diesel
150
0
RedDye Diesel Tank 2
RedDye Diesel
150
0
Figure A3-1 Gantt chart of tank loading schedule for example 1, Centralized system, scenario 1
272
Figure A3-2 Gantt chart of the tank unloading schedule for example 1, Centralized system, scenario
1
Figure A3-3 Gantt chart of tank loading schedule for example 1, Decentralized system, scenario 1
273
Figure A3-4 Gantt chart of the tank unloading schedule for example 1, Decentralized system,
scenario 1
Figure A3-5 Gantt chart of the operation schedule for example 1, Centralized system, scenario 2
274
Figure A3-6 Gantt chart of the operation schedule for example 1, Decentralized system, scenario 2
Figure A3-7 Gantt chart of tank loading schedule for example 1, Centralized system, scenario 2
275
Figure A3-8 Gantt chart of tank unloading schedule for example 1, Centralized system, scenario 2
Figure A3-9 Gantt chart of tank loading schedule for example 1, Centralized system, scenario 2
276
Figure A3-10 Gantt chart of tank unloading schedule for example 1, Centralized system, scenario 2
277
Appendix Chapter 6
Table A6-1 Production rates in thousand barrels/hour
Unit
Task
Rmin
Rmax
Diesel Blender
Carb Diesel
0.1
54.167
Diesel Blender
EPA Diesel
0.1
54.167
Diesel Blender
RedDye Diesel
0.1
54.167
Penex
Penex Normal
0.1
0.792
De-C5
De-C5 Normal
0.1
1.042
Alky Unit
Alky Normal
0.1
0.875
Jet Blender
Jet Normal
0.1
3.125
CCR
CCR Normal
0.1
1.75
Isomax
Isomax Normal
0.1
2.042
Naphtha Pre-fractionator
Fractionator Normal
0.1
4.167
FCC
MaxDistillation Mode
0.1
2.708
FCC
MaxGasoline Mode
0.1
2.708
Diesel HDS
Diesel Normal
0.1
2.5
Naphtha HDS
Naphtha Normal
0.1
3.229
FCC HDS
FCCHDS Normal
0.1
3.0
Coker
Coker Normal
0.1
2.75
Vacuum Tower
Vacuum Normal
0.1
5.708
278
Gas Plant
Gas Normal
0.1
4.167
2Crude Distillation Unit
2CU Normal
0.1
4.167
4Crude Distillation Unit
4CU Normal
0.1
7.292
Table A6-2 Minimum/maximum recipe data
Task
Carb Diesel
EPA Diesel
RedDye Diesel
Penex Normal
State Produced
Carb Diesel
EPA Diesel
Red Dye Diesel
Isomerate
sp,i,min / sp,i,max
1/1
1/1
1/1
1/1
Isomax Gasoline
0.5/1
Pentane
0.5/1
Pentane
0.167/0.167
De-C5 Normal
Alky Normal
NC4
0.167/0.167
Alkylate
0.1/1
State Consumed
sc,,min
/ sc,,max
i
i
FCC LCO
0.01/0.25
HDS Diesel
0.5/0.75
HydrocrackedDiesel
0.05/0.25
FCC LCO
0.05/0.3
HDS Diesel
0.55/0.8
HydrocrackedDiesel
0.01/0.2
FCC LCO
0.05/0.3
HDS Diesel
0.6/0.85
HydrocrackedDiesel
0.01/0.2
Light Naphtha
0.001/1
Light Ends
0.001/1
Butane
0.001/1
Light Gasoline
1/1
Olefins
0.8/1.125
Iso Butanes
0.2/0.225
279
Jet Normal
Jet Fuel
1/1
Light Ends
0.06/0.077
Reformate
0.7/1
HydrocrackedDiesel
0.05/1
Isomax Jet
0.05/1
Heavy Naphtha
0.05/1
Light Gasoline
0.05/1
Olefins
0.05/1
Fractionator
Heavy Naphtha
0.001/1
Normal
Light Naphtha
0.001/1
FCC HCO
0.05/1
MaxDistillation
Olefins
0.05/1
Mode
FCC LCO
0.05/1
FCC Gas
0.05/1
FCC HCO
0.05/1
Olefins
0.05/1
CCR Normal
Isomax Normal
MaxGasoline Mode
Isomax Jet
0.001/1
Coker Jet
0.001/1
SR Jet
0.001/1
Heavy Naphtha
1/1
Light Gasoil
1/1
Naphtha HDS
1/1
FCC HDS
1/1
FCC HDS
1/1
FCC LCO
0.05/1
FCC Gas
0.05/1
Diesel Normal
HDS Diesel
1/1
Diesel
1/1
Naphtha Normal
Naphtha HDS
1/1
Naphtha
1/1
FCCHDS Normal
FCC HDS
1/1
Heavy Gasoil
1/1
Coke
0.28/0.28
Vacuum Resid
1/1
Heavy Gasoil
0.1/1
Coker Normal
280
Vacuum Normal
Gas Normal
2CU Normal
4CU Normal
Light Gasoil
0.1/1
Coker Jet
0.1/1
Naphtha
0.1/1
Vacuum Resid
0.1/1
Heavy Gasoil
0.1/1
Light Gasoil
0.1/1
Iso-Butane
0.001/1
Butane
0.001/1
Gases
0.001/1
Resid
0.53/0.53
Diesel
0.21/0.21
SR Jet
0.11/0.11
Naphtha
0.12/0.12
Light Gas
0.03/0.03
Resid
0.47/0.47
Diesel
0.21/0.21
SR Jet
0.145/0.145
Naphtha
0.14/0.14
Light Gas
0.035/0.035
Resid
1/1
Light Gas
1/1
SJV crude
1/1
Crude oil
1/1
Table A6-3 Storage tank capacity data in thousand barrels
Storage Tank
Material Stored
Capacity
Initial Amount
ANS Feed Tank 1
ANS
750
10
ANS Feed Tank 2
ANS
750
10
281
Coker Feed Tank
Vacuum Resid
500
0
FCC HDS Feed Tank
Heavy Gasoil
500
0
Diesel HDS Feed Tank
Diesel
500
0
Isomax Feed Tank
Light Gasoil
500
0
Carb Diesel Tank 1
Carb Diesel
200
0
Carb Diesel Tank 2
Carb Diesel
200
0
Diesel Swing Tank
EPA Diesel
200
-
Diesel Swing Tank
Carb Diesel
200
-
EPA Diesel Tank 1
EPA Diesel
125
0
EPA Diesel Tank 2
EPA Diesel
125
0
RedDye Diesel Tank1
RedDye Diesel
150
0
RedDye Diesel Tank 2
RedDye Diesel
150
0
Naphtha HDS Feed Tank
Naphtha
500
0
Jet Product Tank 1
Jet Fuel
200
0
Jet Product Tank 2
Jet Fuel
200
0
282
Table A6-4 Group A products demand order data for the case study
Orders (Product type, amount(kbbl), delivery window, delivery rate(kbbl/h))
Orders
1
2
3
4
5
Ex1
Ex2
Ex3
Ex4
Ex5
Ex6
Ex7
Ex8
Ex9
Ex10
P3
P3
P2
P3
P1
P3
P1
P3
P1
P2
[60,80]
[50,70]
[100,120]
[90,100]
[120,125]
[60,75]
[25,30]
[15,25]
[40,50]
[20,55]
[30,50]
[20,35]
[15,25]
[50,75]
[40,75]
[28.5,46.5]
[12,30]
[30,50]
[30,40]
20,35]
P2
P4
P4
P4
P2
P2
P1
P2
P2
P2
[50,70]
[50,90]
[50,90]
[140,150]
[100,110]
[90,100]
[50,65]
[40,50]
[40,55]
[35,50]
[60,90]
[45,80]
[45,80]
[60,90]
[90,115]
[65,89]
[50,70]
[45,75]
[45,58]
[40,55]
P4
P2
P3
P1
P1
P4
P2
P4
P1
P1
[50,80]
[50,75]
[50,75]
[100,115]
[150,175]
[140,150]
[45,50]
[50,75]
[45,53]
[40,50]
[75,100]
[60,80]
[60,80]
[100,120]
[135,150]
[75,91]
[90,105]
[75,110]
[70,85]
[60,75]
P1
P1
P1
P4
P2
P1
P4
P2
P3
P3
[50,75]
[50,80]
[50,80]
[100,120]
[90,120]
[90,115]
[90,110]
[20,30]
[40,44]
[15,60]
[75,110]
[70,90]
[70,90]
[125,150]
[168,185]
[102,116]
[98,128]
[75,95]
[92,105]
[80,100]
P2
P3
P4
P3
P3
P2
P2
[110,125]
[105,125]
[100,150]
[50,65]
[10,20]
[30,60]
[30,50]
[130,150]
[200,220]
[105,130]
[125,141]
[90,125]
[110,125]
[105,115]
283
6
7
8
9
10
11
P1
P4
P1
P2
P1
P3
P3
[50,60]
[120,150]
[100,115]
[35,40]
[15,30]
[35,50]
[40,45]
[160,175]
[50,75]
[125,153]
[160,180]
[100,115]
[120,140]
[110,125]
P4
P4
P4
P1
P1
P1
[100,120]
[100,165]
[100,115]
[55,60]
[35,40]
[30,65]
[120,146]
[155,170]
[160,193]
[115,145]
[145,160]
[130,145]
P4
P2
P3
P4
P3
P1
[160,170]
[75,100]
[45,65]
[75,100]
[30,75]
[25,50]
[175,205]
[179,203]
[175,205]
[115,145]
[175,190]
[150,165]
P4
P4
P4
P2
P2
[120,125]
[85,100]
[80,100]
[40,40]
[30,45]
[195,210]
[200,219]
[150,175]
[195,210]
[170,185]
P3
P1
P2
P1
P3
[75,100]
[70,90]
[50,65]
[55,75]
[25,55]
[200,215]
[210,227]
[155,170]
[205,220]
[170,190]
P2
P3
P2
P1
[50,65]
[10,15]
[40,45]
[20,55]
[220,240]
[160,180]
[205,225]
[200,220]
284
12
13
14
15
16
17
P4
P3
P1
P1
[120,140]
[35,40]
[50,60]
[25,45]
[223,240]
[180,200]
[220,240]
[215,235]
P3
P2
P4
P3
[60,80]
[10,15]
[50,75]
[30,40]
[228,240]
[200,220]
[50,75]
[220,240]
P4
P4
P4
[100,115]
[75,115]
[40,60]
[200,230]
[100,120]
[30,65]
P1
P4
P4
[30,45]
[60,110]
[55,95]
[210,235]
[125,150]
[55,75]
P4
P4
P4
[75,100]
[55,120]
[50,65]
[220,240]
[140,165]
[95,110]
P4
P4
[85,125]
[30,105]
[175,200]
[115,125]
285
18
19
P4
P4
[100,125]
[60,125]
[205,225]
[130,155]
P4
P4
[78,100]
[75,105]
[220,240]
[160,180]
P4
20
[85,115]
[180,205]
P4
21
[100,120]
[200,225]
P4
22
[110,130]
[215,240]
Table A6-5 Group B products demands data for the case study
Ex.
Initial holdup in swing
Group B products demand (kbbl)
286
tank (product, kbbl)
P5
P6
P7
P8
P9
P10
P11
P12
P13
1
-
5
5
10
10
10
5
4
5
5
2
P1 - 10
10
5
10
15
10
10
5
15
10
3
P1 - 10
5
10
15
10
5
5
10
25
5
4
-
10
25
25
20
5
10
10
15
0
5
-
15
30
25
25
15
13
10
50
10
6
-
13
25
30
10
20
15
17
75
5
7
P1 - 10
10
20
30
25
30
15
10
60
15
8
-
20
15
25
20
25
10
15
95
20
9
P1 - 10
15
35
35
20
20
15
20
70
10
10
-
10
25
35
25
15
16
10
80
10
287
Appendix Chapter 7
Valid Inequalities
There are several constraints, redundant in the model but including them improves
computational time. We propose following inequalities for decomposed models:
x j , n ,t 

t  t , n t 
x j , n,t  , j  J BU  J ds , n  N , t  T , n  t , t  1, n  1
x j , n,t    x j , n,t , j  J BU  J ds , n  N , t  T , t   T , t   t , n  t 
(1b)
n  t
xks , n ,t 

xks , n,t  , s  Sk , n  N , t  T , n  t , t  1, n  1
t  t , nt 
(1a)
(1c)
xks , n,t    xks , n,t , s  Sk , n  N , t  T , t   T , t   t , n  t 
(1d)
n  t
Eqs. (1a)-(1d) restates that transfer event-point t  t  should be assigned an active event-point n
before t  and n  n should be assigned a transfer event-point before n . These inequalities are
added to both (LBSP) and (LPSP).
Relaxed Blend Scheduling Problem:
ys , k , n 
 in
s, j,k ,n
 yos , k 
 in
s, j,k ,n
 ys , k , n 1 
jJ kpk
ys , k , n 
jJ kpk

s Sk ,s s


yos, k , s  S A  S kK m  Sbc , k  K s , n  1

s Sk ,s s


ys, k , n 1 , s  S A  S kK m  Sbc , k  K s , n  N , n  1
(2a)
(2b)
Inequalities (2a)-(2b) states that if material is stored in tank at event point n then it either be hold
up from previous event-point or flow of the material in to the tank at the same event-point. Above
constraint is only included for blend components and finished blend products that can be stored in
multipurpose (swing) product tanks ( K m ).

wvi , j , n   T  1
  

wvi , j , n , bn  BN , n  1, j  J ds

jJ ds  jJ ds ,iI j

(3a)

wvi , j , n   N  1


  wvi , j , n , bn  BN , n  1, j  J ds


jJ BU , jJ ds  jJ ds , iI j

(3b)
jJ BU  J ds ,iI j , n  1
jJ BU / J ds , iI j , n  1


288
 wv
 T , j  J BU  J ds ,  xsP, j ,t  T
i, j ,n
iI j , n
(3c)
s
 in
 T , s  Sbc , k  K s , j  J dmy ,  xk s ,t  T
P
s, j ,k ,n
n
(3d)
s
We restrict a feasible solution of decomposed scheduling problem by always requiring the
production to take place during first event-point using Eqs. (3a) and (3b) and these inequalities do
not eliminate optimal solution. For blend unit that receive at least one blend components straight
from production unit operations without any storage, the blend unit would be operational only
when it is receiving component from PN. Thus, the total run-modes for the blend unit are
bounded by total transfer event-points as stated by Eq. (3c). Similarly, inequality (3d) stresses the
flow of component into a tank also bounded.
x
nt
B
j , n ,t
 xk
n t
 1, j  J BU  J ds , t  T
B
s , n ,t
 1, s  S k , t  T
x
B
j , n ,t

x
B
j , n ,t
  wvi , j , n , j  J BU  J ds , n  N
n t
t n

iI j , n  t
iI j
 xk
B
s , n ,t

 xk
B
s , n ,t

n t
t n

k K s , jJ dmy , n  t
  xk
k K s t  n
wvi , j , n , j  J BU  J ds , t  T

k K s , jJ dmy
B
s , n ,t

ins , j .k , n , s  S k , t  T
ins , j .k , n , s  Sk , n  N

k K s , jJ dmy
ins , j .k , n , s  S k , n  N
(4a)
(4b)
(4c)
(4d)
(4e)
(4f)
(4g)
If flow is happening between PN and BN at event-point n then it must corresponds to at most
one transfer event-point t as restated by Eqs. (4a) and (4b). If there is flow at event point t then
it must correspond to some event-point n and this is reinforced by Eqs. (4c)-(4g).
Relaxed Production Unit Scheduling Problem:
289

bn
sSbc
,iI sp , j J sc  J ds , jJ i , n  1
wvi , j , n   T  1


wvi , j , n ,



bn
bn
sSbc
, jJ sp , j J sc  J ds  sSbc
,iI sp , j J sc , jJ i

bn  BN , n  1, j  J ds

(5)
Valid inequality (5) limits the feasible solution space by requiring production to take place during
first event-point ( n  1 ) for production units that supply components directly to a blend unit.

a j , j , n 

a j , j , n 
  wv
i, j,n
j J BU  J sc
j J
BU
, s  Sbc / Sk , j  J sp , n  N
j J BU  J sc iI sp
 J sc
 wv
i, j ,n
, s  Sbc / S k , j  J sp , n  N
iI sp
(6a)
(6b)
If a blend component that has no storage option is being produced by a production unit, then the
production unit will be sending this blend component to suitable blend unit and this material
balance relation is restated in valid inequalities (6a) and (6b).
x
t n


P
j , n ,t
wvi , j , n , s  Sbc / S k , j  J BU , n  N
iI sp , j J i

x Pj , n ,t 
j J sp , t  n

nN , t  n

wvi , j , n , s  Sbc / Sk , j  J BU / J h , n  N
(7b)

wvi , j , n , s  Sbc / Sk , j  J BU / J h
(7c)

(7d)
iI sp ,
x Pj , n ,t 
iI sp ,

P
j , n ,t
x
P
j , n ,t
t n
t n
j J i
j J i , n
x Pj , n ,t 
BU
jJ bn
, j J sp ,t  n
x

wvi , j , n , s  Sbc / Sk , bn  BN , n  N , j  J bnBU  J h
iI sp , j J i
a
j , j , n
, s  Sbc / Sk , j  J BU , n  N
j J sp
 xk
t n
 a j , j , n , s  Sbc / Sk , j  J BU , j   J sp , n  N
P
s , n ,t



xk sP, n ,t 

xksP, n ,t 
nN , t  n
wvi , j , n , s  Sbc  S k , n  N
iI sp , jJ i
jJ sp , t  n
(7a)
(7e)
(7f)
(7g)

wvi , j , n , s  Sbc  Sk , n  N
(7h)

wvi , j , n , s  Sbc  Sk
(7i)
iI sp , jJ i
iI sp , jJ i , n
Valid inequalities (7a)-(7f) restates the relationship between production units that supply
components directly to blend units and transfer event-point t and production event-point n . Eqs.
290
(7g)-(7i) emphasis relationship between production units that supply components to BN for
storage at event-point n and to transfer event-point t . These inequalities speed up convergence
to optimal solution by decreasing the number of iterations and nodes in branch and bound tree in
solver CPLEX.
When the optimization model is written in GAMS environment, where the variables and
equations are declared have significant impact on the solution time (GAMS TUTIORIAL). In our
work, we have added all the inequalities presented in this section to our relaxed models (LBSP)
and (LPSP). However, depending upon how the model is written in GAMS, one or more of these
inequalities might not be necessary.
Table A7-1 Production rates (thousand barrels/hour) for a second diesel blend unit
Diesel Blender2
Carb Diesel
0.1
34.613
Diesel Blender2
EPA Diesel
0.1
34.613
Diesel Blender2
RedDye Diesel
0.1
34.613
Table A7-2 Storage tank capacity data for blend component tanks
Storage Tank
Material Stored
Capacity
Initial Amount
FCC LCO Tank
FCC LCO
300
0
HDS Diesel Tank
HDS Diesel
500
0
HydrocrackedDiesel Tank
HydrocrackedDiesel
350
0
Isomax Jet Tank
Isomax Jet
500
0
Coker Jet Tank
Coker Jet
500
0
SR Jet Tank
SR Jet
500
0
291
Table A7-3 Group B products demands data for the case study
Group B products demand (kbbl)
Initial holdup
Ex.
in swing tank
P5
P6
P7
P8
P9
P10
P11
P12
P13
(product, kbbl)
1
-
5
5
10
10
10
5
4
5
5
2
-
2
14
30
2
4
3
6
4
30
3
P1 - 10
10
5
10
15
10
10
5
15
10
4
-
10
25
25
20
5
10
10
15
0
5
-
15
30
25
25
15
13
10
50
10
6
P1-10
12
25
25
15
15
12
10
45
10
7
P1 - 10
10
20
30
25
30
15
10
60
15
292
Table A7-4 Group A products demand order data for the case study
Orders (Product type, amount(kbbl), delivery window, delivery rate(kbbl/h))
Orders
1
2
3
4
5
Ex1
Ex2
Ex3
Ex4
Ex5
Ex6
Ex7
P3
P3
P3
P3
P1
P3
P1
[60,80]
[60,80]
[50,70]
[90,100]
[120,125]
[100,115]
[25,30]
[30,50]
[30,50]
[20,35]
[50,75]
[40,75]
[40,70]
[12,30]
P2
P2
P4
P4
P2
P2
P1
[50,70]
[50,70]
[50,90]
[140,150]
[100,110]
[100,110]
[50,65]
[60,90]
[60,90]
[45,80]
[60,90]
[90,115]
[70,100]
[50,70]
P4
P4
P2
P1
P1
P1
P2
[50,80]
[50,80]
[50,75]
[100,115]
[150,175]
[150,175]
[45,50]
[75,100]
[75,100]
[60,80]
[100,120]
[135,150]
[115,145]
[90,105]
P1
P1
P1
P4
P2
P2
P4
[50,75]
[50,75]
[50,80]
[100,120]
[90,120]
[90,120]
[90,110]
[75,110]
[75,110]
[70,90]
[125,150]
[168,185]
[180,215]
[98,128]
P2
P3
P1
P3
[110,125]
[105,125]
[100,115]
[50,65]
[130,150]
[200,220]
[200,225]
[125,141]
293
6
7
8
P1
P4
P4
P2
[50,60]
[120,150]
[110,130]
[35,40]
[160,175]
[50,75]
[60,98]
[160,180]
P4
P4
P4
[100,120]
[120,140]
[100,115]
[120,146]
[124,155]
[160,193]
P4
P4
P3
[160,170]
[160,170]
[45,65]
[175,205]
[195,235]
[175,205]
P4
9
[85,100]
[200,219]
P1
10
[70,90]
[210,227]
P2
11
[50,65]
[220,240]
294
P4
12
[120,140]
[223,240]
P3
13
[60,80]
[228,240]
295
Bibliography
ACC. (2014). Chemistry industry fact. In. http://www.americanchemistry.com/chemistryindustry-facts: American Chemistry Council.
Adhya, N., Tawarmalani, M., & Sahinidis, N. V. (1999). A Lagrangian Approach to the Pooling
Problem. Industrial & Engineering Chemistry Research, 38, 1956-1972.
Amaldi, E., Bruglieri, M., & Casale, G. (2008). A two-phase relaxation-based heuristic for the
maximum feasible subsystem problem. Computers & Operations Research, 35, 14651482.
Andreani, R., Birgin, E. G., Mart´ınez, J. M., & Schuverdt, M. L. (2008). On Augmented
Lagrangian methods with general lower-level constraints. SIAM Journal on
Optimization, 18, 1286-1309.
Arief, A., Rajagopalan, S., & Karimi, I. A. (2007). Heuristic rescheduling of crude oil operations
to manage abnormal supply chain events. AIChE Journal, 53, 397-422.
Audet, C., Brimberg, J., Hansen, P., Digabel, S. L., & Mladenovic, N. (2004). Pooling Problem:
Alternate Formulations and Solution Methods. Management Science, 50, 761-776.
Bassett, M. H., Pekny, J., & Reklaitis, G. (1996). Decomposition Techniques for the Solution of
Large-Scale Scheduling Problems. American Institute of Chemical Engineers Journal, 42,
3373-3387.
Benders, J. F. (1962). Partitioning Procedures for Solving Mixed-Variables Programming
Problems. Numerische Mathematic, 4, 238-252.
Bertsekas, D. P. (1995). Nonlinear Programming (2nd ed. ed.). Belmont, Massachusetts: Athena
Scientific.
Bertsekas, D. P., & Tsitsiklis, J. N. (1989). Parallel and Distributed Computation. Englewood
Cliffs, New Jersey: Prentice-Hall.
Bertsimas, D., & Sim, M. (2003). Robust Discrete optimization and Network Flows. Math. Prog.,
98, 49-71.
Burkard, R. E., Fortuna, T., & Hurkens, C. A. J. (2002). Makespan minimization for chemical
batch processes using non-uniform time grids. Computers & Chemical Engineering, 26,
1321-1332.
Calfa, B. A., Agarwal, A., Grossmann, I. E., & Wassick, J. M. (2013). Hybrid BilevelLagrangean Decomposition Scheme for the Integration of Planning and Scheduling of a
Network of Batch Plants. Industrial & Engineering Chemistry Research, 52, 2152-2167.
Castillo, P. A. C., & Mahalec, V. (2014a). Inventory pinch based, multiscale models for
integrated planning and scheduling-part I: Gasoline blend planning. AIChE Journal, 60,
2158-2178.
Castillo, P. A. C., & Mahalec, V. (2014b). Inventory pinch based, multiscale models for
integrated planning and scheduling-part II: Gasoline blend scheduling. AIChE Journal,
60, 2475-2497.
Castro, P. M., & Grossmann, I. E. (2014). Global Optimal Scheduling of Crude Oil Blending
Operations with RTN Continuous-time and Multiparametric Disaggregation. Industrial &
Engineering Chemistry Research, 53, 15127-15145.
Castro, P. M., Harjunkoski, I., & Grossmann, I. E. (2009). Optimal Short-Term Scheduling of
Large-Scale Multistage Batch Plants. Industrial & Engineering Chemistry Research.
Castro, P. M., Harjunkoski, I., & Grossmann, I. E. (2011). Greedy algorithm for scheduling batch
plants with sequence-dependent changeovers. AIChE Journal, 57, 373-387.
Chen, J. M., & Chen, T. H. (2005). The Multi-item Replenishment Problem in a Two-Echelon
Supply Chain: The Effect of Centralization versus Decentralization. Computers &
Operations Research, 32, 3191-3207.
296
Cornillier, F., Boctor, F. F., Laporte, G., & Renaud, J. (2008). A heuristic for the multiperiodpetrol station replenishment problem. European Journal of Operational Research,
191, 295-305.
Cornuejols, G., Fisher, M., & Nemhauser, G. L. (1977). On the Uncapacitated Location
Problem*. In E. L. J. B. H. K. P.L. Hammer & G. L. Nemhauser (Eds.), Annals of
Discrete Mathematics (Vol. Volume 1, pp. 163-177): Elsevier.
Cuiwen, C., Xingsheng, G., & Zhong, X. (2013). A data-driven rolling-horizon online scheduling
model for diesel production of a real-world refinery. AIChE Journal, 59, 1160-1174.
Dimitriadis, A. D., Shah, N., & Pantelides, C. C. (1997). RTN-based rolling horizon algorithms
for medium term scheduling of multipurpose plants. Computers & Chemical Engineering,
21, S1061-S1066.
Fisher, M. L. (1973). Optimal Solution of Scheduling Problems Using Lagrange Multipliers: Part
I. Operations Research, 21, 1114-1127.
Fisher, M. L. (1981). The Lagrangian Relaxation Method for Solving Integer Programming
Problems. Management Science, 27, 1-18.
Fisher, M. L. (1985). An Applications Oriented Guide to Lagrangian Relaxation. Interfaces, 15,
10-21.
Floudas, C. A., & Lin, X. (2004). Continuous-Time Versus Discrete-Time Approaches For
Scheduling of Chemical Processes: a Review. Computers & Chemical Engineering, 28,
2109-2129.
Fortin, M., & Glowinski, R. (1983). Augmented Lagrangian Methods: Application to the
Numerical Solution of Boundary-Value Problems: North-Holland.
Gaivoronski, A. (1988). Stochastic quasigradient methods and their implementation. In
Numerical techniques for stochastic optimization (Vol. 10, pp. 313-351): Springer.
Gary, J. H., Handwerk, G. E., & Kaiser, M. J. (2007). Petroleum Refining: Technology and
Economics: CRC Press; 5 edition.
Ghaddar, B., Naoum-Sawaya, J., Kishimoto, A., Taheri, N., & Eck, B. (2014). Innovative
Applications of O.R.: A Lagrangian decomposition approach for the pump scheduling
problem in water networks. European Journal of Operational Research.
Glismann, K., & Gruhn, G. (2001). Short-term scheduling and recipe optimization of blending
processes. Computers & Chemical Engineering, 25, 627-634.
Gnoni, M. G., Iavagnilio, R., Mossa, G., Mummolo, G., & Di Leva, A. (2003). Production
planning of a multi-site manufacturing system by hybrid modelling: A case study from
the automotive industry. International Journal of Production Economics, 85, 251-262.
Gounaris, C. E., Misener, R., & Floudas, C. A. (2009). Computational Comparison of Piecewise
Linear Relaxations for Pooling Problems. Industrial & Engineering Chemistry Research,
48, 5742-5766.
Graves, S. C. (1982). Using Lagrangean Techniques to Solve Hierarchical Production Planning
Problems. Management Science, 28, 260-275.
Grossmann, I. (2005). Enterprise-wide Optimization: A New Frontier in Process Systems
Engineering. AIChE Journal, 51, 1846-1857.
Grossmann, I. E. (2014). Challenges in the application of mathematical programming in the
enterprise-wide optimization of process industries. Theoretical Foundations of Chemical
Engineering, 48, 555-573.
Gupta, A., & Maranas, C. D. (1999). A Hierarchical Lagrangean Relaxation Procedure for
Solving Midterm Planning Problems. Industrial & Engineering Chemistry Research, 38,
1937-1947.
Gupta, A., Maranas, C. D., Rafiqul, G., & Sten Bay, J. (2001). Multiperiod planning of multisite
supply chains under demand uncertainty. In COMPUTER AIDED CHEMICAL
ENGINEERING (Vol. Volume 9, pp. 871-876): Elsevier.
297
Harjunkoski, I., & Grossmann, I. E. (2001). A Decomposition Approach For the Scheduling of a
Steel Plant Production. Computers and Chemical Engineering, 25, 1647-1660.
Harjunkoski, I., Maravelias, C. T., Bongers, P., Castro, P. M., Engell, S., Grossmann, I. E.,
Hooker, J., Méndez, C., Sand, G., & Wassick, J. (2014). Scope for industrial applications
of production scheduling models and solution methods. Computers & Chemical
Engineering, 62, 161-193.
He, Y., & Hui, C.-W. (2007). Genetic algorithm for large-size multi-stage batch plant scheduling.
Chemical Engineering Science, 62, 1504-1523.
Held, M., & Karp, R. (1971). The traveling-salesman problem and minimum spanning trees: Part
II. Mathematical Programming, 1, 6-25.
Held, M., & Karp, R. M. (1970). The Traveling-Salesman Problem and Minimum Spanning
Trees. Operations Research, 18, 1138-1162.
Holmberg, K., & Hellstrand, J. (1998). Solving the Uncapacitated Network Design Problem by a
Lagrangean Heuristic and Branch-and-Bound. Operations Research, 46, 247-259.
Holmberg, K., & Yuan, D. (2000). A Lagrangian Heuristic Based Branch-and-Bound Approach
for the Capacitated Network Design Problem. Operations Research, 48, 461-481.
Ierapetritou, M. G., & Floudas, C. (1998 ). Effective Continuous-time Formulation for ShortTerm Scheduling: 1 Multipurpose Batch Processes Industrial & Engineering Chemical
Research, 37, 4341-4359.
Ierapetritou, M. G., & Floudas, C. A. (1998). Effective Continuous-Time Formulation for ShortTerm Scheduling. 2. Continuous and Semicontinuous Processes. Industrial &
Engineering Chemistry Research, 37, 4360-4374.
Ierapetritou, M. G., & Floudas, C. A. (1998). Effective Continuous-Time Formulation for ShortTerm Scheduling: 2 Multipurpose/Multiproduct Continuous Processes. Industrial &
Engineering Chemical Research, 37, 4360-4374.
Ierapetritou, M. G., Hene, T. S., & Floudas, C. A. (1999). Effective Continuous-Time
Formulation for Short -Term Scheduling: 3. Multiple Intermediate Due Dates. Industrial
& Engineering Chemical Research, 38, 3446-3461.
Jackson, J. R., & Grossmann, I. E. (2003). Temporal Decomposition Scheme for Nonlinear
Multisite Production Planning and Distribution Models. Industrial & Engineering
Chemistry Research, 42, 3045-3055.
Janak, S. L., Floudas, C. A., Kallrath, J., & Vormbrock, N. (2006). Production Scheduling of a
Large-Scale Industrial Batch Plant. I. Short-Term and Medium-Term Scheduling.
Industrial & Engineering Chemistry Research, 45, 8234-8252.
Janak, S. L., Lin, X., & Floudas, C. A. (2004). Enhanced Continuous-Time Unit-Specific EventBased Formulation for Short-Term Scheduling of Multipurpose Batch Processes:
Resource Constraints and Mixed Storage Policies. Industrial & Engineering Chemistry
Research, 43, 2516-2533.
Jia, Z., & Ierapetritou, M. (2003). Mixed-Integer Linear Programming Model for Gasoline
Blending and Distribution Scheduling. Industrial & Engineering Chemistry Research, 42,
825-835.
Jia, Z., & Ierapetritou, M. (2004). Efficient short-term scheduling of refinery operations based on
a continuous time formulation. Computers & Chemical Engineering, 28, 1001-1019.
Jia, Z., Ierapetritou, M., & Kelly, J. D. (2003). Refinery Short-Term Scheduling Using
Continuous Time Formulation: Crude-Oil Operations. Industrial & Engineering
Chemistry Research, 42, 3085-3097.
Joly, M., Moro, L. F. L., & Pinto, J. M. (2002). Planning and scheduling for petroleum refineries
using mathematical programming. Brazilian Journal of Chemical Engineering, 19, 207228.
Kallrath, J. (2002a). Combined strategic and operational planning – an MILP success story in
chemical industry. OR Spectrum, 24, 315-341.
298
Kallrath, J. (2002b). Planning and scheduling in the process industry. OR Spectrum, 24, 219-250.
Karuppiah, R., Furman, K. C., & Grossmann, I. E. (2008). Global optimization for scheduling
refinery crude oil operations. Computers & Chemical Engineering, 32, 2745-2766.
Karuppiah, R., Martín, M., & Grossmann, I. E. (2010). A simple heuristic for reducing the
number of scenarios in two-stage stochastic programming. Computers & Chemical
Engineering, 34, 1246-1255.
Kelly, J. D. (2003a). Next-generation refinery scheduling technology. NPRA Plant Automation
and Decision Support Conference, San Antonio, TX, Presentation.
Kelly, J. D. (2003b). Smooth-and-dive accelerator, a pre-MILP primal heuristic applied to
scheduling. Computer & Chemical Engineering 27, 873-832.
Kelly, J. D. (2006). Logistics: the missing link in blend scheduling optimization. Hydrocarbon
Processing, 45-51.
Kelly, J. D., & Mann, J. L. (2003a). Crude-oil blend scheduling optimization: An application with
multi-million dollar benefits: Part I. Hydrocarbon Processing, 47-53.
Kelly, J. D., & Mann, J. L. (2003b). Crude-oil blend scheduling optimization: An application with
multi-million dollar benefits: Part II. Hydrocarbon Processing, 72-79.
Kelly, J. D., & Zyngier, D. (2008). Hierarchical Decomposition Heuristic for Scheduling:
Coordinated Reasoning for Decentralized And Distributed Decision-Making Problems.
Computers and Chemical Engineering, 32, 2684-2705.
Khor, C. S., Chachuat, B., & Shah, N. (2012). A superstructure optimization approach for water
network synthesis with membrane separation-based regenerators. Computers & Chemical
Engineering, 42, 48-63.
Kolodziej, S. P., Grossmann, I. E., Furman, K. C., & Sawaya, N. W. (2013). A discretizationbased approach for the optimization of the multiperiod blend scheduling problem.
Computers & Chemical Engineering, 53, 122-142.
Kondili, E. (1987). Optimal Scheduling of Batch Processes. Imperial College London, U.K.
Kondili, E., Pantelides, C. C., & Sargent, R. W. H. (1993). A General Algorithm for Short-Term
Scheduling of Batch Operations--I. MILP Formulation. Computers & Chemical
Engineering, 17, 211-227.
Kreipl, S., & Pinedo, M. (2004). Planning and Scheduling in Supply Chains: An Overview of
Issues in Practice. Production and Operations Management, 13, 77-92.
Lee, H. M., Pinto, J. M., Grossmann, I. E., & Park, S. (1996). Mixed-integer linear programming
model for refinery short-term scheduling of crude oil unloading with inventory
management. Industrial & Engineering Chemistry Research, 35, 1630-1641.
Li, J., & Karimi, I. A. (2011). Scheduling Gasoline Blending Operations from Recipe
Determination to Shipping Using Unit Slots. Industrial & Engineering Chemistry
Research, 50, 9156-9174.
Li, J., Karimi, I. A., & Srinivasan, R. (2010). Recipe determination and scheduling of gasoline
blending operations. AIChE Journal, 56, 441-465.
Li, Y., Lu, Z., & Michalek, J. J. (2008). Diagonal Quadratic Approximation for Parallelization of
Analytical Target Cascading. Journal of Mechanical Design, 130, 051402-051411.
Li, Z., & Ierapetritou, M. G. (2010a). Production planning and scheduling integration through
augmented Lagrangian optimization. Computers & Chemical Engineering, 34, 996-1006.
Li, Z., & Ierapetritou, M. G. (2010b). Rolling horizon based planning and scheduling integration
with production capacity consideration. Chemical Engineering Science, 65, 5887-5900.
Lin, J., & Chen, Y.-Y. (2007). A multi-site supply network planning problem considering
variable time buckets– A TFT-LCD industry case. The International Journal of Advanced
Manufacturing Technology, 33, 1031-1044.
Luh, P. B., & Hoitomt, D. J. (1993). Scheduling of manufacturing systems using the Lagrangian
relaxation technique. Automatic Control, IEEE Transactions on, 38, 1066-1079.
299
Luo, C., & Rong, G. Hierarchical Approach for Short-Term Scheduling in Refineries. Industrial
& Engineering Chemistry Research, 49, 4474-4474.
Luo, C., & Rong, G. (2007). Hierarchical Approach for Short-Term Scheduling in Refineries.
Industrial & Engineering Chemistry Research, 46, 3656-3668.
Maravelias, C. T., & Grossmann, I. E. (2003). New General Continuous-Time State鈭扵ask
Network Formulation for Short-Term Scheduling of Multipurpose Batch Plants.
Industrial & Engineering Chemistry Research, 42, 3056-3074.
Maravelias, C. T., & Sung, C. (2009). Integration of production planning and scheduling:
Overview, challenges and opportunities. Computers & Chemical Engineering, 33, 19191930.
Mendez, C. A., Grossmann, I. E., Harjunkoski, I., & Kabore, P. (2006). A simultaneous
optimization approach for off-line blending and scheduling of oil-refinery operations.
Computers & Chemical Engineering, 30, 614-634.
Minoux, M. (1986). Mathematical Programming Theory and Algorithms.
Moniz, S., Barbosa-Póvoa, A. P., De Sousa, J. P., & Duarte, P. (2014). Solution methodology for
scheduling problems in batch plants. Industrial and Engineering Chemistry Research, 53,
19265-19281.
Moro, L. F. L., Zanin, A. C., & Pinto, J. M. (1998). A planning model for refinery diesel
production. Computers & Chemical Engineering, 22, S1039-S1042.
Mouret, S., Grossmann, I. E., & Pestiaux, P. (2010). Time Representations and Mathematical
Models for Process Scheduling Problems. Computers & Chemical Engineering, 35, 10381063.
Mouret, S., Grossmann, I. E., & Pestiaux, P. (2011). A new Lagrangian decomposition approach
applied to the integration of refinery planning and crude-oil scheduling. Computers &
Chemical Engineering, 35, 2750-2766.
Neiro, S. M. S., Murata, V. V., & Pinto, J. M. (2014). Hybrid Time Formulation for Diesel
Blending and Distribution Scheduling. Industrial & Engineering Chemistry Research, 53,
17124-17134.
Nishi, T., Shinozaki, R., & Konishi, M. (2008). An augmented Lagrangian approach for
distributed supply chain planning for multiple companies. Ieee Transactions on
Automation Science and Engineering, 5, 259-274.
. The Outlook for Energy: A View to 2040. In. (2013): ExxonMobil.
Pantelides, C. C. (1994). Unified Frameworks for Optimal Process Planning and Scheduling. In
D. W. T. Rippin & J. Hale (Eds.), Proceedings of the Second Conference on Foundations
of Computer-Aided Process Operations (pp. 253): CACHE Publications.
Papageorgiou, L. G. (2009). Supply chain optimisation for the process industries: Advances and
opportunities. Computers & Chemical Engineering, 33, 1931-1938.
Pinto, J. M., Joly, M., & Moro, L. F. L. (2000). Planning and scheduling models for refinery
operations. Computers & Chemical Engineering, 24, 2259-2276.
Polasek, M., & Mann, J. (2013). Distillate blending optimization. In. White Paper: Honeywell
Process Solutions.
Reddy, P. C. P., Karimi, I. A., & Srinivasan, R. (2004a). A novel solution approach for
optimizing crude oil operations. A.I.Ch.E. Journal 50, 1177-1197.
Reddy, P. C. P., Karimi, I. A., & Srinivasan, R. (2004b). A new continuous-time formulation for
scheduling crude oil operations. Chemical Engineering Science, 59, 1325-1341.
Roslof, J., Harjunkoski, I., Westerlund, T., & Isaksson, J. (2002). Solving a large-scale industrial
scheduling problem using MILP combined with a heuristic procedure. European Journal
of Operational Research, 138, 29-42.
Ruszczynski, A. (1995). On convergence of an augmented Lagrangian decomposition method for
sparse convex optimization. Mathematics of Operations Research, 20, 634-656.
300
Saharidis, G. K., Dallery, Y., & Karaesmen, F. (2006). Centralized versus Decentralized
Production Planning. RAIRO Operations Research, 40.
Saharidis, G. K. D., & Ierapetritou, M. G. (2009). Scheduling of Loading and Unloading of Crude
Oil in a Refinery with Optimal Mixture Preparation. Industrial & Engineering Chemistry
Research, 48, 2624-2633.
Saharidis, G. K. D., Kouikoglou, V. S., & Dallery, Y. (2009). Centralized and decentralized
control polices for a two-stage stochastic supply chain with subcontracting. International
Journal of Production Economics, 117, 117-126.
Saharidis, G. K. D., Minoux, M., & Dallery, Y. (2009). Scheduling of loading and unloading of
crude oil in a refinery using event-based discrete time formulation. Computers &
Chemical Engineering, 33, 1413-1426.
Saharidis, G. K. D., Minoux, M., & Ierapetritou, M. G. (2010). Accelerating Benders method
using covering cut bundle generation. International Transactions in Operational Research,
17, 221-237.
Shah, N. (1998). Single and multisite planning and scheduling: current status and future
challenges. AIChE Symposium Series, 94, 75.
Shah, N. (2004). Pharmaceutical supply chains: key issues and strategies for optimisation.
Computers & Chemical Engineering, 28, 929-941.
Shah, N. (2005). Process industry supply chains: Advances and challenges. Computers &
Chemical Engineering, 29, 1225-1236.
Shah, N. K., Li, Z., & Ierapetritou, M. G. (2011). Petroleum Refining Operations: Key Issues,
Advances, and Opportunities. Industrial & Engineering Chemistry Research, 50, 11611170.
Shaik, M. A., & Floudas, C. A. (2007). Improved Unit-Specific Event-Based Continuous-Time
Model for Short-Term Scheduling of Continuous Processes: Rigorous Treatment of
Storage Requirements. Industrial & Engineering Chemistry Research, 46, 1764-1779.
Shaik, M. A., Floudas, C. A., Kallrath, J., & Pitz, H.-J. (2009). Production Scheduling of a LargeScale Industrial Continuous Plant: Short-Term and Medium-Term Scheduling.
Computers & Chemical Engineering, 33, 670-686.
Shapiro, J. F. (2001). Modeling the Supply Chain. Duxbury: Pacific Grove.
Stefansson, H., Sigmarsdottir, S., Jensson, P., & Shah, N. (2011). Discrete and continuous time
representations and mathematical models for large production scheduling problems: A
case study from the pharmaceutical industry. European Journal of Operational Research,
215, 383-392.
Tang, L., & Jiang, S. (2009). The Charge Batching Planning Problem in Steelmaking Process
Using Lagrangian Relaxation Algorithm. Industrial & Engineering Chemistry Research,
48, 7780-7787.
Timpe, C. H., & Kallrath, J. (2000). Optimal planning in large multi-site production networks.
European Journal of Operational Research, 126, 422-435.
Tosserams, S., Etman, L. F. P., Papalambros, P. Y., & Rooda, J. E. (2006). An Augmented
Lagrangian Relaxation for Analytical Target Cascading Using the Alternating Direction
Method of Multipliers. Structural and Multidisciplinary Optimization, 31, 176-189.
Tosserams, S., Etman, L. F. P., & Rooda, J. E. (2008). Augmented Lagrangian coordination for
distributed optimal design in MDO. Int. J. Numer. Meth. Engng., 73, 1885-1910.
Varma, V. A., Reklaitis, G. V., Blau, G. E., & Pekny, J. F. (2007). Enterprise-wide modeling &
optimization--An overview of emerging research challenges and opportunities.
Computers & Chemical Engineering, 31, 692-711.
Varvarezos, D. Recent advances in planning and blending operations. In Refinery Optimization:
Aspen Technology, Inc.
301
Velez, S., Sundaramoorthy, A., & Maravelias, C. T. (2013). Valid Inequalities Based on Demand
Propagation for Chemical Production Scheduling MIP Models. AIChE Journal, 59, 872887.
Verderame, P. M., & Floudas, C. A. (2008). Integrated Operational Planning and Medium-Term
Scheduling for Large-Scale Industrial Batch Plants. Industrial & Engineering Chemistry
Research, 47, 4845-4860.
Verderame, P. M., & Floudas, C. A. (2009). Operational planning framework for multisite
production and distribution networks. Computers & Chemical Engineering, 33, 10361050.
Wassick, J. M. (2009). Enterprise-wide optimization in an integrated chemical complex.
Computers & Chemical Engineering, 33, 1950-1963.
Wilkinson, S. J., Cortier, A., Shah, N., & Pantelides, C. C. (1996). Integrated production and
distribution scheduling on a Europe-wide basis. Computers & Chemical Engineering, 20,
S1275-S1280.
Wu, D., & Ierapetritou, M. (2007). Hierarchical approach for production planning and scheduling
under uncertainty. Chemical Engineering and Processing: Process Intensification, 46,
1129-1140.
Wu, D., & Ierapetritou, M. G. (2003). Decomposition approaches for the efficient solution of
short-term scheduling problems. Computers & Chemical Engineering, 27, 12611276.
Zhao, X., Liu, W., & Wang, J. (2008). Genetic Algorithm optimizer for blend planning. In
Control Conference, 2008. CCC 2008. 27th Chinese (pp. 86-88).