-
64 • IEEE ROBOTICS & AUTOMATION MAGAZINE • JUNE 2015
1070-9932/15©2015IEEE
T o effectively operate a refinery and make it com-petitive,
efficient short-term scheduling tech-niques that utilize commercial
software tools for practical applications need to be developed.
However, cumbersome details make it difficult to solve the
short-term scheduling problem (STSP) of crude-oil operations, and
mathematical programming models fail to meet the industrial needs.
This article proposes an inno-vative control-theoretic and formal
model-based method to
tackle this long-standing issue. This method first models the
STSP as a hybrid Petri net (PN) and then derives criti-cally
important schedulability conditions. The conditions are used to
decompose a complex problem into several tractable subproblems. In
each subproblem, there are either continuous variables or discrete
variables. For subproblems with continuous variables, this work
proposes a linear pro-gramming-based method to solve them; while,
for sub-problems with discrete variables, this work adopts
efficient heuristics. Consequently, the STSP is efficiently
resolved, and the application of the proposed method is well
illustrat-ed via industrial case studies.
Short-Term Scheduling of Crude-Oil OperationsBy NaiQi Wu,
MengChu Zhou, and ZhiWu Li
Enhancement of Crude-Oil Operations Scheduling Using a Petri
Net-Based Control-Theoretic Approach
image licensed by in
gram publishing
Digital Object Identifier 10.1109/MRA.2015.2415047Date of
publication: 15 May 2015
-
65June 2015 • Ieee ROBOTICS & AuTOMATIOn MAGAZIne •
Oil Refinery and Short-Term Scheduling
The Refinery ProcessAn oil refinery is composed of various
production units such as tanks for material storage, a complex
pipeline system, utili-ty system, and so on. The overview of a
refinery in China is shown in Figure 1.
Roughly speaking, the operational process of an oil re-finery
has three stages: 1) crude-oil operations, 2) produc-tion, and 3)
final product distribution. At the first stage, crude oil is
carried to the port near the refinery plant by crude-oil tankers
and unloaded into storage tanks. The crude oil in the storage tanks
is then moved into charging tanks in the plant using a pipeline.
Finally, the charging tanks feed oil into distillers for
processing, which ends the first stage. At the second stage, the
middle products after distillation are further processed by various
production units until a variety of components are obtained. These
components are then mixed to form the final products. The final
products are distributed to markets by different means at the third
stage.
With intensive market competition and sustainable de-velopment
requirements, extensive modifications have to be made to the
operations of the process industry. Profits can be increased
significantly by using advanced informa-tion technology to improve
the operations of a process plant [16]. In recent years, great
attention has been paid to process engineering tools to enable
factory automation. A plant is operated in a hierarchical way with
three levels: 1) production planning at the upper level, 2)
production scheduling at the middle level, and 3) process control
at the lower level. Presently, at the upper level, commercial
soft-ware that is developed based on linear programming tech-niques
is widely applied to generate production plans for a whole
refinery. At the lower level, advanced control systems have been
installed for unit control in most oil refineries to optimize
various production objectives to maximize pro-ductivity gains.
In this process, the area that needs to be improved is the
method and software tool at the middle level, or the so-called
short-term production scheduling [16], [24]. This process is still
being done manually by planners in today’s practice. Therefore,
there is an urgent need to develop effective meth-odologies for the
middle level so that full automation can be implemented in all
three levels to achieve sharp productivity increases for the whole
plant.
It is known that the STSP of crude-oil operations is one of the
most difficult scheduling problems in a refinery, and this article
attempts to solve this problem.
The Short-Term Scheduling ProblemTo address this issue, one has
to realize various constraints and requirements. Before giving the
constraints for the sys-tem, we first present a brief introduction
to the process of an oil refinery.
To be profitable and to meet global market demands, a refinery
should process a variety of crude-oil types. A dis-tiller is
designed to process some types of oil, but not all types of oil can
be processed by every distiller. This in turn means that a storage
tank or charging tank can only hold one type of oil at a time.
Thus, when a tank is charged, it should be empty or the oil type
that is charged into it must be same as that in the tank. Before
crude oil can be pro-cessed, the brine should be separated from it,
which re-quires that the oil must sit in the tank after the tank is
filled and before it can be discharged. This time delay is called
oil residency time constraints. Furthermore, a tank cannot be
charged and discharged at the same time, i.e., an overlap for
charging and discharging a tank is not allowed.
A pipeline is used to transport crude oil from storage tanks to
charging tanks, and there is always crude oil in the pipeline that
cannot be emptied. Since a pipeline is tens of kilometers long and
various crude-oil types are processed, there may be multiple oil
segments in the pipeline with a different type of oil in each
segment.
In distiller feeding, a charging tank is required to feed a
distiller at any time and, therefore, poses the following
con-straint. Assume that a charging tank is feeding a distiller and
expected to be emptied at time .x To make the distillation process
stable, the successor tank must start to feed the distill-er at
time ,
-
66 • IEEE ROBOTICS & AUTOMATION MAGAZINE • JUNE 2015
We also face the following process constraints: ● the
uninterrupted operation requirement for distillers ● the occupation
requirement of a charging tank in distiller
feeding ● the nonoverlap requirement in tank charging and
discharging ● oil residency time constraint ●
charging-tank-switch-overlap constraint.
To schedule the system at the middle level, it needs to de-fine
and arrange activities for all the devices and production units in
every detail so that the constraints are satisfied and the given
objectives are optimized.
State of the ArtWith the nondeterministic polynomial-time
(NP)-hard com-plexity for solving a general scheduling problem,
usually heuristics and metaheuristics are applied for discrete
manu-facturing systems and batch processes [5], [10], [13], [14],
[21]. Since heuristics and metaheuristics cannot ensure an optimal
solution, the STSP of batch processes is formulated as mathematical
programming models to obtain an optimal solution [3], [9].
As previously discussed, there are discrete decisions in
oper-ating a refinery, just as there are in operating a general
process industry. Hence, an STSP of refinery operations is
essentially combinatorial and belongs to a set of NP-complete
problems [2]. A good way to efficiently solve a complex scheduling
prob-lem is to adopt heuristics and metaheuristics for suitable
solu-tions but not exact optimal ones. This method is also used for
scheduling discrete manufacturing systems and batch process-es. It
is known that, to make these techniques applicable for a problem,
the jobs to be performed should be well-defined and known before
the scheduling process begins, and solution feasi-bility should not
be a major issue. In scheduling a refinery, one needs to define and
sequence the tasks simultaneously, i.e., the tasks to be scheduled
are not known at the beginning. Furthermore, there are a large
number of constraints to be dealt with. Therefore, it is
challenging to find a feasible solution. Hence, heuristics and
metaheuristics are difficult to apply.
Exact solution methods previously developed for batch processes
are applied to the STSP of a refinery using mixed in-teger linear
programming (MILP) and mixed integer nonlin-ear programming (MINLP)
models. With both discrete-event and continuous variables, the key
issue is how to model time. The existing studies offer two types of
models, discrete-time representation and a continuous-time model
[17]. In the dis-crete-time representation, the horizon is divided
into a num-ber of uniform time slots. By this time representation,
MILPs can be obtained as they are in [4], [6], [11], [15], [19],
[20], [22], [23], and [38]. However, this method results in a huge
number of binary variables leading to a problem that is almost
impossible to solve [2], [33].
It seems that, if the number of binary variables can be
re-duced, the problem becomes easier. Using continuous-time models
and assuming that one knows the discrete events to be performed
during the scheduling horizon, the number of
binary variables can be significantly reduced. Such models are
adopted in [6]–[8], [12], and [25] to solve the problem.
Nevertheless, nonlinear constraints are introduced in [19], which
drastically complicates the solution process. Knowing the number of
events that will occur in advance is unrealistic [2], because they
are not known before a schedule is obtained. Moreover, to make the
problem solvable, the models of both types make special assumptions
so that some constraints are ig-nored, leading to an inefficient or
unrealistic solution for real world cases [15]. Thus, it is
necessary to search for a new tech-nique so that a software tool
for practical use can be developed.
Solving the STSPA refinery process is a continuous one, and so
the short-term schedule obtained should be compatible with its
initial state. With the dynamic nature of a plant and the
insufficiency of sen-sors, one cannot exactly predict the state of
the system in real time. Therefore, although the scheduling horizon
for a refinery often lasts between a week and ten days (sometimes
longer de-pending on the initial state), in practice, a short-term
schedule should be generated within a few hours. This means that a
sched-uling tool must work quickly. To make automation possible for
this problem, similar to how it is done for scheduling discrete
manufacturing systems and batch processes, it is important to have
an approximate method for an excellent and feasible solu-tion but
not an optimal one, which would take too long to ac-quire. However,
heuristics and metaheuristics that are used in discrete
manufacturing systems and batch processes are not ap-plicable to
the problem addressed here.
By examining the STSP of a refinery, one can find that the
feasibility issue and the characteristics of its hybrid nature make
the problem difficult. With a large number of con-straints, the
feasible space must be small, making it extremely difficult to find
an exact optimal solution since the feasible space needs to search
the whole space. In the control-theoretic domain, by building a
proper model one can control the sys-tem so that the undesired
states cannot be reached, or one can determine a feasible solution
space. This leads to the problem addressed here in a
control-theoretic perspective instead of the MILP or MINLP models
used in the existing work.
Based on this idea, a hybrid PN is developed to model the
process in this article. Using the PN models, the dynamic be-havior
is analyzed using the control theory, and schedulability conditions
are successfully derived, which can be checked in a simple way.
Using these conditions, the problem is hierarchical-ly divided into
two subproblems: 1) the refining scheduling problem at the upper
level and 2) the detailed scheduling prob-lem at the lower level.
By treating these conditions as con-straints, this work finds a
realizable refining schedule by further decomposing it into
subproblems so that each subproblem con-tains either discrete or
continuous variables. By doing so, one can separate the discrete
variables from the continuous ones such that the problem can be
efficiently solved. In addition, with the schedulability conditions
and the hybrid PN model, one can find a feasible detailed schedule
in a simple way. Therefore, a computationally efficient methodology
is provided
-
67June 2015 • Ieee ROBOTICS & AuTOMATIOn MAGAZIne •
that can be developed into a software tool for practical use. It
is possible to extend the proposed approach to the STSPs of other
process industries, which represents a breakthrough in the
re-search field. This article briefly introduces the proposed novel
approach without going into too much technical detail so that the
readers can easily understand how it works.
Mathematical Programming Methods and ComplexityWhen operating a
refinery, we face discrete events such as the start and end of
charging and discharging a tank as well as con-tinuous processes,
such as oil flow and distillation, resulting in a hybrid system.
Unlike widely studied discrete production-scheduling problems,
where jobs to be performed are well-de-fined and the machine
capacities are known in advance, when scheduling the process of
crude-oil operations, we only have the system state information,
e.g., crude-oil inventory in the system and the status of all
devices, including the tanks, pipeline, and distillers. We must
first define the jobs and then schedule them. Intelligent
optimization methods such as genetic algorithms, particle swarm
optimization, mussel wandering optimization, and evolutionary
algorithms completely fail to do so since they cannot even find
their initial population (feasible solutions).
By recognizing the difficulty of the problem, researchers have
tried mathematical programming methods. The key issue be-comes
whether to describe the time as discrete or continuous. With the
former, a scheduling horizon is divided into a number of slots so
that it can happen at the boundary of a slot in any event. Then,
one finds an optimal schedule using an exact solu-tion method [19],
[22], [23], [38], which suffers from computa-tional complexity, as
shown through the following example.
Assume that T is the number of time slots for a plant with K
distillers, H is the number of oil types, and G is the number of
tanks. Let fij be the production rate of distiller i during time
slot
,j and let g j be the flow rate of the pipeline during time slot
.j To further define ,h 1j = there is a crude-oil type switch in
per-forming oil transportation through the pipeline at the
beginning of slot ,j otherwise it is zero. Let CP be the cost
coefficient for such a switch. We define d 1ij = if there is a
charging tank switch in feeding distiller i at the beginning of
time slot ,j other-wise it is zero. Let CDS be the cost coefficient
for such a switch. The main objective is to maximize the production
rate, mini-mize crude-oil inventory cost, and minimize changeover
cost. An MILP is given as follows:
Maximize
.
J f C h
C dDS
ijjT
iK
P jjT
ijjT
iK
11 1
11
= -
-
== =
==
// ///
This is subject to the following:1) g j should be within the
permissive flow rate range of the
pipeline, { , , , } .Nj T1 2T6 f! = 2) fij should be within the
permissive feeding rate range of
the distiller ,i i NK6 ! and .j NT6 !3) Material balance for
tankers during slot , .j j NT6 !4) Material balance for tank l
during slot ,j l NG6 ! and
.j NT6 !
5) Material balance for crude-oil type k during slot ,j k NH6 !
and .j NT6 !
6) Oil residency time constraints for tank l during slot , Nj l
G6 ! and .j NT6 !
7) Charging-tank-switch-overlap constraint, Ni K6 ! and .j NT6
!
Using this model for each time slot and each distiller, one
needs to determine which oil type the distiller should be charged
to or which tank the oil should be discharged from. A binary
variable should be used to describe the occurrence of such an
event. Thus, outside of the binary variables denoting the
occurrence of events for constraints 6 and 7, there are at least T
G H K# # # binary variables. A typical application scenario has 20
tanks (11 storage and nine charging tanks), six oil types to be
processed, and three distillers with a ten-day scheduling horizon.
To obtain a solution with acceptable ac-curacy, the application
requires a time slot that is less than 15 min when one uses an MILP
model with discrete-time repre-sentation [19]. Thus, for a ten-day
scheduling horizon, there are 960 time slots and at least 960 # 20
# 6 # 3 = 345,600 bi-nary variables for this scenario. It is
extremely difficult, if not impossible, for an existing commercial
software package to solve such a large problem. Furthermore, a
produced solution may not be applicable or feasible because of the
requirement that an event should be scheduled to happen at the
boundary of a slot. Any reduction of slot length will drastically
increase the number of binary decision variables; e.g., reducing a
time slot from 15 to 10 min will increase the binary variables to
518,400. This implies that such models are not applicable to
real-life industrial practice.
The studies in [1], [6], [18], and [37] have offered continuous
time models. These models drastically reduce the number of bi-nary
variables but introduce nonlinear constraints [19], yielding a
nonlinear programming model. Furthermore, the number of discrete
events that are defined by a to-be-found schedule dur-ing the
horizon needs to be known in advance [2]. Can we use
continuous-time representation to formulate the problem?
Unfortunately, this method is not used in practice; thus, the
con-tinuous models are currently theoretically valuable. The last
re-sort for solving this problem is to make special assumptions and
neglect most of the constraints. Using this method, the resulting
models (discrete or continuous) can be successfully solved. This
solution gives decision makers some hints regarding ideal re-sults,
which concludes in unrealistic and infeasible solutions. In
conclusion, mathematical programming models cannot be ap-plied to
large real-world problems. Therefore, we must seek a new
breakthrough solution to the STSP.
Control-Theoretic and Hybrid PN-Based Approach
Problem Formulation in the Perspective of Hybrid System Control
TheoryThe process of crude-oil operations is formed by a series of
op-erations, including unloading oil from tankers, transporting oil
from storage tanks to charging tanks, and feeding oil from charging
tanks to distillers. The start and end of an operation
-
68 • IEEE ROBOTICS & AUTOMATION MAGAZINE • JUNE 2015
form the discrete events. In addition, the process constraints
are also related to a discrete-event process. A natural idea is to
de-scribe this process with a dynamic hybrid model so that a
sched-uling problem can be formulated from the perspective of the
hybrid system control theory. When scheduling such a process, we
should decide when an operation should take place, what should be
done, and how it should be done. Therefore we pro-pose an important
concept called an operation decision (OD).
Definition 3.1Define OD = (COT, , , , , ),S D a bg where COT
represents crude-oil type; g represents the amount of oil to be
delivered by the OD; S is the source from which the oil comes; D
repre-sents the destination where the oil is delivered; and a and b
are the starting and ending time of the OD. For a single
opera-tion, the flow rate is generally a constant and described
as
/ ( ) .b ag - In the definition, COT, ,S and D are discrete
vari-ables, while g and flow rate / ( )b ag - are continuous
vari-ables. When an OD is executed, the state of the system is
transformed to another. Hence, using a hybrid control theory, an OD
can be seen as a control command.
There are oil unloading ODs (ODU), oil transportation ODs (ODT),
and oil feeding ODs (ODF). We use [ , ],a b [ , ],m n and [ , ]~ r
to represent their time interval, respectively. For ODU, S is a
tanker and D is a storage tank. Similarly, we can identify
variables S and D for ODT and ODF. It should be pointed out that an
ODT must be executed by a pipeline. Let ODFki be the i- th OD for
feeding distiller ;k let
/ ( ), / ( ),g fg b a g n m= - = - and / ( )h g r ~= - be flow
rates for ODU, ODT, and ODF, respectively; let [ , ]s ex xC= be the
scheduling horizon (typically a week or ten days); and let K be the
number of distillers. Initially we only know the oil in-ventory,
the status of all the devices, and the tanker arrival in-formation.
Then, given the initial state information at ,sx in the view of
hybrid control theory, to schedule the system is to find a series
of ODs with multiple objectives being optimized. This is described
as
SCHD:A series of ODs:ODU , ,ODU ,ODT , ,
ODT ,ODF , ,ODF .w
x K
1 1
1
f f
f
(1)
It is subject to all the constraints given in the “Oil Refinery
and Short-Term Scheduling” section, where w is the number of ODUs,
x is the number of ODTs, both of which are un-known; ODFk = {ODF ,
,ODF , ,ODF }, k N1 2 knk k Kkf f ! consists of all the ODFs for
the feeding of distiller k during
[ , ] .s ex xC= The objectives to be optimized include
productivity maxi-
mization, minimization of inventory, minimization of the number
of crude-oil type switches for transporting oil through a pipeline,
and minimization of the number of charging tank switches in
distiller feeding.
Solution ArchitectureFeasibility is especially important when
solving the STSP of crude-oil operations. The problem with this
formulation is
that a large number of constraints exist and any violation of
them results in an infeasible solution. With a large number of
constraints, on the one hand, the feasible solution space is small,
which makes it challenging to obtain a feasible solution by an
exact enumeration-solution method using mathematical programming
models. On the other hand, finding a feasible solution becomes
easier if the search is done in a small, feasible space. In regards
to the scheduling horizon, in addition to the feasibility issue, a
schedule must present all actions in detail, which makes the
problem large and too difficult to solve.
A control-theoretic solution architecture with a two-level
hi-erarchy is proposed as a breakthrough solution. To guarantee
solution feasibility with this architecture, we can take advantage
of the control theory. We first describe the processes of crude-oil
operations with a hybrid dynamical model called a hybrid PN. Then,
we simply model the constraints via its structure, transition
enabling and firing rules, and its properties, e.g., live-ness.
Based on the hybrid control theory, we convert the live-ness
conditions into schedulability conditions and feasible solution
space. Consequently, we need to find a solution in the feasible
space, which will drastically simplify the problem.
This proposed architecture offers us a novel strategy to
hi-erarchically decompose a large problem into two small
sub-problems. Using this architecture, one needs to find a refining
schedule at the upper level, which is then realized by a detailed
schedule at the lower level. The key here is that the obtained
refining schedule must be realizable by a detailed schedule. This
is possible since the schedulability conditions can be for-mulated
as constraints into the model to find a refining sched-ule.
Furthermore, one can further decompose the refining schedule
problem into subproblems with each subproblem containing either
continuous variables or discrete variables in the same formulation.
In other words, we innovatively decou-ple the interaction of
discrete and continuous variables such that one can efficiently
obtain a realizable refining schedule.
In finding a detailed schedule to realize a refining schedule by
using the schedulability conditions as constraints, the solu-tion
feasibility can be guaranteed by making the system trans-form from
one allowed state to another. An allowed state implies that it can
evolve to a feasible schedule if the system is properly scheduled
as shown in [29], [30], [33], and [35]. Thus, a feasible schedule
to realize a given refining schedule can be found sequentially in a
one-OD-by-one-OD way. Heuristics and metaheuristics can be applied
to optimize these objectives. By optimizing these objectives one
can effi-ciently find a short-term schedule for crude-oil
operations.
Hybrid PN and Modeling of OperationsWe first present a hybrid PN
and use it to model the process. The concept of a basic PN can be
found in [34], [39], and [40]. The PN used in this work is extended
from a resource-oriented PN devel-oped in [34] and [40]. It is
defined as PN , , , , , ,P T I O M K=^ h where P is a finite set of
places; T is a finite set of transitions,
, ; : { , , , }; :NP T P T I P T O P T0 1 2", + # #f! z z= = ;
:N NM P" " is a marking with M0 being the initial marking;
and : \ { }NK P 0" with ( )K p being the largest number of
-
69June 2015 • Ieee ROBOTICS & AuTOMATIOn MAGAZIne •
tokens that place p can hold at a time. With colors being
intro-duced, a colored PN is formed. One can find the transition
en-abling and firing rules in [26] and [34].
We use a hybrid colored-timed PN (CTPN) to model the system,
which is defined as CTPN ( , ,P P T T TD C D T C, , ,=, , , ),I O
M0U where PD and PC denote finite sets of discrete
and continuous places, respectively; , ,T TD T and TC denote
fi-nite sets of discrete, timed, and continuous transitions,
respec-tively; I and O denote input and output relations,
respectively;
( )pU and ( )tU represent the color sets in P and ,T
respec-tively; and M0 is the initial marking. Figure 2 shows the
icons used in our model.
A token in p PD! has the same meaning as a basic PN. A token p
PC! indicates that there is oil in the tank modeled by p and its
volume is given in a real number (called token vol-ume for short).
A t TD! or t TT! acts like the one in a basic PN. When a t TC!
fires, oil is moved from one place to an-other, and its flow rate
is decided by an OD. The firing dura-tion of transition t TC!
determines if the token is completely removed from its input place.
Next, we present the PN mod-ules for tanks and a pipeline.
Modeling the DevicesDue to a charging-tank-switch-overlap
constraint, the behavior of a storage tank is different from that
of a charging tank; there-fore, they have different models. The
model for the former is shown in Figure 3(a), in which we have ( )
,K p 1=
.p P PD C,6 ! Two places p Ps C! and p Pc C! are used to model a
tank’s state. When ( )M p 1s = or ( ) ,M p 1c = it means that the
tank has oil in it. ( )M p 1s = indicates that the oil in the tank
is not ready to be discharged. Only when both ( )M p 1c = and ( )M
p 0s = is the oil in a tank ready to be discharged. Transitions t
Tf C! and t TC! are used to model the charging and discharging of a
tank, respectively. Transition t Td T! mod-els the oil residency
time constraint. By ,t Td T! it guarantees that the oil must stay
in ps for a time associated with td after charging the tank ends.
After firing td ends, the token in ps goes into ,pc leading to the
enabling of ,t which means that the oil in the tank can be
discharged. Since ( ) , ,M p p P1 D0 3 3 != at any time, at most
one of transitions , ,t tf d and t can fire, which guar-antees that
charging and discharging a tank at the same time cannot occur. The
inhibitor arc ( , )p ts and self-loop between p3 and td further
ensures that the oil residency time constraint is satisfied. The
token volume associated with the token in p PC1 ! is used to model
the available capacity of the tank at a marking .M With this model,
the dynamic behavior of a storage tank is well modeled.
Now let us augment the model in Figure 3(a) to obtain the PN
model for a charging tank by adding a charging-tank-switch-overlap
constraint. Assume that a distiller is being fed by charging tank
(CTK) CTK1, and it is followed by CTK2. Using the
charging-tank-switch-overlap constraint during period ,ovrx the
distiller should be fed by both CTK1 and CTK2 simultane-ously with
oil amount 1c and ,2c respectively. Assume that the oil residency
time is .W Let / ( ),1 1 2c c cD = +
/ ( ),2 1 2c c cK = + and .X W D= + To model this
constraint,
the process is treated not just as a constraint, but the process
is scheduled so that the oil in CTK2 that is fed into the distiller
is ready for discharging at least D time units earlier than ,W and,
after being emptied, CTK1 is recharged at least K time units later.
Therefore, this constraint can be met when an appropriate schedule
is implemented. To model this mechanism, ,p PC2 !
,t Th T! inhibitor arc ( , ),p t f1 and a self-loop between p3
and th are added to Figure 3(a) to form the PN model shown in
Fig-ure 3(b). At the same time, X and D time units are associated
with td and ,th respectively.
The PN model for the pipeline with three different oil seg-ments
is shown in Figure 4. Places ,p PC1 ! ,p PC2 ! and p PC3 ! model
the three segments, and t TD1 ! and t TD2 ! are used to connect
these places in a serial way. Transitions t TI C1 ! to t TIk C! and
t TO C1 ! to t TOk C! are used to model oil flowing into and out of
the pipeline. Let
{ , , }T t tI I Ik1 f= and { , , }T t tO O Ok1 f= be the sets of
input and output transitions of the pipeline. The firing of
, { , , , },t i k1 2Oi f! continuously consumes the token volume
in ,p1 until ( ) .M p 01 = According to the transition enabling and
firing rules, then t1 fires immediately, resulting in the token in
p2 and its whole volume being moved into .p1 This way the
transition t TOi O! can continuously fire. When a transition , { ,
, , }t i k1 2Ii f! fires, a token goes into p3 imme-diately. The
continuous firing of tIi results in the continuous
Figure 2. The icons used in the PN model.
Discrete Place
Continuous Place
Continuous Transition
Timed Transition
Discrete Transition
Figure 3. The PN modules for tanks.
tftf
td
ps
pcpc
td th
tt
psp3
(a) (b)
p1
p3
p1
p2
-
70 • IEEE ROBOTICS & AUTOMATION MAGAZINE • JUNE 2015
increase of the token volume in .p3 To make the model be-have
correctly, we allow only one transition in TI to fire at a time,
and, if one transition in TI is firing, only one transition in TO
should fire. The number of continuous places in the model shown in
Figure 4 represents the number of oil segments. We can set this
number as the largest one that may occur. Since the rate for
flowing into and from the pipeline must be same, the pipeline can
be abstracted by a macro transition .y By doing so, p1 in y can be
denoted as ( ) .p y1 In this model, when y fires, one fires a
transition in TI and another in TO with the same rate at the same
time. Based on the PN models for the devices, we construct the PN
model for the entire system.
Modeling a Whole SystemWhen we model the whole system we focus
on its model structure using prior-developed modules. Thus, for the
sake of easy visualization, we omit some unimportant elements,
e.g., p3 and its associated arcs, and ( , )p ts in a tank PN
module. We use a simple system to illustrate the modeling process
(shown in Figure 5). The system is configured with a tanker, one
dock, two storage tanks, two charging tanks, and two distillers for
crude-oil operations. In this model, p0 models a tanker with H
tokens, meaning that the tanker carries H oil types. Place p1
represents the dock and a token in it implies that there is an oil
type in the tanker that is ready to be unloaded. By this model, a
token can only be moved into p1 by firing t1 if
( ) ,M p 01 = which models the requirement that only one oil
type can be unloaded at a time. Since the pipeline modeled by y
discharges a storage tank and charges a charging tank, y is the
discharging and charging transition for storage tanks and charging
tanks, respectively. Thus, in the model, { , , , , , }t t y p p pf
d s c1 1 1 1 11 and { , , , , , }t t y p p pf d s c2 2 2 2 21 are
for the two storage tanks, while { , , , , , , , }y t t t p p p pd
h s c3 3 3 3 3 31 32 and { , , , , , , , }y t t t p p p pd h s c4 4
4 4 4 41 42 are for the two charging tanks,
respectively. We use p3 and p4 to model the two distillers. A
token in p3 or p4 means that the corresponding distiller is
working. By defining the colors in the model, only a suitable token
can go into p3 or p4 by firing t3 or .t4
With the PN model shown in Figure 5, the structure of the
process is well described. However, the detailed dynam-ics of oil
flow is not modeled. To do so, let ( )M p be the number of tokens
in p regardless of the token color, { the color of a token for an
oil type, ( ( ))V M p the amount of oil in ,p and ( ( , ))V M p i{
the amount of oil type i with color
.i{ Then, the dynamical behavior can be exactly described by
defining the transition enabling and firing rules seen in [26],
[31]–[33], and [35].
In summary, the operational requirements and constraints are
guaranteed by the model structure, transition enabling and firing
rules. However, the constraint that any distiller should op-erate
uninterruptedly has not been modeled yet. Thus, the live-ness
definition of a model is needed to ensure that the last constraint
is met. Let Pdsl be the set of places modeling the dis-tillers in
the model and assume that .P hdsl =
Definition 3.2A PN model for a process of crude-oil operations
is said to be live if, at any time, there is at least a ,t p p
Pdsli i i6! !: that is firing or enabled and { } { } { } ,t t th1
2+ + + Qf = where pi: is the set of the input transitions of
.pi
A hybrid PN is made live if it can be properly controlled by ODs
that form a complete short-term schedule. With this nota-tion, we
are now ready to derive the schedulability conditions.
Schedulability ConditionsFor crude-oil operations, a short-term
schedule is formed by an unknown number of ODs. The execution of an
OD, implying that its corresponding operation is executed or the
transition is fired in the model, transforms the state of the
system to another. Although there may be several ODs that are being
executed si-multaneously in the system, the PN model shows that,
with each OD being deterministic, the state of the system can be
easily cal-culated when its execution ends. Thus, when the system
is con-trolled by a schedule, it evolves in a way that the ODs are
executed one by one and the system evolves from one state to
another. At the initial state ,S0 after OD1 is executed, the system
reaches .S1 Then OD2 is executed and S2 is reached. Finally, n ODs
are executed, yielding .Sn
Definition 3.3A state is said to be infeasible if the system
violates at least one of the constraints. This state corresponds to
a marking in the PN model of a system that either violates the
transi-tion enabling and firing rules or is a nonlive state
according to Definition 3.2. For example, the model may reach a
state at which an OD is performed to discharge a nonready tank, or
no appropriate OD can be performed for feeding a dis-tiller. It
follows from the PN model that a state of the pro-cess is either
feasible or infeasible. Then, an unsafe state is defined as
follows.Figure 5. The PN model for a simple system.
H
t1
t1f t1d
t2dt2f
p0 p1
p11
p1cp2c
p21
p42 p41
t3h t3 t5p3
t4 t6p4
t4d
t4h
p4st3dp3s
p4cp3c
p32 p31
p1sp2s
y
H
t1
t1f t1d
t2t dt2t f
p0 p1
p11
p1cp2c
p21
t3h t3 t5p3
t4t t6p4
t4dt
t4t h
p4st3dp3s
p4cp3cp1s
p2s
y
Figure 4. The PN module for a pipeline.
tIk
t2 t1
tI1 tO1
p3p2 p1
tOk
y
-
71June 2015 • Ieee ROBOTICS & AuTOMATIOn MAGAZIne •
Definition 3.4Assume that by starting from initial state ,S0
after OD1, OD2, …, and ODi are executed, at time ,x a system
reaches state Si that is feasible. Then, Si is unsafe if, with Si
being an initial sate, an infeasible state is finally reached no
matter what ODs are performed.
By Definition 3.4, the states of the system are divided into two
mutually exclusive categories: safe and unsafe states. Thus, if the
execution of any OD in a schedule transforms the pro-cess from one
safe state to another, the schedule must be feasi-ble. In addition,
if the state of the process is safe at any time, there must be a
feasible short-term schedule. Thus, to schedule the crude-oil
operations, we need to identify the set of safe states using the
developed hybrid PN model.
Since the operation of any distiller cannot be terminated, a
feasible schedule SCHD {OD ,OD , ,OD }n1 1 2 f= that is found for a
time duration ,a06 @ does not mean that one can find a feasible
schedule SCHD {OD ,OD , ,OD ,n2 1 2 f= OD , ,OD }kn n1 f+ + with
SCHD SCHD1 21 for time dura-tion ,b06 @ with .b a2 For a process
with initial state ,S0 if a feasible short-term schedule can be
found for a time duration
[ , ],0 3C = then this process is schedulable.
Definition 3.5If a process with S being the initial state is
schedulable, then S is safe for the process. By Definition 3.5,
safeness is equivalent to schedulability. Therefore, based on the
hybrid PN model, one can analyze its schedulability. Let DS i
denote distiller i with an oil feeding rate of ,fdsi let CTK j
denote charging tank j with ca-pacity jp and initial volume jg of
oil in it, let F ( )MAXp be the maximal oil flow rate of the
pipeline, and ,fdsii #a X= where X and K are as given above. It
should be pointed out that, when a refinery is scheduled, the
maximal productivity is ideal. To maximize productivity, we should
have enough oil in the storage tanks or in the coming tankers.
Thus, the key to finding a feasible schedule is to properly decide
the ODTs for oil trans-portation and ODFs for distiller feeding.
Then, based on the hy-brid PN model developed for the system, we
derive the following schedulability conditions [33].
For a process of crude-oil operations composed of K distill-ers
DS K1- with ,f f fds ds dsK1 2 f! ! ! the system is schedula-ble if
the following conditions are met:
● There are K3 charging tanks CTK K1 3- with their capacity b e
i n g , , , , ,2 2 2 2i i1 1 2 1 3 1 3 1 1f$ $ $ $p a p a p a p a+
+
,2 ( )i i i3 2 1 3 1$ $p a p+ + + , .i K1 1i 1 # #a -+ ● .F f f(
) ds dsKMAXp 1 f= + + ● At the initial state, the amount of oil
type 1 in CTK1 and
CTK2 is 1 1g a= and , ,22 1 fg a= the amount of oil in CTK i3 1+
and CTK i3 2+ is i i3 1g a=+ and ,2i i3 2g a=+
, ,i K1 1 0< i3 3 3# g g- = =+ i K1 1< # - the oil in CTK
,CTK ,i1 3 1+ ,i K1 1< # - can be discharged for feed-ing
distillers, and CTK3 is ready for charging.
● ( ) .f f 2ds dskkK
1 11
$ K X K-=
-` j/These conditions require that f fds ds1 2 f! ! ,fdsK!
but this does not pose a restriction on the system. In fact, a
process is much easier to schedule if we have fds1 = .f fds dsK2 f=
= Condition 2 indicates that the
maximum production rate is .F ( )MAXp The initial condi-tion i
ig a= means that, when one charges a charging tank volume, i ig a=
should be charged into it, which is the boundary for schedulabilty.
In reality, a tank’s capaci-ty is much larger than .i ig a= Thus,
to reduce the num-ber of oil-type switches in performing the ODTs
and the number of charging tank switches in performing the ODFs,
when we charge a charging tank it should charge as much oil as
possible. Using this method, we can easily satisfy constraints.
For the case of ( ),f f 2ds dskkK
1 11
$ K X K-=
-` j/ assume that ,2X K= and there are four distillers, i.e., .K
4= Then, it requires ( ) .f f f f 3ds ds ds ds1 2 3 4$ + + It
always holds, as one can take the largest one as .fds1 Furthermore,
if it requires that a charging tank that is assigned for feeding
distiller DS1 is charged to ,5 1a we have ( ) ,f f f f 9ds ds ds
ds1 2 3 4$ + + which must hold. In fact, a charging tank’s capacity
is more than that. Using these schedulability conditions, we
discuss how to find a short-term schedule by presenting
computationally efficient techniques. For different situations, the
schedulability condi-tions can be found in [29]–[32] and [35].
1
2
3
Oil Number 3 (27,000) Oil Number 1 (63,000)
Oil Number 2 (55,200)
Oil Number 4 (27,000) Oil Number 5 (55,000) Oil Number 6
(38,000)
020 40 60 80 100 120 140 160 180 200 220 240
Time (h)
Dis
tille
r
Figure 6. An example of a refining schedule.
-
72 • IEEE ROBOTICS & AUTOMATION MAGAZINE • JUNE 2015
Refining SchedulingBy examining the schedulability conditions,
Condition 4 is easy to satisfy. For Conditions 1 and 3, we need to
check the initial state to verify that they are satisfied, which
can be easily done. Then, only Condition 2 needs to be embedded
into the model for the refining scheduling problem. How can this be
done? To answer it, we first introduce a concept called a feed-ing
parcel (FP) of oil.
Definition 3.6Define FP (COT, , , )g a b= as an FP of a
crude-oil type, where COT is the type of oil to be fed to a
distiller; g is the amount of oil to be fed; and a and b are the
time points at which the feeding of this oil parcel starts and
ends, respectively.
For an FP, the feeding rate is / ( )-g b a and it is a constant.
Assume that during the scheduling horizon there are Q FPs for
feeding distiller .i For DS i a refining schedule can be de-noted
as RS FP ,FP , ,FP .iQi i i1 2 f= " , Let / ( )fij ij ij ijg b a= -
denote the feeding rate for FP .ij Then, the refining scheduling
problem for a system with K distillers is to find RS {RS ,1=RS ,
,RS }K2 f that is an ordered set of FPs. A refining sched-ule
example for a three-distiller system is shown in Figure 6.
In solving the refining scheduling problem, the objectives to be
optimized are summarized as follows. The first objective is to
maximize the production rate. Notice that by maximizing
it we minimize crude-oil inventory cost. In crude-oil
opera-tions, different types of crude oil are processed by
different dis-tillers, and sometimes an oil type can be processed
by some of the distillers but not all. The processing of an oil
type by differ-ent distillers results in different processing
effectiveness. Thus, the second objective is to minimize the cost
results from pro-cessing crude-oil types by different
distillers.
Although the refining scheduling problem is a subproblem of the
STSP of crude-oil operations, it is a combinatorial one and is
characterized by the interaction of discrete-event and continuous
processes. To solve this problem, a three-stage method is proposed
as shown in Figure 7. At Stage 1, a linear programming model that
only contains continuous variables is used to determine the feeding
rate for each distiller by max-imizing the production rate. Based
on the result obtained at Stage 1, a transportation problem model
is built to assign crude oil to distillers at Stage 2 so that the
oil-processing effec-tiveness is maximized. By doing so, a number
of crude-oil parcels are formed for each distiller. Stage 3
sequences the parcels for each distiller obtained at Stage 2 to
minimize the number of oil-type switches in performing the ODTs and
charging tank switches in performing the ODFs. Notice that the
problem at Stage 2 is also a purely continuous one. It is well
known that it is more computationally efficient to solve a
transportation problem than to solve a linear programming
problem, which can be solved effi-ciently using commercial
software tools. The problem at Stage 3 is pure-ly discrete and can
be efficiently solved by heuristic rules.
Since tankers arrive at different times, crude oil is available
at differ-ent times. Thus, in refining schedul-ing we divide the
scheduling horizon to form a number of buckets. Let Q be the number
of buckets and BUK { , , , },Q f0 1 ijf= be the feed-ing rate of DS
i during bucket ,j let F ( )MINi and F ( )MAXi be the minimum and
maximum feeding rates for DS i respectively, and F ( )MAXp be the
max-imum flow rate for the pipeline. Then, the problem for Stage 1
can be formulated as follows. The readers can refer to [27] and
[28] for details.
Stage 2 Stage 3Stage 1
ObjectiveMaximization ofProduction Rate
Linear ProgrammingModel
Technique
ObjectiveMaximization of Oil
Processing Effectiveness
Transportation ProblemModel
Technique
ObjectiveMinimization of the
Number of OperationalSwitches
Heuristic RulesTechnique
Stage 2 Stage 3Stage 1
ObjectiveMaximization ofProduction Rate
Linear ProgrammingModel
Technique
ObjectiveMaximization of Oil
Processing Effectiveness
Transportation ProblemModel
Technique
ObjectiveMinimization of the
Number of OperationalSwitches
Heuristic RulesTechnique
Figure 7. The three stages for refining scheduling.
Table 1. A transportation problem model for assigning crude oil
to distillers at Stage 2.
Crude Oil
Distiller 1 Distiller 2 Distiller 3
B1 B2 B1 B2 B1 B2 Pipeline Dummy Supply
Volume of crude oil in the charging tanks
Type 1 C11 C11 C21 C21 C31 C31 M M VC1… … … … … … … M M …
Type H C1H C1H C2H C2H C3H C3H M M VCHVolume of crude oil in the
pipeline
Type 1 C11 C11 C21 C21 C31 C31 M M VP1… … … … … … … M M …
Type H C1H C1H C2H C2H C3H C3H M M VPHVolume of crude oil in the
storage tanks
Type 1 C11 C11 C21 C21 C31 C31 0 0 VS1… … … … … … … 0 0 …
Type H C1H C1H C2H C2H C3H C3H 0 0 VSHVolume of crude oil in the
tanker
Type 1 C11 C11 C21 C21 C31 C31 0 0 VT1… … … … … … … 0 0 …
Type H C1H C1H C2H C2H C3H C3G 0 0 VTHDemand D11 D12 D21 D22 D31
D32 DP DD
-
73June 2015 • Ieee ROBOTICS & AuTOMATIOn MAGAZIne •
Problem P1:Maximize .J fDS ijijQ
0= != // (2)
Subject to
1) , DSF f F i( ) ( )MIN MAXi ij i 6# # ! and BUK.j ! 2) BUK.,f
F jDS ( )MAXiji p 6# !!/3) During any bucket, the oil available for
processing by
each distiller is enough.Notice that, by Constraint 2, the
schedulability condition 2 is
guaranteed. By solving Problem P1, the amount of crude oil
re-quired for processing by each distiller during the scheduling
hori-zon is determined. With crude oil that is available during
each bucket in the charging tanks, pipeline, storage tanks, and
tankers known, the crude oil can be assigned to a distiller using a
trans-portation problem model at Stage 2. To do so, the oil
processing effectiveness of type j by distiller i can be described
by a cost co-efficient .Cij If it is the most effective, Cij is set
small; otherwise it is large. If distiller i is unable to process
crude-oil type ,j a big M is set for it. For a system with three
distillers, two buckets, H oil types, and one tanker, the problem
for Stage 2 can be briefly de-scribed by a transportation problem
model as shown in Table 1, where Dij and Vij denote a demand and
supply, respectively. The readers can refer to [27] and [28] for
further details.
Since a pipeline should be full of oil all the time, this
re-quirement must be met when a schedule is completed at the end of
the scheduling horizon. Thus, crude oil should be as-signed to the
pipeline too. The oil assigned to the dummy rep-resents the
remaining oil in the pipeline at the end of horizon.
Using the results obtained from the problem at Stage 2, the oil
is divided into a number of parcels for each distiller. Notice that
in modeling the problem at Stage 2 the crude oil comes from
different sources and a source is treated as a supplier. However,
for this problem, different sources do not represent different oil
types. Hence, some parcels of crude oil from dif-ferent sources
that are assigned to a same distiller may be the same type.
Therefore, it is profitable to merge parcels with the same oil type
if possible so that the cost resulting from oil-type switches in
oil transportation and charging tank switches in distiller feeding
is reduced. This can be done by checking the available time of each
parcel. Because of the limited number of crude-oil types, one can
do the parcel merging easily. Notice that by doing so we minimize
the number of operational switches, though we cannot ensure an
optimal solution.
Detailed SchedulingSince the schedulability conditions are
modeled as constraints in the refining scheduling problem, the
realizability of an obtained refining schedule is ensured. Then,
given a refining schedule, one needs to find a detailed schedule to
realize it. In a detailed schedule an FPij is realized by a number
of ODs. In other words, an FPij in a refining schedule should be
divided into m ODFs, i.e., ODF ,ODF , ,ij ij1 2 f and ODFijm ,
which should be included in a detailed schedule. By using this
detailed schedule, the schedulability conditions are satisfied.
Since the set of safe states for a system can be identified by
using the schedulability conditions given a refining schedule,
a
detailed schedule can be found. Starting at the initial state, a
charging tank, say CTK1, is released for the first time, one can
as-sign it to feed a distiller, say DS .i It is known from the
given refin-ing schedule that the oil type and amount for FPi1 are
COTi1
SchedulabilityCondition
A ChargingTank CTK
Is Released
AssignCTK to
Distiller DSi
Createan ODT
Create anODF for
DSi
Safe StateSk
Safe State Sk+1
Figure 8. The creation of ODs in finding a detailed
schedule.
Table 2. The costs for processing oil types by differ-ent
distillers.
Distiller 1 Distiller 2 Distiller 3
Crude-oil number 1 1 M M
Crude-oil number 2 M 1 M
Crude-oil number 3 4 10 6
Crude-oil number 4 M 8 3
Crude-oil number 5 M 5 10
Crude-oil number 6 M 8 5
Table 3. Oil in charging tanks at the initial state.
TankCapacity (Ton)
Type of Oil in Tank
Amount (Ton)
Distiller in Feeding
Tank number 129
34,000 Crude-oil number 3
27,000 DS1
Tank number 128
34,000 Crude-oil number 2
30,000 DS2
Tank number 116
34,000 Crude-oil number 4
27,000 DS3
Tank number 117
34,000 Crude-oil number 5
30,000
Tank number 115
34,000 Crude-oil number 5
25,000
Tank number 127
34,000
Tank number 182
20,000
Tank number 180
20,000
Tank number 181
20,000
-
74 • IEEE ROBOTICS & AUTOMATION MAGAZINE • JUNE 2015
and ,i1g respectively. Assume that the available amount of oil
with type COTi1 in the charging tanks is .0g Then, using the
schedu-lability conditions, CTK1 is charged with volume i1 1 0#g g
g- so that the resulting state is safe. ODTi1 is created by setting
COT COT , ,D CTK ,i1 1 1g g= = = and b a- = / .f maxp1g Notice that
a is the moment at which it starts to charge CTK1 so that a and b
are decided. With ODTi1 being created, an ODFi1 for feeding DS i
can be created by feeding volume 1g in CTK1 after feeding volume
.0g This process can repeat and a detailed schedule can be obtained
by creating the ODs one by one in a re-cursive way. Therefore, when
each OD is performed the system is transformed from a safe state to
another safe state. This is done using the derived schedulability
conditions. The process for creat-ing ODs in finding a detailed
schedule is shown in Figure 8.
One key question is how to assign a charging tank that is
available to feed a distiller. To do so, let C j be the capacity of
charging tank ,j KDi the set of charging tanks that are serving for
distiller i at a time, and KDC CKDi jj i= !/ be the sum of capacity
of the charging tanks serving for distiller .i Then, an ef-ficient
heuristic is designed to do so. Using this heuristic, when a
charging tank is released and becomes available, it is assigned to
serve a distiller so that KDC /KDCi k . / ,f fdi dk where fdi and
fdk are the feeding rate of distillers i and k [36],
respectively.
Until now, we have presented the scheduling method. It should be
pointed out that by using the proposed method the obtained solution
may not be globally optimal. However, a good and feasible solution
can be quickly found to meet prac-tical applications.
Industrial Case StudyNow consider a real-life refinery
scheduling scenario from China. This is a three-distiller refinery,
and every ten days it re-quires creating a short-term schedule for
the next ten days. Considering the scheduling horizon, there are
six crude-oil types to be processed. Among the oil types, crude-oil
type num-ber 1 can be processed by only DS ,1 while crude-oil
number 2 can be processed by only DS .2 Any of the distillers can
process crude-oil number 3, but the best distiller is DS ,1 and
then DS ;3 the worst is DS .2 Both DS2 and DS3 can process
crude-oil number 4, number 5, and number 6 with different costs.
These costs are quantified as shown in Table 2, where M for cost
Cij means that distiller DS j cannot process crude-oil number
.i
The refinery has nine charging tanks that are usable for this
horizon. Initially, charging tanks number 129, number 128, num-ber
116, number 117, and number 115 hold a certain amount of oil while
the others are empty. Furthermore, at this state, charging tanks
number 129, number 128, and number 116 are used for feeding DS ,DS
,1 2 and DS ,3 respectively. The oil type and its vol-ume in each
tank are shown in Table 3. The pipeline in this refin-ery has a
capacity of 12,000 tons and is full of crude-oil number 2. The oil
in the storage tanks includes 28,000 tons of oil number 3, 54,000
tons of oil number 2, and 64,000 tons of oil number 1. In addition,
during the horizon, a tanker that carries 132,000 tons of oil
number 6 will arrive. With ,h0sx = only after 96 h one can use the
oil in the tanker for distillation. Therefore, we have two buckets
[0, 96] and [96, 240] for this case problem.
For the three distillers, it is known that the minimum
pro-duction rates are 312.5, 205, and 458 tons/h; and the maximum
production rates are 375, 230, and 500 tons/h, respectively. For
the pipeline, the maximum flow rate is F ( )MAXp =
, tons/h.1 250 The oil residency time and
charging-tank-switch-overlap time are the same (four hours),
leading to 6X = and h,2K = respectively.
According to the schedulability conditions, we find that the
initial state is safe. Hence, by the proposed method, one can find
a feasible short-term schedule. Then, the method presented in
Table 4. The oil to be processed during each bucket.
BucketDistiller 1 (Ton)
Distiller 2 (Ton)
Distiller 3 (Ton)
(0, 96) 36,000 22,080 48,000
(96, 240) 54,000 33,120 72,000
Figure 9. The detailed schedule of distiller feeding for the
case study.
1
2
3
Number 127 Number 129
Number 129 Number 182Oil Number 3 (27,000) Oil Number 2
(63,000)
Number 180Number 128 Number 181
Oil Number 2 (55,200)
Number 117 Number 116
Number 116 Number 115 Number 117Oil Number 4 (27,000) Oil Number
5 (55,000) Oil Number 6 (38,000)
020 40 60 80 100 120 140 160 180 200 220 240
Time (h)
Dis
tille
r
-
75June 2015 • Ieee ROBOTICS & AuTOMATIOn MAGAZIne •
the “Refining Scheduling” section is applied to obtain a
refining schedule. We solve the formulated model for problem P1 and
yield tons/h, tons/h,f f f f375 23010 11 20 21= = = = and f f30 31=
tons/h.500= Notice that, by using this result, the
maximum production rate is reached. Then, with the produc-tion
rate decided for each distiller during each bucket, the amount of
crude oil to be processed by each distiller is calculated as shown
in Table 4.
Based on the results obtained from Stage 1, the transporta-tion
problem model at Stage 2 can be easily formed and solved, and a
number of oil parcels are obtained for each distiller. The oil
parcels that have the same oil type are then merged at
Stage 3, yielding a refining schedule as shown in Figure
6.
With the obtained refining schedule and the schedulability
conditions, we use the method presented in the “Detailed
Scheduling” section and the heuristic given in [36] to find a
detailed schedule. For this schedule, the ODFs for distiller
feeding and the ODTs for charging tank filling are shown by Gant
charts in Figures 9 and 10, respectively. By observing the obtained
schedule, one can conclude that all the constraints, including
crude-oil residency time and charging-tank-switch-overlap
constraints, are satisfied. Notice that, for the refining
scheduling problem, we aim at maximizing the productivity using a
linear programming formulation presented in the “Refining
Scheduling” section. Hence, for the obtained sched-ule, the
production rate is maximal [27], [28]. In addition, from the
obtained result, when a charging tank is charged according to an
ODT, it is charged to capacity. By doing so, the number of oil-type
switches in performing ODTs for oil trans-portation and the number
of charging tank switches in per-forming ODFs for distiller feeding
are minimized.
ConclusionsA refinery is a large-scale and complex system
containing both discrete-event and continuous operations. Its
scheduling prob-lem is essentially combinatorial and extremely
challenging. Due to its continuous processes, the jobs to be
scheduled are not de-fined and unknown at the beginning of the
process. Therefore, they need to be defined and sequenced during a
scheduling pro-cess. Such a feature disables heuristics and
metaheuristics meth-ods that are widely used to schedule discrete
manufacturing processes. Prior studies attempted mathematical
programming methods to study its STSP. However, because of the huge
com-putation requirement, they are not applicable to real-life
applica-tions. To solve this challenging problem, instead of
using
mathematical programming methods, this article proposes a
control-theoretic approach to the STSP of crude-oil operations.
Using the proposed method, a hybrid PN is developed to model the
system. Based on this model, schedulability conditions are derived
by analyzing the schedulabilty of the process in the view of
control theory. After obtaining the schedulability conditions, we
successfully decompose the problem into tractable subprob-lems and
solve them in a hierarchical way. By doing so, the inter-action of
discrete-event and continuous variables is decoupled with each
subproblem having either continuous or discrete vari-ables but not
both. For subproblems with continuous variables, linear
programming-based techniques can be used; however, for those with
discrete variables, heuristics can be applied. Thus, the problem
can be efficiently solved and the proposed approach is applicable
to solve real-life problems. This is the first time such an
efficient method for this problem has existed to the best knowledge
of the authors.
There are several promising future research directions: to
extend the proposed approach to other scheduling problems in the
process industry, e.g., steel production and food pro-cessing; to
develop software tools like Process Industry Mod-eling System at
the planning level for the commercialization of the proposed
methodology; and to incorporate some recent developments from big
data and sustainable produc-tion into the proposed method.
AcknowledgmentsThis work is supported in part by the FCDT of
Macau under grants 065/2013/A2 and 066/2013/A2, and the NSF of
China under grant 61273036.
References[1] X. Chen, I. Grossmann, and L. Zheng, “A
comparative study of continuous-time models for scheduling of crude
oil operations in inland refineries,” Comput. Chem. Eng., vol. 44,
pp. 141–167, Sept. 2012.[2] C. A. Floudas and X. Lin,
“Continuous-time versus discrete-time ap-proaches for scheduling of
chemical processes: A review,” Comput. Chem. Eng., vol. 28, no. 11,
pp. 2109–2129, 2004.[3] N. F. Giannelos and M. C. Georgiadis, “A
simple new continuous-time for-mulation for short-term scheduling
of multipurpose batch processes,” Ind. Eng. Chem. Res., vol. 41,
no. 9, pp. 2178−2184, 2002.[4] K. Glismann and G. Gruhn,
“Short-term scheduling and recipe optimization of blending
processes,” Comput. Chem. Eng., vol. 25, pp. 627–634, May 2001.[5]
Y. He and C.-W. Hui, “A binary coding genetic algorithm for
multi-purpose pro-cess scheduling: A case study,” Chem. Eng. Sci.,
vol. 65, no. 16, pp. 4816−4828, 2010.
Figure 10. The detailed schedule of charging tank filling.
Number 2 Number 1 Number 1Number 180 Number 181 Number 127
Number 182
020 40 60 80 100 120 140 160 180 200
Number 2
Time (h)
Number 6 Number 1 Number 2Number 116 Number 117 Number 129
Number 128
Number 3Number 127
Number 6
-
76 • IEEE ROBOTICS & AUTOMATION MAGAZINE • JUNE 2015
[6] Z. Jia, M. Ierapetritou, and J. D. Kelly, “Refinery
short-term scheduling using continuous time formation: Crude oil
operations,” Ind. Eng. Chem. Res., vol. 42, no. 13, pp. 3085–3097,
2003. [7] Z. Jia and M. Ierapetritou, “Efficient short-term
scheduling of refinery op-erations based on a continuous time
formulation,” Comput. Chem. Eng., vol. 28, pp. 1001–1019, June
2004.[8] R. Karuppiah, K. C. Furmanb, and I. E. Grossmann, “Global
optimization for scheduling refinery crude oil operations,” Comput.
Chem. Eng., vol. 32, no. 11, pp. 2745–2766, 2008. [9] E. Kondili,
C. C. Pantelides, and R. W. H. Sargent, “A general algorithm for
short-term scheduling for batch operations-I. MILP formulation,”
Comput. Chem. Eng., vol. 17, no. 2, pp. 211–227, 1993.[10] G. A.
Kudva, A. Elkamel, J. F. Pekny, and G. V. Reklaitis, “A heuristic
algo-rithm for scheduling multiproduct plants with production
deadlines, intermedi-ate storage limitations, and equipment
changeover cost,” Comput. Chem. Eng., vol. 18, no. 9, pp. 859–875,
1994. [11] H. Lee, J. M. Pinto, I. E. Grossmann, and S. Park,
“Mixed integer linear pro-gramming model for refinery short-term
scheduling of crude oil unloading with inventory management,” Ind.
Eng. Chem. Res., vol. 35, no. 5, pp. 1630–1641, 1996.[12] W. K. Li,
W. H. Chi, and B. Hua, “Scheduling crude oil unloading, storage,
and processing,” Ind. Eng. Chem. Res., vol. 41, no. 26, pp.
6723–6734, 2002.[13] B. Liu, L. Wang, Y. Liu, B. Qian, and Y.-H.
Jin, “An effective hybrid parti-cle swarm optimization for batch
scheduling of polypropylene processes,” Comput. Chem. Eng., vol.
34, nos. 4–5, pp. 518−528, 2010.[14] D. C. Mattfeld and C.
Bierwirth, “An efficient genetic algorithm for job shop schedul-ing
with tardiness objectives,” European J. Oper. Res., vol. 155, no.
2, pp. 616–630, 2004.[15] C. A. Mendez, I. E. Grossmann, I.
Harjunkoski, and P. Kabore, “A simul-taneous optimization approach
for off-line blending and scheduling of oil-re-finery operations,”
Comput. Chem. Eng., vol. 30, no. 4, pp. 614–634, 2006.[16] L. F. L.
Moro, “Process technology in the petroleum refining
industry—Current situation and future trends,” Comput. Chem. Eng.,
vol. 27, nos. 8–9, pp. 1303–1305, 2003. [17] S. Mouret, I. E.
Grossmann, and P. Pestiaux, “Time representations and mathematical
models for process scheduling problems,” Comput. Chem. Eng., vol.
35, no. 6, pp. 1038–1063, 2010.[18] M. Pan, X. Li, and Y. Qian,
“New approach for scheduling crude oil opera-tions,” Chem. Eng.
Sci., vol. 64, no. 5, pp. 965–983, 2009.[19] J. M. Pinto, M. Joly,
and L. F. L. Moro, “Planning and scheduling models for refinery
operations,” Comput. Chem. Eng., vol. 24, no. 9, pp. 2259–2276,
2000.[20] R. Rejowski and J. M. Pinto, “Scheduling of a
multiproduct pipeline sys-tem,” Comput. Chem. Eng., vol. 27, nos.
8–9, pp. 1229–1246, 2003.[21] I. Sabuncuoglu and M. Bayiz, “Job
shop scheduling with beam search,” Eur. J. Oper. Res., vol. 118,
no. 2, pp. 390–412, 1999.[22] G. K. D. Saharidisa, M. Minoux, and
Y. Dallery, “Scheduling of loading and unloading of crude oil in a
refinery using event-based discrete time for-mulation,” Comput.
Chem. Eng., vol. 33, no. 8, pp. 1413–1426, 2009.[23] N. Shah,
“Mathematical programming techniques for crude oil schedul-ing,”
Comput. Chem. Eng., vol. 20, suppl. S1227–1232, 1996.[24] N. K.
Shah, Z. Li, and M. G. Ierapetritou, “Petroleum refining
operations: Key is-sues, advances, and opportunities,” Ind. Chem.
Eng. Res., vol. 50, pp. 1161–1170, 2011.[25] N. Shah, G. K. D.
Saharidis, Z. Jia, and M. G. Ierapetritou,
“Centralized–decentralized optimization for refinery scheduling,”
Comput. Chem. Eng., vol. 33, no. 12, pp. 2091–2105, 2009.[26] N. Q.
Wu, L. P. Bai, and C. B. Chu, “Modeling and conflict detection of
crude-oil operations for refinery process based on
controlled-colored-timed Petri net,” IEEE Trans. Syst. Man, Cybern.
C, vol. 37, no. 4, pp. 461–472, 2007.
[27] N. Q. Wu, L. P. Bai, M. C. Zhou, F. Chu, and S. Mammar, “A
novel ap-proach to optimization of refining schedules for crude oil
operations in re-finery,” IEEE Trans. Syst. Man, Cybern. C, vol.
42, no. 6, pp. 1042–1053, 2012.[28] N. Q. Wu, L. P. Bai, and M. C.
Zhou, “An efficient scheduling method for crude oil operations in
refinery with crude oil type mixing requirements,” IEEE Trans.
Syst. Man, Cybern. Syst., 2015, to be published, DOI:
10.1109/TSMC.2014.2332138. [29] N. Q. Wu, F. Chu, C. B. Chu, and M.
C. Zhou, “Short-term schedulability analysis of crude oil
operations in refinery with oil residency time constraint using
Petri net,” IEEE Trans. Syst. Man, Cybern. C, vol. 38, no. 6, pp.
765–778, 2008.[30] N. Q. Wu, F. Chu, C. B. Chu, and M. C. Zhou,
“Short-term schedulability analysis of multiple distiller crude oil
operations in refinery with oil residency time constraint,” IEEE
Trans. Syst. Man, Cybern. C, vol. 39, no. 1, pp. 1–16, 2009.[31] N.
Q. Wu, F. Chu, C. B. Chu, and M. C. Zhou, “Hybrid Petri net
modeling and schedulability analysis of high fusion point oil
transportation under tank grouping strategy for crude oil
operations in refinery,” IEEE Trans. Syst. Man, Cybern. C, vol. 40,
no. 2, pp. 159–175, 2010.[32] N. Q. Wu, F. Chu, C. B. Chu, and M.
C. Zhou, “Tank cycling and schedul-ing analysis of high fusion
point oil transportation for crude oil operations in refinery,”
Comput. Chem. Eng., vol. 34, no. 4, pp. 529–543, 2010b.[33] N. Q.
Wu, C. B. Chu, F. Chu, and M. C. Zhou, “Schedulability analysis of
short-term scheduling for crude oil operations in refinery with oil
residency time and charging-tank-switch-overlap constraints,” IEEE
Trans. Automat. Sci. Eng., vol. 8, no. 1, pp. 190–204, 2011.[34] N.
Q. Wu and M. C. Zhou, System Modeling and Control with
Resource-Oriented Petri Nets. Boca Raton, FL: CRC Press and New
York: Taylor & Francis Group, Oct. 2009.[35] N. Q. Wu, M. C.
Zhou, L. P. Bai, and Z. W. Li, “Short-term scheduling of crude oil
operations in refinery with high fusion point oil and two
transportation pipel ines,” Enterprise Inform. Syst ., 2015, to be
published, DOI: 10.1080/17517575.2014.948936. [36] N. Q. Wu, M. C.
Zhou, and F. Chu, “A Petri net based heuristic algorithm for
realizability of target refining schedule for oil refinery,” IEEE
Trans. Automat. Sci. Eng., vol. 5, no. 4, pp. 661–676, 2008.[37] S.
Yadav and M. A. Shaik, “Short-term scheduling of refinery crude oil
op-erations,” Ind. Chem. Eng. Res., vol. 51, no. 27, pp. 9287–9299,
2012.[38] U. Yuzgee, A. Palazoglu, and J. A. Romagnoli, “Refinery
scheduling of crude oil unloading, storage and processing using
model predictive control strategy,” Comput. Chem. Eng., vol. 34,
no. 10, pp. 1671–1686, 2010.[39] M. C. Zhou and K. Venkatesh,
Modeling, Simulation and Control of Flexible Manufacturing Systems:
A Petri Net Approach. Singapore: World Scientific, 1998.[40] N. Q.
Wu, M. C. Zhou, and Z. W. Li, “Resource-oriented Petri net for
deadlock avoidance in f lexible assembly systems,” IEEE Trans.
Syst. Man, Cybern. A, vol. 38, no. 1, pp. 56–69, 2008.
NaiQi Wu, Macau University of Science and Technology, Macau, and
Guangdong University of Technology, Guangzhou, China. E-mails:
[email protected], [email protected].
MengChu Zhou, New Jersey Institute of Technology, Newark, New
Jersey, and Tongji University, Shanghai, China. E-mail:
[email protected].
ZhiWu Li, Macau University of Science and Technology, Macau;
King Abdulaziz University, Saudi Arabia; and Xidian Univeristy, Xi
an, China. E-mails: [email protected], [email protected].
-
本文献由“学霸图书馆-文献云下载”收集自网络,仅供学习交流使用。
学霸图书馆(www.xuebalib.com)是一个“整合众多图书馆数据库资源,
提供一站式文献检索和下载服务”的24 小时在线不限IP
图书馆。
图书馆致力于便利、促进学习与科研,提供最强文献下载服务。
图书馆导航:
图书馆首页 文献云下载 图书馆入口 外文数据库大全 疑难文献辅助工具
http://www.xuebalib.com/cloud/http://www.xuebalib.com/http://www.xuebalib.com/cloud/http://www.xuebalib.com/http://www.xuebalib.com/vip.htmlhttp://www.xuebalib.com/db.phphttp://www.xuebalib.com/zixun/2014-08-15/44.htmlhttp://www.xuebalib.com/
Short-Term Scheduling of Crude-Oil Operations: Enhancement of
Crude-Oil Operations Scheduling Using a Petri Net-Based
Control-Theoretic Approach学霸图书馆link:学霸图书馆