A Genetic Algorithm Approach To Short-Term Scheduling of Crude Oil Operations in Refinery
A Genetic Algorithm Approach To Short-Term Scheduling of Crude Oil Operations in Refinery
A Genetic Algorithm Approach To Short-Term Scheduling of Crude Oil Operations in Refinery
Paper
As a type of process plant, a refinery is characterized by the interaction of discrete events and continuous processes. To
schedule crude oil operations in a refinery, it is necessary to define and schedule the jobs simultaneously such that heuristics
and meta-heuristics cannot be directly applied. It is very challenging to schedule crude oil operations. To solve this problem, it
is decomposed into two subproblems hierarchically. At the upper level, a refining schedule is found, while at the lower level a
detailed schedule is obtained to realize the refining schedule. Given a refining schedule at the upper level, this paper studies the
detailed scheduling problem at the lower level. Based on a control-theoretic perspective, the problem is innovatively transformed
to a problem of assigning charging tanks to distillers such that meta-heuristic methods can be applied. Then, a genetic algorithm
(GA) approach is developed to solve the problem. In realizing the proposed GA, based on a set of existence conditions of a
feasible schedule, methods are presented to guarantee that each chromosome corresponds to a feasible schedule. An industrial
case study is used to show the application of the proposed method. It shows that the method works well and is applicable to
real-life problems. © 2016 Institute of Electrical Engineers of Japan. Published by John Wiley & Sons, Inc.
© 2016 Institute of Electrical Engineers of Japan. Published by John Wiley & Sons, Inc.
Y. HOU, N. WU, AND Z. LI
we assume that there is enough storage capacity in storage tanks Property 2 : By the OTR, given a realizable refining schedule,
to unload crude oil from tankers. Also, by assumption, a given a detailed schedule is determined by the assignment of charging
refining schedule is realizable, which implies that there is enough tanks.
crude oil in the storage tanks for realizing the schedule such that Proof : Assume that, at state Zk , charging tank TK h is released
when an ODT is created, one can omit variable S (a storage tank) and assigned to serve for feeding DS i , which results in the creation
in it. Thus, the key is how to transport crude oil from storage tanks of ODT ih . Then, one knows how much oil has been fed into DS i
to charging tanks. Let
denote the oil residency time, and fpmax and how much oil is for feeding DS i in the charging tanks at
and fi be the maximum flow rate of the pipeline and the feeding that time. The FP ij that is partially realized by ODT ih and the
rate of Distiller i decided by the refining schedule, respectively. remaining volume ζ1 for FP ij to be transported from the storage
Then, we have the following property. tanks to charging tanks are known too. Further, assume that, in
Property 1: Given a realizable refining schedule, a feasible creating ODT ih , at most volume ζ2 of oil can be transported such
detailed schedule to realize the refining schedule can be found that the resulting state Zk +1 is safe. According to the schedulability
by determining the ODs one by one in a recursive way by using conditions, if one sets ζh ≤ ζ2 in creating ODT ih , the resulting
the schedulability conditions in Refs. [25,27,34]. state is still safe. Thus, in creating ODT ih , by applying OTR we
Proof : By assumption, the given refining schedule is realizable, set ζh = min(ζ1 , ζ2 ). This implies that every time a charging tank
or at initial state Z0 , Conditions (i) and (iii) are satisfied. By is assigned to serve a distiller, an ODT is determined and followed
starting from Z0 , when, for the first time, a charging tank, say Tank by an ODF. In this way, if a charging tank assignment sequence is
#1 denoted as TK 1 , is released, one can decide to assign it to serve determined, a detailed schedule to realize a given refining schedule
for feeding a distiller, say Distiller i denoted as DS i by using the is determined.
schedulability conditions. Given a refining schedule, the oil type Property 2 shows that the detailed scheduling problem can be
and volume for FP i 1 are COT i 1 and ζi 1 , respectively. Assume that solved by determining the charging tank assignment sequence in a
the volume of oil with type COT i 1 in the charging tanks is ζ0 . At dynamic way. It should be pointed out that, when a charging tank
the same time, we can charge TK 1 with volume ζ1 ≤ ζi 1 –ζ0 such TK h is released, it can be assigned to serve different distillers, and
that the resulting state is safe and the end time of charging TK 1 is the volume and type of oil to be transported from the storage tanks
earlier than ζ0 /fi –
. In this way, an ODT i 1 is created by setting to TK h in creating the ODT ih are different as well, which results
COT = COT i 1 , ξ = ζ1 , D = TK1 , and b –a = ζ1 /fpmax . Notice that in different performance. Assume that before the release of TK h ,
a is the moment when TK 1 becomes empty. In this way, a and the oil type in it is #1. If it is assigned to DS i , it is charged with oil
b are decided. With ODT i 1 created, an ODF i 1 for feeding DS i type #2. However, if it is assigned to DS j , it may be charged with
can be created by feeding volume ζ1 in TK 1 after feeding volume oil type #3. This implies that different charging tank assignments
ζ0 . Then, after some time, TK 2 is released and assigned to serve result in different cost for Objective (d). With this observation, we
for feeding DS i again. Hence, ODT i 2 is created for charging TK 2 have the following property.
with ζ2 , and ODF i 2 is created for feeding DS i by TK 2 . In this Property 3: Given a realizable refining schedule, the detailed
way, one can create ODT i 1 , ODT i 2 , . . . , and ODT ig such that scheduling problem is equivalent to finding an optimal charging
ζ1 + ζ2 + . . . + ζg = ζi 1 –ζ0 . Then, when charging tank TK g+1 is tank assignment sequence by using the schedulability conditions.
assigned for feeding DS i , ODT i (g+1) is created to charge TK g+1
By Property 3, the detailed scheduling problem of crude oil
with oil type COT i 2 for FP i 2 and volume ζg+1 ≤ ζi 2 such that
operations is converted to sequencing the charging tank assign-
the end time of charging TK g+1 is earlier than ζi 1 /fi –
. Based
ment. With the charging tanks being a kind of resources in a
on the schedulability conditions, this process continues such that,
refinery, this problem is a resource assignment problem, which
given a DS i , every FP ij is realized by a number of ODTs and
is somehow similar to the scheduling problem of discrete man-
ODFs. Similarly, for any DS k , every FP kj can be realized in this
ufacturing processes. Notice that the oil to be processed and the
way. Notice that every OD is created based on the state resulted
tanks available are known at the beginning. Further, sequencing a
from the execution of the previous OD. By doing so, the ODs are
set of resources is an optimization problem for a discrete manufac-
created one by one in a recursive way.
turing system. Hence, meta-heuristics can be used, or we make the
By Property 1, given a refining schedule, one can find a feasible
short-term scheduling problem of crude oil operations solvable by
detailed schedule in a simple way without solving a mixed integer
meta-heuristics. In this way, we overcome the challenging problem
programming problem. It follows from the proof of Property 1
that meta-heuristics are not applicable to the original short-term
that, when a charging tank is available and is assigned for feeding
scheduling problem of crude oil operations. Since GA is powerful
a distiller, an ODT is created. Then, based on the ODT, an ODF is
in combinatorial optimization, based on this problem conversion,
created. In this way, to find a detailed schedule, the key is to assign
the charging tanks. In creating an ODT for a distiller, to realize a a GA method is presented to solve the problem next.
given refining schedule, the type of oil is already determined and
the variable to be decided is the volume of oil to be charged into 4. Genetic Algorithm for Solution
the charging tank. We present the following rule to determine the
volume for creating an ODT. From the above analysis, the short-term scheduling problem of
Oil transportation rule (OTR): Assume that, at state Zk , charg- crude oil operations is converted to another optimization problem,
ing tank TK h is released and assigned to serve for feeding Distiller i.e. the charging tank assignment and sequencing problem to
i , resulting in the creation of ODT ih to transport volume ζh of oil minimize Objectives (c)–(e). When a charging tank is released,
from the storage tanks to TK h . Then, ζh is set as large as possible it can be assigned to serve for feeding any of distillers if the
such that the resulting state Zk +1 after the execution of ODT ih is schedulability conditions are satisfied. Given a refining schedule,
safe. once such a decision is made, by using the OTR, the type
Notice that, by making ζh as large as possible, we minimize of oil and its volume to be transported via the pipeline for
the number of switches from one type of crude oil to another in charging this tank are also determined. Different charging tank
transporting crude oil from storage tanks to charging tanks via assignments have different effects on the number of COT switches
the pipeline. Also, an ODF ih is created for feeding DS i based on in oil transportation via the pipeline and the number of charging
ODT ih such that volume ζh can be fed into DS i without charging tank switches in distiller feeding, resulting in different cost for
the tank switch. By doing so, one minimizes both Objectives Objectives (c)–(e). An optimization method is necessary to solve
(c) and (e). this problem and a GA approach is presented to do so next. Notice
Z0
of crude oil operations. One needs a code to describe the routes
from root Z0 to the leaves. To do so, we define a chromosome
X defined as X = (a1 , a2 , . . . , ai , . . . , aN ), where ai ∈ DS is an
Z1 Z2
integer and N is the number of nodes from the root to the leaf on
ZK
each route. By ai ∈ DS representing a distiller ai , it means that the
i th released charging tank is assigned to feed distiller ai . It follows
Z 11 Z 12
from the above discussion and the OTR that, by ai , an ODT can
Z 1K
be decided and then an ODF. Thus, X = (a1 , a2 , . . . , ai , . . . , aN )
describes a schedule. One problem is how to determine N , the
number of nodes on a route, since it is not known in advance and is
route-dependent. Furthermore, the number of nodes is different for
Fig. 4. The K -tree for the problem
different routes. To solve this problem, unlike general application
of GA, we allow N to vary, or the codes for the solutions can
that, during the scheduling horizon, a charging tank can be charged have variable lengths. With such a code, we present how a GA for
several times and a charging tank can be used to feed any distiller. the detailed short-term scheduling problem of crude oil operations
Due to the feasibility issue and that the charging tanks are not can be implemented next.
available at the beginning, the charging tank sequencing for crude
oil operations is different from general resource sequencing for 4.2. Length of chromosome To implement a GA with
scheduling discrete manufacturing. Hence, we cannot simply apply variable length of code, the problem is how to code the chromo-
the existing methods. The key is how to describe the problem by some. Assume that there are totally routes in Fig. 4 and the
the GA technique. number of charging tank release times for the i th route is Ni ,
As shown in Fig. 4, assume that, at initial state Z0 , the charging i ∈ {1, 2, . . . , }. Then, for the i th route, a decision of charging
tank TK i is released; it can be assigned to serve for any of the tank assignment should be made for the j th release of a charg-
K distillers if the schedulability conditions can be satisfied, or ing tank with j ≤ Ni . In this case, aj ∈ DS should be decided for
there may be K assignment choices denoted as D1 , D2 , . . . , DK . feeding the distiller. When j > Ni , a schedule has been already
When these different assignment choices are executed, the system obtained and one does not need to create any OD. In this case,
is transferred into different states denoted as Z1 , Z2 , . . . , and ZK , we define aj = 0, indicating that a detailed schedule is already
respectively. Further, when D1 is selected and executed, Z1 is found when node Ni is reached. In this way, the codes for the
reached such that charging tank TK i is charged with the crude problem have different lengths. Let N ≥ max{N1 , N2 , . . . , N } be
oil decided by D1 . Then, TK j is released next. There may also be the length of the chromosome. Then, ∀i ∈ {1, 2, . . . , }, Xi can
K assignment choices denoted as D11 , D12 , . . . , and D1K , which be coded as Xi = (a1 , a2 , . . . , aj , . . . , aN ) such that aj ∈ DS if
transfer the system into different states denoted as Z11 , Z12 , . . . , j ≤ Ni , and aj = 0 if j > Ni . By doing so, every schedule can
and Z1K , respectively. This process can be described by a graph be coded by the above chromosome. One can choose an integer N
shown in Fig. 4. In this graph, from each node (state), there are K that is large enough such that N ≥ max{N1 , N2 , . . . , N } is guaran-
branches and it is called a K -tree. In this graph, there is a route teed. However, an unnecessarily large N can result in unnecessary
from Z0 to each leaf, which forms a schedule. Since different computation in finding a schedule and it is meaningful to set a
charging tank assignments result in different number of charging suitable N . Although max{N1 , N2 , . . . , N } is unknown in advance
tank release times, the number of nodes on different routes is and cannot be exactly calculated, we can obtain a reasonable N as
different. Assume that, at state Zj , charging tank TK i is released, follows. Given a refining schedule and the initial state, the types of
and the assignment choice Dk is selected, i.e. TK i is assigned crude oil and their amount to be transported from the storage tanks
to serve for DS k and would be filled with crude oil decided by to charging tanks via the pipeline are known. Assume that the num-
DK such that ZK is reached. By doing so, the following situation ber of COTs to be transported is n, and their amount is O1 , O2 ,
may occur. At state Zj , before making decision Dk , FP kj has been . . . , and On , respectively. Further, let ζ = min{C1 , C2 , . . . , C }
already realized by a number of ODFs, leading to the fact that Dk and x be the ceiling of x , where Ci is the capacity of charging
is not meaningful. In this case, Dk should be discarded, and the tank i , and is the number of charging tanks. Then, O1 /ζ +
partial route from Z0 to Zk should be deleted from the K -tree. O2 /ζ + . . . + On /ζ is a reasonable estimation of N . It should
In the K -tree shown in Fig. 4, each route from root Z0 to a leaf be mentioned that, in order to guarantee the realizability of an
corresponds to a detailed schedule with different performance. It obtained refining schedule, the schedulability conditions are taken
can be seen that there may be K n routes in the K -tree, where n is as constraints. Note that improper charging tank assignment may
the number of charging tank release times in a detailed schedule, lead to a situation such that the state of the system reaches the
i.e. the number of schedules is exponential with n. It is inefficient boundary of schedulability conditions. In this case, a charging tank
to find a schedule by enumerating all possible schedules. To solve can be charged to volume ζ such that the number of charging tank
this problem, a GA approach is developed to optimize the detailed release times in a route may be greater than N . Notice that a large
scheduling problem of crude oil operations as follows. N indicates that the number of COT switches in oil transportation
The implementation of GA begins with a population of chromo- via the pipeline and the number of the charging tank switches in
somes (typically generated randomly). One then evaluates these distiller feeding are large, which results in high cost. To improve
chromosomes and allocates reproductive opportunities in such a the performance of the algorithm, when a charging tank assign-
way that the chromosomes representing a better solution to the tar- ment leads to such a case, this assignment is discarded. This is a
get problem are given more chances to reproduce than those that charging tank assignment rule. When a charging tank is released
are poorer [35]. The key here is to design a suitable chromosome and assigned to serve for feeding a distiller, resulting in the cre-
code such that a GA can be implemented. ation of an ODT, one needs to decide the volume ζ of oil to be
charged into the tank. Let ζ1 = min{C1 , C2 , . . . , C } and ζ2 be the
4.1. Chromosome for the problem A chromosome in remaining volume for implementing the corresponding FP. Then,
GA is a code that represents a solution for the problem addressed. the rule is stated as follows:
It follows from the above discussion that a route from root Z0 to Charging tank assignment rule (CTAR): Assume that charging
a leaf represents a solution for the detailed scheduling problem tank TK h is released and assigned to serve for feeding DS i ,
resulting in the creation of ODT ih to transport volume ζh of oil 4.5. Chromosome selection, crossover, and mutation
from the storage tanks to TK h . If ζh decided by the OTR is less With the current population, the next generation is obtained by
than min{ζ1 , ζ2 }, this charging tank assignment is discarded. selection, crossover, and mutation operations. While some of the
With the above discussion, we present the procedure of the GA. current chromosomes are selected to be offspring in the next gen-
eration directly by selection, new ones are generated by crossover
4.3. Initial population With the length of chromosome and mutation. According to Darwin’s evolution theory, the better
determined, initial population should be constructed such that a ones should survive and produce new offspring. The truncation
GA can work. Another important issue is how to ensure the selection method is adopted for selection operation in this paper.
feasibility of a schedule coded by the chromosome. In general, By this method, the chromosomes in the current population are
the chromosomes for the initial population should be generated sorted by their fitness value such that only the excellent ones
randomly. Also, feasibility is essential for a schedule, and a can be selected to be offspring directly. To do so, a param-
member in the population should represent a feasible solution. eter called truncation threshold, denoted as ϕ with 0 < ϕ < 1,
However, with various resource and process constraints for the is set. By the truncation selection method, = R × ϕ best ones
detailed short-term scheduling problem of crude oil operations, among the current R chromosomes are selected as offspring in the
one cannot guarantee that any chromosome randomly generated next generation population. If Xi is selected, it is renamed as Yi .
represents a feasible schedule. Thus, it is necessary to develop Crossover and mutation are the two basic operations for gener-
a method for generating chromosomes such that both feasibility ating new chromosomes in GA. The uniform crossover method
and randomness are guaranteed. For this purpose, we present the is used for generating new offspring in this work. To imple-
following method to construct an initial population. ment the crossover operation, define an array E = (e1 , e2 , . . . , eN )
Suppose that, at state Zi , TK i is the i th released charging tank. with ei = 0 or 1. For a crossover operation, two chromosomes
Let SD i denote the set of distillers such that at the current state, are randomly selected from the current population as parents, say
according to the schedulability conditions, OTR, and CTAR, TK i X1 = (a11 , a12 , . . . , a1N ) and X2 = (a21 , a22 , . . . , a2N ), for gener-
can be assigned to serve for DS k ∈ SDi . We select a distiller from ating new offspring. With these two selected chromosomes as
SD i , say DS k , and assign TK i to serve for feeding DS k and set parents, according to a given crossover probability, one decides
ai = k . With the schedulability conditions, OTR, and CTAR, an whether a crossover operation should be performed. If not, X1 and
ODT is generated, and then an ODF. After some time, at state Zj , X2 are taken as new offspring, and renamed as Y1 and Y2 . If yes, an
the j th released charging tank is TK j . One can select DS m from array E is randomly generated. Then, for ei = 1, i ∈ {1, 2, . . . , N },
SD j randomly such that TK j is assigned to serve for feeding DS m swap a1i and a2i between X1 and X2 to generate two new offspring
and set aj = m. In this way, a number of aj ’s, j ∈ {1, 2, . . . , Ni }, Y1 and Y2 .
and the corresponding ODTs and ODFs are generated step by step The mutation operation is performed as follows. Rename
until all FP kj are realized by a number of generated ODFs. We Y1 and Y2 that are just obtained by a crossover operation as
then set aj = 0, when Ni < j ≤ N . By doing so, we can obtain H1 = (c11 , c12 , . . . , c1N ) and H2 = (c21 , c22 , . . . , c2N ). For H1 =
a chromosome Xi = (a1 , a2 , . . . , aj , . . . , aN ) that represents a (c11 , c12 , . . . , c1N ), according to a given mutation probability, one
feasible schedule. Notice that, every time when a charging tank decides whether a mutation operation should be performed. If yes,
is released, we randomly select a distiller to be served by the randomly select an index i ∈ {1, 2, . . . , N } and an index j ∈ DS/
released tank. Hence, both feasibility and randomness in generating {c1i }. In H1 , a new chromosome Y1 is generated by setting c1i = j .
a chromosome are guaranteed. With R being the population size, If a mutation should not be performed, H1 is the new offspring and
by the above procedure, R chromosomes X1 , X2 , . . . , and XR can it is renamed as Y1 . In the same way, we can obtain Y2 from H2 .
be generated to form the initial population. By crossover and mutation operations, we generate R –
chromosomes Y1 , Y2 , . . . , Yi , . . . , YR− , where Yi = (b1 , b2 , . . . ,
4.4. Evaluation of fitness function Let Wi denote bj , . . . , bN ) and bj ∈ DS or bj = 0. Together with those obtained
the schedule corresponding to chromosome Xi . When a tank is by selection operation, a new generation with population size
discharged and recharged, if a different oil type is recharged into R is obtained. However, just as above discussed, one can-
the tank, there is a cost; otherwise there is no cost. Thus, for not guarantee that offspring Yi obtained by this means repre-
Objective (d), the cost can be measured by the number of times sents a feasible schedule. One needs to convert Yi to Xi =
for recharging different oil types into tanks. Once a schedule is (a1 , a2 , . . . , aj , . . . , aN ), which corresponds to a feasible solution.
obtained, the type of crude oil that is charged into a charging There are several cases: (i) Yi represents a feasible solution; (ii)
tank is known. When this tank is discharged and recharged, one for Yi , there is at least parameter bj such that FPbj k has been
knows whether a different type of crude oil is recharged to the realized by a number of ODFs; (iii) a partial of Yi with length
tank. In other words, one can count the number of recharging of L< N represents a feasible solution; and (iv) when bN is reached,
different COTs to a charging tank during the scheduling horizon. there is at least one FP kj that has not been realized by a num-
Such a number for all the charging tanks can be calculated. Let ber of ODFs. These cases can be handled as follows to convert
α denote such a number. Similarly, one can count the number of Yi to a feasible chromosome. For Case (ii), start from b1 , just as
COT switches in oil transportation via the pipeline and the number done for the generation of the initial population, and check bi ,
of charging tank switches in distiller feeding for all the distillers. i = 1, . . . , N , to see if bi ∈ SD i . If not, randomly select value j in
They are denoted by β and γ , respectively. SD i and let bi = j , until a feasible chromosome is obtained. For
As discussed in the last section, Objectives (c)–(e) are to be Case (iii), one simply set bj = 0, L < j ≤ N and keep the oth-
optimized for the problem. In other words, this is a multiobjective ers unchanged. For Case (iv), Yi can be simply discarded directly
optimization problem that can be converted to a single-objective since, as discussed above, it is not good. Nevertheless, when Case
optimization problem by using weighted sum. Notice that α, β, and (iv) occurs, one more feasible chromosome should be generated
γ correspond to the indices to be optimized. Notice that, Objectives by using crossover and mutation such that the population size is R.
(c)–(e) are all measured by the number of times. Hence, for In summary, Algorithm 1 is presented to implement the conver-
the GA method, P (Wi ) = ω1 α + ω2 β + ω3 γ is defined as the sion of Yi ’s to feasible Xi ’s. Meanwhile it records the performance
fitness function, with ω1 , ω2 , and ω3 being the constant weighted indices α, β, and γ . In the algorithm, p is used to denote the
coefficients. One can adjust ω1 , ω2 , and ω3 to change the effects position in Yi and Xi ; M0 is a large integer number; and TC is the
of α, β, and γ . set of charging tanks.
DS1 #5 #1
114
DS2 #6 #2
72
DS3 #4 #3
48
Time (H)
0
20 40 60 80 100 120 140 160 180 200 220 240
3000
2500
DS1 TK1 TK2 TK6 TK10
2000 #1
#2
1500 DS2 TK8 TK7 TK4 TK9
#3
#4
1000 DS3 TK3 TK5 TK8 TK1 TK3 TK7 TK5
#5
500 #6
Pipeline TK4 TK9 TK10 TK8 TK1 TK3 TK7 TK
5
0 Time(h)
10 50 100 200 500 1000 10 000 0 20 40 60 80 100 120 140 160 180 200 220 240
Population size
Fig. 9. Gantt chart of the detailed schedule for the case study
Fig. 6. Population size versus convergence time
In the sense of solution quality, for a different population size
Best value Worst value Average value and different selection methods, when the algorithm terminates,
40 the same fitness function value P (Wi ) = 18 is achieved, though
different schedules may be obtained. One of the chromosomes
35
whose fitness value is 18, the best one found by the proposed
30 method, is shown in Table II. Also, the corresponding optimal
values of α, β, and γ are shown in Table II.
Fitness value
25
The Gantt chart of the corresponding detailed schedule is shown
20
in Fig. 9, including the detailed schedule of distiller feeding and
15 charging tank filling through the pipeline, where different colors
10
represent different oil types.
By using the schedulability conditions, a feasible detailed
5 schedule can be found to realize the refining schedule in Ref. [27].
0 The objective is P (Wi ) = 21 for the schedule obtained in
0 20 40 60
Ref. [27]. This implies that, by using the proposed GA method,
Generation
the performance is improved by (21–18)/21 ≈ 14%. This is a
Fig. 7. Fitness value by using truncation selection significant improvement.
This case study shows that, given a realizable refining schedule,
a satisfactory detailed schedule can be efficiently found by the
Best value Worst value Average value
proposed GA method. It should be pointed out that this case study
40 is a practical scenario and it is typical in real-life application. This
35
shows that the proposed GA method is applicable to real refineries.
30
6. Conclusions
Fitness value
25
As one of the manufacturing systems, crude oil operations in a
20 refinery involve both discrete events and continuous processes and
are characterized by a hybrid system. With a discrete event pro-
15
cess, the short-term scheduling problem of crude oil operations is
10 inherently combinatorial and is NP-hard [6]. Furthermore, for such
5 a problem, the jobs (operations) to be scheduled should be defined
during the scheduling process. Thus, heuristics and meta-heuristics
0 are very difficult to apply, and thus mathematical programming
0 20 40 60
Generation models are used to study it. By such models, however, one cannot
overcome the problem of computational complexity. To solve this
Fig. 8. Fitness value by using stochastic universal sampling problem, the short-term scheduling problem of crude oil opera-
tions was studied from the control theory perspective by deriving
shortest convergence time occurred when population size was 200. schedulability conditions [25,27,34,36]. Based on the schedulabil-
When the population size was greater than 200, the convergence ity conditions, the problem could be decomposed into two subprob-
time increased as the size increased. lems in a hierarchical way. Then, an efficient approach was pre-
With the population size of 200, we carried out the experiment sented to find the refining schedule at the upper level [31,37]. Also,
using the truncation selection and stochastic universal sampling, with the schedulability conditions, a feasible detailed schedule at
respectively. The trends of the best, worst, and average fitness the lower level could be found recursively without optimizing any
values with respect to the number of generations are shown in objective [25,27,34]. In fact, for detailed scheduling, there are a
Figs. 7 and 8, respectively. As shown in Fig. 7, the best fitness number of objectives to be optimized. These objectives include
value could not be updated after the ninth generation, and a (i) minimization of the number of COT switches in oil transporta-
premature convergence happened when truncation selection was tion via a pipeline; (ii) minimization of COT mixing in charging
applied. As shown in Fig. 8, by using a stochastic universal and discharging a tank; and (iii) minimization of the number of
sampling, the best value remained unchanged after the 25th charging tank switches in crude oil feeding. To optimize a detailed
generation. It shows the convergence of the proposed algorithm. schedule, the detailed scheduling problem was transformed into
charging tank assignment and sequencing problem. Then, a method Wi : The schedule corresponding to chromosome Xi .
was proposed to generate a feasible initial schedule such that the P (Wi ): Fitness function of schedule Wi .
initial population could be obtained. To do so, a GA method was α: The number of different COTs in recharging the charging
developed to solve the problem. With a practical case problem, tanks.
experiments showed that the proposed method works well. β: The number of COT switches in oil transportation via the
This work focused on how to make GA applicable to the pipeline.
scheduling problem of crude oil operations. How to improve the γ : The number of charging tank switches in distiller feeding.
performance of a GA is an important issue, which can be pursued φ: Truncation threshold.
in future work. p: Position in chromosome Yi and Xi .
The detailed scheduling problem of crude oil operations is TC: The set of charging tanks.
a multiobjective optimization problem. Nevertheless, this paper X = (a1 , a2 , . . . , ai , . . . , aN ): A chromosome, where ai ∈ DS.
transformed the multiple objectives into a single objective by E = (e1 , e2 , . . . , ei , . . . , eN ): An array with ei = 0 or 1.
using a weighted function. Notice that these objectives may be not Yi = (b1 , b2 , . . . , bi , . . . , bN ): A chromosome, where bi ∈ DS.
consistent. Thus, it is meaningful to explore the effect of different Hi = (ci 1 , ci 2 , . . . cii , . . . , ciN ): A chromosome,
objectives. This is our future work. where cii ∈ DS.
Acknowledgments References
This work was supported partly by the FDCT of Macau under Grants
065/2013/A2 and 078/2015/A3, and NSF of China under grant 61273036. (1) Moro LFL. Process technology in the petroleum refining indus-
try—current situation and future trends. Computers and Chemical
Nomenclature Engineering 2003; 27(8):1303–1305.
(2) Aspen Technology Inc. PIMS System Reference, Version 11.0. Aspen
OD: Operation decision. Technology Inc: Cambridge, MA; 1999.
COT: Crude oil type. (3) Bonner & Moore. RPMS (Refinery and Petrochemical Modeling
ξ : Volume of crude oil to be delivered by an OD. System): A System Descriptive. Bonner & Moore Management
S: Source device from which crude oil is to be transferred. Science: Houston, TX; 1979.
(4) Pelham R, Pharris C. Refinery operation and control: a future vision
D: Destination to which oil is delivered.
Hydrocarbon Processing1996; 75(7):89–94.
INT = [a, b]: Time interval, with a and b being the start and
(5) Honkomp SJ, Lombardo S, Rosen O, Pekny JF. The curse of real-
end time points of an operation. ity—why process scheduling optimization problems are difficult in
ODU: OD for crude oil unloading. practice Computers and Chemical Engineering 2000; 24(2):323–328.
ODT: OD for crude oil transportation via a pipeline. (6) Floudas CA, Lin XX. Continuous-time versus discrete-time appro-
ODF: OD for crude oil feeding to distillers. aches for scheduling of chemical processes: a review. Computers
[ρ, δ]: Time interval for ODU. and Chemical Engineering 2004; 28(11):2109–2129.
[λ, μ]: Time interval for ODT. (7) Wu NQ, Chu F, Chu CB, Zhou MC. Short-term schedulability anal-
[ω, π ]: Time interval for ODF. ysis of crude oil operations in refinery with oil residency time
ODFki : The i th OD for feeding distiller k . constraint using Petri net. IEEE Transactions on Systems, Man, and
= [τs , τe ]: Schedule horizon, where τs and τe are start and Cybernetics, Part C 2008; 38(6):765–778.
(8) Glismann K, Gruhn G. Short-term scheduling and recipe optimization
end time, respectively.
of blending processes. Computers and Chemical Engineering2001;
g: Flow rate for tanker unloading.
25(4–6): 627–634.
f : Flow rate for pipeline transportation. (9) Kelly JD, Forbes JF. Structured approach to storage allocation
h: Flow rate for distiller feeding. for improved process controllability. AIChE Journal 1998; 55(8):
K : The number of distillers. 1832–1840.
SCHD: Short-term schedule for crude oil operations. (10) Lee H, Pinto JM, Grossmann IE, Park S. Mixed-integer linear pro-
w : The number of ODUs for a schedule. gramming model for refinery short-term scheduling of crude oil
z : The number of ODTs for a schedule. unloading with inventory management. Industrial and Engineering
FP: Feeding parcel of crude oil. Chemical Research 1996; 35(5):1630–1641.
ζ : Volume of crude oil to be fed into a distiller. (11) Pinto JM, Joly M, Moro LFL. Planning and scheduling models for
[ε, η]: Time interval for feeding a parcel of crude oil. refinery operations. Computers and Chemical Engineering 2000;
24(9–10): 2259–2276.
FPij : The j th FP for feeding Distiller i .
(12) Saharidis GKD, Minoux M, Dallery Y. Scheduling of loading and
RSi : Refining schedule for Distiller i .
unloading of crude oil in a refinery using event-based discrete
DS: The set of distillers. time formulation. Computers and Chemical Engineering 2009;
Fi (MIN ) : Permissible minimal flow rate for feeding Distiller i . 33(8):1413–1426.
Fi (MAX ) : Permissible maximal flow rate for feeding Distiller i . (13) Shah N. Mathematical programming techniques for crude oil schedul-
Z : System state. ing. Computers and Chemical Engineering1996; 20:s1227–s1232.
ODFijm : The mth ODF serving for FPij . (14) Yuzgec U, Palazoglu A, Romagnoli JA. Refinery scheduling of
: The oil residency time in tanks. crude oil unloading, storage and processing using a model predic-
fpmax : The maximal flow rate of the pipeline. tive control strategy. Computers and Chemical Engineering 2010;
fi : The feeding rate of Distiller i . 34(10):1671–1686.
TKi : Tank i . (15) Jia Z, Ierapetritou M, Kelly JD. Refinery short-term scheduling using
continuous time formulation: crude oil operations. Industrial and
DSi : Distiller i .
Chemical Engineering Research 2003; 42(13):3085–3097.
Dk : The k th assignment choice.
(16) Jia Z, Ierapetritou M. Efficient short-term scheduling of refinery
: The number of routes in a K -tree. operations based on a continuous time formulation. Computers and
Ni : The number of nodes on the i th route. Chemical Engineering 2004; 28(6–7):1001–1019.
N : Length of the chromosome. (17) Karuppiah R, Furmanb KC,Grossmann IE. Global optimization for
SDi : The set of distillers when the i th tank is released. scheduling refinery crude oil operations. Computers and Chemical
R: Population size. Engineering 2008; 32(11):2745–2766.
(18) Rejowski R, Jr., Pinto JM. A novel continuous time representa- Yan Hou (Non-member) received the B.S. and M.S. degrees, both
tion for the scheduling of pipeline systems with pumping yield in computer science, from the Yangtze Univer-
rate constraints. Computers and Chemical Engineering 2008; 32(4): sity, Jingzhou, China, in 1999 and 2002, respec-
1042–1066. tively; and the Ph. D degree in industrial engi-
(19) Zhen YJ, Marianthi I. Refinery short-term scheduling using continu- neering from Guangdong University of Technol-
ous time formulation: crude-oil operations. Industrial and Engineer-
ogy (GDUT), Guangzhou, China in 2016. Since
ing Chemical Research 2003; 42(13):3085–3097.
2002, she has been with GDUT Guangzhou,
(20) Mendez CA, Grossmann IE, Harjunkoski I, Kabore P. A simultane-
China. Her research interests include production scheduling, infor-
ous optimization approach for off-line blending and scheduling of
oil-refinery operations. Computers and Chemical Engineering 2006; mation systems, and software engineering.
30(4):614–634.
(21) Wu NQ. Necessary and sufficient conditions for deadlock-free oper-
NaiQi Wu (Non-member) received the B.S. degree in electrical
ation in flexible manufacturing systems using a colored Petri net engineering from the Huainan Institute of Min-
model. IEEE Transactions on Systems, Man, and Cybernetics, Part C ing, Huainan, China, in 1982, and the M.S. and
1999; 29(2):192–204. Ph.D. degrees in systems engineering from the
(22) Wu NQ, Zhou MC. Avoiding deadlock and reducing starvation and Xi’an Jiaotong University, Xi’an, China in 1985
blocking in automated manufacturing systems based on a Petri and 1988, respectively. From 1988 to 1995, he
net model. IEEE Transactions on Robotics and Automation 2001; was with the Shenyang Institute of Automation,
17(5):658–669. Chinese Academy of Sciences, Shenyang, China, and from 1995
(23) Wu NQ, Zhou MC, Li ZW. Resource-oriented Petri net for deadlock to 1998 with the Shantou University, Shantou, China. He moved
avoidance in flexible assembly systems. IEEE Transactions on to the Guangdong University of Technology, Guangzhou, China,
System, Man, & Cybernetics, Part A 2008; 38(1):56–69. in 1998. He has been a Visiting Professor at the Arizona State
(24) Wu NQ, Zhou MC. System Modeling and Control with Resource- University and the New Jersey Institute of Technology, USA,
Oriented Petri Nets. CRC Press, Taylor & Francis Group: New York;
and the University of Technology of Troyes and the University
2009.
of Evry, France. He joined the Macau University of Science
(25) Wu NQ, Chu F, Chu CB, Zhou MC. Short-term schedulability anal-
and Technology (MUST), Taipa, Macau, in 2013. He is currently
ysis of multiple distiller crude oil operations in refinery with oil
residency time constraint. IEEE Transactions on Systems, Man, and a Professor at Macau Institute of Systems Engineering, MUST.
Cybernetics, Part C 2009; 39(1):1–16. His research interests include production planning and scheduling,
(26) Wu NQ, Chu F, Chu CB, Zhou MC. Tank cycling and schedul- manufacturing system modeling and control, discrete event sys-
ing analysis of high fusion point oil transportation for crude oil tems, Petri net theory and applications, intelligent transportation
operations in refinery. Computers and Chemical Engineering 2010; systems, and information assurance. He is the author or coauthor
34(4):529–543. of one book, five book chapters, and more than 130 peer-reviewed
(27) Wu NQ, Chu CB, Chu F, Zhou MC. Schedulability analysis of short- journal papers. He was an associate editor of the IEEE Transac-
term scheduling for crude oil operations in refinery with oil residency tions on Systems, Man, & Cybernetics, Part C, IEEE Transactions
time and charging-tank-switch-overlap constraints. IEEE Transac- on Automation Science and Engineering, IEEE Transactions on
tions on Automation Science and Engineering 2011; 8(1):190–204. Systems, Man, and Cybernetics: Systems, and editor-in-chief of
(28) Wu NQ, Bai LP, Chu CB. Modeling and conflict detection of crude- Industrial Engineering Journal. He has served many international
oil operations for refinery process based on controlled-colored-timed conferences as program committee member, such as the program
Petri net. IEEE Transactions on Systems, Man, & Cybernetics, Part
committee co-chair of the 2012 and chair of the 2013 IEEE Inter-
C 2007; 37(4):461–472.
national Conference on Networking, Sensing and Control.
(29) Wu NQ, Chu F, Chu CB, Zhou MC. Hybrid Petri net modeling
and schedulability analysis of high fusion point oil transportation
ZhiWu Li (Non-member) received the B.S., M.S., and Ph.D.
under tank grouping strategy for crude oil operations in refinery.
degrees in mechanical engineering, automatic
IEEE Transactions on Systems, Man, and Cybernetics, Part C 2010;
40(2):159–175. control, and manufacturing engineering, respec-
(30) Wu NQ, Zhou MC, Li ZW. Short-term scheduling of crude-oil oper- tively, from Xidian University, Xi’an, China, in
ations: Petri net-based control-theoretic approach. IEEE Robotics and 1989, 1992, and 1995, respectively. He joined
Automation Magazine 2015; 22(2):64–76. Xidian University in 1992 and now he is also
(31) Wu NQ, Bai LP, Zhou MC, Chu F, Mammar S. A novel approach to with Macau Institute of Systems Engineering,
optimization of refining schedules for crude oil operations in refinery. Macau University of Science and Technology, Taipa, Macau.
IEEE Transactions on Systems, Man, and Cybernetics, Part C 2012; Over the past decade, he was a Visiting Professor at the Univer-
42(6):1042–1053. sity of Toronto, Technion–Israel Institute of Technology, Martin-
(32) Wu NQ, Zhou MC, Chu F. Short-term scheduling for refinery pro- Luther University of Halle–Wittenburg, Conservatoire National
cess: bridging the gap between theory and applications. International des Arts et Métiers (CNAM), and Meliksah Universitesi. His cur-
Journal of Intelligent Control and Systems 2005; 10(2):162–174. rent research interests include Petri net theory and application,
(33) Shah NK, Li ZK, Ierapetritou MG. Petroleum refining operations:
supervisory control of discrete event systems, workflow model-
key issues, advances, and opportunities. Industrial and Chemical
ing and analysis, system reconfiguration, game theory, and data
Engineering Research 2011; 50(3):1161–1170.
and process mining. Dr Li has been a member of Discrete Event
(34) Wu NQ, Zhou MC, Chu F. A petri net based heuristic algorithm for
realizability of target refining schedule for oil refinery. IEEE Trans-
Systems Technical Committee of the IEEE Systems, Man, and
actions on Automation Science and Engineering 2008; 5(4):661–676. Cybernetics Society, and a member of IFAC Technical Commit-
(35) Whitley D. A genetic algorithm tutorial. Statistics and Computing tee on Discrete Event and Hybrid Systems from 2011 to 2014.
1994; 4(2):65–85. He serves as a frequent reviewer for 40+ international journals
(36) Wu NQ, Zhou MC, Bai LP, Li ZW. Short-term scheduling of crude oil including Automatica and a number of the IEEE Transactions as
operations in refinery with high fusion point oil and two transportation well as many international conferences. He is listed in Marquis
pipelines, Enterprise Information Systems 2016; 10(6): 581–610. Who’s Who in the world, 27th Edition, 2010. He is a recipient of
(37) Wu NQ, Bai LP, Zhou MC. An efficient scheduling method for crude an Alexander von Humboldt Research Grant, Alexander von Hum-
oil operations in refinery with crude oil type mixing requirements, boldt Foundation, Germany. He is a senior member of the IEEE
IEEE Transactions on Systems, Man, & Cybernetics: Systems 2016; and is the founding chair of Xi’an Chapter of IEEE Systems, Man,
46(3): 413–426. and Cybernetics Society.