A hybrid optimization algorithm combining finite state method (FSM) and genetic algorithm (GA) is proposed to solve the crude oil scheduling problem. The FSM and GA are combined to take the advantage of each method and compensate deficiencies of individual methods. In the proposed algorithm, the finite state method makes up for the weakness of GA which is poor at local searching ability. The heuristic returned by the FSM can guide the GA algorithm towards good solutions. The idea behind this is that we can generate promising substructure or partial solution by using FSM. Furthermore, the FSM can guarantee that the entire solution space is uniformly covered. Therefore, the combination of the two algorithms has better global performance than the existing GA or FSM which is operated individually. Finally, a reallife crude oil scheduling problem from the literature is used for conducting simulation. The experimental results validate that the proposed method outperforms the stateofart GA method.
In recent years refineries have to explore all potential costsaving strategies due to intense competition arising from fluctuating product demands and everchanging crude prices. Scheduling of crude oil operations is a critical task in the overall refinery operations [
Obviously, the two different approaches previously discussed have their own advantages and disadvantages. On the one hand, a deterministic approach usually involves considerable algebra and undeviating analysis to the problem itself, whereas the evolutionary approach does not have this property. On the other hand, some deterministic approaches, such as mathematical programming, usually cannot provide practical solutions in reasonable time, whereas the evolutionary approach can generate satisfying solutions. In this work, a novel genetic algorithm which combined the finite state method and GA is proposed to solve crude oil scheduling problem. A MINLP model is formulated based on the singleoperation sequencing (SOS) time representation. A deterministic finite automation (DFA) model which captures valid possible schedule sequences is constructed based on the sequencing rules. The initialization and mutation operation of GA is based on the model which builds legal schedules complying with sequencing rules and operation condition. Thus, the search space of the algorithm is substantially reduced as only legal sequence is explored. The rest of the paper is organized as follows: the MINLP model is specified in Section
In this section, the MINLP model of refinery crude oil scheduling problem is described [
The following sets will be used in the model.
Parameters used in the paper are defined below:
The objective is to maximize the gross margins of the distilled crude blends. Let
It should be noted that the crude composition of blends in tanks is tracked instead of their properties. The distillation specifications are later enforced by calculating a posteriori the properties of the blend in terms of its composition. For instance, in the problem, a blend composed of 50% of crude A and 50% of crude B has a sulfur concentration of 0.035 which does not meet the specification for crude mix X nor for crude mix Y.
In the SOS model, exactly one operation has to be assigned to each priority slot,
Variable constraints are given by their definitions. Start time, duration, and global volume variables are defined with big
Crude volume variables are positive variables whose sum equals the corresponding total volume variable,
Total and crude level variables are defined by adding to the initial level in the tank all inlet and outlet transfer volumes of operations of higher priority than the considered priority slot,
Sequencing constraints restrict the set of possible sequences of operations. Cardinality and unloading sequence constraints are specific cases of sequencing constraints. More complex sequencing constraints will also be discussed later.
Each crude oil marine vessel has to unload its content exactly once.
Marine vessels have to unload in order of arrival to the refinery. Considering two vessels
Scheduling constraints restrict the values taken by time variables according to logistics rules.
A nonoverlapping constraint between two sets of operations
Unloading operations must not overlap,
Inlet and outlet transfer operations on a tank must not overlap,
Although we do not consider crude settling in storage tanks after vessel unloading, it could be included in the model with a modified version of constraint (
Constraint (
A tank may charge only one CDU at a time,
A CDU may be charged by only one tank at a time,
To avoid schedules in which a transfer is being performed twice at a time, thus possibly violating the flow rate limitations, constraint (
It is required that CDUs operate without interruption. As CDUs perform only one operation at a time, the continuous operation constraint is defined by equating the sum of the duration of distillations to the time horizon,
Unloading of crude oil vessels may start only after arrival to the refinery. Let
Operation constraints restrict the values taken by operation and time variables according to operational rules.
The flow rate of transfer operation
The property
It has been shown that processes including both mixing and splitting of streams cannot be expressed as a linear model. Mixing occurs when two streams are used to fill a tank and is expressed linearly in constraint (
Constraint (
Note that constraint (
Resource constraints restrict the use of resources throughout the scheduling horizon.
The level of materials in the tank
Demand constraints define lower and upper limits,
This section presents in a somewhat informal way those basic notions and definitions from formal language and finite state theories, which are relevant for the sections to follow. Related definitions are taken from literature [
A DFA is a 5tuple
A finite state transducer (FST) is a 6tuple
As argued in Karttunen [
One particular useful extension of the basic syntax of regular expressions is the replaceoperator. Karttunen [
From the point view of optimization efficiency and robustness, a novel twolevel optimization framework based on finite state method and GA is proposed for the MINLP model in this section.
As the foundation of the framework, a twolevel optimization structure is introduced. Once all binary variables are fixed the original problem becomes a relatively simpler model with only continuous variable. Following this deal, we rewrite (
We used an example in Figure
Based on the sequencing rules [
Here, we still use the instance with 8 operations from Mouret et al. [
However, this automation suffers from a serious problem of overgeneration. For example, the short length of the sequence may lead to infeasibility, while the long length of the sequence may result in an unsolvable model. It is an interesting challenge for finite state syntactic description to specify a sublanguage that contains all and only the sequences of valid length.
Our solution is to construct a suitable constraint for the sequences of valid length. The constraint expressions denote a language that admits sequences of valid length but excludes all others. We obtain the desired effect by intersecting the constraint language with the original language of sequence expressions. The intersection of the two languages contains all and only the valid dates:
The ValidLength constraint is a language that includes all sequences of length
We have now completed the task of describing the language of valid sequences from the set of possible sequence expressions. It is also possible to create an automation on the basis of the regular expression and ValidSequence and then generate all possible sequences
In the mutation stage, we use a finite state transducer for this rulebased mutation process. The rulebased mutation strategy must obey the sequencing rule and the nonoverlapping constraint such that all involved solutions in GA are feasible.
The proposed mutation approach is a twostep procedure.
Segmentation of the input sequence into a set of subsequences (i.e., the subsequence which belongs to the regular language L7 or L8).
Mutation of the subsequences into others.
Formally, the rulebased mutation procedure is implemented as the composition of three transducers (see Algorithm
macro (procedure,
segmentation, % segmentation of the input sequence into a set of subsequence
mutation, % apply mutation rules
clean up) % remove markers
An example of mutation including the intermediate steps is given for the sequence “7681325712” as shown in Figure
Segmentation transducer splits an input sequence into subsequences. The goal of segmentation is to provide a convenient representation level for the next mutation step.
Segmentation is defined as shown in Algorithm
replace (
The macro “SSequence” defines the set of subsequences. The subsequences which belong to the regular language L7 and L8 are displayed in Tables
Subsequence belonging to
Length  Sequences belonging to 


1  7  
2  71  72  74  76  
3  712  714  726  741  742  746  761  762  
4  7126  7142  7412  7414  7426  7461  7462  7612  7614  7626 
5  71426  74126  74142  74612  74614  74626  76126  76142  
6  741426  746126  746142  761426  
7  7461426 
Subsequence belonging to
Length  Sequences belonging to 


1  8  
2  81  82  83  85  
3  812  813  825  831  832  835  851  852  
4  8125  8132  8312  8313  8325  8351  8352  8512  8513  8525 
5  81325  83125  83132  83512  83513  83525  85132  85125  
6  831325  835125  835132  851325  
7  8351325 
In the GA process, the mutation rules are made by carefully considering nonoverlapping constraint between operations. A concrete instance for partially illustrating the mutation rules is given in Algorithm
marco (conversion,
marco
replace
marco
replace
In this section, the same problem from the literature [
Problem data.
Scheduling horizon  8 days  

Vessels  Arrival time  Composition  Amount of crude  


Vessel 1  0  100% A  1000  
Vessel 2  4  100% B  1000  


Storage tanks  Capacity  Initial composition  Initial amount  


Tank 1 

100% A  250  
Tank 2 

100% B  750  


Charging tanks  Capacity  Initial composition  Initial amount  


Tank 1 (mix X) 

100% C  500  
Tank 1 (mix X) 

100% D  500  


Crudes  1  Gross margin  Crude mixtures  Property1  Demand 


Crude A  0.01  9  Crude mix X 


Crude B  0.06  4  Crude mix Y 


Crude C  0.02  8  Unloading flow rate 


Crude D  0.05  5  transfer flow rate 

A fragment of FSA regular expression syntax and

The empty string 

Concatenation 

Disjunction 

Optionality 
Identity ( 
Identity: the transducer which maps each element in 

Composition of the transducers 
macro (Term, 
Use term as an abbreviation for 
Crude oil operations system for the problem.
A deterministic finite state automaton (DFA).
Finite state transducer encoding the relation {(dog, cat), (dog, cow)}.
An example to indicate the relationship between binary variable and schedule.
An example of mutation.
The performance comparison between the two methodologies used is illustrated in Figure
Average objective values of two methodologies.
In Figure
Variance values of two methodologies.
The success of the proposed algorithm lies in a comprehensive analysis of the region of the search space and its capacity to focus the search on the regions with the partial solution. One of the good merits of the hybrid algorithm is that each solution involved in the GA algorithm is guaranteed to be feasible by using the mutation rules generated by DFM method while in existing GA algorithms the procedure to generate feasible solution under complex process constraints is very time costive. The deterministic finite automata (DFA) can easily represent this kind of structure. Furthermore, the complex process constraints can be very difficult to express with mixed integer programming. Consequently, it is unfeasible to solve the industrial problem by using MIP solver.
In this paper, a novel hybrid optimization algorithm which combined the finite state method and GA is proposed. The proposed algorithm constitutes a reasonable framework, capturing both the operating condition and sequencing rule of the schedule. The solution captures all possible schedules and removes many redundant sequences of operations. The algorithm is equivalent to introducing new structure information into the optimization process, which will help reduce the risk of trapping in a local minimal sequence solution. The hybrid optimization algorithm is an effective and robust tool to solve the crude oil scheduling problem in terms of efficiency and reliability. Algorithms only with the two properties are suitable for solving practical engineering application.
The authors declare that there is no conflict of interests regarding the publication of this paper.
This research is partially supported by the China National Natural Science Foundation under Grant 61203178, Grant 61304214, and Grant 61290323. The authors thank the financial funds from Shanghai Science and Technology Committee under Grant 12511501002 and Grant 13511501302.