Production Planning & Scheduling in Refinery
Production Planning & Scheduling in Refinery
Jan Persson
INSTITUTE Of TECHNOLOGY
IIHKOPINGS UNIVERSITET
Division of Optimization
Department of Mathematics
Linkopings universitet, SE-581 83 Linkoping, Sweden
Linkoping 1999
Linkoping Studies in Dissertation from the International
Science and Technology Graduate School of Management
Theses and Industrial Engineering
No. 763 No. 25, Licenciate Thesis
Jan Persson
Akademisk avhandling
som for avlaggande av teknologie licentiatexamen kommer att presenteras i sal U4, C-huset,
Linkopings Universitet, Fredagen den 23 april 1999 kl. 13.15.
Abstract
In this thesis we consider production planning and scheduling in refinery industry, in particular
we study the planning and scheduling at the Nynas AB refinery and at the Scan raff AB refinery.
The purpose is to contribute to the development and the use of optimization models to support
efficient decision making. We identify various decision problems concerning the aggregated pro
duction planning, the shipment planning, the scheduling of operation modes, and the utilization
of pipes and tanks; and we discuss the potential to successfully apply optimization models on
these problems.
We formulate a mixed integer linear programming model for the scheduling of operation
modes at Nynas. The model concerns decisions about which mode of operation to use at a
particular point in time in order to minimize costs of changing modes and costs of keeping
inventories, given demands for products. We derive several types of valid inequalities for this
mathematical problem and show how these inequalities can improve the lower bound obtained
from the linear programming relaxation of the problem. We also show how the valid inequalities
can be used to improve the performance of a branch and bound solution approach. Further, a
tabu search heuristic is developed for the scheduling problem. The solution methods are tested
on data provided by the Nynas refinery, and the performance of the methods are discussed. We
present several extensions of the proposed model, and illustrate how the model can be used to
support both operational and strategic decision making at the refinery.
LiU-TEK-LIC-1999:21
ISBN 91-7219-477-4 ISSN 0280-7971 ISSN 1402-0793
Linkoping Studies in Dissertation from the International
Science and Technology Graduate School of Management
Theses and Industrial Engineering
No. 763 No. 25, Licenciate Thesis
Jan Rersson
LiU-TEK-LIC-1999:21
Acknowledgment vii
Abstract ix
Preface xi
1 Introduction 1
1.1 Background....................................................................................................... 1
1.2 Purpose and Contribution........................................................................ 2
1.3 Method ............................................................................................................. 2
1.4 Outline of the Thesis........................................................................................ 3
iii
3 Production Planning and Scheduling 27
3.1 Characteristic of Process and Refinery Industry.......................................... 27
3.2 Production Planning and Scheduling in General.......................................... 29
3.2.1 Some Definitions.................................................................................. 29
3.2.2 Principles for Scheduling...................................................................... 31
3.3 Production Planning and Scheduling in ProcessIndustry............................. 32
3.3.1 Principles and Characteristics............................................................. 32
3.3.2 Production Campaigns......................................................................... 33
3.3.3 Batch Processing.................................................................................. 34
3.3.4 Uncertainty............ .............................................................................. 36
3.4 Production Planning and Scheduling in Refinery Industry........................... 36
3.5 Areas of Future Research and Challenges...................................................... 38
5 Solution Approaches 51
5.1 Optimizing Mixed Integer Linear ProgrammingProblems............................. 51
5.2 Branch and Bound and Valid Inequalities....................................................... 52
5.2.1 Notation................................................................................................. 52
5.2.2 General Branch and Bound ............................................................ 52
5.2.3 Valid Inequalities.................................................................................. 53
5.2.4 Generation and Use of ValidInequalities........................................... 54
5.3 Literature.......................................................................................................... 55
5.4 Valid Inequalities for the SCH-Problem......................................................... 60
5.4.1 Valid Inequalities for Production Variables......................................... 60
5.4.2 Valid Inequalities for Start-Up Variables............................................ 66
5.5 Computational Tests of Solution Strategies.................................................... 71
5.5.1 Problem Scenarios............................................................................... 71
5.5.2 Valid Inequalities Added to the LP-Relaxation.................................. 73
5.5.3 Test of Using Valid Inequalities in a B&B Procedure ..................... 77
5.6 A Tabu Search Heuristic.................................................................................. 81
5.6.1 Tabu Search in General......................................................................... 81
5.6.2 Description of the Tabu Search Heuristic........................................... 83
5.6.3 Computational Tests............................................................................ 87
5.6.4 Integration of Tabu Search and Branch and Bound........................ 93
Bibliography 107
Acknowledgment
First of all I would like to give a special thank to my supervisors Maud Gothe-Lundgren
and Jan Lundgren, for giving support, inspiration and guidance. I would also like to
thank Jan Olhager for giving valuable advice.
At Nynas AB, I want to acknowledge everyone who let me take their time with the many
questions I had, in particular Roland Oster for an always positive attitude and Tomas
Montin for bringing our attention to the process scheduling at the refinery. I would
also like to thank Lena Zetterstrom and others at Scanraff AB for gladly explaining the
complexity in the production.
Thanks to Pamela Vang for helping me with the English in some chapters and also to
Jim Blevins for correcting the English and giving advice.
Finally I would like thank my friends and especially my parents Gun and Yngve for their
support and concern about my well being.
Jan Persson
Abstract
We formulate a mixed integer linear programming model for the scheduling of operation
modes at Nynas. The model concerns decisions about which mode of operation to use at a
particular point in time in order to minimize costs of changing modes and costs of keeping
inventories, given demands for products. We derive several types of valid inequalities for
this mathematical problem and show how these inequalities can improve the lower bound
obtained from the linear programming relaxation of the problem. We also show how the
valid inequalities can be used to improve the performance of a branch and bound solution
approach. Further, a tabu search heuristic is developed for the scheduling problem. The
solution methods are tested on data provided by the Nynas refinery, and the performance
of the methods are discussed. We present several extensions of the proposed model, and
illustrate how the model can be used to support both operational and strategic decision
making at the refinery.
IX
Preface
In the the beginning of 1997 I enrolled as a Ph.D. candidate at the Division of Optimiza
tion, Linkopings Universitet, and I also joined the IMIE (International Graduate School of
Management and Engineering) graduate programme. Back then, only a few contacts had
been taken with the oil refining company Nynas AB in Nynashamn. Essentially, I have
had the opportunity to follow this research project from the very beginning. It was noticed
at an early phase of this project that optimization might be a useful tool for supporting
the scheduling of the production facility at the refinery in Nynashamn. The problem was
studied on site and real life data was gathered. An optimization model describing the
scheduling was then developed. Later contacts were established with a refinery in Lysekil,
Scanraff AB. Consequently, I have had the opportunity to study production planning and
scheduling, and related issues at the two refineries.
This thesis spans a wide variety of topics connected to production planning and scheduling,
e.g. practical issues of scheduling, strategic decisions at a refinery, and theoretical aspects
of optimization. The chapters of the thesis have quite different characteristics and it
is likely that people involved in the the business of oil refining are interested in other
chapters compared to people interested in the details of optimization methods.
XI
Chapter 1
Introduction
1.1 Background
Production planning and scheduling is an important issue for a company in order to effi
ciently transform resources (including raw materials) into products. Production planning
refers to the decision on what quantities of products to produce at an aggregated level,
whereas scheduling refers to the timing of when to produce different products and to the
allocation of resources. In discrete manufacturing industry, scheduling often implies to
plan when different jobs (and their tasks) should be carried out on the available processors
(machines). In the crude oil refinery industry, which is in focus in this thesis, schedul
ing implies to plan how to operate the facility, e.g. what mode of operation to utilize
for the various processing units at a particular point in time. Production planning and
scheduling is also connected to issues such as what products should be produced, how
should production facility be designed, what level of production capacities and inventory
capacities should be invested in.
We have studied the production planning and scheduling at two refineries, Nynas AB and
Scanraff AB. The Nynas AB refinery produces large quantities of bitumen and naphthenic
oils. The Scanraff AB refinery produces mainly fuel products and can be regarded more
as a traditional oil refinery, compared to the Nynas refinery. Although they are different
with respect to the production, there are great similarities between the refineries when it
comes to production planning and scheduling.
Optimization models have supported planners at refineries for a long time. Linear-
programming models are used for deciding on quantities to produce, consume, and trans
port. There are also optimization models used for the blending of products (or com
ponents) into other products. However, for the scheduling of the operation modes at a
production facility, optimization models appear to have not been used very much.
The scheduling at a refinery is about deciding on the mode of operation to use at a par
ticular point in time in order to make sure that the products are available when they are
planned to be shipped (demanded). The aim is to reduce production cost associated with
1
2 Chapter 1 Introduction
The overall purpose of the research presented in this thesis is to contribute to the use of
optimization models in connection to production planning and scheduling in the crude oil
refinery industry. The contributions include
• the analysis on and the exemplification of how the optimization model can be used
in order to find processing schedules for operational planning as well as for strategic
planning.
1.3 Method
The method employed in this thesis follows an operations research or systems analysis
methodology, see for example Quade and Miser (1985) for a historic review. The operation
research process is illustrated in Figure 1.1.
Modeling
Problem Model
Assessment Analysis
Inference
Decisions Conclusions
with what the results can be interpreted. An optimization model is based on an objective
function and constraints which limit the values of the decision variables, i.e. the set of
feasible solutions. Analysis often includes the optimization, which is to to find a good
or an optimal solution, given the specified model and the corresponding input-data. The
solution represents a way to act or a decision. Finding good solutions within reasonable
time is often a difficult task, even with the state-of-the-art solution methods and with the
fastest computer. The conclusions are based on the model and the analysis. Decisions can
then be formulated based on the conclusions drawn (inference). However, these need to be
assessed before they are carried out, i.e. one need to carefully consider if the anticipated
effects are desirable. At this last step, one often realize that there is a need to go through
the loop again, in order to devise a decision that actually is carried out. Also, in each of
the steps of the loop, one often needs to go back a few steps and re-start.
In this thesis we concentrate on the modeling and on the analysis phase. We also indicate
how the analysis can be interpreted into conclusions and thereby constitute support for
the decision making.
In Chapter 2, we first present the Nynas case, and then the Scanraff case. The production
process and the production planning and scheduling are presented for both the refineries.
The Nynas case is described in a somewhat more detail, since a model for the scheduling
at Nynas is later developed (in Chapter 4). A comparison of the scheduling situations
at the two refineries is also presented in this chapter. The chapter is concluded with an
analysis of the decision problems encountered at the refinery, and the potential for using
optimization on these problems is discussed.
literature, where optimization has been used for decision making in the refinery industries,
are given.
The issues of how to optimize the formulated scheduling problem is considered in Chapter
5. It is natural to represent the scheduling problem as a generalization of the lot-sizing
problem, and solution approaches for the lot-sizing problem are discussed. Several types
of valid inequalities are derived for the scheduling problem. The effect of using the valid
inequalities is tested on the integer relaxation of the problem, and the most promising
ones are then used within a branch and bound solution approach in order to reduce the
computational time.
Another recent solution approach is the tabu search, which has been applied successfully
to many combinatorial problems. In this thesis we develop a tabu search heuristic for the
scheduling problem.
Both the solution approaches are tested on data provided by the Nynas refinery, and their
performances are discussed.
In Chapter 6, we show how the developed models and solution approaches can be used
for various types of analyses, in order to support decision making.
This section consists of a description of the production and planning process at the refinery
in Nynashamn. Here, Nynas refers to the refinery in Nynashamn operated by Nynas AB,
but Nynas AB also operates a refinery in Gothenburg.
Nynas AB is a member of the Nynas group which transforms crude oil into various oil
products (bitumen, special oils, and fuels). The Nynas group is equally owned by the
Venezuelan national oil company, Petroleos de Venezuela, S.A. (PDVSA), and the Finnish
oil and chemical company, Neste Oy. The group consists of five refineries located in north
ern Europe, Gothenburg and Nynashamn (Sweden), Antwerp (Belgium), and Eastham
and Dundee (UK). The largest of these refineries is located in Nynashamn. The group
also partially owns a refinery which is located on Curacao in the Dutch Antilles.
According to their 1997 annual report, the group had 1996, 829 employees of whom 444
were in Sweden, and it had a turnover of 4314 million SEK. The group has its main market
in Europe, but sells some of its products all over the world. A considerable number of
the products are sold on long term contracts, which specify a maximum and minimum
quantity of sales.
5
6 Chapter 2 Problem Description and Analysis
The first oil tanker arrived at the brand new refinery in Nynashamn in 1928. At that
time, the main products produced were bitumen (for road surfacing), petrol and fuel
for marine applications. Not long afterwards a chain of petrol stations was developed
throughout Sweden. In the mid 50s, a refinery in Gothenburg was built in order to meet
the increased demand. During the 60s and 70s the product range offered was extended to
include more bitumen products and also with special oil products. In the 80s Nynas went
international in terms of sales when the UK, west Germany, and France were targeted.
Later, refineries in Belgium and UK were bought in order to meet demands abroad. In
1981 the chain of petrol stations was sold to Shell and Nynas took a serious step from its
traditional oil company structure to being an oil company targeting on special products,
such as naphthenic high quality oils.
The group of products with the greatest volume (in tons and sales) is Bitumen, which
accounts for roughly 70% of total production in tons and 56% of total sales for the Nynas
group. Bitumen is used in asphalt and is the adhesive that binds gravel together. Another
group of products accounting for 20% of total production in tons and 21% of total sales,
is fuel distillates. These are mainly used for marine bunker fuel. Naphthenic special oils
account for the remaining 10% of the total production in tons and 23% of total sales.
Special oils are mainly used as insulating oils (e.g. for transformers), process oils (e.g.
in rubber) and as base oils for lubrication. The Nynas group concentrates its product
development resources on bitumen and naphthenic products and regards fuel as a by
product. Traditional oil companies often produce approximately 95% fuel, but this does
not apply for Nynas, as we have indicated above.
The refinery in Nynashamn is the largest refinery in the Nynas group and transforms
annually about 1 000 000 tons of crude oil which constitutes 30% of the total production
within the Nynas group. It produces all three categories of the products mentioned above,
but it produces relatively more naphthenic than fuel when compared to the product mix of
the whole group. The refinery in Nynashamn is the only refinery along with the refinery in
the Dutch Antilles within the group that can hydro-treat the products. Hydro-treatment
is a process that transforms the reactive distillates into less reactive naphthenic products.
The crude oil is delivered in tankers of approximately 60 000 tons and stored in rock
caverns in the vicinity of the production facility. The crude oil is distillated in a CDU
(Central Distillation Unit), called “VD2” at Nyna, and “separated” into a top fraction
(naphtha), distillates, and bitumen (see Figure 2.1).
The top fraction, which only accounts for a few percentage of the output, become fuel
products. Some distillates are blended and delivered, while others are processed further,
in two parallel lines (a third is planned), into naphthenic special oils. The two lines
differ slightly, since hydro-treatment can be performed to varying degrees. The products
produced are transported by boat either to one of the depots around the world or directly
to a customer. A small percentage of the products are also delivered to customers by
trucks.
2.1 The Nynas Case 7
Distillation
The crude oil is distilled in a huge “tower” (CDU). This process requires a lot of energy,
since a large portion of the crude oil is temporarily transformed into gas. The capacity
of the CDU is about 4500 tons per day (24h) and the output from the CDU consists of
four distillates, bitumen and a top fraction, as illustrated in Figure 2.1.
Production Facility
Naphtha Distillate 1
Naphthenic
Distillate 3 Special
Oil
Crude oil
Distillate 4
Bitumen
The top fraction, which is only a minor part of the output (0.5%), contains a mixture
of fuel and water. The fuel is separated from the water in a separate process. From the
“middle” of the CDU, four distillates are obtained. Out of these four distillates, three are
normally sent for hydro-treatment. At the bottom, bitumen, which is the remains of hydro
carbons that have not been transformed into gas, is tapped. In traditional refineries the
heaviest hydrocarbons, such as bitumen, are processed further in order to obtain larger
quantities of lighter products. This is called cracking.
Crude oil, which consists of an immense number of different hydrocarbons, is injected into
the bottom of the CDU. All the hydrocarbons, except for the heaviest, are transformed
into gas and are slowly moved upwards in the CDU. Higher up, the temperature is lower
and some hydrocarbons will start to transform back to liquid. Since the hydrocarbons
differ in their boiling temperatures, different hydrocarbons will be transformed into liquid
at different levels of the CDU. For hydrocarbons, viscosity and flame temperature are
related to boiling temperature, and therefore, the higher up the CDU the product is
tapped, the lower its boiling temperature, viscosity and flame temperature. This means
8 Chapter 2 Problem Description and Analysis
that the characteristics of the products tapped from the CDU is controlled by where the
cuts are placed on the temperature scale, i.e. the range of boiling temperatures for hydro
carbons included in the distillate tapped at a particular distillate outlet of the CDU. In
practise, the position of the cuts are determined by the rate at which each of the distillates
is tapped and by the level of cooling applied. The placing of these cuts is defined by the
so called run-modes or modes of operation.
If the ability of the CDU to separate the hydrocarbons is reduced, the product quality is
also reduced, if nothing else is changed. This is due to the fact that the quality of the
product/distillate deteriorates, perhaps even to the extent that it is no longer within the
bounds given by the specification, if a small but significant amount of hydrocarbons with
boiling temperatures outside the defined temperature range appear in the product. In
order to maintain the quality of a distillate when the ability to separate the hydrocarbons
is reduced, one must often reduce the difference between the temperature of its ” upper”
and ’’lower” cuts. This, however means that the distillate will be obtained at a lower
yield, whereas other distillates will be obtained at a higher yield, probably with poorer
quality. Obviously, there is a conflict between the yield and the quality obtained of a
distillate.
A successful separation of the distillates is not only reduced by disturbances to the pro
duction process but also happens gradually in normal production (although this process
is very slow). Gas and liquid will not flow through the small pipes and holes in the dis
tillation tower as well when these with time become clogged with remains of the crude
oil.
Crude Oil
Most crude oils are paraffinic and not naphthenic, which is bad for the lubrication prop
erties of the oil. However, the Venezuelan oil (Laguna) which is normally used at Nynas,
contains a lot of bitumen and naphthenic hydrocarbons, and is therefore suitable for the
product mix produced. The demand for bitumen is seasonal since road surfacing work
plummets during the winter. Since storage capacity is limited, the production needs to be
halted or in some way altered during the winter. One solution to this problem, currently
applied by Nynas, is to keep up production during the winter, except for maintenance
stops, using a naphthenic crude oil that contains less bitumen. Such a crude oil can be
obtained from the North Sea.
bitumen products to produce, two base modes of the CDU are considered. The “harder”
bitumen product of the two base bitumen products is obtained at a yield of 45%, while
the “softer” can be obtained at a yield of up to 75% of total output. It is mainly the yield
of distillate four that is affected by the choice of the base mode of the CDU.
In addition to the base modes of bitumen production, there are some other 15 run-modes
of production to choose from in order to obtain the products desired. Normally, the modes
are specified in such a way that the yield of the second distillate (from the top of the CDU)
is as high as possible, since it can then be further processed into a high-value naphthenic
special oil. There are modes which represent operating the process with different crude
oils and at different rates and there are also modes which define a blend-in of a distillate,
i.e. a distillate which is blended into the crude oil fed to the CDU. Such a distillate,
used as a blend-in, may have been obtained as a ” waste product” from the process when
exposed to some disturbance. The ability of the CDU to separate the hydrocarbons into
the different distillates affects how the cuts should be set in order to obtain the desired
output. For example, if the CDU is in good condition, which means that the hydrocarbons
are well separated, a higher yield of the second distillate can be obtained. Consequently,
the cuts of the run-modes (and thereby the yield) may need some minor modifications in
order to match the current ability of the CDU to separate the hydrocarbons.
There are negative implications associated with the changeovers of the run-modes of the
CDU. The CDU needs time to stabilize under the new operating conditions. Therefore
the product characteristics are uncertain and fluctuating for 1-2 hours after a changeover.
During this period, the distillates often have to be degraded to fuels of a lower sales
value. However, bitumen production is not so sensitive to fluctuations, which means that
no degrading of bitumen is required when a change is made between two run-modes. Since
the process needs careful monitoring and valves need to be a adjusted, when changeovers
are carried out, more manpower is required than during normal operations. Because
of downgrading, the production capacity of high-value distillates is reduced by frequent
changeovers.
Sometimes the distillation process has to be shut down for example due to major dis
turbances or simply due to low demand during the winter. If the CDU is shut down, a
lot of the costs are associated with the following start-up. The cost is derived both from
the energy required for the warm up stage and from the low value (low quality) of the
distillates obtained before the process has stabilized after some 12 hours. Therefore it
is often better to decrease the production rate, which it is possible to do down to 50%,
than to run intermittent production. Some maintenance stops may be required if the
separation of the hydrocarbons of the CDU is to be kept at satisfactory level.
Hydro-Treatment
In the hydro-treatment process hydrogen is added to a distillate in order to obtain the
desired characteristics of the naphthenic special oils. The hydro-treatment process reduces
the reactive characteristic of the oil product. This means that the oil will be ” nicer” both
to materials and to humans. The hydrogen used in the process is produced in three
facilities.
10 Chapter 2 Problem Description and Analysis
The hydro-treatment is performed in the two separate lines denoted HT (heavy hydro
treatment) and HP (light hydro-treatment), illustrated in Figure 2.1. All the distillates,
numbered one to four in Figure 2.1, can be hydro-treated, although normally only distillate
2-4 are hydro-treated. The refinery also takes some distillates from Gothenburg and
Antwerp for hydro-treatment. Another line, called HT2, which equals HT in terms of
capacity and characteristics, is planned.
There are 10-15 run-modes for the hydro-treatment lines. A run-mode for a hydro
treatment process represents the consumption of a particular distillate and the production
of a particular naphthenic special oil, i.e. the run-mode defines the input/output of the
process. The hydro-treated naphthenic is obtained at a yield of 80 — 90%, depending on
the run-mode. The other products obtained are two fuel products.
There are also costs associated with changeovers of run-modes in HT and HF, these can be
reduced however if switches are only made between products that have small differences
in viscosity. The cost is a results of the need to downgrade the products produced during
the first four hours after the changeover (applicable for beneficial changeovers).
The crude oil is delivered by tankers and tapped into a rock cavern. The largest rock
cavern for Laguna crude oil (from Venezuela) has a capacity of more than 400 000 tons.
Then, the crude oil is pumped into a “feed tank” which then in turn feeds the CDU. The
crude oil contains a small percentage of water, most of which needs to be removed. Water
is removed in both the rock cavern and in the feed tank.
The top fraction from the CDU is pumped to a water separation facility. The four
distillates are pumped to one of 10-15 tanks where the distillates are stored before further
processing in HT or HF. No tank is used entirely for storage of one specific product, but
a relatively large number of the tanks are used for the same product over a long time
period. Some tanks are used as multipurpose tanks (’’swing tanks”), which often change
from storing one product to another. It is not possible to fill a tank from the CDU and
at the same time feed HT or HF with a distillate from the same tank. This is due to the
fact that there is at most one line connecting a tank with a pump house. In some cases,
a group of tanks may even share a limited number of pumps and lines. Currently, it is
not possible to send products directly from the CDU to any of the two hydro-treatment
processes.
Bitumen is pumped directly to a tank being used for the storage of one of the two base
bitumen products. The bitumen tends to become much less fluent when the temperature
is below 70 degrees Celsius. Therefore one must keep tanks and pipes used for bitumen
2.1 The Nynas Case 11
products, heated. This of course adds to the storage cost of bitumen. The same applies
for distillate numbered four (the heaviest distillate).
Distribution
The bitumen products are stored in the two main qualities but also in some blended qual
ities. If required, these are blended further with on-line blending before being delivered
by boat or truck to Nynas depots or directly to customers. Nynas owns two tankers that
are used for delivering bitumen to the eight depots located along the Swedish coast or
directly to depots or customers abroad.
Fuels are normally not kept in stock, but are delivered to Gothenburg or sold directly to
customers, whenever there is fuel to “get rid of”. Often fuels have to be blended in order
to meet some standard specification.
With regard to the production and delivery of naphthenic special oils, it is an aim to
pump the oils to a tank from where the product can be delivered directly to a tanker.
Often tanks are used for the storage of the very same naphthenic special oils over a long
time period, although the tank is not used specifically for just one particular product.
What holds for distillates also applies to naphthenic special oils: it is not possible to both
pump to a tank and pump from it at the same time. Some products consist of a blend
of different naphthenic oils. The blending process is quite time and storage consuming,
since the blending cannot be performed as on-line blending at delivery. Furthermore,
some naphthenic oil products need to be tested in a laboratory for a few days, which
means that the product has to be stored for some days before it can be shipped.
Most of the naphthenic special oils products are distributed to customers or depots by
tankers, but some percentage is delivered by trucks. The loading of tankers is complicated
by the fact that some tankers often carry up to 5 different products. The pipes utilized
for the loading of naphthenic oils into tankers often require to be cleaned between the
loading of different products. In such case, a so called “soft plug” is sent through the pipe
for cleaning purposes.
The planning and scheduling within the Nynas group aims to rationally produce products
which together maximize the revenue. A large part of the total production is sold on long
term contracts, with specified upper and lower limits to the volumes to be delivered. These
contracts have a duration time of one to four years. Consequently, an important issue for
Nynas, is the negotiation/agreement of the conditions of such contracts. Another issue,
is to devise efficient production plans and schedules in order to meet the requirements of
the spot market and contracted sales. As one tool, the Nynas group uses an LP-model
(Linear-Programming) on the production for the next twelve months.
12 Chapter 2 Problem Description and Analysis
The LP-Model
The LP-model used at Nynas describes the refineries, transportation links, depots, and
customer areas. The time is modeled in time intervals of months for the next twelve
month-period. The optimization is performed at the head office in Stockholm every
second month. The input which drives the model is forecasted demand and the outcome
is production and transportations requirements.
The marketing department provides the model with forecasts for the demand of products
per month for the coming year. The forecasted demand is given per depot/sales area. The
model uses the concept of run-modes in order to describe the transformation of crude oil
into products. This accounts for the conflict in production between different distillates,
e.g. one cannot produce the high-value distillate numbered two without obtaining bitumen
and other products as well.
The model also includes production costs at the different facilities, transportation costs,
and cost for the storage of products and crude oil. Constraints are included in the form
of production and storage capacities. The supply of crude oil from Venezuela (Laguna) is
also limited, but not the supply of North Sea oil. The final inventory level is set equal to
the current (initial) inventory level.
The output of the LP-model is recommended production per product and month at all five
refineries in Europe. The LP-model gives the transportation requirements between the
refineries and depots. Furthermore, the inventory levels of the products at the refineries
and depots at the end of each month can be retrieved.
The resulting optimal LP-solution, is used for creating a rough assignment plan for pro
duction at the different refineries and for the assignment of the products produced to the
different depots and customer (areas). Included, are also rough figures for quantities of
crude oil to be bought, inventory levels, and deliveries of the different products. This can
be regarded as a production plan.
Nynas uses this production plan together with their own forecasts of the demand, in order
to develop a more detailed shipment plan than the one obtained from the LP-model. The
shipment plan for the delivery of bitumen and naphthenic products is given by day of
departure. Fuels are not really considered at this stage, since the transportation of fuels
is mostly dependent on the operation of the refinery. This means that the results from
the LP-model is not directly used for production planning and scheduling of the refinery,
but rather to determine which customers or what demands at depots, should be satisfied.
The LP-model gives information of the ” optimal” inventory levels of products at the end
of each month, which may be exploited in scheduling. Even though the LP-model takes
into consideration run-modes, this information cannot be used directly by the refineries
for their day-to-day scheduling. This is because the LP-model considers only a limited
set of run-modes at an aggregated level and ignores the effects of changeovers.
2.1 The Nynas Case 13
Planning of Bitumen
When information about what depots and which customers are requiring deliveries has
been gathered from the rough assignment plan, a shipment plan for bitumen can be
developed. The shipment plan has a time horizon of at least a month (up to three
months) and is update each week. The demand for bitumen products forecasted together
with the current inventory level in Nynashamn and at the depots, are utilized in the
process of creating a shipment plan. This plan is developed in a spreadsheet environment
with some help from the data obtained from the LP-model. The plan is generated in
an iterative manner together with Nyship, the operator of the Nynas bitumen tankers.
Unfortunately, information about future demand for bitumen given by customers is often
very sparse. This makes it quite difficult to devise a shipment plan for bitumen that will
actually hold.
The shipment plan may not hold because of disturbances. For example, a ship can break
down or be delayed due to bad weather. Sometimes a ship arrives earlier than planned,
which may cause some changes to the plan, since the policy is to serve the ships on the
basis of first-come-first-served.
One very important issue that must be taken into consideration when planning the trans
portation of bitumen, is the seasonality of demand. It follows that inventory levels should
be high at the beginning of high season (spring), and low at the beginning of the low
season (fall). The output of the LP-model is helpful in this planning. Planning is hard
when inventory levels are at their extremes (high or low).
Scheduling of HT and HF
A schedule of the run-modes of the hydro-treatment processes HT and HF, is established,
using information about the planned deliveries of naphthenics and the current inventory
levels. The schedule defines what product to produce and what product should be con
sumed at a particular point in time for the next month. Consequently it also provides
information about when to perform changeovers. The scheduling is done manually with
help from the VAX-database system and spreadsheet models. Sometimes, the storage
levels are quite low which means that quite a lot of intellectual work is required before a
14 Chapter 2 Problem Description and Analysis
feasible plan can be developed. At this stage, it is assumed that the required distillates
will be available at the time the distillate is scheduled for hydro-treatment. However,
some consideration is taken as to whether this is a reasonable assumption or not. The
scheduling task is furthermore complicated by sequence dependent changeover effects.
In reality, the scheduler avoids switches between production of the two most different
products in terms of viscosity, produced in HT.
The scheduling of the CDU currently appears to be primary about creating a schedule
that can meet the demand for bitumen and the scheduled requirements of distillates,
without giving much attention to the negative effects of the changeovers. Even though
the “secondary” aim is to reduce the number of changeovers, these are often needed during
the following few days of production. This depends on the fact that a product currently
produced is about to fill the storage capacity, or a product which is not being produced
needs to be produced as soon as possible. The success of the CDU schedule is highly
dependent on the “quality” of the previous planning steps. A poor shipment plan and a
poor schedule of HF and HT may very well produce requirements for the CDU schedule
which results in costly schedules, or even requirements that cannot be met.
The arrival of the ships also needs to be planned. Even though there is an established
shipment plan the tankers may arrive in a different order to the order anticipated. Con
sequently, there are short terms decisions to be made as to which tanker should be served
first, and also what wharf to utilize for the loading of a particular tanker.
2.2 The Scanraff Case 15
Skandinaviska Raffinaderi AB, Scanraff, is a company located on the Swedish West Coast,
and refines crude oil into various oil based products. Scanraff is owned by the two oil
companies Preem Petroleum AB and Hydro R&M Holding a.s. The owner shares of the
different production facilities vary, which complicates matters slightly, since they have
somewhat different preferences as to which products to produce. The Scanraff refinery has
a capacity for refining 10 000 000 tons crude oil per year (which equals 2/3 of the Swedish
consumption) and it employs about 560 persons. The products are mainly delivered to
Sweden, Denmark, Germany and UK.
Production at the refinery started in 1975. At that time, the market’s demand for low-
sulphur products was lower and the demand for heavy oil products was larger, compared
to today. As demand has changed to products with other specifications, the production
facility at Scanraff has been modified. The capacity for turning heavy oil products into
lighter (cracking) has increased together with the capacity for removing sulphur from the
products.
In this description special attention is paid to the processing units (steps) which are
regarded as critical in the planning process. These processing units constitute bottlenecks
with reference to the LP-model used for the aggregated planning. Scanraff produces a
large range of lighter fuel products, such as gasolines, diesel oil, and some other products.
The lighter products, and in particular the environmentally friendly (low sulphur) diesel,
have a high economic coverage. Many of the processing units at Scanraff reduce sulphur
contents or crack long (heavy) hydro carbons into shorter hydro carbons (lighter).
In order to provide the refinery with crude oil, a crude tanker arrives about every fourth
day. The crude oils are stored in four rock caverns with a total capacity 800 000 m3. Two
caverns are used for the storage of low sulphur crude oil (LS) and two for high sulphur
crude oil (HS). The crude oils are pumped from the rock caverns to one of the three feeder
tanks and stored for at least 3-4 hours (in order to allow the water to be separated from
the crude oil) before the blend of crude oils is fed into the CDU (Central Distillation Unit).
The CDU is fed alternatively with high sulphur crude oil (HS) or low sulphur crude oil
(LS), currently often at periods of 3 and 1.5 days of duration respectively. The sulphur
contents of the blend of crude oils processed in the CDU reflects the sulphur contents of
components obtained.
16 Chapter 2 Problem Description and Analysis
The CDU “partitions” the crude oil into distillates containing different ranges of hydro
carbons: naphtha, kerosene, LG (Light Gasoil), TG (heavy gasoil), and TTG (heavy
heavy gasoil), see Figure 2.2. Most of the distillates need some further processing before
being blended to end-products and delivered by tankers to customers.
The light components, naphtha and kerosene require some further processing. We do
not not investigate this in any depth here, since high utilization appears to be achievable
without any great effort being put into the task of scheduling. The same applies for the
heaviest product produced in the CDU, which undergoes further processing in a vacuum
distillation unit and also some cracking, before it is delivered.
The LG product is processed further in order to reduce sulphur contents and the share of
aromatic hydro carbons. A processing unit called “Synsat” is used to process the LG into
environmentally friendly diesel (MK1). Synsat is sometimes also used for producing a less
valuable product DSLG (DeSulphurized Light Gasoil), normally from LG produced with
HS crude oil. The reason for producing DSLG (currently done roughly 25% of the time) is
that DSLG is needed as a component in gasoil products. Without sufficiently high DSLG
production, the gasoil products obtained are less valuable. The capacity of “Synsat” is
larger when producing DSLG. Switching between production of MK1 and DSLG causes
losses due to necessary downgrading.
Another processing unit called MHC is also used to reduce the sulphur contents of two
slightly heavier components. Either MHC processes TG or a blend of TTG and VGO, and
2.2 The ScanrafF Case 17
cost is incurred (due to downgrading) when the production is “switched”. However, when
LS crude oil is processed in the CDU, TG is (normally) sent directly to the blending of
end-products. The capacity of MHC is not large enough to process components produced
with HS crude oil all the time, i.e. the capacity of removing sulphur is not enough.
The relative quantities of LG and TG obtained from the CDU depend on where the cut
is set between these two components. There are normally two alternatives, either the cut
is set to produce LG suitable for the production of MKl in Synsat or for the production
of LG suitable for DSLG. The cut suitable for MKl results in less LG and more TG
being produced (due to density requirements on MKl), compared to a cut suitable for
the production of DSLG.
Most of the components obtained from the various processing units need some further
blending before delivery. A set of tanks is used for the storage of components (semi
products) after the processing units, and another set of tanks is used for storage of end-
products. There are three available blend-stations (gasoline, gasoil, and thick fuel oil).
There is some degree of freedom in the matter of which components to use and their
quantities, for blending a particular end-product. It is also possible to blend the end-
product directly into a tanker, which is done for roughly 50% of the production volume.
This is time consuming, since samples may need to be taken to ensure that the quality
specification for the end-product is met.
The end-products are delivered from four wharfs (so called jetties) into the tankers. Due
to the high frequency of tankers arriving at Scanraff (four a day), the tankers may need to
wait for a wharf to become available. A serious problem may occur if tankers are delayed,
which means that tanks are starting to fill up. A “worst case scenario” is that processing
needs to be halted due to full component and end-product tanks (and “missing” tankers).
The production facility at Scanraff can to a very large extent be controlled remotely
from control panels, i.e manual intervention is not required. The tanks used for storage
can be fed and tapped at the same time , i.e. a tank has one in-let and one out-let.
Consequently, the facility is fairly flexible allowing for various concurrent pumpings and
for fast changes in how to pump the components. Scanraff do not appear to be restricted
in their production due to limits in the network of pipelines. However, the tank capacities
of components and end-products are restrictive, since they equal roughly the quantity of
(only) 8 days of production.
The purpose of the production planning is to increase the total value of the products
“passing” through the refinery, that is, to maximize the value of products delivered minus
the value of products consumed. Scanraff utilizes an LP-model for the process of trans
lating the preferences of the market inclusive the preferences of the owners of different
products they want to obtain, into the actual production quantities to produce at the
refinery. The LP-model describes the production at the refinery for the following month.
The decision variables are quantities to produce of the different products, and quantities
18 Chapter 2 Problem Description and Analysis
to use of the different crude oils. The model requires input-data such as production unit
capacities, market prices of different crude oils and end-products, the quantities of some
products required by the owners, and the price they are prepared to pay for other prod
ucts. The LP-model is used in a two-step process. In a first step, the model is used for
formulating a so called ’’strategy”, and aims at evaluating different production options,
such as what crude oils to buy and what products need to be prioritized in the different
production units. Statements such as, “use maximum HS for MKl“,”use maximum ca
pacity of the CDU”, “produce maximum MK1 in Synsat”, are formulated. The strategy
also includes information about what is restraining the production, e.g. the availability
LG limits production in Synsat and the availability of VGO limits production in MHC.
In a second step of the production planning, the LP model is used again in order to find
more exact quantities to produce of the different products. Between the first and second
run, the owners decide what crude oils that should be bough and which quantities of
different products they actually need. Consequently, in the second step the solutions pace
of LP-model is more restrained than in previous step. The results of the second run, build
up a production plan.
Both the steps mentioned above are carried out once a week in the planning and scheduling
procedure. The modeling is done for each owner separately, with the capacities defined
according to the owner shares of the processing units. The LP-model is also used for
strategic analysis in order for example to evaluate the economic benefits from buying new
crude oils or producing new products.
A next step in the planning and scheduling process is to decide on a shipment plan for
the crude oils. A rough shipment plan is suggested and sent to Preem and Hydro which
decide on the more exact dates for the deliveries of crude oils. There is a choice of buying
a few of 10-12 LS and HS crude oils. The blend of crude oils planned to be fed to the
CDU should meet the planned deliveries indicated by the LP-model. A schedule for the
next month of the feed to the CDU is established. The “crude oil schedule” gives details
of whether to use HS or LS crude oil and in which mix, at a particular point in time, but
does not include how to set the cuts. The duration of the production of these two run-
modes (HS and LS) is limited by the size of the feeder tanks, and therefore the timing is
often established in multiples of the sizes of the three feeder tanks. Every switch between
HS and LS causes some product downgrading. At this point, little consideration is taken
of the possible variations in demand during the month, i.e. only the total demand for the
individual products for a whole month is considered. However, experience is an important
factor in order to devise an appropriate schedule (inclusive blend of crude oils) of the CDU
for the next month. The planning/scheduling step described above, is perfomed with little
help from computerized tools and relies on a high level of experience.
Knowing the plan for the CDU and quantities demanded of end-products (from the LP-
model), a rough shipment plan of end-products is established with quantities specified in
seven day-periods for the following two months. The plan is sent once a week to Hydro
and Preem which return a more detailed plan of the shipments (“Lyftningsprogram”). An
iterative process may be needed in order to produce a shipment plan that appears good
enough to hold. Knowing the operation schedule of the CDU and a shipment plan, the
schedule of the other processing units can be created. As mentioned above, the “Synsat”
2.3 Comparisons between the Refineries 19
and “MHC” units are regarded as bottleneck units, which in most cases is evident from
the LP-model. Therefore these units are scheduled first. At the same time, the schedule
of how to set the cut of the CDU is decided, e.g. if LG appropriate for MK1 or DSLG
should be produced. All decisions regarding the cut between LG and TG, what to process
in Synsat, and what to process in MHC, need to be considered simultaneously, since they
are closely connected.
The scheduling of the processes is to a large extent a feasibility problem, i.e. how to make
a schedule that can meet the planned deliveries. Of course, it is also desirable to reduce
switching between production of different products, since this incurs costs. The cost
of switching is considered secondary however compared to ensuring that the products
are available when the tankers is due to arrive. Naturally, changes in the production
requirements often imply that re-scheduling must be carried out at short notice.
The next step in the planning and scheduling process is to determine how to transform
components into end-products. This is done on a more short term basis. The blending is
partly a decision problem based on timing and sequencing, i.e. when to perform a certain
blending. The blending also concerns what relative quantities to use of the different
available components. Obviously, the products should be blended with as low valued
components as possible, but within the specification limits. Often spreadsheet models
with component values specified are used to devise an appropriate mix of components
minimizing the cost. The values of the components are often set by experience. If one often
tends to run out of a particular component, that component is given a high value/price in
the model. The possibility of using price information from the LP-model is only utilized to
a small extent. Due to the relatively constant values/prices of the components, the relation
between quantities of components used and the end-products is fairly fixed. However,
when shortages occur, an end-product may occasionally be blended from relatively high
valued components.
Knowing the actual deliveries from the shipment plan for the end-products, short-term
wharf scheduling can be carried out. The actual schedule is often much of a first-come-
first-served “rule”. However, due to a high degree of utilization, more consideration may
need to be taken at times when ships tend to “line-up” outside the refinery. Matters are
further complicated by the fact that some tankers may only visit a subset of the wharfs
and some products may only be loaded from a subset of the wharfs. Some changeover
cost due to the sequence of loading the products may need to be considered.
The most prevalent similarity in the planning and scheduling situation at Nynas and
Scanraff, is the divergent product flow, i.e. all products are based on crude oil. Another
important similarity is the usage of run-modes at the processing units. At both refineries,
run-modes are used with different duration time, normally between one and ten days.
Some kind of cost is incurred whenever there is a switch from one run-mode to another.
The cost of a changeover is mainly due to the need for downgrading the product, i.e. the
20 Chapter 2 Problem Description and Analysis
product does not meet the specification of the high value product or semi-product. Both
the refineries seem to have the same motives for changeovers. A changeover is performed
when storage capacity for the product(s) produced is about to run out, or when a product
which is not currently produced needs to be produced due to demand. Changeovers do
not appear to be utilized for reducing inventory levels.
Both Scanraff and Nynas use an LP-model for the aggregated planning although Scantaff
seems to makes greater use of the LP-model at the “lower” level - shorter planning horizon.
The forecasted demand is used in order to create a shipment plan. The scheduling of the
processing units at both Scanraff and Nynas is to a large extent driven by the shipment
plan.
One difference can be found in the way the crude oils are used. Nynas, almost without
exception, uses crude oil from Venezuela, whereas Scanraff constantly makes market con
siderations of which crude oil to buy. Scanraff is able to store crude oil of four different
qualities, which enables them to choose a blend of crude oils currently suitable. Nynas
has not the storage capability to choose from different crude oils in the same “simple”
way. However, Nynas sometimes blend in a distillate into the crude fed to the distillation
tower. Nynas appears, at least for some products, to have a larger control of the storage
and transportation of end-products. They do have relatively large quantities stored at
depots close to the customers, which can be utilized in the planning. It ought to be easier
to re-plan a shipment to a depot when this is under the control of the same owner. This
is likely to apply also at Scanraff, but the facility does not appear to be utilized with the
same “ease”.
Another difference can be found in the processing facilities. Scanraff has a fairly flexible
processing facility, i.e. they can pump to and pump from most of their tanks at the same
time. Scanraff also enjoy a higher degree of automation and the possibility to control
tanks “remotely” compared to Nynas. Compared to Nynas, Scanraff has a lower storage
capacity in relation to the throughput
In this section we analyze some important decision-making problems that we have found
at Nynas and Scanraff. Decisions are made of various types and at different levels. We
briefly discuss their characteristics and aims. We also discuss how these decision problems
can be supported by current decision support tools and also by potential new tools.
The production process at the refineries is tuned in order to make the most of the current
facility at every point in time, e g. the placing of cuts in the CDU process is tuned. An
approximate value of how well the facility is utilized is obtained by taking the value of
the products produced minus the value of the products consumed. The refinery must also
decide upon measures to take such as investment (or re-investment) in the production
facility in order to support the ability to deliver good revenue also in a long term perspec
tive. Hence, the decisions concerning the production at the refinery aim to deliver high
2.4 Problem Analysis 21
At both the refineries, production planning and scheduling is carried out sequentially, as
illustrated in Figure 2.3. At the top level, production planning is carried out which results
in a plan of what quantities to produce of the end-products. Then shipment planning is
carried out, which results in a plan of when a shipment is planned to occur. Based on the
shipment plan, the process scheduling is carried out in order to decide how to operate the
processing units at a particular point in time. All these planning steps have a planning
horizon of one month or somewhat longer.
Production planning
Process scheduling
Execution
Figure 2.3: The steps utilized for planning and scheduling at operational level
The planned process schedule and the shipment plan need to be executed (execution). For
example, this involves fine tuning the processing units, deciding how to pump and store
the components and products, deciding how to blend the components into end-products,
to decide on which order to serve the arriving tankers and which wharfs to use for the
loading of a particular tanker. At this last step, the decisions are often made when needed
and few plans are created beforehand to support the decisions.
Production planning mainly effects the production only for a limited time (the planning
horizon), and hence can be regarded as decisions at operational level. However, there are
some issues in the production planning that clearly have implications for a fairly long
time, such as to deciding on inventory levels, i.e. should they be increased or reduced.
The shipment planning can also be regarded as decisions at operational level, since it has
only limited effect beyond the planning horizon. The same applies for the scheduling of
the processes, since the schedule essentially affects the production only for the following
month. In the execution phase, decisions do not normally have any greater implication in a
long-term perspective, and hence can also mainly be seen as decisions at operational level.
However, exceptions can be found, such as the meeting or refusing of a customer’s late
enquiry of a buying product, which may have long-term implications but is still subject
to the shipment planning, process scheduling, and even the execution of the schedule.
The decisions made in the different steps discussed above are influenced by strategic issues,
such as guidelines and principles which are utilized for carrying out these different steps
22 Chapter 2 Problem Description and Analysis
given in Figure 2.3. Examples of such issues are to decide on whether to keep inventories
at the refinery or at the depots, to buy or produce components, what ships and ship
operator to utilized for shipments, what length of run-modes are aimed at and what
principles to use for deciding on recipes for blending end-products. Another example is
to decide on inventory levels to keep (on average) and what safety stock levels to aim for.
We can also find issues concerning the underlying production system. In relation to
the production planning, there are decisions at a strategic/tactical level, such as what
products we should be able to produce and at what capacities. There are also decisions
connected to the scheduling of processing units, which are at strategic/tactical level. An
example of this is to decide on proper storage capacities for storing components and
end-products.
At the strategic/tactical decision level some important decisions are made about invest
ments in production capacity, choice of crude oils, and which product groups to produce.
These decisions are supported to a large extent by the LP-models utilized at both the
refineries. Given prices of crude oils consumed and market prices of products, the LP-
model gives good indications of expected revenue. The LP-model deals with throughput
at an average level, and does not explicitly consider the changeovers between run-modes.
Decision options are evaluated using the LP-model given different scenarios, which in this
case means different production capacities, different crude oils or different product groups
which it is possible to produce. Different scenarios for the load capacities at the wharfs
can also be evaluated, since the throughput of the refinery is to a large extent proportional
to the load at the wharfs. The challenge in making these decisions is very much about
making good predictions for the future and in particular about expected market prices
(demand), and here tools are available which can be used for making forecast prognoses
of the demand. These types of tools are not considered in his thesis.
The simplification made in the LP-model when the effects of changeovers are not taken into
consideration do not limit to any greater extent the use of the LP-model for supporting
decisions concerning production capacities and the choice of crude oil. However, it is
difficult to estimate all the cost implications for starting to produce a new product (or
product group) by only using the LP-model. The production of a new product may appear
2.4 Problem Analysis 23
“too” favorable when the effect of the required changeovers is not considered.
Decisions concerning storage capacities are harder to make on the basis of the LP-model.
There is no clear relation between the throughput in terms of quantities produced, which
is modeled in the LP-model, and the storage capacities needed. The required storage
capacity depends on the lengths of the run-modes. If the production is frequently changed
between run-modes (short run-modes), small levels of the inventory capacities are needed
for the components and products since the demand can be met at every point in time.
However, if long run-modes are used, the storage capacity needs to be large, since each
time a product (s) is produced, the quantity produced needs to be large enough in order
to meet demands for a fairly long period of time (when other products are produced).
Consequently, the longer the run-modes are, the more storage capacity is needed. The
lengths of the run-modes, in turn, is connected to the frequency of changeovers between
run-modes. Thus, there is a trade-off between the negative effects of frequent changeovers
and the costs of being able to keep large inventory levels (inventory capacities). There is
also a trade-off between the negative effects of changeovers and the capital tied up in the
components. If long run-modes are utilized, not only does the inventory capacity need to
be high, but also the inventory levels on average, increase.
Questions of how to design the production facility are certainly decisions at strategic level,
and such decisions can only be given limited support by the LP-model. One example of
a design issue is the decision about which tanks should be directly connected to which
processing units. Decisions of this type cannot be supported by LP-modeling to any large
extent, since in this case also there are connections to the operation of the facility that
need to be considered.
Another topic important in the long time perspective is to scrutinize and possibly improve
the current principles for planning and scheduling. For example, is it appropriate to main
tain the current system of planning the shipments first and then schedule the processing
units or should one do it the other way around? If the process schedule is established be
fore the shipment plan based (partly) on the result of the optimization of LP-model, the
scheduling becomes more a pure capacitated dominant scheduling. Capacitated versus
material dominated scheduling is discussed further in section 3.2.2.
Another example of decisions concerning principles utilized for planning and scheduling,
is to investigate whether one could use the same set-ups for all the major production
24 Chapter 2 Problem Description and Analysis
units over a fairly long period of time. Few changeovers are then needed and these are
carried out at all the major production units concurrently. Then the refinery produces
the same set of components (and type of products) for a fairly long period of time. e.g.
half a month, and thereafter switches to another major set-up and produces another set
of products. This is often utilized in the chemical industry and is referred to as using
production campaigns, which is discussed in section 3.3.2. To some extent the “design”
(products to produce and at what quantities etc.) of such major set-ups (campaigns) can
be supported by the LP-model. However, for the decision of when and for how long a
production campaign should be used, less support can be obtained from the LP-model.
We believe that the possibility to successfully use production campaigns should not be
ruled out but it is fairly hard to achieve since a lot of flexibility is lost, e.g. changes
in the shipment plan cannot be met by re-scheduling. The shipment plan also needs to
be adapted more closely to the schedule, unless very large levels of inventories are kept.
Furthermore, to find such a major set-up (campaign) for the production of a limited set
of products with a balanced flow of products through the processing units, is difficult if a
high capacity utilization is desired.
The LP-model gives support for deciding on the aggregated quantities of the products to
produce (production planning). One may regard the output of the LP-model as a rough
production plan. The actual production capacity available at the refinery also depends
on the number of changeovers carried out, since product quantities are often lost due to
necessary down-grading which follows a changeover. However, these quantities are fairly
small in relation to the total production quantities of the end-products and do not need
to be considered explicitly for the purpose discussed here.
The product quantities obtained from the LP-model, are not directly utilized for deciding
on a shipment plan. Instead, forecasts of demand, including contracted sales and current
inventory levels at the refinery and at the depots are the basis for creating a shipment
plan. At both the refineries, the shipment plan is created in an iterative process together
with the operators of the tankers. For this planning step no decision tool of OR-type is
utilized, except for some spreadsheet models. One potential way to support this process is
to utilize an LP-model similar to the ones currently utilized at the refineries. This can be
achieved by including time periods (shorter than a month) and by including preferences in
the objective function of in which time period different customers want their products to
be delivered. Furthermore, the production capacity and shipping capacities of the wharfs
need to be specified for the different time periods.
The scheduling of the processing units aims primarily at meeting the planned deliveries
(the shipment plan). The different processing units are often scheduled in a sequential
order and often by different employees. Currently, the scheduling is carried out without
the support of any optimization tools. The need for supporting decision tools for shipment
planning and scheduling is accentuated by the changes which often occur in the planning
situation. For example, the shipment plan may change since it is based on demand
forecasts , and since tankers may be delayed. Whenever a change occurs re-scheduling
may need to be carried out.
Currently, it appears to be difficult for both Scanraff and Nynas to estimate whether one
particular schedule is better than another in terms of some relevant cost measurement
(if both meet the planned deliveries). It is also hard to give estimates for the cost of
altering the schedule in order to meet a customer’s late enquiry about a shipment. It
is desirable to be able to tell a customer what the price will be, for shipping a product
to the customer, as quickly as possible. The cost of meeting a customer’s (late) request
may largely depend on the current situation, since costly changeovers may be necessary
in order to meet this altered shipment plan.
For decisions concerning the execution of the schedule one issues is the utilization of tanks.
If the utilization of the tanks is modeled explicitly, the resulting model is likely to be very
complex. However, an optimization model of the process scheduling can support this task
to some extent. The scheduler can use this optimization model in an iterative manner by
forbidding some production combination of run-modes, and direct it towards some others
which are favorable for the utilization of the tanks.
Another issue in the execution of the schedule is the blending of the end-products before
delivery. Currently, optimization models in spreadsheets are utilized at both refineries.
These models minimize the total value of the products consumed according the their
specified “prices” when a particular product is blended. Currently, those prices are decided
based experience, such that products that tend to run short are given high prices. The
potential for improvements here lies in establishing appropriate prices for the components
consumed at the blending. Possibly, such prices can be retrieved from the current LP-
model or from a more refined version of the LP-model with shorter time steps. Another
potential for improvement lies in the planning and sequencing of the blending tasks. Then,
possibly less storage capacity will be needed and a smaller quantity of the products needs
to be downgraded.
26 Chapter 2 Problem Description and Analysis
Another issue of how to execute the schedule is the fine-tuning of the processing units. For
example, the refineries use models for achieving a high yield of one “desired” product (or
products) produced in the CDU. The scope of improvements here lies in proper integration
with the scheduling of the processes, since preferences for the different products may
change fairly frequently, when the capacities of the other processing units and the need
of changeovers are taken into account.
We believe an optimization model, driven by the shipment plan and accounting for the
effects of changeover and storage, can be utilized to support many of the decisions men
tioned in previous sections. It is clear that such an optimization model can never describe
all the complex issues of the scheduling task. For example, the pumping to and from all
the tanks is hard to incorporate in such an optimization model. However, it may deliver
good schedules for the scheduler to develop further. Then such a model can be used to:
Another potential positive effect of developing and utilizing such an optimization model,
is that there ought to be scope for learning for the organization. Even though the model
may not support all or any of the decisions mentioned above directly, it is likely to promote
discussion among practitioners of production planning, scheduling and decision makers
working with strategic issues. Often the benefits achieved from using optimization models
do not lie in the quality of the solution obtained but rather in the knowledge gained
from such tasks as defining the problem in terms of objective, decision variables, and
constraints. Sometimes just the gathering and the analysis of the input-data, such as cost
parameters, is very fruitful.
Chapter 3
In this chapter, we characterize the process industry in relation to production planning and
scheduling. There are several research areas to be found, concerning production planning
and scheduling in process industry. Literature can be found which deals with the process
industry in relation to discrete manufacturing. Issues of different production modes,
planning principles, and frameworks of production planning and scheduling, can also be
found. Another area of interest is the literature on batch (semi-continuous) processing,
relating both to a strategic perspective and to details of the scheduling. There is also
literature on lot-sizing which is closely related to the scheduling problem encountered.
Particularly in the case of refinery industry, literature can be found for various decision
problems associated with the management of a refinery, such as design, tank boat un
loading and loading scheduling, production planning and scheduling, blending, and yield
maximization. Potential solution methods for the scheduling problem will be treated in
Chapter 5.
The refinery industry can be seen as a part of the process industry. The process industry
in general and the refinery industry in particular have slightly different requirements on
production planning and scheduling than fabrication and assembly industries. Often the
terms ”discrete manufacturing” or ’’discrete production” are used as opposed to ’’process
production”. Taylor, Seward, and Bolander (1984) characterized the process industry in
relation to discrete manufacturing (fabrication and assembly industries) with following
points.
27
28 Chapter 3 Production Planning and Scheduling
For example, at a refinery, the variability of input raw material may come from the usage
of different crude oils and blends of crude oils. Sometimes a product can be produced
or blended using different intermediate products. This is the case for many end-products
produced at a refinery. For example, when blending gasoline products, a high quality
component can often replace a low quality component in the blend. Often raw materials
and intermediate products can be sold or bought at market prices in the process industry.
These market prices may fluctuate considerably and depend on current and expected
future supply and demand. In most cases, the supply cannot be easily adjusted to meet the
fluctuations in demand due to the extensive investments required for obtaining increased
production capacity. Depending on the market prices of the intermediate products, a
choice has to be made on whether the intermediate products should be sold (or bought)
or processed further. In order to produce a product, other products, so called co-products,
may also be obtained. Co-products can be found in industries, such as food, timber, and
refineries. In the food industry, the shelf life of the products must also be accounted for
when the production is planned and scheduled.
It is believed that the process industry and the chemical industry in particular, has more
complex connections between the processes than has the discrete manufacturing industry.
In a process industry, it is not unusual that a processing unit may feed another (without
buffering storage capacity in between) or require common resources. For example, in the
chemical processing industry, one production process may produce a component or energy
which “instantaneously” is consumed in another unit. However, in the process industry
there are likely to be fewer intermediate products (components) compared to discrete
manufacturing, at least if we compare it with the assembly industry.
Another characteristic found in the process industry (at least the chemical and refinery
industry) is the importance of storage capacities. Indeed, if no possible capacity can be
found for storing the produced components or products, the production needs to be halted.
In fabrication and assembly industries, very often the storage capacity of a component is
not limiting and is therefore not accounted for in the planning process. (Low inventory
levels are aimed for anyway, due to other reasons, such as a desire to reduce tied capital).
Different types of production modes or different operating strategies are utilized in the
process industry. The two main types of production modes are continuous and batch
production (Reklaitis, 1996b). In the continuous operation mode the same products (at
constant yields) are always produced and they flow through the facility along the same
route, at least over a relatively long period of time. In such cases, scheduling is not an
issue. Sometimes the term used is semi-continuous batch mode production is used, which
appears to denote batch production in flow-shop like environment, often without natural
batch sizes and storage buffers.
3.2 Production Planning and Scheduling in General 29
When using batch production modes or the semi-continuous mode, a particular process
ing unit produces different products at different points in time. Batch or semi-continuous
processing is suitable when the demand is not high enough to advocate a dedicated pro
duction facility for a product or for a range of similar products. This is the case when
the cost of the required production facility is high in relation to the value of the products
produced. Batch or semi-continuous processing can then be used when the production fa
cility is large in order to obtain economies of scale, but the production of a single product
cannot on its own make use of the facility. Batch processing has become more prevalent
and is no longer a temporary mode of production awaiting for increased demand and
the building of new dedicated facility (Reklaitis, 1996b). Unfortunately, batch processing
normally incurs negative effects due to changeovers between the production of different
products.
In batch production plants, where different products are produced from time to time in
the processing units, production may occur in the multi-product or multipurpose mode.
According to Papageorgiou and Pantelides (1996a) the former implies that all products
produced follow the same route (analogous to the flow-shop in discrete manufacturing),
whereas in the multipurpose mode, the products may take different routes (analogous to
job-shop in discrete manufacturing). Reklaitis (1991) describes the multi-product oper
ating strategy as a strategy of producing a single product in campaigns.
It has seen at Nynas and Scanraff that the production is changed now and then between
(here) so called run-modes, which imply a batch production. The products follow differ
ent routes, but a particular end-product must have followed a specific route, except for
the degree of freedom which exists in blending. Additionally, at the refineries studied,
products may be produced at different yields depending on where cuts are set in the
distillation. Consequently, the refineries studied do almost (but not entirely) operate in
multi-product mode.
The literature within the field of production planning and scheduling is vast and disparate.
In particular, the nomenclature used can be rather confusing, since different terms may
refer to the same or a very similar issues. The choice of term rather appears to be
decided by the area of industry or area of academia considered rather than by the actual
underlying decision problem.
When defining scheduling, as above, the objective is to finish the tasks in a way which
meets a specified objective with the available processors and resources. Consequently, this
view is suitable when a task and a product has a close relationship, for example when the
performing of a particular task means the finishing of 10 products of type A. In so called
job-shop and flow-shop scheduling, this is the common view of scheduling. However, in
refinery industries a certain product may be produced to a certain quantity using different
tasks which produces that product at different yields. That means that tasks often are
optional and cannot be used to directly define when a product should be produced to a
requested quantity.
Scheduling, as defined in this thesis, is to make a schedule or a plan that specifies what
components and end-products to produce and what resources to utilize at a particular
point in time. The production plan, in contrast to the schedule, deals with the aggregated
production during a specific time period and not the timing of producing the different
components and products. In this thesis, the detailed schedule, such as deciding exact
quantities and what pipes to utilize, is referred to as execution of the schedule. The
schedule at the refineries, is about deciding what run-modes to use at a particular point
in time in the processing units. A run-mode defines which product(s) should be produced
and which product(s) should be consumed and at what quantities. Ballintijn (1993) uses
the terms “operational mode” or just “mode” which led to the usage of run-mode in this
thesis.
There are also other related terms to production planning and scheduling: master pro
duction scheduling (common in “management literature” for discrete manufacturing), and
lot-sizing (common in “optimization literature”). Master production scheduling is a step
in which the production plan is disaggregated into smaller chunks of specific products
and into shorter time periods (Vollmann et. al., 1992). A master production schedule, as
described by Vollmann et al. (1992), only includes the end-products or product groups
and the intermediate products are only indirectly considered by bills of material. Taylor
et al. (1984) give a view of master production scheduling in the process industry that
also includes the scheduling of process units and intermediate products.
Lot-sizing is used by Wolsey (1997) and others to denote problems of a similar nature to
the scheduling problem encountered. Lot-sizing refers to a decision problem where the
production units are dedicated to the production of a particular product during different
time periods (perhaps of variable length). The sum of production and storage costs
are minimized in lot-sizing problems. However, in the context of Material Requirements
Planning (MRP) system, the term lot-sizing may also refer to what rules are used to
determine the batch sizes, e.g. fixed lot-size and lot-for-lot as in Vollmann et al. (1992).
3.2 Production Planning and Scheduling in General 31
In this thesis, the word scheduling is preferred, since it implies that the timing and
sequencing are considered and not just the determination of batch sizes.
In discrete manufacturing there are different control principles for production planning
and scheduling, such as time-phased and rate-based control. In time-phased planning, the
schedule specifies when an intermediate or an end-product (or batch) has to be finished,
whereas in rate-based control, the rates of production for different end-products and inter
mediate products (via explosion) are specified. These principles for control may be utilized
concurrently in manufacturing systems at different levels of planning. Time-phased con
trol relates to MRP (Material Requirements Planning) of discrete manufacturing whereas
rate-based control relates to capacity dominant scheduling. These two control principles
above, are similar to the concepts of material dominant scheduling or processor dominant
scheduling, considered by Taylor and Bolander (1994) for process industry.
In the traditional discrete manufacturing industry, the material dominant scheduling is the
predominating method. When using MRP, approximated lead times and the consideration
of the product structure explosion, is used to create a schedule. The schedule is driven
by “need dates” of products, so called backward scheduling. Rough cut planning is used
to check planned production against available capacity. Re-scheduling may have to be
carried out. Little support is given to the sequencing of production in the important
bottleneck processes.
In capacity dominant scheduling, the production planning and scheduling task aims at
utilizing one or a few processors or resources as much as possible. Thus, capacity is
scheduled first and components (material) thereafter. This may imply that the sequence
of the production of different products is an issue, if sequence dependent changeover costs
are present. The schedule is then checked against raw material, other processors capacity,
storage capacity etc. If the original schedule is not feasible some juggling may be required
to obtain a feasible schedule.
According to Taylor et al. (1984), industries need to make a choice between capacity
or material dominant scheduling method. However, if one wants to find some sort of an
optimal schedule it is necessary to take both material and capacity into account simulta
neously.
32 Chapter 3 Production Planning and Scheduling
Some attempts have been made to design planning and scheduling tools which account
both for the timing of material and the capacity of production equipment. One way
is to use principles of shifting bottleneck and Theory of Constraints (TOC). The con
cept and software Optimized Production Technology (OPT), based on Eliyahu Goldratt’s
algorithm, uses the principles of TOC, see Vollmann et al. (1992) for a brief review.
A lot of the research referred to later in this chapter, explores the possibility using opti
mization models to cope with both material and resource constraints simultaneously. In
this way, sub-optimization is avoided.
In this section, we deal with some issues of production planning and scheduling in pro
cess industry. We describe existing “frameworks” or views of production planning and
scheduling, scheduling of batch processes, and ways to deal with uncertainty.
The concepts of production planning and scheduling in discrete manufacturing often can
not (without modification) be successfully used directly in process production environ
ments (Vollmann et. al., 1992). Some attempts have been made to develop frameworks
(from a managerial perspective) for the production planning and scheduling of process
flow industries. Taylor and Bolander (1994) give a description based on relatively well
accepted terms from discrete manufacturing, e.g. resource requirements planning, pro
duction planning, master production planning, material planning, and material control.
Another “framework” of hierarchical planning and scheduling steps is given by Hax and
Meal (1984). At the top level, a long time horizon and a high level of aggregation is
used, whereas at the bottom level, a short time horizon and disaggregated products are
considered. Their framework has four different levels: (1) assign products (and capacities)
to plants, (2) determine a seasonal stock accumulation plan, (3) create detailed schedules
for each product family, and (4) calculate individual (for each item) production quanti
ties. Reklaitis (1991) gives an overview of the work on process scheduling and research
challenges to be found, paying extra attention to batch processing. In his description, the
distinction between planning and scheduling are not emphasized, due to that there is a
high (desired) level of integration between them.
The normal principle of production planning and scheduling in the process industry is to
use capacity dominant planning (Taylor et. al., 1984). In process industries one, or a few
facilities, often tie up a large amount of the total capital. Therefore the planning and
scheduling of the whole production facility is subject to the maximum throughput of these
“expensive” facilities (maximum utilization). Reklaitis (1991) also makes a distinction
between resource and equipment dominance, where the resource dominance is the more
3.3 Production Planning and Scheduling in Process Industry 33
general case (e.g. including all sort of storage limitations) whereas in the case of equipment
dominance, only process equipment is considered. The consideration of resources before
material in the process industry is a result of the importance of achieving high utilization
of equipment. In the process industry a large portion of the capital is often tied in the
production facility.
Taylor et al. (1984) give some characteristics of production planning and scheduling in
the process industry compared to discrete manufacturing (the full list not include here).
• A great emphasis is often put on distribution planning and inter plant transporta
tion.
• Decisions of blending are made.
• A high degree of the products are made to stock.
• Material requirement plans are determined for key raw materials.
• Lot-sizes may be dictated by the production facility.
• Schedules often have short time intervals
It is also more common in the process industry that the changeover cost (or needed time)
vary considerably according to the products switched between, i.e. sequence dependent
changeover costs. For example, if a lighter product is to be produced after a darker
product, extensive cleaning might be required.
The production process in the chemical process industry is often very complex, as men
tioned in section 3.1. It may be hard to see the effects on the production of products at
one “end” of the facility have when the production is changed at the other “end”. This
means that it is very hard to adjust the production process to meet the “demand rate”
at every point in time. Because of the complexity of the production, a lot of effort is put
into designing a limited set of settings or configurations for the production facility that
are good (in some sense) at producing a specific set of products. In literature, this is
often referred to as “production campaigns”. Sometimes campaigns may include cyclical
changes of operation modes, e.g. see Papageorgiou and Pantelides (1996a). The definition
given by Taylor and Bolander (1994), states that a campaign is “a production run of a
family of products that share a major set-up.” The planning and scheduling task then
is to determine what campaign should be used at a particular point in time. According
to Papageorgiou and Pantelides (1996a), one prerequisite for an efficient use of campaign
production, is the availability of a relatively reliable long-term demand forecast. Papa
georgiou and Pantelides (1996a) give a review of campaign planning for multipurpose
production and investigate the issue further by using state-task-network representation
and an Mixed-Integer Linear Programming (MILP) formulation. Solution methods are
explored in an accompanying paper (Papageorgiou and Pantelides, 1996b).
34 Chapter 3 Production Planning and Scheduling
There is a lot of literature to be found concerns batch processing in the chemical industry,
see for example ” Batch Processing Systems Engineering” 1996, NATO ASI Series vol. 143
and Reklaitis (1991) in which the focus is laid on the production planning and scheduling
in the chemical industry in relation to other areas.
Rich and Prokopakis (1986) used MILP models on a batch scheduling problem in a multi
purpose chemical plant. According to Grossman, Quesada, Raman, and Voudouris (1996),
they were one of the first that used a major MILP in this area. Another example of an
early article on the (simpler) multi-product case in chemical plants is the one by Egli and
Rippin (1986). They designed a model and algorithm for the scheduling of batches, where
the exact number of batches is unknown during the planning horizon (batch-sizes were
fixed). They let the allocation of equipment to a particular task be fixed.
Often, the short term batch (fixed length) scheduling problem is formulated using discreti-
sized time intervals. However, some research has been carried out where time is modeled
as continuous. For example, Zentner and Reklaitis (1996) used interval analysis, which
let the problem scenario determine the length of the time intervals (referred to as using
continuous time representation). Pinto and Grossmann (1995) studied the batch schedul
ing problem using continuous time representation with an extended solution method in
Pinto and Grossmann (1996). Other examples of using continuous time representation
can be found in the articles of Fuchino, Muraki, and Hayakawa (1992) and Mockus and
Reklaitis (1996).
Kondili, Pantelides, and Sargent (1993) used an MILP-model for the modeling of batch
processing in the chemical industry for both multipurpose and multi-product produc
tion. They utilized the state-task network, introduced in Kondili, Pantelides, and Sar
gent (1988), which removes the ambiguity of recipe networks by introducing nodes for
both states (components and products) and tasks (the transfers from an input state to
an output state). Note that here, the meaning of a task is similar to the introduced
run-mode. They submerged what they called the sequencing and scheduling into a very
general formulation with time discretization (short term planning). In their formulation,
the number of batches to be produced was not predefined, and it was allowed to perform
a task on different processing units with different processing times. They considered such
things as sequence dependent changeovers and cleaning, frequency dependent cleaning,
and different ways of storing the products. Some solution method issues from Shah, Pan
telides, and Sargent (1993) were utilized. However, their general formulation resulted in
very large MILP-models even for moderate (small) problems, and which were thereby
troublesome to solve even with a state-of-the-art generic MILP purpose solver.
The state-task network allowed the simultaneous consideration of planning and schedul
ing (of campaigns and within a campaign) and triggered further work in the area of
campaign production. For example, Shah Pantelides (1991) gave an MILP formulation of
the simultaneous planning and campaign formulation problem. Shah Pantelides (1993)
gave a formulation to the problem for the planning within a campaign (cyclical opera
tion). The general formulation of the state-task network was utilized by Papageorgiou
3.3 Production Planning and Scheduling in Process Industry 35
and Pantelides (1996a), and Papageorgiou and Pantelides (1996b) to plan both the cam
paigns and detailed (cyclical) scheduling within a campaign. Kudva, Elkamel, Pekny, and
Reklaitis (1994) also utilized the state-task network in their development of a heuristic for
solving multi-product scheduling. They included consideration of storage limitations in
their model and required batch sizes of multiples of some predefined lengths. Dessouky,
Roberts, Dessouky, and Wilson (1996) expanded the work of Kondili et al. (1993) by in
corporating considerations of transfer time of products between processes in a non-linear
model (transfers do often not happen instantaneously).
Scheduling problems studied in the “chemical batch processing” literature often deal with
production that is limited to fixed batch sizes. Processes in the chemical industry are
often not really continuous. For example, in chemical processing, components often need
to be treated in a “tank” (reactor) during a specified time. Since no components may be
pumped to or from that tank during the specified time, the process is hardly continuous.
The capacity of such a tank is the natural size for a batch. At the refineries studied,
the length of a run-mode is more flexible and concepts of batch processing in chemical
industry may not fully describe the production at these refineries. The notation run-mode
appears to be a more appropriate notation of the production at the refineries. Another
difference is that in the chemical batch process industry there is often a high degree of
flexibility, i.e. the process units may be used to produce a large set of products and
the products may take different routes (multipurpose mode). The production planning
and scheduling is thereby even more complex in the chemical industry compared to the
refinery industry.
Another area of interest is production planning and scheduling in the automated manu
facturing industry, where start-ups and storage capacity and conveyor belts are important
issues. See, Crama (1997) for a survey of the subject.
Some work exists which relates to the integration of design, scheduling, and on-line tuning
of batch processes in an optimization framework. This was done by Crooks, Kuriyan, and
Macchietto (1992) who utilized already existing software tools from the three areas. The
integration of design and scheduling was also looked into by Voudouris and Grossmann
(1996) for multipurpose batch plants.
Another interesting area of research is the integration of model based optimization sup
plemented with simulation modeling for validation purpose. Reklaitis (1995) gives some
“guidelines” for the integration of MILP-modeling of scheduling and simulation, and
points out the potential for obtaining good schedules as a result of such integration.
theless, lot-sizing models and solution methods can and will be explored in this thesis for
optimizing the scheduling at a refinery. The research area of lot-sizing will be illuminated
and related to the scheduling at a refinery later in this thesis (section 5.3).
3.3.4 Uncertainty
There are elements of uncertainty associated with production in the process industry.
Uncertainty can be seen as a deviation from what was expected. Examples of sources of
uncertainty are: forecasts of expected demand, planned shipments, and planned available
production resources. Very often uncertainty is not planned for explicitly in production
planning and scheduling. Thus, it is assumed that every thing is known (current status,
exact times of shipments, resource availability etc.). However, it is common to cope with
the uncertainty by carry out appropriate re-planning and by creating schedules that are
known (by experience) to be robust. For example, one may always plan for having some
products in reserve (safety stock). Reklaitis (1996b) makes a distinction between using a
moving (rolling) time horizon and using a reactive scheduling strategy. He claims that a
moving horizon may cause large changes to the schedule in the near future which may cause
nervousness (a phenomenon which may be found in MRP-systems), since many “support
functions” have lead times. Reactive scheduling reduces such nervousness by only allowing
limited changes to the schedule and by allowing necessary (least cost) changes to plans
at higher levels.
Orcun, Altinel, and Hortacsu (1996) give an example of how the uncertainty explicitly
can be accounted for. They reformulated a general model for batch production into a
mixed integer non-linear programming model where the distributions of process times
are utilized. Another example, of how to cope with uncertainty is given by Terpstra,
de Bruijckere, and Verbruggen (1993) who use a “two-model representation”, i.e. an
integer model for the planning of batches and a (non-integer) Non-Linear Programming
(NLP) model for the optimization of the transformed integer model.
In this section we discuss what can be found in literature regarding production planning
and scheduling in refinery industry. The scheduling of operation modes in the refinery
industry has not been investigated to such a large extent as has been done in many
other areas (e.g. chemical processing), at least if the published literature is examined.
3.4 Production Planning and Scheduling in Refinery Industry 37
However, the (aggregated) production planning of often more than one production facility,
was optimized early in the history of mathematical programming using LP-models (Linear
Programming), claimed by Reklaitis (1996b) and Dewitt, Lasdon, Waren, Brenner, and
Melhem (1989). Murata (1989) illustrates the planning and scheduling steps in a refinery.
He “partitions” the planning and scheduling into three activities: long range facility
planning, middle range production planning, and short range production planning. (This
“partitioning” is not far from the description given by Taylor et al. (1984) of the process
industry.) The long range facility plan includes decisions about capacity investments.
The middle range production plan deals with the sales plan, yearly budget, and crude oil
buying decisions on a quarterly basis. The short range production plan includes plans for
crude charging, product delivery, and plant operations plan. The short range plan is then
transformed into a daily schedule for the operation of the facility.
A lot of effort has been devoted to the optimization of “settings” of the production
processes in order to obtain maximal leverage (Floudas, 1995). In such optimization
problems, the same operating conditions are kept throughout the whole planning horizon,
which is not applicable for the scheduling problem. Another well exploited problem is
to find an optimal design for the production facility, see for example Floudas (1995).
Also various linear and non-linear blending problems have been investigated: Crude oil
blending or pooling by Amos, Ronnqvist, and Gill (1997) and the gasoline blending by
Dewitt et al. (1989) with OMEGA. (Pooling occurs when the blending is performed with
intermediate pooling tanks.) The models used for blending, referred to above, do not
themselves incorporate consideration of the sequencing and timing of the blending tasks,
but can to some extent be resolved by user interaction and re-optimization. However,
the OMEGA was developed further to include a consideration of the scheduling of the
different blending tasks by Rigby, Lasdon, and Waren (1995). Lee, Pinto, Grossmann,
and Park (1996) gave a mixed-integer formulation of the crude oil unloading and blending
problem accounting for changeovers using a time discretization. They also incorporated
the feed management of the distillation tower (CDU). Shah (1996) studied the scheduling
problem for unloading crude oils from tank boats to tanks and the distribution from port
side to the feed tankers of the CDU. Successful optimization was reported for problems
of limited size.
Some work has also been done which relates more closely to the scheduling problem en
countered at the refineries studied. Earlier modeling and optimization of such problems
has been done by Milkiewicz (1983), who developed a very general model for process
industry, including consideration of quality indices, storage facilities, process facilities,
technological processes (run-modes). However, he ignored the changeover costs of chang
ing the set-up of the production facility. He used principals of decomposition into sub
problems as well as heuristics for finding good solution to the problem. Guran, Filip,
Donciulescu, and Orasanu (1985) looked at using states (inventory levels) and a control
sequence (how to process) in order to describe a scheduling problem in general chemical
process industry and in refinery industry. They used what they called hierarchical opti
mization together with a high level of user interaction to find good schedules. Ballintijn
(1993), at Shell, looked at a problem fairly similar to the scheduling problem encountered
at the refineries. He used an MILP model where the objective is to minimize the total
number of run-modes and the total number of changeovers. He used both heuristics and
38 Chapter 3 Production Planning and Scheduling
Some commercial “success stories” have been reported on the implementation of schedul
ing system. For example, Haverly Systems Inc (1997) implemented a scheduling system
at Conoco Inc (a refinery). The details of the specific optimization technique utilized is
not given. Hendon and Thiessen (1997) illuminates another interesting aspect of (short
term) scheduling at a refinery, by pointing out the potential for integrating Closed-Loop
Real-Time Optimization (CLRTO), for the process controls with a plant wide scheduling
system. This “concept” is claimed to add considerable value to the refinery. The paper
does not include any details of the actual optimization technique implemented.
There are many areas in the refinery industry where the challenges of becoming more
cost effective and of meeting the demand for new products, arise. Rippin (1996) writes
about the need for optimization tools in the batch processing industry to support deci
sion making. The decisions concern both design, planning and scheduling (and to some
extent also the integration). He concludes, “There is certainly scope for further interac
tion between industry and university to match modeling and optimization capabilities to
industrial requirements”. Also Grossmann and Biegler (1995) point out some interesting
areas of future research in line with the ones given by Rippin (1996), and emphasize the
development of solution methods and integration of models.
According to Hop, Langeveld, and Sijbrand (1989) refineries would benefit from a further
development of decision support systems. They conclude that systems integration is
one important issue. The integration of different levels of planning and scheduling is
also indicated by Reklaitis (1996a) as being one important area of research for batch
processing. He also claims that suitable models and solution methods are warranted in
many areas (one important area is scheduling) in chemical industry. Furthermore, he
states that the optimization tool must go beyond the general purpose solver and explore
problem structure and different re formulations of problems.
Chapter 4
The scheduling at Nynas is a fairly complex task, mainly due to the interaction with
both the shipment planning and the execution of the schedule (pumping and blending).
Simplifications are necessary in order to cope with the complexity of the problem. In this
section we give details of what issues we include in the formulated model.
39
40 Chapter 4 A Model for Scheduling at a Refinery
that less capital is tied. Including inventory costs also tends to favor schedules which
require less inventory capacity. Of course, it is the relationship between start-up costs
and inventory costs that delivers the optimal schedule.
In section 2.4 it was indicated that the shipment plan is the base for the scheduling of
the processing units. In the model, we regard the shipment plan as fixed. This does not
mean that we ignore the possibility of interaction between the shipment planning and the
scheduling of the process units. We may very well use information from the optimization
of the scheduling problem in order to make suitable modifications to the shipment plan,
which then in turn influences the schedule. Note that the shipment plan (the demand)
also may include shipments to the refinery of components and crude oil.
The model does not take into consideration all products and product variants produced
at the refinery, but it does incorporate base products, that is to say products that are
shipped directly or used as components for blending into actual products delivered. This is
a reasonable simplification since there is often a defined relationship between the quantity
of the end-product shipped and the quantities of the component (base products) needed
for blending the end-product. Furthermore, the model does not incorporate every consid
eration of the various limitations related to the tanks and to the network of pipes. Hence,
the scheduler may need to alter the suggested schedule in order to meet requirements and
objectives which are not taken into account in the model.
Some refinements of the model, such as consideration of blending and tank capacities, are
suggested later in this chapter. When such refinements are used, schedules which need
less modification before implementation are likely to be obtained.
Representation of Time
We have used a multi-period model for describing the scheduling. Such a model is obtained
by making the time discrete and by assuming every thing is constant during specified time
intervals. For the scheduling problem, discrete representation of time implies that run-
modes must be used in multiples of the length of a time period. However, this is a
simplification since at the refinery no explicit time periods exist and the production can
be changed at any point in time. We believe that using discrete time intervals makes the
problem easier to optimize. Furthermore, we have not being able to present a clear model
when using a entirely continuous time representation. If the simplification of using discrete
time intervals is too severe compared to using continuous time, it is always possible to
use shorter lengths of the time periods, thus allowing for a more accurate representation.
Often, the lengths of the time periods are equal during the whole time horizon (uniform
time discretization). However, one may use non-uniform time discretization without mak
ing any major changes to the model. Specifically, the first time periods of the planning
horizon can be shorter than the others. Consequently, the schedule representing the near
future is more accurate, compared to the schedule representing the production to occur
later. In practice when a rolling time horizon is used, only the part of the schedule rep
resenting the near future is implemented. Using a rolling time horizon implies that the
model is used to create new schedules with shorter time intervals than the actual planning
horizon.
4.1 Assumptions and Simplifications 41
There are more sophisticated ways of modeling non-uniform time discretization, see sec
tion 3.3.3. However, often it is assumed fixed batch sizes, which is not applicable to the
studied scheduling problem. In this work also, modifications to the model will be sug
gested and tested, which allow the usage run-modes of variable length, without changing
the basics of the model (see section 4.3.1).
Cost Components
The objective function of the model to be minimized, includes costs of changing run-
modes and costs of keeping inventories. A changeover (or a start-up) often causes a
downgrading of a product, hence production capacity (per time unit) of the product is
also reduced. In the model, the loss of production capacity is not modeled explicitly, but is
taken into consideration, at least to some extent, by slightly reducing the production yield
of the run-modes in the model. The extra quantity obtained during a start-up of such a
“downgraded product” is ignored. When a changeover is performed there is also a need
for extra manpower due to the required monitoring of the process and the possible actions
which might need to be taken. The scenarios consider start-up costs which represents the
negative effects of start-ups (changeovers) of a run-mode, such as necessary downgrading
of product. If production is temporarily stopped, then the following start-up (warm
up) of the process causes an extra long period of downgrading to occur, and in addition
extra energy is used during such a warm-up period. In the model, the negative effects of
warm-ups, are modeled by a cost of starting the stop run-mode (a run-mode without any
production), since we assume that the production will be started again at a later point in
time. Since we can only start complete run-modes, e.g. we cannot start half a run-mode
of production, the cost of performing a start-up is modeled as a fixed cost.
The costs of holding inventories are associated with the costs of tying capital (in the prod
ucts and in storage equipment), the costs of maintenance of equipment used for storing
products, and the costs of keeping the products warm. Since the scheduling primarily
effects the costs associated with the tied capital for the given inventory capacities, the
inventory costs of a particular product can be approximated fairly well as proportional to
the actual amount of the product kept in storage at a particular point in time. The earn
ings from the products produced are ignored in the model since the demand is given, which
42 Chapter 4 A Model for Scheduling at a Refinery
implies that earnings from the products are given and not dependent on the schedule.
Tank Capacities
We model storage capacities individually for each product and we do not consider the
tanks explicitly, since there are hundreds of them. The storage capacity is determined by
summing the storage capacities of those tanks normally used for the particular product.
The storage capacities of tanks that often store different products (multipurpose tanks),
are added to the inventory capacities of the individual products according to some suit
able principle used for distributing them. We believe that this estimation of the storage
capacity is adequate for most applications. However, a more refined modeling of storage
capacities may be required for obtaining good schedules or when evaluating different levels
of inventory capacities. One way to refine the model is discussed in section 4.3.3.
Variables:
xpt = Production of product p e P during time period t € T
zpt = Consumption of product p € P during time period 1ST
Ipt = Inventory level of product p € P at the end of time period t € T
1 if run-mode m € M is used in time period t e {0,T1}
0 otherwise
1 if run-mode m € M is started in time period t G T
0 otherwise
Parameters:
csmt = Start-up cost for run-mode m in time period t.
c& = Inventory cost for product p at time period t.
apm = Production yield of product p when operating run-mode m.
bvm = Consumption of product p when operating run-mode m.
dpt = Demand for product p in time period t.
I_pt = Lower limit on the inventory level for product p at time period t.
Ipt — Upper limit on the inventory level of product p at time period t.
4.2 Mathematical Formulation 43
Using the definitions of the variables and parameters above a Mixed Integer Linear Pro-
gramming model (MILP) can be formulated, according to
The objective function (4.1a) expresses the cost of storing all the products and the cost
of performing the necessary start-ups. Constraints (4.1b) and (4.1c) connect the usage of
a run-mode with the actual amount of a product produced or consumed. It is assumed,
without loss of generality, that apm > 0, bpm > 0. A run-mode may cause the production
and consumption of a set of products (one product or more) at different yields. Inventory
balance constraints (4. Id) ensure that the outgoing inventory level of a product corre
sponds to the sum of the incoming inventory level, the production, the consumption, and
the demand for products. Demand may be negative and in such a case represents a de
livery to the refinery. There are restrictions on the maximal and the minimal inventory
levels of a product allowed to be held, which are modeled with constraints (4.1e). Only
one run-mode can be used at a point in time for a particular processing unit q, which is
ensured with constraints (4.1f). Whenever there is a change in the used run-mode the
corresponding smt should be forced to one. This is achieved with constraint (4.1g).
The model allows the variable smt to take a value of one when the corresponding variable
ymt has a value of zero. However, when csmt is non-negative this will not happen for an
optimal solution to the SCH-problem. The requirement on smt to be in {0,1} can be
relaxed to only require non-negativity, with the same motivation as above.
There is an explicit relation between variable ymt and variable smt. There is also a relation
between the variable ymt, to all other variables. Once the run-modes are determined
for all time periods and processing units have been determined, all other variables and
the objective function can be calculated. This is further discussed in relation to the
implementation of the tabu search heuristic in section 5.6.2.
44 Chapter 4 A Model for Scheduling at a Refinery
In this section, some extensions and alternative formulations are given for the SCH-model.
These illustrate the flexibility of the model proposed, i.e by modifying the SCH-model a
lot of issues can be considered. Some consideration is given to how difficult it is to solve
these alternative optimization models. Computational tests for solving some of these
modified problems are given in Chapter 6, where the schedules obtained are compared to
the optimal schedule of the SCH-problem.
In the SCH-problem, we force the start-ups to occur at a particular point in time and
hence a run-mode can only be used in multiples of the length of a time period (assuming
uniform time discretization). Here we introduce a model which enables the changes of
run-modes to take place at any point in time. This is done by allowing a start-up to
be delayed up to one time period. However, we do not allow more than one run-mode
(and start-up) to be used in each time period for a particular processing unit. Some new
variables are needed for this model:
f+t = Extra usage of run-mode m in time period t € {0,.., (Tl — 1)}.
f~t = Reduced usage of run-mode m in time period t € T.
A positive value of variable f+t means that production with run-mode m is extended to
partly occur also in the next time period t + 1, where another run-mode m is started.
Consequently, the production is increased for the products produced with run-mode m
and reduced for the products produced with run-mode m.
4.3 Model Extensions 45
Using the same definitions of the variables and parameters as for the SCH-model, the
model, [SCH-frac] min]T ^ c^/pi + c™tSmt X] X X
t p€P t qeQ m£Mq
53 53 aPm(ymt fmt) — 0
'fcpt V p e P, t € T (4.2a)
q€Q m€Mq
~ E 53 + fm,t-1 — fmt) ~ 0
V pe P, teT (4.2b)
zpt
q€Q m€Mq
dp,t— 1 4" •Ept zpt dpi — Ipf V pe P, teT (4.2c)
Let us assume that production is increased with /+t-1 for a run-mode m in time period
t — 1 and the production is reduced equally in time period t for a run-mode m, which
is started in time period t. Then, the altered production and consumption due to these
changes are modeled with constraints (4.2a) and (4.2b), where the extra production is
assumed to be available at the end of the next time period (i.e. at t). We may only
let the production increase for a run-mode that is used for production in t — 1, which is
modeled by constraints (4.2g). Constraints (4.2h) ensure that we may only reduce (delay)
the production for such a run-mode m that has been started in time-period t. Finally
constraints (4.2i) ensure that the increase in production in time period t—1 equals the
reduction of the production in the next time period t. Consequently, constraints (4.2g)
to (4.2i) ensure that — fiht only may become greater than zero for such run-
modes m and m, that the production has changed between. Here, a set-up variable smt
may become one although no corresponding start-up occurs. This can be avoided by
including constraints smt < yn,t and smt < 1 — ym,t-\, into the SCH-frac model. However,
experiments have shown that the start-up variable smt does not become one unless a
actual start-up has occurred even though the suggested constraints are not included.
The model SCH-frac has both more variables and more constraints compared to the SCH-
model. Therefore, it is reasonable to expect that the solution time needed will increase.
The required time for solving an LP-relaxation is increased with a factor of between 4
and 10. Experiments have also shown that the same relation applies for the increase in
difficulty when using a Branch and Bound (B&B) solution approach. In section 6.2.1 the
46 Chapter 4 A Model for Scheduling at a Refinery
solutions obtained when using the SCH-frac model are compared to the solutions obtained
when using the SCH-model.
In the SCH-model, it is assumed that production can only occur at the capacity given
by the yield apm. This is enforced by constraints (4.1b) and (4.1c) together with binary
requirements on the variables ymt. However, at the Nynas refinery one may reduce the
production yield to approximately 50% compared to the maximal yield. It is also possible
to increase and reduce the yield of a run-mode without any greater negative implications
compared to changing the run-mode. In the SCH-model, reduced production can be
modeled by including run-modes with production and consumption at different levels,
but with the same relative yield of the products. This may lead to relatively many run-
modes and also implies that a start-up occurs when the production yield of products
already being produced, is reduced or increased.
VI
me M,teT
1
Vmt
In the SCH-model, the capacities of the tanks are not modeled explicitly, instead the
inventory capacities are specified for each product at an aggregated level. One possible
way of refining the SCH-model is to consider two types of inventory capacities. The first
type is the aggregated inventory capacities of such tanks that are normally used for storing
the product. This aggregated inventory capacity is here given by the variable Ipt. The
4.3 Model Extensions 47
second type is the inventory capacities of such tanks that can be used for storing a set of
products (multipurpose tanks). We need a new variable Ipt, which represents the quantity
of product p that is stored in multipurpose tanks (the second type). We can then replace
the constraints (4.1e) of the SCH-model with constraints,
Then we need to specify the capacities of multipurpose tanks. Let the set E be a set of
multipurpose tanks. Also let the set Pe be the set of such products p that can be stored
in the multipurpose tank(s) e £ E. For simplicity, we restrict each product p to belonging
only to a single Pe. Here we allow different products to be stored in the same set of
multipurpose tanks simultaneously. Let the capacity of multipurpose tank be given by
parameter /|6. We can then formulate the inventory capacity of multipurpose tanks with
constraints,
V e € E, t £ T . (4.8)
p€Pe
Utilizing the modified constraints (4.7) and the new constraints (4.8), a model with more
constraints and variables is obtained. No computational tests are carried out on this
formulation. However, the degree of difficulty for optimizing problems is supposed to
only increase marginally given this extension.
It may not be possible to use certain combinations of run-modes of the different processing
units in the same time period. For example, at Nynas, it is currently not possible to
produce a product in the CDU and feed HF or HT directly (in the same time period)
with that product. It is not even possible to do this using a single tank for buffering since
one can only either pump to or pump from a tank. In order to model this, restrictions on
what run-modes that can be used in the same time period may be created. No constraints
for this case are formulated and tested.
At Nynas production capacity is lost when changes between run-modes occur, since a
product(s) is downgraded. This can be looked upon as a required start-up time where no
production can occur, since the products obtained during the start-up can be ignored for
planning purpose (e.g. fuel products which are not planned for). In the SCH-model this
is considered to some extent by slightly reducing the yield of production (amp). The loss
of production capacity can be modeled explicitly by replacing the constraints (4.1b) and
(4.1c) of the SCH-model with the inequalities,
At Nynas the effect of a start-up may vary depending on the particular run-modes switched
between. The most important issue is to avoid switches between the production (in
HP and HT) of products with the largest differences in density. This can be modeled
by incurring extra cost for such unfavorable start-ups or by incurring reduction of the
production yield by using the same principles as are used in constraints (4.9). For example,
a binary variable s^#, which takes the value of one when ever a changeover from run
mode m to m occurs, can be introduced. No computational tests are carried out for either
of the cases, where reduced production capacity is obtained due to start-ups or due to
sequence dependent changeovers. These extensions probably cause the optimization to
become more difficult. How much more difficult it becomes is hard to estimate.
One source of uncertainty for the scheduling is when the tank boats actually arrive, i.e.
the actual dates of arrival may differ from the date planned for arrival. Causes for delays
and how these are dealt with were describe in Chapter 2. To recapitulate, the tankers
are often served on a first-come-first-served basis, where the arrivals may deviate slightly
from the date of shipment specified. A robust schedule may be regarded as a schedule
which ensures that the products are available a few time periods earlier than the expected
date of shipment. The schedule is also robust if one can deliver a few days later without
having to halt (re-schedule) the production due to the lack of inventory capacity.
The issue of robustness of the schedule against the early arrival of tankers can to some
extent be taken into consideration in the model by adding the constraints,
In the same way inequalities can be formulated for making sure that storage capacity is
available even though shipments are delayed. The constraints,
t-i
V p€R, <€{(! +R),..,^}, (4.11)
t=t-R
make sure that this is the case. Using constraints (4.10) and (4.11), we can almost
replace constraints (4.1e) of the SCH-model. However, this is not the case when demand
is negative, and hence we must be careful when the original constraints (4.1e) are removed.
Both the constraints (4.10) and (4.11) can be interpreted as a way of modifying the original
upper and lover limits on the inventory levels (Ipt and I_pt).
4.3 Model Extensions 49
Introducing constraints (4.10) and (4.11), makes it only marginally harder to solve the
LP-relaxations, i.e. approximately the same solution time was recorded for solving the
LP-relaxation. Using robust scheduling increases the difficulty of optimizing the problem
when a B&B solution approach is used. The effect of enforcing robust scheduling compared
to the SCH-model is considered in section 6.2.3.
4.3.6 Blending
Blending is an issue that is not explicitly considered in the SCH-model. The demands
for the end-products are transfered a priory, when applicable, to the demands for such
products considered explicitly in the model. However, sometimes there is some degree of
freedom when blending an end-product, that is to say one may utilize different components
at different ratios depending on the current availability of the components or depending
on the price relations.
Here we suggest a model formulation including decision of blending, given that the relative
proportion that can be used for blending a specific end-product (or another component)
can be expressed with linear combinations of the different recipes. Let there be a fictitious
blending unit with unlimited capacity. Describe each extreme blend recipe w € W with
the components utilized given by 6" and product obtained by a“ra. For example, the
product C can be blended by using 20% of product A and 80% of product B, which
constitutes a (extreme) recipe (wi). Another recipe (u>2) may be to use 50% of both
the product A and B. The values of the corresponding parameters then are, ac,Wl = 1,
ac,w2 = 1; and b\Wl = 0.2, = 0.5, buBw2 = 0.8, and buB u!2 = 0.5. A model with a
fictitious processing unit with unlimited blending capacity can be formulated by replacing
constraints (4.1b) and (4.1c) by the constraints,
where uwt > 0. Since no constraint of the type (4.If) is included for this fictitious process
ing unit, many recipes can be used concurrently. We have not implemented and tested
this formulation. However, it assumed that it will become only slightly more difficult to
solve a model with this extension for blending.
50 Chapter 4 A Model for Scheduling at a Refinery
Chapter 5
Solution Approaches
In this chapter some solution strategies are presented, that can be used for optimizing the
process scheduling problem (SCH) introduced in Chapter 4. We more closely study two
solution strategies, the use of valid inequalities in a Branch and Bound (B&B) solution
method and the use of a tabu search heuristic. Computational results are given for these
two solution strategies when used on data obtained from the Nynas refinery.
Besides B&B other solution strategies for MILP include cutting plane methods and decom
position methods. In a cutting plane method, an iterative process of adding inequalities
is used (further discussed in section 5.2.4). Decomposition is achieved by “splitting” the
problems into independently solvable sub-problems. The “splitting” is often achieved with
Lagrangean relaxation. The Lagrangean relaxation requires the optimization, and often
re-optimization, of a set of sub-problems together with a dual ascent method for finding
(near) optimal values of the Lagrangean multipliers. A heuristic for finding feasible solu
tions, is often applied. Often more than one of these principles for solution strategies is
utilized in order to optimize a MILP-problem. A B&B solution strategy is often utilized
at a top level to close the gap of the lower bound (LED) and the upper bound (UBD).
51
52 Chapter 5 Solution Approaches
There are also (general) heuristics which with some adaptations can be used to find
reasonably good solutions to many decision problems (including combinatorial decision
problems). Examples of such heuristics are: genetic algorithms, simulating annealing, and
tabu search. For some “simple” combinatorial problems, e.g. flow shop scheduling of a
small number of machines, good and sometimes optimal solutions can be found using some
defined rules for scheduling or dispatching. For the SCH-problem, no “simple” heuristic
is likely to be found, since it is even hard to find a feasible solution. This is confirmed by
schedulers at Nynas and Scanraff.
In this thesis, the potential of using valid inequalities in order to improve the performance
of the B&B solution strategy is investigated for the SCH-problem. A tabu search heuristic
is also implemented and tested.
In this section, a short presentation of the B&B solution strategy and the principles of
using valid inequalities is given. It is also illustrated how these strategies can be combined.
5.2.1 Notation
where X is the feasible set which may be defined by various linear constraints and integer
requirements on all or on some of the components of the decision vector x. The objective
function is given by the expression cTx for a given solution and, where c is a vector of
equal dimension to the dimension of the decision vector x. The optimal objective function
value is given by v* for an optimal solution x*. The feasible set obtained by relaxation
of the integer requirements on x, is denoted by XLP. and has the associated optimal
objective function value v*LP for an optimal solution x*LP.
The B&B solution strategy is only briefly described here, a more thorough description can
be found, for example in Nemhauser and Wolsey (1988). A B&B solution strategy can be
seen as a way of avoiding the full enumeration of all possible integer solutions by using
the principle of divide and conquer. For a 0/1-problem, the full enumeration contains
2" different solutions, where n is the number of binary variables. In B&B, (normally)
only a limited enumeration is performed and represented in a so called B&B-tree or a
search tree (see Figure 5.1). In the B&B solution approach, the idea is to “branch” over
5.2 Branch and Bound and Valid Inequalities 53
some inequalities in order to attain feasible solutions to the integer problem by using
a (integer) relaxed problem. For example, for the LP-relaxation of a 0/1 optimization
problem, branching over decision variable xJ} implies either that = 1 or that x} = 0
(illustrated in Figure 5.1).
In B&B solution strategies, LSD's are often calculated by using LP-relaxations at a node
of the B&B-tree. Alternative formulations of the same integer optimization problem may
give different values of v*LP, i.e. the gap (v~ — v*LP) may vary. This shows the importance
of proper model formulation.
The objective function value of any feasible solution to a problem is an upper bound
(UBD) to the optimal value, v*. The integer feasible solution of an optimization problem,
may be obtained from the LP-relaxation at a node of the B&B-tree when the optimal
solution happens to be an integer feasible solution. In a B&B implementation, a heuristic
for finding good integer solutions may be included.
The performance of the B&B solution strategy mainly depends on the strength of the
LP-relaxations and on its ability to find good integer solutions. The performance of the
B&B algorithm, also depends on the strategy employed for branching (which variable to
branch on) and on the search strategy, i.e the decision on which node to “investigate”
next.
Here we introduce some definitions needed when we consider valid inequalities in sub
sequent sections. A valid inequality is an inequality which does not violate any feasible
54 Chapter 5 Solution Approaches
solution of the problem under consideration (here (5.1) is considered). The expression
dim(X) denotes the affine dimension of the set X.
Definition 1 An inequality apx < b0 is called a valid inequality if apx < b0 for all
x € X, or equivalently, if max{a^x : x 6 X} < b0.
Definition 2 The convex hull of a set X, denoted by conv(X), is the set of all convex
combinations of points inX.
It is known that u* = min{cTx : conv(X)}, and that conv(X) can be described with a
finite number of inequalities, (Nemhauser and Wolsey, 1988). However, the number of
inequalities needed, may grow exponentially with the problem size.
In this section, we consider the issue of using valid inequalities in order to strengthen
the LP-relaxation of an integer problem. A stronger LP-relaxation, leads to a reduced
B&B-tree, and subsequently a faster B&B solution procedure.
Adding valid inequalities to the set LP-relaxation, results in a new feasible set XyP C
XLP. The corresponding optimal objective function value, v*LPy, is greater than or equal
to v*LP. If one could find all facet defining inequalities, then XyP becomes equal to
conv(X) and linear programming techniques can be used to solve the integer problem.
However, in practice this is often not achievable, since finding all these valid inequalities
is very troublesome, if at all possible. For many combinatorial optimization problems, all
facets are not even known (but can be generated in theory).
Instead of finding the valid inequalities defining the convex hull conv(X), it is often good
enough to find valid inequalities in an “interesting part” of the XLP, that is, to find
valid inequalities close to x*, which cuts off the solution x*LP. In such cases, the gap
(d* — v*LP V) can be reduced, and the B&B solution approach is provided with stronger
LBD’s and can then work more efficiently. It is reasonable to assume that the reduction
of the gap (v* — v*LP V) also effects the LBD’s in many nodes of the B&B-tree and not
just at the root node. However, if the set XyP is defined with a very large number of
inequalities, these may become a heavy burden in the B&B solution procedure. Hence, for
the performance of the B&B solution strategy, there is a trade-off between the number of
valid inequalities included and the potential increase of the LBD’s at the nodes.
5.3 Literature 55
Many families of valid inequalities which have the potential to improve v*LP, have been
identified for various lot-sizing problems. For some problems, families have been found
which are proven to be facet defining, i.e. they define conv(X). For other problems, it
is harder to estimate the potential for the valid inequalities to increase v*LP. It has been
seen that valid inequalities, that are not necessarily faces or facets of X, may still improve
v*LP and consequently significantly improve the efficiency of the B&B procedure (see for
example Constantino, 1996). In this thesis we develop and investigate valid inequalities
for the SCH-problem (see sections 5.4 and 5.5).
A cutting plan algorithm is a method of finding valid inequalities (cuts) in such an “inter
esting part” of the solution space as described above. Let a cut define a valid inequality
that excludes a fractional solution x*LPV. In cutting plane algorithms, the LP-relaxation
is normally solved repeatedly. Each time a new 'x*LPV is obtained, a new cut or a set of
cuts, are added to the LP-relaxation, which is re-optimized. Such cuts can be identified
within families of valid inequalities developed for a specific problem. Since these cuts are
often exponentially many, an important issue is to find them quickly. The “problem”
of identifying the cuts is often referred to as a separation problem. It can be seen, for
example in Constantino (1996), that the separation problem may be solved in polynomial
time, even though the number of inequalities investigated grow exponentially with the
problem size. In the separation problem, one may choose to only add the most violated
inequality, any set of violated inequalities, or just the first found violated inequality. In
this thesis, we use valid inequalities without using any cutting plane algorithms. However,
we employ some preprocessing in order to reduce the number of valid inequalities to be
utilized.
The generation of valid inequalities with a cutting plane algorithm is often utilized only
at the root node. However, the cuts generated are kept in the whole B&B-tree in order to
strengthen the LP-relaxations (see van Roy and Wolsey, 1987 for an early example of this
approach). This method is used in most of the literature referred to in this thesis, about
the utilization of valid inequalities for various lot-sizing problem. One may also generate
valid inequalities in each node of the B&B-tree, and this is referred to as using branch and
cut. In such cases, the valid inequalities generated are perhaps valid only in the subtrees
originating from the node at which they were generated. See Jringer, Reinelt, and Thienel
(1995) for an example of how a branch and cut algorithm can be implemented. A cutting
plane algorithm used at the root node may be used to generate valid inequalities also at
other nodes. In this thesis we add valid inequalities only at the root node and keep them
in all nodes of the B&B-tree.
5.3 Literature
Previous sections mentioned, some general methods for solving a MILP-problem (section
5.1) , and described how the B&B together with valid inequalities can be utilized (section
5.2) . This section presents decision problems related to the considered SCH-problem and
solution methods. The focus is here on optimizing solution methods based on the gener
ation of valid inequalities in B&B solution scheme. Heuristics for solving the scheduling
56 Chapter 5 Solution Approaches
The characteristic for a lot-sizing problem is that production occur in a set of discrete
time intervals. If production does occur, a fixed set-up cost is incurred. If a processor
(machine) is set-up for production of a particular product, that the machine was not set
up for in the previous time period, a start-up cost may be incurred. In most lot-sizing
problems inventory costs are considered. Hence, there is a trade-off between set-up costs,
start-up costs, and the costs of keeping inventories.
We can distinguish between the Uncapacitated Lot-Sizing (ULS) and the Capacitated
Lot-Sizing (CLS) problem. A special case of the CLS-problem is the Constant Capacity
Lot-Sizing (CCLS), where the available capacity of all time periods, during the whole
planning horizon are equal. There is also a version of the CLS-problem, where a lower
bound is imposed on the production if the processor is set-up for producing a particular
product. Lot-sizing problems also differ on whether start-ups are considered or not. If
start-ups are considered, capacity may also be affected by start-up times, and this may
limit the time available for production. In some lot-sizing problems more than one product
is considered, i.e. we have a multi-item lot-sizing problems. There are also some lot-sizing
models formulated for the case, where products may be produced and consumed at later
time periods. This is sometimes called multi-level lot-sizing or multi-stage problems.
Below we consider some of these lot-sizing problems and their solution methods.
where the variables are defined as in the SCH-problem and where K is a sufficiently large
constant. Here c\ denotes the set-up cost and not the start-up cost as in the SCH-model.
A proportional cost of production (pt) is included in the model. This basic version of a
lot-sizing model was solved with dynamic programming by Wagner and Whitin (1958).
For multi-item uncapacitated lot-sizing, two solution approaches are given by Pochet
and Wolsey (1995). They suggest and describe reformulation into various network flow
5.3 Literature 57
problems, and propose the use of valid inequalities on the original formulation to solve
the problem.
In order to obtain an Uncapacitated Lot-Sizing problem with Start-up cost (ULSS) addi
tional constraints,
are added to (5.2). Additionally, the start-up variable, st 6 {0/1}, is included in the
objective function with a corresponding cost coefficient. For the ULSS-problems, solution
procedures based on the generation of valid inequalities and dynamic programming are
also suggested, for example, see Magnanti and Vachani (1990) and van Hosel, Wagelmans,
and Wolsey (1994). In the latter paper, the convex hull of the single item ULSS-problem
is characterized.
The single item Capacitated Lot-Sizing problem (CLS) is obtained by replacing constraints
(5.2b) by the constraints
xt < Cm V t . (5.4)
For this problem, there are also solution procedures based on dynamic programming and
the generation of valid inequalities developed (see Pochet and Wolsey, 1995 and references
herein). Pochet and Wolsey (1991) studied valid inequalities for the CLS problem with
extensions to the multi-item case.
The multi-item case of the CLS-problem with Start-up costs (MCLSS), was studied by
Karmarkar and Schrage (1985). This problem can be formulated as
One set of constraints they relaxed was (5.5b), which gave a relaxation just as strong as
the LP-relaxation, due to the integrality property of the sub-problems. Another formu
lation and relaxation was suggested using a production variable z *, which denotes the
production of product p in time period i 6 {1,.., t} dedicated for consumption in period t.
58 Chapter 5 Solution Approaches
The new formulation included new inventory balance constraints, which replaced (5.5c),
according to
These constraints were relaxed and a dynamic programming method was applied. Com
pared to other relaxations mentioned in Karmarkar and Schrage (1985), these relaxations
appeared more fruitful, at least for small problem instances.
There are also valid inequalities and separation algorithms developed for the MCLSS-
problem (5.5), for example see Constantino (1995) and Constantino (1996). The papers
of Constantino show how valid inequalities can by utilized in a cutting plane algorithm
combined with a B&B solution strategy for solving problem instances of sizes up to 5 items
and 36 time periods. The cutting plane algorithm, when used at the root node, often closed
the gap between the MILP optimum and the LP-relaxation (v* — v*LPV), altogether. One
type of valid inequality utilized by Constantino (numbered 31 in Constantino, 1996) can
be formulated for a single product as
3 l
h-i > ~ 53 Vt + 5Z st> ^ f € {1,.., T - 1} , (5.7)
t=t i=j+1
where j, l € < l. The parameter k,; represents the minimum integer number of
production runs needed in periods j to /, if 7t_i = 0. The parameter %; is the minimum
stock required in time period t — 1, if kj( — 1 runs are performed. Constantino showed
that by proper calculation of and Kp. constraints (5.7) are valid inequalities of the
single product version of the MCLSS-problem (5.5) with constant capacity, i.e. Cpt = Cp.
Constantino (1996) used inequalities (5.7) in order to devise stronger valid inequalities.
He used the difference between two right hand sides of (5.7) for one jl and another j7,
where He then could sum the expression for these differences of such pairs of
belonging to a strictly increasing series of and thereby obtain valid inequalities. Since
constraints (5.7) are valid for the single item problem relaxation of (5.5) they are also
valid for the multi-item problem (5.5) and they can be formulated for each product. In
Constantino (1995), valid inequalities for the CLSS-problem (single-item) with upper and
lower bounds on production, are also developed. Constantino (1995) also studies valid
inequalities for the CLS with start-up times. Start-up times (f3pt) is introduced, for the
multi-item case by replacing constraints (5.5b) with
Capacitated multi-item lot-sizing problems with start-up costs and times have also been
studied by Vanderbeck (1998), who used B&B with valid inequalities generated at several
nodes of the B&B-tree. He also utilized column generation and dynamic programming
5.3 Literature 59
for solving the LP-relaxations of the B&B-tree. He solved problem instances of the size
up to 5 products and 48 time periods.
Magnanti and Vachani (1990) used valid inequalities and a BfcB solution strategy for
solving a variant of the MCLSS-problem, where an “all or nothing policy” was used. This
policy implies that constraints (5.5b) are formulated as equality constraints. Another
variant of the basic (CLS) was studied by Pochet and Wolsey (1993) where production
capacity is a multiple of a defined batch size, i.e yt is defined as a general integer variable.
Some work has been published on the multi-level lot-sizing problem, which means that
products (items) may be both consumed and produced. Afentakis and Gavish (1986)
used B&B combined with Lagrangean relaxation (subgradient optimization) on a multi
level uncapacitated lot-sizing problem with a general product structure. Pochet and
Wolsey (1991) suggested valid inequalities for different multi-level lot-sizing problems
(called multi-stage). They solved, often to optimality, lot-sizing problems with capacity
restrictions but without start-up costs of sizes of 15 components and 10 time intervals,
and sometimes even larger problems. They did not force the production in a processing
unit to only produce a single product. However, in some cases general budget constraints,
L, (5.9)
v
were imposed, where lpt represents the usage of resource Lt. The notation multi-stage or
multi-level, refer to the product structure and not to the structure of the process facility.
In the SCH-problem multiple products and start-up costs are considered. Production ca
pacities are also considered. This makes the SCH-problem similar to the MCLSS problem
(5.5). Furthermore, the SCH-problem is formulated with “an all or nothing policy”. In
addition, the products (or components) are both produced and consumed, which makes
it to a multi-level problem.
There are some issues that makes the SCH-problem different from the lot-sizing problems,
studied in this field of the literature. The SCH-problem is slightly more complex than
the multi-stage model, since we need to consider not just the product structure but also
the structure of the production facility, e.g. what different run-modes can be utilized
simultaneously. A set of budget constraints (5.9), for each time period t, cannot ensure
that a single run-mode is used in each processing unit, which is enforced in the SCH-
model by constraints (4.If). In the SCH-problem the usage of some run-modes implies a
production of more than one product. Multi-stage lot-sizing models allow the production
of different products simultaneously. However, the characteristic of the SCH-problem that
“forces” the production of one product to occur, due to the production of another product
is not considered in the multi-stage models. One issue that does not appear to have been
investigated at all in lot-sizing problems is upper limits on the inventory levels, which is
imposed by constraints (4.1e) in the SCH-model. It appears, that the these special issues
of the SCH-problem have not been studied before, at least not in relation to lot-sizing
problems and the generation of valid inequalities.
60 Chapter 5 Solution Approaches
This section introduces a number of valid inequalities for the SCH-problem. The idea
behind the inequalities is based on the observation that the inventory level of a given
product at any point in time must be between certain lower and upper limits. Further
more, by using the fact that we can use only an integer number of run-modes during
specified interval of time periods, we can construct valid inequalities.
The aim of introducing valid inequalities is to reduce the continuous feasible solution
set XLP, such that the corresponding optimal objective function value is strengthened,
i.e. v*LPV > v*LP. In the following, inequalities are introduced and proofs are given of
their validity. We first introduce valid inequalities restricting the values of the variables
ymt, which represent the production. We then introduce valid inequalities restricting the
values of the start-up variables sm(.
The valid inequalities introduced in this section are based on the fact that production can
only be performed with modes running for complete time periods, i.e. either production
occurs of mode m at period t at the yield apm or not at all (ymt 6 {0/1}). By studying the
derived upper and lower inventory levels of a product at a particular point in time, both
lower and upper bounds on production during a time interval prior to this point in time,
can be constructed. Consequently, upper and lower bounds on the number of run-modes
that can utilized for the production of a product can be established. We illustrate the
idea with the following simplified scenario.
(5.10)
holds for any i € T. The Left Hand Side (LHS) of (5.10) expresses the total produced
volume of product p from time period 1 to time period i. The Right-Hand Side (RHS) of
(5.10) expresses the total demand during the same time period plus the minimum required
inventory level at the end of period t minus the initial inventory level. If this value is
positive, it can be regarded as the potential shortage of product p, if no production occurs
during time periods t = 1, 2,(see Figure 5.2). Consequently, the RHS expresses the
minimum required production quantity of product p between time period 1 = 1 and t =t.
5.4 Valid Inequalities for the SCH-Problem 61
................................................ 'V
t y +ipt—ipo
^ ' Vmt > t=i (5.11)
t= 1
Then, taking into account that ymt £ {0,1}, it follows that the LHS of (5.11) has to be
an integer value, and noting that all terms of the RHS of (5.11) are constants, we can
reformulate (5.11) into the valid inequality,
i y, +ipt—ipo
y Vmt
> t=i (5.12)
t—1
which has a potential, due to the rounding, to increase the objective function value of the
LP-relaxation of the SCH-problem. We obtain one valid inequality for each i £ T and
each p £ P.
We now introduce the more general case where we consider the possibility of having
consumption of the product p. We also consider any sequence of consecutive time periods
of production, t = ti,.., <2, not only a sequence starting in time period 1. First we
introduce some notations. Let the solution set XSCH denote the set of feasible solutions
to the SCH-problem, i.e. XSCH = {(Ipt, xpt, zpt, ymt, smt) : (4.16) - (4.1*)}. Let z%tftf
be a known lower bound on the total consumption of product p during time periods
h
t = ti,.., <2, i.e. Zptftf < y,zph for all solutions in XSCH. In the same way, let Ip^-i
t=t\
be a known upper bound on the inventory level for product p at the end of time period
<i — 1, i.e. Ipfo-i > Ip,ti~i- for all solutions in XSCH. How these bounds can be calculated
62 Chapter 5 Solution Approaches
are presented later in this section. The set of run-modes producing product p is denoted
by Mp, i.e. Mp — {m e M : apm > 0}. We also define ap = max apm which represents
m€Mp
the maximum yield at which a product can be produced. Analogously, we define ap =
min apm, which is the minimum yield at which a product can be produced, if produced
m€Mp
at all.
<2
E +
dpt
t = tl
iph - Jp,h -1 + ' 'Pht2
,LBD
Proof: We start by summing constraints (4.Id) from t = U to t = t2 for the given product
p, obtaining
h t2 t2
H- ^ 1
t=t\
xpt ~
E',,-E
^ ^
t=ti t—ti
zpt ~ ^ ^ dpt-, ~ Ipt2 •
(5.13)
Using constraint (5.13), the lower bound constraint Ipt > I_pt (4.1e) can be expressed as
t2 t2
53 xpt
t=ti
~ 53dpt
t=ti
-p*2 tph-i+e Zpt ’ r (5.14)
t2 t2 t2
'y 1 ' apmymt A y ' dpt + Lpt2 — fp.il-1 + 5 1 Zpt ■ (5.15)
t=ti q£Q me.Mq t=ti t=ti
h h
El 5 apVmt P 53 5 1 5 1 apm,ymt (5.16)
t=t\ m€vMp t=t\ q€Q m€Mq
and by introducing Ip^Ei and zh™ the RHS of (5.15), is bounded according to
(5.18)
53 + 4% - tffi-1 + zPhh
53 53 ym* - (5.19)
t=ti meA/lp
The LHS of (5.19) has to be an integer value in any solution to the SCH-problem. For a
particular problem instance, the RHS of (5.19) is a constant. Consequently, the RHS of
(5.19) can be rounded-up to nearest integer, and Theorem 1 holds. ■
Let us now establish how values of the introduced bounds and used in (VI),
can be derived. We first consider the upper bound, on the inventory level. Define
a parameter npprod, which denotes the number of processing units q, that can produce
product p (typically n?prod =1).
An upper bound on the inventory level of product p £ P at the end of time period 11 — 1,
and hence at the beginning of time period tx E T, can be defined as
jUBD
1P,t1-1 = mm (5.20)
The logic behind the expression (5.20) is as follows. The inventory level of product
p at time period t, cannot exceed the storage capacity (Ipt), according to constraints
(4.1e). Further, it cannot exceed the inventory level obtained by using maximal production
during time periods 1 to ti — 1. The maximum production is the number of processing
units capable of producing the product (nprod) multiplied by the maximum yield (ap) and
the number of time periods production can occur. The corresponding inventory level is
obtained by adding the initial inventory level minus the demand up to that time period.
Potential consumption is ignored and we obtain a somewhat relaxed upper bound on Ipt.
53 zpt- A trivial lower bound is zero, due to the non-negativity requirement on the
t=t\
variables zpt. The idea of finding a bound zptftf > 0, is to calculate a lower bound on the
production using product p as input, and to use this level to derive a lower bound on the
consumption.
Let us consider the required production of product r, which is produced using product p
as input. The valid inequality (VI) for product r, using the assumption that Mr only
64 Chapter 5 Solution Approaches
contains one element (only one run-mode is producing product r), can be formulated as
(5.21)
t—t\
which indicates a lower bound on production of product r. Let us then relax the inequality
(5.21) by not considering consumption of product r, i.e. = 0. Multiplying both sides
by bpm and using (4.1c) we obtain
h
(5.22)
where the RHS is the lower bound on the consumption of product p. Hence, is the
maximum of this value and zero.
<2
It is possible to obtain stronger bounds on zpt for products which are not consumed
t=n
by a single run-mode. However, this is not considered in this thesis, since in the studied
scenarios each product was consumed by a unique run-mode. It is also possible to consider
consumption of product r in order to strengthen the bound. This is an issue to consider
when production occurs in a series of processing units (more than two units). The calcu
lations must then be started downstream, and the obtained lower bound of consumption
of a product is included as a positive term in the numerator of (5.22), when calculating
zptfh bn the consumption of the next product upstream.
So far, in this section we have developed lower bounds on production. Next, upper
bounds on production are introduced, i.e. we consider the maximum number of times
the run-modes can be used during a time interval from t = tx to t = t2. The derived
valid inequalities ensure that production during a time interval cannot exceed current
available storage capacity, adjusted with future demand and possible consumption. In
order to formulate these inequalities, we need a lower bound, IptBD, on the inventory
level of product p at the end of time period t, and we need an upper bound, Zptftf, on
consumption of product p between time period tx and t2-
(V2)
5.4 Valid Inequalities for the SCH-Problem 65
Proof: The proof essentially follows the proof of Theorem 1. Summing constraints (4.1d)
for product p for t = tx to t = t2, using (4.1b) the upper bound constraint Ipt < Ipt can
be expressed as
(5.23)
t=ii qeQ meMq
Then, by using the minimal production yield ap at which a product can be produced we
can obtain a lower bound of the LHS of (5.23). Furthermore, by using /^®£1 and zpt^,
we obtain
r _ jLBD I ,UBD
(5.24)
Ph 1p,h-l T zpt1t2 •
The upper bound on consumption of product p between time period tx and t2, zptftf-> can
be calculated by using the fact that we cannot consume more than by using a run-mode
with the maximal consumption of any run-mode, i.e. the run-mode which has the largest
value of the parameter bpm. Let the parameter n'p'ms denote the number of processing
units which may consume product p. Then, for tx,t2 € T, tx < t2, the upper bound can
be calculated as
The lower bound on the inventory level, x, at the beginning of time period L, can
be derived from the observation that inventory level may never be below the given lower
limit on the inventory level, i.e. Ipt > l_pt. Furthermore, the inventory level cannot be
below the initial inventory level, Ip0, minus the maximum consumption, adjusted with
the demand up to the time period considered (<i — 1). Therefore, the lower bound can be
calculated as
Theorem 3 Given tut2 G T, H < t2- For all p £ P and for all m 6 Mp, t/ie inequality
(V3)
Proof: Using (5.23) and its upper bound on the RHS in (5.24), we have
r _ tLBD , UBD
(5.27)
ph ipyti — l ~T" •
t—h q€.Q rn€.Mq
rLBD , UBD
p,ti-l "r ' (5.28)
Further, the division of the inequality (5.28) by apm results in the inequality that should
be proven. ■
In this section some valid inequalities are presented, which may constrain the feasible
values of the start-up variable smt for the LP-relaxation. These valid inequalities are
derived by considering the inventory level at a given future point in time. Then, one
might be able to show that a run-mode must start within a specific set of time periods,
otherwise the inventory level will be too low. Also, when considering a run-mode currently
in use, there will be a future point in time when there is no inventory capacity available
to store the product(s) produced. Hence, the run-mode cannot be used beyond such a
point in time and another run-mode must be started before or at that point in time.
For an illustration of the case, when a run-mode must start before a future point in time,
consider the following situation. Given the initial inventory level of a product, Ip0, and
given that no production of product p occur at time 0, then we know that the inventory
level of product p will be “too low” at time period f, if the sum of total demand during
periods between t = 1 and t = i plus the required minimum inventory level, /pt ! is greater
than the initial inventory level. This situation is expressed by the inequality
(5.29)
pt
A
---->
Time
jShortage f
(5.30)
t= 1 m£Mp m€Mp
where the potential consumption of product p is ignored. The RHS of (5.30) ensures that
we only enforce a start-up if a run-mode that produces product p was not used in time
period t = 0.
Let us now formulate a set of general inequalities based on the idea illustrated above.
Now, we allow for consumption of product p and we consider any time interval from fi to
<2- The definitions of 1 and remain the same as in the previous section.
(5.31)
the inequality
(V4)
t=ti m£Mp m£Mp
Proof: We prove the theorem by proving that there are no values of the start-up variables
smt that are feasible in the SCH-problem, and which can invalidate the inequality (V4),
68 Chapter 5 Solution Approaches
when (5.31) is satisfied. Due to the binary constraints on smt, the inequality (V4) can
only be invalidated if the following equations are satisfied:
ti
53 5 1 smt = 0 (5.32)
mEMp
53 Vmfy-i = 0 (5.33)
m€Mp
Let us assume that (V4) is invalidated. Then, by summing constraints (4.1g) for all
m G A4P and by using (5.32) we obtain
Note that, for a given problem instance (scenario), the conditions (5.31) can be checked
and calculated a priori.
For the special case where ti = 1, we can formulate the following corollary.
the inequality
t
^ ^ ^ Smt > 1 ~ ^ ^ UmO
(V5)
t= 1 mEMp mEMp
The valid inequality of the type (V5) is a subset of the valid inequality of the type (V4).
Next, we derive a new type of valid inequalities. If we continue to use the run-mode used
in time period t = 0, the inventory level of some product produced by that run-mode,
will exceed the available inventory capacity at some future point in time. Consequently,
another run-mode than the one initially used, must be started. The definition of
remains the same as in the previous section. Further let mqt, denote the run-mode, which
is utilized in time period t for processing unit q, i.e. raf = arg max{;yra(}, for given q and
m£Mq
t. Observe that is a parameter, while the values of m®, i ^ 0, are obtained by the
values of the variables ymt.
the inequality
i e
(V6)
t= 1
The LHS of (5.39) expresses the total production of product p, if the run-mode mq0 is
used during the whole considered time interval (from 1 to i). The RHS of (5.39) expresses
available storage capacity at time i, assuming that no production occurs during time
periods 1 to i.
Proof: By dividing (5.39) by apmji and using valid inequality (V3) we obtain
53 <4* + hi ~ ho + yUBD
'pit
t >
apml
> 53 (5.40)
i ~ > 0. (5.41)
t= 1
13 + 53 53 Vmt = t- (5.42)
t= 1 t=l m€Mq\m%
70 Chapter 5 Solution Approaches
Next, we extend the result of Corollary 5, where start-ups were forced to occur based
on scarcity of a product that initially was not produced. Here, we force a start-up of a
run-mode producing a product which was also initially produced. Let tx (= i in Corollary
5) denote the first period when condition (5.39) of Theorem 6 is satisfied. Then, the time
period ti — 1 represents a time period when the run-mode initially used at latest must be
stopped. We then know that we have to start a run-mode producing the product again
before the total demand and consumption exceed the quantity of the product that at most
was available at the beginning of time ti (according to Theorem 4). Using the previously
introduced definitions, the following theorem can be formulated.
Theorem 7 Given ti,t2 6 T, t1 <t2. Then for all p 6 P and for all q € Q, such that,
h
U • apml > 53dpt + Ipti — Ipa + zpu® (5.44a)
and
<2
\ ' j 1 T _i_ -y-kSD ^ tUBD (5.44b)
/ V (*Pt —pt2 Zpht2 ^ ^p,ii-l
t=ti
the inequality
E E a- > 1 (V7)
t=l m£A4p
is a valid inequality for XSCH.
Again, note that all the parameters of conditions (5.44a) and (5.44b) can be calculated a
priori for given input data.
If the RHS of (5.45) is equal to 0, i.e. the considered product is produced at time ti — 1,
two cases exist. Either the run-mode used at time t = ti — 1 was used also at time t = 0,
i.e. for a given q, ml = or another run-mode was used at t = 0, i.e. ra® ^ m®i_1.
For the first case we need to check if ml can have been used all the time from t = 0 to
t = <!. The condition (5.44a) ensures that (V6) holds, and hence imply that inequality
(5.46)
t= 1
is a valid inequality for XSCH. Then m® cannot have been used during all time periods
between t = 1 and t =t1. Consequently, since m® 6 Mp, the run-mode must have been
stopped and started again, which makes Theorem 7 valid for this case.
If ml ^ m®i_1 (for a given q), a start-up must have occurred, since (5.35) cannot hold for
m = mf j. The start-up must be of a mode producing the considered product p. and
Theorem 7 is valid also for this case, which concludes the proof. ■
In this section we present some tests of using the valid inequalities introduced in the
previous section (5.4), to solve the problem scenarios of the scheduling problem (SCH).
We first introduce a set of problem scenarios, which are based on real-life data from
Nynas. Thereafter, we report on computational results of adding the valid inequalities to
the integer relaxation (LP-relaxation) of the SCH-problem, since such tests give strong
indications on how efficient it will be to add them in a B&B solution procedure. Then we
present results of utilizing the introduced valid inequalities to solve the SCH-problem by
a B&B procedure.
Two basic scenarios, called the Middle-sized and the Large-sized problems, were created
for the SCH-problem. They represent the process scheduling at Nynas of the three pro
cessing units (illustrated in Figure 2.1, on page 7) during 31 time-periods (a month).
Data for the two scenarios were provided by Nynas AB. Although the data are realistic,
they do not represent a specific scheduling situation encountered at Nynas, but rather
an approximation of a typical scheduling situation. Some input data, such as available
storage capacity of a particular product, may not exactly mimic the real situation. Some
characteristics of the two scenarios are given in Table 5.1. In products given in the table,
crude oil, intermediate products (components), and end-products are considered. The
number of run-modes includes both “production modes” and “stop-modes” of all the
three processing units. A stop-mode is a run-mode with zero production and consump
tion. Table 5.1 also show the number of variables and constraints in the SCH-model. No
72 Chapter 5 Solution Approaches
integer requirements are specified for the variables smt, and hence, only the ymt variables
are required to be binary. In the number of constraints, the non-negativity requirements
on the variables are not included.
Problem size
Characteristics Middle-sized problem Large-sized problem
Products 13 23
Run-modes 14 23
Time periods 31 31
Binary variables 434 713
Continuous var. 1643 2852
Constraints 2139 3658
The two scenarios (Middle-sized and Large-sized) are fairly similar except for the problem
size. The cost of keeping inventories (cJpt), is based on the cost of tying capital in the
products plus some extra costs representing the fixed cost of keeping the storage capacities
(e.g. maintenance). The inventory holding cost of crude oil is set to zero, which causes
production to occur “as late as possible”. The start-up costs used in the scenarios, are
based on the lost value of products due to downgrading. It is assumed that the start-up
costs is equal for starting all the run-modes. Hence, costs are incurred for start-ups of both
“production-modes” and “stop-modes”. Thus, when stopping and starting a processing
unit, a cost is incurred which is two times as large as for the case of starting a production
mode. This mimic the extra costs which are associated with the start-up of a processing
unit which temporary has not been used for production. The aggregated demand roughly
equals the aggregated production capacity during the considered time horizon. On an
average, the initial inventories approximate to half the storage capacity. Requirements
on the minimum required inventory level (/pi), is for some products, higher for t = |T|,
than for other time periods. In an optimal solution to the Middle-sized problem the stop
mode is used in 11 time period out of 93 (^processing units • #time periods), in any
of the processing units, and 9 start-ups are performed. For the best found solution to
the Large-sized problem the number of time periods utilizing the stop-mode is 12 and 15
start-ups are performed. The share of the start-up costs in relation to the total cost is for
the Middle-sized problem 26% and 32% for the Large-sized problem.
In order to find out how difficult it is to optimize the SCH-problem with used a standard
B&B procedure. The result obtained after 8h of CPU-time is presented in Table 5.2. The
gap between UBD (upper bound) and LBD (lower bound) could not be closed.
5.5 Computational Tests of Solution Strategies 73
The optimal solution to the Middle-sized problem was obtained by using valid inequalities
in the B&B solution procedure (explained in section 5.5.3). We also tested to solve the
Large sized problem. The results, obtained after 8h CPU-time, are given in Table 5.3.
LP-relaxation 1565 - -
For the Large-sized problem the integer optimal solution is not known, but the optimal
solution is known to have an objective function value between 2208 and 2310. These values
have been obtained by using valid inequalities B&B, which has been obtained by using
B&B. The results given in Tables 5.2 and 5.3, indicate that a standard B&B procedure
does not perform very well on these problem scenarios. A large gap between LBD and
UBD remains, even though quite a lot of CPU-time is utilized. Experience and few tests
that were carried out indicate that only limited improvement of the performance, can be
expected from tuning the strategies of node selection and branching.
The purpose of the tests in this section is to study the effects on the optimal the objective
function value of the integer relaxation of the SCH-problem, when adding different sets
of valid inequalities. If the tested set of valid inequalities strengthen the LP-relaxation,
the set is likely to have a positive effect on the B&B procedure. In this section we do
not consider the increased time needed to solve each LP-relaxation of the B&B-tree as a
result of added valid inequalities. This is discussed in the next section.
The effects of the valid inequalities are first tested on the LP-relaxation of the Middle-
sized problem. The results are given in Table 5.4. Then tests were carried out for the
Large-sized problem, which are given in Table 5.5. In the left part of the tables (Inequality
74 Chapter 5 Solution Approaches
included), the objective function value of the LP-relaxations are given for the case when
the specified inequalities (in the leftmost column) only are included. In the right part of
the tables (Inequality excluded), results are given for the case when all types of inequalities,
except the specified, are included. The case when no inequality is includes, is given on
the first row of the tables, and the case when all inequalities are included, is given on the
second last row of Tables. The calculated gap, v*~piT'', is the relative gap between the
optimal objective function value of the LP-relaxation, with suggested inequalities added,
and the optimal integer solution of the SCH-problem (or when applicable the best found
solution). The objective function value of the optimal (or best found) integer solution is
given at the last row of the table.
Middle-sized problem
Inequality included Inequality excluded
LP-relaxation y*_y£'P
V* LP-relaxation V*
- 1349 23.1 % 1611 8.2 %
VI 1370 21.9 % 1601 8.7%
V2 1349 23.1 % 1611 8.2 %
V3 1349 23.1 % 1611 8.2 %
V4 1577 10.1 % 1574 10.3 %
V5 1566 10.7% 1611 8.2 %
V6 1368 22.0% 1611 8.2 %
V7 1387 20.9 % 1601 8.7 %
V1-V7 1611 8.2 % 1349 23.1 %
Optimum 1753
Table 5.4: Using valid inequalities on the Middle-sized problem
5.5 Computational Tests of Solution Strategies 75
Large-sized problem
Inequality included Inequality excluded
LP-relaxation V*
LP-relaxation V*
It is indicated by the results of Table 5.4 and 5.5, that the sets (VI), (V4), and (V7) of the
inequalities are the strongest. By using these three types of valid inequalities the same
optimal value of the LP-relaxation was obtained as including all valid inequalities. This
means that for both the Middle-sized and the Large-sized problem, the valid inequalities
(VI), (V4) and (V7) make the other tested inequalities redundant at the optimum of the
LP-relaxation. Tests were also carried out in order to analyze if any pair of these types
of valid inequalities could make the third type redundant. No such a pair could be found.
From the results presented in Tables 5.4 and 5.5, it can be seen, that the proposed valid
inequalities can considerably reduce the gap between the optimal objective function value
of SCH-problem and its LP-relaxation. Valid inequalities (VI), (V4), and (V7) are the
most efficient for the reduction of the gap. Inequalities of the type (V4) reduces the gap
the most. This is intuitively reasonable since the optimal solutions to the LP-relaxation
(without valid inequalities) often suggests the start-up of a fractional run-mode, e.g.
smt = 0.33, which is avoided with the valid inequality set (V4). Instead an optimal
solution with a complete star-up may be obtained when using the valid inequalities (V4).
The inequality set (V5), which is a special case of (V4), is almost as good as (V4) at
reducing the gap. This is reasonable since in inequalities (V5) the inventory level from
the previous time period (Ipo) is known, whereas we only have an upper bound on the
inventory levels for the other time periods which are considered in the valid inequalities
(V4).
The valid inequalities that are found to be redundant at the optimum of the LP-relaxation,
may have an effect on a slightly different problem scenario. For example, some products
may be given a negative inventory cost (c^) at the last time period, representing a value
of having a product in inventory. In such a case, tests have shown that the inequalities
76 Chapter 5 Solution Approaches
(V2) and (V3) may have a significant effect on the strength of the LP-relaxation.
Furthermore, such inequalities that have been found to be redundant at the optimal solu
tion of the LP-relaxation may still have an effect at a particular node of the BfcB-tree. For
example, upper bounds on the variable ymt, as given by (V2) and (V3), may strengthen the
lower bound of the LP-relaxation at a node in the B&B-tree, if the branching conditions
require the extensive usage of a particular run-mode.
Event hough the total inventory cost constitute the largest portion of the total cost (68%
to 74%) in an optimal solution, the start-up costs appear to have the largest impact on the
characteristics of the optimal solution obtained (see section 6.1.3 for an analysis on this
subject). A problem scenario with less start-up costs was created, where the start-up costs
is set to 25% of the original costs, i.e. cs^ew = 0.25 ■ cj,lt. Since this problem scenarios may
produce optimal solutions with different characteristics compared to previously analyzed
scenarios, we tested the effects of adding valid inequalities to the LP-relaxation also in this
case. The results of using all proposed valid inequalities for this scenario are given in Table
5.6. The result of using no valid inequality is presented in the right hand side column
of the table. The valid inequalities are strengthening the LP-relaxation considerably also
for this case. For this version of the Middle-sized problem, we cannot guarantee that the
best found solution is optimal. However, we know that the optimal solution cannot have
a better objective function value than 1403 (LED), which was obtained by using valid
inequalities in a B&B procedure.
Constantino (1996) tested some valid inequalities for a related problem to the SCH-
problem. He studied the Multi-item Capacitated Lot-Sizing problem with Start-up costs
(MCLSS). He suggested a few families of valid inequalities and presented associated sepa
ration algorithms. In this thesis we have tested the inequalities (5.7), introduced in section
5.3 on the SCH-problem. We wanted to find out if these could further strengthen the LP-
relaxation. The more “advanced” families of valid inequalities given in Constantino (1996)
could not be studied, since they are simply too many in order to be used without using a
cutting plane algorithm.
The SCH-problem and the MCLSS problem differs in a few important aspects. In the
SCH-problem, the quantity produced, xpt, must equal the production at full capacity of
the used run-mode ymt, expressed in (4.1b), whereas the MCLSS allows a smaller quantity
to be produced. In the SCH-problem, a product that is produced in one process can be
consumed in another process, which is not possible in the MCLSS. Inventory capacities
5.5 Computational Tests of Solution Strategies 77
are considered in the SCH but not in the MCLSS. Consequently, some modifications were
necessary to the formulas for calculating the parameters of the inequalities (5.7). Details
of these modifications are not given here. In Table 5.7, computational results are given
for the case where the (modified) inequalities (5.7), denoted C31, are included. Here we
only compare the results with inequalities, (VI), (V4), (V7).
Middle-sized problem
Valid included Valid excluded
LP-relaxation V*-y£P
V* LP-relaxation V*y£T>
v*
- 1349 23.1 % 1613 8.0 %
VI 1370 21.9 % 1608 8.3 %
V4 1577 10.1 % 1448 17.4%
V7 1387 20.9% 1591 9.3 %
C31 1396 20.4% 1611 8.1 %
VI, V4, V7 and C31 1613 8.0 % 1349 23.0 %
Optimum 1753
Table 5.7: Using valid inequalities, inclusive “C31”, on the Middle-sized problem
Using the inequality form Constantino, the objective function value was increased from
1611 to 1613. Due to the large number of inequalities of the type C31, solving the LP-
relaxation with all of them included is very time consuming. Therefore, the inequalities
C31 cannot be regarded as particularly useful in this approach.
In this section we present results of using the valid inequalities introduced in section 5.4
in a B&B solution procedure. Computational tests are given both for the Middle-sized
and for the Large-sized problem. We test the suggested valid inequalities without using a
cutting plane algorithm. That means that we probably introduce a lot of valid inequalities,
which are redundant at the LP optimum. There is a trade-off of to consider when adding
valid inequalities to the model. Adding valid inequalities implies potentially a stronger
LP-relaxation and subsequently less nodes of the B&B-tree to evaluate. However, adding
valid inequalities implies that more CPU-time is needed in order to evaluate each node of
the B&B-tree.
We chose to only utilize inequalities VI and V5, since they have seen to be fairly efficient
at strengthening the LP-relaxation. Also only a limited increase in CPU-time is reported
for investigating a node of the B&B-tree when including these two types of inequalities
(see later analyses in Table 5.8 and 5.9). Surely, it may be more efficient to use other
combinations of the types of valid inequalities suggested. However, since testing different
78 Chapter 5 Solution Approaches
In order to reduce the number of inequalities generated from each type of valid inequalities,
inequalities that are known to be redundant are ignored. For example, if the right hand
t=4
side of (V1) is equal to 3, for 11 = 1, t2 = 4, and for a run-mode m, that is ymt > 3,
t— 1
then the same inequality for tx = 1 and t2 = 5 is redundant if the RHS remains the same.
Therefore, a valid inequalities of the type (VI) needs only to be considered when RHS
increases when f2 is increased. Similar reasoning for other valid inequalities can reduce
the number of these, as well. This type of checking for redundancy was implemented in
the modeling language (AMPL). The time spent on generating the valid inequalities (and
checking for redundancy) is only a few seconds or less for both the Middle-sized and the
Large-sized problem.
We study the characteristics of the model, associated with the CPU-time for investigating
a node of the BfcB-tree, for the cases where no valid inequality is included, where (VI)
and (V5) are included, and when all valid inequalities are included (V1-V7). The result of
this study is given in Table 5.8 and Table 5.9. The number of constrains (#constraints )
are the number of constraints obtained after the checking for redundancy described above
has been carried out and after the preprocessing in the modeling language AMPL has
been utilized. Upper and lower bound on the variables are not included in this number.
The number of iterations is the number of simplex iterations (phase I and II) required to
solve the LP-relaxation. Also the average seconds needed for investigating a node in the
B&B tree is given in the last column of the tables.
Table 5.8: Characteristic of the obtained model for the Middle-sized problem
The results show that the time spent in each node of the B&B-tree increases when in
cluding valid inequalities (VI) and (V5), but not particular much at least not for the
Middle-sized problem. However, to include all types of the suggested valid inequalities
increases the CPU-time spent in node of the B&B-tree a lot.
5.5 Computational Tests of Solution Strategies 79
Table 5.9: Characteristic of the obtained model for the Large-sized problem
In the following, we compare the results of a B&B solution strategy where valid inequalities
are included with a B&B solution strategy with no valid inequalities included. In these
tests, (VI) and (V5) are the only valid inequalities considered. The B&B procedure is
terminated after 8h of CPU-time (or earlier). Table 5.10 presents the results for the
Middle-sized problem. The notation V*, is used to denote the objective function value
of the best found solution in any of the attempts to solve the particular scenario. The
objective function value of the best found solution for the LP relaxation is denoted V£v.
The gap between lower and upper bound (UBD-LBD) is closed after three hours of CPU
time for the Middle-sized problem using valid inequalities in a B&B solution strategy.
The optimal solution was found after approximately two hours of CPU-time.
Middle-sized problem
Standard VI, V5
LBD UBD LBD UBD
LP-relaxation 1349 - 1574 -
V*-Vcv
V* 23% 10%
Table 5.10: Using valid inequalities in a B&B strategy on the Middle-sized problem.
We also test using the B&B procedure together with valid inequalities on the variant of
the Middle-sized problem, in which the start-up costs are reduced to 25% of the original
costs. The results are given in Table 5.11. It is evident that this modified problem is
hard to solve and the that gap between UBD and LBD could not be closed within 8 hours
of computation time. The best found solution with objective function value of 1432 was
found after 19 minutes of CPU-time.
80 Chapter 5 Solution Approaches
Table 5.11: Using valid inequalities in a BfcB strategy on the middle-sized problem with
reduced start-up costs, V* = 1423
The effect of using valid inequalities in a B&B solution method is also tested on the
Large-sized problem. The computational results are given in Table 5.12.
Large-sized problem
Standard VI, V5
LBD UBD LBD UBD
LP-relaxation 1565 - 1996 -
y»y£V
V 32% 14%
Table 5.12: Using valid inequalities in a BfcB strategy on the Large-sized problem, V* =
2310
The computational results given in this section indicate that using some of the introduced
valid inequalities significantly improve the performance of the BfcB solution strategy.
We had to make a trade-off between the potential improvement of the strength of LP-
relaxations by adding valid inequalities, and the fast investigation of the LP-relaxations
at the nodes of the B&B-tree. Such a trade-off, is not as important when using a cutting
a plane algorithm, since then only “strong” inequalities are added, either at the root node
or in the BfcB nodes. However, a cutting plane algorithm requires some extra CPU-time
to be used for finding cuts to add.
5.6 A Tabu Search Heuristic 81
In this section, we explore the possibility of using a tabu search heuristic for finding good
(feasible) solutions of the SCH-problem. After giving a short general description of the
tabu search heuristic, we present a detailed description of a heuristic for the SCH-model.
We have tested the developed tabu search heuristic on some versions of the Middle-sized
problem and on the Large-sized problem. We also discuss the use of a tabu search heuristic
in combination with a branch and bound solution approach.
The tabu search can essentially be regarded as a refined neighborhood (descent) search
heuristic, in which the definition of the neighborhood may vary and in which deterioration
of the objective function value is allowed. Some moves to neighborhood solutions are
forbidden, since some moves (or solutions) are tabu. The origin of tabu search dates
back to the early years of the 1970’s. The tabu search of the form we know today was
introduced in the late 1980’s. For example, see Glover (1989) and Glover (1990) for a
general description of the tabu search. Tabu search has been applied, often with success, to
various decision problems, and reports are presented in the volume Annals of Operations
Research (41) 1993, the application survey in Glover and Laguna (1993), and the volume
European Journal of Operational Research (106), 1998. There exist applications where
tabu search heuristics are used on various scheduling problems, but non has been found
which deals with a lot-sizing problem of the type studied in this thesis.
where x € Rn and where the set X here is assumed to impose x to be binary, i.e.
X C {x : x £ {0/1}}. The objective function value is defined by a function c(x), which
maps the decision vector r to a scalar value.
Let the solution obtained at iteration k in the tabu search heuristic be denoted xk, which
not necessarily has to be a feasible solution. Then a solution xk+1 is to be selected
from a set of solutions xkcand £ Ncani{xk, Sk), where Sk denotes the current state of the
heuristic or the recent history (explained later). The set Ncand{xk, Sk) is a subset to the
neighborhood set N(xk). Normally all solutions of Aanw(z*,5*) are evaluated according
to a modified objective function Sk), which typically is based on c($^nd), but
may also incorporate a penalty if xkamd is not feasible. It is also possible to allow the state
Sk to affect cm(xk, Sk). For example, such moves or solutions, that are different from the
“typical solution” investigated so far, may be given a more favorable modified objective
value c™(r*, Sk).
The basic steps of a tabu search heuristic are given below, where K is the maximum
number of iterations and Xbest denotes the best found solution so far.
82 Chapter 5 Solution Approaches
1. Initialization
• Set k = 0.
• Select a start solution xk.
• Initialize the state Sk.
• Calculate c™(z\ Sk) and initialize xbest.
3. Update
The set Ncan<i{xk, Sk) is created through a series of steps. First an initial neighborhood
N(xk) is defined “around” the current solution xk. For example, for the problem (5.47),
the neighborhood can be defined by all solutions where exactly one component of
takes the complement value compared to the solution xk. One may then reduce the set
of N(xk) to only include feasible solutions, i.e. N(xk) C X. In such a case, the set N(xk)
may end up to being empty. One may also relax some constraints of the set X and solve
the relaxed problem, with a suitable penalty for infeasible solutions.
The solution set N(xk) can be reduced into the solution set Ncand(xk, Sk), by using a tabu
list (short term memory). For example, when the neighborhood is defined by complements
to the current solution (as mentioned above) the tabu list may keep track of the recent
changes in xk (moves). If the value of a component xk is changed at iteration k, e.g.
xk = 0 and xk+l = 1, the candidate solutions in NCJlnd(:>:\ S') for i — {&,.., k + L} are
not allowed to include a solution where xk = 0 according to the tabu. Consequently,
a solution equal to xk will not reappear in the following L number of iterations. The
size of L is called the length of the tabu list and may vary during the progress of the
heuristic. The tabu list can be implemented by storing the indices of the variables that
have changed their values in a queue with length L. The content of the tabu list is a
part of the state Sk, which can be seen as an accumulated history of recent states. The
state Sk may also contain information about what type of moves that have been accepted
and the average objective function values of the most recent solutions etc. Even though
the heuristic returns to exactly the same solution (after L or more iteration) it still may
not be a question of cycling, since the state may vary between each time the solution is
revisited. Hence, the heuristic may take another “path” from that solution the second
time and that particular solution will perhaps never reappear.
5.6 A Tabu Search Heuristic 83
There are many issues of how to refine the tabu search heuristic. One issue is to choose a
suitable neighborhood N(xk) associated with a solution xk. Naturally, the neighborhood
must be defined, such that all feasible solutions (which may be good) can be reached
in a finite number of iterations. It is possible to let the state Sk determine what sub
set of the neighborhood to consider when determine Nalnd{xk, Sk). This allows for the
implementation of intensification and diversification strategies, where for example, the
search is concentrated around the current solution xk (or around x^t) or on solutions
“far from” xk. Diversification and intensification can also be achieved by modifying the
objective function cm{xkand, Sk) in order to prioritize some solutions in Namd{xk, Sk) before
others. The length of the tabu list may also affect the diversification and intensification.
A very short tabu list will intensify the search around the current solution and vice versa.
We may also utilize an aspiration criteria which overrides such solutions (moves) that are
considered tabu under some conditions, e.g. if a “tabu move” gives a solution which is
better than the best found solution so far (x^t), that move is accepted.
We first transform the SCH-problem into the form given for problem (5.47). This is
achieved by letting the variables smt G {0,1}, Vm, t, be the sole decision variables. If a
certain run-mode m G Mq of a processing unit q is utilized at time t = b (ymtl = 1),
then we know that run-mode m will be used until a new start-up is performed of that
processing unit at time t = t2 > ti, i.e. ymt = 1, V t G — 1}. Consequently, it is
possible to translate a solution expressed in the variables smt into the variables ymt and
vice versa.
Let the relaxed SCH-problem denote the SCH-problem where the inventory level con
straints (4.1e) and the non-negativity constraints of the variable Ipt (4.1h) are relaxed.
Also, let the decision vector x represent the values of the variables smt, with the associated
values of the variables ymt which satisfy constraints (4.If) (exactly one run-mode must be
used in each processing unit). Then all the constraints of the relaxed SCH-problem, can
be satisfied by determining the corresponding values of xpt and zpt. (where xpt, zpt > 0,
since apm, bpm > 0). Solutions which do not satisfy the inventory level constraint (4.1e)
are penalized. The non-negativity constraints on Ipt (4.1h) can in the following be ig
nored since it is assumed that I_pt > 0, and hence constraints (4.1h) are violated only
when constraints (4.1e) are violated. The penalty is included in the modified objective
function value cm(xk, Sk) and is the sum of the original objective function (4.1a) and a
total penalty TP(xk) (for the given state ,Sk), which can be calculated with the formula
where P(Sk) is a parameter of how much to penalize the violation, and which may vary
depending on the state. Hence, we can use a tabu search heuristic, as outlined above, on
the relaxed SCH-problem, if we ensure that the set #<%,,%;(%*, Sk) never contains solutions
which violate the requirements of using just a single run-mode (4.If). A neighborhood is
in the following given for the relaxed SCH-problem and illustrated with an example.
84 Chapter 5 Solution Approaches
Example 1 Consider a single processing unit during for six time-periods and three run-
modes M = {MO, Ml, MS} (where MO represents a stop-mode). A solution x° in terms of
the smt variables is given in Table 5.13. The corresponding solution in the ymt variables
satisfies the constraints (4-lf) and is given in Table 5.14, where ym0 = {0,0,1}. The
solution say that first the run-mode M2 is used, then the run-mode Ml is started in time
period 2, and used until run-mode MO is started in time period 5.
Smt
t MO Ml M2
1 0 0 0
2 0 1 0
3 0 0 0
4 0 0 0
5 1 0 0
6 0 0 0
ymt
t MO Ml M2
0 0 0 1
l 0 0 1
2 0 1 0
3 0 1 0
4 0 1 0
5 1 0 0
6 1 0 0
Table 5.14: Example of solution for ymt
S?7lt
t MO Ml M2
1 0 (1) 0
2 0 1 0
3 0 (I) 0
4 (1) 0 0
5 1 0 0
6 (1) 0 0
Table 5.15: Sub-neighborhood Ne/i for smt
Vmt
t MO Ml M2
0 0 0 1
1 0 0 1
2 0 0 1
3 0 1 0
4 0 1 0
5 1 0 0
6 1 0 0
Table 5.16: Sub-neighborhood Ne/i for ymt
Another sub-neighborhood, Nmove, is given by such solutions where the current start
up is changed to the start-up of another run-mode in the same time period. The sub
neighborhood Nmove is exemplified in Table 5.17 for x° of Example 1, where a (1) may
replace a bold 1. Here, we allow the start-up of a run-mode that is already in use to take
place. However, such solutions will always be inferior, since there is a cost incurred by
performing a start-up.
S'mt
t MO Ml M2
l 0 0 0
2 (1) 1 (1)
3 0 0 0
4 0 0 0
5 1 (1) (1)
6 0 0 0
Table 5.17: Sub-neighborhood Nmove for smt
A sub-neighborhood iVSTOit<* allows the order (in time) of two consecutive run-modes
to change start-up positions (and lengths). The changes can be characterized as two
simultaneous changes associated with the sub-neighborhood Nmove. This is exemplified in
86 Chapter 5 Solution Approaches
Table 5.18, which is based on the solution x° of Example 1. The corresponding solution
in ymt variables is given in Table 5.19, when the “switch” has occurred.
Smt
t MO Ml M2
l 0 0 0
2 (1) 1 0
3 0 0 0
4 0 0 0
5 1 (1) 0
6 0 0 0
Table 5.18: Sub-neighborhood Nswltch for smt
Vmt
t MO Ml M2
0 0 0 1
1 0 0 1
2 1 0 0
3 1 0 0
4 1 0 0
5 0 1 0
6 0 1 0
Table 5.19: Sub-neighborhood Nswitch, for ymt
The sub-neighborhoods given so far do not add or remove any start-ups. However, an
optimal solution may have more or less number of start-ups than the initial number (which
is two in Example 1). Such solutions can be found by introducing sub-neighborhoods
Nm and Nremove. The sub-neighborhood Nadd is illustrated in Table 5.20, based on
x° of Example 1, and adds a single start-up at all possible positions without violating
constraints (4.If). The sub-neighborhood Nremove includes such solutions where a start
up is removed from the solution xk.
Smt
t MO Ml M2
l (1) (1) (1)
2 0 1 0
3 (1) (1) (1)
4 (1) (1) (1)
5 1 0 0
6 (1) (1) (1)
Table 5.20: Sub-neighborhood Nadd for smt
5.6 A Tabu Search Heuristic 87
By using the sub-neighborhoods Nan and Nremove it is clear that any solution of the
relaxed SCH-problem can be created in a finite number of steps. Finally let the union
of the sub-neighborhoods define the neighborhood N(xk), i.e. N(xk) = Ne/i U Nmove U
Nswitch U Nadd U Nremove for a solution xk. The candidate solutions to consider at the k:th
iteration need only to be a sub-set of N(xk), i.e. Ncand(xk, Sk) C N(xk), as long as Nadd
and Nremove are used at a “regular basis” in order to ensure that all solutions can be rep
resented. In the implemented tabu-search, the different sub-neighborhoods are included
at some given frequencies in order to reduce the total number of solutions to evaluate
in Ncand(xk, Sk) (Some frequencies are given later in Table 5.21.) The sub-neighborhood
Ne/i was used in almost all iterations, except when another sub-neighborhood was forced
to be utilized (a kind of diversification). No thorough experimentation of what frequency
to allow for the various sub-neighborhoods was carried out.
The set Ncand(xk, Sk) is further reduced by using two types of tabu lists associated with
different (move) attributes. The first (general) tabu list makes sure that a position of
xk that changed a value from one to a zero, cannot become one again for L number of
iterations. The second (specific) type of tabu list implemented is associated with a sub
neighborhood. The sub-neighborhood Nmove is reduced by not allowing the reverse move.
The same applies for Nswttch, where a run-mode put earlier in one iteration cannot be put
later during some subsequent iterations. The Nadd is treated in the same way by, making
sure that no run-mode is added twice with “too few” number of iterations in-between.
A number of parameters has to be specified, length of the tabu lists, when to use a
sub-neighborhood, how much to penalize infeasibility etc. Some of these may have a
major impact on the performance of the tabu search and hence some testing of different
parameter values are important. The standard setting for some parameters of the im
plemented tabu search heuristic can be found in Table 5.21. The maximum number of
iterations is given by parameter K. The parameter P(Sk) is the penalization factor of
how much to penalize infeasible solutions with respect to constraints (4.1e). The usage
of the different sub-neighborhoods is controlled by frequencies (/), of how often the sub
neighborhoods are used. For example, fmove = 23, means that at every 23rd iteration the
sub-neighborhood Nmove is used. We also this number (2fmove) to decide when the sub
neighborhood Ne/i is excluded from N(xk). This means that fmove = 23 implies that at
every 2*23 = 46th iteration the Ne/i is excluded, and Nmove is the only sub-neighborhood
considered.
The values of the frequencies are mainly based on guesses. However, some initial tests
indicated that the sub-neighborhood Ne/i was crucial for the performance, and that the
sub-neighborhood NSWitch was performing better in combination with Ne/i compared to
the other sub-neighborhoods.
88 Chapter 5 Solution Approaches
Parameter Value
K 5000
PfS*) 500
fe/l 1
fmove 23
fswitch 19
fadd 29
fremove 29
Table 5.21: Parameter of the implemented tabu search heuristic
It is believed that a modified Middle-sized problem, with 25% of original start-up costs,
is suitable for testing the tabu search heuristic, since this problem is fairly hard to solve
using a B&B procedure (see Table 5.11 in section 5.5.3). The best known solution to this
modified Middle-sized problem has an objective value of 1423 (LBD=1403). A solution
with an objective function value of 1432 was found after approximately 19 minutes, when
using valid inequalities and a branch and bound solution strategy. In the following tests,
it is assumed, that no available good starting solution is at hand, instead the solution of
no production is used as a start solution, i.e. the solution x° corresponds to using the
zero run-modes in all three processing units during the whole planning horizon. When
500 iterations remain, the tabu search heuristic is restarted with the best solution found
so far (xbest) as the initial solution and with empty tabu lists. The CPU-time utilized for
each test-run is approximately 13 minutes.
In Table 5.22 we report on some tests for finding a suitable length of the tabu list (general).
The objective function of the best found solution, inclusive the penalty due to violation
of constraint (4.1e), is expressed by cm(Xixst, Sk). The value of the penalty (TP(xi>est) is
given in the right column of the table. The results indicate that a tabu list length of 15
iterations are good. The solutions found are almost as good as the best solution, with an
objective function value of 1432, found by using the B&B solutions strategy with valid
inequalities.
An alternative strategy is to allow the tabu list length Lk vary randomly, by generating
a uniformly distributed number between 1 and 2L in each iteration, i.e. Lk = U( 1 — 2L),
where U denotes a uniform distribution. The expected value of the generated tabu list
lengths then approximately equals L (L — 0.5). The result of using randomly generated
5.6 A Tabu Search Heuristic 89
tabu list lengths with L = 15 can be studied in Table 5.23. The results given in the
table indicate that using randomly generated tabu list lengths, solutions almost as good
as using constant tabu list length are obtained. For some test runs the best solutions
obtained are far from optimal.
i=15
#run
1 1472 1
2 1457 0
3 1467 0
4 1453 0
5 1459 1
6 1573 93
7 1915 431
8 1479 0
9 1462 0
10 1457 1
Average 1519 53
Table 5.23: Tests of randomly generated tabu lengths
Despite the somewhat discouraging results of using randomly generated tabu list length,
it is believed that this results in a more robust heuristic, since cycling is very unlikely to
occur (at least with exactly the same path). Robustness is in this context denotes the
ability of the heuristic to always find a reasonably good solution in limited time.
In order to achieve periods of intensification and diversification, we also tested letting the
parameter L to take relatively small values for some intervals of iterations and large for
other intervals. The results are given in Table 5.24, where L vary between 5 to 20 and
Lk — U{\ —2L). The results indicate that the performance can be improved using this
strategy for deciding on the tabu list lengths.
90 Chapter 5 Solution Approaches
L = 5 to 20
#run TP(x ^t)
1 1464 0
2 1558 93
3 1457 1
4 1457 1
5 1480 0
6 1451 0
7 1452 0
8 1454 0
9 1467 0
10 1457 1
Average 1470 10
Table 5.24: Tests of using varying length of the tabu list, Lk = U{ 1 — 2L).
Some experiments of using different values of the penalization factor P(Sk) were carried
out. The standard is to keep the same value of P(Sk) throughout all K iterations. An
other way is to adjust the value of the parameter P(Sk), depending on the smoothed
average value of TP(xk) in previous iterations. This is referred to as using a “dynamic
penalization”. If there has been a fairly high level of feasibility violation for some it
erations, it appears reasonable to increase P(Sk) in order to discredit solutions which
are infeasible in the SCH-problem. If, on the other hand, there has been a low level of
infeasibility it appears reasonable to decrease the penalty, allowing the “solution path”
to traverse infeasible regions and hopefully find better solutions. Computational tests are
given in Table 5.25. The values of Sk) are adjusted with an original penalization
factor of P(Sk) = 500. The tests show on no significant improvement when using dynamic
penalization, see Table 5.25. However, the strategy may improve the performance, if the
values of deciding the penalization factor and the formula for calculating TP{xk) (5.48)
are tuned.
P(S") TP(xbest)
62.5 1465 11
125 1462 0.8
250 1463 3
500 1519 53
1000 1503 41
Dynamic 1466 0
Table 5.25: Tests of using different P(Sk) and tabu list length Lk = U( 1 — 2L), L = 15.
Another extension to the tabu search heuristic is to let the modified objective function
cm(xkand- Sk) incorporate considerations of what solutions (changes) are appropriate to
prioritize, in order to find solutions not investigated before. When studying the generated
5.6 A Tabu Search Heuristic 91
solutions of the implemented tabu search heuristic it was noticed that the same type of
“moves” very often reappeared. For example, it was noted that many moves that were
carried out for a limited set of run-modes used in HF and HT (and very few regarding the
CDU). In order to make these (frequently occurring) changes less favorable, they are in
this extension “punished” in cm(xkMnd, Sk). In literature this is often referred to as using
a frequency based memory and is achieved by recording a smoothed average frequency
(stored in Sk) of whenever xk~k = 1 changes to xk = 0 for a j. A candidate solution
of xkand € Ncanti(xk, Sk) is then penalized if that solution implies a “change back” at a
later iteration k, i.e. if xk~l = 0 changes to xk = 1. This “frequency punishment” is
ignored if the solution is better than any solution found so far, i.e if c™(%^, Sk) <
cm($6est, Sk) (when not considering the frequency punishment). As can be seen in Table
5.26, this strategy of frequency punishment does not appear improve the performance of
the heuristic.
” Frequency punishment”, L = 15
#run TP{xbest)
1 1458 1
2 1571 93
3 1484 6
4 1464 0
5 1473 0
6 1526 0
7 1454 0
8 1573 92
9 1505 48
10 1451 0
Average 1496 24
Some tests are carried out also for the Large-sized problem. Computational results are
given in Table 5.27 and can be compared to the results in Table 5.12 in section 5.5.3,
where the best integer solution found has an objective function value of 2384 and was
found after approximately 4 hours of CPU-time. When using the tabu search on the
Large sized-sized problem, we use K = 10000 (iterations), which requires approximately
1.5 hours of CPU-time. The results in Table 5.12 show that the tabu search heuristic
on average perform better compared to the use of valid inequalities in a B&B solution
approach.
In order for the tabu search heuristic to be efficient, a fast evaluation of cm(xk, Sk) is
crucial, since it is carried out for all x 6 Ncand(xk, Sk) in each iteration k. The second
part of the objective function of the SCH-model, defining the cost of start-ups, can be
evaluated efficiently by inspection of xk (smt) and a calculation of ^ ^ ^ cmtsmt-
t£T q£Q m€Mq
However, the evaluation of the first part of the objective function (^^ c£t/pt) and the
t peP
92 Chapter 5 Solution Approaches
penalty TP(xk), require some more computations. The values of Ipt has to be determined
for each product p and each time period t. However, since solutions in Ncanci(xk, Sk) often
differ with respect to a single start-up, compared to the start-ups in xk, one only need to
recalculate Ipt for products p affected by the run-modes altered. Furthermore, only the
time periods after the actual change in xk need to be considered, since a change in start
ups at time period i only affects inventory levels in periods t > i. These issues of reducing
the CPU-time for evaluating a solution were only partly utilized in the implemented tabu
search heuristic.
We have performed only a limited set of computational tests of the proposed tabu search
heuristic, which implies that general conclusion can not be drawn. However, it seems
that the solutions obtained from the tabu search heuristic is competitive with solutions
obtained using valid inequalities and B&B. The presented results give some indications
of the effect of using different features and values of parameters for the tabu search
heuristic. Using a tabu search heuristic with static tabu list length L may be more
favorable than using a randomly generated length. However, we believe that using the
randomly generated lengths can work better if less extreme values of the tabu list length
is allowed. Using periods of iterations with short and long tabu list lengths respectively
appears to improve the tabu search heuristic somewhat. Concerning the penalization
factor it is not clear from the studied scenarios, whether a static penalization factor
should be used or a dynamic. However, using dynamic penalization is likely to give a
more robust heuristic, i.e. it will perform well also when used on other problem scenarios.
The introduced “frequency punishment” appears not to give a significant improvement of
the performance. However, we believe that by tuning the parameters of this method and
by considering rules for overriding tabu moves (aspiration criteria), this is still a promising
enhancement to the implemented tabu search heuristic.
5.6 A Tabu Search Heuristic 93
Any feasible solution provides an upper bound (UBD) of the optimal objective function
value. A low (strong) UBD can improve the B&B solution procedure, by reducing the
B&B-tree and may therefore also reduce the CPU-time if possible. Therefore it is of
interest to find good feasible solutions using a tabu search heuristic in order to improve
the performance of a BfcB solution procedure.
Lpkketangen and Woodruff (1998) integrate pivot based search with a B&B solution
strategy. They use a pivot based search (See Lpkketangen and Glover (1998) for details),
using as a tabu search, where the start solution x° is the optimal solution obtained from
the LP-relaxation (x*LP). The neighborhood N(xk) consists of all adjacent basic feasible
solutions (adjacent extreme solutions under non-degeneracy). Lpkketangen and Woodruff
(1998) explore strategies for selecting moves, depending on both the objective function
value c(xkand, Sk) and the level of infeasibility. In this case, infeasibility occur when
Xj </ {0/1}. The pivot based search can be applied at the root node (starting with x*LP),
or from any node of the B&B-tree.
Lpkketangen and Woodruff (1998) conclude that examples can be found where pivot
based search using tabu search heuristic, applied at the root node can reduce solution
time. However, using pivot based search at various nodes in the B&B-tree did not appear
to reduce solution time in their implementation. They also state that the major benefit
of their approach is that good feasible solutions are quickly found.
Some experiments were also carried out in this thesis on combining B&B and tabu search.
The objective function value of the best found solution from the tabu search heuristic (for
the Middle-sized problem, with 0.25c£,t) is fed into the B&B solution procedure as a
known UBD (e.g. 1460). No significant speed-up of the computation or reduction of the
B&B-tree was recorded. However, as a “side effect”, a slightly better integer solution
could be found (1423).
The integer solutions found by the B&B solution strategy can be fed into the tabu search
heuristic as the starting solution (x°). Somewhat better solutions could be found for both
of the studied versions of the Middle-sized and the Large-sized problems. Another way
to find starting solutions is to use the (fractional) solution obtained at any of the nodes
in the B&B-tree and apply some rounding procedure in order to achieve that the single
run-mode constrains (4.If) are satisfied. No tests of this method was carried out in this
thesis.
94 Chapter 5 Solution Approaches
Chapter 6
In this chapter, we discuss and exemplify how the developed SCH-model can be used
for supporting decision making. In section 6.1, we exemplify the potential of the SCH-
model for supporting decision making by studying different scenarios. In section 6.2, we
investigate the use of the modified models compared to the SCH-model. The usage of the
model is illustrated on the scenarios introduced in section 5.5.1, called the Middle-sized
and the Large-sized problem. In most cases, the illustration is only made on the Middle-
sized problem, since it was often too difficult to find good solutions and to guarantee their
goodness for the Large-sized problem.
The main purpose is to show on the potential benefits of using an optimization model such
as the SCH-model at a refinery. This chapter concentrates on the situation encountered
at Nynas AB. However, in section 6.3, the studied issues of the SCH-problem are also
related to the situation at Scanraff AB.
In this section we first discuss how the SCH-model can support the scheduler to devise a
schedule. Some aspects of how to use the model in relation to the shipment planning are
considered. We also illustrate how the SCH-model can support strategic decision making,
e.g. evaluate production costs for different inventory capacities. There are also other
decisions at strategic/tactical levels which can be supported by the developed model,
such as introducing a new product, introducing a new type of run-mode, and changing
the production facility. The use of the SCH-model for supporting these latter decisions
is not illustrated in this section. In this section we only use the Middle-sized problem to
illustrate the usage of the model.
The purpose of this section, mainly is to exemplify what can be achieved with the model
and the solution method. In order to base actual decision on the SCH-model, a more
careful consideration is needed to the input data. However, the presented analyses can
give some indications, both at operational and strategic/tactical levels, on what is an
95
96 Chapter 6 Analysis of the Model Usage
In order to use the SCH-model for decision making at a regular basis (operational de
cisions), a user-friendly interface allowing for the interaction between the user and the
model is needed. Also, the efficient retrieval of data from database systems are needed. In
the following discussions, we assume that a decision support tool can be developed based
on the SCH-model.
The main purpose of using the SCH-model is to obtain a schedule of how to operate
the processing units. However, the SCH-model can hardly incorporate considerations of
all complex issues of the real situation at a refinery. Hence, before an actual schedule
can be established, the schedule obtained from the optimization model may require some
modifications. We believe the model can support the scheduler by allowing him or her
to iteratively lock and relax some parts of the schedule between re-optimization. The
scheduler then can use the SCH-model to devise a schedule that incorporates consideration
of such things not considered in the SCH-model explicitly.
Today the processing units at Nynas are planned separately, but with interaction between
the schedulers responsible for the different processing units. A model, such as the SCH-
mode, can facilitate this interaction.
It has not been possible to validate the schedules obtained from the SCH-model, by com
paring them with actual schedules devised at the refinery, since some of the input data is
not accurate enough. However, planners at Nynas have confirmed, that the characteristics
of the schedules obtained by using the SCH-model are fairly similar to the characteristics
of schedules actually implemented at the refinery. Although, the average number of start
ups performed during the planning horizon at the refinery may be slightly larger than the
number of start-ups obtained by using the SCH-model for the Middle-sized problem.
Sometimes, the established shipment plan (demand) may end up being impossible to
meet in terms of production. Then, there is no feasible solution to the SCH-problem and
something needs to be re-planned. In such a situation, a model allowing for artificial
production of products at high costs, can be useful. The results obtained when using
such an optimization model, can deliver some information on which particular shipment
is difficult to carry out, and thereby indicate appropriate changes to the shipment plan.
The results may also indicate if it is economical to buy a certain product (component) in
order to carry out the planned shipments.
The shipment plan may also be modified in order to reduce the production costs. For
example, when studying an optimal schedule to the Middle-sized problem, it was found
that one run-mode for the main processing unit (VD2) was used at the beginning of the
6.1 A Tool for Decision Making 97
planning horizon and again at a later stage. By moving some of the planned deliveries
(demand) for bitumen to other time periods, a schedule could be found manually which
reduced the number of the start-ups (from 9 to 7). Using the SCH-model again for this
modified shipment plan an even better schedule was obtained with only 6 start-ups, and
the total cost was reduced by 10% compared to the total cost of the optimal schedule for
the original demand pattern.
The suggested model for scheduling may also be utilized for finding out whether the
refinery can make an extra shipment requested by a customer. The model cannot just tell
whether such an extra shipment is possible (feasible) but also what costs such an extra
shipment will incur. Consequently, the model has the potential to support the decision
on whether a late enquiry of a delivery should be accepted or not.
There is a trade-off between how long a run-mode is used and the inventory levels obtained.
In the SCH-model this is reflected by costs for keeping inventories and costs for start-ups.
It is the ratio between these types of costs that determines the optimal schedule for a
particular scheduling scenario. Hence, by analyzing the characteristics of the obtained
schedule for different cost ratios, we can obtain indications on what is an economical
average length of a run-mode, which is reflected by the number of start-ups performed in
the schedule.
In the tests here, we increase or decrease start-up costs and compare the solutions to the
optimal solution of the problem with the original costs. Since the cost coefficients can be
scaled without changing the optimal solution to the problem, this comparison is equivalent
to studying changes of the inventory holding costs. The results of altering the start-up
costs are given in Table 6.1, where the first column represents the relative changes in the
optimal objective function value (given the new start-up cost). The second column gives
the relative changes in inventory costs, and the third column gives the number of start
ups performed for the given scenario. The last column indicates whether the schedule is
similar to the optimal schedule of the original scenario or not.
A reasonable interpretation of the results in Table 6.1 is that the start-ups costs are the
dominating cost for the optimal solution obtained. Even if the inventory cost is ignored
altogether, an optimal solution with less than 9 start-ups cannot be found (not visualized
98 Chapter 6 Analysis of the Model Usage
in the table above). When the cost ratio between start-ups and inventories is reduced to
50%, it is still not optimal to perform more start-ups in order to reduce inventories. This
result indicates that either the cost ratio is poorly estimated or that the most important
issue of scheduling in fact is to reduce the number of start-ups. This analysis illustrates
the possibility to use the SCH-model for deriving guidelines, for the recommended period
of time to use run-modes, and hence, what average inventory levels are economical.
The storage capacities in tanks are seen as fixed in the SCH-model. This, however, is not
true in a longer time perspective. It is possible to invest in new capacity and tanks can be
taken out of operation with an associated reduction in cost. The model can evaluate the
production cost for different given levels of inventory capacities, and hence indicate what
is an appropriate inventory capacity level. Such an analysis can be carried out by using
a ” what-if-analysis” approach. Then, it is important to consider the scenarios likely to
occur during a whole year of production. The requirements on production and hence the
requirements on inventory capacities may vary significantly between winter and summer.
Here, we present a limited analysis of the effect of changing the aggregated inventory
capacity level. In the scenarios presented in Table 6.2, the inventory capacities of all
the products/components have been reduced with the indicated percentage. For a few
products, a situation was then obtained, where the initial inventory level of the product
is higher than the inventory capacity attained, which of course leads to an infeasible
scenario. In order to avoid this, the storage capacity for a certain product was never
reduced more than to a quantity that initially was held in inventory.
The results in Table 6.2 indicate, as expected, that an increased level of storage capacity
leads to fewer start-ups and vice versa. It is also possible to estimate the relation between
the extra or reduced inventory capacity and the total cost. For example, a reduced
inventory capacity of 10% gives an increase in the total cost of 0.2%, which gives an
indication of the necessary cost reduction when reducing the storage capacity. Thus, we
have illustrated how the SCH-model can be used for supporting decisions on investments
in inventory capacity.
6.1 A Tool for Decision Making 99
Nynas is using a rolling time horizon for production planning and scheduling. This means
that even though a schedule is created which covers the next month of production, only
the part of the schedule representing the first few time periods (days) is used before a new
schedule is created. The SCH-model can be used to support decisions on how the rolling
time horizon planning should be implemented. Here, we illustrate this evaluating the cost
of fixing the schedule for a specified period of time, compared to allow for re-planning at
any point in time.
We investigated the effects on the schedule by carrying out the following changes at
the end of the time-horizon (and only at the end of the time horizon): to require less
inventories of the products, to include extra costs of keeping inventories, and to put a
(positive) value of keeping inventories. We then compare two situations for the scheduler,
either the schedule for the whole planning horizon could be re-scheduled, i.e. from t = 1
to t = 31, or the scheduler could only re-schedule from time period 1 — 6 to t = 31. The
latter case implies that the scheduler waits five day before he re-schedules based on the
new information.
Only marginal cost reduction could be obtained by making a re-scheduling for the whole
planning horizon compared to only allow re-scheduling of time periods f = 6 to t = 31.
This means that near optimal schedules to theses new situations can be found by just re
scheduling the production during time periods t = 6 to f = 31. Observe, that the changes
tested are “soft” changes, that is, the feasibility is not an issue since the changes incur
a relaxed problem, extra cost, or less cost. More “harder” changes, such as changes in
demand (deliveries) early in the planning horizon, may cause infeasibility, if the schedule
for the next five days are held affirm.
This analysis indicates that the scheduling of the first few time periods of the planning
horizon is fairly insensitive to changes that occur at the last time period. The analysis
can be expanded to investigate different types of changes and different lengths of the
time intervals between re-scheduling. Hence the model can be used to evaluate the use
of different time intervals between re-scheduling. When using a rolling time horizon for
scheduling an issue is to decide on how to deal with the production state at the end
of the time horizon. For example, what inventory levels are desired at the end of the
time-horizon. An analysis of the type we have done here can also be used for analyzing
schedules obtained for different end states. In our limited analysis it was indicated that
the first part of the schedule was similar in all the three studied cases, where re-planning
was allowed for all time periods, the inventory levels at the end of the time horizon were
fairly different. Hence, the analysis indicates that when using a rolling time horizon the
specification of the production state at the end of the time horizon is not that crucial for
the first part of the schedule.
100 Chapter 6 Analysis of the Model Usage
In this section, we analyze some optional ways of modeling the scheduling problem. One
purpose is to investigate if these versions of the SCH-model may provide schedules which
are better, in the sense that they can more easily be implemented without too large
modifications compared to the required modifications for schedules obtained with the
SCH-model. Since the studied models represent a somewhat different way of scheduling
compared to current practice, we may also investigate which principles should we use for
scheduling in order to achieve cost efficient production. Hence, another purpose is to study
an optimal schedule and its total cost, using the different principles and assumptions for
the scheduling represented by these versions of the SCH-model.
Although the focus is on analyzing the schedules obtained from the versions of the SCH-
models, some aspects of applying the B&B solution strategy with valid inequalities are
also presented. This is important, since some versions of the SCH-model may be much
more difficult to optimize.
We first analyze the issue of allowing run-modes to start (and change) at any point in
time, instead of only allowing changeovers to occur at the beginning of a time period. In
practice, a changeover may take place at any point in time, however, it is not unusual
that changeovers at Nynas are repeatedly scheduled to a specific time of the day.
A model, allowing run-modes to change at any point in time, is more difficult to solve,
compared to the SCH-model. The relative gap between UBD and LBD was, for the
6.2 Modeling Issues 101
Middle-sized problem, 1.5% after 8 hours of CPU-time. For the Large-sized problem no
reasonable good feasible solution could be identified within 8 hours of CPU-time. This
modified model was solved using a relaxed version of the set of valid inequalities (VI). The
modification of the set of valid inequalities (VI), for a given p € P, and t1:t2 € T, t\ < t2,
can be formulated as
’ ts
tUBD yLBD
y2 dv*+4<2 4,<i-l
I
Zpht2
yi y^ ymt
t=ti m£Mp
+f >
tipm
(6.1)
Valid inequalities (V5) need no modification, and hold also for this modified formulation.
In the SCH-model we enforce the production to occur exactly at the yield specified for a
run-mode, i.e. the set-up variables ymt of a run-mode is binary. However, at Nynas the
production may be reduced down to 50% of its maximal yield. This can, to some extent,
be incorporated into the SCH-model by using equivalent run-modes but at different yield
levels. Here, we investigate the use of the alternative model formulation presented in
section 4.3.2, which allows for reduced production.
Computational tests are given for both the Middle-sized and Large-sized problem with
rm = 0.5, i.e. production may be carried out at half of the given production yield. The
resulting scenario does not fully represent the real situation at the refinery, since some
run-modes of the Middle-sized and of the Large-sized problems are already based on re
duced production capacity. Consequently, the alternative model may represent a situation
where the production is running at a yield equivalent to 25% of maximal production. Any
way, the results indicate the characteristic of a schedule obtained when allowing reduced
production.
Reduced production
Obj. val. Inv. costs #Start-ups
Original 0.0 % 0.0 % 9
Reduced production -5.7% -3.9 % 8
Table 6.3: Allowing reduced production for the Middle-sized problem
In Table 6.3, it is seen that the optimal objective function value for the Middle-sized
problem is decreased with 5.7%. The number of start-ups is decreased from 9 to 8 and
the cost of storage is also reduced.
102 Chapter 6 Analysis of the Model Usage
Reduced production
Obj. val. Inv. costs #Start-ups
Original 0.0 % 0.0 % 15
Reduced production -4.8 % -8.9 % 16
Table 6.4: Allowing reduced production for the Large-sized problem
When allowing for reduced production similar results are experienced for the Large-sized
problem. However, for the Large-sized problem the number of start-ups increased, at
least compared to the best found solutions. The optimal objective function value for the
Large-sized problem is in the range 2100-2220 for this alternative model, compared to
the optimal objective function value for the Large-sized problem, which is in the range
2208-2310. The values in Table 6.4 are based on the best found solutions (UBD).
It can be noted that a cost reduction is obtained compared to the SCH-model. However,
the obtained optimal schedule may in reality not be as good as suggested by its objective
function value, since negative implications associated with changing the actual production
yield “up and down”, are ignored in this alternative formulation. Nevertheless, our results
indicate that allowing for the use of reduced production is an important issue to consider
in order to obtain cost efficient production.
The valid inequalities (VI) and (V5) are used in the BfeB solution method employed for
solving this alternative formulation. A minor modification is necessary when calculating
zph£i see inequality (5.22) on page 64, where no rounding-up is possible. Hence, the valid
inequalities (VI) and (V5) become slightly weaker, which does not appear to increase the
needed solution time significantly. For the Middle-sized problem, the optimal solution
was found and verified in a slightly shorter time when using the reduced production
formulation compared to the original formulation. For the Large-sized problem the gap
between UBD and LBD was reduced approximately at the same rate for both the models.
An issue of the process scheduling is to be able to cope with uncertainty in the shipments.
A tanker may be delayed or arrive earlier than planned. An analysis was carried out
based on the issues of robustness discussed in section 4.3.5. The alternative formulation
tested enforces products to be available one time period earlier than the actual planned
time period of delivery (R = 1). It also enforces that there should be enough storage
capacity available if the delivery is delayed one time period. Naturally, this results in a
more costly schedule as indicated in Table 6.5.
6.3 The Potential to Use the Model at Scanraff AB 103
Robust Scheduling
Obj. val. Inv. costs # Start-ups
Original 0.0 % 0.0 % 9
Robust 6.2% 0.6 % 11
Table 6.5: Using ” robust scheduling” on the Middle-sized problem
A larger number of start-ups is needed for this scenario. There appears to be a trade-off
between the number of start-ups and the level of ability to ship the products earlier or
later than planned. The more the production is constrained, by enforcing robustness, the
more start-ups are needed. Unfortunately, the use of this robust scheduling model makes
it harder to find and verify an optimal solution. For the Middle-sized problem, 16 hours
of CPU-time was required in order to find and verify the optimum. For the Large-sized
problem the gap between UBD and LBD could not be reduced enough in order to make
any analysis of the result. When solving this model of robust scheduling we use the valid
inequalities derived for the SCH-problem. With some modifications, the valid inequalities
can be made stronger and the performance of the B&B solution strategy should become
approximately as good for this alternative formulation as for the SCH-problem.
In this section, we discuss how a model similar to the model developed for the scheduling
problem at Nynas, can be utilized also at Scanraff. Concerning Scanraff, it was indicated
in section 2.2.3, that a shipment plan is established prior to the scheduling of the process
ing units. Also, a crude oil feed schedule, concerning whether to use low sulphur or high
sulphur (LS or HS) crude oil, is determined prior to the scheduling of the processing units.
Accordingly, the scheduling of the processing units are driven by the shipment plan and
by the derived demand of different components. The scheduling of the processing units is
limited by the availability of distillates processed in the CDU. At Scanraff there are nega
tive implications of changing the production of one product to the production of another,
which means that reducing start-ups is an issue. The above described situation implies
that a model, such as the SCH-model, can be used for representing the process scheduling.
This is true, at least when considering the processing units downstream from the CDU,
and when assuming that the crude oil schedule of the CDU already has been established.
We believe that scheduling of the processing units Synsat and MHC can appropriately be
described by the SCH-model. In such a case, the demands for products represent both
the derived demand of components to be blended, and the scheduled arrival of distillates
from the CDU.
With some minor modifications the decision of how to cut the crude oil of the CDU can
be incorporated into the model. One may specify a set of run-modes that can be used for
each blend of crude oils that is scheduled for the CDU. In the model it is then specified
for a given time period, which particular set of run-modes that is available. In a simple
version, there are two types of crude oil blends to consider, that is, a LS and a HS crude
104 Chapter 6 Analysis of the Model Usage
oil. There are also just two versions of how to place the cuts of the CDU, i.e. either one
produce Light Gasoil (LG) suitable for the environmental friendly diesel (MK1) or one
produces LG suitable for DSLG (DeSulphurized Light Gasoil).
At Scanraff there is probably some higher degree of freedom when blending an end-
product, compared to at Nynas. Therefore, it may be useful to incorporate consideration
of blending. One way to achieve this is to specify the demand for the end-products and
include a blending process with unlimited capacity, as was illustrated in section 4.3.6.
We believe that an optimization model describing the scheduling of some processing units
at Scanraff can support the decision making at both a strategic/tactical level and at an
operational level in the way illustrated in section 6.1 for the Nynas refinery.
Chapter 7
7.1 Conclusion
We have studied the production planning and scheduling process at two refineries. This
process includes the steps production planning, shipment planning, process scheduling,
and the execution of the schedules. Several areas where optimization has a potential for
supporting decision making have been identified. Concerning the production planning,
LP-models are already in use and support the creation of both monthly plans and strate
gic decision making. The shipment planning and the process scheduling are identified as
decision problems for which optimization models may give support. Optimization models
can also support strategic decision making on, for example, the introduction of new prod
ucts, the investments in inventory capacities, and what principles to use for production
planning and scheduling.
Several types of valid inequalities were derived for the model. It was shown, that these
inequalities could significantly improve the lower bound obtained from the linear pro
gramming relaxation of the problem. It was also shown, how the valid inequalities can
be used in order to improve the performance of a branch and bound solution approach.
Instead of using a cutting plane algorithm the valid inequalities were generated a priori.
This was possible since the number of valid inequalities was rather limited. The number
of inequalities was further reduced by the use of a preprocessing procedure. Some sce
narios could be solved to optimality using a B&B procedure in combination with valid
inequalities.
A tabu search heuristic was also developed. For a given CPU-time, the tabu search
heuristic often found better solutions than the B&B solution approach, at least for large
problem instances. Some tests of the tabu search heuristic were performed by using
105
different parameter values and different versions of the heuristic.
It has been illustrated how an optimization model for the scheduling at the refinery may
support the creation of a process schedule. Further, such an optimization model can
estimate the production cost incurred by a particular shipment plan, and therefore enable
the planner to evaluate shipment plans. It was also illustrated how such an optimization
model may support strategic decision making on, for example investments in inventory
capacities.
Both the tested solution approaches are possible to use for finding reasonable good solu
tions to many scenarios of the scheduling problem. However, the solution times required
are not short enough to support all the kind of decision making we have outlined in this
thesis. The solution times can be kept down by carefully consider what to include into
the model, e.g. some products can possibly be excluded, in order to reduce the size of the
model.
A natural continuation of this research is to further study the use of the suggested op
timization model for process scheduling in practice. Then, the different versions or ex
tensions of the scheduling model can be evaluated and requirements on the optimization
methods can be appraised.
Another interesting direction for future research is to analyze the shipment planning more
carefully. Particularly, it could be interesting to study the connections to the production
planning (LP-model) and to the process scheduling. It is also interesting to further study
the uncertainty associated with the production planning and scheduling. For example,
an optimization model might be developed that incorporates consideration of uncertainty
about both the date of arrival of the ships and the quantities to be loaded into the ships.
It is also interesting to investigate further the potential for connecting the scheduling
problem to the utilization of tanks and pipes and to the blending of products.
There are a lot of ways to improve the used solution methods. The suggested valid
inequalities could be strengthen further by using techniques such as lifting. Also valid
inequalities from other types of lot-sizing problems could be modified and used. Then,
cutting plane algorithms are presumably needed in order to use the valid inequalities
efficiently. It is also interesting to investigate the approach of generating cuts at the
different nodes of the B&B-tree for this scheduling problem. The integration of the
developed tabu search heuristic with a B&B solution procedure is also a potential way to
reduce the solution times for the scheduling problem. Then, it is an issue to analyze how
a fractional solution obtained from a node of the B&B-tree can be used as a start solution
for the tabu search heuristic. The tabu search heuristic can also further be enhanced
by implementing dynamic tuning of the parameters and by implementing more efficient
evaluation of the solutions.
Bibliography
Afentakis, P., and Gavish, B. (1986), “Optimal lot-sizing algorithms for complex product
structures”, Operations Research 34, 237-249.
Amos, F., Rdnnqvist, M., and Gill, G. (1997), “Modelling the pooling problem at the
new Zealand refining company”, Journal of the Operational Research Society 48,
767-778.
Ballintijn, K. (1993), “Optimization in refinery scheduling: Modeling and solution”, in:
A.Ciriani, T., and Leachman, L. R. C. (eds.), Optimisation in Industry, John Wiley
fc sons Ltd., chap. 10, 191-199.
Blazewicz, J., Ecker, K. H., Pesch, E., Schmidt, G., and Weglarz, J. (1996), Scheduling
Computer and Manufacturing Processes, Springer-Verlag, New York.
Constantino, M. (1995), A Polyhedral Approach to Production Planning Models: Start-Up
Costs and Times, Upper and Lower Bounds on Production. Ph.D. thesis, Faculte
des Science, Universite Catholique de Louvain, Faculte des Sciences, Belgium.
Constantino, M. (1996), “A cutting plane approach to capacitated lot-sizing with start-up
costs”, Mathematical Programming 75, 353-376.
Grama, Y. (1997), “Combinatorial optimization models for production scheduling in au
tomated manufacturing systems”, European Journal of Operational Research 99,
136-153.
Crooks, C., Kuriyan, K., and Macchietto, S. (1992), “Integration of batch-plant design,
automation, and operation software tools”, in: Gani, R. (ed.), European Symposium
on Computer Aided Process Engineering-1, ESCAPE-1 Supplement to Computers
and Chemical Engineering, Supplement to Computers and Chemical Engineering,
Pergamon Press, 289-296.
Dessouky, Y., Roberts, C., Dessouky, M., and Wilson, G. (1996), “Scheduling multi
purpose batch plants with junction constraints”, Int. J. Prod. Res 34, 525-541.
Dewitt, C. W., Lasdon, L. S., Waren, A. D., Brenner, D. A., and Melhem, S. A. (1989),
“OMEGA: An improved gasoline blending system for Texaco”, Interfaces 19, 85-
101.
Egli, U. M., and Rippin, D. W. T. (1986), “Short-term scheduling for multiproduct batch
chemical plants”, Computers chem. Engng 10, 303-325.
107
108 BIBLIOGRAPHY
Fuchino, T., Muraki, M., and Hayakawa, T. (1992), “Integer programming model for
the globally optimal schedule of multipurpose batch plants”, Journal of Chemical
Engineering of Japan 25, 250-256.
Glover, F., and Laguna, M. (1993), “Tabu search”, in: Reeves, C. R. (ed.), Modern
Heuristic Techniques for Combinatorial Problems, Blackwell Science Publications,
Oxford, chap. 3, 70-142.
Grossman, I. E., Quesada, I., Raman, R., and Voudouris, V. T. (1996), “Mixed-integer
optimization techniques for the design and scheduling of batch processes”, in:
Reklaitis, G. V., Sunol, A. K., Rippin, D. W. T., and Hortacsu, 6. (eds.), Batch
Processing Systems Engineering, Springer, NATO ASI Series F, 451-494.
Guran, M., Filip, F., Donciulescu, D., and Orasanu, L. (1985), “Hierarchical optimization
in computer-aided dispatcher systems in the process industry”, Large Scale Systems
8, 157-167.
Haverly Systems Inc (1997), “A system for optimizing the scheduling and blending of
crude oil”, in: The European Refining Technology Conference - Computing London
U.K. ICM Consultants Limited.
Hax, A. C., and Meal, H. C. (1984), “Hierarchical integration of production planning and
scheduling”, in: Taylor, S. G., Wickes, R. E., and Novitsky, M. P. (eds.), Process
Industry Reprints, APICS, 78-94.
Hendon, S. R., and Thiessen, J. M. (1997), “RT-OPT increases FCCU profitability and
reliability: an integrated on-line and off-line solution”, in: The European Refining
Technology Conference - Computing London U.K. ICM Consultants Limited.
Hop, A., Langeveld, A., and Sijbrand, J. (1989), “Production management in downstream
oil industry”, IFAC Production Control in the Process Industry Session 1, 17-22.
Jlinger, M., Reinelt, G., and Thienel, S. (1995), “Practical problem solving with cut
ting plane algorithms in combinatorial optimization”, in: Cook, W., Lovasz, L.,
and Seymour, P. (eds.), Combinatorial Optimization. DIMACS Series in Discrete
Mathematics and Theoretical Computer Science, vol 20, 111-152.
Karmarkar, U. S., and Schrage, L. (1985), “The deterministic dynamic product cycling
problem”, Operations Research 33, 326-345.
BIBLIOGRAPHY 109
Kondili, E., Pantelides, C. C., and Sargent, R. W. H. (1988), “A general algorithm for
scheduling batch operations”, in: Third Int. Symp. on Process Systems Engineering
Australia.
Kondili, E., Pantelides, C. C., and Sargent, R. W. H. (1993), “A general algorithm for
short-term scheduling of batch operations - 1. milp formulation”, Computers chem.
17, 211-227.
Kudva, G., Elkamel, A., Pekny, J. F., and Reklaitis, G. V. (1994), “Heuristic algorithm
for scheduling batch and semi-continuous plants with production deadlines, inter
mediate storage limitations and equipment change overs costs”, Computers chem.
Engng 18, 859-875.
Lee, H., Pinto, J. M., Grossmann, I. E., and Park, S. (1996), “Mixed-integer linear pro
gramming model for refinery short-term scheduling of crude oil unloading with in
ventory management”, Ind. Eng. Chem. Res. 35, 1630-1641.
Lpkketangen, A., and Glover, F. (1998), “Solving zero-one mixed integer programming
problems using tabu search”, European Journal of Operational Research 106, 624-
658.
Lpkketangen, A., and Woodruff, D. L. (1998), “Integrating pivot based search with branch
and bound for binary MIPs”, in: Lpkketangen, A. (ed.), Fifth Meeting of the
Nordic Section of the Mathematical Programming Society Molde, Norway. Hpgskolen
i Molde/ Molde College.
Magnanti, T. L., and Vachani, R. (1990), “A strong cutting plane algorithm for production
scheduling with changeover costs”, Operations Research 38, 456-473.
Orcun, S., Altinel, I. K., and Hortacsu, 6. (1996), “Scheduling of batch processes with
operational uncertainties”, Computers chem. Engngn 20 Suppl, 1191-1196.
Pinto, J. M., and Grossmann, I. E. (1995), “A continuous time mixed integer linear
programming model for short term scheduling of multistage batch plants”, Ind.
Eng. Chem. Res. 34, 3037-3051.
Pinto, J. M., and Grossmann, I. E. (1996), “A continuous time MILP model for short
term scheduling of batch plants with pre-ordering constraints”, Computers chem.
Emgng 20, 1197-1202.
Pochet, Y., and Wolsey, L. A. (1991), “Solving multi-item lot-sizing problems using strong
cutting planes”, Management Science 37, 53-67.
Pochet, Y., and Wolsey, L. A. (1993), “Lot-sizing with constant batches: Formulation
and valid inequalities”, Mathematics of Operations Research 18, 767-785.
Pochet, Y., and Wolsey, L. A. (1995), “Algorithms and reformulations for lot sizing prob
lems”, in: Cook, W., Lovasz, L., and Seymour, P. (eds.), Combinatorial Optimiza
tion. DIMACS Series in Discrete Mathematics and Theoretical Computer Science,
W20, 245-293.
Quade, E. S., and Miser, H. J. (1985), “The context, nature, and use of systems analysis”,
in: Miser, H. J., and Quade, E. S. (eds.), Handbook of Systems Analysis, John Wiley
& Sons, chap. 1, 1-32.
Rippin, D. W. (1996), “Current status and challenges of batch processing systems engi
neering” , in: Reklaitis, G. V., Sunol, A. K., Rippin, D. W. T., and Hortacsu, O.
(eds.), Batch Processing Systems Engineering, Springer, NATO ASI Series F, 1-20.
Shah, N. (1996), “Mathematical programming techniques for crude oil scheduling”, Com
puters chem. Engng 20, 1227-1232.
Shah, N., Pantelides, C. C., and Sargent, R. W. H. (1993), “A general algorithm for short
term scheduling of batch operation II. computational issues”, Computers chem.
Engng 17, 229-244.
Taylor, S. G., and Bolander, S. F. (1994), Process Flow Scheduling, APICS, Inc., USA.
Taylor, S. G., Seward, S. M., and Bolander, S. F. (1984), “Why the process industries
are different”, in: Taylor, S. G., Wickes, R. E., and Novitsky, M. P. (eds.), Process
Industry Reprints, APICS, 1-16.
Terpstra, V. J., de Bruijckere, R. M., and Verbruggen, H. B. (1993), “A robust reactive
scheduler for mixed-batch/continuous plants”, in: 12th World Congress of the IFAC
Sydney, Australia.
van Hosel, C. P. M., Wagelmans, A. P. M., and Wolsey, L. A. (1994), “Polyhedral charac
terization of the economic lot-sizing problem with start-up costs”, SIAM J. Discrete
Math. 7, 141-151.
van Roy, T. J., and Wolsey, L. A. (1987), “Solving mixed integer programming problems
using automatic reformulation”, Operations Research 35, 45-57.
Vanderbeck, F. (1998), “Lot-sizing with start-up times”, Management Science 44, 1409—
1425.
Vollmann, T. E., Berry, W. L., and Whybark, D. C. (1992), Manufacturing Planning and
Control Systems, third edition, Richard D Irwin, Inc., USA.
Voudouris, V. T., and Grossmann, I. E. (1996), “MILP models for scheduling and design
of a special class of multipurpose batch plants”, Computers chem. Engng 20, 1335-
1360.
Wagner, and Whitin (1958), “Dynamic version of the economic lot size model”, Manage
ment Science 5, 89-96.
Wolsey, L. A. (1997), “MIP modelling of changeovers in production planning and schedul
ing problems”, European Journal of Operational Research 99, 154-165.
Zentner, M. G., and Reklaitis, G. V. (1996), “An interval-based mathematical model
for the scheduling of resource-constrained batch chemical processes”, in: Reklaitis,
G. V., Sunol, A. K., Rippin, D. W. T., and Hortacsu, 6. (eds.), Batch Processing
Systems Engineering, Springer, NATO ASI Series F, 779-807.